diff --git a/about.po b/about.po index 3631378..73c56a7 100644 --- a/about.po +++ b/about.po @@ -6,17 +6,18 @@ # Translators: # Bhuvansh Kataria, 2026 # DARSHAN RAJPUT, 2026 +# Mohit Yadav, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: DARSHAN RAJPUT, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Mohit Yadav, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -59,8 +60,8 @@ msgid "" "the `Docutils `_ project for creating " "reStructuredText and the Docutils suite;" msgstr "" -"reStructuredText ਅਤੇ Docutils ਸੂਟ ਤਿਆਰ ਕਰਨ ਲਈ `Docutils `_ ਪ੍ਰੋਜੈਕਟ;" +"reStructuredText ਅਤੇ Docutils ਸੂਟ ਤਿਆਰ ਕਰਨ ਲਈ `Docutils `_ ਪ੍ਰੋਜੈਕਟ;" msgid "" "Fredrik Lundh for his Alternative Python Reference project from which Sphinx " @@ -79,7 +80,7 @@ msgid "" "list of contributors." msgstr "" "ਬਹੁਤ ਸਾਰੇ ਲੋਕਾਂ ਨੇ Python ਭਾਸ਼ਾ, Python ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਅਤੇ Python ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਵਿੱਚ " -"ਯੋਗਦਾਨ ਦਿੱਤਾ ਹੈ। ਯੋਗਦਾਨਕਾਰਾਂ ਦੀ ਅੰਸ਼ਿਕ ਸੂਚੀ ਲਈ `CPython GitHub repository`__ ਵੇਖੋ।" msgid "" diff --git a/bugs.po b/bugs.po index b14a318..f2d3e96 100644 --- a/bugs.po +++ b/bugs.po @@ -12,11 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,9 +31,9 @@ msgid "" "for stability. In order to maintain this reputation, the developers would " "like to know of any deficiencies you find in Python." msgstr "" -"ਪਾਇਥਨ ਇੱਕ ਪਰਿਪੱਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ ਜਿਸ ਨੇ ਸਥਿਰਤਾ ਲਈ ਆਪਣੀ ਇੱਕ ਮਜ਼ਬੂਤ ਪਹਿਚਾਣ ਬਣਾਈ ਹੈ। " -"ਇਸ ਪਹਿਚਾਣ ਨੂੰ ਕਾਇਮ ਰੱਖਣ ਲਈ, ਡਿਵੈਲਪਰ ਉਹਨਾਂ ਕਿਸੇ ਵੀ ਕਮੀਆਂ ਬਾਰੇ ਜਾਣਨਾ ਚਾਹੁੰਦੇ ਹਨ ਜੋ ਤੁਹਾਨੂੰ " -"ਪਾਇਥਨ ਵਿੱਚ ਮਿਲਦੀਆਂ ਹਨ।" +"Python ਇੱਕ ਪਰਿਪੱਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ ਜਿਸ ਨੇ ਸਥਿਰਤਾ ਲਈ ਇੱਕ ਮਜ਼ਬੂਤ ਸਾਖ ਬਣਾਈ ਹੈ। ਇਸ ਸਾਖ ਨੂੰ " +"ਕਾਇਮ ਰੱਖਣ ਲਈ, developers ਉਹਨਾਂ ਕਮੀਆਂ ਬਾਰੇ ਜਾਣਨਾ ਚਾਹੁੰਦੇ ਹਨ ਜੋ ਤੁਹਾਨੂੰ Python ਵਿੱਚ ਮਿਲਦੀਆਂ " +"ਹਨ।" msgid "" "It can be sometimes faster to fix bugs yourself and contribute patches to " @@ -82,12 +82,13 @@ msgstr "" "docs-theme>`_ ਉੱਤੇ ਬੱਗ ਰਿਪੋਰਟ ਜਮ੍ਹਾਂ ਕਰੋ।" msgid "`Documentation bugs`_" -msgstr "`ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਬੱਗ`_" +msgstr "`Documentation bugs`_" msgid "" "A list of documentation bugs that have been submitted to the Python issue " "tracker." -msgstr "ਉਹਨਾਂ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਬੱਗਾਂ ਦੀ ਸੂਚੀ ਜੋ ਪਾਇਥਨ ਇਸ਼ੂ ਟ੍ਰੈਕਰ ਵਿੱਚ ਜਮ੍ਹਾਂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ।" +msgstr "" +"ਉਹਨਾਂ documentation bugs ਦੀ ਸੂਚੀ ਜੋ Python issue tracker ਵਿੱਚ ਜਮ੍ਹਾਂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ।" msgid "`Issue Tracking `_" msgstr "`Issue Tracking `_" @@ -107,8 +108,8 @@ msgid "" "Comprehensive guide for individuals that are interested in contributing to " "Python documentation." msgstr "" -"ਉਹਨਾਂ ਵਿਅਕਤੀਆਂ ਲਈ ਵਿਸਤ੍ਰਿਤ ਮਾਰਗਦਰਸ਼ਨ ਜੋ ਪਾਇਥਨ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਵਿੱਚ ਯੋਗਦਾਨ ਦੇਣ ਵਿੱਚ ਰੁਚੀ ਰੱਖਦੇ " -"ਹਨ।" +"ਉਹਨਾਂ ਵਿਅਕਤੀਆਂ ਲਈ ਵਿਸਤ੍ਰਿਤ ਮਾਰਗਦਰਸ਼ਨ ਜੋ Python documentation ਵਿੱਚ ਯੋਗਦਾਨ ਦੇਣ ਵਿੱਚ ਰੁਚੀ " +"ਰੱਖਦੇ ਹਨ।" msgid "" "`Documentation Translations , YEAR. +# +# Translators: +# Bhuvansh Kataria, 2026 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" +"PO-Revision-Date: 2026-09-13 17:09+0000\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pa\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Built-in Exceptions" +msgstr "ਬਿਲਟ-ਇਨ ਐਕਸੈਪਸ਼ਨ" + +msgid "" +"In Python, all exceptions must be instances of a class that derives " +"from :class:`BaseException`. In a :keyword:`try` statement with " +"an :keyword:`except` clause that mentions a particular class, that clause " +"also handles any exception classes derived from that class (but not " +"exception classes from which *it* is derived). Two exception classes that " +"are not related via subclassing are never equivalent, even if they have the " +"same name." +msgstr "" +"Python ਵਿੱਚ, ਸਾਰੇ exception ਉਸ class ਦੇ instance ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ " +"ਜੋ :class:`BaseException` ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੀ ਗਈ ਹੋਵੇ। ਕਿਸੇ :keyword:`try` statement " +"ਵਿੱਚ ਜੇ :keyword:`except` clause ਕਿਸੇ ਖਾਸ class ਦਾ ਜ਼ਿਕਰ ਕਰਦਾ ਹੈ, ਤਾਂ ਉਹ clause ਉਸ " +"class ਤੋਂ ਪ੍ਰਾਪਤ ਹੋਣ ਵਾਲੀਆਂ ਸਾਰੀਆਂ exception classes ਨੂੰ ਵੀ ਸੰਭਾਲਦਾ ਹੈ (ਪਰ ਉਹਨਾਂ " +"classes ਨੂੰ ਨਹੀਂ ਜਿਨ੍ਹਾਂ ਤੋਂ ਉਹ class ਖੁਦ ਪ੍ਰਾਪਤ ਕੀਤੀ ਗਈ ਹੋਵੇ)। ਦੋ exception classes ਜੋ " +"subclassing ਰਾਹੀਂ ਸੰਬੰਧਿਤ ਨਹੀਂ ਹਨ, ਕਦੇ ਵੀ ਇੱਕੋ ਜਿਹੀਆਂ ਨਹੀਂ ਮੰਨੀਆਂ ਜਾਂਦੀਆਂ, ਭਾਵੇਂ ਉਹਨਾਂ ਦਾ " +"ਨਾਮ ਇੱਕੋ ਹੀ ਕਿਉਂ ਨਾ ਹੋਵੇ।" + +msgid "" +"The built-in exceptions listed in this chapter can be generated by the " +"interpreter or built-in functions. Except where mentioned, they have an " +"\"associated value\" indicating the detailed cause of the error. This may " +"be a string or a tuple of several items of information (e.g., an error code " +"and a string explaining the code). The associated value is usually passed " +"as arguments to the exception class's constructor." +msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਦਿੱਤੇ ਬਿਲਟ-ਇਨ exception interpreter ਜਾਂ built-in functions ਦੁਆਰਾ " +"ਪੈਦਾ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਜਿੱਥੇ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਨਾ ਦੱਸਿਆ ਗਿਆ ਹੋਵੇ, ਉਨ੍ਹਾਂ ਦੇ ਨਾਲ ਇੱਕ \"associated " +"value\" ਹੁੰਦੀ ਹੈ ਜੋ ਗਲਤੀ ਦੇ ਵਿਸਥਾਰਪੂਰਵਕ ਕਾਰਨ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ। ਇਹ ਇੱਕ string ਜਾਂ ਜਾਣਕਾਰੀ " +"ਦੇ ਕਈ ਤੱਤਾਂ ਵਾਲਾ tuple ਹੋ ਸਕਦਾ ਹੈ (ਉਦਾਹਰਨ ਲਈ, ਇੱਕ error code ਅਤੇ ਉਸ code ਦੀ ਵਿਆਖਿਆ " +"ਕਰਨ ਵਾਲੀ string)। ਇਹ associated value ਆਮ ਤੌਰ 'ਤੇ exception class ਦੇ constructor " +"ਨੂੰ arguments ਵਜੋਂ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"User code can raise built-in exceptions. This can be used to test an " +"exception handler or to report an error condition \"just like\" the " +"situation in which the interpreter raises the same exception; but beware " +"that there is nothing to prevent user code from raising an inappropriate " +"error." +msgstr "" +"ਯੂਜ਼ਰ ਕੋਡ built-in exceptions ਨੂੰ raise ਕਰ ਸਕਦਾ ਹੈ। ਇਸਦਾ ਉਪਯੋਗ exception handler ਦੀ " +"ਜਾਂਚ ਕਰਨ ਲਈ ਜਾਂ ਕਿਸੇ error condition ਦੀ ਰਿਪੋਰਟ ਕਰਨ ਲਈ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਬਿਲਕੁਲ ਉਸੇ " +"ਤਰ੍ਹਾਂ ਜਿਵੇਂ interpreter ਉਹੀ exception raise ਕਰਦਾ ਹੈ। ਪਰ ਧਿਆਨ ਰੱਖੋ ਕਿ ਯੂਜ਼ਰ ਕੋਡ ਨੂੰ ਗਲਤ " +"ਜਾਂ ਅਣਉਚਿਤ error raise ਕਰਨ ਤੋਂ ਰੋਕਣ ਲਈ ਕੋਈ ਪ੍ਰਬੰਧ ਨਹੀਂ ਹੈ।" + +msgid "" +"The built-in exception classes can be subclassed to define new exceptions; " +"programmers are encouraged to derive new exceptions from " +"the :exc:`Exception` class or one of its subclasses, and not " +"from :exc:`BaseException`. More information on defining exceptions is " +"available in the Python Tutorial under :ref:`tut-userexceptions`." +msgstr "" +"ਨਵੇਂ exception ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਲਈ built-in exception classes ਦੀ subclass ਬਣਾਈ ਜਾ " +"ਸਕਦੀ ਹੈ। Programmers ਨੂੰ ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ ਕਿ ਨਵੇਂ exception :exc:`Exception` " +"class ਜਾਂ ਇਸ ਦੀਆਂ subclasses ਤੋਂ ਪ੍ਰਾਪਤ ਕਰਨ, ਨਾ ਕਿ :exc:`BaseException` ਤੋਂ। " +"Exception ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ Python Tutorial ਦੇ :ref:`tut-" +"userexceptions` ਭਾਗ ਵਿੱਚ ਉਪਲਬਧ ਹੈ।" + +msgid "Exception context" +msgstr "ਐਕਸੈਪਸ਼ਨ ਸੰਦਰਭ" + +msgid "" +"Three attributes on exception objects provide information about the context " +"in which the exception was raised:" +msgstr "" +"Exception objects ਉੱਤੇ ਮੌਜੂਦ ਤਿੰਨ attributes ਉਸ ਸੰਦਰਭ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਿੰਦੇ ਹਨ ਜਿਸ ਵਿੱਚ " +"exception raise ਕੀਤਾ ਗਿਆ ਸੀ:" + +msgid "" +"When raising a new exception while another exception is already being " +"handled, the new exception's :attr:`!__context__` attribute is automatically " +"set to the handled exception. An exception may be handled when " +"an :keyword:`except` or :keyword:`finally` clause, or a :keyword:`with` " +"statement, is used." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ exception ਨੂੰ ਸੰਭਾਲਿਆ ਜਾ ਰਿਹਾ ਹੋਵੇ ਅਤੇ ਉਸ ਦੌਰਾਨ ਕੋਈ ਨਵਾਂ exception raise ਕੀਤਾ " +"ਜਾਵੇ, ਤਾਂ ਨਵੇਂ exception ਦਾ :attr:`!__context__` attribute ਆਪਣੇ ਆਪ ਉਸ exception " +"ਨਾਲ ਸੈੱਟ ਹੋ ਜਾਂਦਾ ਹੈ ਜਿਸਨੂੰ ਸੰਭਾਲਿਆ ਜਾ ਰਿਹਾ ਸੀ। Exception " +"ਨੂੰ :keyword:`except`, :keyword:`finally` clause ਜਾਂ :keyword:`with` statement " +"ਦੀ ਵਰਤੋਂ ਦੌਰਾਨ ਸੰਭਾਲਿਆ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"This implicit exception context can be supplemented with an explicit cause " +"by using :keyword:`!from` with :keyword:`raise`::" +msgstr "" +"ਇਸ ਅਪਰੋਕਸ਼ exception context ਨੂੰ :keyword:`raise` ਨਾਲ :keyword:`!from` ਦੀ ਵਰਤੋਂ " +"ਕਰਕੇ ਇੱਕ ਸਪਸ਼ਟ ਕਾਰਨ ਨਾਲ ਵਧਾਇਆ ਜਾ ਸਕਦਾ ਹੈ::" + +msgid "raise new_exc from original_exc" +msgstr "raise new_exc from original_exc" + +msgid "" +"The expression following :keyword:`from` must be an exception or " +"``None``. It will be set as :attr:`!__cause__` on the raised exception. " +"Setting :attr:`!__cause__` also implicitly sets the :attr:`!" +"__suppress_context__` attribute to ``True``, so that using ``raise new_exc " +"from None`` effectively replaces the old exception with the new one for " +"display purposes (e.g. converting :exc:`KeyError` to :exc:`AttributeError`), " +"while leaving the old exception available in :attr:`!__context__` for " +"introspection when debugging." +msgstr "" +":keyword:`from` ਤੋਂ ਬਾਅਦ ਦਿੱਤਾ ਗਿਆ expression ਇੱਕ exception ਜਾਂ ``None`` " +"ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਹ raise ਕੀਤੇ ਗਏ exception ਦੇ :attr:`!__cause__` ਵਜੋਂ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ। :attr:`!__cause__` ਨੂੰ ਸੈੱਟ ਕਰਨ ਨਾਲ :attr:`!__suppress_context__` attribute " +"ਵੀ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ ``True`` ਹੋ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਕਾਰਨ ``raise new_exc from None`` ਦੀ " +"ਵਰਤੋਂ display ਦੇ ਮਕਸਦ ਲਈ ਪੁਰਾਣੇ exception ਨੂੰ ਨਵੇਂ exception ਨਾਲ ਬਦਲ ਦਿੰਦੀ ਹੈ (ਉਦਾਹਰਨ " +"ਲਈ :exc:`KeyError` ਨੂੰ :exc:`AttributeError` ਵਿੱਚ ਬਦਲਣਾ), ਜਦਕਿ debugging ਦੌਰਾਨ " +"ਜਾਂਚ ਲਈ ਪੁਰਾਣਾ exception :attr:`!__context__` ਵਿੱਚ ਉਪਲਬਧ ਰਹਿੰਦਾ ਹੈ।" + +msgid "" +"The default traceback display code shows these chained exceptions in " +"addition to the traceback for the exception itself. An explicitly chained " +"exception in :attr:`!__cause__` is always shown when present. An implicitly " +"chained exception in :attr:`!__context__` is shown only if :attr:`!" +"__cause__` is :const:`None` and :attr:`!__suppress_context__` is false." +msgstr "" +"ਮੂਲ traceback display code exception ਦੇ ਆਪਣੇ traceback ਤੋਂ ਇਲਾਵਾ ਇਹਨਾਂ ਜੁੜੀਆਂ ਹੋਈਆਂ " +"exceptions ਨੂੰ ਵੀ ਦਿਖਾਉਂਦਾ ਹੈ। :attr:`!__cause__` ਵਿੱਚ ਮੌਜੂਦ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਜੁੜੀ " +"exception ਹਮੇਸ਼ਾਂ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ। :attr:`!__context__` ਵਿੱਚ ਮੌਜੂਦ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ ਜੁੜੀ " +"exception ਤਦੋਂ ਹੀ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ ਜਦੋਂ :attr:`!__cause__` ਦੀ value :const:`None` ਹੋਵੇ " +"ਅਤੇ :attr:`!__suppress_context__` false ਹੋਵੇ।" + +msgid "" +"In either case, the exception itself is always shown after any chained " +"exceptions so that the final line of the traceback always shows the last " +"exception that was raised." +msgstr "" +"ਦੋਵੇਂ ਹਾਲਤਾਂ ਵਿੱਚ exception ਖੁਦ ਹਮੇਸ਼ਾਂ ਸਾਰੀਆਂ chained exceptions ਤੋਂ ਬਾਅਦ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ " +"ਤਾਂ ਜੋ traceback ਦੀ ਆਖਰੀ ਲਾਈਨ ਹਮੇਸ਼ਾਂ ਆਖਰੀ raise ਕੀਤੀ ਗਈ exception ਨੂੰ ਦਰਸਾਏ।" + +msgid "Inheriting from built-in exceptions" +msgstr "ਬਿਲਟ-ਇਨ ਐਕਸੈਪਸ਼ਨਾਂ ਤੋਂ ਵਿਰਾਸਤ ਲੈਣਾ" + +msgid "" +"User code can create subclasses that inherit from an exception type. It's " +"recommended to only subclass one exception type at a time to avoid any " +"possible conflicts between how the bases handle the ``args`` attribute, as " +"well as due to possible memory layout incompatibilities." +msgstr "" +"ਯੂਜ਼ਰ ਕੋਡ ਐਸੀ subclasses ਬਣਾ ਸਕਦਾ ਹੈ ਜੋ ਕਿਸੇ exception type ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀਆਂ ਹਨ। ਇਹ " +"ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿ ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਕੇਵਲ ਇੱਕ exception type ਦੀ ਹੀ subclass ਬਣਾਈ " +"ਜਾਵੇ, ਤਾਂ ਜੋ ``args`` attribute ਨੂੰ ਸੰਭਾਲਣ ਦੇ ਤਰੀਕਿਆਂ ਵਿੱਚ ਸੰਭਾਵਿਤ ਟਕਰਾਵਾਂ ਅਤੇ memory " +"layout ਦੀਆਂ ਅਣਅਨੁਕੂਲਤਾਵਾਂ ਤੋਂ ਬਚਿਆ ਜਾ ਸਕੇ।" + +msgid "" +"Most built-in exceptions are implemented in C for efficiency, " +"see: :source:`Objects/exceptions.c`. Some have custom memory layouts which " +"makes it impossible to create a subclass that inherits from multiple " +"exception types. The memory layout of a type is an implementation detail and " +"might change between Python versions, leading to new conflicts in the " +"future. Therefore, it's recommended to avoid subclassing multiple exception " +"types altogether." +msgstr "" +"ਜ਼ਿਆਦਾਤਰ built-in exceptions ਕੁਸ਼ਲਤਾ ਲਈ C ਵਿੱਚ ਲਾਗੂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ, " +"ਵੇਖੋ: :source:`Objects/exceptions.c`। ਕੁਝ exceptions ਦੇ custom memory layouts ਹੁੰਦੇ " +"ਹਨ, ਜਿਸ ਕਾਰਨ ਐਸੀ subclass ਬਣਾਉਣਾ ਸੰਭਵ ਨਹੀਂ ਹੁੰਦਾ ਜੋ ਕਈ exception types ਤੋਂ ਵਿਰਾਸਤ " +"ਲਵੇ। ਕਿਸੇ type ਦਾ memory layout ਇੱਕ implementation detail ਹੈ ਅਤੇ Python ਦੇ ਵੱਖ-ਵੱਖ " +"versions ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਭਵਿੱਖ ਵਿੱਚ ਨਵੇਂ ਟਕਰਾਵ ਪੈਦਾ ਹੋ ਸਕਦੇ ਹਨ। ਇਸ ਲਈ ਆਮ ਤੌਰ " +"'ਤੇ ਕਈ exception types ਦੀ subclassing ਤੋਂ ਬਚਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "Base classes" +msgstr "ਬੇਸ ਕਲਾਸਾਂ" + +msgid "" +"The following exceptions are used mostly as base classes for other " +"exceptions." +msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀਆਂ exceptions ਮੁੱਖ ਤੌਰ 'ਤੇ ਹੋਰ exceptions ਲਈ base classes ਵਜੋਂ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ " +"ਹਨ।" + +msgid "" +"The base class for all built-in exceptions. It is not meant to be directly " +"inherited by user-defined classes (for that, use :exc:`Exception`). " +"If :func:`str` is called on an instance of this class, the representation of " +"the argument(s) to the instance are returned, or the empty string when there " +"were no arguments." +msgstr "" +"ਸਾਰੀਆਂ built-in exceptions ਲਈ base class। ਇਹ user-defined classes ਦੁਆਰਾ ਸਿੱਧੇ ਤੌਰ " +"'ਤੇ ਵਿਰਾਸਤ ਲੈਣ ਲਈ ਨਹੀਂ ਬਣਾਈ ਗਈ (ਇਸ ਲਈ :exc:`Exception` ਦੀ ਵਰਤੋਂ ਕਰੋ)। ਜੇ ਇਸ class ਦੇ " +"ਕਿਸੇ instance ਉੱਤੇ :func:`str` ਕਾਲ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ instance ਨੂੰ ਦਿੱਤੇ ਗਏ argument(s) " +"ਦੀ representation ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਾਂ ਜੇ ਕੋਈ arguments ਨਾ ਹੋਣ ਤਾਂ ਖਾਲੀ string " +"ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"The tuple of arguments given to the exception constructor. Some built-in " +"exceptions (like :exc:`OSError`) expect a certain number of arguments and " +"assign a special meaning to the elements of this tuple, while others are " +"usually called only with a single string giving an error message." +msgstr "" +"exception constructor ਨੂੰ ਦਿੱਤੀਆਂ ਗਈਆਂ arguments ਦਾ tuple। ਕੁਝ built-in exceptions " +"(ਜਿਵੇਂ :exc:`OSError`) ਇੱਕ ਨਿਰਧਾਰਤ ਗਿਣਤੀ ਦੀਆਂ arguments ਦੀ ਉਮੀਦ ਕਰਦੀਆਂ ਹਨ ਅਤੇ ਇਸ " +"tuple ਦੇ ਤੱਤਾਂ ਨੂੰ ਖਾਸ ਅਰਥ ਦਿੰਦੀਆਂ ਹਨ, ਜਦਕਿ ਹੋਰ exceptions ਆਮ ਤੌਰ 'ਤੇ ਕੇਵਲ ਇੱਕ error " +"message ਵਾਲੀ string ਨਾਲ ਹੀ ਕਾਲ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।" + +msgid "" +"This method sets *tb* as the new traceback for the exception and returns the " +"exception object. It was more commonly used before the exception chaining " +"features of :pep:`3134` became available. The following example shows how " +"we can convert an instance of ``SomeException`` into an instance of " +"``OtherException`` while preserving the traceback. Once raised, the current " +"frame is pushed onto the traceback of the ``OtherException``, as would have " +"happened to the traceback of the original ``SomeException`` had we allowed " +"it to propagate to the caller. ::" +msgstr "" +"ਇਹ method *tb* ਨੂੰ exception ਲਈ ਨਵੇਂ traceback ਵਜੋਂ ਸੈੱਟ ਕਰਦੀ ਹੈ ਅਤੇ exception object " +"ਵਾਪਸ ਕਰਦੀ ਹੈ। :pep:`3134` ਦੀ exception chaining ਵਿਸ਼ੇਸ਼ਤਾ ਉਪਲਬਧ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਇਸਦੀ " +"ਵਰਤੋਂ ਵੱਧ ਕੀਤੀ ਜਾਂਦੀ ਸੀ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ traceback ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਦਿਆਂ " +"``SomeException`` ਦੇ instance ਨੂੰ ``OtherException`` ਦੇ instance ਵਿੱਚ ਕਿਵੇਂ ਬਦਲਿਆ " +"ਜਾ ਸਕਦਾ ਹੈ। raise ਹੋਣ ਉਪਰੰਤ ਮੌਜੂਦਾ frame ``OtherException`` ਦੇ traceback ਵਿੱਚ ਸ਼ਾਮਲ " +"ਹੋ ਜਾਂਦੀ ਹੈ, ਬਿਲਕੁਲ ਉਸੇ ਤਰ੍ਹਾਂ ਜਿਵੇਂ ਮੂਲ ``SomeException`` ਦਾ traceback caller ਤੱਕ " +"propagate ਹੋਣ 'ਤੇ ਹੁੰਦਾ। ::" + +msgid "" +"try:\n" +" ...\n" +"except SomeException:\n" +" tb = sys.exception().__traceback__\n" +" raise OtherException(...).with_traceback(tb)" +msgstr "" +"try:\n" +" ...\n" +"except SomeException:\n" +" tb = sys.exception().__traceback__\n" +" raise OtherException(...).with_traceback(tb)" + +msgid "" +"A writable field that holds the :ref:`traceback object ` " +"associated with this exception. See also: :ref:`raise`." +msgstr "" +"ਇੱਕ writable field ਜੋ ਇਸ exception ਨਾਲ ਸੰਬੰਧਿਤ :ref:`traceback object ` ਨੂੰ ਸੰਭਾਲਦੀ ਹੈ। ਇਹ ਵੀ ਵੇਖੋ: :ref:`raise`।" + +msgid "" +"Add the string ``note`` to the exception's notes which appear in the " +"standard traceback after the exception string. A :exc:`TypeError` is raised " +"if ``note`` is not a string." +msgstr "" +"string ``note`` ਨੂੰ exception ਦੇ notes ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ, ਜੋ standard traceback " +"ਵਿੱਚ exception string ਤੋਂ ਬਾਅਦ ਦਿਖਾਈ ਦਿੰਦੇ ਹਨ। ਜੇ ``note`` string ਨਾ ਹੋਵੇ " +"ਤਾਂ :exc:`TypeError` raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"A list of the notes of this exception, which were added " +"with :meth:`add_note`. This attribute is created when :meth:`add_note` is " +"called." +msgstr "" +"ਇਸ exception ਦੇ notes ਦੀ ਇੱਕ list, ਜੋ :meth:`add_note` ਨਾਲ ਜੋੜੇ ਗਏ ਹੋਣ। ਇਹ " +"attribute :meth:`add_note` ਕਾਲ ਹੋਣ 'ਤੇ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"All built-in, non-system-exiting exceptions are derived from this class. " +"All user-defined exceptions should also be derived from this class." +msgstr "" +"ਸਾਰੀਆਂ built-in, non-system-exiting exceptions ਇਸ class ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀਆਂ ਹਨ। " +"ਸਾਰੀਆਂ user-defined exceptions ਨੂੰ ਵੀ ਇਸ class ਤੋਂ ਹੀ ਵਿਰਾਸਤ ਲੈਣੀ ਚਾਹੀਦੀ ਹੈ।" + +msgid "" +"The base class for those built-in exceptions that are raised for various " +"arithmetic " +"errors: :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:`FloatingPointError`." +msgstr "" +"ਉਹਨਾਂ built-in exceptions ਲਈ base class ਜੋ ਵੱਖ-ਵੱਖ arithmetic errors ਲਈ raise " +"ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ " +"ਹਨ: :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:`FloatingPointError`।" + +msgid "" +"Raised when a :ref:`buffer ` related operation cannot be " +"performed." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ :ref:`buffer ` ਨਾਲ ਸੰਬੰਧਿਤ operation ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ, " +"ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"The base class for the exceptions that are raised when a key or index used " +"on a mapping or sequence is invalid: :exc:`IndexError`, :exc:`KeyError`. " +"This can be raised directly by :func:`codecs.lookup`." +msgstr "" +"ਉਹ exceptions ਲਈ base class ਜੋ ਤਦੋਂ raise ਹੁੰਦੀਆਂ ਹਨ ਜਦੋਂ mapping ਜਾਂ sequence ਉੱਤੇ " +"ਵਰਤੀ ਗਈ key ਜਾਂ index ਗਲਤ ਹੋਵੇ: :exc:`IndexError`, :exc:`KeyError`। " +"ਇਸਨੂੰ :func:`codecs.lookup` ਦੁਆਰਾ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਵੀ raise ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "Concrete exceptions" +msgstr "ਖਾਸ exceptions" + +msgid "The following exceptions are the exceptions that are usually raised." +msgstr "ਹੇਠਾਂ ਦਿੱਤੀਆਂ exceptions ਉਹ ਹਨ ਜੋ ਆਮ ਤੌਰ 'ਤੇ raise ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।" + +msgid "Raised when an :keyword:`assert` statement fails." +msgstr "ਜਦੋਂ :keyword:`assert` statement ਅਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Raised when an attribute reference (see :ref:`attribute-references`) or " +"assignment fails. (When an object does not support attribute references or " +"attribute assignments at all, :exc:`TypeError` is raised.)" +msgstr "" +"ਜਦੋਂ ਕਿਸੇ attribute ਦਾ ਹਵਾਲਾ (ਵੇਖੋ :ref:`attribute-references`) ਜਾਂ assignment " +"ਅਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। (ਜੇ ਕੋਈ object attribute references ਜਾਂ " +"attribute assignments ਨੂੰ ਬਿਲਕੁਲ ਸਮਰਥਨ ਨਹੀਂ ਦਿੰਦਾ, ਤਾਂ :exc:`TypeError` raise ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ।)" + +msgid "" +"The optional *name* and *obj* keyword-only arguments set the corresponding " +"attributes:" +msgstr "" +"ਵਿਕਲਪਿਕ *name* ਅਤੇ *obj* keyword-only arguments ਸੰਬੰਧਿਤ attributes ਸੈੱਟ ਕਰਦੀਆਂ ਹਨ:" + +msgid "The name of the attribute that was attempted to be accessed." +msgstr "ਉਸ attribute ਦਾ ਨਾਮ ਜਿਸਨੂੰ access ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਗਈ ਸੀ।" + +msgid "The object that was accessed for the named attribute." +msgstr "ਉਹ object ਜਿਸ 'ਤੇ ਦਿੱਤੇ attribute ਨੂੰ access ਕੀਤਾ ਗਿਆ ਸੀ।" + +msgid "Added the :attr:`name` and :attr:`obj` attributes." +msgstr ":attr:`name` ਅਤੇ :attr:`obj` attributes ਜੋੜੇ ਗਏ।" + +msgid "" +"Raised when the :func:`input` function hits an end-of-file condition (EOF) " +"without reading any data. (Note: the :meth:`io.TextIOBase.read` " +"and :meth:`io.IOBase.readline` methods return an empty string when they hit " +"EOF.)" +msgstr "" +"ਜਦੋਂ :func:`input` function ਕੋਈ ਡਾਟਾ ਪੜ੍ਹੇ ਬਿਨਾਂ end-of-file (EOF) ਸਥਿਤੀ 'ਤੇ ਪਹੁੰਚ " +"ਜਾਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। (ਨੋਟ: :meth:`io.TextIOBase.read` " +"ਅਤੇ :meth:`io.IOBase.readline` methods EOF ਮਿਲਣ 'ਤੇ ਖਾਲੀ string ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ।)" + +msgid "Not currently used." +msgstr "ਵਰਤਮਾਨ ਵਿੱਚ ਵਰਤੀ ਨਹੀਂ ਜਾਂਦੀ।" + +msgid "" +"Raised when a :term:`generator` or :term:`coroutine` is closed; " +"see :meth:`generator.close` and :meth:`coroutine.close`. It directly " +"inherits from :exc:`BaseException` instead of :exc:`Exception` since it is " +"technically not an error." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ :term:`generator` ਜਾਂ :term:`coroutine` ਨੂੰ ਬੰਦ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਇਹ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ; ਵੇਖੋ :meth:`generator.close` ਅਤੇ :meth:`coroutine.close`। " +"ਇਹ :exc:`Exception` ਦੀ ਬਜਾਏ ਸਿੱਧੇ :exc:`BaseException` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀ ਹੈ ਕਿਉਂਕਿ " +"ਤਕਨੀਕੀ ਤੌਰ 'ਤੇ ਇਹ ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਹੈ।" + +msgid "" +"Raised when the :keyword:`import` statement has troubles trying to load a " +"module. Also raised when the \"from list\" in ``from ... import`` has a " +"name that cannot be found." +msgstr "" +"ਜਦੋਂ :keyword:`import` statement ਨੂੰ module ਲੋਡ ਕਰਨ ਵਿੱਚ ਸਮੱਸਿਆ ਆਉਂਦੀ ਹੈ ਤਾਂ ਇਹ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਉਸ ਵੇਲੇ ਵੀ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ``from ... import`` ਦੀ \"from " +"list\" ਵਿੱਚ ਦਿੱਤਾ ਨਾਮ ਨਹੀਂ ਲੱਭਦਾ।" + +msgid "" +"The optional *name* and *path* keyword-only arguments set the corresponding " +"attributes:" +msgstr "" +"ਵਿਕਲਪਿਕ *name* ਅਤੇ *path* keyword-only arguments ਸੰਬੰਧਿਤ attributes ਸੈੱਟ ਕਰਦੀਆਂ ਹਨ:" + +msgid "The name of the module that was attempted to be imported." +msgstr "ਉਸ module ਦਾ ਨਾਮ ਜਿਸਨੂੰ import ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਗਈ ਸੀ।" + +msgid "The path to any file which triggered the exception." +msgstr "ਉਸ ਫਾਈਲ ਦਾ path ਜਿਸ ਕਾਰਨ ਇਹ exception trigger ਹੋਈ।" + +msgid "Added the :attr:`name` and :attr:`path` attributes." +msgstr ":attr:`name` ਅਤੇ :attr:`path` attributes ਜੋੜੇ ਗਏ।" + +msgid "" +"A subclass of :exc:`ImportError` which is raised by :keyword:`import` when a " +"module could not be located. It is also raised when ``None`` is found " +"in :data:`sys.modules`." +msgstr "" +":exc:`ImportError` ਦੀ ਇੱਕ subclass ਜੋ :keyword:`import` ਦੁਆਰਾ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ " +"ਜਦੋਂ ਕੋਈ module ਲੱਭਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਇਹ ਉਸ ਵੇਲੇ ਵੀ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ " +"ਜਦੋਂ :data:`sys.modules` ਵਿੱਚ ``None`` ਮਿਲਦਾ ਹੈ।" + +msgid "" +"A subclass of :exc:`ImportError` which is raised when a lazy import fails " +"because it (directly or indirectly) tries to import itself." +msgstr "" +":exc:`ImportError` ਦੀ ਇੱਕ subclass ਜੋ ਉਸ ਵੇਲੇ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ lazy import " +"ਅਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ ਉਹ (ਸਿੱਧੇ ਜਾਂ ਅਸਿੱਧੇ ਤੌਰ 'ਤੇ) ਆਪਣੇ ਆਪ ਨੂੰ ਹੀ import ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ " +"ਕਰਦਾ ਹੈ।" + +msgid "" +"Raised when a sequence subscript is out of range. (Slice indices are " +"silently truncated to fall in the allowed range; if an index is not an " +"integer, :exc:`TypeError` is raised.)" +msgstr "" +"ਜਦੋਂ sequence ਦਾ subscript ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। (Slice " +"indices ਨੂੰ ਚੁੱਪਚਾਪ ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਸੀਮਾ ਵਿੱਚ ਕੱਟ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ; ਜੇ index integer ਨਾ ਹੋਵੇ " +"ਤਾਂ :exc:`TypeError` raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ।)" + +msgid "" +"Raised when a mapping (dictionary) key is not found in the set of existing " +"keys." +msgstr "" +"ਜਦੋਂ mapping (dictionary) ਦੀ key ਮੌਜੂਦਾ keys ਦੇ ਸਮੂਹ ਵਿੱਚ ਨਹੀਂ ਮਿਲਦੀ ਤਾਂ ਇਹ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Raised when the user hits the interrupt key (normally :kbd:`Control-C` " +"or :kbd:`Delete`). During execution, a check for interrupts is made " +"regularly. The exception inherits from :exc:`BaseException` so as to not be " +"accidentally caught by code that catches :exc:`Exception` and thus prevent " +"the interpreter from exiting." +msgstr "" +"ਜਦੋਂ ਉਪਭੋਗਤਾ interrupt key (ਆਮ ਤੌਰ 'ਤੇ :kbd:`Control-C` ਜਾਂ :kbd:`Delete`) ਦਬਾਉਂਦਾ " +"ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਚਲਾਉਣ ਦੌਰਾਨ interrupts ਲਈ ਨਿਯਮਿਤ ਤੌਰ 'ਤੇ ਜਾਂਚ ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ। ਇਹ exception :exc:`BaseException` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀ ਹੈ ਤਾਂ " +"ਜੋ :exc:`Exception` ਨੂੰ catch ਕਰਨ ਵਾਲਾ code ਇਸਨੂੰ ਗਲਤੀ ਨਾਲ ਨਾ ਫੜ ਲਵੇ ਅਤੇ " +"interpreter ਦੇ ਬੰਦ ਹੋਣ ਨੂੰ ਨਾ ਰੋਕੇ।" + +msgid "" +"Catching a :exc:`KeyboardInterrupt` requires special consideration. Because " +"it can be raised at unpredictable points, it may, in some circumstances, " +"leave the running program in an inconsistent state. It is generally best to " +"allow :exc:`KeyboardInterrupt` to end the program as quickly as possible or " +"avoid raising it entirely. (See :ref:`handlers-and-exceptions`.)" +msgstr "" +":exc:`KeyboardInterrupt` ਨੂੰ catch ਕਰਨ ਲਈ ਖਾਸ ਧਿਆਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਕਿਉਂਕਿ ਇਹ " +"ਅਣਅੰਦਾਜ਼ੇ ਵਾਲੇ ਸਮੇਂ 'ਤੇ raise ਹੋ ਸਕਦੀ ਹੈ, ਕੁਝ ਹਾਲਾਤਾਂ ਵਿੱਚ ਇਹ ਚੱਲ ਰਹੇ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਅਸੰਗਤ ਹਾਲਤ " +"ਵਿੱਚ ਛੱਡ ਸਕਦੀ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ ਸਭ ਤੋਂ ਵਧੀਆ ਹੈ ਕਿ :exc:`KeyboardInterrupt` ਨੂੰ ਜਿੰਨੀ ਜਲਦੀ " +"ਹੋ ਸਕੇ ਪ੍ਰੋਗਰਾਮ ਖਤਮ ਕਰਨ ਦਿੱਤਾ ਜਾਵੇ ਜਾਂ ਇਸਨੂੰ catch ਕਰਨ ਤੋਂ ਬਚਿਆ ਜਾਵੇ। (ਵੇਖੋ :ref:`handlers-" +"and-exceptions`)।" + +msgid "" +"Raised when an operation runs out of memory but the situation may still be " +"rescued (by deleting some objects). The associated value is a string " +"indicating what kind of (internal) operation ran out of memory. Note that " +"because of the underlying memory management architecture " +"(C's :c:func:`malloc` function), the interpreter may not always be able to " +"completely recover from this situation; it nevertheless raises an exception " +"so that a stack traceback can be printed, in case a run-away program was the " +"cause." +msgstr "" +"ਜਦੋਂ ਕੋਈ operation memory ਤੋਂ ਖਾਲੀ ਹੋ ਜਾਂਦੀ ਹੈ ਪਰ ਹਾਲਾਤ ਅਜੇ ਵੀ ਠੀਕ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ (ਕੁਝ " +"objects ਨੂੰ ਮਿਟਾ ਕੇ), ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਸੰਬੰਧਿਤ value ਇੱਕ string ਹੁੰਦੀ " +"ਹੈ ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਕਿਹੜੀ (ਅੰਦਰੂਨੀ) operation memory ਤੋਂ ਖਾਲੀ ਹੋ ਗਈ। ਧਿਆਨ ਦਿਓ ਕਿ ਅਧਾਰਭੂਤ " +"memory management architecture (C ਦੀ :c:func:`malloc` function) ਕਾਰਨ " +"interpreter ਹਮੇਸ਼ਾਂ ਪੂਰੀ ਤਰ੍ਹਾਂ recover ਨਹੀਂ ਕਰ ਸਕਦਾ; ਫਿਰ ਵੀ ਇਹ exception raise " +"ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ stack traceback ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾ ਸਕੇ ਜੇ ਕਾਰਨ ਕੋਈ ਬੇਕਾਬੂ ਪ੍ਰੋਗਰਾਮ ਹੋਵੇ।" + +msgid "" +"Raised when a local or global name is not found. This applies only to " +"unqualified names. The associated value is an error message that includes " +"the name that could not be found." +msgstr "" +"ਜਦੋਂ ਕੋਈ local ਜਾਂ global ਨਾਮ ਨਹੀਂ ਲੱਭਦਾ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਸਿਰਫ਼ " +"unqualified names 'ਤੇ ਲਾਗੂ ਹੁੰਦੀ ਹੈ। ਇਸ ਨਾਲ ਸੰਬੰਧਿਤ value ਇੱਕ error message ਹੁੰਦੀ ਹੈ " +"ਜਿਸ ਵਿੱਚ ਉਹ ਨਾਮ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ ਜੋ ਨਹੀਂ ਲੱਭਿਆ ਜਾ ਸਕਿਆ।" + +msgid "The optional *name* keyword-only argument sets the attribute:" +msgstr "ਵਿਕਲਪਿਕ *name* keyword-only argument ਹੇਠਾਂ ਦਿੱਤਾ attribute ਸੈੱਟ ਕਰਦਾ ਹੈ:" + +msgid "The name of the variable that was attempted to be accessed." +msgstr "ਉਸ variable ਦਾ ਨਾਮ ਜਿਸਨੂੰ access ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਗਈ ਸੀ।" + +msgid "Added the :attr:`name` attribute." +msgstr ":attr:`name` attribute ਜੋੜਿਆ ਗਿਆ।" + +msgid "" +"This exception is derived from :exc:`RuntimeError`. In user defined base " +"classes, abstract methods should raise this exception when they require " +"derived classes to override the method, or while the class is being " +"developed to indicate that the real implementation still needs to be added." +msgstr "" +"ਇਹ exception :exc:`RuntimeError` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀ ਹੈ। User-defined base classes " +"ਵਿੱਚ abstract methods ਨੂੰ ਇਹ exception raise ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ ਜਦੋਂ derived classes ਨੂੰ " +"method override ਕਰਨ ਦੀ ਲੋੜ ਹੋਵੇ ਜਾਂ ਜਦੋਂ class ਵਿਕਾਸ ਅਧੀਨ ਹੋਵੇ ਅਤੇ ਅਸਲ implementation " +"ਅਜੇ ਜੋੜਨੀ ਬਾਕੀ ਹੋਵੇ।" + +msgid "" +"It should not be used to indicate that an operator or method is not meant to " +"be supported at all -- in that case either leave the operator / method " +"undefined or, if a subclass, set it to :data:`None`." +msgstr "" +"ਇਸਦੀ ਵਰਤੋਂ ਇਹ ਦਰਸਾਉਣ ਲਈ ਨਹੀਂ ਕਰਨੀ ਚਾਹੀਦੀ ਕਿ ਕੋਈ operator ਜਾਂ method ਬਿਲਕੁਲ ਵੀ " +"ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ। ਉਸ ਹਾਲਤ ਵਿੱਚ operator / method ਨੂੰ undefined ਛੱਡੋ ਜਾਂ, ਜੇ subclass " +"ਹੋਵੇ, ਤਾਂ ਇਸਨੂੰ :data:`None` ਸੈੱਟ ਕਰੋ।" + +msgid "" +":exc:`!NotImplementedError` and :data:`!NotImplemented` are not " +"interchangeable. This exception should only be used as described above; " +"see :data:`NotImplemented` for details on correct usage of the built-in " +"constant." +msgstr "" +":exc:`!NotImplementedError` ਅਤੇ :data:`!NotImplemented` ਇੱਕ-ਦੂਜੇ ਦੇ ਬਦਲੇ ਨਹੀਂ ਵਰਤੇ " +"ਜਾ ਸਕਦੇ। ਇਸ exception ਦੀ ਵਰਤੋਂ ਸਿਰਫ਼ ਉਪਰ ਦਿੱਤੇ ਤਰੀਕੇ ਨਾਲ ਹੀ ਕੀਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ; " +"built-in constant ਦੀ ਸਹੀ ਵਰਤੋਂ ਬਾਰੇ ਵੇਰਵੇ ਲਈ :data:`NotImplemented` ਵੇਖੋ।" + +msgid "" +"This exception is raised when a system function returns a system-related " +"error, including I/O failures such as \"file not found\" or \"disk full\" " +"(not for illegal argument types or other incidental errors)." +msgstr "" +"ਇਹ exception ਤਦੋਂ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਕੋਈ system function system-ਸੰਬੰਧਿਤ ਗਲਤੀ " +"ਵਾਪਸ ਕਰਦੀ ਹੈ, ਜਿਸ ਵਿੱਚ I/O ਅਸਫਲਤਾਵਾਂ ਜਿਵੇਂ \"file not found\" ਜਾਂ \"disk full\" " +"ਸ਼ਾਮਲ ਹਨ (ਗਲਤ argument types ਜਾਂ ਹੋਰ ਸਹਾਇਕ ਗਲਤੀਆਂ ਲਈ ਨਹੀਂ)।" + +msgid "" +"The second form of the constructor sets the corresponding attributes, " +"described below. The attributes default to :const:`None` if not specified. " +"For backwards compatibility, if three arguments are passed, " +"the :attr:`~BaseException.args` attribute contains only a 2-tuple of the " +"first two constructor arguments." +msgstr "" +"Constructor ਦਾ ਦੂਜਾ ਰੂਪ ਹੇਠਾਂ ਵਰਣਿਤ ਸੰਬੰਧਿਤ attributes ਸੈੱਟ ਕਰਦਾ ਹੈ। ਜੇ attributes " +"ਨਿਰਧਾਰਤ ਨਾ ਕੀਤੇ ਜਾਣ ਤਾਂ ਉਹਨਾਂ ਦੀ ਮੂਲ value :const:`None` ਹੁੰਦੀ ਹੈ। ਪਿਛਲੀ ਅਨੁਕੂਲਤਾ ਲਈ, " +"ਜੇ ਤਿੰਨ arguments ਦਿੱਤੇ ਜਾਣ, ਤਾਂ :attr:`~BaseException.args` attribute ਵਿੱਚ ਸਿਰਫ਼ " +"ਪਹਿਲੇ ਦੋ constructor arguments ਵਾਲਾ 2-tuple ਹੀ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"The constructor often actually returns a subclass of :exc:`OSError`, as " +"described in `OS exceptions`_ below. The particular subclass depends on the " +"final :attr:`.errno` value. This behaviour only occurs when " +"constructing :exc:`OSError` directly or via an alias, and is not inherited " +"when subclassing." +msgstr "" +"Constructor ਅਕਸਰ ਅਸਲ ਵਿੱਚ :exc:`OSError` ਦੀ ਕੋਈ subclass ਵਾਪਸ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਹੇਠਾਂ " +"`OS exceptions`_ ਵਿੱਚ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ। ਖਾਸ subclass ਅੰਤਿਮ :attr:`.errno` value " +"'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਇਹ ਵਿਹਾਰ ਕੇਵਲ :exc:`OSError` ਨੂੰ ਸਿੱਧੇ ਜਾਂ alias ਰਾਹੀਂ ਬਣਾਉਣ ਵੇਲੇ " +"ਹੁੰਦਾ ਹੈ ਅਤੇ subclassing ਦੌਰਾਨ ਵਿਰਾਸਤ ਵਿੱਚ ਨਹੀਂ ਮਿਲਦਾ।" + +msgid "A numeric error code from the C variable :c:data:`errno`." +msgstr "C variable :c:data:`errno` ਤੋਂ ਮਿਲਿਆ ਇੱਕ ਸੰਖਿਆਤਮਕ error code।" + +msgid "" +"Under Windows, this gives you the native Windows error code. " +"The :attr:`.errno` attribute is then an approximate translation, in POSIX " +"terms, of that native error code." +msgstr "" +"Windows ਵਿੱਚ ਇਹ ਤੁਹਾਨੂੰ native Windows error code ਦਿੰਦਾ ਹੈ। :attr:`.errno` " +"attribute ਫਿਰ ਉਸ native error code ਦਾ POSIX ਅਨੁਸਾਰ ਇੱਕ ਅੰਦਾਜ਼ਨ ਅਨੁਵਾਦ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Under Windows, if the *winerror* constructor argument is an integer, " +"the :attr:`.errno` attribute is determined from the Windows error code, and " +"the *errno* argument is ignored. On other platforms, the *winerror* " +"argument is ignored, and the :attr:`winerror` attribute does not exist." +msgstr "" +"Windows ਵਿੱਚ, ਜੇ *winerror* constructor argument ਇੱਕ integer ਹੋਵੇ, " +"ਤਾਂ :attr:`.errno` attribute Windows error code ਤੋਂ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ " +"*errno* argument ਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਹੋਰ platforms 'ਤੇ *winerror* argument ਨੂੰ " +"ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ :attr:`winerror` attribute ਮੌਜੂਦ ਨਹੀਂ ਹੁੰਦਾ।" + +msgid "" +"The corresponding error message, as provided by the operating system. Under " +"POSIX, it is obtained using the C functions :c:func:`!strerror` or :c:func:`!" +"strerror_r`; under Windows, :c:func:`!FormatMessage` is used." +msgstr "" + +msgid "" +"For exceptions that involve a file system path (such as :func:`open` " +"or :func:`os.unlink`), :attr:`filename` is the file name passed to the " +"function. For functions that involve two file system paths (such " +"as :func:`os.rename`), :attr:`filename2` corresponds to the second file name " +"passed to the function." +msgstr "" +"ਜਿਨ੍ਹਾਂ exceptions ਵਿੱਚ file system path ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ (ਜਿਵੇਂ :func:`open` " +"ਜਾਂ :func:`os.unlink`), ਉਨ੍ਹਾਂ ਵਿੱਚ :attr:`filename` ਉਹ file name ਹੁੰਦਾ ਹੈ ਜੋ " +"function ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਜਿਹੜੀਆਂ functions ਵਿੱਚ ਦੋ file system paths ਹੁੰਦੇ ਹਨ " +"(ਜਿਵੇਂ :func:`os.rename`), ਉਨ੍ਹਾਂ ਵਿੱਚ :attr:`filename2` ਦੂਜੇ file name ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ " +"ਹੈ।" + +msgid "" +":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket.error`, :exc:`select.error` " +"and :exc:`!mmap.error` have been merged into :exc:`OSError`, and the " +"constructor may return a subclass." +msgstr "" +":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket.error`, :exc:`select.error` " +"ਅਤੇ :exc:`!mmap.error` ਨੂੰ :exc:`OSError` ਵਿੱਚ ਮਿਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਅਤੇ constructor " +"ਇੱਕ subclass ਵਾਪਸ ਕਰ ਸਕਦਾ ਹੈ।" + +msgid "" +"The :attr:`filename` attribute is now the original file name passed to the " +"function, instead of the name encoded to or decoded from " +"the :term:`filesystem encoding and error handler`. Also, the *filename2* " +"constructor argument and attribute was added." +msgstr "" +":attr:`filename` attribute ਹੁਣ function ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਮੂਲ file name ਰੱਖਦਾ ਹੈ, ਨਾ ਕਿ " +"ਉਹ ਨਾਮ ਜੋ :term:`filesystem encoding and error handler` ਰਾਹੀਂ encode ਜਾਂ decode " +"ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਇਸਦੇ ਨਾਲ *filename2* constructor argument ਅਤੇ attribute ਵੀ ਜੋੜੇ ਗਏ " +"ਹਨ।" + +msgid "" +"Raised when the result of an arithmetic operation is too large to be " +"represented. This cannot occur for integers (which would rather " +"raise :exc:`MemoryError` than give up). However, for historical reasons, " +"OverflowError is sometimes raised for integers that are outside a required " +"range. Because of the lack of standardization of floating-point exception " +"handling in C, most floating-point operations are not checked." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ arithmetic operation ਦਾ ਨਤੀਜਾ ਦਰਸਾਏ ਜਾਣ ਲਈ ਬਹੁਤ ਵੱਡਾ ਹੋਵੇ ਤਾਂ ਇਹ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ integers ਲਈ ਨਹੀਂ ਹੁੰਦਾ (ਉਹ ਇਸਦੀ ਥਾਂ :exc:`MemoryError` raise " +"ਕਰਨਗੇ)। ਹਾਲਾਂਕਿ ਇਤਿਹਾਸਕ ਕਾਰਨਾਂ ਕਰਕੇ, ਕਈ ਵਾਰ ਲੋੜੀਂਦੀ ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਵਾਲੇ integers ਲਈ ਵੀ " +"OverflowError raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। C ਵਿੱਚ floating-point exception handling ਦੇ " +"ਮਿਆਰੀਕਰਨ ਦੀ ਘਾਟ ਕਾਰਨ ਜ਼ਿਆਦਾਤਰ floating-point operations ਦੀ ਜਾਂਚ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ।" + +msgid "" +"This exception is derived from :exc:`RuntimeError`. It is raised when an " +"operation is blocked during interpreter shutdown also known as :term:`Python " +"finalization `." +msgstr "" +"ਇਹ exception :exc:`RuntimeError` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀ ਹੈ। ਇਹ ਤਦੋਂ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ " +"interpreter shutdown, ਜਿਸਨੂੰ :term:`Python finalization ` ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਦੌਰਾਨ ਕੋਈ operation ਰੋਕ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Examples of operations which can be blocked with " +"a :exc:`PythonFinalizationError` during the Python finalization:" +msgstr "" +"ਉਹ operations ਜਿਨ੍ਹਾਂ ਨੂੰ Python finalization " +"ਦੌਰਾਨ :exc:`PythonFinalizationError` ਨਾਲ ਰੋਕਿਆ ਜਾ ਸਕਦਾ ਹੈ:" + +msgid "Creating a new Python thread." +msgstr "ਨਵਾਂ Python thread ਬਣਾਉਣਾ।" + +msgid ":meth:`Joining ` a running daemon thread." +msgstr "ਚੱਲ ਰਹੇ daemon thread ਨੂੰ :meth:`Joining ` ਕਰਨਾ।" + +msgid ":func:`os.fork`," +msgstr ":func:`os.fork`," + +msgid "" +"acquiring a lock such as :class:`threading.Lock`, when it is known that the " +"operation would otherwise deadlock." +msgstr "" +":class:`threading.Lock` ਵਰਗਾ lock ਪ੍ਰਾਪਤ ਕਰਨਾ, ਜਦੋਂ ਇਹ ਪਤਾ ਹੋਵੇ ਕਿ ਨਹੀਂ ਤਾਂ " +"operation deadlock ਵਿੱਚ ਫਸ ਜਾਵੇਗੀ।" + +msgid "See also the :func:`sys.is_finalizing` function." +msgstr "ਇਸ ਨਾਲ ਸੰਬੰਧਿਤ :func:`sys.is_finalizing` function ਵੀ ਵੇਖੋ।" + +msgid "Previously, a plain :exc:`RuntimeError` was raised." +msgstr "ਪਹਿਲਾਂ ਇੱਕ ਸਧਾਰਣ :exc:`RuntimeError` raise ਕੀਤੀ ਜਾਂਦੀ ਸੀ।" + +msgid ":meth:`threading.Thread.join` can now raise this exception." +msgstr ":meth:`threading.Thread.join` ਹੁਣ ਇਹ exception raise ਕਰ ਸਕਦੀ ਹੈ।" + +msgid "" +"This exception may be raised when acquiring :meth:`threading.Lock` " +"or :meth:`threading.RLock`." +msgstr "" +":meth:`threading.Lock` ਜਾਂ :meth:`threading.RLock` ਪ੍ਰਾਪਤ ਕਰਨ ਵੇਲੇ ਇਹ exception " +"raise ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।" + +msgid "" +"This exception is derived from :exc:`RuntimeError`. It is raised when the " +"interpreter detects that the maximum recursion depth " +"(see :func:`sys.getrecursionlimit`) is exceeded." +msgstr "" +"ਇਹ exception :exc:`RuntimeError` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀ ਹੈ। ਇਹ ਤਦੋਂ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ " +"interpreter ਇਹ ਪਤਾ ਲਗਾਉਂਦਾ ਹੈ ਕਿ recursion ਦੀ ਅਧਿਕਤਮ ਗਹਿਰਾਈ " +"(:func:`sys.getrecursionlimit` ਵੇਖੋ) ਪਾਰ ਹੋ ਗਈ ਹੈ।" + +msgid "" +"This exception is raised when a weak reference proxy, created by " +"the :func:`weakref.proxy` function, is used to access an attribute of the " +"referent after it has been garbage collected. For more information on weak " +"references, see the :mod:`weakref` module." +msgstr "" +"ਇਹ exception ਤਦੋਂ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ :func:`weakref.proxy` function ਦੁਆਰਾ " +"ਬਣਾਇਆ ਗਿਆ weak reference proxy, referent ਦੇ garbage collect ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ ਉਸਦੀ " +"ਕਿਸੇ attribute ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। weak references ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :mod:`weakref` module ਵੇਖੋ।" + +msgid "" +"Raised when an error is detected that doesn't fall in any of the other " +"categories. The associated value is a string indicating what precisely went " +"wrong." +msgstr "" +"ਜਦੋਂ ਅਜਿਹੀ ਗਲਤੀ ਮਿਲਦੀ ਹੈ ਜੋ ਹੋਰ ਕਿਸੇ ਵੀ ਸ਼੍ਰੇਣੀ ਵਿੱਚ ਨਹੀਂ ਆਉਂਦੀ, ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਇਸ ਨਾਲ ਜੁੜੀ value ਇੱਕ string ਹੁੰਦੀ ਹੈ ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਅਸਲ ਵਿੱਚ ਕੀ ਗਲਤ ਹੋਇਆ।" + +msgid "" +"Raised by built-in function :func:`next` and " +"an :term:`iterator`\\'s :meth:`~iterator.__next__` method to signal that " +"there are no further items produced by the iterator." +msgstr "" +"Built-in function :func:`next` ਅਤੇ :term:`iterator` " +"ਦੀ :meth:`~iterator.__next__` method ਦੁਆਰਾ ਇਹ ਸੰਕੇਤ ਦੇਣ ਲਈ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿ " +"iterator ਵੱਲੋਂ ਹੋਰ ਕੋਈ items ਉਤਪੰਨ ਨਹੀਂ ਕੀਤੇ ਜਾਣਗੇ।" + +msgid "" +"The exception object has a single attribute :attr:`!value`, which is given " +"as an argument when constructing the exception, and defaults " +"to :const:`None`." +msgstr "" +"Exception object ਵਿੱਚ ਇੱਕੋ attribute :attr:`!value` ਹੁੰਦਾ ਹੈ, ਜੋ exception ਬਣਾਉਂਦੇ ਸਮੇਂ " +"argument ਵਜੋਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਮੂਲ ਰੂਪ ਵਿੱਚ :const:`None` ਹੁੰਦਾ ਹੈ।" + +msgid "" +"When a :term:`generator` or :term:`coroutine` function returns, a " +"new :exc:`StopIteration` instance is raised, and the value returned by the " +"function is used as the :attr:`value` parameter to the constructor of the " +"exception." +msgstr "" +"ਜਦੋਂ ਕੋਈ :term:`generator` ਜਾਂ :term:`coroutine` function ਵਾਪਸ return ਕਰਦੀ ਹੈ, ਤਾਂ " +"ਇੱਕ ਨਵਾਂ :exc:`StopIteration` instance raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ function ਵੱਲੋਂ ਵਾਪਸ " +"ਕੀਤੀ ਗਈ value ਨੂੰ exception ਦੇ constructor ਵਿੱਚ :attr:`value` parameter ਵਜੋਂ ਵਰਤਿਆ " +"ਜਾਂਦਾ ਹੈ।" + +msgid "" +"If a generator code directly or indirectly raises :exc:`StopIteration`, it " +"is converted into a :exc:`RuntimeError` (retaining the :exc:`StopIteration` " +"as the new exception's cause)." +msgstr "" +"ਜੇ generator code ਸਿੱਧੇ ਜਾਂ ਅਸਿੱਧੇ ਤੌਰ 'ਤੇ :exc:`StopIteration` raise ਕਰਦਾ ਹੈ, ਤਾਂ " +"ਇਸਨੂੰ :exc:`RuntimeError` ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ (ਜਿੱਥੇ :exc:`StopIteration` ਨਵੇਂ " +"exception ਦੇ cause ਵਜੋਂ ਕਾਇਮ ਰਹਿੰਦੀ ਹੈ)।" + +msgid "" +"Added ``value`` attribute and the ability for generator functions to use it " +"to return a value." +msgstr "" +"``value`` attribute ਅਤੇ generator functions ਲਈ ਇਸਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੋਈ value return " +"ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਜੋੜੀ ਗਈ।" + +msgid "" +"Introduced the RuntimeError transformation via ``from __future__ import " +"generator_stop``, see :pep:`479`." +msgstr "" +"``from __future__ import generator_stop`` ਰਾਹੀਂ RuntimeError transformation " +"ਪੇਸ਼ ਕੀਤੀ ਗਈ, ਵੇਖੋ :pep:`479`।" + +msgid "" +"Enable :pep:`479` for all code by default: a :exc:`StopIteration` error " +"raised in a generator is transformed into a :exc:`RuntimeError`." +msgstr "" +"ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਾਰੇ code ਲਈ :pep:`479` ਨੂੰ ਸਮਰੱਥ ਕੀਤਾ ਗਿਆ: generator ਵਿੱਚ raise " +"ਹੋਈ :exc:`StopIteration` ਗਲਤੀ ਨੂੰ :exc:`RuntimeError` ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Must be raised by :meth:`~object.__anext__` method of an :term:`asynchronous " +"iterator` object to stop the iteration." +msgstr "" +"Iteration ਨੂੰ ਰੋਕਣ ਲਈ :term:`asynchronous iterator` object " +"ਦੀ :meth:`~object.__anext__` method ਵੱਲੋਂ ਇਹ raise ਕੀਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ।" + +msgid "" +"Raised when the parser encounters a syntax error. This may occur in " +"an :keyword:`import` statement, in a call to the built-in " +"functions :func:`compile`, :func:`exec`, or :func:`eval`, or when reading " +"the initial script or standard input (also interactively)." +msgstr "" +"ਜਦੋਂ parser ਨੂੰ syntax error ਮਿਲਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :keyword:`import` statement ਵਿੱਚ, built-in " +"functions :func:`compile`, :func:`exec`, ਜਾਂ :func:`eval` ਦੀ call ਦੌਰਾਨ, ਜਾਂ " +"ਸ਼ੁਰੂਆਤੀ script ਜਾਂ standard input ਪੜ੍ਹਦੇ ਸਮੇਂ (interactive ਤਰੀਕੇ ਨਾਲ ਵੀ) ਹੋ ਸਕਦੀ ਹੈ।" + +msgid "" +"The :func:`str` of the exception instance returns only the error message. " +"Details is a tuple whose members are also available as separate attributes." +msgstr "" +"Exception instance ਦਾ :func:`str` ਸਿਰਫ਼ error message ਵਾਪਸ ਕਰਦਾ ਹੈ। Details ਇੱਕ " +"tuple ਹੈ ਜਿਸਦੇ members ਵੱਖਰੇ attributes ਵਜੋਂ ਵੀ ਉਪਲਬਧ ਹੁੰਦੇ ਹਨ।" + +msgid "The name of the file the syntax error occurred in." +msgstr "ਉਸ file ਦਾ ਨਾਮ ਜਿਸ ਵਿੱਚ syntax error ਆਈ ਸੀ।" + +msgid "" +"Which line number in the file the error occurred in. This is 1-indexed: the " +"first line in the file has a ``lineno`` of 1." +msgstr "" +"File ਵਿੱਚ ਉਹ line number ਜਿੱਥੇ error ਆਈ ਸੀ। ਇਹ 1-indexed ਹੈ: file ਦੀ ਪਹਿਲੀ line " +"ਦਾ ``lineno`` 1 ਹੁੰਦਾ ਹੈ।" + +msgid "" +"The column in the line where the error occurred. This is 1-indexed: the " +"first character in the line has an ``offset`` of 1." +msgstr "" +"Line ਵਿੱਚ ਉਹ column ਜਿੱਥੇ error ਆਈ ਸੀ। ਇਹ 1-indexed ਹੈ: line ਦੇ ਪਹਿਲੇ ਅੱਖਰ ਦਾ " +"``offset`` 1 ਹੁੰਦਾ ਹੈ।" + +msgid "The source code text involved in the error." +msgstr "ਗਲਤੀ ਨਾਲ ਸੰਬੰਧਿਤ source code ਦਾ ਪਾਠ।" + +msgid "" +"Which line number in the file the error occurred ends in. This is 1-indexed: " +"the first line in the file has a ``lineno`` of 1." +msgstr "" +"File ਵਿੱਚ ਉਹ line number ਜਿੱਥੇ error ਖਤਮ ਹੁੰਦੀ ਹੈ। ਇਹ 1-indexed ਹੈ: file ਦੀ ਪਹਿਲੀ " +"line ਦਾ ``lineno`` 1 ਹੁੰਦਾ ਹੈ।" + +msgid "" +"The column in the end line where the error occurred finishes. This is 1-" +"indexed: the first character in the line has an ``offset`` of 1." +msgstr "" +"ਅੰਤਿਮ line ਵਿੱਚ ਉਹ column ਜਿੱਥੇ error ਖਤਮ ਹੁੰਦੀ ਹੈ। ਇਹ 1-indexed ਹੈ: line ਦੇ ਪਹਿਲੇ ਅੱਖਰ " +"ਦਾ ``offset`` 1 ਹੁੰਦਾ ਹੈ।" + +msgid "Added the :attr:`end_lineno` and :attr:`end_offset` attributes." +msgstr ":attr:`end_lineno` ਅਤੇ :attr:`end_offset` attributes ਜੋੜੇ ਗਏ।" + +msgid "" +"Base class for syntax errors related to incorrect indentation. This is a " +"subclass of :exc:`SyntaxError`." +msgstr "" +"ਗਲਤ indentation ਨਾਲ ਸੰਬੰਧਿਤ syntax errors ਲਈ base class। ਇਹ :exc:`SyntaxError` " +"ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when indentation contains an inconsistent use of tabs and spaces. " +"This is a subclass of :exc:`IndentationError`." +msgstr "" +"ਜਦੋਂ indentation ਵਿੱਚ tabs ਅਤੇ spaces ਦੀ ਅਸੰਗਤ ਵਰਤੋਂ ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :exc:`IndentationError` ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when the interpreter finds an internal error, but the situation does " +"not look so serious to cause it to abandon all hope. The associated value is " +"a string indicating what went wrong (in low-level terms). " +"In :term:`CPython`, this could be raised by incorrectly using Python's C " +"API, such as returning a ``NULL`` value without an exception set." +msgstr "" +"ਜਦੋਂ interpreter ਨੂੰ ਕੋਈ ਅੰਦਰੂਨੀ error ਮਿਲਦੀ ਹੈ ਪਰ ਸਥਿਤੀ ਇੰਨੀ ਗੰਭੀਰ ਨਹੀਂ ਲੱਗਦੀ ਕਿ ਉਹ ਕੰਮ " +"ਕਰਨਾ ਛੱਡ ਦੇਵੇ, ਤਦ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਜੁੜੀ value ਇੱਕ string ਹੁੰਦੀ ਹੈ ਜੋ ਦੱਸਦੀ " +"ਹੈ ਕਿ ਕੀ ਗਲਤ ਹੋਇਆ (low-level terms ਵਿੱਚ)। :term:`CPython` ਵਿੱਚ ਇਹ Python ਦੀ C " +"API ਦੀ ਗਲਤ ਵਰਤੋਂ ਕਾਰਨ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਵੇਂ exception set ਕੀਤੇ ਬਿਨਾਂ ``NULL`` value " +"return ਕਰਨਾ।" + +msgid "" +"If you're confident that this exception wasn't your fault, or the fault of a " +"package you're using, you should report this to the author or maintainer of " +"your Python interpreter. Be sure to report the version of the Python " +"interpreter (``sys.version``; it is also printed at the start of an " +"interactive Python session), the exact error message (the exception's " +"associated value) and if possible the source of the program that triggered " +"the error." +msgstr "" +"ਜੇ ਤੁਹਾਨੂੰ ਯਕੀਨ ਹੈ ਕਿ ਇਹ exception ਤੁਹਾਡੀ ਜਾਂ ਤੁਹਾਡੇ ਵਰਤੇ ਜਾ ਰਹੇ package ਦੀ ਗਲਤੀ ਨਹੀਂ ਹੈ, " +"ਤਾਂ ਇਸਦੀ ਰਿਪੋਰਟ ਆਪਣੇ Python interpreter ਦੇ author ਜਾਂ maintainer ਨੂੰ ਕਰੋ। Python " +"interpreter ਦਾ version (``sys.version``), ਸਹੀ error message (exception ਨਾਲ " +"ਜੁੜੀ value) ਅਤੇ ਸੰਭਵ ਹੋਵੇ ਤਾਂ ਉਹ source program ਵੀ ਸ਼ਾਮਲ ਕਰੋ ਜਿਸਨੇ ਇਹ error ਪੈਦਾ ਕੀਤੀ।" + +msgid "" +"This exception is raised by the :func:`sys.exit` function. It inherits " +"from :exc:`BaseException` instead of :exc:`Exception` so that it is not " +"accidentally caught by code that catches :exc:`Exception`. This allows the " +"exception to properly propagate up and cause the interpreter to exit. When " +"it is not handled, the Python interpreter exits; no stack traceback is " +"printed. The constructor accepts the same optional argument passed " +"to :func:`sys.exit`. If the value is an integer, it specifies the system " +"exit status (passed to C's :c:func:`!exit` function); if it is ``None``, the " +"exit status is zero; if it has another type (such as a string), the object's " +"value is printed and the exit status is one." +msgstr "" +"ਇਹ ਐਕਸੈਪਸ਼ਨ :func:`sys.exit` ਫੰਕਸ਼ਨ ਵੱਲੋਂ ਉਠਾਈ ਜਾਂਦੀ ਹੈ। ਇਹ :exc:`Exception` ਦੀ " +"ਥਾਂ :exc:`BaseException` ਤੋਂ ਵਿਰਾਸਤ ਕਰਦੀ ਹੈ, ਤਾਂ ਜੋ ਇਹ :exc:`Exception` ਫੜਨ ਵਾਲੇ ਕੋਡ " +"ਵੱਲੋਂ ਗਲਤੀ ਨਾਲ ਫੜੀ ਨਾ ਜਾਵੇ। ਇਸ ਨਾਲ ਐਕਸੈਪਸ਼ਨ ਠੀਕ ਤਰੀਕੇ ਨਾਲ ਉੱਪਰ ਤੱਕ ਪਹੁੰਚਦੀ ਹੈ ਅਤੇ " +"ਇੰਟਰਪ੍ਰੇਟਰ ਨੂੰ ਬੰਦ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰਦੀ ਹੈ। ਜਦੋਂ ਇਸਨੂੰ ਹੈਂਡਲ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ, ਤਾਂ ਪਾਈਥਨ ਇੰਟਰਪ੍ਰੇਟਰ " +"ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ; ਕੋਈ ਸਟੈਕ ਟਰੇਸਬੈਕ ਨਹੀਂ ਛਾਪਿਆ ਜਾਂਦਾ। ਕੰਸਟ੍ਰਕਟਰ ਉਹੀ ਵਿਕਲਪੀ ਤਰਕ ਸਵੀਕਾਰ " +"ਕਰਦਾ ਹੈ ਜੋ :func:`sys.exit` ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਜੇ ਇਹ ਮੁੱਲ ਇੰਟਿਜਰ ਹੈ, ਤਾਂ ਇਹ ਸਿਸਟਮ ਨਿਕਾਸ " +"ਸਥਿਤੀ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ (C ਦੇ :c:func:`!exit` ਫੰਕਸ਼ਨ ਨੂੰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ); ਜੇ ਇਹ " +"``None`` ਹੈ, ਤਾਂ ਨਿਕਾਸ ਸਥਿਤੀ ਜ਼ੀਰੋ ਹੁੰਦੀ ਹੈ; ਜੇ ਇਹ ਕਿਸੇ ਹੋਰ ਕਿਸਮ (ਜਿਵੇਂ ਕਿ ਸਟਰਿੰਗ) ਦੀ ਹੈ, " +"ਤਾਂ ਆਬਜੈਕਟ ਦਾ ਮੁੱਲ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਨਿਕਾਸ ਸਥਿਤੀ ਇੱਕ ਹੁੰਦੀ ਹੈ।" + +msgid "" +"A call to :func:`sys.exit` is translated into an exception so that clean-up " +"handlers (:keyword:`finally` clauses of :keyword:`try` statements) can be " +"executed, and so that a debugger can execute a script without running the " +"risk of losing control. The :func:`os._exit` function can be used if it is " +"absolutely positively necessary to exit immediately (for example, in the " +"child process after a call to :func:`os.fork`)." +msgstr "" +":func:`sys.exit` ਨੂੰ ਕਾਲ ਕਰਨ ਨੂੰ ਇੱਕ ਐਕਸੈਪਸ਼ਨ ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਜੋ ਸਾਫ਼-ਸਫ਼ਾਈ " +"ਹੈਂਡਲਰ (:keyword:`finally` ਕਲੌਜ਼ਾਂ ਜੋ :keyword:`try` ਬਿਆਨਾਂ ਵਿੱਚ ਹੁੰਦੀਆਂ ਹਨ) ਚਲਾਏ ਜਾ " +"ਸਕਣ, ਅਤੇ ਡੀਬੱਗਰ ਬਿਨਾਂ ਕੰਟਰੋਲ ਗੁਆਉਣ ਦੇ ਖਤਰੇ ਦੇ ਸਕ੍ਰਿਪਟ ਚਲਾ ਸਕੇ। ਜੇ ਤੁਰੰਤ ਬਾਹਰ ਨਿਕਲਣਾ ਬਿਲਕੁਲ " +"ਜ਼ਰੂਰੀ ਹੋਵੇ (ਉਦਾਹਰਨ ਵਜੋਂ, :func:`os.fork` ਨੂੰ ਕਾਲ ਕਰਨ ਤੋਂ ਬਾਅਦ ਚਾਈਲਡ ਪ੍ਰੋਸੈਸ ਵਿੱਚ), " +"ਤਾਂ :func:`os._exit` ਫੰਕਸ਼ਨ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"The exit status or error message that is passed to the constructor. " +"(Defaults to ``None``.)" +msgstr "" +"Constructor ਨੂੰ ਦਿੱਤਾ ਗਿਆ exit status ਜਾਂ error message। (ਮੂਲ ਰੂਪ ਵਿੱਚ ``None`` ਹੁੰਦਾ " +"ਹੈ।)" + +msgid "" +"Raised when an operation or function is applied to an object of " +"inappropriate type. The associated value is a string giving details about " +"the type mismatch." +msgstr "" +"ਜਦੋਂ ਕੋਈ operation ਜਾਂ function ਗਲਤ type ਦੇ object 'ਤੇ ਲਾਗੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਤਾਂ ਇਹ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਜੁੜੀ value ਇੱਕ string ਹੁੰਦੀ ਹੈ ਜੋ type mismatch ਬਾਰੇ ਜਾਣਕਾਰੀ " +"ਦਿੰਦੀ ਹੈ।" + +msgid "" +"This exception may be raised by user code to indicate that an attempted " +"operation on an object is not supported, and is not meant to be. If an " +"object is meant to support a given operation but has not yet provided an " +"implementation, :exc:`NotImplementedError` is the proper exception to raise." +msgstr "" +"ਇਹ exception user code ਵੱਲੋਂ ਇਹ ਦਰਸਾਉਣ ਲਈ raise ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਕਿ object ਉੱਤੇ " +"ਕੀਤੀ ਗਈ operation ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ। ਜੇ object ਨੂੰ ਕਿਸੇ operation ਨੂੰ support ਕਰਨਾ " +"ਚਾਹੀਦਾ ਹੈ ਪਰ implementation ਹਾਲੇ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਤਾਂ :exc:`NotImplementedError` " +"raise ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ।" + +msgid "" +"Passing arguments of the wrong type (e.g. passing a :class:`list` when " +"an :class:`int` is expected) should result in a :exc:`TypeError`, but " +"passing arguments with the wrong value (e.g. a number outside expected " +"boundaries) should result in a :exc:`ValueError`." +msgstr "" +"ਗਲਤ type ਦੇ arguments (ਜਿਵੇਂ :class:`int` ਦੀ ਉਮੀਦ ਹੋਣ 'ਤੇ :class:`list` " +"ਦੇਣਾ) :exc:`TypeError` ਪੈਦਾ ਕਰਦੇ ਹਨ, ਜਦਕਿ ਸਹੀ type ਪਰ ਗਲਤ value (ਜਿਵੇਂ ਉਮੀਦ ਕੀਤੀ " +"ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਕੋਈ number) :exc:`ValueError` ਪੈਦਾ ਕਰਦੀ ਹੈ।" + +msgid "" +"Raised when a reference is made to a local variable in a function or method, " +"but no value has been bound to that variable. This is a subclass " +"of :exc:`NameError`." +msgstr "" +"ਜਦੋਂ function ਜਾਂ method ਵਿੱਚ ਕਿਸੇ local variable ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਪਰ ਉਸ " +"variable ਨਾਲ ਕੋਈ value bind ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੁੰਦੀ, ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :exc:`NameError` ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when a Unicode-related encoding or decoding error occurs. It is a " +"subclass of :exc:`ValueError`." +msgstr "" +"ਜਦੋਂ Unicode ਨਾਲ ਸੰਬੰਧਿਤ encoding ਜਾਂ decoding error ਆਉਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਇਹ :exc:`ValueError` ਦੀ subclass ਹੈ।" + +msgid "" +":exc:`UnicodeError` has attributes that describe the encoding or decoding " +"error. For example, ``err.object[err.start:err.end]`` gives the particular " +"invalid input that the codec failed on." +msgstr "" +":exc:`UnicodeError` ਵਿੱਚ ਉਹ attributes ਹੁੰਦੇ ਹਨ ਜੋ encoding ਜਾਂ decoding error ਦਾ " +"ਵੇਰਵਾ ਦਿੰਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ ``err.object[err.start:err.end]`` ਉਹ invalid input " +"ਦਿੰਦਾ ਹੈ ਜਿਸ 'ਤੇ codec ਅਸਫਲ ਹੋਇਆ ਸੀ।" + +msgid "The name of the encoding that raised the error." +msgstr "ਉਸ encoding ਦਾ ਨਾਮ ਜਿਸਨੇ error ਪੈਦਾ ਕੀਤੀ।" + +msgid "A string describing the specific codec error." +msgstr "ਇੱਕ string ਜੋ ਖਾਸ codec error ਦਾ ਵੇਰਵਾ ਦਿੰਦੀ ਹੈ।" + +msgid "The object the codec was attempting to encode or decode." +msgstr "ਉਹ object ਜਿਸਨੂੰ codec encode ਜਾਂ decode ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰ ਰਿਹਾ ਸੀ।" + +msgid "The first index of invalid data in :attr:`object`." +msgstr ":attr:`object` ਵਿੱਚ invalid data ਦਾ ਪਹਿਲਾ index।" + +msgid "" +"This value should not be negative as it is interpreted as an absolute offset " +"but this constraint is not enforced at runtime." +msgstr "" +"ਇਹ value negative ਨਹੀਂ ਹੋਣੀ ਚਾਹੀਦੀ ਕਿਉਂਕਿ ਇਸਨੂੰ absolute offset ਵਜੋਂ ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ, " +"ਪਰ runtime ਦੌਰਾਨ ਇਸ ਪਾਬੰਦੀ ਨੂੰ ਲਾਗੂ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ।" + +msgid "The index after the last invalid data in :attr:`object`." +msgstr ":attr:`object` ਵਿੱਚ ਆਖਰੀ invalid data ਤੋਂ ਬਾਅਦ ਵਾਲਾ index।" + +msgid "" +"Raised when a Unicode-related error occurs during encoding. It is a " +"subclass of :exc:`UnicodeError`." +msgstr "" +"ਜਦੋਂ encoding ਦੌਰਾਨ Unicode ਨਾਲ ਸੰਬੰਧਿਤ error ਆਉਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :exc:`UnicodeError` ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when a Unicode-related error occurs during decoding. It is a " +"subclass of :exc:`UnicodeError`." +msgstr "" +"ਜਦੋਂ decoding ਦੌਰਾਨ Unicode ਨਾਲ ਸੰਬੰਧਿਤ error ਆਉਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :exc:`UnicodeError` ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when a Unicode-related error occurs during translating. It is a " +"subclass of :exc:`UnicodeError`." +msgstr "" +"ਜਦੋਂ translating ਦੌਰਾਨ Unicode ਨਾਲ ਸੰਬੰਧਿਤ error ਆਉਂਦੀ ਹੈ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :exc:`UnicodeError` ਦੀ subclass ਹੈ।" + +msgid "" +"Raised when an operation or function receives an argument that has the right " +"type but an inappropriate value, and the situation is not described by a " +"more precise exception such as :exc:`IndexError`." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ operation ਜਾਂ function ਨੂੰ ਸਹੀ type ਦਾ argument ਮਿਲਦਾ ਹੈ ਪਰ ਉਸਦੀ value " +"ਅਣਉਚਿਤ ਹੁੰਦੀ ਹੈ ਅਤੇ ਸਥਿਤੀ ਨੂੰ :exc:`IndexError` ਵਰਗੀ ਹੋਰ ਖਾਸ exception ਨਾਲ ਨਹੀਂ " +"ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ, ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Raised when the second argument of a division or modulo operation is zero. " +"The associated value is a string indicating the type of the operands and the " +"operation." +msgstr "" +"ਜਦੋਂ division ਜਾਂ modulo operation ਦਾ ਦੂਜਾ argument zero ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਜੁੜੀ value ਇੱਕ string ਹੁੰਦੀ ਹੈ ਜੋ operands ਦੀ type ਅਤੇ operation ਬਾਰੇ " +"ਜਾਣਕਾਰੀ ਦਿੰਦੀ ਹੈ।" + +msgid "" +"The following exceptions are kept for compatibility with previous versions; " +"starting from Python 3.3, they are aliases of :exc:`OSError`." +msgstr "" +"ਹੇਠ ਲਿਖੀਆਂ exceptions ਪੁਰਾਣੀਆਂ versions ਨਾਲ compatibility ਲਈ ਰੱਖੀਆਂ ਗਈਆਂ ਹਨ; Python " +"3.3 ਤੋਂ ਇਹ :exc:`OSError` ਦੇ aliases ਹਨ।" + +msgid "Only available on Windows." +msgstr "ਕੇਵਲ Windows ਉੱਤੇ ਉਪਲਬਧ।" + +msgid "OS exceptions" +msgstr "OS exceptions" + +msgid "" +"The following exceptions are subclasses of :exc:`OSError`, they get raised " +"depending on the system error code." +msgstr "" +"ਹੇਠ ਲਿਖੀਆਂ exceptions :exc:`OSError` ਦੀਆਂ subclasses ਹਨ ਅਤੇ system error code ਦੇ " +"ਅਨੁਸਾਰ raise ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।" + +msgid "" +"Raised when an operation would block on an object (e.g. socket) set for non-" +"blocking operation. Corresponds " +"to :c:data:`errno` :py:const:`~errno.EAGAIN`, :py:const:`~errno.EALREADY`, :py:const:`~errno.EWOULDBLOCK` " +"and :py:const:`~errno.EINPROGRESS`." +msgstr "" +"ਜਦੋਂ non-blocking operation ਲਈ ਸੈੱਟ ਕੀਤੇ object (ਜਿਵੇਂ socket) ਉੱਤੇ ਕੋਈ operation " +"block ਹੋ ਸਕਦੀ ਹੋਵੇ, ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.EAGAIN`, :py:const:`~errno.EALREADY`, :py:const:`~errno.EWOULDBLOCK` " +"ਅਤੇ :py:const:`~errno.EINPROGRESS` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"In addition to those of :exc:`OSError`, :exc:`BlockingIOError` can have one " +"more attribute:" +msgstr "" +":exc:`OSError` ਦੇ attributes ਤੋਂ ਇਲਾਵਾ, :exc:`BlockingIOError` ਵਿੱਚ ਇੱਕ ਹੋਰ " +"attribute ਵੀ ਹੋ ਸਕਦਾ ਹੈ:" + +msgid "" +"An integer containing the number of **bytes** written to the stream before " +"it blocked. This attribute is available when using the buffered I/O classes " +"from the :mod:`io` module." +msgstr "" +"ਇੱਕ integer ਜਿਸ ਵਿੱਚ stream block ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਲਿਖੇ ਗਏ **bytes** ਦੀ ਗਿਣਤੀ ਹੁੰਦੀ ਹੈ। " +"ਇਹ attribute :mod:`io` module ਦੀਆਂ buffered I/O classes ਵਰਤਣ ਸਮੇਂ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Raised when an operation on a child process failed. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ECHILD`." +msgstr "" +"ਜਦੋਂ child process ਉੱਤੇ ਕੋਈ operation ਅਸਫਲ ਹੋ ਜਾਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.ECHILD` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "A base class for connection-related issues." +msgstr "Connection ਨਾਲ ਸੰਬੰਧਿਤ ਸਮੱਸਿਆਵਾਂ ਲਈ ਇੱਕ base class।" + +msgid "" +"Subclasses " +"are :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:`ConnectionRefusedError` " +"and :exc:`ConnectionResetError`." +msgstr "" +"ਇਸ ਦੀਆਂ subclasses " +"ਹਨ :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:`ConnectionRefusedError` " +"ਅਤੇ :exc:`ConnectionResetError`।" + +msgid "" +"A subclass of :exc:`ConnectionError`, raised when trying to write on a pipe " +"while the other end has been closed, or trying to write on a socket which " +"has been shutdown for writing. Corresponds " +"to :c:data:`errno` :py:const:`~errno.EPIPE` and :py:const:`~errno.ESHUTDOWN`." +msgstr "" +":exc:`ConnectionError` ਦੀ ਇੱਕ ਸਬਕਲਾਸ, ਜੋ ਉਸ ਵੇਲੇ ਉਠਾਈ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਪਾਈਪ 'ਤੇ ਲਿਖਣ ਦੀ " +"ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਪਰ ਦੂਜਾ ਸਿਰ ਬੰਦ ਹੋ ਚੁੱਕਾ ਹੁੰਦਾ ਹੈ, ਜਾਂ ਲਿਖਣ ਲਈ ਸ਼ਟਡਾਊਨ ਕੀਤੇ ਸਾਕਟ 'ਤੇ " +"ਲਿਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ :c:data:`errno`, :py:const:`~errno.EPIPE` " +"ਅਤੇ :py:const:`~errno.ESHUTDOWN` ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ।" + +msgid "" +"A subclass of :exc:`ConnectionError`, raised when a connection attempt is " +"aborted by the peer. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ECONNABORTED`." +msgstr "" +":exc:`ConnectionError` ਦੀ ਇੱਕ ਉਪ-ਕਲਾਸ, ਜੋ ਪੀਅਰ ਵੱਲੋਂ ਕਨੈਕਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਰੱਦ ਹੋਣ 'ਤੇ ਉਠਾਈ " +"ਜਾਂਦੀ ਹੈ। ਇਹ :c:data:`errno` ਅਤੇ :py:const:`~errno.ECONNABORTED` ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ।" + +msgid "" +"A subclass of :exc:`ConnectionError`, raised when a connection attempt is " +"refused by the peer. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ECONNREFUSED`." +msgstr "" +":exc:`ConnectionError` ਦੀ ਇੱਕ ਉਪ-ਕਲਾਸ, ਜੋ ਪੀਅਰ ਵੱਲੋਂ ਕਨੈਕਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਰੱਦ ਹੋਣ 'ਤੇ ਉਠਾਈ " +"ਜਾਂਦੀ ਹੈ। ਇਹ :c:data:`errno` ਅਤੇ :py:const:`~errno.ECONNREFUSED` ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ।" + +msgid "" +"A subclass of :exc:`ConnectionError`, raised when a connection is reset by " +"the peer. Corresponds to :c:data:`errno` :py:const:`~errno.ECONNRESET`." +msgstr "" +":exc:`ConnectionError` ਦੀ ਇੱਕ ਉਪ-ਕਲਾਸ, ਜੋ ਪੀਅਰ ਦੁਆਰਾ ਕਨੈਕਸ਼ਨ ਰੀਸੈੱਟ ਹੋਣ 'ਤੇ ਉਠਾਈ ਜਾਂਦੀ " +"ਹੈ। ਇਹ :c:data:`errno` :py:const:`~errno.ECONNRESET` ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ।" + +msgid "" +"Raised when trying to create a file or directory which already exists. " +"Corresponds to :c:data:`errno` :py:const:`~errno.EEXIST`." +msgstr "" +"ਜਦੋਂ ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ file ਜਾਂ directory ਬਣਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ। ਇਹ :c:data:`errno` :py:const:`~errno.EEXIST` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Raised when a file or directory is requested but doesn't exist. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ENOENT`." +msgstr "" +"ਜਦੋਂ ਮੰਗੀ ਗਈ file ਜਾਂ directory ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.ENOENT` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Raised when a system call is interrupted by an incoming signal. Corresponds " +"to :c:data:`errno` :py:const:`~errno.EINTR`." +msgstr "" +"ਜਦੋਂ ਕਿਸੇ system call ਨੂੰ ਆਉਣ ਵਾਲੇ signal ਦੁਆਰਾ ਰੋਕ ਦਿੱਤਾ ਜਾਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਇਹ :c:data:`errno` :py:const:`~errno.EINTR` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Python now retries system calls when a syscall is interrupted by a signal, " +"except if the signal handler raises an exception (see :pep:`475` for the " +"rationale), instead of raising :exc:`InterruptedError`." +msgstr "" +"ਪਾਈਥਨ ਹੁਣ ਸਿਸਕਾਲ ਨੂੰ ਸਿਗਨਲ ਨਾਲ ਰੋਕੇ ਜਾਣ 'ਤੇ ਸਿਸਕਾਲਾਂ ਨੂੰ ਮੁੜ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਸਿਵਾਏ ਜਦੋਂ " +"ਸਿਗਨਲ ਹੈਂਡਲਰ ਐਕਸੈਪਸ਼ਨ ਉਠਾਉਂਦਾ ਹੈ (ਕਾਰਨ ਲਈ ਵੇਖੋ :pep:`475` ), ਨਾ " +"ਕਿ :exc:`InterruptedError` ਉਠਾਉਂਦਾ ਹੈ।" + +msgid "" +"Raised when a file operation (such as :func:`os.remove`) is requested on a " +"directory. Corresponds to :c:data:`errno` :py:const:`~errno.EISDIR`." +msgstr "" +"ਜਦੋਂ directory ਉੱਤੇ file operation (ਜਿਵੇਂ :func:`os.remove`) ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਵੇ " +"ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ :c:data:`errno` :py:const:`~errno.EISDIR` ਨਾਲ " +"ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Raised when a directory operation (such as :func:`os.listdir`) is requested " +"on something which is not a directory. On most POSIX platforms, it may also " +"be raised if an operation attempts to open or traverse a non-directory file " +"as if it were a directory. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ENOTDIR`." +msgstr "" +"ਜਦੋਂ directory operation (ਜਿਵੇਂ :func:`os.listdir`) ਕਿਸੇ ਐਸੀ ਚੀਜ਼ ਉੱਤੇ ਕੀਤੀ ਜਾਵੇ ਜੋ " +"directory ਨਾ ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.ENOTDIR` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Raised when trying to run an operation without the adequate access rights - " +"for example filesystem permissions. Corresponds " +"to :c:data:`errno` :py:const:`~errno.EACCES`, :py:const:`~errno.EPERM`, " +"and :py:const:`~errno.ENOTCAPABLE`." +msgstr "" +"ਜਦੋਂ ਯੋਗ access rights ਉਦਾਹਰਨ ਲਈ filesystem permissions ਤੋਂ ਬਿਨਾਂ ਕੋਈ operation " +"ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.EACCES`, :py:const:`~errno.EPERM` " +"ਅਤੇ :py:const:`~errno.ENOTCAPABLE` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"WASI's :py:const:`~errno.ENOTCAPABLE` is now mapped " +"to :exc:`PermissionError`." +msgstr "" +"WASI ਦਾ :py:const:`~errno.ENOTCAPABLE` ਹੁਣ :exc:`PermissionError` ਨਾਲ map " +"ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"Raised when a given process doesn't exist. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ESRCH`." +msgstr "" +"ਜਦੋਂ ਦਿੱਤਾ ਗਿਆ process ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.ESRCH` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "" +"Raised when a system function timed out at the system level. Corresponds " +"to :c:data:`errno` :py:const:`~errno.ETIMEDOUT`." +msgstr "" +"ਜਦੋਂ ਕੋਈ system function system level ਉੱਤੇ timeout ਹੋ ਜਾਵੇ ਤਾਂ ਇਹ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " +"ਇਹ :c:data:`errno` :py:const:`~errno.ETIMEDOUT` ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ।" + +msgid "All the above :exc:`OSError` subclasses were added." +msgstr "ਉੱਪਰ ਦਿੱਤੀਆਂ ਸਾਰੀਆਂ :exc:`OSError` subclasses ਸ਼ਾਮਲ ਕੀਤੀਆਂ ਗਈਆਂ।" + +msgid ":pep:`3151` - Reworking the OS and IO exception hierarchy" +msgstr ":pep:`3151` - OS ਅਤੇ IO exception hierarchy ਦਾ ਮੁੜ ਗਠਨ" + +msgid "Warnings" +msgstr "Warnings" + +msgid "" +"The following exceptions are used as warning categories; see " +"the :ref:`warning-categories` documentation for more details." +msgstr "" +"ਹੇਠ ਲਿਖੀਆਂ exceptions warning categories ਵਜੋਂ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ; ਵਧੇਰੇ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`warning-categories` documentation ਵੇਖੋ।" + +msgid "Base class for warning categories." +msgstr "Warning categories ਲਈ base class।" + +msgid "Base class for warnings generated by user code." +msgstr "User code ਦੁਆਰਾ ਬਣਾਈਆਂ warnings ਲਈ base class।" + +msgid "" +"Base class for warnings about deprecated features when those warnings are " +"intended for other Python developers." +msgstr "" +"Deprecated features ਬਾਰੇ warnings ਲਈ base class, ਜਦੋਂ ਇਹ warnings ਹੋਰ Python " +"developers ਲਈ ਹੋਣ।" + +msgid "" +"Ignored by the default warning filters, except in the ``__main__`` module " +"(:pep:`565`). Enabling the :ref:`Python Development Mode ` shows " +"this warning." +msgstr "" +"ਮੂਲ warning filters ਦੁਆਰਾ ਇਸਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਸਿਵਾਏ ``__main__`` module ਦੇ " +"(:pep:`565`)। :ref:`Python Development Mode ` ਚਾਲੂ ਕਰਨ ਨਾਲ ਇਹ " +"warning ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ।" + +msgid "The deprecation policy is described in :pep:`387`." +msgstr "Deprecation policy ਦਾ ਵੇਰਵਾ :pep:`387` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"Base class for warnings about features which are obsolete and expected to be " +"deprecated in the future, but are not deprecated at the moment." +msgstr "" +"ਉਹਨਾਂ features ਬਾਰੇ warnings ਲਈ base class ਜੋ obsolete ਹਨ ਅਤੇ ਭਵਿੱਖ ਵਿੱਚ " +"deprecated ਹੋਣ ਦੀ ਉਮੀਦ ਹੈ, ਪਰ ਇਸ ਵੇਲੇ deprecated ਨਹੀਂ ਹਨ।" + +msgid "" +"This class is rarely used as emitting a warning about a possible upcoming " +"deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " +"already active deprecations." +msgstr "" +"ਇਹ class ਘੱਟ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਕਿਉਂਕਿ ਸੰਭਾਵਿਤ ਭਵਿੱਖੀ deprecation ਬਾਰੇ warning ਦੇਣਾ " +"ਅਸਧਾਰਣ ਹੁੰਦਾ ਹੈ, ਅਤੇ ਪਹਿਲਾਂ ਤੋਂ ਸਰਗਰਮ deprecations ਲਈ :exc:`DeprecationWarning` ਨੂੰ " +"ਤਰਜੀਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Ignored by the default warning filters. Enabling the :ref:`Python " +"Development Mode ` shows this warning." +msgstr "" +"ਮੂਲ warning filters ਦੁਆਰਾ ਇਸਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। :ref:`Python Development " +"Mode ` ਚਾਲੂ ਕਰਨ ਨਾਲ ਇਹ warning ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ।" + +msgid "Base class for warnings about dubious syntax." +msgstr "ਸ਼ੱਕੀ syntax ਬਾਰੇ warnings ਲਈ base class।" + +msgid "" +"This warning is typically emitted when compiling Python source code, and " +"usually won't be reported when running already compiled code." +msgstr "" +"ਇਹ warning ਆਮ ਤੌਰ 'ਤੇ Python source code compile ਕਰਨ ਵੇਲੇ ਜਾਰੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ " +"ਪਹਿਲਾਂ ਤੋਂ compile ਕੀਤੇ code ਨੂੰ ਚਲਾਉਣ ਵੇਲੇ ਆਮ ਤੌਰ 'ਤੇ ਰਿਪੋਰਟ ਨਹੀਂ ਹੁੰਦੀ।" + +msgid "Base class for warnings about dubious runtime behavior." +msgstr "ਸ਼ੱਕੀ runtime ਵਿਵਹਾਰ ਬਾਰੇ warnings ਲਈ base class।" + +msgid "" +"Base class for warnings about deprecated features when those warnings are " +"intended for end users of applications that are written in Python." +msgstr "" +"Deprecated features ਬਾਰੇ warnings ਲਈ base class, ਜਦੋਂ ਇਹ warnings Python ਵਿੱਚ " +"ਲਿਖੀਆਂ applications ਦੇ ਅੰਤਿਮ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਹੋਣ।" + +msgid "Base class for warnings about probable mistakes in module imports." +msgstr "Module imports ਵਿੱਚ ਸੰਭਾਵਿਤ ਗਲਤੀਆਂ ਬਾਰੇ warnings ਲਈ base class।" + +msgid "Base class for warnings related to Unicode." +msgstr "Unicode ਨਾਲ ਸੰਬੰਧਿਤ warnings ਲਈ base class।" + +msgid "Base class for warnings related to encodings." +msgstr "Encoding ਨਾਲ ਸੰਬੰਧਿਤ warnings ਲਈ base class।" + +msgid "See :ref:`io-encoding-warning` for details." +msgstr "ਵੇਰਵਿਆਂ ਲਈ :ref:`io-encoding-warning` ਵੇਖੋ।" + +msgid "" +"Base class for warnings related to :class:`bytes` and :class:`bytearray`." +msgstr ":class:`bytes` ਅਤੇ :class:`bytearray` ਨਾਲ ਸੰਬੰਧਿਤ warnings ਲਈ base class।" + +msgid "Base class for warnings related to resource usage." +msgstr "Resource usage ਨਾਲ ਸੰਬੰਧਿਤ warnings ਲਈ base class।" + +msgid "Exception groups" +msgstr "Exception groups" + +msgid "" +"The following are used when it is necessary to raise multiple unrelated " +"exceptions. They are part of the exception hierarchy so they can be handled " +"with :keyword:`except` like all other exceptions. In addition, they are " +"recognised by :keyword:`except*`, which matches their subgroups " +"based on the types of the contained exceptions." +msgstr "" +"ਹੇਠ ਲਿਖੇ ਤਦੋਂ ਵਰਤੇ ਜਾਂਦੇ ਹਨ ਜਦੋਂ ਕਈ ਅਸੰਬੰਧਤ exceptions ਨੂੰ ਇਕੱਠੇ raise ਕਰਨਾ ਲੋੜੀਂਦਾ ਹੋਵੇ। ਇਹ " +"exception hierarchy ਦਾ ਹਿੱਸਾ ਹਨ, ਇਸ ਲਈ ਇਨ੍ਹਾਂ ਨੂੰ :keyword:`except` ਨਾਲ ਹੋਰ " +"exceptions ਵਾਂਗ handle ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ " +"ਇਲਾਵਾ, :keyword:`except*` ਵੀ ਇਨ੍ਹਾਂ ਨੂੰ ਪਛਾਣਦਾ ਹੈ।" + +msgid "" +"Both of these exception types wrap the exceptions in the sequence ``excs``. " +"The ``msg`` parameter must be a string. The difference between the two " +"classes is that :exc:`BaseExceptionGroup` extends :exc:`BaseException` and " +"it can wrap any exception, while :exc:`ExceptionGroup` " +"extends :exc:`Exception` and it can only wrap subclasses " +"of :exc:`Exception`. This design is so that ``except Exception`` catches " +"an :exc:`ExceptionGroup` but not :exc:`BaseExceptionGroup`." +msgstr "" +"ਇਹ ਦੋਵੇਂ ਐਕਸੈਪਸ਼ਨ ਕਿਸਮਾਂ ਐਕਸੈਪਸ਼ਨਾਂ ਨੂੰ ``excs`` ਵਿੱਚ ਲਪੇਟਦੀਆਂ ਹਨ। ``msg`` ਪੈਰਾਮੀਟਰ ਇੱਕ " +"ਸਟ੍ਰਿੰਗ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਦੋਹਾਂ ਕਲਾਸਾਂ ਵਿੱਚ ਫਰਕ ਇਹ ਹੈ " +"ਕਿ :exc:`BaseExceptionGroup`, :exc:`BaseException` ਨੂੰ ਵਿਸਥਾਰ ਕਰਦੀ ਹੈ ਅਤੇ ਇਹ ਕਿਸੇ " +"ਵੀ ਐਕਸੈਪਸ਼ਨ ਨੂੰ ਲਪੇਟ ਸਕਦੀ ਹੈ, ਜਦਕਿ :exc:`ExceptionGroup`, :exc:`Exception` ਨੂੰ " +"ਵਿਸਥਾਰ ਕਰਦੀ ਹੈ ਅਤੇ ਇਹ ਸਿਰਫ :exc:`Exception` ਦੀਆਂ ਸਬ-ਕਲਾਸਾਂ ਨੂੰ ਹੀ ਲਪੇਟ ਸਕਦੀ ਹੈ। ਇਹ " +"ਡਿਜ਼ਾਈਨ ਇਸ ਲਈ ਹੈ ਤਾਂ ਜੋ ``except Exception``, :exc:`ExceptionGroup` ਨੂੰ ਫੜ ਸਕੇ " +"ਪਰ :exc:`BaseExceptionGroup` ਨੂੰ ਨਹੀਂ।" + +msgid "" +"The :exc:`BaseExceptionGroup` constructor returns an :exc:`ExceptionGroup` " +"rather than a :exc:`BaseExceptionGroup` if all contained exceptions " +"are :exc:`Exception` instances, so it can be used to make the selection " +"automatic. The :exc:`ExceptionGroup` constructor, on the other hand, raises " +"a :exc:`TypeError` if any contained exception is not an :exc:`Exception` " +"subclass." +msgstr "" +"ਜੇ contained exceptions ਸਾਰੀਆਂ :exc:`Exception` instances ਹੋਣ " +"ਤਾਂ :exc:`BaseExceptionGroup` constructor, :exc:`BaseExceptionGroup` ਦੀ " +"ਬਜਾਏ :exc:`ExceptionGroup` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਦੂਜੇ ਪਾਸੇ, :exc:`ExceptionGroup` " +"constructor :exc:`TypeError` raise ਕਰਦਾ ਹੈ ਜੇ ਕੋਈ contained " +"exception :exc:`Exception` subclass ਨਾ ਹੋਵੇ।" + +msgid "" +"Exception groups are :ref:`generic ` over the type of their " +"contained exceptions." +msgstr "" +"Exception groups ਆਪਣੀਆਂ contained exceptions ਦੀ type ਉੱਤੇ :ref:`generic " +"` ਹੁੰਦੀਆਂ ਹਨ।" + +msgid "" +"The ``excs`` parameter may be any sequence, but lists and tuples are " +"specifically processed more efficiently here. For optimal performance, pass " +"a tuple as ``excs``." +msgstr "" +"``excs`` parameter ਕੋਈ ਵੀ sequence ਹੋ ਸਕਦੀ ਹੈ, ਪਰ lists ਅਤੇ tuples ਇੱਥੇ ਵਧੇਰੇ ਕੁਸ਼ਲਤਾ " +"ਨਾਲ process ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਸਭ ਤੋਂ ਵਧੀਆ performance ਲਈ ``excs`` ਵਜੋਂ tuple ਵਰਤੋ।" + +msgid "The ``msg`` argument to the constructor. This is a read-only attribute." +msgstr "Constructor ਦਾ ``msg`` argument। ਇਹ ਇੱਕ read-only attribute ਹੈ।" + +msgid "" +"A tuple of the exceptions in the ``excs`` sequence given to the constructor. " +"This is a read-only attribute." +msgstr "" +"Constructor ਨੂੰ ਦਿੱਤੀ ``excs`` sequence ਵਿੱਚ ਮੌਜੂਦ exceptions ਦੀ tuple। ਇਹ ਇੱਕ read-" +"only attribute ਹੈ।" + +msgid "" +"Returns an exception group that contains only the exceptions from the " +"current group that match *condition*, or ``None`` if the result is empty." +msgstr "" +"ਇੱਕ exception group ਵਾਪਸ ਕਰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਕੇਵਲ ਉਹ exceptions ਹੁੰਦੀਆਂ ਹਨ ਜੋ " +"*condition* ਨਾਲ ਮੇਲ ਖਾਂਦੀਆਂ ਹਨ। ਜੇ ਨਤੀਜਾ ਖਾਲੀ ਹੋਵੇ ਤਾਂ ``None`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"The condition can be an exception type or tuple of exception types, in which " +"case each exception is checked for a match using the same check that is used " +"in an ``except`` clause. The condition can also be a callable (other than a " +"type object) that accepts an exception as its single argument and returns " +"true for the exceptions that should be in the subgroup." +msgstr "" +"ਸ਼ਰਤ ਇੱਕ ਐਕਸੈਪਸ਼ਨ ਕਿਸਮ ਜਾਂ ਐਕਸੈਪਸ਼ਨ ਕਿਸਮਾਂ ਦਾ ਟਿਊਪਲ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਸ ਸਥਿਤੀ ਵਿੱਚ ਹਰ " +"ਐਕਸੈਪਸ਼ਨ ਨੂੰ ਉਸੇ ਜਾਂਚ ਨਾਲ ਮੇਲ ਲਈ ਜਾਂਚਿਆ ਜਾਂਦਾ ਹੈ ਜੋ ``except`` ਕਲਾਜ਼ ਵਿੱਚ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। " +"ਸ਼ਰਤ ਇੱਕ ਕਾਲੇਬਲ (ਟਾਈਪ ਆਬਜੈਕਟ ਤੋਂ ਇਲਾਵਾ) ਵੀ ਹੋ ਸਕਦੀ ਹੈ ਜੋ ਆਪਣਾ ਇਕੱਲਾ ਦਲੀਲ ਵਜੋਂ ਐਕਸੈਪਸ਼ਨ ਲੈਂਦੀ " +"ਹੈ ਅਤੇ ਉਹਨਾਂ ਐਕਸੈਪਸ਼ਨਾਂ ਲਈ ਸੱਚ ਵਾਪਸ ਕਰਦੀ ਹੈ ਜੋ ਸਬਗਰੁੱਪ ਵਿੱਚ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ।" + +msgid "" +"The nesting structure of the current exception is preserved in the result, " +"as are the values of " +"its :attr:`message`, :attr:`~BaseException.__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException.__context__` " +"and :attr:`~BaseException.__notes__` fields. Empty nested groups are omitted " +"from the result." +msgstr "" +"ਨਤੀਜੇ ਵਿੱਚ ਮੌਜੂਦਾ exception ਦੀ nesting structure ਸੁਰੱਖਿਅਤ ਰਹਿੰਦੀ " +"ਹੈ। :attr:`message`, :attr:`~BaseException.__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException.__context__` " +"ਅਤੇ :attr:`~BaseException.__notes__` ਦੀਆਂ values ਵੀ ਸੁਰੱਖਿਅਤ ਰਹਿੰਦੀਆਂ ਹਨ।" + +msgid "" +"The condition is checked for all exceptions in the nested exception group, " +"including the top-level and any nested exception groups. If the condition is " +"true for such an exception group, it is included in the result in full." +msgstr "" +"Condition ਨੂੰ nested exception group ਦੀਆਂ ਸਾਰੀਆਂ exceptions ਲਈ ਜਾਂਚਿਆ ਜਾਂਦਾ ਹੈ, ਜਿਸ " +"ਵਿੱਚ top-level ਅਤੇ nested exception groups ਵੀ ਸ਼ਾਮਲ ਹਨ। ਜੇ condition ਸਹੀ ਹੋਵੇ ਤਾਂ " +"ਉਹ exception group ਪੂਰੀ ਤਰ੍ਹਾਂ ਨਤੀਜੇ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "``condition`` can be any callable which is not a type object." +msgstr "``condition`` ਕੋਈ ਵੀ callable ਹੋ ਸਕਦੀ ਹੈ ਜੋ type object ਨਾ ਹੋਵੇ।" + +msgid "" +"Like :meth:`subgroup`, but returns the pair ``(match, rest)`` where " +"``match`` is ``subgroup(condition)`` and ``rest`` is the remaining non-" +"matching part." +msgstr "" +":meth:`subgroup` ਵਾਂਗ, ਪਰ ਇਹ ``(match, rest)`` ਜੋੜਾ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਜਿੱਥੇ ``match`` " +"= ``subgroup(condition)`` ਅਤੇ ``rest`` ਬਾਕੀ non-matching ਭਾਗ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Returns an exception group with the same :attr:`message`, but which wraps " +"the exceptions in ``excs``." +msgstr "" +"ਉਹੀ :attr:`message` ਵਾਲਾ exception group ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੋ ``excs`` ਵਿੱਚ ਦਿੱਤੀਆਂ " +"exceptions ਨੂੰ wrap ਕਰਦਾ ਹੈ।" + +msgid "" +"This method is used by :meth:`subgroup` and :meth:`split`, which are used in " +"various contexts to break up an exception group. A subclass needs to " +"override it in order to make :meth:`subgroup` and :meth:`split` return " +"instances of the subclass rather than :exc:`ExceptionGroup`." +msgstr "" +"ਇਹ method :meth:`subgroup` ਅਤੇ :meth:`split` ਦੁਆਰਾ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ subclass " +"ਚਾਹੁੰਦੀ ਹੈ ਕਿ :meth:`subgroup` ਅਤੇ :meth:`split` :exc:`ExceptionGroup` ਦੀ ਬਜਾਏ " +"ਉਸ subclass ਦੀਆਂ instances ਵਾਪਸ ਕਰਨ, ਤਾਂ ਇਸ method ਨੂੰ override ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ।" + +msgid "" +":meth:`subgroup` and :meth:`split` copy " +"the :attr:`~BaseException.__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException.__context__` " +"and :attr:`~BaseException.__notes__` fields from the original exception " +"group to the one returned by :meth:`derive`, so these fields do not need to " +"be updated by :meth:`derive`." +msgstr "" +":meth:`subgroup` ਅਤੇ :meth:`split`, ਮੂਲ exception group " +"ਤੋਂ :attr:`~BaseException.__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException.__context__` " +"ਅਤੇ :attr:`~BaseException.__notes__` fields ਨੂੰ :meth:`derive` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ " +"group ਵਿੱਚ ਕਾਪੀ ਕਰਦੀਆਂ ਹਨ, ਇਸ ਲਈ :meth:`derive` ਨੂੰ ਇਨ੍ਹਾਂ fields ਨੂੰ update ਕਰਨ ਦੀ " +"ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ।" + +msgid "" +">>> class MyGroup(ExceptionGroup):\n" +"... def derive(self, excs):\n" +"... return MyGroup(self.message, excs)\n" +"...\n" +">>> e = MyGroup(\"eg\", [ValueError(1), TypeError(2)])\n" +">>> e.add_note(\"a note\")\n" +">>> e.__context__ = Exception(\"context\")\n" +">>> e.__cause__ = Exception(\"cause\")\n" +">>> try:\n" +"... raise e\n" +"... except Exception as e:\n" +"... exc = e\n" +"...\n" +">>> match, rest = exc.split(ValueError)\n" +">>> exc, exc.__context__, exc.__cause__, exc.__notes__\n" +"(MyGroup('eg', [ValueError(1), TypeError(2)]), Exception('context'), " +"Exception('cause'), ['a note'])\n" +">>> match, match.__context__, match.__cause__, match.__notes__\n" +"(MyGroup('eg', [ValueError(1)]), Exception('context'), Exception('cause'), " +"['a note'])\n" +">>> rest, rest.__context__, rest.__cause__, rest.__notes__\n" +"(MyGroup('eg', [TypeError(2)]), Exception('context'), Exception('cause'), " +"['a note'])\n" +">>> exc.__traceback__ is match.__traceback__ is rest.__traceback__\n" +"True" +msgstr "" +">>> class MyGroup(ExceptionGroup):\n" +"... def derive(self, excs):\n" +"... return MyGroup(self.message, excs)\n" +"...\n" +">>> e = MyGroup(\"eg\", [ValueError(1), TypeError(2)])\n" +">>> e.add_note(\"a note\")\n" +">>> e.__context__ = Exception(\"context\")\n" +">>> e.__cause__ = Exception(\"cause\")\n" +">>> try:\n" +"... raise e\n" +"... except Exception as e:\n" +"... exc = e\n" +"...\n" +">>> match, rest = exc.split(ValueError)\n" +">>> exc, exc.__context__, exc.__cause__, exc.__notes__\n" +"(MyGroup('eg', [ValueError(1), TypeError(2)]), Exception('context'), " +"Exception('cause'), ['a note'])\n" +">>> match, match.__context__, match.__cause__, match.__notes__\n" +"(MyGroup('eg', [ValueError(1)]), Exception('context'), Exception('cause'), " +"['a note'])\n" +">>> rest, rest.__context__, rest.__cause__, rest.__notes__\n" +"(MyGroup('eg', [TypeError(2)]), Exception('context'), Exception('cause'), " +"['a note'])\n" +">>> exc.__traceback__ is match.__traceback__ is rest.__traceback__\n" +"True" + +msgid "" +"Note that :exc:`BaseExceptionGroup` defines :meth:`~object.__new__`, so " +"subclasses that need a different constructor signature need to override that " +"rather than :meth:`~object.__init__`. For example, the following defines an " +"exception group subclass which accepts an exit_code and constructs the " +"group's message from it. ::" +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ :exc:`BaseExceptionGroup` ਨੇ :meth:`~object.__new__` ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ " +"ਕੀਤਾ ਹੈ, ਇਸ ਲਈ ਉਹਨਾਂ ਸਬਕਲਾਸਾਂ ਨੂੰ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਵੱਖਰਾ ਕੰਸਟਰਕਟਰ ਸਿਗਨੇਚਰ ਚਾਹੀਦਾ " +"ਹੈ, :meth:`~object.__init__` ਦੀ ਥਾਂ ਇਸਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨਾ ਪਵੇਗਾ। ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੀ " +"ਕੋਡ ਇੱਕ ਐਕਸੈਪਸ਼ਨ ਗਰੁੱਪ ਸਬਕਲਾਸ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ ਜੋ exit_code ਸਵੀਕਾਰ ਕਰਦੀ ਹੈ ਅਤੇ ਉਸ ਤੋਂ " +"ਗਰੁੱਪ ਦਾ ਸੁਨੇਹਾ ਤਿਆਰ ਕਰਦੀ ਹੈ। ::" + +msgid "" +"class Errors(ExceptionGroup):\n" +" def __new__(cls, errors, exit_code):\n" +" self = super().__new__(Errors, f\"exit code: {exit_code}\", errors)\n" +" self.exit_code = exit_code\n" +" return self\n" +"\n" +" def derive(self, excs):\n" +" return Errors(excs, self.exit_code)" +msgstr "" +"class Errors(ExceptionGroup):\n" +" def __new__(cls, errors, exit_code):\n" +" self = super().__new__(Errors, f\"exit code: {exit_code}\", errors)\n" +" self.exit_code = exit_code\n" +" return self\n" +"\n" +" def derive(self, excs):\n" +" return Errors(excs, self.exit_code)" + +msgid "" +"Like :exc:`ExceptionGroup`, any subclass of :exc:`BaseExceptionGroup` which " +"is also a subclass of :exc:`Exception` can only wrap instances " +"of :exc:`Exception`." +msgstr "" +":exc:`ExceptionGroup` ਵਾਂਗ, :exc:`BaseExceptionGroup` ਦੀ ਕੋਈ ਵੀ subclass " +"ਜੋ :exc:`Exception` ਦੀ ਵੀ subclass ਹੋਵੇ, ਸਿਰਫ਼ :exc:`Exception` ਦੀਆਂ instances ਨੂੰ " +"ਹੀ wrap ਕਰ ਸਕਦੀ ਹੈ।" + +msgid "Exception hierarchy" +msgstr "Exception hierarchy" + +msgid "The class hierarchy for built-in exceptions is:" +msgstr "Built-in exceptions ਲਈ class hierarchy ਇਹ ਹੈ:" + +msgid "" +"BaseException\n" +" ├── BaseExceptionGroup\n" +" ├── GeneratorExit\n" +" ├── KeyboardInterrupt\n" +" ├── SystemExit\n" +" └── Exception\n" +" ├── ArithmeticError\n" +" │ ├── FloatingPointError\n" +" │ ├── OverflowError\n" +" │ └── ZeroDivisionError\n" +" ├── AssertionError\n" +" ├── AttributeError\n" +" ├── BufferError\n" +" ├── EOFError\n" +" ├── ExceptionGroup [BaseExceptionGroup]\n" +" ├── ImportError\n" +" │ ├── ImportCycleError\n" +" │ └── ModuleNotFoundError\n" +" ├── LookupError\n" +" │ ├── IndexError\n" +" │ └── KeyError\n" +" ├── MemoryError\n" +" ├── NameError\n" +" │ └── UnboundLocalError\n" +" ├── OSError\n" +" │ ├── BlockingIOError\n" +" │ ├── ChildProcessError\n" +" │ ├── ConnectionError\n" +" │ │ ├── BrokenPipeError\n" +" │ │ ├── ConnectionAbortedError\n" +" │ │ ├── ConnectionRefusedError\n" +" │ │ └── ConnectionResetError\n" +" │ ├── FileExistsError\n" +" │ ├── FileNotFoundError\n" +" │ ├── InterruptedError\n" +" │ ├── IsADirectoryError\n" +" │ ├── NotADirectoryError\n" +" │ ├── PermissionError\n" +" │ ├── ProcessLookupError\n" +" │ └── TimeoutError\n" +" ├── ReferenceError\n" +" ├── RuntimeError\n" +" │ ├── NotImplementedError\n" +" │ ├── PythonFinalizationError\n" +" │ └── RecursionError\n" +" ├── StopAsyncIteration\n" +" ├── StopIteration\n" +" ├── SyntaxError\n" +" │ └── IndentationError\n" +" │ └── TabError\n" +" ├── SystemError\n" +" ├── TypeError\n" +" ├── ValueError\n" +" │ └── UnicodeError\n" +" │ ├── UnicodeDecodeError\n" +" │ ├── UnicodeEncodeError\n" +" │ └── UnicodeTranslateError\n" +" └── Warning\n" +" ├── BytesWarning\n" +" ├── DeprecationWarning\n" +" ├── EncodingWarning\n" +" ├── FutureWarning\n" +" ├── ImportWarning\n" +" ├── PendingDeprecationWarning\n" +" ├── ResourceWarning\n" +" ├── RuntimeWarning\n" +" ├── SyntaxWarning\n" +" ├── UnicodeWarning\n" +" └── UserWarning\n" +msgstr "" + +msgid "statement" +msgstr "statement" + +msgid "try" +msgstr "try" + +msgid "except" +msgstr "except" + +msgid "raise" +msgstr "raise" + +msgid "exception" +msgstr "exception" + +msgid "chaining" +msgstr "chaining" + +msgid "__cause__ (exception attribute)" +msgstr "__cause__ (exception attribute)" + +msgid "__context__ (exception attribute)" +msgstr "__context__ (exception attribute)" + +msgid "__suppress_context__ (exception attribute)" +msgstr "__suppress_context__ (exception attribute)" + +msgid "assert" +msgstr "assert" + +msgid "module" +msgstr "module" + +msgid "errno" +msgstr "errno" diff --git a/builtins/functions.po b/builtins/functions.po new file mode 100644 index 0000000..c0dae30 --- /dev/null +++ b/builtins/functions.po @@ -0,0 +1,4044 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Bhuvansh Kataria, 2026 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" +"PO-Revision-Date: 2026-09-13 17:09+0000\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pa\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Built-in functions" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" + +msgid "" +"The Python interpreter has a number of functions and types built into it " +"that are always available. They are listed here in alphabetical order." +msgstr "" +"Python ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ ਕਈ ਫੰਕਸ਼ਨ ਅਤੇ ਟਾਈਪ ਪਹਿਲਾਂ ਤੋਂ ਹੀ ਸ਼ਾਮਲ ਹਨ ਜੋ ਹਮੇਸ਼ਾਂ ਉਪਲਬਧ ਰਹਿੰਦੇ ਹਨ। " +"ਇਨ੍ਹਾਂ ਨੂੰ ਇੱਥੇ ਵਰਣਮਾਲਾ ਅਨੁਸਾਰ ਸੂਚੀਬੱਧ ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "Built-in Functions" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" + +msgid "**A**" +msgstr "**A**" + +msgid ":func:`abs`" +msgstr ":func:`abs`" + +msgid ":func:`aiter`" +msgstr ":func:`aiter`" + +msgid ":func:`all`" +msgstr ":func:`all`" + +msgid ":func:`anext`" +msgstr ":func:`anext`" + +msgid ":func:`any`" +msgstr ":func:`any`" + +msgid ":func:`ascii`" +msgstr ":func:`ascii`" + +msgid "**B**" +msgstr "**B**" + +msgid ":func:`bin`" +msgstr ":func:`bin`" + +msgid ":func:`bool`" +msgstr ":func:`bool`" + +msgid ":func:`breakpoint`" +msgstr ":func:`breakpoint`" + +msgid "|func-bytearray|_" +msgstr "|func-bytearray|_" + +msgid "|func-bytes|_" +msgstr "|func-bytes|_" + +msgid "**C**" +msgstr "**C**" + +msgid ":func:`callable`" +msgstr ":func:`callable`" + +msgid ":func:`chr`" +msgstr ":func:`chr`" + +msgid ":func:`classmethod`" +msgstr ":func:`classmethod`" + +msgid ":func:`compile`" +msgstr ":func:`compile`" + +msgid ":func:`complex`" +msgstr ":func:`complex`" + +msgid "**D**" +msgstr "**D**" + +msgid ":func:`delattr`" +msgstr ":func:`delattr`" + +msgid "|func-dict|_" +msgstr "|func-dict|_" + +msgid ":func:`dir`" +msgstr ":func:`dir`" + +msgid ":func:`divmod`" +msgstr ":func:`divmod`" + +msgid "**E**" +msgstr "**E**" + +msgid ":func:`enumerate`" +msgstr ":func:`enumerate`" + +msgid ":func:`eval`" +msgstr ":func:`eval`" + +msgid ":func:`exec`" +msgstr ":func:`exec`" + +msgid "**F**" +msgstr "**F**" + +msgid ":func:`filter`" +msgstr ":func:`filter`" + +msgid ":func:`float`" +msgstr ":func:`float`" + +msgid ":func:`format`" +msgstr ":func:`format`" + +msgid "|func-frozendict|_" +msgstr "|func-frozendict|_" + +msgid "|func-frozenset|_" +msgstr "|func-frozenset|_" + +msgid "**G**" +msgstr "**G**" + +msgid ":func:`getattr`" +msgstr ":func:`getattr`" + +msgid ":func:`globals`" +msgstr ":func:`globals`" + +msgid "**H**" +msgstr "**H**" + +msgid ":func:`hasattr`" +msgstr ":func:`hasattr`" + +msgid ":func:`hash`" +msgstr ":func:`hash`" + +msgid ":func:`help`" +msgstr ":func:`help`" + +msgid ":func:`hex`" +msgstr ":func:`hex`" + +msgid "**I**" +msgstr "**I**" + +msgid ":func:`id`" +msgstr ":func:`id`" + +msgid ":func:`input`" +msgstr ":func:`input`" + +msgid ":func:`int`" +msgstr ":func:`int`" + +msgid ":func:`isinstance`" +msgstr ":func:`isinstance`" + +msgid ":func:`issubclass`" +msgstr ":func:`issubclass`" + +msgid ":func:`iter`" +msgstr ":func:`iter`" + +msgid "**L**" +msgstr "**L**" + +msgid ":func:`len`" +msgstr ":func:`len`" + +msgid "|func-list|_" +msgstr "|func-list|_" + +msgid ":func:`locals`" +msgstr ":func:`locals`" + +msgid "**M**" +msgstr "**M**" + +msgid ":func:`map`" +msgstr ":func:`map`" + +msgid ":func:`max`" +msgstr ":func:`max`" + +msgid "|func-memoryview|_" +msgstr "|func-memoryview|_" + +msgid ":func:`min`" +msgstr ":func:`min`" + +msgid "**N**" +msgstr "**N**" + +msgid ":func:`next`" +msgstr ":func:`next`" + +msgid "**O**" +msgstr "**O**" + +msgid ":func:`object`" +msgstr ":func:`object`" + +msgid ":func:`oct`" +msgstr ":func:`oct`" + +msgid ":func:`open`" +msgstr ":func:`open`" + +msgid ":func:`ord`" +msgstr ":func:`ord`" + +msgid "**P**" +msgstr "**P**" + +msgid ":func:`pow`" +msgstr ":func:`pow`" + +msgid ":func:`print`" +msgstr ":func:`print`" + +msgid ":func:`property`" +msgstr ":func:`property`" + +msgid "**R**" +msgstr "**R**" + +msgid "|func-range|_" +msgstr "|func-range|_" + +msgid ":func:`repr`" +msgstr ":func:`repr`" + +msgid ":func:`reversed`" +msgstr ":func:`reversed`" + +msgid ":func:`round`" +msgstr ":func:`round`" + +msgid "**S**" +msgstr "**S**" + +msgid "|func-set|_" +msgstr "|func-set|_" + +msgid ":func:`setattr`" +msgstr ":func:`setattr`" + +msgid ":func:`sentinel`" +msgstr ":func:`sentinel`" + +msgid ":func:`slice`" +msgstr ":func:`slice`" + +msgid ":func:`sorted`" +msgstr ":func:`sorted`" + +msgid ":func:`staticmethod`" +msgstr ":func:`staticmethod`" + +msgid "|func-str|_" +msgstr "|func-str|_" + +msgid ":func:`sum`" +msgstr ":func:`sum`" + +msgid ":func:`super`" +msgstr ":func:`super`" + +msgid "**T**" +msgstr "**T**" + +msgid "|func-tuple|_" +msgstr "|func-tuple|_" + +msgid ":func:`type`" +msgstr ":func:`type`" + +msgid "**V**" +msgstr "**V**" + +msgid ":func:`vars`" +msgstr ":func:`vars`" + +msgid "**Z**" +msgstr "**Z**" + +msgid ":func:`zip`" +msgstr ":func:`zip`" + +msgid "**_**" +msgstr "**_**" + +msgid ":func:`__import__`" +msgstr ":func:`__import__`" + +msgid "" +"Return the absolute value of a number. The argument may be an integer, a " +"floating-point number, or an object implementing :meth:`~object.__abs__`. If " +"the argument is a complex number, its magnitude is returned." +msgstr "" +"ਕਿਸੇ ਸੰਖਿਆ ਦਾ ਪਰਮ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਆਰਗੂਮੈਂਟ ਇੱਕ ਪੂਰਨ ਸੰਖਿਆ, ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਸੰਖਿਆ " +"ਜਾਂ :meth:`~object.__abs__` ਨੂੰ ਲਾਗੂ ਕਰਨ ਵਾਲੀ ਵਸਤੂ ਹੋ ਸਕਦੀ ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ ਇੱਕ complex " +"ਸੰਖਿਆ ਹੈ, ਤਾਂ ਇਸ ਦਾ ਪਰਿਮਾਣ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Return an :term:`asynchronous iterator` for an :term:`asynchronous " +"iterable`. Equivalent to calling ``x.__aiter__()``." +msgstr "" +"ਇੱਕ :term:`asynchronous iterable` ਲਈ :term:`asynchronous iterator` ਵਾਪਸ ਕਰਦਾ " +"ਹੈ। ਇਹ ``x.__aiter__()`` ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ।" + +msgid "Note: Unlike :func:`iter`, :func:`aiter` has no 2-argument variant." +msgstr "ਨੋਟ: :func:`iter` ਤੋਂ ਵੱਖਰਾ, :func:`aiter` ਦਾ 2-ਆਰਗੂਮੈਂਟ ਰੂਪ ਨਹੀਂ ਹੁੰਦਾ।" + +msgid "" +"Return ``True`` if all elements of the *iterable* are true (or if the " +"iterable is empty). Equivalent to::" +msgstr "" +"ਜੇ *iterable* ਦੇ ਸਾਰੇ ਤੱਤ true ਹਨ (ਜਾਂ *iterable* ਖਾਲੀ ਹੈ), ਤਾਂ ``True`` ਵਾਪਸ ਕਰਦਾ " +"ਹੈ। ਇਹ ਇਸ ਦੇ ਬਰਾਬਰ ਹੈ::" + +msgid "" +"def all(iterable):\n" +" for element in iterable:\n" +" if not element:\n" +" return False\n" +" return True" +msgstr "" +"def all(iterable):\n" +" for element in iterable:\n" +" if not element:\n" +" return False\n" +" return True" + +msgid "" +"When awaited, return the next item from the given :term:`asynchronous " +"iterator`, or *default* if given and the iterator is :term:`exhausted`." +msgstr "" +"ਉਡੀਕ ਕੀਤੇ ਜਾਣ 'ਤੇ, ਦਿੱਤੇ ਗਏ :term:`asynchronous iterator` ਵਿੱਚੋਂ ਅਗਲੀ ਆਈਟਮ ਵਾਪਸ " +"ਕਰਦਾ ਹੈ, ਜਾਂ ਜੇ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਤਾਂ *default* ਵਾਪਸ ਕਰਦਾ ਹੈ ਅਤੇ ਜੇ " +"ਇਟਰੇਟਰ :term:`exhausted` ਹੋ ਗਿਆ ਹੋਵੇ।" + +msgid "" +"This is the async variant of the :func:`next` builtin, and behaves similarly." +msgstr "ਇਹ :func:`next` ਬਿਲਟ-ਇਨ ਦਾ asynchronous ਰੂਪ ਹੈ ਅਤੇ ਇਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ।" + +msgid "" +"This calls the :meth:`~object.__anext__` method of *async_iterator*, " +"returning an :term:`awaitable`. Awaiting this returns the next value of the " +"iterator. If *default* is given, it is returned if the iterator is " +"exhausted, otherwise :exc:`StopAsyncIteration` is raised." +msgstr "" +"ਇਹ *async_iterator* ਦੀ :meth:`~object.__anext__` ਮੈਥਡ ਨੂੰ ਕਾਲ ਕਰਦਾ ਹੈ ਅਤੇ " +"ਇੱਕ :term:`awaitable` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਸਨੂੰ await ਕਰਨ 'ਤੇ iterator ਦਾ ਅਗਲਾ ਮੁੱਲ ਪ੍ਰਾਪਤ " +"ਹੁੰਦਾ ਹੈ। ਜੇ *default* ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਤਾਂ iterator ਦੇ ਸਮਾਪਤ ਹੋਣ ਤੇ ਉਹੀ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ, ਨਹੀਂ ਤਾਂ :exc:`StopAsyncIteration` exception ਉਠਾਈ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Return ``True`` if any element of the *iterable* is true. If the iterable " +"is empty, return ``False``. Equivalent to::" +msgstr "" +"ਜੇ *iterable* ਦਾ ਕੋਈ ਵੀ ਤੱਤ true ਹੋਵੇ ਤਾਂ ``True`` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ *iterable* ਖਾਲੀ " +"ਹੋਵੇ ਤਾਂ ``False`` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ਇਸ ਦੇ ਬਰਾਬਰ ਹੈ::" + +msgid "" +"def any(iterable):\n" +" for element in iterable:\n" +" if element:\n" +" return True\n" +" return False" +msgstr "" +"def any(iterable):\n" +" for element in iterable:\n" +" if element:\n" +" return True\n" +" return False" + +msgid "" +"As :func:`repr`, return a string containing a printable representation of an " +"object, but escape the non-ASCII characters in the string returned " +"by :func:`repr` using ``\\x``, ``\\u``, or ``\\U`` escapes. This generates " +"a string similar to that returned by :func:`repr` in Python 2." +msgstr "" +":func:`repr` ਦੀ ਤਰ੍ਹਾਂ, ਕਿਸੇ ਵਸਤੂ ਦੀ ਪ੍ਰਿੰਟ ਕੀਤੀ ਜਾ ਸਕਣ ਵਾਲੀ ਨੁਮਾਇੰਦਗੀ ਵਾਲੀ ਸਟ੍ਰਿੰਗ " +"ਵਾਪਸ ਕਰਦਾ ਹੈ, ਪਰ :func:`repr` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੀ ਗਈ ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਮੌਜੂਦ non-ASCII ਅੱਖਰਾਂ " +"ਨੂੰ ``\\x``, ``\\u`` ਜਾਂ ``\\U`` escape sequence ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦਰਸਾਉਂਦਾ ਹੈ। ਇਸ ਨਾਲ " +"Python 2 ਦੇ :func:`repr` ਵਰਗੀ ਸਟ੍ਰਿੰਗ ਬਣਦੀ ਹੈ।" + +msgid "" +"Convert an integer number to a binary string prefixed with \"0b\". The " +"result is a valid Python expression. If *integer* is not a " +"Python :class:`int` object, it has to define an :meth:`~object.__index__` " +"method that returns an integer. Some examples:" +msgstr "" +"ਇੱਕ ਪੂਰਨ ਸੰਖਿਆ ਨੂੰ \"0b\" ਪ੍ਰੀਫਿਕਸ ਵਾਲੀ binary ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਬਦਲਦਾ ਹੈ। ਨਤੀਜਾ ਇੱਕ ਵੈਧ " +"Python expression ਹੁੰਦਾ ਹੈ। ਜੇ *integer* Python :class:`int` ਵਸਤੂ ਨਹੀਂ ਹੈ, ਤਾਂ ਉਸ " +"ਵਿੱਚ :meth:`~object.__index__` ਮੈਥਡ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਇੱਕ ਪੂਰਨ ਸੰਖਿਆ ਵਾਪਸ ਕਰੇ। ਕੁਝ " +"ਉਦਾਹਰਨਾਂ:" + +msgid "" +"If the prefix \"0b\" is desired or not, you can use either of the following " +"ways." +msgstr "" +"ਜੇ \"0b\" ਪ੍ਰੀਫਿਕਸ ਚਾਹੀਦਾ ਹੋਵੇ ਜਾਂ ਨਾ ਚਾਹੀਦਾ ਹੋਵੇ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਕਿਸੇ ਵੀ ਤਰੀਕੇ ਦੀ " +"ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।" + +msgid "" +"See also :func:`enum.bin` to represent negative values as twos-complement." +msgstr "" +"ਨਕਾਰਾਤਮਕ ਮੁੱਲਾਂ ਨੂੰ two's complement ਰੂਪ ਵਿੱਚ ਦਰਸਾਉਣ ਲਈ :func:`enum.bin` ਵੀ ਦੇਖੋ।" + +msgid "See also :func:`format` for more information." +msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :func:`format` ਵੀ ਵੇਖੋ।" + +msgid "" +"Return a Boolean value, i.e. one of ``True`` or ``False``. The argument is " +"converted using the standard :ref:`truth testing procedure `. If the " +"argument is false or omitted, this returns ``False``; otherwise, it returns " +"``True``. The :class:`bool` class is a subclass of :class:`int` " +"(see :ref:`typesnumeric`). It cannot be subclassed further. Its only " +"instances are ``False`` and ``True`` (see :ref:`typebool`)." +msgstr "" +"ਇੱਕ Boolean ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਅਰਥਾਤ ``True`` ਜਾਂ ``False`` ਵਿੱਚੋਂ ਇੱਕ। ਆਰਗੂਮੈਂਟ ਨੂੰ " +"ਮਿਆਰੀ :ref:`truth testing procedure ` ਅਨੁਸਾਰ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ " +"false ਹੋਵੇ ਜਾਂ ਦਿੱਤਾ ਨਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ``False`` ਵਾਪਸ ਹੁੰਦਾ ਹੈ; ਨਹੀਂ ਤਾਂ ``True`` ਵਾਪਸ " +"ਹੁੰਦਾ ਹੈ। :class:`bool` ਕਲਾਸ :class:`int` ਦੀ ਉਪ-ਕਲਾਸ ਹੈ " +"(ਵੇਖੋ :ref:`typesnumeric`)। ਇਸ ਦੀ ਹੋਰ ਉਪ-ਕਲਾਸ ਨਹੀਂ ਬਣਾਈ ਜਾ ਸਕਦੀ। ਇਸ ਦੇ ਕੇਵਲ ਦੋ ਹੀ " +"ਇੰਸਟੈਂਸ ਹਨ: ``False`` ਅਤੇ ``True`` (ਵੇਖੋ :ref:`typebool`)।" + +msgid "The parameter is now positional-only." +msgstr "ਹੁਣ ਇਹ ਪੈਰਾਮੀਟਰ ਕੇਵਲ positional ਰੂਪ ਵਿੱਚ ਹੀ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"This function drops you into the debugger at the call site. Specifically, " +"it calls :func:`sys.breakpointhook`, passing ``args`` and ``kws`` straight " +"through. By default, ``sys.breakpointhook()`` calls :func:`pdb.set_trace` " +"expecting no arguments. In this case, it is purely a convenience function " +"so you don't have to explicitly import :mod:`pdb` or type as much code to " +"enter the debugger. However, :func:`sys.breakpointhook` can be set to some " +"other function and :func:`breakpoint` will automatically call that, allowing " +"you to drop into the debugger of choice. If :func:`sys.breakpointhook` is " +"not accessible, this function will raise :exc:`RuntimeError`." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਤੁਹਾਨੂੰ ਉਸ ਥਾਂ debugger ਵਿੱਚ ਲੈ ਜਾਂਦਾ ਹੈ ਜਿੱਥੇ ਇਸਨੂੰ ਕਾਲ ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਖਾਸ ਤੌਰ 'ਤੇ, " +"ਇਹ ``args`` ਅਤੇ ``kws`` ਨੂੰ ਸਿੱਧਾ :func:`sys.breakpointhook` ਨੂੰ ਭੇਜਦਾ ਹੈ। ਮੂਲ ਰੂਪ ਵਿੱਚ " +"``sys.breakpointhook()`` ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ :func:`pdb.set_trace` ਨੂੰ ਕਾਲ ਕਰਦਾ " +"ਹੈ। ਇਸ ਕਰਕੇ ਤੁਹਾਨੂੰ :mod:`pdb` ਨੂੰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ import ਕਰਨ ਜਾਂ debugger ਵਿੱਚ ਜਾਣ ਲਈ ਵਾਧੂ " +"ਕੋਡ ਲਿਖਣ ਦੀ ਲੋੜ ਨਹੀਂ ਪੈਂਦੀ। ਹਾਲਾਂਕਿ, :func:`sys.breakpointhook` ਨੂੰ ਕਿਸੇ ਹੋਰ ਫੰਕਸ਼ਨ ਨਾਲ " +"ਵੀ ਸੈੱਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ :func:`breakpoint` ਆਪਣੇ ਆਪ ਉਸਨੂੰ ਕਾਲ ਕਰੇਗਾ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ " +"ਆਪਣੀ ਪਸੰਦ ਦੇ debugger ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਜੇ :func:`sys.breakpointhook` ਉਪਲਬਧ ਨਾ " +"ਹੋਵੇ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ :exc:`RuntimeError` ਉਠਾਏਗਾ।" + +msgid "" +"By default, the behavior of :func:`breakpoint` can be changed with " +"the :envvar:`PYTHONBREAKPOINT` environment variable. " +"See :func:`sys.breakpointhook` for usage details." +msgstr "" +"ਮੂਲ ਰੂਪ ਵਿੱਚ :func:`breakpoint` ਦਾ ਵਿਹਾਰ :envvar:`PYTHONBREAKPOINT` environment " +"variable ਰਾਹੀਂ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਵਰਤੋਂ ਸੰਬੰਧੀ ਵੇਰਵਿਆਂ ਲਈ :func:`sys.breakpointhook` " +"ਵੇਖੋ।" + +msgid "" +"Note that this is not guaranteed if :func:`sys.breakpointhook` has been " +"replaced." +msgstr "" +"ਧਿਆਨ ਰਹੇ ਕਿ ਜੇ :func:`sys.breakpointhook` ਨੂੰ ਬਦਲ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਤਾਂ ਇਸ ਦੀ ਗਾਰੰਟੀ ਨਹੀਂ " +"ਹੈ।" + +msgid "" +"Raises an :ref:`auditing event ` ``builtins.breakpoint`` with " +"argument ``breakpointhook``." +msgstr "" +"``breakpointhook`` ਆਰਗੂਮੈਂਟ ਨਾਲ ਇੱਕ :ref:`auditing event ` " +"``builtins.breakpoint`` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Return a new array of bytes. The :class:`bytearray` class is a mutable " +"sequence of integers in the range 0 <= x < 256. It has most of the usual " +"methods of mutable sequences, described in :ref:`typesseq-mutable`, as well " +"as most methods that the :class:`bytes` type has, see :ref:`bytes-methods`." +msgstr "" +"ਬਾਈਟਾਂ ਦਾ ਇੱਕ ਨਵਾਂ array ਵਾਪਸ ਕਰਦਾ ਹੈ। :class:`bytearray` class 0 <= x < 256 ਦੀ " +"ਸੀਮਾ ਵਿੱਚ integers ਦੀ ਇੱਕ mutable sequence ਹੈ। ਇਸ ਵਿੱਚ mutable sequences ਦੇ " +"ਜ਼ਿਆਦਾਤਰ ਆਮ methods ਹਨ, ਜਿਨ੍ਹਾਂ ਦਾ ਵੇਰਵਾ :ref:`typesseq-mutable` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ, " +"ਅਤੇ ਨਾਲ ਹੀ :class:`bytes` type ਦੇ ਬਹੁਤ ਸਾਰੇ methods ਵੀ ਹਨ, ਵੇਖੇ :ref:`bytes-" +"methods`।" + +msgid "" +"The optional *source* parameter can be used to initialize the array in a few " +"different ways:" +msgstr "" +"ਵਿਕਲਪਿਕ *source* ਪੈਰਾਮੀਟਰ ਦੀ ਵਰਤੋਂ ਐਰੇ ਨੂੰ ਕਈ ਵੱਖ-ਵੱਖ ਤਰੀਕਿਆਂ ਨਾਲ ਸ਼ੁਰੂਆਤੀ ਮੁੱਲ ਦੇਣ ਲਈ ਕੀਤੀ " +"ਜਾ ਸਕਦੀ ਹੈ:" + +msgid "" +"If it is a *string*, you must also give the *encoding* (and optionally, " +"*errors*) parameters; :func:`bytearray` then converts the string to bytes " +"using :meth:`str.encode`." +msgstr "" +"ਜੇ ਇਹ ਇੱਕ *string* ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ *encoding* (ਅਤੇ ਵਿਕਲਪਿਕ ਤੌਰ 'ਤੇ *errors*) ਪੈਰਾਮੀਟਰ " +"ਵੀ ਦੇਣੇ ਪੈਣਗੇ; ਫਿਰ :func:`bytearray` :meth:`str.encode` ਦੀ ਵਰਤੋਂ ਕਰਕੇ string ਨੂੰ " +"bytes ਵਿੱਚ ਬਦਲਦਾ ਹੈ।" + +msgid "" +"If it is an *integer*, the array will have that size and will be initialized " +"with null bytes." +msgstr "" +"ਜੇ ਇਹ ਇੱਕ *integer* ਹੈ, ਤਾਂ ਐਰੇ ਦਾ ਆਕਾਰ ਉਸਦੇ ਬਰਾਬਰ ਹੋਵੇਗਾ ਅਤੇ ਇਸ ਨੂੰ null bytes ਨਾਲ ਸ਼ੁਰੂ " +"ਕੀਤਾ ਜਾਵੇਗਾ।" + +msgid "" +"If it is an object conforming to the :ref:`buffer interface " +"`, a read-only buffer of the object will be used to " +"initialize the bytes array." +msgstr "" +"ਜੇ ਇਹ :ref:`buffer interface ` ਦੇ ਅਨੁਕੂਲ ਕੋਈ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਉਸ ਆਬਜੈਕਟ " +"ਦਾ read-only buffer bytes ਐਰੇ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ।" + +msgid "" +"If it is an *iterable*, it must be an iterable of integers in the range ``0 " +"<= x < 256``, which are used as the initial contents of the array." +msgstr "" +"ਜੇ ਇਹ ਇੱਕ *iterable* ਹੈ, ਤਾਂ ਇਹ ``0 <= x < 256`` ਦੀ ਸੀਮਾ ਵਾਲੇ ਪੂਰਨ ਅੰਕਾਂ ਦੀ iterable " +"ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ, ਜੋ ਐਰੇ ਦੀ ਸ਼ੁਰੂਆਤੀ ਸਮੱਗਰੀ ਵਜੋਂ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।" + +msgid "Without an argument, an array of size 0 is created." +msgstr "ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ, ਆਕਾਰ 0 ਵਾਲਾ ਐਰੇ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "See also :ref:`binaryseq` and :ref:`typebytearray`." +msgstr "ਇਹ ਵੀ ਵੇਖੋ :ref:`binaryseq` ਅਤੇ :ref:`typebytearray`।" + +msgid "" +"Return a new \"bytes\" object which is an immutable sequence of integers in " +"the range ``0 <= x < 256``. :class:`bytes` is an immutable version " +"of :class:`bytearray` -- it has the same non-mutating methods and the same " +"indexing and slicing behavior." +msgstr "" +"ਇੱਕ ਨਵਾਂ \"bytes\" ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੋ ``0 <= x < 256`` ਸੀਮਾ ਦੇ ਪੂਰਨ ਅੰਕਾਂ ਦੀ ਇੱਕ " +"ਅਪਰਿਵਰਤਨਸ਼ੀਲ ਲੜੀ ਹੈ। :class:`bytes`, :class:`bytearray` ਦਾ ਅਪਰਿਵਰਤਨਸ਼ੀਲ ਰੂਪ ਹੈ — " +"ਇਸ ਵਿੱਚ ਉਹੀ non-mutating ਮੈਥਡ ਅਤੇ ਉਹੀ indexing ਅਤੇ slicing ਵਿਹਾਰ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Accordingly, constructor arguments are interpreted as for :func:`bytearray`." +msgstr "ਇਸ ਲਈ constructor arguments ਨੂੰ :func:`bytearray` ਵਾਂਗ ਹੀ ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ।" + +msgid "Bytes objects can also be created with literals, see :ref:`strings`." +msgstr "Bytes ਆਬਜੈਕਟ literals ਦੀ ਵਰਤੋਂ ਨਾਲ ਵੀ ਬਣਾਏ ਜਾ ਸਕਦੇ ਹਨ, ਵੇਖੋ :ref:`strings`।" + +msgid "See also :ref:`binaryseq`, :ref:`typebytes`, and :ref:`bytes-methods`." +msgstr "" +"ਇਸ ਨਾਲ ਸੰਬੰਧਿਤ :ref:`binaryseq`, :ref:`typebytes` ਅਤੇ :ref:`bytes-methods` ਵੀ " +"ਵੇਖੋ।" + +msgid "" +"Return :const:`True` if the *object* argument appears " +"callable, :const:`False` if not. If this returns ``True``, it is still " +"possible that a call fails, but if it is ``False``, calling *object* will " +"never succeed. Note that classes are callable (calling a class returns a new " +"instance); instances are callable if their class has " +"a :meth:`~object.__call__` method." +msgstr "" +"ਜੇ *object* argument callable ਲੱਗਦਾ ਹੋਵੇ ਤਾਂ :const:`True` ਵਾਪਸ ਕਰਦਾ ਹੈ, ਨਹੀਂ " +"ਤਾਂ :const:`False`। ਜੇ ਇਹ ``True`` ਵਾਪਸ ਕਰੇ, ਤਾਂ ਵੀ ਸੰਭਵ ਹੈ ਕਿ ਕਾਲ ਅਸਫਲ ਹੋ ਜਾਵੇ, ਪਰ " +"ਜੇ ``False`` ਹੋਵੇ ਤਾਂ *object* ਨੂੰ ਕਾਲ ਕਰਨਾ ਕਦੇ ਵੀ ਸਫਲ ਨਹੀਂ ਹੋਵੇਗਾ। ਧਿਆਨ ਰਹੇ ਕਿ classes " +"callable ਹੁੰਦੀਆਂ ਹਨ (class ਨੂੰ ਕਾਲ ਕਰਨ ਨਾਲ ਨਵਾਂ instance ਬਣਦਾ ਹੈ); instances " +"callable ਤਦ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਉਨ੍ਹਾਂ ਦੀ class ਵਿੱਚ :meth:`~object.__call__` ਮੈਥਡ ਹੋਵੇ।" + +msgid "" +"This function was first removed in Python 3.0 and then brought back in " +"Python 3.2." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਪਹਿਲਾਂ Python 3.0 ਵਿੱਚ ਹਟਾਇਆ ਗਿਆ ਸੀ ਅਤੇ ਬਾਅਦ ਵਿੱਚ Python 3.2 ਵਿੱਚ ਮੁੜ ਸ਼ਾਮਲ " +"ਕੀਤਾ ਗਿਆ।" + +msgid "" +"Return the string representing a character with the specified Unicode code " +"point. For example, ``chr(97)`` returns the string ``'a'``, while " +"``chr(8364)`` returns the string ``'€'``. This is the inverse of :func:`ord`." +msgstr "" +"ਨਿਰਧਾਰਤ Unicode code point ਵਾਲੇ ਅੱਖਰ ਨੂੰ ਦਰਸਾਉਂਦੀ string ਵਾਪਸ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``chr(97)`` string ``'a'`` ਵਾਪਸ ਕਰਦਾ ਹੈ, ਜਦਕਿ ``chr(8364)`` string ``'€'`` " +"ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ :func:`ord` ਦਾ ਉਲਟ ਹੈ।" + +msgid "" +"The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in " +"base 16). :exc:`ValueError` will be raised if it is outside that range." +msgstr "" +"ਅਰਗੂਮੈਂਟ ਲਈ ਵੈਧ ਸੀਮਾ 0 ਤੋਂ 1,114,111 (ਹੈਕਸਾਡੇਸਿਮਲ-16 ਵਿੱਚ 0x10FFFF) ਤੱਕ ਹੈ। ਜੇ ਇਹ ਸੀਮਾ ਤੋਂ " +"ਬਾਹਰ ਹੋਵੇ ਤਾਂ :exc:`ValueError` ਉਠਾਇਆ ਜਾਵੇਗਾ।" + +msgid "Transform a method into a class method." +msgstr "ਇੱਕ ਮੈਥਡ ਨੂੰ class method ਵਿੱਚ ਬਦਲੋ।" + +msgid "" +"A class method receives the class as an implicit first argument, just like " +"an instance method receives the instance. To declare a class method, use " +"this idiom::" +msgstr "" +"ਇੱਕ class method ਨੂੰ class ਪਹਿਲੇ ਅਪਰੋਕਸ਼ argument ਵਜੋਂ ਮਿਲਦੀ ਹੈ, ਬਿਲਕੁਲ ਉਸੇ ਤਰ੍ਹਾਂ ਜਿਵੇਂ " +"instance method ਨੂੰ instance ਮਿਲਦਾ ਹੈ। class method ਘੋਸ਼ਿਤ ਕਰਨ ਲਈ ਇਹ ਤਰੀਕਾ ਵਰਤੋ::" + +msgid "" +"class C:\n" +" @classmethod\n" +" def f(cls, arg1, arg2): ..." +msgstr "" +"class C:\n" +" @classmethod\n" +" def f(cls, arg1, arg2): ..." + +msgid "" +"The ``@classmethod`` form is a function :term:`decorator` -- " +"see :ref:`function` for details." +msgstr "" +"``@classmethod`` ਰੂਪ ਇੱਕ :term:`decorator` ਫੰਕਸ਼ਨ ਹੈ — ਵੇਰਵਿਆਂ ਲਈ :ref:`function` " +"ਵੇਖੋ।" + +msgid "" +"A class method can be called either on the class (such as ``C.f()``) or on " +"an instance (such as ``C().f()``). The instance is ignored except for its " +"class. If a class method is called for a derived class, the derived class " +"object is passed as the implied first argument." +msgstr "" +"Class method ਨੂੰ class (ਜਿਵੇਂ ``C.f()``) ਜਾਂ instance (ਜਿਵੇਂ ``C().f()``) ਦੋਹਾਂ ਉੱਤੇ " +"ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। instance ਨੂੰ ਉਸਦੀ class ਤੋਂ ਇਲਾਵਾ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜੇ " +"derived class ਲਈ class method ਕਾਲ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ derived class ਆਬਜੈਕਟ ਪਹਿਲੇ " +"ਅਪਰੋਕਸ਼ argument ਵਜੋਂ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Class methods are different than C++ or Java static methods. If you want " +"those, see :func:`staticmethod` in this section. For more information on " +"class methods, see :ref:`types`." +msgstr "" +"Class methods, C++ ਜਾਂ Java ਦੇ static methods ਤੋਂ ਵੱਖ ਹਨ। ਜੇ ਤੁਹਾਨੂੰ ਉਹ ਚਾਹੀਦੇ ਹਨ ਤਾਂ " +"ਇਸ ਭਾਗ ਵਿੱਚ :func:`staticmethod` ਵੇਖੋ। Class methods ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`types` ਵੇਖੋ।" + +msgid "" +"Class methods can now wrap other :term:`descriptors ` such " +"as :func:`property`." +msgstr "" +"ਹੁਣ class methods ਹੋਰ :term:`descriptors ` ਜਿਵੇਂ :func:`property` ਨੂੰ " +"wrap ਕਰ ਸਕਦੇ ਹਨ।" + +msgid "" +"Class methods now inherit the method attributes " +"(:attr:`~function.__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__doc__` " +"and :attr:`~function.__annotations__`) and have a new ``__wrapped__`` " +"attribute." +msgstr "" +"ਹੁਣ class methods ਮੈਥਡ attributes " +"(:attr:`~function.__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__doc__` " +"ਅਤੇ :attr:`~function.__annotations__`) ਨੂੰ inherit ਕਰਦੇ ਹਨ ਅਤੇ ਇੱਕ ਨਵਾਂ " +"``__wrapped__`` attribute ਵੀ ਰੱਖਦੇ ਹਨ।" + +msgid "" +"Class methods can no longer wrap other :term:`descriptors ` such " +"as :func:`property`." +msgstr "" +"ਹੁਣ class methods ਹੋਰ :term:`descriptors ` ਜਿਵੇਂ :func:`property` ਨੂੰ " +"wrap ਨਹੀਂ ਕਰ ਸਕਦੇ।" + +msgid "" +"Compile the *source* into a code or AST object. Code objects can be " +"executed by :func:`exec` or :func:`eval`. *source* can either be a normal " +"string, a byte string, or an AST object. Refer to the :mod:`ast` module " +"documentation for information on how to work with AST objects." +msgstr "" +"*source* ਨੂੰ ਕੋਡ ਜਾਂ AST ਆਬਜੈਕਟ ਵਿੱਚ ਕੰਪਾਇਲ ਕਰੋ। ਕੋਡ ਆਬਜੈਕਟਾਂ ਨੂੰ :func:`exec` " +"ਜਾਂ :func:`eval` ਰਾਹੀਂ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। *source* ਇੱਕ ਸਧਾਰਣ ਸਟਰਿੰਗ, ਬਾਈਟ ਸਟ੍ਰਿੰਗ ਜਾਂ " +"AST ਆਬਜੈਕਟ ਹੋ ਸਕਦਾ ਹੈ। AST ਆਬਜੈਕਟਾਂ ਨਾਲ ਕੰਮ ਕਰਨ ਬਾਰੇ ਜਾਣਕਾਰੀ ਲਈ :mod:`ast` ਮੋਡੀਊਲ ਦਾ " +"ਦਸਤਾਵੇਜ਼ ਵੇਖੋ।" + +msgid "" +"The *filename* argument should give the file from which the code was read; " +"pass some recognizable value if it wasn't read from a file (``''`` " +"is commonly used)." +msgstr "" +"*filename* ਆਰਗੂਮੈਂਟ ਉਸ ਫਾਈਲ ਦਾ ਨਾਮ ਦਿੰਦਾ ਹੈ ਜਿਸ ਤੋਂ ਕੋਡ ਪੜ੍ਹਿਆ ਗਿਆ ਸੀ; ਜੇ ਕੋਡ ਫਾਈਲ ਤੋਂ " +"ਨਹੀਂ ਪੜ੍ਹਿਆ ਗਿਆ ਤਾਂ ਕੋਈ ਪਛਾਣਯੋਗ ਮੁੱਲ ਦਿਓ (ਆਮ ਤੌਰ 'ਤੇ ``''`` ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ)।" + +msgid "" +"The *mode* argument specifies what kind of code must be compiled; it can be " +"``'exec'`` if *source* consists of a sequence of statements, ``'eval'`` if " +"it consists of a single expression, or ``'single'`` if it consists of a " +"single interactive statement (in the latter case, expression statements that " +"evaluate to something other than ``None`` will be printed). It can also be " +"``'func_type'`` if *source* consists of a function type signature, for " +"example ``(int) -> str``; see :func:`ast.parse` for more information. This " +"mode requires passing :data:`ast.PyCF_ONLY_AST` in *flags*." +msgstr "" + +msgid "" +"The optional arguments *flags* and *dont_inherit* control " +"which :ref:`compiler options ` should be activated and " +"which :ref:`future features ` should be allowed. If neither is " +"present (or both are zero) the code is compiled with the same flags that " +"affect the code that is calling :func:`compile`. If the *flags* argument is " +"given and *dont_inherit* is not (or is zero) then the compiler options and " +"the future statements specified by the *flags* argument are used in addition " +"to those that would be used anyway. If *dont_inherit* is a non-zero integer " +"then the *flags* argument is it -- the flags (future features and compiler " +"options) in the surrounding code are ignored." +msgstr "" +"ਵਿਕਲਪਿਕ arguments *flags* ਅਤੇ *dont_inherit* ਇਹ ਨਿਯੰਤਰਿਤ ਕਰਦੇ ਹਨ ਕਿ " +"ਕਿਹੜੇ :ref:`compiler options ` ਚਾਲੂ ਕੀਤੇ ਜਾਣ ਅਤੇ " +"ਕਿਹੜੀਆਂ :ref:`future features ` ਦੀ ਆਗਿਆ ਦਿੱਤੀ ਜਾਵੇ। ਜੇ ਦੋਵੇਂ ਮੌਜੂਦ ਨਾ ਹੋਣ (ਜਾਂ " +"ਦੋਵੇਂ ਸਿਫ਼ਰ ਹੋਣ), ਤਾਂ ਕੋਡ ਉਹਨਾਂ ਹੀ flags ਨਾਲ compile ਹੁੰਦਾ ਹੈ ਜੋ :func:`compile` ਨੂੰ ਕਾਲ " +"ਕਰਨ ਵਾਲੇ ਕੋਡ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੇ ਹਨ। ਜੇ *flags* argument ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਅਤੇ " +"*dont_inherit* ਨਾ ਹੋਵੇ (ਜਾਂ ਸਿਫ਼ਰ ਹੋਵੇ), ਤਾਂ *flags* argument ਦੁਆਰਾ ਨਿਰਧਾਰਤ compiler " +"options ਅਤੇ future statements ਉਹਨਾਂ ਦੇ ਨਾਲ-ਨਾਲ ਵਰਤੇ ਜਾਂਦੇ ਹਨ ਜੋ ਕਿਸੇ ਵੀ ਹਾਲਤ ਵਿੱਚ ਵਰਤੇ " +"ਜਾਣਗੇ। ਜੇ *dont_inherit* ਇੱਕ ਗੈਰ-ਸਿਫ਼ਰ integer ਹੋਵੇ, ਤਾਂ *flags* argument ਹੀ ਸਭ ਕੁਝ ਹੈ " +"— ਆਲੇ-ਦੁਆਲੇ ਦੇ ਕੋਡ ਵਿੱਚਲੇ flags (future features ਅਤੇ compiler options) ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Compiler options and future statements are specified by bits which can be " +"bitwise ORed together to specify multiple options. The bitfield required to " +"specify a given future feature can be found as " +"the :attr:`~__future__._Feature.compiler_flag` attribute on " +"the :class:`~__future__._Feature` instance in the :mod:`__future__` " +"module. :ref:`Compiler flags ` can be found " +"in :mod:`ast` module, with ``PyCF_`` prefix." +msgstr "" +"ਕੰਪਾਈਲਰ ਵਿਕਲਪ ਅਤੇ future ਸਟੇਟਮੈਂਟ ਬਿੱਟਾਂ ਰਾਹੀਂ ਦਰਸਾਏ ਜਾਂਦੇ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ bitwise OR ਨਾਲ " +"ਜੋੜ ਕੇ ਕਈ ਵਿਕਲਪ ਚੁਣੇ ਜਾ ਸਕਦੇ ਹਨ। ਕਿਸੇ future feature ਲਈ ਲੋੜੀਂਦਾ " +"bitfield :mod:`__future__` ਮੋਡੀਊਲ ਵਿੱਚ ਮੌਜੂਦ :class:`~__future__._Feature` " +"ਦੇ :attr:`~__future__._Feature.compiler_flag` ਐਟ੍ਰਿਬਿਊਟ ਵਿੱਚ ਮਿਲਦਾ " +"ਹੈ। :ref:`Compiler flags ` :mod:`ast` ਮੋਡੀਊਲ ਵਿੱਚ ``PyCF_`` " +"ਪ੍ਰੀਫਿਕਸ ਨਾਲ ਉਪਲਬਧ ਹਨ।" + +msgid "" +"The argument *optimize* specifies the optimization level of the compiler; " +"the default value of ``-1`` selects the optimization level of the " +"interpreter as given by :option:`-O` options. Explicit levels are ``0`` (no " +"optimization; ``__debug__`` is true), ``1`` (asserts are removed, " +"``__debug__`` is false) or ``2`` (docstrings are removed too)." +msgstr "" +"*optimize* ਆਰਗੂਮੈਂਟ ਕੰਪਾਈਲਰ ਦਾ optimization ਪੱਧਰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ; ਡਿਫਾਲਟ ਮੁੱਲ ``-1`` " +"ਇੰਟਰਪ੍ਰੀਟਰ ਦੇ :option:`-O` ਵਿਕਲਪ ਅਨੁਸਾਰ ਪੱਧਰ ਚੁਣਦਾ ਹੈ। ਸਪਸ਼ਟ ਪੱਧਰ ਹਨ: ``0`` (ਕੋਈ " +"optimization ਨਹੀਂ; ``__debug__`` ਸਹੀ ਹੈ), ``1`` (assert ਹਟਾਏ ਜਾਂਦੇ ਹਨ; " +"``__debug__`` ਗਲਤ ਹੈ), ਜਾਂ ``2`` (docstring ਵੀ ਹਟਾਏ ਜਾਂਦੇ ਹਨ)।" + +msgid "" +"The optional argument *module* specifies the module name. It is needed to " +"unambiguous :ref:`filter ` syntax warnings by module name." +msgstr "" +"ਵਿਕਲਪਿਕ ਆਰਗੂਮੈਂਟ *module* ਮੋਡੀਊਲ ਦਾ ਨਾਮ ਦਰਸਾਉਂਦਾ ਹੈ। ਇਹ ਮੋਡੀਊਲ ਨਾਮ ਦੇ ਆਧਾਰ " +"'ਤੇ :ref:`filter ` syntax warnings ਨੂੰ ਸਪਸ਼ਟ ਕਰਨ ਲਈ ਲੋੜੀਂਦਾ ਹੈ।" + +msgid "" +"This function raises :exc:`SyntaxError` if the compiled source is invalid, " +"including a *source* containing a null character or that cannot be " +"decoded; :exc:`ValueError` if *mode* or *flags* is invalid, or if a string " +"*source* contains surrogate characters; :exc:`MemoryError` " +"or :exc:`RecursionError` if *source* is too complex to parse or compile, for " +"example an expression with many thousands of nested operators; " +"and :exc:`OverflowError` if *source* is too large." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ :exc:`SyntaxError` ਉਠਾਉਂਦਾ ਹੈ ਜੇ compile ਕੀਤਾ ਜਾ ਰਿਹਾ source ਵੈਧ ਨਾ ਹੋਵੇ, " +"ਜਿਸ ਵਿੱਚ ਉਹ *source* ਵੀ ਸ਼ਾਮਲ ਹੈ ਜਿਸ ਵਿੱਚ null character ਹੋਵੇ ਜਾਂ ਜਿਸਨੂੰ decode ਨਾ " +"ਕੀਤਾ ਜਾ ਸਕੇ; :exc:`ValueError` ਜੇ *mode* ਜਾਂ *flags* ਵੈਧ ਨਾ ਹੋਣ, ਜਾਂ ਜੇ string " +"*source* ਵਿੱਚ surrogate characters ਹੋਣ; :exc:`MemoryError` " +"ਜਾਂ :exc:`RecursionError` ਜੇ *source* parse ਜਾਂ compile ਕਰਨ ਲਈ ਬਹੁਤ ਗੁੰਝਲਦਾਰ ਹੋਵੇ, " +"ਉਦਾਹਰਨ ਲਈ ਕਈ ਹਜ਼ਾਰ nested operators ਵਾਲਾ expression; ਅਤੇ :exc:`OverflowError` " +"ਜੇ *source* ਬਹੁਤ ਵੱਡਾ ਹੋਵੇ।" + +msgid "" +"If you want to parse Python code into its AST representation, " +"see :func:`ast.parse`." +msgstr "" +"ਜੇ ਤੁਸੀਂ Python ਕੋਡ ਨੂੰ AST ਰੂਪ ਵਿੱਚ ਪਾਰਸ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ :func:`ast.parse` ਵੇਖੋ।" + +msgid "" +"Raises an :ref:`auditing event ` ``compile`` with arguments " +"``source`` and ``filename``. This event may also be raised by implicit " +"compilation." +msgstr "" +"``source`` ਅਤੇ ``filename`` ਆਰਗੂਮੈਂਟਾਂ ਨਾਲ ਇੱਕ :ref:`auditing event ` " +"``compile`` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਇਵੈਂਟ ਅਪਰੋਖ ਕੰਪਾਇਲੇਸ਼ਨ ਦੌਰਾਨ ਵੀ ਉਠ ਸਕਦਾ ਹੈ।" + +msgid "" +"When compiling a string with multi-line code in ``'single'`` or ``'eval'`` " +"mode, input must be terminated by at least one newline character. This is " +"to facilitate detection of incomplete and complete statements in " +"the :mod:`code` module." +msgstr "" +"ਜਦੋਂ ``'single'`` ਜਾਂ ``'eval'`` ਮੋਡ ਵਿੱਚ ਬਹੁ-ਲਾਈਨ ਕੋਡ ਵਾਲੀ ਸਟਰਿੰਗ ਕੰਪਾਇਲ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ, ਤਾਂ ਇਨਪੁੱਟ ਦਾ ਅੰਤ ਘੱਟੋ-ਘੱਟ ਇੱਕ newline ਅੱਖਰ ਨਾਲ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਹ :mod:`code` ਮੋਡੀਊਲ " +"ਵਿੱਚ ਅਧੂਰੇ ਅਤੇ ਪੂਰੇ ਸਟੇਟਮੈਂਟਾਂ ਦੀ ਪਛਾਣ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ।" + +msgid "" +"It is possible to crash the Python interpreter with a sufficiently large/" +"complex string when compiling to an AST object due to stack depth " +"limitations in Python's AST compiler." +msgstr "" +"Python ਦੇ AST ਕੰਪਾਈਲਰ ਦੀ stack depth ਸੀਮਾ ਕਾਰਨ, ਬਹੁਤ ਵੱਡੀ ਜਾਂ ਜਟਿਲ ਸਟਰਿੰਗ ਨੂੰ AST " +"ਆਬਜੈਕਟ ਵਿੱਚ ਕੰਪਾਇਲ ਕਰਦੇ ਸਮੇਂ Python interpreter ਕਰੈਸ਼ ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"Allowed use of Windows and Mac newlines. Also, input in ``'exec'`` mode " +"does not have to end in a newline anymore. Added the *optimize* parameter." +msgstr "" +"Windows ਅਤੇ Mac newline ਦੀ ਵਰਤੋਂ ਦੀ ਆਗਿਆ ਦਿੱਤੀ ਗਈ। ਨਾਲ ਹੀ, ``'exec'`` ਮੋਡ ਵਿੱਚ " +"ਇਨਪੁੱਟ ਦਾ newline ਨਾਲ ਖਤਮ ਹੋਣਾ ਹੁਣ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ। *optimize* ਪੈਰਾਮੀਟਰ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।" + +msgid "" +"Previously, :exc:`TypeError` was raised when null bytes were encountered in " +"*source*." +msgstr "" +"ਪਹਿਲਾਂ, ਜਦੋਂ *source* ਵਿੱਚ null bytes ਮਿਲਦੇ ਸਨ ਤਾਂ :exc:`TypeError` ਉਠਾਇਆ ਜਾਂਦਾ ਸੀ।" + +msgid "" +"``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable " +"support for top-level ``await``, ``async for``, and ``async with``." +msgstr "" +"ਹੁਣ flags ਵਿੱਚ ``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` ਦੇ ਕੇ top-level ``await``, " +"``async for`` ਅਤੇ ``async with`` ਲਈ ਸਮਰਥਨ ਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "Added support for ``mode='func_type'``." +msgstr "" + +msgid "" +":exc:`SyntaxError` is raised instead of :exc:`ValueError` when null bytes " +"are encountered in *source*." +msgstr "" +"ਜਦੋਂ *source* ਵਿੱਚ null bytes ਮਿਲਦੇ ਹਨ, ਤਾਂ :exc:`ValueError` ਦੀ " +"ਬਜਾਏ :exc:`SyntaxError` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "Added the *module* parameter." +msgstr "*module* ਪੈਰਾਮੀਟਰ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।" + +msgid "" +"Convert a single string or number to a complex number, or create a complex " +"number from real and imaginary parts." +msgstr "" +"ਇੱਕ ਸਟਰਿੰਗ ਜਾਂ ਸੰਖਿਆ ਨੂੰ complex ਸੰਖਿਆ ਵਿੱਚ ਬਦਲੋ, ਜਾਂ real ਅਤੇ imaginary ਭਾਗਾਂ ਤੋਂ complex " +"ਸੰਖਿਆ ਬਣਾਓ।" + +msgid "Examples:" +msgstr "ਉਦਾਹਰਨਾਂ:" + +msgid "" +">>> complex('+1.23')\n" +"(1.23+0j)\n" +">>> complex('-4.5j')\n" +"-4.5j\n" +">>> complex('-1.23+4.5j')\n" +"(-1.23+4.5j)\n" +">>> complex('\\t( -1.23+4.5J )\\n')\n" +"(-1.23+4.5j)\n" +">>> complex('-Infinity+NaNj')\n" +"(-inf+nanj)\n" +">>> complex(1.23)\n" +"(1.23+0j)\n" +">>> complex(imag=-4.5)\n" +"-4.5j\n" +">>> complex(-1.23, 4.5)\n" +"(-1.23+4.5j)" +msgstr "" +">>> complex('+1.23')\n" +"(1.23+0j)\n" +">>> complex('-4.5j')\n" +"-4.5j\n" +">>> complex('-1.23+4.5j')\n" +"(-1.23+4.5j)\n" +">>> complex('\\t( -1.23+4.5J )\\n')\n" +"(-1.23+4.5j)\n" +">>> complex('-Infinity+NaNj')\n" +"(-inf+nanj)\n" +">>> complex(1.23)\n" +"(1.23+0j)\n" +">>> complex(imag=-4.5)\n" +"-4.5j\n" +">>> complex(-1.23, 4.5)\n" +"(-1.23+4.5j)" + +msgid "" +"If the argument is a string, it must contain either a real part (in the same " +"format as for :func:`float`) or an imaginary part (in the same format but " +"with a ``'j'`` or ``'J'`` suffix), or both real and imaginary parts (the " +"sign of the imaginary part is mandatory in this case). The string can " +"optionally be surrounded by whitespaces and the round parentheses ``'('`` " +"and ``')'``, which are ignored. The string must not contain whitespace " +"between ``'+'``, ``'-'``, the ``'j'`` or ``'J'`` suffix, and the decimal " +"number. For example, ``complex('1+2j')`` is fine, but ``complex('1 + 2j')`` " +"raises :exc:`ValueError`. More precisely, the input must conform to " +"the :token:`~float:complexvalue` production rule in the following grammar, " +"after parentheses and leading and trailing whitespace characters are removed:" +msgstr "" +"ਜੇ ਦਲੀਲ ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ, ਤਾਂ ਇਸ ਵਿੱਚ ਜਾਂ ਤਾਂ ਇੱਕ real ਹਿੱਸਾ (:func:`float` ਲਈ ਵਰਤੇ ਗਏ " +"ਫਾਰਮੈਟ ਵਿੱਚ) ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਜਾਂ ਇੱਕ imaginary ਹਿੱਸਾ (ਉਸੇ ਫਾਰਮੈਟ ਵਿੱਚ ਪਰ ``'j'`` ਜਾਂ " +"``'J'`` suffix ਨਾਲ), ਜਾਂ ਦੋਵੇਂ real ਅਤੇ imaginary ਹਿੱਸੇ (ਇਸ ਸਥਿਤੀ ਵਿੱਚ imaginary ਹਿੱਸੇ " +"ਦਾ ਚਿੰਨ੍ਹ ਲਾਜ਼ਮੀ ਹੈ)। ਸਟ੍ਰਿੰਗ ਵਿਕਲਪਿਕ ਤੌਰ 'ਤੇ ਖਾਲੀ ਥਾਂਵਾਂ ਅਤੇ ਗੋਲ ਬ੍ਰੈਕਟਾਂ ``'('`` ਅਤੇ " +"``')'`` ਨਾਲ ਘਿਰੀ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਸਟ੍ਰਿੰਗ ਵਿੱਚ ``'+'``, " +"``'-'``, ``'j'`` ਜਾਂ ``'J'`` suffix ਅਤੇ ਦਸ਼ਮਲਵ ਅੰਕ ਦੇ ਵਿਚਕਾਰ whitespace ਨਹੀਂ ਹੋਣੀ " +"ਚਾਹੀਦੀ। ਉਦਾਹਰਨ ਵਜੋਂ, ``complex('1+2j')`` ਠੀਕ ਹੈ, ਪਰ ``complex('1 + " +"2j')`` :exc:`ValueError` exception ਉਠਾਉਂਦਾ ਹੈ। ਹੋਰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ, ਬ੍ਰੈਕਟਾਂ ਅਤੇ ਸ਼ੁਰੂਆਤੀ/" +"ਅੰਤਲੀ whitespace ਹਟਾਉਣ ਤੋਂ ਬਾਅਦ, input ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ grammar " +"ਵਿੱਚ :token:`~float:complexvalue` ਉਤਪਾਦਨ ਨਿਯਮ ਦੇ ਅਨੁਕੂਲ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ:" + +msgid "" +"If the argument is a number, the constructor serves as a numeric conversion " +"like :class:`int` and :class:`float`. For a general Python object ``x``, " +"``complex(x)`` delegates to ``x.__complex__()``. " +"If :meth:`~object.__complex__` is not defined then it falls back " +"to :meth:`~object.__float__`. If :meth:`!__float__` is not defined then it " +"falls back to :meth:`~object.__index__`." +msgstr "" +"ਜੇ ਦਲੀਲ ਇੱਕ ਨੰਬਰ ਹੋਵੇ, ਤਾਂ ਕੰਸਟ੍ਰਕਟਰ :class:`int` ਅਤੇ :class:`float` ਵਾਂਗ ਸੰਖਿਆਕ ਰੂਪਾਂਤਰਣ " +"ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਇੱਕ ਆਮ Python ਆਬਜੈਕਟ ``x`` ਲਈ, ``complex(x)`` " +"``x.__complex__()`` ਵੱਲ ਡੈਲੀਗੇਟ ਕਰਦਾ ਹੈ। ਜੇ :meth:`~object.__complex__` ਪਰਿਭਾਸ਼ਿਤ " +"ਨਾ ਹੋਵੇ ਤਾਂ ਇਹ :meth:`~object.__float__`'ਤੇ ਵਾਪਸ ਆ ਜਾਂਦਾ ਹੈ। ਜੇ :meth:`!__float__` " +"ਪਰਿਭਾਸ਼ਿਤ ਨਾ ਹੋਵੇ ਤਾਂ ਇਹ :meth:`~object.__index__`'ਤੇ ਵਾਪਸ ਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"If two arguments are provided or keyword arguments are used, each argument " +"may be any numeric type (including complex). If both arguments are real " +"numbers, return a complex number with the real component *real* and the " +"imaginary component *imag*. If both arguments are complex numbers, return a " +"complex number with the real component ``real.real-imag.imag`` and the " +"imaginary component ``real.imag+imag.real``. If one of arguments is a real " +"number, only its real component is used in the above expressions." +msgstr "" +"ਜੇ ਦੋ ਆਰਗੂਮੈਂਟ ਦਿੱਤੇ ਜਾਣ ਜਾਂ keyword arguments ਵਰਤੇ ਜਾਣ, ਤਾਂ ਹਰ ਆਰਗੂਮੈਂਟ ਕਿਸੇ ਵੀ ਸੰਖਿਆਤਮਕ " +"ਕਿਸਮ ਦਾ ਹੋ ਸਕਦਾ ਹੈ (complex ਸਮੇਤ)। ਜੇ ਦੋਵੇਂ ਆਰਗੂਮੈਂਟ real ਸੰਖਿਆਵਾਂ ਹਨ, ਤਾਂ real ਭਾਗ " +"*real* ਅਤੇ imaginary ਭਾਗ *imag* ਵਾਲੀ complex ਸੰਖਿਆ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਦੋਵੇਂ " +"complex ਸੰਖਿਆਵਾਂ ਹਨ, ਤਾਂ real ਭਾਗ ``real.real-imag.imag`` ਅਤੇ imaginary ਭਾਗ " +"``real.imag+imag.real`` ਵਾਲੀ complex ਸੰਖਿਆ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਕਿਸੇ ਇੱਕ ਆਰਗੂਮੈਂਟ " +"ਵਿੱਚ real ਸੰਖਿਆ ਹੋਵੇ, ਤਾਂ ਉਪਰੋਕਤ ਗਣਨਾਵਾਂ ਵਿੱਚ ਸਿਰਫ਼ ਉਸਦਾ real ਭਾਗ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"See also :meth:`complex.from_number` which only accepts a single numeric " +"argument." +msgstr "" +":meth:`complex.from_number` ਵੀ ਵੇਖੋ, ਜੋ ਸਿਰਫ਼ ਇੱਕ ਸੰਖਿਆਤਮਕ ਆਰਗੂਮੈਂਟ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ।" + +msgid "If all arguments are omitted, returns ``0j``." +msgstr "ਜੇ ਸਾਰੇ ਆਰਗੂਮੈਂਟ ਛੱਡ ਦਿੱਤੇ ਜਾਣ, ਤਾਂ ``0j`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "The complex type is described in :ref:`typesnumeric`." +msgstr "complex ਕਿਸਮ ਦਾ ਵੇਰਵਾ :ref:`typesnumeric` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" + +msgid "Grouping digits with underscores as in code literals is allowed." +msgstr "ਕੋਡ ਲਿਟਰਲਾਂ ਵਾਂਗ ਅੰਕਾਂ ਨੂੰ underscores ਨਾਲ ਸਮੂਹਬੱਧ ਕਰਨਾ ਮਨਜ਼ੂਰ ਹੈ।" + +msgid "" +"Falls back to :meth:`~object.__index__` if :meth:`~object.__complex__` " +"and :meth:`~object.__float__` are not defined." +msgstr "" +"ਜੇ :meth:`~object.__complex__` ਅਤੇ :meth:`~object.__float__` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹਨ, " +"ਤਾਂ ਇਹ :meth:`~object.__index__` ਵੱਲ ਮੁੜਦਾ ਹੈ।" + +msgid "" +"Passing a complex number as the *real* or *imag* argument is now deprecated; " +"it should only be passed as a single positional argument." +msgstr "" +"*real* ਜਾਂ *imag* ਆਰਗੂਮੈਂਟ ਵਜੋਂ complex ਸੰਖਿਆ ਦੇਣਾ ਹੁਣ deprecated ਹੈ; ਇਸਨੂੰ ਸਿਰਫ਼ ਇੱਕ " +"positional argument ਵਜੋਂ ਹੀ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ।" + +msgid "" +"This is a relative of :func:`setattr`. The arguments are an object and a " +"string. The string must be the name of one of the object's attributes. The " +"function deletes the named attribute, provided the object allows it. For " +"example, ``delattr(x, 'foobar')`` is equivalent to ``del x.foobar``. *name* " +"need not be a Python identifier (see :func:`setattr`)." +msgstr "" +"ਇਹ :func:`setattr` ਨਾਲ ਸੰਬੰਧਿਤ ਫੰਕਸ਼ਨ ਹੈ। ਆਰਗੂਮੈਂਟ ਇੱਕ ਆਬਜੈਕਟ ਅਤੇ ਇੱਕ ਸਟ੍ਰਿੰਗ ਹਨ। ਸਟਰਿੰਗ " +"ਆਬਜੈਕਟ ਦੇ ਕਿਸੇ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਨਾਮ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਜੇ ਆਬਜੈਕਟ ਆਗਿਆ ਦੇਵੇ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ ਉਸ " +"ਐਟ੍ਰਿਬਿਊਟ ਨੂੰ ਮਿਟਾ ਦਿੰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``delattr(x, 'foobar')`` ``del x.foobar`` " +"ਦੇ ਬਰਾਬਰ ਹੈ। *name* ਦਾ Python identifier ਹੋਣਾ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ (:func:`setattr` ਵੇਖੋ)।" + +msgid "" +"Create a new dictionary. The :class:`dict` object is the dictionary class. " +"See also :ref:`typesmapping` for documentation about this class." +msgstr "" +"ਇੱਕ ਨਵੀਂ dictionary ਬਣਾਓ। :class:`dict` object dictionary class ਹੈ। ਇਸ class " +"ਬਾਰੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਲਈ :ref:`typesmapping` ਵੀ ਵੇਖੋ।" + +msgid "" +"For other containers see the built-" +"in :class:`frozendict`, :class:`list`, :class:`set`, and :class:`tuple` " +"classes, as well as the :mod:`collections` module." +msgstr "" +"ਹੋਰ ਕੰਟੇਨਰਾਂ ਲਈ built-in :class:`frozendict`, :class:`list`, :class:`set`, " +"ਅਤੇ :class:`tuple` ਕਲਾਸਾਂ ਦੇ ਨਾਲ :mod:`collections` ਮੋਡੀਊਲ ਵੀ ਵੇਖੋ।" + +msgid "" +"Without arguments, return the list of names in the current local scope. " +"With an argument, attempt to return a list of valid attributes for that " +"object." +msgstr "" +"ਬਿਨਾਂ ਆਰਗੂਮੈਂਟਾਂ ਦੇ, ਮੌਜੂਦਾ ਲੋਕਲ ਸਕੋਪ ਵਿੱਚ ਮੌਜੂਦ ਨਾਂਵਾਂ ਦੀ ਸੂਚੀ ਵਾਪਸ ਕਰੋ। ਜੇ ਇੱਕ ਆਰਗੂਮੈਂਟ ਦਿੱਤਾ " +"ਜਾਵੇ, ਤਾਂ ਉਸ ਆਬਜੈਕਟ ਲਈ ਵੈਧ ਗੁਣਾਂ ਦੀ ਸੂਚੀ ਵਾਪਸ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"If the object has a method named :meth:`~object.__dir__`, this method will " +"be called and must return the list of attributes. This allows objects that " +"implement a custom :func:`~object.__getattr__` " +"or :func:`~object.__getattribute__` function to customize the " +"way :func:`dir` reports their attributes." +msgstr "" +"ਜੇ ਆਬਜੈਕਟ ਵਿੱਚ :meth:`~object.__dir__` ਨਾਮ ਦੀ ਮੈਥਡ ਹੋਵੇ, ਤਾਂ ਇਸਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾਵੇਗਾ ਅਤੇ " +"ਇਸਨੂੰ ਗੁਣਾਂ ਦੀ ਸੂਚੀ ਵਾਪਸ ਕਰਨੀ ਲਾਜ਼ਮੀ ਹੈ। ਇਸ ਨਾਲ ਉਹ ਆਬਜੈਕਟ ਜੋ " +"ਕਸਟਮ :func:`~object.__getattr__` ਜਾਂ :func:`~object.__getattribute__` ਫੰਕਸ਼ਨ " +"ਲਾਗੂ ਕਰਦੇ ਹਨ, :func:`dir` ਦੁਆਰਾ ਆਪਣੇ ਗੁਣਾਂ ਦੀ ਰਿਪੋਰਟ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰ ਸਕਦੇ ਹਨ।" + +msgid "" +"If the object does not provide :meth:`~object.__dir__`, the function tries " +"its best to gather information from the object's :attr:`~object.__dict__` " +"attribute, if defined, and from its type object. The resulting list is not " +"necessarily complete and may be inaccurate when the object has a " +"custom :func:`~object.__getattr__`." +msgstr "" +"ਜੇ ਆਬਜੈਕਟ :meth:`~object.__dir__` ਪ੍ਰਦਾਨ ਨਹੀਂ ਕਰਦਾ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ " +"ਦੇ :attr:`~object.__dict__` ਗੁਣ ਜੇ ਪਰਿਭਾਸ਼ਿਤ ਹੋਵੇ ਅਤੇ ਇਸਦੇ ਟਾਈਪ ਆਬਜੈਕਟ ਤੋਂ ਜਾਣਕਾਰੀ ਇਕੱਠੀ " +"ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ। ਨਤੀਜੇ ਵਜੋਂ ਮਿਲੀ ਸੂਚੀ ਲਾਜ਼ਮੀ ਤੌਰ 'ਤੇ ਪੂਰੀ ਨਹੀਂ ਹੁੰਦੀ ਅਤੇ ਜੇ ਆਬਜੈਕਟ ਵਿੱਚ " +"ਕਸਟਮ :func:`~object.__getattr__` ਹੋਵੇ ਤਾਂ ਇਹ ਗਲਤ ਵੀ ਹੋ ਸਕਦੀ ਹੈ।" + +msgid "" +"The default :func:`dir` mechanism behaves differently with different types " +"of objects, as it attempts to produce the most relevant, rather than " +"complete, information:" +msgstr "" +"ਮੂਲ :func:`dir` ਮਕੈਨਿਜ਼ਮ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ ਆਬਜੈਕਟਾਂ ਨਾਲ ਵੱਖਰੇ ਢੰਗ ਨਾਲ ਵਰਤਾਓ ਕਰਦਾ ਹੈ, " +"ਕਿਉਂਕਿ ਇਹ ਪੂਰੀ ਜਾਣਕਾਰੀ ਦੀ ਬਜਾਏ ਸਭ ਤੋਂ ਵੱਧ ਸੰਬੰਧਿਤ ਜਾਣਕਾਰੀ ਦੇਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ:" + +msgid "" +"If the object is a module object, the list contains the names of the " +"module's attributes." +msgstr "ਜੇ ਆਬਜੈਕਟ ਇੱਕ ਮੋਡੀਊਲ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਸੂਚੀ ਵਿੱਚ ਮੋਡੀਊਲ ਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" + +msgid "" +"If the object is a type or class object, the list contains the names of its " +"attributes, and recursively of the attributes of its bases." +msgstr "" +"ਜੇ ਆਬਜੈਕਟ ਇੱਕ ਟਾਈਪ ਜਾਂ ਕਲਾਸ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਸੂਚੀ ਵਿੱਚ ਇਸਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ ਅਤੇ ਇਸ ਦੀਆਂ ਬੇਸ ਕਲਾਸਾਂ " +"ਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ ਵੀ ਰਿਕਰਸਿਵ ਤਰੀਕੇ ਨਾਲ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" + +msgid "" +"Otherwise, the list contains the object's attributes' names, the names of " +"its class's attributes, and recursively of the attributes of its class's " +"base classes." +msgstr "" +"ਨਹੀਂ ਤਾਂ, ਸੂਚੀ ਵਿੱਚ ਆਬਜੈਕਟ ਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ, ਇਸਦੀ ਕਲਾਸ ਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ ਅਤੇ ਇਸ ਦੀਆਂ ਬੇਸ ਕਲਾਸਾਂ " +"ਦੇ ਗੁਣਾਂ ਦੇ ਨਾਮ ਰਿਕਰਸਿਵ ਤਰੀਕੇ ਨਾਲ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" + +msgid "The resulting list is sorted alphabetically. For example:" +msgstr "ਨਤੀਜੇ ਵਜੋਂ ਮਿਲੀ ਸੂਚੀ ਵਰਣਮਾਲਾ ਅਨੁਸਾਰ ਕ੍ਰਮਬੱਧ ਹੁੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ:" + +msgid "" +"Because :func:`dir` is supplied primarily as a convenience for use at an " +"interactive prompt, it tries to supply an interesting set of names more than " +"it tries to supply a rigorously or consistently defined set of names, and " +"its detailed behavior may change across releases. For example, metaclass " +"attributes are not in the result list when the argument is a class." +msgstr "" +"ਕਿਉਂਕਿ :func:`dir` ਮੁੱਖ ਤੌਰ 'ਤੇ ਇੰਟਰਐਕਟਿਵ ਪ੍ਰਾਂਪਟ 'ਤੇ ਸੁਵਿਧਾ ਲਈ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਇਸ ਲਈ ਇਹ " +"ਸਖ਼ਤੀ ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਨਾਂਵਾਂ ਦੀ ਸੂਚੀ ਦੇਣ ਦੀ ਬਜਾਏ ਦਿਲਚਸਪ ਨਾਂਵਾਂ ਦਾ ਸੈੱਟ ਮੁਹੱਈਆ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ " +"ਕਰਦਾ ਹੈ। ਇਸਦਾ ਵਿਸਤ੍ਰਿਤ ਵਰਤਾਓ ਵੱਖ-ਵੱਖ ਰਿਲੀਜ਼ਾਂ ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ਜਦੋਂ ਆਰਗੂਮੈਂਟ " +"ਇੱਕ ਕਲਾਸ ਹੋਵੇ ਤਾਂ ਮੈਟਾਕਲਾਸ ਦੇ ਗੁਣ ਨਤੀਜੇ ਵਾਲੀ ਸੂਚੀ ਵਿੱਚ ਨਹੀਂ ਹੁੰਦੇ।" + +msgid "" +"Take two (non-complex) numbers as arguments and return a pair of numbers " +"consisting of their quotient and remainder when using integer division. " +"With mixed operand types, the rules for binary arithmetic operators apply. " +"For integers, the result is the same as ``(a // b, a % b)``. For floating-" +"point numbers the result is ``(q, a % b)``, where *q* is usually " +"``math.floor(a / b)`` but may be 1 less than that. In any case ``q * b + a " +"% b`` is very close to *a*, if ``a % b`` is non-zero it has the same sign as " +"*b*, and ``0 <= abs(a % b) < abs(b)``." +msgstr "" +"ਦੋ (ਗੈਰ-ਕੰਪਲੈਕਸ) ਅੰਕਾਂ ਨੂੰ ਦਲੀਲਾਂ ਵਜੋਂ ਲਓ ਅਤੇ ਪੂਰਨ-ਭਾਗ-ਵੰਡ ਵਰਤ ਕੇ ਉਨ੍ਹਾਂ ਦੇ ਭਾਗਫਲ ਅਤੇ ਬਚਤ ਵਾਲੇ " +"ਅੰਕਾਂ ਦੀ ਜੋੜੀ ਵਾਪਸ ਕਰੋ। ਮਿਲੇ-ਜੁਲੇ ਓਪਰੇਂਡ ਕਿਸਮਾਂ ਨਾਲ, ਬਾਈਨਰੀ ਗਣਿਤਿਕ ਓਪਰੇਟਰਾਂ ਦੇ ਨਿਯਮ ਲਾਗੂ " +"ਹੁੰਦੇ ਹਨ। ਇੰਟਿਜਰਾਂ ਲਈ ਨਤੀਜਾ ``(a // b, a % b)`` ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ ਹੈ। ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਨੰਬਰਾਂ " +"ਲਈ ਨਤੀਜਾ ``(q, a % b)`` ਹੁੰਦਾ ਹੈ, ਜਿੱਥੇ *q* ਆਮ ਤੌਰ 'ਤੇ ``math.floor(a / b)`` ਹੁੰਦਾ ਹੈ " +"ਪਰ ਇਹ ਉਸ ਤੋਂ 1 ਘੱਟ ਵੀ ਹੋ ਸਕਦਾ ਹੈ। ਕਿਸੇ ਵੀ ਹਾਲਤ ਵਿੱਚ ``q * b + a % b`` *a* ਦੇ ਬਹੁਤ ਨੇੜੇ " +"ਹੁੰਦਾ ਹੈ, ਜੇ ``a % b`` ਗੈਰ-ਸ਼ੂਨ ਹੋਵੇ ਤਾਂ ਇਸਦਾ ਚਿੰਨ੍ਹ *b* ਦੇ ਚਿੰਨ੍ਹ ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ ਹੈ, ਅਤੇ ``0 <= " +"abs(a % b) < abs(b)`` ।" + +msgid "" +"Return an enumerate object. *iterable* must be a sequence, " +"an :term:`iterator`, or some other object which supports iteration. " +"The :meth:`~iterator.__next__` method of the iterator returned " +"by :func:`enumerate` returns a tuple containing a count (from *start* which " +"defaults to 0) and the values obtained from iterating over *iterable*." +msgstr "" +"ਇੱਕ enumerate ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੋ। *iterable* ਇੱਕ ਸੀਕਵੈਂਸ, :term:`iterator`, ਜਾਂ ਹੋਰ ਕੋਈ " +"ਐਸਾ ਆਬਜੈਕਟ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ iteration ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੋਵੇ। :func:`enumerate` ਦੁਆਰਾ " +"ਵਾਪਸ ਕੀਤੇ iterator ਦੀ :meth:`~iterator.__next__` ਮੈਥਡ ਇੱਕ tuple ਵਾਪਸ ਕਰਦੀ ਹੈ ਜਿਸ " +"ਵਿੱਚ ਗਿਣਤੀ (*start* ਤੋਂ, ਜਿਸਦਾ ਮੂਲ ਮੁੱਲ 0 ਹੈ) ਅਤੇ *iterable* 'ਤੇ iteration ਕਰਨ ਨਾਲ " +"ਮਿਲੇ ਮੁੱਲ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" + +msgid "Equivalent to::" +msgstr "ਇਸਦੇ ਸਮਾਨ::" + +msgid "" +"def enumerate(iterable, start=0):\n" +" n = start\n" +" for elem in iterable:\n" +" yield n, elem\n" +" n += 1" +msgstr "" +"def enumerate(iterable, start=0):\n" +" n = start\n" +" for elem in iterable:\n" +" yield n, elem\n" +" n += 1" + +msgid "Parameters" +msgstr "ਪੈਰਾਮੀਟਰ" + +msgid "A Python expression." +msgstr "ਇੱਕ Python ਅਭਿਵਿਅੰਜਨਾ।" + +msgid "The global namespace (default: ``None``)." +msgstr "ਗਲੋਬਲ ਨੇਮਸਪੇਸ (ਮੂਲ: ``None``)।" + +msgid "The local namespace (default: ``None``)." +msgstr "ਲੋਕਲ ਨੇਮਸਪੇਸ (ਮੂਲ: ``None``)।" + +msgid "Returns" +msgstr "ਵਾਪਸੀ" + +msgid "The result of the evaluated expression." +msgstr "ਮੁਲਾਂਕਣ ਕੀਤੀ ਅਭਿਵਿਅੰਜਨਾ ਦਾ ਨਤੀਜਾ।" + +msgid "raises" +msgstr "ਉਠਾਉਂਦਾ ਹੈ" + +msgid "Syntax errors are reported as exceptions." +msgstr "ਸਿੰਟੈਕਸ ਗਲਤੀਆਂ ਨੂੰ exceptions ਵਜੋਂ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"This function executes arbitrary code. Calling it with untrusted user-" +"supplied input will lead to security vulnerabilities." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਮਨਮਾਨਾ ਕੋਡ ਚਲਾਉਂਦਾ ਹੈ। ਇਸਨੂੰ ਅਣਵਿਸ਼ਵਾਸਯੋਗ ਵਰਤੋਂਕਾਰ-ਪ੍ਰਦਾਨ ਕੀਤੇ ਇਨਪੁੱਟ ਨਾਲ ਕਾਲ ਕਰਨ " +"ਨਾਲ ਸੁਰੱਖਿਆ ਸੰਬੰਧੀ ਕਮਜ਼ੋਰੀਆਂ ਪੈਦਾ ਹੋ ਸਕਦੀਆਂ ਹਨ।" + +msgid "" +"The *source* argument is parsed and evaluated as a Python expression " +"(technically speaking, an :ref:`expression list `) using the " +"*globals* and *locals* mappings as global and local namespace. If the " +"*globals* dictionary is present and does not contain a value for the key " +"``__builtins__``, a reference to the dictionary of the built-in " +"module :mod:`builtins` is inserted under that key before *source* is parsed. " +"Overriding ``__builtins__`` can be used to restrict or change the available " +"names, but this is **not** a security mechanism: the executed code can still " +"access all builtins. If the *locals* mapping is omitted it defaults to the " +"*globals* dictionary. If both mappings are omitted, the source is executed " +"with the *globals* and *locals* in the environment where :func:`eval` is " +"called. Note, *eval()* will only have access to the :term:`nested scopes " +"` (non-locals) in the enclosing environment if they are " +"already referenced in the scope that is calling :func:`eval` (e.g. via " +"a :keyword:`nonlocal` statement)." +msgstr "" +"ਸੋਰਸ ਆਰਗੂਮੈਂਟ ਨੂੰ *globals* ਅਤੇ *locals* ਮੈਪਿੰਗਾਂ ਨੂੰ ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਨੈਮਸਪੇਸ ਵਜੋਂ ਵਰਤ ਕੇ ਇੱਕ " +"ਪਾਈਥਨ ਐਕਸਪ੍ਰੈਸ਼ਨ (ਤਕਨੀਕੀ ਤੌਰ 'ਤੇ, ਇੱਕ :ref:`expression list `) ਵਜੋਂ ਪਾਰਸ " +"ਅਤੇ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜੇ *globals* ਡਿਕਸ਼ਨਰੀ ਮੌਜੂਦ ਹੈ ਅਤੇ ਉਸ ਵਿੱਚ ``__builtins__`` " +"ਕੁੰਜੀ ਲਈ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਹੈ, ਤਾਂ *source* ਨੂੰ ਪਾਰਸ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਉਸ ਕੁੰਜੀ ਹੇਠ ਬਿਲਟ-ਇਨ " +"ਮਾਡਿਊਲ :mod:`builtins` ਦੀ ਡਿਕਸ਼ਨਰੀ ਦਾ ਇੱਕ ਰੈਫਰੈਂਸ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। " +"``__builtins__`` ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨਾ ਉਪਲਬਧ ਨਾਵਾਂ ਨੂੰ ਸੀਮਤ ਕਰਨ ਜਾਂ ਬਦਲਣ ਲਈ ਵਰਤਿਆ ਜਾ " +"ਸਕਦਾ ਹੈ, ਪਰ ਇਹ ਕੋਈ ਸੁਰੱਖਿਆ ਵਿਧੀ **ਨਹੀਂ** ਹੈ: ਚਲਾਇਆ ਗਿਆ ਕੋਡ ਫਿਰ ਵੀ ਸਾਰੇ ਬਿਲਟਇਨਜ਼ ਤੱਕ " +"ਪਹੁੰਚ ਕਰ ਸਕਦਾ ਹੈ। ਜੇ *locals* ਮੈਪਿੰਗ ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਇਹ ਆਪਣੇ ਆਪ *globals* " +"ਡਿਕਸ਼ਨਰੀ 'ਤੇ ਵਾਪਸ ਆ ਜਾਂਦਾ ਹੈ। ਜੇਕਰ ਦੋਵੇਂ ਮੈਪਿੰਗਾਂ ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਸਰੋਤ ਉਸ ਵਾਤਾਵਰਣ " +"ਵਿੱਚ *globals* ਅਤੇ *locals* ਨਾਲ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ ਜਿੱਥੇ :func:`eval` ਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ। ਨੋਟ, *eval()* ਨੂੰ ਘੇਰਨ ਵਾਲੇ ਵਾਤਾਵਰਣ ਵਿੱਚ :term:`nested scopes ` " +"(ਗੈਰ-ਲੋਕਲ) ਤੱਕ ਸਿਰਫ਼ ਉਦੋਂ ਹੀ ਪਹੁੰਚ ਮਿਲੇਗੀ ਜੇਕਰ ਉਹ ਪਹਿਲਾਂ ਹੀ ਉਸ ਸਕੋਪ ਵਿੱਚ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ " +"ਹੋਵੇ ਜੋ :func:`eval` ਨੂੰ ਕਾਲ ਕਰ ਰਿਹਾ ਹੈ (ਜਿਵੇਂ ਕਿ ਇੱਕ :keyword:`nonlocal` ਬਿਆਨ ਰਾਹੀਂ)।" + +msgid "Example:" +msgstr "ਉਦਾਹਰਨ:" + +msgid "" +"This function can also be used to execute arbitrary code objects (such as " +"those created by :func:`compile`). In this case, pass a code object instead " +"of a string. If the code object has been compiled with ``'exec'`` as the " +"*mode* argument, :func:`eval`\\'s return value will be ``None``." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਮਨਮਾਨੇ ਕੋਡ ਆਬਜੈਕਟਾਂ (ਜਿਵੇਂ ਕਿ :func:`compile` ਦੁਆਰਾ ਬਣਾਏ ਗਏ) ਨੂੰ ਚਲਾਉਣ ਲਈ ਵੀ " +"ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਸਟ੍ਰਿੰਗ ਦੀ ਬਜਾਏ ਇੱਕ ਕੋਡ ਆਬਜੈਕਟ ਦਿਓ। ਜੇ ਕੋਡ ਆਬਜੈਕਟ ਨੂੰ " +"*mode* ਆਰਗੂਮੈਂਟ ਵਜੋਂ ``'exec'`` ਨਾਲ ਕੰਪਾਇਲ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ :func:`eval` ਦਾ ਵਾਪਸੀ " +"ਮੁੱਲ ``None`` ਹੋਵੇਗਾ।" + +msgid "" +"Hints: dynamic execution of statements is supported by the :func:`exec` " +"function. The :func:`globals` and :func:`locals` functions return the " +"current global and local dictionary, respectively, which may be useful to " +"pass around for use by :func:`eval` or :func:`exec`." +msgstr "" +"ਸੰਕੇਤ: statements ਦੇ ਡਾਇਨਾਮਿਕ ਚਲਾਓ ਨੂੰ :func:`exec` ਫੰਕਸ਼ਨ ਸਮਰਥਨ ਦਿੰਦਾ " +"ਹੈ। :func:`globals` ਅਤੇ :func:`locals` ਫੰਕਸ਼ਨ ਕ੍ਰਮਵਾਰ ਮੌਜੂਦਾ ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਡਿਕਸ਼ਨਰੀ " +"ਵਾਪਸ ਕਰਦੇ ਹਨ, ਜੋ :func:`eval` ਜਾਂ :func:`exec` ਨਾਲ ਵਰਤੋਂ ਲਈ ਉਪਯੋਗੀ ਹੋ ਸਕਦੀਆਂ ਹਨ।" + +msgid "" +"If the given source is a string, then leading and trailing spaces and tabs " +"are stripped." +msgstr "" +"ਜੇ ਦਿੱਤਾ ਗਿਆ source ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ, ਤਾਂ ਇਸਦੇ ਸ਼ੁਰੂ ਅਤੇ ਅੰਤ ਵਾਲੇ ਖਾਲੀ ਸਥਾਨ ਅਤੇ ਟੈਬ ਹਟਾ ਦਿੱਤੇ " +"ਜਾਂਦੇ ਹਨ।" + +msgid "" +"See :func:`ast.literal_eval` for a function to evaluate strings with " +"expressions containing only literals." +msgstr "" +"ਕੇਵਲ literal ਮੁੱਲਾਂ ਵਾਲੀਆਂ ਅਭਿਵਿਅੰਜਨਾਵਾਂ ਦੀਆਂ ਸਟ੍ਰਿੰਗਾਂ ਦਾ ਮੁਲਾਂਕਣ ਕਰਨ " +"ਲਈ :func:`ast.literal_eval` ਵੇਖੋ।" + +msgid "" +"Raises an :ref:`auditing event ` ``exec`` with the code object as " +"the argument. Code compilation events may also be raised." +msgstr "" +"ਕੋਡ ਆਬਜੈਕਟ ਨੂੰ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਵਰਤਦੇ ਹੋਏ :ref:`auditing event ` ``exec`` ਉਠਾਇਆ " +"ਜਾਂਦਾ ਹੈ। ਕੋਡ ਕੰਪਾਇਲੇਸ਼ਨ ਇਵੈਂਟ ਵੀ ਉਠਾਏ ਜਾ ਸਕਦੇ ਹਨ।" + +msgid "The *globals* and *locals* arguments can now be passed as keywords." +msgstr "*globals* ਅਤੇ *locals* ਆਰਗੂਮੈਂਟ ਹੁਣ keyword arguments ਵਜੋਂ ਵੀ ਦਿੱਤੇ ਜਾ ਸਕਦੇ ਹਨ।" + +msgid "" +"The semantics of the default *locals* namespace have been adjusted as " +"described for the :func:`locals` builtin." +msgstr "" +"ਮੂਲ *locals* ਨੇਮਸਪੇਸ ਦੇ ਅਰਥਾਂ ਨੂੰ :func:`locals` builtin ਲਈ ਵਰਣਿਤ ਤਰੀਕੇ ਅਨੁਸਾਰ ਅਨੁਕੂਲਿਤ " +"ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "*globals* can now be a :class:`frozendict`." +msgstr "*globals* ਹੁਣ ਇੱਕ :class:`frozendict` ਵੀ ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"This function supports dynamic execution of Python code. *source* must be " +"either a string or a code object. If it is a string, the string is parsed " +"as a suite of Python statements which is then executed (unless a syntax " +"error occurs). [#]_ If it is a code object, it is simply executed. In all " +"cases, the code that's executed is expected to be valid as file input (see " +"the section :ref:`file-input` in the Reference Manual). Be aware that " +"the :keyword:`nonlocal`, :keyword:`yield`, and :keyword:`return` statements " +"may not be used outside of function definitions even within the context of " +"code passed to the :func:`exec` function. The return value is ``None``." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਪਾਈਥਨ ਕੋਡ ਦੀ ਡਾਇਨਾਮਿਕ ਚਲਾਉਣ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। *source* ਜਾਂ ਤਾਂ ਇੱਕ ਸਟਰਿੰਗ " +"ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਾਂ ਇੱਕ ਕੋਡ ਆਬਜੈਕਟ। ਜੇ ਇਹ ਸਟਰਿੰਗ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਪਾਈਥਨ ਬਿਆਨਾਂ ਦੇ ਇੱਕ ਸੂਟ ਵਜੋਂ " +"ਪਾਰਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਫਿਰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ (ਜਦ ਤੱਕ ਕਿ ਕੋਈ ਸਿੰਟੈਕਸ ਗਲਤੀ ਨਾ ਹੋਵੇ)। [#]_ ਜੇ " +"ਇਹ ਕੋਡ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਇਹ ਸਿੱਧਾ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। ਸਾਰੇ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਚਲਾਇਆ ਗਿਆ ਕੋਡ ਫਾਈਲ " +"ਇਨਪੁੱਟ ਵਜੋਂ ਵੈਧ ਹੋਣ ਦੀ ਉਮੀਦ ਕੀਤੀ ਜਾਂਦੀ ਹੈ (ਹਵਾਲਾ ਮੈਨੂਅਲ ਵਿੱਚ \" :ref:`file-input` \" " +"ਸੈਕਸ਼ਨ ਵੇਖੋ)। ਧਿਆਨ ਰੱਖੋ ਕਿ :keyword:`nonlocal`, :keyword:`yield` " +"ਅਤੇ :keyword:`return` ਸਟੇਟਮੈਂਟਾਂ ਨੂੰ ਫੰਕਸ਼ਨ ਡੈਫੀਨੇਸ਼ਨਾਂ ਤੋਂ ਬਾਹਰ, ਇੱਥੋਂ ਤੱਕ ਕਿ :func:`exec` " +"ਫੰਕਸ਼ਨ ਨੂੰ ਦਿੱਤੇ ਗਏ ਕੋਡ ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਵੀ, ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਵਾਪਸੀ ਮੁੱਲ ``None`` ਹੈ।" + +msgid "" +"In all cases, if the optional parts are omitted, the code is executed in the " +"current scope. If only *globals* is provided, it must be a dictionary (and " +"not a subclass of dictionary), which will be used for both the global and " +"the local variables. If *globals* and *locals* are given, they are used for " +"the global and local variables, respectively. If provided, *locals* can be " +"any mapping object. Remember that at the module level, globals and locals " +"are the same dictionary." +msgstr "" +"ਸਾਰੇ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਜੇ ਵਿਕਲਪਿਕ ਹਿੱਸੇ ਛੱਡ ਦਿੱਤੇ ਜਾਣ, ਤਾਂ ਕੋਡ ਮੌਜੂਦਾ ਸਕੋਪ ਵਿੱਚ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। ਜੇ " +"ਸਿਰਫ *globals* ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇਹ ਇੱਕ ਡਿਕਸ਼ਨਰੀ (ਡਿਕਸ਼ਨਰੀ ਦੀ ਸਬਕਲਾਸ ਨਹੀਂ) ਹੋਣੀ " +"ਚਾਹੀਦੀ, ਜੋ ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਦੋਹਾਂ ਵੇਰੀਏਬਲਾਂ ਲਈ ਵਰਤੀ ਜਾਵੇਗੀ। ਜੇ *globals* ਅਤੇ *locals* ਦੋਵੇਂ " +"ਦਿੱਤੇ ਗਏ ਹਨ, ਤਾਂ ਉਹ ਕ੍ਰਮਵਾਰ ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਵੇਰੀਏਬਲਾਂ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਜੇ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ " +"*locals* ਕੋਈ ਵੀ ਮੈਪਿੰਗ ਆਬਜੈਕਟ ਹੋ ਸਕਦਾ ਹੈ। ਯਾਦ ਰੱਖੋ ਕਿ ਮੋਡਿਊਲ ਪੱਧਰ 'ਤੇ, ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਇੱਕੋ " +"ਡਿਕਸ਼ਨਰੀ ਹੁੰਦੇ ਹਨ।" + +msgid "" +"When ``exec`` gets two separate objects as *globals* and *locals*, the code " +"will be executed as if it were embedded in a class definition. This means " +"functions and classes defined in the executed code will not be able to " +"access variables assigned at the top level (as the \"top level\" variables " +"are treated as class variables in a class definition)." +msgstr "" +"ਜਦੋਂ ``exec`` ਨੂੰ ਦੋ ਵੱਖ-ਵੱਖ ਵਸਤੂਆਂ *globals* ਅਤੇ *locals* ਵਜੋਂ ਮਿਲਦੀਆਂ ਹਨ, ਤਾਂ ਕੋਡ ਇਸ ਤਰ੍ਹਾਂ " +"ਚਲਾਇਆ ਜਾਵੇਗਾ ਜਿਵੇਂ ਇਹ ਕਿਸੇ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ ਸ਼ਾਮਿਲ ਹੋਵੇ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਚਲਾਏ ਗਏ ਕੋਡ " +"ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਫੰਕਸ਼ਨਾਂ ਅਤੇ ਕਲਾਸਾਂ ਨੂੰ ਸਿਖਰਲੇ ਪੱਧਰ 'ਤੇ ਨਿਰਧਾਰਤ ਵੇਰੀਏਬਲਜ਼ ਤੱਕ ਪਹੁੰਚ ਨਹੀਂ ਮਿਲੇਗੀ " +"(ਕਿਉਂਕਿ \"ਸਿਖਰਲੇ ਪੱਧਰ\" ਵੇਰੀਏਬਲਜ਼ ਨੂੰ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ ਕਲਾਸ ਵੇਰੀਏਬਲਜ਼ ਵਜੋਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ)।" + +msgid "" +"If the *globals* dictionary does not contain a value for the key " +"``__builtins__``, a reference to the dictionary of the built-in " +"module :mod:`builtins` is inserted under that key. Overriding " +"``__builtins__`` can be used to restrict or change the available names, but " +"this is **not** a security mechanism: the executed code can still access all " +"builtins." +msgstr "" +"ਜੇ *globals* ਡਿਕਸ਼ਨਰੀ ਵਿੱਚ ``__builtins__`` ਕੁੰਜੀ ਲਈ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਹੈ, " +"ਤਾਂ :mod:`builtins` ਮੋਡੀਊਲ ਦੀ ਡਿਕਸ਼ਨਰੀ ਦਾ ਹਵਾਲਾ ਉਸ ਕੁੰਜੀ ਹੇਠ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ। " +"``__builtins__`` ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਕੇ ਉਪਲਬਧ ਨਾਂਵਾਂ ਨੂੰ ਸੀਮਿਤ ਜਾਂ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਪਰ ਇਹ " +"**ਸੁਰੱਖਿਆ ਮਕੈਨਿਜ਼ਮ ਨਹੀਂ** ਹੈ; ਚਲਾਇਆ ਗਿਆ ਕੋਡ ਫਿਰ ਵੀ ਸਾਰੇ builtins ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦਾ ਹੈ।" + +msgid "" +"The *closure* argument specifies a closure--a tuple of cellvars. It's only " +"valid when *source* is a code object containing :term:`free (closure) " +"variables `. The length of the tuple must exactly match " +"the length of the code object's :attr:`~codeobject.co_freevars` attribute." +msgstr "" + +msgid "" +"The built-in functions :func:`globals` and :func:`locals` return the current " +"global and local namespace, respectively, which may be useful to pass around " +"for use as the second and third argument to :func:`exec`." +msgstr "" +"ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ :func:`globals` ਅਤੇ :func:`locals` ਕ੍ਰਮਵਾਰ ਮੌਜੂਦਾ ਗਲੋਬਲ ਅਤੇ ਲੋਕਲ ਨੇਮਸਪੇਸ " +"ਵਾਪਸ ਕਰਦੇ ਹਨ, ਜੋ :func:`exec` ਦੇ ਦੂਜੇ ਅਤੇ ਤੀਜੇ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਵਰਤਣ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦੇ ਹਨ।" + +msgid "" +"The default *locals* act as described for function :func:`locals` below. " +"Pass an explicit *locals* dictionary if you need to see effects of the code " +"on *locals* after function :func:`exec` returns." +msgstr "" +"ਮੂਲ *locals* ਉਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਹੇਠਾਂ :func:`locals` ਲਈ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ। ਜੇ " +"ਤੁਸੀਂ :func:`exec` ਦੇ ਵਾਪਸ ਆਉਣ ਤੋਂ ਬਾਅਦ *locals* ਉੱਤੇ ਕੋਡ ਦੇ ਪ੍ਰਭਾਵ ਦੇਖਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਇੱਕ " +"ਸਪਸ਼ਟ *locals* ਡਿਕਸ਼ਨਰੀ ਦਿਓ।" + +msgid "Added the *closure* parameter." +msgstr "*closure* ਪੈਰਾਮੀਟਰ ਜੋੜਿਆ ਗਿਆ।" + +msgid "" +"Construct an iterator from those elements of *iterable* for which *function* " +"is true. *iterable* may be either a sequence, a container which supports " +"iteration, or an iterator. If *function* is ``None``, the identity function " +"is assumed, that is, all elements of *iterable* that are false are removed." +msgstr "" +"ਉਹਨਾਂ ਤੱਤਾਂ ਤੋਂ ਇੱਕ ਇਟਰੇਟਰ ਬਣਾਓ ਜੋ *iterable* ਦੇ ਉਹਨਾਂ ਤੱਤਾਂ ਲਈ *function* ਸਹੀ ਹੈ। " +"*iterable* ਕਿਸੇ ਵੀ ਕ੍ਰਮ, ਇਟਰੇਸ਼ਨ ਸਹਿਯੋਗੀ ਕੰਟੇਨਰ, ਜਾਂ ਇਟਰੇਟਰ ਹੋ ਸਕਦਾ ਹੈ। ਜੇ *function* " +"``None`` ਹੈ, ਤਾਂ ਪਛਾਣ ਫੰਕਸ਼ਨ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ, ਅਰਥਾਤ *iterable* ਦੇ ਉਹ ਸਾਰੇ ਤੱਤ ਜੋ false " +"ਹਨ, ਹਟਾ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ।" + +msgid "" +"Note that ``filter(function, iterable)`` is equivalent to the generator " +"expression ``(item for item in iterable if function(item))`` if function is " +"not ``None`` and ``(item for item in iterable if item)`` if function is " +"``None``." +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ``filter(function, iterable)`` generator expression ``(item for " +"item in iterable if function(item))`` ਦੇ ਬਰਾਬਰ ਹੈ ਜੇ function ``None`` ਨਾ ਹੋਵੇ, " +"ਅਤੇ ``(item for item in iterable if item)`` ਦੇ ਬਰਾਬਰ ਹੈ ਜੇ function ``None`` ਹੋਵੇ।" + +msgid "" +"See :func:`itertools.filterfalse` for the complementary function that " +"returns elements of *iterable* for which *function* is false." +msgstr "" +"ਉਸ ਪੂਰਕ ਫੰਕਸ਼ਨ ਲਈ :func:`itertools.filterfalse` ਵੇਖੋ ਜੋ *iterable* ਦੇ ਉਹ ਤੱਤ ਵਾਪਸ " +"ਕਰਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਲਈ *function* false ਹੁੰਦਾ ਹੈ।" + +msgid "Return a floating-point number constructed from a number or a string." +msgstr "ਕਿਸੇ ਸੰਖਿਆ ਜਾਂ ਸਟ੍ਰਿੰਗ ਤੋਂ ਬਣਾਈ ਗਈ floating-point ਸੰਖਿਆ ਵਾਪਸ ਕਰੋ।" + +msgid "" +">>> float('+1.23')\n" +"1.23\n" +">>> float(' -12345\\n')\n" +"-12345.0\n" +">>> float('1e-003')\n" +"0.001\n" +">>> float('+1E6')\n" +"1000000.0\n" +">>> float('-Infinity')\n" +"-inf" +msgstr "" +">>> float('+1.23')\n" +"1.23\n" +">>> float(' -12345\\n')\n" +"-12345.0\n" +">>> float('1e-003')\n" +"0.001\n" +">>> float('+1E6')\n" +"1000000.0\n" +">>> float('-Infinity')\n" +"-inf" + +msgid "" +"If the argument is a string, it should contain a decimal number, optionally " +"preceded by a sign, and optionally embedded in whitespace. The optional " +"sign may be ``'+'`` or ``'-'``; a ``'+'`` sign has no effect on the value " +"produced. The argument may also be a string representing a NaN (not-a-" +"number), or positive or negative infinity. More precisely, the input must " +"conform to the :token:`~float:floatvalue` production rule in the following " +"grammar, after leading and trailing whitespace characters are removed:" +msgstr "" +"ਜੇ ਆਰਗੂਮੈਂਟ ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ, ਤਾਂ ਇਸ ਵਿੱਚ ਇੱਕ ਦਸ਼ਮਲਵ ਸੰਖਿਆ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ, ਜਿਸ ਤੋਂ ਪਹਿਲਾਂ ਚਿੰਨ੍ਹ ਹੋ " +"ਸਕਦਾ ਹੈ ਅਤੇ ਜਿਸ ਵਿੱਚ ਖਾਲੀ ਥਾਂਵਾਂ ਵੀ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਵਿਕਲਪਿਕ ਚਿੰਨ੍ਹ ``'+'`` ਜਾਂ ``'-'`` ਹੋ " +"ਸਕਦਾ ਹੈ; ``'+'`` ਚਿੰਨ੍ਹ ਨਤੀਜੇ ਦੇ ਮੁੱਲ ਉੱਤੇ ਕੋਈ ਅਸਰ ਨਹੀਂ ਪਾਂਦਾ। ਆਰਗੂਮੈਂਟ ਇੱਕ NaN (ਸੰਖਿਆ ਨਹੀਂ) " +"ਜਾਂ ਧਨਾਤਮਕ/ਰਿਣਾਤਮਕ ਅਨੰਤਤਾ ਦਰਸਾਉਣ ਵਾਲੀ ਸਟ੍ਰਿੰਗ ਵੀ ਹੋ ਸਕਦੀ ਹੈ। ਹੋਰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ, ਅੱਗੇ ਅਤੇ " +"ਪਿੱਛੇ ਦੀਆਂ ਖਾਲੀ ਥਾਂਵਾਂ ਹਟਾਉਣ ਤੋਂ ਬਾਅਦ ਇਨਪੁੱਟ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਵਿਆਕਰਣ " +"ਦੇ :token:`~float:floatvalue` ਨਿਯਮ ਦਾ ਪਾਲਣ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ:" + +msgid "" +"Case is not significant, so, for example, \"inf\", \"Inf\", \"INFINITY\", " +"and \"iNfINity\" are all acceptable spellings for positive infinity." +msgstr "" +"ਅੱਖਰਾਂ ਦਾ ਵੱਡਾ ਜਾਂ ਛੋਟਾ ਹੋਣਾ ਮਹੱਤਵਪੂਰਨ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ਉਦਾਹਰਨ ਵਜੋਂ \"inf\", \"Inf\", " +"\"INFINITY\" ਅਤੇ \"iNfINity\" ਸਭ positive infinity ਲਈ ਸਵੀਕਾਰਯੋਗ ਹਨ।" + +msgid "" +"Otherwise, if the argument is an integer or a floating-point number, a " +"floating-point number with the same value (within Python's floating-point " +"precision) is returned. If the argument is outside the range of a Python " +"float, an :exc:`OverflowError` will be raised." +msgstr "" +"ਨਹੀਂ ਤਾਂ, ਜੇ ਆਰਗੂਮੈਂਟ ਇੱਕ ਪੂਰਨ ਅੰਕ ਜਾਂ floating-point ਸੰਖਿਆ ਹੈ, ਤਾਂ ਉਸੇ ਮੁੱਲ ਵਾਲੀ floating-" +"point ਸੰਖਿਆ (Python ਦੀ floating-point ਸ਼ੁੱਧਤਾ ਦੇ ਅੰਦਰ) ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ " +"Python float ਦੀ ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਹੋਵੇ, ਤਾਂ :exc:`OverflowError` ਉਠਾਈ ਜਾਵੇਗੀ।" + +msgid "" +"For a general Python object ``x``, ``float(x)`` delegates to " +"``x.__float__()``. If :meth:`~object.__float__` is not defined then it " +"falls back to :meth:`~object.__index__`." +msgstr "" +"ਆਮ Python ਆਬਜੈਕਟ ``x`` ਲਈ, ``float(x)`` ``x.__float__()`` ਨੂੰ ਸੌਂਪਿਆ ਜਾਂਦਾ ਹੈ। " +"ਜੇ :meth:`~object.__float__` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਹ :meth:`~object.__index__` " +"ਉੱਤੇ ਵਾਪਸ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"See also :meth:`float.from_number` which only accepts a numeric argument." +msgstr ":meth:`float.from_number` ਵੀ ਵੇਖੋ, ਜੋ ਕੇਵਲ ਇੱਕ ਸੰਖਿਆਤਮਕ ਆਰਗੂਮੈਂਟ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ।" + +msgid "If no argument is given, ``0.0`` is returned." +msgstr "ਜੇ ਕੋਈ ਆਰਗੂਮੈਂਟ ਨਾ ਦਿੱਤਾ ਜਾਵੇ, ਤਾਂ ``0.0`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "The float type is described in :ref:`typesnumeric`." +msgstr "float ਕਿਸਮ ਦਾ ਵੇਰਵਾ :ref:`typesnumeric` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"Falls back to :meth:`~object.__index__` if :meth:`~object.__float__` is not " +"defined." +msgstr "" +"ਜੇ :meth:`~object.__float__` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੈ, ਤਾਂ :meth:`~object.__index__` ਉੱਤੇ " +"ਵਾਪਸ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Convert a *value* to a \"formatted\" representation, as controlled by " +"*format_spec*. The interpretation of *format_spec* will depend on the type " +"of the *value* argument; however, there is a standard formatting syntax that " +"is used by most built-in types: :ref:`formatspec`." +msgstr "" +"*value* ਨੂੰ *format_spec* ਦੁਆਰਾ ਨਿਯੰਤਰਿਤ ਇੱਕ \"ਫਾਰਮੈਟ ਕੀਤੀ\" ਪੇਸ਼ਕਾਰੀ ਵਿੱਚ ਬਦਲੋ। " +"*format_spec* ਦੀ ਵਿਆਖਿਆ *value* ਦੇ ਪ੍ਰਕਾਰ ਉੱਤੇ ਨਿਰਭਰ ਕਰੇਗੀ; ਹਾਲਾਂਕਿ, ਇੱਕ ਮਿਆਰੀ " +"ਫਾਰਮੈਟਿੰਗ ਸੰਟੈਕਸ ਹੈ ਜੋ ਜ਼ਿਆਦਾਤਰ ਬਿਲਟ-ਇਨ ਕਿਸਮਾਂ ਵੱਲੋਂ ਵਰਤੀ ਜਾਂਦੀ ਹੈ: :ref:`formatspec`।" + +msgid "" +"The default *format_spec* is an empty string which usually gives the same " +"effect as calling :func:`str(value) `." +msgstr "" +"ਮੂਲ *format_spec* ਇੱਕ ਖਾਲੀ ਸਟ੍ਰਿੰਗ ਹੈ ਜੋ ਆਮ ਤੌਰ 'ਤੇ :func:`str(value) ` ਨੂੰ ਕਾਲ " +"ਕਰਨ ਦੇ ਬਰਾਬਰ ਨਤੀਜਾ ਦਿੰਦੀ ਹੈ।" + +msgid "" +"A call to ``format(value, format_spec)`` is translated to " +"``type(value).__format__(value, format_spec)`` which bypasses the instance " +"dictionary when searching for the value's :meth:`~object.__format__` method. " +"A :exc:`TypeError` exception is raised if the method search " +"reaches :mod:`object` and the *format_spec* is non-empty, or if either the " +"*format_spec* or the return value are not strings." +msgstr "" +"``format(value, format_spec)`` ਕਾਲ ਨੂੰ ``type(value).__format__(value, " +"format_spec)`` ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ਜੋ ਮੁੱਲ ਦੀ :meth:`~object.__format__` ਵਿਧੀ ਦੀ " +"ਖੋਜ ਕਰਦੇ ਸਮੇਂ instance dictionary ਨੂੰ ਬਾਈਪਾਸ ਕਰਦਾ ਹੈ। ਜੇ ਵਿਧੀ ਖੋਜ :mod:`object` ਤੱਕ " +"ਪਹੁੰਚ ਜਾਵੇ ਅਤੇ *format_spec* ਖਾਲੀ ਨਾ ਹੋਵੇ, ਜਾਂ *format_spec* ਜਾਂ ਵਾਪਸੀ ਮੁੱਲ ਵਿੱਚੋਂ ਕੋਈ ਵੀ " +"ਸਟ੍ਰਿੰਗ ਨਾ ਹੋਵੇ, ਤਾਂ :exc:`TypeError` ਉਠਾਈ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"``object().__format__(format_spec)`` raises :exc:`TypeError` if " +"*format_spec* is not an empty string." +msgstr "" +"ਜੇ *format_spec* ਖਾਲੀ ਸਟ੍ਰਿੰਗ ਨਹੀਂ ਹੈ, ਤਾਂ " +"``object().__format__(format_spec)`` :exc:`TypeError` ਉਠਾਉਂਦਾ ਹੈ।" + +msgid "" +"Create a new frozen dictionary. The :class:`frozendict` object is a built-" +"in class. See also :ref:`typesmapping` for documentation about this class." +msgstr "" +"ਇੱਕ ਨਵੀਂ frozen dictionary ਬਣਾਓ। :class:`frozendict` object ਇੱਕ built-in class " +"ਹੈ। ਇਸ class ਬਾਰੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਲਈ :ref:`typesmapping` ਵੀ ਵੇਖੋ।" + +msgid "" +"For other containers see the built-" +"in :class:`dict`, :class:`list`, :class:`set`, and :class:`tuple` classes, " +"as well as the :mod:`collections` module." +msgstr "" +"ਹੋਰ ਕੰਟੇਨਰਾਂ ਲਈ ਬਿਲਟ-" +"ਇਨ :class:`dict`, :class:`list`, :class:`set`, :class:`tuple` ਕਲਾਸਾਂ " +"ਅਤੇ :mod:`collections` ਮੋਡੀਊਲ ਵੇਖੋ।" + +msgid "" +"Return a new :class:`frozenset` object, optionally with elements taken from " +"*iterable*. :class:`frozenset` is a built-in class. See also :ref:`types-" +"set` for documentation about this class." +msgstr "" +"*iterable* ਤੋਂ ਲਏ ਗਏ ਤੱਤਾਂ ਨਾਲ, ਜਾਂ ਬਿਨਾਂ ਉਹਨਾਂ ਦੇ, ਇੱਕ ਨਵਾਂ :class:`frozenset` object " +"ਵਾਪਸ ਕਰੋ। :class:`frozenset` ਇੱਕ built-in class ਹੈ। ਇਸ class ਬਾਰੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ " +"ਲਈ :ref:`types-set` ਵੀ ਵੇਖੋ।" + +msgid "" +"For other containers see the built-" +"in :class:`set`, :class:`list`, :class:`tuple`, and :class:`dict` classes, " +"as well as the :mod:`collections` module." +msgstr "" +"ਹੋਰ ਕੰਟੇਨਰਾਂ ਲਈ ਬਿਲਟ-" +"ਇਨ :class:`set`, :class:`list`, :class:`tuple`, :class:`dict` ਕਲਾਸਾਂ " +"ਅਤੇ :mod:`collections` ਮੋਡੀਊਲ ਵੇਖੋ।" + +msgid "" +"Return the value of the named attribute of *object*. *name* must be a " +"string. If the string is the name of one of the object's attributes, the " +"result is the value of that attribute. For example, ``getattr(x, " +"'foobar')`` is equivalent to ``x.foobar``. If the named attribute does not " +"exist, *default* is returned if provided, otherwise :exc:`AttributeError` is " +"raised. *name* need not be a Python identifier (see :func:`setattr`)." +msgstr "" +"*object* ਦੇ ਦਿੱਤੇ ਗਏ ਨਾਮ ਵਾਲੇ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਮੁੱਲ ਵਾਪਸ ਕਰੋ। *name* ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੋਣਾ ਚਾਹੀਦਾ " +"ਹੈ। ਜੇ ਸਟ੍ਰਿੰਗ ਆਬਜੈਕਟ ਦੇ ਕਿਸੇ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਨਾਮ ਹੈ, ਤਾਂ ਨਤੀਜਾ ਉਸ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਮੁੱਲ ਹੋਵੇਗਾ। " +"ਉਦਾਹਰਨ ਲਈ, ``getattr(x, 'foobar')`` ਦਾ ਅਰਥ ``x.foobar`` ਦੇ ਬਰਾਬਰ ਹੈ। ਜੇ ਦਿੱਤਾ " +"ਐਟ੍ਰਿਬਿਊਟ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਤਾਂ *default* ਦਿੱਤਾ ਹੋਣ 'ਤੇ ਉਹ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਨਹੀਂ " +"ਤਾਂ :exc:`AttributeError` ਉਠਾਈ ਜਾਂਦੀ ਹੈ। *name* ਦਾ Python identifier ਹੋਣਾ ਲਾਜ਼ਮੀ " +"ਨਹੀਂ ਹੈ (ਵੇਖੋ :func:`setattr`)।" + +msgid "" +"Since :ref:`private name mangling ` happens at " +"compilation time, one must manually mangle a private attribute's (attributes " +"with two leading underscores) name in order to retrieve it " +"with :func:`getattr`." +msgstr "" +"ਕਿਉਂਕਿ :ref:`private name mangling ` ਕੰਪਾਈਲ ਸਮੇਂ ਹੁੰਦੀ ਹੈ, " +"ਇਸ ਲਈ ਕਿਸੇ private ਐਟ੍ਰਿਬਿਊਟ (ਦੋ ਅਗਲੇ underscore ਵਾਲੇ ਐਟ੍ਰਿਬਿਊਟ) ਨੂੰ :func:`getattr` " +"ਨਾਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਉਸਦਾ ਨਾਮ ਹੱਥੋਂ ਮੰਗਲ ਕਰਨਾ ਪੈਂਦਾ ਹੈ।" + +msgid "" +"Return the dictionary implementing the current module namespace. For code " +"within functions, this is set when the function is defined and remains the " +"same regardless of where the function is called." +msgstr "" +"ਮੌਜੂਦਾ ਮੋਡੀਊਲ namespace ਨੂੰ ਲਾਗੂ ਕਰਨ ਵਾਲੀ dictionary ਵਾਪਸ ਕਰੋ। ਫੰਕਸ਼ਨਾਂ ਦੇ ਅੰਦਰਲੇ ਕੋਡ ਲਈ, " +"ਇਹ ਫੰਕਸ਼ਨ ਦੀ ਪਰਿਭਾਸ਼ਾ ਸਮੇਂ ਸੈੱਟ ਹੁੰਦੀ ਹੈ ਅਤੇ ਫੰਕਸ਼ਨ ਨੂੰ ਕਿਤੇ ਵੀ ਕਾਲ ਕੀਤਾ ਜਾਵੇ, ਇਹ ਇੱਕੋ ਹੀ ਰਹਿੰਦੀ " +"ਹੈ।" + +msgid "" +"The arguments are an object and a string. The result is ``True`` if the " +"string is the name of one of the object's attributes, ``False`` if not. " +"(This is implemented by calling ``getattr(object, name)`` and seeing whether " +"it raises an :exc:`AttributeError` or not.)" +msgstr "" +"ਆਰਗੂਮੈਂਟ ਇੱਕ ਆਬਜੈਕਟ ਅਤੇ ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੁੰਦੇ ਹਨ। ਜੇ ਸਟ੍ਰਿੰਗ ਆਬਜੈਕਟ ਦੇ ਕਿਸੇ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਨਾਮ ਹੈ, ਤਾਂ " +"ਨਤੀਜਾ ``True`` ਹੁੰਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ ``False``। (ਇਹ ``getattr(object, name)`` ਨੂੰ ਕਾਲ " +"ਕਰਕੇ ਅਤੇ ਇਹ ਦੇਖ ਕੇ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਕੀ ਉਹ :exc:`AttributeError` ਉਠਾਉਂਦਾ ਹੈ ਜਾਂ " +"ਨਹੀਂ।)" + +msgid "" +"Return the hash value of the object (if it has one). Hash values are " +"integers. They are used to quickly compare dictionary keys during a " +"dictionary lookup. Numeric values that compare equal have the same hash " +"value (even if they are of different types, as is the case for 1 and 1.0)." +msgstr "" +"ਆਬਜੈਕਟ ਦਾ hash ਮੁੱਲ ਵਾਪਸ ਕਰੋ (ਜੇ ਇਸਦਾ ਕੋਈ hash ਮੁੱਲ ਹੈ)। Hash ਮੁੱਲ ਪੂਰਨ ਅੰਕ ਹੁੰਦੇ ਹਨ। ਇਹ " +"dictionary lookup ਦੌਰਾਨ keys ਦੀ ਤੇਜ਼ ਤੁਲਨਾ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਜੋ ਸੰਖਿਆਤਮਕ ਮੁੱਲ ਇੱਕੋ ਜਿਹੇ ਮੰਨੇ " +"ਜਾਂਦੇ ਹਨ, ਉਨ੍ਹਾਂ ਦਾ hash ਮੁੱਲ ਵੀ ਇੱਕੋ ਹੁੰਦਾ ਹੈ (ਭਾਵੇਂ ਉਹ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ ਹੋਣ, ਜਿਵੇਂ 1 ਅਤੇ 1.0)।" + +msgid "" +"For objects with custom :meth:`~object.__hash__` methods, note " +"that :func:`hash` truncates the return value based on the bit width of the " +"host machine." +msgstr "" +"ਜਿਨ੍ਹਾਂ ਆਬਜੈਕਟਾਂ ਵਿੱਚ custom :meth:`~object.__hash__` ਵਿਧੀਆਂ ਹਨ, ਉਨ੍ਹਾਂ ਲਈ ਧਿਆਨ ਦਿਓ " +"ਕਿ :func:`hash` ਵਾਪਸੀ ਮੁੱਲ ਨੂੰ host ਮਸ਼ੀਨ ਦੀ bit width ਦੇ ਅਧਾਰ 'ਤੇ ਕੱਟ ਦਿੰਦਾ ਹੈ।" + +msgid "" +"Invoke the built-in help system. (This function is intended for interactive " +"use.) If no argument is given, the interactive help system starts on the " +"interpreter console. If the argument is a string, then the string is looked " +"up as the name of a module, function, class, method, keyword, or " +"documentation topic, and a help page is printed on the console. If the " +"argument is any other kind of object, a help page on the object is generated." +msgstr "" +"ਬਿਲਟ-ਇਨ help ਸਿਸਟਮ ਨੂੰ ਚਲਾਓ। (ਇਹ ਫੰਕਸ਼ਨ ਇੰਟਰਐਕਟਿਵ ਵਰਤੋਂ ਲਈ ਬਣਾਇਆ ਗਿਆ ਹੈ।) ਜੇ ਕੋਈ ਆਰਗੂਮੈਂਟ " +"ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ, ਤਾਂ interpreter console ਉੱਤੇ interactive help system ਸ਼ੁਰੂ ਹੋ ਜਾਂਦਾ " +"ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ, ਤਾਂ ਉਸਨੂੰ module, function, class, method, keyword ਜਾਂ " +"documentation topic ਦੇ ਨਾਮ ਵਜੋਂ ਲੱਭਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ console ਉੱਤੇ ਇੱਕ help page ਦਿਖਾਇਆ " +"ਜਾਂਦਾ ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ ਕਿਸੇ ਹੋਰ ਕਿਸਮ ਦਾ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਉਸ ਆਬਜੈਕਟ ਲਈ help page ਤਿਆਰ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Note that if a slash(/) appears in the parameter list of a function when " +"invoking :func:`help`, it means that the parameters prior to the slash are " +"positional-only. For more info, see :ref:`the FAQ entry on positional-only " +"parameters `." +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਜਦੋਂ :func:`help` ਵਰਤਦੇ ਸਮੇਂ ਕਿਸੇ ਫੰਕਸ਼ਨ ਦੀ parameter ਸੂਚੀ ਵਿੱਚ slash (/) " +"ਦਿਖਾਈ ਦੇਵੇ, ਤਾਂ ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ slash ਤੋਂ ਪਹਿਲਾਂ ਵਾਲੇ parameters ਸਿਰਫ positional ਹਨ। " +"ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`the FAQ entry on positional-only parameters ` ਵੇਖੋ।" + +msgid "" +"This function is added to the built-in namespace by the :mod:`site` module." +msgstr "ਇਹ ਫੰਕਸ਼ਨ :mod:`site` ਮੋਡੀਊਲ ਦੁਆਰਾ built-in namespace ਵਿੱਚ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Changes to :mod:`pydoc` and :mod:`inspect` mean that the reported signatures " +"for callables are now more comprehensive and consistent." +msgstr "" +":mod:`pydoc` ਅਤੇ :mod:`inspect` ਵਿੱਚ ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ ਕਾਰਨ callables ਲਈ ਦਿਖਾਏ ਜਾਣ " +"ਵਾਲੇ signatures ਹੁਣ ਹੋਰ ਵਿਸਤ੍ਰਿਤ ਅਤੇ ਇੱਕਸਾਰ ਹਨ।" + +msgid "" +"Convert an integer number to a lowercase hexadecimal string prefixed with " +"\"0x\". If *integer* is not a Python :class:`int` object, it has to define " +"an :meth:`~object.__index__` method that returns an integer. Some examples:" +msgstr "" +"ਇੱਕ ਪੂਰਨ ਅੰਕ ਨੂੰ ''0x'' ਪ੍ਰੀਫਿਕਸ ਵਾਲੀ lowercase hexadecimal ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਬਦਲੋ। ਜੇ " +"*integer* ਇੱਕ Python :class:`int` ਆਬਜੈਕਟ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸ ਵਿੱਚ " +"ਅਜਿਹੀ :meth:`~object.__index__` ਵਿਧੀ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਜੋ ਇੱਕ ਪੂਰਨ ਅੰਕ ਵਾਪਸ ਕਰੇ। ਕੁਝ " +"ਉਦਾਹਰਨਾਂ:" + +msgid "" +"If you want to convert an integer number to an uppercase or lower " +"hexadecimal string with prefix or not, you can use either of the following " +"ways:" +msgstr "" +"ਜੇ ਤੁਸੀਂ ਕਿਸੇ ਪੂਰਨ ਅੰਕ ਨੂੰ ਪ੍ਰੀਫਿਕਸ ਸਮੇਤ ਜਾਂ ਬਿਨਾਂ ਪ੍ਰੀਫਿਕਸ ਦੇ uppercase ਜਾਂ lowercase " +"hexadecimal ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਬਦਲਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਕਿਸੇ ਵੀ ਤਰੀਕੇ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ " +"ਹੋ:" + +msgid "" +"See also :func:`int` for converting a hexadecimal string to an integer using " +"a base of 16." +msgstr "" +"hexadecimal ਸਟ੍ਰਿੰਗ ਨੂੰ base 16 ਦੀ ਵਰਤੋਂ ਨਾਲ ਪੂਰਨ ਅੰਕ ਵਿੱਚ ਬਦਲਣ ਲਈ :func:`int` ਵੀ ਵੇਖੋ।" + +msgid "" +"To obtain a hexadecimal string representation for a float, use " +"the :meth:`float.hex` method." +msgstr "" +"ਕਿਸੇ float ਦੀ hexadecimal ਸਟ੍ਰਿੰਗ ਨੁਮਾਇੰਦਗੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ :meth:`float.hex` ਵਿਧੀ " +"ਦੀ ਵਰਤੋਂ ਕਰੋ।" + +msgid "" +"Return the \"identity\" of an object. This is an integer which is " +"guaranteed to be unique and constant for this object during its lifetime. " +"Two objects with non-overlapping lifetimes may have the same :func:`id` " +"value." +msgstr "" +"ਕਿਸੇ ਆਬਜੈਕਟ ਦੀ \"identity\" ਵਾਪਸ ਕਰੋ। ਇਹ ਇੱਕ ਪੂਰਨ ਅੰਕ ਹੁੰਦਾ ਹੈ ਜੋ ਆਬਜੈਕਟ ਦੀ ਪੂਰੀ ਉਮਰ " +"ਦੌਰਾਨ ਵਿਲੱਖਣ ਅਤੇ ਅਪਰਿਵਰਤਿਤ ਹੋਣ ਦੀ ਗਾਰੰਟੀ ਰੱਖਦਾ ਹੈ। ਦੋ ਆਬਜੈਕਟ ਜਿਨ੍ਹਾਂ ਦੀਆਂ lifetimes ਆਪਸ " +"ਵਿੱਚ ਨਹੀਂ ਮਿਲਦੀਆਂ, ਉਹਨਾਂ ਦਾ :func:`id` ਮੁੱਲ ਇੱਕੋ ਜਿਹਾ ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "This is the address of the object in memory." +msgstr "ਇਹ memory ਵਿੱਚ ਆਬਜੈਕਟ ਦਾ ਪਤਾ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Raises an :ref:`auditing event ` ``builtins.id`` with argument " +"``id``." +msgstr "" +"``id`` ਆਰਗੂਮੈਂਟ ਨਾਲ :ref:`auditing event ` ``builtins.id`` ਉਠਾਉਂਦਾ ਹੈ।" + +msgid "" +"If the *prompt* argument is present, it is written to standard output " +"without a trailing newline. The function then reads a line from input, " +"converts it to a string (stripping a trailing newline), and returns that. " +"When EOF is read, :exc:`EOFError` is raised. Example::" +msgstr "" +"ਜੇ *prompt* ਆਰਗੂਮੈਂਟ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇਸਨੂੰ standard output ਉੱਤੇ ਅੰਤ ਵਿੱਚ newline ਤੋਂ " +"ਬਿਨਾਂ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ। ਫਿਰ ਫੰਕਸ਼ਨ input ਵਿੱਚੋਂ ਇੱਕ ਲਾਈਨ ਪੜ੍ਹਦਾ ਹੈ, ਇਸਨੂੰ ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਬਦਲਦਾ ਹੈ " +"(ਅੰਤਲੀ newline ਹਟਾ ਕੇ) ਅਤੇ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜਦੋਂ EOF ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ :exc:`EOFError` " +"ਉਠਾਈ ਜਾਂਦੀ ਹੈ। ਉਦਾਹਰਨ::" + +msgid "" +">>> s = input('--> ')\n" +"--> Monty Python's Flying Circus\n" +">>> s\n" +"\"Monty Python's Flying Circus\"" +msgstr "" +">>> s = input('--> ')\n" +"--> Monty Python's Flying Circus\n" +">>> s\n" +"\"Monty Python's Flying Circus\"" + +msgid "" +"If the :mod:`readline` module was loaded, then :func:`input` will use it to " +"provide elaborate line editing and history features." +msgstr "" +"ਜੇ :mod:`readline` ਮੋਡੀਊਲ ਲੋਡ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ :func:`input` ਲਾਈਨ ਸੰਪਾਦਨ ਅਤੇ " +"history ਦੀਆਂ ਉੱਨਤ ਸੁਵਿਧਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਇਸਦੀ ਵਰਤੋਂ ਕਰੇਗਾ।" + +msgid "" +"Raises an :ref:`auditing event ` ``builtins.input`` with argument " +"``prompt`` before reading input" +msgstr "" +"input ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ ``prompt`` ਆਰਗੂਮੈਂਟ ਨਾਲ :ref:`auditing event ` " +"``builtins.input`` ਉਠਾਉਂਦਾ ਹੈ" + +msgid "" +"Raises an :ref:`auditing event ` ``builtins.input/result`` with " +"the result after successfully reading input." +msgstr "" +"input ਸਫਲਤਾਪੂਰਵਕ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ ਨਤੀਜੇ ਸਮੇਤ :ref:`auditing event ` " +"``builtins.input/result`` ਉਠਾਉਂਦਾ ਹੈ।" + +msgid "" +"Return an integer object constructed from a number or a string, or return " +"``0`` if no arguments are given." +msgstr "" +"ਕਿਸੇ ਸੰਖਿਆ ਜਾਂ ਸਟ੍ਰਿੰਗ ਤੋਂ ਬਣਾਇਆ ਗਿਆ ਇੱਕ ਪੂਰਨ ਅੰਕ ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੋ, ਜਾਂ ਜੇ ਕੋਈ ਆਰਗੂਮੈਂਟ ਨਾ ਦਿੱਤਾ " +"ਗਿਆ ਹੋਵੇ ਤਾਂ ``0`` ਵਾਪਸ ਕਰੋ।" + +msgid "" +">>> int(123.45)\n" +"123\n" +">>> int('123')\n" +"123\n" +">>> int(' -12_345\\n')\n" +"-12345\n" +">>> int('FACE', 16)\n" +"64206\n" +">>> int('0xface', 0)\n" +"64206\n" +">>> int('01110011', base=2)\n" +"115" +msgstr "" +">>> int(123.45)\n" +"123\n" +">>> int('123')\n" +"123\n" +">>> int(' -12_345\\n')\n" +"-12345\n" +">>> int('FACE', 16)\n" +"64206\n" +">>> int('0xface', 0)\n" +"64206\n" +">>> int('01110011', base=2)\n" +"115" + +msgid "" +"If the argument defines :meth:`~object.__int__`, ``int(x)`` returns " +"``x.__int__()``. If the argument defines :meth:`~object.__index__`, it " +"returns ``x.__index__()``. For floating-point numbers, this truncates " +"towards zero." +msgstr "" +"ਜੇ ਆਰਗੂਮੈਂਟ :meth:`~object.__int__` ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ, ਤਾਂ ``int(x)`` " +"``x.__int__()`` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ ਆਰਗੂਮੈਂਟ :meth:`~object.__index__` ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ " +"ਹੈ, ਤਾਂ ਇਹ ``x.__index__()`` ਵਾਪਸ ਕਰਦਾ ਹੈ। Floating-point ਸੰਖਿਆਵਾਂ ਲਈ, ਇਹ ਦਸ਼ਮਲਵ " +"ਭਾਗ ਕੱਟ ਕੇ ਸਿਫ਼ਰ ਵੱਲ ਲੈ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"If the argument is not a number or if *base* is given, then it must be a " +"string, :class:`bytes`, or :class:`bytearray` instance representing an " +"integer in radix *base*. Optionally, the string can be preceded by ``+`` or " +"``-`` (with no space in between), have leading zeros, be surrounded by " +"whitespace, and have single underscores interspersed between digits." +msgstr "" +"ਜੇ ਆਰਗੂਮੈਂਟ ਕੋਈ ਸੰਖਿਆ ਨਹੀਂ ਹੈ ਜਾਂ *base* ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਹ ਇੱਕ ਸਟ੍ਰਿੰਗ, :class:`bytes`, " +"ਜਾਂ :class:`bytearray` ਇੰਸਟੈਂਸ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ radix *base* ਵਿੱਚ ਇੱਕ ਪੂਰਨ ਅੰਕ ਨੂੰ " +"ਦਰਸਾਉਂਦਾ ਹੋਵੇ। ਚੋਣਵਾਂ ਤੌਰ 'ਤੇ, ਸਟ੍ਰਿੰਗ ਦੇ ਅੱਗੇ ``+`` ਜਾਂ ``-`` ਹੋ ਸਕਦਾ ਹੈ (ਵਿਚਕਾਰ ਕੋਈ ਖਾਲੀ " +"ਥਾਂ ਨਹੀਂ), ਸ਼ੁਰੂਆਤੀ ਸਿਫ਼ਰ ਹੋ ਸਕਦੇ ਹਨ, whitespace ਨਾਲ ਘਿਰੀ ਹੋ ਸਕਦੀ ਹੈ, ਅਤੇ ਅੰਕਾਂ ਦੇ ਵਿਚਕਾਰ " +"ਇਕੱਲੇ underscore ਹੋ ਸਕਦੇ ਹਨ।" + +msgid "" +"A base-n integer string contains digits, each representing a value from 0 to " +"n-1. The values 0--9 can be represented by any Unicode decimal digit. The " +"values 10--35 can be represented by ``a`` to ``z`` (or ``A`` to ``Z``). The " +"default *base* is 10. The allowed bases are 0 and 2--36. Base-2, -8, and -16 " +"strings can be optionally prefixed with ``0b``/``0B``, ``0o``/``0O``, or " +"``0x``/``0X``, as with integer literals in code. For base 0, the string is " +"interpreted in a similar way to an :ref:`integer literal in code " +"`, in that the actual base is 2, 8, 10, or 16 as determined by the " +"prefix. Base 0 also disallows leading zeros: ``int('010', 0)`` is not legal, " +"while ``int('010')`` and ``int('010', 8)`` are." +msgstr "" +"base-n ਪੂਰਨ ਅੰਕ ਸਤਰ ਵਿੱਚ ਅੰਕ ਹੁੰਦੇ ਹਨ, ਜਿਨ੍ਹਾਂ ਵਿੱਚੋਂ ਹਰ ਇੱਕ 0 ਤੋਂ n-1 ਤੱਕ ਦੀ ਇੱਕ ਕੀਮਤ " +"ਦਰਸਾਉਂਦਾ ਹੈ। 0--9 ਵਾਲੀਆਂ ਕੀਮਤਾਂ ਕਿਸੇ ਵੀ Unicode decimal digit ਨਾਲ ਦਰਸਾਈਆਂ ਜਾ ਸਕਦੀਆਂ " +"ਹਨ। 10--35 ਵਾਲੀਆਂ ਕੀਮਤਾਂ ਨੂੰ ``a`` ਤੋਂ ``z`` (ਜਾਂ ``A`` ਤੋਂ ``Z``) ਨਾਲ ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ " +"ਹੈ। ਡਿਫਾਲਟ *base* 10 ਹੈ। ਮਨਜ਼ੂਰਸ਼ੁਦਾ bases 0 ਅਤੇ 2--36 ਹਨ। Base-2, -8 ਅਤੇ -16 ਸਤਰਾਂ ਨੂੰ " +"ਕੋਡ ਵਿੱਚ integer literals ਦੀ ਤਰ੍ਹਾਂ ਚੋਣਵਾਂ ਤੌਰ 'ਤੇ ``0b``/``0B``, ``0o``/``0O`` ਜਾਂ " +"``0x``/``0X`` ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Base 0 ਲਈ, ਸਤਰ ਦੀ ਵਿਆਖਿਆ :ref:`ਕੋਡ ਵਿੱਚ " +"integer literal ` ਵਾਂਗ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿੱਥੇ ਅਸਲ base prefix ਦੇ ਅਧਾਰ 'ਤੇ " +"2, 8, 10 ਜਾਂ 16 ਹੁੰਦਾ ਹੈ। Base 0 ਸ਼ੁਰੂਆਤੀ zeros ਨੂੰ ਵੀ ਮਨਜ਼ੂਰ ਨਹੀਂ ਕਰਦਾ: ``int('010', " +"0)`` ਵੈਧ ਨਹੀਂ ਹੈ, ਜਦਕਿ ``int('010')`` ਅਤੇ ``int('010', 8)`` ਵੈਧ ਹਨ।" + +msgid "The integer type is described in :ref:`typesnumeric`." +msgstr "ਪੂਰਨ ਅੰਕ ਕਿਸਮ ਦਾ ਵੇਰਵਾ :ref:`typesnumeric` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"If *base* is not an instance of :class:`int` and the *base* object has " +"a :meth:`base.__index__ ` method, that method is called to " +"obtain an integer for the base. Previous versions used :meth:`base.__int__ " +"` instead of :meth:`base.__index__ `." +msgstr "" +"ਜੇ *base* :class:`int` ਦਾ ਇੰਸਟੈਂਸ ਨਹੀਂ ਹੈ ਅਤੇ *base* ਆਬਜੈਕਟ ਕੋਲ :meth:`base.__index__ " +"` ਮੈਥਡ ਹੈ, ਤਾਂ ਬੇਸ ਲਈ ਇਕ ਇੰਟਿਜਰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਉਹ ਮੈਥਡ ਕਾਲ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ। ਪਿਛਲੇ ਵਰਜਨਾਂ ਨੇ :meth:`base.__int__ ` ਦੀ " +"ਵਰਤੋਂ :meth:`base.__index__ ` ਦੀ ਥਾਂ ਕੀਤੀ ਸੀ।" + +msgid "The first parameter is now positional-only." +msgstr "ਪਹਿਲਾ parameter ਹੁਣ ਸਿਰਫ positional ਹੈ।" + +msgid "" +"Falls back to :meth:`~object.__index__` if :meth:`~object.__int__` is not " +"defined." +msgstr "" +"ਜੇ :meth:`~object.__int__` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੈ, ਤਾਂ :meth:`~object.__index__` ਦੀ " +"ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +":class:`int` string inputs and string representations can be limited to help " +"avoid denial of service attacks. A :exc:`ValueError` is raised when the " +"limit is exceeded while converting a string to an :class:`int` or when " +"converting an :class:`int` into a string would exceed the limit. See " +"the :ref:`integer string conversion length limitation ` " +"documentation." +msgstr "" +"ਸੇਵਾ-ਇਨਕਾਰ ਹਮਲਿਆਂ ਤੋਂ ਬਚਾਅ ਲਈ :class:`int` ਸਟ੍ਰਿੰਗ ਇਨਪੁੱਟਾਂ ਅਤੇ ਸਟ੍ਰਿੰਗ ਨੁਮਾਇੰਦਗੀਆਂ ਦੀ ਲੰਬਾਈ " +"ਸੀਮਿਤ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਜਦੋਂ ਕਿਸੇ ਸਟ੍ਰਿੰਗ ਨੂੰ :class:`int` ਵਿੱਚ ਬਦਲਦੇ ਸਮੇਂ ਜਾਂ " +"ਕਿਸੇ :class:`int` ਨੂੰ ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਬਦਲਦੇ ਸਮੇਂ ਇਹ ਸੀਮਾ ਪਾਰ ਹੋ ਜਾਵੇ, ਤਾਂ :exc:`ValueError` " +"ਉਠਾਈ ਜਾਂਦੀ ਹੈ। ਵੇਰਵਿਆਂ ਲਈ :ref:`integer string conversion length limitation " +"` ਵੇਖੋ।" + +msgid "" +":func:`int` no longer delegates to the :meth:`~object.__trunc__` method." +msgstr ":func:`int` ਹੁਣ :meth:`~object.__trunc__` ਵਿਧੀ ਨੂੰ delegate ਨਹੀਂ ਕਰਦਾ।" + +msgid "" +"Return ``True`` if the *object* argument is an instance of the *classinfo* " +"argument, or of a (direct, indirect, or :term:`virtual `) subclass thereof. If *object* is not an object of the given type, " +"the function always returns ``False``. If *classinfo* is a tuple of type " +"objects (or recursively, other such tuples) or a :ref:`types-union` of " +"multiple types, return ``True`` if *object* is an instance of any of the " +"types. If *classinfo* is not a type or tuple of types and such tuples, " +"a :exc:`TypeError` exception is raised. :exc:`TypeError` may not be raised " +"for an invalid type if an earlier check succeeds." +msgstr "" +"ਜੇ *object* ਆਰਗੂਮੈਂਟ *classinfo* ਆਰਗੂਮੈਂਟ ਦੀ ਕਿਸੇ ਇੰਸਟੈਂਸ ਜਾਂ ਇਸ ਦੀ (ਸਿੱਧੀ, ਅਸਿੱਧੀ " +"ਜਾਂ :term:`virtual `) ਉਪ-ਕਲਾਸ ਦੀ ਇੰਸਟੈਂਸ ਹੈ, ਤਾਂ ``True`` " +"ਵਾਪਸ ਕਰੋ। ਜੇ *object* ਦਿੱਤੇ ਗਏ ਕਿਸਮ ਦਾ ਆਬਜੈਕਟ ਨਹੀਂ ਹੈ, ਤਾਂ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ``False`` ਵਾਪਸ " +"ਕਰਦਾ ਹੈ। ਜੇ *classinfo* ਕਿਸਮ ਦੇ ਆਬਜੈਕਟਾਂ ਦਾ ਇੱਕ ਟੂਪਲ (ਜਾਂ ਪੁਨਰ-ਸੰਦਰਭ ਵਿੱਚ ਹੋਰ ਐਸੇ ਟੂਪਲ) ਜਾਂ " +"ਕਈ ਕਿਸਮਾਂ ਦਾ ਇੱਕ :ref:`types-union` ਹੈ, ਤਾਂ ਜੇ *object* ਕਿਸੇ ਵੀ ਕਿਸਮ ਦਾ ਇੰਸਟੈਂਸ ਹੈ, ਤਾਂ " +"``True`` ਵਾਪਸ ਕਰੋ। ਜੇ *classinfo* ਕਿਸੇ ਟਾਈਪ ਜਾਂ ਟਾਈਪਾਂ ਦੇ ਟਿਊਪਲ ਜਾਂ ਅਜਿਹੇ ਹੋਰ ਟਿਊਪਲ " +"ਨਹੀਂ ਹੈ, ਤਾਂ ਇੱਕ :exc:`TypeError` ਐਕਸੈਪਸ਼ਨ ਉਠਾਈ ਜਾਂਦੀ ਹੈ। ਜੇ ਪਹਿਲਾਂ ਕੀਤੀ ਜਾਂਚ ਸਫਲ ਰਹਿੰਦੀ " +"ਹੈ, ਤਾਂ ਗਲਤ ਟਾਈਪ ਲਈ :exc:`TypeError` ਨਹੀਂ ਉਠਾਈ ਜਾ ਸਕਦੀ।" + +msgid "*classinfo* can be a :ref:`types-union`." +msgstr "*classinfo* ਇੱਕ :ref:`types-union` ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"Return ``True`` if *cls* is a subclass (direct, indirect, or :term:`virtual " +"`) of *classinfo*. A class is considered a subclass of " +"itself. *classinfo* may be a tuple of class objects (or recursively, other " +"such tuples) or a :ref:`types-union`, in which case return ``True`` if *cls* " +"is a subclass of any entry in *classinfo*. In any other case, " +"a :exc:`TypeError` exception is raised." +msgstr "" +"ਜੇ *cls*, *classinfo* ਦੀ (ਸਿੱਧੀ, ਅਸਿੱਧੀ ਜਾਂ :term:`virtual `) subclass ਹੈ, ਤਾਂ ``True`` ਵਾਪਸ ਕਰੋ। ਇੱਕ class ਨੂੰ ਆਪਣੀ ਆਪ ਦੀ subclass ਵੀ " +"ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। *classinfo* class objects ਦਾ tuple (ਜਾਂ recursive ਤੌਰ 'ਤੇ ਅਜਿਹੇ ਹੋਰ " +"tuples) ਜਾਂ :ref:`types-union` ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ ਜੇ *cls*, *classinfo* " +"ਵਿੱਚ ਦਿੱਤੀ ਕਿਸੇ ਵੀ entry ਦੀ subclass ਹੈ, ਤਾਂ ``True`` ਵਾਪਸ ਕਰੋ। ਹੋਰ ਕਿਸੇ ਵੀ ਸਥਿਤੀ " +"ਵਿੱਚ :exc:`TypeError` exception ਉਠਾਈ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"Return an :term:`iterator` object. The first argument is interpreted very " +"differently depending on the presence of the second argument. Without a " +"second argument, the single argument must be a collection object which " +"supports the :term:`iterable` protocol (the :meth:`~object.__iter__` " +"method), or it must support the sequence protocol " +"(the :meth:`~object.__getitem__` method with integer arguments starting at " +"``0``). If it does not support either of those protocols, :exc:`TypeError` " +"is raised. If the second argument, *sentinel*, is given, then the first " +"argument must be a callable object. The iterator created in this case will " +"call *callable* with no arguments for each call to " +"its :meth:`~iterator.__next__` method; if the value returned is equal to " +"*sentinel*, :exc:`StopIteration` will be raised, otherwise the value will be " +"returned." +msgstr "" +"ਇੱਕ :term:`iterator` object ਵਾਪਸ ਕਰੋ। ਪਹਿਲੇ argument ਦੀ ਵਿਆਖਿਆ ਦੂਜੇ argument ਦੀ " +"ਮੌਜੂਦਗੀ ਦੇ ਅਨੁਸਾਰ ਵੱਖ-ਵੱਖ ਤਰੀਕੇ ਨਾਲ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਦੂਜੇ argument ਤੋਂ ਬਿਨਾਂ, ਇੱਕੋ argument ਕੋਈ " +"collection object ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ :term:`iterable` protocol " +"(:meth:`~object.__iter__` method) ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੋਵੇ, ਜਾਂ sequence protocol " +"(:meth:`~object.__getitem__` method ਜਿਸਦੇ integer arguments ``0`` ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹਨ) " +"ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੋਵੇ। ਜੇ ਇਹ ਦੋਨਾਂ ਵਿੱਚੋਂ ਕਿਸੇ ਦਾ ਵੀ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦਾ, ਤਾਂ :exc:`TypeError` " +"ਉਠਾਈ ਜਾਂਦੀ ਹੈ। ਜੇ ਦੂਜਾ argument *sentinel* ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਪਹਿਲਾ argument ਇੱਕ " +"callable object ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ ਬਣਿਆ iterator " +"ਆਪਣੀ :meth:`~iterator.__next__` method ਦੀ ਹਰ ਕਾਲ ਲਈ *callable* ਨੂੰ ਬਿਨਾਂ ਕਿਸੇ " +"argument ਦੇ ਕਾਲ ਕਰੇਗਾ; ਜੇ ਵਾਪਸ ਆਈ ਕੀਮਤ *sentinel* ਦੇ ਬਰਾਬਰ ਹੋਵੇ " +"ਤਾਂ :exc:`StopIteration` ਉਠਾਈ ਜਾਵੇਗੀ, ਨਹੀਂ ਤਾਂ ਉਹ ਕੀਮਤ ਵਾਪਸ ਕੀਤੀ ਜਾਵੇਗੀ।" + +msgid "See also :ref:`typeiter`." +msgstr ":ref:`typeiter` ਵੀ ਵੇਖੋ।" + +msgid "" +"One useful application of the second form of :func:`iter` is to build a " +"block-reader. For example, reading fixed-width blocks from a binary database " +"file until the end of file is reached::" +msgstr "" +":func:`iter` ਦੇ ਦੂਜੇ ਰੂਪ ਦੀ ਇੱਕ ਲਾਭਦਾਇਕ ਵਰਤੋਂ block-reader ਬਣਾਉਣਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਕਿਸੇ " +"binary ਡੇਟਾਬੇਸ ਫ਼ਾਈਲ ਵਿੱਚੋਂ ਨਿਰਧਾਰਤ ਚੌੜਾਈ ਵਾਲੇ block ਉਦੋਂ ਤੱਕ ਪੜ੍ਹਨਾ ਜਦੋਂ ਤੱਕ ਫ਼ਾਈਲ ਦਾ ਅੰਤ ਨਾ " +"ਆ ਜਾਵੇ::" + +msgid "" +"from functools import partial\n" +"with open('mydata.db', 'rb') as f:\n" +" for block in iter(partial(f.read, 64), b''):\n" +" process_block(block)" +msgstr "" +"from functools import partial\n" +"with open('mydata.db', 'rb') as f:\n" +" for block in iter(partial(f.read, 64), b''):\n" +" process_block(block)" + +msgid "" +"Return the length (the number of items) of an object. The argument may be a " +"sequence (such as a string, bytes, tuple, list, or range) or a collection " +"(such as a dictionary, set, or frozen set)." +msgstr "" +"ਕਿਸੇ object ਦੀ ਲੰਬਾਈ (items ਦੀ ਗਿਣਤੀ) ਵਾਪਸ ਕਰੋ। Argument ਕੋਈ sequence (ਜਿਵੇਂ " +"string, bytes, tuple, list ਜਾਂ range) ਜਾਂ ਕੋਈ collection (ਜਿਵੇਂ dictionary, set " +"ਜਾਂ frozen set) ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"``len`` raises :exc:`OverflowError` on lengths larger " +"than :data:`sys.maxsize`, such as :class:`range(2 ** 100) `." +msgstr "" +"ਜੇ ਲੰਬਾਈ :data:`sys.maxsize` ਤੋਂ ਵੱਡੀ ਹੋਵੇ, ਜਿਵੇਂ :class:`range(2 ** 100) `, " +"ਤਾਂ ``len`` :exc:`OverflowError` ਉਠਾਉਂਦਾ ਹੈ।" + +msgid "" +"Rather than being a function, :class:`list` is actually a mutable sequence " +"type, as documented in :ref:`typesseq-list` and :ref:`typesseq`." +msgstr "" +"ਫੰਕਸ਼ਨ ਹੋਣ ਦੀ ਬਜਾਇ, :class:`list` ਅਸਲ ਵਿੱਚ ਇੱਕ mutable sequence ਕਿਸਮ ਹੈ, " +"ਜਿਵੇਂ :ref:`typesseq-list` ਅਤੇ :ref:`typesseq` ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੈ।" + +msgid "" +"Return a mapping object representing the current local symbol table, with " +"variable names as the keys, and their currently bound references as the " +"values." +msgstr "" +"ਮੌਜੂਦਾ local symbol table ਨੂੰ ਦਰਸਾਉਣ ਵਾਲਾ mapping ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੋ, ਜਿਸ ਵਿੱਚ " +"variable ਨਾਮ keys ਵਜੋਂ ਅਤੇ ਉਹਨਾਂ ਦੇ ਮੌਜੂਦਾ bound references values ਵਜੋਂ ਹੁੰਦੇ ਹਨ।" + +msgid "" +"At module scope, as well as when using :func:`exec` or :func:`eval` with a " +"single namespace, this function returns the same namespace " +"as :func:`globals`." +msgstr "" +"ਮੋਡੀਊਲ ਸਕੋਪ ਵਿੱਚ, ਅਤੇ ਜਦੋਂ :func:`exec` ਜਾਂ :func:`eval` ਨੂੰ ਇੱਕੋ namespace ਨਾਲ ਵਰਤਿਆ " +"ਜਾਂਦਾ ਹੈ, ਇਹ ਫੰਕਸ਼ਨ :func:`globals` ਵਾਲਾ ਹੀ namespace ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"At class scope, it returns the namespace that will be passed to the " +"metaclass constructor." +msgstr "" +"ਕਲਾਸ ਸਕੋਪ ਵਿੱਚ, ਇਹ ਉਹ namespace ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੋ metaclass constructor ਨੂੰ ਦਿੱਤਾ " +"ਜਾਵੇਗਾ।" + +msgid "" +"When using ``exec()`` or ``eval()`` with separate local and global " +"arguments, it returns the local namespace passed in to the function call." +msgstr "" +"ਜਦੋਂ ``exec()`` ਜਾਂ ``eval()`` ਨੂੰ ਵੱਖਰੇ local ਅਤੇ global ਆਰਗੂਮੈਂਟਾਂ ਨਾਲ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, " +"ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ ਕਾਲ ਨੂੰ ਦਿੱਤਾ ਗਿਆ local namespace ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"In all of the above cases, each call to ``locals()`` in a given frame of " +"execution will return the *same* mapping object. Changes made through the " +"mapping object returned from ``locals()`` will be visible as assigned, " +"reassigned, or deleted local variables, and assigning, reassigning, or " +"deleting local variables will immediately affect the contents of the " +"returned mapping object." +msgstr "" +"ਉਪਰੋਕਤ ਸਾਰੀਆਂ ਸਥਿਤੀਆਂ ਵਿੱਚ, execution ਦੇ ਕਿਸੇ ਦਿੱਤੇ frame ਵਿੱਚ ``locals()`` ਦੀ ਹਰ ਕਾਲ " +"*ਉਹੀ* mapping ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੇਗੀ। ``locals()`` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ mapping ਆਬਜੈਕਟ ਰਾਹੀਂ " +"ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ assigned, reassigned ਜਾਂ deleted local variables ਵਜੋਂ ਦਿਖਾਈ " +"ਦੇਣਗੀਆਂ, ਅਤੇ local variables ਨੂੰ assign, reassign ਜਾਂ delete ਕਰਨ ਨਾਲ ਵਾਪਸ ਕੀਤੇ " +"mapping ਆਬਜੈਕਟ ਦੀ ਸਮੱਗਰੀ ਤੁਰੰਤ ਪ੍ਰਭਾਵਿਤ ਹੋਵੇਗੀ।" + +msgid "" +"In an :term:`optimized scope` (including functions, generators, and " +"coroutines), each call to ``locals()`` instead returns a fresh dictionary " +"containing the current bindings of the function's local variables and any " +"nonlocal cell references. In this case, name binding changes made via the " +"returned dict are *not* written back to the corresponding local variables or " +"nonlocal cell references, and assigning, reassigning, or deleting local " +"variables and nonlocal cell references does *not* affect the contents of " +"previously returned dictionaries." +msgstr "" +":term:`optimized scope` (ਜਿਸ ਵਿੱਚ functions, generators ਅਤੇ coroutines ਸ਼ਾਮਲ " +"ਹਨ) ਵਿੱਚ, ``locals()`` ਦੀ ਹਰ ਕਾਲ ਇੱਕ ਨਵੀਂ dictionary ਵਾਪਸ ਕਰਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਫੰਕਸ਼ਨ ਦੇ " +"local variables ਦੀਆਂ ਮੌਜੂਦਾ bindings ਅਤੇ ਕਿਸੇ ਵੀ nonlocal cell references ਦੀ " +"ਜਾਣਕਾਰੀ ਹੁੰਦੀ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਵਾਪਸ ਕੀਤੀ dict ਰਾਹੀਂ ਕੀਤੀਆਂ name binding ਤਬਦੀਲੀਆਂ " +"ਸੰਬੰਧਿਤ local variables ਜਾਂ nonlocal cell references ਵਿੱਚ ਵਾਪਸ ਨਹੀਂ ਲਿਖੀਆਂ ਜਾਂਦੀਆਂ, " +"ਅਤੇ local variables ਜਾਂ nonlocal cell references ਨੂੰ assign, reassign ਜਾਂ delete " +"ਕਰਨ ਨਾਲ ਪਹਿਲਾਂ ਵਾਪਸ ਕੀਤੀਆਂ dictionaries ਦੀ ਸਮੱਗਰੀ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਹੁੰਦੀ।" + +msgid "" +"Calling ``locals()`` as part of a comprehension in a function, generator, or " +"coroutine is equivalent to calling it in the containing scope, except that " +"the comprehension's initialised iteration variables will be included. In " +"other scopes, it behaves as if the comprehension were running as a nested " +"function." +msgstr "" +"ਕਿਸੇ function, generator ਜਾਂ coroutine ਵਿੱਚ comprehension ਦੇ ਹਿੱਸੇ ਵਜੋਂ ``locals()`` " +"ਨੂੰ ਕਾਲ ਕਰਨਾ ਉਸਨੂੰ enclosing scope ਵਿੱਚ ਕਾਲ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ, ਸਿਵਾਏ ਇਸਦੇ ਕਿ " +"comprehension ਦੇ initialized iteration variables ਵੀ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾਣਗੇ। ਹੋਰ scopes " +"ਵਿੱਚ, ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਵਰਤਾਓ ਕਰਦਾ ਹੈ ਜਿਵੇਂ comprehension ਇੱਕ nested function ਵਜੋਂ ਚੱਲ ਰਹੀ " +"ਹੋਵੇ।" + +msgid "" +"Calling ``locals()`` as part of a generator expression is equivalent to " +"calling it in a nested generator function." +msgstr "" +"generator expression ਦੇ ਹਿੱਸੇ ਵਜੋਂ ``locals()`` ਨੂੰ ਕਾਲ ਕਰਨਾ ਇਸਨੂੰ ਇੱਕ nested " +"generator function ਵਿੱਚ ਕਾਲ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ।" + +msgid "" +"The behaviour of ``locals()`` in a comprehension has been updated as " +"described in :pep:`709`." +msgstr "" +"ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ``locals()`` ਦੇ ਵਿਹਾਰ ਨੂੰ :pep:`709` ਵਿੱਚ ਦਿੱਤੇ ਵੇਰਵੇ ਅਨੁਸਾਰ ਅਪਡੇਟ ਕੀਤਾ " +"ਗਿਆ ਹੈ।" + +msgid "" +"As part of :pep:`667`, the semantics of mutating the mapping objects " +"returned from this function are now defined. The behavior " +"in :term:`optimized scopes ` is now as described above. " +"Aside from being defined, the behaviour in other scopes remains unchanged " +"from previous versions." +msgstr "" +":pep:`667` ਦੇ ਹਿੱਸੇ ਵਜੋਂ, ਇਸ ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ ਮੈਪਿੰਗ ਆਬਜੈਕਟਾਂ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰਨ ਦੇ ਨਿਯਮ " +"ਹੁਣ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਗਏ ਹਨ। :term:`optimized scopes ` " +"ਵਿੱਚ ਵਿਹਾਰ ਹੁਣ ਉੱਪਰ ਦਿੱਤੇ ਵੇਰਵੇ ਅਨੁਸਾਰ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ ਹੋਰ ਸਕੋਪਾਂ ਵਿੱਚ ਵਿਹਾਰ ਪਹਿਲਾਂ ਵਾਲੇ " +"ਸੰਸਕਰਣਾਂ ਵਾਂਗ ਹੀ ਰਹਿੰਦਾ ਹੈ।" + +msgid "" +"Return an iterator that applies *function* to every item of *iterable*, " +"yielding the results. If additional *iterables* arguments are passed, " +"*function* must take that many arguments and is applied to the items from " +"all iterables in parallel. With multiple iterables, the iterator stops when " +"the shortest iterable is :term:`exhausted`. If *strict* is ``True`` and one " +"of the iterables is exhausted before the others, a :exc:`ValueError` is " +"raised. For cases where the function inputs are already arranged into " +"argument tuples, see :func:`itertools.starmap`." +msgstr "" +"ਹਰੇਕ *iterable* ਦੀ ਹਰ ਆਈਟਮ 'ਤੇ *function* ਲਾਗੂ ਕਰਨ ਵਾਲਾ ਇੱਕ ਇਟਰੇਟਰ ਵਾਪਸ ਕਰਦਾ ਹੈ ਅਤੇ " +"ਨਤੀਜੇ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜੇ ਵਾਧੂ *iterables* ਆਰਗੂਮੈਂਟ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ *function* ਨੂੰ ਉੱਨੇ ਹੀ " +"ਆਰਗੂਮੈਂਟ ਲੈਣੇ ਚਾਹੀਦੇ ਹਨ ਅਤੇ ਸਾਰੇ ਇਟਰੇਬਲਜ਼ ਦੀਆਂ ਆਈਟਮਾਂ 'ਤੇ ਸਮਾਂਤਰ ਤੌਰ 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇੱਕ " +"ਤੋਂ ਵੱਧ ਇਟਰੇਬਲਜ਼ ਦੇ ਨਾਲ, ਇਟਰੇਟਰ ਉਦੋਂ ਰੁਕ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸਭ ਤੋਂ ਛੋਟਾ ਇਟਰੇਬਲ :term:`exhausted` ਹੋ " +"ਜਾਂਦਾ ਹੈ। ਜੇ *strict* ``True`` ਹੈ ਅਤੇ ਕੋਈ ਇੱਕ ਇਟਰੇਬਲ ਬਾਕੀਆਂ ਤੋਂ ਪਹਿਲਾਂ ਖਤਮ ਹੋ ਜਾਂਦਾ ਹੈ, " +"ਤਾਂ :exc:`ValueError` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ। ਜੇ ਫੰਕਸ਼ਨ ਦੇ ਇਨਪੁੱਟ ਪਹਿਲਾਂ ਹੀ ਆਰਗੂਮੈਂਟ ਟਿਊਪਲਾਂ ਵਿੱਚ " +"ਵਿਵਸਥਿਤ ਕੀਤੇ ਹੋਏ ਹਨ, ਤਾਂ :func:`itertools.starmap` ਵੇਖੋ।" + +msgid "Added the *strict* parameter." +msgstr "*strict* ਪੈਰਾਮੀਟਰ ਜੋੜਿਆ ਗਿਆ।" + +msgid "" +"Return the largest item in an iterable or the largest of two or more " +"arguments." +msgstr "" +"ਕਿਸੇ iterable ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਵੱਡੀ ਆਈਟਮ ਜਾਂ ਦੋ ਜਾਂ ਵੱਧ ਆਰਗੂਮੈਂਟਾਂ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਵੱਡਾ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"If one positional argument is provided, it should be an :term:`iterable`. " +"The largest item in the iterable is returned. If two or more positional " +"arguments are provided, the largest of the positional arguments is returned." +msgstr "" +"ਜੇ ਇੱਕ positional argument ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਉਹ ਇੱਕ :term:`iterable` ਹੋਣਾ ਚਾਹੀਦਾ " +"ਹੈ। ਉਸ iterable ਦੀ ਸਭ ਤੋਂ ਵੱਡੀ ਆਈਟਮ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਦੋ ਜਾਂ ਵੱਧ positional " +"arguments ਦਿੱਤੇ ਜਾਣ, ਤਾਂ ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਵੱਡਾ ਮੁੱਲ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"There are two optional keyword-only arguments. The *key* argument specifies " +"a one-argument ordering function like that used for :meth:`list.sort`. The " +"*default* argument specifies an object to return if the provided iterable is " +"empty. If the iterable is empty and *default* is not provided, " +"a :exc:`ValueError` is raised." +msgstr "" +"ਦੋ ਵਿਕਲਪਿਕ keyword-only arguments ਹਨ। *key* argument ਇੱਕ ਐਸਾ ਇੱਕ-ਆਰਗੂਮੈਂਟ ਕ੍ਰਮਬੱਧਤਾ " +"ਫੰਕਸ਼ਨ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਜਿਵੇਂ :meth:`list.sort` ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। *default* " +"argument ਉਹ ਆਬਜੈਕਟ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਜੋ iterable ਖਾਲੀ ਹੋਣ 'ਤੇ ਵਾਪਸ ਕੀਤਾ ਜਾਵੇ। ਜੇ " +"iterable ਖਾਲੀ ਹੋਵੇ ਅਤੇ *default* ਨਾ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ :exc:`ValueError` ਉਠਾਇਆ " +"ਜਾਂਦਾ ਹੈ।" + +msgid "" +"If multiple items are maximal, the function returns the first one " +"encountered. This is consistent with other sort-stability preserving tools " +"such as ``sorted(iterable, key=keyfunc, reverse=True)[0]`` and " +"``heapq.nlargest(1, iterable, key=keyfunc)``." +msgstr "" +"ਜੇ ਕਈ ਆਈਟਮਾਂ ਸਭ ਤੋਂ ਵੱਡੀਆਂ ਹੋਣ, ਤਾਂ ਫੰਕਸ਼ਨ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਮਿਲੀ ਆਈਟਮ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ sort-" +"stability ਬਣਾਈ ਰੱਖਣ ਵਾਲੇ ਹੋਰ ਟੂਲਾਂ ਜਿਵੇਂ ``sorted(iterable, key=keyfunc, " +"reverse=True)[0]`` ਅਤੇ ``heapq.nlargest(1, iterable, key=keyfunc)`` ਦੇ ਅਨੁਕੂਲ ਹੈ।" + +msgid "Added the *default* keyword-only parameter." +msgstr "*default* keyword-only ਪੈਰਾਮੀਟਰ ਜੋੜਿਆ ਗਿਆ।" + +msgid "The *key* can be ``None``." +msgstr "*key* ``None`` ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"Return a \"memory view\" object created from the given argument. " +"See :ref:`typememoryview` for more information." +msgstr "" +"ਦਿੱਤੇ ਗਏ argument ਤੋਂ ਬਣਿਆ ਇੱਕ \"memory view\" ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`typememoryview` ਵੇਖੋ।" + +msgid "" +"Return the smallest item in an iterable or the smallest of two or more " +"arguments." +msgstr "" +"ਕਿਸੇ iterable ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਛੋਟੀ ਆਈਟਮ ਜਾਂ ਦੋ ਜਾਂ ਵੱਧ ਆਰਗੂਮੈਂਟਾਂ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਛੋਟਾ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"If one positional argument is provided, it should be an :term:`iterable`. " +"The smallest item in the iterable is returned. If two or more positional " +"arguments are provided, the smallest of the positional arguments is returned." +msgstr "" +"ਜੇ ਇੱਕ positional argument ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਉਹ ਇੱਕ :term:`iterable` ਹੋਣਾ ਚਾਹੀਦਾ " +"ਹੈ। ਉਸ iterable ਦੀ ਸਭ ਤੋਂ ਛੋਟੀ ਆਈਟਮ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਦੋ ਜਾਂ ਵੱਧ positional " +"arguments ਦਿੱਤੇ ਜਾਣ, ਤਾਂ ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਛੋਟਾ ਮੁੱਲ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"If multiple items are minimal, the function returns the first one " +"encountered. This is consistent with other sort-stability preserving tools " +"such as ``sorted(iterable, key=keyfunc)[0]`` and ``heapq.nsmallest(1, " +"iterable, key=keyfunc)``." +msgstr "" +"ਜੇ ਕਈ ਆਈਟਮਾਂ ਸਭ ਤੋਂ ਛੋਟੀਆਂ ਹੋਣ, ਤਾਂ ਫੰਕਸ਼ਨ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਮਿਲੀ ਆਈਟਮ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ sort-" +"stability ਬਣਾਈ ਰੱਖਣ ਵਾਲੇ ਹੋਰ ਟੂਲਾਂ ਜਿਵੇਂ ``sorted(iterable, key=keyfunc)[0]`` ਅਤੇ " +"``heapq.nsmallest(1, iterable, key=keyfunc)`` ਦੇ ਅਨੁਕੂਲ ਹੈ।" + +msgid "" +"Retrieve the next item from the :term:`iterator` by calling " +"its :meth:`~iterator.__next__` method. If *default* is given, it is " +"returned if the iterator is :term:`exhausted`, " +"otherwise :exc:`StopIteration` is raised." +msgstr "" +":term:`iterator` ਦੇ :meth:`~iterator.__next__` ਢੰਗ ਨੂੰ ਕਾਲ ਕਰਕੇ ਉਸ ਵਿੱਚੋਂ ਅਗਲੀ ਆਈਟਮ " +"ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ। ਜੇ *default* ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਜੇ ਇਟਰੇਟਰ :term:`exhausted` ਹੋ ਗਿਆ ਹੋਵੇ " +"ਤਾਂ ਇਹ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ :exc:`StopIteration` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"This is the ultimate base class of all other classes. It has methods that " +"are common to all instances of Python classes. When the constructor is " +"called, it returns a new featureless object. The constructor does not accept " +"any arguments." +msgstr "" +"ਇਹ ਹੋਰ ਸਾਰੀਆਂ classes ਦੀ ਅੰਤਿਮ base class ਹੈ। ਇਸ ਵਿੱਚ ਉਹ methods ਹਨ ਜੋ Python " +"classes ਦੇ ਸਾਰੇ instances ਲਈ ਸਾਂਝੀਆਂ ਹੁੰਦੀਆਂ ਹਨ। ਜਦੋਂ constructor ਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, " +"ਇਹ ਇੱਕ ਨਵਾਂ featureless object ਵਾਪਸ ਕਰਦਾ ਹੈ। Constructor ਕੋਈ ਵੀ arguments ਸਵੀਕਾਰ " +"ਨਹੀਂ ਕਰਦਾ।" + +msgid "" +":class:`object` instances do *not* have :attr:`~object.__dict__` attributes, " +"so you can't assign arbitrary attributes to an instance of :class:`object`." +msgstr "" +":class:`object` ਦੇ instances ਕੋਲ :attr:`~object.__dict__` attribute ਨਹੀਂ ਹੁੰਦਾ, " +"ਇਸ ਲਈ ਤੁਸੀਂ :class:`object` ਦੇ instance ਨੂੰ ਮਨਮਾਨੇ attributes assign ਨਹੀਂ ਕਰ ਸਕਦੇ।" + +msgid "" +"Convert an integer number to an octal string prefixed with \"0o\". The " +"result is a valid Python expression. If *integer* is not a " +"Python :class:`int` object, it has to define an :meth:`~object.__index__` " +"method that returns an integer. For example:" +msgstr "" +"ਇੱਕ ਪੂਰਨ ਅੰਕ ਨੂੰ \"0o\" ਪ੍ਰੀਫਿਕਸ ਵਾਲੀ octal ਸਤਰ ਵਿੱਚ ਬਦਲੋ। ਨਤੀਜਾ ਇੱਕ ਵੈਧ Python " +"expression ਹੁੰਦਾ ਹੈ। ਜੇ *integer* ਇੱਕ Python :class:`int` ਆਬਜੈਕਟ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸ " +"ਵਿੱਚ :meth:`~object.__index__` ਮੈਥਡ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਇੱਕ ਪੂਰਨ ਅੰਕ ਵਾਪਸ ਕਰੇ। ਉਦਾਹਰਨ " +"ਲਈ:" + +msgid "" +"If you want to convert an integer number to an octal string either with the " +"prefix \"0o\" or not, you can use either of the following ways." +msgstr "" +"ਜੇ ਤੁਸੀਂ ਇੱਕ ਪੂਰਨ ਅੰਕ ਨੂੰ \"0o\" ਪ੍ਰੀਫਿਕਸ ਸਮੇਤ ਜਾਂ ਬਿਨਾਂ octal ਸਤਰ ਵਿੱਚ ਬਦਲਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ " +"ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਕਿਸੇ ਵੀ ਤਰੀਕੇ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।" + +msgid "" +"Open *file* and return a corresponding :term:`file object`. If the file " +"cannot be opened, an :exc:`OSError` is raised. See :ref:`tut-files` for more " +"examples of how to use this function." +msgstr "" +"*file* ਨੂੰ ਖੋਲ੍ਹੋ ਅਤੇ ਇਸ ਨਾਲ ਸੰਬੰਧਿਤ :term:`file object` ਵਾਪਸ ਕਰੋ। ਜੇ ਫਾਈਲ ਨਹੀਂ ਖੁੱਲ " +"ਸਕਦੀ, ਤਾਂ :exc:`OSError` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਦੇ ਹੋਰ ਉਦਾਹਰਨਾਂ " +"ਲਈ :ref:`tut-files` ਵੇਖੋ।" + +msgid "" +"*file* is a :term:`path-like object` giving the pathname (absolute or " +"relative to the current working directory) of the file to be opened or an " +"integer file descriptor of the file to be wrapped. (If a file descriptor is " +"given, it is closed when the returned I/O object is closed unless *closefd* " +"is set to ``False``.)" +msgstr "" +"*file* ਇੱਕ :term:`path-like object` ਹੈ ਜੋ ਖੋਲ੍ਹੀ ਜਾਣ ਵਾਲੀ ਫਾਈਲ ਦਾ path (absolute " +"ਜਾਂ ਮੌਜੂਦਾ working directory ਦੇ ਸਬੰਧ ਵਿੱਚ relative) ਦਿੰਦਾ ਹੈ, ਜਾਂ wrap ਕੀਤੀ ਜਾਣ ਵਾਲੀ " +"ਫਾਈਲ ਦਾ integer file descriptor ਹੋ ਸਕਦਾ ਹੈ। (ਜੇ file descriptor ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ " +"ਵਾਪਸ ਕੀਤਾ I/O ਆਬਜੈਕਟ ਬੰਦ ਹੋਣ ਤੇ ਇਹ ਵੀ ਬੰਦ ਹੋ ਜਾਵੇਗਾ, ਜਦ ਤੱਕ *closefd* ਨੂੰ ``False`` ਨਾ " +"ਕੀਤਾ ਗਿਆ ਹੋਵੇ।)" + +msgid "" +"*mode* is an optional string that specifies the mode in which the file is " +"opened. It defaults to ``'r'`` which means open for reading in text mode. " +"Other common values are ``'w'`` for writing (truncating the file if it " +"already exists), ``'x'`` for exclusive creation, and ``'a'`` for appending " +"(which on *some* Unix systems, means that *all* writes append to the end of " +"the file regardless of the current seek position). In text mode, if " +"*encoding* is not specified, UTF-8 is used by default; if :ref:`Python UTF-8 " +"Mode ` is disabled, :func:`locale.getencoding` is called to get " +"the current locale encoding. (For reading and writing raw bytes use binary " +"mode and leave *encoding* unspecified.) The available modes are:" +msgstr "" +"*mode* ਇੱਕ ਵਿਕਲਪਿਕ ਸਤਰ ਹੈ ਜੋ ਉਸ ਮੋਡ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਫਾਈਲ ਖੋਲ੍ਹੀ ਜਾਂਦੀ ਹੈ। ਇਸਦਾ " +"ਡਿਫਾਲਟ ਮੁੱਲ ``'r'`` ਹੈ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ ਪੜ੍ਹਨ ਲਈ ਖੋਲ੍ਹਣਾ। ਹੋਰ ਆਮ ਮੁੱਲ ਹਨ ਲਿਖਣ " +"ਲਈ ``'w'`` (ਜੇ ਫਾਈਲ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ ਤਾਂ ਇਸਦੀ ਸਮੱਗਰੀ ਨੂੰ ਖਾਲੀ ਕਰ ਦਿੰਦਾ ਹੈ), ਵਿਸ਼ੇਸ਼ ਤੌਰ " +"'ਤੇ ਬਣਾਉਣ ਲਈ ``'x'``, ਅਤੇ ਅੰਤ ਵਿੱਚ ਜੋੜਨ ਲਈ ``'a'`` (ਜੋ *ਕੁਝ* Unix ਸਿਸਟਮਾਂ 'ਤੇ ਇਹ " +"ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਮੌਜੂਦਾ seek ਸਥਿਤੀ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ *ਸਾਰੀਆਂ* ਲਿਖਤਾਂ ਫਾਈਲ ਦੇ ਅੰਤ ਵਿੱਚ " +"ਜੋੜੀਆਂ ਜਾਂਦੀਆਂ ਹਨ)। ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ, ਜੇ *encoding* ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਡਿਫਾਲਟ " +"ਰੂਪ ਵਿੱਚ UTF-8 ਵਰਤੀ ਜਾਂਦੀ ਹੈ; ਜੇ :ref:`Python UTF-8 Mode ` ਅਸਮਰੱਥ ਹੈ, ਤਾਂ " +"ਮੌਜੂਦਾ ਲੋਕੇਲ ਇਨਕੋਡਿੰਗ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ :func:`locale.getencoding` ਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। " +"(ਕੱਚੇ ਬਾਈਟ ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਲਈ ਬਾਈਨਰੀ ਮੋਡ ਵਰਤੋ ਅਤੇ *encoding* ਨਿਰਧਾਰਤ ਨਾ ਕਰੋ।) ਉਪਲਬਧ " +"ਮੋਡ ਹਨ:" + +msgid "Character" +msgstr "ਅੱਖਰ" + +msgid "Meaning" +msgstr "ਅਰਥ" + +msgid "``'r'``" +msgstr "``'r'``" + +msgid "open for reading (default)" +msgstr "ਪੜ੍ਹਨ ਲਈ ਖੋਲ੍ਹੋ (ਡਿਫਾਲਟ)" + +msgid "``'w'``" +msgstr "``'w'``" + +msgid "open for writing, truncating the file first" +msgstr "ਲਿਖਣ ਲਈ ਖੋਲ੍ਹੋ, ਪਹਿਲਾਂ ਫਾਈਲ ਨੂੰ truncate ਕਰੋ" + +msgid "``'x'``" +msgstr "``'x'``" + +msgid "open for exclusive creation, failing if the file already exists" +msgstr "ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਬਣਾਉਣ ਲਈ ਖੋਲ੍ਹੋ; ਜੇ ਫਾਈਲ ਪਹਿਲਾਂ ਮੌਜੂਦ ਹੋਵੇ ਤਾਂ ਅਸਫਲ ਹੋਵੇ" + +msgid "``'a'``" +msgstr "``'a'``" + +msgid "open for writing, appending to the end of file if it exists" +msgstr "ਲਿਖਣ ਲਈ ਖੋਲ੍ਹੋ; ਜੇ ਫਾਈਲ ਮੌਜੂਦ ਹੋਵੇ ਤਾਂ ਅੰਤ ਵਿੱਚ ਜੋੜੋ" + +msgid "``'b'``" +msgstr "``'b'``" + +msgid "binary mode" +msgstr "ਬਾਈਨਰੀ ਮੋਡ" + +msgid "``'t'``" +msgstr "``'t'``" + +msgid "text mode (default)" +msgstr "ਟੈਕਸਟ ਮੋਡ (ਡਿਫਾਲਟ)" + +msgid "``'+'``" +msgstr "``'+'``" + +msgid "open for updating (reading and writing)" +msgstr "ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਖੋਲ੍ਹੋ (ਪੜ੍ਹਨਾ ਅਤੇ ਲਿਖਣਾ)" + +msgid "" +"The default mode is ``'r'`` (open for reading text, a synonym of ``'rt'``). " +"Modes ``'w+'`` and ``'w+b'`` open and truncate the file. Modes ``'r+'`` and " +"``'r+b'`` open the file with no truncation." +msgstr "" +"ਡਿਫਾਲਟ ਮੋਡ ``'r'`` ਹੈ (ਟੈਕਸਟ ਪੜ੍ਹਨ ਲਈ ਖੋਲ੍ਹਣਾ, ਜੋ ``'rt'`` ਦਾ ਸਮਾਨਾਰਥੀ ਹੈ)। ``'w+'`` " +"ਅਤੇ ``'w+b'`` ਮੋਡ ਫਾਈਲ ਨੂੰ ਖੋਲ੍ਹਦੇ ਅਤੇ truncate ਕਰਦੇ ਹਨ। ``'r+'`` ਅਤੇ ``'r+b'`` ਮੋਡ " +"ਫਾਈਲ ਨੂੰ ਬਿਨਾਂ truncate ਕੀਤੇ ਖੋਲ੍ਹਦੇ ਹਨ।" + +msgid "" +"As mentioned in the :ref:`io-overview`, Python distinguishes between binary " +"and text I/O. Files opened in binary mode (including ``'b'`` in the *mode* " +"argument) return contents as :class:`bytes` objects without any decoding. " +"In text mode (the default, or when ``'t'`` is included in the *mode* " +"argument), the contents of the file are returned as :class:`str`, the bytes " +"having been first decoded using the default encoding or using the specified " +"*encoding* if given." +msgstr "" +"ਜਿਵੇਂ :ref:`io-overview` ਵਿੱਚ ਦੱਸਿਆ ਗਿਆ ਹੈ, Python ਬਾਈਨਰੀ ਅਤੇ ਟੈਕਸਟ I/O ਵਿੱਚ ਫ਼ਰਕ " +"ਕਰਦਾ ਹੈ। ਬਾਈਨਰੀ ਮੋਡ ਵਿੱਚ ਖੋਲ੍ਹੀਆਂ ਗਈਆਂ ਫਾਈਲਾਂ (*mode* ਆਰਗੂਮੈਂਟ ਵਿੱਚ ``'b'`` ਸਮੇਤ) ਬਿਨਾਂ " +"ਕਿਸੇ ਡੀਕੋਡਿੰਗ ਦੇ ਸਮੱਗਰੀ ਨੂੰ :class:`bytes` ਵਸਤੂਆਂ ਵਜੋਂ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ। ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ " +"(ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ, ਜਾਂ ਜਦੋਂ *mode* ਆਰਗੂਮੈਂਟ ਵਿੱਚ ``'t'`` ਸ਼ਾਮਲ ਹੋਵੇ), ਫਾਈਲ ਦੀ " +"ਸਮੱਗਰੀ :class:`str` ਵਜੋਂ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਦੇ ਬਾਈਟਾਂ ਨੂੰ ਪਹਿਲਾਂ ਡਿਫਾਲਟ ਇਨਕੋਡਿੰਗ ਦੀ " +"ਵਰਤੋਂ ਕਰਕੇ ਜਾਂ, ਜੇ ਦਿੱਤੀ ਗਈ ਹੋਵੇ, ਤਾਂ ਨਿਰਧਾਰਤ *encoding* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡੀਕੋਡ ਕੀਤਾ ਗਿਆ ਹੁੰਦਾ " +"ਹੈ।" + +msgid "" +"Python doesn't depend on the underlying operating system's notion of text " +"files; all the processing is done by Python itself, and is therefore " +"platform-independent." +msgstr "" +"Python ਟੈਕਸਟ ਫਾਈਲਾਂ ਬਾਰੇ underlying operating system ਦੀ ਧਾਰਣਾ 'ਤੇ ਨਿਰਭਰ ਨਹੀਂ " +"ਕਰਦਾ; ਸਾਰੀ ਪ੍ਰਕਿਰਿਆ Python ਖੁਦ ਕਰਦਾ ਹੈ, ਇਸ ਲਈ ਇਹ platform-independent ਹੈ।" + +msgid "" +"*buffering* is an optional integer used to set the buffering policy. Pass 0 " +"to switch buffering off (only allowed in binary mode), 1 to select line " +"buffering (only usable when writing in text mode), and an integer > 1 to " +"indicate the size in bytes of a fixed-size chunk buffer. Note that " +"specifying a buffer size this way applies for binary buffered I/O, but " +"``TextIOWrapper`` (i.e., files opened with ``mode='r+'``) would have another " +"buffering. To disable buffering in ``TextIOWrapper``, consider using the " +"``write_through`` flag for :func:`io.TextIOWrapper.reconfigure`. When no " +"*buffering* argument is given, the default buffering policy works as follows:" +msgstr "" +"*buffering* ਇੱਕ ਵਿਕਲਪਿਕ integer ਹੈ ਜੋ buffering policy ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤਿਆ " +"ਜਾਂਦਾ ਹੈ। Buffering ਨੂੰ ਬੰਦ ਕਰਨ ਲਈ 0 ਦਿਓ (ਇਹ ਕੇਵਲ binary mode ਵਿੱਚ ਮਨਜ਼ੂਰ ਹੈ), line " +"buffering ਚੁਣਨ ਲਈ 1 ਦਿਓ (ਇਹ ਸਿਰਫ਼ text mode ਵਿੱਚ ਲਿਖਣ ਸਮੇਂ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ), ਅਤੇ " +"fixed-size chunk buffer ਦਾ ਆਕਾਰ bytes ਵਿੱਚ ਦਰਸਾਉਣ ਲਈ 1 ਤੋਂ ਵੱਡਾ integer ਦਿਓ। " +"ਧਿਆਨ ਰਹੇ ਕਿ ਇਸ ਤਰੀਕੇ ਨਾਲ ਦਿੱਤਾ buffer size binary buffered I/O 'ਤੇ ਲਾਗੂ ਹੁੰਦਾ ਹੈ, ਪਰ " +"``TextIOWrapper`` (ਅਰਥਾਤ ``mode='r+'`` ਨਾਲ ਖੋਲ੍ਹੀਆਂ ਫ਼ਾਈਲਾਂ) ਦੀ buffering ਵੱਖਰੀ " +"ਹੁੰਦੀ ਹੈ। ``TextIOWrapper`` ਵਿੱਚ buffering ਅਯੋਗ ਕਰਨ " +"ਲਈ :func:`io.TextIOWrapper.reconfigure` ਦਾ ``write_through`` flag ਵਰਤਣ ਬਾਰੇ " +"ਵਿਚਾਰ ਕਰੋ। ਜਦੋਂ *buffering* argument ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ, ਤਾਂ ਮੂਲ buffering policy ਹੇਠਾਂ " +"ਦਿੱਤੇ ਤਰੀਕੇ ਨਾਲ ਕੰਮ ਕਰਦੀ ਹੈ:" + +msgid "" +"Binary files are buffered in fixed-size chunks; the size of the buffer is " +"``max(min(blocksize, 8 MiB), DEFAULT_BUFFER_SIZE)`` when the device block " +"size is available. On most systems, the buffer will typically be 128 " +"kilobytes long." +msgstr "" +"Binary ਫਾਈਲਾਂ ਨੂੰ fixed-size chunks ਵਿੱਚ buffer ਕੀਤਾ ਜਾਂਦਾ ਹੈ; ਜਦੋਂ device block " +"size ਉਪਲਬਧ ਹੋਵੇ ਤਾਂ buffer ਦਾ ਆਕਾਰ ``max(min(blocksize, 8 MiB), " +"DEFAULT_BUFFER_SIZE)`` ਹੁੰਦਾ ਹੈ। ਜ਼ਿਆਦਾਤਰ ਸਿਸਟਮਾਂ ਵਿੱਚ buffer ਆਮ ਤੌਰ 'ਤੇ 128 " +"kilobytes ਦਾ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"\"Interactive\" text files (files for which :meth:`~io.IOBase.isatty` " +"returns ``True``) use line buffering. Other text files use the policy " +"described above for binary files." +msgstr "" +"\"Interactive\" ਟੈਕਸਟ ਫਾਈਲਾਂ (ਜਿਨ੍ਹਾਂ ਲਈ :meth:`~io.IOBase.isatty` ``True`` ਵਾਪਸ " +"ਕਰਦਾ ਹੈ) line buffering ਵਰਤਦੀਆਂ ਹਨ। ਹੋਰ ਟੈਕਸਟ ਫਾਈਲਾਂ ਉਹੀ ਨੀਤੀ ਵਰਤਦੀਆਂ ਹਨ ਜੋ ਉੱਪਰ " +"binary ਫਾਈਲਾਂ ਲਈ ਦਰਸਾਈ ਗਈ ਹੈ।" + +msgid "" +"*encoding* is the name of the encoding used to decode or encode the file. " +"This should only be used in text mode. The default encoding is UTF-8; " +"if :ref:`Python UTF-8 Mode ` is disabled, the default is platform-" +"dependent (whatever :func:`locale.getencoding` returns). Any :term:`text " +"encoding` supported by Python can be used, and ``encoding=\"locale\"`` " +"specifies the current locale encoding explicitly. See the :mod:`codecs` " +"module for the list of supported encodings." +msgstr "" +"*encoding* ਫਾਈਲ ਨੂੰ ਡੀਕੋਡ ਜਾਂ ਇਨਕੋਡ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ਇਨਕੋਡਿੰਗ ਦਾ ਨਾਮ ਹੈ। ਇਸਦੀ " +"ਵਰਤੋਂ ਸਿਰਫ਼ ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ ਕੀਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ। ਡਿਫਾਲਟ ਇਨਕੋਡਿੰਗ UTF-8 ਹੈ; " +"ਜੇ :ref:`Python UTF-8 Mode ` ਅਸਮਰੱਥ ਹੈ, ਤਾਂ ਡਿਫਾਲਟ ਪਲੇਟਫਾਰਮ 'ਤੇ ਨਿਰਭਰ " +"ਕਰਦਾ ਹੈ (ਜੋ ਵੀ :func:`locale.getencoding` ਵਾਪਸ ਕਰਦਾ ਹੈ)। Python ਦੁਆਰਾ ਸਮਰਥਿਤ ਕੋਈ " +"ਵੀ :term:`text encoding` ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਅਤੇ ``encoding=\"locale\"`` ਮੌਜੂਦਾ ਲੋਕੇਲ " +"ਇਨਕੋਡਿੰਗ ਨੂੰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਦਰਸਾਉਂਦਾ ਹੈ। ਸਮਰਥਿਤ ਇਨਕੋਡਿੰਗਾਂ ਦੀ ਸੂਚੀ ਲਈ :mod:`codecs` ਮੋਡੀਊਲ " +"ਵੇਖੋ।" + +msgid "" +"*errors* is an optional string that specifies how encoding and decoding " +"errors are to be handled—this cannot be used in binary mode. A variety of " +"standard error handlers are available, though any error handling name that " +"has been registered with :func:`codecs.register_error` is also valid. The " +"standard names can be found in :ref:`error-handlers`." +msgstr "" +"*errors* ਇੱਕ ਵਿਕਲਪੀ string ਹੈ ਜੋ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ encoding ਅਤੇ decoding ਗਲਤੀਆਂ ਨੂੰ ਕਿਵੇਂ " +"ਸੰਭਾਲਿਆ ਜਾਣਾ ਹੈ—ਇਸਨੂੰ binary mode ਵਿੱਚ ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਕਈ ਮਿਆਰੀ error handlers " +"ਉਪਲਬਧ ਹਨ, ਹਾਲਾਂਕਿ :func:`codecs.register_error` ਨਾਲ ਰਜਿਸਟਰ ਕੀਤਾ ਗਿਆ ਕੋਈ ਵੀ " +"error handling ਨਾਮ ਵੀ ਵੈਧ ਹੈ। ਮਿਆਰੀ ਨਾਮ :ref:`error-handlers` ਵਿੱਚ ਵੇਖੇ ਜਾ ਸਕਦੇ ਹਨ।" + +msgid "" +"*newline* determines how to parse newline characters from the stream. It can " +"be ``None``, ``''``, ``'\\n'``, ``'\\r'``, and ``'\\r\\n'``. It works as " +"follows:" +msgstr "" +"*newline* ਇਹ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ stream ਤੋਂ newline ਅੱਖਰਾਂ ਨੂੰ ਕਿਵੇਂ parse ਕੀਤਾ ਜਾਵੇ। " +"ਇਹ ``None``, ``''``, ``'\\n'``, ``'\\r'`` ਜਾਂ ``'\\r\\n'`` ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਹੇਠਾਂ " +"ਦਿੱਤੇ ਅਨੁਸਾਰ ਕੰਮ ਕਰਦਾ ਹੈ:" + +msgid "" +"When reading input from the stream, if *newline* is ``None``, universal " +"newlines mode is enabled. Lines in the input can end in ``'\\n'``, " +"``'\\r'``, or ``'\\r\\n'``, and these are translated into ``'\\n'`` before " +"being returned to the caller. If it is ``''``, universal newlines mode is " +"enabled, but line endings are returned to the caller untranslated. If it " +"has any of the other legal values, input lines are only terminated by the " +"given string, and the line ending is returned to the caller untranslated." +msgstr "" +"ਸਟ੍ਰੀਮ ਤੋਂ input ਪੜ੍ਹਦੇ ਸਮੇਂ, ਜੇ *newline* ``None`` ਹੋਵੇ, ਤਾਂ universal newlines mode " +"ਚਾਲੂ ਹੋ ਜਾਂਦੀ ਹੈ। Input ਦੀਆਂ ਲਾਈਨਾਂ ``'\\n'``, ``'\\r'`` ਜਾਂ ``'\\r\\n'`` ਨਾਲ ਖਤਮ ਹੋ " +"ਸਕਦੀਆਂ ਹਨ, ਅਤੇ caller ਨੂੰ ਵਾਪਸ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇਨ੍ਹਾਂ ਨੂੰ ``'\\n'`` ਵਿੱਚ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। " +"ਜੇ ਇਸਦੀ value ``''`` ਹੋਵੇ, ਤਾਂ universal newlines mode ਚਾਲੂ ਰਹਿੰਦੀ ਹੈ, ਪਰ line " +"endings ਬਿਨਾਂ ਕਿਸੇ ਤਬਦੀਲੀ ਦੇ caller ਨੂੰ ਵਾਪਸ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਜੇ ਇਸਦੀ ਕੋਈ ਹੋਰ ਵੈਧ " +"value ਹੋਵੇ, ਤਾਂ input lines ਸਿਰਫ਼ ਦਿੱਤੀ ਗਈ string ਨਾਲ ਹੀ ਸਮਾਪਤ ਮੰਨੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ " +"line ending ਬਿਨਾਂ ਤਬਦੀਲੀ ਦੇ ਵਾਪਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " +"characters written are translated to the system default line " +"separator, :data:`os.linesep`. If *newline* is ``''`` or ``'\\n'``, no " +"translation takes place. If *newline* is any of the other legal values, any " +"``'\\n'`` characters written are translated to the given string." +msgstr "" +"ਸਟ੍ਰੀਮ ਵਿੱਚ output ਲਿਖਦੇ ਸਮੇਂ, ਜੇ *newline* ``None`` ਹੋਵੇ, ਤਾਂ ਲਿਖੇ ਗਏ ਸਾਰੇ ``'\\n'`` " +"ਅੱਖਰ system ਦੇ ਮੂਲ line separator :data:`os.linesep` ਵਿੱਚ ਬਦਲੇ ਜਾਂਦੇ ਹਨ। ਜੇ " +"*newline* ``''`` ਜਾਂ ``'\\n'`` ਹੋਵੇ, ਤਾਂ ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ। ਜੇ *newline* ਦੀ " +"ਕੋਈ ਹੋਰ ਵੈਧ value ਹੋਵੇ, ਤਾਂ ਲਿਖੇ ਗਏ ``'\\n'`` ਅੱਖਰ ਦਿੱਤੀ ਗਈ string ਵਿੱਚ ਬਦਲੇ ਜਾਂਦੇ ਹਨ।" + +msgid "" +"If *closefd* is ``False`` and a file descriptor rather than a filename was " +"given, the underlying file descriptor will be kept open when the file is " +"closed. If a filename is given *closefd* must be ``True`` (the default); " +"otherwise, an error will be raised." +msgstr "" +"ਜੇ *closefd* ``False`` ਹੋਵੇ ਅਤੇ filename ਦੀ ਬਜਾਏ file descriptor ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ " +"ਫ਼ਾਈਲ ਬੰਦ ਹੋਣ 'ਤੇ ਅੰਦਰੂਨੀ file descriptor ਖੁੱਲ੍ਹਾ ਹੀ ਰਹੇਗਾ। ਜੇ filename ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ " +"*closefd* ਦਾ ``True`` ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ (ਜੋ ਮੂਲ ਮੁੱਲ ਹੈ); ਨਹੀਂ ਤਾਂ ਇੱਕ error ਉਠਾਈ ਜਾਵੇਗੀ।" + +msgid "" +"A custom opener can be used by passing a callable as *opener*. The " +"underlying file descriptor for the file object is then obtained by calling " +"*opener* with (*file*, *flags*). *opener* must return an open file " +"descriptor (passing :mod:`os.open` as *opener* results in functionality " +"similar to passing ``None``)." +msgstr "" +"*opener* ਵਜੋਂ ਇੱਕ callable ਦੇ ਕੇ custom opener ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਫਿਰ file object " +"ਲਈ ਅੰਦਰੂਨੀ file descriptor, *opener* ਨੂੰ (*file*, *flags*) ਨਾਲ ਕਾਲ ਕਰਕੇ ਪ੍ਰਾਪਤ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ। *opener* ਨੂੰ ਇੱਕ ਖੁੱਲ੍ਹਾ file descriptor ਵਾਪਸ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ " +"(ਜੇ :mod:`os.open` ਨੂੰ *opener* ਵਜੋਂ ਦਿੱਤਾ ਜਾਵੇ, ਤਾਂ ਇਸਦਾ ਵਿਵਹਾਰ ``None`` ਦੇਣ ਦੇ ਸਮਾਨ " +"ਹੁੰਦਾ ਹੈ)।" + +msgid "The newly created file is :ref:`non-inheritable `." +msgstr "ਨਵੀਂ ਬਣਾਈ ਗਈ ਫਾਈਲ :ref:`non-inheritable ` ਹੁੰਦੀ ਹੈ।" + +msgid "" +"The following example uses the :ref:`dir_fd ` parameter of " +"the :func:`os.open` function to open a file relative to a given directory::" +msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ :func:`os.open` ਫੰਕਸ਼ਨ ਦੇ :ref:`dir_fd ` parameter ਦੀ " +"ਵਰਤੋਂ ਕਰਕੇ ਕਿਸੇ ਦਿੱਤੀ ਗਈ directory ਦੇ ਸਬੰਧ ਵਿੱਚ ਇੱਕ ਫ਼ਾਈਲ ਖੋਲ੍ਹਦੀ ਹੈ::" + +msgid "" +">>> import os\n" +">>> dir_fd = os.open('somedir', os.O_RDONLY)\n" +">>> def opener(path, flags):\n" +"... return os.open(path, flags, dir_fd=dir_fd)\n" +"...\n" +">>> with open('spamspam.txt', 'w', opener=opener) as f:\n" +"... print('This will be written to somedir/spamspam.txt', file=f)\n" +"...\n" +">>> os.close(dir_fd) # don't leak a file descriptor" +msgstr "" +">>> import os\n" +">>> dir_fd = os.open('somedir', os.O_RDONLY)\n" +">>> def opener(path, flags):\n" +"... return os.open(path, flags, dir_fd=dir_fd)\n" +"...\n" +">>> with open('spamspam.txt', 'w', opener=opener) as f:\n" +"... print('This will be written to somedir/spamspam.txt', file=f)\n" +"...\n" +">>> os.close(dir_fd) # don't leak a file descriptor" + +msgid "" +"The type of :term:`file object` returned by the :func:`open` function " +"depends on the mode. When :func:`open` is used to open a file in a text " +"mode (``'w'``, ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a subclass " +"of :class:`io.TextIOBase` (specifically :class:`io.TextIOWrapper`). When " +"used to open a file in a binary mode with buffering, the returned class is a " +"subclass of :class:`io.BufferedIOBase`. The exact class varies: in read " +"binary mode, it returns an :class:`io.BufferedReader`; in write binary and " +"append binary modes, it returns an :class:`io.BufferedWriter`, and in read/" +"write mode, it returns an :class:`io.BufferedRandom`. When buffering is " +"disabled, the raw stream, a subclass " +"of :class:`io.RawIOBase`, :class:`io.FileIO`, is returned." +msgstr "" +":func:`open` ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਵਾਪਸ ਕੀਤਾ ਗਿਆ :term:`file object` ਦਾ ਪ੍ਰਕਾਰ mode 'ਤੇ " +"ਨਿਰਭਰ ਕਰਦਾ ਹੈ। ਜਦੋਂ :func:`open` ਨੂੰ text mode (``'w'``, ``'r'``, ``'wt'``, " +"``'rt'`` ਆਦਿ) ਵਿੱਚ ਫ਼ਾਈਲ ਖੋਲ੍ਹਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ :class:`io.TextIOBase` ਦੀ " +"ਇੱਕ subclass (ਖਾਸ ਤੌਰ 'ਤੇ :class:`io.TextIOWrapper`) ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜਦੋਂ buffering " +"ਸਮੇਤ binary mode ਵਿੱਚ ਫ਼ਾਈਲ ਖੋਲੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਵਾਪਸ ਕੀਤੀ ਗਈ " +"class :class:`io.BufferedIOBase` ਦੀ subclass ਹੁੰਦੀ ਹੈ। ਸਹੀ class mode ਦੇ ਅਨੁਸਾਰ " +"ਬਦਲਦੀ ਹੈ: read binary mode ਵਿੱਚ :class:`io.BufferedReader`, write ਅਤੇ append " +"binary modes ਵਿੱਚ :class:`io.BufferedWriter`, ਅਤੇ read/write mode " +"ਵਿੱਚ :class:`io.BufferedRandom` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ buffering ਅਯੋਗ ਹੁੰਦੀ ਹੈ, ਤਾਂ " +"raw stream :class:`io.FileIO`, ਜੋ :class:`io.RawIOBase` ਦੀ subclass ਹੈ, ਵਾਪਸ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"See also the file handling modules, such as :mod:`fileinput`, :mod:`io` " +"(where :func:`open` is " +"declared), :mod:`os`, :mod:`os.path`, :mod:`tempfile`, and :mod:`shutil`." +msgstr "" +"ਫ਼ਾਈਲ ਸੰਭਾਲਣ ਨਾਲ ਸੰਬੰਧਿਤ modules ਵੀ ਵੇਖੋ, ਜਿਵੇਂ :mod:`fileinput`, :mod:`io` " +"(ਜਿੱਥੇ :func:`open` ਪਰਿਭਾਸ਼ਿਤ ਹੈ), :mod:`os`, :mod:`os.path`, :mod:`tempfile` " +"ਅਤੇ :mod:`shutil`।" + +msgid "" +"Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " +"``mode``, ``flags``." +msgstr "" +"ਆਰਗੂਮੈਂਟ ``path``, ``mode`` ਅਤੇ ``flags`` ਨਾਲ :ref:`auditing event ` " +"``open`` ਉਤਪੰਨ ਕਰਦਾ ਹੈ।" + +msgid "" +"The ``mode`` and ``flags`` arguments may have been modified or inferred from " +"the original call." +msgstr "``mode`` ਅਤੇ ``flags`` ਆਰਗੂਮੈਂਟ ਮੂਲ ਕਾਲ ਤੋਂ ਸੋਧੇ ਗਏ ਜਾਂ ਅਨੁਮਾਨਿਤ ਕੀਤੇ ਗਏ ਹੋ ਸਕਦੇ ਹਨ।" + +msgid "The *opener* parameter was added." +msgstr "*opener* ਪੈਰਾਮੀਟਰ ਜੋੜਿਆ ਗਿਆ।" + +msgid "The ``'x'`` mode was added." +msgstr "``'x'`` ਮੋਡ ਜੋੜਿਆ ਗਿਆ।" + +msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." +msgstr "" +"ਪਹਿਲਾਂ :exc:`IOError` ਉਤਪੰਨ ਕੀਤਾ ਜਾਂਦਾ ਸੀ, ਹੁਣ ਇਹ :exc:`OSError` ਦਾ alias ਹੈ।" + +msgid "" +":exc:`FileExistsError` is now raised if the file opened in exclusive " +"creation mode (``'x'``) already exists." +msgstr "" +"ਜੇ exclusive creation mode (``'x'``) ਵਿੱਚ ਖੋਲੀ ਜਾਣ ਵਾਲੀ ਫਾਈਲ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੋਵੇ, " +"ਤਾਂ ਹੁਣ :exc:`FileExistsError` ਉਤਪੰਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "The file is now non-inheritable." +msgstr "ਫਾਈਲ ਹੁਣ non-inheritable ਹੈ।" + +msgid "" +"If the system call is interrupted and the signal handler does not raise an " +"exception, the function now retries the system call instead of raising " +"an :exc:`InterruptedError` exception (see :pep:`475` for the rationale)." +msgstr "" +"ਜੇ system call ਵਿੱਚ ਰੁਕਾਵਟ ਆ ਜਾਵੇ ਅਤੇ signal handler ਕੋਈ exception ਨਾ ਉਠਾਏ, ਤਾਂ ਹੁਣ " +"ਇਹ ਫੰਕਸ਼ਨ :exc:`InterruptedError` exception ਉਠਾਉਣ ਦੀ ਬਜਾਏ ਉਸ system call ਨੂੰ ਮੁੜ " +"ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ (ਕਾਰਨ ਲਈ :pep:`475` ਵੇਖੋ)।" + +msgid "The ``'namereplace'`` error handler was added." +msgstr "``'namereplace'`` error handler ਜੋੜਿਆ ਗਿਆ।" + +msgid "Support added to accept objects implementing :class:`os.PathLike`." +msgstr "" +":class:`os.PathLike` ਨੂੰ ਲਾਗੂ ਕਰਨ ਵਾਲੇ ਆਬਜੈਕਟਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰਨ ਲਈ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ।" + +msgid "" +"On Windows, opening a console buffer may return a subclass " +"of :class:`io.RawIOBase` other than :class:`io.FileIO`." +msgstr "" +"Windows 'ਤੇ, ਇੱਕ ਕੰਸੋਲ ਬਫਰ ਖੋਲ੍ਹਣ ਨਾਲ :class:`io.RawIOBase` ਦੀ ਕੋਈ ਹੋਰ ਉਪ-ਕਲਾਸ ਵਾਪਸ " +"ਆ ਸਕਦੀ ਹੈ, ਨਾ ਕਿ ਸਿਰਫ਼ :class:`io.FileIO` ।" + +msgid "The ``'U'`` mode has been removed." +msgstr "``'U'`` ਮੋਡ ਹਟਾ ਦਿੱਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"UTF-8 is now the default encoding, instead of the platform-dependent locale " +"encoding (:pep:`686`)." +msgstr "" +"UTF-8 ਹੁਣ ਪਲੇਟਫਾਰਮ-ਨਿਰਭਰ ਲੋਕੇਲ ਇਨਕੋਡਿੰਗ ਦੀ ਬਜਾਏ ਡਿਫਾਲਟ ਇਨਕੋਡਿੰਗ ਹੈ (:pep:`686`)।" + +msgid "Return the ordinal value of a character." +msgstr "ਕਿਸੇ ਅੱਖਰ ਦਾ ordinal ਮੁੱਲ ਵਾਪਸ ਕਰੋ।" + +msgid "" +"If the argument is a one-character string, return the Unicode code point of " +"that character. For example, ``ord('a')`` returns the integer ``97`` and " +"``ord('€')`` (Euro sign) returns ``8364``. This is the inverse " +"of :func:`chr`." +msgstr "" +"ਜੇ argument ਇੱਕ ਅੱਖਰ ਵਾਲੀ string ਹੈ, ਤਾਂ ਉਸ ਅੱਖਰ ਦਾ Unicode code point ਵਾਪਸ ਕਰੋ। " +"ਉਦਾਹਰਨ ਲਈ, ``ord('a')`` integer ``97`` ਵਾਪਸ ਕਰਦਾ ਹੈ ਅਤੇ ``ord('€')`` (Euro " +"ਚਿੰਨ੍ਹ) ``8364`` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ :func:`chr` ਦਾ ਉਲਟ ਹੈ।" + +msgid "" +"If the argument is a :class:`bytes` or :class:`bytearray` object of length " +"1, return its single byte value. For example, ``ord(b'a')`` returns the " +"integer ``97``." +msgstr "" +"ਜੇ ਆਰਗੂਮੈਂਟ ਲੰਬਾਈ 1 ਵਾਲਾ :class:`bytes` ਜਾਂ :class:`bytearray` ਆਬਜੈਕਟ ਹੋਵੇ, ਤਾਂ ਉਸਦਾ " +"ਇਕੱਲਾ ਬਾਈਟ ਮੁੱਲ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``ord(b'a')`` ਪੂਰਨ ਅੰਕ ``97`` ਵਾਪਸ " +"ਕਰਦਾ ਹੈ।" + +msgid "" +"Return *base* to the power *exp*; if *mod* is present, return *base* to the " +"power *exp*, modulo *mod* (computed more efficiently than ``pow(base, exp) % " +"mod``). The two-argument form ``pow(base, exp)`` is equivalent to using the " +"power operator: ``base**exp``." +msgstr "" +"*base* ਨੂੰ *exp* ਘਾਤ ਤੱਕ ਉਠਾਇਆ ਹੋਇਆ ਮੁੱਲ ਵਾਪਸ ਕਰੋ; ਜੇ *mod* ਦਿੱਤਾ ਹੋਵੇ, ਤਾਂ *base* ਨੂੰ " +"*exp* ਘਾਤ ਤੱਕ ਉਠਾ ਕੇ ਉਸਦਾ modulo *mod* ਵਾਪਸ ਕਰੋ (ਇਹ ``pow(base, exp) % mod`` " +"ਨਾਲੋਂ ਵੱਧ ਕੁਸ਼ਲਤਾ ਨਾਲ ਗਿਣਿਆ ਜਾਂਦਾ ਹੈ)। ਦੋ-argument ਰੂਪ ``pow(base, exp)`` power " +"operator ``base**exp`` ਦੇ ਬਰਾਬਰ ਹੈ।" + +msgid "" +"When arguments are builtin numeric types with mixed operand types, the " +"coercion rules for binary arithmetic operators apply. For :class:`int` " +"operands, the result has the same type as the operands (after coercion) " +"unless the second argument is negative; in that case, all arguments are " +"converted to float and a float result is delivered. For example, ``pow(10, " +"2)`` returns ``100``, but ``pow(10, -2)`` returns ``0.01``. For a negative " +"base of type :class:`int` or :class:`float` and a non-integral exponent, a " +"complex result is delivered. For example, ``pow(-9, 0.5)`` returns a value " +"close to ``3j``. Whereas, for a negative base of type :class:`int` " +"or :class:`float` with an integral exponent, a float result is delivered. " +"For example, ``pow(-9, 2.0)`` returns ``81.0``." +msgstr "" +"ਜਦੋਂ ਦਲੀਲਾਂ ਮਿਸ਼ਰਤ ਓਪਰੇਂਡ ਕਿਸਮਾਂ ਵਾਲੀਆਂ ਅੰਕੜਾ ਕਿਸਮਾਂ ਵਿੱਚ ਹੁੰਦੀਆਂ ਹਨ, ਤਾਂ ਦੋ-ਅੰਕੜਾ ਗਣਿਤਿਕ " +"ਓਪਰੇਟਰਾਂ ਲਈ ਕੋਰਸ਼ਨ ਨਿਯਮ ਲਾਗੂ ਹੁੰਦੇ ਹਨ। :class:`int` ਓਪਰੇਂਡਾਂ ਲਈ, ਨਤੀਜੇ ਦੀ ਕਿਸਮ ਓਪਰੇਂਡਾਂ ਦੀ " +"ਕਿਸਮ (ਕੋਰਸ਼ਨ ਤੋਂ ਬਾਅਦ) ਦੇ ਬਰਾਬਰ ਹੁੰਦੀ ਹੈ, ਜਦ ਤੱਕ ਦੂਜੀ ਦਲੀਲ ਨਕਾਰਾਤਮਕ ਨਾ ਹੋਵੇ; ਇਸ ਸਥਿਤੀ " +"ਵਿੱਚ, ਸਾਰੀਆਂ ਦਲੀਲਾਂ ਫਲੋਟ ਵਿੱਚ ਬਦਲ ਦਿੱਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਫਲੋਟ ਨਤੀਜਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। " +"ਉਦਾਹਰਨ ਵਜੋਂ, ``pow(10, 2)`` ``100`` ਵਾਪਸ ਕਰਦਾ ਹੈ, ਪਰ ``pow(10, -2)`` ``0.01`` " +"ਵਾਪਸ ਕਰਦਾ ਹੈ। :class:`int` ਜਾਂ :class:`float` ਕਿਸਮ ਦੇ ਨਕਾਰਾਤਮਕ ਬੇਸ ਅਤੇ ਗੈਰ-ਸੰਪੂਰਨ " +"ਐਕਸਪੋਨੈਂਟ ਲਈ, ਇੱਕ ਕੰਪਲੈਕਸ ਨਤੀਜਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``pow(-9, 0.5)`` ``3j`` ਦੇ " +"ਨੇੜੇ ਇੱਕ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜਦਕਿ, :class:`int` ਜਾਂ :class:`float` ਕਿਸਮ ਦੇ ਨਕਾਰਾਤਮਕ " +"ਬੇਸ ਅਤੇ ਸੰਪੂਰਨ ਐਕਸਪੋਨੈਂਟ ਲਈ, ਇੱਕ ਫਲੋਟ ਨਤੀਜਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``pow(-9, 2.0)`` " +"``81.0`` ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"For :class:`int` operands *base* and *exp*, if *mod* is present, *mod* must " +"also be of integer type and *mod* must be nonzero. If *mod* is present and " +"*exp* is negative, *base* must be relatively prime to *mod*. In that case, " +"``pow(inv_base, -exp, mod)`` is returned, where *inv_base* is an inverse to " +"*base* modulo *mod*." +msgstr "" +":class:`int` operands *base* ਅਤੇ *exp* ਲਈ, ਜੇ *mod* ਦਿੱਤਾ ਹੋਵੇ, ਤਾਂ *mod* ਵੀ " +"integer ਕਿਸਮ ਦਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਇਸਦੀ value ਸਿਫ਼ਰ ਨਹੀਂ ਹੋਣੀ ਚਾਹੀਦੀ। ਜੇ *mod* ਦਿੱਤਾ " +"ਹੋਵੇ ਅਤੇ *exp* negative ਹੋਵੇ, ਤਾਂ *base* ਅਤੇ *mod* ਆਪਸ ਵਿੱਚ relatively prime ਹੋਣੇ " +"ਚਾਹੀਦੇ ਹਨ। ਉਸ ਹਾਲਤ ਵਿੱਚ ``pow(inv_base, -exp, mod)`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿੱਥੇ " +"*inv_base*, *mod* ਦੇ ਸਬੰਧ ਵਿੱਚ *base* ਦਾ modular inverse ਹੁੰਦਾ ਹੈ।" + +msgid "Here's an example of computing an inverse for ``38`` modulo ``97``::" +msgstr "ਇੱਥੇ ``38`` ਨੂੰ ``97`` ਮਾਡੀਊਲੋ 'ਤੇ ਇਨਵਰਸ ਕੰਪਿਊਟ ਕਰਨ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ ::" + +msgid "" +">>> pow(38, -1, mod=97)\n" +"23\n" +">>> 23 * 38 % 97 == 1\n" +"True" +msgstr "" +">>> pow(38, -1, mod=97)\n" +"23\n" +">>> 23 * 38 % 97 == 1\n" +"True" + +msgid "" +"For :class:`int` operands, the three-argument form of ``pow`` now allows the " +"second argument to be negative, permitting computation of modular inverses." +msgstr "" +":class:`int` operands ਲਈ, ``pow`` ਦਾ ਤਿੰਨ-argument ਰੂਪ ਹੁਣ ਦੂਜੇ argument ਨੂੰ " +"negative ਹੋਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਜਿਸ ਨਾਲ modular inverses ਦੀ ਗਿਣਤੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।" + +msgid "" +"Allow keyword arguments. Formerly, only positional arguments were supported." +msgstr "" +"ਹੁਣ keyword arguments ਦੀ ਇਜਾਜ਼ਤ ਹੈ। ਪਹਿਲਾਂ ਸਿਰਫ positional arguments ਹੀ ਸਮਰਥਿਤ " +"ਸਨ।" + +msgid "" +"Print *objects* to the text stream *file*, separated by *sep* and followed " +"by *end*. *sep*, *end*, *file*, and *flush*, if present, must be given as " +"keyword arguments." +msgstr "" +"*objects* ਨੂੰ *file* ਟੈਕਸਟ ਸਟ੍ਰੀਮ ਵਿੱਚ ਪ੍ਰਿੰਟ ਕਰਦਾ ਹੈ, ਜਿੱਥੇ ਉਹ *sep* ਨਾਲ ਵੱਖ ਕੀਤੇ ਜਾਂਦੇ " +"ਹਨ ਅਤੇ *end* ਨਾਲ ਸਮਾਪਤ ਹੁੰਦੇ ਹਨ। *sep*, *end*, *file* ਅਤੇ *flush*, ਜੇ ਦਿੱਤੇ ਜਾਣ, ਤਾਂ " +"keyword arguments ਵਜੋਂ ਹੀ ਦਿੱਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ।" + +msgid "" +"All non-keyword arguments are converted to strings like :func:`str` does and " +"written to the stream, separated by *sep* and followed by *end*. Both *sep* " +"and *end* must be strings; they can also be ``None``, which means to use the " +"default values. If no *objects* are given, :func:`print` will just write " +"*end*." +msgstr "" +"ਸਾਰੇ non-keyword arguments ਨੂੰ :func:`str` ਦੀ ਤਰ੍ਹਾਂ strings ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ " +"ਸਟ੍ਰੀਮ ਵਿੱਚ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ, ਜਿੱਥੇ ਉਹ *sep* ਨਾਲ ਵੱਖ ਹੁੰਦੇ ਹਨ ਅਤੇ *end* ਨਾਲ ਸਮਾਪਤ ਹੁੰਦੇ ਹਨ। " +"*sep* ਅਤੇ *end* ਦੋਵੇਂ strings ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ; ਇਹ ``None`` ਵੀ ਹੋ ਸਕਦੇ ਹਨ, ਜਿਸਦਾ ਅਰਥ ਹੈ " +"ਕਿ ਮੂਲ ਮੁੱਲ ਵਰਤੇ ਜਾਣ। ਜੇ *objects* ਨਾ ਦਿੱਤੇ ਜਾਣ, ਤਾਂ :func:`print` ਸਿਰਫ਼ *end* ਲਿਖੇਗਾ।" + +msgid "" +"The *file* argument must be an object with a ``write(string)`` method; if it " +"is not present or ``None``, :data:`sys.stdout` will be used. Since printed " +"arguments are converted to text strings, :func:`print` cannot be used with " +"binary mode file objects. For these, use ``file.write(...)`` instead." +msgstr "" +"*file* argument ਇੱਕ ਅਜਿਹਾ object ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ``write(string)`` " +"method ਹੋਵੇ। ਜੇ ਇਹ ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਜਾਂ ``None`` ਹੋਵੇ, ਤਾਂ :data:`sys.stdout` ਵਰਤਿਆ ਜਾਵੇਗਾ। " +"ਕਿਉਂਕਿ ਪ੍ਰਿੰਟ ਕੀਤੇ arguments ਨੂੰ text strings ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ਇਸ " +"ਲਈ :func:`print` ਨੂੰ binary mode file objects ਨਾਲ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ। ਉਨ੍ਹਾਂ ਲਈ " +"``file.write(...)`` ਵਰਤੋ।" + +msgid "" +"Output buffering is usually determined by *file*. However, if *flush* is " +"true, the stream is forcibly flushed." +msgstr "" +"ਆਉਟਪੁੱਟ buffering ਆਮ ਤੌਰ 'ਤੇ *file* ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਪਰ ਜੇ *flush* true " +"ਹੋਵੇ, ਤਾਂ stream ਨੂੰ ਜ਼ਬਰਦਸਤੀ flush ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "Added the *flush* keyword argument." +msgstr "*flush* keyword argument ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।" + +msgid "Return a property attribute." +msgstr "ਇੱਕ property ਗੁਣ ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"*fget* is a function for getting an attribute value. *fset* is a function " +"for setting an attribute value. *fdel* is a function for deleting an " +"attribute value. And *doc* creates a docstring for the attribute." +msgstr "" +"*fget* attribute ਦਾ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ ਹੈ। *fset* attribute ਦਾ ਮੁੱਲ ਸੈੱਟ ਕਰਨ ਲਈ " +"ਫੰਕਸ਼ਨ ਹੈ। *fdel* attribute ਦਾ ਮੁੱਲ ਮਿਟਾਉਣ ਲਈ ਫੰਕਸ਼ਨ ਹੈ। *doc* attribute ਲਈ " +"docstring ਬਣਾਉਂਦਾ ਹੈ।" + +msgid "A typical use is to define a managed attribute ``x``::" +msgstr "ਇੱਕ ਆਮ ਵਰਤੋਂ ਇਹ ਹੈ ਕਿ ਇੱਕ ਪ੍ਰਬੰਧਿਤ ਗੁਣ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਵੇ ``x``::" + +msgid "" +"class C:\n" +" def __init__(self):\n" +" self._x = None\n" +"\n" +" def getx(self):\n" +" return self._x\n" +"\n" +" def setx(self, value):\n" +" self._x = value\n" +"\n" +" def delx(self):\n" +" del self._x\n" +"\n" +" x = property(getx, setx, delx, \"I'm the 'x' property.\")" +msgstr "" +"class C:\n" +" def __init__(self):\n" +" self._x = None\n" +"\n" +" def getx(self):\n" +" return self._x\n" +"\n" +" def setx(self, value):\n" +" self._x = value\n" +"\n" +" def delx(self):\n" +" del self._x\n" +"\n" +" x = property(getx, setx, delx, \"I'm the 'x' property.\")" + +msgid "" +"If *c* is an instance of *C*, ``c.x`` will invoke the getter, ``c.x = " +"value`` will invoke the setter, and ``del c.x`` the deleter." +msgstr "" +"ਜੇ *c*, *C* ਦਾ ਇੱਕ instance ਹੈ, ਤਾਂ ``c.x`` getter ਨੂੰ ਕਾਲ ਕਰੇਗਾ, ``c.x = value`` " +"setter ਨੂੰ ਕਾਲ ਕਰੇਗਾ ਅਤੇ ``del c.x`` deleter ਨੂੰ ਕਾਲ ਕਰੇਗਾ।" + +msgid "" +"If given, *doc* will be the docstring of the property attribute. Otherwise, " +"the property will copy *fget*'s docstring (if it exists). This makes it " +"possible to create read-only properties easily using :deco:`property` as " +"a :term:`decorator`::" +msgstr "" +"ਜੇ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ *doc* property attribute ਦੀ docstring ਹੋਵੇਗੀ। ਨਹੀਂ ਤਾਂ " +"property, *fget* ਦੀ docstring (ਜੇ ਉਹ ਮੌਜੂਦ ਹੋਵੇ) ਕਾਪੀ ਕਰੇਗੀ। ਇਸ " +"ਨਾਲ :deco:`property` ਨੂੰ :term:`decorator` ਵਜੋਂ ਵਰਤ ਕੇ ਸਿਰਫ਼-ਪੜ੍ਹਨਯੋਗ properties " +"ਆਸਾਨੀ ਨਾਲ ਬਣਾਉਣਾ ਸੰਭਵ ਹੁੰਦਾ ਹੈ::" + +msgid "" +"class Parrot:\n" +" def __init__(self):\n" +" self._voltage = 100000\n" +"\n" +" @property\n" +" def voltage(self):\n" +" \"\"\"Get the current voltage.\"\"\"\n" +" return self._voltage" +msgstr "" +"class Parrot:\n" +" def __init__(self):\n" +" self._voltage = 100000\n" +"\n" +" @property\n" +" def voltage(self):\n" +" \"\"\"Get the current voltage.\"\"\"\n" +" return self._voltage" + +msgid "" +"The ``@property`` decorator turns the :meth:`!voltage` method into a " +"\"getter\" for a read-only attribute with the same name, and it sets the " +"docstring for *voltage* to \"Get the current voltage.\"" +msgstr "" +"``@property`` decorator :meth:`!voltage` method ਨੂੰ ਉਸੇ ਨਾਮ ਵਾਲੇ read-only " +"attribute ਲਈ \"getter\" ਵਿੱਚ ਬਦਲ ਦਿੰਦਾ ਹੈ ਅਤੇ *voltage* ਦੀ docstring ਨੂੰ \"Get the " +"current voltage.\" ਵਜੋਂ ਸੈੱਟ ਕਰਦਾ ਹੈ।" + +msgid "" +"A property object has ``getter``, ``setter``, and ``deleter`` methods usable " +"as decorators that create a copy of the property with the corresponding " +"accessor function set to the decorated function. This is best explained " +"with an example:" +msgstr "" +"ਇੱਕ property object ਵਿੱਚ ``getter``, ``setter`` ਅਤੇ ``deleter`` methods ਹੁੰਦੀਆਂ ਹਨ " +"ਜਿਨ੍ਹਾਂ ਨੂੰ decorators ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ property ਦੀ ਇੱਕ ਕਾਪੀ ਬਣਾਉਂਦੀਆਂ ਹਨ ਜਿਸ " +"ਵਿੱਚ ਸੰਬੰਧਿਤ accessor function ਨੂੰ decorated function ਨਾਲ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ ਨੂੰ ਇੱਕ " +"ਉਦਾਹਰਨ ਨਾਲ ਸਭ ਤੋਂ ਵਧੀਆ ਢੰਗ ਨਾਲ ਸਮਝਿਆ ਜਾ ਸਕਦਾ ਹੈ:" + +msgid "" +"class C:\n" +" def __init__(self):\n" +" self._x = None\n" +"\n" +" @property\n" +" def x(self):\n" +" \"\"\"I'm the 'x' property.\"\"\"\n" +" return self._x\n" +"\n" +" @x.setter\n" +" def x(self, value):\n" +" self._x = value\n" +"\n" +" @x.deleter\n" +" def x(self):\n" +" del self._x" +msgstr "" +"class C:\n" +" def __init__(self):\n" +" self._x = None\n" +"\n" +" @property\n" +" def x(self):\n" +" \"\"\"I'm the 'x' property.\"\"\"\n" +" return self._x\n" +"\n" +" @x.setter\n" +" def x(self, value):\n" +" self._x = value\n" +"\n" +" @x.deleter\n" +" def x(self):\n" +" del self._x" + +msgid "" +"This code is exactly equivalent to the first example. Be sure to give the " +"additional functions the same name as the original property (``x`` in this " +"case.)" +msgstr "" +"ਇਹ ਕੋਡ ਪਹਿਲੀ ਉਦਾਹਰਨ ਦੇ ਬਿਲਕੁਲ ਬਰਾਬਰ ਹੈ। ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਵਾਧੂ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਮੂਲ property " +"ਵਾਲਾ ਹੀ ਨਾਮ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ (ਇਸ ਮਾਮਲੇ ਵਿੱਚ ``x``)।" + +msgid "" +"The returned property object also has the attributes ``fget``, ``fset``, and " +"``fdel`` corresponding to the constructor arguments." +msgstr "" +"ਵਾਪਸ ਕੀਤੇ ਗਏ property ਆਬਜੈਕਟ ਵਿੱਚ constructor ਆਰਗੂਮੈਂਟਾਂ ਦੇ ਅਨੁਸਾਰ ``fget``, ``fset`` " +"ਅਤੇ ``fdel`` ਗੁਣ ਵੀ ਹੁੰਦੇ ਹਨ।" + +msgid "The docstrings of property objects are now writeable." +msgstr "ਹੁਣ property ਆਬਜੈਕਟਾਂ ਦੇ docstring ਲਿਖਣਯੋਗ ਹਨ।" + +msgid "" +"Attribute holding the name of the property. The name of the property can be " +"changed at runtime." +msgstr "" +"ਇਹ ਗੁਣ property ਦਾ ਨਾਮ ਸੰਭਾਲਦਾ ਹੈ। property ਦਾ ਨਾਮ runtime ਦੌਰਾਨ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"Rather than being a function, :class:`range` is actually an immutable " +"sequence type, as documented in :ref:`typesseq-range` and :ref:`typesseq`." +msgstr "" +"ਫੰਕਸ਼ਨ ਹੋਣ ਦੀ ਬਜਾਇ, :class:`range` ਅਸਲ ਵਿੱਚ ਇੱਕ immutable sequence type ਹੈ, ਜਿਵੇਂ " +"ਕਿ :ref:`typesseq-range` ਅਤੇ :ref:`typesseq` ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੈ।" + +msgid "" +"Return a string containing a printable representation of an object. For " +"many types, this function makes an attempt to return a string that would " +"yield an object with the same value when passed to :func:`eval`; otherwise, " +"the representation is a string enclosed in angle brackets that contains the " +"name of the type of the object together with additional information often " +"including the name and address of the object. A class can control what this " +"function returns for its instances by defining a :meth:`~object.__repr__` " +"method." +msgstr "" + +msgid "This class has a custom representation that can be evaluated::" +msgstr "ਇਸ ਕਲਾਸ ਦੀ ਇੱਕ ਕਸਟਮ ਨੁਮਾਇੰਦਗੀ ਹੈ ਜਿਸਦਾ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" + +msgid "" +"class Person:\n" +" def __init__(self, name, age):\n" +" self.name = name\n" +" self.age = age\n" +"\n" +" def __repr__(self):\n" +" return f\"Person({self.name!r}, {self.age!r})\"" +msgstr "" +"class Person:\n" +" def __init__(self, name, age):\n" +" self.name = name\n" +" self.age = age\n" +"\n" +" def __repr__(self):\n" +" return f\"Person({self.name!r}, {self.age!r})\"" + +msgid "" +"Return a reverse :term:`iterator`. The argument must be an object which has " +"a :meth:`~object.__reversed__` method or supports the sequence protocol " +"(the :meth:`~object.__len__` method and the :meth:`~object.__getitem__` " +"method with integer arguments starting at ``0``)." +msgstr "" +"ਇੱਕ ਉਲਟਾ :term:`iterator` ਵਾਪਸ ਕਰਦਾ ਹੈ। Argument ਇੱਕ ਅਜਿਹਾ object ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ " +"ਜਿਸ ਵਿੱਚ :meth:`~object.__reversed__` method ਹੋਵੇ ਜਾਂ ਜੋ sequence protocol ਦਾ " +"ਸਮਰਥਨ ਕਰਦਾ ਹੋਵੇ (:meth:`~object.__len__` method ਅਤੇ :meth:`~object.__getitem__` " +"method ਜਿਸਦੇ integer arguments ``0`` ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹਨ)।" + +msgid "" +"Return *number* rounded to *ndigits* precision after the decimal point. If " +"*ndigits* is omitted or is ``None``, it returns the nearest integer to its " +"input." +msgstr "" +"ਦਸ਼ਮਲਵ ਬਿੰਦੂ ਤੋਂ ਬਾਅਦ *ndigits* ਸ਼ੁੱਧਤਾ ਤੱਕ ਗੋਲ ਕੀਤਾ ਹੋਇਆ *number* ਵਾਪਸ ਕਰੋ। ਜੇ *ndigits* " +"ਛੱਡ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਜਾਂ ``None`` ਹੋਵੇ, ਤਾਂ ਇਨਪੁੱਟ ਦੇ ਸਭ ਤੋਂ ਨੇੜਲੇ ਪੂਰਨ ਅੰਕ ਨੂੰ ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"For the built-in types supporting :func:`round`, values are rounded to the " +"closest multiple of 10 to the power minus *ndigits*; if two multiples are " +"equally close, rounding is done toward the even choice (so, for example, " +"both ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is " +"``2``). Any integer value is valid for *ndigits* (positive, zero, or " +"negative). The return value is an integer if *ndigits* is omitted or " +"``None``. Otherwise, the return value has the same type as *number*." +msgstr "" +":func:`round` ਨੂੰ ਸਮਰਥਨ ਦੇਣ ਵਾਲੀਆਂ built-in ਕਿਸਮਾਂ ਲਈ, ਮੁੱਲਾਂ ਨੂੰ 10 ਦੀ ਘਾਤ minus " +"*ndigits* ਦੇ ਸਭ ਤੋਂ ਨੇੜਲੇ multiple ਤੱਕ ਗੋਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜੇ ਦੋ multiples ਇਕੋ ਜਿਹੇ ਨੇੜੇ ਹੋਣ, " +"ਤਾਂ even ਚੋਣ ਵੱਲ ਗੋਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (ਉਦਾਹਰਨ ਲਈ ``round(0.5)`` ਅਤੇ ``round(-0.5)`` ਦੋਵੇਂ " +"``0`` ਹਨ, ਜਦਕਿ ``round(1.5)`` ``2`` ਹੈ)। *ndigits* ਲਈ ਕੋਈ ਵੀ integer ਮੁੱਲ " +"(positive, zero ਜਾਂ negative) ਵੈਧ ਹੈ। ਜੇ *ndigits* ਛੱਡ ਦਿੱਤਾ ਜਾਵੇ ਜਾਂ ``None`` ਹੋਵੇ, " +"ਤਾਂ ਨਤੀਜਾ integer ਹੁੰਦਾ ਹੈ; ਨਹੀਂ ਤਾਂ ਨਤੀਜੇ ਦੀ ਕਿਸਮ *number* ਵਰਗੀ ਹੀ ਹੁੰਦੀ ਹੈ।" + +msgid "" +"For a general Python object ``number``, ``round`` delegates to " +"``number.__round__``." +msgstr "" +"ਸਧਾਰਣ Python ਆਬਜੈਕਟ ``number`` ਲਈ, ``round`` ਕਾਰਵਾਈ ਨੂੰ ``number.__round__`` ਨੂੰ " +"ਸੌਂਪਦਾ ਹੈ।" + +msgid "" +"The behavior of :func:`round` for floats can be surprising: for example, " +"``round(2.675, 2)`` gives ``2.67`` instead of the expected ``2.68``. This is " +"not a bug: it's a result of the fact that most decimal fractions can't be " +"represented exactly as a float. See :ref:`tut-fp-issues` for more " +"information." +msgstr "" +"float ਮੁੱਲਾਂ ਲਈ :func:`round` ਦਾ ਵਿਵਹਾਰ ਹੈਰਾਨੀਜਨਕ ਹੋ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``round(2.675, 2)`` ਉਮੀਦ ਕੀਤੇ ``2.68`` ਦੀ ਬਜਾਏ ``2.67`` ਦਿੰਦਾ ਹੈ। ਇਹ ਕੋਈ bug ਨਹੀਂ " +"ਹੈ; ਇਸਦਾ ਕਾਰਨ ਇਹ ਹੈ ਕਿ ਬਹੁਤ ਸਾਰੇ decimal fractions ਨੂੰ float ਵਜੋਂ ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ " +"ਦਰਸਾਇਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-fp-issues` ਵੇਖੋ।" + +msgid "" +"Return a new :class:`set` object, optionally with elements taken from " +"*iterable*. :class:`set` is a built-in class. See also :ref:`types-set` " +"for documentation about this class." +msgstr "" +"ਇੱਕ ਨਵਾਂ :class:`set` object ਵਾਪਸ ਕਰੋ, ਚਾਹੋ ਤਾਂ *iterable* ਤੋਂ ਲਏ ਗਏ elements " +"ਨਾਲ। :class:`set` ਇੱਕ built-in class ਹੈ। ਇਸ class ਬਾਰੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ " +"ਲਈ :ref:`types-set` ਵੀ ਵੇਖੋ।" + +msgid "" +"For other containers see the built-" +"in :class:`frozenset`, :class:`list`, :class:`tuple`, and :class:`dict` " +"classes, as well as the :mod:`collections` module." +msgstr "" +"ਹੋਰ containers ਲਈ built-" +"in :class:`frozenset`, :class:`list`, :class:`tuple`, :class:`dict` ਕਲਾਸਾਂ " +"ਅਤੇ :mod:`collections` ਮੋਡੀਊਲ ਵੇਖੋ।" + +msgid "" +"This is the counterpart of :func:`getattr`. The arguments are an object, a " +"string, and an arbitrary value. The string may name an existing attribute " +"or a new attribute. The function assigns the value to the attribute, " +"provided the object allows it. For example, ``setattr(x, 'foobar', 123)`` " +"is equivalent to ``x.foobar = 123``." +msgstr "" +"ਇਹ :func:`getattr` ਦਾ ਸਮਕੱਖ ਹੈ। Arguments ਇੱਕ object, ਇੱਕ string ਅਤੇ ਕੋਈ ਵੀ ਮੁੱਲ ਹੁੰਦੇ " +"ਹਨ। String ਕਿਸੇ ਮੌਜੂਦਾ attribute ਜਾਂ ਨਵੇਂ attribute ਦਾ ਨਾਮ ਹੋ ਸਕਦੀ ਹੈ। ਜੇ object " +"ਇਜਾਜ਼ਤ ਦੇਵੇ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ ਉਸ attribute ਨੂੰ ਦਿੱਤਾ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``setattr(x, 'foobar', 123)`` , ``x.foobar = 123`` ਦੇ ਬਰਾਬਰ ਹੈ।" + +msgid "" +"*name* need not be a Python identifier as defined in :ref:`identifiers` " +"unless the object chooses to enforce that, for example in a " +"custom :meth:`~object.__getattribute__` or via :attr:`~object.__slots__`. An " +"attribute whose name is not an identifier will not be accessible using the " +"dot notation, but is accessible through :func:`getattr` etc.." +msgstr "" +"*name* ਦਾ :ref:`identifiers` ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ Python identifier ਹੋਣਾ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ, " +"ਜਦ ਤੱਕ object ਖੁਦ ਇਸਨੂੰ ਲਾਗੂ ਨਾ ਕਰੇ, ਜਿਵੇਂ ਕਿ " +"custom :meth:`~object.__getattribute__` ਜਾਂ :attr:`~object.__slots__` ਰਾਹੀਂ। " +"ਜਿਸ attribute ਦਾ ਨਾਮ identifier ਨਹੀਂ ਹੈ, ਉਸਨੂੰ dot notation ਨਾਲ ਨਹੀਂ ਪਹੁੰਚਿਆ ਜਾ " +"ਸਕਦਾ, ਪਰ :func:`getattr` ਆਦਿ ਰਾਹੀਂ ਪਹੁੰਚਿਆ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"Since :ref:`private name mangling ` happens at " +"compilation time, one must manually mangle a private attribute's (attributes " +"with two leading underscores) name in order to set it with :func:`setattr`." +msgstr "" +"ਕਿਉਂਕਿ :ref:`private name mangling ` compilation ਸਮੇਂ " +"ਹੁੰਦੀ ਹੈ, ਇਸ ਲਈ ਕਿਸੇ private attribute (ਜਿਸਦੇ ਨਾਮ ਦੇ ਅੱਗੇ ਦੋ underscores ਹੁੰਦੇ ਹਨ) " +"ਨੂੰ :func:`setattr` ਨਾਲ ਸੈੱਟ ਕਰਨ ਲਈ ਉਸਦਾ ਨਾਮ ਹੱਥੋਂ mangle ਕਰਨਾ ਪੈਂਦਾ ਹੈ।" + +msgid "" +"Return a new unique sentinel object. *name* must be a :class:`str`, and is " +"used by default as the returned object's representation::" +msgstr "" +"ਇੱਕ ਨਵਾਂ ਵਿਲੱਖਣ sentinel ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੋ। *name* ਇੱਕ :class:`str` ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ ਅਤੇ " +"ਮੂਲ ਰੂਪ ਵਿੱਚ ਵਾਪਸ ਕੀਤੇ ਗਏ ਆਬਜੈਕਟ ਦੀ representation ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ::" + +msgid "" +">>> MISSING = sentinel(\"MISSING\")\n" +">>> MISSING\n" +"MISSING" +msgstr "" +">>> MISSING = sentinel(\"MISSING\")\n" +">>> MISSING\n" +"MISSING" + +msgid "" +"The optional *repr* argument can be used to specify a different " +"representation::" +msgstr "" +"ਵਿਕਲਪਿਕ *repr* ਆਰਗੂਮੈਂਟ ਨੂੰ ਵੱਖਰੀ representation ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ::" + +msgid "" +">>> MISSING = sentinel(\"MISSING\", repr=\"\")\n" +">>> MISSING\n" +"" +msgstr "" +">>> MISSING = sentinel(\"MISSING\", repr=\"\")\n" +">>> MISSING\n" +"" + +msgid "" +"Sentinel objects are truthy and compare equal only to themselves. They are " +"intended to be compared with the :keyword:`is` operator." +msgstr "" +"Sentinel ਆਬਜੈਕਟ truthy ਹੁੰਦੇ ਹਨ ਅਤੇ ਕੇਵਲ ਆਪਣੇ ਆਪ ਨਾਲ ਹੀ ਬਰਾਬਰ ਮੰਨੇ ਜਾਂਦੇ ਹਨ। ਇਨ੍ਹਾਂ ਦੀ " +"ਤੁਲਨਾ :keyword:`is` operator ਨਾਲ ਕਰਨ ਲਈ ਬਣਾਈ ਗਈ ਹੈ।" + +msgid "``sentinel`` does not support subclassing." +msgstr "``sentinel`` subclassing ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦਾ।" + +msgid "Shallow and deep copies of a sentinel object return the object itself." +msgstr "Sentinel ਆਬਜੈਕਟ ਦੀਆਂ shallow ਅਤੇ deep copies ਉਸੇ ਆਬਜੈਕਟ ਨੂੰ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ।" + +msgid "" +"Sentinels are conventionally assigned to a variable with a matching name. " +"Sentinels defined in this way can be used in :term:`type hints `::" +msgstr "" +"ਰਵਾਇਤੀ ਤੌਰ 'ਤੇ sentinel ਆਬਜੈਕਟਾਂ ਨੂੰ ਉਸੇ ਨਾਮ ਵਾਲੇ ਵੇਰੀਏਬਲ ਨਾਲ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਤਰੀਕੇ " +"ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ sentinel :term:`type hints ` ਵਿੱਚ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ::" + +msgid "" +"MISSING = sentinel(\"MISSING\")\n" +"\n" +"def next_value(default: int | MISSING = MISSING):\n" +" ..." +msgstr "" +"MISSING = sentinel(\"MISSING\")\n" +"\n" +"def next_value(default: int | MISSING = MISSING):\n" +" ..." + +msgid "" +"Sentinel objects support the :ref:`| ` operator for use in type " +"expressions." +msgstr "" +"Sentinel ਆਬਜੈਕਟ type expressions ਵਿੱਚ ਵਰਤੋਂ ਲਈ :ref:`| ` operator ਦਾ " +"ਸਮਰਥਨ ਕਰਦੇ ਹਨ।" + +msgid "" +":mod:`Pickling ` is supported for sentinel objects that are placed " +"in the global scope of a module under a name matching the sentinel's name, " +"and for sentinels placed in class scopes with a name matching " +"the :term:`qualified name` of the sentinel. Other sentinels, such as those " +"defined in a function scope, are not picklable. The identity of the sentinel " +"is preserved after pickling::" +msgstr "" +":mod:`Pickling ` ਉਹਨਾਂ sentinel objects ਲਈ ਸਮਰਥਿਤ ਹੈ ਜੋ ਕਿਸੇ module ਦੇ " +"global scope ਵਿੱਚ sentinel ਦੇ ਨਾਮ ਨਾਲ ਮਿਲਦੇ ਨਾਮ ਹੇਠ ਰੱਖੇ ਗਏ ਹੋਣ, ਅਤੇ ਉਹਨਾਂ sentinels " +"ਲਈ ਵੀ ਜੋ class scope ਵਿੱਚ sentinel ਦੇ :term:`qualified name` ਨਾਲ ਮਿਲਦੇ ਨਾਮ ਹੇਠ ਰੱਖੇ " +"ਗਏ ਹੋਣ। ਹੋਰ sentinels, ਜਿਵੇਂ ਕਿ function scope ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ sentinels, picklable " +"ਨਹੀਂ ਹੁੰਦੇ। Pickling ਤੋਂ ਬਾਅਦ ਵੀ sentinel ਦੀ ਪਹਿਚਾਣ ਸੁਰੱਖਿਅਤ ਰਹਿੰਦੀ ਹੈ::" + +msgid "" +"import pickle\n" +"\n" +"PICKLABLE = sentinel(\"PICKLABLE\")\n" +"\n" +"assert pickle.loads(pickle.dumps(PICKLABLE)) is PICKLABLE\n" +"\n" +"class Cls:\n" +" PICKLABLE = sentinel(\"Cls.PICKLABLE\")\n" +"\n" +"assert pickle.loads(pickle.dumps(Cls.PICKLABLE)) is Cls.PICKLABLE" +msgstr "" +"import pickle\n" +"\n" +"PICKLABLE = sentinel(\"PICKLABLE\")\n" +"\n" +"assert pickle.loads(pickle.dumps(PICKLABLE)) is PICKLABLE\n" +"\n" +"class Cls:\n" +" PICKLABLE = sentinel(\"Cls.PICKLABLE\")\n" +"\n" +"assert pickle.loads(pickle.dumps(Cls.PICKLABLE)) is Cls.PICKLABLE" + +msgid "Sentinel objects have the following attributes:" +msgstr "Sentinel ਆਬਜੈਕਟਾਂ ਦੇ ਹੇਠ ਲਿਖੇ ਗੁਣ ਹੁੰਦੇ ਹਨ:" + +msgid "The sentinel's name." +msgstr "sentinel ਦਾ ਨਾਮ।" + +msgid "" +"The name of the module where the sentinel was created. This attribute is " +"writable." +msgstr "ਉਸ ਮੋਡੀਊਲ ਦਾ ਨਾਮ ਜਿੱਥੇ sentinel ਬਣਾਇਆ ਗਿਆ ਸੀ। ਇਹ ਗੁਣ ਲਿਖਣਯੋਗ ਹੈ।" + +msgid "" +"Return a :term:`slice` object representing the set of indices specified by " +"``range(start, stop, step)``. The *start* and *step* arguments default to " +"``None``." +msgstr "" +"``range(start, stop, step)`` ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਇੰਡੈਕਸਾਂ ਦੇ ਸਮੂਹ ਨੂੰ ਦਰਸਾਉਂਦਾ " +"ਇੱਕ :term:`slice` ਆਬਜੈਕਟ ਵਾਪਸ ਕਰੋ। *start* ਅਤੇ *step* ਆਰਗੂਮੈਂਟਾਂ ਦਾ ਮੂਲ ਮੁੱਲ ``None`` ਹੈ।" + +msgid "" +"Slice objects are also generated when :ref:`slicing syntax ` is " +"used. For example: ``a[start:stop:step]`` or ``a[start:stop, i]``." +msgstr "" +"ਜਦੋਂ :ref:`slicing syntax ` ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਤਾਂ slice ਆਬਜੈਕਟ ਵੀ ਬਣਾਏ ਜਾਂਦੇ " +"ਹਨ। ਉਦਾਹਰਨ ਲਈ: ``a[start:stop:step]`` ਜਾਂ ``a[start:stop, i]``।" + +msgid "" +"See :func:`itertools.islice` for an alternate version that returns " +"an :term:`iterator`." +msgstr "" +"ਵਿਕਲਪਿਕ ਸੰਸਕਰਣ ਲਈ ਜੋ ਇੱਕ :term:`iterator` ਵਾਪਸ ਕਰਦਾ ਹੈ, :func:`itertools.islice` " +"ਵੇਖੋ।" + +msgid "" +"These read-only attributes are set to the argument values (or their " +"default). They have no other explicit functionality; however, they are used " +"by NumPy and other third-party packages." +msgstr "" +"ਇਹ read-only attributes ਆਰਗੂਮੈਂਟਾਂ ਦੇ ਮੁੱਲਾਂ (ਜਾਂ ਉਨ੍ਹਾਂ ਦੇ ਮੂਲ ਮੁੱਲਾਂ) ਤੇ ਸੈੱਟ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। " +"ਇਨ੍ਹਾਂ ਦੀ ਕੋਈ ਹੋਰ ਸਪਸ਼ਟ ਕਾਰਗੁਜ਼ਾਰੀ ਨਹੀਂ ਹੈ; ਹਾਲਾਂਕਿ, NumPy ਅਤੇ ਹੋਰ third-party packages " +"ਇਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ।" + +msgid "" +"Slice objects are now :term:`hashable` " +"(provided :attr:`~slice.start`, :attr:`~slice.stop`, and :attr:`~slice.step` " +"are hashable)." +msgstr "" +"Slice ਆਬਜੈਕਟ ਹੁਣ :term:`hashable` ਹਨ " +"(ਜੇ :attr:`~slice.start`, :attr:`~slice.stop` ਅਤੇ :attr:`~slice.step` hashable " +"ਹੋਣ)।" + +msgid "Return a new sorted list from the items in *iterable*." +msgstr "*iterable* ਦੇ ਤੱਤਾਂ ਤੋਂ ਇੱਕ ਨਵੀਂ ਕ੍ਰਮਬੱਧ ਸੂਚੀ ਵਾਪਸ ਕਰੋ।" + +msgid "" +"Has two optional arguments which must be specified as keyword arguments." +msgstr "ਇਸ ਵਿੱਚ ਦੋ ਵਿਕਲਪਿਕ ਆਰਗੂਮੈਂਟ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ keyword arguments ਵਜੋਂ ਦੇਣਾ ਲਾਜ਼ਮੀ ਹੈ।" + +msgid "" +"*key* specifies a function of one argument that is used to extract a " +"comparison key from each element in *iterable* (for example, " +"``key=str.lower``). The default value is ``None`` (compare the elements " +"directly)." +msgstr "" +"*key* ਇੱਕ ਐਸਾ ਫੰਕਸ਼ਨ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਜੋ ਇੱਕ ਆਰਗੂਮੈਂਟ ਲੈਂਦਾ ਹੈ ਅਤੇ *iterable* ਦੇ ਹਰ ਤੱਤ ਤੋਂ " +"ਤੁਲਨਾ ਲਈ ਕੁੰਜੀ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ (ਉਦਾਹਰਨ ਲਈ ``key=str.lower``)। ਮੂਲ ਮੁੱਲ ``None`` ਹੈ " +"(ਤੱਤਾਂ ਦੀ ਸਿੱਧੀ ਤੁਲਨਾ ਕੀਤੀ ਜਾਂਦੀ ਹੈ)।" + +msgid "" +"*reverse* is a boolean value. If set to ``True``, then the list elements " +"are sorted as if each comparison were reversed." +msgstr "" +"*reverse* ਇੱਕ boolean ਮੁੱਲ ਹੈ। ਜੇ ਇਸ ਨੂੰ ``True`` ਕੀਤਾ ਜਾਵੇ ਤਾਂ ਸੂਚੀ ਦੇ ਤੱਤਾਂ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ " +"ਕ੍ਰਮਬੱਧ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਵੇਂ ਹਰ ਤੁਲਨਾ ਉਲਟੀ ਹੋਵੇ।" + +msgid "" +"Use :func:`functools.cmp_to_key` to convert an old-style *cmp* function to a " +"*key* function." +msgstr "" +"ਪੁਰਾਣੀ ਸ਼ੈਲੀ ਦੇ *cmp* ਫੰਕਸ਼ਨ ਨੂੰ *key* ਫੰਕਸ਼ਨ ਵਿੱਚ ਬਦਲਣ ਲਈ :func:`functools.cmp_to_key` " +"ਵਰਤੋ।" + +msgid "" +"The built-in :func:`sorted` function is guaranteed to be stable. A sort is " +"stable if it guarantees not to change the relative order of elements that " +"compare equal --- this is helpful for sorting in multiple passes (for " +"example, sort by department, then by salary grade)." +msgstr "" +"Built-in :func:`sorted` ਫੰਕਸ਼ਨ ਦੇ stable ਹੋਣ ਦੀ ਗਾਰੰਟੀ ਹੈ। ਕੋਈ sort ਉਸ ਵੇਲੇ stable " +"ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਉਹ ਇੱਕੋ ਜਿਹੀ ਤੁਲਨਾ ਵਾਲੇ ਤੱਤਾਂ ਦੀ ਆਪਸੀ ਕ੍ਰਮਵਾਰਤਾ ਨੂੰ ਨਹੀਂ ਬਦਲਦਾ। ਇਹ ਕਈ " +"ਪੜਾਵਾਂ ਵਿੱਚ sorting ਕਰਨ ਲਈ ਲਾਭਦਾਇਕ ਹੈ (ਉਦਾਹਰਨ ਲਈ ਪਹਿਲਾਂ department ਅਨੁਸਾਰ ਅਤੇ ਫਿਰ " +"salary grade ਅਨੁਸਾਰ sort ਕਰਨਾ)।" + +msgid "" +"The sort algorithm uses only ``<`` comparisons between items. While " +"defining an :meth:`~object.__lt__` method will suffice for sorting, :PEP:`8` " +"recommends that all six :ref:`rich comparisons ` be " +"implemented. This will help avoid bugs when using the same data with other " +"ordering tools such as :func:`max` that rely on a different underlying " +"method. Implementing all six comparisons also helps avoid confusion for " +"mixed type comparisons which can call the reflected :meth:`~object.__gt__` " +"method." +msgstr "" +"Sort algorithm ਤੱਤਾਂ ਵਿਚਕਾਰ ਕੇਵਲ ``<`` ਤੁਲਨਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਭਾਵੇਂ sorting " +"ਲਈ :meth:`~object.__lt__` method ਪਰਿਭਾਸ਼ਿਤ ਕਰਨਾ ਕਾਫ਼ੀ ਹੈ, :PEP:`8` ਸਿਫ਼ਾਰਸ਼ ਕਰਦਾ " +"ਹੈ ਕਿ ਸਾਰੀਆਂ ਛੇ :ref:`rich comparisons ` ਲਾਗੂ ਕੀਤੀਆਂ ਜਾਣ। ਇਸ ਨਾਲ " +"ਉਹਨਾਂ bugs ਤੋਂ ਬਚਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ ਜੋ ਇੱਕੋ ਡਾਟਾ ਨੂੰ :func:`max` ਵਰਗੇ ਹੋਰ ordering " +"tools ਨਾਲ ਵਰਤਣ ਸਮੇਂ ਪੈਦਾ ਹੋ ਸਕਦੇ ਹਨ, ਕਿਉਂਕਿ ਉਹ ਵੱਖਰੇ underlying methods 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ " +"ਹਨ। ਸਾਰੀਆਂ ਛੇ ਤੁਲਨਾਵਾਂ ਲਾਗੂ ਕਰਨ ਨਾਲ mixed type comparisons ਵਿੱਚ ਹੋਣ ਵਾਲੀ ਉਲਝਣ ਤੋਂ ਵੀ " +"ਬਚਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਜਿੱਥੇ reflected :meth:`~object.__gt__` method ਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ।" + +msgid "" +"For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." +msgstr "sorting ਦੀਆਂ ਉਦਾਹਰਣਾਂ ਅਤੇ ਸੰਖੇਪ tutorial ਲਈ :ref:`sortinghowto` ਵੇਖੋ।" + +msgid "Transform a method into a static method." +msgstr "ਇੱਕ method ਨੂੰ static method ਵਿੱਚ ਬਦਲੋ।" + +msgid "" +"A static method does not receive an implicit first argument. To declare a " +"static method, use this idiom::" +msgstr "" +"Static method ਨੂੰ ਕੋਈ implicit ਪਹਿਲਾ ਆਰਗੂਮੈਂਟ ਨਹੀਂ ਮਿਲਦਾ। Static method ਘੋਸ਼ਿਤ ਕਰਨ ਲਈ " +"ਇਹ ਰੂਪ ਵਰਤੋ::" + +msgid "" +"class C:\n" +" @staticmethod\n" +" def f(arg1, arg2, argN): ..." +msgstr "" +"class C:\n" +" @staticmethod\n" +" def f(arg1, arg2, argN): ..." + +msgid "" +"The ``@staticmethod`` form is a function :term:`decorator` -- " +"see :ref:`function` for details." +msgstr "" +"``@staticmethod`` ਰੂਪ ਇੱਕ function :term:`decorator` ਹੈ — ਵੇਰਵਿਆਂ " +"ਲਈ :ref:`function` ਵੇਖੋ।" + +msgid "" +"A static method can be called either on the class (such as ``C.f()``) or on " +"an instance (such as ``C().f()``). Moreover, the static " +"method :term:`descriptor` is also callable, so it can be used in the class " +"definition (such as ``f()``)." +msgstr "" +"ਇੱਕ static method ਨੂੰ class ਉੱਤੇ (ਜਿਵੇਂ ``C.f()``) ਜਾਂ instance ਉੱਤੇ (ਜਿਵੇਂ ``C().f()``) " +"ਦੋਵੇਂ ਤਰੀਕਿਆਂ ਨਾਲ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, static " +"method :term:`descriptor` ਆਪ ਵੀ callable ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਇਸਨੂੰ class definition ਦੇ " +"ਅੰਦਰ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ (ਜਿਵੇਂ ``f()``)।" + +msgid "" +"Static methods in Python are similar to those found in Java or C++. Also, " +"see :deco:`classmethod` for a variant that is useful for creating alternate " +"class constructors." +msgstr "" +"Python ਵਿੱਚ static methods, Java ਜਾਂ C++ ਵਿੱਚ ਮਿਲਣ ਵਾਲੇ static methods ਦੇ ਸਮਾਨ " +"ਹਨ। ਇਸਦੇ ਨਾਲ :deco:`classmethod` ਵੀ ਵੇਖੋ, ਜੋ alternate class constructors ਬਣਾਉਣ " +"ਲਈ ਲਾਭਦਾਇਕ ਇੱਕ variant ਹੈ।" + +msgid "" +"Like all decorators, it is also possible to call ``staticmethod`` as a " +"regular function and do something with its result. This is needed in some " +"cases where you need a reference to a function from a class body and you " +"want to avoid the automatic transformation to instance method. For these " +"cases, use this idiom::" +msgstr "" +"ਹੋਰ decorators ਵਾਂਗ, ``staticmethod`` ਨੂੰ ਇੱਕ ਆਮ function ਵਜੋਂ ਕਾਲ ਕਰਨਾ ਅਤੇ ਉਸਦੇ ਨਤੀਜੇ " +"ਨਾਲ ਕੰਮ ਕਰਨਾ ਵੀ ਸੰਭਵ ਹੈ। ਇਹ ਕੁਝ ਹਾਲਤਾਂ ਵਿੱਚ ਲੋੜੀਂਦਾ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਤੁਹਾਨੂੰ class body ਦੇ ਅੰਦਰੋਂ " +"ਕਿਸੇ function ਦਾ reference ਚਾਹੀਦਾ ਹੋਵੇ ਅਤੇ ਤੁਸੀਂ ਉਸਦੀ instance method ਵਿੱਚ ਹੋਣ ਵਾਲੀ " +"automatic transformation ਤੋਂ ਬਚਣਾ ਚਾਹੁੰਦੇ ਹੋ। ਅਜਿਹੀਆਂ ਹਾਲਤਾਂ ਵਿੱਚ ਇਹ idiom ਵਰਤੋ::" + +msgid "" +"def regular_function():\n" +" ...\n" +"\n" +"class C:\n" +" method = staticmethod(regular_function)" +msgstr "" +"def regular_function():\n" +" ...\n" +"\n" +"class C:\n" +" method = staticmethod(regular_function)" + +msgid "For more information on static methods, see :ref:`types`." +msgstr "Static methods ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`types` ਵੇਖੋ।" + +msgid "" +"Static methods now inherit the method attributes " +"(:attr:`~function.__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__doc__` " +"and :attr:`~function.__annotations__`), have a new ``__wrapped__`` " +"attribute, and are now callable as regular functions." +msgstr "" +"Static methods ਹੁਣ method attributes " +"(:attr:`~function.__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__doc__` " +"ਅਤੇ :attr:`~function.__annotations__`) ਨੂੰ inherit ਕਰਦੇ ਹਨ, ਉਨ੍ਹਾਂ ਕੋਲ ਨਵਾਂ " +"``__wrapped__`` attribute ਵੀ ਹੁੰਦਾ ਹੈ, ਅਤੇ ਹੁਣ ਉਨ੍ਹਾਂ ਨੂੰ ਆਮ functions ਵਾਂਗ ਕਾਲ ਕੀਤਾ " +"ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"Return a :class:`str` version of *object*. See :func:`str` for details." +msgstr "*object* ਦਾ :class:`str` ਰੂਪ ਵਾਪਸ ਕਰੋ। ਵੇਰਵਿਆਂ ਲਈ :func:`str` ਵੇਖੋ।" + +msgid "" +"``str`` is the built-in string :term:`class`. For general information about " +"strings, see :ref:`textseq`." +msgstr "" +"``str`` built-in string :term:`class` ਹੈ। Strings ਬਾਰੇ ਆਮ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`textseq` ਵੇਖੋ।" + +msgid "" +"Sums *start* and the items of an *iterable* from left to right and returns " +"the total. The *iterable*'s items are normally numbers, and the start value " +"is not allowed to be a string." +msgstr "" +"*start* ਅਤੇ *iterable* ਦੇ ਤੱਤਾਂ ਨੂੰ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਜੋੜ ਕੇ ਕੁੱਲ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ। *iterable* ਦੇ " +"ਤੱਤ ਆਮ ਤੌਰ 'ਤੇ ਸੰਖਿਆਵਾਂ ਹੁੰਦੇ ਹਨ ਅਤੇ *start* ਮੁੱਲ ਨੂੰ string ਹੋਣ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ।" + +msgid "" +"For some use cases, there are good alternatives to :func:`sum`. The " +"preferred, fast way to concatenate a sequence of strings is by calling " +"``''.join(sequence)``. To add floating-point values with extended " +"precision, see :func:`math.fsum`\\. To concatenate a series of iterables, " +"consider using :func:`itertools.chain`." +msgstr "" +"ਕੁਝ ਵਰਤੋਂ ਦੇ ਮਾਮਲਿਆਂ ਲਈ :func:`sum` ਦੇ ਚੰਗੇ ਵਿਕਲਪ ਮੌਜੂਦ ਹਨ। Strings ਦੀ ਲੜੀ ਨੂੰ ਜੋੜਨ ਦਾ " +"ਤਰਜੀਹੀ ਅਤੇ ਤੇਜ਼ ਤਰੀਕਾ ``''.join(sequence)`` ਨੂੰ ਕਾਲ ਕਰਨਾ ਹੈ। ਵੱਧ ਸ਼ੁੱਧਤਾ ਨਾਲ floating-" +"point ਮੁੱਲ ਜੋੜਣ ਲਈ :func:`math.fsum` ਵੇਖੋ। ਕਈ iterables ਨੂੰ ਜੋੜਣ " +"ਲਈ :func:`itertools.chain` ਵਰਤਣ ਬਾਰੇ ਸੋਚੋ।" + +msgid "The *start* parameter can be specified as a keyword argument." +msgstr "*start* ਪੈਰਾਮੀਟਰ ਨੂੰ keyword argument ਵਜੋਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ।" + +msgid "" +"Summation of floats switched to an algorithm that gives higher accuracy and " +"better commutativity on most builds." +msgstr "" +"Float ਮੁੱਲਾਂ ਦੇ ਜੋੜ ਲਈ ਹੁਣ ਇੱਕ ਐਲਗੋਰਿਦਮ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜੋ ਜ਼ਿਆਦਾਤਰ builds ਵਿੱਚ ਵੱਧ ਸ਼ੁੱਧਤਾ ਅਤੇ " +"ਬਿਹਤਰ commutativity ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" + +msgid "" +"Added specialization for summation of complexes, using same algorithm as for " +"summation of floats." +msgstr "" +"Complex ਸੰਖਿਆਵਾਂ ਦੇ ਜੋੜ ਲਈ ਵਿਸ਼ੇਸ਼ ਸਮਰਥਨ ਜੋੜਿਆ ਗਿਆ ਹੈ, ਜੋ floats ਦੇ ਜੋੜ ਵਾਲੇ ਹੀ ਐਲਗੋਰਿਦਮ " +"ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।" + +msgid "" +"Return a proxy object that delegates method calls to a parent or sibling " +"class of *type*. This is useful for accessing inherited methods that have " +"been overridden in a class." +msgstr "" +"ਇੱਕ proxy object ਵਾਪਸ ਕਰੋ ਜੋ method calls ਨੂੰ *type* ਦੀ parent ਜਾਂ sibling class " +"ਵੱਲ delegate ਕਰਦਾ ਹੈ। ਇਹ ਉਹਨਾਂ inherited methods ਤੱਕ ਪਹੁੰਚ ਲਈ ਲਾਭਦਾਇਕ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ " +"ਕਿਸੇ class ਵਿੱਚ override ਕੀਤਾ ਗਿਆ ਹੋਵੇ।" + +msgid "" +"The *object_or_type* determines the :term:`method resolution order` to be " +"searched. The search starts from the class right after the *type*." +msgstr "" +"*object_or_type* ਉਸ :term:`method resolution order` ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ " +"ਖੋਜ ਕੀਤੀ ਜਾਣੀ ਹੈ। ਖੋਜ *type* ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ਆਉਣ ਵਾਲੀ class ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ।" + +msgid "" +"For example, if :attr:`~type.__mro__` of *object_or_type* is ``D -> B -> C " +"-> A -> object`` and the value of *type* is ``B``, then :func:`super` " +"searches ``C -> A -> object``." +msgstr "" +"ਉਦਾਹਰਨ ਲਈ, ਜੇ *object_or_type* ਦਾ :attr:`~type.__mro__` ``D -> B -> C -> A -> " +"object`` ਹੋਵੇ ਅਤੇ *type* ਦਾ ਮੁੱਲ ``B`` ਹੋਵੇ, ਤਾਂ :func:`super` ``C -> A -> object`` " +"ਵਿੱਚ ਖੋਜ ਕਰਦਾ ਹੈ।" + +msgid "" +"The :attr:`~type.__mro__` attribute of the class corresponding to " +"*object_or_type* lists the method resolution search order used by " +"both :func:`getattr` and :func:`super`. The attribute is dynamic and can " +"change whenever the inheritance hierarchy is updated." +msgstr "" +"*object_or_type* ਨਾਲ ਸੰਬੰਧਿਤ class ਦਾ :attr:`~type.__mro__` attribute ਉਸ " +"method resolution search order ਦੀ ਸੂਚੀ ਦਿੰਦਾ ਹੈ ਜੋ :func:`getattr` " +"ਅਤੇ :func:`super` ਦੋਵਾਂ ਦੁਆਰਾ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ attribute dynamic ਹੈ ਅਤੇ inheritance " +"hierarchy ਵਿੱਚ ਤਬਦੀਲੀ ਆਉਣ 'ਤੇ ਬਦਲ ਸਕਦਾ ਹੈ।" + +msgid "" +"If the second argument is omitted, the super object returned is unbound. If " +"the second argument is an object, ``isinstance(obj, type)`` must be true. " +"If the second argument is a type, ``issubclass(type2, type)`` must be true " +"(this is useful for classmethods)." +msgstr "" +"ਜੇ ਦੂਜਾ argument ਛੱਡ ਦਿੱਤਾ ਜਾਵੇ, ਤਾਂ ਵਾਪਸ ਕੀਤਾ ਗਿਆ super object unbound ਹੁੰਦਾ ਹੈ। ਜੇ " +"ਦੂਜਾ argument ਇੱਕ object ਹੋਵੇ, ਤਾਂ ``isinstance(obj, type)`` ਸੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਜੇ " +"ਦੂਜਾ argument ਇੱਕ type ਹੋਵੇ, ਤਾਂ ``issubclass(type2, type)`` ਸੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ (ਇਹ " +"classmethods ਲਈ ਲਾਭਦਾਇਕ ਹੈ)।" + +msgid "" +"When called directly within an ordinary method of a class, both arguments " +"may be omitted (\"zero-argument :func:`!super`\"). In this case, *type* will " +"be the enclosing class, and *object_or_type* will be the first argument of " +"the immediately enclosing function (typically ``self``). Zero-" +"argument :func:`!super` will not work as expected within nested functions, " +"including generator expressions, which implicitly create nested functions." +msgstr "" + +msgid "" +"There are two typical use cases for *super*. In a class hierarchy with " +"single inheritance, *super* can be used to refer to parent classes without " +"naming them explicitly, thus making the code more maintainable. This use " +"closely parallels the use of *super* in other programming languages." +msgstr "" +"*super* ਦੇ ਦੋ ਆਮ ਵਰਤੋਂ-ਮਾਮਲੇ ਹਨ। Single inheritance ਵਾਲੀ class hierarchy ਵਿੱਚ " +"*super* ਦੀ ਵਰਤੋਂ parent classes ਨੂੰ ਬਿਨਾਂ ਸਿੱਧਾ ਨਾਮ ਲਏ ਸੰਬੋਧਨ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ, " +"ਜਿਸ ਨਾਲ ਕੋਡ ਦੀ ਸੰਭਾਲ ਕਰਨਾ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ। ਇਹ ਵਰਤੋਂ ਹੋਰ programming languages ਵਿੱਚ " +"*super* ਦੀ ਵਰਤੋਂ ਨਾਲ ਕਾਫ਼ੀ ਮਿਲਦੀ ਹੈ।" + +msgid "" +"The second use case is to support cooperative multiple inheritance in a " +"dynamic execution environment. This use case is unique to Python and is not " +"found in statically compiled languages or languages that only support single " +"inheritance. This makes it possible to implement \"diamond diagrams\" where " +"multiple base classes implement the same method. Good design dictates that " +"such implementations have the same calling signature in every case (because " +"the order of calls is determined at runtime, because that order adapts to " +"changes in the class hierarchy, and because that order can include sibling " +"classes that are unknown prior to runtime)." +msgstr "" +"ਦੂਜਾ ਵਰਤੋਂ-ਮਾਮਲਾ dynamic execution environment ਵਿੱਚ cooperative multiple " +"inheritance ਦਾ ਸਮਰਥਨ ਕਰਨਾ ਹੈ। ਇਹ ਵਰਤੋਂ Python ਲਈ ਵਿਲੱਖਣ ਹੈ ਅਤੇ statically compiled " +"languages ਜਾਂ ਉਹਨਾਂ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਨਹੀਂ ਮਿਲਦੀ ਜੋ ਕੇਵਲ single inheritance ਦਾ ਸਮਰਥਨ " +"ਕਰਦੀਆਂ ਹਨ। ਇਸ ਨਾਲ \"diamond diagrams\" ਨੂੰ ਲਾਗੂ ਕਰਨਾ ਸੰਭਵ ਬਣਦਾ ਹੈ, ਜਿੱਥੇ ਕਈ base " +"classes ਇੱਕੋ method ਨੂੰ ਲਾਗੂ ਕਰਦੀਆਂ ਹਨ। ਚੰਗੇ design ਅਨੁਸਾਰ ਅਜਿਹੀਆਂ implementations ਵਿੱਚ " +"ਹਰ ਹਾਲਤ ਵਿੱਚ ਇੱਕੋ calling signature ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ (ਕਿਉਂਕਿ calls ਦਾ ਕ੍ਰਮ runtime " +"ਦੌਰਾਨ ਨਿਰਧਾਰਤ ਹੁੰਦਾ ਹੈ, ਕਿਉਂਕਿ ਉਹ ਕ੍ਰਮ class hierarchy ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਦੇ ਅਨੁਸਾਰ ਬਦਲ " +"ਸਕਦਾ ਹੈ, ਅਤੇ ਕਿਉਂਕਿ ਉਸ ਕ੍ਰਮ ਵਿੱਚ ਅਜਿਹੀਆਂ sibling classes ਵੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀਆਂ ਹਨ ਜੋ " +"runtime ਤੋਂ ਪਹਿਲਾਂ ਜਾਣੀਆਂ ਨਾ ਹੋਣ)।" + +msgid "For both use cases, a typical superclass call looks like this::" +msgstr "ਦੋਵੇਂ ਵਰਤੋਂ ਦੇ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਇੱਕ ਆਮ superclass ਕਾਲ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ::" + +msgid "" +"class C(B):\n" +" def method(self, arg):\n" +" super().method(arg) # This does the same thing as:\n" +" # super(C, self).method(arg)" +msgstr "" +"class C(B):\n" +" def method(self, arg):\n" +" super().method(arg) # This does the same thing as:\n" +" # super(C, self).method(arg)" + +msgid "" +"In addition to method lookups, :func:`super` also works for attribute " +"lookups. One possible use case for this is calling :term:`descriptors " +"` in a parent or sibling class." +msgstr "" +"ਮੈਥਡ lookup ਤੋਂ ਇਲਾਵਾ, :func:`super` attribute lookup ਲਈ ਵੀ ਕੰਮ ਕਰਦਾ ਹੈ। ਇਸਦੀ ਇੱਕ " +"ਸੰਭਾਵਿਤ ਵਰਤੋਂ parent ਜਾਂ sibling class ਵਿੱਚ :term:`descriptors ` ਨੂੰ " +"ਕਾਲ ਕਰਨਾ ਹੈ।" + +msgid "" +"Note that :func:`super` is implemented as part of the binding process for " +"explicit dotted attribute lookups such as ``super().__getitem__(name)``. It " +"does so by implementing its own :meth:`~object.__getattribute__` method for " +"searching classes in a predictable order that supports cooperative multiple " +"inheritance. Accordingly, :func:`super` is undefined for implicit lookups " +"using statements or operators such as ``super()[name]``." +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ :func:`super` ਨੂੰ ``super().__getitem__(name)`` ਵਰਗੀਆਂ explicit " +"dotted attribute lookups ਲਈ binding process ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ " +"ਆਪਣੇ :meth:`~object.__getattribute__` ਮੈਥਡ ਰਾਹੀਂ classes ਨੂੰ ਇੱਕ ਅਨੁਮਾਨਯੋਗ ਕ੍ਰਮ ਵਿੱਚ " +"ਖੋਜਦਾ ਹੈ ਜੋ cooperative multiple inheritance ਨੂੰ ਸਮਰਥਨ ਦਿੰਦਾ ਹੈ। ਇਸ ਲਈ ``super()" +"[name]`` ਵਰਗੀਆਂ implicit lookups ਲਈ :func:`super` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੈ।" + +msgid "" +"Also note that, aside from the zero argument form, :func:`super` is not " +"limited to use inside methods. The two argument form specifies the " +"arguments exactly and makes the appropriate references. The zero argument " +"form only works inside a class definition, as the compiler fills in the " +"necessary details to correctly retrieve the class being defined, as well as " +"accessing the current instance for ordinary methods." +msgstr "" +"ਇਹ ਵੀ ਧਿਆਨ ਦਿਓ ਕਿ zero-argument ਰੂਪ ਤੋਂ ਇਲਾਵਾ, :func:`super` ਦੀ ਵਰਤੋਂ ਕੇਵਲ ਮੈਥਡਾਂ ਦੇ " +"ਅੰਦਰ ਹੀ ਸੀਮਿਤ ਨਹੀਂ ਹੈ। ਦੋ-ਆਰਗੂਮੈਂਟ ਰੂਪ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਦਰਸਾਉਂਦਾ ਹੈ ਅਤੇ ਉਚਿਤ ਹਵਾਲੇ " +"ਬਣਾਉਂਦਾ ਹੈ। zero-argument ਰੂਪ ਸਿਰਫ਼ class definition ਦੇ ਅੰਦਰ ਹੀ ਕੰਮ ਕਰਦਾ ਹੈ, ਕਿਉਂਕਿ " +"compiler ਲੋੜੀਂਦੇ ਵੇਰਵੇ ਭਰਦਾ ਹੈ ਤਾਂ ਜੋ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀ ਜਾ ਰਹੀ class ਅਤੇ ਮੌਜੂਦਾ instance ਨੂੰ " +"ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕੇ।" + +msgid "" +"For practical suggestions on how to design cooperative classes " +"using :func:`super`, see `guide to using super() `_." +msgstr "" +":func:`super` ਦੀ ਵਰਤੋਂ ਕਰਕੇ cooperative classes ਡਿਜ਼ਾਈਨ ਕਰਨ ਲਈ ਵਿਹਾਰਿਕ ਸੁਝਾਵਾਂ " +"ਵਾਸਤੇ `guide to using super() `_ ਵੇਖੋ।" + +msgid "" +":class:`super` objects are now :mod:`pickleable ` " +"and :mod:`copyable `." +msgstr "" +":class:`super` ਆਬਜੈਕਟ ਹੁਣ :mod:`pickleable ` ਅਤੇ :mod:`copyable ` " +"ਹਨ।" + +msgid "" +"Rather than being a function, :class:`tuple` is actually an immutable " +"sequence type, as documented in :ref:`typesseq-tuple` and :ref:`typesseq`." +msgstr "" +"ਫੰਕਸ਼ਨ ਹੋਣ ਦੀ ਬਜਾਏ, :class:`tuple` ਅਸਲ ਵਿੱਚ ਇੱਕ immutable sequence type ਹੈ, ਜਿਵੇਂ " +"ਕਿ :ref:`typesseq-tuple` ਅਤੇ :ref:`typesseq` ਵਿੱਚ ਦਸਤਾਵੇਜ਼ਬੱਧ ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"With one argument, return the type of an *object*. The return value is a " +"type object and generally the same object as returned " +"by :attr:`object.__class__`." +msgstr "" +"ਇੱਕ ਆਰਗੂਮੈਂਟ ਨਾਲ, *object* ਦੀ ਕਿਸਮ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਵਾਪਸ ਕੀਤਾ ਗਿਆ ਮੁੱਲ ਇੱਕ type object " +"ਹੁੰਦਾ ਹੈ ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ :attr:`object.__class__` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ object ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ " +"ਹੈ।" + +msgid "" +"The :func:`isinstance` built-in function is recommended for testing the type " +"of an object, because it takes subclasses into account." +msgstr "" +"ਕਿਸੇ object ਦੀ type ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ built-in ਫੰਕਸ਼ਨ :func:`isinstance` ਦੀ ਸਿਫ਼ਾਰਸ਼ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿਉਂਕਿ ਇਹ subclasses ਨੂੰ ਵੀ ਧਿਆਨ ਵਿੱਚ ਰੱਖਦਾ ਹੈ।" + +msgid "" +"With three arguments, return a new type object. This is essentially a " +"dynamic form of the :keyword:`class` statement. The *name* string is the " +"class name and becomes the :attr:`~type.__name__` attribute. The *bases* " +"tuple contains the base classes and becomes the :attr:`~type.__bases__` " +"attribute; if empty, :class:`object`, the ultimate base of all classes, is " +"added. The *dict* dictionary contains attribute and method definitions for " +"the class body; it may be copied or wrapped before becoming " +"the :attr:`~type.__dict__` attribute. The following two statements create " +"identical :class:`!type` objects:" +msgstr "" +"ਤਿੰਨ arguments ਨਾਲ ਇੱਕ ਨਵਾਂ type object ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਅਸਲ " +"ਵਿੱਚ :keyword:`class` statement ਦਾ ਇੱਕ dynamic ਰੂਪ ਹੈ। *name* string class ਦਾ " +"ਨਾਮ ਹੁੰਦੀ ਹੈ ਅਤੇ :attr:`~type.__name__` attribute ਬਣ ਜਾਂਦੀ ਹੈ। *bases* tuple ਵਿੱਚ " +"base classes ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ ਇਹ :attr:`~type.__bases__` attribute ਬਣ ਜਾਂਦੀ ਹੈ; ਜੇ ਇਹ " +"ਖਾਲੀ ਹੋਵੇ ਤਾਂ :class:`object`, ਜੋ ਸਾਰੀਆਂ classes ਦਾ ਆਖਰੀ base ਹੈ, ਜੋੜ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। " +"*dict* dictionary ਵਿੱਚ class body ਲਈ attributes ਅਤੇ methods ਦੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਹੁੰਦੀਆਂ " +"ਹਨ; :attr:`~type.__dict__` attribute ਬਣਨ ਤੋਂ ਪਹਿਲਾਂ ਇਸਦੀ ਨਕਲ ਕੀਤੀ ਜਾਂ ਇਸਨੂੰ wrap " +"ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੇ ਦੋ statements ਇੱਕੋ ਜਿਹੇ :class:`!type` objects ਬਣਾਉਂਦੇ ਹਨ:" + +msgid "See also:" +msgstr "ਇਹ ਵੀ ਵੇਖੋ:" + +msgid "" +":ref:`Documentation on attributes and methods on classes `." +msgstr "" +":ref:`Classes ਦੇ attributes ਅਤੇ methods ਬਾਰੇ ਦਸਤਾਵੇਜ਼ `।" + +msgid ":ref:`bltin-type-objects`" +msgstr ":ref:`bltin-type-objects`" + +msgid "" +"Keyword arguments provided to the three argument form are passed to the " +"appropriate metaclass machinery (usually :meth:`~object.__init_subclass__`) " +"in the same way that keywords in a class definition (besides *metaclass*) " +"would." +msgstr "" +"ਤਿੰਨ-argument ਰੂਪ ਨੂੰ ਦਿੱਤੇ ਗਏ keyword arguments ਨੂੰ ਉਚਿਤ metaclass machinery (ਆਮ ਤੌਰ " +"'ਤੇ :meth:`~object.__init_subclass__`) ਤੱਕ ਉਸੇ ਤਰੀਕੇ ਨਾਲ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ ਜਿਵੇਂ class " +"definition ਵਿੱਚ ਦਿੱਤੇ keywords (*metaclass* ਤੋਂ ਇਲਾਵਾ) ਭੇਜੇ ਜਾਂਦੇ ਹਨ।" + +msgid "" +"Unlike a :keyword:`class` statement, the three argument form does not call " +"the metaclass ``__prepare__`` method (see :ref:`prepare`). " +"Use :func:`types.new_class` to dynamically create a class using the " +"appropriate metaclass." +msgstr "" +":keyword:`class` ਬਿਆਨ ਦੇ ਉਲਟ, ਤਿੰਨ-ਅਰਗੂਮੈਂਟ ਰੂਪ ਮੈਟਾਕਲਾਸ ``__prepare__`` ਮੈਥਡ ਨੂੰ ਨਹੀਂ " +"ਬੁਲਾਉਂਦਾ (ਦੇਖੋ :ref:`prepare`)। ਉਚਿਤ ਮੈਟਾਕਲਾਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡਾਇਨਾਮਿਕ ਤੌਰ 'ਤੇ ਕਲਾਸ " +"ਬਣਾਉਣ ਲਈ :func:`types.new_class` ਦੀ ਵਰਤੋਂ ਕਰੋ।" + +msgid "See also :ref:`class-customization`." +msgstr "ਇਹ ਵੀ ਵੇਖੋ :ref:`class-customization`।" + +msgid "" +"Subclasses of :class:`!type` which don't override ``type.__new__`` may no " +"longer use the one-argument form to get the type of an object." +msgstr "" +":class:`!type` ਦੀਆਂ ਉਹ subclasses ਜੋ ``type.__new__`` ਨੂੰ override ਨਹੀਂ ਕਰਦੀਆਂ, ਹੁਣ " +"ਕਿਸੇ object ਦਾ type ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਇੱਕ-argument ਰੂਪ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਸਕਦੀਆਂ।" + +msgid "*dict* can now be a :class:`frozendict`." +msgstr "*dict* ਹੁਣ :class:`frozendict` ਵੀ ਹੋ ਸਕਦਾ ਹੈ।" + +msgid "" +"Return the :attr:`~object.__dict__` attribute for a module, class, instance, " +"or any other object with a :attr:`!__dict__` attribute." +msgstr "" +"ਕਿਸੇ module, class, instance ਜਾਂ ਕਿਸੇ ਹੋਰ object ਲਈ ਜਿਸ ਵਿੱਚ :attr:`!__dict__` " +"attribute ਹੋਵੇ, ਉਸਦਾ :attr:`~object.__dict__` attribute ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "" +"Objects such as modules and instances have an " +"updateable :attr:`~object.__dict__` attribute; however, other objects may " +"have write restrictions on their :attr:`!__dict__` attributes (for example, " +"classes use a :class:`types.MappingProxyType` to prevent direct dictionary " +"updates)." +msgstr "" +"Modules ਅਤੇ instances ਵਰਗੇ objects ਵਿੱਚ ਅਪਡੇਟ ਕੀਤੇ ਜਾ ਸਕਣ " +"ਵਾਲਾ :attr:`~object.__dict__` attribute ਹੁੰਦਾ ਹੈ; ਪਰ ਹੋਰ objects ਆਪਣੇ :attr:`!" +"__dict__` attribute 'ਤੇ ਲਿਖਣ ਸੰਬੰਧੀ ਪਾਬੰਦੀਆਂ ਰੱਖ ਸਕਦੇ ਹਨ (ਉਦਾਹਰਨ ਲਈ, classes ਸਿੱਧੀਆਂ " +"dictionary updates ਨੂੰ ਰੋਕਣ ਲਈ :class:`types.MappingProxyType` ਵਰਤਦੀਆਂ ਹਨ)।" + +msgid "Without an argument, :func:`vars` acts like :func:`locals`." +msgstr "ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ, :func:`vars` :func:`locals` ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ।" + +msgid "" +"A :exc:`TypeError` exception is raised if an object is specified but it " +"doesn't have a :attr:`~object.__dict__` attribute (for example, if its class " +"defines the :attr:`~object.__slots__` attribute)." +msgstr "" +"ਜੇ ਕੋਈ object ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ ਪਰ ਉਸ ਵਿੱਚ :attr:`~object.__dict__` attribute ਨਾ ਹੋਵੇ " +"(ਉਦਾਹਰਨ ਲਈ, ਜੇ ਉਸਦੀ class :attr:`~object.__slots__` attribute ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ " +"ਹੋਵੇ), ਤਾਂ :exc:`TypeError` exception ਉਠਾਈ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"The result of calling this function without an argument has been updated as " +"described for the :func:`locals` builtin." +msgstr "" +"ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਬਿਨਾਂ ਆਰਗੂਮੈਂਟ ਦੇ ਕਾਲ ਕਰਨ ਦਾ ਨਤੀਜਾ ਹੁਣ :func:`locals` built-in ਲਈ ਵਰਣਿਤ " +"ਤਰੀਕੇ ਅਨੁਸਾਰ ਅਪਡੇਟ ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"Iterate over several iterables in parallel, producing tuples with an item " +"from each one." +msgstr "" +"ਕਈ iterables 'ਤੇ ਸਮਾਂਤਰ ਤੌਰ 'ਤੇ iteration ਕਰਦਾ ਹੈ ਅਤੇ ਹਰ ਇੱਕ ਤੋਂ ਇੱਕ ਤੱਤ ਲੈ ਕੇ tuples " +"ਬਣਾਉਂਦਾ ਹੈ।" + +msgid "Example::" +msgstr "ਉਦਾਹਰਨ::" + +msgid "" +">>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):\n" +"... print(item)\n" +"...\n" +"(1, 'sugar')\n" +"(2, 'spice')\n" +"(3, 'everything nice')" +msgstr "" +">>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):\n" +"... print(item)\n" +"...\n" +"(1, 'sugar')\n" +"(2, 'spice')\n" +"(3, 'everything nice')" + +msgid "" +"More formally: :func:`zip` returns an iterator of tuples, where the *i*-th " +"tuple contains the *i*-th element from each of the argument iterables." +msgstr "" +"ਵਧੇਰੇ ਰਸਮੀ ਤੌਰ 'ਤੇ, :func:`zip` tuples ਦਾ ਇੱਕ iterator ਵਾਪਸ ਕਰਦਾ ਹੈ, ਜਿੱਥੇ *i*-ਵੇਂ " +"tuple ਵਿੱਚ ਹਰ argument iterable ਦਾ *i*-ਵਾਂ ਤੱਤ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ।" + +msgid "" +"Another way to think of :func:`zip` is that it turns rows into columns, and " +"columns into rows. This is similar to `transposing a matrix `_." +msgstr "" +":func:`zip` ਬਾਰੇ ਸੋਚਣ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਇਹ ਕਤਾਰਾਂ ਨੂੰ ਕਾਲਮਾਂ ਵਿੱਚ ਬਦਲਦਾ ਹੈ, ਅਤੇ " +"ਕਾਲਮਾਂ ਨੂੰ ਕਤਾਰਾਂ ਵਿੱਚ। ਇਹ `matrix transpose `_ ਵਰਗਾ ਹੈ।" + +msgid "" +":func:`zip` is lazy: The elements won't be processed until the iterable is " +"iterated on, e.g. by a :keyword:`!for` loop or by wrapping in " +"a :class:`list`." +msgstr "" +":func:`zip` lazy ਹੈ: ਤੱਤਾਂ ਨੂੰ ਤਦ ਤੱਕ process ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਜਦ ਤੱਕ iterable ਉੱਤੇ " +"iteration ਨਾ ਕੀਤੀ ਜਾਵੇ, ਉਦਾਹਰਨ ਲਈ :keyword:`!for` loop ਰਾਹੀਂ ਜਾਂ " +"ਇਸਨੂੰ :class:`list` ਵਿੱਚ wrap ਕਰਕੇ।" + +msgid "" +"One thing to consider is that the iterables passed to :func:`zip` could have " +"different lengths; sometimes by design, and sometimes because of a bug in " +"the code that prepared these iterables. Python offers three different " +"approaches to dealing with this issue:" +msgstr "" +"ਇੱਕ ਗੱਲ ਧਿਆਨ ਵਿੱਚ ਰੱਖਣ ਯੋਗ ਹੈ ਕਿ :func:`zip` ਨੂੰ ਦਿੱਤੇ ਗਏ iterables ਦੀ ਲੰਬਾਈ ਵੱਖ-ਵੱਖ ਹੋ " +"ਸਕਦੀ ਹੈ; ਕਈ ਵਾਰ ਇਹ design ਅਨੁਸਾਰ ਹੁੰਦਾ ਹੈ ਅਤੇ ਕਈ ਵਾਰ ਇਹਨਾਂ iterables ਨੂੰ ਤਿਆਰ ਕਰਨ ਵਾਲੇ " +"code ਵਿੱਚ bug ਕਾਰਨ। Python ਇਸ ਸਮੱਸਿਆ ਨਾਲ ਨਿਪਟਣ ਲਈ ਤਿੰਨ ਵੱਖਰੇ ਤਰੀਕੇ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ:" + +msgid "" +"By default, :func:`zip` stops when the shortest iterable " +"is :term:`exhausted`. It will ignore the remaining items in the longer " +"iterables, cutting off the result to the length of the shortest iterable::" +msgstr "" +"ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ, :func:`zip` ਉਦੋਂ ਰੁਕ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸਭ ਤੋਂ ਛੋਟਾ ਇਟਰੇਬਲ :term:`exhausted` " +"ਹੋ ਜਾਂਦਾ ਹੈ। ਇਹ ਲੰਬੇ ਇਟਰੇਬਲਜ਼ ਵਿੱਚ ਬਾਕੀ ਰਹਿ ਗਈਆਂ ਆਈਟਮਾਂ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰ ਦੇਵੇਗਾ ਅਤੇ ਨਤੀਜੇ ਨੂੰ ਸਭ " +"ਤੋਂ ਛੋਟੇ ਇਟਰੇਬਲ ਦੀ ਲੰਬਾਈ ਤੱਕ ਸੀਮਿਤ ਕਰ ਦੇਵੇਗਾ::" + +msgid "" +">>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum']))\n" +"[(0, 'fee'), (1, 'fi'), (2, 'fo')]" +msgstr "" +">>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum']))\n" +"[(0, 'fee'), (1, 'fi'), (2, 'fo')]" + +msgid "" +":func:`zip` is often used in cases where the iterables are assumed to be of " +"equal length. In such cases, it's recommended to use the ``strict=True`` " +"option. Its output is the same as regular :func:`zip`::" +msgstr "" +":func:`zip` ਅਕਸਰ ਉਹਨਾਂ ਹਾਲਤਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਿੱਥੇ iterables ਦੀ ਲੰਬਾਈ ਇੱਕੋ ਜਿਹੀ " +"ਮੰਨੀ ਜਾਂਦੀ ਹੈ। ਅਜਿਹੀਆਂ ਹਾਲਤਾਂ ਵਿੱਚ ``strict=True`` ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ। ਇਸਦਾ output ਆਮ :func:`zip` ਵਾਂਗ ਹੀ ਹੁੰਦਾ ਹੈ::" + +msgid "" +">>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))\n" +"[('a', 1), ('b', 2), ('c', 3)]" +msgstr "" +">>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))\n" +"[('a', 1), ('b', 2), ('c', 3)]" + +msgid "" +"Unlike the default behavior, it raises a :exc:`ValueError` if one iterable " +"is :term:`exhausted` before the others:" +msgstr "" +"ਡਿਫਾਲਟ ਵਿਹਾਰ ਦੇ ਉਲਟ, ਜੇਕਰ ਕੋਈ ਇੱਕ ਇਟਰੇਬਲ ਦੂਜਿਆਂ ਤੋਂ ਪਹਿਲਾਂ :term:`exhausted` ਹੋ ਜਾਂਦਾ ਹੈ, " +"ਤਾਂ ਇਹ :exc:`ValueError` ਉਠਾਉਂਦਾ ਹੈ:" + +msgid "" +"Without the ``strict=True`` argument, any bug that results in iterables of " +"different lengths will be silenced, possibly manifesting as a hard-to-find " +"bug in another part of the program." +msgstr "" +"``strict=True`` argument ਤੋਂ ਬਿਨਾਂ, ਕੋਈ ਵੀ bug ਜੋ ਵੱਖ-ਵੱਖ ਲੰਬਾਈ ਵਾਲੇ iterables ਪੈਦਾ " +"ਕਰਦਾ ਹੈ, ਚੁੱਪਚਾਪ ਲੁਕਿਆ ਰਹਿ ਸਕਦਾ ਹੈ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਪ੍ਰੋਗਰਾਮ ਦੇ ਕਿਸੇ ਹੋਰ ਹਿੱਸੇ ਵਿੱਚ ਲੱਭਣ ਲਈ " +"ਮੁਸ਼ਕਲ bug ਵਜੋਂ ਸਾਹਮਣੇ ਆ ਸਕਦਾ ਹੈ।" + +msgid "" +"Shorter iterables can be padded with a constant value to make all the " +"iterables have the same length. This is done " +"by :func:`itertools.zip_longest`." +msgstr "" +"ਛੋਟੇ iterables ਨੂੰ ਇੱਕ ਸਥਿਰ ਮੁੱਲ ਨਾਲ ਭਰਿਆ ਜਾ ਸਕਦਾ ਹੈ ਤਾਂ ਜੋ ਸਾਰੇ iterables ਦੀ ਲੰਬਾਈ ਇੱਕੋ " +"ਜਿਹੀ ਹੋ ਜਾਵੇ। ਇਹ ਕੰਮ :func:`itertools.zip_longest` ਦੁਆਰਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"Edge cases: With a single iterable argument, :func:`zip` returns an iterator " +"of 1-tuples. With no arguments, it returns an empty iterator." +msgstr "" +"ਖਾਸ ਸਥਿਤੀਆਂ: ਇੱਕ ਹੀ iterable argument ਨਾਲ :func:`zip` 1-tuples ਦਾ ਇੱਕ iterator " +"ਵਾਪਸ ਕਰਦਾ ਹੈ। ਬਿਨਾਂ ਕਿਸੇ argument ਦੇ, ਇਹ ਇੱਕ ਖਾਲੀ iterator ਵਾਪਸ ਕਰਦਾ ਹੈ।" + +msgid "Tips and tricks:" +msgstr "ਸੁਝਾਅ ਅਤੇ ਤਰੀਕੇ:" + +msgid "" +"The left-to-right evaluation order of the iterables is guaranteed. This " +"makes possible an idiom for clustering a data series into n-length groups " +"using ``zip(*[iter(s)]*n, strict=True)``. This repeats the *same* iterator " +"``n`` times so that each output tuple has the result of ``n`` calls to the " +"iterator. This has the effect of dividing the input into n-length chunks." +msgstr "" +"iterables ਦੇ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਮੁਲਾਂਕਣ ਕ੍ਰਮ ਦੀ ਗਾਰੰਟੀ ਹੁੰਦੀ ਹੈ। ਇਸ ਨਾਲ ``zip(*[iter(s)]*n, " +"strict=True)`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡਾਟਾ ਲੜੀ ਨੂੰ n-ਲੰਬਾਈ ਵਾਲੇ ਸਮੂਹਾਂ ਵਿੱਚ ਵੰਡਣ ਦਾ ਇੱਕ ਤਰੀਕਾ ਸੰਭਵ " +"ਬਣਦਾ ਹੈ। ਇਹ ਇੱਕੋ iterator ਨੂੰ ``n`` ਵਾਰ ਦੁਹਰਾਉਂਦਾ ਹੈ ਤਾਂ ਜੋ ਹਰ ਆਉਟਪੁੱਟ tuple ਵਿੱਚ " +"iterator ਨੂੰ ``n`` ਵਾਰ ਕਾਲ ਕਰਨ ਦੇ ਨਤੀਜੇ ਸ਼ਾਮਲ ਹੋਣ। ਇਸ ਦਾ ਪ੍ਰਭਾਵ ਇਨਪੁੱਟ ਨੂੰ n-ਲੰਬਾਈ ਵਾਲੇ " +"ਹਿੱਸਿਆਂ ਵਿੱਚ ਵੰਡਣਾ ਹੁੰਦਾ ਹੈ।" + +msgid "" +":func:`zip` in conjunction with the ``*`` operator can be used to unzip a " +"list::" +msgstr "" +":func:`zip` ਨੂੰ ``*`` operator ਦੇ ਨਾਲ ਵਰਤ ਕੇ ਕਿਸੇ list ਨੂੰ unzip ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" + +msgid "" +">>> x = [1, 2, 3]\n" +">>> y = [4, 5, 6]\n" +">>> list(zip(x, y))\n" +"[(1, 4), (2, 5), (3, 6)]\n" +">>> x2, y2 = zip(*zip(x, y))\n" +">>> x == list(x2) and y == list(y2)\n" +"True" +msgstr "" +">>> x = [1, 2, 3]\n" +">>> y = [4, 5, 6]\n" +">>> list(zip(x, y))\n" +"[(1, 4), (2, 5), (3, 6)]\n" +">>> x2, y2 = zip(*zip(x, y))\n" +">>> x == list(x2) and y == list(y2)\n" +"True" + +msgid "Added the ``strict`` argument." +msgstr "``strict`` ਆਰਗੂਮੈਂਟ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ।" + +msgid "" +"This is an advanced function that is not needed in everyday Python " +"programming, unlike :func:`importlib.import_module`." +msgstr "" +"ਇਹ ਇੱਕ ਉੱਨਤ ਫੰਕਸ਼ਨ ਹੈ ਜਿਸਦੀ ਰੋਜ਼ਾਨਾ Python ਪ੍ਰੋਗਰਾਮਿੰਗ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਲੋੜ ਨਹੀਂ " +"ਪੈਂਦੀ, :func:`importlib.import_module` ਦੇ ਉਲਟ।" + +msgid "" +"This function is invoked by the :keyword:`import` statement. It can be " +"replaced (by importing the :mod:`builtins` module and assigning to " +"``builtins.__import__``) in order to change semantics of the :keyword:`!" +"import` statement, but doing so is **strongly** discouraged as it is usually " +"simpler to use import hooks (see :pep:`302`) to attain the same goals and " +"does not cause issues with code which assumes the default import " +"implementation is in use. Direct use of :func:`__import__` is also " +"discouraged in favor of :func:`importlib.import_module`." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ :keyword:`import` ਸਟੇਟਮੈਂਟ ਦੁਆਰਾ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। (:mod:`builtins` ਮੋਡੀਊਲ " +"ਨੂੰ ਇੰਪੋਰਟ ਕਰਕੇ ਅਤੇ ``builtins.__import__`` ਨੂੰ ਅਸਾਈਨ ਕਰਕੇ ਇਸਨੂੰ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ) ਤਾਂ " +"ਜੋ :keyword:`!import` ਸਟੇਟਮੈਂਟ ਦੇ ਵਿਹਾਰ ਨੂੰ ਬਦਲਿਆ ਜਾ ਸਕੇ, ਪਰ ਇਸ ਤਰ੍ਹਾਂ ਕਰਨਾ **ਸਖ਼ਤ ਤੌਰ " +"'ਤੇ ਨਿਰੁਤਸਾਹਿਤ** ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ ਆਮ ਤੌਰ 'ਤੇ import hooks (:pep:`302` ਵੇਖੋ) ਵਰਤਣਾ " +"ਹੋਰ ਆਸਾਨ ਹੁੰਦਾ ਹੈ ਅਤੇ ਇਹ ਉਸ ਕੋਡ ਨਾਲ ਸਮੱਸਿਆਵਾਂ ਨਹੀਂ ਪੈਦਾ ਕਰਦਾ ਜੋ ਡਿਫਾਲਟ import ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ " +"'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ। :func:`__import__` ਦੀ ਸਿੱਧੀ ਵਰਤੋਂ ਦੀ " +"ਬਜਾਏ :func:`importlib.import_module` ਵਰਤਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" + +msgid "" +"The function imports the module *name*, potentially using the given " +"*globals* and *locals* to determine how to interpret the name in a package " +"context. The *fromlist* gives the names of objects or submodules that should " +"be imported from the module given by *name*. The standard implementation " +"does not use its *locals* argument at all and uses its *globals* only to " +"determine the package context of the :keyword:`import` statement." +msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ *name* ਨਾਮ ਵਾਲੇ ਮੋਡੀਊਲ ਨੂੰ ਇੰਪੋਰਟ ਕਰਦਾ ਹੈ ਅਤੇ ਲੋੜ ਪੈਣ 'ਤੇ ਦਿੱਤੇ ਗਏ *globals* ਅਤੇ " +"*locals* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪੈਕੇਜ ਸੰਦਰਭ ਵਿੱਚ ਨਾਮ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ। *fromlist* ਉਹਨਾਂ " +"ਆਬਜੈਕਟਾਂ ਜਾਂ ਸਬਮੋਡੀਊਲਾਂ ਦੇ ਨਾਮ ਦਿੰਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ *name* ਦੁਆਰਾ ਦਰਸਾਏ ਮੋਡੀਊਲ ਤੋਂ ਇੰਪੋਰਟ ਕੀਤਾ " +"ਜਾਣਾ ਹੈ। ਮਿਆਰੀ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ *locals* ਆਰਗੂਮੈਂਟ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਦੀ ਅਤੇ *globals* ਦੀ ਵਰਤੋਂ " +"ਕੇਵਲ :keyword:`import` ਸਟੇਟਮੈਂਟ ਦਾ ਪੈਕੇਜ ਸੰਦਰਭ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਕਰਦੀ ਹੈ।" + +msgid "" +"*level* specifies whether to use absolute or relative imports. ``0`` (the " +"default) means only perform absolute imports. For relative imports, ``1`` " +"refers to the current package, ``2`` to its parent package, and so on " +"(see :pep:`328` for details)." +msgstr "" + +msgid "" +"When the *name* variable is of the form ``package.module``, normally, the " +"top-level package (the name up till the first dot) is returned, *not* the " +"module named by *name*. However, when a non-empty *fromlist* argument is " +"given, the module named by *name* is returned." +msgstr "" +"ਜਦੋਂ *name* ਦਾ ਰੂਪ ``package.module`` ਹੋਵੇ, ਤਾਂ ਆਮ ਤੌਰ 'ਤੇ top-level package (ਪਹਿਲੇ " +"dot ਤੱਕ ਦਾ ਨਾਮ) ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, *name* ਦੁਆਰਾ ਦਰਸਾਇਆ ਮੋਡੀਊਲ ਨਹੀਂ। ਹਾਲਾਂਕਿ, ਜੇ " +"*fromlist* ਖਾਲੀ ਨਾ ਹੋਵੇ, ਤਾਂ *name* ਦੁਆਰਾ ਦਰਸਾਇਆ ਮੋਡੀਊਲ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"For example, the statement ``import spam`` results in bytecode resembling " +"the following code::" +msgstr "" +"ਉਦਾਹਰਨ ਲਈ, ``import spam`` ਸਟੇਟਮੈਂਟ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਵਰਗਾ bytecode ਤਿਆਰ ਕਰਦੀ ਹੈ::" + +msgid "spam = __import__('spam', globals(), locals(), [], 0)" +msgstr "spam = __import__('spam', globals(), locals(), [], 0)" + +msgid "The statement ``import spam.ham`` results in this call::" +msgstr "``import spam.ham`` ਸਟੇਟਮੈਂਟ ਹੇਠਾਂ ਦਿੱਤੀ ਕਾਲ ਤਿਆਰ ਕਰਦੀ ਹੈ::" + +msgid "spam = __import__('spam.ham', globals(), locals(), [], 0)" +msgstr "spam = __import__('spam.ham', globals(), locals(), [], 0)" + +msgid "" +"Note how :func:`__import__` returns the toplevel module here because this is " +"the object that is bound to a name by the :keyword:`import` statement." +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਇੱਥੇ :func:`__import__` top-level module ਵਾਪਸ ਕਰਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹੀ ਉਹ " +"ਆਬਜੈਕਟ ਹੈ ਜੋ :keyword:`import` ਸਟੇਟਮੈਂਟ ਦੁਆਰਾ ਕਿਸੇ ਨਾਮ ਨਾਲ ਬਾਈਂਡ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "" +"On the other hand, the statement ``from spam.ham import eggs, sausage as " +"saus`` results in ::" +msgstr "" +"ਦੂਜੇ ਪਾਸੇ, ``from spam.ham import eggs, sausage as saus`` ਸਟੇਟਮੈਂਟ ਦਾ ਨਤੀਜਾ ਇਹ ਹੁੰਦਾ " +"ਹੈ::" + +msgid "" +"_temp = __import__('spam.ham', globals(), locals(), ['eggs', 'sausage'], 0)\n" +"eggs = _temp.eggs\n" +"saus = _temp.sausage" +msgstr "" +"_temp = __import__('spam.ham', globals(), locals(), ['eggs', 'sausage'], 0)\n" +"eggs = _temp.eggs\n" +"saus = _temp.sausage" + +msgid "" +"Here, the ``spam.ham`` module is returned from :func:`__import__`. From " +"this object, the names to import are retrieved and assigned to their " +"respective names." +msgstr "" +"ਇੱਥੇ :func:`__import__` ਤੋਂ ``spam.ham`` ਮੋਡੀਊਲ ਵਾਪਸ ਮਿਲਦਾ ਹੈ। ਇਸ ਆਬਜੈਕਟ ਤੋਂ ਇੰਪੋਰਟ ਕੀਤੇ " +"ਜਾਣ ਵਾਲੇ ਨਾਮ ਪ੍ਰਾਪਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ ਉਹਨਾਂ ਦੇ ਸੰਬੰਧਿਤ ਨਾਮਾਂ ਨੂੰ ਅਸਾਈਨ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।" + +msgid "" +"If you simply want to import a module (potentially within a package) by " +"name, use :func:`importlib.import_module`." +msgstr "" +"ਜੇ ਤੁਸੀਂ ਸਿਰਫ ਨਾਮ ਰਾਹੀਂ ਕਿਸੇ ਮੋਡੀਊਲ (ਸੰਭਵ ਤੌਰ 'ਤੇ ਕਿਸੇ ਪੈਕੇਜ ਦੇ ਅੰਦਰ) ਨੂੰ ਇੰਪੋਰਟ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, " +"ਤਾਂ :func:`importlib.import_module` ਵਰਤੋ।" + +msgid "" +"Negative values for *level* are no longer supported (which also changes the " +"default value to 0)." +msgstr "" +"*level* ਲਈ ਨਕਾਰਾਤਮਕ ਮੁੱਲ ਹੁਣ ਸਮਰਥਿਤ ਨਹੀਂ ਹਨ (ਅਤੇ ਇਸ ਨਾਲ ਡਿਫਾਲਟ ਮੁੱਲ ਵੀ 0 ਹੋ ਗਿਆ ਹੈ)।" + +msgid "" +"When the command line options :option:`-E` or :option:`-I` are being used, " +"the environment variable :envvar:`PYTHONCASEOK` is now ignored." +msgstr "" +"ਜਦੋਂ command line options :option:`-E` ਜਾਂ :option:`-I` ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ " +"environment variable :envvar:`PYTHONCASEOK` ਨੂੰ ਹੁਣ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" + +msgid "Footnotes" +msgstr "ਫੁਟਨੋਟ" + +msgid "" +"Note that the parser only accepts the Unix-style end of line convention. If " +"you are reading the code from a file, make sure to use newline conversion " +"mode to convert Windows or Mac-style newlines." +msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ parser ਕੇਵਲ Unix-ਸ਼ੈਲੀ end-of-line convention ਨੂੰ ਹੀ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ। ਜੇ " +"ਤੁਸੀਂ ਫਾਈਲ ਤੋਂ ਕੋਡ ਪੜ੍ਹ ਰਹੇ ਹੋ, ਤਾਂ Windows ਜਾਂ Mac-ਸ਼ੈਲੀ newlines ਨੂੰ ਬਦਲਣ ਲਈ newline " +"conversion mode ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਯਕੀਨੀ ਬਣਾਓ।" + +msgid "Boolean" +msgstr "ਬੂਲੀਅਨ" + +msgid "type" +msgstr "ਟਾਈਪ" + +msgid "built-in function" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" + +msgid "exec" +msgstr "exec" + +msgid "NaN" +msgstr "NaN" + +msgid "Infinity" +msgstr "Infinity" + +msgid "__format__" +msgstr "__format__" + +msgid "string" +msgstr "ਸਟ੍ਰਿੰਗ" + +msgid "format() (built-in function)" +msgstr "format() (ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ)" + +msgid "file object" +msgstr "ਫਾਇਲ ਆਬਜੈਕਟ" + +msgid "open() built-in function" +msgstr "open() ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" + +msgid "file" +msgstr "ਫਾਈਲ" + +msgid "modes" +msgstr "ਮੋਡ" + +msgid "universal newlines" +msgstr "ਯੂਨੀਵਰਸਲ ਨਿਊਲਾਈਨਜ਼" + +msgid "line-buffered I/O" +msgstr "ਲਾਈਨ-ਬਫਰਡ I/O" + +msgid "unbuffered I/O" +msgstr "ਬਿਨਾਂ ਬਫਰ ਵਾਲਾ I/O" + +msgid "buffer size, I/O" +msgstr "ਬਫਰ ਆਕਾਰ, I/O" + +msgid "I/O control" +msgstr "I/O ਨਿਯੰਤਰਣ" + +msgid "buffering" +msgstr "ਬਫਰਿੰਗ" + +msgid "text mode" +msgstr "ਟੈਕਸਟ ਮੋਡ" + +msgid "module" +msgstr "module" + +msgid "sys" +msgstr "sys" + +msgid "str() (built-in function)" +msgstr "str() (ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ)" + +msgid "object" +msgstr "ਵਸਤੂ" + +msgid "statement" +msgstr "statement" + +msgid "import" +msgstr "import" + +msgid "builtins" +msgstr "builtins" diff --git a/builtins/index.po b/builtins/index.po new file mode 100644 index 0000000..c6dddef --- /dev/null +++ b/builtins/index.po @@ -0,0 +1,58 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Bhuvansh Kataria, 2026 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" +"PO-Revision-Date: 2026-09-13 17:09+0000\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pa\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Python built-ins reference" +msgstr "Python ਦੇ ਬਿਲਟ-ਇਨ ਦੀ ਹਵਾਲਾ-ਸੂਚੀ" + +msgid "Python comes with a number of built-in functions and classes." +msgstr "Python ਵਿੱਚ ਕਈ ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ ਅਤੇ ਕਲਾਸਾਂ ਸ਼ਾਮਲ ਹਨ।" + +msgid "" +"The built-in classes include data types that would normally be considered " +"part of the \"core\" of a language, such as numbers and lists. For these " +"types, the Python language core defines the form of literals and places some " +"constraints on their semantics, but does not fully define the semantics." +msgstr "" +"ਬਿਲਟ-ਇਨ ਕਲਾਸਾਂ ਵਿੱਚ ਉਹ ਡਾਟਾ ਕਿਸਮਾਂ ਸ਼ਾਮਲ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਕਿਸੇ ਭਾਸ਼ਾ ਦੇ \"ਮੂਲ " +"ਹਿੱਸੇ\" ਦਾ ਭਾਗ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਨੰਬਰ ਅਤੇ ਸੂਚੀਆਂ। ਇਨ੍ਹਾਂ ਕਿਸਮਾਂ ਲਈ, Python ਭਾਸ਼ਾ ਦਾ " +"ਮੂਲ ਹਿੱਸਾ ਲਿਟਰਲਾਂ ਦਾ ਰੂਪ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਅਰਥਾਂ 'ਤੇ ਕੁਝ ਪਾਬੰਦੀਆਂ ਲਗਾਉਂਦਾ ਹੈ, ਪਰ " +"ਉਨ੍ਹਾਂ ਦੇ ਅਰਥਾਂ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਕਰਦਾ।" + +msgid "" +"The built-ins also include functions and exceptions --- objects that can be " +"used by all Python code without the need of an :keyword:`import` statement. " +"Some of these are defined by the core language, but many are not essential " +"for the core semantics and are only described here." +msgstr "" +"ਬਿਲਟ-ਇਨ ਵਿੱਚ ਫੰਕਸ਼ਨ ਅਤੇ ਅਪਵਾਦ ਵੀ ਸ਼ਾਮਲ ਹਨ --- ਅਜਿਹੇ ਆਬਜੈਕਟ ਜਿਨ੍ਹਾਂ ਨੂੰ ਸਾਰੇ Python ਕੋਡ " +"ਵਿੱਚ :keyword:`import` ਸਟੇਟਮੈਂਟ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੁਝ ਮੂਲ " +"ਭਾਸ਼ਾ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਗਏ ਹਨ, ਪਰ ਕਈ ਮੂਲ ਅਰਥ-ਵਿਵਸਥਾ ਲਈ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹਨ ਅਤੇ ਇੱਥੇ ਸਿਰਫ਼ " +"ਉਨ੍ਹਾਂ ਦਾ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ।" + +msgid "" +"In addition to the built-ins, Python provides an extensive importable " +"standard library, see :ref:`library-index`." +msgstr "" +"ਬਿਲਟ-ਇਨ ਤੋਂ ਇਲਾਵਾ, Python ਇੱਕ ਵਿਸ਼ਾਲ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਵੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਿਸ ਨੂੰ ਇੰਪੋਰਟ " +"ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਵੇਖੋ :ref:`library-index`।" diff --git a/library/stdtypes.po b/builtins/stdtypes.po similarity index 85% rename from library/stdtypes.po rename to builtins/stdtypes.po index 609407d..e864efc 100644 --- a/library/stdtypes.po +++ b/builtins/stdtypes.po @@ -4,6 +4,8 @@ # FIRST AUTHOR , YEAR. # # Translators: +# Sukhmanpreet kaur, 2026 +# DARSHAN RAJPUT, 2026 # Bhuvansh Kataria, 2026 # #, fuzzy @@ -11,11 +13,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" +"PO-Revision-Date: 2026-09-13 17:09+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -53,17 +55,18 @@ msgid "Truth Value Testing" msgstr "" msgid "" -"Any object can be tested for truth value, for use in an :keyword:`if` or :" -"keyword:`while` condition or as operand of the Boolean operations below." +"Any object can be tested for truth value, for use in an :keyword:`if` " +"or :keyword:`while` condition or as operand of the Boolean operations below." msgstr "" msgid "" -"By default, an object is considered true unless its class defines either a :" -"meth:`~object.__bool__` method that returns ``False`` or a :meth:`~object." -"__len__` method that returns zero, when called with the object. [1]_ If one " -"of the methods raises an exception when called, the exception is propagated " -"and the object does not have a truth value (for example, :data:" -"`NotImplemented`). Here are most of the built-in objects considered false:" +"By default, an object is considered true unless its class defines either " +"a :meth:`~object.__bool__` method that returns ``False`` or " +"a :meth:`~object.__len__` method that returns zero, when called with the " +"object. [1]_ If one of the methods raises an exception when called, the " +"exception is propagated and the object does not have a truth value (for " +"example, :data:`NotImplemented`). Here are most of the built-in objects " +"considered false:" msgstr "" msgid "constants defined to be false: ``None`` and ``False``" @@ -228,10 +231,11 @@ msgstr "" msgid "" "Instances of a class cannot be ordered with respect to other instances of " "the same class, or other types of object, unless the class defines enough of " -"the methods :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object." -"__gt__`, and :meth:`~object.__ge__` (in general, :meth:`~object.__lt__` and :" -"meth:`~object.__eq__` are sufficient, if you want the conventional meanings " -"of the comparison operators)." +"the " +"methods :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object.__gt__`, " +"and :meth:`~object.__ge__` (in general, :meth:`~object.__lt__` " +"and :meth:`~object.__eq__` are sufficient, if you want the conventional " +"meanings of the comparison operators)." msgstr "" msgid "" @@ -241,8 +245,8 @@ msgid "" msgstr "" msgid "" -"Two more operations with the same syntactic priority, :keyword:`in` and :" -"keyword:`not in`, are supported by types that are :term:`iterable` or " +"Two more operations with the same syntactic priority, :keyword:`in` " +"and :keyword:`not in`, are supported by types that are :term:`iterable` or " "implement the :meth:`~object.__contains__` method." msgstr "" @@ -255,12 +259,13 @@ msgid "" "subtype of integers. Integers have unlimited precision. Floating-point " "numbers are usually implemented using :c:expr:`double` in C; information " "about the precision and internal representation of floating-point numbers " -"for the machine on which your program is running is available in :data:`sys." -"float_info`. Complex numbers have a real and imaginary part, which are each " -"a floating-point number. To extract these parts from a complex number *z*, " -"use ``z.real`` and ``z.imag``. (The standard library includes the additional " -"numeric types :mod:`fractions.Fraction`, for rationals, and :mod:`decimal." -"Decimal`, for floating-point numbers with user-definable precision.)" +"for the machine on which your program is running is available " +"in :data:`sys.float_info`. Complex numbers have a real and imaginary part, " +"which are each a floating-point number. To extract these parts from a " +"complex number *z*, use ``z.real`` and ``z.imag``. (The standard library " +"includes the additional numeric types :mod:`fractions.Fraction`, for " +"rationals, and :mod:`decimal.Decimal`, for floating-point numbers with user-" +"definable precision.)" msgstr "" msgid "" @@ -601,8 +606,8 @@ msgstr "" msgid "" "Performing these calculations with at least one extra sign extension bit in " -"a finite two's complement representation (a working bit-width of ``1 + max(x." -"bit_length(), y.bit_length())`` or more) is sufficient to get the same " +"a finite two's complement representation (a working bit-width of ``1 + " +"max(x.bit_length(), y.bit_length())`` or more) is sufficient to get the same " "result as if there were an infinite number of sign bits." msgstr "" @@ -631,8 +636,8 @@ msgid "" "More precisely, if ``x`` is nonzero, then ``x.bit_length()`` is the unique " "positive integer ``k`` such that ``2**(k-1) <= abs(x) < 2**k``. " "Equivalently, when ``abs(x)`` is small enough to have a correctly rounded " -"logarithm, then ``k = 1 + int(log(abs(x), 2))``. If ``x`` is zero, then ``x." -"bit_length()`` returns ``0``." +"logarithm, then ``k = 1 + int(log(abs(x), 2))``. If ``x`` is zero, then " +"``x.bit_length()`` returns ``0``." msgstr "" msgid "Equivalent to::" @@ -669,9 +674,9 @@ msgid "Return an array of bytes representing an integer." msgstr "" msgid "" -"The integer is represented using *length* bytes, and defaults to 1. An :exc:" -"`OverflowError` is raised if the integer is not representable with the given " -"number of bytes." +"The integer is represented using *length* bytes, and defaults to 1. " +"An :exc:`OverflowError` is raised if the integer is not representable with " +"the given number of bytes." msgstr "" msgid "" @@ -731,8 +736,8 @@ msgid "" "integer, and defaults to ``\"big\"``. If *byteorder* is ``\"big\"``, the " "most significant byte is at the beginning of the byte array. If *byteorder* " "is ``\"little\"``, the most significant byte is at the end of the byte " -"array. To request the native byte order of the host system, use :data:`sys." -"byteorder` as the byte order value." +"array. To request the native byte order of the host system, " +"use :data:`sys.byteorder` as the byte order value." msgstr "" msgid "" @@ -766,8 +771,8 @@ msgid "" msgstr "" msgid "" -"Returns ``True``. Exists for duck type compatibility with :meth:`float." -"is_integer`." +"Returns ``True``. Exists for duck type compatibility " +"with :meth:`float.is_integer`." msgstr "" msgid "Additional Methods on Float" @@ -785,20 +790,20 @@ msgstr "" msgid "" "If the argument is an integer or a floating-point number, a floating-point " "number with the same value (within Python's floating-point precision) is " -"returned. If the argument is outside the range of a Python float, an :exc:" -"`OverflowError` will be raised." +"returned. If the argument is outside the range of a Python float, " +"an :exc:`OverflowError` will be raised." msgstr "" msgid "" -"For a general Python object ``x``, ``float.from_number(x)`` delegates to ``x." -"__float__()``. If :meth:`~object.__float__` is not defined then it falls " +"For a general Python object ``x``, ``float.from_number(x)`` delegates to " +"``x.__float__()``. If :meth:`~object.__float__` is not defined then it falls " "back to :meth:`~object.__index__`." msgstr "" msgid "" "Return a pair of integers whose ratio is exactly equal to the original " -"float. The ratio is in lowest terms and has a positive denominator. Raises :" -"exc:`OverflowError` on infinities and a :exc:`ValueError` on NaNs." +"float. The ratio is in lowest terms and has a positive denominator. " +"Raises :exc:`OverflowError` on infinities and a :exc:`ValueError` on NaNs." msgstr "" msgid "" @@ -834,8 +839,8 @@ msgid "" msgstr "" msgid "" -"Note that :meth:`float.hex` is an instance method, while :meth:`float." -"fromhex` is a class method." +"Note that :meth:`float.hex` is an instance method, " +"while :meth:`float.fromhex` is a class method." msgstr "" msgid "A hexadecimal string takes the form::" @@ -845,7 +850,7 @@ msgid "[sign] ['0x'] integer ['.' fraction] ['p' exponent]" msgstr "" msgid "" -"where the optional ``sign`` may by either ``+`` or ``-``, ``integer`` and " +"where the optional ``sign`` may be either ``+`` or ``-``, ``integer`` and " "``fraction`` are strings of hexadecimal digits, and ``exponent`` is a " "decimal integer with an optional leading sign. Case is not significant, and " "there must be at least one hexadecimal digit in either the integer or the " @@ -883,9 +888,9 @@ msgid "Additional Methods on Complex" msgstr "" msgid "" -"The :class:`!complex` type implements the :class:`numbers.Complex` :term:" -"`abstract base class`. :class:`!complex` also has the following additional " -"methods." +"The :class:`!complex` type implements " +"the :class:`numbers.Complex` :term:`abstract base class`. :class:`!complex` " +"also has the following additional methods." msgstr "" msgid "Class method to convert a number to a complex number." @@ -903,17 +908,18 @@ msgstr "" msgid "" "For numbers ``x`` and ``y``, possibly of different types, it's a requirement " -"that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`~object." -"__hash__` method documentation for more details). For ease of " -"implementation and efficiency across a variety of numeric types (including :" -"class:`int`, :class:`float`, :class:`decimal.Decimal` and :class:`fractions." -"Fraction`) Python's hash for numeric types is based on a single mathematical " -"function that's defined for any rational number, and hence applies to all " -"instances of :class:`int` and :class:`fractions.Fraction`, and all finite " -"instances of :class:`float` and :class:`decimal.Decimal`. Essentially, this " -"function is given by reduction modulo ``P`` for a fixed prime ``P``. The " -"value of ``P`` is made available to Python as the :attr:`~sys.hash_info." -"modulus` attribute of :data:`sys.hash_info`." +"that ``hash(x) == hash(y)`` whenever ``x == y`` (see " +"the :meth:`~object.__hash__` method documentation for more details). For " +"ease of implementation and efficiency across a variety of numeric types " +"(including :class:`int`, :class:`float`, :class:`decimal.Decimal` " +"and :class:`fractions.Fraction`) Python's hash for numeric types is based on " +"a single mathematical function that's defined for any rational number, and " +"hence applies to all instances of :class:`int` " +"and :class:`fractions.Fraction`, and all finite instances of :class:`float` " +"and :class:`decimal.Decimal`. Essentially, this function is given by " +"reduction modulo ``P`` for a fixed prime ``P``. The value of ``P`` is made " +"available to Python as the :attr:`~sys.hash_info.modulus` attribute " +"of :data:`sys.hash_info`." msgstr "" msgid "" @@ -950,16 +956,17 @@ msgstr "" msgid "" "For a :class:`complex` number ``z``, the hash values of the real and " -"imaginary parts are combined by computing ``hash(z.real) + sys.hash_info." -"imag * hash(z.imag)``, reduced modulo ``2**sys.hash_info.width`` so that it " -"lies in ``range(-2**(sys.hash_info.width - 1), 2**(sys.hash_info.width - " -"1))``. Again, if the result is ``-1``, it's replaced with ``-2``." +"imaginary parts are combined by computing ``hash(z.real) + " +"sys.hash_info.imag * hash(z.imag)``, reduced modulo " +"``2**sys.hash_info.width`` so that it lies in " +"``range(-2**(sys.hash_info.width - 1), 2**(sys.hash_info.width - 1))``. " +"Again, if the result is ``-1``, it's replaced with ``-2``." msgstr "" msgid "" "To clarify the above rules, here's some example Python code, equivalent to " -"the built-in hash, for computing the hash of a rational number, :class:" -"`float`, or :class:`complex`::" +"the built-in hash, for computing the hash of a rational " +"number, :class:`float`, or :class:`complex`::" msgstr "" msgid "" @@ -1003,8 +1010,8 @@ msgid "" "def hash_complex(z):\n" " \"\"\"Compute the hash of a complex number z.\"\"\"\n" "\n" -" hash_value = hash_float(z.real) + sys.hash_info.imag * hash_float(z." -"imag)\n" +" hash_value = hash_float(z.real) + sys.hash_info.imag * " +"hash_float(z.imag)\n" " # do a signed reduction modulo 2**sys.hash_info.width\n" " M = 2**(sys.hash_info.width - 1)\n" " hash_value = (hash_value & (M - 1)) - (hash_value & M)\n" @@ -1046,7 +1053,7 @@ msgid "" "using :func:`int` instead." msgstr "" -msgid "Iterator Types" +msgid "Iteration-related types" msgstr "" msgid "" @@ -1056,9 +1063,12 @@ msgid "" "support the iteration methods." msgstr "" +msgid "Iterables" +msgstr "" + msgid "" -"One method needs to be defined for container objects to provide :term:" -"`iterable` support:" +"One method needs to be defined for container objects to " +"provide :term:`iterable` support:" msgstr "" msgid "" @@ -1067,9 +1077,12 @@ msgid "" "of iteration, additional methods can be provided to specifically request " "iterators for those iteration types. (An example of an object supporting " "multiple forms of iteration would be a tree structure which supports both " -"breadth-first and depth-first traversal.) This method corresponds to the :c:" -"member:`~PyTypeObject.tp_iter` slot of the type structure for Python objects " -"in the Python/C API." +"breadth-first and depth-first traversal.) This method corresponds to " +"the :c:member:`~PyTypeObject.tp_iter` slot of the type structure for Python " +"objects in the Python/C API." +msgstr "" + +msgid "Iterators" msgstr "" msgid "" @@ -1079,9 +1092,10 @@ msgstr "" msgid "" "Return the :term:`iterator` object itself. This is required to allow both " -"containers and iterators to be used with the :keyword:`for` and :keyword:" -"`in` statements. This method corresponds to the :c:member:`~PyTypeObject." -"tp_iter` slot of the type structure for Python objects in the Python/C API." +"containers and iterators to be used with the :keyword:`for` " +"and :keyword:`in` statements. This method corresponds to " +"the :c:member:`~PyTypeObject.tp_iter` slot of the type structure for Python " +"objects in the Python/C API." msgstr "" msgid "" @@ -1099,22 +1113,303 @@ msgid "" msgstr "" msgid "" -"Once an iterator's :meth:`~iterator.__next__` method raises :exc:" -"`StopIteration`, it must continue to do so on subsequent calls. " +"Once an iterator's :meth:`~iterator.__next__` method " +"raises :exc:`StopIteration`, it must continue to do so on subsequent calls. " "Implementations that do not obey this property are deemed broken." msgstr "" -msgid "Generator Types" +msgid "Generator types" +msgstr "" + +msgid "" +"Python's :term:`generators ` -- or more " +"precisely, :term:`generator functions ` " +"and :term:`generator iterators ` -- provide a convenient " +"way to implement the iterator protocol." +msgstr "" + +msgid "" +"A function that contains one or more :ref:`yield expressions ` is " +"a :term:`generator function`. For example::" +msgstr "" + +msgid "" +">>> def count_to_three():\n" +"... yield 0\n" +"... yield 1\n" +"... yield 2\n" +"... yield 3" +msgstr "" + +msgid "" +"Generator functions behave as regular :ref:`user-defined functions ` (for example, they have the same attributes), except that " +"calling a generator function returns a :ref:`generator iterator `::" +msgstr "" + +msgid "" +">>> count_to_three()\n" +"" +msgstr "" + +msgid "" +"Iterating a generator iterator executes code of the underlying generator " +"function, producing each :keyword:`yield`\\ed value in turn::" +msgstr "" + +msgid "" +">>> for number in count_to_three():\n" +"... print(number)\n" +"0\n" +"1\n" +"2\n" +"3\n" +"\n" +">>> list(count_to_three())\n" +"[0, 1, 2, 3]" +msgstr "" + +msgid "" +"One common use for generator functions is implementing " +"the :meth:`~object.__iter__` method of custom iterable objects. For example::" +msgstr "" + +msgid "" +">>> class CardDeck:\n" +"... def __iter__(self):\n" +"... yield 'three of clubs'\n" +"... yield 'ace of hearts'\n" +"\n" +">>> list(CardDeck())\n" +"['three of clubs', 'ace of hearts']" +msgstr "" + +msgid "Generator iterators" +msgstr "" + +msgid "" +"Generator iterators implement the :ref:`iterator protocol `. Iterating them drives execution of the underlying generator " +"function." +msgstr "" + +msgid "" +"Starts the execution of a generator function or resumes it at " +"the :ref:`yield expression ` where the function is currently " +"suspended. When a generator function is resumed with " +"a :meth:`~generator.__next__` method, the current yield expression always " +"evaluates to :const:`None`. The execution then continues to the next yield " +"expression, where the generator is suspended again, and the value of the " +"expression after the :keyword:`yield` keyword is returned " +"to :meth:`~generator.__next__`'s caller. If the generator exits without " +"yielding another value, :meth:`~generator.__next__` raises " +"a :exc:`StopIteration` exception, signalling that iteration has completed." +msgstr "" + +msgid "" +"This method is normally called implicitly, for example by a :keyword:`for` " +"loop, or by the built-in :func:`next` function." +msgstr "" + +msgid "" +"Generator iterators have a few more methods than generic iterators, which " +"can be used to control the execution of the underlying generator function:" +msgstr "" + +msgid "" +"\"Sends\" a value into the generator function: the *value* argument becomes " +"the result of the current yield expression." +msgstr "" + +msgid "" +"Otherwise, this method behaves like :meth:`~generator.__next__`: it resumes " +"the underlying function and either returns the next yielded value or " +"raises :exc:`StopIteration`." +msgstr "" + +msgid "" +"When :meth:`send` is called to start the generator, it must be called " +"with :const:`None` as the argument, because there is no current yield " +"expression that could receive the value." +msgstr "" + +msgid "" +"Raises an exception at the point where the generator is currently suspended." +msgstr "" + +msgid "" +"Otherwise, this method behaves like :meth:`~generator.__next__`: it resumes " +"the underlying function and either returns the next yielded value or " +"raises :exc:`StopIteration`. If the generator function does not catch the " +"passed-in exception, or raises a different exception, then that exception " +"propagates to the caller." +msgstr "" + +msgid "" +"When :meth:`throw` is called to start the generator, the generator " +"immediately exits (that is, subsequent calls to :meth:`~generator.__next__` " +"will raise :exc:`StopIteration`) and the thrown exception is propagated " +"to :meth:`throw`'s caller." +msgstr "" + +msgid "" +"In typical use, this is called with a single argument, an exception " +"instance, similar to the way the :keyword:`raise` keyword is used." +msgstr "" + +msgid "" +"For backwards compatibility, however, the second signature is supported, " +"following a convention from older versions of Python. The *type* argument " +"should be an exception class, and *value* should be an exception instance. " +"If the *value* is not provided, the *type* constructor is called to get an " +"instance. If *traceback* is provided, it is set on the exception, otherwise " +"any existing :attr:`~BaseException.__traceback__` attribute stored in " +"*value* may be cleared." +msgstr "" + +msgid "" +"The second signature \\(type\\[, value\\[, traceback\\]\\]\\) is deprecated " +"and may be removed in a future version of Python." +msgstr "" + +msgid "" +"Raises a :exc:`GeneratorExit` exception at the point where the generator " +"function is currently suspended (equivalent to calling " +"``throw(GeneratorExit)``)." +msgstr "" + +msgid "" +"If the generator function has already exited (due to an exception or normal " +"return), or raises :exc:`GeneratorExit` (by not catching the " +"exception), :meth:`close` returns :const:`None`. If the generator yields a " +"value, a :exc:`RuntimeError` is raised. If the generator raises any other " +"exception, it is propagated to the caller. If a generator returns a value " +"upon being closed, that value is returned by :meth:`close`." +msgstr "" + +msgid "" +"When a generator iterator is garbage collected before it has " +"exited, :meth:`~generator.close` is called automatically." +msgstr "" + +msgid "" +"If a generator returns a value upon being closed, the value is returned " +"by :meth:`close`. Previously, it returned ``None``." +msgstr "" + +msgid "" +"Calling any of the generator methods " +"(:meth:`~generator.__next__`, :meth:`~generator.send`, :meth:`~generator.throw`, :meth:`~generator.close`) " +"while one of these methods is already executing raises a :exc:`ValueError` " +"exception." +msgstr "" + +msgid "Asynchronous generator iterators" +msgstr "" + +msgid "" +"This subsection describes the methods of an asynchronous generator iterator, " +"which are used to control the execution of an asynchronous generator " +"function." +msgstr "" + +msgid "" +"Returns an :term:`awaitable` which when run starts to execute the " +"asynchronous generator function or resumes it at the :ref:`yield expression " +"` where the function is currently suspended. When an asynchronous " +"generator function is resumed with an :meth:`~agen.__anext__` method, the " +"current yield expression always evaluates to :const:`None` in the returned " +"awaitable, which when run will continue to the next yield expression. The " +"value of the expression after the :keyword:`yield` keyword is the value of " +"the :exc:`StopIteration` exception raised by the completing coroutine. If " +"the asynchronous generator exits without yielding another value, the " +"awaitable instead raises a :exc:`StopAsyncIteration` exception, signalling " +"that the asynchronous iteration has completed." +msgstr "" + +msgid "" +"This method is normally called implicitly by an :keyword:`async for` loop, " +"or by the built-in :func:`anext` function." +msgstr "" + +msgid "" +"Asynchronous generator-iterators have a few more methods than generic " +"asynchronous iterators, which can be used to control the execution of the " +"underlying generator function:" +msgstr "" + +msgid "" +"Returns an awaitable which, when run, \"sends\" a value into the underlying " +"asynchronous generator function: the *value* argument becomes the result of " +"the current yield expression." +msgstr "" + +msgid "" +"Otherwise, this method behaves like :meth:`~agen.__anext__`: when the " +"returned awaitable runs, it resumes the underlying function and either " +"returns the next yielded value as the value of the " +"raised :exc:`StopIteration`, or raises :exc:`StopAsyncIteration`." +msgstr "" + +msgid "" +"When :meth:`asend` is called to start the asynchronous generator, it must be " +"called with :const:`None` as the argument, because there is no yield " +"expression that could receive the value." msgstr "" msgid "" -"Python's :term:`generator`\\s provide a convenient way to implement the " -"iterator protocol. If a container object's :meth:`~object.__iter__` method " -"is implemented as a generator, it will automatically return an iterator " -"object (technically, a generator object) supplying the :meth:`~iterator." -"__iter__` and :meth:`~generator.__next__` methods. More information about " -"generators can be found in :ref:`the documentation for the yield expression " -"`." +"Returns an awaitable that, when run, raises an exception at the point where " +"the underlying asynchronous generator function is currently suspended." +msgstr "" + +msgid "" +"Otherwise, this method behaves like :meth:`~agen.__anext__`: when the " +"returned awaitable runs, it resumes the underlying function (with an " +"exception raised) and either returns the next yielded value as the value of " +"the raised :exc:`StopIteration`, or raises :exc:`StopAsyncIteration`. If the " +"underlying function does not catch the passed-in exception, or raises a " +"different exception, then when the awaitable is run, that exception " +"propagates to the caller of the awaitable." +msgstr "" + +msgid "" +"When :meth:`~agen.athrow` is called to start the generator, the generator " +"exits when the awaitable runs (that is, subsequent results " +"from :meth:`~agen.__anext__` will raise :exc:`StopAsyncIteration` when run) " +"and the thrown exception is propagated to the awaitable's caller." +msgstr "" + +msgid "" +"For backwards compatibility, however, the second signature is supported. An " +"exception instance is created from three arguments in the same way as " +"in :meth:`generator.throw`." +msgstr "" + +msgid "" +"Returns an awaitable that when run will throw a :exc:`GeneratorExit` into " +"the underlying asynchronous generator function at the point where it is " +"currently suspended (equivalent to calling ``athrow(GeneratorExit)``)." +msgstr "" + +msgid "" +"If the asynchronous generator function then exits gracefully, is already " +"closed, or raises :exc:`GeneratorExit` (by not catching the exception), then " +"the returned awaitable will raise a :exc:`StopIteration` exception. Any " +"further awaitables returned by subsequent calls to the asynchronous " +"generator will raise a :exc:`StopAsyncIteration` exception." +msgstr "" + +msgid "" +"If the asynchronous generator yields a value, a :exc:`RuntimeError` is " +"raised by the awaitable. If the asynchronous generator raises any other " +"exception, that exception is propagated to the caller of the awaitable." +msgstr "" + +msgid "" +"If the asynchronous generator has already exited due to an exception or " +"normal exit, then further calls to :meth:`aclose` will return an awaitable " +"that does nothing." msgstr "" msgid "Sequence Types --- :class:`list`, :class:`tuple`, :class:`range`" @@ -1151,6 +1446,10 @@ msgid "" "[3]_" msgstr "" +msgid "" +"See :ref:`time-complexity` for the costs of the various sequence operations." +msgstr "" + msgid "``x in s``" msgstr "" @@ -1237,9 +1536,9 @@ msgstr "" msgid "" "Forward and reversed iterators over mutable sequences access values using an " "index. That index will continue to march forward (or backward) even if the " -"underlying sequence is mutated. The iterator terminates only when an :exc:" -"`IndexError` or a :exc:`StopIteration` is encountered (or when the index " -"drops below zero)." +"underlying sequence is mutated. The iterator terminates only when " +"an :exc:`IndexError` or a :exc:`StopIteration` is encountered (or when the " +"index drops below zero)." msgstr "" msgid "" @@ -1337,16 +1636,16 @@ msgid "" msgstr "" msgid "" -"if concatenating :class:`str` objects, you can build a list and use :meth:" -"`str.join` at the end or else write to an :class:`io.StringIO` instance and " -"retrieve its value when complete" +"if concatenating :class:`str` objects, you can build a list and " +"use :meth:`str.join` at the end or else write to an :class:`io.StringIO` " +"instance and retrieve its value when complete" msgstr "" msgid "" -"if concatenating :class:`bytes` objects, you can similarly use :meth:`bytes." -"join` or :class:`io.BytesIO`, or you can do in-place concatenation with a :" -"class:`bytearray` object. :class:`bytearray` objects are mutable and have " -"an efficient overallocation mechanism" +"if concatenating :class:`bytes` objects, you can similarly " +"use :meth:`bytes.join` or :class:`io.BytesIO`, or you can do in-place " +"concatenation with a :class:`bytearray` object. :class:`bytearray` objects " +"are mutable and have an efficient overallocation mechanism" msgstr "" msgid "if concatenating :class:`tuple` objects, extend a :class:`list` instead" @@ -1395,14 +1694,14 @@ msgstr "" msgid "" "The only operation that immutable sequence types generally implement that is " -"not also implemented by mutable sequence types is support for the :func:" -"`hash` built-in." +"not also implemented by mutable sequence types is support for " +"the :func:`hash` built-in." msgstr "" msgid "" "This support allows immutable sequences, such as :class:`tuple` instances, " -"to be used as :class:`dict` keys and stored in :class:`set` and :class:" -"`frozenset` instances." +"to be used as :class:`dict` keys and stored in :class:`set` " +"and :class:`frozenset` instances." msgstr "" msgid "" @@ -1484,10 +1783,11 @@ msgid "" msgstr "" msgid "" -"The value *n* is an integer, or an object implementing :meth:`~object." -"__index__`. Zero and negative values of *n* clear the sequence. Items in " -"the sequence are not copied; they are referenced multiple times, as " -"explained for ``s * n`` under :ref:`typesseq-common`." +"The value *n* is an integer, or an object " +"implementing :meth:`~object.__index__`. Zero and negative values of *n* " +"clear the sequence. Items in the sequence are not copied; they are " +"referenced multiple times, as explained for ``s * n`` under :ref:`typesseq-" +"common`." msgstr "" msgid "Mutable Sequence Methods" @@ -1512,9 +1812,9 @@ msgid "" msgstr "" msgid "" -"The :meth:`!copy` method is not part of the :class:`~collections.abc." -"MutableSequence` :class:`~abc.ABC`, but most concrete mutable sequence types " -"provide it." +"The :meth:`!copy` method is not part of " +"the :class:`~collections.abc.MutableSequence` :class:`~abc.ABC`, but most " +"concrete mutable sequence types provide it." msgstr "" msgid "" @@ -1528,8 +1828,8 @@ msgid "" msgstr "" msgid "" -"Retrieve the item at *index* and also removes it from *sequence*. By " -"default, the last item in *sequence* is removed and returned." +"Retrieve the item at *index* and also remove it from *sequence*. By default, " +"the last item in *sequence* is removed and returned." msgstr "" msgid "Remove the first item from *sequence* where ``sequence[i] == value``." @@ -1598,8 +1898,8 @@ msgid "" msgstr "" msgid "" -":meth:`sort` accepts two arguments that can only be passed by keyword (:ref:" -"`keyword-only arguments `):" +":meth:`sort` accepts two arguments that can only be passed by keyword " +"(:ref:`keyword-only arguments `):" msgstr "" msgid "" @@ -1657,8 +1957,8 @@ msgid "" "Tuples are immutable sequences, typically used to store collections of " "heterogeneous data (such as the 2-tuples produced by the :func:`enumerate` " "built-in). Tuples are also used for cases where an immutable sequence of " -"homogeneous data is needed (such as allowing storage in a :class:`set` or :" -"class:`dict` instance)." +"homogeneous data is needed (such as allowing storage in a :class:`set` " +"or :class:`dict` instance)." msgstr "" msgid "Tuples may be constructed in a number of ways:" @@ -1720,8 +2020,8 @@ msgid "" msgstr "" msgid "" -"The arguments to the range constructor must be integers (either built-in :" -"class:`int` or any object that implements the :meth:`~object.__index__` " +"The arguments to the range constructor must be integers (either built-" +"in :class:`int` or any object that implements the :meth:`~object.__index__` " "special method). If the *step* argument is omitted, it defaults to ``1``. " "If the *start* argument is omitted, it defaults to ``0``. If *step* is " "zero, :exc:`ValueError` is raised." @@ -1746,8 +2046,8 @@ msgstr "" msgid "" "Ranges containing absolute values larger than :data:`sys.maxsize` are " -"permitted but some features (such as :func:`len`) may raise :exc:" -"`OverflowError`." +"permitted but some features (such as :func:`len`) may " +"raise :exc:`OverflowError`." msgstr "" msgid "Range examples::" @@ -1791,8 +2091,8 @@ msgid "" msgstr "" msgid "" -"The advantage of the :class:`range` type over a regular :class:`list` or :" -"class:`tuple` is that a :class:`range` object will always take the same " +"The advantage of the :class:`range` type over a regular :class:`list` " +"or :class:`tuple` is that a :class:`range` object will always take the same " "(small) amount of memory, no matter the size of the range it represents (as " "it only stores the ``start``, ``stop`` and ``step`` values, calculating " "individual items and subranges as needed)." @@ -1814,9 +2114,9 @@ msgid "" msgstr "" msgid "" -"Implement the Sequence ABC. Support slicing and negative indices. Test :" -"class:`int` objects for membership in constant time instead of iterating " -"through all items." +"Implement the Sequence ABC. Support slicing and negative indices. " +"Test :class:`int` objects for membership in constant time instead of " +"iterating through all items." msgstr "" msgid "" @@ -2135,9 +2435,9 @@ msgid "Text Sequence Type --- :class:`str`" msgstr "" msgid "" -"Textual data in Python is handled with :class:`str` objects, or :dfn:" -"`strings`. Strings are immutable :ref:`sequences ` of Unicode code " -"points. String literals are written in a variety of ways:" +"Textual data in Python is handled with :class:`str` objects, " +"or :dfn:`strings`. Strings are immutable :ref:`sequences ` of " +"Unicode code points. String literals are written in a variety of ways:" msgstr "" msgid "Single quotes: ``'allows embedded \"double\" quotes'``" @@ -2179,9 +2479,9 @@ msgid "" msgstr "" msgid "" -"There is also no mutable string type, but :meth:`str.join` or :class:`io." -"StringIO` can be used to efficiently construct strings from multiple " -"fragments." +"There is also no mutable string type, but :meth:`str.join` " +"or :class:`io.StringIO` can be used to efficiently construct strings from " +"multiple fragments." msgstr "" msgid "" @@ -2197,23 +2497,23 @@ msgid "" msgstr "" msgid "" -"If neither *encoding* nor *errors* is given, ``str(object)`` returns :meth:" -"`type(object).__str__(object) `, which is the \"informal\" " -"or nicely printable string representation of *object*. For string objects, " -"this is the string itself. If *object* does not have a :meth:`~object." -"__str__` method, then :func:`str` falls back to returning :func:" -"`repr(object) `." +"If neither *encoding* nor *errors* is given, ``str(object)`` " +"returns :meth:`type(object).__str__(object) `, which is the " +"\"informal\" or nicely printable string representation of *object*. For " +"string objects, this is the string itself. If *object* does not have " +"a :meth:`~object.__str__` method, then :func:`str` falls back to " +"returning :func:`repr(object) `." msgstr "" msgid "" -"If at least one of *encoding* or *errors* is given, *object* should be a :" -"term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " +"If at least one of *encoding* or *errors* is given, *object* should be " +"a :term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " "this case, if *object* is a :class:`bytes` (or :class:`bytearray`) object, " -"then ``str(bytes, encoding, errors)`` is equivalent to :meth:`bytes." -"decode(encoding, errors) `. Otherwise, the bytes object " -"underlying the buffer object is obtained before calling :meth:`bytes." -"decode`. See :ref:`binaryseq` and :ref:`bufferobjects` for information on " -"buffer objects." +"then ``str(bytes, encoding, errors)`` is equivalent " +"to :meth:`bytes.decode(encoding, errors) `. Otherwise, the " +"bytes object underlying the buffer object is obtained before " +"calling :meth:`bytes.decode`. See :ref:`binaryseq` and :ref:`bufferobjects` " +"for information on buffer objects." msgstr "" msgid "" @@ -2229,10 +2529,10 @@ msgid "" msgstr "" msgid "" -"For more information on the ``str`` class and its methods, see :ref:" -"`textseq` and the :ref:`string-methods` section below. To output formatted " -"strings, see the :ref:`f-strings` and :ref:`formatstrings` sections. In " -"addition, see the :ref:`stringservices` section." +"For more information on the ``str`` class and its methods, " +"see :ref:`textseq` and the :ref:`string-methods` section below. To output " +"formatted strings, see the :ref:`f-strings` and :ref:`formatstrings` " +"sections. In addition, see the :ref:`stringservices` section." msgstr "" msgid "String Methods" @@ -2245,11 +2545,11 @@ msgstr "" msgid "" "Strings also support two styles of string formatting, one providing a large " -"degree of flexibility and customization (see :meth:`str.format`, :ref:" -"`formatstrings` and :ref:`string-formatting`) and the other based on C " -"``printf`` style formatting that handles a narrower range of types and is " -"slightly harder to use correctly, but is often faster for the cases it can " -"handle (:ref:`old-string-formatting`)." +"degree of flexibility and customization " +"(see :meth:`str.format`, :ref:`formatstrings` and :ref:`string-formatting`) " +"and the other based on C ``printf`` style formatting that handles a narrower " +"range of types and is slightly harder to use correctly, but is often faster " +"for the cases it can handle (:ref:`old-string-formatting`)." msgstr "" msgid "" @@ -2278,8 +2578,8 @@ msgid "" "Casefolding is similar to lowercasing but more aggressive because it is " "intended to remove all case distinctions in a string. For example, the " "German lowercase letter ``'ß'`` is equivalent to ``\"ss\"``. Since it is " -"already lowercase, :meth:`lower` would do nothing to ``'ß'``; :meth:" -"`casefold` converts it to ``\"ss\"``. For example:" +"already lowercase, :meth:`lower` would do nothing to " +"``'ß'``; :meth:`casefold` converts it to ``\"ss\"``. For example:" msgstr "" msgid "" @@ -2346,14 +2646,14 @@ msgid "" "*errors* controls how encoding errors are handled. If ``'strict'`` (the " "default), a :exc:`UnicodeError` exception is raised. Other possible values " "are ``'ignore'``, ``'replace'``, ``'xmlcharrefreplace'``, " -"``'backslashreplace'`` and any other name registered via :func:`codecs." -"register_error`. See :ref:`error-handlers` for details." +"``'backslashreplace'`` and any other name registered " +"via :func:`codecs.register_error`. See :ref:`error-handlers` for details." msgstr "" msgid "" "For performance reasons, the value of *errors* is not checked for validity " -"unless an encoding error actually occurs, :ref:`devmode` is enabled or a :" -"ref:`debug build ` is used. For example::" +"unless an encoding error actually occurs, :ref:`devmode` is enabled or " +"a :ref:`debug build ` is used. For example::" msgstr "" msgid "" @@ -2368,8 +2668,8 @@ msgid "Added support for keyword arguments." msgstr "" msgid "" -"The value of the *errors* argument is now checked in :ref:`devmode` and in :" -"ref:`debug mode `." +"The value of the *errors* argument is now checked in :ref:`devmode` and " +"in :ref:`debug mode `." msgstr "" msgid "" @@ -2438,8 +2738,8 @@ msgstr "" msgid "" "The :meth:`~str.find` method should be used only if you need to know the " -"position of *sub*. To check if *sub* is a substring or not, use the :" -"keyword:`in` operator::" +"position of *sub*. To check if *sub* is a substring or not, use " +"the :keyword:`in` operator::" msgstr "" msgid "" @@ -2471,13 +2771,14 @@ msgid "" msgstr "" msgid "" -"When formatting a number (:class:`int`, :class:`float`, :class:`complex`, :" -"class:`decimal.Decimal` and subclasses) with the ``n`` type (ex: ``'{:n}'." -"format(1234)``), the function temporarily sets the ``LC_CTYPE`` locale to " -"the ``LC_NUMERIC`` locale to decode ``decimal_point`` and ``thousands_sep`` " -"fields of :c:func:`localeconv` if they are non-ASCII or longer than 1 byte, " -"and the ``LC_NUMERIC`` locale is different than the ``LC_CTYPE`` locale. " -"This temporary change affects other threads." +"When formatting a number " +"(:class:`int`, :class:`float`, :class:`complex`, :class:`decimal.Decimal` " +"and subclasses) with the ``n`` type (ex: ``'{:n}'.format(1234)``), the " +"function temporarily sets the ``LC_CTYPE`` locale to the ``LC_NUMERIC`` " +"locale to decode ``decimal_point`` and ``thousands_sep`` fields " +"of :c:func:`localeconv` if they are non-ASCII or longer than 1 byte, and the " +"``LC_NUMERIC`` locale is different than the ``LC_CTYPE`` locale. This " +"temporary change affects other threads." msgstr "" msgid "" @@ -2513,8 +2814,8 @@ msgstr "" msgid "" "Return ``True`` if all characters in the string are alphanumeric and there " "is at least one character, ``False`` otherwise. A character ``c`` is " -"alphanumeric if one of the following returns ``True``: ``c.isalpha()``, ``c." -"isdecimal()``, ``c.isdigit()``, or ``c.isnumeric()``. For example:" +"alphanumeric if one of the following returns ``True``: ``c.isalpha()``, " +"``c.isdecimal()``, ``c.isdigit()``, or ``c.isnumeric()``. For example:" msgstr "" msgid "" @@ -2531,11 +2832,11 @@ msgstr "" msgid "" "Return ``True`` if all characters in the string are alphabetic and there is " "at least one character, ``False`` otherwise. Alphabetic characters are " -"those characters defined in the Unicode character database as \"Letter\", i." -"e., those with general category property being one of \"Lm\", \"Lt\", " +"those characters defined in the Unicode character database as \"Letter\", " +"i.e., those with general category property being one of \"Lm\", \"Lt\", " "\"Lu\", \"Ll\", or \"Lo\". Note that this is different from the `Alphabetic " -"property defined in the section 4.10 'Letters, Alphabetic, and Ideographic' " -"of the Unicode Standard `__. For example:" msgstr "" @@ -2706,9 +3007,10 @@ msgid "" msgstr "" msgid "" -"A character is *whitespace* if in the Unicode character database (see :mod:" -"`unicodedata`), either its general category is ``Zs`` (\"Separator, " -"space\"), or its bidirectional class is one of ``WS``, ``B``, or ``S``." +"A character is *whitespace* if in the Unicode character database " +"(see :mod:`unicodedata`), either its general category is ``Zs`` " +"(\"Separator, space\"), or its bidirectional class is one of ``WS``, ``B``, " +"or ``S``." msgstr "" msgid "See also :meth:`isprintable`." @@ -2739,8 +3041,8 @@ msgid "" msgstr "" msgid "" -"Return a string which is the concatenation of the strings in *iterable*. A :" -"exc:`TypeError` will be raised if there are any non-string values in " +"Return a string which is the concatenation of the strings in *iterable*. " +"A :exc:`TypeError` will be raised if there are any non-string values in " "*iterable*, including :class:`bytes` objects. The separator between " "elements is the string providing this method. For example:" msgstr "" @@ -2817,8 +3119,8 @@ msgid "" msgstr "" msgid "" -"This static method returns a translation table usable for :meth:`str." -"translate`." +"This static method returns a translation table usable " +"for :meth:`str.translate`." msgstr "" msgid "" @@ -2981,9 +3283,10 @@ msgstr "" msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " -"*rightmost* ones. If *sep* is not specified or ``None``, any whitespace " -"string is a separator. Except for splitting from the right, :meth:`rsplit` " -"behaves like :meth:`split` which is described in detail below." +"*rightmost* ones. If *sep* is not specified or ``None``, " +"any :meth:`whitespace ` string is a separator. Except for " +"splitting from the right, :meth:`rsplit` behaves like :meth:`split` which is " +"described in detail below." msgstr "" msgid "" @@ -3028,9 +3331,9 @@ msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty strings (for example, ``'1,,2'.split(',')`` returns " "``['1', '', '2']``). The *sep* argument may consist of multiple characters " -"as a single delimiter (to split with multiple delimiters, use :func:`re." -"split`). Splitting an empty string with a specified separator returns " -"``['']``." +"as a single delimiter (to split with multiple delimiters, " +"use :func:`re.split`). Splitting an empty string with a specified separator " +"returns ``['']``." msgstr "" msgid "" @@ -3046,11 +3349,11 @@ msgstr "" msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " -"applied: runs of consecutive whitespace are regarded as a single separator, " -"and the result will contain no empty strings at the start or end if the " -"string has leading or trailing whitespace. Consequently, splitting an empty " -"string or a string consisting of just whitespace with a ``None`` separator " -"returns ``[]``." +"applied: runs of consecutive :meth:`whitespace ` are regarded " +"as a single separator, and the result will contain no empty strings at the " +"start or end if the string has leading or trailing whitespace. " +"Consequently, splitting an empty string or a string consisting of just " +"whitespace with a ``None`` separator returns ``[]``." msgstr "" msgid "" @@ -3323,12 +3626,12 @@ msgstr "" msgid "" "Return a copy of the string in which each character has been mapped through " "the given translation table. The table must be an object that implements " -"indexing via :meth:`~object.__getitem__`, typically a :term:`mapping` or :" -"term:`sequence`. When indexed by a Unicode ordinal (an integer), the table " -"object can do any of the following: return a Unicode ordinal or a string, to " -"map the character to one or more other characters; return ``None``, to " -"delete the character from the return string; or raise a :exc:`LookupError` " -"exception, to map the character to itself." +"indexing via :meth:`~object.__getitem__`, typically a :term:`mapping` " +"or :term:`sequence`. When indexed by a Unicode ordinal (an integer), the " +"table object can do any of the following: return a Unicode ordinal or a " +"string, to map the character to one or more other characters; return " +"``None``, to delete the character from the return string; or raise " +"a :exc:`LookupError` exception, to map the character to itself." msgstr "" msgid "" @@ -3517,7 +3820,7 @@ msgid "" "'0.333333'\n" ">>> f'{one_third:_^+10}'\n" "'___+1/3___'\n" -">>> >>> f'{one_third!r:_^20}'\n" +">>> f'{one_third!r:_^20}'\n" "'___Fraction(1, 3)___'\n" ">>> f'{one_third = :~>10}~'\n" "'one_third = ~~~~~~~1/3~'" @@ -3527,13 +3830,13 @@ msgid "Template String Literals (t-strings)" msgstr "" msgid "" -"An :dfn:`t-string` (formally a :dfn:`template string literal`) is a string " +"A :dfn:`t-string` (formally a :dfn:`template string literal`) is a string " "literal that is prefixed with ``t`` or ``T``." msgstr "" msgid "" "These strings follow the same syntax and evaluation rules as :ref:`formatted " -"string literals `, with for the following differences:" +"string literals `, with the following differences:" msgstr "" msgid "" @@ -3543,19 +3846,21 @@ msgstr "" msgid "" "The :func:`format` protocol is not used. Instead, the format specifier and " -"conversions (if any) are passed to a new :class:`~string.templatelib." -"Interpolation` object that is created for each evaluated expression. It is " -"up to code that processes the resulting :class:`~string.templatelib." -"Template` object to decide how to handle format specifiers and conversions." +"conversions (if any) are passed to a " +"new :class:`~string.templatelib.Interpolation` object that is created for " +"each evaluated expression. It is up to code that processes the " +"resulting :class:`~string.templatelib.Template` object to decide how to " +"handle format specifiers and conversions." msgstr "" msgid "" "Format specifiers containing nested replacement fields are evaluated " -"eagerly, prior to being passed to the :class:`~string.templatelib." -"Interpolation` object. For instance, an interpolation of the form ``{amount:." -"{precision}f}`` will evaluate the inner expression ``{precision}`` to " -"determine the value of the ``format_spec`` attribute. If ``precision`` were " -"to be ``2``, the resulting format specifier would be ``'.2f'``." +"eagerly, prior to being passed to " +"the :class:`~string.templatelib.Interpolation` object. For instance, an " +"interpolation of the form ``{amount:.{precision}f}`` will evaluate the inner " +"expression ``{precision}`` to determine the value of the ``format_spec`` " +"attribute. If ``precision`` were to be ``2``, the resulting format specifier " +"would be ``'.2f'``." msgstr "" msgid "" @@ -3563,10 +3868,10 @@ msgid "" "text of the expression is appended to the literal string that precedes the " "relevant interpolation. This includes the equals sign and any surrounding " "whitespace. The :class:`!Interpolation` instance for the expression will be " -"created as normal, except that :attr:`~string.templatelib.Interpolation." -"conversion` will be set to '``r``' (:func:`repr`) by default. If an explicit " -"conversion or format specifier are provided, this will override the default " -"behaviour." +"created as normal, except " +"that :attr:`~string.templatelib.Interpolation.conversion` will be set to " +"'``r``' (:func:`repr`) by default. If an explicit conversion or format " +"specifier is provided, this will override the default behaviour." msgstr "" msgid "``printf``-style String Formatting" @@ -3863,15 +4168,15 @@ msgid "" msgstr "" msgid "" -"Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" -"`memoryview`" +"Binary Sequence Types " +"--- :class:`bytes`, :class:`bytearray`, :class:`memoryview`" msgstr "" msgid "" -"The core built-in types for manipulating binary data are :class:`bytes` and :" -"class:`bytearray`. They are supported by :class:`memoryview` which uses the :" -"ref:`buffer protocol ` to access the memory of other binary " -"objects without needing to make a copy." +"The core built-in types for manipulating binary data are :class:`bytes` " +"and :class:`bytearray`. They are supported by :class:`memoryview` which uses " +"the :ref:`buffer protocol ` to access the memory of other " +"binary objects without needing to make a copy." msgstr "" msgid "" @@ -4047,8 +4352,8 @@ msgid "" msgstr "" msgid "" -"This :class:`bytearray` class method returns bytearray object, decoding the " -"given string object. The string must contain two hexadecimal digits per " +"This :class:`bytearray` class method returns a bytearray object, decoding " +"the given string object. The string must contain two hexadecimal digits per " "byte, with ASCII whitespace being ignored." msgstr "" @@ -4083,8 +4388,8 @@ msgid "" msgstr "" msgid "" -"If the :class:`bytearray` needs to grow, all new bytes, those beyond *size*, " -"will be set to null bytes." +"If the :class:`bytearray` needs to grow, all new bytes will be set to null " +"bytes." msgstr "" msgid "This is equivalent to:" @@ -4105,10 +4410,10 @@ msgid "" msgstr "" msgid "" -"Taking less than the full length will leave remaining bytes in the :class:" -"`bytearray`, which requires a copy. If the remaining bytes should be " -"discarded, use :func:`~bytearray.resize` or :keyword:`del` to truncate then :" -"func:`~bytearray.take_bytes` without a size." +"Taking less than the full length will leave remaining bytes in " +"the :class:`bytearray`, which requires a copy. If the remaining bytes should " +"be discarded, use :func:`~bytearray.resize` or :keyword:`del` to truncate " +"then :func:`~bytearray.take_bytes` without a size." msgstr "" msgid "Taking all bytes is a zero-copy operation." @@ -4116,8 +4421,8 @@ msgstr "" msgid "" "See the :ref:`What's New ` entry for " -"common code patterns which can be optimized with :meth:`bytearray." -"take_bytes`." +"common code patterns which can be optimized " +"with :meth:`bytearray.take_bytes`." msgstr "" msgid "" @@ -4247,20 +4552,20 @@ msgstr "" msgid "" "*errors* controls how decoding errors are handled. If ``'strict'`` (the " "default), a :exc:`UnicodeError` exception is raised. Other possible values " -"are ``'ignore'``, ``'replace'``, and any other name registered via :func:" -"`codecs.register_error`. See :ref:`error-handlers` for details." +"are ``'ignore'``, ``'replace'``, and any other name registered " +"via :func:`codecs.register_error`. See :ref:`error-handlers` for details." msgstr "" msgid "" "For performance reasons, the value of *errors* is not checked for validity " -"unless a decoding error actually occurs, :ref:`devmode` is enabled or a :ref:" -"`debug build ` is used." +"unless a decoding error actually occurs, :ref:`devmode` is enabled or " +"a :ref:`debug build ` is used." msgstr "" msgid "" -"Passing the *encoding* argument to :class:`str` allows decoding any :term:" -"`bytes-like object` directly, without needing to make a temporary :class:`!" -"bytes` or :class:`!bytearray` object." +"Passing the *encoding* argument to :class:`str` allows decoding " +"any :term:`bytes-like object` directly, without needing to make a " +"temporary :class:`!bytes` or :class:`!bytearray` object." msgstr "" msgid "" @@ -4282,8 +4587,8 @@ msgstr "" msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " -"position of *sub*. To check if *sub* is a substring or not, use the :" -"keyword:`in` operator::" +"position of *sub*. To check if *sub* is a substring or not, use " +"the :keyword:`in` operator::" msgstr "" msgid "" @@ -4306,10 +4611,10 @@ msgid "" msgstr "" msgid "" -"This static method returns a translation table usable for :meth:`bytes." -"translate` that will map each character in *from* into the character at the " -"same position in *to*; *from* and *to* must both be :term:`bytes-like " -"objects ` and have the same length." +"This static method returns a translation table usable " +"for :meth:`bytes.translate` that will map each character in *from* into the " +"character at the same position in *to*; *from* and *to* must both " +"be :term:`bytes-like objects ` and have the same length." msgstr "" msgid "" @@ -4415,8 +4720,8 @@ msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*bytes* argument is a binary sequence specifying the set of byte values to " "be removed. If omitted or ``None``, the *bytes* argument defaults to " -"removing ASCII whitespace. The *bytes* argument is not a prefix; rather, " -"all combinations of its values are stripped::" +"removing :meth:`ASCII whitespace `. The *bytes* argument is " +"not a prefix; rather, all combinations of its values are stripped::" msgstr "" msgid "" @@ -4450,17 +4755,17 @@ msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " "done, the *rightmost* ones. If *sep* is not specified or ``None``, any " -"subsequence consisting solely of ASCII whitespace is a separator. Except for " -"splitting from the right, :meth:`rsplit` behaves like :meth:`split` which is " -"described in detail below." +"subsequence consisting solely of :meth:`ASCII whitespace ` is " +"a separator. Except for splitting from the right, :meth:`rsplit` behaves " +"like :meth:`split` which is described in detail below." msgstr "" msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*bytes* argument is a binary sequence specifying the set of byte values to " "be removed. If omitted or ``None``, the *bytes* argument defaults to " -"removing ASCII whitespace. The *bytes* argument is not a suffix; rather, " -"all combinations of its values are stripped::" +"removing :meth:`ASCII whitespace `. The *bytes* argument is " +"not a suffix; rather, all combinations of its values are stripped::" msgstr "" msgid "" @@ -4514,11 +4819,11 @@ msgstr "" msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " -"applied: runs of consecutive ASCII whitespace are regarded as a single " -"separator, and the result will contain no empty strings at the start or end " -"if the sequence has leading or trailing whitespace. Consequently, splitting " -"an empty sequence or a sequence consisting solely of ASCII whitespace " -"without a specified separator returns ``[]``." +"applied: runs of consecutive :meth:`ASCII whitespace ` are " +"regarded as a single separator, and the result will contain no empty strings " +"at the start or end if the sequence has leading or trailing whitespace. " +"Consequently, splitting an empty sequence or a sequence consisting solely of " +"ASCII whitespace without a specified separator returns ``[]``." msgstr "" msgid "" @@ -4534,8 +4839,9 @@ msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *bytes* argument is a binary sequence specifying the set of " "byte values to be removed. If omitted or ``None``, the *bytes* argument " -"defaults to removing ASCII whitespace. The *bytes* argument is not a prefix " -"or suffix; rather, all combinations of its values are stripped::" +"defaults to removing :meth:`ASCII whitespace `. The *bytes* " +"argument is not a prefix or suffix; rather, all combinations of its values " +"are stripped::" msgstr "" msgid "" @@ -4731,10 +5037,10 @@ msgid "" msgstr "" msgid "" -"Unlike :func:`str.swapcase`, it is always the case that ``bin.swapcase()." -"swapcase() == bin`` for the binary versions. Case conversions are " -"symmetrical in ASCII, even though that is not generally true for arbitrary " -"Unicode code points." +"Unlike :func:`str.swapcase`, it is always the case that " +"``bin.swapcase().swapcase() == bin`` for the binary versions. Case " +"conversions are symmetrical in ASCII, even though that is not generally true " +"for arbitrary Unicode code points." msgstr "" msgid "" @@ -4816,8 +5122,8 @@ msgid "" "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " "*interpolation* operator. Given ``format % values`` (where *format* is a " "bytes object), ``%`` conversion specifications in *format* are replaced with " -"zero or more elements of *values*. The effect is similar to using the :c:" -"func:`sprintf` in the C language." +"zero or more elements of *values*. The effect is similar to using " +"the :c:func:`sprintf` function in the C language." msgstr "" msgid "" @@ -4904,7 +5210,7 @@ msgstr "" msgid "" "``len(view)`` is equal to the length of :meth:`~memoryview.tolist`, which is " -"the nested list representation of the view. If ``view.ndim = 1``, this is " +"the nested list representation of the view. If ``view.ndim == 1``, this is " "equal to the number of elements in the view." msgstr "" @@ -5008,11 +5314,11 @@ msgid "" msgstr "" msgid "" -"memoryview is now registered automatically with :class:`collections.abc." -"Sequence`" +"memoryview is now registered automatically " +"with :class:`collections.abc.Sequence`" msgstr "" -msgid "memoryviews can now be indexed with tuple of integers." +msgid "memoryviews can now be indexed with a tuple of integers." msgstr "" msgid "memoryview is now a :term:`generic type`." @@ -5028,8 +5334,9 @@ msgid "" msgstr "" msgid "" -"For the subset of :mod:`struct` format strings currently supported by :meth:" -"`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" +"For the subset of :mod:`struct` format strings currently supported " +"by :meth:`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == " +"w.tolist()``::" msgstr "" msgid "" @@ -5139,8 +5446,8 @@ msgid "" msgstr "" msgid "" -":meth:`tolist` now supports all single character native formats in :mod:" -"`struct` module syntax as well as multi-dimensional representations." +":meth:`tolist` now supports all single character native formats " +"in :mod:`struct` module syntax as well as multi-dimensional representations." msgstr "" msgid "" @@ -5164,8 +5471,8 @@ msgstr "" msgid "" "Release the underlying buffer exposed by the memoryview object. Many " -"objects take special actions when a view is held on them (for example, a :" -"class:`bytearray` would temporarily forbid resizing); therefore, calling " +"objects take special actions when a view is held on them (for example, " +"a :class:`bytearray` would temporarily forbid resizing); therefore, calling " "release() is handy to remove these restrictions (and free any dangling " "resources) as soon as possible." msgstr "" @@ -5210,10 +5517,10 @@ msgid "" msgstr "" msgid "" -"The destination format is restricted to a single element native format in :" -"mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " -"'c'). The byte length of the result must be the same as the original length. " -"Note that all byte lengths may depend on the operating system." +"The destination format is restricted to a single element native format " +"in :mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' " +"or 'c'). The byte length of the result must be the same as the original " +"length. Note that all byte lengths may depend on the operating system." msgstr "" msgid "Cast 1D/long to 1D/unsigned bytes::" @@ -5428,8 +5735,8 @@ msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "" msgid "" -"For information on the thread safety of :class:`memoryview` objects in the :" -"term:`free-threaded build`, see :ref:`thread-safety-memoryview`." +"For information on the thread safety of :class:`memoryview` objects in " +"the :term:`free-threaded build`, see :ref:`thread-safety-memoryview`." msgstr "" msgid "Set Types --- :class:`set`, :class:`frozenset`" @@ -5440,8 +5747,9 @@ msgid "" "objects. Common uses include membership testing, removing duplicates from a " "sequence, and computing mathematical operations such as intersection, union, " "difference, and symmetric difference. (For other containers see the built-" -"in :class:`dict`, :class:`list`, and :class:`tuple` classes, and the :mod:" -"`collections` module.)" +"in :class:`dict`, :class:`list`, and :class:`tuple` classes, and " +"the :mod:`collections` module.) See :ref:`time-complexity` for the costs of " +"the various set operations." msgstr "" msgid "" @@ -5452,10 +5760,10 @@ msgid "" msgstr "" msgid "" -"There are currently two built-in set types, :class:`set` and :class:" -"`frozenset`. The :class:`set` type is mutable --- the contents can be " -"changed using methods like :meth:`~set.add` and :meth:`~set.remove`. Since " -"it is mutable, it has no hash value and cannot be used as either a " +"There are currently two built-in set types, :class:`set` " +"and :class:`frozenset`. The :class:`set` type is mutable --- the contents " +"can be changed using methods like :meth:`~set.add` and :meth:`~set.remove`. " +"Since it is mutable, it has no hash value and cannot be used as either a " "dictionary key or as an element of another set. The :class:`frozenset` type " "is immutable and :term:`hashable` --- its contents cannot be altered after " "it is created; it can therefore be used as a dictionary key or as an element " @@ -5546,13 +5854,13 @@ msgid "Return a shallow copy of the set." msgstr "" msgid "" -"Note, the non-operator versions of :meth:`~frozenset.union`, :meth:" -"`~frozenset.intersection`, :meth:`~frozenset.difference`, :meth:`~frozenset." -"symmetric_difference`, :meth:`~frozenset.issubset`, and :meth:`~frozenset." -"issuperset` methods will accept any iterable as an argument. In contrast, " -"their operator based counterparts require their arguments to be sets. This " -"precludes error-prone constructions like ``set('abc') & 'cbs'`` in favor of " -"the more readable ``set('abc').intersection('cbs')``." +"Note, the non-operator versions " +"of :meth:`~frozenset.union`, :meth:`~frozenset.intersection`, :meth:`~frozenset.difference`, :meth:`~frozenset.symmetric_difference`, :meth:`~frozenset.issubset`, " +"and :meth:`~frozenset.issuperset` methods will accept any iterable as an " +"argument. In contrast, their operator based counterparts require their " +"arguments to be sets. This precludes error-prone constructions like " +"``set('abc') & 'cbs'`` in favor of the more readable " +"``set('abc').intersection('cbs')``." msgstr "" msgid "" @@ -5629,16 +5937,17 @@ msgid "Remove all elements from the set." msgstr "" msgid "" -"Note, the non-operator versions of the :meth:`~set.update`, :meth:`~set." -"intersection_update`, :meth:`~set.difference_update`, and :meth:`~set." -"symmetric_difference_update` methods will accept any iterable as an argument." +"Note, the non-operator versions of " +"the :meth:`~set.update`, :meth:`~set.intersection_update`, :meth:`~set.difference_update`, " +"and :meth:`~set.symmetric_difference_update` methods will accept any " +"iterable as an argument." msgstr "" msgid "" -"Note, the *elem* argument to the :meth:`~object.__contains__`, :meth:`~set." -"remove`, and :meth:`~set.discard` methods may be a set. To support " -"searching for an equivalent frozenset, a temporary one is created from " -"*elem*." +"Note, the *elem* argument to " +"the :meth:`~object.__contains__`, :meth:`~set.remove`, " +"and :meth:`~set.discard` methods may be a set. In this case, an equivalent " +"frozenset is searched for." msgstr "" msgid "" @@ -5656,17 +5965,20 @@ msgstr "" msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " -"There are currently two standard mapping types, the :dfn:`dictionary` and :" -"class:`frozendict`. (For other containers see the built-in :class:`list`, :" -"class:`set`, and :class:`tuple` classes, and the :mod:`collections` module.)" +"There are currently two standard mapping types, the :dfn:`dictionary` " +"and :class:`frozendict`. (For other containers see the built-" +"in :class:`list`, :class:`set`, and :class:`tuple` classes, and " +"the :mod:`collections` module.) See :ref:`time-complexity` for the costs of " +"the various dictionary operations." msgstr "" msgid "" -"A dictionary's keys are *almost* arbitrary values. Values that are not :" -"term:`hashable`, that is, values containing lists, dictionaries or other " -"mutable types (that are compared by value rather than by object identity) " -"may not be used as keys. Values that compare equal (such as ``1``, ``1.0``, " -"and ``True``) can be used interchangeably to index the same dictionary entry." +"A dictionary's keys are *almost* arbitrary values. Values that are " +"not :term:`hashable`, that is, values containing lists, dictionaries or " +"other mutable types (that are compared by value rather than by object " +"identity) may not be used as keys. Values that compare equal (such as ``1``, " +"``1.0``, and ``True``) can be used interchangeably to index the same " +"dictionary entry." msgstr "" msgid "" @@ -5682,7 +5994,7 @@ msgid "" "4098, 'sjoerd': 4127}`` or ``{4098: 'jack', 4127: 'sjoerd'}``" msgstr "" -msgid "Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``" +msgid "Use a dict comprehension: ``{x: x ** 2 for x in range(10)}``" msgstr "" msgid "" @@ -5786,9 +6098,10 @@ msgid "" "is not present, the ``d[key]`` operation calls that method with the key " "*key* as argument. The ``d[key]`` operation then returns or raises whatever " "is returned or raised by the ``__missing__(key)`` call. No other operations " -"or methods invoke :meth:`~object.__missing__`. If :meth:`~object." -"__missing__` is not defined, :exc:`KeyError` is raised. :meth:`~object." -"__missing__` must be a method; it cannot be an instance variable::" +"or methods invoke :meth:`~object.__missing__`. " +"If :meth:`~object.__missing__` is not defined, :exc:`KeyError` is " +"raised. :meth:`~object.__missing__` must be a method; it cannot be an " +"instance variable::" msgstr "" msgid "" @@ -5805,9 +6118,9 @@ msgid "" msgstr "" msgid "" -"The example above shows part of the implementation of :class:`collections." -"Counter`. A different :meth:`!__missing__` method is used by :class:" -"`collections.defaultdict`." +"The example above shows part of the implementation " +"of :class:`collections.Counter`. A different :meth:`!__missing__` method is " +"used by :class:`collections.defaultdict`." msgstr "" msgid "Set ``d[key]`` to *value*." @@ -5865,8 +6178,8 @@ msgstr "" msgid "" "If *key* is in the dictionary, remove it and return its value, else return " -"*default*. If *default* is not given and *key* is not in the dictionary, a :" -"exc:`KeyError` is raised." +"*default*. If *default* is not given and *key* is not in the dictionary, " +"a :exc:`KeyError` is raised." msgstr "" msgid "" @@ -5876,8 +6189,8 @@ msgstr "" msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " -"often used in set algorithms. If the dictionary is empty, calling :meth:" -"`popitem` raises a :exc:`KeyError`." +"often used in set algorithms. If the dictionary is empty, " +"calling :meth:`popitem` raises a :exc:`KeyError`." msgstr "" msgid "" @@ -5914,9 +6227,8 @@ msgid "" msgstr "" msgid "" -"An equality comparison between one ``dict.values()`` view and another will " -"always return ``False``. This also applies when comparing ``dict.values()`` " -"to itself::" +"An equality comparison between two distinct ``dict.values()`` views will " +"always return ``False``, even for views of the same dictionary::" msgstr "" msgid "" @@ -5969,10 +6281,10 @@ msgid "Dictionary view objects" msgstr "" msgid "" -"The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" -"`dict.items` are *view objects*. They provide a dynamic view on the " -"dictionary's entries, which means that when the dictionary changes, the view " -"reflects these changes." +"The objects returned by :meth:`dict.keys`, :meth:`dict.values` " +"and :meth:`dict.items` are *view objects*. They provide a dynamic view on " +"the dictionary's entries, which means that when the dictionary changes, the " +"view reflects these changes." msgstr "" msgid "" @@ -5990,9 +6302,9 @@ msgstr "" msgid "" "Keys and values are iterated over in insertion order. This allows the " -"creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." -"values(), d.keys())``. Another way to create the same list is ``pairs = " -"[(v, k) for (k, v) in d.items()]``." +"creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = " +"zip(d.values(), d.keys())``. Another way to create the same list is ``pairs " +"= [(v, k) for (k, v) in d.items()]``." msgstr "" msgid "" @@ -6159,8 +6471,9 @@ msgstr "" msgid "" "An example of a context manager that returns itself is a :term:`file " -"object`. File objects return themselves from __enter__() to allow :func:" -"`open` to be used as the context expression in a :keyword:`with` statement." +"object`. File objects return themselves from __enter__() to " +"allow :func:`open` to be used as the context expression in a :keyword:`with` " +"statement." msgstr "" msgid "" @@ -6197,8 +6510,8 @@ msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " "successfully and does not want to suppress the raised exception. This allows " -"context management code to easily detect whether or not an :meth:`~object." -"__exit__` method has actually failed." +"context management code to easily detect whether or not " +"an :meth:`~object.__exit__` method has actually failed." msgstr "" msgid "" @@ -6213,9 +6526,10 @@ msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " "generator function is decorated with the :class:`contextlib.contextmanager` " -"decorator, it will return a context manager implementing the necessary :meth:" -"`~contextmanager.__enter__` and :meth:`~contextmanager.__exit__` methods, " -"rather than the iterator produced by an undecorated generator function." +"decorator, it will return a context manager implementing the " +"necessary :meth:`~contextmanager.__enter__` " +"and :meth:`~contextmanager.__exit__` methods, rather than the iterator " +"produced by an undecorated generator function." msgstr "" msgid "" @@ -6227,13 +6541,13 @@ msgid "" msgstr "" msgid "" -"Type Annotation Types --- :ref:`Generic Alias `, :ref:" -"`Union `" +"Type Annotation Types --- :ref:`Generic Alias `, :ref:`Union `" msgstr "" msgid "" -"The core built-in types for :term:`type annotations ` are :ref:" -"`Generic Alias ` and :ref:`Union `." +"The core built-in types for :term:`type annotations ` " +"are :ref:`Generic Alias ` and :ref:`Union `." msgstr "" msgid "Generic Alias Type" @@ -6262,8 +6576,8 @@ msgid "" "For a container class, the argument(s) supplied to a :ref:`subscription " "` of the class may indicate the type(s) of the elements an " "object contains. For example, ``set[bytes]`` can be used in type annotations " -"to signify a :class:`set` in which all the elements are of type :class:" -"`bytes`." +"to signify a :class:`set` in which all the elements are of " +"type :class:`bytes`." msgstr "" msgid "" @@ -6283,18 +6597,18 @@ msgstr "" msgid "" "If ``y = re.search(b'bar', b'bar')``, (note the ``b`` for :class:`bytes`), " -"``y`` will also be an instance of ``re.Match``, but the return values of ``y." -"group(0)`` and ``y[0]`` will both be of type :class:`bytes`. In type " +"``y`` will also be an instance of ``re.Match``, but the return values of " +"``y.group(0)`` and ``y[0]`` will both be of type :class:`bytes`. In type " "annotations, we would represent this variety of :ref:`re.Match ` objects with ``re.Match[bytes]``." msgstr "" msgid "" -"``GenericAlias`` objects are instances of the class :class:`types." -"GenericAlias`, which can also be used to create ``GenericAlias`` objects " -"directly. Specializations of user-defined :ref:`generic classes ` may not be instances of :class:`types.GenericAlias`, but they " -"provide similar functionality." +"``GenericAlias`` objects are instances of the " +"class :class:`types.GenericAlias`, which can also be used to create " +"``GenericAlias`` objects directly. Specializations of user-" +"defined :ref:`generic classes ` may not be instances " +"of :class:`types.GenericAlias`, but they provide similar functionality." msgstr "" msgid "" @@ -6633,8 +6947,9 @@ msgstr "" msgid "" "A ``GenericAlias`` object with :class:`typing.ParamSpec` parameters may not " -"have correct ``__parameters__`` after substitution because :class:`typing." -"ParamSpec` is intended primarily for static type checking." +"have correct ``__parameters__`` after substitution " +"because :class:`typing.ParamSpec` is intended primarily for static type " +"checking." msgstr "" msgid "" @@ -6653,13 +6968,13 @@ msgstr "" msgid "" "Introducing the ability to natively parameterize standard-library classes, " -"provided they implement the special class method :meth:`~object." -"__class_getitem__`." +"provided they implement the special class " +"method :meth:`~object.__class_getitem__`." msgstr "" msgid "" -":ref:`Generics`, :ref:`user-defined generics ` and :" -"class:`typing.Generic`" +":ref:`Generics`, :ref:`user-defined generics ` " +"and :class:`typing.Generic`" msgstr "" msgid "" @@ -6674,15 +6989,15 @@ msgid "" "A union object holds the value of the ``|`` (bitwise or) operation on " "multiple :ref:`type objects `. These types are intended " "primarily for :term:`type annotations `. The union type " -"expression enables cleaner type hinting syntax compared to subscripting :" -"class:`typing.Union`." +"expression enables cleaner type hinting syntax compared to " +"subscripting :class:`typing.Union`." msgstr "" msgid "" "Defines a union object which holds types *X*, *Y*, and so forth. ``X | Y`` " "means either X or Y. It is equivalent to ``typing.Union[X, Y]``. For " -"example, the following function expects an argument of type :class:`int` or :" -"class:`float`::" +"example, the following function expects an argument of type :class:`int` " +"or :class:`float`::" msgstr "" msgid "" @@ -6691,7 +7006,7 @@ msgid "" msgstr "" msgid "" -"The ``|`` operand cannot be used at runtime to define unions where one or " +"The ``|`` operator cannot be used at runtime to define unions where one or " "more members is a forward reference. For example, ``int | \"Foo\"``, where " "``\"Foo\"`` is a reference to a class not yet defined, will fail at runtime. " "For unions which include forward references, present the whole expression as " @@ -6759,8 +7074,8 @@ msgid "" msgstr "" msgid "" -"The user-exposed type for the union object can be accessed from :class:" -"`typing.Union` and used for :func:`isinstance` checks::" +"The user-exposed type for the union object can be accessed " +"from :class:`typing.Union` and used for :func:`isinstance` checks::" msgstr "" msgid "" @@ -6798,8 +7113,8 @@ msgstr "" msgid "" "Union objects are now instances of :class:`typing.Union`. Previously, they " -"were instances of :class:`types.UnionType`, which remains an alias for :" -"class:`typing.Union`." +"were instances of :class:`types.UnionType`, which remains an alias " +"for :class:`typing.Union`." msgstr "" msgid "Other Built-in Types" @@ -6816,10 +7131,10 @@ msgstr "" msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " -"table. Module attributes can be assigned to. (Note that the :keyword:" -"`import` statement is not, strictly speaking, an operation on a module " -"object; ``import foo`` does not require a module object named *foo* to " -"exist, rather it requires an (external) *definition* for a module named " +"table. Module attributes can be assigned to. (Note that " +"the :keyword:`import` statement is not, strictly speaking, an operation on a " +"module object; ``import foo`` does not require a module object named *foo* " +"to exist, rather it requires an (external) *definition* for a module named " "*foo* somewhere.)" msgstr "" @@ -6827,16 +7142,16 @@ msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " "will actually change the module's symbol table, but direct assignment to " -"the :attr:`~object.__dict__` attribute is not possible (you can write ``m." -"__dict__['a'] = 1``, which defines ``m.a`` to be ``1``, but you can't write " -"``m.__dict__ = {}``). Modifying :attr:`~object.__dict__` directly is not " -"recommended." +"the :attr:`~object.__dict__` attribute is not possible (you can write " +"``m.__dict__['a'] = 1``, which defines ``m.a`` to be ``1``, but you can't " +"write ``m.__dict__ = {}``). Modifying :attr:`~object.__dict__` directly is " +"not recommended." msgstr "" msgid "" -"Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````." +"Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````." msgstr "" msgid "Classes and Class Instances" @@ -6868,21 +7183,21 @@ msgstr "" msgid "" "Methods are functions that are called using the attribute notation. There " -"are two flavors: :ref:`built-in methods ` (such as :meth:" -"`~list.append` on lists) and :ref:`class instance method ` (such " +"as :meth:`~list.append` on lists) and :ref:`class instance methods `. Built-in methods are described with the types that support them." msgstr "" msgid "" "If you access a method (a function defined in a class namespace) through an " -"instance, you get a special object: a :dfn:`bound method` (also called :ref:" -"`instance method `) object. When called, it will add the " -"``self`` argument to the argument list. Bound methods have two special read-" -"only attributes: :attr:`m.__self__ ` is the object on which " -"the method operates, and :attr:`m.__func__ ` is the " -"function implementing the method. Calling ``m(arg-1, arg-2, ..., arg-n)`` " -"is completely equivalent to calling ``m.__func__(m.__self__, arg-1, " -"arg-2, ..., arg-n)``." +"instance, you get a special object: a :dfn:`bound method` (also " +"called :ref:`instance method `) object. When called, it " +"will add the ``self`` argument to the argument list. Bound methods have two " +"special read-only attributes: :attr:`m.__self__ ` is the " +"object on which the method operates, and :attr:`m.__func__ " +"` is the function implementing the method. Calling " +"``m(arg-1, arg-2, ..., arg-n)`` is completely equivalent to calling " +"``m.__func__(m.__self__, arg-1, arg-2, ..., arg-n)``." msgstr "" msgid "" @@ -6921,8 +7236,8 @@ msgid "" "executable Python code such as a function body. They differ from function " "objects because they don't contain a reference to their global execution " "environment. Code objects are returned by the built-in :func:`compile` " -"function and can be extracted from function objects through their :attr:" -"`~function.__code__` attribute. See also the :mod:`code` module." +"function and can be extracted from function objects through " +"their :attr:`~function.__code__` attribute. See also the :mod:`code` module." msgstr "" msgid "" @@ -7023,8 +7338,8 @@ msgstr "" msgid "" "This object is returned from comparisons and binary operations when they are " "asked to operate on types they don't support. See :ref:`comparisons` for " -"more information. There is exactly one :data:`NotImplemented` object. :code:" -"`type(NotImplemented)()` produces the singleton instance." +"more information. There is exactly one :data:`NotImplemented` " +"object. :code:`type(NotImplemented)()` produces the singleton instance." msgstr "" msgid "It is written as :code:`NotImplemented`." @@ -7044,8 +7359,8 @@ msgstr "" msgid "" "The implementation adds a few special read-only attributes to several object " -"types, where they are relevant. Some of these are not reported by the :func:" -"`dir` built-in function." +"types, where they are relevant. Some of these are not reported by " +"the :func:`dir` built-in function." msgstr "" msgid "" @@ -7065,19 +7380,19 @@ msgid "" msgstr "" msgid "" -"The :ref:`type parameters ` of generic classes, functions, and :" -"ref:`type aliases `. For classes and functions that are not " -"generic, this will be an empty tuple." +"The :ref:`type parameters ` of generic classes, functions, " +"and :ref:`type aliases `. For classes and functions that are " +"not generic, this will be an empty tuple." msgstr "" msgid "Integer string conversion length limitation" msgstr "" msgid "" -"CPython has a global limit for converting between :class:`int` and :class:" -"`str` to mitigate denial of service attacks. This limit *only* applies to " -"decimal or other non-power-of-two number bases. Hexadecimal, octal, and " -"binary conversions are unlimited. The limit can be configured." +"CPython has a global limit for converting between :class:`int` " +"and :class:`str` to mitigate denial of service attacks. This limit *only* " +"applies to decimal or other non-power-of-two number bases. Hexadecimal, " +"octal, and binary conversions are unlimited. The limit can be configured." msgstr "" msgid "" @@ -7127,10 +7442,10 @@ msgid "" msgstr "" msgid "" -"The default limit is 4300 digits as provided in :data:`sys.int_info." -"default_max_str_digits `. The lowest limit that can be " -"configured is 640 digits as provided in :data:`sys.int_info." -"str_digits_check_threshold `." +"The default limit is 4300 digits as provided " +"in :data:`sys.int_info.default_max_str_digits `. The lowest " +"limit that can be configured is 640 digits as provided " +"in :data:`sys.int_info.str_digits_check_threshold `." msgstr "" msgid "Verification:" @@ -7150,8 +7465,8 @@ msgid "Affected APIs" msgstr "" msgid "" -"The limitation only applies to potentially slow conversions between :class:" -"`int` and :class:`str` or :class:`bytes`:" +"The limitation only applies to potentially slow conversions " +"between :class:`int` and :class:`str` or :class:`bytes`:" msgstr "" msgid "``int(string)`` with default base 10." @@ -7212,16 +7527,17 @@ msgid "" msgstr "" msgid "" -":data:`sys.flags.int_max_str_digits` contains the value of :envvar:" -"`PYTHONINTMAXSTRDIGITS` or :option:`-X int_max_str_digits <-X>`. If both the " -"env var and the ``-X`` option are set, the ``-X`` option takes precedence. A " -"value of *-1* indicates that both were unset, thus a value of :data:`sys." -"int_info.default_max_str_digits` was used during initialization." +":data:`sys.flags.int_max_str_digits` contains the value " +"of :envvar:`PYTHONINTMAXSTRDIGITS` or :option:`-X int_max_str_digits <-X>`. " +"If both the env var and the ``-X`` option are set, the ``-X`` option takes " +"precedence. A value of *-1* indicates that both were unset, thus a value " +"of :data:`sys.int_info.default_max_str_digits` was used during " +"initialization." msgstr "" msgid "" -"From code, you can inspect the current limit and set a new one using these :" -"mod:`sys` APIs:" +"From code, you can inspect the current limit and set a new one using " +"these :mod:`sys` APIs:" msgstr "" msgid "" @@ -7231,8 +7547,8 @@ msgid "" msgstr "" msgid "" -"Information about the default and minimum can be found in :data:`sys." -"int_info`:" +"Information about the default and minimum can be found " +"in :data:`sys.int_info`:" msgstr "" msgid "" @@ -7588,6 +7904,24 @@ msgstr "" msgid "iteration over" msgstr "" +msgid "generator" +msgstr "" + +msgid "exception" +msgstr "" + +msgid "StopIteration" +msgstr "" + +msgid "GeneratorExit" +msgstr "" + +msgid "asynchronous-generator" +msgstr "" + +msgid "StopAsyncIteration" +msgstr "" + msgid "len" msgstr "" diff --git a/c-api/abstract.po b/c-api/abstract.po index dca6338..c5491fb 100644 --- a/c-api/abstract.po +++ b/c-api/abstract.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Abstract Objects Layer" -msgstr "" +msgstr "ਐਬਸਟ੍ਰੈਕਟ ਆਬਜੈਕਟ ਲੇਅਰ" msgid "" "The functions in this chapter interact with Python objects regardless of " @@ -31,10 +31,17 @@ msgid "" "or all sequence types). When used on object types for which they do not " "apply, they will raise a Python exception." msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਦਿੱਤੇ ਫੰਕਸ਼ਨ Python ਆਬਜੈਕਟਾਂ ਨਾਲ ਉਨ੍ਹਾਂ ਦੀ ਕਿਸਮ ਤੋਂ ਬਿਨਾਂ ਸੰਬੰਧਿਤ ਹੁੰਦੇ ਹਨ, ਜਾਂ " +"ਆਬਜੈਕਟ ਕਿਸਮਾਂ ਦੀਆਂ ਵਿਸ਼ਾਲ ਸ਼੍ਰੇਣੀਆਂ (ਉਦਾਹਰਨ ਲਈ, ਸਾਰੀਆਂ ਸੰਖਿਆਤਮਕ ਕਿਸਮਾਂ ਜਾਂ ਸਾਰੀਆਂ ਕ੍ਰਮ " +"ਕਿਸਮਾਂ) ਨਾਲ ਕੰਮ ਕਰਦੇ ਹਨ। ਜੇਕਰ ਇਨ੍ਹਾਂ ਨੂੰ ਉਹਨਾਂ ਆਬਜੈਕਟ ਕਿਸਮਾਂ 'ਤੇ ਵਰਤਿਆ ਜਾਵੇ ਜਿਨ੍ਹਾਂ 'ਤੇ ਇਹ " +"ਲਾਗੂ ਨਹੀਂ ਹੁੰਦੇ, ਤਾਂ ਇਹ ਇੱਕ Python ਅਪਵਾਦ ਪੈਦਾ ਕਰਨਗੇ।" msgid "" "It is not possible to use these functions on objects that are not properly " -"initialized, such as a list object that has been created by :c:func:" -"`PyList_New`, but whose items have not been set to some non-\\ ``NULL`` " -"value yet." +"initialized, such as a list object that has been created " +"by :c:func:`PyList_New`, but whose items have not been set to some non-\\ " +"``NULL`` value yet." msgstr "" +"ਇਨ੍ਹਾਂ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਉਹਨਾਂ ਆਬਜੈਕਟਾਂ 'ਤੇ ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ ਜੋ ਸਹੀ ਢੰਗ ਨਾਲ ਸ਼ੁਰੂਆਤੀਕ੍ਰਿਤ ਨਹੀਂ ਕੀਤੇ " +"ਗਏ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਇੱਕ ਸੂਚੀ ਆਬਜੈਕਟ ਜੋ :c:func:`PyList_New` ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਹੋਵੇ, ਪਰ " +"ਜਿਸ ਦੇ ਆਈਟਮਾਂ ਨੂੰ ਹਾਲੇ ਤੱਕ ਕਿਸੇ ਗੈਰ-``NULL`` ਮੁੱਲ 'ਤੇ ਸੈੱਟ ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ।" diff --git a/c-api/allocation.po b/c-api/allocation.po index 05ab158..cdc5525 100644 --- a/c-api/allocation.po +++ b/c-api/allocation.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,10 +31,10 @@ msgid "" msgstr "" msgid "" -"In general, consider this function to be a low-level routine. Use :c:member:" -"`~PyTypeObject.tp_alloc` where possible. For implementing :c:member:`!" -"tp_alloc` for your type, prefer :c:func:`PyType_GenericAlloc` or :c:func:" -"`PyObject_New`." +"In general, consider this function to be a low-level routine. " +"Use :c:member:`~PyTypeObject.tp_alloc` where possible. For " +"implementing :c:member:`!tp_alloc` for your type, " +"prefer :c:func:`PyType_GenericAlloc` or :c:func:`PyObject_New`." msgstr "" msgid "" @@ -54,10 +54,10 @@ msgstr "" msgid "" "Allocates a new Python object using the C structure type *TYPE* and the " -"Python type object *typeobj* (``PyTypeObject*``) by calling :c:func:" -"`PyObject_Malloc` to allocate memory and initializing it like :c:func:" -"`PyObject_Init`. The caller will own the only reference to the object (i.e. " -"its reference count will be one)." +"Python type object *typeobj* (``PyTypeObject*``) by " +"calling :c:func:`PyObject_Malloc` to allocate memory and initializing it " +"like :c:func:`PyObject_Init`. The caller will own the only reference to the " +"object (i.e. its reference count will be one)." msgstr "" msgid "" @@ -66,20 +66,22 @@ msgid "" msgstr "" msgid "" -"When populating a type's :c:member:`~PyTypeObject.tp_alloc` slot, :c:func:" -"`PyType_GenericAlloc` is preferred over a custom function that simply calls " -"this macro." +"When populating a type's :c:member:`~PyTypeObject.tp_alloc` " +"slot, :c:func:`PyType_GenericAlloc` is preferred over a custom function that " +"simply calls this macro." msgstr "" msgid "" -"This macro does not call :c:member:`~PyTypeObject.tp_alloc`, :c:member:" -"`~PyTypeObject.tp_new` (:meth:`~object.__new__`), or :c:member:" -"`~PyTypeObject.tp_init` (:meth:`~object.__init__`)." +"This macro does not " +"call :c:member:`~PyTypeObject.tp_alloc`, :c:member:`~PyTypeObject.tp_new` " +"(:meth:`~object.__new__`), or :c:member:`~PyTypeObject.tp_init` " +"(:meth:`~object.__init__`)." msgstr "" msgid "" -"This cannot be used for objects with :c:macro:`Py_TPFLAGS_HAVE_GC` set in :c:" -"member:`~PyTypeObject.tp_flags`; use :c:macro:`PyObject_GC_New` instead." +"This cannot be used for objects with :c:macro:`Py_TPFLAGS_HAVE_GC` set " +"in :c:member:`~PyTypeObject.tp_flags`; use :c:macro:`PyObject_GC_New` " +"instead." msgstr "" msgid "" @@ -94,9 +96,9 @@ msgstr "" msgid "" "This macro does not construct a fully initialized object of the given type; " -"it merely allocates memory and prepares it for further initialization by :c:" -"member:`~PyTypeObject.tp_init`. To construct a fully initialized object, " -"call *typeobj* instead. For example::" +"it merely allocates memory and prepares it for further initialization " +"by :c:member:`~PyTypeObject.tp_init`. To construct a fully initialized " +"object, call *typeobj* instead. For example::" msgstr "" msgid "PyObject *foo = PyObject_CallNoArgs((PyObject *)&PyFoo_Type);" @@ -119,8 +121,8 @@ msgstr "" msgid "" "It allocates enough memory for the *TYPE* structure plus *size* " -"(``Py_ssize_t``) fields of the size given by the :c:member:`~PyTypeObject." -"tp_itemsize` field of *typeobj*." +"(``Py_ssize_t``) fields of the size given by " +"the :c:member:`~PyTypeObject.tp_itemsize` field of *typeobj*." msgstr "" msgid "The memory is initialized like :c:func:`PyObject_InitVar`." @@ -134,8 +136,9 @@ msgid "" msgstr "" msgid "" -"This cannot be used for objects with :c:macro:`Py_TPFLAGS_HAVE_GC` set in :c:" -"member:`~PyTypeObject.tp_flags`; use :c:macro:`PyObject_GC_NewVar` instead." +"This cannot be used for objects with :c:macro:`Py_TPFLAGS_HAVE_GC` set " +"in :c:member:`~PyTypeObject.tp_flags`; use :c:macro:`PyObject_GC_NewVar` " +"instead." msgstr "" msgid "" diff --git a/c-api/apiabiversion.po b/c-api/apiabiversion.po index e135d99..38e8b93 100644 --- a/c-api/apiabiversion.po +++ b/c-api/apiabiversion.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-11 18:31+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,8 +63,8 @@ msgid "The ``2`` in ``3.4.1a2``. Zero for final releases." msgstr "" msgid "" -"The Python version number encoded in a single integer. See :c:func:" -"`Py_PACK_FULL_VERSION` for the encoding details." +"The Python version number encoded in a single integer. " +"See :c:func:`Py_PACK_FULL_VERSION` for the encoding details." msgstr "" msgid "" @@ -81,9 +81,9 @@ msgid "Run-time version" msgstr "" msgid "" -"The Python runtime version number encoded in a single constant integer. See :" -"c:func:`Py_PACK_FULL_VERSION` for the encoding details. This contains the " -"Python version used at run time." +"The Python runtime version number encoded in a single constant integer. " +"See :c:func:`Py_PACK_FULL_VERSION` for the encoding details. This contains " +"the Python version used at run time." msgstr "" msgid "" diff --git a/c-api/arg.po b/c-api/arg.po index 10d78d1..85ea22a 100644 --- a/c-api/arg.po +++ b/c-api/arg.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-09 14:27+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,16 +27,16 @@ msgstr "" msgid "" "These functions are useful when creating your own extension functions and " -"methods. Additional information and examples are available in :ref:" -"`extending-index`." +"methods. Additional information and examples are available " +"in :ref:`extending-index`." msgstr "" msgid "" -"The first three of these functions described, :c:func:`PyArg_ParseTuple`, :c:" -"func:`PyArg_ParseTupleAndKeywords`, and :c:func:`PyArg_Parse`, all use " -"*format strings* which are used to tell the function about the expected " -"arguments. The format strings use the same syntax for each of these " -"functions." +"The first three of these functions " +"described, :c:func:`PyArg_ParseTuple`, :c:func:`PyArg_ParseTupleAndKeywords`, " +"and :c:func:`PyArg_Parse`, all use *format strings* which are used to tell " +"the function about the expected arguments. The format strings use the same " +"syntax for each of these functions." msgstr "" msgid "Parsing arguments" @@ -98,10 +98,10 @@ msgid "" msgstr "" msgid "" -"To ensure that the underlying buffer may be safely borrowed, the object's :c:" -"member:`PyBufferProcs.bf_releasebuffer` field must be ``NULL``. This " -"disallows common mutable objects such as :class:`bytearray`, but also some " -"read-only objects such as :class:`memoryview` of :class:`bytes`." +"To ensure that the underlying buffer may be safely borrowed, the " +"object's :c:member:`PyBufferProcs.bf_releasebuffer` field must be ``NULL``. " +"This disallows common mutable objects such as :class:`bytearray`, but also " +"some read-only objects such as :class:`memoryview` of :class:`bytes`." msgstr "" msgid "" @@ -125,8 +125,8 @@ msgstr "" msgid "" "This format does not accept :term:`bytes-like objects `. " "If you want to accept filesystem paths and convert them to C character " -"strings, it is preferable to use the ``O&`` format with :c:func:" -"`PyUnicode_FSConverter` as *converter*." +"strings, it is preferable to use the ``O&`` format " +"with :c:func:`PyUnicode_FSConverter` as *converter*." msgstr "" msgid "" @@ -145,8 +145,8 @@ msgid "" msgstr "" msgid "" -"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, :" -"c:type:`Py_ssize_t`]" +"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char " +"\\*, :c:type:`Py_ssize_t`]" msgstr "" msgid "" @@ -208,8 +208,8 @@ msgid "" msgstr "" msgid "" -"``y#`` (read-only :term:`bytes-like object`) [const char \\*, :c:type:" -"`Py_ssize_t`]" +"``y#`` (read-only :term:`bytes-like object`) [const char " +"\\*, :c:type:`Py_ssize_t`]" msgstr "" msgid "" @@ -231,9 +231,9 @@ msgstr "" msgid "" "Requires that the Python object is a :class:`bytearray` object, without " -"attempting any conversion. Raises :exc:`TypeError` if the object is not a :" -"class:`bytearray` object. The C variable may also be declared as :c:expr:" -"`PyObject*`." +"attempting any conversion. Raises :exc:`TypeError` if the object is not " +"a :class:`bytearray` object. The C variable may also be declared " +"as :c:expr:`PyObject*`." msgstr "" msgid "``U`` (:class:`str`) [PyObject \\*]" @@ -251,8 +251,8 @@ msgstr "" msgid "" "This format accepts any object which implements the read-write buffer " "interface. It fills a :c:type:`Py_buffer` structure provided by the caller. " -"The buffer may contain embedded null bytes. The caller has to call :c:func:" -"`PyBuffer_Release` when it is done with the buffer." +"The buffer may contain embedded null bytes. The caller has to " +"call :c:func:`PyBuffer_Release` when it is done with the buffer." msgstr "" msgid "``es`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer]" @@ -276,8 +276,8 @@ msgstr "" msgid "" ":c:func:`PyArg_ParseTuple` will allocate a buffer of the needed size, copy " "the encoded data into this buffer and adjust *\\*buffer* to reference the " -"newly allocated storage. The caller is responsible for calling :c:func:" -"`PyMem_Free` to free the allocated buffer after use." +"newly allocated storage. The caller is responsible for " +"calling :c:func:`PyMem_Free` to free the allocated buffer after use." msgstr "" msgid "" @@ -292,8 +292,8 @@ msgid "" msgstr "" msgid "" -"``es#`` (:class:`str`) [const char \\*encoding, char \\*\\*buffer, :c:type:" -"`Py_ssize_t` \\*buffer_length]" +"``es#`` (:class:`str`) [const char \\*encoding, char " +"\\*\\*buffer, :c:type:`Py_ssize_t` \\*buffer_length]" msgstr "" msgid "" @@ -355,14 +355,15 @@ msgid "" msgstr "" msgid "Numbers" -msgstr "" +msgstr "ਸੰਖਿਆਵਾਂ" msgid "" "These formats allow representing Python numbers or single characters as C " -"numbers. Formats that require :class:`int`, :class:`float` or :class:" -"`complex` can also use the corresponding special methods :meth:`~object." -"__index__`, :meth:`~object.__float__` or :meth:`~object.__complex__` to " -"convert the Python object to the required type." +"numbers. Formats that require :class:`int`, :class:`float` " +"or :class:`complex` can also use the corresponding special " +"methods :meth:`~object.__index__`, :meth:`~object.__float__` " +"or :meth:`~object.__complex__` to convert the Python object to the required " +"type." msgstr "" msgid "" @@ -387,8 +388,8 @@ msgstr "" msgid "" "Convert a Python integer to a tiny integer without overflow checking, stored " -"in a C :c:expr:`unsigned char`. Convert a Python integer to a C :c:expr:" -"`unsigned char`." +"in a C :c:expr:`unsigned char`. Convert a Python integer to a " +"C :c:expr:`unsigned char`." msgstr "" msgid "``h`` (:class:`int`) [short int]" @@ -486,10 +487,10 @@ msgid "Convert a Python complex number to a C :c:type:`Py_complex` structure." msgstr "" msgid "" -"For unsigned integer formats ``B``, ``H``, ``I``, ``k`` and ``K``, :exc:" -"`DeprecationWarning` is emitted when the value is larger than the maximal " -"value for the C type or less than the minimal value for the corresponding " -"signed integer type of the same size." +"For unsigned integer formats ``B``, ``H``, ``I``, ``k`` and " +"``K``, :exc:`DeprecationWarning` is emitted when the value is larger than " +"the maximal value for the C type or less than the minimal value for the " +"corresponding signed integer type of the same size." msgstr "" msgid "Other objects" @@ -500,9 +501,9 @@ msgstr "" msgid "" "Store a Python object (without any conversion) in a C object pointer. The C " -"program thus receives the actual object that was passed. A new :term:" -"`strong reference` to the object is not created (i.e. its reference count is " -"not increased). The pointer stored is not ``NULL``." +"program thus receives the actual object that was passed. A " +"new :term:`strong reference` to the object is not created (i.e. its " +"reference count is not increased). The pointer stored is not ``NULL``." msgstr "" msgid "``O!`` (object) [*typeobject*, PyObject \\*]" @@ -530,12 +531,12 @@ msgid "status = converter(object, address);" msgstr "" msgid "" -"where *object* is the Python object to be converted and *address* is the :c:" -"expr:`void*` argument that was passed to the ``PyArg_Parse*`` function. The " -"returned *status* should be ``1`` for a successful conversion and ``0`` if " -"the conversion has failed. When the conversion fails, the *converter* " -"function should raise an exception and leave the content of *address* " -"unmodified." +"where *object* is the Python object to be converted and *address* is " +"the :c:expr:`void*` argument that was passed to the ``PyArg_Parse*`` " +"function. The returned *status* should be ``1`` for a successful conversion " +"and ``0`` if the conversion has failed. When the conversion fails, the " +"*converter* function should raise an exception and leave the content of " +"*address* unmodified." msgstr "" msgid "" @@ -547,8 +548,8 @@ msgid "" msgstr "" msgid "" -"Examples of converters: :c:func:`PyUnicode_FSConverter` and :c:func:" -"`PyUnicode_FSDecoder`." +"Examples of converters: :c:func:`PyUnicode_FSConverter` " +"and :c:func:`PyUnicode_FSDecoder`." msgstr "" msgid ":c:macro:`!Py_CLEANUP_SUPPORTED` was added." @@ -577,8 +578,8 @@ msgstr "" msgid "" "If *items* contains format units which store a :ref:`borrowed buffer ` (``s``, ``s#``, ``z``, ``z#``, ``y``, or ``y#``) or a :" -"term:`borrowed reference` (``S``, ``Y``, ``U``, ``O``, or ``O!``), the " +"borrowed-buffer>` (``s``, ``s#``, ``z``, ``z#``, ``y``, or ``y#``) or " +"a :term:`borrowed reference` (``S``, ``Y``, ``U``, ``O``, or ``O!``), the " "object must be a Python tuple. The *converter* for the ``O&`` format unit in " "*items* must not store a borrowed buffer or a borrowed reference." msgstr "" @@ -598,7 +599,7 @@ msgid "" msgstr "" msgid "``|``" -msgstr "" +msgstr "``|``" msgid "" "Indicates that the remaining arguments in the Python argument list are " @@ -610,7 +611,7 @@ msgid "" msgstr "" msgid "``$``" -msgstr "" +msgstr "``$``" msgid "" ":c:func:`PyArg_ParseTupleAndKeywords` only: Indicates that the remaining " @@ -635,8 +636,8 @@ msgstr "" msgid "" "The list of format units ends here; the string after the semicolon is used " -"as the error message *instead* of the default error message. ``:`` and ``;" -"`` mutually exclude each other." +"as the error message *instead* of the default error message. ``:`` and " +"``;`` mutually exclude each other." msgstr "" msgid "" @@ -687,9 +688,9 @@ msgid "" msgstr "" msgid "" -"The *keywords* parameter declaration is :c:expr:`char * const *` in C and :c:" -"expr:`const char * const *` in C++. This can be overridden with the :c:macro:" -"`PY_CXX_CONST` macro." +"The *keywords* parameter declaration is :c:expr:`char * const *` in C " +"and :c:expr:`const char * const *` in C++. This can be overridden with " +"the :c:macro:`PY_CXX_CONST` macro." msgstr "" msgid "" @@ -698,9 +699,9 @@ msgid "" msgstr "" msgid "" -"The *keywords* parameter has now type :c:expr:`char * const *` in C and :c:" -"expr:`const char * const *` in C++, instead of :c:expr:`char **`. Added " -"support for non-ASCII keyword parameter names." +"The *keywords* parameter has now type :c:expr:`char * const *` in C " +"and :c:expr:`const char * const *` in C++, instead of :c:expr:`char **`. " +"Added support for non-ASCII keyword parameter names." msgstr "" msgid "" @@ -721,7 +722,7 @@ msgid "" msgstr "" msgid "Example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ::" msgid "" "// Function using METH_O calling convention\n" @@ -745,10 +746,10 @@ msgstr "" msgid "" "Parse the parameters of a function that takes both array and keyword " -"parameters into local variables (that is, a function using the :c:macro:" -"`METH_FASTCALL` ``|`` :c:macro:`METH_KEYWORDS` calling convention). Returns " -"true on success; on failure, it returns false and raises the appropriate " -"exception." +"parameters into local variables (that is, a function using " +"the :c:macro:`METH_FASTCALL` ``|`` :c:macro:`METH_KEYWORDS` calling " +"convention). Returns true on success; on failure, it returns false and " +"raises the appropriate exception." msgstr "" msgid "" @@ -826,10 +827,10 @@ msgid "" "When memory buffers are passed as parameters to supply data to build " "objects, as for the ``s`` and ``s#`` formats, the required data is copied. " "Buffers provided by the caller are never referenced by the objects created " -"by :c:func:`Py_BuildValue`. In other words, if your code invokes :c:func:" -"`malloc` and passes the allocated memory to :c:func:`Py_BuildValue`, your " -"code is responsible for calling :c:func:`free` for that memory once :c:func:" -"`Py_BuildValue` returns." +"by :c:func:`Py_BuildValue`. In other words, if your code " +"invokes :c:func:`malloc` and passes the allocated memory " +"to :c:func:`Py_BuildValue`, your code is responsible for " +"calling :c:func:`free` for that memory once :c:func:`Py_BuildValue` returns." msgstr "" msgid "" @@ -989,9 +990,9 @@ msgid "" "Pass a Python object untouched but create a new :term:`strong reference` to " "it (i.e. its reference count is incremented by one). If the object passed in " "is a ``NULL`` pointer, it is assumed that this was caused because the call " -"producing the argument found an error and set an exception. Therefore, :c:" -"func:`Py_BuildValue` will return ``NULL`` but won't raise an exception. If " -"no exception has been raised yet, :exc:`SystemError` is set." +"producing the argument found an error and set an exception. " +"Therefore, :c:func:`Py_BuildValue` will return ``NULL`` but won't raise an " +"exception. If no exception has been raised yet, :exc:`SystemError` is set." msgstr "" msgid "``S`` (object) [PyObject \\*]" @@ -1014,9 +1015,9 @@ msgstr "" msgid "" "Convert *anything* to a Python object through a *converter* function. The " -"function is called with *anything* (which should be compatible with :c:expr:" -"`void*`) as its argument and should return a \"new\" Python object, or " -"``NULL`` if an error occurred." +"function is called with *anything* (which should be compatible " +"with :c:expr:`void*`) as its argument and should return a \"new\" Python " +"object, or ``NULL`` if an error occurred." msgstr "" msgid "``(items)`` (:class:`tuple`) [*matching-items*]" diff --git a/c-api/bool.po b/c-api/bool.po index 33baca1..e6535f1 100644 --- a/c-api/bool.po +++ b/c-api/bool.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Boolean Objects" -msgstr "" +msgstr "ਬੂਲੀਅਨ ਆਬਜੈਕਟ" msgid "" "Booleans in Python are implemented as a subclass of integers. There are " @@ -31,40 +31,43 @@ msgid "" "normal creation and deletion functions don't apply to booleans. The " "following macros are available, however." msgstr "" +"Python ਵਿੱਚ ਬੂਲੀਅਨ ਨੂੰ ਪੂਰਨ ਅੰਕਾਂ ਦੀ ਇੱਕ ਉਪ-ਸ਼੍ਰੇਣੀ ਵਜੋਂ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ। ਇੱਥੇ ਸਿਰਫ਼ ਦੋ ਹੀ " +"ਬੂਲੀਅਨ ਹਨ: :c:data:`Py_False` ਅਤੇ :c:data:`Py_True`। ਇਸ ਲਈ, ਆਮ ਬਣਾਉਣ ਅਤੇ ਮਿਟਾਉਣ " +"ਵਾਲੇ ਫੰਕਸ਼ਨ ਬੂਲੀਅਨ 'ਤੇ ਲਾਗੂ ਨਹੀਂ ਹੁੰਦੇ। ਹਾਲਾਂਕਿ, ਹੇਠਾਂ ਦਿੱਤੇ ਮੈਕਰੋ ਉਪਲਬਧ ਹਨ।" msgid "" "This instance of :c:type:`PyTypeObject` represents the Python boolean type; " "it is the same object as :class:`bool` in the Python layer." msgstr "" +":c:type:`PyTypeObject` ਦਾ ਇਹ ਇੰਸਟੈਂਸ Python ਦੇ ਬੂਲੀਅਨ ਕਿਸਮ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ; ਇਹ Python " +"ਲੇਅਰ ਵਿੱਚ :class:`bool` ਵਾਲਾ ਹੀ ਆਬਜੈਕਟ ਹੈ।" msgid "" "Return true if *o* is of type :c:data:`PyBool_Type`. This function always " "succeeds." msgstr "" +"ਜੇ *o* ਦੀ ਕਿਸਮ :c:data:`PyBool_Type` ਹੈ ਤਾਂ true ਵਾਪਸ ਕਰੋ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ " +"ਹੈ।" -msgid "" -"The Python ``False`` object. This object has no methods and is :term:" -"`immortal`." +msgid "The Python ``False`` object. This object is :term:`immortal`." msgstr "" msgid ":c:data:`Py_False` is :term:`immortal`." -msgstr "" +msgstr ":c:data:`Py_False` :term:`immortal` ਹੈ।" -msgid "" -"The Python ``True`` object. This object has no methods and is :term:" -"`immortal`." +msgid "The Python ``True`` object. This object is :term:`immortal`." msgstr "" msgid ":c:data:`Py_True` is :term:`immortal`." -msgstr "" +msgstr ":c:data:`Py_True` :term:`immortal` ਹੈ।" msgid "Return :c:data:`Py_False` from a function." -msgstr "" +msgstr "ਕਿਸੇ ਫੰਕਸ਼ਨ ਤੋਂ :c:data:`Py_False` ਵਾਪਸ ਕਰੋ।" msgid "Return :c:data:`Py_True` from a function." -msgstr "" +msgstr "ਕਿਸੇ ਫੰਕਸ਼ਨ ਤੋਂ :c:data:`Py_True` ਵਾਪਸ ਕਰੋ।" msgid "" "Return :c:data:`Py_True` or :c:data:`Py_False`, depending on the truth value " "of *v*." -msgstr "" +msgstr "*v* ਦੇ ਸੱਚ ਮੁੱਲ ਦੇ ਅਨੁਸਾਰ :c:data:`Py_True` ਜਾਂ :c:data:`Py_False` ਵਾਪਸ ਕਰੋ।" diff --git a/c-api/buffer.po b/c-api/buffer.po index 9dc5960..231ed07 100644 --- a/c-api/buffer.po +++ b/c-api/buffer.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,10 +27,10 @@ msgstr "" msgid "" "Certain objects available in Python wrap access to an underlying memory " -"array or *buffer*. Such objects include the built-in :class:`bytes` and :" -"class:`bytearray`, and some extension types like :class:`array.array`. Third-" -"party libraries may define their own types for special purposes, such as " -"image processing or numeric analysis." +"array or *buffer*. Such objects include the built-in :class:`bytes` " +"and :class:`bytearray`, and some extension types like :class:`array.array`. " +"Third-party libraries may define their own types for special purposes, such " +"as image processing or numeric analysis." msgstr "" msgid "" @@ -66,14 +66,14 @@ msgid "" msgstr "" msgid "" -"An example consumer of the buffer interface is the :meth:`~io.BufferedIOBase." -"write` method of file objects: any object that can export a series of bytes " -"through the buffer interface can be written to a file. While :meth:`!write` " -"only needs read-only access to the internal contents of the object passed to " -"it, other methods such as :meth:`~io.BufferedIOBase.readinto` need write " -"access to the contents of their argument. The buffer interface allows " -"objects to selectively allow or reject exporting of read-write and read-only " -"buffers." +"An example consumer of the buffer interface is " +"the :meth:`~io.BufferedIOBase.write` method of file objects: any object that " +"can export a series of bytes through the buffer interface can be written to " +"a file. While :meth:`!write` only needs read-only access to the internal " +"contents of the object passed to it, other methods such " +"as :meth:`~io.BufferedIOBase.readinto` need write access to the contents of " +"their argument. The buffer interface allows objects to selectively allow or " +"reject exporting of read-write and read-only buffers." msgstr "" msgid "" @@ -124,8 +124,8 @@ msgstr "" msgid "" "For short instructions how to write an exporting object, see :ref:`Buffer " -"Object Structures `. For obtaining a buffer, see :c:func:" -"`PyObject_GetBuffer`." +"Object Structures `. For obtaining a buffer, " +"see :c:func:`PyObject_GetBuffer`." msgstr "" msgid "" @@ -148,9 +148,9 @@ msgid "" msgstr "" msgid "" -"As a special case, for *temporary* buffers that are wrapped by :c:func:" -"`PyMemoryView_FromBuffer` or :c:func:`PyBuffer_FillInfo` this field is " -"``NULL``. In general, exporting objects MUST NOT use this scheme." +"As a special case, for *temporary* buffers that are wrapped " +"by :c:func:`PyMemoryView_FromBuffer` or :c:func:`PyBuffer_FillInfo` this " +"field is ``NULL``. In general, exporting objects MUST NOT use this scheme." msgstr "" msgid "" @@ -163,8 +163,8 @@ msgstr "" msgid "" "Accessing ``((char *)buf)[0] up to ((char *)buf)[len-1]`` is only valid if " "the buffer has been obtained by a request that guarantees contiguity. In " -"most cases such a request will be :c:macro:`PyBUF_SIMPLE` or :c:macro:" -"`PyBUF_WRITABLE`." +"most cases such a request will be :c:macro:`PyBUF_SIMPLE` " +"or :c:macro:`PyBUF_WRITABLE`." msgstr "" msgid "" @@ -173,27 +173,29 @@ msgid "" msgstr "" msgid "" -"Item size in bytes of a single element. Same as the value of :func:`struct." -"calcsize` called on non-``NULL`` :c:member:`~Py_buffer.format` values." +"Item size in bytes of a single element. Same as the value " +"of :func:`struct.calcsize` called on non-" +"``NULL`` :c:member:`~Py_buffer.format` values." msgstr "" msgid "" -"Important exception: If a consumer requests a buffer without the :c:macro:" -"`PyBUF_FORMAT` flag, :c:member:`~Py_buffer.format` will be set to " -"``NULL``, but :c:member:`~Py_buffer.itemsize` still has the value for the " -"original format." +"Important exception: If a consumer requests a buffer without " +"the :c:macro:`PyBUF_FORMAT` flag, :c:member:`~Py_buffer.format` will be set " +"to ``NULL``, but :c:member:`~Py_buffer.itemsize` still has the value for " +"the original format." msgstr "" msgid "" "If :c:member:`~Py_buffer.shape` is present, the equality ``product(shape) * " -"itemsize == len`` still holds and the consumer can use :c:member:`~Py_buffer." -"itemsize` to navigate the buffer." +"itemsize == len`` still holds and the consumer can " +"use :c:member:`~Py_buffer.itemsize` to navigate the buffer." msgstr "" msgid "" -"If :c:member:`~Py_buffer.shape` is ``NULL`` as a result of a :c:macro:" -"`PyBUF_SIMPLE` or a :c:macro:`PyBUF_WRITABLE` request, the consumer must " -"disregard :c:member:`~Py_buffer.itemsize` and assume ``itemsize == 1``." +"If :c:member:`~Py_buffer.shape` is ``NULL`` as a result of " +"a :c:macro:`PyBUF_SIMPLE` or a :c:macro:`PyBUF_WRITABLE` request, the " +"consumer must disregard :c:member:`~Py_buffer.itemsize` and assume " +"``itemsize == 1``." msgstr "" msgid "" @@ -208,16 +210,17 @@ msgstr "" msgid "" "The number of dimensions the memory represents as an n-dimensional array. If " "it is ``0``, :c:member:`~Py_buffer.buf` points to a single item representing " -"a scalar. In this case, :c:member:`~Py_buffer.shape`, :c:member:`~Py_buffer." -"strides` and :c:member:`~Py_buffer.suboffsets` MUST be ``NULL``. The maximum " -"number of dimensions is given by :c:macro:`PyBUF_MAX_NDIM`." +"a scalar. In this " +"case, :c:member:`~Py_buffer.shape`, :c:member:`~Py_buffer.strides` " +"and :c:member:`~Py_buffer.suboffsets` MUST be ``NULL``. The maximum number " +"of dimensions is given by :c:macro:`PyBUF_MAX_NDIM`." msgstr "" msgid "" "An array of :c:type:`Py_ssize_t` of length :c:member:`~Py_buffer.ndim` " "indicating the shape of the memory as an n-dimensional array. Note that " -"``shape[0] * ... * shape[ndim-1] * itemsize`` MUST be equal to :c:member:" -"`~Py_buffer.len`." +"``shape[0] * ... * shape[ndim-1] * itemsize`` MUST be equal " +"to :c:member:`~Py_buffer.len`." msgstr "" msgid "" @@ -299,9 +302,8 @@ msgstr "" msgid "" "The following fields are not influenced by *flags* and must always be filled " -"in with the correct values: :c:member:`~Py_buffer.obj`, :c:member:" -"`~Py_buffer.buf`, :c:member:`~Py_buffer.len`, :c:member:`~Py_buffer." -"itemsize`, :c:member:`~Py_buffer.ndim`." +"in with the correct " +"values: :c:member:`~Py_buffer.obj`, :c:member:`~Py_buffer.buf`, :c:member:`~Py_buffer.len`, :c:member:`~Py_buffer.itemsize`, :c:member:`~Py_buffer.ndim`." msgstr "" msgid "readonly, format" @@ -325,15 +327,15 @@ msgstr "" msgid "" ":c:macro:`PyBUF_WRITABLE` can be \\|'d to any of the flags in the next " -"section. Since :c:macro:`PyBUF_SIMPLE` is defined as 0, :c:macro:" -"`PyBUF_WRITABLE` can be used as a stand-alone flag to request a simple " -"writable buffer." +"section. Since :c:macro:`PyBUF_SIMPLE` is defined as " +"0, :c:macro:`PyBUF_WRITABLE` can be used as a stand-alone flag to request a " +"simple writable buffer." msgstr "" msgid "" -":c:macro:`PyBUF_FORMAT` must be \\|'d to any of the flags except :c:macro:" -"`PyBUF_SIMPLE`, because the latter already implies format ``B`` (unsigned " -"bytes). :c:macro:`!PyBUF_FORMAT` cannot be used on its own." +":c:macro:`PyBUF_FORMAT` must be \\|'d to any of the flags " +"except :c:macro:`PyBUF_SIMPLE`, because the latter already implies format " +"``B`` (unsigned bytes). :c:macro:`!PyBUF_FORMAT` cannot be used on its own." msgstr "" msgid "shape, strides, suboffsets" @@ -345,6 +347,11 @@ msgid "" "flags below it." msgstr "" +msgid "" +"These values are available when compiling for the :ref:`Stable ABI ` " +"since version 3.11." +msgstr "" + msgid "Request" msgstr "" @@ -379,7 +386,7 @@ msgid "contig" msgstr "" msgid "C" -msgstr "" +msgstr "C" msgid "F" msgstr "" @@ -414,7 +421,7 @@ msgid "U" msgstr "" msgid "0" -msgstr "" +msgstr "0" msgid "1 or 0" msgstr "" @@ -426,16 +433,17 @@ msgid "NumPy-style: shape and strides" msgstr "" msgid "" -"The logical structure of NumPy-style arrays is defined by :c:member:" -"`~Py_buffer.itemsize`, :c:member:`~Py_buffer.ndim`, :c:member:`~Py_buffer." -"shape` and :c:member:`~Py_buffer.strides`." +"The logical structure of NumPy-style arrays is defined " +"by :c:member:`~Py_buffer.itemsize`, :c:member:`~Py_buffer.ndim`, :c:member:`~Py_buffer.shape` " +"and :c:member:`~Py_buffer.strides`." msgstr "" msgid "" -"If ``ndim == 0``, the memory location pointed to by :c:member:`~Py_buffer." -"buf` is interpreted as a scalar of size :c:member:`~Py_buffer.itemsize`. In " -"that case, both :c:member:`~Py_buffer.shape` and :c:member:`~Py_buffer." -"strides` are ``NULL``." +"If ``ndim == 0``, the memory location pointed to " +"by :c:member:`~Py_buffer.buf` is interpreted as a scalar of " +"size :c:member:`~Py_buffer.itemsize`. In that case, " +"both :c:member:`~Py_buffer.shape` and :c:member:`~Py_buffer.strides` are " +"``NULL``." msgstr "" msgid "" @@ -529,8 +537,8 @@ msgstr "" msgid "" "Send a request to *exporter* to fill in *view* as specified by *flags*. If " -"the exporter cannot provide a buffer of the exact type, it MUST raise :exc:" -"`BufferError`, set ``view->obj`` to ``NULL`` and return ``-1``." +"the exporter cannot provide a buffer of the exact type, it MUST " +"raise :exc:`BufferError`, set ``view->obj`` to ``NULL`` and return ``-1``." msgstr "" msgid "" @@ -542,9 +550,9 @@ msgstr "" msgid "" "Successful calls to :c:func:`PyObject_GetBuffer` must be paired with calls " -"to :c:func:`PyBuffer_Release`, similar to :c:func:`malloc` and :c:func:" -"`free`. Thus, after the consumer is done with the buffer, :c:func:" -"`PyBuffer_Release` must be called exactly once." +"to :c:func:`PyBuffer_Release`, similar to :c:func:`malloc` " +"and :c:func:`free`. Thus, after the consumer is done with the " +"buffer, :c:func:`PyBuffer_Release` must be called exactly once." msgstr "" msgid "" @@ -555,13 +563,14 @@ msgid "" msgstr "" msgid "" -"It is an error to call this function on a buffer that was not obtained via :" -"c:func:`PyObject_GetBuffer`." +"It is an error to call this function on a buffer that was not obtained " +"via :c:func:`PyObject_GetBuffer`." msgstr "" msgid "" -"Return the implied :c:member:`~Py_buffer.itemsize` from :c:member:" -"`~Py_buffer.format`. On error, raise an exception and return -1." +"Return the implied :c:member:`~Py_buffer.itemsize` " +"from :c:member:`~Py_buffer.format`. On error, raise an exception and return " +"-1." msgstr "" msgid "" @@ -630,7 +639,7 @@ msgid "" msgstr "" msgid "buffer protocol" -msgstr "" +msgstr "ਬਫਰ ਪ੍ਰੋਟੋਕੋਲ" msgid "buffer interface" msgstr "" @@ -645,10 +654,10 @@ msgid "PyBufferProcs (C type)" msgstr "" msgid "contiguous" -msgstr "" +msgstr "ਲਗਾਤਾਰ" msgid "C-contiguous" -msgstr "" +msgstr "C-contiguous" msgid "Fortran contiguous" -msgstr "" +msgstr "Fortran contiguous" diff --git a/c-api/bytearray.po b/c-api/bytearray.po index 9ffa6e6..f5f52f0 100644 --- a/c-api/bytearray.po +++ b/c-api/bytearray.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,6 +29,13 @@ msgid "" "This subtype of :c:type:`PyObject` represents a Python bytearray object." msgstr "" +msgid "" +"The internal buffer of :c:type:`PyByteArrayObject` always includes an extra " +"trailing null byte for compatibility with null terminated C strings. This " +"extra byte is not counted in :c:func:`PyByteArray_Size` nor in the *len* " +"arguments of the functions below." +msgstr "" + msgid "" "This instance of :c:type:`PyTypeObject` represents the Python bytearray " "type; it is the same object as :class:`bytearray` in the Python layer." @@ -51,8 +58,8 @@ msgid "Direct API functions" msgstr "" msgid "" -"Return a new bytearray object from any object, *o*, that implements the :ref:" -"`buffer protocol `." +"Return a new bytearray object from any object, *o*, that implements " +"the :ref:`buffer protocol `." msgstr "" msgid "On failure, return ``NULL`` with an exception set." @@ -105,7 +112,7 @@ msgid "Similar to :c:func:`PyByteArray_Size`, but without error checking." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "bytearray" -msgstr "" +msgstr "bytearray" diff --git a/c-api/bytes.po b/c-api/bytes.po index 47d9ba3..fe9780b 100644 --- a/c-api/bytes.po +++ b/c-api/bytes.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,13 +23,20 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Bytes Objects" -msgstr "" +msgstr "Bytes Objects" msgid "" "These functions raise :exc:`TypeError` when expecting a bytes parameter and " "called with a non-bytes parameter." msgstr "" +msgid "" +"The internal buffer of :c:type:`PyBytesObject` always includes an extra " +"trailing null byte for compatibility with null terminated C strings. This " +"extra byte is not counted in :c:func:`PyBytes_Size` nor in the various " +"*length* and *size* arguments of the functions below." +msgstr "" + msgid "This subtype of :c:type:`PyObject` represents a Python bytes object." msgstr "" @@ -96,7 +103,7 @@ msgid "``%c``" msgstr "" msgid "int" -msgstr "" +msgstr "int" msgid "A single byte, represented as a C int." msgstr "" @@ -222,8 +229,8 @@ msgid "" "buffer is always null, regardless of whether there are any other null " "bytes. The data must not be modified in any way, unless the object was just " "created using ``PyBytes_FromStringAndSize(NULL, size)``. It must not be " -"deallocated. If *o* is not a bytes object at all, :c:func:" -"`PyBytes_AsString` returns ``NULL`` and raises :exc:`TypeError`." +"deallocated. If *o* is not a bytes object at " +"all, :c:func:`PyBytes_AsString` returns ``NULL`` and raises :exc:`TypeError`." msgstr "" msgid "Similar to :c:func:`PyBytes_AsString`, but without error checking." @@ -278,14 +285,14 @@ msgid "Similar to ``sep.join(iterable)`` in Python." msgstr "" msgid "" -"*sep* must be Python :class:`bytes` object. (Note that :c:func:" -"`PyUnicode_Join` accepts ``NULL`` separator and treats it as a space, " -"whereas :c:func:`PyBytes_Join` doesn't accept ``NULL`` separator.)" +"*sep* must be Python :class:`bytes` object. (Note " +"that :c:func:`PyUnicode_Join` accepts ``NULL`` separator and treats it as a " +"space, whereas :c:func:`PyBytes_Join` doesn't accept ``NULL`` separator.)" msgstr "" msgid "" -"*iterable* must be an iterable object yielding objects that implement the :" -"ref:`buffer protocol `." +"*iterable* must be an iterable object yielding objects that implement " +"the :ref:`buffer protocol `." msgstr "" msgid "" @@ -331,9 +338,9 @@ msgid "" msgstr "" msgid "" -"On success, this function returns a :term:`strong reference` to a :class:" -"`str` object containing the representation. On failure, this returns " -"``NULL`` with an exception set." +"On success, this function returns a :term:`strong reference` to " +"a :class:`str` object containing the representation. On failure, this " +"returns ``NULL`` with an exception set." msgstr "" msgid "" @@ -347,9 +354,9 @@ msgid "" msgstr "" msgid "" -"On success, this function returns a :term:`strong reference` to a Python :" -"class:`bytes` object containing the unescaped string. On failure, this " -"function returns ``NULL`` with an exception set." +"On success, this function returns a :term:`strong reference` to a " +"Python :class:`bytes` object containing the unescaped string. On failure, " +"this function returns ``NULL`` with an exception set." msgstr "" msgid "*unicode* and *recode_encoding* are now unused." @@ -359,16 +366,16 @@ msgid "PyBytesWriter" msgstr "" msgid "" -"The :c:type:`PyBytesWriter` API can be used to create a Python :class:" -"`bytes` object." +"The :c:type:`PyBytesWriter` API can be used to create a " +"Python :class:`bytes` object." msgstr "" msgid "A bytes writer instance." msgstr "" msgid "" -"The API is **not thread safe**: a writer should only be used by a single " -"thread at the same time." +"The API is **not thread safe**. To share a writer with multiple threads, a " +"critical section or a lock is needed." msgstr "" msgid "" @@ -384,8 +391,8 @@ msgstr "" msgid "" "If *size* is greater than zero, allocate *size* bytes, and set the writer " -"size to *size*. The caller is responsible to write *size* bytes using :c:" -"func:`PyBytesWriter_GetData`. This function does not overallocate." +"size to *size*. The caller is responsible to write *size* bytes " +"using :c:func:`PyBytesWriter_GetData`. This function does not overallocate." msgstr "" msgid "On error, set an exception and return ``NULL``." @@ -472,8 +479,8 @@ msgid "Get the writer size." msgstr "" msgid "" -"The function does not invalidate pointers returned by :c:func:" -"`PyBytesWriter_GetData`." +"The function does not invalidate pointers returned " +"by :c:func:`PyBytesWriter_GetData`." msgstr "" msgid "The function cannot fail." @@ -506,7 +513,7 @@ msgid "" "resizing multiple times." msgstr "" -msgid "*size* can be negative to shrink the writer." +msgid "*grow* can be negative to shrink the writer." msgstr "" msgid "" @@ -529,8 +536,132 @@ msgid "" "return (char*)PyBytesWriter_GetData(writer) + pos;" msgstr "" -msgid "object" +msgid "Example creating the string ``b'abc'``" msgstr "" -msgid "bytes" +msgid "" +"Example creating the bytes string ``b\"abc\"``, with a fixed size of 3 " +"bytes::" +msgstr "" + +msgid "" +"PyObject* create_abc(void)\n" +"{\n" +" PyBytesWriter *writer = PyBytesWriter_Create(3);\n" +" if (writer == NULL) {\n" +" return NULL;\n" +" }\n" +"\n" +" char *str = PyBytesWriter_GetData(writer);\n" +" memcpy(str, \"abc\", 3);\n" +" return PyBytesWriter_Finish(writer);\n" +"}" +msgstr "" + +msgid "Variant using a pointer to compute the final size::" +msgstr "" + +msgid "" +"PyObject* create_abc_ptr(void)\n" +"{\n" +" PyBytesWriter *writer = PyBytesWriter_Create(3);\n" +" if (writer == NULL) {\n" +" return NULL;\n" +" }\n" +"\n" +" char *str = PyBytesWriter_GetData(writer);\n" +" memcpy(str, \"abc\", 3);\n" +" str += 3;\n" +" return PyBytesWriter_FinishWithPointer(writer, str);\n" +"}" +msgstr "" + +msgid "Update ``PyBytes_FromStringAndSize()`` code" +msgstr "" + +msgid "" +"Example of code using the soft deprecated ``PyBytes_FromStringAndSize(NULL, " +"size)`` API::" +msgstr "" + +msgid "" +"int copy_bytes(char *dest, const char *src, Py_ssize_t num_bytes)\n" +"{\n" +" ...\n" +"}\n" +"\n" +"PyObject* create_string(const char *start, Py_ssize_t num_bytes)\n" +"{\n" +" PyObject *result = PyBytes_FromStringAndSize(NULL, num_bytes);\n" +" if (result == NULL) {\n" +" return NULL;\n" +" }\n" +" if (copy_bytes(PyBytes_AS_STRING(result), start, num_bytes) < 0) {\n" +" Py_CLEAR(result);\n" +" }\n" +" return result;\n" +"}" +msgstr "" + +msgid "It can now be updated to::" +msgstr "" + +msgid "" +"PyObject* create_string(const char *start, Py_ssize_t num_bytes)\n" +"{\n" +" PyBytesWriter *writer = PyBytesWriter_Create(num_bytes);\n" +" if (writer == NULL) {\n" +" return NULL;\n" +" }\n" +" if (copy_bytes(PyBytesWriter_GetData(writer), start, num_bytes) < 0) {\n" +" PyBytesWriter_Discard(writer);\n" +" return NULL;\n" +" }\n" +" return PyBytesWriter_Finish(writer);\n" +"}" +msgstr "" + +msgid "Update ``_PyBytes_Resize()`` code" +msgstr "" + +msgid "Example of code using the soft deprecated ``_PyBytes_Resize()`` API::" +msgstr "" + +msgid "" +"PyObject* create_string(Py_ssize_t size)\n" +"{\n" +" PyObject *bytes = PyBytes_FromStringAndSize(NULL, size);\n" +" if (bytes == NULL) {\n" +" return NULL;\n" +" }\n" +" char *str = PyBytes_AS_STRING(bytes);\n" +"\n" +" // ... write data into str ...\n" +"\n" +" if (_PyBytes_Resize(&bytes, (str - PyBytes_AS_STRING(bytes)))) {\n" +" return NULL;\n" +" }\n" +" return bytes;\n" +"}" msgstr "" + +msgid "" +"PyObject* create_string(Py_ssize_t size)\n" +"{\n" +" PyBytesWriter *writer = PyBytesWriter_Create(size);\n" +" if (writer == NULL) {\n" +" return NULL;\n" +" }\n" +" char *str = PyBytesWriter_GetData(writer);\n" +"\n" +" // ... write data into str ...\n" +"\n" +" return PyBytesWriter_FinishWithPointer(writer, str);\n" +"}" +msgstr "" + +msgid "object" +msgstr "ਆਬਜੈਕਟ" + +msgid "bytes" +msgstr "bytes" diff --git a/c-api/call.po b/c-api/call.po index f8089f3..7ceaeca 100644 --- a/c-api/call.po +++ b/c-api/call.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,8 +49,9 @@ msgid "" msgstr "" msgid "" -"This convention is not only used by *tp_call*: :c:member:`~PyTypeObject." -"tp_new` and :c:member:`~PyTypeObject.tp_init` also pass arguments this way." +"This convention is not only used by " +"*tp_call*: :c:member:`~PyTypeObject.tp_new` " +"and :c:member:`~PyTypeObject.tp_init` also pass arguments this way." msgstr "" msgid "" @@ -69,17 +70,18 @@ msgstr "" msgid "" "As rule of thumb, CPython will prefer the vectorcall for internal calls if " "the callable supports it. However, this is not a hard rule. Additionally, " -"some third-party extensions use *tp_call* directly (rather than using :c:" -"func:`PyObject_Call`). Therefore, a class supporting vectorcall must also " -"implement :c:member:`~PyTypeObject.tp_call`. Moreover, the callable must " -"behave the same regardless of which protocol is used. The recommended way to " -"achieve this is by setting :c:member:`~PyTypeObject.tp_call` to :c:func:" -"`PyVectorcall_Call`. This bears repeating:" +"some third-party extensions use *tp_call* directly (rather than " +"using :c:func:`PyObject_Call`). Therefore, a class supporting vectorcall " +"must also implement :c:member:`~PyTypeObject.tp_call`. Moreover, the " +"callable must behave the same regardless of which protocol is used. The " +"recommended way to achieve this is by " +"setting :c:member:`~PyTypeObject.tp_call` to :c:func:`PyVectorcall_Call`. " +"This bears repeating:" msgstr "" msgid "" -"A class supporting vectorcall **must** also implement :c:member:" -"`~PyTypeObject.tp_call` with the same semantics." +"A class supporting vectorcall **must** also " +"implement :c:member:`~PyTypeObject.tp_call` with the same semantics." msgstr "" msgid "" @@ -99,40 +101,33 @@ msgid "" msgstr "" msgid "" -"Classes can implement the vectorcall protocol by enabling the :c:macro:" -"`Py_TPFLAGS_HAVE_VECTORCALL` flag and setting :c:member:`~PyTypeObject." -"tp_vectorcall_offset` to the offset inside the object structure where a " -"*vectorcallfunc* appears. This is a pointer to a function with the following " -"signature:" +"Classes can implement the vectorcall protocol by enabling " +"the :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` flag and " +"setting :c:member:`~PyTypeObject.tp_vectorcall_offset` to the offset inside " +"the object structure where a *vectorcallfunc* appears. This is a pointer to " +"a function with the following signature:" msgstr "" msgid "*callable* is the object being called." msgstr "" msgid "" -"*args* is a C array consisting of the positional arguments followed by the" -msgstr "" - -msgid "" +"*args* is a C array consisting of the positional arguments followed by the " "values of the keyword arguments. This can be *NULL* if there are no " "arguments." msgstr "" -msgid "*nargsf* is the number of positional arguments plus possibly the" -msgstr "" - msgid "" -":c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` flag. To get the actual number of " -"positional arguments from *nargsf*, use :c:func:`PyVectorcall_NARGS`." -msgstr "" - -msgid "*kwnames* is a tuple containing the names of the keyword arguments;" +"*nargsf* is the number of positional arguments plus possibly " +"the :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` flag. To get the actual number " +"of positional arguments from *nargsf*, use :c:func:`PyVectorcall_NARGS`." msgstr "" msgid "" -"in other words, the keys of the kwargs dict. These names must be strings " -"(instances of ``str`` or a subclass) and they must be unique. If there are " -"no keyword arguments, then *kwnames* can instead be *NULL*." +"*kwnames* is a tuple containing the names of the keyword arguments; in other " +"words, the keys of the kwargs dict. These names must be strings (instances " +"of ``str`` or a subclass) and they must be unique. If there are no keyword " +"arguments, then *kwnames* can instead be *NULL*." msgstr "" msgid "" @@ -165,8 +160,8 @@ msgstr "" msgid "" "When using *tp_call*, callees do not need to worry about :ref:`recursion " -"`: CPython uses :c:func:`Py_EnterRecursiveCall` and :c:func:" -"`Py_LeaveRecursiveCall` for calls made using *tp_call*." +"`: CPython uses :c:func:`Py_EnterRecursiveCall` " +"and :c:func:`Py_LeaveRecursiveCall` for calls made using *tp_call*." msgstr "" msgid "" @@ -209,10 +204,10 @@ msgid "" msgstr "" msgid "" -"This is a specialized function, intended to be put in the :c:member:" -"`~PyTypeObject.tp_call` slot or be used in an implementation of ``tp_call``. " -"It does not check the :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` flag and it does " -"not fall back to ``tp_call``." +"This is a specialized function, intended to be put in " +"the :c:member:`~PyTypeObject.tp_call` slot or be used in an implementation " +"of ``tp_call``. It does not check the :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` " +"flag and it does not fall back to ``tp_call``." msgstr "" msgid "Object Calling API" @@ -234,7 +229,7 @@ msgid "Function" msgstr "" msgid "callable" -msgstr "" +msgstr "ਕਾਲਯੋਗ" msgid "args" msgstr "" @@ -249,7 +244,7 @@ msgid "``PyObject *``" msgstr "" msgid "tuple" -msgstr "" +msgstr "ਟਿਊਪਲ" msgid "dict/``NULL``" msgstr "" @@ -363,8 +358,8 @@ msgid "" msgstr "" msgid "" -"Note that if you only pass :c:expr:`PyObject *` args, :c:func:" -"`PyObject_CallFunctionObjArgs` is a faster alternative." +"Note that if you only pass :c:expr:`PyObject *` " +"args, :c:func:`PyObject_CallFunctionObjArgs` is a faster alternative." msgstr "" msgid "The type of *format* was changed from ``char *``." @@ -385,17 +380,17 @@ msgid "" msgstr "" msgid "" -"Note that if you only pass :c:expr:`PyObject *` args, :c:func:" -"`PyObject_CallMethodObjArgs` is a faster alternative." +"Note that if you only pass :c:expr:`PyObject *` " +"args, :c:func:`PyObject_CallMethodObjArgs` is a faster alternative." msgstr "" msgid "The types of *name* and *format* were changed from ``char *``." msgstr "" msgid "" -"Call a callable Python object *callable*, with a variable number of :c:expr:" -"`PyObject *` arguments. The arguments are provided as a variable number of " -"parameters followed by *NULL*." +"Call a callable Python object *callable*, with a variable number " +"of :c:expr:`PyObject *` arguments. The arguments are provided as a variable " +"number of parameters followed by *NULL*." msgstr "" msgid "" @@ -422,9 +417,9 @@ msgid "" msgstr "" msgid "" -"Call a callable Python object *callable*. The arguments are the same as for :" -"c:type:`vectorcallfunc`. If *callable* supports vectorcall_, this directly " -"calls the vectorcall function stored in *callable*." +"Call a callable Python object *callable*. The arguments are the same as " +"for :c:type:`vectorcallfunc`. If *callable* supports vectorcall_, this " +"directly calls the vectorcall function stored in *callable*." msgstr "" msgid "as ``_PyObject_Vectorcall``" @@ -453,10 +448,10 @@ msgid "" "method is given as a Python string *name*. The object whose method is called " "is *args[0]*, and the *args* array starting at *args[1]* represents the " "arguments of the call. There must be at least one positional argument. " -"*nargsf* is the number of positional arguments including *args[0]*, plus :c:" -"macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` if the value of ``args[0]`` may " -"temporarily be changed. Keyword arguments can be passed just like in :c:func:" -"`PyObject_Vectorcall`." +"*nargsf* is the number of positional arguments including *args[0]*, " +"plus :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` if the value of ``args[0]`` " +"may temporarily be changed. Keyword arguments can be passed just like " +"in :c:func:`PyObject_Vectorcall`." msgstr "" msgid "" diff --git a/c-api/capsule.po b/c-api/capsule.po index 0422bd9..3f7a0df 100644 --- a/c-api/capsule.po +++ b/c-api/capsule.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -103,8 +103,8 @@ msgstr "" msgid "" "It is legal for a capsule to have a ``NULL`` destructor. This makes a " -"``NULL`` return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or :" -"c:func:`PyErr_Occurred` to disambiguate." +"``NULL`` return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` " +"or :c:func:`PyErr_Occurred` to disambiguate." msgstr "" msgid "" @@ -114,8 +114,8 @@ msgstr "" msgid "" "It is legal for a capsule to have a ``NULL`` context. This makes a ``NULL`` " -"return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or :c:func:" -"`PyErr_Occurred` to disambiguate." +"return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` " +"or :c:func:`PyErr_Occurred` to disambiguate." msgstr "" msgid "" @@ -125,8 +125,8 @@ msgstr "" msgid "" "It is legal for a capsule to have a ``NULL`` name. This makes a ``NULL`` " -"return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or :c:func:" -"`PyErr_Occurred` to disambiguate." +"return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` " +"or :c:func:`PyErr_Occurred` to disambiguate." msgstr "" msgid "" @@ -197,7 +197,7 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "Capsule" msgstr "" diff --git a/c-api/cell.po b/c-api/cell.po index c5fcdea..7d80ed2 100644 --- a/c-api/cell.po +++ b/c-api/cell.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Cell Objects" -msgstr "" +msgstr "ਸੈੱਲ ਆਬਜੈਕਟ" msgid "" "\"Cell\" objects are used to implement variables referenced by multiple " @@ -35,46 +35,69 @@ msgid "" "support from the generated byte-code; these are not automatically de-" "referenced when accessed. Cell objects are not likely to be useful elsewhere." msgstr "" +"\"ਸੈੱਲ\" ਆਬਜੈਕਟ ਉਹਨਾਂ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ ਜਿਨ੍ਹਾਂ ਦਾ ਹਵਾਲਾ ਕਈ ਸਕੋਪਾਂ " +"ਦੁਆਰਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਹਰ ਅਜਿਹੇ ਵੇਰੀਏਬਲ ਲਈ, ਉਸ ਦਾ ਮੁੱਲ ਸੰਭਾਲਣ ਵਾਸਤੇ ਇੱਕ ਸੈੱਲ ਆਬਜੈਕਟ ਬਣਾਇਆ " +"ਜਾਂਦਾ ਹੈ। ਹਰ ਉਸ ਸਟੈਕ ਫ੍ਰੇਮ ਦੇ ਲੋਕਲ ਵੇਰੀਏਬਲ, ਜੋ ਉਸ ਮੁੱਲ ਦਾ ਹਵਾਲਾ ਦਿੰਦੇ ਹਨ, ਬਾਹਰੀ ਸਕੋਪਾਂ ਦੇ " +"ਉਹਨਾਂ ਸੈੱਲਾਂ ਦਾ ਹਵਾਲਾ ਰੱਖਦੇ ਹਨ ਜੋ ਉਸੇ ਵੇਰੀਏਬਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਜਦੋਂ ਮੁੱਲ ਤੱਕ ਪਹੁੰਚ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ, ਤਾਂ ਸੈੱਲ ਆਬਜੈਕਟ ਦੀ ਬਜਾਏ ਸੈੱਲ ਵਿੱਚ ਮੌਜੂਦ ਮੁੱਲ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਸੈੱਲ ਆਬਜੈਕਟ ਤੋਂ ਇਸ ਤਰ੍ਹਾਂ ਮੁੱਲ " +"ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਤਿਆਰ ਕੀਤੇ ਗਏ ਬਾਈਟ-ਕੋਡ ਦਾ ਸਮਰਥਨ ਲੋੜੀਂਦਾ ਹੁੰਦਾ ਹੈ; ਪਹੁੰਚ ਸਮੇਂ ਇਹ ਆਪਣੇ ਆਪ de-" +"reference ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ। ਸੈੱਲ ਆਬਜੈਕਟਾਂ ਦਾ ਹੋਰ ਥਾਵਾਂ 'ਤੇ ਲਾਭਦਾਇਕ ਹੋਣ ਦੀ ਸੰਭਾਵਨਾ ਘੱਟ ਹੈ।" msgid "The C structure used for cell objects." -msgstr "" +msgstr "ਸੈੱਲ ਆਬਜੈਕਟਾਂ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ C ਸੰਰਚਨਾ।" msgid "The type object corresponding to cell objects." -msgstr "" +msgstr "ਸੈੱਲ ਆਬਜੈਕਟਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਕਿਸਮ ਆਬਜੈਕਟ।" msgid "" "Return true if *ob* is a cell object; *ob* must not be ``NULL``. This " "function always succeeds." msgstr "" +"ਜੇ *ob* ਇੱਕ ਸੈੱਲ ਆਬਜੈਕਟ ਹੈ ਤਾਂ true ਵਾਪਸ ਕਰੋ; *ob* ``NULL`` ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ। ਇਹ ਫੰਕਸ਼ਨ " +"ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ ਹੈ।" msgid "" "Create and return a new cell object containing the value *ob*. The parameter " "may be ``NULL``." msgstr "" +"*ob* ਮੁੱਲ ਵਾਲਾ ਇੱਕ ਨਵਾਂ ਸੈੱਲ ਆਬਜੈਕਟ ਬਣਾਓ ਅਤੇ ਵਾਪਸ ਕਰੋ। ਇਹ ਪੈਰਾਮੀਟਰ ``NULL`` ਵੀ ਹੋ ਸਕਦਾ " +"ਹੈ।" msgid "" "Return the contents of the cell *cell*, which can be ``NULL``. If *cell* is " "not a cell object, returns ``NULL`` with an exception set." msgstr "" +"ਸੈੱਲ *cell* ਦੀ ਸਮੱਗਰੀ ਵਾਪਸ ਕਰੋ, ਜੋ ``NULL`` ਵੀ ਹੋ ਸਕਦੀ ਹੈ। ਜੇ *cell* ਸੈੱਲ ਆਬਜੈਕਟ ਨਹੀਂ ਹੈ, " +"ਤਾਂ ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰਕੇ ``NULL`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "Return the contents of the cell *cell*, but without checking that *cell* is " "non-``NULL`` and a cell object." msgstr "" +"ਸੈੱਲ *cell* ਦੀ ਸਮੱਗਰੀ ਵਾਪਸ ਕਰੋ, ਪਰ ਇਹ ਜਾਂਚ ਕੀਤੇ ਬਿਨਾਂ ਕਿ *cell* ਗੈਰ-``NULL`` ਹੈ ਅਤੇ ਇੱਕ " +"ਸੈੱਲ ਆਬਜੈਕਟ ਹੈ।" msgid "" "Set the contents of the cell object *cell* to *value*. This releases the " "reference to any current content of the cell. *value* may be ``NULL``. " "*cell* must be non-``NULL``." msgstr "" +"ਸੈੱਲ ਆਬਜੈਕਟ *cell* ਦੀ ਸਮੱਗਰੀ ਨੂੰ *value* 'ਤੇ ਸੈੱਟ ਕਰੋ। ਇਸ ਨਾਲ ਸੈੱਲ ਦੀ ਮੌਜੂਦਾ ਸਮੱਗਰੀ ਦੇ ਕਿਸੇ " +"ਵੀ ਹਵਾਲੇ ਨੂੰ ਮੁਕਤ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। *value* ``NULL`` ਵੀ ਹੋ ਸਕਦਾ ਹੈ। *cell* ਗੈਰ-" +"``NULL`` ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "" "On success, return ``0``. If *cell* is not a cell object, set an exception " "and return ``-1``." msgstr "" +"ਸਫਲ ਹੋਣ 'ਤੇ ``0`` ਵਾਪਸ ਕਰੋ। ਜੇ *cell* ਸੈੱਲ ਆਬਜੈਕਟ ਨਹੀਂ ਹੈ, ਤਾਂ ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰੋ ਅਤੇ " +"``-1`` ਵਾਪਸ ਕਰੋ।" msgid "" "Sets the value of the cell object *cell* to *value*. No reference counts " "are adjusted, and no checks are made for safety; *cell* must be non-``NULL`` " "and must be a cell object." msgstr "" +"ਸੈੱਲ ਆਬਜੈਕਟ *cell* ਦਾ ਮੁੱਲ *value* 'ਤੇ ਸੈੱਟ ਕਰਦਾ ਹੈ। ਹਵਾਲਾ ਗਿਣਤੀਆਂ ਵਿੱਚ ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ " +"ਕੀਤੀ ਜਾਂਦੀ ਅਤੇ ਸੁਰੱਖਿਆ ਲਈ ਕੋਈ ਜਾਂਚ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ; *cell* ਗੈਰ-``NULL`` ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ " +"ਅਤੇ ਇੱਕ ਸੈੱਲ ਆਬਜੈਕਟ ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ।" diff --git a/c-api/code.po b/c-api/code.po index f22f752..9dfe930 100644 --- a/c-api/code.po +++ b/c-api/code.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Code Objects" -msgstr "" +msgstr "Code Objects" msgid "" "Code objects are a low-level detail of the CPython implementation. Each one " @@ -37,8 +37,8 @@ msgid "" msgstr "" msgid "" -"This is an instance of :c:type:`PyTypeObject` representing the Python :ref:" -"`code object `." +"This is an instance of :c:type:`PyTypeObject` representing the " +"Python :ref:`code object `." msgstr "" msgid "" @@ -68,8 +68,9 @@ msgid "" msgstr "" msgid "" -"Since the definition of the bytecode changes often, calling :c:func:" -"`PyUnstable_Code_New` directly can bind you to a precise Python version." +"Since the definition of the bytecode changes often, " +"calling :c:func:`PyUnstable_Code_New` directly can bind you to a precise " +"Python version." msgstr "" msgid "" @@ -111,13 +112,14 @@ msgstr "" msgid "" "Return the line number of the instruction that occurs on or before " -"``byte_offset`` and ends after it. If you just need the line number of a " -"frame, use :c:func:`PyFrame_GetLineNumber` instead." +"``byte_offset`` and ends after it. This may be ``O(N)`` in the number of " +"instructions in the code object, so it is not performant for iterating over " +"all the line numbers in a code object." msgstr "" msgid "" -"For efficiently iterating over the line numbers in a code object, use :pep:" -"`the API described in PEP 626 <0626#out-of-process-debuggers-and-profilers>`." +"If you just need the line number of a frame, " +"use :c:func:`PyFrame_GetLineNumber` instead." msgstr "" msgid "" @@ -156,9 +158,9 @@ msgstr "" msgid "" "Equivalent to the Python code ``getattr(co, 'co_freevars')``. Returns a new " -"reference to a :c:type:`PyTupleObject` containing the names of the :term:" -"`free (closure) variables `. On error, ``NULL`` is " -"returned and an exception is raised." +"reference to a :c:type:`PyTupleObject` containing the names of " +"the :term:`free (closure) variables `. On error, ``NULL`` " +"is returned and an exception is raised." msgstr "" msgid "" @@ -169,10 +171,10 @@ msgid "" msgstr "" msgid "" -"Clear watcher identified by *watcher_id* previously returned from :c:func:" -"`PyCode_AddWatcher` for the current interpreter. Return ``0`` on success, or " -"``-1`` and set an exception on error (e.g. if the given *watcher_id* was " -"never registered.)" +"Clear watcher identified by *watcher_id* previously returned " +"from :c:func:`PyCode_AddWatcher` for the current interpreter. Return ``0`` " +"on success, or ``-1`` and set an exception on error (e.g. if the given " +"*watcher_id* was never registered.)" msgstr "" msgid "" @@ -180,6 +182,12 @@ msgid "" "``PY_CODE_EVENT_CREATE`` - ``PY_CODE_EVENT_DESTROY``" msgstr "" +msgid "" +"Apply the macro *V* to each suffix of :c:type:`PyCodeEvent` constants. " +"Currently expands to ``V(CREATE) V(DESTROY)``. The macro *V* must accept one " +"event name and supply any punctuation needed between expansions." +msgstr "" + msgid "Type of a code object watcher callback function." msgstr "" @@ -208,8 +216,8 @@ msgstr "" msgid "" "If the callback sets an exception, it must return ``-1``; this exception " -"will be printed as an unraisable exception using :c:func:" -"`PyErr_WriteUnraisable`. Otherwise it should return ``0``." +"will be printed as an unraisable exception " +"using :c:func:`PyErr_WriteUnraisable`. Otherwise it should return ``0``." msgstr "" msgid "" @@ -235,17 +243,17 @@ msgid "Code Object Flags" msgstr "" msgid "" -"Code objects contain a bit-field of flags, which can be retrieved as the :" -"attr:`~codeobject.co_flags` Python attribute (for example using :c:func:" -"`PyObject_GetAttrString`), and set using a *flags* argument to :c:func:" -"`PyUnstable_Code_New` and similar functions." +"Code objects contain a bit-field of flags, which can be retrieved as " +"the :attr:`~codeobject.co_flags` Python attribute (for example " +"using :c:func:`PyObject_GetAttrString`), and set using a *flags* argument " +"to :c:func:`PyUnstable_Code_New` and similar functions." msgstr "" msgid "" "Flags whose names start with ``CO_FUTURE_`` correspond to features normally " -"selectable by :ref:`future statements `. These flags can be used in :" -"c:member:`PyCompilerFlags.cf_flags`. Note that many ``CO_FUTURE_`` flags are " -"mandatory in current versions of Python, and setting them has no effect." +"selectable by :ref:`future statements `. These flags can be used " +"in :c:member:`PyCompilerFlags.cf_flags`. Note that many ``CO_FUTURE_`` flags " +"are mandatory in current versions of Python, and setting them has no effect." msgstr "" msgid "" @@ -254,10 +262,10 @@ msgid "" msgstr "" msgid "Flag" -msgstr "" +msgstr "Flag" msgid "Meaning" -msgstr "" +msgstr "ਅਰਥ" msgid ":py:data:`inspect.CO_OPTIMIZED`" msgstr "" @@ -332,15 +340,16 @@ msgid "Return a new opaque index value used to adding data to code objects." msgstr "" msgid "" -"You generally call this function once (per interpreter) and use the result " -"with ``PyCode_GetExtra`` and ``PyCode_SetExtra`` to manipulate data on " -"individual code objects." +"You generally call this function once (per interpreter). Use the result " +"with :c:func:`PyUnstable_Code_GetExtra` " +"and :c:func:`PyUnstable_Code_SetExtra` to manipulate data on individual code " +"objects." msgstr "" msgid "" "If *free* is not ``NULL``: when a code object is deallocated, *free* will be " -"called on non-``NULL`` data stored under the new index. Use :c:func:" -"`Py_DecRef` when storing :c:type:`PyObject`." +"called on non-``NULL`` data stored under the new index. " +"Use :c:func:`Py_DecRef` when storing :c:type:`PyObject`." msgstr "" msgid "as ``_PyEval_RequestCodeExtraIndex``" @@ -383,13 +392,13 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "code" -msgstr "" +msgstr "ਕੋਡ" msgid "code object" -msgstr "" +msgstr "ਕੋਡ ਆਬਜੈਕਟ" msgid "PyCode_New (C function)" msgstr "" diff --git a/c-api/codec.po b/c-api/codec.po index 5edd060..6553840 100644 --- a/c-api/codec.po +++ b/c-api/codec.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,8 +47,8 @@ msgstr "" msgid "" "*object* is passed through the encoder function found for the given " "*encoding* using the error handling method defined by *errors*. *errors* " -"may be ``NULL`` to use the default method defined for the codec. Raises a :" -"exc:`LookupError` if no encoder can be found." +"may be ``NULL`` to use the default method defined for the codec. Raises " +"a :exc:`LookupError` if no encoder can be found." msgstr "" msgid "Generic codec based decoding API." @@ -57,8 +57,8 @@ msgstr "" msgid "" "*object* is passed through the decoder function found for the given " "*encoding* using the error handling method defined by *errors*. *errors* " -"may be ``NULL`` to use the default method defined for the codec. Raises a :" -"exc:`LookupError` if no decoder can be found." +"may be ``NULL`` to use the default method defined for the codec. Raises " +"a :exc:`LookupError` if no decoder can be found." msgstr "" msgid "Codec lookup API" @@ -67,8 +67,8 @@ msgstr "" msgid "" "In the following functions, the *encoding* string is looked up converted to " "all lower-case characters, which makes encodings looked up through this " -"mechanism effectively case-insensitive. If no codec is found, a :exc:" -"`KeyError` is set and ``NULL`` returned." +"mechanism effectively case-insensitive. If no codec is found, " +"a :exc:`LookupError` is set and ``NULL`` returned." msgstr "" msgid "Get an encoder function for the given *encoding*." @@ -106,9 +106,9 @@ msgid "" msgstr "" msgid "" -"The callback gets a single argument, an instance of :exc:" -"`UnicodeEncodeError`, :exc:`UnicodeDecodeError` or :exc:" -"`UnicodeTranslateError` that holds information about the problematic " +"The callback gets a single argument, an instance " +"of :exc:`UnicodeEncodeError`, :exc:`UnicodeDecodeError` " +"or :exc:`UnicodeTranslateError` that holds information about the problematic " "sequence of characters or bytes and their offset in the original string " "(see :ref:`unicodeexceptions` for functions to extract this information). " "The callback must either raise the given exception, or return a two-item " diff --git a/c-api/complex.po b/c-api/complex.po index 82c8f5f..3213835 100644 --- a/c-api/complex.po +++ b/c-api/complex.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,8 +45,8 @@ msgid "" msgstr "" msgid "" -"Return true if its argument is a :c:type:`PyComplexObject` or a subtype of :" -"c:type:`PyComplexObject`. This function always succeeds." +"Return true if its argument is a :c:type:`PyComplexObject` or a subtype " +"of :c:type:`PyComplexObject`. This function always succeeds." msgstr "" msgid "" @@ -63,10 +63,11 @@ msgid "Return the real part of *op* as a C :c:expr:`double`." msgstr "" msgid "" -"If *op* is not a Python complex number object but has a :meth:`~object." -"__complex__` method, this method will first be called to convert *op* to a " -"Python complex number object. If :meth:`!__complex__` is not defined then " -"it falls back to call :c:func:`PyFloat_AsDouble` and returns its result." +"If *op* is not a Python complex number object but has " +"a :meth:`~object.__complex__` method, this method will first be called to " +"convert *op* to a Python complex number object. If :meth:`!__complex__` is " +"not defined then it falls back to call :c:func:`PyFloat_AsDouble` and " +"returns its result." msgstr "" msgid "" @@ -81,11 +82,11 @@ msgid "Return the imaginary part of *op* as a C :c:expr:`double`." msgstr "" msgid "" -"If *op* is not a Python complex number object but has a :meth:`~object." -"__complex__` method, this method will first be called to convert *op* to a " -"Python complex number object. If :meth:`!__complex__` is not defined then " -"it falls back to call :c:func:`PyFloat_AsDouble` and returns ``0.0`` on " -"success." +"If *op* is not a Python complex number object but has " +"a :meth:`~object.__complex__` method, this method will first be called to " +"convert *op* to a Python complex number object. If :meth:`!__complex__` is " +"not defined then it falls back to call :c:func:`PyFloat_AsDouble` and " +"returns ``0.0`` on success." msgstr "" msgid "" @@ -111,17 +112,17 @@ msgid "Return the :c:type:`Py_complex` value of the complex number *op*." msgstr "" msgid "" -"If *op* is not a Python complex number object but has a :meth:`~object." -"__complex__` method, this method will first be called to convert *op* to a " -"Python complex number object. If :meth:`!__complex__` is not defined then " -"it falls back to :meth:`~object.__float__`. If :meth:`!__float__` is not " -"defined then it falls back to :meth:`~object.__index__`." +"If *op* is not a Python complex number object but has " +"a :meth:`~object.__complex__` method, this method will first be called to " +"convert *op* to a Python complex number object. If :meth:`!__complex__` is " +"not defined then it falls back to :meth:`~object.__float__`. If :meth:`!" +"__float__` is not defined then it falls back to :meth:`~object.__index__`." msgstr "" msgid "" -"Upon failure, this method returns :c:type:`Py_complex` with :c:member:" -"`~Py_complex.real` set to ``-1.0`` and with an exception set, so one should " -"call :c:func:`PyErr_Occurred` to check for errors." +"Upon failure, this method returns :c:type:`Py_complex` " +"with :c:member:`~Py_complex.real` set to ``-1.0`` and with an exception set, " +"so one should call :c:func:`PyErr_Occurred` to check for errors." msgstr "" msgid "Use :meth:`~object.__index__` if available." @@ -131,10 +132,10 @@ msgid "Complex Numbers as C Structures" msgstr "" msgid "" -"The API also provides functions for working with complex numbers, using the :" -"c:type:`Py_complex` representation. Note that the functions which accept " -"these structures as parameters and return them as results do so *by value* " -"rather than dereferencing them through pointers." +"The API also provides functions for working with complex numbers, using " +"the :c:type:`Py_complex` representation. Note that the functions which " +"accept these structures as parameters and return them as results do so *by " +"value* rather than dereferencing them through pointers." msgstr "" msgid "" @@ -150,13 +151,13 @@ msgid "" msgstr "" msgid "" -"Return the difference between two complex numbers, using the C :c:type:" -"`Py_complex` representation." +"Return the difference between two complex numbers, using the " +"C :c:type:`Py_complex` representation." msgstr "" msgid "" -"Return the negation of the complex number *num*, using the C :c:type:" -"`Py_complex` representation." +"Return the negation of the complex number *num*, using the " +"C :c:type:`Py_complex` representation." msgstr "" msgid "" @@ -170,13 +171,13 @@ msgid "" msgstr "" msgid "" -"If *divisor* is null, this method returns zero and sets :c:data:`errno` to :" -"c:macro:`!EDOM`." +"If *divisor* is null, this method returns zero and sets :c:data:`errno` " +"to :c:macro:`!EDOM`." msgstr "" msgid "" -"Return the exponentiation of *num* by *exp*, using the C :c:type:" -"`Py_complex` representation." +"Return the exponentiation of *num* by *exp*, using the " +"C :c:type:`Py_complex` representation." msgstr "" msgid "" @@ -191,7 +192,7 @@ msgid "Return the absolute value of the complex number *num*." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "complex number" -msgstr "" +msgstr "ਕੰਪਲੈਕਸ ਸੰਖਿਆ" diff --git a/c-api/concrete.po b/c-api/concrete.po index 0ba856e..c4342fd 100644 --- a/c-api/concrete.po +++ b/c-api/concrete.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Concrete Objects Layer" -msgstr "" +msgstr "ਠੋਸ ਆਬਜੈਕਟ ਲੇਅਰ" msgid "" "The functions in this chapter are specific to certain Python object types. " @@ -33,6 +33,12 @@ msgid "" "object is a dictionary, use :c:func:`PyDict_Check`. The chapter is " "structured like the \"family tree\" of Python object types." msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਦਿੱਤੇ ਫੰਕਸ਼ਨ ਖ਼ਾਸ Python ਆਬਜੈਕਟ ਕਿਸਮਾਂ ਲਈ ਹਨ। ਇਨ੍ਹਾਂ ਨੂੰ ਗਲਤ ਕਿਸਮ ਦੇ ਆਬਜੈਕਟ " +"ਨਾਲ ਵਰਤਣਾ ਠੀਕ ਨਹੀਂ ਹੈ। ਜੇ ਤੁਹਾਨੂੰ ਕਿਸੇ Python ਪ੍ਰੋਗਰਾਮ ਤੋਂ ਕੋਈ ਆਬਜੈਕਟ ਮਿਲਦਾ ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ ਇਹ " +"ਯਕੀਨ ਨਹੀਂ ਕਿ ਉਸ ਦੀ ਕਿਸਮ ਸਹੀ ਹੈ, ਤਾਂ ਪਹਿਲਾਂ ਉਸ ਦੀ ਕਿਸਮ ਦੀ ਜਾਂਚ ਕਰਨੀ ਲਾਜ਼ਮੀ ਹੈ। " +"ਉਦਾਹਰਨ ਲਈ, ਇਹ ਜਾਂਚਣ ਲਈ ਕਿ ਕੋਈ ਆਬਜੈਕਟ ਡਿਕਸ਼ਨਰੀ ਹੈ ਜਾਂ ਨਹੀਂ, :c:func:`PyDict_Check` " +"ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇਹ ਅਧਿਆਇ Python ਆਬਜੈਕਟ ਕਿਸਮਾਂ ਦੇ \"ਪਰਿਵਾਰਕ ਰੁੱਖ\" ਅਨੁਸਾਰ ਵਿਵਸਥਿਤ ਕੀਤਾ " +"ਗਿਆ ਹੈ।" msgid "" "While the functions described in this chapter carefully check the type of " @@ -41,46 +47,52 @@ msgid "" "can cause memory access violations and immediate termination of the " "interpreter." msgstr "" +"ਹਾਲਾਂਕਿ ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਵਰਣਨ ਕੀਤੇ ਫੰਕਸ਼ਨ ਉਨ੍ਹਾਂ ਨੂੰ ਦਿੱਤੇ ਗਏ ਆਬਜੈਕਟਾਂ ਦੀ ਕਿਸਮ ਦੀ ਧਿਆਨ ਨਾਲ " +"ਜਾਂਚ ਕਰਦੇ ਹਨ, ਪਰ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਬਹੁਤ ਸਾਰੇ ਇਹ ਜਾਂਚ ਨਹੀਂ ਕਰਦੇ ਕਿ ਇੱਕ ਵੈਧ ਆਬਜੈਕਟ ਦੀ ਥਾਂ ``NULL`` " +"ਤਾਂ ਨਹੀਂ ਦਿੱਤਾ ਗਿਆ। ``NULL`` ਨੂੰ ਪਾਸ ਕਰਨ ਨਾਲ ਮੈਮੋਰੀ ਪਹੁੰਚ ਉਲੰਘਣਾਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ ਅਤੇ " +"ਇੰਟਰਪ੍ਰੀਟਰ ਤੁਰੰਤ ਬੰਦ ਹੋ ਸਕਦਾ ਹੈ।" msgid "Fundamental Objects" -msgstr "" +msgstr "ਮੂਲਭੂਤ ਆਬਜੈਕਟ" msgid "" "This section describes Python type objects and the singleton object ``None``." -msgstr "" +msgstr "ਇਹ ਭਾਗ Python ਕਿਸਮ ਆਬਜੈਕਟਾਂ ਅਤੇ ਸਿੰਗਲਟਨ ਆਬਜੈਕਟ ``None`` ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ।" msgid "Numeric Objects" -msgstr "" +msgstr "ਸੰਖਿਆਤਮਕ ਆਬਜੈਕਟ" msgid "Sequence Objects" -msgstr "" +msgstr "ਕ੍ਰਮ ਆਬਜੈਕਟ" msgid "" "Generic operations on sequence objects were discussed in the previous " "chapter; this section deals with the specific kinds of sequence objects that " "are intrinsic to the Python language." msgstr "" +"ਕ੍ਰਮ ਆਬਜੈਕਟਾਂ ਉੱਤੇ ਆਮ ਕਾਰਵਾਈਆਂ ਦੀ ਚਰਚਾ ਪਿਛਲੇ ਅਧਿਆਇ ਵਿੱਚ ਕੀਤੀ ਗਈ ਸੀ; ਇਹ ਭਾਗ ਉਹਨਾਂ ਖ਼ਾਸ " +"ਕਿਸਮਾਂ ਦੇ ਕ੍ਰਮ ਆਬਜੈਕਟਾਂ ਬਾਰੇ ਹੈ ਜੋ Python ਭਾਸ਼ਾ ਦਾ ਅੰਦਰੂਨੀ ਹਿੱਸਾ ਹਨ।" msgid "Container Objects" -msgstr "" +msgstr "ਕੰਟੇਨਰ ਆਬਜੈਕਟ" msgid "Function Objects" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ" msgid "Other Objects" -msgstr "" +msgstr "ਹੋਰ ਆਬਜੈਕਟ" msgid "C API for extension modules" -msgstr "" +msgstr "ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲਾਂ ਲਈ C API" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "numeric" -msgstr "" +msgstr "ਸੰਖਿਆਤਮਕ" msgid "sequence" -msgstr "" +msgstr "ਕ੍ਰਮ" msgid "mapping" -msgstr "" +msgstr "ਮੈਪਿੰਗ" diff --git a/c-api/contextvars.po b/c-api/contextvars.po index 32dd59f..ea5f4c5 100644 --- a/c-api/contextvars.po +++ b/c-api/contextvars.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,8 +23,9 @@ msgstr "" msgid "" "In Python 3.7.1 the signatures of all context variables C APIs were " -"**changed** to use :c:type:`PyObject` pointers instead of :c:type:" -"`PyContext`, :c:type:`PyContextVar`, and :c:type:`PyContextToken`, e.g.::" +"**changed** to use :c:type:`PyObject` pointers instead " +"of :c:type:`PyContext`, :c:type:`PyContextVar`, " +"and :c:type:`PyContextToken`, e.g.::" msgstr "" msgid "" @@ -117,10 +118,10 @@ msgid "" msgstr "" msgid "" -"Clear watcher identified by *watcher_id* previously returned from :c:func:" -"`PyContext_AddWatcher` for the current interpreter. Return ``0`` on success, " -"or ``-1`` and set an exception on error (e.g. if the given *watcher_id* was " -"never registered.)" +"Clear watcher identified by *watcher_id* previously returned " +"from :c:func:`PyContext_AddWatcher` for the current interpreter. Return " +"``0`` on success, or ``-1`` and set an exception on error (e.g. if the given " +"*watcher_id* was never registered.)" msgstr "" msgid "Enumeration of possible context object watcher events:" @@ -140,8 +141,8 @@ msgstr "" msgid "" "If the callback returns with an exception set, it must return ``-1``; this " -"exception will be printed as an unraisable exception using :c:func:" -"`PyErr_FormatUnraisable`. Otherwise it should return ``0``." +"exception will be printed as an unraisable exception " +"using :c:func:`PyErr_FormatUnraisable`. Otherwise it should return ``0``." msgstr "" msgid "" @@ -191,7 +192,7 @@ msgid "" msgstr "" msgid "" -"Reset the state of the *var* context variable to that it was in before :c:" -"func:`PyContextVar_Set` that returned the *token* was called. This function " -"returns ``0`` on success and ``-1`` on error." +"Reset the state of the *var* context variable to that it was in " +"before :c:func:`PyContextVar_Set` that returned the *token* was called. This " +"function returns ``0`` on success and ``-1`` on error." msgstr "" diff --git a/c-api/conversion.po b/c-api/conversion.po index 8c7ff00..23f66d4 100644 --- a/c-api/conversion.po +++ b/c-api/conversion.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,14 +26,14 @@ msgstr "" msgid "" "Output not more than *size* bytes to *str* according to the format string " -"*format* and the extra arguments. See the Unix man page :manpage:" -"`snprintf(3)`." +"*format* and the extra arguments. See the Unix man " +"page :manpage:`snprintf(3)`." msgstr "" msgid "" "Output not more than *size* bytes to *str* according to the format string " -"*format* and the variable argument list *va*. Unix man page :manpage:" -"`vsnprintf(3)`." +"*format* and the variable argument list *va*. Unix man " +"page :manpage:`vsnprintf(3)`." msgstr "" msgid "" @@ -95,9 +95,9 @@ msgstr "" msgid "" "If the converted value falls out of range of corresponding return type, " -"range error occurs (:c:data:`errno` is set to :c:macro:`!ERANGE`) and :c:" -"macro:`!ULONG_MAX` is returned. If no conversion can be performed, ``0`` is " -"returned." +"range error occurs (:c:data:`errno` is set to :c:macro:`!ERANGE`) " +"and :c:macro:`!ULONG_MAX` is returned. If no conversion can be performed, " +"``0`` is returned." msgstr "" msgid "See also the Unix man page :manpage:`strtoul(3)`." @@ -126,9 +126,9 @@ msgid "" msgstr "" msgid "" -"If ``endptr`` is ``NULL``, convert the whole string. Raise :exc:" -"`ValueError` and return ``-1.0`` if the string is not a valid representation " -"of a floating-point number." +"If ``endptr`` is ``NULL``, convert the whole string. " +"Raise :exc:`ValueError` and return ``-1.0`` if the string is not a valid " +"representation of a floating-point number." msgstr "" msgid "" @@ -177,8 +177,8 @@ msgid "Ensure that the returned string will not look like an integer." msgstr "" msgid "" -"Apply \"alternate\" formatting rules. See the documentation for the :c:func:" -"`PyOS_snprintf` ``'#'`` specifier for details." +"Apply \"alternate\" formatting rules. See the documentation for " +"the :c:func:`PyOS_snprintf` ``'#'`` specifier for details." msgstr "" msgid "Negative zero is converted to positive zero." @@ -239,8 +239,8 @@ msgid "" msgstr "" msgid "" -"On other platforms, they are aliases of :c:func:`PyOS_mystricmp` and :c:func:" -"`PyOS_mystrnicmp`, respectively." +"On other platforms, they are aliases of :c:func:`PyOS_mystricmp` " +"and :c:func:`PyOS_mystrnicmp`, respectively." msgstr "" msgid "Character classification and conversion" @@ -285,3 +285,16 @@ msgstr "" msgid "Return the uppercase equivalent of the character *c*." msgstr "" + +msgid "Bit masks" +msgstr "" + +msgid "" +"The following constants are bit masks used by the character classification " +"macros above:" +msgstr "" + +msgid "" +"Values used internally by the ``Py_IS*`` classification macros above. " +"Exposed for backwards compatibility only." +msgstr "" diff --git a/c-api/coro.po b/c-api/coro.po index f1db720..b753e8f 100644 --- a/c-api/coro.po +++ b/c-api/coro.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,23 +23,26 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Coroutine Objects" -msgstr "" +msgstr "ਕੋਰੂਟੀਨ ਆਬਜੈਕਟ" msgid "" "Coroutine objects are what functions declared with an ``async`` keyword " "return." msgstr "" +"ਕੋਰੂਟੀਨ ਆਬਜੈਕਟ ਉਹ ਹੁੰਦੇ ਹਨ ਜੋ ``async`` ਕੀਵਰਡ ਨਾਲ ਘੋਸ਼ਿਤ ਕੀਤੇ ਗਏ ਫੰਕਸ਼ਨ ਵਾਪਸ ਕਰਦੇ ਹਨ।" msgid "The C structure used for coroutine objects." -msgstr "" +msgstr "ਕੋਰੂਟੀਨ ਆਬਜੈਕਟਾਂ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ C ਸੰਰਚਨਾ।" msgid "The type object corresponding to coroutine objects." -msgstr "" +msgstr "ਕੋਰੂਟੀਨ ਆਬਜੈਕਟਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਕਿਸਮ ਆਬਜੈਕਟ।" msgid "" "Return true if *ob*'s type is :c:type:`PyCoro_Type`; *ob* must not be " "``NULL``. This function always succeeds." msgstr "" +"ਜੇ *ob* ਦੀ ਕਿਸਮ :c:type:`PyCoro_Type` ਹੈ ਤਾਂ true ਵਾਪਸ ਕਰੋ; *ob* ``NULL`` ਨਹੀਂ " +"ਹੋਣਾ ਚਾਹੀਦਾ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ ਹੈ।" msgid "" "Create and return a new coroutine object based on the *frame* object, with " @@ -47,3 +50,7 @@ msgid "" "to *frame* is stolen by this function. The *frame* argument must not be " "``NULL``." msgstr "" +"*frame* ਆਬਜੈਕਟ ਦੇ ਆਧਾਰ 'ਤੇ ਇੱਕ ਨਵਾਂ ਕੋਰੂਟੀਨ ਆਬਜੈਕਟ ਬਣਾਓ ਅਤੇ ਵਾਪਸ ਕਰੋ, ਜਿਸ ਵਿੱਚ " +"``__name__`` ਅਤੇ ``__qualname__`` ਨੂੰ ਕ੍ਰਮਵਾਰ *name* ਅਤੇ *qualname* 'ਤੇ ਸੈੱਟ ਕੀਤਾ " +"ਗਿਆ ਹੋਵੇ। ਇਹ ਫੰਕਸ਼ਨ *frame* ਦੇ ਹਵਾਲੇ ਦਾ ਮਾਲਕਾਨਾ ਆਪਣੇ ਕੋਲ ਲੈ ਲੈਂਦਾ ਹੈ। *frame* ਆਰਗੂਮੈਂਟ " +"``NULL`` ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ।" diff --git a/c-api/curses.po b/c-api/curses.po index b454daa..6bced06 100644 --- a/c-api/curses.po +++ b/c-api/curses.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-11-11 14:16+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,8 +25,8 @@ msgid "" ":mod:`curses` exposes a small C interface for extension modules. Consumers " "must include the header file :file:`py_curses.h` (which is not included by " "default by :file:`Python.h`) and :c:func:`import_curses` must be invoked, " -"usually as part of the module initialisation function, to populate :c:var:" -"`PyCurses_API`." +"usually as part of the module initialisation function, to " +"populate :c:var:`PyCurses_API`." msgstr "" msgid "" @@ -65,14 +65,15 @@ msgid "" msgstr "" msgid "" -"When called, these predicates return whether :func:`curses.setupterm`, :func:" -"`curses.initscr`, and :func:`curses.start_color` have been called " -"respectively." +"When called, these predicates return " +"whether :func:`curses.setupterm`, :func:`curses.initscr`, " +"and :func:`curses.start_color` have been called respectively." msgstr "" msgid "" -"See also the convenience macros :c:macro:`PyCursesSetupTermCalled`, :c:macro:" -"`PyCursesInitialised`, and :c:macro:`PyCursesInitialisedColor`." +"See also the convenience " +"macros :c:macro:`PyCursesSetupTermCalled`, :c:macro:`PyCursesInitialised`, " +"and :c:macro:`PyCursesInitialisedColor`." msgstr "" msgid "" diff --git a/c-api/datetime.po b/c-api/datetime.po index bf7b055..bbc5ea2 100644 --- a/c-api/datetime.po +++ b/c-api/datetime.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,20 +24,20 @@ msgstr "" msgid "" "Various date and time objects are supplied by the :mod:`datetime` module. " "Before using any of these functions, the header file :file:`datetime.h` must " -"be included in your source (note that this is not included by :file:`Python." -"h`), and the macro :c:macro:`PyDateTime_IMPORT` must be invoked, usually as " -"part of the module initialisation function. The macro puts a pointer to a C " -"structure into a static variable, :c:data:`PyDateTimeAPI`, that is used by " -"the following macros." +"be included in your source (note that this is not included " +"by :file:`Python.h`), and the macro :c:macro:`PyDateTime_IMPORT` must be " +"invoked, usually as part of the module initialisation function. The macro " +"puts a pointer to a C structure into a static " +"variable, :c:data:`PyDateTimeAPI`, that is used by the following macros." msgstr "" msgid "Import the datetime C API." msgstr "" msgid "" -"On success, populate the :c:var:`PyDateTimeAPI` pointer. On failure, set :c:" -"var:`PyDateTimeAPI` to ``NULL`` and set an exception. The caller must check " -"if an error occurred via :c:func:`PyErr_Occurred`:" +"On success, populate the :c:var:`PyDateTimeAPI` pointer. On failure, " +"set :c:var:`PyDateTimeAPI` to ``NULL`` and set an exception. The caller must " +"check if an error occurred via :c:func:`PyErr_Occurred`:" msgstr "" msgid "" @@ -69,7 +69,7 @@ msgstr "" msgid "" "This variable should not be accessed directly as direct access is not thread-" -"safe. Use :c:func:`PyDateTime_IMPORT` instead." +"safe. Use :c:macro:`PyDateTime_IMPORT` instead." msgstr "" msgid "This subtype of :c:type:`PyObject` represents a Python date object." @@ -103,8 +103,8 @@ msgstr "" msgid "" "This instance of :c:type:`PyTypeObject` represents the Python type for the " -"difference between two datetime values; it is the same object as :class:" -"`datetime.timedelta` in the Python layer." +"difference between two datetime values; it is the same object " +"as :class:`datetime.timedelta` in the Python layer." msgstr "" msgid "" @@ -116,8 +116,8 @@ msgid "Macro for access to the UTC singleton:" msgstr "" msgid "" -"Returns the time zone singleton representing UTC, the same object as :attr:" -"`datetime.timezone.utc`." +"Returns the time zone singleton representing UTC, the same object " +"as :attr:`datetime.timezone.utc`." msgstr "" msgid "Type-check macros:" @@ -225,9 +225,9 @@ msgstr "" msgid "" "Macros to extract fields from date objects. The argument must be an " -"instance of :c:type:`PyDateTime_Date`, including subclasses (such as :c:type:" -"`PyDateTime_DateTime`). The argument must not be ``NULL``, and the type is " -"not checked:" +"instance of :c:type:`PyDateTime_Date`, including subclasses (such " +"as :c:type:`PyDateTime_DateTime`). The argument must not be ``NULL``, and " +"the type is not checked:" msgstr "" msgid "Return the year, as a positive int." diff --git a/c-api/descriptor.po b/c-api/descriptor.po index 93626f5..dcd2e01 100644 --- a/c-api/descriptor.po +++ b/c-api/descriptor.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,8 +27,8 @@ msgid "" msgstr "" msgid "" -"Create a new get-set descriptor for extension type *type* from the :c:type:" -"`PyGetSetDef` structure *getset*." +"Create a new get-set descriptor for extension type *type* from " +"the :c:type:`PyGetSetDef` structure *getset*." msgstr "" msgid "" @@ -44,84 +44,77 @@ msgid "" msgstr "" msgid "" -"Create a new member descriptor for extension type *type* from the :c:type:" -"`PyMemberDef` structure *member*." +"Create a new member descriptor for extension type *type* from " +"the :c:type:`PyMemberDef` structure *member*." msgstr "" msgid "" "Member descriptors expose fields in the type's C struct as Python " -"attributes. This is the same kind of descriptor created for entries in :c:" -"member:`~PyTypeObject.tp_members`, and it appears in Python as a :class:" -"`types.MemberDescriptorType` object." +"attributes. This is the same kind of descriptor created for entries " +"in :c:member:`~PyTypeObject.tp_members`, and it appears in Python as " +"a :class:`types.MemberDescriptorType` object." msgstr "" msgid "" -"The type object for member descriptor objects created from :c:type:" -"`PyMemberDef` structures. These descriptors expose fields of a C struct as " -"attributes on a type, and correspond to :class:`types.MemberDescriptorType` " -"objects in Python." +"The type object for member descriptor objects created " +"from :c:type:`PyMemberDef` structures. These descriptors expose fields of a " +"C struct as attributes on a type, and correspond " +"to :class:`types.MemberDescriptorType` objects in Python." msgstr "" msgid "" -"The type object for get/set descriptor objects created from :c:type:" -"`PyGetSetDef` structures. These descriptors implement attributes whose value " -"is computed by C getter and setter functions, and are used for many built-in " -"type attributes. They correspond to :class:`types.GetSetDescriptorType` " -"objects in Python." +"The type object for get/set descriptor objects created " +"from :c:type:`PyGetSetDef` structures. These descriptors implement " +"attributes whose value is computed by C getter and setter functions, and are " +"used for many built-in type attributes. They correspond " +"to :class:`types.GetSetDescriptorType` objects in Python." msgstr "" msgid "" -"Create a new method descriptor for extension type *type* from the :c:type:" -"`PyMethodDef` structure *meth*." +"Create a new method descriptor for extension type *type* from " +"the :c:type:`PyMethodDef` structure *meth*." msgstr "" msgid "" "Method descriptors expose C functions as methods on a type. This is the same " -"kind of descriptor created for entries in :c:member:`~PyTypeObject." -"tp_methods`, and it appears in Python as a :class:`types." -"MethodDescriptorType` object." +"kind of descriptor created for entries " +"in :c:member:`~PyTypeObject.tp_methods`, and it appears in Python as " +"a :class:`types.MethodDescriptorType` object." msgstr "" msgid "" -"The type object for method descriptor objects created from :c:type:" -"`PyMethodDef` structures. These descriptors expose C functions as methods on " -"a type, and correspond to :class:`types.MethodDescriptorType` objects in " -"Python." +"The type object for method descriptor objects created " +"from :c:type:`PyMethodDef` structures. These descriptors expose C functions " +"as methods on a type, and correspond to :class:`types.MethodDescriptorType` " +"objects in Python." msgstr "" -msgid "Describes a slot wrapper used by :c:func:`PyDescr_NewWrapper`." +msgid "" +"The type object for wrapper descriptor objects created " +"by :c:func:`PyDescr_NewWrapper` and :c:func:`PyWrapper_New`." msgstr "" msgid "" -"Each ``wrapperbase`` record stores the Python-visible name and metadata for " -"a special method implemented by a type slot, together with the wrapper " -"function used to adapt that slot to Python's calling convention." +"Wrapper descriptors are used internally to expose special methods such as " +"``__repr__`` or ``__add__``, which are implemented by type slots. The type " +"is exposed in Python as :class:`types.WrapperDescriptorType`." msgstr "" -msgid "" -"Create a new wrapper descriptor for extension type *type* from the :c:struct:" -"`wrapperbase` structure *base* and the wrapped slot function pointer " -"*wrapped*." +msgid "Create a new wrapper descriptor of type :c:var:`PyWrapperDescr_Type`." msgstr "" msgid "" -"Wrapper descriptors expose special methods implemented by type slots. This " -"is the same kind of descriptor that CPython creates for slot-based special " -"methods such as ``__repr__`` or ``__add__``, and it appears in Python as a :" -"class:`types.WrapperDescriptorType` object." +"This function is meant for internal use only; it and related API (``struct " +"wrapperbase`` and the ``PyWrapperFlag_KEYWORDS`` flag) are exposed publicly " +"for backwards compatibility reasons." msgstr "" -msgid "" -"The type object for wrapper descriptor objects created by :c:func:" -"`PyDescr_NewWrapper` and :c:func:`PyWrapper_New`. Wrapper descriptors are " -"used internally to expose special methods implemented via wrapper " -"structures, and appear in Python as :class:`types.WrapperDescriptorType` " -"objects." +msgid "See :c:func:`PyCMethod_New` for wrapping a C function." msgstr "" msgid "" -"Create a new class method descriptor for extension type *type* from the :c:" -"type:`PyMethodDef` structure *method*." +"Create a new class method descriptor for extension type *type* from " +"the :c:type:`PyMethodDef` structure *method*." msgstr "" msgid "" @@ -143,10 +136,10 @@ msgid "" msgstr "" msgid "" -"This is the bound form of a wrapper descriptor created by :c:func:" -"`PyDescr_NewWrapper`. CPython creates these objects when a slot wrapper is " -"accessed through an instance, and they appear in Python as :class:`types." -"MethodWrapperType` objects." +"This is the bound form of a wrapper descriptor created " +"by :c:func:`PyDescr_NewWrapper`. CPython creates these objects when a slot " +"wrapper is accessed through an instance, and they appear in Python " +"as :class:`types.MethodWrapperType` objects." msgstr "" msgid "" @@ -154,22 +147,46 @@ msgid "" "``NULL`` with an exception set on failure." msgstr "" +msgid "" +"Return a :term:`borrowed reference` to the type that the descriptor *descr* " +"belongs to. This is accessible as :attr:`~object.__objclass__` in Python." +msgstr "" + +msgid "" +"*descr* must be a descriptor object created by one of the ``PyDescr_New*`` " +"functions (an instance " +"of :c:var:`PyMethodDescr_Type`, :c:var:`PyClassMethodDescr_Type`, :c:var:`PyMemberDescr_Type`, :c:var:`PyGetSetDescr_Type`, " +"or :c:var:`PyWrapperDescr_Type`). If the passed descriptor is not an " +"instance of one of these types, the behavior is undefined." +msgstr "" + +msgid "" +"Return the name of the descriptor *descr* as a :term:`borrowed reference` to " +"a :class:`str` object. This is available as :attr:`~definition.__name__` in " +"Python." +msgstr "" + +msgid "" +"*descr* must be a descriptor object created by one of the ``PyDescr_New*`` " +"functions. If not, the behavior is undefined." +msgstr "" + msgid "This is a macro including the common fields for a descriptor object." msgstr "" msgid "" "This was included in Python's C API by mistake; do not use it in extensions. " "For creating custom descriptor objects, create a class implementing the " -"descriptor protocol (:c:member:`~PyTypeObject.tp_descr_get` and :c:member:" -"`~PyTypeObject.tp_descr_set`)." +"descriptor protocol (:c:member:`~PyTypeObject.tp_descr_get` " +"and :c:member:`~PyTypeObject.tp_descr_set`)." msgstr "" msgid "Built-in descriptors" msgstr "" msgid "" -"The type object for property objects. This is the same object as :class:" -"`property` in the Python layer." +"The type object for property objects. This is the same object " +"as :class:`property` in the Python layer." msgstr "" msgid "" @@ -178,8 +195,8 @@ msgid "" msgstr "" msgid "" -"The type of class method objects. This is the same object as :class:" -"`classmethod` in the Python layer." +"The type of class method objects. This is the same object " +"as :class:`classmethod` in the Python layer." msgstr "" msgid "" @@ -201,8 +218,8 @@ msgid "" msgstr "" msgid "" -"The type of static method objects. This is the same object as :class:" -"`staticmethod` in the Python layer." +"The type of static method objects. This is the same object " +"as :class:`staticmethod` in the Python layer." msgstr "" msgid "" diff --git a/c-api/dict.po b/c-api/dict.po index 7ad15ee..0046bfe 100644 --- a/c-api/dict.po +++ b/c-api/dict.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -62,12 +63,13 @@ msgid "Also accept :class:`frozendict`." msgstr "" msgid "" -"The type object for mapping proxy objects created by :c:func:" -"`PyDictProxy_New` and for the read-only ``__dict__`` attribute of many built-" -"in types. A :c:type:`PyDictProxy_Type` instance provides a dynamic, read-" -"only view of an underlying dictionary: changes to the underlying dictionary " -"are reflected in the proxy, but the proxy itself does not support mutation " -"operations. This corresponds to :class:`types.MappingProxyType` in Python." +"The type object for mapping proxy objects created " +"by :c:func:`PyDictProxy_New` and for the read-only ``__dict__`` attribute of " +"many built-in types. A :c:type:`PyDictProxy_Type` instance provides a " +"dynamic, read-only view of an underlying dictionary: changes to the " +"underlying dictionary are reflected in the proxy, but the proxy itself does " +"not support mutation operations. This corresponds " +"to :class:`types.MappingProxyType` in Python." msgstr "" msgid "Empty an existing dictionary of all key-value pairs." @@ -89,43 +91,43 @@ msgstr "" msgid "" "The operation is atomic on :term:`free threading ` when " -"*key* is :class:`str`, :class:`int`, :class:`float`, :class:`bool` or :class:" -"`bytes`." +"*key* is :class:`str`, :class:`int`, :class:`float`, :class:`bool` " +"or :class:`bytes`." msgstr "" msgid "" -"This is the same as :c:func:`PyDict_Contains`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyDict_Contains`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "Return a new dictionary that contains the same key-value pairs as *p*." msgstr "" msgid "" -"Insert *val* into the dictionary *p* with a key of *key*. *key* must be :" -"term:`hashable`; if it isn't, :exc:`TypeError` will be raised. Return ``0`` " -"on success or ``-1`` on failure. This function *does not* \":term:`steal`\" " -"a reference to *val*." +"Insert *val* into the dictionary *p* with a key of *key*. *key* must " +"be :term:`hashable`; if it isn't, :exc:`TypeError` will be raised. Return " +"``0`` on success or ``-1`` on failure. This function *does not* " +"\":term:`steal`\" a reference to *val*." msgstr "" msgid "" -"This is the same as :c:func:`PyDict_SetItem`, but *key* is specified as a :c:" -"expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyDict_SetItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" -"Remove the entry in dictionary *p* with key *key*. *key* must be :term:" -"`hashable`; if it isn't, :exc:`TypeError` is raised. If *key* is not in the " -"dictionary, :exc:`KeyError` is raised. Return ``0`` on success or ``-1`` on " -"failure." +"Remove the entry in dictionary *p* with key *key*. *key* must " +"be :term:`hashable`; if it isn't, :exc:`TypeError` is raised. If *key* is " +"not in the dictionary, :exc:`KeyError` is raised. Return ``0`` on success or " +"``-1`` on failure." msgstr "" msgid "" -"This is the same as :c:func:`PyDict_DelItem`, but *key* is specified as a :c:" -"expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyDict_DelItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -155,9 +157,9 @@ msgid "" msgstr "" msgid "" -"Exceptions that occur while this calls :meth:`~object.__hash__` and :meth:" -"`~object.__eq__` methods are silently ignored. Prefer the :c:func:" -"`PyDict_GetItemWithError` function instead." +"Exceptions that occur while this calls :meth:`~object.__hash__` " +"and :meth:`~object.__eq__` methods are silently ignored. Prefer " +"the :c:func:`PyDict_GetItemWithError` function instead." msgstr "" msgid "" @@ -178,16 +180,17 @@ msgid "" msgstr "" msgid "" -"This is the same as :c:func:`PyDict_GetItem`, but *key* is specified as a :c:" -"expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyDict_GetItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" -"Exceptions that occur while this calls :meth:`~object.__hash__` and :meth:" -"`~object.__eq__` methods or while creating the temporary :class:`str` object " -"are silently ignored. Prefer using the :c:func:`PyDict_GetItemWithError` " -"function with your own :c:func:`PyUnicode_FromString` *key* instead." +"Exceptions that occur while this calls :meth:`~object.__hash__` " +"and :meth:`~object.__eq__` methods or while creating the " +"temporary :class:`str` object are silently ignored. Prefer using " +"the :c:func:`PyDict_GetItemWithError` function with your " +"own :c:func:`PyUnicode_FromString` *key* instead." msgstr "" msgid "" @@ -198,8 +201,9 @@ msgid "" msgstr "" msgid "" -"Similar to :c:func:`PyDict_GetItemRef`, but *key* is specified as a :c:expr:" -"`const char*` UTF-8 encoded bytes string, rather than a :c:expr:`PyObject*`." +"Similar to :c:func:`PyDict_GetItemRef`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -255,8 +259,8 @@ msgid "On error, raise an exception and return ``-1``." msgstr "" msgid "" -"Similar to :meth:`dict.pop`, but without the default value and not raising :" -"exc:`KeyError` if the key is missing." +"Similar to :meth:`dict.pop`, but without the default value and not " +"raising :exc:`KeyError` if the key is missing." msgstr "" msgid "" @@ -289,20 +293,20 @@ msgid "Similar to :c:func:`PyDict_Size`, but without error checking." msgstr "" msgid "" -"Iterate over all key-value pairs in the dictionary *p*. The :c:type:" -"`Py_ssize_t` referred to by *ppos* must be initialized to ``0`` prior to the " -"first call to this function to start the iteration; the function returns " -"true for each pair in the dictionary, and false once all pairs have been " -"reported. The parameters *pkey* and *pvalue* should either point to :c:expr:" -"`PyObject*` variables that will be filled in with each key and value, " -"respectively, or may be ``NULL``. Any references returned through them are " -"borrowed. *ppos* should not be altered during iteration. Its value " -"represents offsets within the internal dictionary structure, and since the " -"structure is sparse, the offsets are not consecutive." +"Iterate over all key-value pairs in the dictionary *p*. " +"The :c:type:`Py_ssize_t` referred to by *ppos* must be initialized to ``0`` " +"prior to the first call to this function to start the iteration; the " +"function returns true for each pair in the dictionary, and false once all " +"pairs have been reported. The parameters *pkey* and *pvalue* should either " +"point to :c:expr:`PyObject*` variables that will be filled in with each key " +"and value, respectively, or may be ``NULL``. Any references returned " +"through them are borrowed. *ppos* should not be altered during iteration. " +"Its value represents offsets within the internal dictionary structure, and " +"since the structure is sparse, the offsets are not consecutive." msgstr "" msgid "For example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "PyObject *key, *value;\n" @@ -342,9 +346,9 @@ msgstr "" msgid "" "The function is not thread-safe in the :term:`free-threaded ` build without external synchronization for a mutable :class:" -"`dict`. You can use :c:macro:`Py_BEGIN_CRITICAL_SECTION` to lock the " -"dictionary while iterating over it::" +"threading>` build without external synchronization for a " +"mutable :class:`dict`. You can use :c:macro:`Py_BEGIN_CRITICAL_SECTION` to " +"lock the dictionary while iterating over it::" msgstr "" msgid "" @@ -363,9 +367,9 @@ msgid "" "critical section. However, the references returned for *pkey* and *pvalue* " "are :term:`borrowed ` and are only valid while the " "critical section is held. If you need to use these objects outside the " -"critical section or when the critical section can be suspended, create a :" -"term:`strong reference ` (for example, using :c:func:" -"`Py_NewRef`)." +"critical section or when the critical section can be suspended, create " +"a :term:`strong reference ` (for example, " +"using :c:func:`Py_NewRef`)." msgstr "" msgid "" @@ -385,10 +389,10 @@ msgid "" msgstr "" msgid "" -"This is the same as ``PyDict_Merge(a, b, 1)`` in C, and is similar to ``a." -"update(b)`` in Python except that :c:func:`PyDict_Update` doesn't fall back " -"to the iterating over a sequence of key value pairs if the second argument " -"has no \"keys\" attribute. Return ``0`` on success or ``-1`` if an " +"This is the same as ``PyDict_Merge(a, b, 1)`` in C, and is similar to " +"``a.update(b)`` in Python except that :c:func:`PyDict_Update` doesn't fall " +"back to the iterating over a sequence of key value pairs if the second " +"argument has no \"keys\" attribute. Return ``0`` on success or ``-1`` if an " "exception was raised." msgstr "" @@ -422,19 +426,20 @@ msgstr "" msgid "" "This function is not internally synchronized. In the :term:`free-threaded " -"` build, callers should ensure no concurrent calls to :c:" -"func:`PyDict_AddWatcher` or :c:func:`PyDict_ClearWatcher` are in progress." +"` build, callers should ensure no concurrent calls " +"to :c:func:`PyDict_AddWatcher` or :c:func:`PyDict_ClearWatcher` are in " +"progress." msgstr "" msgid "" -"Clear watcher identified by *watcher_id* previously returned from :c:func:" -"`PyDict_AddWatcher`. Return ``0`` on success, ``-1`` on error (e.g. if the " -"given *watcher_id* was never registered.)" +"Clear watcher identified by *watcher_id* previously returned " +"from :c:func:`PyDict_AddWatcher`. Return ``0`` on success, ``-1`` on error " +"(e.g. if the given *watcher_id* was never registered.)" msgstr "" msgid "" -"Mark dictionary *dict* as watched. The callback granted *watcher_id* by :c:" -"func:`PyDict_AddWatcher` will be called when *dict* is modified or " +"Mark dictionary *dict* as watched. The callback granted *watcher_id* " +"by :c:func:`PyDict_AddWatcher` will be called when *dict* is modified or " "deallocated. Return ``0`` on success or ``-1`` on error." msgstr "" @@ -452,6 +457,13 @@ msgid "" "``PyDict_EVENT_DEALLOCATED``." msgstr "" +msgid "" +"Apply the macro *V* to each suffix of :c:type:`PyDict_WatchEvent` constants. " +"Currently expands to ``V(ADDED) V(MODIFIED) V(DELETED) V(CLONED) V(CLEARED) " +"V(DEALLOCATED)``. The macro *V* must accept one event name and supply any " +"punctuation needed between expansions." +msgstr "" + msgid "Type of a dict watcher callback function." msgstr "" @@ -491,8 +503,8 @@ msgstr "" msgid "" "If the callback sets an exception, it must return ``-1``; this exception " -"will be printed as an unraisable exception using :c:func:" -"`PyErr_WriteUnraisable`. Otherwise it should return ``0``." +"will be printed as an unraisable exception " +"using :c:func:`PyErr_WriteUnraisable`. Otherwise it should return ``0``." msgstr "" msgid "" @@ -504,7 +516,7 @@ msgid "" msgstr "" msgid "Dictionary view objects" -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀ ਵੀਊ ਆਬਜੈਕਟ" msgid "" "Return true if *op* is a view of a set inside a dictionary. This is " @@ -591,8 +603,8 @@ msgid "" msgstr "" msgid "" -"Type object for ordered dictionaries. This is the same object as :class:" -"`collections.OrderedDict` in the Python layer." +"Type object for ordered dictionaries. This is the same object " +"as :class:`collections.OrderedDict` in the Python layer." msgstr "" msgid "" @@ -666,13 +678,13 @@ msgid ":c:func:`PyDict_GET_SIZE`" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "dictionary" -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀ" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "len" -msgstr "" +msgstr "len" diff --git a/c-api/exceptions.po b/c-api/exceptions.po index 3aad08f..428afba 100644 --- a/c-api/exceptions.po +++ b/c-api/exceptions.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,9 +87,9 @@ msgstr "" msgid "" "If *set_sys_last_vars* is nonzero, the variable :data:`sys.last_exc` is set " "to the printed exception. For backwards compatibility, the deprecated " -"variables :data:`sys.last_type`, :data:`sys.last_value` and :data:`sys." -"last_traceback` are also set to the type, value and traceback of this " -"exception, respectively." +"variables :data:`sys.last_type`, :data:`sys.last_value` " +"and :data:`sys.last_traceback` are also set to the type, value and traceback " +"of this exception, respectively." msgstr "" msgid "The setting of :data:`sys.last_exc` was added." @@ -181,8 +181,8 @@ msgstr "" msgid "" "This function sets the error indicator and returns ``NULL``. *exception* " "should be a Python exception class. The *format* and subsequent parameters " -"help format the error message; they have the same meaning and values as in :" -"c:func:`PyUnicode_FromFormat`. *format* is an ASCII-encoded string." +"help format the error message; they have the same meaning and values as " +"in :c:func:`PyUnicode_FromFormat`. *format* is an ASCII-encoded string." msgstr "" msgid "" @@ -209,13 +209,14 @@ msgid "" "This is a convenience function to raise an exception when a C library " "function has returned an error and set the C variable :c:data:`errno`. It " "constructs a tuple object whose first item is the integer :c:data:`errno` " -"value and whose second item is the corresponding error message (gotten from :" -"c:func:`!strerror`), and then calls ``PyErr_SetObject(type, object)``. On " -"Unix, when the :c:data:`errno` value is :c:macro:`!EINTR`, indicating an " -"interrupted system call, this calls :c:func:`PyErr_CheckSignals`, and if " -"that set the error indicator, leaves it set to that. The function always " -"returns ``NULL``, so a wrapper function around a system call can write " -"``return PyErr_SetFromErrno(type);`` when the system call returns an error." +"value and whose second item is the corresponding error message (gotten " +"from :c:func:`!strerror`), and then calls ``PyErr_SetObject(type, " +"object)``. On Unix, when the :c:data:`errno` value is :c:macro:`!EINTR`, " +"indicating an interrupted system call, this " +"calls :c:func:`PyErr_CheckSignals`, and if that set the error indicator, " +"leaves it set to that. The function always returns ``NULL``, so a wrapper " +"function around a system call can write ``return PyErr_SetFromErrno(type);`` " +"when the system call returns an error." msgstr "" msgid "" @@ -251,7 +252,7 @@ msgid "" msgstr "" msgid "Availability" -msgstr "" +msgstr "ਉਪਲਬਧਤਾ" msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErr`, with an additional parameter " @@ -261,9 +262,9 @@ msgstr "" msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErr`, with the additional behavior " "that if *filename* is not ``NULL``, it is decoded from the filesystem " -"encoding (:func:`os.fsdecode`) and passed to the constructor of :exc:" -"`OSError` as a third parameter to be used to define the :attr:`!filename` " -"attribute of the exception instance." +"encoding (:func:`os.fsdecode`) and passed to the constructor " +"of :exc:`OSError` as a third parameter to be used to define the :attr:`!" +"filename` attribute of the exception instance." msgstr "" msgid "" @@ -335,9 +336,9 @@ msgid "" msgstr "" msgid "" -"Similar to :c:func:`PyErr_ProgramTextObject`, but *filename* is a :c:expr:" -"`const char *`, which is decoded with the :term:`filesystem encoding and " -"error handler`, instead of a Python object reference." +"Similar to :c:func:`PyErr_ProgramTextObject`, but *filename* is " +"a :c:expr:`const char *`, which is decoded with the :term:`filesystem " +"encoding and error handler`, instead of a Python object reference." msgstr "" msgid "Issuing warnings" @@ -363,53 +364,58 @@ msgid "" "below) or ``NULL``; the *message* argument is a UTF-8 encoded string. " "*stack_level* is a positive number giving a number of stack frames; the " "warning will be issued from the currently executing line of code in that " -"stack frame. A *stack_level* of 1 is the function calling :c:func:" -"`PyErr_WarnEx`, 2 is the function above that, and so forth." +"stack frame. A *stack_level* of 1 is the function " +"calling :c:func:`PyErr_WarnEx`, 2 is the function above that, and so forth." msgstr "" msgid "" -"Warning categories must be subclasses of :c:data:`PyExc_Warning`; :c:data:" -"`PyExc_Warning` is a subclass of :c:data:`PyExc_Exception`; the default " -"warning category is :c:data:`PyExc_RuntimeWarning`. The standard Python " -"warning categories are available as global variables whose names are " -"enumerated at :ref:`standardwarningcategories`." +"Warning categories must be subclasses " +"of :c:data:`PyExc_Warning`; :c:data:`PyExc_Warning` is a subclass " +"of :c:data:`PyExc_Exception`; the default warning category " +"is :c:data:`PyExc_RuntimeWarning`. The standard Python warning categories " +"are available as global variables whose names are enumerated " +"at :ref:`standardwarningcategories`." msgstr "" msgid "" -"For information about warning control, see the documentation for the :mod:" -"`warnings` module and the :option:`-W` option in the command line " +"For information about warning control, see the documentation for " +"the :mod:`warnings` module and the :option:`-W` option in the command line " "documentation. There is no C API for warning control." msgstr "" +msgid "Equivalent to :c:expr:`PyErr_WarnEx(category, message, 1)`." +msgstr "" + msgid "" "Issue a warning message with explicit control over all warning attributes. " -"This is a straightforward wrapper around the Python function :func:`warnings." -"warn_explicit`; see there for more information. The *module* and *registry* " -"arguments may be set to ``NULL`` to get the default effect described there." +"This is a straightforward wrapper around the Python " +"function :func:`warnings.warn_explicit`; see there for more information. " +"The *module* and *registry* arguments may be set to ``NULL`` to get the " +"default effect described there." msgstr "" msgid "" "Similar to :c:func:`PyErr_WarnExplicitObject` except that *message* and " -"*module* are UTF-8 encoded strings, and *filename* is decoded from the :term:" -"`filesystem encoding and error handler`." +"*module* are UTF-8 encoded strings, and *filename* is decoded from " +"the :term:`filesystem encoding and error handler`." msgstr "" msgid "" -"Function similar to :c:func:`PyErr_WarnEx`, but uses :c:func:" -"`PyUnicode_FromFormat` to format the warning message. *format* is an ASCII-" -"encoded string." +"Function similar to :c:func:`PyErr_WarnEx`, but " +"uses :c:func:`PyUnicode_FromFormat` to format the warning message. *format* " +"is an ASCII-encoded string." msgstr "" msgid "" -"Similar to :c:func:`PyErr_WarnExplicit`, but uses :c:func:" -"`PyUnicode_FromFormat` to format the warning message. *format* is an ASCII-" -"encoded string." +"Similar to :c:func:`PyErr_WarnExplicit`, but " +"uses :c:func:`PyUnicode_FromFormat` to format the warning message. *format* " +"is an ASCII-encoded string." msgstr "" msgid "" -"Function similar to :c:func:`PyErr_WarnFormat`, but *category* is :exc:" -"`ResourceWarning` and it passes *source* to :class:`!warnings." -"WarningMessage`." +"Function similar to :c:func:`PyErr_WarnFormat`, but *category* " +"is :exc:`ResourceWarning` and it passes *source* to :class:`!" +"warnings.WarningMessage`." msgstr "" msgid "Querying the error indicator" @@ -419,18 +425,19 @@ msgid "" "Test whether the error indicator is set. If set, return the exception " "*type* (the first argument to the last call to one of the ``PyErr_Set*`` " "functions or to :c:func:`PyErr_Restore`). If not set, return ``NULL``. You " -"do not own a reference to the return value, so you do not need to :c:func:" -"`Py_DECREF` it." +"do not own a reference to the return value, so you do not need " +"to :c:func:`Py_DECREF` it." msgstr "" msgid "The caller must have an :term:`attached thread state`." msgstr "" msgid "" -"Do not compare the return value to a specific exception; use :c:func:" -"`PyErr_ExceptionMatches` instead, shown below. (The comparison could easily " -"fail since the exception may be an instance instead of a class, in the case " -"of a class exception, or it may be a subclass of the expected exception.)" +"Do not compare the return value to a specific exception; " +"use :c:func:`PyErr_ExceptionMatches` instead, shown below. (The comparison " +"could easily fail since the exception may be an instance instead of a class, " +"in the case of a class exception, or it may be a subclass of the expected " +"exception.)" msgstr "" msgid "" @@ -457,7 +464,7 @@ msgid "" msgstr "" msgid "For example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "{\n" @@ -549,9 +556,10 @@ msgid "" msgstr "" msgid "" -"This function *does not* implicitly set the :attr:`~BaseException." -"__traceback__` attribute on the exception value. If setting the traceback " -"appropriately is desired, the following additional snippet is needed::" +"This function *does not* implicitly set " +"the :attr:`~BaseException.__traceback__` attribute on the exception value. " +"If setting the traceback appropriately is desired, the following additional " +"snippet is needed::" msgstr "" msgid "" @@ -561,10 +569,11 @@ msgid "" msgstr "" msgid "" -"Retrieve the active exception instance, as would be returned by :func:`sys." -"exception`. This refers to an exception that was *already caught*, not to an " -"exception that was freshly raised. Returns a new reference to the exception " -"or ``NULL``. Does not modify the interpreter's exception state." +"Retrieve the active exception instance, as would be returned " +"by :func:`sys.exception`. This refers to an exception that was *already " +"caught*, not to an exception that was freshly raised. Returns a new " +"reference to the exception or ``NULL``. Does not modify the interpreter's " +"exception state." msgstr "" msgid "" @@ -588,12 +597,12 @@ msgid "" msgstr "" msgid "" -"Retrieve the old-style representation of the exception info, as known from :" -"func:`sys.exc_info`. This refers to an exception that was *already caught*, " -"not to an exception that was freshly raised. Returns new references for the " -"three objects, any of which may be ``NULL``. Does not modify the exception " -"info state. This function is kept for backwards compatibility. Prefer " -"using :c:func:`PyErr_GetHandledException`." +"Retrieve the old-style representation of the exception info, as known " +"from :func:`sys.exc_info`. This refers to an exception that was *already " +"caught*, not to an exception that was freshly raised. Returns new " +"references for the three objects, any of which may be ``NULL``. Does not " +"modify the exception info state. This function is kept for backwards " +"compatibility. Prefer using :c:func:`PyErr_GetHandledException`." msgstr "" msgid "" @@ -608,8 +617,8 @@ msgid "" "exception that was *already caught*, not to an exception that was freshly " "raised. This function \":term:`steals `\" the references of the " "arguments. To clear the exception state, pass ``NULL`` for all three " -"arguments. This function is kept for backwards compatibility. Prefer using :" -"c:func:`PyErr_SetHandledException`." +"arguments. This function is kept for backwards compatibility. Prefer " +"using :c:func:`PyErr_SetHandledException`." msgstr "" msgid "" @@ -636,10 +645,10 @@ msgid "" msgstr "" msgid "" -"For example, pressing :kbd:`Ctrl-C` causes a terminal to send the :py:data:" -"`signal.SIGINT` signal. This function executes the corresponding Python " -"signal handler, which, by default, raises the :exc:`KeyboardInterrupt` " -"exception." +"For example, pressing :kbd:`Ctrl-C` causes a terminal to send " +"the :py:data:`signal.SIGINT` signal. This function executes the " +"corresponding Python signal handler, which, by default, raises " +"the :exc:`KeyboardInterrupt` exception." msgstr "" msgid "" @@ -651,8 +660,8 @@ msgid "Handlers invoked by this function currently include:" msgstr "" msgid "" -"Signal handlers, including Python functions registered using the :mod:" -"`signal` module." +"Signal handlers, including Python functions registered using " +"the :mod:`signal` module." msgstr "" msgid "" @@ -701,14 +710,14 @@ msgid "" msgstr "" msgid "" -"This function is async-signal-safe. It can be called without an :term:" -"`attached thread state` and from a C signal handler." +"This function is async-signal-safe. It can be called without " +"an :term:`attached thread state` and from a C signal handler." msgstr "" msgid "" -"Simulate the effect of a signal arriving. The next time :c:func:" -"`PyErr_CheckSignals` is called, the Python signal handler for the given " -"signal number will be called." +"Simulate the effect of a signal arriving. The next " +"time :c:func:`PyErr_CheckSignals` is called, the Python signal handler for " +"the given signal number will be called." msgstr "" msgid "" @@ -719,8 +728,9 @@ msgid "" msgstr "" msgid "" -"If the given signal isn't handled by Python (it was set to :py:const:`signal." -"SIG_DFL` or :py:const:`signal.SIG_IGN`), it will be ignored." +"If the given signal isn't handled by Python (it was set " +"to :py:const:`signal.SIG_DFL` or :py:const:`signal.SIG_IGN`), it will be " +"ignored." msgstr "" msgid "" @@ -784,9 +794,9 @@ msgstr "" msgid "" "This was included in Python's C API by mistake and is not designed for use " -"in extensions. For creating custom exception objects, use :c:func:" -"`PyErr_NewException` or otherwise create a class inheriting from :c:data:" -"`PyExc_BaseException`." +"in extensions. For creating custom exception objects, " +"use :c:func:`PyErr_NewException` or otherwise create a class inheriting " +"from :c:data:`PyExc_BaseException`." msgstr "" msgid "Exception Objects" @@ -853,11 +863,11 @@ msgid "" "Implement part of the interpreter's implementation of :keyword:`!except*`. " "*orig* is the original exception that was caught, and *excs* is the list of " "the exceptions that need to be raised. This list contains the unhandled part " -"of *orig*, if any, as well as the exceptions that were raised from the :" -"keyword:`!except*` clauses (so they have a different traceback from *orig*) " -"and those that were reraised (and have the same traceback as *orig*). Return " -"the :exc:`ExceptionGroup` that needs to be reraised in the end, or ``None`` " -"if there is nothing to reraise." +"of *orig*, if any, as well as the exceptions that were raised from " +"the :keyword:`!except*` clauses (so they have a different traceback from " +"*orig*) and those that were reraised (and have the same traceback as " +"*orig*). Return the :exc:`ExceptionGroup` that needs to be reraised in the " +"end, or ``None`` if there is nothing to reraise." msgstr "" msgid "Unicode Exception Objects" @@ -952,6 +962,12 @@ msgid "" "Otherwise, zero is returned." msgstr "" +msgid "" +"The check is based on the remaining C stack space of the current thread, not " +"on a count of calls, so it is unaffected by :c:func:`Py_SetRecursionLimit` " +"and :func:`sys.setrecursionlimit`." +msgstr "" + msgid "" "*where* should be a UTF-8 encoded string such as ``\" in instance check\"`` " "to be concatenated to the :exc:`RecursionError` message caused by the " @@ -966,6 +982,11 @@ msgid "" "api>`." msgstr "" +msgid "" +"The check is based on the remaining C stack space. Previously, a separate " +"counter of C-level calls was used." +msgstr "" + msgid "" "Ends a :c:func:`Py_EnterRecursiveCall`. Must be called once for each " "*successful* invocation of :c:func:`Py_EnterRecursiveCall`." @@ -973,9 +994,9 @@ msgstr "" msgid "" "Properly implementing :c:member:`~PyTypeObject.tp_repr` for container types " -"requires special recursion handling. In addition to protecting the stack, :" -"c:member:`~PyTypeObject.tp_repr` also needs to track objects to prevent " -"cycles. The following two functions facilitate this functionality. " +"requires special recursion handling. In addition to protecting the " +"stack, :c:member:`~PyTypeObject.tp_repr` also needs to track objects to " +"prevent cycles. The following two functions facilitate this functionality. " "Effectively, these are the C equivalent to :deco:`reprlib.recursive_repr`." msgstr "" @@ -987,8 +1008,9 @@ msgstr "" msgid "" "If the object has already been processed, the function returns a positive " "integer. In that case the :c:member:`~PyTypeObject.tp_repr` implementation " -"should return a string object indicating a cycle. As examples, :class:" -"`dict` objects return ``{...}`` and :class:`list` objects return ``[...]``." +"should return a string object indicating a cycle. As " +"examples, :class:`dict` objects return ``{...}`` and :class:`list` objects " +"return ``[...]``." msgstr "" msgid "" @@ -998,18 +1020,18 @@ msgid "" msgstr "" msgid "" -"Otherwise, the function returns zero and the :c:member:`~PyTypeObject." -"tp_repr` implementation can continue normally." +"Otherwise, the function returns zero and " +"the :c:member:`~PyTypeObject.tp_repr` implementation can continue normally." msgstr "" msgid "" -"Ends a :c:func:`Py_ReprEnter`. Must be called once for each invocation of :" -"c:func:`Py_ReprEnter` that returns zero." +"Ends a :c:func:`Py_ReprEnter`. Must be called once for each invocation " +"of :c:func:`Py_ReprEnter` that returns zero." msgstr "" msgid "" -"Get the recursion limit for the current interpreter. It can be set with :c:" -"func:`Py_SetRecursionLimit`. The recursion limit prevents the Python " +"Get the recursion limit for the current interpreter. It can be set " +"with :c:func:`Py_SetRecursionLimit`. The recursion limit prevents the Python " "interpreter stack from growing infinitely." msgstr "" @@ -1042,15 +1064,27 @@ msgstr "" msgid "Exception types" msgstr "" +msgid "" +"These pointers are part of the :ref:`Stable ABI ` since the version " +"in the *S.ABI* column (or since 3.2 when *S.ABI* is empty). Exceptions " +"marked N/A are *not* part of the Stable ABI." +msgstr "" + msgid "C name" msgstr "" +msgid "S.ABI" +msgstr "" + msgid "Python name" msgstr "" msgid ":exc:`BaseException`" msgstr "" +msgid "3.11" +msgstr "" + msgid ":exc:`BaseExceptionGroup`" msgstr "" @@ -1066,6 +1100,9 @@ msgstr "" msgid ":exc:`AttributeError`" msgstr "" +msgid "3.7" +msgstr "" + msgid ":exc:`BlockingIOError`" msgstr "" @@ -1105,6 +1142,9 @@ msgstr "" msgid ":exc:`GeneratorExit`" msgstr "" +msgid "N/A" +msgstr "" + msgid ":exc:`ImportCycleError`" msgstr "" @@ -1135,6 +1175,9 @@ msgstr "" msgid ":exc:`MemoryError`" msgstr "" +msgid "3.6" +msgstr "" + msgid ":exc:`ModuleNotFoundError`" msgstr "" @@ -1217,14 +1260,8 @@ msgid ":exc:`ZeroDivisionError`" msgstr "" msgid "" -":c:data:`PyExc_BlockingIOError`, :c:data:`PyExc_BrokenPipeError`, :c:data:" -"`PyExc_ChildProcessError`, :c:data:`PyExc_ConnectionError`, :c:data:" -"`PyExc_ConnectionAbortedError`, :c:data:`PyExc_ConnectionRefusedError`, :c:" -"data:`PyExc_ConnectionResetError`, :c:data:`PyExc_FileExistsError`, :c:data:" -"`PyExc_FileNotFoundError`, :c:data:`PyExc_InterruptedError`, :c:data:" -"`PyExc_IsADirectoryError`, :c:data:`PyExc_NotADirectoryError`, :c:data:" -"`PyExc_PermissionError`, :c:data:`PyExc_ProcessLookupError` and :c:data:" -"`PyExc_TimeoutError` were introduced following :pep:`3151`." +":c:data:`PyExc_BlockingIOError`, :c:data:`PyExc_BrokenPipeError`, :c:data:`PyExc_ChildProcessError`, :c:data:`PyExc_ConnectionError`, :c:data:`PyExc_ConnectionAbortedError`, :c:data:`PyExc_ConnectionRefusedError`, :c:data:`PyExc_ConnectionResetError`, :c:data:`PyExc_FileExistsError`, :c:data:`PyExc_FileNotFoundError`, :c:data:`PyExc_InterruptedError`, :c:data:`PyExc_IsADirectoryError`, :c:data:`PyExc_NotADirectoryError`, :c:data:`PyExc_PermissionError`, :c:data:`PyExc_ProcessLookupError` " +"and :c:data:`PyExc_TimeoutError` were introduced following :pep:`3151`." msgstr "" msgid ":c:data:`PyExc_StopAsyncIteration` and :c:data:`PyExc_RecursionError`." @@ -1246,13 +1283,13 @@ msgid "These aliases used to be separate exception types." msgstr "" msgid "Notes" -msgstr "" +msgstr "ਨੋਟ" msgid "[win]_" msgstr "" msgid "Notes:" -msgstr "" +msgstr "ਨੋਟ:" msgid "" ":c:var:`!PyExc_WindowsError` is only defined on Windows; protect code that " @@ -1262,6 +1299,11 @@ msgstr "" msgid "Warning types" msgstr "" +msgid "" +"These pointers are part of the :ref:`Stable ABI ` since the version " +"in the *S.ABI* column (or since 3.2 when *S.ABI* is empty)." +msgstr "" + msgid ":exc:`Warning`" msgstr "" @@ -1271,6 +1313,9 @@ msgstr "" msgid ":exc:`DeprecationWarning`" msgstr "" +msgid "3.10" +msgstr "" + msgid ":exc:`EncodingWarning`" msgstr "" @@ -1308,8 +1353,8 @@ msgid "Tracebacks" msgstr "" msgid "" -"Type object for traceback objects. This is available as :class:`types." -"TracebackType` in the Python layer." +"Type object for traceback objects. This is available " +"as :class:`types.TracebackType` in the Python layer." msgstr "" msgid "" @@ -1409,7 +1454,7 @@ msgid "strerror (C function)" msgstr "" msgid "module" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "signal" msgstr "" diff --git a/c-api/extension-modules.po b/c-api/extension-modules.po deleted file mode 100644 index 6c6e07e..0000000 --- a/c-api/extension-modules.po +++ /dev/null @@ -1,450 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Defining extension modules" -msgstr "" - -msgid "" -"A C extension for CPython is a shared library (for example, a ``.so`` file " -"on Linux, ``.pyd`` DLL on Windows), which is loadable into the Python " -"process (for example, it is compiled with compatible compiler settings), and " -"which exports an :dfn:`export hook` function (or an old-style :ref:" -"`initialization function `)." -msgstr "" - -msgid "" -"To be importable by default (that is, by :py:class:`importlib.machinery." -"ExtensionFileLoader`), the shared library must be available on :py:attr:`sys." -"path`, and must be named after the module name plus an extension listed in :" -"py:attr:`importlib.machinery.EXTENSION_SUFFIXES`." -msgstr "" - -msgid "" -"Building, packaging and distributing extension modules is best done with " -"third-party tools, and is out of scope of this document. One suitable tool " -"is Setuptools, whose documentation can be found at https://setuptools.pypa." -"io/en/latest/setuptools.html." -msgstr "" - -msgid "Extension export hook" -msgstr "" - -msgid "" -"Support for the :samp:`PyModExport_{}` export hook was added in Python " -"3.15. The older way of defining modules is still available: consult either " -"the :ref:`extension-pyinit` section or earlier versions of this " -"documentation if you plan to support earlier Python versions." -msgstr "" - -msgid "" -"The export hook must be an exported function with the following signature:" -msgstr "" - -msgid "" -"For modules with ASCII-only names, the :ref:`export hook ` must be named :samp:`PyModExport_{}`, with ```` replaced " -"by the module's name." -msgstr "" - -msgid "" -"For non-ASCII module names, the export hook must instead be named :samp:" -"`PyModExportU_{}` (note the ``U``), with ```` encoded using " -"Python's *punycode* encoding with hyphens replaced by underscores. In Python:" -msgstr "" - -msgid "" -"def hook_name(name):\n" -" try:\n" -" suffix = b'_' + name.encode('ascii')\n" -" except UnicodeEncodeError:\n" -" suffix = b'U_' + name.encode('punycode').replace(b'-', b'_')\n" -" return b'PyModExport' + suffix" -msgstr "" - -msgid "" -"The export hook returns an array of :c:type:`PySlot` entries, terminated by " -"an entry with a slot ID of ``0``. These slots describe how the module should " -"be created and initialized." -msgstr "" - -msgid "" -"This array must remain valid and constant until interpreter shutdown. " -"Typically, it should use ``static`` storage. Prefer using the :c:macro:" -"`Py_mod_create` and :c:macro:`Py_mod_exec` slots for any dynamic behavior." -msgstr "" - -msgid "" -"The export hook may return ``NULL`` with an exception set to signal failure." -msgstr "" - -msgid "" -"It is recommended to define the export hook function using a helper macro:" -msgstr "" - -msgid "Declare an extension module export hook. This macro:" -msgstr "" - -msgid "specifies the :c:expr:`PySlot*` return type," -msgstr "" - -msgid "adds any special linkage declarations required by the platform, and" -msgstr "" - -msgid "for C++, declares the function as ``extern \"C\"``." -msgstr "" - -msgid "For example, a module called ``spam`` would be defined like this::" -msgstr "" - -msgid "" -"PyABIInfo_VAR(abi_info);\n" -"\n" -"static PySlot spam_slots[] = {\n" -" PySlot_STATIC_DATA(Py_mod_abi, &abi_info),\n" -" PySlot_STATIC_DATA(Py_mod_name, \"spam\"),\n" -" PySlot_FUNC(Py_mod_init, spam_init_function),\n" -" ...\n" -" PySlot_END\n" -"};\n" -"\n" -"PyMODEXPORT_FUNC\n" -"PyModExport_spam(void)\n" -"{\n" -" return spam_slots;\n" -"}" -msgstr "" - -msgid "" -"The export hook is typically the only non-\\ ``static`` item defined in the " -"module's C source." -msgstr "" - -msgid "" -"The hook should be kept short. If it does more than ``return`` a static " -"array, several caveats apply:" -msgstr "" - -msgid "" -"If you need to use any Python C API, it is recommended to call :c:func:" -"`PyABIInfo_Check` first to raise an exception, rather than crash, in common " -"cases of ABI mismatch." -msgstr "" - -msgid "" -"Code in the export hook must never rely on the :term:`GIL`: :term:`free-" -"threaded builds ` of Python can only check the :c:macro:" -"`Py_mod_gil` slot (or the lack of it) after the hook returns," -msgstr "" - -msgid "" -"Similarly, the hook may be called in any subinterpreter, since the :c:macro:" -"`Py_mod_multiple_interpreters` slot (or lack of it) is only checked after " -"the hook returns." -msgstr "" - -msgid "For example::" -msgstr "" - -msgid "" -"PyMODEXPORT_FUNC\n" -"PyModExport_modulename(void)\n" -"{\n" -" if (PyABIInfo_Check(&abi_info, \"modulename\") < 0) {\n" -" /* ABI mismatch. It's not safe to examine the raised exception. */\n" -" return NULL;\n" -" }\n" -"\n" -" /* use Python API (as little as possible); don't rely on GIL */\n" -"\n" -" return modulename_slots;\n" -"}" -msgstr "" - -msgid "" -"It is possible to export multiple modules from a single shared library by " -"defining multiple export hooks. However, importing them requires a custom " -"importer or suitably named copies/links of the extension file, because " -"Python's import machinery only finds the function corresponding to the " -"filename. See the `Multiple modules in one library `__ section in :pep:`489` for " -"details." -msgstr "" - -msgid "Multi-phase initialization" -msgstr "" - -msgid "The process of creating an extension module follows several phases:" -msgstr "" - -msgid "" -"Python finds and calls the export hook to get information on how to create " -"the module." -msgstr "" - -msgid "" -"Before any substantial code is executed, Python can determine which " -"capabilities the module supports, and it can adjust the environment or " -"refuse loading an incompatible extension. Slots like :c:data:`Py_mod_abi`, :" -"c:data:`Py_mod_gil` and :c:data:`Py_mod_multiple_interpreters` influence " -"this step." -msgstr "" - -msgid "" -"By default, Python itself then creates the module object -- that is, it does " -"the equivalent of calling :py:meth:`~object.__new__` when creating an " -"object. This step can be overridden using the :c:data:`Py_mod_create` slot." -msgstr "" - -msgid "" -"Python sets initial module attributes like :attr:`~module.__package__` and :" -"attr:`~module.__loader__`, and inserts the module object into :py:attr:`sys." -"modules`." -msgstr "" - -msgid "" -"Afterwards, the module object is initialized in an extension-specific way -- " -"the equivalent of :py:meth:`~object.__init__` when creating an object, or of " -"executing top-level code in a Python-language module. The behavior is " -"specified using the :c:data:`Py_mod_exec` slot." -msgstr "" - -msgid "" -"This is called *multi-phase initialization* to distinguish it from the " -"legacy (but still supported) :ref:`single-phase initialization `, where an initialization function returns a fully " -"constructed module." -msgstr "" - -msgid "Added support for multi-phase initialization (:pep:`489`)." -msgstr "" - -msgid "Multiple module instances" -msgstr "" - -msgid "" -"By default, extension modules are not singletons. For example, if the :py:" -"attr:`sys.modules` entry is removed and the module is re-imported, a new " -"module object is created and, typically, populated with fresh method and " -"type objects. The old module is subject to normal garbage collection. This " -"mirrors the behavior of pure-Python modules." -msgstr "" - -msgid "" -"Additional module instances may be created in :ref:`sub-interpreters ` or after Python runtime reinitialization (:c:func:" -"`Py_Finalize` and :c:func:`Py_Initialize`). In these cases, sharing Python " -"objects between module instances would likely cause crashes or undefined " -"behavior." -msgstr "" - -msgid "" -"To avoid such issues, each instance of an extension module should be " -"*isolated*: changes to one instance should not implicitly affect the others, " -"and all state owned by the module, including references to Python objects, " -"should be specific to a particular module instance. See :ref:`isolating-" -"extensions-howto` for more details and a practical guide." -msgstr "" - -msgid "" -"A simpler way to avoid these issues is :ref:`raising an error on repeated " -"initialization `." -msgstr "" - -msgid "" -"All modules are expected to support :ref:`sub-interpreters `, or otherwise explicitly signal a lack of support. This is usually " -"achieved by isolation or blocking repeated initialization, as above. A " -"module may also be limited to the main interpreter using the :c:data:" -"`Py_mod_multiple_interpreters` slot." -msgstr "" - -msgid "``PyInit`` function" -msgstr "" - -msgid "" -"This functionality will not get new features, but there are no plans to " -"remove it." -msgstr "" - -msgid "" -"Instead of :c:func:`PyModExport_modulename`, an extension module can define " -"an older-style :dfn:`initialization function` with the signature:" -msgstr "" - -msgid "" -"Its name should be :samp:`PyInit_{}`, with ```` replaced by the " -"name of the module. For non-ASCII module names, use :samp:`PyInitU_{}` " -"instead, with ```` encoded in the same way as for the :ref:`export " -"hook ` (that is, using Punycode with underscores)." -msgstr "" - -msgid "" -"If a module exports both :samp:`PyInit_{}` and :samp:" -"`PyModExport_{}`, the :samp:`PyInit_{}` function is ignored." -msgstr "" - -msgid "" -"Like with :c:macro:`PyMODEXPORT_FUNC`, it is recommended to define the " -"initialization function using a helper macro:" -msgstr "" - -msgid "Declare an extension module initialization function. This macro:" -msgstr "" - -msgid "specifies the :c:expr:`PyObject*` return type," -msgstr "" - -msgid "" -"Normally, the initialization function (``PyInit_modulename``) returns a :c:" -"type:`PyModuleDef` instance with non-``NULL`` :c:member:`~PyModuleDef." -"m_slots`. This allows Python to use :ref:`multi-phase initialization `." -msgstr "" - -msgid "" -"Before it is returned, the ``PyModuleDef`` instance must be initialized " -"using the following function:" -msgstr "" - -msgid "" -"Ensure a module definition is a properly initialized Python object that " -"correctly reports its type and a reference count." -msgstr "" - -msgid "Return *def* cast to ``PyObject*``, or ``NULL`` if an error occurred." -msgstr "" - -msgid "" -"Calling this function is required before returning a :c:type:`PyModuleDef` " -"from a module initialization function. It should not be used in other " -"contexts." -msgstr "" - -msgid "" -"Note that Python assumes that ``PyModuleDef`` structures are statically " -"allocated. This function may return either a new reference or a borrowed " -"one; this reference must not be released." -msgstr "" - -msgid "" -"static struct PyModuleDef spam_module = {\n" -" .m_base = PyModuleDef_HEAD_INIT,\n" -" .m_name = \"spam\",\n" -" ...\n" -"};\n" -"\n" -"PyMODINIT_FUNC\n" -"PyInit_spam(void)\n" -"{\n" -" return PyModuleDef_Init(&spam_module);\n" -"}" -msgstr "" - -msgid "Legacy single-phase initialization" -msgstr "" - -msgid "" -"Single-phase initialization is a legacy mechanism to initialize extension " -"modules, with known drawbacks and design flaws. Extension module authors are " -"encouraged to use multi-phase initialization instead." -msgstr "" - -msgid "However, there are no plans to remove support for it." -msgstr "" - -msgid "" -"In single-phase initialization, the old-style :ref:`initialization function " -"` (``PyInit_modulename``) should create, populate and " -"return a module object. This is typically done using :c:func:" -"`PyModule_Create` and functions like :c:func:`PyModule_AddObjectRef`." -msgstr "" - -msgid "" -"Single-phase initialization differs from the :ref:`default ` in the following ways:" -msgstr "" - -msgid "Single-phase modules are, or rather *contain*, “singletons”." -msgstr "" - -msgid "" -"When the module is first initialized, Python saves the contents of the " -"module's ``__dict__`` (that is, typically, the module's functions and types)." -msgstr "" - -msgid "" -"For subsequent imports, Python does not call the initialization function " -"again. Instead, it creates a new module object with a new ``__dict__``, and " -"copies the saved contents to it. For example, given a single-phase module " -"``_testsinglephase`` [#testsinglephase]_ that defines a function ``sum`` and " -"an exception class ``error``:" -msgstr "" - -msgid "" -">>> import sys\n" -">>> import _testsinglephase as one\n" -">>> del sys.modules['_testsinglephase']\n" -">>> import _testsinglephase as two\n" -">>> one is two\n" -"False\n" -">>> one.__dict__ is two.__dict__\n" -"False\n" -">>> one.sum is two.sum\n" -"True\n" -">>> one.error is two.error\n" -"True" -msgstr "" - -msgid "" -"The exact behavior should be considered a CPython implementation detail." -msgstr "" - -msgid "" -"To work around the fact that ``PyInit_modulename`` does not take a *spec* " -"argument, some state of the import machinery is saved and applied to the " -"first suitable module created during the ``PyInit_modulename`` call. " -"Specifically, when a sub-module is imported, this mechanism prepends the " -"parent package name to the name of the module." -msgstr "" - -msgid "" -"A single-phase ``PyInit_modulename`` function should create “its” module " -"object as soon as possible, before any other module objects can be created." -msgstr "" - -msgid "Non-ASCII module names (``PyInitU_modulename``) are not supported." -msgstr "" - -msgid "" -"Single-phase modules support module lookup functions like :c:func:" -"`PyState_FindModule`." -msgstr "" - -msgid "The module's :c:member:`PyModuleDef.m_slots` must be NULL." -msgstr "" - -msgid "" -"``_testsinglephase`` is an internal module used in CPython's self-test " -"suite; your installation may or may not include it." -msgstr "" diff --git a/c-api/file.po b/c-api/file.po index 1bc48b0..ac5a863 100644 --- a/c-api/file.po +++ b/c-api/file.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,12 +28,12 @@ msgstr "" msgid "" "These APIs are a minimal emulation of the Python 2 C API for built-in file " "objects, which used to rely on the buffered I/O (:c:expr:`FILE*`) support " -"from the C standard library. In Python 3, files and streams use the new :" -"mod:`io` module, which defines several layers over the low-level unbuffered " -"I/O of the operating system. The functions described below are convenience " -"C wrappers over these new APIs, and meant mostly for internal error " -"reporting in the interpreter; third-party code is advised to access the :mod:" -"`io` APIs instead." +"from the C standard library. In Python 3, files and streams use the " +"new :mod:`io` module, which defines several layers over the low-level " +"unbuffered I/O of the operating system. The functions described below are " +"convenience C wrappers over these new APIs, and meant mostly for internal " +"error reporting in the interpreter; third-party code is advised to access " +"the :mod:`io` APIs instead." msgstr "" msgid "" @@ -56,22 +56,47 @@ msgstr "" msgid "" "Return the file descriptor associated with *p* as an :c:expr:`int`. If the " -"object is an integer, its value is returned. If not, the object's :meth:" -"`~io.IOBase.fileno` method is called if it exists; the method must return an " -"integer, which is returned as the file descriptor value. Sets an exception " -"and returns ``-1`` on failure." +"object is an integer, its value is returned. If not, the " +"object's :meth:`~io.IOBase.fileno` method is called if it exists; the method " +"must return an integer, which is returned as the file descriptor value. " +"Sets an exception and returns ``-1`` on failure." msgstr "" msgid "" "Equivalent to ``p.readline([n])``, this function reads one line from the " -"object *p*. *p* may be a file object or any object with a :meth:`~io.IOBase." -"readline` method. If *n* is ``0``, exactly one line is read, regardless of " -"the length of the line. If *n* is greater than ``0``, no more than *n* " -"bytes will be read from the file; a partial line can be returned. In both " -"cases, an empty string is returned if the end of the file is reached " -"immediately. If *n* is less than ``0``, however, one line is read " -"regardless of length, but :exc:`EOFError` is raised if the end of the file " -"is reached immediately." +"object *p*. *p* may be a file object or any object with " +"a :meth:`~io.IOBase.readline` method. If *n* is ``0``, exactly one line is " +"read, regardless of the length of the line. If *n* is greater than ``0``, " +"no more than *n* bytes will be read from the file; a partial line can be " +"returned. In both cases, an empty string is returned if the end of the file " +"is reached immediately. If *n* is less than ``0``, however, one line is " +"read regardless of length, but :exc:`EOFError` is raised if the end of the " +"file is reached immediately." +msgstr "" + +msgid "" +"Read a line from the C stream *stream* into the buffer *buf*, like the C " +"standard library function :c:func:`!fgets`, but treating all of ``\\n``, " +"``\\r`` and ``\\r\\n`` as line endings (see :term:`universal newlines`). Any " +"``\\r`` or ``\\r\\n`` read from the stream is stored in *buf* as a single " +"``\\n``." +msgstr "" + +msgid "" +"At most ``n - 1`` characters are stored in *buf*; reading stops after a " +"newline has been stored or when the end of the file is reached. The result " +"is always null-terminated. *stream* should be opened in binary mode, so that " +"the C library does not perform its own newline translation." +msgstr "" + +msgid "" +"Return *buf* on success. Return ``NULL`` if no characters could be read, " +"because *stream* is at end of file, a read error occurred, or *n* is less " +"than 2. Like :c:func:`!fgets`, this function does not distinguish between " +"end of file and a read error, and it does not set an exception." +msgstr "" + +msgid "*fobj* exists only for backward compatibility and must be ``NULL``." msgstr "" msgid "" @@ -115,8 +140,9 @@ msgstr "" msgid "" "Open *path* with the mode ``'rb'``. *path* must be a Python :class:`str` " -"object. The behavior of this function may be overridden by :c:func:" -"`PyFile_SetOpenCodeHook` to allow for some preprocessing of the text." +"object. The behavior of this function may be overridden " +"by :c:func:`PyFile_SetOpenCodeHook` to allow for some preprocessing of the " +"text." msgstr "" msgid "This is analogous to :func:`io.open_code` in Python." @@ -129,8 +155,8 @@ msgid "" msgstr "" msgid "" -"Similar to :c:func:`PyFile_OpenCodeObject`, but *path* is a UTF-8 encoded :c:" -"expr:`const char*`." +"Similar to :c:func:`PyFile_OpenCodeObject`, but *path* is a UTF-8 " +"encoded :c:expr:`const char*`." msgstr "" msgid "" @@ -166,16 +192,21 @@ msgid "" msgstr "" msgid "" -"Type of file-like objects used internally at Python startup when :py:mod:" -"`io` is not yet available. Use Python :py:func:`open` or :c:func:" -"`PyFile_FromFd` to create file objects instead." +"Type of file-like objects used internally at Python startup " +"when :py:mod:`io` is not yet available. Use Python :py:func:`open` " +"or :c:func:`PyFile_FromFd` to create file objects instead." msgstr "" -msgid "object" +msgid "" +"The string literal ``\"b\"``, used to open files in binary mode. Exposed for " +"backwards compatibility only." msgstr "" +msgid "object" +msgstr "ਆਬਜੈਕਟ" + msgid "file" -msgstr "" +msgstr "ਫਾਈਲ" msgid "EOFError (built-in exception)" msgstr "" diff --git a/c-api/float.po b/c-api/float.po index 09e19fe..a895218 100644 --- a/c-api/float.po +++ b/c-api/float.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,8 +35,8 @@ msgid "" msgstr "" msgid "" -"Return true if its argument is a :c:type:`PyFloatObject` or a subtype of :c:" -"type:`PyFloatObject`. This function always succeeds." +"Return true if its argument is a :c:type:`PyFloatObject` or a subtype " +"of :c:type:`PyFloatObject`. This function always succeeds." msgstr "" msgid "" @@ -55,11 +55,11 @@ msgstr "" msgid "" "Return a C :c:expr:`double` representation of the contents of *pyfloat*. If " -"*pyfloat* is not a Python floating-point object but has a :meth:`~object." -"__float__` method, this method will first be called to convert *pyfloat* " -"into a float. If :meth:`!__float__` is not defined then it falls back to :" -"meth:`~object.__index__`. This method returns ``-1.0`` upon failure, so one " -"should call :c:func:`PyErr_Occurred` to check for errors." +"*pyfloat* is not a Python floating-point object but has " +"a :meth:`~object.__float__` method, this method will first be called to " +"convert *pyfloat* into a float. If :meth:`!__float__` is not defined then it " +"falls back to :meth:`~object.__index__`. This method returns ``-1.0`` upon " +"failure, so one should call :c:func:`PyErr_Occurred` to check for errors." msgstr "" msgid "Use :meth:`~object.__index__` if available." @@ -77,8 +77,8 @@ msgid "" msgstr "" msgid "" -"Return the maximum representable finite float *DBL_MAX* as C :c:expr:" -"`double`." +"Return the maximum representable finite float *DBL_MAX* as " +"C :c:expr:`double`." msgstr "" msgid "" @@ -125,8 +125,8 @@ msgid "High precision (long double) definition of :data:`~math.pi` constant." msgstr "" msgid "" -"The definition (accurate for a :c:expr:`double` type) of the :data:`math." -"tau` constant." +"The definition (accurate for a :c:expr:`double` type) of " +"the :data:`math.tau` constant." msgstr "" msgid "Return :data:`math.nan` from a function." @@ -178,9 +178,9 @@ msgstr "" msgid "" "The pack and unpack functions provide an efficient platform-independent way " "to store floating-point values as byte strings. The Pack routines produce a " -"bytes string from a C :c:expr:`double`, and the Unpack routines produce a C :" -"c:expr:`double` from such a bytes string. The suffix (2, 4 or 8) specifies " -"the number of bytes in the bytes string:" +"bytes string from a C :c:expr:`double`, and the Unpack routines produce a " +"C :c:expr:`double` from such a bytes string. The suffix (2, 4 or 8) " +"specifies the number of bytes in the bytes string:" msgstr "" msgid "The 2-byte format is the IEEE 754 binary16 half-precision format." @@ -213,12 +213,12 @@ msgid "Pack functions" msgstr "" msgid "" -"The pack routines write 2, 4 or 8 bytes, starting at *p*. *le* is an :c:expr:" -"`int` argument, non-zero if you want the bytes string in little-endian " -"format (exponent last, at ``p+1``, ``p+3``, or ``p+6`` and ``p+7``), zero if " -"you want big-endian format (exponent first, at *p*). Use the :c:macro:`!" -"PY_LITTLE_ENDIAN` constant to select the native endian: it is equal to ``0`` " -"on big endian processor, or ``1`` on little endian processor." +"The pack routines write 2, 4 or 8 bytes, starting at *p*. *le* is " +"an :c:expr:`int` argument, non-zero if you want the bytes string in little-" +"endian format (exponent last, at ``p+1``, ``p+3``, or ``p+6`` and ``p+7``), " +"zero if you want big-endian format (exponent first, at *p*). Use " +"the :c:macro:`PY_LITTLE_ENDIAN` constant to select the native endian: it is " +"equal to ``0`` on big endian processor, or ``1`` on little endian processor." msgstr "" msgid "" @@ -239,18 +239,18 @@ msgid "Unpack functions" msgstr "" msgid "" -"The unpack routines read 2, 4 or 8 bytes, starting at *p*. *le* is an :c:" -"expr:`int` argument, non-zero if the bytes string is in little-endian format " -"(exponent last, at ``p+1``, ``p+3`` or ``p+6`` and ``p+7``), zero if big-" -"endian (exponent first, at *p*). Use the :c:macro:`!PY_LITTLE_ENDIAN` " +"The unpack routines read 2, 4 or 8 bytes, starting at *p*. *le* is " +"an :c:expr:`int` argument, non-zero if the bytes string is in little-endian " +"format (exponent last, at ``p+1``, ``p+3`` or ``p+6`` and ``p+7``), zero if " +"big-endian (exponent first, at *p*). Use the :c:macro:`PY_LITTLE_ENDIAN` " "constant to select the native endian: it is equal to ``0`` on big endian " "processor, or ``1`` on little endian processor." msgstr "" msgid "" -"Return value: The unpacked double. On error, this is ``-1.0`` and :c:func:" -"`PyErr_Occurred` is true (and an exception is set, most likely :exc:" -"`OverflowError`)." +"Return value: The unpacked double. On error, this is ``-1.0`` " +"and :c:func:`PyErr_Occurred` is true (and an exception is set, most " +"likely :exc:`OverflowError`)." msgstr "" msgid "Unpack the IEEE 754 binary16 half-precision format as a C double." @@ -263,7 +263,7 @@ msgid "Unpack the IEEE 754 binary64 double precision format as a C double." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "floating-point" -msgstr "" +msgstr "ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ" diff --git a/c-api/frame.po b/c-api/frame.po index 451f298..2b6a59f 100644 --- a/c-api/frame.po +++ b/c-api/frame.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-09 14:27+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,8 +45,8 @@ msgid "See also :ref:`Reflection `." msgstr "" msgid "" -"The type of frame objects. It is the same object as :py:class:`types." -"FrameType` in the Python layer." +"The type of frame objects. It is the same object " +"as :py:class:`types.FrameType` in the Python layer." msgstr "" msgid "" @@ -63,8 +63,8 @@ msgid "Return non-zero if *obj* is a frame object." msgstr "" msgid "" -"Previously, this function was only available after including ````." +"Previously, this function was only available after including " +"````." msgstr "" msgid "Get the *frame* next outer frame." @@ -132,14 +132,14 @@ msgstr "" msgid "" "Get the *frame*'s :attr:`~frame.f_locals` attribute. If the frame refers to " "an :term:`optimized scope`, this returns a write-through proxy object that " -"allows modifying the locals. In all other cases (classes, modules, :func:" -"`exec`, :func:`eval`) it returns the mapping representing the frame locals " -"directly (as described for :func:`locals`)." +"allows modifying the locals. In all other cases (classes, " +"modules, :func:`exec`, :func:`eval`) it returns the mapping representing the " +"frame locals directly (as described for :func:`locals`)." msgstr "" msgid "" -"As part of :pep:`667`, return an instance of :c:var:" -"`PyFrameLocalsProxy_Type`." +"As part of :pep:`667`, return an instance " +"of :c:var:`PyFrameLocalsProxy_Type`." msgstr "" msgid "Return the line number that *frame* is currently executing." @@ -186,15 +186,15 @@ msgstr "" msgid "" "Prior to Python 3.13, this function would copy the internal \"fast\" array " -"of local variables (which is used by the interpreter) to the :attr:`~frame." -"f_locals` attribute of *f*, allowing changes in local variables to be " -"visible to frame objects." +"of local variables (which is used by the interpreter) to " +"the :attr:`~frame.f_locals` attribute of *f*, allowing changes in local " +"variables to be visible to frame objects." msgstr "" msgid "" -"Prior to Python 3.13, this function was similar to :c:func:" -"`PyFrame_FastToLocals`, but would return ``0`` on success, and ``-1`` with " -"an exception set on failure." +"Prior to Python 3.13, this function was similar " +"to :c:func:`PyFrame_FastToLocals`, but would return ``0`` on success, and " +"``-1`` with an exception set on failure." msgstr "" msgid ":pep:`667`" @@ -234,7 +234,7 @@ msgid "Constant" msgstr "" msgid "Description" -msgstr "" +msgstr "ਵੇਰਵਾ" msgid "" "The frame is internal (For example: inlined) and should be skipped by tools." diff --git a/c-api/function.po b/c-api/function.po index e3f20ee..40b267b 100644 --- a/c-api/function.po +++ b/c-api/function.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +24,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Function Objects" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ" msgid "There are a few functions specific to Python functions." msgstr "" @@ -31,16 +32,22 @@ msgstr "" msgid "The C structure used for functions." msgstr "" +msgid "" +"In the free-threaded build, direct access to mutable fields requires " +"synchronization if another thread may modify the function. " +"See :ref:`freethreading-extensions-howto`." +msgstr "" + msgid "" "This is an instance of :c:type:`PyTypeObject` and represents the Python " -"function type. It is exposed to Python programmers as ``types." -"FunctionType``." +"function type. It is exposed to Python programmers as " +"``types.FunctionType``." msgstr "" msgid "" -"Return true if *o* is a function object (has type :c:data:" -"`PyFunction_Type`). The parameter must not be ``NULL``. This function " -"always succeeds." +"Return true if *o* is a function object (has " +"type :c:data:`PyFunction_Type`). The parameter must not be ``NULL``. This " +"function always succeeds." msgstr "" msgid "" @@ -50,18 +57,19 @@ msgid "" msgstr "" msgid "" -"The function's docstring and name are retrieved from the code object. :attr:" -"`~function.__module__` is retrieved from *globals*. The argument defaults, " -"annotations and closure are set to ``NULL``. :attr:`~function.__qualname__` " -"is set to the same value as the code object's :attr:`~codeobject." -"co_qualname` field." +"The function's docstring and name are retrieved from the code " +"object. :attr:`~function.__module__` is retrieved from *globals*. The " +"argument defaults, annotations and closure are set to " +"``NULL``. :attr:`~function.__qualname__` is set to the same value as the " +"code object's :attr:`~codeobject.co_qualname` field." msgstr "" msgid "" -"As :c:func:`PyFunction_New`, but also allows setting the function object's :" -"attr:`~function.__qualname__` attribute. *qualname* should be a unicode " -"object or ``NULL``; if ``NULL``, the :attr:`!__qualname__` attribute is set " -"to the same value as the code object's :attr:`~codeobject.co_qualname` field." +"As :c:func:`PyFunction_New`, but also allows setting the function " +"object's :attr:`~function.__qualname__` attribute. *qualname* should be a " +"unicode object or ``NULL``; if ``NULL``, the :attr:`!__qualname__` attribute " +"is set to the same value as the code " +"object's :attr:`~codeobject.co_qualname` field." msgstr "" msgid "Return the code object associated with the function object *op*." @@ -81,6 +89,13 @@ msgid "" "be set to any other object by Python code." msgstr "" +msgid "" +"In the free-threaded build, if the attribute may be modified concurrently, " +"convert the borrowed reference to a strong reference " +"with :c:func:`Py_XNewRef` immediately, before calling any other Python API. " +"The same applies to :c:func:`PyFunction_GET_MODULE`." +msgstr "" + msgid "" "Return the argument default values of the function object *op*. This can be " "a tuple of arguments or ``NULL``." @@ -139,8 +154,8 @@ msgstr "" msgid "" "These functions are similar to their ``PyFunction_Get*`` counterparts, but " -"do not do type checking. Passing anything other than an instance of :c:data:" -"`PyFunction_Type` is undefined behavior." +"do not do type checking. Passing anything other than an instance " +"of :c:data:`PyFunction_Type` is undefined behavior." msgstr "" msgid "" @@ -151,10 +166,10 @@ msgid "" msgstr "" msgid "" -"Clear watcher identified by *watcher_id* previously returned from :c:func:" -"`PyFunction_AddWatcher` for the current interpreter. Return ``0`` on " -"success, or ``-1`` and set an exception on error (e.g. if the given " -"*watcher_id* was never registered.)" +"Clear watcher identified by *watcher_id* previously returned " +"from :c:func:`PyFunction_AddWatcher` for the current interpreter. Return " +"``0`` on success, or ``-1`` and set an exception on error (e.g. if the " +"given *watcher_id* was never registered.)" msgstr "" msgid "Enumeration of possible function watcher events:" @@ -175,7 +190,15 @@ msgstr "" msgid "``PyFunction_EVENT_MODIFY_KWDEFAULTS``" msgstr "" -msgid "``PyFunction_PYFUNC_EVENT_MODIFY_QUALNAME``" +msgid "``PyFunction_EVENT_MODIFY_QUALNAME``" +msgstr "" + +msgid "" +"Apply the macro *V* to each suffix of :c:type:`PyFunction_WatchEvent` " +"constants. Currently expands to ``V(CREATE) V(DESTROY) V(MODIFY_CODE) " +"V(MODIFY_DEFAULTS) V(MODIFY_KWDEFAULTS) V(MODIFY_QUALNAME)``. The macro *V* " +"must accept one event name and supply any punctuation needed between " +"expansions." msgstr "" msgid "Type of a function watcher callback function." @@ -183,9 +206,9 @@ msgstr "" msgid "" "If *event* is ``PyFunction_EVENT_CREATE`` or ``PyFunction_EVENT_DESTROY`` " -"then *new_value* will be ``NULL``. Otherwise, *new_value* will hold a :term:" -"`borrowed reference` to the new value that is about to be stored in *func* " -"for the attribute that is being modified." +"then *new_value* will be ``NULL``. Otherwise, *new_value* will hold " +"a :term:`borrowed reference` to the new value that is about to be stored in " +"*func* for the attribute that is being modified." msgstr "" msgid "" @@ -213,8 +236,8 @@ msgstr "" msgid "" "If the callback sets an exception, it must return ``-1``; this exception " -"will be printed as an unraisable exception using :c:func:" -"`PyErr_WriteUnraisable`. Otherwise it should return ``0``." +"will be printed as an unraisable exception " +"using :c:func:`PyErr_WriteUnraisable`. Otherwise it should return ``0``." msgstr "" msgid "" @@ -226,10 +249,10 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "function" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ" msgid "MethodType (in module types)" msgstr "" diff --git a/c-api/gcsupport.po b/c-api/gcsupport.po index c0eee3c..4ace0fc 100644 --- a/c-api/gcsupport.po +++ b/c-api/gcsupport.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -66,8 +66,8 @@ msgid "" msgstr "" msgid "" -"Before fields which refer to other containers are invalidated, :c:func:" -"`PyObject_GC_UnTrack` must be called." +"Before fields which refer to other containers are " +"invalidated, :c:func:`PyObject_GC_UnTrack` must be called." msgstr "" msgid "" @@ -75,35 +75,35 @@ msgid "" msgstr "" msgid "" -"If a type adds the Py_TPFLAGS_HAVE_GC, then it *must* implement at least a :" -"c:member:`~PyTypeObject.tp_traverse` handler or explicitly use one from its " -"subclass or subclasses." +"If a type adds the Py_TPFLAGS_HAVE_GC, then it *must* implement at least " +"a :c:member:`~PyTypeObject.tp_traverse` handler or explicitly use one from " +"its subclass or subclasses." msgstr "" msgid "" "When calling :c:func:`PyType_Ready` or some of the APIs that indirectly call " "it like :c:func:`PyType_FromSpecWithBases` or :c:func:`PyType_FromSpec` the " -"interpreter will automatically populate the :c:member:`~PyTypeObject." -"tp_flags`, :c:member:`~PyTypeObject.tp_traverse` and :c:member:" -"`~PyTypeObject.tp_clear` fields if the type inherits from a class that " -"implements the garbage collector protocol and the child class does *not* " -"include the :c:macro:`Py_TPFLAGS_HAVE_GC` flag." +"interpreter will automatically populate " +"the :c:member:`~PyTypeObject.tp_flags`, :c:member:`~PyTypeObject.tp_traverse` " +"and :c:member:`~PyTypeObject.tp_clear` fields if the type inherits from a " +"class that implements the garbage collector protocol and the child class " +"does *not* include the :c:macro:`Py_TPFLAGS_HAVE_GC` flag." msgstr "" msgid "" -"Analogous to :c:macro:`PyObject_New` but for container objects with the :c:" -"macro:`Py_TPFLAGS_HAVE_GC` flag set." +"Analogous to :c:macro:`PyObject_New` but for container objects with " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag set." msgstr "" msgid "" -"Do not call this directly to allocate memory for an object; call the type's :" -"c:member:`~PyTypeObject.tp_alloc` slot instead." +"Do not call this directly to allocate memory for an object; call the " +"type's :c:member:`~PyTypeObject.tp_alloc` slot instead." msgstr "" msgid "" -"When populating a type's :c:member:`~PyTypeObject.tp_alloc` slot, :c:func:" -"`PyType_GenericAlloc` is preferred over a custom function that simply calls " -"this macro." +"When populating a type's :c:member:`~PyTypeObject.tp_alloc` " +"slot, :c:func:`PyType_GenericAlloc` is preferred over a custom function that " +"simply calls this macro." msgstr "" msgid "" @@ -124,8 +124,8 @@ msgid ":c:member:`~PyTypeObject.tp_alloc`" msgstr "" msgid "" -"Analogous to :c:macro:`PyObject_NewVar` but for container objects with the :" -"c:macro:`Py_TPFLAGS_HAVE_GC` flag set." +"Analogous to :c:macro:`PyObject_NewVar` but for container objects with " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag set." msgstr "" msgid ":c:macro:`PyObject_NewVar`" @@ -144,20 +144,20 @@ msgid "" msgstr "" msgid "" -"Memory allocated by this function must be freed with :c:func:" -"`PyObject_GC_Del` (usually called via the object's :c:member:`~PyTypeObject." -"tp_free` slot)." +"Memory allocated by this function must be freed " +"with :c:func:`PyObject_GC_Del` (usually called via the " +"object's :c:member:`~PyTypeObject.tp_free` slot)." msgstr "" msgid "" "The function is marked as unstable because the final mechanism for reserving " "extra data after an instance is not yet decided. For allocating a variable " -"number of fields, prefer using :c:type:`PyVarObject` and :c:member:" -"`~PyTypeObject.tp_itemsize` instead." +"number of fields, prefer using :c:type:`PyVarObject` " +"and :c:member:`~PyTypeObject.tp_itemsize` instead." msgstr "" msgid "" -"Resize an object allocated by :c:macro:`PyObject_NewVar`. Returns the " +"Resize an object allocated by :c:macro:`PyObject_GC_NewVar`. Returns the " "resized object of type ``TYPE*`` (refers to any C type) or ``NULL`` on " "failure." msgstr "" @@ -202,19 +202,19 @@ msgid "This is analogous to the Python function :func:`gc.is_finalized`." msgstr "" msgid "" -"Releases memory allocated to an object using :c:macro:`PyObject_GC_New` or :" -"c:macro:`PyObject_GC_NewVar`." +"Releases memory allocated to an object using :c:macro:`PyObject_GC_New` " +"or :c:macro:`PyObject_GC_NewVar`." msgstr "" msgid "" -"Do not call this directly to free an object's memory; call the type's :c:" -"member:`~PyTypeObject.tp_free` slot instead." +"Do not call this directly to free an object's memory; call the " +"type's :c:member:`~PyTypeObject.tp_free` slot instead." msgstr "" msgid "" -"Do not use this for memory allocated by :c:macro:`PyObject_New`, :c:macro:" -"`PyObject_NewVar`, or related allocation functions; use :c:func:" -"`PyObject_Free` instead." +"Do not use this for memory allocated " +"by :c:macro:`PyObject_New`, :c:macro:`PyObject_NewVar`, or related " +"allocation functions; use :c:func:`PyObject_Free` instead." msgstr "" msgid ":c:func:`PyObject_Free` is the non-GC equivalent of this function." @@ -232,10 +232,10 @@ msgstr "" msgid "" "Remove the object *op* from the set of container objects tracked by the " "collector. Note that :c:func:`PyObject_GC_Track` can be called again on " -"this object to add it back to the set of tracked objects. The deallocator (:" -"c:member:`~PyTypeObject.tp_dealloc` handler) should call this for the object " -"before any of the fields used by the :c:member:`~PyTypeObject.tp_traverse` " -"handler become invalid." +"this object to add it back to the set of tracked objects. The deallocator " +"(:c:member:`~PyTypeObject.tp_dealloc` handler) should call this for the " +"object before any of the fields used by " +"the :c:member:`~PyTypeObject.tp_traverse` handler become invalid." msgstr "" msgid "" @@ -249,17 +249,17 @@ msgid "" msgstr "" msgid "" -"Type of the visitor function passed to the :c:member:`~PyTypeObject." -"tp_traverse` handler. The function should be called with an object to " -"traverse as *object* and the third parameter to the :c:member:`~PyTypeObject." -"tp_traverse` handler as *arg*. The Python core uses several visitor " -"functions to implement cyclic garbage detection; it's not expected that " -"users will need to write their own visitor functions." +"Type of the visitor function passed to " +"the :c:member:`~PyTypeObject.tp_traverse` handler. The function should be " +"called with an object to traverse as *object* and the third parameter to " +"the :c:member:`~PyTypeObject.tp_traverse` handler as *arg*. The Python core " +"uses several visitor functions to implement cyclic garbage detection; it's " +"not expected that users will need to write their own visitor functions." msgstr "" msgid "" -"The :c:member:`~PyTypeObject.tp_clear` handler must be of the :c:type:" -"`inquiry` type, or ``NULL`` if the object is immutable." +"The :c:member:`~PyTypeObject.tp_clear` handler must be of " +"the :c:type:`inquiry` type, or ``NULL`` if the object is immutable." msgstr "" msgid "" @@ -286,7 +286,7 @@ msgid "" "to *visit* being the contained object and the *arg* value passed to the " "handler. The *visit* function must not be called with a ``NULL`` object " "argument. If *visit* returns a non-zero value, that value should be " -"returned immediately." +"returned immediately. Otherwise, return zero." msgstr "" msgid "" @@ -330,9 +330,9 @@ msgid "" msgstr "" msgid "" -"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in the :c:member:" -"`~PyTypeObject.tp_flags` field, the traverse function must call :c:func:" -"`PyObject_VisitManagedDict` like this::" +"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in " +"the :c:member:`~PyTypeObject.tp_flags` field, the traverse function must " +"call :c:func:`PyObject_VisitManagedDict` like this::" msgstr "" msgid "" @@ -345,10 +345,10 @@ msgstr "" msgid "" "Only the members that the instance *owns* (by having :term:`strong " "references ` to them) must be visited. For instance, if an " -"object supports weak references via the :c:member:`~PyTypeObject." -"tp_weaklist` slot, the pointer supporting the linked list (what " -"*tp_weaklist* points to) must **not** be visited as the instance does not " -"directly own the weak references to itself." +"object supports weak references via " +"the :c:member:`~PyTypeObject.tp_weaklist` slot, the pointer supporting the " +"linked list (what *tp_weaklist* points to) must **not** be visited as the " +"instance does not directly own the weak references to itself." msgstr "" msgid "The traversal function has a limitation:" @@ -373,6 +373,15 @@ msgid "" "functions>` below." msgstr "" +msgid "" +"If an error occurs during traversal, ignore it and return 0. If " +"``tp_traverse`` fails to visit some strong references, garbage reference " +"cycles involving the skipped references will not be reliably broken, but " +"correctness won't be affected. For example, if traversal requires a lock " +"that cannot be acquired promptly, skip the traversal. The garbage collector " +"will visit your object again in a future pass." +msgstr "" + msgid "" "The :c:func:`Py_VISIT` call may be skipped for those members that provably " "cannot participate in reference cycles. In the ``local_traverse`` example " @@ -404,10 +413,10 @@ msgid "" msgstr "" msgid "" -"To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, a :c:" -"func:`Py_VISIT` macro is provided. In order to use this macro, the :c:member:" -"`~PyTypeObject.tp_traverse` implementation must name its arguments exactly " -"*visit* and *arg*:" +"To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, " +"a :c:func:`Py_VISIT` macro is provided. In order to use this macro, " +"the :c:member:`~PyTypeObject.tp_traverse` implementation must name its " +"arguments exactly *visit* and *arg*:" msgstr "" msgid "" @@ -421,7 +430,7 @@ msgstr "" msgid "" "#define Py_VISIT(o) \\\n" -" if (op) { \\\n" +" if (o) { \\\n" " int visit_result = visit(o, arg); \\\n" " if (visit_result != 0) { \\\n" " return visit_result; \\\n" @@ -433,8 +442,8 @@ msgid "Traversal-safe functions" msgstr "" msgid "" -"The following functions and macros are safe to use in a :c:member:" -"`~PyTypeObject.tp_traverse` handler:" +"The following functions and macros are safe to use in " +"a :c:member:`~PyTypeObject.tp_traverse` handler:" msgstr "" msgid "the *visit* function passed to ``tp_traverse``" @@ -447,21 +456,20 @@ msgid ":c:func:`Py_SIZE`" msgstr "" msgid "" -":c:func:`Py_TYPE`: if called from a :c:member:`!tp_traverse` handler, :c:" -"func:`!Py_TYPE`'s result will be valid for the duration of the handler call" +":c:func:`Py_TYPE`: if called from a :c:member:`!tp_traverse` " +"handler, :c:func:`!Py_TYPE`'s result will be valid for the duration of the " +"handler call" msgstr "" msgid ":c:func:`PyObject_VisitManagedDict`" msgstr "" -msgid "" -":c:func:`PyObject_TypeCheck`, :c:func:`PyType_IsSubtype`, :c:func:" -"`PyType_HasFeature`" +msgid ":c:func:`PyObject_TypeCheck`, :c:func:`PyType_IsSubtype`, :c:func:`PyType_HasFeature`" msgstr "" msgid "" -":samp:`Py{}_Check` and :samp:`Py{}_CheckExact` -- for example, :" -"c:func:`PyTuple_Check`" +":samp:`Py{}_Check` and :samp:`Py{}_CheckExact` -- for " +"example, :c:func:`PyTuple_Check`" msgstr "" msgid ":ref:`duringgc-functions`" @@ -471,9 +479,9 @@ msgid "\"DuringGC\" functions" msgstr "" msgid "" -"The following functions should *only* be used in a :c:member:`~PyTypeObject." -"tp_traverse` handler; calling them in other contexts may have unintended " -"consequences." +"The following functions should *only* be used in " +"a :c:member:`~PyTypeObject.tp_traverse` handler; calling them in other " +"contexts may have unintended consequences." msgstr "" msgid "" @@ -492,10 +500,7 @@ msgstr "" msgid "See :ref:`duringgc-functions` for common information." msgstr "" -msgid "" -":c:func:`PyObject_GetTypeData`, :c:func:`PyObject_GetItemData`, :c:func:" -"`PyType_GetModuleState`, :c:func:`PyModule_GetState`, :c:func:" -"`PyModule_GetToken`, :c:func:`PyType_GetBaseByToken`" +msgid ":c:func:`PyObject_GetTypeData`, :c:func:`PyObject_GetItemData`, :c:func:`PyType_GetModuleState`, :c:func:`PyModule_GetState`, :c:func:`PyModule_GetToken`, :c:func:`PyType_GetBaseByToken`" msgstr "" msgid "" @@ -531,8 +536,8 @@ msgstr "" msgid "" "Returns the number of collected + unreachable objects which cannot be " "collected. If the garbage collector is disabled or already collecting, " -"returns ``0`` immediately. Errors during garbage collection are passed to :" -"data:`sys.unraisablehook`. This function does not raise exceptions." +"returns ``0`` immediately. Errors during garbage collection are passed " +"to :data:`sys.unraisablehook`. This function does not raise exceptions." msgstr "" msgid "" @@ -575,9 +580,9 @@ msgid "" msgstr "" msgid "" -"Type of the visitor function to be passed to :c:func:" -"`PyUnstable_GC_VisitObjects`. *arg* is the same as the *arg* passed to " -"``PyUnstable_GC_VisitObjects``. Return ``1`` to continue iteration, return " -"``0`` to stop iteration. Other return values are reserved for now so " -"behavior on returning anything else is undefined." +"Type of the visitor function to be passed " +"to :c:func:`PyUnstable_GC_VisitObjects`. *arg* is the same as the *arg* " +"passed to ``PyUnstable_GC_VisitObjects``. Return ``1`` to continue " +"iteration, return ``0`` to stop iteration. Other return values are reserved " +"for now so behavior on returning anything else is undefined." msgstr "" diff --git a/c-api/gen.po b/c-api/gen.po index 05c126f..3ed306f 100644 --- a/c-api/gen.po +++ b/c-api/gen.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,8 +24,8 @@ msgstr "" msgid "" "Generator objects are what Python uses to implement generator iterators. " "They are normally created by iterating over a function that yields values, " -"rather than explicitly calling :c:func:`PyGen_New` or :c:func:" -"`PyGen_NewWithQualName`." +"rather than explicitly calling :c:func:`PyGen_New` " +"or :c:func:`PyGen_NewWithQualName`." msgstr "" msgid "The C structure used for generator objects." diff --git a/c-api/hash.po b/c-api/hash.po index 905a151..81dd670 100644 --- a/c-api/hash.po +++ b/c-api/hash.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,8 +32,8 @@ msgid "Hash value type: unsigned integer." msgstr "" msgid "" -"A numerical value indicating the algorithm for hashing of :class:`str`, :" -"class:`bytes`, and :class:`memoryview`." +"A numerical value indicating the algorithm for hashing " +"of :class:`str`, :class:`bytes`, and :class:`memoryview`." msgstr "" msgid "The algorithm name is exposed by :data:`sys.hash_info.algorithm`." @@ -41,11 +41,19 @@ msgstr "" msgid "" "Numerical values to compare to :c:macro:`Py_HASH_ALGORITHM` to determine " -"which algorithm is used for hashing. The hash algorithm can be configured " -"via the configure :option:`--with-hash-algorithm` option." +"which algorithm is used for hashing. The built-in hash algorithm can be " +"configured via the configure :option:`--with-hash-algorithm` option." msgstr "" -msgid "Add :c:macro:`!Py_HASH_FNV` and :c:macro:`!Py_HASH_SIPHASH24`." +msgid "" +":c:macro:`!Py_HASH_EXTERNAL` has value ``0`` and indicates a hash " +"implementation supplied by the application embedding Python; " +"see :c:var:`PyHash_Func`." +msgstr "" + +msgid "" +"Add :c:macro:`!Py_HASH_FNV`, :c:macro:`!Py_HASH_SIPHASH24`, and :c:macro:`!" +"Py_HASH_EXTERNAL`." msgstr "" msgid "Add :c:macro:`!Py_HASH_SIPHASH13`." @@ -122,6 +130,16 @@ msgstr "" msgid "This corresponds to the :data:`sys.hash_info.seed_bits` constant." msgstr "" +msgid "" +"When Python is built with :c:macro:`Py_HASH_ALGORITHM` set " +"to :c:macro:`Py_HASH_EXTERNAL`, the application embedding Python must define " +"this variable to supply a hash implementation instead of using one of " +"Python's built-in hash algorithms." +msgstr "" + +msgid "Use one of the built-in hash algorithms instead." +msgstr "" + msgid "Get the hash function definition." msgstr "" @@ -138,14 +156,15 @@ msgstr "" msgid "" "Compute and return the hash value of a buffer of *len* bytes starting at " -"address *ptr*. The hash is guaranteed to match that of :class:`bytes`, :" -"class:`memoryview`, and other built-in objects that implement the :ref:" -"`buffer protocol `." +"address *ptr*. The hash is guaranteed to match that " +"of :class:`bytes`, :class:`memoryview`, and other built-in objects that " +"implement the :ref:`buffer protocol `." msgstr "" msgid "" -"Use this function to implement hashing for immutable objects whose :c:member:" -"`~PyTypeObject.tp_richcompare` function compares to another object's buffer." +"Use this function to implement hashing for immutable objects " +"whose :c:member:`~PyTypeObject.tp_richcompare` function compares to another " +"object's buffer." msgstr "" msgid "*len* must be greater than or equal to ``0``." diff --git a/c-api/import.po b/c-api/import.po index 8127895..842db5d 100644 --- a/c-api/import.po +++ b/c-api/import.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,11 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Importing Modules" -msgstr "" +msgstr "ਮੋਡੀਊਲਾਂ ਨੂੰ ਇੰਪੋਰਟ ਕਰਨਾ" msgid "" -"This is a wrapper around :c:func:`PyImport_Import()` which takes a :c:expr:" -"`const char *` as an argument instead of a :c:expr:`PyObject *`." +"This is a wrapper around :c:func:`PyImport_Import()` which takes " +"a :c:expr:`const char *` as an argument instead of a :c:expr:`PyObject *`." msgstr "" msgid "" @@ -37,14 +37,15 @@ msgstr "" msgid "" "The return value is a new reference to the imported module or top-level " -"package, or ``NULL`` with an exception set on failure. Like for :func:" -"`__import__`, the return value when a submodule of a package was requested " -"is normally the top-level package, unless a non-empty *fromlist* was given." +"package, or ``NULL`` with an exception set on failure. Like " +"for :func:`__import__`, the return value when a submodule of a package was " +"requested is normally the top-level package, unless a non-empty *fromlist* " +"was given." msgstr "" msgid "" -"Failing imports remove incomplete module objects, like with :c:func:" -"`PyImport_ImportModule`." +"Failing imports remove incomplete module objects, like " +"with :c:func:`PyImport_ImportModule`." msgstr "" msgid "" @@ -96,10 +97,10 @@ msgstr "" msgid "" "This function does not load or import the module; if the module wasn't " -"already loaded, you will get an empty module object. Use :c:func:" -"`PyImport_ImportModule` or one of its variants to import a module. Package " -"structures implied by a dotted name for *name* are not created if not " -"already present." +"already loaded, you will get an empty module object. " +"Use :c:func:`PyImport_ImportModule` or one of its variants to import a " +"module. Package structures implied by a dotted name for *name* are not " +"created if not already present." msgstr "" msgid "" @@ -118,11 +119,11 @@ msgid "" "function :func:`compile`, load the module. Return a new reference to the " "module object, or ``NULL`` with an exception set if an error occurred. " "*name* is removed from :data:`sys.modules` in error cases, even if *name* " -"was already in :data:`sys.modules` on entry to :c:func:" -"`PyImport_ExecCodeModule`. Leaving incompletely initialized modules in :" -"data:`sys.modules` is dangerous, as imports of such modules have no way to " -"know that the module object is an unknown (and probably damaged with respect " -"to the module author's intents) state." +"was already in :data:`sys.modules` on entry " +"to :c:func:`PyImport_ExecCodeModule`. Leaving incompletely initialized " +"modules in :data:`sys.modules` is dangerous, as imports of such modules have " +"no way to know that the module object is an unknown (and probably damaged " +"with respect to the module author's intents) state." msgstr "" msgid "" @@ -138,8 +139,8 @@ msgid "" msgstr "" msgid "" -"This function will reload the module if it was already imported. See :c:" -"func:`PyImport_ReloadModule` for the intended way to reload a module." +"This function will reload the module if it was already imported. " +"See :c:func:`PyImport_ReloadModule` for the intended way to reload a module." msgstr "" msgid "" @@ -148,8 +149,8 @@ msgid "" msgstr "" msgid "" -"See also :c:func:`PyImport_ExecCodeModuleEx` and :c:func:" -"`PyImport_ExecCodeModuleWithPathnames`." +"See also :c:func:`PyImport_ExecCodeModuleEx` " +"and :c:func:`PyImport_ExecCodeModuleWithPathnames`." msgstr "" msgid "" @@ -157,7 +158,7 @@ msgid "" "See :class:`~importlib.machinery.ModuleSpec` for alternatives." msgstr "" -msgid "``__cached__`` is no longer set." +msgid "The ``__cached__`` attribute is no longer set." msgstr "" msgid "" @@ -175,11 +176,11 @@ msgid "" msgstr "" msgid "" -"Setting ``__cached__`` is deprecated. See :class:`~importlib.machinery." -"ModuleSpec` for alternatives." +"Setting ``__cached__`` is deprecated. " +"See :class:`~importlib.machinery.ModuleSpec` for alternatives." msgstr "" -msgid "``__cached__`` no longer set." +msgid "The ``__cached__`` attribute no longer set." msgstr "" msgid "" @@ -213,8 +214,8 @@ msgid "" msgstr "" msgid "" -"Return the dictionary used for the module administration (a.k.a. ``sys." -"modules``). Note that this is a per-interpreter variable." +"Return the dictionary used for the module administration (a.k.a. " +"``sys.modules``). Note that this is a per-interpreter variable." msgstr "" msgid "" @@ -229,16 +230,17 @@ msgid "" "dict. If it wasn't yet cached, traverse :data:`sys.path_hooks` until a hook " "is found that can handle the path item. Return ``None`` if no hook could; " "this tells our caller that the :term:`path based finder` could not find a " -"finder for this path item. Cache the result in :data:`sys." -"path_importer_cache`. Return a new reference to the finder object." +"finder for this path item. Cache the result " +"in :data:`sys.path_importer_cache`. Return a new reference to the finder " +"object." msgstr "" msgid "" "Load a frozen module named *name*. Return ``1`` for success, ``0`` if the " "module is not found, and ``-1`` with an exception set if the initialization " -"failed. To access the imported module on a successful load, use :c:func:" -"`PyImport_ImportModule`. (Note the misnomer --- this function would reload " -"the module if it was already imported.)" +"failed. To access the imported module on a successful load, " +"use :c:func:`PyImport_ImportModule`. (Note the misnomer --- this function " +"would reload the module if it was already imported.)" msgstr "" msgid "The ``__file__`` attribute is no longer set on the module." @@ -252,17 +254,17 @@ msgstr "" msgid "" "This is the structure type definition for frozen module descriptors, as " "generated by the :program:`freeze` utility (see :file:`Tools/freeze/` in the " -"Python source distribution). Its definition, found in :file:`Include/import." -"h`, is::" +"Python source distribution). Its definition, found in :file:`Include/" +"import.h`, is:" msgstr "" msgid "" "struct _frozen {\n" -" const char *name;\n" +" const char *name; /* ASCII encoded string */\n" " const unsigned char *code;\n" " int size;\n" -" bool is_package;\n" -"};" +" int is_package;\n" +"};\n" msgstr "" msgid "" @@ -308,12 +310,12 @@ msgstr "" msgid "" "Add a collection of modules to the table of built-in modules. The *newtab* " -"array must end with a sentinel entry which contains ``NULL`` for the :c:" -"member:`~_inittab.name` field; failure to provide the sentinel value can " -"result in a memory fault. Returns ``0`` on success or ``-1`` if insufficient " -"memory could be allocated to extend the internal table. In the event of " -"failure, no modules are added to the internal table. This must be called " -"before :c:func:`Py_Initialize`." +"array must end with a sentinel entry which contains ``NULL`` for " +"the :c:member:`~_inittab.name` field; failure to provide the sentinel value " +"can result in a memory fault. Returns ``0`` on success or ``-1`` if " +"insufficient memory could be allocated to extend the internal table. In the " +"event of failure, no modules are added to the internal table. This must be " +"called before :c:func:`Py_Initialize`." msgstr "" msgid "" @@ -324,8 +326,8 @@ msgstr "" msgid "" "The table of built-in modules used by Python initialization. Do not use this " -"directly; use :c:func:`PyImport_AppendInittab` and :c:func:" -"`PyImport_ExtendInittab` instead." +"directly; use :c:func:`PyImport_AppendInittab` " +"and :c:func:`PyImport_ExtendInittab` instead." msgstr "" msgid "Import the module *mod_name* and get its attribute *attr_name*." @@ -335,10 +337,10 @@ msgid "Names must be Python :class:`str` objects." msgstr "" msgid "" -"Helper function combining :c:func:`PyImport_Import` and :c:func:" -"`PyObject_GetAttr`. For example, it can raise :exc:`ImportError` if the " -"module is not found, and :exc:`AttributeError` if the attribute doesn't " -"exist." +"Helper function combining :c:func:`PyImport_Import` " +"and :c:func:`PyObject_GetAttr`. For example, it can raise :exc:`ImportError` " +"if the module is not found, and :exc:`AttributeError` if the attribute " +"doesn't exist." msgstr "" msgid "" @@ -354,6 +356,9 @@ msgid "" "``NULL`` if none exists. This function always succeeds." msgstr "" +msgid "Sets the current lazy imports mode." +msgstr "" + msgid "This function always returns ``0``." msgstr "" @@ -379,8 +384,8 @@ msgid "Make all imports lazy by default." msgstr "" msgid "" -"This function is a building block that enables embedders to implement the :" -"py:meth:`~importlib.abc.Loader.create_module` step of custom static " +"This function is a building block that enables embedders to implement " +"the :py:meth:`~importlib.abc.Loader.create_module` step of custom static " "extension importers (e.g. of statically-linked extensions)." msgstr "" @@ -388,25 +393,58 @@ msgid "*spec* must be a :class:`~importlib.machinery.ModuleSpec` object." msgstr "" msgid "" -"*initfunc* must be an :ref:`initialization function `, the same as for :c:func:`PyImport_AppendInittab`." +"*initfunc* must be an :ref:`initialization function `, the " +"same as for :c:func:`PyImport_AppendInittab`." msgstr "" msgid "" "On success, create and return a module object. This module will not be " "initialized; call :c:func:`PyModule_Exec` to initialize it. (Custom " -"importers should do this in their :py:meth:`~importlib.abc.Loader." -"exec_module` method.)" +"importers should do this in " +"their :py:meth:`~importlib.abc.Loader.exec_module` method.)" msgstr "" msgid "On error, return NULL with an exception set." msgstr "" +msgid "" +"For modules using :ref:`legacy single-phase initialization `, most of the import process is done in this function, " +"rather than in extra steps that importers typically take " +"after :py:meth:`~importlib.abc.Loader.create_module`. Specifically:" +msgstr "" + +msgid "" +"The module is added to :data:`sys.modules` under the " +"*spec*'s :py:attr:`~importlib.machinery.ModuleSpec.name` as part of " +"initialization." +msgstr "" + +msgid "" +"If a single-phase module was previously imported under the " +"same :py:attr:`~importlib.machinery.ModuleSpec.name` by this function or as " +"a built-in module (for example, one registered " +"with :c:func:`PyImport_AppendInittab`), Python may reuse the previous " +"module's contents instead of calling *initfunc* again." +msgstr "" + +msgid "" +"The module will be fully initialized by *initfunc*. " +"Calling :c:func:`PyModule_Exec` on it will have no effect, though it is " +"still recommended, in case the module later switches to :ref:`multi-phase " +"initialization `." +msgstr "" + +msgid "" +"Also, if the *spec*'s :py:attr:`!name` contains dots, this name is used for " +"prepending a parent package to the new module's :attr:`~module.__name__`." +msgstr "" + msgid "package variable" msgstr "" msgid "__all__" -msgstr "" +msgstr "__all__" msgid "__all__ (package variable)" msgstr "" @@ -415,13 +453,13 @@ msgid "modules (in module sys)" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "__import__" msgstr "" msgid "compile" -msgstr "" +msgstr "compile" msgid "freeze utility" msgstr "" diff --git a/c-api/index.po b/c-api/index.po index 47fc925..d3f6423 100644 --- a/c-api/index.po +++ b/c-api/index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,15 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Python/C API reference manual" -msgstr "" +msgstr "Python/C API ਹਵਾਲਾ ਦਸਤਾਵੇਜ਼" msgid "" "This manual documents the API used by C and C++ programmers who want to " -"write extension modules or embed Python. It is a companion to :ref:" -"`extending-index`, which describes the general principles of extension " -"writing but does not document the API functions in detail." +"write extension modules or embed Python. It is a companion " +"to :ref:`extending-index`, which describes the general principles of " +"extension writing but does not document the API functions in detail." msgstr "" +"ਇਹ ਦਸਤਾਵੇਜ਼ ਉਹ API ਵਰਣਨ ਕਰਦਾ ਹੈ ਜਿਸਦੀ ਵਰਤੋਂ C ਅਤੇ C++ ਪ੍ਰੋਗਰਾਮਰ ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲ ਲਿਖਣ ਜਾਂ " +"Python ਨੂੰ ਐਂਬੈਡ ਕਰਨ ਲਈ ਕਰਦੇ ਹਨ। ਇਹ :ref:`extending-index` ਦਾ ਪੂਰਕ ਹੈ, ਜੋ ਐਕਸਟੈਂਸ਼ਨ " +"ਲਿਖਣ ਦੇ ਆਮ ਸਿਧਾਂਤਾਂ ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ, ਪਰ API ਫੰਕਸ਼ਨਾਂ ਦਾ ਵਿਸਥਾਰ ਨਾਲ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਨਹੀਂ " +"ਕਰਦਾ।" diff --git a/c-api/init.po b/c-api/init.po index 8b06453..5a15e53 100644 --- a/c-api/init.po +++ b/c-api/init.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,25 +23,25 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Initialization, finalization, and threads" -msgstr "" +msgstr "ਸ਼ੁਰੂਆਤੀਕਰਨ, ਸਮਾਪਤੀਕਰਨ ਅਤੇ ਥ੍ਰੇਡ" msgid "This page has been split up into the following:" -msgstr "" +msgstr "ਇਸ ਸਫ਼ੇ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਭਾਗਾਂ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ:" msgid ":ref:`initialization`" -msgstr "" +msgstr ":ref:`initialization`" msgid ":ref:`threads`" -msgstr "" +msgstr ":ref:`threads`" msgid ":ref:`synchronization`" -msgstr "" +msgstr ":ref:`synchronization`" msgid ":ref:`thread-local-storage`" -msgstr "" +msgstr ":ref:`thread-local-storage`" msgid ":ref:`sub-interpreter-support`" -msgstr "" +msgstr ":ref:`sub-interpreter-support`" msgid ":ref:`profiling`" -msgstr "" +msgstr ":ref:`profiling`" diff --git a/c-api/init_config.po b/c-api/init_config.po index 09b2739..6e56480 100644 --- a/c-api/init_config.po +++ b/c-api/init_config.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -111,7 +112,7 @@ msgid "If *config* is ``NULL``, no operation is performed." msgstr "" msgid "Error Handling" -msgstr "" +msgstr "ਗਲਤੀ ਸੰਭਾਲ" msgid "Get the *config* error message." msgstr "" @@ -481,8 +482,8 @@ msgid "``\"legacy_windows_fs_encoding\"``" msgstr "" msgid "" -":c:member:`legacy_windows_fs_encoding `" +":c:member:`legacy_windows_fs_encoding " +"`" msgstr "" msgid "``\"legacy_windows_stdio\"``" @@ -720,21 +721,21 @@ msgid "Visibility:" msgstr "" msgid "" -"Public: Can be retrieved by :c:func:`PyConfig_Get` and set by :c:func:" -"`PyConfig_Set`." +"Public: Can be retrieved by :c:func:`PyConfig_Get` and set " +"by :c:func:`PyConfig_Set`." msgstr "" msgid "" -"Read-only: Can be retrieved by :c:func:`PyConfig_Get`, but cannot be set by :" -"c:func:`PyConfig_Set`." +"Read-only: Can be retrieved by :c:func:`PyConfig_Get`, but cannot be set " +"by :c:func:`PyConfig_Set`." msgstr "" msgid "Runtime Python configuration API" msgstr "" msgid "" -"At runtime, it's possible to get and set configuration options using :c:func:" -"`PyConfig_Get` and :c:func:`PyConfig_Set` functions." +"At runtime, it's possible to get and set configuration options " +"using :c:func:`PyConfig_Get` and :c:func:`PyConfig_Set` functions." msgstr "" msgid "" @@ -798,9 +799,9 @@ msgid "PyConfig C API" msgstr "" msgid "" -"Python can be initialized with :c:func:`Py_InitializeFromConfig` and the :c:" -"type:`PyConfig` structure. It can be preinitialized with :c:func:" -"`Py_PreInitialize` and the :c:type:`PyPreConfig` structure." +"Python can be initialized with :c:func:`Py_InitializeFromConfig` and " +"the :c:type:`PyConfig` structure. It can be preinitialized " +"with :c:func:`Py_PreInitialize` and the :c:type:`PyPreConfig` structure." msgstr "" msgid "There are two kinds of configuration:" @@ -964,7 +965,7 @@ msgid "" msgstr "" msgid "Example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ::" msgid "" "PyStatus alloc(void **ptr, size_t size)\n" @@ -983,7 +984,7 @@ msgid "" " if (PyStatus_Exception(status)) {\n" " Py_ExitStatusException(status);\n" " }\n" -" PyMem_Free(ptr);\n" +" PyMem_RawFree(ptr);\n" " return 0;\n" "}" msgstr "" @@ -1029,8 +1030,8 @@ msgid "``PYMEM_ALLOCATOR_MALLOC`` (``3``): use ``malloc()`` of the C library." msgstr "" msgid "" -"``PYMEM_ALLOCATOR_MALLOC_DEBUG`` (``4``): force usage of ``malloc()`` with :" -"ref:`debug hooks `." +"``PYMEM_ALLOCATOR_MALLOC_DEBUG`` (``4``): force usage of ``malloc()`` " +"with :ref:`debug hooks `." msgstr "" msgid "" @@ -1044,12 +1045,12 @@ msgid "" msgstr "" msgid "" -"``PYMEM_ALLOCATOR_MIMALLOC`` (``6``): use ``mimalloc``, a fast malloc " +"``PYMEM_ALLOCATOR_MIMALLOC`` (``7``): use ``mimalloc``, a fast malloc " "replacement." msgstr "" msgid "" -"``PYMEM_ALLOCATOR_MIMALLOC_DEBUG`` (``7``): use ``mimalloc``, a fast malloc " +"``PYMEM_ALLOCATOR_MIMALLOC_DEBUG`` (``8``): use ``mimalloc``, a fast malloc " "replacement with :ref:`debug hooks `." msgstr "" @@ -1075,8 +1076,8 @@ msgid "Set the LC_CTYPE locale to the user preferred locale." msgstr "" msgid "" -"If equals to ``0``, set :c:member:`~PyPreConfig.coerce_c_locale` and :c:" -"member:`~PyPreConfig.coerce_c_locale_warn` members to ``0``." +"If equals to ``0``, set :c:member:`~PyPreConfig.coerce_c_locale` " +"and :c:member:`~PyPreConfig.coerce_c_locale_warn` members to ``0``." msgstr "" msgid "See the :term:`locale encoding`." @@ -1138,15 +1139,15 @@ msgid "Default: ``0``." msgstr "" msgid "" -"If non-zero, :c:func:`Py_PreInitializeFromArgs` and :c:func:" -"`Py_PreInitializeFromBytesArgs` parse their ``argv`` argument the same way " -"the regular Python parses command line arguments: see :ref:`Command Line " -"Arguments `." +"If non-zero, :c:func:`Py_PreInitializeFromArgs` " +"and :c:func:`Py_PreInitializeFromBytesArgs` parse their ``argv`` argument " +"the same way the regular Python parses command line arguments: " +"see :ref:`Command Line Arguments `." msgstr "" msgid "" -"Use :ref:`environment variables `? See :c:member:`PyConfig." -"use_environment`." +"Use :ref:`environment variables `? " +"See :c:member:`PyConfig.use_environment`." msgstr "" msgid "Default: ``1`` in Python config and ``0`` in isolated config." @@ -1176,8 +1177,8 @@ msgid "Configure the LC_CTYPE locale (:term:`locale encoding`)" msgstr "" msgid "" -"Set the :ref:`Python UTF-8 Mode ` (:c:member:`PyPreConfig." -"utf8_mode`)" +"Set the :ref:`Python UTF-8 Mode ` " +"(:c:member:`PyPreConfig.utf8_mode`)" msgstr "" msgid "" @@ -1195,34 +1196,34 @@ msgid "*preconfig* must not be ``NULL``." msgstr "" msgid "" -"Parse *argv* command line arguments (bytes strings) if :c:member:" -"`~PyPreConfig.parse_argv` of *preconfig* is non-zero." +"Parse *argv* command line arguments (bytes strings) " +"if :c:member:`~PyPreConfig.parse_argv` of *preconfig* is non-zero." msgstr "" msgid "" -"Parse *argv* command line arguments (wide strings) if :c:member:" -"`~PyPreConfig.parse_argv` of *preconfig* is non-zero." +"Parse *argv* command line arguments (wide strings) " +"if :c:member:`~PyPreConfig.parse_argv` of *preconfig* is non-zero." msgstr "" msgid "" -"The caller is responsible to handle exceptions (error or exit) using :c:func:" -"`PyStatus_Exception` and :c:func:`Py_ExitStatusException`." +"The caller is responsible to handle exceptions (error or exit) " +"using :c:func:`PyStatus_Exception` and :c:func:`Py_ExitStatusException`." msgstr "" msgid "" -"For :ref:`Python Configuration ` (:c:func:" -"`PyPreConfig_InitPythonConfig`), if Python is initialized with command line " -"arguments, the command line arguments must also be passed to preinitialize " -"Python, since they have an effect on the pre-configuration like encodings. " -"For example, the :option:`-X utf8 <-X>` command line option enables the :ref:" -"`Python UTF-8 Mode `." +"For :ref:`Python Configuration ` " +"(:c:func:`PyPreConfig_InitPythonConfig`), if Python is initialized with " +"command line arguments, the command line arguments must also be passed to " +"preinitialize Python, since they have an effect on the pre-configuration " +"like encodings. For example, the :option:`-X utf8 <-X>` command line option " +"enables the :ref:`Python UTF-8 Mode `." msgstr "" msgid "" "``PyMem_SetAllocator()`` can be called after :c:func:`Py_PreInitialize` and " "before :c:func:`Py_InitializeFromConfig` to install a custom memory " -"allocator. It can be called before :c:func:`Py_PreInitialize` if :c:member:" -"`PyPreConfig.allocator` is set to ``PYMEM_ALLOCATOR_NOT_SET``." +"allocator. It can be called before :c:func:`Py_PreInitialize` " +"if :c:member:`PyPreConfig.allocator` is set to ``PYMEM_ALLOCATOR_NOT_SET``." msgstr "" msgid "" @@ -1298,8 +1299,8 @@ msgstr "" msgid "" "Set command line arguments (:c:member:`~PyConfig.argv` member of *config*) " -"from the *argv* list of bytes strings. Decode bytes using :c:func:" -"`Py_DecodeLocale`." +"from the *argv* list of bytes strings. Decode bytes " +"using :c:func:`Py_DecodeLocale`." msgstr "" msgid "Set the list of wide strings *list* to *length* and *items*." @@ -1319,15 +1320,16 @@ msgstr "" msgid "" "The :c:func:`PyConfig_Read` function only parses :c:member:`PyConfig.argv` " "arguments once: :c:member:`PyConfig.parse_argv` is set to ``2`` after " -"arguments are parsed. Since Python arguments are stripped from :c:member:" -"`PyConfig.argv`, parsing arguments twice would parse the application options " -"as Python options." +"arguments are parsed. Since Python arguments are stripped " +"from :c:member:`PyConfig.argv`, parsing arguments twice would parse the " +"application options as Python options." msgstr "" msgid "" -"The :c:member:`PyConfig.argv` arguments are now only parsed once, :c:member:" -"`PyConfig.parse_argv` is set to ``2`` after arguments are parsed, and " -"arguments are only parsed if :c:member:`PyConfig.parse_argv` equals ``1``." +"The :c:member:`PyConfig.argv` arguments are now only parsed " +"once, :c:member:`PyConfig.parse_argv` is set to ``2`` after arguments are " +"parsed, and arguments are only parsed if :c:member:`PyConfig.parse_argv` " +"equals ``1``." msgstr "" msgid "" @@ -1341,10 +1343,10 @@ msgstr "" msgid "" "Most ``PyConfig`` methods :ref:`preinitialize Python ` if needed. " -"In that case, the Python preinitialization configuration (:c:type:" -"`PyPreConfig`) is based on the :c:type:`PyConfig`. If configuration fields " -"which are in common with :c:type:`PyPreConfig` are tuned, they must be set " -"before calling a :c:type:`PyConfig` method:" +"In that case, the Python preinitialization configuration " +"(:c:type:`PyPreConfig`) is based on the :c:type:`PyConfig`. If configuration " +"fields which are in common with :c:type:`PyPreConfig` are tuned, they must " +"be set before calling a :c:type:`PyConfig` method:" msgstr "" msgid ":c:member:`PyConfig.dev_mode`" @@ -1362,8 +1364,8 @@ msgstr "" msgid "" "Moreover, if :c:func:`PyConfig_SetArgv` or :c:func:`PyConfig_SetBytesArgv` " "is used, this method must be called before other methods, since the " -"preinitialization configuration depends on command line arguments (if :c:" -"member:`~PyConfig.parse_argv` is non-zero)." +"preinitialization configuration depends on command line arguments " +"(if :c:member:`~PyConfig.parse_argv` is non-zero)." msgstr "" msgid "" @@ -1372,18 +1374,20 @@ msgid "" msgstr "" msgid "" -"Set :data:`sys.argv` command line arguments based on :c:member:`~PyConfig." -"argv`. These parameters are similar to those passed to the program's :c:" -"func:`main` function with the difference that the first entry should refer " -"to the script file to be executed rather than the executable hosting the " -"Python interpreter. If there isn't a script that will be run, the first " -"entry in :c:member:`~PyConfig.argv` can be an empty string." +"Set :data:`sys.argv` command line arguments based " +"on :c:member:`~PyConfig.argv`. These parameters are similar to those passed " +"to the program's :c:func:`main` function with the difference that the first " +"entry should refer to the script file to be executed rather than the " +"executable hosting the Python interpreter. If there isn't a script that " +"will be run, the first entry in :c:member:`~PyConfig.argv` can be an empty " +"string." msgstr "" msgid "" -"Set :c:member:`~PyConfig.parse_argv` to ``1`` to parse :c:member:`~PyConfig." -"argv` the same way the regular Python parses Python command line arguments " -"and then to strip Python arguments from :c:member:`~PyConfig.argv`." +"Set :c:member:`~PyConfig.parse_argv` to ``1`` to " +"parse :c:member:`~PyConfig.argv` the same way the regular Python parses " +"Python command line arguments and then to strip Python arguments " +"from :c:member:`~PyConfig.argv`." msgstr "" msgid "" @@ -1398,8 +1402,8 @@ msgid "See also the :c:member:`~PyConfig.orig_argv` member." msgstr "" msgid "" -"If equals to zero, ``Py_RunMain()`` prepends a potentially unsafe path to :" -"data:`sys.path` at startup:" +"If equals to zero, ``Py_RunMain()`` prepends a potentially unsafe path " +"to :data:`sys.path` at startup:" msgstr "" msgid "" @@ -1418,8 +1422,8 @@ msgid "" msgstr "" msgid "" -"Set to ``1`` by the :option:`-P` command line option and the :envvar:" -"`PYTHONSAFEPATH` environment variable." +"Set to ``1`` by the :option:`-P` command line option and " +"the :envvar:`PYTHONSAFEPATH` environment variable." msgstr "" msgid "Default: ``0`` in Python config, ``1`` in isolated config." @@ -1458,16 +1462,17 @@ msgid "" msgstr "" msgid "" -"Set to ``0`` by the :option:`-u` command line option and the :envvar:" -"`PYTHONUNBUFFERED` environment variable." +"Set to ``0`` by the :option:`-u` command line option and " +"the :envvar:`PYTHONUNBUFFERED` environment variable." msgstr "" msgid "stdin is always opened in buffered mode." msgstr "" msgid "" -"If equals to ``1``, issue a warning when comparing :class:`bytes` or :class:" -"`bytearray` with :class:`str`, or comparing :class:`bytes` with :class:`int`." +"If equals to ``1``, issue a warning when comparing :class:`bytes` " +"or :class:`bytearray` with :class:`str`, or comparing :class:`bytes` " +"with :class:`int`." msgstr "" msgid "" @@ -1479,14 +1484,14 @@ msgid "Incremented by the :option:`-b` command line option." msgstr "" msgid "" -"The :option:`-b` and :option:`!-bb` options will become no-op in 3.17. :c:" -"member:`~PyConfig.bytes_warning` member will be removed in 3.17." +"The :option:`-b` and :option:`!-bb` options will become no-op in " +"3.17. :c:member:`~PyConfig.bytes_warning` member will be removed in 3.17." msgstr "" msgid "" -"If non-zero, emit a :exc:`EncodingWarning` warning when :class:`io." -"TextIOWrapper` uses its default encoding. See :ref:`io-encoding-warning` for " -"details." +"If non-zero, emit a :exc:`EncodingWarning` warning " +"when :class:`io.TextIOWrapper` uses its default encoding. See :ref:`io-" +"encoding-warning` for details." msgstr "" msgid "" @@ -1501,8 +1506,8 @@ msgid "" msgstr "" msgid "" -"Control the validation behavior of hash-based ``.pyc`` files: value of the :" -"option:`--check-hash-based-pycs` command line option." +"Control the validation behavior of hash-based ``.pyc`` files: value of " +"the :option:`--check-hash-based-pycs` command line option." msgstr "" msgid "Valid values:" @@ -1548,8 +1553,8 @@ msgid "If non-zero, enable the :ref:`Python Development Mode `." msgstr "" msgid "" -"Set to ``1`` by the :option:`-X dev <-X>` option and the :envvar:" -"`PYTHONDEVMODE` environment variable." +"Set to ``1`` by the :option:`-X dev <-X>` option and " +"the :envvar:`PYTHONDEVMODE` environment variable." msgstr "" msgid "Dump Python references?" @@ -1581,8 +1586,8 @@ msgid "See also :c:member:`PyConfig.base_exec_prefix`." msgstr "" msgid "" -"The absolute path of the executable binary for the Python interpreter: :data:" -"`sys.executable`." +"The absolute path of the executable binary for the Python " +"interpreter: :data:`sys.executable`." msgstr "" msgid "See also :c:member:`PyConfig.base_executable`." @@ -1595,22 +1600,22 @@ msgid "If non-zero, call :func:`faulthandler.enable` at startup." msgstr "" msgid "" -"Set to ``1`` by :option:`-X faulthandler <-X>` and the :envvar:" -"`PYTHONFAULTHANDLER` environment variable." +"Set to ``1`` by :option:`-X faulthandler <-X>` and " +"the :envvar:`PYTHONFAULTHANDLER` environment variable." msgstr "" msgid "" -":term:`Filesystem encoding `: :func:" -"`sys.getfilesystemencoding`." +":term:`Filesystem encoding `: :func:`sys.getfilesystemencoding`." msgstr "" msgid "On macOS, Android and VxWorks: use ``\"utf-8\"`` by default." msgstr "" msgid "" -"On Windows: use ``\"utf-8\"`` by default, or ``\"mbcs\"`` if :c:member:" -"`~PyPreConfig.legacy_windows_fs_encoding` of :c:type:`PyPreConfig` is non-" -"zero." +"On Windows: use ``\"utf-8\"`` by default, or ``\"mbcs\"`` " +"if :c:member:`~PyPreConfig.legacy_windows_fs_encoding` " +"of :c:type:`PyPreConfig` is non-zero." msgstr "" msgid "Default encoding on other platforms:" @@ -1641,14 +1646,19 @@ msgid "See also the :c:member:`~PyConfig.filesystem_errors` member." msgstr "" msgid "" -":term:`Filesystem error handler `: :" -"func:`sys.getfilesystemencodeerrors`." +"See also :c:func:`PyUnicode_EncodeFSDefault` and :ref:`related functions " +"` for encoding paths at runtime." +msgstr "" + +msgid "" +":term:`Filesystem error handler `: :func:`sys.getfilesystemencodeerrors`." msgstr "" msgid "" -"On Windows: use ``\"surrogatepass\"`` by default, or ``\"replace\"`` if :c:" -"member:`~PyPreConfig.legacy_windows_fs_encoding` of :c:type:`PyPreConfig` is " -"non-zero." +"On Windows: use ``\"surrogatepass\"`` by default, or ``\"replace\"`` " +"if :c:member:`~PyPreConfig.legacy_windows_fs_encoding` " +"of :c:type:`PyPreConfig` is non-zero." msgstr "" msgid "On other platforms: use ``\"surrogateescape\"`` by default." @@ -1712,8 +1722,8 @@ msgid "" msgstr "" msgid "" -"Set by the :option:`-X importtime <-X>` option and the :envvar:" -"`PYTHONPROFILEIMPORTTIME` environment variable." +"Set by the :option:`-X importtime <-X>` option and " +"the :envvar:`PYTHONPROFILEIMPORTTIME` environment variable." msgstr "" msgid "Added support for ``import_time = 2``" @@ -1730,8 +1740,8 @@ msgid "" msgstr "" msgid "" -"Incremented by the :option:`-i` command line option. Set to ``1`` if the :" -"envvar:`PYTHONINSPECT` environment variable is non-empty." +"Incremented by the :option:`-i` command line option. Set to ``1`` if " +"the :envvar:`PYTHONINSPECT` environment variable is non-empty." msgstr "" msgid "Install Python signal handlers?" @@ -1749,10 +1759,11 @@ msgstr "" msgid "" "Configures the :ref:`integer string conversion length limitation " "`. An initial value of ``-1`` means the value will be " -"taken from the command line or environment or otherwise default to 4300 (:" -"data:`sys.int_info.default_max_str_digits`). A value of ``0`` disables the " -"limitation. Values greater than zero but less than 640 (:data:`sys.int_info." -"str_digits_check_threshold`) are unsupported and will produce an error." +"taken from the command line or environment or otherwise default to 4300 " +"(:data:`sys.int_info.default_max_str_digits`). A value of ``0`` disables " +"the limitation. Values greater than zero but less than 640 " +"(:data:`sys.int_info.str_digits_check_threshold`) are unsupported and will " +"produce an error." msgstr "" msgid "" @@ -1761,19 +1772,20 @@ msgid "" msgstr "" msgid "" -"Default: ``-1`` in Python mode. 4300 (:data:`sys.int_info." -"default_max_str_digits`) in isolated mode." +"Default: ``-1`` in Python mode. 4300 " +"(:data:`sys.int_info.default_max_str_digits`) in isolated mode." msgstr "" msgid "" "If the value of :c:member:`~PyConfig.cpu_count` is not ``-1`` then it will " -"override the return values of :func:`os.cpu_count`, :func:`os." -"process_cpu_count`, and :func:`multiprocessing.cpu_count`." +"override the return values " +"of :func:`os.cpu_count`, :func:`os.process_cpu_count`, " +"and :func:`multiprocessing.cpu_count`." msgstr "" msgid "" -"Configured by the :samp:`-X cpu_count={n|default}` command line flag or the :" -"envvar:`PYTHON_CPU_COUNT` environment variable." +"Configured by the :samp:`-X cpu_count={n|default}` command line flag or " +"the :envvar:`PYTHON_CPU_COUNT` environment variable." msgstr "" msgid "Default: ``-1``." @@ -1807,14 +1819,14 @@ msgid "Set to ``1`` by the :option:`-I` command line option." msgstr "" msgid "" -"See also the :ref:`Isolated Configuration ` and :c:" -"member:`PyPreConfig.isolated`." +"See also the :ref:`Isolated Configuration ` " +"and :c:member:`PyPreConfig.isolated`." msgstr "" msgid "" -"If non-zero, use :class:`io.FileIO` instead of :class:`!io." -"_WindowsConsoleIO` for :data:`sys.stdin`, :data:`sys.stdout` and :data:`sys." -"stderr`." +"If non-zero, use :class:`io.FileIO` instead of :class:`!" +"io._WindowsConsoleIO` for :data:`sys.stdin`, :data:`sys.stdout` " +"and :data:`sys.stderr`." msgstr "" msgid "" @@ -1845,9 +1857,9 @@ msgid "Set by the :envvar:`PYTHONPLATLIBDIR` environment variable." msgstr "" msgid "" -"Default: value of the ``PLATLIBDIR`` macro which is set by the :option:" -"`configure --with-platlibdir option <--with-platlibdir>` (default: " -"``\"lib\"``, or ``\"DLLs\"`` on Windows)." +"Default: value of the ``PLATLIBDIR`` macro which is set by " +"the :option:`configure --with-platlibdir option <--with-platlibdir>` " +"(default: ``\"lib\"``, or ``\"DLLs\"`` on Windows)." msgstr "" msgid "" @@ -1858,8 +1870,8 @@ msgid "" msgstr "" msgid "" -"Module search paths (:data:`sys.path`) as a string separated by ``DELIM`` (:" -"data:`os.pathsep`)." +"Module search paths (:data:`sys.path`) as a string separated by ``DELIM`` " +"(:data:`os.pathsep`)." msgstr "" msgid "Set by the :envvar:`PYTHONPATH` environment variable." @@ -1869,10 +1881,10 @@ msgid "Module search paths: :data:`sys.path`." msgstr "" msgid "" -"If :c:member:`~PyConfig.module_search_paths_set` is equal to ``0``, :c:func:" -"`Py_InitializeFromConfig` will replace :c:member:`~PyConfig." -"module_search_paths` and sets :c:member:`~PyConfig.module_search_paths_set` " -"to ``1``." +"If :c:member:`~PyConfig.module_search_paths_set` is equal to " +"``0``, :c:func:`Py_InitializeFromConfig` will " +"replace :c:member:`~PyConfig.module_search_paths` and " +"sets :c:member:`~PyConfig.module_search_paths_set` to ``1``." msgstr "" msgid "" @@ -1893,8 +1905,8 @@ msgid "``2``: Level 1, strip docstrings." msgstr "" msgid "" -"Incremented by the :option:`-O` command line option. Set to the :envvar:" -"`PYTHONOPTIMIZE` environment variable value." +"Incremented by the :option:`-O` command line option. Set to " +"the :envvar:`PYTHONOPTIMIZE` environment variable value." msgstr "" msgid "" @@ -1903,16 +1915,17 @@ msgid "" msgstr "" msgid "" -"If :c:member:`~PyConfig.orig_argv` list is empty and :c:member:`~PyConfig." -"argv` is not a list only containing an empty string, :c:func:`PyConfig_Read` " -"copies :c:member:`~PyConfig.argv` into :c:member:`~PyConfig.orig_argv` " -"before modifying :c:member:`~PyConfig.argv` (if :c:member:`~PyConfig." -"parse_argv` is non-zero)." +"If :c:member:`~PyConfig.orig_argv` list is empty " +"and :c:member:`~PyConfig.argv` is not a list only containing an empty " +"string, :c:func:`PyConfig_Read` copies :c:member:`~PyConfig.argv` " +"into :c:member:`~PyConfig.orig_argv` before " +"modifying :c:member:`~PyConfig.argv` (if :c:member:`~PyConfig.parse_argv` is " +"non-zero)." msgstr "" msgid "" -"See also the :c:member:`~PyConfig.argv` member and the :c:func:" -"`Py_GetArgcArgv` function." +"See also the :c:member:`~PyConfig.argv` member and " +"the :c:func:`Py_GetArgcArgv` function." msgstr "" msgid "Default: empty list." @@ -1928,8 +1941,8 @@ msgid "" msgstr "" msgid "" -"The :c:member:`PyConfig.argv` arguments are now only parsed if :c:member:" -"`PyConfig.parse_argv` equals to ``1``." +"The :c:member:`PyConfig.argv` arguments are now only parsed " +"if :c:member:`PyConfig.parse_argv` equals to ``1``." msgstr "" msgid "" @@ -1938,8 +1951,8 @@ msgid "" msgstr "" msgid "" -"Incremented by the :option:`-d` command line option. Set to the :envvar:" -"`PYTHONDEBUG` environment variable value." +"Incremented by the :option:`-d` command line option. Set to " +"the :envvar:`PYTHONDEBUG` environment variable value." msgstr "" msgid "" @@ -1986,8 +1999,8 @@ msgid "" msgstr "" msgid "" -"Directory where cached ``.pyc`` files are written: :data:`sys." -"pycache_prefix`." +"Directory where cached ``.pyc`` files are " +"written: :data:`sys.pycache_prefix`." msgstr "" msgid "" @@ -2014,8 +2027,9 @@ msgid "Used by :c:func:`Py_RunMain`." msgstr "" msgid "" -"Filename passed on the command line: trailing command line argument without :" -"option:`-c` or :option:`-m`. It is used by the :c:func:`Py_RunMain` function." +"Filename passed on the command line: trailing command line argument " +"without :option:`-c` or :option:`-m`. It is used by the :c:func:`Py_RunMain` " +"function." msgstr "" msgid "" @@ -2069,8 +2083,8 @@ msgid "Set to ``0`` by the :option:`-S` command line option." msgstr "" msgid "" -":data:`sys.flags.no_site ` is set to the inverted value of :c:" -"member:`~PyConfig.site_import`." +":data:`sys.flags.no_site ` is set to the inverted value " +"of :c:member:`~PyConfig.site_import`." msgstr "" msgid "" @@ -2087,8 +2101,8 @@ msgid "Set to ``1`` by the :option:`-x` command line option." msgstr "" msgid "" -"Encoding and encoding errors of :data:`sys.stdin`, :data:`sys.stdout` and :" -"data:`sys.stderr` (but :data:`sys.stderr` always uses " +"Encoding and encoding errors of :data:`sys.stdin`, :data:`sys.stdout` " +"and :data:`sys.stderr` (but :data:`sys.stderr` always uses " "``\"backslashreplace\"`` error handler)." msgstr "" @@ -2129,8 +2143,8 @@ msgid "If non-zero, call :func:`tracemalloc.start` at startup." msgstr "" msgid "" -"Set by :option:`-X tracemalloc=N <-X>` command line option and by the :" -"envvar:`PYTHONTRACEMALLOC` environment variable." +"Set by :option:`-X tracemalloc=N <-X>` command line option and by " +"the :envvar:`PYTHONTRACEMALLOC` environment variable." msgstr "" msgid "Enable the Linux ``perf`` profiler support?" @@ -2145,13 +2159,13 @@ msgid "" msgstr "" msgid "" -"Set to ``1`` by :option:`-X perf <-X>` command-line option and the :envvar:" -"`PYTHONPERFSUPPORT` environment variable." +"Set to ``1`` by :option:`-X perf <-X>` command-line option and " +"the :envvar:`PYTHONPERFSUPPORT` environment variable." msgstr "" msgid "" -"Set to ``2`` by the :option:`-X perf_jit <-X>` command-line option and the :" -"envvar:`PYTHON_PERF_JIT_SUPPORT` environment variable." +"Set to ``2`` by the :option:`-X perf_jit <-X>` command-line option and " +"the :envvar:`PYTHON_PERF_JIT_SUPPORT` environment variable." msgstr "" msgid "See :ref:`perf_profiling` for more information." @@ -2222,14 +2236,14 @@ msgid "" msgstr "" msgid "" -"The :option:`-W` command line options adds its value to :c:member:`~PyConfig." -"warnoptions`, it can be used multiple times." +"The :option:`-W` command line options adds its value " +"to :c:member:`~PyConfig.warnoptions`, it can be used multiple times." msgstr "" msgid "" "The :envvar:`PYTHONWARNINGS` environment variable can also be used to add " -"warning options. Multiple options can be specified, separated by commas (``," -"``)." +"warning options. Multiple options can be specified, separated by commas " +"(``,``)." msgstr "" msgid "" @@ -2238,13 +2252,13 @@ msgid "" msgstr "" msgid "" -"Set to ``0`` by the :option:`-B` command line option and the :envvar:" -"`PYTHONDONTWRITEBYTECODE` environment variable." +"Set to ``0`` by the :option:`-B` command line option and " +"the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable." msgstr "" msgid "" -":data:`sys.dont_write_bytecode` is initialized to the inverted value of :c:" -"member:`~PyConfig.write_bytecode`." +":data:`sys.dont_write_bytecode` is initialized to the inverted value " +"of :c:member:`~PyConfig.write_bytecode`." msgstr "" msgid "Values of the :option:`-X` command line options: :data:`sys._xoptions`." @@ -2261,8 +2275,8 @@ msgstr "" msgid "" "If :c:member:`~PyConfig.parse_argv` is non-zero, :c:member:`~PyConfig.argv` " "arguments are parsed the same way the regular Python parses :ref:`command " -"line arguments `, and Python arguments are stripped from :" -"c:member:`~PyConfig.argv`." +"line arguments `, and Python arguments are stripped " +"from :c:member:`~PyConfig.argv`." msgstr "" msgid "" @@ -2282,11 +2296,12 @@ msgid "" msgstr "" msgid "" -"If :c:func:`PyImport_FrozenModules`, :c:func:`PyImport_AppendInittab` or :c:" -"func:`PyImport_ExtendInittab` are used, they must be set or called after " -"Python preinitialization and before the Python initialization. If Python is " -"initialized multiple times, :c:func:`PyImport_AppendInittab` or :c:func:" -"`PyImport_ExtendInittab` must be called before each Python initialization." +"If :c:func:`PyImport_FrozenModules`, :c:func:`PyImport_AppendInittab` " +"or :c:func:`PyImport_ExtendInittab` are used, they must be set or called " +"after Python preinitialization and before the Python initialization. If " +"Python is initialized multiple times, :c:func:`PyImport_AppendInittab` " +"or :c:func:`PyImport_ExtendInittab` must be called before each Python " +"initialization." msgstr "" msgid "" @@ -2391,9 +2406,10 @@ msgid "Isolated Configuration" msgstr "" msgid "" -":c:func:`PyPreConfig_InitIsolatedConfig` and :c:func:" -"`PyConfig_InitIsolatedConfig` functions create a configuration to isolate " -"Python from the system. For example, to embed Python into an application." +":c:func:`PyPreConfig_InitIsolatedConfig` " +"and :c:func:`PyConfig_InitIsolatedConfig` functions create a configuration " +"to isolate Python from the system. For example, to embed Python into an " +"application." msgstr "" msgid "" @@ -2413,9 +2429,9 @@ msgid "Python Configuration" msgstr "" msgid "" -":c:func:`PyPreConfig_InitPythonConfig` and :c:func:" -"`PyConfig_InitPythonConfig` functions create a configuration to build a " -"customized Python which behaves as the regular Python." +":c:func:`PyPreConfig_InitPythonConfig` " +"and :c:func:`PyConfig_InitPythonConfig` functions create a configuration to " +"build a customized Python which behaves as the regular Python." msgstr "" msgid "" @@ -2425,8 +2441,9 @@ msgstr "" msgid "" "This function enables C locale coercion (:pep:`538`) and :ref:`Python UTF-8 " -"Mode ` (:pep:`540`) depending on the LC_CTYPE locale, :envvar:" -"`PYTHONUTF8` and :envvar:`PYTHONCOERCECLOCALE` environment variables." +"Mode ` (:pep:`540`) depending on the LC_CTYPE " +"locale, :envvar:`PYTHONUTF8` and :envvar:`PYTHONCOERCECLOCALE` environment " +"variables." msgstr "" msgid "Python Path Configuration" @@ -2457,8 +2474,8 @@ msgid "current working directory: to get absolute paths" msgstr "" msgid "" -"``PATH`` environment variable to get the program full path (from :c:member:" -"`PyConfig.program_name`)" +"``PATH`` environment variable to get the program full path " +"(from :c:member:`PyConfig.program_name`)" msgstr "" msgid "``__PYVENV_LAUNCHER__`` environment variable" @@ -2488,9 +2505,7 @@ msgstr "" msgid ":c:member:`PyConfig.executable`" msgstr "" -msgid "" -":c:member:`PyConfig.module_search_paths_set`, :c:member:`PyConfig." -"module_search_paths`" +msgid ":c:member:`PyConfig.module_search_paths_set`, :c:member:`PyConfig.module_search_paths`" msgstr "" msgid ":c:member:`PyConfig.prefix`" @@ -2498,10 +2513,10 @@ msgstr "" msgid "" "If at least one \"output field\" is not set, Python calculates the path " -"configuration to fill unset fields. If :c:member:`~PyConfig." -"module_search_paths_set` is equal to ``0``, :c:member:`~PyConfig." -"module_search_paths` is overridden and :c:member:`~PyConfig." -"module_search_paths_set` is set to ``1``." +"configuration to fill unset fields. " +"If :c:member:`~PyConfig.module_search_paths_set` is equal to " +"``0``, :c:member:`~PyConfig.module_search_paths` is overridden " +"and :c:member:`~PyConfig.module_search_paths_set` is set to ``1``." msgstr "" msgid "" @@ -2520,9 +2535,10 @@ msgid "" msgstr "" msgid "" -"If :c:member:`~PyConfig.base_prefix` or :c:member:`~PyConfig." -"base_exec_prefix` fields are not set, they inherit their value from :c:" -"member:`~PyConfig.prefix` and :c:member:`~PyConfig.exec_prefix` respectively." +"If :c:member:`~PyConfig.base_prefix` " +"or :c:member:`~PyConfig.base_exec_prefix` fields are not set, they inherit " +"their value from :c:member:`~PyConfig.prefix` " +"and :c:member:`~PyConfig.exec_prefix` respectively." msgstr "" msgid ":c:func:`Py_RunMain` and :c:func:`Py_Main` modify :data:`sys.path`:" @@ -2530,8 +2546,8 @@ msgstr "" msgid "" "If :c:member:`~PyConfig.run_filename` is set and is a directory which " -"contains a ``__main__.py`` script, prepend :c:member:`~PyConfig." -"run_filename` to :data:`sys.path`." +"contains a ``__main__.py`` script, " +"prepend :c:member:`~PyConfig.run_filename` to :data:`sys.path`." msgstr "" msgid "If :c:member:`~PyConfig.isolated` is zero:" @@ -2552,10 +2568,10 @@ msgstr "" msgid "" "If :c:member:`~PyConfig.site_import` is non-zero, :data:`sys.path` can be " -"modified by the :mod:`site` module. If :c:member:`~PyConfig." -"user_site_directory` is non-zero and the user's site-package directory " -"exists, the :mod:`site` module appends the user's site-package directory to :" -"data:`sys.path`." +"modified by the :mod:`site` module. " +"If :c:member:`~PyConfig.user_site_directory` is non-zero and the user's site-" +"package directory exists, the :mod:`site` module appends the user's site-" +"package directory to :data:`sys.path`." msgstr "" msgid "The following configuration files are used by the path configuration:" @@ -2599,19 +2615,19 @@ msgid "" msgstr "" msgid "" -"The ``__PYVENV_LAUNCHER__`` environment variable is used to set :c:member:" -"`PyConfig.base_executable`." +"The ``__PYVENV_LAUNCHER__`` environment variable is used to " +"set :c:member:`PyConfig.base_executable`." msgstr "" msgid "" ":c:member:`~PyConfig.prefix`, and :c:member:`~PyConfig.exec_prefix`, are now " -"set to the ``pyvenv.cfg`` directory. This was previously done by :mod:" -"`site`, therefore affected by :option:`-S`." +"set to the ``pyvenv.cfg`` directory. This was previously done " +"by :mod:`site`, therefore affected by :option:`-S`." msgstr "" msgid "" -":c:member:`~PyConfig.user_site_directory` is now set to ``0`` when a ``." -"_pth`` file is present." +":c:member:`~PyConfig.user_site_directory` is now set to ``0`` when a " +"``._pth`` file is present." msgstr "" msgid "Py_GetArgcArgv()" @@ -2661,8 +2677,8 @@ msgid "Install signal handlers;" msgstr "" msgid "" -"Finish :mod:`sys` module initialization (ex: create :data:`sys.stdout` and :" -"data:`sys.path`);" +"Finish :mod:`sys` module initialization (ex: create :data:`sys.stdout` " +"and :data:`sys.path`);" msgstr "" msgid "" diff --git a/c-api/interp-lifecycle.po b/c-api/interp-lifecycle.po deleted file mode 100644 index 9c8bd60..0000000 --- a/c-api/interp-lifecycle.po +++ /dev/null @@ -1,1103 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Interpreter initialization and finalization" -msgstr "" - -msgid "" -"See :ref:`Python Initialization Configuration ` for details on " -"how to configure the interpreter prior to initialization." -msgstr "" - -msgid "Before Python initialization" -msgstr "" - -msgid "" -"In an application embedding Python, the :c:func:`Py_Initialize` function " -"must be called before using any other Python/C API functions; with the " -"exception of a few functions and the :ref:`global configuration variables " -"`." -msgstr "" - -msgid "" -"The following functions can be safely called before Python is initialized:" -msgstr "" - -msgid "Functions that initialize the interpreter:" -msgstr "" - -msgid ":c:func:`Py_Initialize`" -msgstr "" - -msgid ":c:func:`Py_InitializeEx`" -msgstr "" - -msgid ":c:func:`Py_InitializeFromConfig`" -msgstr "" - -msgid ":c:func:`Py_BytesMain`" -msgstr "" - -msgid ":c:func:`Py_Main`" -msgstr "" - -msgid "the runtime pre-initialization functions covered in :ref:`init-config`" -msgstr "" - -msgid "Configuration functions:" -msgstr "" - -msgid ":c:func:`PyImport_AppendInittab`" -msgstr "" - -msgid ":c:func:`PyImport_ExtendInittab`" -msgstr "" - -msgid ":c:func:`!PyInitFrozenExtensions`" -msgstr "" - -msgid ":c:func:`PyMem_SetAllocator`" -msgstr "" - -msgid ":c:func:`PyMem_SetupDebugHooks`" -msgstr "" - -msgid ":c:func:`PyObject_SetArenaAllocator`" -msgstr "" - -msgid ":c:func:`Py_SetProgramName`" -msgstr "" - -msgid ":c:func:`Py_SetPythonHome`" -msgstr "" - -msgid "the configuration functions covered in :ref:`init-config`" -msgstr "" - -msgid "Informative functions:" -msgstr "" - -msgid ":c:func:`Py_IsInitialized`" -msgstr "" - -msgid ":c:func:`PyMem_GetAllocator`" -msgstr "" - -msgid ":c:func:`PyObject_GetArenaAllocator`" -msgstr "" - -msgid ":c:func:`Py_GetBuildInfo`" -msgstr "" - -msgid ":c:func:`Py_GetCompiler`" -msgstr "" - -msgid ":c:func:`Py_GetCopyright`" -msgstr "" - -msgid ":c:func:`Py_GetPlatform`" -msgstr "" - -msgid ":c:func:`Py_GetVersion`" -msgstr "" - -msgid "Utilities:" -msgstr "" - -msgid ":c:func:`Py_DecodeLocale`" -msgstr "" - -msgid "" -"the status reporting and utility functions covered in :ref:`init-config`" -msgstr "" - -msgid "Memory allocators:" -msgstr "" - -msgid ":c:func:`PyMem_RawMalloc`" -msgstr "" - -msgid ":c:func:`PyMem_RawRealloc`" -msgstr "" - -msgid ":c:func:`PyMem_RawCalloc`" -msgstr "" - -msgid ":c:func:`PyMem_RawFree`" -msgstr "" - -msgid "Synchronization:" -msgstr "" - -msgid ":c:func:`PyMutex_Lock`" -msgstr "" - -msgid ":c:func:`PyMutex_Unlock`" -msgstr "" - -msgid "" -"Despite their apparent similarity to some of the functions listed above, the " -"following functions **should not be called** before the interpreter has been " -"initialized: :c:func:`Py_EncodeLocale`, :c:func:`PyEval_InitThreads`, and :c:" -"func:`Py_RunMain`." -msgstr "" - -msgid "Global configuration variables" -msgstr "" - -msgid "" -"Python has variables for the global configuration to control different " -"features and options. By default, these flags are controlled by :ref:" -"`command line options `." -msgstr "" - -msgid "" -"When a flag is set by an option, the value of the flag is the number of " -"times that the option was set. For example, ``-b`` sets :c:data:" -"`Py_BytesWarningFlag` to 1 and ``-bb`` sets :c:data:`Py_BytesWarningFlag` to " -"2." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"bytes_warning` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Issue a warning when comparing :class:`bytes` or :class:`bytearray` with :" -"class:`str` or :class:`bytes` with :class:`int`. Issue an error if greater " -"or equal to ``2``." -msgstr "" - -msgid "Set by the :option:`-b` option." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"parser_debug` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Turn on parser debugging output (for expert only, depending on compilation " -"options)." -msgstr "" - -msgid "" -"Set by the :option:`-d` option and the :envvar:`PYTHONDEBUG` environment " -"variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"write_bytecode` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"If set to non-zero, Python won't try to write ``.pyc`` files on the import " -"of source modules." -msgstr "" - -msgid "" -"Set by the :option:`-B` option and the :envvar:`PYTHONDONTWRITEBYTECODE` " -"environment variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"pathconfig_warnings` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "Private flag used by ``_freeze_module`` and ``frozenmain`` programs." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"hash_seed` and :c:member:`PyConfig.use_hash_seed` should be used instead, " -"see :ref:`Python Initialization Configuration `." -msgstr "" - -msgid "" -"Set to ``1`` if the :envvar:`PYTHONHASHSEED` environment variable is set to " -"a non-empty string." -msgstr "" - -msgid "" -"If the flag is non-zero, read the :envvar:`PYTHONHASHSEED` environment " -"variable to initialize the secret hash seed." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"use_environment` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Ignore all :envvar:`!PYTHON*` environment variables, e.g. :envvar:" -"`PYTHONPATH` and :envvar:`PYTHONHOME`, that might be set." -msgstr "" - -msgid "Set by the :option:`-E` and :option:`-I` options." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"inspect` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"When a script is passed as first argument or the :option:`-c` option is " -"used, enter interactive mode after executing the script or the command, even " -"when :data:`sys.stdin` does not appear to be a terminal." -msgstr "" - -msgid "" -"Set by the :option:`-i` option and the :envvar:`PYTHONINSPECT` environment " -"variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"interactive` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "Set by the :option:`-i` option." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"isolated` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Run Python in isolated mode. In isolated mode :data:`sys.path` contains " -"neither the script's directory nor the user's site-packages directory." -msgstr "" - -msgid "Set by the :option:`-I` option." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` should be used instead, see :ref:`Python " -"Initialization Configuration `." -msgstr "" - -msgid "" -"If the flag is non-zero, use the ``mbcs`` encoding with ``replace`` error " -"handler, instead of the UTF-8 encoding with ``surrogatepass`` error handler, " -"for the :term:`filesystem encoding and error handler`." -msgstr "" - -msgid "" -"Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` environment " -"variable is set to a non-empty string." -msgstr "" - -msgid "See :pep:`529` for more details." -msgstr "" - -msgid "Availability" -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"legacy_windows_stdio` should be used instead, see :ref:`Python " -"Initialization Configuration `." -msgstr "" - -msgid "" -"If the flag is non-zero, use :class:`io.FileIO` instead of :class:`!io." -"_WindowsConsoleIO` for :mod:`sys` standard streams." -msgstr "" - -msgid "" -"Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSSTDIO` environment variable " -"is set to a non-empty string." -msgstr "" - -msgid "See :pep:`528` for more details." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"site_import` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Disable the import of the module :mod:`site` and the site-dependent " -"manipulations of :data:`sys.path` that it entails. Also disable these " -"manipulations if :mod:`site` is explicitly imported later (call :func:`site." -"main` if you want them to be triggered)." -msgstr "" - -msgid "Set by the :option:`-S` option." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"user_site_directory` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Don't add the :data:`user site-packages directory ` to :data:" -"`sys.path`." -msgstr "" - -msgid "" -"Set by the :option:`-s` and :option:`-I` options, and the :envvar:" -"`PYTHONNOUSERSITE` environment variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"optimization_level` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Set by the :option:`-O` option and the :envvar:`PYTHONOPTIMIZE` environment " -"variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"quiet` should be used instead, see :ref:`Python Initialization Configuration " -"`." -msgstr "" - -msgid "" -"Don't display the copyright and version messages even in interactive mode." -msgstr "" - -msgid "Set by the :option:`-q` option." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"buffered_stdio` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "Force the stdout and stderr streams to be unbuffered." -msgstr "" - -msgid "" -"Set by the :option:`-u` option and the :envvar:`PYTHONUNBUFFERED` " -"environment variable." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"verbose` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"Print a message each time a module is initialized, showing the place " -"(filename or built-in module) from which it is loaded. If greater or equal " -"to ``2``, print a message for each file that is checked for when searching " -"for a module. Also provides information on module cleanup at exit." -msgstr "" - -msgid "" -"Set by the :option:`-v` option and the :envvar:`PYTHONVERBOSE` environment " -"variable." -msgstr "" - -msgid "Initializing and finalizing the interpreter" -msgstr "" - -msgid "" -"Initialize the Python interpreter. In an application embedding Python, this " -"should be called before using any other Python/C API functions; see :ref:" -"`Before Python Initialization ` for the few exceptions." -msgstr "" - -msgid "" -"This initializes the table of loaded modules (``sys.modules``), and creates " -"the fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:`sys`. It " -"also initializes the module search path (``sys.path``). It does not set " -"``sys.argv``; use the :ref:`Python Initialization Configuration ` API for that. This is a no-op when called for a second time " -"(without calling :c:func:`Py_FinalizeEx` first). There is no return value; " -"it is a fatal error if the initialization fails." -msgstr "" - -msgid "" -"Use :c:func:`Py_InitializeFromConfig` to customize the :ref:`Python " -"Initialization Configuration `." -msgstr "" - -msgid "" -"On Windows, changes the console mode from ``O_TEXT`` to ``O_BINARY``, which " -"will also affect non-Python uses of the console using the C Runtime." -msgstr "" - -msgid "" -"This function works like :c:func:`Py_Initialize` if *initsigs* is ``1``. If " -"*initsigs* is ``0``, it skips initialization registration of signal " -"handlers, which may be useful when CPython is embedded as part of a larger " -"application." -msgstr "" - -msgid "" -"Initialize Python from *config* configuration, as described in :ref:`init-" -"from-config`." -msgstr "" - -msgid "" -"See the :ref:`init-config` section for details on pre-initializing the " -"interpreter, populating the runtime configuration structure, and querying " -"the returned status structure." -msgstr "" - -msgid "" -"Return true (nonzero) when the Python interpreter has been initialized, " -"false (zero) if not. After :c:func:`Py_FinalizeEx` is called, this returns " -"false until :c:func:`Py_Initialize` is called again." -msgstr "" - -msgid "" -"This function no longer returns true until initialization has fully " -"completed, including import of the :mod:`site` module. Previously it could " -"return true while :c:func:`Py_Initialize` was still running." -msgstr "" - -msgid "" -"Return true (non-zero) if the main Python interpreter is :term:`shutting " -"down `. Return false (zero) otherwise." -msgstr "" - -msgid "" -"Undo all initializations made by :c:func:`Py_Initialize` and subsequent use " -"of Python/C API functions, and destroy all sub-interpreters (see :c:func:" -"`Py_NewInterpreter` below) that were created and not yet destroyed since the " -"last call to :c:func:`Py_Initialize`. This is a no-op when called for a " -"second time (without calling :c:func:`Py_Initialize` again first)." -msgstr "" - -msgid "" -"Since this is the reverse of :c:func:`Py_Initialize`, it should be called in " -"the same thread with the same interpreter active. That means the main " -"thread and the main interpreter. This should never be called while :c:func:" -"`Py_RunMain` is running." -msgstr "" - -msgid "" -"Normally the return value is ``0``. If there were errors during finalization " -"(flushing buffered data), ``-1`` is returned." -msgstr "" - -msgid "" -"Note that Python will do a best effort at freeing all memory allocated by " -"the Python interpreter. Therefore, any C-Extension should make sure to " -"correctly clean up all of the previously allocated PyObjects before using " -"them in subsequent calls to :c:func:`Py_Initialize`. Otherwise it could " -"introduce vulnerabilities and incorrect behavior." -msgstr "" - -msgid "" -"This function is provided for a number of reasons. An embedding application " -"might want to restart Python without having to restart the application " -"itself. An application that has loaded the Python interpreter from a " -"dynamically loadable library (or DLL) might want to free all memory " -"allocated by Python before unloading the DLL. During a hunt for memory leaks " -"in an application a developer might want to free all memory allocated by " -"Python before exiting from the application." -msgstr "" - -msgid "" -"**Bugs and caveats:** The destruction of modules and objects in modules is " -"done in random order; this may cause destructors (:meth:`~object.__del__` " -"methods) to fail when they depend on other objects (even functions) or " -"modules. Dynamically loaded extension modules loaded by Python are not " -"unloaded. Small amounts of memory allocated by the Python interpreter may " -"not be freed (if you find a leak, please report it). Memory tied up in " -"circular references between objects is not freed. Interned strings will all " -"be deallocated regardless of their reference count. Some memory allocated by " -"extension modules may not be freed. Some extensions may not work properly " -"if their initialization routine is called more than once; this can happen if " -"an application calls :c:func:`Py_Initialize` and :c:func:`Py_FinalizeEx` " -"more than once. :c:func:`Py_FinalizeEx` must not be called recursively from " -"within itself. Therefore, it must not be called by any code that may be run " -"as part of the interpreter shutdown process, such as :py:mod:`atexit` " -"handlers, object finalizers, or any code that may be run while flushing the " -"stdout and stderr files." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``cpython." -"_PySys_ClearAuditHooks`` with no arguments." -msgstr "" - -msgid "" -"This is a backwards-compatible version of :c:func:`Py_FinalizeEx` that " -"disregards the return value." -msgstr "" - -msgid "" -"Similar to :c:func:`Py_Main` but *argv* is an array of bytes strings, " -"allowing the calling application to delegate the text decoding step to the " -"CPython runtime." -msgstr "" - -msgid "" -"The main program for the standard interpreter, encapsulating a full " -"initialization/finalization cycle, as well as additional behaviour to " -"implement reading configurations settings from the environment and command " -"line, and then executing ``__main__`` in accordance with :ref:`using-on-" -"cmdline`." -msgstr "" - -msgid "" -"This is made available for programs which wish to support the full CPython " -"command line interface, rather than just embedding a Python runtime in a " -"larger application." -msgstr "" - -msgid "" -"The *argc* and *argv* parameters are similar to those which are passed to a " -"C program's :c:func:`main` function, except that the *argv* entries are " -"first converted to ``wchar_t`` using :c:func:`Py_DecodeLocale`. It is also " -"important to note that the argument list entries may be modified to point to " -"strings other than those passed in (however, the contents of the strings " -"pointed to by the argument list are not modified)." -msgstr "" - -msgid "" -"The return value is ``2`` if the argument list does not represent a valid " -"Python command line, and otherwise the same as :c:func:`Py_RunMain`." -msgstr "" - -msgid "" -"In terms of the CPython runtime configuration APIs documented in the :ref:" -"`runtime configuration ` section (and without accounting for " -"error handling), ``Py_Main`` is approximately equivalent to::" -msgstr "" - -msgid "" -"PyConfig config;\n" -"PyConfig_InitPythonConfig(&config);\n" -"PyConfig_SetArgv(&config, argc, argv);\n" -"Py_InitializeFromConfig(&config);\n" -"PyConfig_Clear(&config);\n" -"\n" -"Py_RunMain();" -msgstr "" - -msgid "" -"In normal usage, an embedding application will call this function *instead* " -"of calling :c:func:`Py_Initialize`, :c:func:`Py_InitializeEx` or :c:func:" -"`Py_InitializeFromConfig` directly, and all settings will be applied as " -"described elsewhere in this documentation. If this function is instead " -"called *after* a preceding runtime initialization API call, then exactly " -"which environmental and command line configuration settings will be updated " -"is version dependent (as it depends on which settings correctly support " -"being modified after they have already been set once when the runtime was " -"first initialized)." -msgstr "" - -msgid "Executes the main module in a fully configured CPython runtime." -msgstr "" - -msgid "" -"Executes the command (:c:member:`PyConfig.run_command`), the script (:c:" -"member:`PyConfig.run_filename`) or the module (:c:member:`PyConfig." -"run_module`) specified on the command line or in the configuration. If none " -"of these values are set, runs the interactive Python prompt (REPL) using the " -"``__main__`` module's global namespace." -msgstr "" - -msgid "" -"If :c:member:`PyConfig.inspect` is not set (the default), the return value " -"will be ``0`` if the interpreter exits normally (that is, without raising an " -"exception), the exit status of an unhandled :exc:`SystemExit`, or ``1`` for " -"any other unhandled exception." -msgstr "" - -msgid "" -"If :c:member:`PyConfig.inspect` is set (such as when the :option:`-i` option " -"is used), rather than returning when the interpreter exits, execution will " -"instead resume in an interactive Python prompt (REPL) using the ``__main__`` " -"module's global namespace. If the interpreter exited with an exception, it " -"is immediately raised in the REPL session. The function return value is then " -"determined by the way the *REPL session* terminates: ``0``, ``1``, or the " -"status of a :exc:`SystemExit`, as specified above." -msgstr "" - -msgid "" -"This function always finalizes the Python interpreter before it returns." -msgstr "" - -msgid "" -"See :ref:`Python Configuration ` for an example of a " -"customized Python that always runs in isolated mode using :c:func:" -"`Py_RunMain`." -msgstr "" - -msgid "" -"Register an :mod:`atexit` callback for the target interpreter *interp*. This " -"is similar to :c:func:`Py_AtExit`, but takes an explicit interpreter and " -"data pointer for the callback." -msgstr "" - -msgid "There must be an :term:`attached thread state` for *interp*." -msgstr "" - -msgid "Cautions regarding interpreter finalization" -msgstr "" - -msgid "" -"In the late stage of :term:`interpreter shutdown`, after attempting to wait " -"for non-daemon threads to exit (though this can be interrupted by :class:" -"`KeyboardInterrupt`) and running the :mod:`atexit` functions, the runtime is " -"marked as finalizing, meaning that :c:func:`Py_IsFinalizing` and :func:`sys." -"is_finalizing` return true. At this point, only the finalization thread " -"(the thread that initiated finalization; this is typically the main thread) " -"is allowed to :term:`attach ` a thread state." -msgstr "" - -msgid "" -"Other threads that attempt to attach during finalization, either explicitly " -"(such as via :c:func:`PyThreadState_Ensure` or :c:macro:" -"`Py_END_ALLOW_THREADS`) or implicitly (such as in-between bytecode " -"instructions), will enter a **permanently blocked state**. Generally, this " -"is harmless, but this can result in deadlocks. For example, a thread may be " -"permanently blocked while holding a lock, meaning that the finalization " -"thread can never acquire that lock." -msgstr "" - -msgid "" -"Prior to CPython 3.13, the thread would exit instead of hanging, which led " -"to other issues (see the warning note at :c:func:`PyThread_exit_thread`)." -msgstr "" - -msgid "" -"Gross? Yes. Starting in Python 3.15, there are a number of C APIs that make " -"it possible to avoid these issues by temporarily preventing finalization:" -msgstr "" - -msgid "" -":pep:`788` explains the design, motivation and rationale for these APIs." -msgstr "" - -msgid "An opaque interpreter guard structure." -msgstr "" - -msgid "" -"By holding an interpreter guard, the caller can ensure that the interpreter " -"will not finalize until the guard is closed (through :c:func:" -"`PyInterpreterGuard_Close`)." -msgstr "" - -msgid "" -"When a guard is held, a thread attempting to finalize the interpreter will " -"block until the guard is closed before starting finalization. After " -"finalization has started, threads are forever unable to acquire guards for " -"that interpreter. This means that if you forget to close an interpreter " -"guard, the process will **permanently hang** during finalization!" -msgstr "" - -msgid "" -"Holding a guard for an interpreter is similar to holding a :term:`strong " -"reference` to a Python object, except finalization does not happen " -"automatically after all guards are released: it requires an explicit :c:func:" -"`Py_EndInterpreter` call." -msgstr "" - -msgid "" -"Create a finalization guard for the current interpreter. This will prevent " -"finalization until the guard is closed." -msgstr "" - -msgid "For example:" -msgstr "" - -msgid "" -"// Temporarily prevent finalization.\n" -"PyInterpreterGuard *guard = PyInterpreterGuard_FromCurrent();\n" -"if (guard == NULL) {\n" -" // Finalization has already started or we're out of memory.\n" -" return NULL;\n" -"}\n" -"\n" -"Py_BEGIN_ALLOW_THREADS;\n" -"// Do some critical processing here. For example, we can safely acquire\n" -"// locks that might be acquired by the finalization thread.\n" -"Py_END_ALLOW_THREADS;\n" -"\n" -"// Now that we're done with our critical processing, the interpreter is\n" -"// allowed to finalize again.\n" -"PyInterpreterGuard_Close(guard);" -msgstr "" - -msgid "" -"On success, this function returns a guard for the current interpreter; on " -"failure, it returns ``NULL`` with an exception set." -msgstr "" - -msgid "" -"This function will fail only if the current interpreter has already started " -"finalizing, or if the process is out of memory." -msgstr "" - -msgid "" -"The guard pointer returned by this function must be eventually closed with :" -"c:func:`PyInterpreterGuard_Close`; failing to do so will result in the " -"Python process infinitely hanging." -msgstr "" - -msgid "The caller must hold an :term:`attached thread state`." -msgstr "" - -msgid "Create a finalization guard for an interpreter through a view." -msgstr "" - -msgid "" -"On success, this function returns a guard to the interpreter represented by " -"*view*. The view is still valid after calling this function. The guard must " -"eventually be closed with :c:func:`PyInterpreterGuard_Close`." -msgstr "" - -msgid "" -"If the interpreter no longer exists, is already finalizing, or out of " -"memory, then this function returns ``NULL`` without setting an exception." -msgstr "" - -msgid "The caller does not need to hold an :term:`attached thread state`." -msgstr "" - -msgid "" -"Close an interpreter guard, allowing the interpreter to start finalization " -"if no other guards remain. If an interpreter guard is never closed, the " -"interpreter will infinitely wait when trying to enter finalization!" -msgstr "" - -msgid "" -"After an interpreter guard is closed, it may not be used in :c:func:" -"`PyThreadState_Ensure`. Doing so will result in undefined behavior." -msgstr "" - -msgid "" -"This function cannot fail, and the caller doesn't need to hold an :term:" -"`attached thread state`." -msgstr "" - -msgid "Interpreter views" -msgstr "" - -msgid "" -"In some cases, it may be necessary to access an interpreter that may have " -"been deleted. This can be done using interpreter views." -msgstr "" - -msgid "An opaque view of an interpreter." -msgstr "" - -msgid "" -"This is a thread-safe way to access an interpreter that may have be " -"finalizing or already destroyed." -msgstr "" - -msgid "Create a view to the current interpreter." -msgstr "" - -msgid "" -"This function is generally meant to be used alongside :c:func:" -"`PyInterpreterGuard_FromView` or :c:func:`PyThreadState_EnsureFromView`." -msgstr "" - -msgid "" -"On success, this function returns a view to the current interpreter; on " -"failure, it returns ``NULL`` with an exception set." -msgstr "" - -msgid "Close an interpreter view." -msgstr "" - -msgid "" -"If an interpreter view is never closed, the view's memory will never be " -"freed, but there are no other consequences. (In contrast, forgetting to " -"close a guard will infinitely hang the main thread during finalization.)" -msgstr "" - -msgid "" -"Create a view for the main interpreter (the first and default interpreter in " -"a Python process; see :c:func:`PyInterpreterState_Main`)." -msgstr "" - -msgid "" -"On success, this function returns a view to the main interpreter; on " -"failure, it returns ``NULL`` without an exception set. Failure indicates " -"that the process is out of memory." -msgstr "" - -msgid "" -"Use this function when an interpreter pointer or view cannot be supplied by " -"the caller, such as when a native threading library does not provide a " -"``void *arg`` parameter that could carry a :c:type:`PyInterpreterGuard` or :" -"c:type:`PyInterpreterView`. In code that supports subinterpreters, prefer :c:" -"func:`PyInterpreterView_FromCurrent` so the guard tracks the calling " -"interpreter rather than the main one." -msgstr "" - -msgid "Process-wide parameters" -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"program_name` should be used instead, see :ref:`Python Initialization " -"Configuration `." -msgstr "" - -msgid "" -"This function should be called before :c:func:`Py_Initialize` is called for " -"the first time, if it is called at all. It tells the interpreter the value " -"of the ``argv[0]`` argument to the :c:func:`main` function of the program " -"(converted to wide characters). This is used by some other functions below " -"to find the Python run-time libraries relative to the interpreter " -"executable. The default value is ``'python'``. The argument should point " -"to a zero-terminated wide character string in static storage whose contents " -"will not change for the duration of the program's execution. No code in the " -"Python interpreter will change the contents of this storage." -msgstr "" - -msgid "" -"Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:expr:" -"`wchar_t*` string." -msgstr "" - -msgid "" -"Return the version of this Python interpreter. This is a string that looks " -"something like ::" -msgstr "" - -msgid "\"3.0a5+ (py3k:63103M, May 12 2008, 00:53:55) \\n[GCC 4.2.3]\"" -msgstr "" - -msgid "" -"The first word (up to the first space character) is the current Python " -"version; the first characters are the major and minor version separated by a " -"period. The returned string points into static storage; the caller should " -"not modify its value. The value is available to Python code as :data:`sys." -"version`." -msgstr "" - -msgid "See also the :c:var:`Py_Version` constant." -msgstr "" - -msgid "" -"Return the platform identifier for the current platform. On Unix, this is " -"formed from the \"official\" name of the operating system, converted to " -"lower case, followed by the major revision number; e.g., for Solaris 2.x, " -"which is also known as SunOS 5.x, the value is ``'sunos5'``. On macOS, it " -"is ``'darwin'``. On Windows, it is ``'win'``. The returned string points " -"into static storage; the caller should not modify its value. The value is " -"available to Python code as ``sys.platform``." -msgstr "" - -msgid "" -"Return the official copyright string for the current Python version, for " -"example" -msgstr "" - -msgid "``'Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam'``" -msgstr "" - -msgid "" -"The returned string points into static storage; the caller should not modify " -"its value. The value is available to Python code as ``sys.copyright``." -msgstr "" - -msgid "" -"Return an indication of the compiler used to build the current Python " -"version, in square brackets, for example::" -msgstr "" - -msgid "\"[GCC 2.7.2.2]\"" -msgstr "" - -msgid "" -"The returned string points into static storage; the caller should not modify " -"its value. The value is available to Python code as part of the variable " -"``sys.version``." -msgstr "" - -msgid "" -"Return information about the sequence number and build date and time of the " -"current Python interpreter instance, for example ::" -msgstr "" - -msgid "\"#67, Aug 1 1997, 22:34:28\"" -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"argv`, :c:member:`PyConfig.parse_argv` and :c:member:`PyConfig.safe_path` " -"should be used instead, see :ref:`Python Initialization Configuration `." -msgstr "" - -msgid "" -"Set :data:`sys.argv` based on *argc* and *argv*. These parameters are " -"similar to those passed to the program's :c:func:`main` function with the " -"difference that the first entry should refer to the script file to be " -"executed rather than the executable hosting the Python interpreter. If " -"there isn't a script that will be run, the first entry in *argv* can be an " -"empty string. If this function fails to initialize :data:`sys.argv`, a " -"fatal condition is signalled using :c:func:`Py_FatalError`." -msgstr "" - -msgid "" -"If *updatepath* is zero, this is all the function does. If *updatepath* is " -"non-zero, the function also modifies :data:`sys.path` according to the " -"following algorithm:" -msgstr "" - -msgid "" -"If the name of an existing script is passed in ``argv[0]``, the absolute " -"path of the directory where the script is located is prepended to :data:`sys." -"path`." -msgstr "" - -msgid "" -"Otherwise (that is, if *argc* is ``0`` or ``argv[0]`` doesn't point to an " -"existing file name), an empty string is prepended to :data:`sys.path`, which " -"is the same as prepending the current working directory (``\".\"``)." -msgstr "" - -msgid "" -"See also :c:member:`PyConfig.orig_argv` and :c:member:`PyConfig.argv` " -"members of the :ref:`Python Initialization Configuration `." -msgstr "" - -msgid "" -"It is recommended that applications embedding the Python interpreter for " -"purposes other than executing a single script pass ``0`` as *updatepath*, " -"and update :data:`sys.path` themselves if desired. See :cve:`2008-5983`." -msgstr "" - -msgid "" -"On versions before 3.1.3, you can achieve the same effect by manually " -"popping the first :data:`sys.path` element after having called :c:func:" -"`PySys_SetArgv`, for example using::" -msgstr "" - -msgid "PyRun_SimpleString(\"import sys; sys.path.pop(0)\\n\");" -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"argv` and :c:member:`PyConfig.parse_argv` should be used instead, see :ref:" -"`Python Initialization Configuration `." -msgstr "" - -msgid "" -"This function works like :c:func:`PySys_SetArgvEx` with *updatepath* set to " -"``1`` unless the :program:`python` interpreter was started with the :option:" -"`-I`." -msgstr "" - -msgid "The *updatepath* value depends on :option:`-I`." -msgstr "" - -msgid "" -"This API is kept for backward compatibility: setting :c:member:`PyConfig." -"home` should be used instead, see :ref:`Python Initialization Configuration " -"`." -msgstr "" - -msgid "" -"Set the default \"home\" directory, that is, the location of the standard " -"Python libraries. See :envvar:`PYTHONHOME` for the meaning of the argument " -"string." -msgstr "" - -msgid "" -"The argument should point to a zero-terminated character string in static " -"storage whose contents will not change for the duration of the program's " -"execution. No code in the Python interpreter will change the contents of " -"this storage." -msgstr "" - -msgid "PyEval_InitThreads()" -msgstr "" - -msgid "modules (in module sys)" -msgstr "" - -msgid "path (in module sys)" -msgstr "" - -msgid "module" -msgstr "" - -msgid "builtins" -msgstr "" - -msgid "__main__" -msgstr "" - -msgid "sys" -msgstr "" - -msgid "search" -msgstr "" - -msgid "path" -msgstr "" - -msgid "Py_FinalizeEx (C function)" -msgstr "" - -msgid "Py_Initialize()" -msgstr "" - -msgid "main()" -msgstr "" - -msgid "version (in module sys)" -msgstr "" - -msgid "platform (in module sys)" -msgstr "" - -msgid "copyright (in module sys)" -msgstr "" - -msgid "Py_FatalError()" -msgstr "" - -msgid "argv (in module sys)" -msgstr "" diff --git a/c-api/intro.po b/c-api/intro.po index c5f4da1..2d88a59 100644 --- a/c-api/intro.po +++ b/c-api/intro.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +24,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Introduction" -msgstr "" +msgstr "ਜਾਣ-ਪਛਾਣ" msgid "" "The Application Programmer's Interface to Python gives C and C++ programmers " @@ -33,8 +34,8 @@ msgid "" "API. The first reason is to write *extension modules* for specific purposes; " "these are C modules that extend the Python interpreter. This is probably " "the most common use. The second reason is to use Python as a component in a " -"larger application; this technique is generally referred to as :dfn:" -"`embedding` Python in an application." +"larger application; this technique is generally referred to " +"as :dfn:`embedding` Python in an application." msgstr "" msgid "" @@ -90,8 +91,8 @@ msgstr "" msgid "" "This implies inclusion of the following standard headers: ````, " -"````, ````, ````, ```` and ```` (if available)." +"````, ````, ````, ```` and " +"```` (if available)." msgstr "" msgid "" @@ -122,22 +123,22 @@ msgstr "" msgid "" "The header files are typically installed with Python. On Unix, these are " -"located in the directories :file:`{prefix}/include/pythonversion/` and :file:" -"`{exec_prefix}/include/pythonversion/`, where :option:`prefix <--prefix>` " -"and :option:`exec_prefix <--exec-prefix>` are defined by the corresponding " -"parameters to Python's :program:`configure` script and *version* is ``'%d." -"%d' % sys.version_info[:2]``. On Windows, the headers are installed in :" -"file:`{prefix}/include`, where ``prefix`` is the installation directory " -"specified to the installer." +"located in the directories :file:`{prefix}/include/pythonversion/` " +"and :file:`{exec_prefix}/include/pythonversion/`, where :option:`prefix <--" +"prefix>` and :option:`exec_prefix <--exec-prefix>` are defined by the " +"corresponding parameters to Python's :program:`configure` script and " +"*version* is ``'%d.%d' % sys.version_info[:2]``. On Windows, the headers " +"are installed in :file:`{prefix}/include`, where ``prefix`` is the " +"installation directory specified to the installer." msgstr "" msgid "" "To include the headers, place both directories (if different) on your " "compiler's search path for includes. Do *not* place the parent directories " "on the search path and then use ``#include ``; this will " -"break on multi-platform builds since the platform independent headers under :" -"option:`prefix <--prefix>` include the platform specific headers from :" -"option:`exec_prefix <--exec-prefix>`." +"break on multi-platform builds since the platform independent headers " +"under :option:`prefix <--prefix>` include the platform specific headers " +"from :option:`exec_prefix <--exec-prefix>`." msgstr "" msgid "" @@ -183,8 +184,8 @@ msgid "```` (if present)" msgstr "" msgid "" -"The following are included for backwards compatibility, unless using :ref:" -"`Limited API ` 3.13 or newer:" +"The following are included for backwards compatibility, unless " +"using :ref:`Limited API ` 3.13 or newer:" msgstr "" msgid "````" @@ -194,8 +195,8 @@ msgid "```` (on POSIX)" msgstr "" msgid "" -"The following are included for backwards compatibility, unless using :ref:" -"`Limited API ` 3.11 or newer:" +"The following are included for backwards compatibility, unless " +"using :ref:`Limited API ` 3.11 or newer:" msgstr "" msgid "````" @@ -212,9 +213,10 @@ msgstr "" msgid "" "Several useful macros are defined in the Python header files. Many are " -"defined closer to where they are useful (for example, :c:macro:" -"`Py_RETURN_NONE`, :c:macro:`PyMODINIT_FUNC`). Others of a more general " -"utility are defined here. This is not necessarily a complete listing." +"defined closer to where they are useful (for " +"example, :c:macro:`Py_RETURN_NONE`, :c:macro:`PyMODINIT_FUNC`). Others of a " +"more general utility are defined here. This is not necessarily a complete " +"listing." msgstr "" msgid "" @@ -241,7 +243,7 @@ msgid "" msgstr "" msgid "Example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ::" msgid "" "PyDoc_STRVAR(pop_doc, \"Remove and return the rightmost element.\");\n" @@ -275,7 +277,7 @@ msgid "" msgstr "" msgid "For example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "PyDoc_VAR(python_doc) = PyDoc_STR(\n" @@ -369,6 +371,11 @@ msgid "" "255]. This macro returns ``c`` cast to an ``unsigned char``." msgstr "" +msgid "" +"Constants describing the byte order of the platform that Python was built " +"for. Exactly one of them is ``1`` and the other is ``0``." +msgstr "" + msgid "Assertion utilities" msgstr "" @@ -386,8 +393,8 @@ msgid "" msgstr "" msgid "" -"In debug mode, and on unsupported compilers, the macro expands to a call to :" -"c:func:`Py_FatalError`." +"In debug mode, and on unsupported compilers, the macro expands to a call " +"to :c:func:`Py_FatalError`." msgstr "" msgid "" @@ -409,9 +416,9 @@ msgid "" msgstr "" msgid "" -"On release builds of Python, this is roughly equivalent to :samp:" -"`(({smaller}) {value})` (in C++, :samp:`static_cast<{smaller}>({value})` " -"will be used instead)." +"On release builds of Python, this is roughly equivalent " +"to :samp:`(({smaller}) {value})` (in C++, :samp:`static_cast<{smaller}" +">({value})` will be used instead)." msgstr "" msgid "" @@ -519,9 +526,9 @@ msgid "" msgstr "" msgid "" -"If Python is :ref:`built in debug mode ` (if the :c:macro:" -"`Py_DEBUG` macro is defined), the :c:macro:`Py_ALWAYS_INLINE` macro does " -"nothing." +"If Python is :ref:`built in debug mode ` (if " +"the :c:macro:`Py_DEBUG` macro is defined), the :c:macro:`Py_ALWAYS_INLINE` " +"macro does nothing." msgstr "" msgid "It must be specified before the function return type. Usage::" @@ -532,8 +539,8 @@ msgstr "" msgid "" "Disable inlining on a function. For example, it reduces the C stack " -"consumption: useful on LTO+PGO builds which heavily inline code (see :issue:" -"`33720`)." +"consumption: useful on LTO+PGO builds which heavily inline code " +"(see :issue:`33720`)." msgstr "" msgid "" @@ -646,9 +653,9 @@ msgid "" msgstr "" msgid "" -"Aliases for the values :c:macro:`!LLONG_MIN`, :c:macro:`!LLONG_MAX`, :c:" -"macro:`!ULLONG_MAX`, and :c:macro:`!SIZE_MAX`, respectively. Use these " -"standard names instead." +"Aliases for the values :c:macro:`!LLONG_MIN`, :c:macro:`!" +"LLONG_MAX`, :c:macro:`!ULLONG_MAX`, and :c:macro:`!SIZE_MAX`, respectively. " +"Use these standard names instead." msgstr "" msgid "" @@ -698,19 +705,19 @@ msgid "" "are treated the same way by the Python language in most situations (e.g., " "assignments, scope rules, and argument passing), it is only fitting that " "they should be represented by a single C type. Almost all Python objects " -"live on the heap: you never declare an automatic or static variable of type :" -"c:type:`PyObject`, only pointer variables of type :c:expr:`PyObject*` can " -"be declared. The sole exception are the type objects; since these must " +"live on the heap: you never declare an automatic or static variable of " +"type :c:type:`PyObject`, only pointer variables of type :c:expr:`PyObject*` " +"can be declared. The sole exception are the type objects; since these must " "never be deallocated, they are typically static :c:type:`PyTypeObject` " "objects." msgstr "" msgid "" -"All Python objects (even Python integers) have a :dfn:`type` and a :dfn:" -"`reference count`. An object's type determines what kind of object it is (e." -"g., an integer, a list, or a user-defined function; there are many more as " -"explained in :ref:`types`). For each of the well-known types there is a " -"macro to check whether an object is of that type; for instance, " +"All Python objects (even Python integers) have a :dfn:`type` and " +"a :dfn:`reference count`. An object's type determines what kind of object " +"it is (e.g., an integer, a list, or a user-defined function; there are many " +"more as explained in :ref:`types`). For each of the well-known types there " +"is a macro to check whether an object is of that type; for instance, " "``PyList_Check(a)`` is true if (and only if) the object pointed to by *a* is " "a Python list." msgstr "" @@ -736,18 +743,18 @@ msgid "" "Reference counts are always manipulated explicitly. The normal way is to " "use the macro :c:func:`Py_INCREF` to take a new reference to an object (i.e. " "increment its reference count by one), and :c:func:`Py_DECREF` to release " -"that reference (i.e. decrement the reference count by one). The :c:func:" -"`Py_DECREF` macro is considerably more complex than the incref one, since it " -"must check whether the reference count becomes zero and then cause the " -"object's deallocator to be called. The deallocator is a function pointer " -"contained in the object's type structure. The type-specific deallocator " -"takes care of releasing references for other objects contained in the object " -"if this is a compound object type, such as a list, as well as performing any " -"additional finalization that's needed. There's no chance that the reference " -"count can overflow; at least as many bits are used to hold the reference " -"count as there are distinct memory locations in virtual memory (assuming " -"``sizeof(Py_ssize_t) >= sizeof(void*)``). Thus, the reference count " -"increment is a simple operation." +"that reference (i.e. decrement the reference count by one). " +"The :c:func:`Py_DECREF` macro is considerably more complex than the incref " +"one, since it must check whether the reference count becomes zero and then " +"cause the object's deallocator to be called. The deallocator is a function " +"pointer contained in the object's type structure. The type-specific " +"deallocator takes care of releasing references for other objects contained " +"in the object if this is a compound object type, such as a list, as well as " +"performing any additional finalization that's needed. There's no chance " +"that the reference count can overflow; at least as many bits are used to " +"hold the reference count as there are distinct memory locations in virtual " +"memory (assuming ``sizeof(Py_ssize_t) >= sizeof(void*)``). Thus, the " +"reference count increment is a simple operation." msgstr "" msgid "" @@ -773,8 +780,8 @@ msgid "" "conceivably remove the object from the list, releasing that reference, and " "possibly deallocating it. The real danger is that innocent-looking " "operations may invoke arbitrary Python code which could do this; there is a " -"code path which allows control to flow back to the user from a :c:func:" -"`Py_DECREF`, so almost any operation is potentially dangerous." +"code path which allows control to flow back to the user from " +"a :c:func:`Py_DECREF`, so almost any operation is potentially dangerous." msgstr "" msgid "" @@ -796,13 +803,13 @@ msgid "" "shared). \"Owning a reference\" means being responsible for calling " "Py_DECREF on it when the reference is no longer needed. Ownership can also " "be transferred, meaning that the code that receives ownership of the " -"reference then becomes responsible for eventually releasing it by calling :c:" -"func:`Py_DECREF` or :c:func:`Py_XDECREF` when it's no longer needed---or " -"passing on this responsibility (usually to its caller). When a function " -"passes ownership of a reference on to its caller, the caller is said to " -"receive a *new* reference. When no ownership is transferred, the caller is " -"said to *borrow* the reference. Nothing needs to be done for a :term:" -"`borrowed reference`." +"reference then becomes responsible for eventually releasing it by " +"calling :c:func:`Py_DECREF` or :c:func:`Py_XDECREF` when it's no longer " +"needed---or passing on this responsibility (usually to its caller). When a " +"function passes ownership of a reference on to its caller, the caller is " +"said to receive a *new* reference. When no ownership is transferred, the " +"caller is said to *borrow* the reference. Nothing needs to be done for " +"a :term:`borrowed reference`." msgstr "" msgid "" @@ -819,14 +826,14 @@ msgid "" msgstr "" msgid "" -"Few functions steal references; the two notable exceptions are :c:func:" -"`PyList_SetItem` and :c:func:`PyTuple_SetItem`, which steal a reference to " -"the item (but not to the tuple or list into which the item is put!). These " -"functions were designed to steal a reference because of a common idiom for " -"populating a tuple or list with newly created objects; for example, the code " -"to create the tuple ``(1, 2, \"three\")`` could look like this (forgetting " -"about error handling for the moment; a better way to code this is shown " -"below)::" +"Few functions steal references; the two notable exceptions " +"are :c:func:`PyList_SetItem` and :c:func:`PyTuple_SetItem`, which steal a " +"reference to the item (but not to the tuple or list into which the item is " +"put!). These functions were designed to steal a reference because of a " +"common idiom for populating a tuple or list with newly created objects; for " +"example, the code to create the tuple ``(1, 2, \"three\")`` could look like " +"this (forgetting about error handling for the moment; a better way to code " +"this is shown below)::" msgstr "" msgid "" @@ -848,21 +855,22 @@ msgstr "" msgid "" "Incidentally, :c:func:`PyTuple_SetItem` is the *only* way to set tuple " "items; :c:func:`PySequence_SetItem` and :c:func:`PyObject_SetItem` refuse to " -"do this since tuples are an immutable data type. You should only use :c:" -"func:`PyTuple_SetItem` for tuples that you are creating yourself." +"do this since tuples are an immutable data type. You should only " +"use :c:func:`PyTuple_SetItem` for tuples that you are creating yourself." msgstr "" msgid "" -"Equivalent code for populating a list can be written using :c:func:" -"`PyList_New` and :c:func:`PyList_SetItem`." +"Equivalent code for populating a list can be written " +"using :c:func:`PyList_New` and :c:func:`PyList_SetItem`." msgstr "" msgid "" "However, in practice, you will rarely use these ways of creating and " -"populating a tuple or list. There's a generic function, :c:func:" -"`Py_BuildValue`, that can create most common objects from C values, directed " -"by a :dfn:`format string`. For example, the above two blocks of code could " -"be replaced by the following (which also takes care of the error checking)::" +"populating a tuple or list. There's a generic " +"function, :c:func:`Py_BuildValue`, that can create most common objects from " +"C values, directed by a :dfn:`format string`. For example, the above two " +"blocks of code could be replaced by the following (which also takes care of " +"the error checking)::" msgstr "" msgid "" @@ -992,24 +1000,38 @@ msgstr "" msgid "" "There are few other data types that play a significant role in the Python/C " -"API; most are simple C types such as :c:expr:`int`, :c:expr:`long`, :c:expr:" -"`double` and :c:expr:`char*`. A few structure types are used to describe " -"static tables used to list the functions exported by a module or the data " -"attributes of a new object type, and another is used to describe the value " -"of a complex number. These will be discussed together with the functions " -"that use them." +"API; most are simple C types such " +"as :c:expr:`int`, :c:expr:`long`, :c:expr:`double` and :c:expr:`char*`. A " +"few structure types are used to describe static tables used to list the " +"functions exported by a module or the data attributes of a new object type, " +"and another is used to describe the value of a complex number. These will " +"be discussed together with the functions that use them." msgstr "" msgid "" "A signed integral type such that ``sizeof(Py_ssize_t) == sizeof(size_t)``. " "C99 doesn't define such a thing directly (size_t is an unsigned integral " -"type). See :pep:`353` for details. ``PY_SSIZE_T_MAX`` is the largest " -"positive value of type :c:type:`Py_ssize_t`." +"type). See :pep:`353` for details." msgstr "" -msgid "Exceptions" +msgid "" +"A constant of type :c:type:`Py_ssize_t` with value ``-1``, representing an " +"invalid size." +msgstr "" + +msgid "" +"The limit values (largest positive one and smallest negative one, " +"respectively) of type :c:type:`Py_ssize_t`." +msgstr "" + +msgid "" +"The maximum value of the Windows ``DWORD`` type. Expands to ``0xffffffff`` " +"on all platforms." msgstr "" +msgid "Exceptions" +msgstr "ਐਕਸੈਪਸ਼ਨਾਂ" + msgid "" "The Python programmer only needs to deal with exceptions if specific error " "handling is required; unhandled exceptions are automatically propagated to " @@ -1035,38 +1057,38 @@ msgstr "" msgid "" "Exception state is maintained in per-thread storage (this is equivalent to " "using global storage in an unthreaded application). A thread can be in one " -"of two states: an exception has occurred, or not. The function :c:func:" -"`PyErr_Occurred` can be used to check for this: it returns a borrowed " -"reference to the exception type object when an exception has occurred, and " -"``NULL`` otherwise. There are a number of functions to set the exception " -"state: :c:func:`PyErr_SetString` is the most common (though not the most " -"general) function to set the exception state, and :c:func:`PyErr_Clear` " -"clears the exception state." +"of two states: an exception has occurred, or not. The " +"function :c:func:`PyErr_Occurred` can be used to check for this: it returns " +"a borrowed reference to the exception type object when an exception has " +"occurred, and ``NULL`` otherwise. There are a number of functions to set " +"the exception state: :c:func:`PyErr_SetString` is the most common (though " +"not the most general) function to set the exception state, " +"and :c:func:`PyErr_Clear` clears the exception state." msgstr "" msgid "" "The full exception state consists of three objects (all of which can be " "``NULL``): the exception type, the corresponding exception value, and the " -"traceback. These have the same meanings as the Python result of ``sys." -"exc_info()``; however, they are not the same: the Python objects represent " -"the last exception being handled by a Python :keyword:`try` ... :keyword:" -"`except` statement, while the C level exception state only exists while an " -"exception is being passed on between C functions until it reaches the Python " -"bytecode interpreter's main loop, which takes care of transferring it to " -"``sys.exc_info()`` and friends." +"traceback. These have the same meanings as the Python result of " +"``sys.exc_info()``; however, they are not the same: the Python objects " +"represent the last exception being handled by a " +"Python :keyword:`try` ... :keyword:`except` statement, while the C level " +"exception state only exists while an exception is being passed on between C " +"functions until it reaches the Python bytecode interpreter's main loop, " +"which takes care of transferring it to ``sys.exc_info()`` and friends." msgstr "" msgid "" "Note that starting with Python 1.5, the preferred, thread-safe way to access " -"the exception state from Python code is to call the function :func:`sys." -"exc_info`, which returns the per-thread exception state for Python code. " -"Also, the semantics of both ways to access the exception state have changed " -"so that a function which catches an exception will save and restore its " -"thread's exception state so as to preserve the exception state of its " -"caller. This prevents common bugs in exception handling code caused by an " -"innocent-looking function overwriting the exception being handled; it also " -"reduces the often unwanted lifetime extension for objects that are " -"referenced by the stack frames in the traceback." +"the exception state from Python code is to call the " +"function :func:`sys.exc_info`, which returns the per-thread exception state " +"for Python code. Also, the semantics of both ways to access the exception " +"state have changed so that a function which catches an exception will save " +"and restore its thread's exception state so as to preserve the exception " +"state of its caller. This prevents common bugs in exception handling code " +"caused by an innocent-looking function overwriting the exception being " +"handled; it also reduces the often unwanted lifetime extension for objects " +"that are referenced by the stack frames in the traceback." msgstr "" msgid "" @@ -1146,18 +1168,18 @@ msgstr "" msgid "" "This example represents an endorsed use of the ``goto`` statement in C! It " -"illustrates the use of :c:func:`PyErr_ExceptionMatches` and :c:func:" -"`PyErr_Clear` to handle specific exceptions, and the use of :c:func:" -"`Py_XDECREF` to dispose of owned references that may be ``NULL`` (note the " -"``'X'`` in the name; :c:func:`Py_DECREF` would crash when confronted with a " -"``NULL`` reference). It is important that the variables used to hold owned " -"references are initialized to ``NULL`` for this to work; likewise, the " -"proposed return value is initialized to ``-1`` (failure) and only set to " -"success after the final call made is successful." +"illustrates the use of :c:func:`PyErr_ExceptionMatches` " +"and :c:func:`PyErr_Clear` to handle specific exceptions, and the use " +"of :c:func:`Py_XDECREF` to dispose of owned references that may be ``NULL`` " +"(note the ``'X'`` in the name; :c:func:`Py_DECREF` would crash when " +"confronted with a ``NULL`` reference). It is important that the variables " +"used to hold owned references are initialized to ``NULL`` for this to work; " +"likewise, the proposed return value is initialized to ``-1`` (failure) and " +"only set to success after the final call made is successful." msgstr "" msgid "Embedding Python" -msgstr "" +msgstr "Python ਨੂੰ ਇੰਬੈੱਡ ਕਰਨਾ" msgid "" "The one important task that only embedders (as opposed to extension writers) " @@ -1174,10 +1196,11 @@ msgid "" msgstr "" msgid "" -":c:func:`Py_Initialize` does not set the \"script argument list\" (``sys." -"argv``). If this variable is needed by Python code that will be executed " -"later, setting :c:member:`PyConfig.argv` and :c:member:`PyConfig.parse_argv` " -"must be set: see :ref:`Python Initialization Configuration `." +":c:func:`Py_Initialize` does not set the \"script argument list\" " +"(``sys.argv``). If this variable is needed by Python code that will be " +"executed later, setting :c:member:`PyConfig.argv` " +"and :c:member:`PyConfig.parse_argv` must be set: see :ref:`Python " +"Initialization Configuration `." msgstr "" msgid "" @@ -1195,30 +1218,31 @@ msgid "" "For instance, if the Python executable is found in :file:`/usr/local/bin/" "python`, it will assume that the libraries are in :file:`/usr/local/lib/" "python{X.Y}`. (In fact, this particular path is also the \"fallback\" " -"location, used when no executable file named :file:`python` is found along :" -"envvar:`PATH`.) The user can override this behavior by setting the " +"location, used when no executable file named :file:`python` is found " +"along :envvar:`PATH`.) The user can override this behavior by setting the " "environment variable :envvar:`PYTHONHOME`, or insert additional directories " "in front of the standard path by setting :envvar:`PYTHONPATH`." msgstr "" msgid "" -"The embedding application can steer the search by setting :c:member:" -"`PyConfig.program_name` *before* calling :c:func:`Py_InitializeFromConfig`. " -"Note that :envvar:`PYTHONHOME` still overrides this and :envvar:`PYTHONPATH` " -"is still inserted in front of the standard path." +"The embedding application can steer the search by " +"setting :c:member:`PyConfig.program_name` *before* " +"calling :c:func:`Py_InitializeFromConfig`. Note that :envvar:`PYTHONHOME` " +"still overrides this and :envvar:`PYTHONPATH` is still inserted in front of " +"the standard path." msgstr "" msgid "" "Sometimes, it is desirable to \"uninitialize\" Python. For instance, the " -"application may want to start over (make another call to :c:func:" -"`Py_Initialize`) or the application is simply done with its use of Python " -"and wants to free memory allocated by Python. This can be accomplished by " -"calling :c:func:`Py_FinalizeEx`. The function :c:func:`Py_IsInitialized` " -"returns true if Python is currently in the initialized state. More " -"information about these functions is given in a later chapter. Notice that :" -"c:func:`Py_FinalizeEx` does *not* free all memory allocated by the Python " -"interpreter, e.g. memory allocated by extension modules currently cannot be " -"released." +"application may want to start over (make another call " +"to :c:func:`Py_Initialize`) or the application is simply done with its use " +"of Python and wants to free memory allocated by Python. This can be " +"accomplished by calling :c:func:`Py_FinalizeEx`. The " +"function :c:func:`Py_IsInitialized` returns true if Python is currently in " +"the initialized state. More information about these functions is given in a " +"later chapter. Notice that :c:func:`Py_FinalizeEx` does *not* free all " +"memory allocated by the Python interpreter, e.g. memory allocated by " +"extension modules currently cannot be released." msgstr "" msgid "Debugging Builds" @@ -1231,11 +1255,11 @@ msgid "" msgstr "" msgid "" -"A full list of the various types of debugging builds is in the file :file:" -"`Misc/SpecialBuilds.txt` in the Python source distribution. Builds are " -"available that support tracing of reference counts, debugging the memory " -"allocator, or low-level profiling of the main interpreter loop. Only the " -"most frequently used builds will be described in the remainder of this " +"A full list of the various types of debugging builds is in the " +"file :file:`Misc/SpecialBuilds.txt` in the Python source distribution. " +"Builds are available that support tracing of reference counts, debugging the " +"memory allocator, or low-level profiling of the main interpreter loop. Only " +"the most frequently used builds will be described in the remainder of this " "section." msgstr "" @@ -1255,8 +1279,8 @@ msgid "" "On Windows, selecting a debug build (e.g., by passing the :option:`-d` " "option to :file:`PCbuild/build.bat`) automatically enables :c:macro:`!" "Py_DEBUG`. Additionally, the presence of the not-Python-specific :c:macro:`!" -"_DEBUG` macro, when defined by the compiler, will also implicitly enable :c:" -"macro:`!Py_DEBUG`." +"_DEBUG` macro, when defined by the compiler, will also implicitly " +"enable :c:macro:`!Py_DEBUG`." msgstr "" msgid "" @@ -1265,12 +1289,12 @@ msgid "" msgstr "" msgid "" -"Defining ``Py_TRACE_REFS`` enables reference tracing (see the :option:" -"`configure --with-trace-refs option <--with-trace-refs>`). When defined, a " -"circular doubly linked list of active objects is maintained by adding two " -"extra fields to every :c:type:`PyObject`. Total allocations are tracked as " -"well. Upon exit, all existing references are printed. (In interactive mode " -"this happens after every statement run by the interpreter.)" +"Defining ``Py_TRACE_REFS`` enables reference tracing (see " +"the :option:`configure --with-trace-refs option <--with-trace-refs>`). When " +"defined, a circular doubly linked list of active objects is maintained by " +"adding two extra fields to every :c:type:`PyObject`. Total allocations are " +"tracked as well. Upon exit, all existing references are printed. (In " +"interactive mode this happens after every statement run by the interpreter.)" msgstr "" msgid "" @@ -1328,8 +1352,8 @@ msgid "" msgstr "" msgid "" -"`Python Packaging User Guide: Binary Extensions `_" +"`Python Packaging User Guide: Binary Extensions `_" msgstr "" msgid "" @@ -1339,10 +1363,10 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "type" -msgstr "" +msgstr "ਕਿਸਮ" msgid "Py_INCREF (C function)" msgstr "" @@ -1396,22 +1420,22 @@ msgid "Py_Initialize (C function)" msgstr "" msgid "module" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "builtins" -msgstr "" +msgstr "builtins" msgid "__main__" msgstr "" msgid "sys" -msgstr "" +msgstr "sys" msgid "search" -msgstr "" +msgstr "ਖੋਜ" msgid "path" -msgstr "" +msgstr "ਮਾਰਗ" msgid "path (in module sys)" msgstr "" diff --git a/c-api/iter.po b/c-api/iter.po index 1c1b5e3..7aa62af 100644 --- a/c-api/iter.po +++ b/c-api/iter.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,20 +23,25 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Iterator Protocol" -msgstr "" +msgstr "ਇਟਰੇਟਰ ਪ੍ਰੋਟੋਕੋਲ" msgid "There are two functions specifically for working with iterators." -msgstr "" +msgstr "ਇਟਰੇਟਰਾਂ ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਦੋ ਫੰਕਸ਼ਨ ਹਨ।" msgid "" -"Return non-zero if the object *o* can be safely passed to :c:func:" -"`PyIter_NextItem` and ``0`` otherwise. This function always succeeds." +"Return non-zero if the object *o* can be safely passed " +"to :c:func:`PyIter_NextItem` and ``0`` otherwise. This function always " +"succeeds." msgstr "" +"ਜੇ ਆਬਜੈਕਟ *o* ਨੂੰ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ :c:func:`PyIter_NextItem` ਵਿੱਚ ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ " +"ਤਾਂ ਗੈਰ-ਜ਼ੀਰੋ ਵਾਪਸ ਕਰੋ, ਨਹੀਂ ਤਾਂ ``0`` ਵਾਪਸ ਕਰੋ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ ਹੈ।" msgid "" "Return non-zero if the object *o* provides the :class:`AsyncIterator` " "protocol, and ``0`` otherwise. This function always succeeds." msgstr "" +"ਜੇ ਆਬਜੈਕਟ *o* :class:`AsyncIterator` ਪ੍ਰੋਟੋਕੋਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਤਾਂ ਗੈਰ-ਜ਼ੀਰੋ ਵਾਪਸ ਕਰੋ, ਨਹੀਂ " +"ਤਾਂ ``0`` ਵਾਪਸ ਕਰੋ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ ਹੈ।" msgid "" "Return ``1`` and set *item* to a :term:`strong reference` of the next value " @@ -44,11 +49,17 @@ msgid "" "if there are no remaining values. Return ``-1``, set *item* to ``NULL`` and " "set an exception on error." msgstr "" +"ਸਫਲ ਹੋਣ 'ਤੇ ``1`` ਵਾਪਸ ਕਰੋ ਅਤੇ *item* ਨੂੰ ਇਟਰੇਟਰ *iter* ਦੇ ਅਗਲੇ ਮੁੱਲ ਲਈ " +"ਇੱਕ :term:`strong reference` 'ਤੇ ਸੈੱਟ ਕਰੋ। ਜੇ ਕੋਈ ਮੁੱਲ ਬਾਕੀ ਨਹੀਂ ਹੈ, ਤਾਂ ``0`` ਵਾਪਸ ਕਰੋ " +"ਅਤੇ *item* ਨੂੰ ``NULL`` 'ਤੇ ਸੈੱਟ ਕਰੋ। ਗਲਤੀ ਹੋਣ 'ਤੇ ``-1`` ਵਾਪਸ ਕਰੋ, *item* ਨੂੰ ``NULL`` " +"'ਤੇ ਸੈੱਟ ਕਰੋ ਅਤੇ ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰੋ।" msgid "" "This is an older version of :c:func:`!PyIter_NextItem`, which is retained " "for backwards compatibility. Prefer :c:func:`PyIter_NextItem`." msgstr "" +"ਇਹ :c:func:`!PyIter_NextItem` ਦਾ ਇੱਕ ਪੁਰਾਣਾ ਸੰਸਕਰਣ ਹੈ, ਜਿਸ ਨੂੰ ਪਿੱਛੇ ਵੱਲ ਅਨੁਕੂਲਤਾ ਲਈ " +"ਰੱਖਿਆ ਗਿਆ ਹੈ। :c:func:`PyIter_NextItem` ਨੂੰ ਤਰਜੀਹ ਦਿਓ।" msgid "" "Return the next value from the iterator *o*. The object must be an iterator " @@ -57,23 +68,34 @@ msgid "" "an error occurs while retrieving the item, returns ``NULL`` and passes along " "the exception." msgstr "" +"ਇਟਰੇਟਰ *o* ਤੋਂ ਅਗਲਾ ਮੁੱਲ ਵਾਪਸ ਕਰੋ। :c:func:`PyIter_Check` ਅਨੁਸਾਰ ਇਹ ਆਬਜੈਕਟ ਇੱਕ ਇਟਰੇਟਰ " +"ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ (ਇਸ ਦੀ ਜਾਂਚ ਕਰਨਾ ਕਾਲਰ ਦੀ ਜ਼ਿੰਮੇਵਾਰੀ ਹੈ)। ਜੇ ਕੋਈ ਮੁੱਲ ਬਾਕੀ ਨਹੀਂ ਹੈ, ਤਾਂ ਬਿਨਾਂ " +"ਕਿਸੇ ਅਪਵਾਦ ਨੂੰ ਸੈੱਟ ਕੀਤੇ ``NULL`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜੇ ਆਈਟਮ ਪ੍ਰਾਪਤ ਕਰਦੇ ਸਮੇਂ ਕੋਈ ਗਲਤੀ " +"ਆਉਂਦੀ ਹੈ, ਤਾਂ ``NULL`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਅਪਵਾਦ ਅੱਗੇ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "The enum value used to represent different results of :c:func:`PyIter_Send`." msgstr "" +":c:func:`PyIter_Send` ਦੇ ਵੱਖ-ਵੱਖ ਨਤੀਜਿਆਂ ਨੂੰ ਦਰਸਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ enum ਮੁੱਲ।" msgid "Sends the *arg* value into the iterator *iter*. Returns:" -msgstr "" +msgstr "*arg* ਮੁੱਲ ਨੂੰ ਇਟਰੇਟਰ *iter* ਵਿੱਚ ਭੇਜਦਾ ਹੈ। ਇਹ ਹੇਠਾਂ ਦਿੱਤੇ ਮੁੱਲਾਂ ਵਿੱਚੋਂ ਇੱਕ ਵਾਪਸ ਕਰਦਾ ਹੈ:" msgid "" "``PYGEN_RETURN`` if iterator returns. Return value is returned via *presult*." msgstr "" +"ਜੇ ਇਟਰੇਟਰ return ਕਰਦਾ ਹੈ ਤਾਂ ``PYGEN_RETURN``। ਵਾਪਸੀ ਮੁੱਲ *presult* ਰਾਹੀਂ ਵਾਪਸ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ।" msgid "" "``PYGEN_NEXT`` if iterator yields. Yielded value is returned via *presult*." msgstr "" +"ਜੇ ਇਟਰੇਟਰ yield ਕਰਦਾ ਹੈ ਤਾਂ ``PYGEN_NEXT``। yield ਕੀਤਾ ਗਿਆ ਮੁੱਲ *presult* ਰਾਹੀਂ " +"ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "``PYGEN_ERROR`` if iterator has raised an exception. *presult* is set to " "``NULL``." msgstr "" +"ਜੇ ਇਟਰੇਟਰ ਇੱਕ ਅਪਵਾਦ ਪੈਦਾ ਕਰਦਾ ਹੈ ਤਾਂ ``PYGEN_ERROR``। *presult* ਨੂੰ ``NULL`` 'ਤੇ ਸੈੱਟ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" diff --git a/c-api/iterator.po b/c-api/iterator.po index c659f5e..ab30efb 100644 --- a/c-api/iterator.po +++ b/c-api/iterator.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,10 +23,10 @@ msgstr "" msgid "" "Python provides two general-purpose iterator objects. The first, a sequence " -"iterator, works with an arbitrary sequence supporting the :meth:`~object." -"__getitem__` method. The second works with a callable object and a sentinel " -"value, calling the callable for each item in the sequence, and ending the " -"iteration when the sentinel value is returned." +"iterator, works with an arbitrary sequence supporting " +"the :meth:`~object.__getitem__` method. The second works with a callable " +"object and a sentinel value, calling the callable for each item in the " +"sequence, and ending the iteration when the sentinel value is returned." msgstr "" msgid "" @@ -82,6 +82,9 @@ msgid "" "provide no additional functions. They are here for completeness." msgstr "" +msgid "These pointers are part of the :ref:`Stable ABI `." +msgstr "" + msgid "C type" msgstr "" @@ -110,8 +113,8 @@ msgid "Type objects for iterators of various built-in objects." msgstr "" msgid "" -"Do not create instances of these directly; prefer calling :c:func:" -"`PyObject_GetIter` instead." +"Do not create instances of these directly; prefer " +"calling :c:func:`PyObject_GetIter` instead." msgstr "" msgid "" diff --git a/c-api/lifecycle.po b/c-api/lifecycle.po deleted file mode 100644 index b5540f0..0000000 --- a/c-api/lifecycle.po +++ /dev/null @@ -1,319 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Object Life Cycle" -msgstr "" - -msgid "" -"This section explains how a type's slots relate to each other throughout the " -"life of an object. It is not intended to be a complete canonical reference " -"for the slots; instead, refer to the slot-specific documentation in :ref:" -"`type-structs` for details about a particular slot." -msgstr "" - -msgid "Life Events" -msgstr "" - -msgid "" -"The figure below illustrates the order of events that can occur throughout " -"an object's life. An arrow from *A* to *B* indicates that event *B* can " -"occur after event *A* has occurred, with the arrow's label indicating the " -"condition that must be true for *B* to occur after *A*." -msgstr "" - -msgid "Diagram showing events in an object's life. Explained in detail below." -msgstr "" - -msgid "Explanation:" -msgstr "" - -msgid "When a new object is constructed by calling its type:" -msgstr "" - -msgid ":c:member:`~PyTypeObject.tp_new` is called to create a new object." -msgstr "" - -msgid "" -":c:member:`~PyTypeObject.tp_alloc` is directly called by :c:member:" -"`~PyTypeObject.tp_new` to allocate the memory for the new object." -msgstr "" - -msgid "" -":c:member:`~PyTypeObject.tp_init` initializes the newly created object. :c:" -"member:`!tp_init` can be called again to re-initialize an object, if " -"desired. The :c:member:`!tp_init` call can also be skipped entirely, for " -"example by Python code calling :py:meth:`~object.__new__`." -msgstr "" - -msgid "After :c:member:`!tp_init` completes, the object is ready to use." -msgstr "" - -msgid "Some time after the last reference to an object is removed:" -msgstr "" - -msgid "" -"If an object is not marked as *finalized*, it might be finalized by marking " -"it as *finalized* and calling its :c:member:`~PyTypeObject.tp_finalize` " -"function. Python does *not* finalize an object when the last reference to " -"it is deleted; use :c:func:`PyObject_CallFinalizerFromDealloc` to ensure " -"that :c:member:`~PyTypeObject.tp_finalize` is always called." -msgstr "" - -msgid "" -"If the object is marked as finalized, :c:member:`~PyTypeObject.tp_clear` " -"might be called by the garbage collector to clear references held by the " -"object. It is *not* called when the object's reference count reaches zero." -msgstr "" - -msgid "" -":c:member:`~PyTypeObject.tp_dealloc` is called to destroy the object. To " -"avoid code duplication, :c:member:`~PyTypeObject.tp_dealloc` typically calls " -"into :c:member:`~PyTypeObject.tp_clear` to free up the object's references." -msgstr "" - -msgid "" -"When :c:member:`~PyTypeObject.tp_dealloc` finishes object destruction, it " -"directly calls :c:member:`~PyTypeObject.tp_free` (usually set to :c:func:" -"`PyObject_Free` or :c:func:`PyObject_GC_Del` automatically as appropriate " -"for the type) to deallocate the memory." -msgstr "" - -msgid "" -"The :c:member:`~PyTypeObject.tp_finalize` function is permitted to add a " -"reference to the object if desired. If it does, the object is " -"*resurrected*, preventing its pending destruction. (Only :c:member:`!" -"tp_finalize` is allowed to resurrect an object; :c:member:`~PyTypeObject." -"tp_clear` and :c:member:`~PyTypeObject.tp_dealloc` cannot without calling " -"into :c:member:`!tp_finalize`.) Resurrecting an object may or may not cause " -"the object's *finalized* mark to be removed. Currently, Python does not " -"remove the *finalized* mark from a resurrected object if it supports garbage " -"collection (i.e., the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set) but does " -"remove the mark if the object does not support garbage collection; either or " -"both of these behaviors may change in the future." -msgstr "" - -msgid "" -":c:member:`~PyTypeObject.tp_dealloc` can optionally call :c:member:" -"`~PyTypeObject.tp_finalize` via :c:func:`PyObject_CallFinalizerFromDealloc` " -"if it wishes to reuse that code to help with object destruction. This is " -"recommended because it guarantees that :c:member:`!tp_finalize` is always " -"called before destruction. See the :c:member:`~PyTypeObject.tp_dealloc` " -"documentation for example code." -msgstr "" - -msgid "" -"If the object is a member of a :term:`cyclic isolate` and either :c:member:" -"`~PyTypeObject.tp_clear` fails to break the reference cycle or the cyclic " -"isolate is not detected (perhaps :func:`gc.disable` was called, or the :c:" -"macro:`Py_TPFLAGS_HAVE_GC` flag was erroneously omitted in one of the " -"involved types), the objects remain indefinitely uncollectable (they " -"\"leak\"). See :data:`gc.garbage`." -msgstr "" - -msgid "" -"If the object is marked as supporting garbage collection (the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag is set in :c:member:`~PyTypeObject.tp_flags`), the " -"following events are also possible:" -msgstr "" - -msgid "" -"The garbage collector occasionally calls :c:member:`~PyTypeObject." -"tp_traverse` to identify :term:`cyclic isolates `." -msgstr "" - -msgid "" -"When the garbage collector discovers a :term:`cyclic isolate`, it finalizes " -"one of the objects in the group by marking it as *finalized* and calling " -"its :c:member:`~PyTypeObject.tp_finalize` function, if it has one. This " -"repeats until the cyclic isolate doesn't exist or all of the objects have " -"been finalized." -msgstr "" - -msgid "" -":c:member:`~PyTypeObject.tp_finalize` is permitted to resurrect the object " -"by adding a reference from outside the :term:`cyclic isolate`. The new " -"reference causes the group of objects to no longer form a cyclic isolate " -"(the reference cycle may still exist, but if it does the objects are no " -"longer isolated)." -msgstr "" - -msgid "" -"When the garbage collector discovers a :term:`cyclic isolate` and all of the " -"objects in the group have already been marked as *finalized*, the garbage " -"collector clears one or more of the uncleared objects in the group (possibly " -"concurrently) by calling each's :c:member:`~PyTypeObject.tp_clear` " -"function. This repeats as long as the cyclic isolate still exists and not " -"all of the objects have been cleared." -msgstr "" - -msgid "Cyclic Isolate Destruction" -msgstr "" - -msgid "" -"Listed below are the stages of life of a hypothetical :term:`cyclic isolate` " -"that continues to exist after each member object is finalized or cleared. " -"It is a memory leak if a cyclic isolate progresses through all of these " -"stages; it should vanish once all objects are cleared, if not sooner. A " -"cyclic isolate can vanish either because the reference cycle is broken or " -"because the objects are no longer isolated due to finalizer resurrection " -"(see :c:member:`~PyTypeObject.tp_finalize`)." -msgstr "" - -msgid "" -"**Reachable** (not yet a cyclic isolate): All objects are in their normal, " -"reachable state. A reference cycle could exist, but an external reference " -"means the objects are not yet isolated." -msgstr "" - -msgid "" -"**Unreachable but consistent:** The final reference from outside the cyclic " -"group of objects has been removed, causing the objects to become isolated " -"(thus a cyclic isolate is born). None of the group's objects have been " -"finalized or cleared yet. The cyclic isolate remains at this stage until " -"some future run of the garbage collector (not necessarily the next run " -"because the next run might not scan every object)." -msgstr "" - -msgid "" -"**Mix of finalized and not finalized:** Objects in a cyclic isolate are " -"finalized one at a time, which means that there is a period of time when the " -"cyclic isolate is composed of a mix of finalized and non-finalized objects. " -"Finalization order is unspecified, so it can appear random. A finalized " -"object must behave in a sane manner when non-finalized objects interact with " -"it, and a non-finalized object must be able to tolerate the finalization of " -"an arbitrary subset of its referents." -msgstr "" - -msgid "" -"**All finalized:** All objects in a cyclic isolate are finalized before any " -"of them are cleared." -msgstr "" - -msgid "" -"**Mix of finalized and cleared:** The objects can be cleared serially or " -"concurrently (but with the :term:`GIL` held); either way, some will finish " -"before others. A finalized object must be able to tolerate the clearing of " -"a subset of its referents. :pep:`442` calls this stage \"cyclic trash\"." -msgstr "" - -msgid "" -"**Leaked:** If a cyclic isolate still exists after all objects in the group " -"have been finalized and cleared, then the objects remain indefinitely " -"uncollectable (see :data:`gc.garbage`). It is a bug if a cyclic isolate " -"reaches this stage---it means the :c:member:`~PyTypeObject.tp_clear` methods " -"of the participating objects have failed to break the reference cycle as " -"required." -msgstr "" - -msgid "" -"If :c:member:`~PyTypeObject.tp_clear` did not exist, then Python would have " -"no way to safely break a reference cycle. Simply destroying an object in a " -"cyclic isolate would result in a dangling pointer, triggering undefined " -"behavior when an object referencing the destroyed object is itself " -"destroyed. The clearing step makes object destruction a two-phase process: " -"first :c:member:`~PyTypeObject.tp_clear` is called to partially destroy the " -"objects enough to detangle them from each other, then :c:member:" -"`~PyTypeObject.tp_dealloc` is called to complete the destruction." -msgstr "" - -msgid "" -"Unlike clearing, finalization is not a phase of destruction. A finalized " -"object must still behave properly by continuing to fulfill its design " -"contracts. An object's finalizer is allowed to execute arbitrary Python " -"code, and is even allowed to prevent the impending destruction by adding a " -"reference. The finalizer is only related to destruction by call order---if " -"it runs, it runs before destruction, which starts with :c:member:" -"`~PyTypeObject.tp_clear` (if called) and concludes with :c:member:" -"`~PyTypeObject.tp_dealloc`." -msgstr "" - -msgid "" -"The finalization step is not necessary to safely reclaim the objects in a " -"cyclic isolate, but its existence makes it easier to design types that " -"behave in a sane manner when objects are cleared. Clearing an object might " -"necessarily leave it in a broken, partially destroyed state---it might be " -"unsafe to call any of the cleared object's methods or access any of its " -"attributes. With finalization, only finalized objects can possibly interact " -"with cleared objects; non-finalized objects are guaranteed to interact with " -"only non-cleared (but potentially finalized) objects." -msgstr "" - -msgid "To summarize the possible interactions:" -msgstr "" - -msgid "" -"A non-finalized object might have references to or from non-finalized and " -"finalized objects, but not to or from cleared objects." -msgstr "" - -msgid "" -"A finalized object might have references to or from non-finalized, " -"finalized, and cleared objects." -msgstr "" - -msgid "" -"A cleared object might have references to or from finalized and cleared " -"objects, but not to or from non-finalized objects." -msgstr "" - -msgid "" -"Without any reference cycles, an object can be simply destroyed once its " -"last reference is deleted; the finalization and clearing steps are not " -"necessary to safely reclaim unused objects. However, it can be useful to " -"automatically call :c:member:`~PyTypeObject.tp_finalize` and :c:member:" -"`~PyTypeObject.tp_clear` before destruction anyway because type design is " -"simplified when all objects always experience the same series of events " -"regardless of whether they participated in a cyclic isolate. Python " -"currently only calls :c:member:`~PyTypeObject.tp_finalize` and :c:member:" -"`~PyTypeObject.tp_clear` as needed to destroy a cyclic isolate; this may " -"change in a future version." -msgstr "" - -msgid "Functions" -msgstr "" - -msgid "To allocate and free memory, see :ref:`allocating-objects`." -msgstr "" - -msgid "" -"Finalizes the object as described in :c:member:`~PyTypeObject.tp_finalize`. " -"Call this function (or :c:func:`PyObject_CallFinalizerFromDealloc`) instead " -"of calling :c:member:`~PyTypeObject.tp_finalize` directly because this " -"function may deduplicate multiple calls to :c:member:`!tp_finalize`. " -"Currently, calls are only deduplicated if the type supports garbage " -"collection (i.e., the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set); this may " -"change in the future." -msgstr "" - -msgid "" -"Same as :c:func:`PyObject_CallFinalizer` but meant to be called at the " -"beginning of the object's destructor (:c:member:`~PyTypeObject.tp_dealloc`). " -"There must not be any references to the object. If the object's finalizer " -"resurrects the object, this function returns -1; no further destruction " -"should happen. Otherwise, this function returns 0 and destruction can " -"continue normally." -msgstr "" - -msgid ":c:member:`~PyTypeObject.tp_dealloc` for example code." -msgstr "" diff --git a/c-api/list.po b/c-api/list.po index 74b6b7b..8fdcc56 100644 --- a/c-api/list.po +++ b/c-api/list.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,12 +48,12 @@ msgstr "" msgid "" "If *len* is greater than zero, the returned list object's items are set to " -"``NULL``. Thus you cannot use abstract API functions such as :c:func:" -"`PySequence_SetItem` or expose the object to Python code before setting all " -"items to a real object with :c:func:`PyList_SetItem` or :c:func:" -"`PyList_SET_ITEM()`. The following APIs are safe APIs before the list is " -"fully initialized: :c:func:`PyList_SetItem()` and :c:func:" -"`PyList_SET_ITEM()`." +"``NULL``. Thus you cannot use abstract API functions such " +"as :c:func:`PySequence_SetItem` or expose the object to Python code before " +"setting all items to a real object with :c:func:`PyList_SetItem` " +"or :c:func:`PyList_SET_ITEM()`. The following APIs are safe APIs before the " +"list is fully initialized: :c:func:`PyList_SetItem()` " +"and :c:func:`PyList_SET_ITEM()`." msgstr "" msgid "" @@ -78,8 +78,8 @@ msgstr "" msgid "" "In the :term:`free-threaded build`, the returned :term:`borrowed reference` " -"may become invalid if another thread modifies the list concurrently. Prefer :" -"c:func:`PyList_GetItemRef`, which returns a :term:`strong reference`." +"may become invalid if another thread modifies the list concurrently. " +"Prefer :c:func:`PyList_GetItemRef`, which returns a :term:`strong reference`." msgstr "" msgid "Similar to :c:func:`PyList_GetItem`, but without error checking." @@ -103,21 +103,23 @@ msgid "" msgstr "" msgid "" -"Bounds checking is performed as an assertion if Python is built in :ref:" -"`debug mode ` or :option:`with assertions <--with-assertions>`." +"Bounds checking is performed as an assertion if Python is built " +"in :ref:`debug mode ` or :option:`with assertions <--with-" +"assertions>`." msgstr "" msgid "" -"This macro \":term:`steals `\" a reference to *item*, and, unlike :c:" -"func:`PyList_SetItem`, does *not* discard a reference to any item that is " -"being replaced; any reference in *list* at position *i* will be leaked." +"This macro \":term:`steals `\" a reference to *item*, and, " +"unlike :c:func:`PyList_SetItem`, does *not* discard a reference to any item " +"that is being replaced; any reference in *list* at position *i* will be " +"leaked." msgstr "" msgid "" "In the :term:`free-threaded build`, this macro has no internal " "synchronization. It is normally only used to fill in new lists where no " -"other thread has a reference to the list. If the list may be shared, use :c:" -"func:`PyList_SetItem` instead, which uses a :term:`per-object lock`." +"other thread has a reference to the list. If the list may be shared, " +"use :c:func:`PyList_SetItem` instead, which uses a :term:`per-object lock`." msgstr "" msgid "" @@ -165,11 +167,11 @@ msgid "" msgstr "" msgid "" -"In the :term:`free-threaded build`, when *iterable* is a :class:`list`, :" -"class:`set`, :class:`dict`, or dict view, both *list* and *iterable* (or its " -"underlying dict) are locked for the duration of the operation. For other " -"iterables, only *list* is locked; *iterable* may be concurrently modified by " -"another thread." +"In the :term:`free-threaded build`, when *iterable* is " +"a :class:`list`, :class:`set`, :class:`dict`, or dict view, both *list* and " +"*iterable* (or its underlying dict) are locked for the duration of the " +"operation. For other iterables, only *list* is locked; *iterable* may be " +"concurrently modified by another thread." msgstr "" msgid "" @@ -189,10 +191,11 @@ msgid "" msgstr "" msgid "" -"In the :term:`free-threaded build`, element comparison via :meth:`~object." -"__lt__` can execute arbitrary Python code, during which the :term:`per-" -"object lock` may be temporarily released. For built-in types (:class:`str`, :" -"class:`int`, :class:`float`), the lock is not released during comparison." +"In the :term:`free-threaded build`, element comparison " +"via :meth:`~object.__lt__` can execute arbitrary Python code, during which " +"the :term:`per-object lock` may be temporarily released. For built-in types " +"(:class:`str`, :class:`int`, :class:`float`), the lock is not released " +"during comparison." msgstr "" msgid "" @@ -206,16 +209,16 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "list" -msgstr "" +msgstr "ਸੂਚੀ" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "len" -msgstr "" +msgstr "len" msgid "tuple" -msgstr "" +msgstr "ਟਿਊਪਲ" diff --git a/c-api/long.po b/c-api/long.po index 6c8428f..73f9eb1 100644 --- a/c-api/long.po +++ b/c-api/long.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -44,8 +45,8 @@ msgid "" msgstr "" msgid "" -"Return true if its argument is a :c:type:`PyLongObject` or a subtype of :c:" -"type:`PyLongObject`. This function always succeeds." +"Return true if its argument is a :c:type:`PyLongObject` or a subtype " +"of :c:type:`PyLongObject`. This function always succeeds." msgstr "" msgid "" @@ -94,9 +95,9 @@ msgid "" msgstr "" msgid "" -"Return a new :c:type:`PyLongObject` object from an unsigned C :c:expr:" -"`uint32_t` or :c:expr:`uint64_t`, or ``NULL`` with an exception set on " -"failure." +"Return a new :c:type:`PyLongObject` object from an unsigned " +"C :c:expr:`uint32_t` or :c:expr:`uint64_t`, or ``NULL`` with an exception " +"set on failure." msgstr "" msgid "" @@ -162,8 +163,9 @@ msgid "Macro for creating a Python integer from a process identifier." msgstr "" msgid "" -"This can be defined as an alias to :c:func:`PyLong_FromLong` or :c:func:" -"`PyLong_FromLongLong`, depending on the size of the system's PID type." +"This can be defined as an alias to :c:func:`PyLong_FromLong` " +"or :c:func:`PyLong_FromLongLong`, depending on the size of the system's PID " +"type." msgstr "" msgid "" @@ -173,8 +175,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:" -"expr:`long`." +"Raise :exc:`OverflowError` if the value of *obj* is out of range for " +"a :c:expr:`long`." msgstr "" msgid "Returns ``-1`` on error. Use :c:func:`PyErr_Occurred` to disambiguate." @@ -192,15 +194,16 @@ msgid "" msgstr "" msgid "" -"Similar to :c:func:`PyLong_AsLong`, but store the result in a C :c:expr:" -"`int` instead of a C :c:expr:`long`." +"Similar to :c:func:`PyLong_AsLong`, but store the result in a " +"C :c:expr:`int` instead of a C :c:expr:`long`." msgstr "" msgid "" -"If the value of *obj* is greater than :c:macro:`LONG_MAX` or less than :c:" -"macro:`LONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and " -"return ``-1``; otherwise, set *\\*overflow* to ``0``. If any other " -"exception occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." +"If the value of *obj* is greater than :c:macro:`LONG_MAX` or less " +"than :c:macro:`LONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, " +"respectively, and return ``-1``; otherwise, set *\\*overflow* to ``0``. If " +"any other exception occurs set *\\*overflow* to ``0`` and return ``-1`` as " +"usual." msgstr "" msgid "" @@ -210,15 +213,16 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:" -"expr:`long long`." +"Raise :exc:`OverflowError` if the value of *obj* is out of range for " +"a :c:expr:`long long`." msgstr "" msgid "" -"If the value of *obj* is greater than :c:macro:`LLONG_MAX` or less than :c:" -"macro:`LLONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and " -"return ``-1``; otherwise, set *\\*overflow* to ``0``. If any other " -"exception occurs set *\\*overflow* to ``0`` and return ``-1`` as usual." +"If the value of *obj* is greater than :c:macro:`LLONG_MAX` or less " +"than :c:macro:`LLONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, " +"respectively, and return ``-1``; otherwise, set *\\*overflow* to ``0``. If " +"any other exception occurs set *\\*overflow* to ``0`` and return ``-1`` as " +"usual." msgstr "" msgid "" @@ -227,8 +231,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" -"type:`Py_ssize_t`." +"Raise :exc:`OverflowError` if the value of *pylong* is out of range for " +"a :c:type:`Py_ssize_t`." msgstr "" msgid "" @@ -237,8 +241,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" -"expr:`unsigned long`." +"Raise :exc:`OverflowError` if the value of *pylong* is out of range for " +"a :c:expr:`unsigned long`." msgstr "" msgid "" @@ -252,8 +256,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" -"type:`size_t`." +"Raise :exc:`OverflowError` if the value of *pylong* is out of range for " +"a :c:type:`size_t`." msgstr "" msgid "" @@ -267,8 +271,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *pylong* is out of range for an :" -"c:expr:`unsigned long long`." +"Raise :exc:`OverflowError` if the value of *pylong* is out of range for " +"an :c:expr:`unsigned long long`." msgstr "" msgid "" @@ -282,8 +286,9 @@ msgstr "" msgid "" "Return a C :c:expr:`unsigned long` representation of *obj*. If *obj* is not " -"an instance of :c:type:`PyLongObject`, first call its :meth:`~object." -"__index__` method (if present) to convert it to a :c:type:`PyLongObject`." +"an instance of :c:type:`PyLongObject`, first call " +"its :meth:`~object.__index__` method (if present) to convert it to " +"a :c:type:`PyLongObject`." msgstr "" msgid "" @@ -298,8 +303,9 @@ msgstr "" msgid "" "Return a C :c:expr:`unsigned long long` representation of *obj*. If *obj* " -"is not an instance of :c:type:`PyLongObject`, first call its :meth:`~object." -"__index__` method (if present) to convert it to a :c:type:`PyLongObject`." +"is not an instance of :c:type:`PyLongObject`, first call " +"its :meth:`~object.__index__` method (if present) to convert it to " +"a :c:type:`PyLongObject`." msgstr "" msgid "" @@ -318,9 +324,9 @@ msgid "" msgstr "" msgid "" -"If *obj* is not an instance of :c:type:`PyLongObject`, first call its :meth:" -"`~object.__index__` method (if present) to convert it to a :c:type:" -"`PyLongObject`." +"If *obj* is not an instance of :c:type:`PyLongObject`, first call " +"its :meth:`~object.__index__` method (if present) to convert it to " +"a :c:type:`PyLongObject`." msgstr "" msgid "If the *obj* value is out of range, raise an :exc:`OverflowError`." @@ -348,8 +354,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:" -"expr:`double`." +"Raise :exc:`OverflowError` if the value of *pylong* is out of range for " +"a :c:expr:`double`." msgstr "" msgid "" @@ -359,8 +365,8 @@ msgstr "" msgid "" "Convert a Python integer *pylong* to a C :c:expr:`void` pointer. If *pylong* " "cannot be converted, an :exc:`OverflowError` will be raised. This is only " -"assured to produce a usable :c:expr:`void` pointer for values created with :" -"c:func:`PyLong_FromVoidPtr`." +"assured to produce a usable :c:expr:`void` pointer for values created " +"with :c:func:`PyLong_FromVoidPtr`." msgstr "" msgid "" @@ -480,11 +486,16 @@ msgid "" "Py_ASNATIVEBYTES_UNSIGNED_BUFFER``." msgstr "" -msgid "Flag" +msgid "" +"These values are available when compiling for the :ref:`Stable ABI ` " +"since version 3.14." msgstr "" +msgid "Flag" +msgstr "ਫਲੈਗ" + msgid "Value" -msgstr "" +msgstr "ਮੁੱਲ" msgid "``-1``" msgstr "" @@ -539,8 +550,8 @@ msgid "" "passed, its :meth:`~object.__index__` method will be called first. This may " "result in Python code executing and other threads being allowed to run, " "which could cause changes to other objects or values in use. When *flags* is " -"``-1``, this option is not set, and non-integer values will raise :exc:" -"`TypeError`." +"``-1``, this option is not set, and non-integer values will " +"raise :exc:`TypeError`." msgstr "" msgid "" @@ -554,9 +565,9 @@ msgid "Macro for converting a Python integer into a process identifier." msgstr "" msgid "" -"This can be defined as an alias to :c:func:`PyLong_AsLong`, :c:func:" -"`PyLong_FromLongLong`, or :c:func:`PyLong_AsInt`, depending on the size of " -"the system's PID type." +"This can be defined as an alias " +"to :c:func:`PyLong_AsLong`, :c:func:`PyLong_FromLongLong`, " +"or :c:func:`PyLong_AsInt`, depending on the size of the system's PID type." msgstr "" msgid "Get the sign of the integer object *obj*." @@ -613,9 +624,10 @@ msgstr "" msgid "" "This function makes it possible for performance-critical code to implement a " -"“fast path” for small integers. For compact values use :c:func:" -"`PyUnstable_Long_CompactValue`; for others fall back to a :c:func:" -"`PyLong_As* ` function or :c:func:`PyLong_AsNativeBytes`." +"“fast path” for small integers. For compact values " +"use :c:func:`PyUnstable_Long_CompactValue`; for others fall back to " +"a :c:func:`PyLong_As* ` function " +"or :c:func:`PyLong_AsNativeBytes`." msgstr "" msgid "The speedup is expected to be negligible for most users." @@ -634,6 +646,21 @@ msgstr "" msgid "Otherwise, the return value is undefined." msgstr "" +msgid "Build configuration" +msgstr "" + +msgid "" +"The number of bits in each digit of CPython's native representation of " +"integers. The value can currently be either ``30`` (the default) or ``15``, " +"selected with :option:`--enable-big-digits` when building Python." +msgstr "" + +msgid "" +"To access the native representation of integers, " +"use :c:func:`PyLong_GetNativeLayout` and " +"its :c:member:`~PyLongLayout.bits_per_digit` member instead." +msgstr "" + msgid "Export API" msgstr "" @@ -643,9 +670,9 @@ msgid "" msgstr "" msgid "" -"Use :c:func:`PyLong_GetNativeLayout` to get the native layout of Python :" -"class:`int` objects, used internally for integers with \"big enough\" " -"absolute value." +"Use :c:func:`PyLong_GetNativeLayout` to get the native layout of " +"Python :class:`int` objects, used internally for integers with \"big " +"enough\" absolute value." msgstr "" msgid "" @@ -704,23 +731,23 @@ msgid "" msgstr "" msgid "" -"If :c:member:`digits` is not ``NULL``, use :c:member:`negative`, :c:member:" -"`ndigits` and :c:member:`digits` members." +"If :c:member:`digits` is not ``NULL``, " +"use :c:member:`negative`, :c:member:`ndigits` and :c:member:`digits` members." msgstr "" msgid "" -"The native integer value of the exported :class:`int` object. Only valid if :" -"c:member:`digits` is ``NULL``." +"The native integer value of the exported :class:`int` object. Only valid " +"if :c:member:`digits` is ``NULL``." msgstr "" msgid "" -"``1`` if the number is negative, ``0`` otherwise. Only valid if :c:member:" -"`digits` is not ``NULL``." +"``1`` if the number is negative, ``0`` otherwise. Only valid " +"if :c:member:`digits` is not ``NULL``." msgstr "" msgid "" -"Number of digits in :c:member:`digits` array. Only valid if :c:member:" -"`digits` is not ``NULL``." +"Number of digits in :c:member:`digits` array. Only valid " +"if :c:member:`digits` is not ``NULL``." msgstr "" msgid "Read-only array of unsigned digits. Can be ``NULL``." @@ -767,8 +794,8 @@ msgid "A Python :class:`int` writer instance." msgstr "" msgid "" -"The instance must be destroyed by :c:func:`PyLongWriter_Finish` or :c:func:" -"`PyLongWriter_Discard`." +"The instance must be destroyed by :c:func:`PyLongWriter_Finish` " +"or :c:func:`PyLongWriter_Discard`." msgstr "" msgid "Create a :c:type:`PyLongWriter`." @@ -793,8 +820,8 @@ msgstr "" msgid "" "After a successful call to this function, the caller should fill in the " "array of digits *digits* and then call :c:func:`PyLongWriter_Finish` to get " -"a Python :class:`int`. The layout of *digits* is described by :c:func:" -"`PyLong_GetNativeLayout`." +"a Python :class:`int`. The layout of *digits* is described " +"by :c:func:`PyLong_GetNativeLayout`." msgstr "" msgid "" @@ -841,10 +868,11 @@ msgid "" msgstr "" msgid "" -"Use :c:func:`PyLong_GetNativeLayout` instead, along with :c:func:" -"`PyLong_Export` to read integer data or :c:type:`PyLongWriter` to write it. " -"These currently use the same layout, but are designed to continue working " -"correctly even if CPython's internal integer representation changes." +"Use :c:func:`PyLong_GetNativeLayout` instead, along " +"with :c:func:`PyLong_Export` to read integer data or :c:type:`PyLongWriter` " +"to write it. These currently use the same layout, but are designed to " +"continue working correctly even if CPython's internal integer representation " +"changes." msgstr "" msgid "" @@ -859,13 +887,13 @@ msgid "This is currently equivalent to :c:expr:`(1 << PyLong_SHIFT) - 1`" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "long integer" msgstr "" msgid "integer" -msgstr "" +msgstr "ਪੂਰਨ ਅੰਕ" msgid "LONG_MAX (C macro)" msgstr "" diff --git a/c-api/mapping.po b/c-api/mapping.po index 528ce3f..2f07c97 100644 --- a/c-api/mapping.po +++ b/c-api/mapping.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,8 +26,8 @@ msgid "Mapping Protocol" msgstr "" msgid "" -"See also :c:func:`PyObject_GetItem`, :c:func:`PyObject_SetItem` and :c:func:" -"`PyObject_DelItem`." +"See also :c:func:`PyObject_GetItem`, :c:func:`PyObject_SetItem` " +"and :c:func:`PyObject_DelItem`." msgstr "" msgid "" @@ -44,9 +44,9 @@ msgid "" msgstr "" msgid "" -"This is the same as :c:func:`PyObject_GetItem`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyObject_GetItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -69,18 +69,18 @@ msgid "" msgstr "" msgid "" -"This is the same as :c:func:`PyObject_SetItem`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyObject_SetItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "This is an alias of :c:func:`PyObject_DelItem`." msgstr "" msgid "" -"This is the same as :c:func:`PyObject_DelItem`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyObject_DelItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -103,23 +103,23 @@ msgstr "" msgid "" "Exceptions which occur when this calls the :meth:`~object.__getitem__` " -"method are silently ignored. For proper error handling, use :c:func:" -"`PyMapping_HasKeyWithError`, :c:func:`PyMapping_GetOptionalItem` or :c:func:" -"`PyObject_GetItem()` instead." +"method are silently ignored. For proper error handling, " +"use :c:func:`PyMapping_HasKeyWithError`, :c:func:`PyMapping_GetOptionalItem` " +"or :c:func:`PyObject_GetItem()` instead." msgstr "" msgid "" -"This is the same as :c:func:`PyMapping_HasKey`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyMapping_HasKey`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" "Exceptions that occur when this calls the :meth:`~object.__getitem__` method " "or while creating the temporary :class:`str` object are silently ignored. " -"For proper error handling, use :c:func:`PyMapping_HasKeyStringWithError`, :c:" -"func:`PyMapping_GetOptionalItemString` or :c:func:`PyMapping_GetItemString` " -"instead." +"For proper error handling, " +"use :c:func:`PyMapping_HasKeyStringWithError`, :c:func:`PyMapping_GetOptionalItemString` " +"or :c:func:`PyMapping_GetItemString` instead." msgstr "" msgid "" @@ -141,7 +141,7 @@ msgid "" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "len" -msgstr "" +msgstr "len" diff --git a/c-api/marshal.po b/c-api/marshal.po index cad3d20..92bf1f1 100644 --- a/c-api/marshal.po +++ b/c-api/marshal.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-13 19:59+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgid "Numeric values are stored with the least significant byte first." msgstr "" msgid "" -"The module supports several versions of the data format; see the :py:mod:" -"`Python module documentation ` for details." +"The module supports several versions of the data format; see " +"the :py:mod:`Python module documentation ` for details." msgstr "" msgid "The current format version. See :py:data:`marshal.version`." @@ -47,8 +47,14 @@ msgid "" msgstr "" msgid "" -"This function can fail, in which case it sets the error indicator. Use :c:" -"func:`PyErr_Occurred` to check for that." +"This function can fail, in which case it sets the error indicator. " +"Use :c:func:`PyErr_Occurred` to check for that." +msgstr "" + +msgid "" +"In Python 3.15 and earlier, this function does not set the error indicator " +"if writing to *file* fails. The same caveat applies as " +"for :c:func:`PyMarshal_WriteObjectToFile`." msgstr "" msgid "" @@ -56,6 +62,16 @@ msgid "" "format." msgstr "" +msgid "" +"In Python 3.15 and earlier, this function can write only part of the data to " +"*file* and return without setting the error indicator, for example if " +"*value* contains an object which cannot be marshalled or if writing to " +"*file* fails (see :gh:`155907`). Code which has to support these versions " +"cannot rely on :c:func:`PyErr_Occurred` alone to know that all the data was " +"written. It can use :c:func:`PyMarshal_WriteObjectToString` and write the " +"result itself, or validate what was written." +msgstr "" + msgid "" "Return a bytes object containing the marshalled representation of *value*. " "*version* indicates the file format." diff --git a/c-api/memory.po b/c-api/memory.po index d39eb88..cdce69e 100644 --- a/c-api/memory.po +++ b/c-api/memory.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -60,13 +60,14 @@ msgstr "" msgid "" "To avoid memory corruption, extension writers should never try to operate on " -"Python objects with the functions exported by the C library: :c:func:" -"`malloc`, :c:func:`calloc`, :c:func:`realloc` and :c:func:`free`. This will " -"result in mixed calls between the C allocator and the Python memory manager " -"with fatal consequences, because they implement different algorithms and " -"operate on different heaps. However, one may safely allocate and release " -"memory blocks with the C library allocator for individual purposes, as shown " -"in the following example::" +"Python objects with the functions exported by the C " +"library: :c:func:`malloc`, :c:func:`calloc`, :c:func:`realloc` " +"and :c:func:`free`. This will result in mixed calls between the C " +"allocator and the Python memory manager with fatal consequences, because " +"they implement different algorithms and operate on different heaps. " +"However, one may safely allocate and release memory blocks with the C " +"library allocator for individual purposes, as shown in the following " +"example::" msgstr "" msgid "" @@ -162,9 +163,9 @@ msgid "" msgstr "" msgid "" -"For example, buffers (non-Python objects) should be allocated using :c:func:" -"`PyMem_Malloc`, :c:func:`PyMem_RawMalloc`, or :c:func:`malloc`, but not :c:" -"func:`PyObject_Malloc`." +"For example, buffers (non-Python objects) should be allocated " +"using :c:func:`PyMem_Malloc`, :c:func:`PyMem_RawMalloc`, " +"or :c:func:`malloc`, but not :c:func:`PyObject_Malloc`." msgstr "" msgid "See :ref:`Memory Allocation APIs `." @@ -175,8 +176,8 @@ msgstr "" msgid "" "The following function sets are wrappers to the system allocator. These " -"functions are thread-safe, so a :term:`thread state` does not need to be :" -"term:`attached `." +"functions are thread-safe, so a :term:`thread state` does not need to " +"be :term:`attached `." msgstr "" msgid "" @@ -221,9 +222,9 @@ msgid "" msgstr "" msgid "" -"Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" -"func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` or :c:func:" -"`PyMem_RawCalloc`." +"Unless *p* is ``NULL``, it must have been returned by a previous call " +"to :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` " +"or :c:func:`PyMem_RawCalloc`." msgstr "" msgid "" @@ -233,9 +234,9 @@ msgstr "" msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " -"previous call to :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` or :c:" -"func:`PyMem_RawCalloc`. Otherwise, or if ``PyMem_RawFree(p)`` has been " -"called before, undefined behavior occurs." +"previous call to :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawRealloc` " +"or :c:func:`PyMem_RawCalloc`. Otherwise, or if ``PyMem_RawFree(p)`` has " +"been called before, undefined behavior occurs." msgstr "" msgid "If *p* is ``NULL``, no operation is performed." @@ -253,8 +254,8 @@ msgstr "" msgid "" "In the GIL-enabled build (default build) the :ref:`default memory allocator " "` uses the :ref:`pymalloc memory allocator " -"`, whereas in the :term:`free-threaded build`, the default is the :" -"ref:`mimalloc memory allocator ` instead." +"`, whereas in the :term:`free-threaded build`, the default is " +"the :ref:`mimalloc memory allocator ` instead." msgstr "" msgid "" @@ -289,8 +290,8 @@ msgid "" msgstr "" msgid "" -"Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" -"func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` or :c:func:`PyMem_Calloc`." +"Unless *p* is ``NULL``, it must have been returned by a previous call " +"to :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` or :c:func:`PyMem_Calloc`." msgstr "" msgid "" @@ -300,9 +301,9 @@ msgstr "" msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " -"previous call to :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` or :c:func:" -"`PyMem_Calloc`. Otherwise, or if ``PyMem_Free(p)`` has been called before, " -"undefined behavior occurs." +"previous call to :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc` " +"or :c:func:`PyMem_Calloc`. Otherwise, or if ``PyMem_Free(p)`` has been " +"called before, undefined behavior occurs." msgstr "" msgid "" @@ -377,10 +378,10 @@ msgid "" msgstr "" msgid "" -"The :ref:`default object allocator ` uses the :" -"ref:`pymalloc memory allocator `. In the :term:`free-threaded " -"` build, the default is the :ref:`mimalloc memory allocator " -"` instead." +"The :ref:`default object allocator ` uses " +"the :ref:`pymalloc memory allocator `. In the :term:`free-" +"threaded ` build, the default is the :ref:`mimalloc memory " +"allocator ` instead." msgstr "" msgid "" @@ -402,9 +403,9 @@ msgid "" msgstr "" msgid "" -"Unless *p* is ``NULL``, it must have been returned by a previous call to :c:" -"func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` or :c:func:" -"`PyObject_Calloc`." +"Unless *p* is ``NULL``, it must have been returned by a previous call " +"to :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` " +"or :c:func:`PyObject_Calloc`." msgstr "" msgid "" @@ -414,19 +415,19 @@ msgstr "" msgid "" "Frees the memory block pointed to by *p*, which must have been returned by a " -"previous call to :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` or :c:" -"func:`PyObject_Calloc`. Otherwise, or if ``PyObject_Free(p)`` has been " -"called before, undefined behavior occurs." +"previous call to :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc` " +"or :c:func:`PyObject_Calloc`. Otherwise, or if ``PyObject_Free(p)`` has " +"been called before, undefined behavior occurs." msgstr "" msgid "" -"Do not call this directly to free an object's memory; call the type's :c:" -"member:`~PyTypeObject.tp_free` slot instead." +"Do not call this directly to free an object's memory; call the " +"type's :c:member:`~PyTypeObject.tp_free` slot instead." msgstr "" msgid "" -"Do not use this for memory allocated by :c:macro:`PyObject_GC_New` or :c:" -"macro:`PyObject_GC_NewVar`; use :c:func:`PyObject_GC_Del` instead." +"Do not use this for memory allocated by :c:macro:`PyObject_GC_New` " +"or :c:macro:`PyObject_GC_NewVar`; use :c:func:`PyObject_GC_Del` instead." msgstr "" msgid "" @@ -462,10 +463,10 @@ msgid "Default memory allocators:" msgstr "" msgid "Configuration" -msgstr "" +msgstr "ਸੰਰਚਨਾ" msgid "Name" -msgstr "" +msgstr "ਨਾਮ" msgid "PyMem_RawMalloc" msgstr "" @@ -537,8 +538,9 @@ msgid "Name: value for :envvar:`PYTHONMALLOC` environment variable." msgstr "" msgid "" -"``malloc``: system allocators from the standard C library, C functions: :c:" -"func:`malloc`, :c:func:`calloc`, :c:func:`realloc` and :c:func:`free`." +"``malloc``: system allocators from the standard C library, C " +"functions: :c:func:`malloc`, :c:func:`calloc`, :c:func:`realloc` " +"and :c:func:`free`." msgstr "" msgid "``pymalloc``: :ref:`pymalloc memory allocator `." @@ -567,7 +569,7 @@ msgid "Field" msgstr "" msgid "Meaning" -msgstr "" +msgstr "ਅਰਥ" msgid "``void *ctx``" msgstr "" @@ -600,8 +602,8 @@ msgid "free a memory block" msgstr "" msgid "" -"The :c:type:`!PyMemAllocator` structure was renamed to :c:type:" -"`PyMemAllocatorEx` and a new ``calloc`` field was added." +"The :c:type:`!PyMemAllocator` structure was renamed " +"to :c:type:`PyMemAllocatorEx` and a new ``calloc`` field was added." msgstr "" msgid "Enum used to identify an allocator domain. Domains:" @@ -650,8 +652,8 @@ msgstr "" msgid "" "For the remaining domains, the allocator must also be thread-safe: the " -"allocator may be called in different interpreters that do not share a :term:" -"`GIL`." +"allocator may be called in different interpreters that do not share " +"a :term:`GIL`." msgstr "" msgid "" @@ -669,19 +671,20 @@ msgid ":c:func:`PyMem_SetAllocator` does have the following contract:" msgstr "" msgid "" -"It can be called after :c:func:`Py_PreInitialize` and before :c:func:" -"`Py_InitializeFromConfig` to install a custom memory allocator. There are no " -"restrictions over the installed allocator other than the ones imposed by the " -"domain (for instance, the Raw Domain allows the allocator to be called " -"without an :term:`attached thread state`). See :ref:`the section on " -"allocator domains ` for more information." +"It can be called after :c:func:`Py_PreInitialize` and " +"before :c:func:`Py_InitializeFromConfig` to install a custom memory " +"allocator. There are no restrictions over the installed allocator other than " +"the ones imposed by the domain (for instance, the Raw Domain allows the " +"allocator to be called without an :term:`attached thread state`). " +"See :ref:`the section on allocator domains ` for more " +"information." msgstr "" msgid "" -"If called after Python has finish initializing (after :c:func:" -"`Py_InitializeFromConfig` has been called) the allocator **must** wrap the " -"existing allocator. Substituting the current allocator for some other " -"arbitrary one is **not supported**." +"If called after Python has finish initializing " +"(after :c:func:`Py_InitializeFromConfig` has been called) the allocator " +"**must** wrap the existing allocator. Substituting the current allocator for " +"some other arbitrary one is **not supported**." msgstr "" msgid "All allocators must be thread-safe." @@ -696,8 +699,8 @@ msgid "Debug hooks on the Python memory allocators" msgstr "" msgid "" -"When :ref:`Python is built in debug mode `, the :c:func:" -"`PyMem_SetupDebugHooks` function is called at the :ref:`Python " +"When :ref:`Python is built in debug mode `, " +"the :c:func:`PyMem_SetupDebugHooks` function is called at the :ref:`Python " "preinitialization ` to setup debug hooks on Python memory " "allocators to detect memory errors." msgstr "" @@ -837,11 +840,11 @@ msgstr "" msgid "" "The :c:func:`PyMem_SetupDebugHooks` function now also works on Python " -"compiled in release mode. On error, the debug hooks now use :mod:" -"`tracemalloc` to get the traceback where a memory block was allocated. The " -"debug hooks now also check if there is an :term:`attached thread state` when " -"functions of :c:macro:`PYMEM_DOMAIN_OBJ` and :c:macro:`PYMEM_DOMAIN_MEM` " -"domains are called." +"compiled in release mode. On error, the debug hooks now " +"use :mod:`tracemalloc` to get the traceback where a memory block was " +"allocated. The debug hooks now also check if there is an :term:`attached " +"thread state` when functions of :c:macro:`PYMEM_DOMAIN_OBJ` " +"and :c:macro:`PYMEM_DOMAIN_MEM` domains are called." msgstr "" msgid "" @@ -862,15 +865,15 @@ msgid "" "hugepages`, the arena size on 64-bit platforms is increased to 2 MiB to " "match the huge page size, and arena allocation will attempt to use huge " "pages (``MAP_HUGETLB`` on Linux, ``MEM_LARGE_PAGES`` on Windows) with " -"automatic fallback to regular pages. It falls back to :c:func:" -"`PyMem_RawMalloc` and :c:func:`PyMem_RawRealloc` for allocations larger than " -"512 bytes." +"automatic fallback to regular pages. It falls back " +"to :c:func:`PyMem_RawMalloc` and :c:func:`PyMem_RawRealloc` for allocations " +"larger than 512 bytes." msgstr "" msgid "" "*pymalloc* is the :ref:`default allocator ` of " -"the :c:macro:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) and :c:macro:" -"`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) domains." +"the :c:macro:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) " +"and :c:macro:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) domains." msgstr "" msgid "The arena allocator uses the following functions:" @@ -887,8 +890,9 @@ msgstr "" msgid "" "This allocator is disabled if Python is configured with the :option:`--" -"without-pymalloc` option. It can also be disabled at runtime using the :" -"envvar:`PYTHONMALLOC` environment variable (ex: ``PYTHONMALLOC=malloc``)." +"without-pymalloc` option. It can also be disabled at runtime using " +"the :envvar:`PYTHONMALLOC` environment variable (ex: " +"``PYTHONMALLOC=malloc``)." msgstr "" msgid "" @@ -941,19 +945,20 @@ msgstr "" msgid "" "In the :term:`free-threaded ` build, mimalloc is the default " -"and **required** allocator for the :c:macro:`PYMEM_DOMAIN_MEM` and :c:macro:" -"`PYMEM_DOMAIN_OBJ` domains. It cannot be disabled in free-threaded builds. " -"The free-threaded build uses per-thread mimalloc heaps, which allows " -"allocation and deallocation to proceed without locking in most cases." +"and **required** allocator for the :c:macro:`PYMEM_DOMAIN_MEM` " +"and :c:macro:`PYMEM_DOMAIN_OBJ` domains. It cannot be disabled in free-" +"threaded builds. The free-threaded build uses per-thread mimalloc heaps, " +"which allows allocation and deallocation to proceed without locking in most " +"cases." msgstr "" msgid "" "In the default (non-free-threaded) build, mimalloc is available but not the " -"default allocator. It can be selected at runtime using :envvar:" -"`PYTHONMALLOC`\\ ``=mimalloc`` (or ``mimalloc_debug`` to include :ref:`debug " -"hooks `). It can be disabled at build time using the :" -"option:`--without-mimalloc` configure option, but this option cannot be " -"combined with :option:`--disable-gil`." +"default allocator. It can be selected at runtime " +"using :envvar:`PYTHONMALLOC`\\ ``=mimalloc`` (or ``mimalloc_debug`` to " +"include :ref:`debug hooks `). It can be disabled at " +"build time using the :option:`--without-mimalloc` configure option, but this " +"option cannot be combined with :option:`--disable-gil`." msgstr "" msgid "tracemalloc C API" @@ -1035,8 +1040,9 @@ msgstr "" msgid "" "In addition to the functions aimed at handling raw memory blocks from the " -"Python heap, objects in Python are allocated and released with :c:macro:" -"`PyObject_New`, :c:macro:`PyObject_NewVar` and :c:func:`PyObject_Free`." +"Python heap, objects in Python are allocated and released " +"with :c:macro:`PyObject_New`, :c:macro:`PyObject_NewVar` " +"and :c:func:`PyObject_Free`." msgstr "" msgid "" diff --git a/c-api/memoryview.po b/c-api/memoryview.po index c34160e..948e66e 100644 --- a/c-api/memoryview.po +++ b/c-api/memoryview.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,18 +23,23 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "MemoryView objects" -msgstr "" +msgstr "MemoryView ਆਬਜੈਕਟ" msgid "" "A :class:`memoryview` object exposes the C level :ref:`buffer interface " "` as a Python object which can then be passed around like any " "other object." msgstr "" +"ਇੱਕ :class:`memoryview` ਆਬਜੈਕਟ C ਪੱਧਰ ਦੇ :ref:`buffer interface ` " +"ਨੂੰ ਇੱਕ Python ਆਬਜੈਕਟ ਵਜੋਂ ਉਪਲਬਧ ਕਰਵਾਉਂਦਾ ਹੈ, ਜਿਸ ਨੂੰ ਫਿਰ ਕਿਸੇ ਹੋਰ ਆਬਜੈਕਟ ਵਾਂਗ ਵਰਤਿਆ ਅਤੇ " +"ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "This instance of :c:type:`PyTypeObject` represents the Python memoryview " "type. This is the same object as :class:`memoryview` in the Python layer." msgstr "" +":c:type:`PyTypeObject` ਦਾ ਇਹ ਇੰਸਟੈਂਸ Python ਦੇ memoryview ਕਿਸਮ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਇਹ " +"Python ਲੇਅਰ ਵਿੱਚ :class:`memoryview` ਵਾਲਾ ਹੀ ਆਬਜੈਕਟ ਹੈ।" msgid "" "Create a memoryview object from an object that provides the buffer " @@ -42,23 +47,30 @@ msgid "" "will be read/write, otherwise it may be either read-only or read/write at " "the discretion of the exporter." msgstr "" +"ਉਸ ਆਬਜੈਕਟ ਤੋਂ ਇੱਕ memoryview ਆਬਜੈਕਟ ਬਣਾਓ ਜੋ buffer interface ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜੇ *obj* " +"ਲਿਖਣਯੋਗ buffer export ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਤਾਂ memoryview ਆਬਜੈਕਟ ਪੜ੍ਹਨ/ਲਿਖਣਯੋਗ ਹੋਵੇਗਾ। " +"ਨਹੀਂ ਤਾਂ, ਇਹ exporter ਦੇ ਫ਼ੈਸਲੇ ਅਨੁਸਾਰ ਸਿਰਫ਼-ਪੜ੍ਹਨਯੋਗ ਜਾਂ ਪੜ੍ਹਨ/ਲਿਖਣਯੋਗ ਹੋ ਸਕਦਾ ਹੈ।" msgid "Flag to request a readonly buffer." -msgstr "" +msgstr "ਸਿਰਫ਼-ਪੜ੍ਹਨਯੋਗ ਬਫ਼ਰ ਦੀ ਬੇਨਤੀ ਕਰਨ ਲਈ ਫਲੈਗ।" msgid "Flag to request a writable buffer." -msgstr "" +msgstr "ਲਿਖਣਯੋਗ ਬਫ਼ਰ ਦੀ ਬੇਨਤੀ ਕਰਨ ਲਈ ਫਲੈਗ।" msgid "" "Create a memoryview object using *mem* as the underlying buffer. *flags* can " "be one of :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE`." msgstr "" +"*mem* ਨੂੰ ਅੰਦਰੂਨੀ ਬਫ਼ਰ ਵਜੋਂ ਵਰਤਦੇ ਹੋਏ ਇੱਕ memoryview ਆਬਜੈਕਟ ਬਣਾਓ। " +"*flags* :c:macro:`PyBUF_READ` ਜਾਂ :c:macro:`PyBUF_WRITE` ਵਿੱਚੋਂ ਇੱਕ ਹੋ ਸਕਦਾ ਹੈ।" msgid "" "Create a memoryview object wrapping the given buffer structure *view*. For " "simple byte buffers, :c:func:`PyMemoryView_FromMemory` is the preferred " "function." msgstr "" +"ਦਿੱਤੀ ਗਈ ਬਫ਼ਰ ਸੰਰਚਨਾ *view* ਨੂੰ ਲਪੇਟਣ ਵਾਲਾ ਇੱਕ memoryview ਆਬਜੈਕਟ ਬਣਾਓ। ਸਧਾਰਨ ਬਾਈਟ " +"ਬਫ਼ਰਾਂ ਲਈ :c:func:`PyMemoryView_FromMemory` ਤਰਜੀਹੀ ਫੰਕਸ਼ਨ ਹੈ।" msgid "" "Create a memoryview object to a :term:`contiguous` chunk of memory (in " @@ -67,32 +79,48 @@ msgid "" "original memory. Otherwise, a copy is made and the memoryview points to a " "new bytes object." msgstr "" +"buffer interface ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਵਾਲੇ ਆਬਜੈਕਟ ਤੋਂ :term:`contiguous` ਮੈਮੋਰੀ ਦੇ ਇੱਕ ਹਿੱਸੇ " +"(ਜਾਂ ਤਾਂ 'C' ਜਾਂ 'F'ortran *order* ਵਿੱਚ) ਲਈ ਇੱਕ memoryview ਆਬਜੈਕਟ ਬਣਾਓ। ਜੇ ਮੈਮੋਰੀ " +"contiguous ਹੈ, ਤਾਂ memoryview ਆਬਜੈਕਟ ਮੂਲ ਮੈਮੋਰੀ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦਾ ਹੈ। ਨਹੀਂ ਤਾਂ, ਇੱਕ ਕਾਪੀ " +"ਬਣਾਈ ਜਾਂਦੀ ਹੈ ਅਤੇ memoryview ਇੱਕ ਨਵੇਂ bytes ਆਬਜੈਕਟ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦਾ ਹੈ।" msgid "" "*buffertype* can be one of :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE`." msgstr "" +"*buffertype* :c:macro:`PyBUF_READ` ਜਾਂ :c:macro:`PyBUF_WRITE` ਵਿੱਚੋਂ ਇੱਕ ਹੋ ਸਕਦਾ ਹੈ।" msgid "" "Return true if the object *obj* is a memoryview object. It is not currently " "allowed to create subclasses of :class:`memoryview`. This function always " "succeeds." msgstr "" +"ਜੇ ਆਬਜੈਕਟ *obj* ਇੱਕ memoryview ਆਬਜੈਕਟ ਹੈ ਤਾਂ true ਵਾਪਸ ਕਰੋ। ਇਸ " +"ਵੇਲੇ :class:`memoryview` ਦੀਆਂ ਉਪ-ਕਿਸਮਾਂ ਬਣਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ " +"ਹੁੰਦਾ ਹੈ।" msgid "" "Return a pointer to the memoryview's private copy of the exporter's buffer. " "*mview* **must** be a memoryview instance; this macro doesn't check its " "type, you must do it yourself or you will risk crashes." msgstr "" +"memoryview ਦੀ exporter ਦੇ ਬਫ਼ਰ ਦੀ ਨਿੱਜੀ ਕਾਪੀ ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ ਵਾਪਸ ਕਰੋ। *mview* " +"**ਲਾਜ਼ਮੀ ਤੌਰ 'ਤੇ** ਇੱਕ memoryview ਇੰਸਟੈਂਸ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ; ਇਹ ਮੈਕਰੋ ਇਸ ਦੀ ਕਿਸਮ ਦੀ ਜਾਂਚ " +"ਨਹੀਂ ਕਰਦਾ, ਇਸ ਲਈ ਤੁਹਾਨੂੰ ਖੁਦ ਜਾਂਚ ਕਰਨੀ ਪਵੇਗੀ, ਨਹੀਂ ਤਾਂ ਪ੍ਰੋਗਰਾਮ ਕਰੈਸ਼ ਹੋ ਸਕਦਾ ਹੈ।" msgid "" "Return either a pointer to the exporting object that the memoryview is based " -"on or ``NULL`` if the memoryview has been created by one of the functions :c:" -"func:`PyMemoryView_FromMemory` or :c:func:`PyMemoryView_FromBuffer`. *mview* " -"**must** be a memoryview instance." -msgstr "" +"on or ``NULL`` if the memoryview has been created by one of the " +"functions :c:func:`PyMemoryView_FromMemory` " +"or :c:func:`PyMemoryView_FromBuffer`. *mview* **must** be a memoryview " +"instance." +msgstr "" +"ਉਸ exporting ਆਬਜੈਕਟ ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ ਵਾਪਸ ਕਰੋ ਜਿਸ 'ਤੇ memoryview ਆਧਾਰਿਤ ਹੈ, ਜਾਂ " +"``NULL`` ਵਾਪਸ ਕਰੋ ਜੇ memoryview ਨੂੰ :c:func:`PyMemoryView_FromMemory` " +"ਜਾਂ :c:func:`PyMemoryView_FromBuffer` ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਹੈ। " +"*mview* **ਲਾਜ਼ਮੀ ਤੌਰ 'ਤੇ** ਇੱਕ memoryview ਇੰਸਟੈਂਸ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "memoryview" -msgstr "" +msgstr "memoryview" diff --git a/c-api/method.po b/c-api/method.po index bf2dec6..9eda9ac 100644 --- a/c-api/method.po +++ b/c-api/method.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,9 +38,9 @@ msgid "" msgstr "" msgid "" -"Return true if *o* is an instance method object (has type :c:data:" -"`PyInstanceMethod_Type`). The parameter must not be ``NULL``. This function " -"always succeeds." +"Return true if *o* is an instance method object (has " +"type :c:data:`PyInstanceMethod_Type`). The parameter must not be ``NULL``. " +"This function always succeeds." msgstr "" msgid "" @@ -57,7 +58,7 @@ msgid "" msgstr "" msgid "Method Objects" -msgstr "" +msgstr "ਮੈਥਡ ਆਬਜੈਕਟ" msgid "" "Methods are bound function objects. Methods are always bound to an instance " @@ -95,13 +96,13 @@ msgid "Macro version of :c:func:`PyMethod_Self` which avoids error checking." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "instancemethod" msgstr "" msgid "method" -msgstr "" +msgstr "ਵਿਧੀ" msgid "MethodType (in module types)" msgstr "" diff --git a/c-api/module.po b/c-api/module.po index 4e5b9d3..d4814e5 100644 --- a/c-api/module.po +++ b/c-api/module.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,16 +36,17 @@ msgid "" msgstr "" msgid "" -"Return true if *p* is a module object, but not a subtype of :c:data:" -"`PyModule_Type`. This function always succeeds." +"Return true if *p* is a module object, but not a subtype " +"of :c:data:`PyModule_Type`. This function always succeeds." msgstr "" msgid "" "Return a new module object with :attr:`module.__name__` set to *name*. The " -"module's :attr:`!__name__`, :attr:`~module.__doc__`, :attr:`~module." -"__package__` and :attr:`~module.__loader__` attributes are filled in (all " -"but :attr:`!__name__` are set to ``None``). The caller is responsible for " -"setting a :attr:`~module.__file__` attribute." +"module's :attr:`!" +"__name__`, :attr:`~module.__doc__`, :attr:`~module.__package__` " +"and :attr:`~module.__loader__` attributes are filled in (all but :attr:`!" +"__name__` are set to ``None``). The caller is responsible for setting " +"a :attr:`~module.__file__` attribute." msgstr "" msgid "Return ``NULL`` with an exception set on error." @@ -70,8 +71,8 @@ msgstr "" msgid "" "It is recommended extensions use other ``PyModule_*`` and ``PyObject_*`` " -"functions rather than directly manipulate a module's :attr:`~object." -"__dict__`." +"functions rather than directly manipulate a " +"module's :attr:`~object.__dict__`." msgstr "" msgid "" @@ -92,8 +93,8 @@ msgstr "" msgid "" "The returned buffer is only valid until the module is renamed or destroyed. " -"Note that Python code may rename a module by setting its :py:attr:`~module." -"__name__` attribute." +"Note that Python code may rename a module by setting " +"its :py:attr:`~module.__name__` attribute." msgstr "" msgid "" @@ -102,16 +103,16 @@ msgid "" msgstr "" msgid "" -"On error, return ``NULL`` with an exception set. Use :c:func:" -"`PyErr_Occurred` to tell this case apart from a missing :c:type:`!" -"PyModuleDef`." +"On error, return ``NULL`` with an exception set. " +"Use :c:func:`PyErr_Occurred` to tell this case apart from a " +"missing :c:type:`!PyModuleDef`." msgstr "" msgid "" -"Return the name of the file from which *module* was loaded using *module*'s :" -"attr:`~module.__file__` attribute. If this is not defined, or if it is not " -"a string, raise :exc:`SystemError` and return ``NULL``; otherwise return a " -"reference to a Unicode object." +"Return the name of the file from which *module* was loaded using " +"*module*'s :attr:`~module.__file__` attribute. If this is not defined, or " +"if it is not a string, raise :exc:`SystemError` and return ``NULL``; " +"otherwise return a reference to a Unicode object." msgstr "" msgid "" @@ -120,8 +121,9 @@ msgid "" msgstr "" msgid "" -"The returned buffer is only valid until the module's :py:attr:`~module." -"__file__` attribute is reassigned or the module is destroyed." +"The returned buffer is only valid until the " +"module's :py:attr:`~module.__file__` attribute is reassigned or the module " +"is destroyed." msgstr "" msgid "" @@ -133,17 +135,17 @@ msgid "Module definition" msgstr "" msgid "" -"Modules created using the C API are typically defined using an array of :c:" -"type:`PySlot` structs, which provides a \"description\" of how a module " -"should be created. See :ref:`capi-slots` for more information on slots in " -"general." +"Modules created using the C API are typically defined using an array " +"of :c:type:`PySlot` structs, which provides a \"description\" of how a " +"module should be created. See :ref:`capi-slots` for more information on " +"slots in general." msgstr "" msgid "" "Previously, a :c:type:`PyModuleDef` struct was necessary to define modules. " -"The older way of defining modules is still available: consult either the :" -"ref:`pymoduledef` section or earlier versions of this documentation if you " -"plan to support earlier Python versions." +"The older way of defining modules is still available: consult either " +"the :ref:`pymoduledef` section or earlier versions of this documentation if " +"you plan to support earlier Python versions." msgstr "" msgid "" @@ -166,10 +168,11 @@ msgid "" msgstr "" msgid "" -"Note that modules are typically created using a :py:class:`~importlib." -"machinery.ModuleSpec`, and when they are, the name from the spec will be " -"used instead of :c:data:`!Py_mod_name`. However, it is still recommended to " -"include this slot for introspection and debugging purposes." +"Note that modules are typically created using " +"a :py:class:`~importlib.machinery.ModuleSpec`, and when they are, the name " +"from the spec will be used instead of :c:data:`!Py_mod_name`. However, it is " +"still recommended to include this slot for introspection and debugging " +"purposes." msgstr "" msgid "" @@ -191,13 +194,14 @@ msgid "Feature slots" msgstr "" msgid "" -":c:member:`Slot ID ` whose value points to a :c:struct:" -"`PyABIInfo` structure describing the ABI that the extension is using." +":c:member:`Slot ID ` whose value points to " +"a :c:struct:`PyABIInfo` structure describing the ABI that the extension is " +"using." msgstr "" msgid "" -"A suitable :c:struct:`!PyABIInfo` variable can be defined using the :c:macro:" -"`PyABIInfo_VAR` macro, as in:" +"A suitable :c:struct:`!PyABIInfo` variable can be defined using " +"the :c:macro:`PyABIInfo_VAR` macro, as in:" msgstr "" msgid "" @@ -210,13 +214,13 @@ msgid "" msgstr "" msgid "" -"When creating a module, Python checks the value of this slot using :c:func:" -"`PyABIInfo_Check`." +"When creating a module, Python checks the value of this slot " +"using :c:func:`PyABIInfo_Check`." msgstr "" msgid "" -"This slot is required, except for modules created from :c:struct:" -"`PyModuleDef`." +"This slot is required, except for modules created " +"from :c:struct:`PyModuleDef`." msgstr "" msgid ":c:member:`Slot ID ` whose value is one of:" @@ -247,8 +251,8 @@ msgstr "" msgid "" "For historical reasons, the values are declared as pointers (``void *``). " -"When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` for :c:macro:" -"`!Py_mod_multiple_interpreters`:" +"When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` " +"for :c:macro:`!Py_mod_multiple_interpreters`:" msgstr "" msgid "" @@ -278,8 +282,8 @@ msgstr "" msgid "" "For historical reasons, the values are declared as pointers (``void *``). " -"When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` for :c:macro:" -"`!Py_mod_gil`:" +"When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` " +"for :c:macro:`!Py_mod_gil`:" msgstr "" msgid "PySlot_DATA(Py_mod_gil, Py_MOD_GIL_NOT_USED)" @@ -326,9 +330,9 @@ msgid "" msgstr "" msgid "" -"There is no requirement for the returned object to be an instance of :c:type:" -"`PyModule_Type`. However, some slots may only be used with :c:type:`!" -"PyModule_Type` instances; in particular:" +"There is no requirement for the returned object to be an instance " +"of :c:type:`PyModule_Type`. However, some slots may only be used " +"with :c:type:`!PyModule_Type` instances; in particular:" msgstr "" msgid ":c:macro:`Py_mod_exec`," @@ -367,14 +371,14 @@ msgstr "" msgid "" "For backwards compatibility, the :c:type:`PyModuleDef.m_slots` array may " "contain multiple :c:macro:`!Py_mod_exec` slots; these are processed in the " -"order they appear in the array. Elsewhere (that is, in arguments to :c:func:" -"`PyModule_FromSlotsAndSpec` and in return values of :samp:" -"`PyModExport_{}`), repeating the slot is not allowed." +"order they appear in the array. Elsewhere (that is, in arguments " +"to :c:func:`PyModule_FromSlotsAndSpec` and in return values " +"of :samp:`PyModExport_{}`), repeating the slot is not allowed." msgstr "" msgid "" -"Repeated ``Py_mod_exec`` slots are disallowed, except in :c:type:" -"`PyModuleDef.m_slots`." +"Repeated ``Py_mod_exec`` slots are disallowed, except " +"in :c:type:`PyModuleDef.m_slots`." msgstr "" msgid "" @@ -428,8 +432,8 @@ msgstr "" msgid "" "Extensions that keep references to Python objects as part of module state " -"must implement :c:macro:`Py_mod_state_traverse` and :c:macro:" -"`Py_mod_state_clear` functions to avoid reference leaks." +"must implement :c:macro:`Py_mod_state_traverse` " +"and :c:macro:`Py_mod_state_clear` functions to avoid reference leaks." msgstr "" msgid "To retrieve the state from a given module, use the following functions:" @@ -437,18 +441,20 @@ msgstr "" msgid "" "Return the \"state\" of the module, that is, a pointer to the block of " -"memory allocated at module creation time, or ``NULL``. See :c:macro:" -"`Py_mod_state_size`." +"memory allocated at module creation time, or ``NULL``. " +"See :c:macro:`Py_mod_state_size`." msgstr "" msgid "" -"On error, return ``NULL`` with an exception set. Use :c:func:" -"`PyErr_Occurred` to tell this case apart from missing module state." +"On error, return ``NULL`` with an exception set. " +"Use :c:func:`PyErr_Occurred` to tell this case apart from missing module " +"state." msgstr "" msgid "" -"Set *\\*result* to the size of *module*'s state, as specified using :c:macro:" -"`Py_mod_state_size` (or :c:member:`PyModuleDef.m_size`), and return 0." +"Set *\\*result* to the size of *module*'s state, as specified " +"using :c:macro:`Py_mod_state_size` (or :c:member:`PyModuleDef.m_size`), and " +"return 0." msgstr "" msgid "On error, set *\\*result* to -1, and return -1 with an exception set." @@ -498,9 +504,9 @@ msgid "" "This function is not called if the module state was requested but is not " "allocated yet. This is the case immediately after the module is created and " "before the module is executed (:c:data:`Py_mod_exec` function). More " -"precisely, this function is not called if the state size (:c:data:" -"`Py_mod_state_size`) is greater than 0 and the module state (as returned by :" -"c:func:`PyModule_GetState`) is ``NULL``." +"precisely, this function is not called if the state size " +"(:c:data:`Py_mod_state_size`) is greater than 0 and the module state (as " +"returned by :c:func:`PyModule_GetState`) is ``NULL``." msgstr "" msgid "" @@ -568,8 +574,8 @@ msgid "" msgstr "" msgid "" -"For modules created with :c:type:`PyModuleDef`: the address of that :c:type:" -"`PyModuleDef`;" +"For modules created with :c:type:`PyModuleDef`: the address of " +"that :c:type:`PyModuleDef`;" msgstr "" msgid "" @@ -608,9 +614,9 @@ msgid "" msgstr "" msgid "" -"Modules created from :c:type:`PyModuleDef` always use the address of the :c:" -"type:`PyModuleDef` as the token. This means that :c:macro:`!Py_mod_token` " -"cannot be used in :c:member:`PyModuleDef.m_slots`." +"Modules created from :c:type:`PyModuleDef` always use the address of " +"the :c:type:`PyModuleDef` as the token. This means that :c:macro:`!" +"Py_mod_token` cannot be used in :c:member:`PyModuleDef.m_slots`." msgstr "" msgid "Set *\\*result* to the module token for *module* and return 0." @@ -639,13 +645,14 @@ msgstr "" msgid "" "The *slots* argument must point to an array of :c:type:`PySlot` structures, " -"terminated by an entry with slot ID of 0 (typically written as :c:macro:" -"`PySlot_END`). The array must include a :c:data:`Py_mod_abi` entry." +"terminated by an entry with slot ID of 0 (typically written " +"as :c:macro:`PySlot_END`). The array must include a :c:data:`Py_mod_abi` " +"entry." msgstr "" msgid "" -"The *spec* argument may be any ``ModuleSpec``-like object, as described in :" -"c:macro:`Py_mod_create` documentation. Currently, the *spec* must have a " +"The *spec* argument may be any ``ModuleSpec``-like object, as described " +"in :c:macro:`Py_mod_create` documentation. Currently, the *spec* must have a " "``name`` attribute." msgstr "" @@ -655,10 +662,10 @@ msgid "" msgstr "" msgid "" -"Note that this does not process the module's execution slot (:c:data:" -"`Py_mod_exec`). Both :c:func:`!PyModule_FromSlotsAndSpec` and :c:func:" -"`PyModule_Exec` must be called to fully initialize a module. (See also :ref:" -"`multi-phase-initialization`.)" +"Note that this does not process the module's execution slot " +"(:c:data:`Py_mod_exec`). Both :c:func:`!PyModule_FromSlotsAndSpec` " +"and :c:func:`PyModule_Exec` must be called to fully initialize a module. " +"(See also :ref:`multi-phase-initialization`.)" msgstr "" msgid "Execute the :c:data:`Py_mod_exec` slot(s) of *module*." @@ -737,10 +744,10 @@ msgstr "" msgid "" "When using :ref:`legacy single-phase initialization ` or when creating modules dynamically using :c:func:" -"`PyModule_Create` or :c:func:`PyModule_Create2`, :c:member:`!m_size` may be " -"set to -1. This indicates that the module does not support sub-interpreters, " -"because it has global state." +"initialization>` or when creating modules dynamically " +"using :c:func:`PyModule_Create` or :c:func:`PyModule_Create2`, :c:member:`!" +"m_size` may be set to -1. This indicates that the module does not support " +"sub-interpreters, because it has global state." msgstr "" msgid "" @@ -750,15 +757,15 @@ msgstr "" msgid "" "An array of additional slots, terminated by a ``{0, NULL}`` entry. Note that " -"the entries use the older :c:type:`PyModuleDef_Slot` structure, rather than :" -"c:type:`PySlot`." +"the entries use the older :c:type:`PyModuleDef_Slot` structure, rather " +"than :c:type:`PySlot`." msgstr "" msgid "" "If the array contains slots corresponding to :c:type:`PyModuleDef` members, " -"the values must match. For example, if you use :c:macro:`Py_mod_name` in :c:" -"member:`!m_slots`, :c:member:`PyModuleDef.m_name` must be set to the same " -"pointer (not just an equal string)." +"the values must match. For example, if you use :c:macro:`Py_mod_name` " +"in :c:member:`!m_slots`, :c:member:`PyModuleDef.m_name` must be set to the " +"same pointer (not just an equal string)." msgstr "" msgid "" @@ -771,8 +778,8 @@ msgstr "" msgid "" "Note that a :c:type:`!PyModuleDef_Slot` array may be included in a :c:type:`!" -"PySlot` array using :c:macro:`Py_mod_slots`, and vice versa using :c:macro:" -"`Py_slot_subslots`." +"PySlot` array using :c:macro:`Py_mod_slots`, and vice versa " +"using :c:macro:`Py_slot_subslots`." msgstr "" msgid "" @@ -801,8 +808,9 @@ msgid "Corresponds to :c:member:`PySlot.sl_ptr`." msgstr "" msgid "" -"These members correspond to the :c:macro:`Py_mod_state_traverse`, :c:macro:" -"`Py_mod_state_clear`, and :c:macro:`Py_mod_state_free` slots, respectively." +"These members correspond to " +"the :c:macro:`Py_mod_state_traverse`, :c:macro:`Py_mod_state_clear`, " +"and :c:macro:`Py_mod_state_free` slots, respectively." msgstr "" msgid "" @@ -819,9 +827,9 @@ msgid "The type of ``PyModuleDef`` objects." msgstr "" msgid "" -":c:member:`Slot ID ` that works like :c:macro:" -"`Py_slot_subslots`, except it specifies an array of :c:type:" -"`PyModuleDef_Slot` structures." +":c:member:`Slot ID ` that works " +"like :c:macro:`Py_slot_subslots`, except it specifies an array " +"of :c:type:`PyModuleDef_Slot` structures." msgstr "" msgid "" @@ -831,9 +839,9 @@ msgstr "" msgid "" "Create a new module object, given the definition in *def*. This is a macro " -"that calls :c:func:`PyModule_Create2` with *module_api_version* set to :c:" -"macro:`PYTHON_API_VERSION`, or to :c:macro:`PYTHON_ABI_VERSION` if using " -"the :ref:`limited API `." +"that calls :c:func:`PyModule_Create2` with *module_api_version* set " +"to :c:macro:`PYTHON_API_VERSION`, or to :c:macro:`PYTHON_ABI_VERSION` if " +"using the :ref:`limited API `." msgstr "" msgid "" @@ -854,8 +862,9 @@ msgstr "" msgid "" "This macro calls :c:func:`PyModule_FromDefAndSpec2` with " -"*module_api_version* set to :c:macro:`PYTHON_API_VERSION`, or to :c:macro:" -"`PYTHON_ABI_VERSION` if using the :ref:`limited API `." +"*module_api_version* set to :c:macro:`PYTHON_API_VERSION`, or " +"to :c:macro:`PYTHON_ABI_VERSION` if using the :ref:`limited API `." msgstr "" msgid "Prefer :c:func:`PyModule_FromSlotsAndSpec` in new code." @@ -968,10 +977,10 @@ msgstr "" msgid "" "The number of different *name* strings passed to this function should be " "kept small, usually by only using statically allocated strings as *name*. " -"For names that aren't known at compile time, prefer calling :c:func:" -"`PyUnicode_FromString` and :c:func:`PyObject_SetAttr` directly. For more " -"details, see :c:func:`PyUnicode_InternFromString`, which may be used " -"internally to create a key object." +"For names that aren't known at compile time, prefer " +"calling :c:func:`PyUnicode_FromString` and :c:func:`PyObject_SetAttr` " +"directly. For more details, see :c:func:`PyUnicode_InternFromString`, which " +"may be used internally to create a key object." msgstr "" msgid "" @@ -1004,8 +1013,8 @@ msgid "" msgstr "" msgid "" -"This means that its return value must be checked, and calling code must :c:" -"func:`Py_XDECREF` *value* manually on error." +"This means that its return value must be checked, and calling code " +"must :c:func:`Py_XDECREF` *value* manually on error." msgstr "" msgid "" @@ -1028,8 +1037,8 @@ msgid "" msgstr "" msgid "" -"This is a convenience function that calls :c:func:`PyLong_FromLong` and :c:" -"func:`PyModule_AddObjectRef`; see their documentation for details." +"This is a convenience function that calls :c:func:`PyLong_FromLong` " +"and :c:func:`PyModule_AddObjectRef`; see their documentation for details." msgstr "" msgid "" @@ -1040,9 +1049,9 @@ msgid "" msgstr "" msgid "" -"This is a convenience function that calls :c:func:" -"`PyUnicode_InternFromString` and :c:func:`PyModule_AddObjectRef`; see their " -"documentation for details." +"This is a convenience function that " +"calls :c:func:`PyUnicode_InternFromString` " +"and :c:func:`PyModule_AddObjectRef`; see their documentation for details." msgstr "" msgid "" @@ -1096,12 +1105,12 @@ msgstr "" msgid "" "Indicate that *module* does or does not support running without the global " "interpreter lock (GIL), using one of the values from :c:macro:`Py_mod_gil`. " -"It must be called during *module*'s initialization function when using :ref:" -"`single-phase-initialization`. If this function is not called during module " -"initialization, the import machinery assumes the module does not support " -"running without the GIL. This function is only available in Python builds " -"configured with :option:`--disable-gil`. Return ``-1`` with an exception set " -"on error, ``0`` on success." +"It must be called during *module*'s initialization function when " +"using :ref:`single-phase-initialization`. If this function is not called " +"during module initialization, the import machinery assumes the module does " +"not support running without the GIL. This function is only available in " +"Python builds configured with :option:`--disable-gil`. Return ``-1`` with an " +"exception set on error, ``0`` on success." msgstr "" msgid "Module lookup (single-phase initialization)" @@ -1130,8 +1139,8 @@ msgstr "" msgid "" "Attaches the module object passed to the function to the interpreter state. " -"This allows the module object to be accessible via :c:func:" -"`PyState_FindModule`." +"This allows the module object to be accessible " +"via :c:func:`PyState_FindModule`." msgstr "" msgid "Only effective on modules created using single-phase initialization." @@ -1165,10 +1174,10 @@ msgid "" msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "module" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "ModuleType (in module types)" msgstr "" diff --git a/c-api/monitoring.po b/c-api/monitoring.po index e71b5f0..2880637 100644 --- a/c-api/monitoring.po +++ b/c-api/monitoring.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,10 +39,10 @@ msgid "" "accepts a ``PyMonitoringState`` struct which contains concise information " "about the activation state of events, as well as the event arguments, which " "include a ``PyObject*`` representing the code object, the instruction offset " -"and sometimes additional, event-specific arguments (see :mod:`sys." -"monitoring` for details about the signatures of the different event " -"callbacks). The ``codelike`` argument should be an instance of :class:`types." -"CodeType` or of a type that emulates it." +"and sometimes additional, event-specific arguments " +"(see :mod:`sys.monitoring` for details about the signatures of the different " +"event callbacks). The ``codelike`` argument should be an instance " +"of :class:`types.CodeType` or of a type that emulates it." msgstr "" msgid "" @@ -100,23 +100,23 @@ msgid "Fire a ``C_RETURN`` event." msgstr "" msgid "" -"Fire a ``PY_THROW`` event with the current exception (as returned by :c:func:" -"`PyErr_GetRaisedException`)." +"Fire a ``PY_THROW`` event with the current exception (as returned " +"by :c:func:`PyErr_GetRaisedException`)." msgstr "" msgid "" -"Fire a ``RAISE`` event with the current exception (as returned by :c:func:" -"`PyErr_GetRaisedException`)." +"Fire a ``RAISE`` event with the current exception (as returned " +"by :c:func:`PyErr_GetRaisedException`)." msgstr "" msgid "" -"Fire a ``C_RAISE`` event with the current exception (as returned by :c:func:" -"`PyErr_GetRaisedException`)." +"Fire a ``C_RAISE`` event with the current exception (as returned " +"by :c:func:`PyErr_GetRaisedException`)." msgstr "" msgid "" -"Fire a ``RERAISE`` event with the current exception (as returned by :c:func:" -"`PyErr_GetRaisedException`)." +"Fire a ``RERAISE`` event with the current exception (as returned " +"by :c:func:`PyErr_GetRaisedException`)." msgstr "" msgid "" @@ -125,14 +125,14 @@ msgid "" msgstr "" msgid "" -"Fire a ``PY_UNWIND`` event with the current exception (as returned by :c:" -"func:`PyErr_GetRaisedException`)." +"Fire a ``PY_UNWIND`` event with the current exception (as returned " +"by :c:func:`PyErr_GetRaisedException`)." msgstr "" msgid "" -"Fire a ``STOP_ITERATION`` event. If ``value`` is an instance of :exc:" -"`StopIteration`, it is used. Otherwise, a new :exc:`StopIteration` instance " -"is created with ``value`` as its argument." +"Fire a ``STOP_ITERATION`` event. If ``value`` is an instance " +"of :exc:`StopIteration`, it is used. Otherwise, a new :exc:`StopIteration` " +"instance is created with ``value`` as its argument." msgstr "" msgid "Managing the Monitoring State" @@ -147,12 +147,12 @@ msgid "" "Enter a monitored scope. ``event_types`` is an array of the event IDs for " "events that may be fired from the scope. For example, the ID of a " "``PY_START`` event is the value ``PY_MONITORING_EVENT_PY_START``, which is " -"numerically equal to the base-2 logarithm of ``sys.monitoring.events." -"PY_START``. ``state_array`` is an array with a monitoring state entry for " -"each event in ``event_types``, it is allocated by the user but populated by :" -"c:func:`!PyMonitoring_EnterScope` with information about the activation " -"state of the event. The size of ``event_types`` (and hence also of " -"``state_array``) is given in ``length``." +"numerically equal to the base-2 logarithm of " +"``sys.monitoring.events.PY_START``. ``state_array`` is an array with a " +"monitoring state entry for each event in ``event_types``, it is allocated by " +"the user but populated by :c:func:`!PyMonitoring_EnterScope` with " +"information about the activation state of the event. The size of " +"``event_types`` (and hence also of ``state_array``) is given in ``length``." msgstr "" msgid "" @@ -235,6 +235,14 @@ msgstr "" msgid ":monitoring-event:`STOP_ITERATION`" msgstr "" +msgid "" +"Use :c:macro:`PY_MONITORING_EVENT_BRANCH_LEFT` " +"and :c:macro:`PY_MONITORING_EVENT_BRANCH_RIGHT` instead." +msgstr "" + +msgid ":monitoring-event:`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT`" +msgstr "" + msgid "" "Exit the last scope that was entered with :c:func:`!PyMonitoring_EnterScope`." msgstr "" diff --git a/c-api/none.po b/c-api/none.po index 417edbb..89c6c6d 100644 --- a/c-api/none.po +++ b/c-api/none.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "The ``None`` Object" -msgstr "" +msgstr "``None`` ਆਬਜੈਕਟ" msgid "" "Note that the :c:type:`PyTypeObject` for ``None`` is not directly exposed in " @@ -31,20 +31,26 @@ msgid "" "identity (using ``==`` in C) is sufficient. There is no :c:func:`!" "PyNone_Check` function for the same reason." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ``None`` ਲਈ :c:type:`PyTypeObject` ਨੂੰ Python/C API ਵਿੱਚ ਸਿੱਧੇ ਤੌਰ 'ਤੇ " +"ਉਪਲਬਧ ਨਹੀਂ ਕਰਵਾਇਆ ਗਿਆ। ਕਿਉਂਕਿ ``None`` ਇੱਕ ਸਿੰਗਲਟਨ ਹੈ, ਇਸ ਲਈ ਆਬਜੈਕਟ ਪਛਾਣ ਦੀ ਜਾਂਚ " +"ਕਰਨਾ (C ਵਿੱਚ ``==`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ) ਹੀ ਕਾਫ਼ੀ ਹੈ। ਇਸੇ ਕਾਰਨ ਕੋਈ :c:func:`!PyNone_Check` " +"ਫੰਕਸ਼ਨ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।" msgid "" "The Python ``None`` object, denoting lack of value. This object has no " "methods and is :term:`immortal`." msgstr "" +"Python ਦਾ ``None`` ਆਬਜੈਕਟ, ਜੋ ਕਿਸੇ ਮੁੱਲ ਦੀ ਗੈਰ-ਮੌਜੂਦਗੀ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਇਸ ਆਬਜੈਕਟ ਦੀਆਂ ਕੋਈ " +"ਵਿਧੀਆਂ ਨਹੀਂ ਹਨ ਅਤੇ ਇਹ :term:`immortal` ਹੈ।" msgid ":c:data:`Py_None` is :term:`immortal`." -msgstr "" +msgstr ":c:data:`Py_None` :term:`immortal` ਹੈ।" msgid "Return :c:data:`Py_None` from a function." -msgstr "" +msgstr "ਕਿਸੇ ਫੰਕਸ਼ਨ ਤੋਂ :c:data:`Py_None` ਵਾਪਸ ਕਰੋ।" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "None" -msgstr "" +msgstr "None" diff --git a/c-api/number.po b/c-api/number.po index 3c0a8bb..61f2158 100644 --- a/c-api/number.po +++ b/c-api/number.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -225,8 +225,8 @@ msgid "" msgstr "" msgid "" -"Returns the *o* converted to a Python int on success or ``NULL`` with a :exc:" -"`TypeError` exception raised on failure." +"Returns the *o* converted to a Python int on success or ``NULL`` with " +"a :exc:`TypeError` exception raised on failure." msgstr "" msgid "" @@ -238,8 +238,8 @@ msgid "" "Returns the integer *n* converted to base *base* as a string. The *base* " "argument must be one of 2, 8, 10, or 16. For base 2, 8, or 16, the returned " "string is prefixed with a base marker of ``'0b'``, ``'0o'``, or ``'0x'``, " -"respectively. If *n* is not a Python int, it is converted with :c:func:" -"`PyNumber_Index` first." +"respectively. If *n* is not a Python int, it is converted " +"with :c:func:`PyNumber_Index` first." msgstr "" msgid "" @@ -249,12 +249,12 @@ msgid "" msgstr "" msgid "" -"If *o* can be converted to a Python int but the attempt to convert to a :c:" -"type:`Py_ssize_t` value would raise an :exc:`OverflowError`, then the *exc* " -"argument is the type of exception that will be raised (usually :exc:" -"`IndexError` or :exc:`OverflowError`). If *exc* is ``NULL``, then the " -"exception is cleared and the value is clipped to ``PY_SSIZE_T_MIN`` for a " -"negative integer or ``PY_SSIZE_T_MAX`` for a positive integer." +"If *o* can be converted to a Python int but the attempt to convert to " +"a :c:type:`Py_ssize_t` value would raise an :exc:`OverflowError`, then the " +"*exc* argument is the type of exception that will be raised " +"(usually :exc:`IndexError` or :exc:`OverflowError`). If *exc* is ``NULL``, " +"then the exception is cleared and the value is clipped to ``PY_SSIZE_T_MIN`` " +"for a negative integer or ``PY_SSIZE_T_MAX`` for a positive integer." msgstr "" msgid "" @@ -264,7 +264,7 @@ msgid "" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "divmod" msgstr "" @@ -276,7 +276,7 @@ msgid "abs" msgstr "" msgid "int" -msgstr "" +msgstr "int" msgid "float" -msgstr "" +msgstr "float" diff --git a/c-api/object.po b/c-api/object.po index 0431935..29600ae 100644 --- a/c-api/object.po +++ b/c-api/object.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,7 +38,7 @@ msgid "Constant Identifier" msgstr "" msgid "Value" -msgstr "" +msgstr "ਮੁੱਲ" msgid "Returned object" msgstr "" @@ -110,8 +110,8 @@ msgid "" msgstr "" msgid "" -"This function is primarily intended for backwards compatibility: using :c:" -"func:`Py_GetConstant` is recommended for new code." +"This function is primarily intended for backwards compatibility: " +"using :c:func:`Py_GetConstant` is recommended for new code." msgstr "" msgid "" @@ -126,14 +126,15 @@ msgstr "" msgid "" "Properly handle returning :c:data:`Py_NotImplemented` from within a C " -"function (that is, create a new :term:`strong reference` to :const:" -"`NotImplemented` and return it)." +"function (that is, create a new :term:`strong reference` " +"to :const:`NotImplemented` and return it)." msgstr "" msgid "" -"Flag to be used with multiple functions that print the object (like :c:func:" -"`PyObject_Print` and :c:func:`PyFile_WriteObject`). If passed, these " -"functions use the :func:`str` of the object instead of the :func:`repr`." +"Flag to be used with multiple functions that print the object " +"(like :c:func:`PyObject_Print` and :c:func:`PyFile_WriteObject`). If passed, " +"these functions use the :func:`str` of the object instead of " +"the :func:`repr`." msgstr "" msgid "" @@ -203,24 +204,25 @@ msgid "" msgstr "" msgid "" -"Exceptions that occur when this calls :meth:`~object.__getattr__` and :meth:" -"`~object.__getattribute__` methods aren't propagated, but instead given to :" -"func:`sys.unraisablehook`. For proper error handling, use :c:func:" -"`PyObject_HasAttrWithError`, :c:func:`PyObject_GetOptionalAttr` or :c:func:" -"`PyObject_GetAttr` instead." +"Exceptions that occur when this calls :meth:`~object.__getattr__` " +"and :meth:`~object.__getattribute__` methods aren't propagated, but instead " +"given to :func:`sys.unraisablehook`. For proper error handling, " +"use :c:func:`PyObject_HasAttrWithError`, :c:func:`PyObject_GetOptionalAttr` " +"or :c:func:`PyObject_GetAttr` instead." msgstr "" msgid "" "This is the same as :c:func:`PyObject_HasAttr`, but *attr_name* is specified " -"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" -"Exceptions that occur when this calls :meth:`~object.__getattr__` and :meth:" -"`~object.__getattribute__` methods or while creating the temporary :class:" -"`str` object are silently ignored. For proper error handling, use :c:func:" -"`PyObject_HasAttrStringWithError`, :c:func:`PyObject_GetOptionalAttrString` " +"Exceptions that occur when this calls :meth:`~object.__getattr__` " +"and :meth:`~object.__getattribute__` methods or while creating the " +"temporary :class:`str` object are silently ignored. For proper error " +"handling, " +"use :c:func:`PyObject_HasAttrStringWithError`, :c:func:`PyObject_GetOptionalAttrString` " "or :c:func:`PyObject_GetAttrString` instead." msgstr "" @@ -231,32 +233,33 @@ msgid "" msgstr "" msgid "" -"If the missing attribute should not be treated as a failure, you can use :c:" -"func:`PyObject_GetOptionalAttr` instead." +"If the missing attribute should not be treated as a failure, you can " +"use :c:func:`PyObject_GetOptionalAttr` instead." msgstr "" msgid "" "This is the same as :c:func:`PyObject_GetAttr`, but *attr_name* is specified " -"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" -"If the missing attribute should not be treated as a failure, you can use :c:" -"func:`PyObject_GetOptionalAttrString` instead." +"If the missing attribute should not be treated as a failure, you can " +"use :c:func:`PyObject_GetOptionalAttrString` instead." msgstr "" msgid "" -"Variant of :c:func:`PyObject_GetAttr` which doesn't raise :exc:" -"`AttributeError` if the attribute is not found." +"Variant of :c:func:`PyObject_GetAttr` which doesn't " +"raise :exc:`AttributeError` if the attribute is not found." msgstr "" msgid "" -"If the attribute is found, return ``1`` and set *\\*result* to a new :term:" -"`strong reference` to the attribute. If the attribute is not found, return " -"``0`` and set *\\*result* to ``NULL``; the :exc:`AttributeError` is " -"silenced. If an error other than :exc:`AttributeError` is raised, return " -"``-1`` and set *\\*result* to ``NULL``." +"If the attribute is found, return ``1`` and set *\\*result* to a " +"new :term:`strong reference` to the attribute. If the attribute is not " +"found, return ``0`` and set *\\*result* to ``NULL``; " +"the :exc:`AttributeError` is silenced. If an error other " +"than :exc:`AttributeError` is raised, return ``-1`` and set *\\*result* to " +"``NULL``." msgstr "" msgid "" @@ -268,10 +271,11 @@ msgstr "" msgid "" "Generic attribute getter function that is meant to be put into a type " "object's ``tp_getattro`` slot. It looks for a descriptor in the dictionary " -"of classes in the object's MRO as well as an attribute in the object's :attr:" -"`~object.__dict__` (if present). As outlined in :ref:`descriptors`, data " -"descriptors take preference over instance attributes, while non-data " -"descriptors don't. Otherwise, an :exc:`AttributeError` is raised." +"of classes in the object's MRO as well as an attribute in the " +"object's :attr:`~object.__dict__` (if present). As outlined " +"in :ref:`descriptors`, data descriptors take preference over instance " +"attributes, while non-data descriptors don't. Otherwise, " +"an :exc:`AttributeError` is raised." msgstr "" msgid "" @@ -297,8 +301,8 @@ msgstr "" msgid "" "This is the same as :c:func:`PyObject_SetAttr`, but *attr_name* is specified " -"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -309,10 +313,10 @@ msgstr "" msgid "" "The number of different attribute names passed to this function should be " "kept small, usually by using a statically allocated string as *attr_name*. " -"For attribute names that aren't known at compile time, prefer calling :c:" -"func:`PyUnicode_FromString` and :c:func:`PyObject_SetAttr` directly. For " -"more details, see :c:func:`PyUnicode_InternFromString`, which may be used " -"internally to create a key object." +"For attribute names that aren't known at compile time, prefer " +"calling :c:func:`PyUnicode_FromString` and :c:func:`PyObject_SetAttr` " +"directly. For more details, see :c:func:`PyUnicode_InternFromString`, which " +"may be used internally to create a key object." msgstr "" msgid "" @@ -333,17 +337,17 @@ msgstr "" msgid "" "This is the same as :c:func:`PyObject_DelAttr`, but *attr_name* is specified " -"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" "The number of different attribute names passed to this function should be " "kept small, usually by using a statically allocated string as *attr_name*. " -"For attribute names that aren't known at compile time, prefer calling :c:" -"func:`PyUnicode_FromString` and :c:func:`PyObject_DelAttr` directly. For " -"more details, see :c:func:`PyUnicode_InternFromString`, which may be used " -"internally to create a key object for lookup." +"For attribute names that aren't known at compile time, prefer " +"calling :c:func:`PyUnicode_FromString` and :c:func:`PyObject_DelAttr` " +"directly. For more details, see :c:func:`PyUnicode_InternFromString`, which " +"may be used internally to create a key object for lookup." msgstr "" msgid "" @@ -380,12 +384,12 @@ msgstr "" msgid "" "Compare the values of *o1* and *o2* using the operation specified by *opid*, " -"which must be one of :c:macro:`Py_LT`, :c:macro:`Py_LE`, :c:macro:`Py_EQ`, :" -"c:macro:`Py_NE`, :c:macro:`Py_GT`, or :c:macro:`Py_GE`, corresponding to " -"``<``, ``<=``, ``==``, ``!=``, ``>``, or ``>=`` respectively. This is the " -"equivalent of the Python expression ``o1 op o2``, where ``op`` is the " -"operator corresponding to *opid*. Returns the value of the comparison on " -"success, or ``NULL`` on failure." +"which must be one " +"of :c:macro:`Py_LT`, :c:macro:`Py_LE`, :c:macro:`Py_EQ`, :c:macro:`Py_NE`, :c:macro:`Py_GT`, " +"or :c:macro:`Py_GE`, corresponding to ``<``, ``<=``, ``==``, ``!=``, ``>``, " +"or ``>=`` respectively. This is the equivalent of the Python expression ``o1 " +"op o2``, where ``op`` is the operator corresponding to *opid*. Returns the " +"value of the comparison on success, or ``NULL`` on failure." msgstr "" msgid "" @@ -427,10 +431,10 @@ msgstr "" msgid "" "As :c:func:`PyObject_Repr`, compute a string representation of object *o*, " -"but escape the non-ASCII characters in the string returned by :c:func:" -"`PyObject_Repr` with ``\\x``, ``\\u`` or ``\\U`` escapes. This generates a " -"string similar to that returned by :c:func:`PyObject_Repr` in Python 2. " -"Called by the :func:`ascii` built-in function." +"but escape the non-ASCII characters in the string returned " +"by :c:func:`PyObject_Repr` with ``\\x``, ``\\u`` or ``\\U`` escapes. This " +"generates a string similar to that returned by :c:func:`PyObject_Repr` in " +"Python 2. Called by the :func:`ascii` built-in function." msgstr "" msgid "" @@ -466,8 +470,8 @@ msgstr "" msgid "" "If *cls* has a :meth:`~type.__subclasscheck__` method, it will be called to " "determine the subclass status as described in :pep:`3119`. Otherwise, " -"*derived* is a subclass of *cls* if it is a direct or indirect subclass, i." -"e. contained in :attr:`cls.__mro__ `." +"*derived* is a subclass of *cls* if it is a direct or indirect subclass, " +"i.e. contained in :attr:`cls.__mro__ `." msgstr "" msgid "" @@ -488,8 +492,8 @@ msgid "" msgstr "" msgid "" -"An instance *inst* can override what is considered its class by having a :" -"attr:`~object.__class__` attribute." +"An instance *inst* can override what is considered its class by having " +"a :attr:`~object.__class__` attribute." msgstr "" msgid "" @@ -574,9 +578,9 @@ msgid "" msgstr "" msgid "" -"This is the same as :c:func:`PyObject_DelItem`, but *key* is specified as a :" -"c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PyObject_DelItem`, but *key* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -584,8 +588,8 @@ msgid "" "(possibly empty) list of strings appropriate for the object argument, or " "``NULL`` if there was an error. If the argument is ``NULL``, this is like " "the Python ``dir()``, returning the names of the current locals; in this " -"case, if no execution frame is active then ``NULL`` is returned but :c:func:" -"`PyErr_Occurred` will return false." +"case, if no execution frame is active then ``NULL`` is returned " +"but :c:func:`PyErr_Occurred` will return false." msgstr "" msgid "" @@ -597,16 +601,16 @@ msgstr "" msgid "" "This is equivalent to the Python ``__iter__(self): return self`` method. It " -"is intended for :term:`iterator` types, to be used in the :c:member:" -"`PyTypeObject.tp_iter` slot." +"is intended for :term:`iterator` types, to be used in " +"the :c:member:`PyTypeObject.tp_iter` slot." msgstr "" msgid "" -"This is the equivalent to the Python expression ``aiter(o)``. Takes an :" -"class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. " -"This is typically a new iterator but if the argument is an :class:" -"`AsyncIterator`, this returns itself. Raises :exc:`TypeError` and returns " -"``NULL`` if the object cannot be iterated." +"This is the equivalent to the Python expression ``aiter(o)``. Takes " +"an :class:`AsyncIterable` object and returns an :class:`AsyncIterator` for " +"it. This is typically a new iterator but if the argument is " +"an :class:`AsyncIterator`, this returns itself. Raises :exc:`TypeError` and " +"returns ``NULL`` if the object cannot be iterated." msgstr "" msgid "Get a pointer to subclass-specific data reserved for *cls*." @@ -628,21 +632,21 @@ msgstr "" msgid "" "This may be larger than requested using :c:member:`-PyType_Spec.basicsize " -"`; it is safe to use this larger size (e.g. with :c:" -"func:`!memset`)." +"`; it is safe to use this larger size (e.g. " +"with :c:func:`!memset`)." msgstr "" msgid "" -"The type *cls* **must** have been created using negative :c:member:" -"`PyType_Spec.basicsize`. Python does not check this." +"The type *cls* **must** have been created using " +"negative :c:member:`PyType_Spec.basicsize`. Python does not check this." msgstr "" msgid "On error, set an exception and return a negative value." msgstr "" msgid "" -"Get a pointer to per-item data for a class with :c:macro:" -"`Py_TPFLAGS_ITEMS_AT_END`." +"Get a pointer to per-item data for a class " +"with :c:macro:`Py_TPFLAGS_ITEMS_AT_END`." msgstr "" msgid "" @@ -693,8 +697,8 @@ msgstr "" msgid "" "This function is intended to be used soon after *obj* is created, by the " -"code that creates it, such as in the object's :c:member:`~PyTypeObject." -"tp_new` slot." +"code that creates it, such as in the " +"object's :c:member:`~PyTypeObject.tp_new` slot." msgstr "" msgid "" @@ -709,10 +713,10 @@ msgid "" "has the only reference to the object. For arguments to C functions, this " "should be used instead of checking if the reference count is ``1``. Starting " "with Python 3.14, the interpreter internally avoids some reference count " -"modifications when loading objects onto the operands stack by :term:" -"`borrowing ` references when possible, which means that " -"a reference count of ``1`` by itself does not guarantee that a function " -"argument uniquely referenced." +"modifications when loading objects onto the operands stack " +"by :term:`borrowing ` references when possible, which " +"means that a reference count of ``1`` by itself does not guarantee that a " +"function argument uniquely referenced." msgstr "" msgid "" @@ -875,7 +879,7 @@ msgid "" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "repr" msgstr "" @@ -884,19 +888,19 @@ msgid "ascii" msgstr "" msgid "string" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗ" msgid "PyObject_Str (C function)" msgstr "" msgid "bytes" -msgstr "" +msgstr "bytes" msgid "hash" -msgstr "" +msgstr "ਹੈਸ਼" msgid "type" -msgstr "" +msgstr "ਕਿਸਮ" msgid "len" msgstr "" diff --git a/c-api/objimpl.po b/c-api/objimpl.po index 43c3fdb..5624fc7 100644 --- a/c-api/objimpl.po +++ b/c-api/objimpl.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,9 +23,11 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Object Implementation Support" -msgstr "" +msgstr "ਆਬਜੈਕਟ ਲਾਗੂਕਰਨ ਸਮਰਥਨ" msgid "" "This chapter describes the functions, types, and macros used when defining " "new object types." msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਨਵੀਆਂ ਆਬਜੈਕਟ ਕਿਸਮਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਵੇਲੇ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਫੰਕਸ਼ਨਾਂ, ਕਿਸਮਾਂ ਅਤੇ " +"ਮੈਕਰੋਆਂ ਦਾ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ।" diff --git a/c-api/perfmaps.po b/c-api/perfmaps.po index 3c4e4a0..fa9fdf4 100644 --- a/c-api/perfmaps.po +++ b/c-api/perfmaps.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgid "" "create a file in the ``/tmp`` directory, which contains entries that can map " "a section of executable code to a name. This interface is described in the " "`documentation of the Linux Perf tool `_." +"kernel/git/torvalds/linux.git/tree/tools/perf/Documentation/jit-" +"interface.txt>`_." msgstr "" msgid "" @@ -51,9 +51,9 @@ msgid "" "Open the ``/tmp/perf-$pid.map`` file, unless it's already opened, and create " "a lock to ensure thread-safe writes to the file (provided the writes are " "done through :c:func:`PyUnstable_WritePerfMapEntry`). Normally, there's no " -"need to call this explicitly; just use :c:func:" -"`PyUnstable_WritePerfMapEntry` and it will initialize the state on first " -"call." +"need to call this explicitly; just " +"use :c:func:`PyUnstable_WritePerfMapEntry` and it will initialize the state " +"on first call." msgstr "" msgid "" @@ -100,8 +100,8 @@ msgid "Compile the given code object using the current perf trampoline." msgstr "" msgid "" -"The \"current\" trampoline is the one set by the runtime or the most recent :" -"c:func:`PyUnstable_PerfTrampoline_SetPersistAfterFork` call." +"The \"current\" trampoline is the one set by the runtime or the most " +"recent :c:func:`PyUnstable_PerfTrampoline_SetPersistAfterFork` call." msgstr "" msgid "" @@ -110,13 +110,13 @@ msgid "" msgstr "" msgid "Parameters" -msgstr "" +msgstr "ਪੈਰਾਮੀਟਰ" msgid "The code object to compile." msgstr "" msgid "Returns" -msgstr "" +msgstr "ਵਾਪਸੀ" msgid "0 on success, -1 on failure." msgstr "" diff --git a/c-api/picklebuffer.po b/c-api/picklebuffer.po index 57fd417..1c4da1e 100644 --- a/c-api/picklebuffer.po +++ b/c-api/picklebuffer.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-11-17 14:16+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,62 +29,81 @@ msgid "" "A :class:`pickle.PickleBuffer` object wraps a :ref:`buffer-providing object " "` for out-of-band data transfer with the :mod:`pickle` module." msgstr "" +"ਇੱਕ :class:`pickle.PickleBuffer` ਆਬਜੈਕਟ, :ref:`buffer-providing object " +"` ਨੂੰ :mod:`pickle` ਮੋਡੀਊਲ ਨਾਲ out-of-band ਡਾਟਾ ਟ੍ਰਾਂਸਫ਼ਰ ਲਈ ਲਪੇਟਦਾ " +"ਹੈ।" msgid "" "This instance of :c:type:`PyTypeObject` represents the Python pickle buffer " "type. This is the same object as :class:`pickle.PickleBuffer` in the Python " "layer." msgstr "" +":c:type:`PyTypeObject` ਦਾ ਇਹ ਇੰਸਟੈਂਸ Python ਦੇ pickle buffer ਕਿਸਮ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। " +"ਇਹ Python ਲੇਅਰ ਵਿੱਚ :class:`pickle.PickleBuffer` ਵਾਲਾ ਹੀ ਆਬਜੈਕਟ ਹੈ।" msgid "" "Return true if *op* is a pickle buffer instance. This function always " "succeeds." msgstr "" +"ਜੇ *op* ਇੱਕ pickle buffer ਇੰਸਟੈਂਸ ਹੈ ਤਾਂ true ਵਾਪਸ ਕਰੋ। ਇਹ ਫੰਕਸ਼ਨ ਹਮੇਸ਼ਾਂ ਸਫਲ ਹੁੰਦਾ ਹੈ।" msgid "Create a pickle buffer from the object *obj*." -msgstr "" +msgstr "ਆਬਜੈਕਟ *obj* ਤੋਂ ਇੱਕ pickle buffer ਬਣਾਓ।" msgid "" "This function will fail if *obj* doesn't support the :ref:`buffer protocol " "`." msgstr "" +"ਜੇ *obj* :ref:`buffer protocol ` ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦਾ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ " +"ਅਸਫਲ ਹੋ ਜਾਵੇਗਾ।" msgid "" "On success, return a new pickle buffer instance. On failure, set an " "exception and return ``NULL``." msgstr "" +"ਸਫਲ ਹੋਣ 'ਤੇ, ਇੱਕ ਨਵਾਂ pickle buffer ਇੰਸਟੈਂਸ ਵਾਪਸ ਕਰੋ। ਅਸਫਲ ਹੋਣ 'ਤੇ, ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰੋ ਅਤੇ " +"``NULL`` ਵਾਪਸ ਕਰੋ।" msgid "Analogous to calling :class:`pickle.PickleBuffer` with *obj* in Python." msgstr "" +"ਇਹ Python ਵਿੱਚ *obj* ਨਾਲ :class:`pickle.PickleBuffer` ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਸਮਾਨ ਹੈ।" msgid "" "Get a pointer to the underlying :c:type:`Py_buffer` that the pickle buffer " "wraps." msgstr "" +"pickle buffer ਦੁਆਰਾ ਲਪੇਟੇ ਗਏ ਅੰਦਰੂਨੀ :c:type:`Py_buffer` ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ ਪ੍ਰਾਪਤ ਕਰੋ।" msgid "" "The returned pointer is valid as long as *picklebuf* is alive and has not " -"been released. The caller must not modify or free the returned :c:type:" -"`Py_buffer`. If the pickle buffer has been released, raise :exc:`ValueError`." +"been released. The caller must not modify or free the " +"returned :c:type:`Py_buffer`. If the pickle buffer has been released, " +"raise :exc:`ValueError`." msgstr "" +"ਜਦੋਂ ਤੱਕ *picklebuf* ਜੀਵਿਤ ਹੈ ਅਤੇ ਜਾਰੀ ਨਹੀਂ ਕੀਤਾ ਗਿਆ, ਤਦ ਤੱਕ ਵਾਪਸ ਕੀਤਾ ਗਿਆ ਪੁਆਇੰਟਰ ਵੈਧ " +"ਰਹਿੰਦਾ ਹੈ। ਕਾਲਰ ਨੂੰ ਵਾਪਸ ਕੀਤੇ ਗਏ :c:type:`Py_buffer` ਵਿੱਚ ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ ਕਰਨੀ " +"ਚਾਹੀਦੀ ਅਤੇ ਨਾ ਹੀ ਇਸ ਨੂੰ ਮੁਕਤ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਜੇ pickle buffer ਜਾਰੀ ਕੀਤਾ ਜਾ ਚੁੱਕਾ ਹੈ, " +"ਤਾਂ :exc:`ValueError` ਪੈਦਾ ਕਰੋ।" msgid "" "On success, return a pointer to the buffer view. On failure, set an " "exception and return ``NULL``." msgstr "" +"ਸਫਲ ਹੋਣ 'ਤੇ, ਬਫ਼ਰ ਦ੍ਰਿਸ਼ ਲਈ ਇੱਕ ਪੁਆਇੰਟਰ ਵਾਪਸ ਕਰੋ। ਅਸਫਲ ਹੋਣ 'ਤੇ, ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰੋ ਅਤੇ " +"``NULL`` ਵਾਪਸ ਕਰੋ।" msgid "Release the underlying buffer held by the pickle buffer." -msgstr "" +msgstr "pickle buffer ਦੁਆਰਾ ਰੱਖੇ ਗਏ ਅੰਦਰੂਨੀ ਬਫ਼ਰ ਨੂੰ ਜਾਰੀ ਕਰੋ।" msgid "" "Return ``0`` on success. On failure, set an exception and return ``-1``." -msgstr "" +msgstr "ਸਫਲ ਹੋਣ 'ਤੇ ``0`` ਵਾਪਸ ਕਰੋ। ਅਸਫਲ ਹੋਣ 'ਤੇ, ਇੱਕ ਅਪਵਾਦ ਸੈੱਟ ਕਰੋ ਅਤੇ ``-1`` ਵਾਪਸ ਕਰੋ।" msgid "Analogous to calling :meth:`pickle.PickleBuffer.release` in Python." -msgstr "" +msgstr "ਇਹ Python ਵਿੱਚ :meth:`pickle.PickleBuffer.release` ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਸਮਾਨ ਹੈ।" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "PickleBuffer" -msgstr "" +msgstr "PickleBuffer" diff --git a/c-api/profiling.po b/c-api/profiling.po deleted file mode 100644 index 7431659..0000000 --- a/c-api/profiling.po +++ /dev/null @@ -1,260 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Profiling and tracing" -msgstr "" - -msgid "" -"The Python interpreter provides some low-level support for attaching " -"profiling and execution tracing facilities. These are used for profiling, " -"debugging, and coverage analysis tools." -msgstr "" - -msgid "" -"This C interface allows the profiling or tracing code to avoid the overhead " -"of calling through Python-level callable objects, making a direct C function " -"call instead. The essential attributes of the facility have not changed; " -"the interface allows trace functions to be installed per-thread, and the " -"basic events reported to the trace function are the same as had been " -"reported to the Python-level trace functions in previous versions." -msgstr "" - -msgid "" -"The type of the trace function registered using :c:func:`PyEval_SetProfile` " -"and :c:func:`PyEval_SetTrace`. The first parameter is the object passed to " -"the registration function as *obj*, *frame* is the frame object to which the " -"event pertains, *what* is one of the constants :c:data:`PyTrace_CALL`, :c:" -"data:`PyTrace_EXCEPTION`, :c:data:`PyTrace_LINE`, :c:data:`PyTrace_RETURN`, :" -"c:data:`PyTrace_C_CALL`, :c:data:`PyTrace_C_EXCEPTION`, :c:data:" -"`PyTrace_C_RETURN`, or :c:data:`PyTrace_OPCODE`, and *arg* depends on the " -"value of *what*:" -msgstr "" - -msgid "Value of *what*" -msgstr "" - -msgid "Meaning of *arg*" -msgstr "" - -msgid ":c:data:`PyTrace_CALL`" -msgstr "" - -msgid "Always :c:data:`Py_None`." -msgstr "" - -msgid ":c:data:`PyTrace_EXCEPTION`" -msgstr "" - -msgid "Exception information as returned by :func:`sys.exc_info`." -msgstr "" - -msgid ":c:data:`PyTrace_LINE`" -msgstr "" - -msgid ":c:data:`PyTrace_RETURN`" -msgstr "" - -msgid "" -"Value being returned to the caller, or ``NULL`` if caused by an exception." -msgstr "" - -msgid ":c:data:`PyTrace_C_CALL`" -msgstr "" - -msgid "Function object being called." -msgstr "" - -msgid ":c:data:`PyTrace_C_EXCEPTION`" -msgstr "" - -msgid ":c:data:`PyTrace_C_RETURN`" -msgstr "" - -msgid ":c:data:`PyTrace_OPCODE`" -msgstr "" - -msgid "" -"The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " -"a new call to a function or method is being reported, or a new entry into a " -"generator. Note that the creation of the iterator for a generator function " -"is not reported as there is no control transfer to the Python bytecode in " -"the corresponding frame." -msgstr "" - -msgid "" -"The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " -"an exception has been raised. The callback function is called with this " -"value for *what* when after any bytecode is processed after which the " -"exception becomes set within the frame being executed. The effect of this " -"is that as exception propagation causes the Python stack to unwind, the " -"callback is called upon return to each frame as the exception propagates. " -"Only trace functions receive these events; they are not needed by the " -"profiler." -msgstr "" - -msgid "" -"The value passed as the *what* parameter to a :c:type:`Py_tracefunc` " -"function (but not a profiling function) when a line-number event is being " -"reported. It may be disabled for a frame by setting :attr:`~frame." -"f_trace_lines` to *0* on that frame." -msgstr "" - -msgid "" -"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " -"a call is about to return." -msgstr "" - -msgid "" -"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " -"a C function is about to be called." -msgstr "" - -msgid "" -"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " -"a C function has raised an exception." -msgstr "" - -msgid "" -"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " -"a C function has returned." -msgstr "" - -msgid "" -"The value for the *what* parameter to :c:type:`Py_tracefunc` functions (but " -"not profiling functions) when a new opcode is about to be executed. This " -"event is not emitted by default: it must be explicitly requested by setting :" -"attr:`~frame.f_trace_opcodes` to *1* on the frame." -msgstr "" - -msgid "" -"Set the profiler function to *func*. The *obj* parameter is passed to the " -"function as its first parameter, and may be any Python object, or ``NULL``. " -"If the profile function needs to maintain state, using a different value for " -"*obj* for each thread provides a convenient and thread-safe place to store " -"it. The profile function is called for all monitored events except :c:data:" -"`PyTrace_LINE` :c:data:`PyTrace_OPCODE` and :c:data:`PyTrace_EXCEPTION`." -msgstr "" - -msgid "See also the :func:`sys.setprofile` function." -msgstr "" - -msgid "The caller must have an :term:`attached thread state`." -msgstr "" - -msgid "" -"Like :c:func:`PyEval_SetProfile` but sets the profile function in all " -"running threads belonging to the current interpreter instead of the setting " -"it only on the current thread." -msgstr "" - -msgid "" -"As :c:func:`PyEval_SetProfile`, this function ignores any exceptions raised " -"while setting the profile functions in all threads." -msgstr "" - -msgid "" -"Set the tracing function to *func*. This is similar to :c:func:" -"`PyEval_SetProfile`, except the tracing function does receive line-number " -"events and per-opcode events, but does not receive any event related to C " -"function objects being called. Any trace function registered using :c:func:" -"`PyEval_SetTrace` will not receive :c:data:`PyTrace_C_CALL`, :c:data:" -"`PyTrace_C_EXCEPTION` or :c:data:`PyTrace_C_RETURN` as a value for the " -"*what* parameter." -msgstr "" - -msgid "See also the :func:`sys.settrace` function." -msgstr "" - -msgid "" -"Like :c:func:`PyEval_SetTrace` but sets the tracing function in all running " -"threads belonging to the current interpreter instead of the setting it only " -"on the current thread." -msgstr "" - -msgid "" -"As :c:func:`PyEval_SetTrace`, this function ignores any exceptions raised " -"while setting the trace functions in all threads." -msgstr "" - -msgid "Reference tracing" -msgstr "" - -msgid "" -"The type of the trace function registered using :c:func:" -"`PyRefTracer_SetTracer`. The first parameter is a Python object that has " -"been just created (when **event** is set to :c:data:`PyRefTracer_CREATE`) or " -"about to be destroyed (when **event** is set to :c:data:" -"`PyRefTracer_DESTROY`). The **data** argument is the opaque pointer that was " -"provided when :c:func:`PyRefTracer_SetTracer` was called." -msgstr "" - -msgid "" -"If a new tracing function is registered replacing the current one, a call to " -"the trace function will be made with the object set to **NULL** and " -"**event** set to :c:data:`PyRefTracer_TRACKER_REMOVED`. This will happen " -"just before the new function is registered." -msgstr "" - -msgid "" -"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " -"a Python object has been created." -msgstr "" - -msgid "" -"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " -"a Python object has been destroyed." -msgstr "" - -msgid "" -"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " -"the current tracer is about to be replaced by a new one." -msgstr "" - -msgid "" -"Register a reference tracer function. The function will be called when a new " -"Python object has been created or when an object is going to be destroyed. " -"If **data** is provided it must be an opaque pointer that will be provided " -"when the tracer function is called. Return ``0`` on success. Set an " -"exception and return ``-1`` on error." -msgstr "" - -msgid "" -"Note that tracer functions **must not** create Python objects inside or " -"otherwise the call will be re-entrant. The tracer also **must not** clear " -"any existing exception or set an exception. A :term:`thread state` will be " -"active every time the tracer function is called." -msgstr "" - -msgid "" -"There must be an :term:`attached thread state` when calling this function." -msgstr "" - -msgid "" -"If another tracer function was already registered, the old function will be " -"called with **event** set to :c:data:`PyRefTracer_TRACKER_REMOVED` just " -"before the new function is registered." -msgstr "" - -msgid "" -"Get the registered reference tracer function and the value of the opaque " -"data pointer that was registered when :c:func:`PyRefTracer_SetTracer` was " -"called. If no tracer was registered this function will return NULL and will " -"set the **data** pointer to NULL." -msgstr "" diff --git a/c-api/refcounting.po b/c-api/refcounting.po index 058c567..e70c74b 100644 --- a/c-api/refcounting.po +++ b/c-api/refcounting.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,10 +35,10 @@ msgstr "" msgid "" "Note that the returned value may not actually reflect how many references to " -"the object are actually held. For example, some objects are :term:" -"`immortal` and have a very high refcount that does not reflect the actual " -"number of references. Consequently, do not rely on the returned value to be " -"accurate, other than a value of 0 or 1." +"the object are actually held. For example, some objects " +"are :term:`immortal` and have a very high refcount that does not reflect the " +"actual number of references. Consequently, do not rely on the returned " +"value to be accurate, other than a value of 0 or 1." msgstr "" msgid "" @@ -53,8 +53,8 @@ msgid "" msgstr "" msgid "" -"See also the function :c:func:" -"`PyUnstable_Object_IsUniqueReferencedTemporary()`." +"See also the " +"function :c:func:`PyUnstable_Object_IsUniqueReferencedTemporary()`." msgstr "" msgid ":c:func:`Py_REFCNT()` is changed to the inline static function." @@ -83,8 +83,8 @@ msgid "" msgstr "" msgid "" -"This function is usually used to convert a :term:`borrowed reference` to a :" -"term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be " +"This function is usually used to convert a :term:`borrowed reference` to " +"a :term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be " "used to create a new :term:`strong reference`." msgstr "" @@ -97,8 +97,8 @@ msgid "" msgstr "" msgid "" -"Do not expect this function to actually modify *o* in any way. For at least :" -"pep:`some objects <0683>`, this function has no effect." +"Do not expect this function to actually modify *o* in any way. For at " +"least :pep:`some objects <0683>`, this function has no effect." msgstr "" msgid "" @@ -125,7 +125,7 @@ msgid "" msgstr "" msgid "For example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "Py_INCREF(obj);\n" @@ -169,13 +169,13 @@ msgid "" msgstr "" msgid "" -"Do not expect this function to actually modify *o* in any way. For at least :" -"pep:`some objects <683>`, this function has no effect." +"Do not expect this function to actually modify *o* in any way. For at " +"least :pep:`some objects <683>`, this function has no effect." msgstr "" msgid "" -"The deallocation function can cause arbitrary Python code to be invoked (e." -"g. when a class instance with a :meth:`~object.__del__` method is " +"The deallocation function can cause arbitrary Python code to be invoked " +"(e.g. when a class instance with a :meth:`~object.__del__` method is " "deallocated). While exceptions in such code are not propagated, the " "executed code has free access to all Python global variables. This means " "that any object that is reachable from a global variable should be in a " @@ -217,8 +217,9 @@ msgid "" msgstr "" msgid "" -"Release a :term:`strong reference` to object *o*. A function version of :c:" -"func:`Py_XDECREF`. It can be used for runtime dynamic embedding of Python." +"Release a :term:`strong reference` to object *o*. A function version " +"of :c:func:`Py_XDECREF`. It can be used for runtime dynamic embedding of " +"Python." msgstr "" msgid "" diff --git a/c-api/reflection.po b/c-api/reflection.po index e1f6300..7125a8e 100644 --- a/c-api/reflection.po +++ b/c-api/reflection.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,9 +31,10 @@ msgstr "" msgid "" "Use either :c:func:`PyEval_GetFrameLocals` to obtain the same behaviour as " -"calling :func:`locals` in Python code, or else call :c:func:" -"`PyFrame_GetLocals` on the result of :c:func:`PyEval_GetFrame` to access " -"the :attr:`~frame.f_locals` attribute of the currently executing frame." +"calling :func:`locals` in Python code, or else " +"call :c:func:`PyFrame_GetLocals` on the result of :c:func:`PyEval_GetFrame` " +"to access the :attr:`~frame.f_locals` attribute of the currently executing " +"frame." msgstr "" msgid "" @@ -49,18 +50,18 @@ msgstr "" msgid "" "As this function returns a :term:`borrowed reference`, the dictionary " "returned for :term:`optimized scopes ` is cached on the " -"frame object and will remain alive as long as the frame object does. Unlike :" -"c:func:`PyEval_GetFrameLocals` and :func:`locals`, subsequent calls to this " -"function in the same frame will update the contents of the cached dictionary " -"to reflect changes in the state of the local variables rather than returning " -"a new snapshot." +"frame object and will remain alive as long as the frame object does. " +"Unlike :c:func:`PyEval_GetFrameLocals` and :func:`locals`, subsequent calls " +"to this function in the same frame will update the contents of the cached " +"dictionary to reflect changes in the state of the local variables rather " +"than returning a new snapshot." msgstr "" msgid "" -"As part of :pep:`667`, :c:func:`PyFrame_GetLocals`, :func:`locals`, and :" -"attr:`FrameType.f_locals ` no longer make use of the shared " -"cache dictionary. Refer to the :ref:`What's New entry ` for additional details." +"As part of :pep:`667`, :c:func:`PyFrame_GetLocals`, :func:`locals`, " +"and :attr:`FrameType.f_locals ` no longer make use of the " +"shared cache dictionary. Refer to the :ref:`What's New entry ` for additional details." msgstr "" msgid "Use :c:func:`PyEval_GetFrameGlobals` instead." @@ -81,20 +82,20 @@ msgstr "" msgid "" "Return a dictionary of the local variables in the current execution frame, " -"or ``NULL`` if no frame is currently executing. Equivalent to calling :func:" -"`locals` in Python code." +"or ``NULL`` if no frame is currently executing. Equivalent to " +"calling :func:`locals` in Python code." msgstr "" msgid "" "To access :attr:`~frame.f_locals` on the current frame without making an " -"independent snapshot in :term:`optimized scopes `, call :c:" -"func:`PyFrame_GetLocals` on the result of :c:func:`PyEval_GetFrame`." +"independent snapshot in :term:`optimized scopes `, " +"call :c:func:`PyFrame_GetLocals` on the result of :c:func:`PyEval_GetFrame`." msgstr "" msgid "" "Return a dictionary of the global variables in the current execution frame, " -"or ``NULL`` if no frame is currently executing. Equivalent to calling :func:" -"`globals` in Python code." +"or ``NULL`` if no frame is currently executing. Equivalent to " +"calling :func:`globals` in Python code." msgstr "" msgid "" @@ -102,9 +103,17 @@ msgid "" "else the name of *func*\\s type." msgstr "" +msgid "" +"For a Python function or method, the returned pointer refers to the " +"function's name and must not be retained across operations that may change " +"that name. In the free-threaded build, copy the string before detaching the " +"thread state or executing Python code if the name may be modified " +"concurrently." +msgstr "" + msgid "" "Return a description string, depending on the type of *func*. Return values " "include \"()\" for functions and methods, \" constructor\", \" instance\", " -"and \" object\". Concatenated with the result of :c:func:" -"`PyEval_GetFuncName`, the result will be a description of *func*." +"and \" object\". Concatenated with the result " +"of :c:func:`PyEval_GetFuncName`, the result will be a description of *func*." msgstr "" diff --git a/c-api/sentinel.po b/c-api/sentinel.po deleted file mode 100644 index 5c02a9d..0000000 --- a/c-api/sentinel.po +++ /dev/null @@ -1,59 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Sentinel objects" -msgstr "" - -msgid "" -"This instance of :c:type:`PyTypeObject` represents the Python :class:" -"`sentinel` type. This is the same object as :class:`sentinel`." -msgstr "" - -msgid "" -"Return true if *o* is a :class:`sentinel` object or a subtype. The :class:" -"`sentinel` type does not currently allow subclasses, so this check is exact. " -"Future Python versions may choose to allow subtyping. This function always " -"succeeds." -msgstr "" - -msgid "" -"Return true if *o* is a :class:`sentinel` object, but not a subtype. The :" -"class:`sentinel` type does not currently allow subclasses. Future Python " -"versions may choose to allow subtyping. This function always succeeds." -msgstr "" - -msgid "" -"Return a new :class:`sentinel` object with :attr:`~sentinel.__name__` set to " -"*name* and :attr:`~sentinel.__module__` set to *module_name*. *name* must " -"not be ``NULL``. If *module_name* is ``NULL``, :attr:`~sentinel.__module__` " -"is set to ``None``. If *repr* is ``NULL``, ``repr()`` returns :attr:" -"`~sentinel.__name__`. Return ``NULL`` with an exception set on failure." -msgstr "" - -msgid "" -"For pickling to work, *module_name* must be the name of an importable " -"module, and the sentinel must be accessible from that module under a path " -"matching *name*. Pickle treats *name* as a global variable name in " -"*module_name* (see :meth:`object.__reduce__`)." -msgstr "" diff --git a/c-api/sequence.po b/c-api/sequence.po index fd14352..5e546c6 100644 --- a/c-api/sequence.po +++ b/c-api/sequence.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,10 +27,10 @@ msgstr "" msgid "" "Return ``1`` if the object provides the sequence protocol, and ``0`` " -"otherwise. Note that it returns ``1`` for Python classes with a :meth:" -"`~object.__getitem__` method, unless they are :class:`dict` subclasses, " -"since in general it is impossible to determine what type of keys the class " -"supports. This function always succeeds." +"otherwise. Note that it returns ``1`` for Python classes with " +"a :meth:`~object.__getitem__` method, unless they are :class:`dict` " +"subclasses, since in general it is impossible to determine what type of keys " +"the class supports. This function always succeeds." msgstr "" msgid "" @@ -74,8 +74,8 @@ msgstr "" msgid "" "Assign object *v* to the *i*\\ th element of *o*. Raise an exception and " "return ``-1`` on failure; return ``0`` on success. This is the equivalent " -"of the Python statement ``o[i] = v``. This function *does not* \":term:" -"`steal`\" a reference to *v*." +"of the Python statement ``o[i] = v``. This function *does not* " +"\":term:`steal`\" a reference to *v*." msgstr "" msgid "" @@ -153,16 +153,17 @@ msgid "" msgstr "" msgid "" -"Returns the length of *o*, assuming that *o* was returned by :c:func:" -"`PySequence_Fast` and that *o* is not ``NULL``. The size can also be " -"retrieved by calling :c:func:`PySequence_Size` on *o*, but :c:func:" -"`PySequence_Fast_GET_SIZE` is faster because it can assume *o* is a list or " -"tuple." +"Returns the length of *o*, assuming that *o* was returned " +"by :c:func:`PySequence_Fast` and that *o* is not ``NULL``. The size can " +"also be retrieved by calling :c:func:`PySequence_Size` on *o*, " +"but :c:func:`PySequence_Fast_GET_SIZE` is faster because it can assume *o* " +"is a list or tuple." msgstr "" msgid "" -"Return the *i*\\ th element of *o*, assuming that *o* was returned by :c:" -"func:`PySequence_Fast`, *o* is not ``NULL``, and that *i* is within bounds." +"Return the *i*\\ th element of *o*, assuming that *o* was returned " +"by :c:func:`PySequence_Fast`, *o* is not ``NULL``, and that *i* is within " +"bounds." msgstr "" msgid "" @@ -177,17 +178,17 @@ msgid "" msgstr "" msgid "" -"Return the *i*\\ th element of *o* or ``NULL`` on failure. Faster form of :c:" -"func:`PySequence_GetItem` but without checking that :c:func:" -"`PySequence_Check` on *o* is true and without adjustment for negative " -"indices." +"Return the *i*\\ th element of *o* or ``NULL`` on failure. Faster form " +"of :c:func:`PySequence_GetItem` but without checking " +"that :c:func:`PySequence_Check` on *o* is true and without adjustment for " +"negative indices." msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "len" -msgstr "" +msgstr "len" msgid "tuple" -msgstr "" +msgstr "ਟਿਊਪਲ" diff --git a/c-api/set.po b/c-api/set.po index ea49d6d..3d4c029 100644 --- a/c-api/set.po +++ b/c-api/set.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,35 +28,32 @@ msgstr "" msgid "" "This section details the public API for :class:`set` and :class:`frozenset` " "objects. Any functionality not listed below is best accessed using either " -"the abstract object protocol (including :c:func:`PyObject_CallMethod`, :c:" -"func:`PyObject_RichCompareBool`, :c:func:`PyObject_Hash`, :c:func:" -"`PyObject_Repr`, :c:func:`PyObject_IsTrue`, :c:func:`PyObject_Print`, and :c:" -"func:`PyObject_GetIter`) or the abstract number protocol (including :c:func:" -"`PyNumber_And`, :c:func:`PyNumber_Subtract`, :c:func:`PyNumber_Or`, :c:func:" -"`PyNumber_Xor`, :c:func:`PyNumber_InPlaceAnd`, :c:func:" -"`PyNumber_InPlaceSubtract`, :c:func:`PyNumber_InPlaceOr`, and :c:func:" -"`PyNumber_InPlaceXor`)." +"the abstract object protocol " +"(including :c:func:`PyObject_CallMethod`, :c:func:`PyObject_RichCompareBool`, :c:func:`PyObject_Hash`, :c:func:`PyObject_Repr`, :c:func:`PyObject_IsTrue`, :c:func:`PyObject_Print`, " +"and :c:func:`PyObject_GetIter`) or the abstract number protocol " +"(including :c:func:`PyNumber_And`, :c:func:`PyNumber_Subtract`, :c:func:`PyNumber_Or`, :c:func:`PyNumber_Xor`, :c:func:`PyNumber_InPlaceAnd`, :c:func:`PyNumber_InPlaceSubtract`, :c:func:`PyNumber_InPlaceOr`, " +"and :c:func:`PyNumber_InPlaceXor`)." msgstr "" msgid "" "This subtype of :c:type:`PyObject` is used to hold the internal data for " -"both :class:`set` and :class:`frozenset` objects. It is like a :c:type:" -"`PyDictObject` in that it is a fixed size for small sets (much like tuple " -"storage) and will point to a separate, variable sized block of memory for " -"medium and large sized sets (much like list storage). None of the fields of " -"this structure should be considered public and all are subject to change. " -"All access should be done through the documented API rather than by " +"both :class:`set` and :class:`frozenset` objects. It is like " +"a :c:type:`PyDictObject` in that it is a fixed size for small sets (much " +"like tuple storage) and will point to a separate, variable sized block of " +"memory for medium and large sized sets (much like list storage). None of the " +"fields of this structure should be considered public and all are subject to " +"change. All access should be done through the documented API rather than by " "manipulating the values in the structure." msgstr "" msgid "" -"This is an instance of :c:type:`PyTypeObject` representing the Python :class:" -"`set` type." +"This is an instance of :c:type:`PyTypeObject` representing the " +"Python :class:`set` type." msgstr "" msgid "" -"This is an instance of :c:type:`PyTypeObject` representing the Python :class:" -"`frozenset` type." +"This is an instance of :c:type:`PyTypeObject` representing the " +"Python :class:`frozenset` type." msgstr "" msgid "" @@ -104,26 +101,26 @@ msgstr "" msgid "" "The operation is atomic on :term:`free threading ` when " -"*iterable* is a :class:`set`, :class:`frozenset`, :class:`dict` or :class:" -"`frozendict`." +"*iterable* is a :class:`set`, :class:`frozenset`, :class:`dict` " +"or :class:`frozendict`." msgstr "" msgid "" "Return a new :class:`frozenset` containing objects returned by the " "*iterable*. The *iterable* may be ``NULL`` to create a new empty frozenset. " -"Return the new set on success or ``NULL`` on failure. Raise :exc:" -"`TypeError` if *iterable* is not actually iterable." +"Return the new set on success or ``NULL`` on failure. " +"Raise :exc:`TypeError` if *iterable* is not actually iterable." msgstr "" msgid "" -"The following functions and macros are available for instances of :class:" -"`set` or :class:`frozenset` or instances of their subtypes." +"The following functions and macros are available for instances " +"of :class:`set` or :class:`frozenset` or instances of their subtypes." msgstr "" msgid "" "Return the length of a :class:`set` or :class:`frozenset` object. Equivalent " -"to ``len(anyset)``. Raises a :exc:`SystemError` if *anyset* is not a :class:" -"`set`, :class:`frozenset`, or an instance of a subtype." +"to ``len(anyset)``. Raises a :exc:`SystemError` if *anyset* is not " +"a :class:`set`, :class:`frozenset`, or an instance of a subtype." msgstr "" msgid "Macro form of :c:func:`PySet_Size` without error checking." @@ -133,15 +130,15 @@ msgid "" "Return ``1`` if found, ``0`` if not found, and ``-1`` if an error is " "encountered. Unlike the Python :meth:`~object.__contains__` method, this " "function does not automatically convert unhashable sets into temporary " -"frozensets. Raise a :exc:`TypeError` if the *key* is unhashable. Raise :exc:" -"`SystemError` if *anyset* is not a :class:`set`, :class:`frozenset`, or an " -"instance of a subtype." +"frozensets. Raise a :exc:`TypeError` if the *key* is unhashable. " +"Raise :exc:`SystemError` if *anyset* is not " +"a :class:`set`, :class:`frozenset`, or an instance of a subtype." msgstr "" msgid "" "The operation is atomic on :term:`free threading ` when " -"*key* is :class:`str`, :class:`int`, :class:`float`, :class:`bool` or :class:" -"`bytes`." +"*key* is :class:`str`, :class:`int`, :class:`float`, :class:`bool` " +"or :class:`bytes`." msgstr "" msgid "" @@ -150,8 +147,8 @@ msgid "" "values of brand new frozensets before they are exposed to other code). " "Return ``0`` on success or ``-1`` on failure. Raise a :exc:`TypeError` if " "the *key* is unhashable. Raise a :exc:`MemoryError` if there is no room to " -"grow. Raise a :exc:`SystemError` if *set* is not an instance of :class:" -"`set` or its subtype." +"grow. Raise a :exc:`SystemError` if *set* is not an instance " +"of :class:`set` or its subtype." msgstr "" msgid "" @@ -177,8 +174,8 @@ msgstr "" msgid "" "Empty an existing set of all elements. Return ``0`` on success. Return " -"``-1`` and raise :exc:`SystemError` if *set* is not an instance of :class:" -"`set` or its subtype." +"``-1`` and raise :exc:`SystemError` if *set* is not an instance " +"of :class:`set` or its subtype." msgstr "" msgid "" @@ -191,8 +188,8 @@ msgid "Deprecated API" msgstr "" msgid "" -"A constant representing the size of an internal preallocated table inside :c:" -"type:`PySetObject` instances." +"A constant representing the size of an internal preallocated table " +"inside :c:type:`PySetObject` instances." msgstr "" msgid "" @@ -206,16 +203,16 @@ msgid "If looking for the size of a set, use :c:func:`PySet_Size` instead." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "set" -msgstr "" +msgstr "ਸੈੱਟ" msgid "frozenset" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "len" -msgstr "" +msgstr "len" diff --git a/c-api/slice.po b/c-api/slice.po index efc0989..47cff8c 100644 --- a/c-api/slice.po +++ b/c-api/slice.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -67,7 +67,7 @@ msgid "" "stop, and step indices from the slice object *slice* assuming a sequence of " "length *length*, and store the length of the slice in *slicelength*. Out of " "bounds indices are clipped in a manner consistent with the handling of " -"normal slices." +"normal slices. *length* must not be negative." msgstr "" msgid "Return ``0`` on success and ``-1`` on error with an exception set." @@ -75,8 +75,8 @@ msgstr "" msgid "" "This function is considered not safe for resizable sequences. Its invocation " -"should be replaced by a combination of :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` where ::" +"should be replaced by a combination of :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices` where ::" msgstr "" msgid "" @@ -127,6 +127,11 @@ msgid "" "of normal slices." msgstr "" +msgid "" +"*length* must not be negative. *step* must not be zero and must not be less " +"than ``-PY_SSIZE_T_MAX``, as guaranteed by :c:func:`PySlice_Unpack`." +msgstr "" + msgid "" "Return the length of the slice. Always successful. Doesn't call Python " "code." @@ -136,13 +141,13 @@ msgid "Ellipsis Object" msgstr "" msgid "" -"The type of Python :const:`Ellipsis` object. Same as :class:`types." -"EllipsisType` in the Python layer." +"The type of Python :const:`Ellipsis` object. Same " +"as :class:`types.EllipsisType` in the Python layer." msgstr "" msgid "" -"The Python ``Ellipsis`` object. This object has no methods. Like :c:data:" -"`Py_None`, it is an :term:`immortal` singleton object." +"The Python ``Ellipsis`` object. This object has no methods. " +"Like :c:data:`Py_None`, it is an :term:`immortal` singleton object." msgstr "" msgid ":c:data:`Py_Ellipsis` is immortal." diff --git a/c-api/slots.po b/c-api/slots.po deleted file mode 100644 index 22d4a90..0000000 --- a/c-api/slots.po +++ /dev/null @@ -1,257 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Definition slots" -msgstr "" - -msgid "" -"To define :ref:`module objects ` and :ref:`classes ` using the C API, you may use an array of *slots* -- " -"essentially, key-value pairs that describe features of the object to create. " -"This decouples the data from the structures used at runtime, allowing " -"CPython -- and other Python C API implementations -- to update the " -"structures without breaking backwards compatibility." -msgstr "" - -msgid "" -"This section documents slots in general. For object-specific behavior and " -"slot values, see documentation for functions that apply slots:" -msgstr "" - -msgid ":c:func:`PyType_FromSlots` for types;" -msgstr "" - -msgid "" -":c:func:`PyModule_FromSlotsAndSpec` and :ref:`extension-export-hook` for " -"modules." -msgstr "" - -msgid "" -"When slots are passed to a function that applies them, the function will not " -"modify the slot array, nor any data it points to (recursively). After the " -"function is done, the caller is allowed to modify or deallocate the array " -"and any data it points to (recursively), except data explicitly marked with :" -"c:macro:`PySlot_STATIC`." -msgstr "" - -msgid "" -"Except when documented otherwise, multiple slots with the same ID (:c:member:" -"`~PySlot.sl_id`) may not occur in a single slots array." -msgstr "" - -msgid "" -"Slot arrays generalize an earlier way of defining objects: using :c:type:" -"`PyType_Spec` with :c:type:`PyType_Slot` for types, and :c:type:" -"`PyModuleDef` with :c:type:`PyModuleDef_Slot` for modules. The earlier API " -"is :term:`soft deprecated`; there are no plans to remove it." -msgstr "" - -msgid "Entries of the slots array use the following structure:" -msgstr "" - -msgid "An entry in a slots array. Defined as:" -msgstr "" - -msgid "" -"typedef struct {\n" -" uint16_t sl_id;\n" -" uint16_t sl_flags;\n" -" uint32_t _reserved; // must be 0\n" -" union {\n" -" void *sl_ptr;\n" -" void (*sl_func)(void);\n" -" Py_ssize_t sl_size;\n" -" int64_t sl_int64;\n" -" uint64_t sl_uint64;\n" -" };\n" -"} PySlot;" -msgstr "" - -msgid "A slot ID, chosen from:" -msgstr "" - -msgid "``Py_slot_*`` values documented in :ref:`pyslot-common-ids` below;" -msgstr "" - -msgid "" -"``Py_mod_*`` values for modules, as documented in :ref:`c_module_slots`;" -msgstr "" - -msgid "Values for types, as documented in :ref:`pyslot_type_slot_ids`." -msgstr "" - -msgid "" -"A :c:member:`!sl_id` of zero (:c:macro:`Py_slot_end`) marks the end of a " -"slots array." -msgstr "" - -msgid "" -"The data for the slot. These members are part of an anonymous union; the " -"member to use depends on which data type is required by the slot ID: data " -"pointer, function pointer, size, signed or unsigned integer, respectively." -msgstr "" - -msgid "" -"Except when documented otherwise for a specific slot ID, pointers (that is :" -"c:member:`!sl_ptr` and :c:member:`!sl_func`) may not be NULL." -msgstr "" - -msgid "Zero or more of the following flags, OR-ed together:" -msgstr "" - -msgid "" -"All data the slot points to is statically allocated and constant. Thus, the " -"interpreter does not need to copy the information." -msgstr "" - -msgid "This flag is implied for function pointers." -msgstr "" - -msgid "" -"The flag applies even to data the slot points to “indirectly”, except for " -"slots nested via :c:macro:`Py_slot_subslots` which may have their own :c:" -"macro:`!PySlot_STATIC` flags. For example, if applied to a :c:macro:" -"`Py_tp_members` slot that points to an array of :c:type:`PyMemberDef` " -"structures, then the entire array, as well as the name and doc strings in " -"its elements, must be static and constant." -msgstr "" - -msgid "" -"The data is stored in ``sl_ptr``; CPython will cast it to the appropriate " -"type." -msgstr "" - -msgid "" -"This flag can simplify porting from the older :c:type:`PyType_Slot` and :c:" -"type:`PyModuleDef_Slot` structures." -msgstr "" - -msgid "" -"If the slot ID is unknown, the interpreter should ignore the slot, rather " -"than fail." -msgstr "" - -msgid "" -"For example, if Python 3.16 adds a new feature with a new slot ID,attr the " -"corresponding slot may be marked :c:macro:`!PySlot_OPTIONAL` so that Python " -"3.15 ignores it." -msgstr "" - -msgid "" -"Note that the \"optionality\" only applies to unknown slot IDs. This flag " -"does not make Python skip invalid values of known slots." -msgstr "" - -msgid "Convenience macros" -msgstr "" - -msgid "" -"Convenience macros to define :c:type:`!PySlot` structures with :c:member:" -"`~PySlot.sl_id` and a particular union member set." -msgstr "" - -msgid "" -":c:macro:`!PySlot_STATIC_DATA` sets the :c:macro:`PySlot_STATIC` flag; " -"others set no flags." -msgstr "" - -msgid "" -"Note that these macros use *designated initializers*, a C language feature " -"that C++ added in the 2020 version of the standard. If your code needs to be " -"compatible with C++11 or older, use :c:macro:`PySlot_PTR` instead." -msgstr "" - -msgid "Defined as::" -msgstr "" - -msgid "" -"#define PySlot_DATA(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_ptr=(void*)(VALUE)}\n" -"\n" -"#define PySlot_FUNC(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_func=(VALUE)}\n" -"\n" -"#define PySlot_SIZE(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_size=(VALUE)}\n" -"\n" -"#define PySlot_INT64(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_int64=(VALUE)}\n" -"\n" -"#define PySlot_UINT64(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_uint64=(VALUE)}\n" -"\n" -"#define PySlot_STATIC_DATA(NAME, VALUE) \\\n" -" {.sl_id=NAME, .sl_flags=PySlot_STATIC, .sl_ptr=(VALUE)}" -msgstr "" - -msgid "Convenience macro to mark the end of a :c:type:`!PySlot` array." -msgstr "" - -msgid "#define PySlot_END {0}" -msgstr "" - -msgid "" -"Convenience macros for use in C++11-compatible code. This version of C++ " -"does not allow setting arbitrary union members in literals; instead, these " -"macros set the :c:macro:`PySlot_INTPTR` flag and cast the value to " -"``(void*)``." -msgstr "" - -msgid "" -"#define PySlot_PTR(NAME, VALUE) \\\n" -" {NAME, PySlot_INTPTR, {0}, {(void*)(VALUE)}}\n" -"\n" -"#define PySlot_PTR_STATIC(NAME, VALUE) \\\n" -" {NAME, PySlot_INTPTR|Py_SLOT_STATIC, {0}, {(void*)(VALUE)}}" -msgstr "" - -msgid "Common slot IDs" -msgstr "" - -msgid "The following slot IDs may be used in both type and module definitions." -msgstr "" - -msgid "Marks the end of a slots array. Defined as zero." -msgstr "" - -msgid "Nested slots array." -msgstr "" - -msgid "" -"The value (:c:member:`~PySlot.sl_ptr`) should point to an array of :c:type:" -"`PySlot` structures. The slots in the array (up to but not including the " -"zero-ID terminator) will be treated as if they were inserted if the current " -"slot array, at the point :c:macro:`!Py_slot_subslots` appears." -msgstr "" - -msgid "" -"Slot nesting depth is limited to 5 levels. This restriction may be lifted in " -"the future." -msgstr "" - -msgid "" -"Reserved; will always be treated as an unknown slot ID. Defined as " -"``UINT16_MAX`` (``0xFFFF``)." -msgstr "" - -msgid "" -"When used with the :c:macro:`PySlot_OPTIONAL` flag, defines a slot with no " -"effect. Without the flag, processing a slot with this ID will fail." -msgstr "" diff --git a/c-api/stable.po b/c-api/stable.po index 0c6b4c9..9dff2f9 100644 --- a/c-api/stable.po +++ b/c-api/stable.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,10 +30,10 @@ msgstr "" msgid "" "CPython's Application Binary Interface (ABI) is forward- and backwards-" -"compatible across a minor release (if these are compiled the same way; see :" -"ref:`stable-abi-platform` below). So, code compiled for Python 3.10.0 will " -"work on 3.10.8 and vice versa, but will need to be compiled separately for " -"3.9.x and 3.11.x." +"compatible across a minor release (if these are compiled the same way; " +"see :ref:`stable-abi-platform` below). So, code compiled for Python 3.10.0 " +"will work on 3.10.8 and vice versa, but will need to be compiled separately " +"for 3.9.x and 3.11.x." msgstr "" msgid "There are two tiers of C API with different stability expectations:" @@ -56,9 +56,9 @@ msgstr "" msgid "" "Names prefixed by an underscore, such as ``_Py_InternalState``, are private " "API that can change without notice even in patch releases. If you need to " -"use this API, consider reaching out to `CPython developers `_ to discuss adding public API for your use " -"case." +"use this API, consider reaching out to `CPython developers `_ to discuss adding public API for " +"your use case." msgstr "" msgid "Unstable C API" @@ -126,32 +126,32 @@ msgstr "" msgid "" "Extensions that target a stable ABI must only use a limited subset of the C " -"API. This subset is known as the :dfn:`Limited API`; its contents are :ref:" -"`listed below `." +"API. This subset is known as the :dfn:`Limited API`; its contents " +"are :ref:`listed below `." msgstr "" msgid "" "On Windows, extensions that use a Stable ABI should be linked against " -"``python3.dll`` rather than a version-specific library such as ``python39." -"dll``. This library only exposes the relevant symbols." +"``python3.dll`` rather than a version-specific library such as " +"``python39.dll``. This library only exposes the relevant symbols." msgstr "" msgid "" "On some platforms, Python will look for and load shared library files named " -"with the ``abi3`` or ``abi3t`` tag (for example, ``mymodule.abi3.so``). :" -"term:`Free-threaded ` interpreters only recognize the " -"``abi3t`` tag, while non-free-threaded ones will prefer ``abi3`` but fall " -"back to ``abi3t``. Thus, extensions compatible with both ABIs should use the " -"``abi3t`` tag." +"with the ``abi3`` or ``abi3t`` tag (for example, " +"``mymodule.abi3.so``). :term:`Free-threaded ` " +"interpreters only recognize the ``abi3t`` tag, while non-free-threaded ones " +"will prefer ``abi3`` but fall back to ``abi3t``. Thus, extensions compatible " +"with both ABIs should use the ``abi3t`` tag." msgstr "" msgid "" "Python does not necessarily check that extensions it loads have compatible " -"ABI. Extension authors are encouraged to add a check using the :c:macro:" -"`Py_mod_abi` slot or the :c:func:`PyABIInfo_Check` function, but the user " -"(or their packaging tool) is ultimately responsible for ensuring that, for " -"example, extensions built for Stable ABI 3.10 are not installed for lower " -"versions of Python." +"ABI. Extension authors are encouraged to add a check using " +"the :c:macro:`Py_mod_abi` slot or the :c:func:`PyABIInfo_Check` function, " +"but the user (or their packaging tool) is ultimately responsible for " +"ensuring that, for example, extensions built for Stable ABI 3.10 are not " +"installed for lower versions of Python." msgstr "" msgid "" @@ -180,16 +180,17 @@ msgstr "" msgid "" "To compile for a Stable ABI, define one or both of the following macros to " -"the lowest Python version your extension should support, in :c:macro:" -"`Py_PACK_VERSION` format. Typically, you should choose a specific value " -"rather than the version of the Python headers you are compiling against." +"the lowest Python version your extension should support, " +"in :c:macro:`Py_PACK_VERSION` format. Typically, you should choose a " +"specific value rather than the version of the Python headers you are " +"compiling against." msgstr "" msgid "" -"The macros must be defined before including ``Python.h``. Since :c:macro:" -"`Py_PACK_VERSION` is not available at this point, you will need to use the " -"numeric value directly. For reference, the values for a few recent Python " -"versions are:" +"The macros must be defined before including ``Python.h``. " +"Since :c:macro:`Py_PACK_VERSION` is not available at this point, you will " +"need to use the numeric value directly. For reference, the values for a few " +"recent Python versions are:" msgstr "" msgid "" @@ -205,8 +206,8 @@ msgid "" "When one of the macros is defined, ``Python.h`` will only expose API that is " "compatible with the given Stable ABI -- that is, the :ref:`Limited API " "` plus some definitions that need to be visible to the " -"compiler but should not be used directly. When both are defined, ``Python." -"h`` will only expose API compatible with both Stable ABIs." +"compiler but should not be used directly. When both are defined, " +"``Python.h`` will only expose API compatible with both Stable ABIs." msgstr "" msgid "" @@ -239,9 +240,9 @@ msgstr "" msgid "" "On a :term:`free-threaded build` -- that is, when :c:macro:`Py_GIL_DISABLED` " -"is defined -- :c:macro:`!Py_TARGET_ABI3T` defaults to the value of :c:macro:" -"`!Py_LIMITED_API`. This means that there are two ways to build for both " -"``abi3`` and ``abi3t``:" +"is defined -- :c:macro:`!Py_TARGET_ABI3T` defaults to the value " +"of :c:macro:`!Py_LIMITED_API`. This means that there are two ways to build " +"for both ``abi3`` and ``abi3t``:" msgstr "" msgid "" @@ -335,9 +336,9 @@ msgstr "" msgid "" "ABI stability depends not only on Python, but also on the compiler used, " -"lower-level libraries and compiler options. For the purposes of the :ref:" -"`Stable ABIs `, these details define a “platform”. They usually " -"depend on the OS type and processor architecture" +"lower-level libraries and compiler options. For the purposes of " +"the :ref:`Stable ABIs `, these details define a “platform”. They " +"usually depend on the OS type and processor architecture" msgstr "" msgid "" @@ -368,8 +369,8 @@ msgid "" msgstr "" msgid "" -"Most modules can use this check via the :c:data:`Py_mod_abi` slot and the :c:" -"macro:`PyABIInfo_VAR` macro, for example like this:" +"Most modules can use this check via the :c:data:`Py_mod_abi` slot and " +"the :c:macro:`PyABIInfo_VAR` macro, for example like this:" msgstr "" msgid "" @@ -393,8 +394,8 @@ msgid "Return 0 on success. On failure, raise an exception and return -1." msgstr "" msgid "" -"If the ABI is incompatible, the raised exception will be :py:exc:" -"`ImportError`." +"If the ABI is incompatible, the raised exception will " +"be :py:exc:`ImportError`." msgstr "" msgid "" @@ -442,8 +443,8 @@ msgid "This field is usually set to the following macro:" msgstr "" msgid "" -"Default flags, based on current values of macros such as :c:macro:" -"`Py_LIMITED_API` and :c:macro:`Py_GIL_DISABLED`." +"Default flags, based on current values of macros such " +"as :c:macro:`Py_LIMITED_API` and :c:macro:`Py_GIL_DISABLED`." msgstr "" msgid "" @@ -509,8 +510,8 @@ msgstr "" msgid "" "The value that should be used for this field, based on current values of " -"macros such as :c:macro:`Py_LIMITED_API`, :c:macro:`PY_VERSION_HEX` and :c:" -"macro:`Py_GIL_DISABLED`." +"macros such as :c:macro:`Py_LIMITED_API`, :c:macro:`PY_VERSION_HEX` " +"and :c:macro:`Py_GIL_DISABLED`." msgstr "" msgid "Contents of Limited API" diff --git a/c-api/structures.po b/c-api/structures.po index 4ba132c..cdbcfff 100644 --- a/c-api/structures.po +++ b/c-api/structures.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,16 +54,16 @@ msgid "" msgstr "" msgid "" -"The members must not be accessed directly; instead use macros such as :c:" -"macro:`Py_REFCNT` and :c:macro:`Py_TYPE`." +"The members must not be accessed directly; instead use macros such " +"as :c:macro:`Py_REFCNT` and :c:macro:`Py_TYPE`." msgstr "" msgid "" "In the :ref:`Stable ABI ` for Free-Threaded Builds (``abi3t``), " "this struct is opaque; its size and layout may change between Python " -"versions. In Stable ABI for non-free-threaded builds (``abi3``), the :c:" -"member:`!ob_refcnt` and :c:member:`!ob_type` fields are available, but using " -"them directly is discouraged." +"versions. In Stable ABI for non-free-threaded builds (``abi3``), " +"the :c:member:`!ob_refcnt` and :c:member:`!ob_type` fields are available, " +"but using them directly is discouraged." msgstr "" msgid "" @@ -89,31 +89,31 @@ msgid "" msgstr "" msgid "" -"This field is **reserved for use by the critical section API** (:c:macro:" -"`Py_BEGIN_CRITICAL_SECTION` / :c:macro:`Py_END_CRITICAL_SECTION`). Do " -"**not** lock it directly with ``PyMutex_Lock``; doing so can cause " +"This field is **reserved for use by the critical section API** " +"(:c:macro:`Py_BEGIN_CRITICAL_SECTION` / :c:macro:`Py_END_CRITICAL_SECTION`). " +"Do **not** lock it directly with ``PyMutex_Lock``; doing so can cause " "deadlocks. If you need your own lock, add a separate :c:type:`PyMutex` " "field to your object struct." msgstr "" msgid "" -"An extension of :c:type:`PyObject` that adds the :c:member:`~PyVarObject." -"ob_size` field. This is intended for objects that have some notion of " -"*length*." +"An extension of :c:type:`PyObject` that adds " +"the :c:member:`~PyVarObject.ob_size` field. This is intended for objects " +"that have some notion of *length*." msgstr "" msgid "" "As with :c:type:`!PyObject`, the members must not be accessed directly; " -"instead use macros such as :c:macro:`Py_SIZE`, :c:macro:`Py_REFCNT` and :c:" -"macro:`Py_TYPE`." +"instead use macros such as :c:macro:`Py_SIZE`, :c:macro:`Py_REFCNT` " +"and :c:macro:`Py_TYPE`." msgstr "" msgid "" "In the :ref:`Stable ABI ` for Free-Threaded Builds (``abi3t``), " "this struct is opaque; its size and layout may change between Python " -"versions. In Stable ABI for non-free-threaded builds (``abi3``), the :c:" -"member:`!ob_base` and :c:member:`!ob_size` fields are available, but using " -"them directly is discouraged." +"versions. In Stable ABI for non-free-threaded builds (``abi3``), " +"the :c:member:`!ob_base` and :c:member:`!ob_size` fields are available, but " +"using them directly is discouraged." msgstr "" msgid "" @@ -132,8 +132,8 @@ msgstr "" msgid "" "Object creation functions such as :c:func:`PyObject_NewVar` will generally " "set this field to the requested size (number of items). After creation, " -"arbitrary values can be stored in :c:member:`!ob_size` using :c:macro:" -"`Py_SET_SIZE`." +"arbitrary values can be stored in :c:member:`!ob_size` " +"using :c:macro:`Py_SET_SIZE`." msgstr "" msgid "" @@ -238,8 +238,8 @@ msgid "Set the :c:member:`~PyVarObject.ob_size` field of *o* to *size*." msgstr "" msgid "" -"This is a macro which expands to initialization values for a new :c:type:" -"`PyObject` type. This macro expands to::" +"This is a macro which expands to initialization values for a " +"new :c:type:`PyObject` type. This macro expands to::" msgstr "" msgid "" @@ -248,9 +248,9 @@ msgid "" msgstr "" msgid "" -"This is a macro which expands to initialization values for a new :c:type:" -"`PyVarObject` type, including the :c:member:`~PyVarObject.ob_size` field. " -"This macro expands to::" +"This is a macro which expands to initialization values for a " +"new :c:type:`PyVarObject` type, including " +"the :c:member:`~PyVarObject.ob_size` field. This macro expands to::" msgstr "" msgid "" @@ -367,20 +367,21 @@ msgid "There are these calling conventions:" msgstr "" msgid "" -"This is the typical calling convention, where the methods have the type :c:" -"type:`PyCFunction`. The function expects two :c:expr:`PyObject*` values. The " -"first one is the *self* object for methods; for module functions, it is the " -"module object. The second parameter (often called *args*) is a tuple object " -"representing all arguments. This parameter is typically processed using :c:" -"func:`PyArg_ParseTuple` or :c:func:`PyArg_UnpackTuple`." +"This is the typical calling convention, where the methods have the " +"type :c:type:`PyCFunction`. The function expects two :c:expr:`PyObject*` " +"values. The first one is the *self* object for methods; for module " +"functions, it is the module object. The second parameter (often called " +"*args*) is a tuple object representing all arguments. This parameter is " +"typically processed using :c:func:`PyArg_ParseTuple` " +"or :c:func:`PyArg_UnpackTuple`." msgstr "" msgid "" -"Can only be used in certain combinations with other flags: :ref:" -"`METH_VARARGS | METH_KEYWORDS `, :ref:" -"`METH_FASTCALL | METH_KEYWORDS ` and :ref:" -"`METH_METHOD | METH_FASTCALL | METH_KEYWORDS `." +"Can only be used in certain combinations with other " +"flags: :ref:`METH_VARARGS | METH_KEYWORDS `, :ref:`METH_FASTCALL | METH_KEYWORDS ` and :ref:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS " +"`." msgstr "" msgid ":c:expr:`METH_VARARGS | METH_KEYWORDS`" @@ -449,15 +450,15 @@ msgid "" msgstr "" msgid "" -"The function must have 2 parameters. Since the second parameter is unused, :" -"c:macro:`Py_UNUSED` can be used to prevent a compiler warning." +"The function must have 2 parameters. Since the second parameter is " +"unused, :c:macro:`Py_UNUSED` can be used to prevent a compiler warning." msgstr "" msgid "" -"Methods with a single object argument can be listed with the :c:macro:" -"`METH_O` flag, instead of invoking :c:func:`PyArg_ParseTuple` with a " -"``\"O\"`` argument. They have the type :c:type:`PyCFunction`, with the " -"*self* parameter, and a :c:expr:`PyObject*` parameter representing the " +"Methods with a single object argument can be listed with " +"the :c:macro:`METH_O` flag, instead of invoking :c:func:`PyArg_ParseTuple` " +"with a ``\"O\"`` argument. They have the type :c:type:`PyCFunction`, with " +"the *self* parameter, and a :c:expr:`PyObject*` parameter representing the " "single argument." msgstr "" @@ -489,12 +490,12 @@ msgid "" "The method will be loaded in place of existing definitions. Without " "*METH_COEXIST*, the default is to skip repeated definitions. Since slot " "wrappers are loaded before the method table, the existence of a " -"*sq_contains* slot, for example, would generate a wrapped method named :meth:" -"`~object.__contains__` and preclude the loading of a corresponding " -"PyCFunction with the same name. With the flag defined, the PyCFunction will " -"be loaded in place of the wrapper object and will co-exist with the slot. " -"This is helpful because calls to PyCFunctions are optimized more than " -"wrapper object calls." +"*sq_contains* slot, for example, would generate a wrapped method " +"named :meth:`~object.__contains__` and preclude the loading of a " +"corresponding PyCFunction with the same name. With the flag defined, the " +"PyCFunction will be loaded in place of the wrapper object and will co-exist " +"with the slot. This is helpful because calls to PyCFunctions are optimized " +"more than wrapper object calls." msgstr "" msgid "" @@ -560,8 +561,8 @@ msgid "Equivalent to ``PyCMethod_New(ml, self, NULL, NULL)``." msgstr "" msgid "" -"Get the function's flags on *func* as they were passed to :c:member:" -"`~PyMethodDef.ml_flags`." +"Get the function's flags on *func* as they were passed " +"to :c:member:`~PyMethodDef.ml_flags`." msgstr "" msgid "" @@ -580,8 +581,8 @@ msgid "" msgstr "" msgid "" -"Get the function pointer on *func* as it was passed to :c:member:" -"`~PyMethodDef.ml_meth`." +"Get the function pointer on *func* as it was passed " +"to :c:member:`~PyMethodDef.ml_meth`." msgstr "" msgid "" @@ -611,6 +612,17 @@ msgid "" "checking." msgstr "" +msgid "" +"Return a :term:`borrowed reference` to the defining class of *func* if " +"its :c:member:`~PyMethodDef.ml_flags` includes :c:macro:`METH_METHOD`. " +"Otherwise, return ``NULL`` without setting an exception." +msgstr "" + +msgid "" +"*func* must be a C function object and must not be ``NULL``. This function " +"does not perform error or type checking." +msgstr "" + msgid "Accessing attributes of extension types" msgstr "" @@ -651,18 +663,18 @@ msgstr "" msgid "" "By default (when :c:member:`~PyMemberDef.flags` is ``0``), members allow " "both read and write access. Use the :c:macro:`Py_READONLY` flag for read-" -"only access. Certain types, like :c:macro:`Py_T_STRING`, imply :c:macro:" -"`Py_READONLY`. Only :c:macro:`Py_T_OBJECT_EX` (and legacy :c:macro:" -"`T_OBJECT`) members can be deleted." +"only access. Certain types, like :c:macro:`Py_T_STRING`, " +"imply :c:macro:`Py_READONLY`. Only :c:macro:`Py_T_OBJECT_EX` (and " +"legacy :c:macro:`T_OBJECT`) members can be deleted." msgstr "" msgid "" "For heap-allocated types (created using :c:func:`PyType_FromSpec` or " "similar), ``PyMemberDef`` may contain a definition for the special member " -"``\"__vectorcalloffset__\"``, corresponding to :c:member:`~PyTypeObject." -"tp_vectorcall_offset` in type objects. This member must be defined with " -"``Py_T_PYSSIZET``, and either ``Py_READONLY`` or ``Py_READONLY | " -"Py_RELATIVE_OFFSET``. For example::" +"``\"__vectorcalloffset__\"``, corresponding " +"to :c:member:`~PyTypeObject.tp_vectorcall_offset` in type objects. This " +"member must be defined with ``Py_T_PYSSIZET``, and either ``Py_READONLY`` or " +"``Py_READONLY | Py_RELATIVE_OFFSET``. For example::" msgstr "" msgid "" @@ -677,9 +689,9 @@ msgid "(You may need to ``#include `` for :c:func:`!offsetof`.)" msgstr "" msgid "" -"The legacy offsets :c:member:`~PyTypeObject.tp_dictoffset` and :c:member:" -"`~PyTypeObject.tp_weaklistoffset` can be defined similarly using " -"``\"__dictoffset__\"`` and ``\"__weaklistoffset__\"`` members, but " +"The legacy offsets :c:member:`~PyTypeObject.tp_dictoffset` " +"and :c:member:`~PyTypeObject.tp_weaklistoffset` can be defined similarly " +"using ``\"__dictoffset__\"`` and ``\"__weaklistoffset__\"`` members, but " "extensions are strongly encouraged to use :c:macro:`Py_TPFLAGS_MANAGED_DICT` " "and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead." msgstr "" @@ -738,11 +750,11 @@ msgstr "" msgid "" "Can only be used as part of the :c:data:`Py_tp_members` :c:type:`slot " -"` when creating a class using negative :c:member:`~PyType_Spec." -"basicsize`. It is mandatory in that case. When setting :c:member:" -"`~PyTypeObject.tp_members` from the slot during class creation, Python " -"clears the flag and sets :c:member:`PyMemberDef.offset` to the offset from " -"the ``PyObject`` struct." +"` when creating a class using " +"negative :c:member:`~PyType_Spec.basicsize`. It is mandatory in that case. " +"When setting :c:member:`~PyTypeObject.tp_members` from the slot during class " +"creation, Python clears the flag and sets :c:member:`PyMemberDef.offset` to " +"the offset from the ``PyObject`` struct." msgstr "" msgid "" @@ -754,13 +766,29 @@ msgid "" msgstr "" msgid "" -"The :c:macro:`!READONLY` macro was renamed to :c:macro:`Py_READONLY`. The :c:" -"macro:`!PY_AUDIT_READ` macro was renamed with the ``Py_`` prefix. The new " -"names are now always available. Previously, these required ``#include " +"The :c:macro:`!READONLY` macro was renamed to :c:macro:`Py_READONLY`. " +"The :c:macro:`PY_AUDIT_READ` macro was renamed with the ``Py_`` prefix. The " +"new names are now always available. Previously, these required ``#include " "\"structmember.h\"``. The header is still available and it provides the old " "names." msgstr "" +msgid "" +"Soft-deprecated alias of :c:macro:`Py_AUDIT_READ` (note capitalization of " +"the ``y``). Only available with ``#include \"structmember.h\"``." +msgstr "" + +msgid "Use :c:macro:`Py_AUDIT_READ` instead." +msgstr "" + +msgid "" +"A member flag that has no effect, retained solely for backwards " +"compatibility. This is only available with ``#include \"structmember.h\"``." +msgstr "" + +msgid "Omit this flag instead." +msgstr "" + msgid "Member types" msgstr "" @@ -773,8 +801,13 @@ msgid "" msgstr "" msgid "" -"Unless marked (D), attributes defined this way cannot be deleted using e.g. :" -"keyword:`del` or :py:func:`delattr`." +"Unless marked (D), attributes defined this way cannot be deleted using " +"e.g. :keyword:`del` or :py:func:`delattr`." +msgstr "" + +msgid "" +"These values are available when compiling for the :ref:`Stable ABI ` " +"since version 3.12." msgstr "" msgid "Macro name" @@ -938,7 +971,7 @@ msgid "" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "classmethod" msgstr "" diff --git a/c-api/subinterpreters.po b/c-api/subinterpreters.po deleted file mode 100644 index 6760e7f..0000000 --- a/c-api/subinterpreters.po +++ /dev/null @@ -1,527 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Multiple interpreters in a Python process" -msgstr "" - -msgid "" -"While in most uses, you will only embed a single Python interpreter, there " -"are cases where you need to create several independent interpreters in the " -"same process and perhaps even in the same thread. Sub-interpreters allow you " -"to do that." -msgstr "" - -msgid "" -"The \"main\" interpreter is the first one created when the runtime " -"initializes. It is usually the only Python interpreter in a process. Unlike " -"sub-interpreters, the main interpreter has unique process-global " -"responsibilities like signal handling. It is also responsible for execution " -"during runtime initialization and is usually the active interpreter during " -"runtime finalization. The :c:func:`PyInterpreterState_Main` function " -"returns a pointer to its state." -msgstr "" - -msgid "" -"You can switch between sub-interpreters using the :c:func:" -"`PyThreadState_Swap` function. You can create and destroy them using the " -"following functions:" -msgstr "" - -msgid "" -"Structure containing most parameters to configure a sub-interpreter. Its " -"values are used only in :c:func:`Py_NewInterpreterFromConfig` and never " -"modified by the runtime." -msgstr "" - -msgid "Structure fields:" -msgstr "" - -msgid "" -"If this is ``0`` then the sub-interpreter will use its own \"object\" " -"allocator state. Otherwise it will use (share) the main interpreter's." -msgstr "" - -msgid "" -"If this is ``0`` then :c:member:`~PyInterpreterConfig." -"check_multi_interp_extensions` must be ``1`` (non-zero). If this is ``1`` " -"then :c:member:`~PyInterpreterConfig.gil` must not be :c:macro:" -"`PyInterpreterConfig_OWN_GIL`." -msgstr "" - -msgid "" -"If this is ``0`` then the runtime will not support forking the process in " -"any thread where the sub-interpreter is currently active. Otherwise fork is " -"unrestricted." -msgstr "" - -msgid "" -"Note that the :mod:`subprocess` module still works when fork is disallowed." -msgstr "" - -msgid "" -"If this is ``0`` then the runtime will not support replacing the current " -"process via exec (e.g. :func:`os.execv`) in any thread where the sub-" -"interpreter is currently active. Otherwise exec is unrestricted." -msgstr "" - -msgid "" -"Note that the :mod:`subprocess` module still works when exec is disallowed." -msgstr "" - -msgid "" -"If this is ``0`` then the sub-interpreter's :mod:`threading` module won't " -"create threads. Otherwise threads are allowed." -msgstr "" - -msgid "" -"If this is ``0`` then the sub-interpreter's :mod:`threading` module won't " -"create daemon threads. Otherwise daemon threads are allowed (as long as :c:" -"member:`~PyInterpreterConfig.allow_threads` is non-zero)." -msgstr "" - -msgid "" -"If this is ``0`` then all extension modules may be imported, including " -"legacy (single-phase init) modules, in any thread where the sub-interpreter " -"is currently active. Otherwise only multi-phase init extension modules (see :" -"pep:`489`) may be imported. (Also see :c:macro:" -"`Py_mod_multiple_interpreters`.)" -msgstr "" - -msgid "" -"This must be ``1`` (non-zero) if :c:member:`~PyInterpreterConfig." -"use_main_obmalloc` is ``0``." -msgstr "" - -msgid "" -"This determines the operation of the GIL for the sub-interpreter. It may be " -"one of the following:" -msgstr "" - -msgid "Use the default selection (:c:macro:`PyInterpreterConfig_SHARED_GIL`)." -msgstr "" - -msgid "Use (share) the main interpreter's GIL." -msgstr "" - -msgid "Use the sub-interpreter's own GIL." -msgstr "" - -msgid "" -"If this is :c:macro:`PyInterpreterConfig_OWN_GIL` then :c:member:" -"`PyInterpreterConfig.use_main_obmalloc` must be ``0``." -msgstr "" - -msgid "" -"Create a new sub-interpreter. This is an (almost) totally separate " -"environment for the execution of Python code. In particular, the new " -"interpreter has separate, independent versions of all imported modules, " -"including the fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:" -"`sys`. The table of loaded modules (``sys.modules``) and the module search " -"path (``sys.path``) are also separate. The new environment has no ``sys." -"argv`` variable. It has new standard I/O stream file objects ``sys.stdin``, " -"``sys.stdout`` and ``sys.stderr`` (however these refer to the same " -"underlying file descriptors)." -msgstr "" - -msgid "" -"The given *config* controls the options with which the interpreter is " -"initialized." -msgstr "" - -msgid "" -"Upon success, *tstate_p* will be set to the first :term:`thread state` " -"created in the new sub-interpreter. This thread state is :term:`attached " -"`. Note that no actual thread is created; see the " -"discussion of thread states below. If creation of the new interpreter is " -"unsuccessful, *tstate_p* is set to ``NULL``; no exception is set since the " -"exception state is stored in the :term:`attached thread state`, which might " -"not exist." -msgstr "" - -msgid "" -"Like all other Python/C API functions, an :term:`attached thread state` must " -"be present before calling this function, but it might be detached upon " -"returning. On success, the returned thread state will be :term:`attached " -"`. If the sub-interpreter is created with its own :" -"term:`GIL` then the :term:`attached thread state` of the calling interpreter " -"will be detached. When the function returns, the new interpreter's :term:" -"`thread state` will be :term:`attached ` to the " -"current thread and the previous interpreter's :term:`attached thread state` " -"will remain detached." -msgstr "" - -msgid "" -"Sub-interpreters are most effective when isolated from each other, with " -"certain functionality restricted::" -msgstr "" - -msgid "" -"PyInterpreterConfig config = {\n" -" .use_main_obmalloc = 0,\n" -" .allow_fork = 0,\n" -" .allow_exec = 0,\n" -" .allow_threads = 1,\n" -" .allow_daemon_threads = 0,\n" -" .check_multi_interp_extensions = 1,\n" -" .gil = PyInterpreterConfig_OWN_GIL,\n" -"};\n" -"PyThreadState *tstate = NULL;\n" -"PyStatus status = Py_NewInterpreterFromConfig(&tstate, &config);\n" -"if (PyStatus_Exception(status)) {\n" -" Py_ExitStatusException(status);\n" -"}" -msgstr "" - -msgid "" -"Note that the config is used only briefly and does not get modified. During " -"initialization the config's values are converted into various :c:type:" -"`PyInterpreterState` values. A read-only copy of the config may be stored " -"internally on the :c:type:`PyInterpreterState`." -msgstr "" - -msgid "Extension modules are shared between (sub-)interpreters as follows:" -msgstr "" - -msgid "" -"For modules using multi-phase initialization, e.g. :c:func:" -"`PyModule_FromDefAndSpec`, a separate module object is created and " -"initialized for each interpreter. Only C-level static and global variables " -"are shared between these module objects." -msgstr "" - -msgid "" -"For modules using legacy :ref:`single-phase initialization `, e.g. :c:func:`PyModule_Create`, the first time a " -"particular extension is imported, it is initialized normally, and a " -"(shallow) copy of its module's dictionary is squirreled away. When the same " -"extension is imported by another (sub-)interpreter, a new module is " -"initialized and filled with the contents of this copy; the extension's " -"``init`` function is not called. Objects in the module's dictionary thus end " -"up shared across (sub-)interpreters, which might cause unwanted behavior " -"(see `Bugs and caveats`_ below)." -msgstr "" - -msgid "" -"Note that this is different from what happens when an extension is imported " -"after the interpreter has been completely re-initialized by calling :c:func:" -"`Py_FinalizeEx` and :c:func:`Py_Initialize`; in that case, the extension's " -"``initmodule`` function *is* called again. As with multi-phase " -"initialization, this means that only C-level static and global variables are " -"shared between these modules." -msgstr "" - -msgid "" -"Create a new sub-interpreter. This is essentially just a wrapper around :c:" -"func:`Py_NewInterpreterFromConfig` with a config that preserves the existing " -"behavior. The result is an unisolated sub-interpreter that shares the main " -"interpreter's GIL, allows fork/exec, allows daemon threads, and allows " -"single-phase init modules." -msgstr "" - -msgid "" -"Destroy the (sub-)interpreter represented by the given :term:`thread state`. " -"The given thread state must be :term:`attached `. " -"When the call returns, there will be no :term:`attached thread state`. All " -"thread states associated with this interpreter are destroyed." -msgstr "" - -msgid "" -":c:func:`Py_FinalizeEx` will destroy all sub-interpreters that haven't been " -"explicitly destroyed at that point." -msgstr "" - -msgid "A per-interpreter GIL" -msgstr "" - -msgid "" -"Using :c:func:`Py_NewInterpreterFromConfig` you can create a sub-interpreter " -"that is completely isolated from other interpreters, including having its " -"own GIL. The most important benefit of this isolation is that such an " -"interpreter can execute Python code without being blocked by other " -"interpreters or blocking any others. Thus a single Python process can truly " -"take advantage of multiple CPU cores when running Python code. The " -"isolation also encourages a different approach to concurrency than that of " -"just using threads. (See :pep:`554` and :pep:`684`.)" -msgstr "" - -msgid "" -"Using an isolated interpreter requires vigilance in preserving that " -"isolation. That especially means not sharing any objects or mutable state " -"without guarantees about thread-safety. Even objects that are otherwise " -"immutable (e.g. ``None``, ``(1, 5)``) can't normally be shared because of " -"the refcount. One simple but less-efficient approach around this is to use " -"a global lock around all use of some state (or object). Alternately, " -"effectively immutable objects (like integers or strings) can be made safe in " -"spite of their refcounts by making them :term:`immortal`. In fact, this has " -"been done for the builtin singletons, small integers, and a number of other " -"builtin objects." -msgstr "" - -msgid "" -"If you preserve isolation then you will have access to proper multi-core " -"computing without the complications that come with free-threading. Failure " -"to preserve isolation will expose you to the full consequences of free-" -"threading, including races and hard-to-debug crashes." -msgstr "" - -msgid "" -"Aside from that, one of the main challenges of using multiple isolated " -"interpreters is how to communicate between them safely (not break isolation) " -"and efficiently. The runtime and stdlib do not provide any standard " -"approach to this yet. A future stdlib module would help mitigate the effort " -"of preserving isolation and expose effective tools for communicating (and " -"sharing) data between interpreters." -msgstr "" - -msgid "Bugs and caveats" -msgstr "" - -msgid "" -"Because sub-interpreters (and the main interpreter) are part of the same " -"process, the insulation between them isn't perfect --- for example, using " -"low-level file operations like :func:`os.close` they can (accidentally or " -"maliciously) affect each other's open files. Because of the way extensions " -"are shared between (sub-)interpreters, some extensions may not work " -"properly; this is especially likely when using single-phase initialization " -"or (static) global variables. It is possible to insert objects created in " -"one sub-interpreter into a namespace of another (sub-)interpreter; this " -"should be avoided if possible." -msgstr "" - -msgid "" -"Special care should be taken to avoid sharing user-defined functions, " -"methods, instances or classes between sub-interpreters, since import " -"operations executed by such objects may affect the wrong (sub-)interpreter's " -"dictionary of loaded modules. It is equally important to avoid sharing " -"objects from which the above are reachable." -msgstr "" - -msgid "" -"Also note that combining this functionality with ``PyGILState_*`` APIs is " -"delicate, because these APIs assume a bijection between Python thread states " -"and OS-level threads, an assumption broken by the presence of sub-" -"interpreters. It is highly recommended that you don't switch sub-" -"interpreters between a pair of matching :c:func:`PyGILState_Ensure` and :c:" -"func:`PyGILState_Release` calls. Furthermore, extensions (such as :mod:" -"`ctypes`) using these APIs to allow calling of Python code from non-Python " -"created threads will probably be broken when using sub-interpreters." -msgstr "" - -msgid "High-level APIs" -msgstr "" - -msgid "" -"This data structure represents the state shared by a number of cooperating " -"threads. Threads belonging to the same interpreter share their module " -"administration and a few other internal items. There are no public members " -"in this structure." -msgstr "" - -msgid "" -"Threads belonging to different interpreters initially share nothing, except " -"process state like available memory, open file descriptors and such. The " -"global interpreter lock is also shared by all threads, regardless of to " -"which interpreter they belong." -msgstr "" - -msgid "" -":pep:`684` introduced the possibility of a :ref:`per-interpreter GIL `. See :c:func:`Py_NewInterpreterFromConfig`." -msgstr "" - -msgid "Get the current interpreter." -msgstr "" - -msgid "" -"Issue a fatal error if there is no :term:`attached thread state`. It cannot " -"return NULL." -msgstr "" - -msgid "" -"Return the interpreter's unique ID. If there was any error in doing so then " -"``-1`` is returned and an error is set." -msgstr "" - -msgid "The caller must have an :term:`attached thread state`." -msgstr "" - -msgid "" -"Return a dictionary in which interpreter-specific data may be stored. If " -"this function returns ``NULL`` then no exception has been raised and the " -"caller should assume no interpreter-specific dict is available." -msgstr "" - -msgid "" -"This is not a replacement for :c:func:`PyModule_GetState()`, which " -"extensions should use to store interpreter-specific state information." -msgstr "" - -msgid "" -"The returned dictionary is borrowed from the interpreter and is valid until " -"interpreter shutdown." -msgstr "" - -msgid "Type of a frame evaluation function." -msgstr "" - -msgid "" -"The *throwflag* parameter is used by the ``throw()`` method of generators: " -"if non-zero, handle the current exception." -msgstr "" - -msgid "The function now takes a *tstate* parameter." -msgstr "" - -msgid "" -"The *frame* parameter changed from ``PyFrameObject*`` to " -"``_PyInterpreterFrame*``." -msgstr "" - -msgid "Get the frame evaluation function." -msgstr "" - -msgid "See the :pep:`523` \"Adding a frame evaluation API to CPython\"." -msgstr "" - -msgid "Set the frame evaluation function." -msgstr "" - -msgid "" -"Enables or disables specialization why a custom frame evaluator is in place." -msgstr "" - -msgid "" -"If *allow_specialization* is non-zero, the adaptive specializer will " -"continue to specialize bytecodes even though a custom eval frame function is " -"set. When *allow_specialization* is zero, setting a custom eval frame " -"disables specialization. The standard interpreter loop will continue to " -"deopt while a frame evaluation API is in place - the frame evaluation " -"function needs to handle the specialized opcodes to take advantage of this." -msgstr "" - -msgid "" -"Return non-zero if adaptive specialization is enabled for the interpreter. " -"Specialization is enabled when no custom eval frame function is set, or when " -"one is set with *allow_specialization* enabled." -msgstr "" - -msgid "Low-level APIs" -msgstr "" - -msgid "" -"All of the following functions must be called after :c:func:`Py_Initialize`." -msgstr "" - -msgid "" -":c:func:`Py_Initialize()` now initializes the :term:`GIL` and sets an :term:" -"`attached thread state`." -msgstr "" - -msgid "" -"Create a new interpreter state object. An :term:`attached thread state` is " -"not needed, but may optionally exist if it is necessary to serialize calls " -"to this function." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``cpython." -"PyInterpreterState_New`` with no arguments." -msgstr "" - -msgid "" -"Reset all information in an interpreter state object. There must be an :" -"term:`attached thread state` for the interpreter." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``cpython." -"PyInterpreterState_Clear`` with no arguments." -msgstr "" - -msgid "" -"Destroy an interpreter state object. There **should not** be an :term:" -"`attached thread state` for the target interpreter. The interpreter state " -"must have been reset with a previous call to :c:func:" -"`PyInterpreterState_Clear`." -msgstr "" - -msgid "Advanced debugger support" -msgstr "" - -msgid "" -"These functions are only intended to be used by advanced debugging tools." -msgstr "" - -msgid "" -"Return the interpreter state object at the head of the list of all such " -"objects." -msgstr "" - -msgid "Return the main interpreter state object." -msgstr "" - -msgid "" -"Return the next interpreter state object after *interp* from the list of all " -"such objects." -msgstr "" - -msgid "" -"Return the pointer to the first :c:type:`PyThreadState` object in the list " -"of threads associated with the interpreter *interp*." -msgstr "" - -msgid "" -"Return the next thread state object after *tstate* from the list of all such " -"objects belonging to the same :c:type:`PyInterpreterState` object." -msgstr "" - -msgid "module" -msgstr "" - -msgid "builtins" -msgstr "" - -msgid "__main__" -msgstr "" - -msgid "sys" -msgstr "" - -msgid "stdout (in module sys)" -msgstr "" - -msgid "stderr (in module sys)" -msgstr "" - -msgid "stdin (in module sys)" -msgstr "" - -msgid "Py_FinalizeEx (C function)" -msgstr "" - -msgid "Py_Initialize (C function)" -msgstr "" - -msgid "close (in module os)" -msgstr "" diff --git a/c-api/synchronization.po b/c-api/synchronization.po deleted file mode 100644 index fdba70a..0000000 --- a/c-api/synchronization.po +++ /dev/null @@ -1,334 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Synchronization primitives" -msgstr "" - -msgid "The C-API provides a basic mutual exclusion lock." -msgstr "" - -msgid "" -"A mutual exclusion lock. The :c:type:`!PyMutex` should be initialized to " -"zero to represent the unlocked state. For example::" -msgstr "" - -msgid "PyMutex mutex = {0};" -msgstr "" - -msgid "" -"Instances of :c:type:`!PyMutex` should not be copied or moved. Both the " -"contents and address of a :c:type:`!PyMutex` are meaningful, and it must " -"remain at a fixed, writable location in memory." -msgstr "" - -msgid "" -"A :c:type:`!PyMutex` currently occupies one byte, but the size should be " -"considered unstable. The size may change in future Python releases without " -"a deprecation period." -msgstr "" - -msgid "" -"Lock mutex *m*. If another thread has already locked it, the calling thread " -"will block until the mutex is unlocked. While blocked, the thread will " -"temporarily detach the :term:`thread state ` if one " -"exists." -msgstr "" - -msgid "" -"Unlock mutex *m*. The mutex must be locked --- otherwise, the function will " -"issue a fatal error." -msgstr "" - -msgid "Returns non-zero if the mutex *m* is currently locked, zero otherwise." -msgstr "" - -msgid "" -"This function is intended for use in assertions and debugging only and " -"should not be used to make concurrency control decisions, as the lock state " -"may change immediately after the check." -msgstr "" - -msgid "Python critical section API" -msgstr "" - -msgid "" -"The critical section API provides a deadlock avoidance layer on top of per-" -"object locks for :term:`free-threaded ` CPython. They are " -"intended to replace reliance on the :term:`global interpreter lock`, and are " -"no-ops in versions of Python with the global interpreter lock." -msgstr "" - -msgid "" -"Critical sections are intended to be used for custom types implemented in C-" -"API extensions. They should generally not be used with built-in types like :" -"class:`list` and :class:`dict` because their public C-APIs already use " -"critical sections internally, with the notable exception of :c:func:" -"`PyDict_Next`, which requires critical section to be acquired externally." -msgstr "" - -msgid "" -"Critical sections avoid deadlocks by implicitly suspending active critical " -"sections, hence, they do not provide exclusive access such as provided by " -"traditional locks like :c:type:`PyMutex`. When a critical section is " -"started, the per-object lock for the object is acquired. If the code " -"executed inside the critical section calls C-API functions then it can " -"suspend the critical section thereby releasing the per-object lock, so other " -"threads can acquire the per-object lock for the same object." -msgstr "" - -msgid "" -"Variants that accept :c:type:`PyMutex` pointers rather than Python objects " -"are also available. Use these variants to start a critical section in a " -"situation where there is no :c:type:`PyObject` -- for example, when working " -"with a C type that does not extend or wrap :c:type:`PyObject` but still " -"needs to call into the C API in a manner that might lead to deadlocks." -msgstr "" - -msgid "" -"Operations that need to lock two objects at once must use :c:macro:" -"`Py_BEGIN_CRITICAL_SECTION2`. You *cannot* use nested critical sections to " -"lock more than one object at once, because the inner critical section may " -"suspend the outer critical sections. This API does not provide a way to " -"lock more than two objects at once." -msgstr "" - -msgid "Example usage::" -msgstr "" - -msgid "" -"static PyObject *\n" -"set_field(MyObject *self, PyObject *value)\n" -"{\n" -" Py_BEGIN_CRITICAL_SECTION(self);\n" -" Py_SETREF(self->field, Py_XNewRef(value));\n" -" Py_END_CRITICAL_SECTION();\n" -" Py_RETURN_NONE;\n" -"}" -msgstr "" - -msgid "" -"In the above example, :c:macro:`Py_SETREF` calls :c:macro:`Py_DECREF`, which " -"can call arbitrary code through an object's deallocation function. The " -"critical section API avoids potential deadlocks due to reentrancy and lock " -"ordering by allowing the runtime to temporarily suspend the critical section " -"if the code triggered by the finalizer blocks and calls :c:func:" -"`PyEval_SaveThread`." -msgstr "" - -msgid "" -"Acquires the per-object lock for the object *op* and begins a critical " -"section." -msgstr "" - -msgid "" -"In the free-threaded build, and when building for the :ref:`Stable ABI " -"`, this macro expands to::" -msgstr "" - -msgid "" -"{\n" -" PyCriticalSection _py_cs;\n" -" PyCriticalSection_Begin(&_py_cs, (PyObject*)(op))" -msgstr "" - -msgid "In the default build, this macro expands to ``{``." -msgstr "" - -msgid "Locks the mutex *m* and begins a critical section." -msgstr "" - -msgid "In the free-threaded build, this macro expands to::" -msgstr "" - -msgid "" -"{\n" -" PyCriticalSection _py_cs;\n" -" PyCriticalSection_BeginMutex(&_py_cs, m)" -msgstr "" - -msgid "" -"Note that unlike :c:macro:`Py_BEGIN_CRITICAL_SECTION`, there is no cast for " -"the argument of the macro - it must be a :c:type:`PyMutex` pointer." -msgstr "" - -msgid "On the default build, this macro expands to ``{``." -msgstr "" - -msgid "Ends the critical section and releases the per-object lock." -msgstr "" - -msgid "" -" PyCriticalSection_End(&_py_cs);\n" -"}" -msgstr "" - -msgid "In the default build, this macro expands to ``}``." -msgstr "" - -msgid "" -"Acquires the per-object locks for the objects *a* and *b* and begins a " -"critical section. The locks are acquired in a consistent order (lowest " -"address first) to avoid lock ordering deadlocks." -msgstr "" - -msgid "" -"{\n" -" PyCriticalSection2 _py_cs2;\n" -" PyCriticalSection2_Begin(&_py_cs2, (PyObject*)(a), (PyObject*)(b))" -msgstr "" - -msgid "Locks the mutexes *m1* and *m2* and begins a critical section." -msgstr "" - -msgid "" -"{\n" -" PyCriticalSection2 _py_cs2;\n" -" PyCriticalSection2_BeginMutex(&_py_cs2, m1, m2)" -msgstr "" - -msgid "" -"Note that unlike :c:macro:`Py_BEGIN_CRITICAL_SECTION2`, there is no cast for " -"the arguments of the macro - they must be :c:type:`PyMutex` pointers." -msgstr "" - -msgid "Ends the critical section and releases the per-object locks." -msgstr "" - -msgid "" -" PyCriticalSection2_End(&_py_cs2);\n" -"}" -msgstr "" - -msgid "Low-level critical section API" -msgstr "" - -msgid "" -"The following functions and structs are exposed for cases where C macros are " -"not available." -msgstr "" - -msgid "" -"To be used only as in the macro expansions listed :ref:`earlier in this " -"section `." -msgstr "" - -msgid "" -"In non-:term:`free-threaded ` builds of CPython, these " -"functions do nothing." -msgstr "" - -msgid "" -"To be used only as in the macro expansions listed :ref:`earlier in this " -"section `. Note that the contents of the structures " -"are private and their meaning may change in future Python versions." -msgstr "" - -msgid "Legacy locking APIs" -msgstr "" - -msgid "" -"These APIs are obsolete since Python 3.13 with the introduction of :c:type:" -"`PyMutex`." -msgstr "" - -msgid "These APIs are now a simple wrapper around ``PyMutex``." -msgstr "" - -msgid "A pointer to a mutual exclusion lock." -msgstr "" - -msgid "The result of acquiring a lock with a timeout." -msgstr "" - -msgid "Failed to acquire the lock." -msgstr "" - -msgid "The lock was successfully acquired." -msgstr "" - -msgid "The lock was interrupted by a signal." -msgstr "" - -msgid "Allocate a new lock." -msgstr "" - -msgid "" -"On success, this function returns a lock; on failure, this function returns " -"``0`` without an exception set." -msgstr "" - -msgid "The caller does not need to hold an :term:`attached thread state`." -msgstr "" - -msgid "" -"This function now always uses :c:type:`PyMutex`. In prior versions, this " -"would use a lock provided by the operating system." -msgstr "" - -msgid "" -"Destroy *lock*. The lock should not be held by any thread when calling this." -msgstr "" - -msgid "Acquire *lock* with a timeout." -msgstr "" - -msgid "" -"This will wait for *microseconds* microseconds to acquire the lock. If the " -"timeout expires, this function returns :c:enumerator:`PY_LOCK_FAILURE`. If " -"*microseconds* is ``-1``, this will wait indefinitely until the lock has " -"been released." -msgstr "" - -msgid "" -"If *intr_flag* is ``1``, acquiring the lock may be interrupted by a signal, " -"in which case this function returns :c:enumerator:`PY_LOCK_INTR`. Upon " -"interruption, it's generally expected that the caller makes a call to :c:" -"func:`Py_MakePendingCalls` to propagate an exception to Python code." -msgstr "" - -msgid "" -"If the lock is successfully acquired, this function returns :c:enumerator:" -"`PY_LOCK_ACQUIRED`." -msgstr "" - -msgid "Acquire *lock*." -msgstr "" - -msgid "" -"If *waitflag* is ``1`` and another thread currently holds the lock, this " -"function will wait until the lock can be acquired and will always return " -"``1``." -msgstr "" - -msgid "" -"If *waitflag* is ``0`` and another thread holds the lock, this function will " -"not wait and instead return ``0``. If the lock is not held by any other " -"thread, then this function will acquire it and return ``1``." -msgstr "" - -msgid "" -"Unlike :c:func:`PyThread_acquire_lock_timed`, acquiring the lock cannot be " -"interrupted by a signal." -msgstr "" - -msgid "" -"Release *lock*. If *lock* is not held, then this function issues a fatal " -"error." -msgstr "" diff --git a/c-api/sys.po b/c-api/sys.po index f6b872c..8da0d0d 100644 --- a/c-api/sys.po +++ b/c-api/sys.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,12 +22,12 @@ msgid "Operating System Utilities" msgstr "" msgid "" -"Return the file system representation for *path*. If the object is a :class:" -"`str` or :class:`bytes` object, then a new :term:`strong reference` is " -"returned. If the object implements the :class:`os.PathLike` interface, then :" -"meth:`~os.PathLike.__fspath__` is returned as long as it is a :class:`str` " -"or :class:`bytes` object. Otherwise :exc:`TypeError` is raised and ``NULL`` " -"is returned." +"Return the file system representation for *path*. If the object is " +"a :class:`str` or :class:`bytes` object, then a new :term:`strong reference` " +"is returned. If the object implements the :class:`os.PathLike` interface, " +"then :meth:`~os.PathLike.__fspath__` is returned as long as it is " +"a :class:`str` or :class:`bytes` object. Otherwise :exc:`TypeError` is " +"raised and ``NULL`` is returned." msgstr "" msgid "" @@ -85,8 +85,8 @@ msgstr "" msgid "" ":func:`os.register_at_fork` allows registering custom Python functions to be " -"called by :c:func:`PyOS_BeforeFork()`, :c:func:`PyOS_AfterFork_Parent` and :" -"c:func:`PyOS_AfterFork_Child`." +"called by :c:func:`PyOS_BeforeFork()`, :c:func:`PyOS_AfterFork_Parent` " +"and :c:func:`PyOS_AfterFork_Child`." msgstr "" msgid "" @@ -115,8 +115,8 @@ msgstr "" msgid "" "Set the signal handler for signal *i* to be *h*; return the old signal " -"handler. This is a thin wrapper around either :c:func:`!sigaction` or :c:" -"func:`!signal`. Do not call those functions directly!" +"handler. This is a thin wrapper around either :c:func:`!sigaction` " +"or :c:func:`!signal`. Do not call those functions directly!" msgstr "" msgid "Check if a :c:macro:`!SIGINT` signal has been received." @@ -142,14 +142,14 @@ msgstr "" msgid "" "This function should not be called directly: use the :c:type:`PyConfig` API " -"with the :c:func:`PyConfig_SetBytesString` function which ensures that :ref:" -"`Python is preinitialized `." +"with the :c:func:`PyConfig_SetBytesString` function which ensures " +"that :ref:`Python is preinitialized `." msgstr "" msgid "" "This function must not be called before :ref:`Python is preinitialized ` and so that the LC_CTYPE locale is properly configured: see the :c:" -"func:`Py_PreInitialize` function." +"preinit>` and so that the LC_CTYPE locale is properly configured: see " +"the :c:func:`Py_PreInitialize` function." msgstr "" msgid "" @@ -162,9 +162,10 @@ msgid "" msgstr "" msgid "" -"Return a pointer to a newly allocated wide character string, use :c:func:" -"`PyMem_RawFree` to free the memory. If size is not ``NULL``, write the " -"number of wide characters excluding the null character into ``*size``" +"Return a pointer to a newly allocated wide character string, " +"use :c:func:`PyMem_RawFree` to free the memory. If size is not ``NULL``, " +"write the number of wide characters excluding the null character into " +"``*size``" msgstr "" msgid "" @@ -174,9 +175,9 @@ msgid "" msgstr "" msgid "" -"The :term:`filesystem encoding and error handler` are selected by :c:func:" -"`PyConfig_Read`: see :c:member:`~PyConfig.filesystem_encoding` and :c:member:" -"`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." +"The :term:`filesystem encoding and error handler` are selected " +"by :c:func:`PyConfig_Read`: see :c:member:`~PyConfig.filesystem_encoding` " +"and :c:member:`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" msgid "" @@ -189,8 +190,8 @@ msgid "" msgstr "" msgid "" -"The :c:func:`PyUnicode_DecodeFSDefaultAndSize` and :c:func:" -"`PyUnicode_DecodeLocaleAndSize` functions." +"The :c:func:`PyUnicode_DecodeFSDefaultAndSize` " +"and :c:func:`PyUnicode_DecodeLocaleAndSize` functions." msgstr "" msgid "" @@ -199,8 +200,8 @@ msgid "" msgstr "" msgid "" -"The function now uses the UTF-8 encoding on Windows if :c:member:" -"`PyPreConfig.legacy_windows_fs_encoding` is zero;" +"The function now uses the UTF-8 encoding on Windows " +"if :c:member:`PyPreConfig.legacy_windows_fs_encoding` is zero;" msgstr "" msgid "" @@ -232,8 +233,8 @@ msgid "" msgstr "" msgid "" -"The function now uses the UTF-8 encoding on Windows if :c:member:" -"`PyPreConfig.legacy_windows_fs_encoding` is zero." +"The function now uses the UTF-8 encoding on Windows " +"if :c:member:`PyPreConfig.legacy_windows_fs_encoding` is zero." msgstr "" msgid "" @@ -242,8 +243,8 @@ msgid "" msgstr "" msgid "" -"*path* must be a :class:`str` object, a :class:`bytes` object, or a :term:" -"`path-like object`." +"*path* must be a :class:`str` object, a :class:`bytes` object, or " +"a :term:`path-like object`." msgstr "" msgid "" @@ -252,8 +253,8 @@ msgid "" msgstr "" msgid "" -"The file must be closed by :c:func:`Py_fclose` rather than calling directly :" -"c:func:`!fclose`." +"The file must be closed by :c:func:`Py_fclose` rather than calling " +"directly :c:func:`!fclose`." msgstr "" msgid "The file descriptor is created non-inheritable (:pep:`446`)." @@ -288,19 +289,19 @@ msgid "" msgstr "" msgid "" -"If the non-existing object should not be treated as a failure, you can use :" -"c:func:`PySys_GetOptionalAttr` instead." +"If the non-existing object should not be treated as a failure, you can " +"use :c:func:`PySys_GetOptionalAttr` instead." msgstr "" msgid "" -"This is the same as :c:func:`PySys_GetAttr`, but *name* is specified as a :c:" -"expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"This is the same as :c:func:`PySys_GetAttr`, but *name* is specified as " +"a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" -"If the non-existing object should not be treated as a failure, you can use :" -"c:func:`PySys_GetOptionalAttrString` instead." +"If the non-existing object should not be treated as a failure, you can " +"use :c:func:`PySys_GetOptionalAttrString` instead." msgstr "" msgid "" @@ -325,8 +326,8 @@ msgstr "" msgid "" "This is the same as :c:func:`PySys_GetOptionalAttr`, but *name* is specified " -"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than a :c:expr:" -"`PyObject*`." +"as a :c:expr:`const char*` UTF-8 encoded bytes string, rather than " +"a :c:expr:`PyObject*`." msgstr "" msgid "" @@ -369,9 +370,9 @@ msgid "" msgstr "" msgid "" -"Function similar to PySys_WriteStdout() but format the message using :c:func:" -"`PyUnicode_FromFormatV` and don't truncate the message to an arbitrary " -"length." +"Function similar to PySys_WriteStdout() but format the message " +"using :c:func:`PyUnicode_FromFormatV` and don't truncate the message to an " +"arbitrary length." msgstr "" msgid "" @@ -380,8 +381,9 @@ msgid "" msgstr "" msgid "" -"Return the current dictionary of :option:`-X` options, similarly to :data:" -"`sys._xoptions`. On error, ``NULL`` is returned and an exception is set." +"Return the current dictionary of :option:`-X` options, similarly " +"to :data:`sys._xoptions`. On error, ``NULL`` is returned and an exception " +"is set." msgstr "" msgid "" @@ -406,8 +408,9 @@ msgid "" msgstr "" msgid "" -"Note that ``#`` format characters should always be treated as :c:type:" -"`Py_ssize_t`, regardless of whether ``PY_SSIZE_T_CLEAN`` was defined." +"Note that ``#`` format characters should always be treated " +"as :c:type:`Py_ssize_t`, regardless of whether ``PY_SSIZE_T_CLEAN`` was " +"defined." msgstr "" msgid ":func:`sys.audit` performs the same function from Python code." @@ -442,8 +445,8 @@ msgstr "" msgid "" "This function is safe to call before :c:func:`Py_Initialize`. When called " "after runtime initialization, existing audit hooks are notified and may " -"silently abort the operation by raising an error subclassed from :class:" -"`Exception` (other errors will not be silenced)." +"silently abort the operation by raising an error subclassed " +"from :class:`Exception` (other errors will not be silenced)." msgstr "" msgid "" @@ -480,8 +483,8 @@ msgid "" "This function should only be invoked when a condition is detected that would " "make it dangerous to continue using the Python interpreter; e.g., when the " "object administration appears to be corrupted. On Unix, the standard C " -"library function :c:func:`!abort` is called which will attempt to produce a :" -"file:`core` file." +"library function :c:func:`!abort` is called which will attempt to produce " +"a :file:`core` file." msgstr "" msgid "" @@ -495,8 +498,8 @@ msgstr "" msgid "" "Exit the current process. This calls :c:func:`Py_FinalizeEx` and then calls " -"the standard C library function ``exit(status)``. If :c:func:" -"`Py_FinalizeEx` indicates an error, the exit status is set to 120." +"the standard C library function ``exit(status)``. " +"If :c:func:`Py_FinalizeEx` indicates an error, the exit status is set to 120." msgstr "" msgid "Errors from finalization no longer ignored." diff --git a/c-api/threads.po b/c-api/threads.po deleted file mode 100644 index cc08a17..0000000 --- a/c-api/threads.po +++ /dev/null @@ -1,1165 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Thread states and the global interpreter lock" -msgstr "" - -msgid "" -"Unless on a :term:`free-threaded build` of :term:`CPython`, the Python " -"interpreter is generally not thread-safe. In order to support multi-" -"threaded Python programs, there's a global lock, called the :term:`global " -"interpreter lock` or :term:`GIL`, that must be held by a thread before " -"accessing Python objects. Without the lock, even the simplest operations " -"could cause problems in a multi-threaded program: for example, when two " -"threads simultaneously increment the reference count of the same object, the " -"reference count could end up being incremented only once instead of twice." -msgstr "" - -msgid "" -"As such, only a thread that holds the GIL may operate on Python objects or " -"invoke Python's C API." -msgstr "" - -msgid "" -"In order to emulate concurrency, the interpreter regularly tries to switch " -"threads between bytecode instructions (see :func:`sys.setswitchinterval`). " -"This is why locks are also necessary for thread-safety in pure-Python code." -msgstr "" - -msgid "" -"Additionally, the global interpreter lock is released around blocking I/O " -"operations, such as reading or writing to a file. From the C API, this is " -"done by :ref:`detaching the thread state `." -msgstr "" - -msgid "" -"The Python interpreter keeps some thread-local information inside a data " -"structure called :c:type:`PyThreadState`, known as a :term:`thread state`. " -"Each thread has a thread-local pointer to a :c:type:`PyThreadState`; a " -"thread state referenced by this pointer is considered to be :term:`attached " -"`." -msgstr "" - -msgid "" -"A thread can only have one :term:`attached thread state` at a time. An " -"attached thread state is typically analogous with holding the GIL, except on " -"free-threaded builds. On builds with the GIL enabled, attaching a thread " -"state will block until the GIL can be acquired. However, even on builds with " -"the GIL disabled, it is still required to have an attached thread state, as " -"the interpreter needs to keep track of which threads may access Python " -"objects." -msgstr "" - -msgid "" -"Even on the free-threaded build, attaching a thread state may block, as the " -"GIL can be re-enabled or threads might be temporarily suspended (such as " -"during a garbage collection)." -msgstr "" - -msgid "" -"Generally, there will always be an attached thread state when using Python's " -"C API, including during embedding and when implementing methods, so it's " -"uncommon to need to set up a thread state on your own. Only in some specific " -"cases, such as in a :c:macro:`Py_BEGIN_ALLOW_THREADS` block or in a fresh " -"thread, will the thread not have an attached thread state. If uncertain, " -"check if :c:func:`PyThreadState_GetUnchecked` returns ``NULL``." -msgstr "" - -msgid "" -"If it turns out that you do need to create a thread state, it is recommended " -"to use :c:func:`PyThreadState_Ensure` or :c:func:" -"`PyThreadState_EnsureFromView`, which will manage the thread state for you." -msgstr "" - -msgid "Detaching the thread state from extension code" -msgstr "" - -msgid "" -"Most extension code manipulating the :term:`thread state` has the following " -"simple structure::" -msgstr "" - -msgid "" -"Save the thread state in a local variable.\n" -"... Do some blocking I/O operation ...\n" -"Restore the thread state from the local variable." -msgstr "" - -msgid "This is so common that a pair of macros exists to simplify it::" -msgstr "" - -msgid "" -"Py_BEGIN_ALLOW_THREADS\n" -"... Do some blocking I/O operation ...\n" -"Py_END_ALLOW_THREADS" -msgstr "" - -msgid "" -"The :c:macro:`Py_BEGIN_ALLOW_THREADS` macro opens a new block and declares a " -"hidden local variable; the :c:macro:`Py_END_ALLOW_THREADS` macro closes the " -"block." -msgstr "" - -msgid "The block above expands to the following code::" -msgstr "" - -msgid "" -"PyThreadState *_save;\n" -"\n" -"_save = PyEval_SaveThread();\n" -"... Do some blocking I/O operation ...\n" -"PyEval_RestoreThread(_save);" -msgstr "" - -msgid "Here is how these functions work:" -msgstr "" - -msgid "" -"The attached thread state implies that the GIL is held for the interpreter. " -"To detach it, :c:func:`PyEval_SaveThread` is called and the result is stored " -"in a local variable." -msgstr "" - -msgid "" -"By detaching the thread state, the GIL is released, which allows other " -"threads to attach to the interpreter and execute while the current thread " -"performs blocking I/O. When the I/O operation is complete, the old thread " -"state is reattached by calling :c:func:`PyEval_RestoreThread`, which will " -"wait until the GIL can be acquired." -msgstr "" - -msgid "" -"Performing blocking I/O is the most common use case for detaching the thread " -"state, but it is also useful to call it over long-running native code that " -"doesn't need access to Python objects or Python's C API. For example, the " -"standard :mod:`zlib` and :mod:`hashlib` modules detach the :term:`thread " -"state ` when compressing or hashing data." -msgstr "" - -msgid "" -"On a :term:`free-threaded build`, the :term:`GIL` is usually out of the " -"question, but **detaching the thread state is still required**, because the " -"interpreter periodically needs to block all threads to get a consistent view " -"of Python objects without the risk of race conditions. For example, CPython " -"currently suspends all threads for a short period of time while running the " -"garbage collector." -msgstr "" - -msgid "" -"Detaching the thread state can lead to unexpected behavior during " -"interpreter finalization. See :ref:`cautions-regarding-runtime-finalization` " -"for more details." -msgstr "" - -msgid "APIs" -msgstr "" - -msgid "" -"The following macros are normally used without a trailing semicolon; look " -"for example usage in the Python source distribution." -msgstr "" - -msgid "" -"These macros are still necessary on the :term:`free-threaded build` to " -"prevent deadlocks." -msgstr "" - -msgid "" -"This macro expands to ``{ PyThreadState *_save; _save = PyEval_SaveThread();" -"``. Note that it contains an opening brace; it must be matched with a " -"following :c:macro:`Py_END_ALLOW_THREADS` macro. See above for further " -"discussion of this macro." -msgstr "" - -msgid "" -"This macro expands to ``PyEval_RestoreThread(_save); }``. Note that it " -"contains a closing brace; it must be matched with an earlier :c:macro:" -"`Py_BEGIN_ALLOW_THREADS` macro. See above for further discussion of this " -"macro." -msgstr "" - -msgid "" -"This macro expands to ``PyEval_RestoreThread(_save);``: it is equivalent to :" -"c:macro:`Py_END_ALLOW_THREADS` without the closing brace." -msgstr "" - -msgid "" -"This macro expands to ``_save = PyEval_SaveThread();``: it is equivalent to :" -"c:macro:`Py_BEGIN_ALLOW_THREADS` without the opening brace and variable " -"declaration." -msgstr "" - -msgid "Using the C API from foreign threads" -msgstr "" - -msgid "" -"When threads are created using the dedicated Python APIs (such as the :mod:" -"`threading` module), a thread state is automatically associated with them, " -"However, when a thread is created from native code (for example, by a third-" -"party library with its own thread management), it doesn't hold an attached " -"thread state." -msgstr "" - -msgid "" -"If you need to call Python code from these threads (often this will be part " -"of a callback API provided by the aforementioned third-party library), you " -"must first register these threads with the interpreter by creating a new " -"thread state and attaching it." -msgstr "" - -msgid "" -"The easiest way to do this is through :c:func:`PyThreadState_Ensure` or :c:" -"func:`PyThreadState_EnsureFromView`." -msgstr "" - -msgid "" -"These functions require an argument pointing to the desired interpreter; " -"such a pointer can be acquired via a call to :c:func:" -"`PyInterpreterGuard_FromCurrent` (for ``PyThreadState_Ensure``) or :c:func:" -"`PyInterpreterView_FromCurrent` (for ``PyThreadState_EnsureFromView``) from " -"the function that creates the thread. If no pointer is available (such as " -"when the given native thread library doesn't provide a data argument), :c:" -"func:`PyInterpreterView_FromMain` can be used to get a view for the main " -"interpreter, but note that this will make the code incompatible with " -"subinterpreters." -msgstr "" - -msgid "For example::" -msgstr "" - -msgid "" -"// The return value of PyInterpreterGuard_FromCurrent() from the\n" -"// function that created this thread.\n" -"PyInterpreterGuard *guard = thread_data->guard;\n" -"\n" -"// Create a new thread state for the interpreter.\n" -"PyThreadStateToken *token = PyThreadState_Ensure(guard);\n" -"if (token == NULL) {\n" -" PyInterpreterGuard_Close(guard);\n" -" return;\n" -"}\n" -"\n" -"// We have a valid thread state -- perform Python actions here.\n" -"result = CallSomeFunction();\n" -"// Evaluate result or handle exceptions.\n" -"\n" -"// Release the thread state. No calls to the C API are allowed beyond this\n" -"// point.\n" -"PyThreadState_Release(token);\n" -"PyInterpreterGuard_Close(guard);" -msgstr "" - -msgid "" -"Keep in mind that calling ``PyThreadState_Ensure`` might not always create a " -"new thread state, and calling ``PyThreadState_Release`` might not always " -"detach it. These functions may reuse an existing attached thread state, or " -"may re-attach a thread state that was previously attached for the current " -"thread." -msgstr "" - -msgid ":pep:`788`" -msgstr "" - -msgid "Reusing a thread state across repeated calls" -msgstr "" - -msgid "" -"Creating and destroying a :c:type:`PyThreadState` is not free, and is more " -"expensive on a :term:`free-threaded build`. A foreign thread that calls " -"into the interpreter many times -- for example, a worker thread in a native " -"thread pool -- should avoid creating a fresh thread state on every entry and " -"destroying it on every exit. Instead, set up one thread state when the " -"thread starts (or lazily on its first call into Python), attach and detach " -"it around each call, and tear it down once when the thread exits." -msgstr "" - -msgid "" -"Manage the thread state explicitly with :c:func:`PyThreadState_New`, " -"attaching and detaching it with :c:func:`PyEval_RestoreThread` and :c:func:" -"`PyEval_SaveThread`. This happens in three distinct phases, at different " -"points in the thread's life." -msgstr "" - -msgid "" -"When the thread starts, create one thread state for it. ``interp`` is the " -"target interpreter, captured by the code that created this thread while it " -"held an attached thread state (for example via :c:func:" -"`PyInterpreterState_Get`)::" -msgstr "" - -msgid "PyThreadState *tstate = PyThreadState_New(interp);" -msgstr "" - -msgid "" -"Then, on each call into Python -- which may happen many times over the " -"thread's life -- attach the thread state, make the Python C API calls that " -"require it, and detach again so the thread does not hold the GIL while off " -"doing non-Python work::" -msgstr "" - -msgid "" -"PyEval_RestoreThread(tstate);\n" -"result = CallSomeFunction(); /* your Python C API calls go here */\n" -"PyEval_SaveThread();" -msgstr "" - -msgid "" -"When the thread is finished calling into Python, destroy the thread state " -"once::" -msgstr "" - -msgid "" -"PyEval_RestoreThread(tstate);\n" -"PyThreadState_Clear(tstate);\n" -"PyThreadState_DeleteCurrent();" -msgstr "" - -msgid "" -"The general-purpose entry points for calling in from a foreign thread -- :c:" -"func:`PyThreadState_Ensure` and the older :c:func:`PyGILState_Ensure` -- do " -"*not* guarantee a persistent thread state: their thread-state lifetime is " -"deliberately implementation-defined, so a matched acquire/release pair may " -"create and destroy a thread state each time. Use :c:func:" -"`PyThreadState_New`, as shown here, whenever you specifically want to reuse " -"one thread state across calls." -msgstr "" - -msgid "" -"The code that created the foreign thread must arrange for the shutdown " -"sequence to run before the thread exits, and before :c:func:`Py_FinalizeEx` " -"is called. If interpreter finalization begins first, the shutdown :c:func:" -"`PyEval_RestoreThread` call will hang the thread rather than return (see :" -"ref:`cautions-regarding-runtime-finalization`). If the thread exits without " -"running the shutdown sequence, the thread state is leaked for the remainder " -"of the process." -msgstr "" - -msgid "Attaching/detaching thread states" -msgstr "" - -msgid "" -"Ensure that the thread has an attached thread state for the interpreter " -"protected by *guard*, and thus can safely invoke that interpreter." -msgstr "" - -msgid "" -"It is OK to call this function if the thread already has an attached thread " -"state, as long as there is a subsequent call to :c:func:" -"`PyThreadState_Release` that matches this one (meaning that \"nested\" calls " -"to this function are permitted)." -msgstr "" - -msgid "" -"The function's effect (if any) will be reversed by the matching call to :c:" -"func:`PyThreadState_Release`." -msgstr "" - -msgid "" -"On error, this function returns ``NULL`` *without* an exception set. Do not " -"call :c:func:`!PyThreadState_Release` in this case." -msgstr "" - -msgid "" -"On success, this function returns a pointer value that must be passed to the " -"matching call to :c:func:`!PyThreadState_Release`." -msgstr "" - -msgid "" -"The conditions in which this function creates a new :term:`thread state` are " -"considered unstable and implementation-dependent. If you need to control the " -"exact lifetime of a thread state, consider using :c:func:" -"`PyThreadState_New`. However, do not avoid this function solely on the basis " -"that the lifetime of the thread state may be inconsistent across versions; " -"changes to this function will be done with caution and in a backwards-" -"compatible manner. In particular, the saving of thread-local variables and " -"similar state will be retained across Python versions." -msgstr "" - -msgid "" -"The exact behavior of whether this function creates a new thread state is " -"described below, but be aware that this may change in the future." -msgstr "" - -msgid "" -"First, this function checks if an attached thread state is present. If there " -"is, this function then checks if the interpreter of that thread state " -"matches the interpreter guarded by *guard*. If that is the case, this " -"function simply marks the thread state as being used by a " -"``PyThreadState_Ensure`` call and returns." -msgstr "" - -msgid "" -"If there is no attached thread state, then this function checks if any " -"thread state has been used by the current OS thread. (This is returned by :c:" -"func:`PyGILState_GetThisThreadState`.) If there was, then this function " -"checks if that thread state's interpreter matches *guard*. If it does, it is " -"re-attached and marked as used." -msgstr "" - -msgid "" -"Otherwise, if both of the above cases fail, a new thread state is created " -"for *guard*. It is then attached and marked as owned by " -"``PyThreadState_Ensure``." -msgstr "" - -msgid "Get an attached thread state for the interpreter referenced by *view*." -msgstr "" - -msgid "" -"The behavior and return value are the same as for :c:func:" -"`PyThreadState_Ensure`; additionally, if the function succeeds, the " -"interpreter referenced by *view* will be implicitly guarded. The guard will " -"be released upon the corresponding :c:func:`PyThreadState_Release` call." -msgstr "" - -msgid "" -"Undo a :c:func:`PyThreadState_Ensure` or :c:func:" -"`PyThreadState_EnsureFromView` call." -msgstr "" - -msgid "" -"This must be called exactly once for each successful *Ensure* call, with " -"*token* set to that call's return value." -msgstr "" - -msgid "" -"The state that was attached before the corresponding *Ensure* call (if any) " -"will be attached when :c:func:`PyThreadState_Release` returns." -msgstr "" - -msgid "" -"The exact behavior of whether this function deletes a thread state is " -"considered unstable and implementation-dependent." -msgstr "" - -msgid "" -"Currently, this function will decrement an internal counter on the attached " -"thread state. If this counter ever reaches below zero, this function emits a " -"fatal error (via :c:func:`Py_FatalError`)." -msgstr "" - -msgid "" -"If the attached thread state is owned by ``PyThreadState_Ensure``, then the " -"attached thread state will be deallocated and deleted upon the internal " -"counter reaching zero. Otherwise, nothing happens when the counter reaches " -"zero." -msgstr "" - -msgid "" -"An opaque token retrieved from a :c:func:`PyThreadState_Ensure` call and " -"passed to a corresponding :c:func:`PyThreadState_Release` call." -msgstr "" - -msgid "GIL-state APIs" -msgstr "" - -msgid "" -"The following APIs are generally not compatible with subinterpreters and " -"will hang the process during interpreter finalization (see :ref:`cautions-" -"regarding-runtime-finalization`). As such, these APIs were :term:`soft " -"deprecated` in Python 3.15 in favor of the :ref:`new APIs `." -msgstr "" - -msgid "" -"The type of the value returned by :c:func:`PyGILState_Ensure` and passed to :" -"c:func:`PyGILState_Release`." -msgstr "" - -msgid "The GIL was already held when :c:func:`PyGILState_Ensure` was called." -msgstr "" - -msgid "The GIL was not held when :c:func:`PyGILState_Ensure` was called." -msgstr "" - -msgid "" -"Ensure that the current thread is ready to call the Python C API regardless " -"of the current state of Python, or of the :term:`attached thread state`. " -"This may be called as many times as desired by a thread as long as each call " -"is matched with a call to :c:func:`PyGILState_Release`. In general, other " -"thread-related APIs may be used between :c:func:`PyGILState_Ensure` and :c:" -"func:`PyGILState_Release` calls as long as the thread state is restored to " -"its previous state before the Release(). For example, normal usage of the :" -"c:macro:`Py_BEGIN_ALLOW_THREADS` and :c:macro:`Py_END_ALLOW_THREADS` macros " -"is acceptable." -msgstr "" - -msgid "" -"The return value is an opaque \"handle\" to the :term:`attached thread " -"state` when :c:func:`PyGILState_Ensure` was called, and must be passed to :c:" -"func:`PyGILState_Release` to ensure Python is left in the same state. Even " -"though recursive calls are allowed, these handles *cannot* be shared - each " -"unique call to :c:func:`PyGILState_Ensure` must save the handle for its call " -"to :c:func:`PyGILState_Release`." -msgstr "" - -msgid "" -"When the function returns, there will be an :term:`attached thread state` " -"and the thread will be able to call arbitrary Python code." -msgstr "" - -msgid "" -"This function has no way to return an error. As such, errors are either " -"fatal (that is, they send ``SIGABRT`` and crash the process; see :c:func:" -"`Py_FatalError`), or the thread will be permanently blocked (such as during " -"interpreter finalization)." -msgstr "" - -msgid "" -"Calling this function when the interpreter is finalizing will infinitely " -"hang the thread, which may cause deadlocks. :ref:`cautions-regarding-runtime-" -"finalization` for more details." -msgstr "" - -msgid "" -"In addition, this function generally does not work with subinterpreters when " -"used from foreign threads, because this function has no way of knowing which " -"interpreter created the thread (and as such, will implicitly pick the main " -"interpreter)." -msgstr "" - -msgid "" -"Hangs the current thread, rather than terminating it, if called while the " -"interpreter is finalizing." -msgstr "" - -msgid "" -"Use :c:func:`PyThreadState_Ensure` or :c:func:`PyThreadState_EnsureFromView` " -"instead." -msgstr "" - -msgid "" -"Release any resources previously acquired. After this call, Python's state " -"will be the same as it was prior to the corresponding :c:func:" -"`PyGILState_Ensure` call (but generally this state will be unknown to the " -"caller, hence the use of the GIL-state API)." -msgstr "" - -msgid "" -"Every call to :c:func:`PyGILState_Ensure` must be matched by a call to :c:" -"func:`PyGILState_Release` on the same thread." -msgstr "" - -msgid "Use :c:func:`PyThreadState_Release` instead." -msgstr "" - -msgid "" -"Get the :term:`thread state` that was most recently :term:`attached " -"` for this thread. (If the most recent thread state " -"has been deleted, this returns ``NULL``.)" -msgstr "" - -msgid "If the caller has an attached thread state, it is returned." -msgstr "" - -msgid "" -"In other terms, this function returns the thread state that will be used by :" -"c:func:`PyGILState_Ensure`. If this returns ``NULL``, then " -"``PyGILState_Ensure`` will create a new thread state." -msgstr "" - -msgid "This function cannot fail." -msgstr "" - -msgid "" -"Use :c:func:`PyThreadState_Get` or :c:func:`PyThreadState_GetUnchecked` " -"instead." -msgstr "" - -msgid "" -"Return ``1`` if the current thread has an :term:`attached thread state` that " -"matches the thread state returned by :c:func:" -"`PyGILState_GetThisThreadState`. If the caller has no attached thread state " -"or it otherwise doesn't match, then this returns ``0``." -msgstr "" - -msgid "" -"If the current Python process has ever created a subinterpreter, this " -"function will *always* return ``1``." -msgstr "" - -msgid "This is mainly a helper/diagnostic function." -msgstr "" - -msgid "Use ``PyThreadState_GetUnchecked() != NULL`` instead." -msgstr "" - -msgid "Cautions about fork()" -msgstr "" - -msgid "" -"Another important thing to note about threads is their behaviour in the face " -"of the C :c:func:`fork` call. On most systems with :c:func:`fork`, after a " -"process forks only the thread that issued the fork will exist. This has a " -"concrete impact both on how locks must be handled and on all stored state in " -"CPython's runtime." -msgstr "" - -msgid "" -"The fact that only the \"current\" thread remains means any locks held by " -"other threads will never be released. Python solves this for :func:`os.fork` " -"by acquiring the locks it uses internally before the fork, and releasing " -"them afterwards. In addition, it resets any :ref:`lock-objects` in the " -"child. When extending or embedding Python, there is no way to inform Python " -"of additional (non-Python) locks that need to be acquired before or reset " -"after a fork. OS facilities such as :c:func:`!pthread_atfork` would need to " -"be used to accomplish the same thing. Additionally, when extending or " -"embedding Python, calling :c:func:`fork` directly rather than through :func:" -"`os.fork` (and returning to or calling into Python) may result in a deadlock " -"by one of Python's internal locks being held by a thread that is defunct " -"after the fork. :c:func:`PyOS_AfterFork_Child` tries to reset the necessary " -"locks, but is not always able to." -msgstr "" - -msgid "" -"The fact that all other threads go away also means that CPython's runtime " -"state there must be cleaned up properly, which :func:`os.fork` does. This " -"means finalizing all other :c:type:`PyThreadState` objects belonging to the " -"current interpreter and all other :c:type:`PyInterpreterState` objects. Due " -"to this and the special nature of the :ref:`\"main\" interpreter `, :c:func:`fork` should only be called in that " -"interpreter's \"main\" thread, where the CPython global runtime was " -"originally initialized. The only exception is if :c:func:`exec` will be " -"called immediately after." -msgstr "" - -msgid "High-level APIs" -msgstr "" - -msgid "" -"These are the most commonly used types and functions when writing multi-" -"threaded C extensions." -msgstr "" - -msgid "" -"This data structure represents the state of a single thread. The only " -"public data member is:" -msgstr "" - -msgid "This thread's interpreter state." -msgstr "" - -msgid "Deprecated function which does nothing." -msgstr "" - -msgid "" -"In Python 3.6 and older, this function created the GIL if it didn't exist." -msgstr "" - -msgid "The function now does nothing." -msgstr "" - -msgid "" -"This function is now called by :c:func:`Py_Initialize()`, so you don't have " -"to call it yourself anymore." -msgstr "" - -msgid "" -"This function cannot be called before :c:func:`Py_Initialize()` anymore." -msgstr "" - -msgid "" -"Detach the :term:`attached thread state` and return it. The thread will have " -"no :term:`thread state` upon returning." -msgstr "" - -msgid "" -"Set the :term:`attached thread state` to *tstate*. The passed :term:`thread " -"state` **should not** be :term:`attached `, otherwise " -"deadlock ensues. *tstate* will be attached upon returning." -msgstr "" - -msgid "" -"Calling this function from a thread when the runtime is finalizing will hang " -"the thread until the program exits, even if the thread was not created by " -"Python. Refer to :ref:`cautions-regarding-runtime-finalization` for more " -"details." -msgstr "" - -msgid "" -"Return the :term:`attached thread state`. If the thread has no attached " -"thread state, (such as when inside of :c:macro:`Py_BEGIN_ALLOW_THREADS` " -"block), then this issues a fatal error (so that the caller needn't check for " -"``NULL``)." -msgstr "" - -msgid "See also :c:func:`PyThreadState_GetUnchecked`." -msgstr "" - -msgid "" -"Similar to :c:func:`PyThreadState_Get`, but don't kill the process with a " -"fatal error if it is NULL. The caller is responsible to check if the result " -"is NULL." -msgstr "" - -msgid "" -"In Python 3.5 to 3.12, the function was private and known as " -"``_PyThreadState_UncheckedGet()``." -msgstr "" - -msgid "" -"Set the :term:`attached thread state` to *tstate*, and return the :term:" -"`thread state` that was attached prior to calling." -msgstr "" - -msgid "" -"This function is safe to call without an :term:`attached thread state`; it " -"will simply return ``NULL`` indicating that there was no prior thread state." -msgstr "" - -msgid ":c:func:`PyEval_ReleaseThread`" -msgstr "" - -msgid "" -"Similar to :c:func:`PyGILState_Ensure`, this function will hang the thread " -"if the runtime is finalizing." -msgstr "" - -msgid "Low-level APIs" -msgstr "" - -msgid "" -"Create a new thread state object belonging to the given interpreter object. " -"An :term:`attached thread state` is not needed." -msgstr "" - -msgid "" -"Reset all information in a :term:`thread state` object. *tstate* must be :" -"term:`attached `" -msgstr "" - -msgid "" -"This function now calls the :c:member:`!PyThreadState.on_delete` callback. " -"Previously, that happened in :c:func:`PyThreadState_Delete`." -msgstr "" - -msgid "The :c:member:`!PyThreadState.on_delete` callback was removed." -msgstr "" - -msgid "" -"Destroy a :term:`thread state` object. *tstate* should not be :term:" -"`attached ` to any thread. *tstate* must have been " -"reset with a previous call to :c:func:`PyThreadState_Clear`." -msgstr "" - -msgid "" -"Detach the :term:`attached thread state` (which must have been reset with a " -"previous call to :c:func:`PyThreadState_Clear`) and then destroy it." -msgstr "" - -msgid "" -"No :term:`thread state` will be :term:`attached ` " -"upon returning." -msgstr "" - -msgid "Get the current frame of the Python thread state *tstate*." -msgstr "" - -msgid "" -"Return a :term:`strong reference`. Return ``NULL`` if no frame is currently " -"executing." -msgstr "" - -msgid "See also :c:func:`PyEval_GetFrame`." -msgstr "" - -msgid "" -"*tstate* must not be ``NULL``, and must be :term:`attached `." -msgstr "" - -msgid "" -"Get the unique :term:`thread state` identifier of the Python thread state " -"*tstate*." -msgstr "" - -msgid "Get the interpreter of the Python thread state *tstate*." -msgstr "" - -msgid "Suspend tracing and profiling in the Python thread state *tstate*." -msgstr "" - -msgid "Resume them using the :c:func:`PyThreadState_LeaveTracing` function." -msgstr "" - -msgid "" -"Resume tracing and profiling in the Python thread state *tstate* suspended " -"by the :c:func:`PyThreadState_EnterTracing` function." -msgstr "" - -msgid "" -"See also :c:func:`PyEval_SetTrace` and :c:func:`PyEval_SetProfile` functions." -msgstr "" - -msgid "" -"Set the stack protection start address and stack protection size of a Python " -"thread state." -msgstr "" - -msgid "" -"On success, return ``0``. On failure, set an exception and return ``-1``." -msgstr "" - -msgid "" -"CPython implements :ref:`recursion control ` for C code by " -"raising :py:exc:`RecursionError` when it notices that the machine execution " -"stack is close to overflow. See for example the :c:func:" -"`Py_EnterRecursiveCall` function. For this, it needs to know the location of " -"the current thread's stack, which it normally gets from the operating " -"system. When the stack is changed, for example using context switching " -"techniques like the Boost library's ``boost::context``, you must call :c:" -"func:`~PyUnstable_ThreadState_SetStackProtection` to inform CPython of the " -"change." -msgstr "" - -msgid "" -"Call :c:func:`~PyUnstable_ThreadState_SetStackProtection` either before or " -"after changing the stack. Do not call any other Python C API between the " -"call and the stack change." -msgstr "" - -msgid "" -"See :c:func:`PyUnstable_ThreadState_ResetStackProtection` for undoing this " -"operation." -msgstr "" - -msgid "" -"Reset the stack protection start address and stack protection size of a " -"Python thread state to the operating system defaults." -msgstr "" - -msgid "" -"See :c:func:`PyUnstable_ThreadState_SetStackProtection` for an explanation." -msgstr "" - -msgid "" -"Return a dictionary in which extensions can store thread-specific state " -"information. Each extension should use a unique key to use to store state " -"in the dictionary. It is okay to call this function when no :term:`thread " -"state` is :term:`attached `. If this function returns " -"``NULL``, no exception has been raised and the caller should assume no " -"thread state is attached." -msgstr "" - -msgid "" -":term:`Attach ` *tstate* to the current thread, which " -"must not be ``NULL`` or already :term:`attached `." -msgstr "" - -msgid "" -"The calling thread must not already have an :term:`attached thread state`." -msgstr "" - -msgid "" -"Updated to be consistent with :c:func:`PyEval_RestoreThread`, :c:func:" -"`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`, and terminate the " -"current thread if called while the interpreter is finalizing." -msgstr "" - -msgid "" -":c:func:`PyEval_RestoreThread` is a higher-level function which is always " -"available (even when threads have not been initialized)." -msgstr "" - -msgid "" -"Detach the :term:`attached thread state`. The *tstate* argument, which must " -"not be ``NULL``, is only used to check that it represents the :term:" -"`attached thread state` --- if it isn't, a fatal error is reported." -msgstr "" - -msgid "" -":c:func:`PyEval_SaveThread` is a higher-level function which is always " -"available (even when threads have not been initialized)." -msgstr "" - -msgid "Asynchronous notifications" -msgstr "" - -msgid "" -"A mechanism is provided to make asynchronous notifications to the main " -"interpreter thread. These notifications take the form of a function pointer " -"and a void pointer argument." -msgstr "" - -msgid "" -"Schedule a function to be called from the main interpreter thread. On " -"success, ``0`` is returned and *func* is queued for being called in the main " -"thread. On failure, ``-1`` is returned without setting any exception." -msgstr "" - -msgid "" -"When successfully queued, *func* will be *eventually* called from the main " -"interpreter thread with the argument *arg*. It will be called " -"asynchronously with respect to normally running Python code, but with both " -"these conditions met:" -msgstr "" - -msgid "on a :term:`bytecode` boundary;" -msgstr "" - -msgid "" -"with the main thread holding an :term:`attached thread state` (*func* can " -"therefore use the full C API)." -msgstr "" - -msgid "" -"*func* must return ``0`` on success, or ``-1`` on failure with an exception " -"set. *func* won't be interrupted to perform another asynchronous " -"notification recursively, but it can still be interrupted to switch threads " -"if the :term:`thread state ` is detached." -msgstr "" - -msgid "" -"This function doesn't need an :term:`attached thread state`. However, to " -"call this function in a subinterpreter, the caller must have an :term:" -"`attached thread state`. Otherwise, the function *func* can be scheduled to " -"be called from the wrong interpreter." -msgstr "" - -msgid "" -"This is a low-level function, only useful for very special cases. There is " -"no guarantee that *func* will be called as quick as possible. If the main " -"thread is busy executing a system call, *func* won't be called before the " -"system call returns. This function is generally **not** suitable for " -"calling Python code from arbitrary C threads. Instead, use :c:func:" -"`PyThreadState_EnsureFromView`." -msgstr "" - -msgid "" -"If this function is called in a subinterpreter, the function *func* is now " -"scheduled to be called from the subinterpreter, rather than being called " -"from the main interpreter. Each subinterpreter now has its own list of " -"scheduled calls." -msgstr "" - -msgid "" -"This function now always schedules *func* to be run in the main interpreter." -msgstr "" - -msgid "" -"Execute all pending calls. This is usually executed automatically by the " -"interpreter." -msgstr "" - -msgid "" -"This function returns ``0`` on success, and returns ``-1`` with an exception " -"set on failure." -msgstr "" - -msgid "" -"If this is not called in the main thread of the main interpreter, this " -"function does nothing and returns ``0``. The caller must hold an :term:" -"`attached thread state`." -msgstr "" - -msgid "This function only runs pending calls in the main interpreter." -msgstr "" - -msgid "" -"Schedule an exception to be raised asynchronously in a thread. If the thread " -"has a previously scheduled exception, it is overwritten." -msgstr "" - -msgid "" -"The *id* argument is the thread id of the target thread, as returned by :c:" -"func:`PyThread_get_thread_ident`. *exc* is the class of the exception to be " -"raised, or ``NULL`` to clear the pending exception (if any)." -msgstr "" - -msgid "" -"Return the number of affected thread states. This is normally ``1`` if *id* " -"is found, even when no change was made (the given *exc* was already pending, " -"or *exc* is ``NULL`` but no exception is pending). If the thread id isn't " -"found, return ``0``. This raises no exceptions." -msgstr "" - -msgid "" -"To prevent naive misuse, you must write your own C extension to call this. " -"This function must be called with an :term:`attached thread state`. This " -"function does not :term:`steal` any references to *exc*. This function does " -"not necessarily interrupt system calls such as :py:func:`~time.sleep`." -msgstr "" - -msgid "" -"The type of the *id* parameter changed from :c:expr:`long` to :c:expr:" -"`unsigned long`." -msgstr "" - -msgid "Operating system thread APIs" -msgstr "" - -msgid "Sentinel value for an invalid thread ID." -msgstr "" - -msgid "This is currently equivalent to ``(unsigned long)-1``." -msgstr "" - -msgid "" -"Start function *func* in a new thread with argument *arg*. The resulting " -"thread is not intended to be joined." -msgstr "" - -msgid "*func* must not be ``NULL``, but *arg* may be ``NULL``." -msgstr "" - -msgid "" -"On success, this function returns the identifier of the new thread; on " -"failure, this returns :c:macro:`PYTHREAD_INVALID_THREAD_ID`." -msgstr "" - -msgid "The caller does not need to hold an :term:`attached thread state`." -msgstr "" - -msgid "Return the identifier of the current thread, which will never be zero." -msgstr "" - -msgid "" -"This function cannot fail, and the caller does not need to hold an :term:" -"`attached thread state`." -msgstr "" - -msgid "" -":py:func:`threading.get_ident` and :py:attr:`threading.Thread.ident` expose " -"this identifier to Python." -msgstr "" - -msgid "" -"Get general information about the current thread in the form of a :ref:" -"`struct sequence ` object. This information is " -"accessible as :py:attr:`sys.thread_info` in Python." -msgstr "" - -msgid "" -"On success, this returns a new :term:`strong reference` to the thread " -"information; on failure, this returns ``NULL`` with an exception set." -msgstr "" - -msgid "The caller must hold an :term:`attached thread state`." -msgstr "" - -msgid "This macro is defined when the system supports native thread IDs." -msgstr "" - -msgid "" -"Get the native identifier of the current thread as it was assigned by the " -"operating system's kernel, which will never be less than zero." -msgstr "" - -msgid "" -"This function is only available when :c:macro:`PY_HAVE_THREAD_NATIVE_ID` is " -"defined." -msgstr "" - -msgid ":py:func:`threading.get_native_id`" -msgstr "" - -msgid "" -"Terminate the current thread. This function is generally considered unsafe " -"and should be avoided. It is kept solely for backwards compatibility." -msgstr "" - -msgid "" -"This function is only safe to call if all functions in the full call stack " -"are written to safely allow it." -msgstr "" - -msgid "" -"If the current system uses POSIX threads (also known as \"pthreads\"), this " -"calls :manpage:`pthread_exit(3)`, which attempts to unwind the stack and " -"call C++ destructors on some libc implementations. However, if a " -"``noexcept`` function is reached, it may terminate the process. Other " -"systems, such as macOS, do unwinding." -msgstr "" - -msgid "" -"On Windows, this function calls ``_endthreadex()``, which kills the thread " -"without calling C++ destructors." -msgstr "" - -msgid "In any case, there is a risk of corruption on the thread's stack." -msgstr "" - -msgid "" -"Initialize ``PyThread*`` APIs. Python executes this function automatically, " -"so there's little need to call it from an extension module." -msgstr "" - -msgid "Set the stack size of the current thread to *size* bytes." -msgstr "" - -msgid "" -"This function returns ``0`` on success, ``-1`` if *size* is invalid, or " -"``-2`` if the system does not support changing the stack size. This function " -"does not set exceptions." -msgstr "" - -msgid "" -"Return the stack size of the current thread in bytes, or ``0`` if the " -"system's default stack size is in use." -msgstr "" - -msgid "global interpreter lock" -msgstr "" - -msgid "interpreter lock" -msgstr "" - -msgid "lock, interpreter" -msgstr "" - -msgid "setswitchinterval (in module sys)" -msgstr "" - -msgid "PyThreadState (C type)" -msgstr "" - -msgid "Py_BEGIN_ALLOW_THREADS (C macro)" -msgstr "" - -msgid "Py_END_ALLOW_THREADS (C macro)" -msgstr "" - -msgid "PyEval_RestoreThread (C function)" -msgstr "" - -msgid "PyEval_SaveThread (C function)" -msgstr "" - -msgid "PyEval_AcquireThread()" -msgstr "" - -msgid "PyEval_ReleaseThread()" -msgstr "" - -msgid "PyEval_SaveThread()" -msgstr "" - -msgid "PyEval_RestoreThread()" -msgstr "" - -msgid "module" -msgstr "" - -msgid "_thread" -msgstr "" diff --git a/c-api/time.po b/c-api/time.po index 1329c68..5787900 100644 --- a/c-api/time.po +++ b/c-api/time.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +39,8 @@ msgid "" msgstr "" msgid "" -"The reference point for timestamps depends on the clock used. For example, :" -"c:func:`PyTime_Time` returns timestamps relative to the UNIX epoch." +"The reference point for timestamps depends on the clock used. For " +"example, :c:func:`PyTime_Time` returns timestamps relative to the UNIX epoch." msgstr "" msgid "" diff --git a/c-api/tls.po b/c-api/tls.po deleted file mode 100644 index bf598ca..0000000 --- a/c-api/tls.po +++ /dev/null @@ -1,169 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-25 14:46+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Thread-local storage support" -msgstr "" - -msgid "" -"The Python interpreter provides low-level support for thread-local storage " -"(TLS) which wraps the underlying native TLS implementation to support the " -"Python-level thread-local storage API (:class:`threading.local`). The " -"CPython C level APIs are similar to those offered by pthreads and Windows: " -"use a thread key and functions to associate a :c:expr:`void*` value per " -"thread." -msgstr "" - -msgid "" -"A :term:`thread state` does *not* need to be :term:`attached ` when calling these functions; they supply their own locking." -msgstr "" - -msgid "" -"Note that :file:`Python.h` does not include the declaration of the TLS APIs, " -"you need to include :file:`pythread.h` to use thread-local storage." -msgstr "" - -msgid "" -"None of these API functions handle memory management on behalf of the :c:" -"expr:`void*` values. You need to allocate and deallocate them yourself. If " -"the :c:expr:`void*` values happen to be :c:expr:`PyObject*`, these functions " -"don't do refcount operations on them either." -msgstr "" - -msgid "Thread-specific storage API" -msgstr "" - -msgid "" -"The thread-specific storage (TSS) API was introduced to supersede the use of " -"the existing TLS API within the CPython interpreter. This API uses a new " -"type :c:type:`Py_tss_t` instead of :c:expr:`int` to represent thread keys." -msgstr "" - -msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" -msgstr "" - -msgid "" -"This data structure represents the state of a thread key, the definition of " -"which may depend on the underlying TLS implementation, and it has an " -"internal field representing the key's initialization state. There are no " -"public members in this structure." -msgstr "" - -msgid "" -"When :ref:`Py_LIMITED_API ` is not defined, static allocation of " -"this type by :c:macro:`Py_tss_NEEDS_INIT` is allowed." -msgstr "" - -msgid "" -"This macro expands to the initializer for :c:type:`Py_tss_t` variables. Note " -"that this macro won't be defined with :ref:`Py_LIMITED_API `." -msgstr "" - -msgid "Dynamic allocation" -msgstr "" - -msgid "" -"Dynamic allocation of the :c:type:`Py_tss_t`, required in extension modules " -"built with :ref:`Py_LIMITED_API `, where static allocation of this " -"type is not possible due to its implementation being opaque at build time." -msgstr "" - -msgid "" -"Return a value which is the same state as a value initialized with :c:macro:" -"`Py_tss_NEEDS_INIT`, or ``NULL`` in the case of dynamic allocation failure." -msgstr "" - -msgid "" -"Free the given *key* allocated by :c:func:`PyThread_tss_alloc`, after first " -"calling :c:func:`PyThread_tss_delete` to ensure any associated thread locals " -"have been unassigned. This is a no-op if the *key* argument is ``NULL``." -msgstr "" - -msgid "" -"A freed key becomes a dangling pointer. You should reset the key to ``NULL``." -msgstr "" - -msgid "Methods" -msgstr "" - -msgid "" -"The parameter *key* of these functions must not be ``NULL``. Moreover, the " -"behaviors of :c:func:`PyThread_tss_set` and :c:func:`PyThread_tss_get` are " -"undefined if the given :c:type:`Py_tss_t` has not been initialized by :c:" -"func:`PyThread_tss_create`." -msgstr "" - -msgid "" -"Return a non-zero value if the given :c:type:`Py_tss_t` has been initialized " -"by :c:func:`PyThread_tss_create`." -msgstr "" - -msgid "" -"Return a zero value on successful initialization of a TSS key. The behavior " -"is undefined if the value pointed to by the *key* argument is not " -"initialized by :c:macro:`Py_tss_NEEDS_INIT`. This function can be called " -"repeatedly on the same key -- calling it on an already initialized key is a " -"no-op and immediately returns success." -msgstr "" - -msgid "" -"Destroy a TSS key to forget the values associated with the key across all " -"threads, and change the key's initialization state to uninitialized. A " -"destroyed key is able to be initialized again by :c:func:" -"`PyThread_tss_create`. This function can be called repeatedly on the same " -"key -- calling it on an already destroyed key is a no-op." -msgstr "" - -msgid "" -"Return a zero value to indicate successfully associating a :c:expr:`void*` " -"value with a TSS key in the current thread. Each thread has a distinct " -"mapping of the key to a :c:expr:`void*` value." -msgstr "" - -msgid "" -"Return the :c:expr:`void*` value associated with a TSS key in the current " -"thread. This returns ``NULL`` if no value is associated with the key in the " -"current thread." -msgstr "" - -msgid "Legacy APIs" -msgstr "" - -msgid "" -"This API is superseded by the :ref:`thread-specific storage (TSS) API " -"`." -msgstr "" - -msgid "" -"This version of the API does not support platforms where the native TLS key " -"is defined in a way that cannot be safely cast to ``int``. On such " -"platforms, :c:func:`PyThread_create_key` will return immediately with a " -"failure status, and the other TLS functions will all be no-ops on such " -"platforms." -msgstr "" - -msgid "" -"Due to the compatibility problem noted above, this version of the API should " -"not be used in new code." -msgstr "" diff --git a/c-api/tuple.po b/c-api/tuple.po index db04da1..fb570f5 100644 --- a/c-api/tuple.po +++ b/c-api/tuple.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -78,15 +78,15 @@ msgstr "" msgid "" "Return the object at position *pos* in the tuple pointed to by *p*. If " -"*pos* is negative or out of bounds, return ``NULL`` and set an :exc:" -"`IndexError` exception." +"*pos* is negative or out of bounds, return ``NULL`` and set " +"an :exc:`IndexError` exception." msgstr "" msgid "" "The returned reference is borrowed from the tuple *p* (that is: it is only " "valid as long as you hold a reference to *p*). To get a :term:`strong " -"reference`, use :c:func:`Py_NewRef(PyTuple_GetItem(...)) ` or :c:" -"func:`PySequence_GetItem`." +"reference`, use :c:func:`Py_NewRef(PyTuple_GetItem(...)) ` " +"or :c:func:`PySequence_GetItem`." msgstr "" msgid "Like :c:func:`PyTuple_GetItem`, but does no checking of its arguments." @@ -122,14 +122,16 @@ msgid "" msgstr "" msgid "" -"Bounds checking is performed as an assertion if Python is built in :ref:" -"`debug mode ` or :option:`with assertions <--with-assertions>`." +"Bounds checking is performed as an assertion if Python is built " +"in :ref:`debug mode ` or :option:`with assertions <--with-" +"assertions>`." msgstr "" msgid "" -"This function \":term:`steals `\" a reference to *o*, and, unlike :c:" -"func:`PyTuple_SetItem`, does *not* discard a reference to any item that is " -"being replaced; any reference in the tuple at position *pos* will be leaked." +"This function \":term:`steals `\" a reference to *o*, and, " +"unlike :c:func:`PyTuple_SetItem`, does *not* discard a reference to any item " +"that is being replaced; any reference in the tuple at position *pos* will be " +"leaked." msgstr "" msgid "" @@ -148,8 +150,8 @@ msgid "" "Client code should never assume that the resulting value of ``*p`` will be " "the same as before calling this function. If the object referenced by ``*p`` " "is replaced, the original ``*p`` is destroyed. On failure, returns ``-1`` " -"and sets ``*p`` to ``NULL``, and raises :exc:`MemoryError` or :exc:" -"`SystemError`." +"and sets ``*p`` to ``NULL``, and raises :exc:`MemoryError` " +"or :exc:`SystemError`." msgstr "" msgid "Struct Sequence Objects" @@ -157,8 +159,9 @@ msgstr "" msgid "" "A struct sequence object is a :term:`named tuple`, that is, a sequence whose " -"items can also be accessed through attributes. It is similar to :func:" -"`collections.namedtuple`, but provides a slightly different interface." +"items can also be accessed through attributes. It is similar " +"to :func:`collections.namedtuple`, but provides a slightly different " +"interface." msgstr "" msgid "" @@ -168,8 +171,8 @@ msgstr "" msgid "" "Create a new struct sequence type from the data in *desc*, described below. " -"Instances of the resulting type can be created with :c:func:" -"`PyStructSequence_New`." +"Instances of the resulting type can be created " +"with :c:func:`PyStructSequence_New`." msgstr "" msgid "Return ``NULL`` with an exception set on failure." @@ -202,15 +205,15 @@ msgstr "" msgid "" "Describes a field of a struct sequence. As a struct sequence is modeled as a " -"tuple, all fields are typed as :c:expr:`PyObject*`. The index in the :c:" -"member:`~PyStructSequence_Desc.fields` array of the :c:type:" -"`PyStructSequence_Desc` determines which field of the struct sequence is " -"described." +"tuple, all fields are typed as :c:expr:`PyObject*`. The index in " +"the :c:member:`~PyStructSequence_Desc.fields` array of " +"the :c:type:`PyStructSequence_Desc` determines which field of the struct " +"sequence is described." msgstr "" msgid "" -"Name for the field or ``NULL`` to end the list of named fields, set to :c:" -"data:`PyStructSequence_UnnamedField` to leave unnamed." +"Name for the field or ``NULL`` to end the list of named fields, set " +"to :c:data:`PyStructSequence_UnnamedField` to leave unnamed." msgstr "" msgid "Field docstring or ``NULL`` to omit." @@ -223,8 +226,8 @@ msgid "The type was changed from ``char *``." msgstr "" msgid "" -"Creates an instance of *type*, which must have been created with :c:func:" -"`PyStructSequence_NewType`." +"Creates an instance of *type*, which must have been created " +"with :c:func:`PyStructSequence_NewType`." msgstr "" msgid "" @@ -255,7 +258,7 @@ msgid "Now implemented as an alias to :c:func:`PyStructSequence_SetItem`." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "tuple" -msgstr "" +msgstr "ਟਿਊਪਲ" diff --git a/c-api/type.po b/c-api/type.po index 06196b9..e6a55cb 100644 --- a/c-api/type.po +++ b/c-api/type.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,14 +23,14 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Type Objects" -msgstr "" +msgstr "Type Objects" msgid "The C structure of the objects used to describe built-in types." msgstr "" msgid "" -"This is the type object for type objects; it is the same object as :class:" -"`type` in the Python layer." +"This is the type object for type objects; it is the same object " +"as :class:`type` in the Python layer." msgstr "" msgid "" @@ -51,9 +51,9 @@ msgstr "" msgid "" "Return the :c:member:`~PyTypeObject.tp_flags` member of *type*. This " "function is primarily meant for use with ``Py_LIMITED_API``; the individual " -"flag bits are guaranteed to be stable across Python releases, but access to :" -"c:member:`~PyTypeObject.tp_flags` itself is not part of the :ref:`limited " -"API `." +"flag bits are guaranteed to be stable across Python releases, but access " +"to :c:member:`~PyTypeObject.tp_flags` itself is not part of " +"the :ref:`limited API `." msgstr "" msgid "The return type is now ``unsigned long`` rather than ``long``." @@ -96,24 +96,24 @@ msgid "" msgstr "" msgid "" -"Clear watcher identified by *watcher_id* (previously returned from :c:func:" -"`PyType_AddWatcher`). Return ``0`` on success, ``-1`` on error (e.g. if " -"*watcher_id* was never registered.)" +"Clear watcher identified by *watcher_id* (previously returned " +"from :c:func:`PyType_AddWatcher`). Return ``0`` on success, ``-1`` on error " +"(e.g. if *watcher_id* was never registered.)" msgstr "" msgid "" "An extension should never call ``PyType_ClearWatcher`` with a *watcher_id* " -"that was not returned to it by a previous call to :c:func:" -"`PyType_AddWatcher`." +"that was not returned to it by a previous call " +"to :c:func:`PyType_AddWatcher`." msgstr "" msgid "" -"Mark *type* as watched. The callback granted *watcher_id* by :c:func:" -"`PyType_AddWatcher` will be called whenever :c:func:`PyType_Modified` " -"reports a change to *type*. (The callback may be called only once for a " -"series of consecutive modifications to *type*, if :c:func:`!_PyType_Lookup` " -"is not called on *type* between the modifications; this is an implementation " -"detail and subject to change.)" +"Mark *type* as watched. The callback granted *watcher_id* " +"by :c:func:`PyType_AddWatcher` will be called " +"whenever :c:func:`PyType_Modified` reports a change to *type*. (The callback " +"may be called only once for a series of consecutive modifications to *type*, " +"if :c:func:`!_PyType_Lookup` is not called on *type* between the " +"modifications; this is an implementation detail and subject to change.)" msgstr "" msgid "The callback is also invoked when a watched heap type is deallocated." @@ -129,8 +129,8 @@ msgid "" msgstr "" msgid "" -"Mark *type* as not watched. This undoes a previous call to :c:func:" -"`PyType_Watch`. *type* must not be ``NULL``." +"Mark *type* as not watched. This undoes a previous call " +"to :c:func:`PyType_Watch`. *type* must not be ``NULL``." msgstr "" msgid "" @@ -190,9 +190,10 @@ msgid "Return true if *a* is a subtype of *b*." msgstr "" msgid "" -"This function only checks for actual subtypes, which means that :meth:`~type." -"__subclasscheck__` is not called on *b*. Call :c:func:`PyObject_IsSubclass` " -"to do the same check that :func:`issubclass` would do." +"This function only checks for actual subtypes, which means " +"that :meth:`~type.__subclasscheck__` is not called on *b*. " +"Call :c:func:`PyObject_IsSubclass` to do the same check " +"that :func:`issubclass` would do." msgstr "" msgid "" @@ -203,25 +204,27 @@ msgid "" msgstr "" msgid "" -"Do not call this directly to allocate memory for an object; call the type's :" -"c:member:`~PyTypeObject.tp_alloc` slot instead." +"Do not call this directly to allocate memory for an object; call the " +"type's :c:member:`~PyTypeObject.tp_alloc` slot instead." msgstr "" msgid "" -"For types that support garbage collection (i.e., the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag is set), this function behaves like :c:macro:" -"`PyObject_GC_New` or :c:macro:`PyObject_GC_NewVar` (except the memory is " -"guaranteed to be zeroed before initialization), and should be paired with :c:" -"func:`PyObject_GC_Del` in :c:member:`~PyTypeObject.tp_free`. Otherwise, it " -"behaves like :c:macro:`PyObject_New` or :c:macro:`PyObject_NewVar` (except " -"the memory is guaranteed to be zeroed before initialization) and should be " -"paired with :c:func:`PyObject_Free` in :c:member:`~PyTypeObject.tp_free`." +"For types that support garbage collection (i.e., " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set), this function behaves " +"like :c:macro:`PyObject_GC_New` or :c:macro:`PyObject_GC_NewVar` (except the " +"memory is guaranteed to be zeroed before initialization), and should be " +"paired with :c:func:`PyObject_GC_Del` in :c:member:`~PyTypeObject.tp_free`. " +"Otherwise, it behaves like :c:macro:`PyObject_New` " +"or :c:macro:`PyObject_NewVar` (except the memory is guaranteed to be zeroed " +"before initialization) and should be paired with :c:func:`PyObject_Free` " +"in :c:member:`~PyTypeObject.tp_free`." msgstr "" msgid "" "Generic handler for the :c:member:`~PyTypeObject.tp_new` slot of a type " -"object. Creates a new instance using the type's :c:member:`~PyTypeObject." -"tp_alloc` slot and returns the resulting object." +"object. Creates a new instance using the " +"type's :c:member:`~PyTypeObject.tp_alloc` slot and returns the resulting " +"object." msgstr "" msgid "" @@ -235,31 +238,31 @@ msgid "" "If some of the base classes implements the GC protocol and the provided type " "does not include the :c:macro:`Py_TPFLAGS_HAVE_GC` in its flags, then the GC " "protocol will be automatically implemented from its parents. On the " -"contrary, if the type being created does include :c:macro:" -"`Py_TPFLAGS_HAVE_GC` in its flags then it **must** implement the GC protocol " -"itself by at least implementing the :c:member:`~PyTypeObject.tp_traverse` " -"handle." +"contrary, if the type being created does " +"include :c:macro:`Py_TPFLAGS_HAVE_GC` in its flags then it **must** " +"implement the GC protocol itself by at least implementing " +"the :c:member:`~PyTypeObject.tp_traverse` handle." msgstr "" msgid "" -"Return the type's name. Equivalent to getting the type's :attr:`~type." -"__name__` attribute." +"Return the type's name. Equivalent to getting the " +"type's :attr:`~type.__name__` attribute." msgstr "" msgid "" -"Return the type's qualified name. Equivalent to getting the type's :attr:" -"`~type.__qualname__` attribute." +"Return the type's qualified name. Equivalent to getting the " +"type's :attr:`~type.__qualname__` attribute." msgstr "" msgid "" "Return the type's fully qualified name. Equivalent to ``f\"{type.__module__}." -"{type.__qualname__}\"``, or :attr:`type.__qualname__` if :attr:`type." -"__module__` is not a string or is equal to ``\"builtins\"``." +"{type.__qualname__}\"``, or :attr:`type.__qualname__` " +"if :attr:`type.__module__` is not a string or is equal to ``\"builtins\"``." msgstr "" msgid "" -"Return the type's module name. Equivalent to getting the :attr:`type." -"__module__` attribute." +"Return the type's module name. Equivalent to getting " +"the :attr:`type.__module__` attribute." msgstr "" msgid "" @@ -300,14 +303,14 @@ msgid "" "not return the intended result. ``Py_TYPE(self)`` may be a *subclass* of the " "intended class, and subclasses are not necessarily defined in the same " "module as their superclass. See :c:type:`PyCMethod` to get the class that " -"defines the method. See :c:func:`PyType_GetModuleByToken` for cases when :c:" -"type:`!PyCMethod` cannot be used." +"defines the method. See :c:func:`PyType_GetModuleByToken` for cases " +"when :c:type:`!PyCMethod` cannot be used." msgstr "" msgid "" "Return the state of the module object associated with the given type. This " -"is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:" -"func:`PyType_GetModule`." +"is a shortcut for calling :c:func:`PyModule_GetState()` on the result " +"of :c:func:`PyType_GetModule`." msgstr "" msgid "" @@ -325,17 +328,18 @@ msgid "" msgstr "" msgid "" -"This function is intended to be used together with :c:func:" -"`PyModule_GetState()` to get module state from slot methods (such as :c:" -"member:`~PyTypeObject.tp_init` or :c:member:`~PyNumberMethods.nb_add`) and " -"other places where a method's defining class cannot be passed using the :c:" -"type:`PyCMethod` calling convention." +"This function is intended to be used together " +"with :c:func:`PyModule_GetState()` to get module state from slot methods " +"(such as :c:member:`~PyTypeObject.tp_init` " +"or :c:member:`~PyNumberMethods.nb_add`) and other places where a method's " +"defining class cannot be passed using the :c:type:`PyCMethod` calling " +"convention." msgstr "" msgid "" -"Find the first superclass whose module was created from the given :c:type:" -"`PyModuleDef` *def*, or whose :ref:`module token ` is " -"equal to *def*, and return that module." +"Find the first superclass whose module was created from the " +"given :c:type:`PyModuleDef` *def*, or whose :ref:`module token ` is equal to *def*, and return that module." msgstr "" msgid "" @@ -352,8 +356,8 @@ msgid "" msgstr "" msgid "" -"Find the first superclass in *type*'s :term:`method resolution order` whose :" -"c:macro:`Py_tp_token` token is equal to *tp_token*." +"Find the first superclass in *type*'s :term:`method resolution order` " +"whose :c:macro:`Py_tp_token` token is equal to *tp_token*." msgstr "" msgid "" @@ -405,18 +409,18 @@ msgstr "" msgid "" "Create and return a :ref:`heap type ` from a :c:type:`!PySlot` " -"array. See :ref:`capi-slots` for general information on slots, and :ref:" -"`pyslot_type_slot_ids` for slots specific to type creation." +"array. See :ref:`capi-slots` for general information on slots, " +"and :ref:`pyslot_type_slot_ids` for slots specific to type creation." msgstr "" msgid "This function calls :c:func:`PyType_Ready` on the new type." msgstr "" msgid "" -"Note that this function does *not* fully match the behavior of calling :py:" -"class:`type() ` or using the :keyword:`class` statement. With user-" -"provided base types or metaclasses, prefer :ref:`calling ` :py:" -"class:`type` (or the metaclass) over ``PyType_From*`` functions. " +"Note that this function does *not* fully match the behavior of " +"calling :py:class:`type() ` or using the :keyword:`class` statement. " +"With user-provided base types or metaclasses, prefer :ref:`calling ` :py:class:`type` (or the metaclass) over ``PyType_From*`` functions. " "Specifically:" msgstr "" @@ -437,10 +441,11 @@ msgstr "" msgid "" "Slots are typically defined as a global static constant arrays. However, " "sometimes slot values are not statically known at compile time. For example, " -"slots like :c:data:`Py_tp_bases`, :c:data:`Py_tp_metaclass` and :c:data:" -"`Py_tp_module` require live Python objects. In this case, it is recommended " -"to put such slots on the stack, and use :c:macro:`Py_slot_subslots` to refer " -"to an array of static slots. For example::" +"slots like :c:data:`Py_tp_bases`, :c:data:`Py_tp_metaclass` " +"and :c:data:`Py_tp_module` require live Python objects. In this case, it is " +"recommended to put such slots on the stack, and " +"use :c:macro:`Py_slot_subslots` to refer to an array of static slots. For " +"example::" msgstr "" msgid "" @@ -488,10 +493,9 @@ msgid "Type slot IDs" msgstr "" msgid "" -"Most type slot IDs are named like the field names of the structures :c:type:" -"`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" -"type:`PyMappingMethods` and :c:type:`PyAsyncMethods` with an added ``Py_`` " -"prefix. For example, use:" +"Most type slot IDs are named like the field names of the " +"structures :c:type:`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:type:`PyMappingMethods` " +"and :c:type:`PyAsyncMethods` with an added ``Py_`` prefix. For example, use:" msgstr "" msgid ":c:data:`Py_tp_dealloc` to set :c:member:`PyTypeObject.tp_dealloc`" @@ -538,13 +542,13 @@ msgid "" msgstr "" msgid "" -":c:member:`~PyTypeObject.tp_weaklistoffset` (use :c:macro:" -"`Py_TPFLAGS_MANAGED_WEAKREF` instead if possible)" +":c:member:`~PyTypeObject.tp_weaklistoffset` " +"(use :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead if possible)" msgstr "" msgid "" -":c:member:`~PyTypeObject.tp_dictoffset` (use :c:macro:" -"`Py_TPFLAGS_MANAGED_DICT` instead if possible)" +":c:member:`~PyTypeObject.tp_dictoffset` " +"(use :c:macro:`Py_TPFLAGS_MANAGED_DICT` instead if possible)" msgstr "" msgid "" @@ -554,8 +558,8 @@ msgstr "" msgid "" "If it is not possible to switch to a ``MANAGED`` flag (for example, for " -"vectorcall or to support Python older than 3.12), specify the offset in :c:" -"data:`Py_tp_members`. See :ref:`PyMemberDef documentation ` for details." msgstr "" @@ -564,8 +568,7 @@ msgid "" msgstr "" msgid "" -":c:member:`~PyTypeObject.tp_dict`, :c:member:`~PyTypeObject.tp_mro`, :c:" -"member:`~PyTypeObject.tp_cache`, :c:member:`~PyTypeObject.tp_subclasses`, " +":c:member:`~PyTypeObject.tp_dict`, :c:member:`~PyTypeObject.tp_mro`, :c:member:`~PyTypeObject.tp_cache`, :c:member:`~PyTypeObject.tp_subclasses`, " "and :c:member:`~PyTypeObject.tp_weaklist`." msgstr "" @@ -590,14 +593,14 @@ msgid "Slots in :c:type:`PyBufferProcs` may be set in the unlimited API." msgstr "" msgid "" -":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs." -"bf_releasebuffer` are now available under the :ref:`limited API `." +":c:member:`~PyBufferProcs.bf_getbuffer` " +"and :c:member:`~PyBufferProcs.bf_releasebuffer` are now available under " +"the :ref:`limited API `." msgstr "" msgid "" -"The field :c:member:`~PyTypeObject.tp_vectorcall` can now be set using :c:" -"data:`Py_tp_vectorcall`. See the field's documentation for details." +"The field :c:member:`~PyTypeObject.tp_vectorcall` can now be set " +"using :c:data:`Py_tp_vectorcall`. See the field's documentation for details." msgstr "" msgid "" @@ -612,8 +615,8 @@ msgid "" msgstr "" msgid "" -":c:member:`Slot ID ` for the name of the type, used to set :c:" -"member:`PyTypeObject.tp_name`." +":c:member:`Slot ID ` for the name of the type, used to " +"set :c:member:`PyTypeObject.tp_name`." msgstr "" msgid "" @@ -621,8 +624,8 @@ msgid "" msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use :c:member:" -"`PyType_Spec.name` instead." +"This may not be used in :c:member:`PyType_Spec.slots`. " +"Use :c:member:`PyType_Spec.name` instead." msgstr "" msgid "" @@ -640,14 +643,14 @@ msgid "The value must be positive." msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use :c:member:" -"`PyType_Spec.basicsize` instead." +"This may not be used in :c:member:`PyType_Spec.slots`. " +"Use :c:member:`PyType_Spec.basicsize` instead." msgstr "" msgid "" -"This slot may not be used with :c:func:`PyType_GetSlot`. Use :c:member:" -"`PyTypeObject.tp_basicsize` instead if needed, but be aware that a type's " -"size is often considered an implementation detail." +"This slot may not be used with :c:func:`PyType_GetSlot`. " +"Use :c:member:`PyTypeObject.tp_basicsize` instead if needed, but be aware " +"that a type's size is often considered an implementation detail." msgstr "" msgid "" @@ -657,9 +660,9 @@ msgid "" msgstr "" msgid "" -"The value is used, together with the size of superclasses, to set :c:member:" -"`PyTypeObject.tp_basicsize`. Python will insert padding as needed to meet :c:" -"member:`!tp_basicsize`'s alignment requirements." +"The value is used, together with the size of superclasses, to " +"set :c:member:`PyTypeObject.tp_basicsize`. Python will insert padding as " +"needed to meet :c:member:`!tp_basicsize`'s alignment requirements." msgstr "" msgid "" @@ -679,8 +682,8 @@ msgid "" msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use negative :c:" -"member:`PyType_Spec.basicsize` instead." +"This may not be used in :c:member:`PyType_Spec.slots`. Use " +"negative :c:member:`PyType_Spec.basicsize` instead." msgstr "" msgid "This slot may not be used with :c:func:`PyType_GetSlot`." @@ -688,8 +691,8 @@ msgstr "" msgid "" ":c:member:`Slot ID ` for the size of one element of a variable-" -"size type, in bytes. Used to set :c:member:`PyTypeObject.tp_itemsize`. See :" -"c:member:`!tp_itemsize` documentation for caveats." +"size type, in bytes. Used to set :c:member:`PyTypeObject.tp_itemsize`. " +"See :c:member:`!tp_itemsize` documentation for caveats." msgstr "" msgid "" @@ -719,34 +722,34 @@ msgid "With the :c:macro:`Py_TPFLAGS_ITEMS_AT_END` flag." msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use :c:member:" -"`PyType_Spec.itemsize` instead." +"This may not be used in :c:member:`PyType_Spec.slots`. " +"Use :c:member:`PyType_Spec.itemsize` instead." msgstr "" msgid "" -":c:member:`Slot ID ` for type flags, used to set :c:member:" -"`PyTypeObject.tp_flags`." +":c:member:`Slot ID ` for type flags, used to " +"set :c:member:`PyTypeObject.tp_flags`." msgstr "" msgid "" -"The ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" -"`PyType_FromSpecWithBases` sets it automatically." +"The ``Py_TPFLAGS_HEAPTYPE`` flag is not " +"set, :c:func:`PyType_FromSpecWithBases` sets it automatically." msgstr "" msgid "" -"This slot may not be used with :c:func:`PyType_GetSlot`. Use :c:func:" -"`PyType_GetFlags` instead." +"This slot may not be used with :c:func:`PyType_GetSlot`. " +"Use :c:func:`PyType_GetFlags` instead." msgstr "" msgid "" -":c:member:`Slot ID ` for type flags, used to set :c:member:" -"`PyTypeObject.tp_bases`." +":c:member:`Slot ID ` for type flags, used to " +"set :c:member:`PyTypeObject.tp_bases`." msgstr "" msgid "" "The slot can be set to a tuple of type objects which the newly created type " -"should inherit from, like the \"positional arguments\" of a Python :ref:" -"`class definition `." +"should inherit from, like the \"positional arguments\" of a " +"Python :ref:`class definition `." msgstr "" msgid "" @@ -776,9 +779,9 @@ msgstr "" msgid "" ":c:member:`Slot ID ` for the metaclass used to construct the " -"resulting type object. When omitted the metaclass is derived from bases (:c:" -"macro:`Py_tp_bases` or the *bases* argument of :c:func:" -"`PyType_FromMetaclass`)." +"resulting type object. When omitted the metaclass is derived from bases " +"(:c:macro:`Py_tp_bases` or the *bases* argument " +"of :c:func:`PyType_FromMetaclass`)." msgstr "" msgid "" @@ -787,13 +790,14 @@ msgid "" msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use :c:func:" -"`PyType_FromMetaclass` to specify a metaclass with :c:type:`!PyType_Spec`." +"This may not be used in :c:member:`PyType_Spec.slots`. " +"Use :c:func:`PyType_FromMetaclass` to specify a metaclass with :c:type:`!" +"PyType_Spec`." msgstr "" msgid "" -"This slot may not be used with :c:func:`PyType_GetSlot`. Use :c:func:" -"`Py_TYPE` on the type object instead." +"This slot may not be used with :c:func:`PyType_GetSlot`. " +"Use :c:func:`Py_TYPE` on the type object instead." msgstr "" msgid "" @@ -809,13 +813,14 @@ msgid "" msgstr "" msgid "" -"This may not be used in :c:member:`PyType_Spec.slots`. Use :c:func:" -"`PyType_FromMetaclass` to specify a module with :c:type:`!PyType_Spec`." +"This may not be used in :c:member:`PyType_Spec.slots`. " +"Use :c:func:`PyType_FromMetaclass` to specify a module with :c:type:`!" +"PyType_Spec`." msgstr "" msgid "" -"This slot may not be used with :c:func:`PyType_GetSlot`. Use :c:func:" -"`PyType_GetModule` instead." +"This slot may not be used with :c:func:`PyType_GetSlot`. " +"Use :c:func:`PyType_GetModule` instead." msgstr "" msgid "" @@ -853,23 +858,23 @@ msgid "" msgstr "" msgid "" -"To get the token for a given class (without considering superclasses), use :" -"c:func:`PyType_GetSlot` with ``Py_tp_token``." +"To get the token for a given class (without considering superclasses), " +"use :c:func:`PyType_GetSlot` with ``Py_tp_token``." msgstr "" msgid "" -"Used as a value with :c:data:`Py_tp_token` to set the token to the class's :" -"c:type:`PyType_Spec`. May only be used for classes defined using :c:type:`!" -"PyType_Spec`." +"Used as a value with :c:data:`Py_tp_token` to set the token to the " +"class's :c:type:`PyType_Spec`. May only be used for classes defined " +"using :c:type:`!PyType_Spec`." msgstr "" msgid "Expands to ``NULL``." msgstr "" msgid "" -":c:member:`Slot ID ` that works like :c:macro:" -"`Py_slot_subslots`, except it specifies an array of :c:type:`PyType_Slot` " -"structures." +":c:member:`Slot ID ` that works " +"like :c:macro:`Py_slot_subslots`, except it specifies an array " +"of :c:type:`PyType_Slot` structures." msgstr "" msgid "Soft-deprecated API" @@ -877,24 +882,25 @@ msgstr "" msgid "" "The following functions are :term:`soft deprecated`. They will continue to " -"work, but new features will be added as slots for :c:func:" -"`PyType_FromSlots`, not as arguments to new ``PyType_From*`` functions." +"work, but new features will be added as slots " +"for :c:func:`PyType_FromSlots`, not as arguments to new ``PyType_From*`` " +"functions." msgstr "" msgid "" -"Create and return a :ref:`heap type ` from the *spec* (see :c:" -"macro:`Py_TPFLAGS_HEAPTYPE`)." +"Create and return a :ref:`heap type ` from the *spec* " +"(see :c:macro:`Py_TPFLAGS_HEAPTYPE`)." msgstr "" msgid "" -"A non-``NULL`` *metaclass* argument corresponds to the :c:macro:" -"`Py_tp_metaclass` slot." +"A non-``NULL`` *metaclass* argument corresponds to " +"the :c:macro:`Py_tp_metaclass` slot." msgstr "" msgid "" "A non-``NULL`` *bases* argument corresponds to the :c:data:`Py_tp_bases` " -"slot, and takes precedence over :c:data:`Py_tp_bases` and :c:data:" -"`Py_tp_bases` slots." +"slot, and takes precedence over :c:data:`Py_tp_bases` " +"and :c:data:`Py_tp_bases` slots." msgstr "" msgid "" @@ -903,9 +909,9 @@ msgid "" msgstr "" msgid "" -"Note that this function does *not* fully match the behavior of calling :py:" -"class:`type() ` or using the :keyword:`class` statement. See the note " -"in :c:func:`PyType_FromSlots` documentation for details." +"Note that this function does *not* fully match the behavior of " +"calling :py:class:`type() ` or using the :keyword:`class` statement. " +"See the note in :c:func:`PyType_FromSlots` documentation for details." msgstr "" msgid "Prefer :c:func:`PyType_FromSlots` in new code." @@ -953,9 +959,9 @@ msgid "" msgstr "" msgid "" -"This structure contains several members that can instead be specified as :" -"ref:`slots ` for :c:func:`PyType_FromSlots`, and an " -"array of slot entries with a simpler structure." +"This structure contains several members that can instead be specified " +"as :ref:`slots ` for :c:func:`PyType_FromSlots`, and " +"an array of slot entries with a simpler structure." msgstr "" msgid "Corresponds to :c:macro:`Py_tp_name`." @@ -993,8 +999,8 @@ msgstr "" msgid "" "Note that a :c:type:`!PyType_Slot` array may be included in a :c:type:`!" -"PySlot` array using :c:macro:`Py_tp_slots`, and vice versa using :c:macro:" -"`Py_slot_subslots`." +"PySlot` array using :c:macro:`Py_tp_slots`, and vice versa " +"using :c:macro:`Py_slot_subslots`." msgstr "" msgid "" @@ -1023,7 +1029,7 @@ msgid "Corresponds to :c:member:`PySlot.sl_ptr`." msgstr "" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "type" -msgstr "" +msgstr "ਕਿਸਮ" diff --git a/c-api/typehints.po b/c-api/typehints.po index 83824d5..4cd35eb 100644 --- a/c-api/typehints.po +++ b/c-api/typehints.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,30 +23,44 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Objects for Type Hinting" -msgstr "" +msgstr "ਕਿਸਮ ਸੰਕੇਤਾਂ ਲਈ ਆਬਜੈਕਟ" msgid "" "Various built-in types for type hinting are provided. Currently, two types " "exist -- :ref:`GenericAlias ` and :ref:`Union `. Only ``GenericAlias`` is exposed to C." msgstr "" +"ਕਿਸਮ ਸੰਕੇਤਾਂ ਲਈ ਕਈ ਬਿਲਟ-ਇਨ ਕਿਸਮਾਂ ਉਪਲਬਧ ਹਨ। ਇਸ ਵੇਲੇ ਦੋ ਕਿਸਮਾਂ ਮੌਜੂਦ ਹਨ " +"— :ref:`GenericAlias ` ਅਤੇ :ref:`Union `। " +"ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਿਰਫ਼ ``GenericAlias`` ਹੀ C ਲਈ ਉਪਲਬਧ ਹੈ।" msgid "" "Create a :ref:`GenericAlias ` object. Equivalent to " "calling the Python class :class:`types.GenericAlias`. The *origin* and " "*args* arguments set the ``GenericAlias``\\ 's ``__origin__`` and " -"``__args__`` attributes respectively. *origin* should be a :c:expr:" -"`PyTypeObject*`, and *args* can be a :c:expr:`PyTupleObject*` or any " -"``PyObject*``. If *args* passed is not a tuple, a 1-tuple is automatically " -"constructed and ``__args__`` is set to ``(args,)``. Minimal checking is done " -"for the arguments, so the function will succeed even if *origin* is not a " -"type. The ``GenericAlias``\\ 's ``__parameters__`` attribute is constructed " -"lazily from ``__args__``. On failure, an exception is raised and ``NULL`` " -"is returned." +"``__args__`` attributes respectively. *origin* should be " +"a :c:expr:`PyTypeObject*`, and *args* can be a :c:expr:`PyTupleObject*` or " +"any ``PyObject*``. If *args* passed is not a tuple, a 1-tuple is " +"automatically constructed and ``__args__`` is set to ``(args,)``. Minimal " +"checking is done for the arguments, so the function will succeed even if " +"*origin* is not a type. The ``GenericAlias``\\ 's ``__parameters__`` " +"attribute is constructed lazily from ``__args__``. On failure, an exception " +"is raised and ``NULL`` is returned." msgstr "" +"ਇੱਕ :ref:`GenericAlias ` ਆਬਜੈਕਟ ਬਣਾਓ। ਇਹ Python " +"ਕਲਾਸ :class:`types.GenericAlias` ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ। *origin* ਅਤੇ *args* " +"ਆਰਗੂਮੈਂਟਸ ਕ੍ਰਮਵਾਰ ``GenericAlias`` ਦੇ ``__origin__`` ਅਤੇ ``__args__`` ਗੁਣਾਂ ਨੂੰ ਸੈੱਟ ਕਰਦੇ " +"ਹਨ। *origin* ਇੱਕ :c:expr:`PyTypeObject*` ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ *args* " +"ਇੱਕ :c:expr:`PyTupleObject*` ਜਾਂ ਕੋਈ ਵੀ ``PyObject*`` ਹੋ ਸਕਦਾ ਹੈ। ਜੇ *args* ਜੋ " +"ਦਿੱਤਾ ਗਿਆ ਹੈ ਟਿਊਪਲ ਨਹੀਂ ਹੈ, ਤਾਂ ਇੱਕ 1-ਟਿਊਪਲ ਆਪਣੇ ਆਪ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ``__args__`` ਨੂੰ " +"``(args,)``'ਤੇ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਆਰਗੂਮੈਂਟਾਂ ਲਈ ਸਿਰਫ ਘੱਟੋ-ਘੱਟ ਜਾਂਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਇਸ ਲਈ " +"ਫੰਕਸ਼ਨ ਸਫਲ ਰਹੇਗਾ ਭਾਵੇਂ *origin* ਕਿਸੇ ਟਾਈਪ ਦਾ ਨਾ ਹੋਵੇ। ``GenericAlias``\\'s " +"``__parameters__`` ਐਟ੍ਰਿਬਿਊਟ ``__args__`` ਤੋਂ ਲੇਜ਼ੀ ਤਰੀਕੇ ਨਾਲ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਅਸਫਲਤਾ " +"'ਤੇ, ਇੱਕ ਐਕਸੈਪਸ਼ਨ ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ``NULL`` ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "Here's an example of how to make an extension type generic::" msgstr "" +"ਇੱਥੇ ਇੱਕ ਉਦਾਹਰਨ ਦਿੱਤੀ ਗਈ ਹੈ ਕਿ ਕਿਸ ਤਰ੍ਹਾਂ ਇੱਕ ਐਕਸਟੈਂਸ਼ਨ ਕਿਸਮ ਨੂੰ generic ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "...\n" @@ -58,11 +72,21 @@ msgid "" " ...\n" "}" msgstr "" +"...\n" +"static PyMethodDef my_obj_methods[] = {\n" +"// Other methods.\n" +"...\n" +"{\"__class_getitem__\", Py_GenericAlias, METH_O|METH_CLASS, \"my_obj is " +"generic over its contained type\"}\n" +"...\n" +"}" msgid "The data model method :meth:`~object.__class_getitem__`." -msgstr "" +msgstr "ਡਾਟਾ ਮਾਡਲ ਵਿਧੀ :meth:`~object.__class_getitem__`।" msgid "" "The C type of the object returned by :c:func:`Py_GenericAlias`. Equivalent " "to :class:`types.GenericAlias` in Python." msgstr "" +":c:func:`Py_GenericAlias` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ ਆਬਜੈਕਟ ਦੀ C ਕਿਸਮ। ਇਹ Python " +"ਵਿੱਚ :class:`types.GenericAlias` ਦੇ ਬਰਾਬਰ ਹੈ।" diff --git a/c-api/typeobj.po b/c-api/typeobj.po index c328b17..498070f 100644 --- a/c-api/typeobj.po +++ b/c-api/typeobj.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,8 +46,8 @@ msgstr "" msgid "" "In addition to the following quick reference, the :ref:`typedef-examples` " -"section provides at-a-glance insight into the meaning and use of :c:type:" -"`PyTypeObject`." +"section provides at-a-glance insight into the meaning and use " +"of :c:type:`PyTypeObject`." msgstr "" msgid "Quick Reference" @@ -827,7 +827,7 @@ msgid ":c:type:`visitproc`" msgstr "" msgid "int" -msgstr "" +msgstr "int" msgid "Py_hash_t" msgstr "" @@ -848,9 +848,9 @@ msgid "PyTypeObject Definition" msgstr "" msgid "" -"The structure definition for :c:type:`PyTypeObject` can be found in :file:" -"`Include/cpython/object.h`. For convenience of reference, this repeats the " -"definition found there:" +"The structure definition for :c:type:`PyTypeObject` can be found " +"in :file:`Include/cpython/object.h`. For convenience of reference, this " +"repeats the definition found there:" msgstr "" msgid "" @@ -955,11 +955,12 @@ msgid "PyObject Slots" msgstr "" msgid "" -"The type object structure extends the :c:type:`PyVarObject` structure. The :" -"c:member:`~PyVarObject.ob_size` field is used for dynamic types (created by :" -"c:func:`!type_new`, usually called from a class statement). Note that :c:" -"data:`PyType_Type` (the metatype) initializes :c:member:`~PyTypeObject." -"tp_itemsize`, which means that its instances (i.e. type objects) *must* have " +"The type object structure extends the :c:type:`PyVarObject` structure. " +"The :c:member:`~PyVarObject.ob_size` field is used for dynamic types " +"(created by :c:func:`!type_new`, usually called from a class statement). " +"Note that :c:data:`PyType_Type` (the metatype) " +"initializes :c:member:`~PyTypeObject.tp_itemsize`, which means that its " +"instances (i.e. type objects) *must* have " "the :c:member:`~PyVarObject.ob_size` field." msgstr "" @@ -969,10 +970,10 @@ msgstr "" msgid "" "The type object's reference count is initialized to ``1`` by the " "``PyObject_HEAD_INIT`` macro. Note that for :ref:`statically allocated type " -"objects `, the type's instances (objects whose :c:member:" -"`~PyObject.ob_type` points back to the type) do *not* count as references. " -"But for :ref:`dynamically allocated type objects `, the " -"instances *do* count as references." +"objects `, the type's instances (objects " +"whose :c:member:`~PyObject.ob_type` points back to the type) do *not* count " +"as references. But for :ref:`dynamically allocated type objects `, the instances *do* count as references." msgstr "" msgid "**Inheritance:**" @@ -999,10 +1000,11 @@ msgid "Foo_Type.ob_type = &PyType_Type;" msgstr "" msgid "" -"This should be done before any instances of the type are created. :c:func:" -"`PyType_Ready` checks if :c:member:`~PyObject.ob_type` is ``NULL``, and if " -"so, initializes it to the :c:member:`~PyObject.ob_type` field of the base " -"class. :c:func:`PyType_Ready` will not change this field if it is non-zero." +"This should be done before any instances of the type are " +"created. :c:func:`PyType_Ready` checks if :c:member:`~PyObject.ob_type` is " +"``NULL``, and if so, initializes it to the :c:member:`~PyObject.ob_type` " +"field of the base class. :c:func:`PyType_Ready` will not change this field " +"if it is non-zero." msgstr "" msgid "This field is inherited by subtypes." @@ -1029,13 +1031,14 @@ msgstr "" msgid "" "Each slot has a section describing inheritance. If :c:func:`PyType_Ready` " "may set a value when the field is set to ``NULL`` then there will also be a " -"\"Default\" section. (Note that many fields set on :c:data:" -"`PyBaseObject_Type` and :c:data:`PyType_Type` effectively act as defaults.)" +"\"Default\" section. (Note that many fields set " +"on :c:data:`PyBaseObject_Type` and :c:data:`PyType_Type` effectively act as " +"defaults.)" msgstr "" msgid "" -"See :c:macro:`Py_tp_name` for the corresponding :c:member:`Slot ID `." +"See :c:macro:`Py_tp_name` for the corresponding :c:member:`Slot ID " +"`." msgstr "" msgid "" @@ -1044,9 +1047,9 @@ msgid "" "module name, followed by a dot, followed by the type name; for built-in " "types, it should be just the type name. If the module is a submodule of a " "package, the full package name is part of the full module name. For " -"example, a type named :class:`!T` defined in module :mod:`!M` in subpackage :" -"mod:`!Q` in package :mod:`!P` should have the :c:member:`~PyTypeObject." -"tp_name` initializer ``\"P.Q.M.T\"``." +"example, a type named :class:`!T` defined in module :mod:`!M` in " +"subpackage :mod:`!Q` in package :mod:`!P` should have " +"the :c:member:`~PyTypeObject.tp_name` initializer ``\"P.Q.M.T\"``." msgstr "" msgid "" @@ -1064,17 +1067,17 @@ msgstr "" msgid "" "If no dot is present, the entire :c:member:`~PyTypeObject.tp_name` field is " -"made accessible as the :attr:`~type.__name__` attribute, and the :attr:" -"`~type.__module__` attribute is undefined (unless explicitly set in the " -"dictionary, as explained above). This means your type will be impossible to " -"pickle. Additionally, it will not be listed in module documentations " -"created with pydoc." +"made accessible as the :attr:`~type.__name__` attribute, and " +"the :attr:`~type.__module__` attribute is undefined (unless explicitly set " +"in the dictionary, as explained above). This means your type will be " +"impossible to pickle. Additionally, it will not be listed in module " +"documentations created with pydoc." msgstr "" msgid "" -"This field must not be ``NULL``. It is the only required field in :c:func:" -"`PyTypeObject` (other than potentially :c:member:`~PyTypeObject." -"tp_itemsize`)." +"This field must not be ``NULL``. It is the only required field " +"in :c:func:`PyTypeObject` (other than " +"potentially :c:member:`~PyTypeObject.tp_itemsize`)." msgstr "" msgid "" @@ -1082,25 +1085,25 @@ msgid "" msgstr "" msgid "" -"See :c:macro:`Py_tp_basicsize`, :c:macro:`Py_tp_extra_basicsize` and :c:" -"macro:`Py_tp_itemsize` for the corresponding :c:member:`Slot IDs `." +"See :c:macro:`Py_tp_basicsize`, :c:macro:`Py_tp_extra_basicsize` " +"and :c:macro:`Py_tp_itemsize` for the corresponding :c:member:`Slot IDs " +"`." msgstr "" msgid "" -"There are two kinds of types: types with fixed-length instances have a zero :" -"c:member:`!tp_itemsize` field, types with variable-length instances have a " -"non-zero :c:member:`!tp_itemsize` field. For a type with fixed-length " -"instances, all instances have the same size, given in :c:member:`!" -"tp_basicsize`. (Exceptions to this rule can be made using :c:func:" -"`PyUnstable_Object_GC_NewWithExtraData`.)" +"There are two kinds of types: types with fixed-length instances have a " +"zero :c:member:`!tp_itemsize` field, types with variable-length instances " +"have a non-zero :c:member:`!tp_itemsize` field. For a type with fixed-" +"length instances, all instances have the same size, given in :c:member:`!" +"tp_basicsize`. (Exceptions to this rule can be made " +"using :c:func:`PyUnstable_Object_GC_NewWithExtraData`.)" msgstr "" msgid "" -"For a type with variable-length instances, the instances must have an :c:" -"member:`~PyVarObject.ob_size` field, and the instance size is :c:member:`!" -"tp_basicsize` plus N times :c:member:`!tp_itemsize`, where N is the " -"\"length\" of the object." +"For a type with variable-length instances, the instances must have " +"an :c:member:`~PyVarObject.ob_size` field, and the instance size " +"is :c:member:`!tp_basicsize` plus N times :c:member:`!tp_itemsize`, where N " +"is the \"length\" of the object." msgstr "" msgid "" @@ -1109,43 +1112,44 @@ msgid "" "field. Note that the :c:member:`~PyVarObject.ob_size` field may later be " "used for other purposes. For example, :py:type:`int` instances use the bits " "of :c:member:`~PyVarObject.ob_size` in an implementation-defined way; the " -"underlying storage and its size should be accessed using :c:func:" -"`PyLong_Export`." +"underlying storage and its size should be accessed " +"using :c:func:`PyLong_Export`." msgstr "" msgid "" -"The :c:member:`~PyVarObject.ob_size` field should be accessed using the :c:" -"func:`Py_SIZE()` and :c:func:`Py_SET_SIZE()` macros." +"The :c:member:`~PyVarObject.ob_size` field should be accessed using " +"the :c:func:`Py_SIZE()` and :c:func:`Py_SET_SIZE()` macros." msgstr "" msgid "" "Also, the presence of an :c:member:`~PyVarObject.ob_size` field in the " "instance layout doesn't mean that the instance structure is variable-length. " "For example, the :py:type:`list` type has fixed-length instances, yet those " -"instances have a :c:member:`~PyVarObject.ob_size` field. (As with :py:type:" -"`int`, avoid reading lists' :c:member:`!ob_size` directly. Call :c:func:" -"`PyList_Size` instead.)" +"instances have a :c:member:`~PyVarObject.ob_size` field. (As " +"with :py:type:`int`, avoid reading lists' :c:member:`!ob_size` directly. " +"Call :c:func:`PyList_Size` instead.)" msgstr "" msgid "" -"The :c:member:`!tp_basicsize` includes size needed for data of the type's :c:" -"member:`~PyTypeObject.tp_base`, plus any extra data needed by each instance." +"The :c:member:`!tp_basicsize` includes size needed for data of the " +"type's :c:member:`~PyTypeObject.tp_base`, plus any extra data needed by each " +"instance." msgstr "" msgid "" "The correct way to set :c:member:`!tp_basicsize` is to use the ``sizeof`` " "operator on the struct used to declare the instance layout. This struct must " -"include the struct used to declare the base type. In other words, :c:member:" -"`!tp_basicsize` must be greater than or equal to the base's :c:member:`!" -"tp_basicsize`." +"include the struct used to declare the base type. In other " +"words, :c:member:`!tp_basicsize` must be greater than or equal to the " +"base's :c:member:`!tp_basicsize`." msgstr "" msgid "" "Since every type is a subtype of :py:type:`object`, this struct must " -"include :c:type:`PyObject` or :c:type:`PyVarObject` (depending on whether :c:" -"member:`~PyVarObject.ob_size` should be included). These are usually defined " -"by the macro :c:macro:`PyObject_HEAD` or :c:macro:`PyObject_VAR_HEAD`, " -"respectively." +"include :c:type:`PyObject` or :c:type:`PyVarObject` (depending on " +"whether :c:member:`~PyVarObject.ob_size` should be included). These are " +"usually defined by the macro :c:macro:`PyObject_HEAD` " +"or :c:macro:`PyObject_VAR_HEAD`, respectively." msgstr "" msgid "" @@ -1154,8 +1158,8 @@ msgid "" msgstr "" msgid "" -"For cases where struct used to declare the base type is unknown, see :c:" -"member:`PyType_Spec.basicsize` and :c:func:`PyType_FromMetaclass`." +"For cases where struct used to declare the base type is unknown, " +"see :c:member:`PyType_Spec.basicsize` and :c:func:`PyType_FromMetaclass`." msgstr "" msgid "Notes about alignment:" @@ -1204,10 +1208,11 @@ msgid "" msgstr "" msgid "" -"If you may call functions that may set the error indicator, you must use :c:" -"func:`PyErr_GetRaisedException` and :c:func:`PyErr_SetRaisedException` to " -"ensure you don't clobber a preexisting error indicator (the deallocation " -"could have occurred while processing a different error):" +"If you may call functions that may set the error indicator, you must " +"use :c:func:`PyErr_GetRaisedException` " +"and :c:func:`PyErr_SetRaisedException` to ensure you don't clobber a " +"preexisting error indicator (the deallocation could have occurred while " +"processing a different error):" msgstr "" msgid "" @@ -1232,14 +1237,14 @@ msgstr "" msgid "" "Python will destroy an object immediately or some time after the final " -"reference to the object is deleted, unless its finalizer (:c:member:" -"`~PyTypeObject.tp_finalize`) subsequently resurrects the object." +"reference to the object is deleted, unless its finalizer " +"(:c:member:`~PyTypeObject.tp_finalize`) subsequently resurrects the object." msgstr "" msgid "" -"An object will not be destroyed while it is being automatically finalized (:" -"c:member:`~PyTypeObject.tp_finalize`) or automatically cleared (:c:member:" -"`~PyTypeObject.tp_clear`)." +"An object will not be destroyed while it is being automatically finalized " +"(:c:member:`~PyTypeObject.tp_finalize`) or automatically cleared " +"(:c:member:`~PyTypeObject.tp_clear`)." msgstr "" msgid "" @@ -1261,17 +1266,17 @@ msgid "" msgstr "" msgid "" -"It is permissible to call :c:member:`~PyTypeObject.tp_clear` from :c:member:" -"`!tp_dealloc` to reduce code duplication and to guarantee that the object is " -"always cleared before destruction. Beware that :c:member:`!tp_clear` might " -"have already been called." +"It is permissible to call :c:member:`~PyTypeObject.tp_clear` " +"from :c:member:`!tp_dealloc` to reduce code duplication and to guarantee " +"that the object is always cleared before destruction. Beware " +"that :c:member:`!tp_clear` might have already been called." msgstr "" msgid "" "If the type is heap allocated (:c:macro:`Py_TPFLAGS_HEAPTYPE`), the " -"deallocator should release the owned reference to its type object (via :c:" -"func:`Py_DECREF`) after calling the type deallocator. See the example code " -"below.::" +"deallocator should release the owned reference to its type object " +"(via :c:func:`Py_DECREF`) after calling the type deallocator. See the " +"example code below.::" msgstr "" msgid "" @@ -1293,7 +1298,7 @@ msgid "" msgstr "" msgid "Example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ::" msgid "" "static void\n" @@ -1371,10 +1376,10 @@ msgid "" msgstr "" msgid "" -"Any class that sets ``Py_TPFLAGS_HAVE_VECTORCALL`` must also set :c:member:" -"`~PyTypeObject.tp_call` and make sure its behaviour is consistent with the " -"*vectorcallfunc* function. This can be done by setting *tp_call* to :c:func:" -"`PyVectorcall_Call`." +"Any class that sets ``Py_TPFLAGS_HAVE_VECTORCALL`` must also " +"set :c:member:`~PyTypeObject.tp_call` and make sure its behaviour is " +"consistent with the *vectorcallfunc* function. This can be done by setting " +"*tp_call* to :c:func:`PyVectorcall_Call`." msgstr "" msgid "" @@ -1384,18 +1389,18 @@ msgstr "" msgid "" "Before version 3.12, it was not recommended for :ref:`mutable heap types " -"` to implement the vectorcall protocol. When a user sets :attr:" -"`~object.__call__` in Python code, only *tp_call* is updated, likely making " -"it inconsistent with the vectorcall function. Since 3.12, setting " -"``__call__`` will disable vectorcall optimization by clearing the :c:macro:" -"`Py_TPFLAGS_HAVE_VECTORCALL` flag." +"` to implement the vectorcall protocol. When a user " +"sets :attr:`~object.__call__` in Python code, only *tp_call* is updated, " +"likely making it inconsistent with the vectorcall function. Since 3.12, " +"setting ``__call__`` will disable vectorcall optimization by clearing " +"the :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` flag." msgstr "" msgid "" -"This field is always inherited. However, the :c:macro:" -"`Py_TPFLAGS_HAVE_VECTORCALL` flag is not always inherited. If it's not set, " -"then the subclass won't use :ref:`vectorcall `, except when :c:" -"func:`PyVectorcall_Call` is explicitly called." +"This field is always inherited. However, " +"the :c:macro:`Py_TPFLAGS_HAVE_VECTORCALL` flag is not always inherited. If " +"it's not set, then the subclass won't use :ref:`vectorcall `, " +"except when :c:func:`PyVectorcall_Call` is explicitly called." msgstr "" msgid "An optional pointer to the get-attribute-string function." @@ -1408,17 +1413,16 @@ msgid "" "attribute name." msgstr "" -msgid "" -"Group: :c:member:`~PyTypeObject.tp_getattr`, :c:member:`~PyTypeObject." -"tp_getattro`" +msgid "Group: :c:member:`~PyTypeObject.tp_getattr`, :c:member:`~PyTypeObject.tp_getattro`" msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_getattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_getattro`: a subtype inherits " +"both :c:member:`~PyTypeObject.tp_getattr` " "and :c:member:`~PyTypeObject.tp_getattro` from its base type when the " -"subtype's :c:member:`~PyTypeObject.tp_getattr` and :c:member:`~PyTypeObject." -"tp_getattro` are both ``NULL``." +"subtype's :c:member:`~PyTypeObject.tp_getattr` " +"and :c:member:`~PyTypeObject.tp_getattro` are both ``NULL``." msgstr "" msgid "" @@ -1432,17 +1436,16 @@ msgid "" "attribute name." msgstr "" -msgid "" -"Group: :c:member:`~PyTypeObject.tp_setattr`, :c:member:`~PyTypeObject." -"tp_setattro`" +msgid "Group: :c:member:`~PyTypeObject.tp_setattr`, :c:member:`~PyTypeObject.tp_setattro`" msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_setattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_setattro`: a subtype inherits " +"both :c:member:`~PyTypeObject.tp_setattr` " "and :c:member:`~PyTypeObject.tp_setattro` from its base type when the " -"subtype's :c:member:`~PyTypeObject.tp_setattr` and :c:member:`~PyTypeObject." -"tp_setattro` are both ``NULL``." +"subtype's :c:member:`~PyTypeObject.tp_setattr` " +"and :c:member:`~PyTypeObject.tp_setattro` are both ``NULL``." msgstr "" msgid "" @@ -1460,8 +1463,8 @@ msgid "" msgstr "" msgid "" -"An optional pointer to a function that implements the built-in function :" -"func:`repr`." +"An optional pointer to a function that implements the built-in " +"function :func:`repr`." msgstr "" msgid "The signature is the same as for :c:func:`PyObject_Repr`::" @@ -1521,8 +1524,8 @@ msgid "" msgstr "" msgid "" -"An optional pointer to a function that implements the built-in function :" -"func:`hash`." +"An optional pointer to a function that implements the built-in " +"function :func:`hash`." msgstr "" msgid "The signature is the same as for :c:func:`PyObject_Hash`::" @@ -1539,9 +1542,9 @@ msgstr "" msgid "" "When this field is not set (*and* :c:member:`~PyTypeObject.tp_richcompare` " -"is not set), an attempt to take the hash of the object raises :exc:" -"`TypeError`. This is the same as setting it to :c:func:" -"`PyObject_HashNotImplemented`." +"is not set), an attempt to take the hash of the object " +"raises :exc:`TypeError`. This is the same as setting it " +"to :c:func:`PyObject_HashNotImplemented`." msgstr "" msgid "" @@ -1550,21 +1553,20 @@ msgid "" "as the equivalent of ``__hash__ = None`` at the Python level, causing " "``isinstance(o, collections.Hashable)`` to correctly return ``False``. Note " "that the converse is also true - setting ``__hash__ = None`` on a class at " -"the Python level will result in the ``tp_hash`` slot being set to :c:func:" -"`PyObject_HashNotImplemented`." +"the Python level will result in the ``tp_hash`` slot being set " +"to :c:func:`PyObject_HashNotImplemented`." msgstr "" -msgid "" -"Group: :c:member:`~PyTypeObject.tp_hash`, :c:member:`~PyTypeObject." -"tp_richcompare`" +msgid "Group: :c:member:`~PyTypeObject.tp_hash`, :c:member:`~PyTypeObject.tp_richcompare`" msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_richcompare`: a subtype inherits both of :c:member:`~PyTypeObject." -"tp_richcompare` and :c:member:`~PyTypeObject.tp_hash`, when the subtype's :c:" -"member:`~PyTypeObject.tp_richcompare` and :c:member:`~PyTypeObject.tp_hash` " -"are both ``NULL``." +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_richcompare`: a subtype inherits both " +"of :c:member:`~PyTypeObject.tp_richcompare` " +"and :c:member:`~PyTypeObject.tp_hash`, when the " +"subtype's :c:member:`~PyTypeObject.tp_richcompare` " +"and :c:member:`~PyTypeObject.tp_hash` are both ``NULL``." msgstr "" msgid ":c:data:`PyBaseObject_Type` uses :c:func:`PyObject_GenericHash`." @@ -1580,11 +1582,11 @@ msgid "PyObject *tp_call(PyObject *self, PyObject *args, PyObject *kwargs);" msgstr "" msgid "" -"An optional pointer to a function that implements the built-in operation :" -"func:`str`. (Note that :class:`str` is a type now, and :func:`str` calls " -"the constructor for that type. This constructor calls :c:func:" -"`PyObject_Str` to do the actual work, and :c:func:`PyObject_Str` will call " -"this handler.)" +"An optional pointer to a function that implements the built-in " +"operation :func:`str`. (Note that :class:`str` is a type now, " +"and :func:`str` calls the constructor for that type. This constructor " +"calls :c:func:`PyObject_Str` to do the actual work, " +"and :c:func:`PyObject_Str` will call this handler.)" msgstr "" msgid "The signature is the same as for :c:func:`PyObject_Str`::" @@ -1615,17 +1617,18 @@ msgid "PyObject *tp_getattro(PyObject *self, PyObject *attr);" msgstr "" msgid "" -"It is usually convenient to set this field to :c:func:" -"`PyObject_GenericGetAttr`, which implements the normal way of looking for " -"object attributes." +"It is usually convenient to set this field " +"to :c:func:`PyObject_GenericGetAttr`, which implements the normal way of " +"looking for object attributes." msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_getattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_getattr`: a subtype inherits " +"both :c:member:`~PyTypeObject.tp_getattr` " "and :c:member:`~PyTypeObject.tp_getattro` from its base type when the " -"subtype's :c:member:`~PyTypeObject.tp_getattr` and :c:member:`~PyTypeObject." -"tp_getattro` are both ``NULL``." +"subtype's :c:member:`~PyTypeObject.tp_getattr` " +"and :c:member:`~PyTypeObject.tp_getattro` are both ``NULL``." msgstr "" msgid ":c:data:`PyBaseObject_Type` uses :c:func:`PyObject_GenericGetAttr`." @@ -1639,17 +1642,18 @@ msgstr "" msgid "" "In addition, setting *value* to ``NULL`` to delete an attribute must be " -"supported. It is usually convenient to set this field to :c:func:" -"`PyObject_GenericSetAttr`, which implements the normal way of setting object " -"attributes." +"supported. It is usually convenient to set this field " +"to :c:func:`PyObject_GenericSetAttr`, which implements the normal way of " +"setting object attributes." msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_setattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_setattr`: a subtype inherits " +"both :c:member:`~PyTypeObject.tp_setattr` " "and :c:member:`~PyTypeObject.tp_setattro` from its base type when the " -"subtype's :c:member:`~PyTypeObject.tp_setattr` and :c:member:`~PyTypeObject." -"tp_setattro` are both ``NULL``." +"subtype's :c:member:`~PyTypeObject.tp_setattr` " +"and :c:member:`~PyTypeObject.tp_setattro` are both ``NULL``." msgstr "" msgid ":c:data:`PyBaseObject_Type` uses :c:func:`PyObject_GenericSetAttr`." @@ -1667,19 +1671,19 @@ msgid "" msgstr "" msgid "" -"See :c:macro:`Py_tp_flags` for the corresponding :c:member:`Slot ID `." +"See :c:macro:`Py_tp_flags` for the corresponding :c:member:`Slot ID " +"`." msgstr "" msgid "" "This field is a bit mask of various flags. Some flags indicate variant " "semantics for certain situations; others are used to indicate that certain " -"fields in the type object (or in the extension structures referenced via :c:" -"member:`~PyTypeObject.tp_as_number`, :c:member:`~PyTypeObject." -"tp_as_sequence`, :c:member:`~PyTypeObject.tp_as_mapping`, and :c:member:" -"`~PyTypeObject.tp_as_buffer`) that were historically not always present are " -"valid; if such a flag bit is clear, the type fields it guards must not be " -"accessed and must be considered to have a zero or ``NULL`` value instead." +"fields in the type object (or in the extension structures referenced " +"via :c:member:`~PyTypeObject.tp_as_number`, :c:member:`~PyTypeObject.tp_as_sequence`, :c:member:`~PyTypeObject.tp_as_mapping`, " +"and :c:member:`~PyTypeObject.tp_as_buffer`) that were historically not " +"always present are valid; if such a flag bit is clear, the type fields it " +"guards must not be accessed and must be considered to have a zero or " +"``NULL`` value instead." msgstr "" msgid "" @@ -1690,10 +1694,11 @@ msgid "" "type's value of the flag bit is copied into the subtype together with a " "pointer to the extension structure. The :c:macro:`Py_TPFLAGS_HAVE_GC` flag " "bit is inherited together with the :c:member:`~PyTypeObject.tp_traverse` " -"and :c:member:`~PyTypeObject.tp_clear` fields, i.e. if the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag bit is clear in the subtype and the :c:member:" -"`~PyTypeObject.tp_traverse` and :c:member:`~PyTypeObject.tp_clear` fields in " -"the subtype exist and have ``NULL`` values." +"and :c:member:`~PyTypeObject.tp_clear` fields, i.e. if " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is clear in the subtype and " +"the :c:member:`~PyTypeObject.tp_traverse` " +"and :c:member:`~PyTypeObject.tp_clear` fields in the subtype exist and have " +"``NULL`` values." msgstr "" msgid "" @@ -1706,10 +1711,10 @@ msgstr "" msgid "" "The following bit masks are currently defined; these can be ORed together " -"using the ``|`` operator to form the value of the :c:member:`~PyTypeObject." -"tp_flags` field. The macro :c:func:`PyType_HasFeature` takes a type and a " -"flags value, *tp* and *f*, and checks whether ``tp->tp_flags & f`` is non-" -"zero." +"using the ``|`` operator to form the value of " +"the :c:member:`~PyTypeObject.tp_flags` field. The " +"macro :c:func:`PyType_HasFeature` takes a type and a flags value, *tp* and " +"*f*, and checks whether ``tp->tp_flags & f`` is non-zero." msgstr "" msgid "" @@ -1719,9 +1724,9 @@ msgid "" "a reference to the type, and the type object is INCREF'ed when a new " "instance is created, and DECREF'ed when an instance is destroyed (this does " "not apply to instances of subtypes; only the type referenced by the " -"instance's ob_type gets INCREF'ed or DECREF'ed). Heap types should also :ref:" -"`support garbage collection ` as they can form a " -"reference cycle with their own module object." +"instance's ob_type gets INCREF'ed or DECREF'ed). Heap types should " +"also :ref:`support garbage collection ` as they " +"can form a reference cycle with their own module object." msgstr "" msgid "???" @@ -1734,8 +1739,8 @@ msgid "" msgstr "" msgid "" -"This bit is set when the type object has been fully initialized by :c:func:" -"`PyType_Ready`." +"This bit is set when the type object has been fully initialized " +"by :c:func:`PyType_Ready`." msgstr "" msgid "" @@ -1746,24 +1751,23 @@ msgstr "" msgid "" "This bit is set when the object supports garbage collection. If this bit is " "set, memory for new instances (see :c:member:`~PyTypeObject.tp_alloc`) must " -"be allocated using :c:macro:`PyObject_GC_New` or :c:func:" -"`PyType_GenericAlloc` and deallocated (see :c:member:`~PyTypeObject." -"tp_free`) using :c:func:`PyObject_GC_Del`. More information in section :ref:" -"`supporting-cycle-detection`." +"be allocated using :c:macro:`PyObject_GC_New` " +"or :c:func:`PyType_GenericAlloc` and deallocated " +"(see :c:member:`~PyTypeObject.tp_free`) using :c:func:`PyObject_GC_Del`. " +"More information in section :ref:`supporting-cycle-detection`." msgstr "" -msgid "" -"Group: :c:macro:`Py_TPFLAGS_HAVE_GC`, :c:member:`~PyTypeObject." -"tp_traverse`, :c:member:`~PyTypeObject.tp_clear`" +msgid "Group: :c:macro:`Py_TPFLAGS_HAVE_GC`, :c:member:`~PyTypeObject.tp_traverse`, :c:member:`~PyTypeObject.tp_clear`" msgstr "" msgid "" -"The :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is inherited together with the :c:" -"member:`~PyTypeObject.tp_traverse` and :c:member:`~PyTypeObject.tp_clear` " -"fields, i.e. if the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is clear in the " -"subtype and the :c:member:`~PyTypeObject.tp_traverse` and :c:member:" -"`~PyTypeObject.tp_clear` fields in the subtype exist and have ``NULL`` " -"values." +"The :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is inherited together with " +"the :c:member:`~PyTypeObject.tp_traverse` " +"and :c:member:`~PyTypeObject.tp_clear` fields, i.e. if " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit is clear in the subtype and " +"the :c:member:`~PyTypeObject.tp_traverse` " +"and :c:member:`~PyTypeObject.tp_clear` fields in the subtype exist and have " +"``NULL`` values." msgstr "" msgid "" @@ -1789,21 +1793,21 @@ msgid "" msgstr "" msgid "" -"This flag enables an optimization for typical method calls like ``obj." -"meth()``: it avoids creating a temporary \"bound method\" object for ``obj." -"meth``." +"This flag enables an optimization for typical method calls like " +"``obj.meth()``: it avoids creating a temporary \"bound method\" object for " +"``obj.meth``." msgstr "" msgid "" -"This flag is never inherited by types without the :c:macro:" -"`Py_TPFLAGS_IMMUTABLETYPE` flag set. For extension types, it is inherited " -"whenever :c:member:`~PyTypeObject.tp_descr_get` is inherited." +"This flag is never inherited by types without " +"the :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` flag set. For extension types, it " +"is inherited whenever :c:member:`~PyTypeObject.tp_descr_get` is inherited." msgstr "" msgid "" -"This bit indicates that instances of the class have a :attr:`~object." -"__dict__` attribute, and that the space for the dictionary is managed by the " -"VM." +"This bit indicates that instances of the class have " +"a :attr:`~object.__dict__` attribute, and that the space for the dictionary " +"is managed by the VM." msgstr "" msgid "If this flag is set, :c:macro:`Py_TPFLAGS_HAVE_GC` must also be set." @@ -1825,14 +1829,14 @@ msgid "" msgstr "" msgid "" -"This flag is inherited unless the :c:member:`~PyTypeObject." -"tp_weaklistoffset` field is set in a superclass." +"This flag is inherited unless " +"the :c:member:`~PyTypeObject.tp_weaklistoffset` field is set in a superclass." msgstr "" msgid "" "These bits indicate that the VM will manage some fields by storing them " -"before the object. Currently, this macro is equivalent to :c:expr:" -"`Py_TPFLAGS_MANAGED_DICT | Py_TPFLAGS_MANAGED_WEAKREF`." +"before the object. Currently, this macro is equivalent " +"to :c:expr:`Py_TPFLAGS_MANAGED_DICT | Py_TPFLAGS_MANAGED_WEAKREF`." msgstr "" msgid "" @@ -1842,8 +1846,8 @@ msgid "" msgstr "" msgid "" -"Only usable with variable-size types, i.e. ones with non-zero :c:member:" -"`~PyTypeObject.tp_itemsize`." +"Only usable with variable-size types, i.e. ones with non-" +"zero :c:member:`~PyTypeObject.tp_itemsize`." msgstr "" msgid "" @@ -1861,13 +1865,14 @@ msgid "This flag is inherited." msgstr "" msgid "" -"Functions such as :c:func:`PyLong_Check` will call :c:func:" -"`PyType_FastSubclass` with one of these flags to quickly determine if a type " -"is a subclass of a built-in type; such specific checks are faster than a " -"generic check, like :c:func:`PyObject_IsInstance`. Custom types that inherit " -"from built-ins should have their :c:member:`~PyTypeObject.tp_flags` set " -"appropriately, or the code that interacts with such types will behave " -"differently depending on what kind of check is used." +"Functions such as :c:func:`PyLong_Check` will " +"call :c:func:`PyType_FastSubclass` with one of these flags to quickly " +"determine if a type is a subclass of a built-in type; such specific checks " +"are faster than a generic check, like :c:func:`PyObject_IsInstance`. Custom " +"types that inherit from built-ins should have " +"their :c:member:`~PyTypeObject.tp_flags` set appropriately, or the code that " +"interacts with such types will behave differently depending on what kind of " +"check is used." msgstr "" msgid "" @@ -1876,8 +1881,9 @@ msgid "" msgstr "" msgid "" -"This flag isn't necessary anymore, as the interpreter assumes the :c:member:" -"`~PyTypeObject.tp_finalize` slot is always present in the type structure." +"This flag isn't necessary anymore, as the interpreter assumes " +"the :c:member:`~PyTypeObject.tp_finalize` slot is always present in the type " +"structure." msgstr "" msgid "" @@ -1899,8 +1905,8 @@ msgid "" msgstr "" msgid "" -"This flag is now removed from a class when the class's :py:meth:`~object." -"__call__` method is reassigned." +"This flag is now removed from a class when the " +"class's :py:meth:`~object.__call__` method is reassigned." msgstr "" msgid "This flag can now be inherited by mutable classes." @@ -1920,8 +1926,9 @@ msgid "This flag is not inherited." msgstr "" msgid "" -"Disallow creating instances of the type: set :c:member:`~PyTypeObject." -"tp_new` to NULL and don't create the ``__new__`` key in the type dictionary." +"Disallow creating instances of the type: " +"set :c:member:`~PyTypeObject.tp_new` to NULL and don't create the " +"``__new__`` key in the type dictionary." msgstr "" msgid "" @@ -1930,9 +1937,9 @@ msgid "" msgstr "" msgid "" -"The flag is set automatically on :ref:`static types ` if :c:" -"member:`~PyTypeObject.tp_base` is NULL or ``&PyBaseObject_Type`` and :c:" -"member:`~PyTypeObject.tp_new` is NULL." +"The flag is set automatically on :ref:`static types ` " +"if :c:member:`~PyTypeObject.tp_base` is NULL or ``&PyBaseObject_Type`` " +"and :c:member:`~PyTypeObject.tp_new` is NULL." msgstr "" msgid "" @@ -1960,8 +1967,8 @@ msgid "" msgstr "" msgid "" -"This flag is inherited by types that do not already set :c:macro:" -"`Py_TPFLAGS_SEQUENCE`." +"This flag is inherited by types that do not already " +"set :c:macro:`Py_TPFLAGS_SEQUENCE`." msgstr "" msgid ":pep:`634` -- Structural Pattern Matching: Specification" @@ -1975,8 +1982,8 @@ msgid "" msgstr "" msgid "" -"This flag is inherited by types that do not already set :c:macro:" -"`Py_TPFLAGS_MAPPING`." +"This flag is inherited by types that do not already " +"set :c:macro:`Py_TPFLAGS_MAPPING`." msgstr "" msgid "" @@ -1990,8 +1997,9 @@ msgid "" msgstr "" msgid "" -"This macro does nothing. Historically, this would indicate that the :c:" -"member:`~PyTypeObject.tp_version_tag` field was available and initialized." +"This macro does nothing. Historically, this would indicate that " +"the :c:member:`~PyTypeObject.tp_version_tag` field was available and " +"initialized." msgstr "" msgid "" @@ -2039,10 +2047,12 @@ msgid "See :ref:`gc-traversal` for documentation." msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_clear` and the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" -"member:`~PyTypeObject.tp_traverse`, and :c:member:`~PyTypeObject.tp_clear` " -"are all inherited from the base type if they are all zero in the subtype." +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_clear` and " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag " +"bit, :c:member:`~PyTypeObject.tp_traverse`, " +"and :c:member:`~PyTypeObject.tp_clear` are all inherited from the base type " +"if they are all zero in the subtype." msgstr "" msgid "An optional pointer to a clear function. The signature is::" @@ -2062,15 +2072,15 @@ msgid "" ":c:member:`!tp_clear` does not need to delete references to objects that " "can't participate in reference cycles, such as Python strings or Python " "integers. However, it may be convenient to clear all references, and write " -"the type's :c:member:`~PyTypeObject.tp_dealloc` function to invoke :c:member:" -"`!tp_clear` to avoid code duplication. (Beware that :c:member:`!tp_clear` " -"might have already been called. Prefer calling idempotent functions like :c:" -"func:`Py_CLEAR`.)" +"the type's :c:member:`~PyTypeObject.tp_dealloc` function to " +"invoke :c:member:`!tp_clear` to avoid code duplication. (Beware " +"that :c:member:`!tp_clear` might have already been called. Prefer calling " +"idempotent functions like :c:func:`Py_CLEAR`.)" msgstr "" msgid "" -"Any non-trivial cleanup should be performed in :c:member:`~PyTypeObject." -"tp_finalize` instead of :c:member:`!tp_clear`." +"Any non-trivial cleanup should be performed " +"in :c:member:`~PyTypeObject.tp_finalize` instead of :c:member:`!tp_clear`." msgstr "" msgid "" @@ -2095,8 +2105,8 @@ msgid "" msgstr "" msgid "" -"This function differs from the destructor (:c:member:`~PyTypeObject." -"tp_dealloc`) in the following ways:" +"This function differs from the destructor " +"(:c:member:`~PyTypeObject.tp_dealloc`) in the following ways:" msgstr "" msgid "" @@ -2104,17 +2114,17 @@ msgid "" "that might participate in a reference cycle. The purpose of the destructor, " "on the other hand, is a superset: it must release *all* resources it owns, " "including references to objects that cannot participate in a reference cycle " -"(e.g., integers) as well as the object's own memory (by calling :c:member:" -"`~PyTypeObject.tp_free`)." +"(e.g., integers) as well as the object's own memory (by " +"calling :c:member:`~PyTypeObject.tp_free`)." msgstr "" msgid "" "When :c:member:`!tp_clear` is called, other objects might still hold " "references to the object being cleared. Because of this, :c:member:`!" -"tp_clear` must not deallocate the object's own memory (:c:member:" -"`~PyTypeObject.tp_free`). The destructor, on the other hand, is only called " -"when no (strong) references exist, and as such, must safely destroy the " -"object itself by deallocating it." +"tp_clear` must not deallocate the object's own memory " +"(:c:member:`~PyTypeObject.tp_free`). The destructor, on the other hand, is " +"only called when no (strong) references exist, and as such, must safely " +"destroy the object itself by deallocating it." msgstr "" msgid "" @@ -2149,10 +2159,10 @@ msgid "" msgstr "" msgid "" -"Python will not destroy an object until after any automatic calls to its :c:" -"member:`!tp_clear` function have returned. This ensures that the act of " -"breaking a reference cycle does not invalidate the ``self`` pointer while :c:" -"member:`!tp_clear` is still executing." +"Python will not destroy an object until after any automatic calls to " +"its :c:member:`!tp_clear` function have returned. This ensures that the act " +"of breaking a reference cycle does not invalidate the ``self`` pointer " +"while :c:member:`!tp_clear` is still executing." msgstr "" msgid "" @@ -2170,12 +2180,13 @@ msgid "" "Taken together, all :c:member:`~PyTypeObject.tp_clear` functions in the " "system must combine to break all reference cycles. This is subtle, and if " "in any doubt supply a :c:member:`~PyTypeObject.tp_clear` function. For " -"example, the tuple type does not implement a :c:member:`~PyTypeObject." -"tp_clear` function, because it's possible to prove that no reference cycle " -"can be composed entirely of tuples. Therefore the :c:member:`~PyTypeObject." -"tp_clear` functions of other types are responsible for breaking any cycle " -"containing a tuple. This isn't immediately obvious, and there's rarely a " -"good reason to avoid implementing :c:member:`~PyTypeObject.tp_clear`." +"example, the tuple type does not implement " +"a :c:member:`~PyTypeObject.tp_clear` function, because it's possible to " +"prove that no reference cycle can be composed entirely of tuples. Therefore " +"the :c:member:`~PyTypeObject.tp_clear` functions of other types are " +"responsible for breaking any cycle containing a tuple. This isn't " +"immediately obvious, and there's rarely a good reason to avoid " +"implementing :c:member:`~PyTypeObject.tp_clear`." msgstr "" msgid "" @@ -2200,9 +2211,9 @@ msgstr "" msgid "" "The :c:func:`Py_CLEAR` macro should be used, because clearing references is " -"delicate: the reference to the contained object must not be released (via :" -"c:func:`Py_DECREF`) until after the pointer to the contained object is set " -"to ``NULL``. This is because releasing the reference may cause the " +"delicate: the reference to the contained object must not be released " +"(via :c:func:`Py_DECREF`) until after the pointer to the contained object is " +"set to ``NULL``. This is because releasing the reference may cause the " "contained object to become trash, triggering a chain of reclamation activity " "that may include invoking arbitrary Python code (due to finalizers, or " "weakref callbacks, associated with the contained object). If it's possible " @@ -2213,9 +2224,9 @@ msgid "" msgstr "" msgid "" -"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in the :c:member:" -"`~PyTypeObject.tp_flags` field, the clear function must call :c:func:" -"`PyObject_ClearManagedDict` like this::" +"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in " +"the :c:member:`~PyTypeObject.tp_flags` field, the clear function must " +"call :c:func:`PyObject_ClearManagedDict` like this::" msgstr "" msgid "PyObject_ClearManagedDict((PyObject*)self);" @@ -2227,10 +2238,12 @@ msgid "" msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_traverse` and the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :" -"c:member:`~PyTypeObject.tp_traverse`, and :c:member:`~PyTypeObject.tp_clear` " -"are all inherited from the base type if they are all zero in the subtype." +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_traverse` and " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit: the flag " +"bit, :c:member:`~PyTypeObject.tp_traverse`, " +"and :c:member:`~PyTypeObject.tp_clear` are all inherited from the base type " +"if they are all zero in the subtype." msgstr "" msgid "" @@ -2253,8 +2266,9 @@ msgid "" msgstr "" msgid "" -"The following constants are defined to be used as the third argument for :c:" -"member:`~PyTypeObject.tp_richcompare` and for :c:func:`PyObject_RichCompare`:" +"The following constants are defined to be used as the third argument " +"for :c:member:`~PyTypeObject.tp_richcompare` and " +"for :c:func:`PyObject_RichCompare`:" msgstr "" msgid "Constant" @@ -2264,22 +2278,22 @@ msgid "Comparison" msgstr "" msgid "``<``" -msgstr "" +msgstr "``<``" msgid "``<=``" -msgstr "" +msgstr "``<=``" msgid "``==``" -msgstr "" +msgstr "``==``" msgid "``!=``" -msgstr "" +msgstr "``!=``" msgid "``>``" -msgstr "" +msgstr "``>``" msgid "``>=``" -msgstr "" +msgstr "``>=``" msgid "" "The following macro is defined to ease writing rich comparison functions:" @@ -2299,18 +2313,20 @@ msgid "On error, sets an exception and returns ``NULL`` from the function." msgstr "" msgid "" -"This field is inherited by subtypes together with :c:member:`~PyTypeObject." -"tp_hash`: a subtype inherits :c:member:`~PyTypeObject.tp_richcompare` and :c:" -"member:`~PyTypeObject.tp_hash` when the subtype's :c:member:`~PyTypeObject." -"tp_richcompare` and :c:member:`~PyTypeObject.tp_hash` are both ``NULL``." +"This field is inherited by subtypes together " +"with :c:member:`~PyTypeObject.tp_hash`: a subtype " +"inherits :c:member:`~PyTypeObject.tp_richcompare` " +"and :c:member:`~PyTypeObject.tp_hash` when the " +"subtype's :c:member:`~PyTypeObject.tp_richcompare` " +"and :c:member:`~PyTypeObject.tp_hash` are both ``NULL``." msgstr "" msgid "" -":c:data:`PyBaseObject_Type` provides a :c:member:`~PyTypeObject." -"tp_richcompare` implementation, which may be inherited. However, if only :c:" -"member:`~PyTypeObject.tp_hash` is defined, not even the inherited function " -"is used and instances of the type will not be able to participate in any " -"comparisons." +":c:data:`PyBaseObject_Type` provides " +"a :c:member:`~PyTypeObject.tp_richcompare` implementation, which may be " +"inherited. However, if only :c:member:`~PyTypeObject.tp_hash` is defined, " +"not even the inherited function is used and instances of the type will not " +"be able to participate in any comparisons." msgstr "" msgid "" @@ -2323,8 +2339,8 @@ msgid "" "greater than zero and contains the offset in the instance structure of the " "weak reference list head (ignoring the GC header, if present); this offset " "is used by :c:func:`PyObject_ClearWeakRefs` and the ``PyWeakref_*`` " -"functions. The instance structure needs to include a field of type :c:expr:" -"`PyObject*` which is initialized to ``NULL``." +"functions. The instance structure needs to include a field of " +"type :c:expr:`PyObject*` which is initialized to ``NULL``." msgstr "" msgid "" @@ -2346,16 +2362,17 @@ msgid "" msgstr "" msgid "" -"If the :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` bit is set in the :c:member:" -"`~PyTypeObject.tp_flags` field, then :c:member:`~PyTypeObject." -"tp_weaklistoffset` will be set to a negative value, to indicate that it is " -"unsafe to use this field." +"If the :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` bit is set in " +"the :c:member:`~PyTypeObject.tp_flags` field, " +"then :c:member:`~PyTypeObject.tp_weaklistoffset` will be set to a negative " +"value, to indicate that it is unsafe to use this field." msgstr "" msgid "" "An optional pointer to a function that returns an :term:`iterator` for the " -"object. Its presence normally signals that the instances of this type are :" -"term:`iterable` (although sequences may be iterable without this function)." +"object. Its presence normally signals that the instances of this type " +"are :term:`iterable` (although sequences may be iterable without this " +"function)." msgstr "" msgid "This function has the same signature as :c:func:`PyObject_GetIter`::" @@ -2365,18 +2382,18 @@ msgid "PyObject *tp_iter(PyObject *self);" msgstr "" msgid "" -"An optional pointer to a function that returns the next item in an :term:" -"`iterator`. The signature is::" +"An optional pointer to a function that returns the next item in " +"an :term:`iterator`. The signature is::" msgstr "" msgid "PyObject *tp_iternext(PyObject *self);" msgstr "" msgid "" -"When the iterator is exhausted, it must return ``NULL``; a :exc:" -"`StopIteration` exception may or may not be set. When another error occurs, " -"it must return ``NULL`` too. Its presence signals that the instances of " -"this type are iterators." +"When the iterator is :term:`exhausted`, the ``tp_iternext`` function must " +"return ``NULL``; a :exc:`StopIteration` exception may or may not be set. " +"When another error occurs, it must return ``NULL`` too. The presence of " +"``tp_iternext`` signals that the instances of this type are iterators." msgstr "" msgid "" @@ -2389,8 +2406,8 @@ msgid "This function has the same signature as :c:func:`PyIter_Next`." msgstr "" msgid "" -"An optional pointer to a static ``NULL``-terminated array of :c:type:" -"`PyMethodDef` structures, declaring regular methods of this type." +"An optional pointer to a static ``NULL``-terminated array " +"of :c:type:`PyMethodDef` structures, declaring regular methods of this type." msgstr "" msgid "" @@ -2404,9 +2421,9 @@ msgid "" msgstr "" msgid "" -"An optional pointer to a static ``NULL``-terminated array of :c:type:" -"`PyMemberDef` structures, declaring regular data members (fields or slots) " -"of instances of this type." +"An optional pointer to a static ``NULL``-terminated array " +"of :c:type:`PyMemberDef` structures, declaring regular data members (fields " +"or slots) of instances of this type." msgstr "" msgid "" @@ -2420,9 +2437,9 @@ msgid "" msgstr "" msgid "" -"An optional pointer to a static ``NULL``-terminated array of :c:type:" -"`PyGetSetDef` structures, declaring computed attributes of instances of this " -"type." +"An optional pointer to a static ``NULL``-terminated array " +"of :c:type:`PyGetSetDef` structures, declaring computed attributes of " +"instances of this type." msgstr "" msgid "" @@ -2453,10 +2470,10 @@ msgid "" msgstr "" msgid "" -"However, the unary '&' operator applied to a non-static variable like :c:" -"data:`PyBaseObject_Type` is not required to produce an address constant. " -"Compilers may support this (gcc does), MSVC does not. Both compilers are " -"strictly standard conforming in this particular behavior." +"However, the unary '&' operator applied to a non-static variable " +"like :c:data:`PyBaseObject_Type` is not required to produce an address " +"constant. Compilers may support this (gcc does), MSVC does not. Both " +"compilers are strictly standard conforming in this particular behavior." msgstr "" msgid "" @@ -2480,20 +2497,21 @@ msgid "" "called; it may also be initialized to a dictionary containing initial " "attributes for the type. Once :c:func:`PyType_Ready` has initialized the " "type, extra attributes for the type may be added to this dictionary only if " -"they don't correspond to overloaded operations (like :meth:`~object." -"__add__`). Once initialization for the type has finished, this field should " -"be treated as read-only." +"they don't correspond to overloaded operations " +"(like :meth:`~object.__add__`). Once initialization for the type has " +"finished, this field should be treated as read-only." msgstr "" msgid "" -"Some types may not store their dictionary in this slot. Use :c:func:" -"`PyType_GetDict` to retrieve the dictionary for an arbitrary type." +"Some types may not store their dictionary in this slot. " +"Use :c:func:`PyType_GetDict` to retrieve the dictionary for an arbitrary " +"type." msgstr "" msgid "" "Internals detail: For static builtin types, this is always ``NULL``. " -"Instead, the dict for such types is stored on ``PyInterpreterState``. Use :c:" -"func:`PyType_GetDict` to get the dict for an arbitrary type." +"Instead, the dict for such types is stored on ``PyInterpreterState``. " +"Use :c:func:`PyType_GetDict` to get the dict for an arbitrary type." msgstr "" msgid "" @@ -2507,8 +2525,8 @@ msgid "" msgstr "" msgid "" -"It is not safe to use :c:func:`PyDict_SetItem` on or otherwise modify :c:" -"member:`~PyTypeObject.tp_dict` with the dictionary C-API." +"It is not safe to use :c:func:`PyDict_SetItem` on or otherwise " +"modify :c:member:`~PyTypeObject.tp_dict` with the dictionary C-API." msgstr "" msgid "An optional pointer to a \"descriptor get\" function." @@ -2539,8 +2557,8 @@ msgstr "" msgid "" "If the instances of this type have a dictionary containing instance " "variables, this field is non-zero and contains the offset in the instances " -"of the type of the instance variable dictionary; this offset is used by :c:" -"func:`PyObject_GenericGetAttr`." +"of the type of the instance variable dictionary; this offset is used " +"by :c:func:`PyObject_GenericGetAttr`." msgstr "" msgid "" @@ -2555,22 +2573,23 @@ msgstr "" msgid "" "The :c:member:`~PyTypeObject.tp_dictoffset` should be regarded as write-" -"only. To get the pointer to the dictionary call :c:func:" -"`PyObject_GenericGetDict`. Calling :c:func:`PyObject_GenericGetDict` may " -"need to allocate memory for the dictionary, so it is may be more efficient " -"to call :c:func:`PyObject_GetAttr` when accessing an attribute on the object." +"only. To get the pointer to the dictionary " +"call :c:func:`PyObject_GenericGetDict`. " +"Calling :c:func:`PyObject_GenericGetDict` may need to allocate memory for " +"the dictionary, so it is may be more efficient to " +"call :c:func:`PyObject_GetAttr` when accessing an attribute on the object." msgstr "" msgid "" -"It is an error to set both the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit and :c:" -"member:`~PyTypeObject.tp_dictoffset`." +"It is an error to set both the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit " +"and :c:member:`~PyTypeObject.tp_dictoffset`." msgstr "" msgid "" "This field is inherited by subtypes. A subtype should not override this " "offset; doing so could be unsafe, if C code tries to access the dictionary " -"at the previous offset. To properly support inheritance, use :c:macro:" -"`Py_TPFLAGS_MANAGED_DICT`." +"at the previous offset. To properly support inheritance, " +"use :c:macro:`Py_TPFLAGS_MANAGED_DICT`." msgstr "" msgid "" @@ -2580,9 +2599,10 @@ msgid "" msgstr "" msgid "" -"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in the :c:member:" -"`~PyTypeObject.tp_flags` field, then :c:member:`~PyTypeObject.tp_dictoffset` " -"will be set to ``-1``, to indicate that it is unsafe to use this field." +"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` bit is set in " +"the :c:member:`~PyTypeObject.tp_flags` field, " +"then :c:member:`~PyTypeObject.tp_dictoffset` will be set to ``-1``, to " +"indicate that it is unsafe to use this field." msgstr "" msgid "An optional pointer to an instance initialization function." @@ -2600,19 +2620,19 @@ msgstr "" msgid "" "The self argument is the instance to be initialized; the *args* and *kwds* " -"arguments represent positional and keyword arguments of the call to :meth:" -"`~object.__init__`." +"arguments represent positional and keyword arguments of the call " +"to :meth:`~object.__init__`." msgstr "" msgid "" "The :c:member:`~PyTypeObject.tp_init` function, if not ``NULL``, is called " -"when an instance is created normally by calling its type, after the type's :" -"c:member:`~PyTypeObject.tp_new` function has returned an instance of the " -"type. If the :c:member:`~PyTypeObject.tp_new` function returns an instance " -"of some other type that is not a subtype of the original type, no :c:member:" -"`~PyTypeObject.tp_init` function is called; if :c:member:`~PyTypeObject." -"tp_new` returns an instance of a subtype of the original type, the " -"subtype's :c:member:`~PyTypeObject.tp_init` is called." +"when an instance is created normally by calling its type, after the " +"type's :c:member:`~PyTypeObject.tp_new` function has returned an instance of " +"the type. If the :c:member:`~PyTypeObject.tp_new` function returns an " +"instance of some other type that is not a subtype of the original type, " +"no :c:member:`~PyTypeObject.tp_init` function is called; " +"if :c:member:`~PyTypeObject.tp_new` returns an instance of a subtype of the " +"original type, the subtype's :c:member:`~PyTypeObject.tp_init` is called." msgstr "" msgid "Returns ``0`` on success, ``-1`` and sets an exception on error." @@ -2629,8 +2649,8 @@ msgid "PyObject *tp_alloc(PyTypeObject *self, Py_ssize_t nitems);" msgstr "" msgid "" -"Static subtypes inherit this slot, which will be :c:func:" -"`PyType_GenericAlloc` if inherited from :class:`object`." +"Static subtypes inherit this slot, which will " +"be :c:func:`PyType_GenericAlloc` if inherited from :class:`object`." msgstr "" msgid ":ref:`Heap subtypes ` do not inherit this slot." @@ -2653,9 +2673,9 @@ msgstr "" msgid "" "The *subtype* argument is the type of the object being created; the *args* " "and *kwds* arguments represent positional and keyword arguments of the call " -"to the type. Note that *subtype* doesn't have to equal the type whose :c:" -"member:`~PyTypeObject.tp_new` function is called; it may be a subtype of " -"that type (but not an unrelated type)." +"to the type. Note that *subtype* doesn't have to equal the type " +"whose :c:member:`~PyTypeObject.tp_new` function is called; it may be a " +"subtype of that type (but not an unrelated type)." msgstr "" msgid "" @@ -2664,9 +2684,9 @@ msgid "" "only as much further initialization as is absolutely necessary. " "Initialization that can safely be ignored or repeated should be placed in " "the :c:member:`~PyTypeObject.tp_init` handler. A good rule of thumb is that " -"for immutable types, all initialization should take place in :c:member:" -"`~PyTypeObject.tp_new`, while for mutable types, most initialization should " -"be deferred to :c:member:`~PyTypeObject.tp_init`." +"for immutable types, all initialization should take place " +"in :c:member:`~PyTypeObject.tp_new`, while for mutable types, most " +"initialization should be deferred to :c:member:`~PyTypeObject.tp_init`." msgstr "" msgid "" @@ -2675,9 +2695,10 @@ msgid "" msgstr "" msgid "" -"This field is inherited by subtypes, except it is not inherited by :ref:" -"`static types ` whose :c:member:`~PyTypeObject.tp_base` is " -"``NULL`` or ``&PyBaseObject_Type``." +"This field is inherited by subtypes, except it is not inherited " +"by :ref:`static types ` " +"whose :c:member:`~PyTypeObject.tp_base` is ``NULL`` or " +"``&PyBaseObject_Type``." msgstr "" msgid "" @@ -2695,22 +2716,23 @@ msgid "void tp_free(void *self);" msgstr "" msgid "" -"This function must free the memory allocated by :c:member:`~PyTypeObject." -"tp_alloc`." +"This function must free the memory allocated " +"by :c:member:`~PyTypeObject.tp_alloc`." msgstr "" msgid "" "Static subtypes inherit this slot, which will be :c:func:`PyObject_Free` if " "inherited from :class:`object`. Exception: If the type supports garbage " -"collection (i.e., the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set in :c:member:" -"`~PyTypeObject.tp_flags`) and it would inherit :c:func:`PyObject_Free`, then " -"this slot is not inherited but instead defaults to :c:func:`PyObject_GC_Del`." +"collection (i.e., the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set " +"in :c:member:`~PyTypeObject.tp_flags`) and it would " +"inherit :c:func:`PyObject_Free`, then this slot is not inherited but instead " +"defaults to :c:func:`PyObject_GC_Del`." msgstr "" msgid "" "For :ref:`heap subtypes `, this slot defaults to a deallocator " -"suitable to match :c:func:`PyType_GenericAlloc` and the value of the :c:" -"macro:`Py_TPFLAGS_HAVE_GC` flag." +"suitable to match :c:func:`PyType_GenericAlloc` and the value of " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag." msgstr "" msgid "An optional pointer to a function called by the garbage collector." @@ -2719,26 +2741,26 @@ msgstr "" msgid "" "The garbage collector needs to know whether a particular object is " "collectible or not. Normally, it is sufficient to look at the object's " -"type's :c:member:`~PyTypeObject.tp_flags` field, and check the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag bit. But some types have a mixture of statically " -"and dynamically allocated instances, and the statically allocated instances " -"are not collectible. Such types should define this function; it should " -"return ``1`` for a collectible instance, and ``0`` for a non-collectible " -"instance. The signature is::" +"type's :c:member:`~PyTypeObject.tp_flags` field, and check " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit. But some types have a mixture " +"of statically and dynamically allocated instances, and the statically " +"allocated instances are not collectible. Such types should define this " +"function; it should return ``1`` for a collectible instance, and ``0`` for a " +"non-collectible instance. The signature is::" msgstr "" msgid "int tp_is_gc(PyObject *self);" msgstr "" msgid "" -"(The only example of this are types themselves. The metatype, :c:data:" -"`PyType_Type`, defines this function to distinguish between statically and :" -"ref:`dynamically allocated types `.)" +"(The only example of this are types themselves. The " +"metatype, :c:data:`PyType_Type`, defines this function to distinguish " +"between statically and :ref:`dynamically allocated types `.)" msgstr "" msgid "" -"This slot has no default. If this field is ``NULL``, :c:macro:" -"`Py_TPFLAGS_HAVE_GC` is used as the functional equivalent." +"This slot has no default. If this field is " +"``NULL``, :c:macro:`Py_TPFLAGS_HAVE_GC` is used as the functional equivalent." msgstr "" msgid "Tuple of base types." @@ -2767,8 +2789,8 @@ msgid "" msgstr "" msgid "" -"This field is not inherited; it is calculated fresh by :c:func:" -"`PyType_Ready`." +"This field is not inherited; it is calculated fresh " +"by :c:func:`PyType_Ready`." msgstr "" msgid "Unused. Internal use only." @@ -2779,8 +2801,8 @@ msgid "" msgstr "" msgid "" -"To get a list of subclasses, call the Python method :py:meth:`~type." -"__subclasses__`." +"To get a list of subclasses, call the Python " +"method :py:meth:`~type.__subclasses__`." msgstr "" msgid "" @@ -2826,8 +2848,8 @@ msgstr "" msgid "" "Before Python automatically finalizes an object, some of the object's direct " "or indirect referents might have themselves been automatically finalized. " -"However, none of the referents will have been automatically cleared (:c:" -"member:`~PyTypeObject.tp_clear`) yet." +"However, none of the referents will have been automatically cleared " +"(:c:member:`~PyTypeObject.tp_clear`) yet." msgstr "" msgid "" @@ -2859,8 +2881,8 @@ msgstr "" msgid "" "The :c:member:`!tp_finalize` function can be called during shutdown, after " -"some global variables have been deleted. See the documentation of the :meth:" -"`~object.__del__` method for details." +"some global variables have been deleted. See the documentation of " +"the :meth:`~object.__del__` method for details." msgstr "" msgid "" @@ -2869,9 +2891,10 @@ msgstr "" msgid "" "Python might mark the object as *finalized*. Currently, Python always marks " -"objects whose type supports garbage collection (i.e., the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag is set in :c:member:`~PyTypeObject.tp_flags`) and " -"never marks other types of objects; this might change in a future version." +"objects whose type supports garbage collection (i.e., " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is set " +"in :c:member:`~PyTypeObject.tp_flags`) and never marks other types of " +"objects; this might change in a future version." msgstr "" msgid "" @@ -2897,9 +2920,9 @@ msgstr "" msgid "" "*Automatic finalization* refers to any finalization performed by Python " -"except via calls to :c:func:`PyObject_CallFinalizer` or :c:func:" -"`PyObject_CallFinalizerFromDealloc`. No guarantees are made about when, if, " -"or how often an object is automatically finalized, except:" +"except via calls to :c:func:`PyObject_CallFinalizer` " +"or :c:func:`PyObject_CallFinalizerFromDealloc`. No guarantees are made " +"about when, if, or how often an object is automatically finalized, except:" msgstr "" msgid "" @@ -2911,10 +2934,10 @@ msgstr "" msgid "" "Python will not automatically finalize an object if finalizing it would not " "mark the object as *finalized*. Currently, this applies to objects whose " -"type does not support garbage collection, i.e., the :c:macro:" -"`Py_TPFLAGS_HAVE_GC` flag is not set. Such objects can still be manually " -"finalized by calling :c:func:`PyObject_CallFinalizer` or :c:func:" -"`PyObject_CallFinalizerFromDealloc`." +"type does not support garbage collection, i.e., " +"the :c:macro:`Py_TPFLAGS_HAVE_GC` flag is not set. Such objects can still " +"be manually finalized by calling :c:func:`PyObject_CallFinalizer` " +"or :c:func:`PyObject_CallFinalizerFromDealloc`." msgstr "" msgid "" @@ -2929,8 +2952,8 @@ msgstr "" msgid "" "If an object is a member of a :term:`cyclic isolate`, Python will not " -"automatically finalize it after automatically clearing (see :c:member:" -"`~PyTypeObject.tp_clear`) any other member." +"automatically finalize it after automatically clearing " +"(see :c:member:`~PyTypeObject.tp_clear`) any other member." msgstr "" msgid "" @@ -2940,30 +2963,32 @@ msgid "" msgstr "" msgid "" -"If Python is going to automatically clear an object (:c:member:" -"`~PyTypeObject.tp_clear`), it will automatically finalize the object first." +"If Python is going to automatically clear an object " +"(:c:member:`~PyTypeObject.tp_clear`), it will automatically finalize the " +"object first." msgstr "" msgid "" -"Python currently only automatically finalizes objects that are members of a :" -"term:`cyclic isolate`, but future versions might finalize objects regularly " -"before their destruction." +"Python currently only automatically finalizes objects that are members of " +"a :term:`cyclic isolate`, but future versions might finalize objects " +"regularly before their destruction." msgstr "" msgid "" -"To manually finalize an object, do not call this function directly; call :c:" -"func:`PyObject_CallFinalizer` or :c:func:`PyObject_CallFinalizerFromDealloc` " -"instead." +"To manually finalize an object, do not call this function directly; " +"call :c:func:`PyObject_CallFinalizer` " +"or :c:func:`PyObject_CallFinalizerFromDealloc` instead." msgstr "" msgid "" ":c:member:`~PyTypeObject.tp_finalize` should leave the current exception " "status unchanged. The recommended way to write a non-trivial finalizer is " -"to back up the exception at the beginning by calling :c:func:" -"`PyErr_GetRaisedException` and restore the exception at the end by calling :" -"c:func:`PyErr_SetRaisedException`. If an exception is encountered in the " -"middle of the finalizer, log and clear it with :c:func:" -"`PyErr_WriteUnraisable` or :c:func:`PyErr_FormatUnraisable`. For example::" +"to back up the exception at the beginning by " +"calling :c:func:`PyErr_GetRaisedException` and restore the exception at the " +"end by calling :c:func:`PyErr_SetRaisedException`. If an exception is " +"encountered in the middle of the finalizer, log and clear it " +"with :c:func:`PyErr_WriteUnraisable` or :c:func:`PyErr_FormatUnraisable`. " +"For example::" msgstr "" msgid "" @@ -2989,9 +3014,9 @@ msgid "" msgstr "" msgid "" -"Before version 3.8 it was necessary to set the :c:macro:" -"`Py_TPFLAGS_HAVE_FINALIZE` flags bit in order for this field to be used. " -"This is no longer required." +"Before version 3.8 it was necessary to set " +"the :c:macro:`Py_TPFLAGS_HAVE_FINALIZE` flags bit in order for this field to " +"be used. This is no longer required." msgstr "" msgid ":pep:`442`: \"Safe object finalization\"" @@ -3040,10 +3065,10 @@ msgstr "" msgid "" "Typically, ``tp_vectorcall`` is overridden to optimize this process for " -"specific :c:member:`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject." -"tp_init`. When doing this for user-subclassable types, note that both can be " -"overridden (using :py:func:`~object.__new__` and :py:func:`~object." -"__init__`, respectively)." +"specific :c:member:`~PyTypeObject.tp_new` " +"and :c:member:`~PyTypeObject.tp_init`. When doing this for user-subclassable " +"types, note that both can be overridden (using :py:func:`~object.__new__` " +"and :py:func:`~object.__init__`, respectively)." msgstr "" msgid "This field is never inherited." @@ -3059,9 +3084,9 @@ msgid "Static Types" msgstr "" msgid "" -"Traditionally, types defined in C code are *static*, that is, a static :c:" -"type:`PyTypeObject` structure is defined directly in code and initialized " -"using :c:func:`PyType_Ready`." +"Traditionally, types defined in C code are *static*, that is, a " +"static :c:type:`PyTypeObject` structure is defined directly in code and " +"initialized using :c:func:`PyType_Ready`." msgstr "" msgid "" @@ -3096,14 +3121,14 @@ msgstr "" msgid "" "An alternative to :ref:`static types ` is *heap-allocated " "types*, or *heap types* for short, which correspond closely to classes " -"created by Python's ``class`` statement. Heap types have the :c:macro:" -"`Py_TPFLAGS_HEAPTYPE` flag set." +"created by Python's ``class`` statement. Heap types have " +"the :c:macro:`Py_TPFLAGS_HEAPTYPE` flag set." msgstr "" msgid "" -"This is done by filling a :c:type:`PyType_Spec` structure and calling :c:" -"func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases`, :c:func:" -"`PyType_FromModuleAndSpec`, or :c:func:`PyType_FromMetaclass`." +"This is done by filling a :c:type:`PyType_Spec` structure and " +"calling :c:func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases`, :c:func:`PyType_FromModuleAndSpec`, " +"or :c:func:`PyType_FromMetaclass`." msgstr "" msgid "Number Object Structures" @@ -3187,22 +3212,23 @@ msgid "" msgstr "" msgid "" -"This function is used by :c:func:`PyMapping_Size` and :c:func:" -"`PyObject_Size`, and has the same signature. This slot may be set to " -"``NULL`` if the object has no defined length." +"This function is used by :c:func:`PyMapping_Size` " +"and :c:func:`PyObject_Size`, and has the same signature. This slot may be " +"set to ``NULL`` if the object has no defined length." msgstr "" msgid "" -"This function is used by :c:func:`PyObject_GetItem` and :c:func:" -"`PySequence_GetSlice`, and has the same signature as :c:func:`!" -"PyObject_GetItem`. This slot must be filled for the :c:func:" -"`PyMapping_Check` function to return ``1``, it can be ``NULL`` otherwise." +"This function is used by :c:func:`PyObject_GetItem` " +"and :c:func:`PySequence_GetSlice`, and has the same signature as :c:func:`!" +"PyObject_GetItem`. This slot must be filled for " +"the :c:func:`PyMapping_Check` function to return ``1``, it can be ``NULL`` " +"otherwise." msgstr "" msgid "" -"This function is used by :c:func:`PyObject_SetItem`, :c:func:" -"`PyObject_DelItem`, :c:func:`PySequence_SetSlice` and :c:func:" -"`PySequence_DelSlice`. It has the same signature as :c:func:`!" +"This function is used " +"by :c:func:`PyObject_SetItem`, :c:func:`PyObject_DelItem`, :c:func:`PySequence_SetSlice` " +"and :c:func:`PySequence_DelSlice`. It has the same signature as :c:func:`!" "PyObject_SetItem`, but *v* can also be set to ``NULL`` to delete an item. " "If this slot is ``NULL``, the object does not support item assignment and " "deletion." @@ -3217,10 +3243,10 @@ msgid "" msgstr "" msgid "" -"This function is used by :c:func:`PySequence_Size` and :c:func:" -"`PyObject_Size`, and has the same signature. It is also used for handling " -"negative indices via the :c:member:`~PySequenceMethods.sq_item` and the :c:" -"member:`~PySequenceMethods.sq_ass_item` slots." +"This function is used by :c:func:`PySequence_Size` " +"and :c:func:`PyObject_Size`, and has the same signature. It is also used " +"for handling negative indices via the :c:member:`~PySequenceMethods.sq_item` " +"and the :c:member:`~PySequenceMethods.sq_ass_item` slots." msgstr "" msgid "" @@ -3244,19 +3270,20 @@ msgid "" msgstr "" msgid "" -"Negative indexes are handled as follows: if the :c:member:" -"`~PySequenceMethods.sq_length` slot is filled, it is called and the sequence " -"length is used to compute a positive index which is passed to :c:member:" -"`~PySequenceMethods.sq_item`. If :c:member:`!sq_length` is ``NULL``, the " -"index is passed as is to the function." +"Negative indexes are handled as follows: if " +"the :c:member:`~PySequenceMethods.sq_length` slot is filled, it is called " +"and the sequence length is used to compute a positive index which is passed " +"to :c:member:`~PySequenceMethods.sq_item`. If :c:member:`!sq_length` is " +"``NULL``, the index is passed as is to the function." msgstr "" msgid "" "This function is used by :c:func:`PySequence_SetItem` and has the same " -"signature. It is also used by :c:func:`PyObject_SetItem` and :c:func:" -"`PyObject_DelItem`, after trying the item assignment and deletion via the :c:" -"member:`~PyMappingMethods.mp_ass_subscript` slot. This slot may be left to " -"``NULL`` if the object does not support item assignment and deletion." +"signature. It is also used by :c:func:`PyObject_SetItem` " +"and :c:func:`PyObject_DelItem`, after trying the item assignment and " +"deletion via the :c:member:`~PyMappingMethods.mp_ass_subscript` slot. This " +"slot may be left to ``NULL`` if the object does not support item assignment " +"and deletion." msgstr "" msgid "" @@ -3270,8 +3297,8 @@ msgid "" "signature. It should modify its first operand, and return it. This slot " "may be left to ``NULL``, in this case :c:func:`!PySequence_InPlaceConcat` " "will fall back to :c:func:`PySequence_Concat`. It is also used by the " -"augmented assignment ``+=``, after trying numeric in-place addition via the :" -"c:member:`~PyNumberMethods.nb_inplace_add` slot." +"augmented assignment ``+=``, after trying numeric in-place addition via " +"the :c:member:`~PyNumberMethods.nb_inplace_add` slot." msgstr "" msgid "" @@ -3336,8 +3363,8 @@ msgid "" msgstr "" msgid "" -"For objects that support resizing or reallocation (such as :class:" -"`bytearray`), the export counter is checked atomically before such " +"For objects that support resizing or reallocation (such " +"as :class:`bytearray`), the export counter is checked atomically before such " "operations, and :exc:`BufferError` is raised if exports exist." msgstr "" @@ -3373,10 +3400,9 @@ msgstr "" msgid "" "All memory pointed to in the :c:type:`Py_buffer` structure belongs to the " -"exporter and must remain valid until there are no consumers left. :c:member:" -"`~Py_buffer.format`, :c:member:`~Py_buffer.shape`, :c:member:`~Py_buffer." -"strides`, :c:member:`~Py_buffer.suboffsets` and :c:member:`~Py_buffer." -"internal` are read-only for the consumer." +"exporter and must remain valid until there are no consumers " +"left. :c:member:`~Py_buffer.format`, :c:member:`~Py_buffer.shape`, :c:member:`~Py_buffer.strides`, :c:member:`~Py_buffer.suboffsets` " +"and :c:member:`~Py_buffer.internal` are read-only for the consumer." msgstr "" msgid "" @@ -3439,8 +3465,8 @@ msgid "Async Object Structures" msgstr "" msgid "" -"This structure holds pointers to the functions required to implement :term:" -"`awaitable` and :term:`asynchronous iterator` objects." +"This structure holds pointers to the functions required to " +"implement :term:`awaitable` and :term:`asynchronous iterator` objects." msgstr "" msgid "" @@ -3468,8 +3494,8 @@ msgid "PyObject *am_aiter(PyObject *self);" msgstr "" msgid "" -"Must return an :term:`asynchronous iterator` object. See :meth:`~object." -"__anext__` for details." +"Must return an :term:`asynchronous iterator` object. " +"See :meth:`~object.__anext__` for details." msgstr "" msgid "" @@ -3499,19 +3525,20 @@ msgid "" "The purpose of this function is to separate memory allocation from memory " "initialization. It should return a pointer to a block of memory of adequate " "length for the instance, suitably aligned, and initialized to zeros, but " -"with :c:member:`~PyObject.ob_refcnt` set to ``1`` and :c:member:`~PyObject." -"ob_type` set to the type argument. If the type's :c:member:`~PyTypeObject." -"tp_itemsize` is non-zero, the object's :c:member:`~PyVarObject.ob_size` " -"field should be initialized to *nitems* and the length of the allocated " -"memory block should be ``tp_basicsize + nitems*tp_itemsize``, rounded up to " -"a multiple of ``sizeof(void*)``; otherwise, *nitems* is not used and the " -"length of the block should be :c:member:`~PyTypeObject.tp_basicsize`." +"with :c:member:`~PyObject.ob_refcnt` set to ``1`` " +"and :c:member:`~PyObject.ob_type` set to the type argument. If the " +"type's :c:member:`~PyTypeObject.tp_itemsize` is non-zero, the " +"object's :c:member:`~PyVarObject.ob_size` field should be initialized to " +"*nitems* and the length of the allocated memory block should be " +"``tp_basicsize + nitems*tp_itemsize``, rounded up to a multiple of " +"``sizeof(void*)``; otherwise, *nitems* is not used and the length of the " +"block should be :c:member:`~PyTypeObject.tp_basicsize`." msgstr "" msgid "" "This function should not do any other instance initialization, not even to " -"allocate additional memory; that should be done by :c:member:`~PyTypeObject." -"tp_new`." +"allocate additional memory; that should be done " +"by :c:member:`~PyTypeObject.tp_new`." msgstr "" msgid "See :c:member:`~PyTypeObject.tp_free`." @@ -3669,8 +3696,8 @@ msgstr "" msgid "" "A str subclass that cannot be subclassed and cannot be called to create " -"instances (e.g. uses a separate factory func) using :c:macro:" -"`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag::" +"instances (e.g. uses a separate factory func) " +"using :c:macro:`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag::" msgstr "" msgid "" @@ -3725,10 +3752,10 @@ msgid "" msgstr "" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "repr" msgstr "" msgid "hash" -msgstr "" +msgstr "ਹੈਸ਼" diff --git a/c-api/unicode.po b/c-api/unicode.po index ee123ed..d8d1bfc 100644 --- a/c-api/unicode.po +++ b/c-api/unicode.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,6 +42,13 @@ msgid "" "UTF-8 representation is created on demand and cached in the Unicode object." msgstr "" +msgid "" +"The internal buffer always includes an extra trailing null character for " +"compatibility with null terminated C strings. This extra character is not " +"counted in :c:func:`PyUnicode_GetLength` nor in the various *size* arguments " +"of the functions below." +msgstr "" + msgid "" "The :c:type:`Py_UNICODE` representation has been removed since Python 3.12 " "with deprecated APIs. See :pep:`623` for more information." @@ -111,8 +119,8 @@ msgstr "" msgid "" "Return a pointer to the canonical representation cast to UCS1, UCS2 or UCS4 " "integer types for direct character access. No checks are performed if the " -"canonical representation has the correct character size; use :c:func:" -"`PyUnicode_KIND` to select the right function." +"canonical representation has the correct character size; " +"use :c:func:`PyUnicode_KIND` to select the right function." msgstr "" msgid "Return values of the :c:func:`PyUnicode_KIND` macro." @@ -151,14 +159,19 @@ msgid "" msgstr "" msgid "" -"Read a code point from a canonical representation *data* (as obtained with :" -"c:func:`PyUnicode_DATA`). No checks or ready calls are performed." +"Read a code point from a canonical representation *data* (as obtained " +"with :c:func:`PyUnicode_DATA`). No checks are performed." +msgstr "" + +msgid "" +"Accept reading the trailing null character at " +"index :c:func:`PyUnicode_GetLength`." msgstr "" msgid "" "Read a character from a Unicode object *unicode*, which must be in the " -"\"canonical\" representation. This is less efficient than :c:func:" -"`PyUnicode_READ` if you do multiple consecutive reads." +"\"canonical\" representation. This is less efficient " +"than :c:func:`PyUnicode_READ` if you do multiple consecutive reads." msgstr "" msgid "" @@ -178,8 +191,8 @@ msgid "" msgstr "" msgid "" -"Return true if the string only contains ASCII characters. Equivalent to :py:" -"meth:`str.isascii`." +"Return true if the string only contains ASCII characters. Equivalent " +"to :py:meth:`str.isascii`." msgstr "" msgid "" @@ -327,11 +340,11 @@ msgid "On error, set an exception and return ``NULL``." msgstr "" msgid "" -"After creation, the string can be filled by :c:func:`PyUnicode_WriteChar`, :" -"c:func:`PyUnicode_CopyCharacters`, :c:func:`PyUnicode_Fill`, :c:func:" -"`PyUnicode_WRITE` or similar. Since strings are supposed to be immutable, " -"take care to not “use” the result while it is being modified. In particular, " -"before it's filled with its final contents, a string:" +"After creation, the string can be filled " +"by :c:func:`PyUnicode_WriteChar`, :c:func:`PyUnicode_CopyCharacters`, :c:func:`PyUnicode_Fill`, :c:func:`PyUnicode_WRITE` " +"or similar. Since strings are supposed to be immutable, take care to not " +"“use” the result while it is being modified. In particular, before it's " +"filled with its final contents, a string:" msgstr "" msgid "must not be hashed," @@ -360,17 +373,24 @@ msgid "" msgstr "" msgid "" -"Create a new Unicode object with the given *kind* (possible values are :c:" -"macro:`PyUnicode_1BYTE_KIND` etc., as returned by :c:func:" -"`PyUnicode_KIND`). The *buffer* must point to an array of *size* units of " -"1, 2 or 4 bytes per character, as given by the kind." +"Create a new Unicode object with the given *kind* (possible values " +"are :c:macro:`PyUnicode_1BYTE_KIND` etc., as returned " +"by :c:func:`PyUnicode_KIND`). The *buffer* must point to an array of *size* " +"units of 1, 2 or 4 bytes per character, as given by the kind." msgstr "" msgid "" "If necessary, the input *buffer* is copied and transformed into the " -"canonical representation. For example, if the *buffer* is a UCS4 string (:c:" -"macro:`PyUnicode_4BYTE_KIND`) and it consists only of codepoints in the UCS1 " -"range, it will be transformed into UCS1 (:c:macro:`PyUnicode_1BYTE_KIND`)." +"canonical representation. For example, if the *buffer* is a UCS4 string " +"(:c:macro:`PyUnicode_4BYTE_KIND`) and it consists only of codepoints in the " +"UCS1 range, it will be transformed into UCS1 " +"(:c:macro:`PyUnicode_1BYTE_KIND`)." +msgstr "" + +msgid "" +"All characters must be in range [U+0000; U+10ffff]. If *kind* " +"is :c:macro:`PyUnicode_4BYTE_KIND` and the string contains invalid " +"characters, the behavior is undefined." msgstr "" msgid "" @@ -409,20 +429,23 @@ msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" msgstr "" +"ਇੱਕ conversion specifier ਵਿੱਚ ਦੋ ਜਾਂ ਇਸ ਤੋਂ ਵੱਧ ਅੱਖਰ ਹੁੰਦੇ ਹਨ ਅਤੇ ਇਸ ਵਿੱਚ ਹੇਠ ਲਿਖੇ ਭਾਗ ਸ਼ਾਮਲ " +"ਹੁੰਦੇ ਹਨ, ਜੋ ਇਸੇ ਕ੍ਰਮ ਵਿੱਚ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ:" msgid "The ``'%'`` character, which marks the start of the specifier." -msgstr "" +msgstr "``'%'`` ਅੱਖਰ, ਜੋ specifier ਦੀ ਸ਼ੁਰੂਆਤ ਦਰਸਾਉਂਦਾ ਹੈ।" msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." msgstr "" +"Conversion flags (ਵਿਕਲਪਿਕ), ਜੋ ਕੁਝ conversion ਕਿਸਮਾਂ ਦੇ ਨਤੀਜੇ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੇ ਹਨ।" msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " -"actual width is given in the next argument, which must be of type :c:expr:" -"`int`, and the object to convert comes after the minimum field width and " -"optional precision." +"actual width is given in the next argument, which must be of " +"type :c:expr:`int`, and the object to convert comes after the minimum field " +"width and optional precision." msgstr "" msgid "" @@ -433,25 +456,25 @@ msgid "" msgstr "" msgid "Length modifier (optional)." -msgstr "" +msgstr "Length modifier (ਵਿਕਲਪਿਕ)।" msgid "Conversion type." -msgstr "" +msgstr "Conversion type।" msgid "The conversion flag characters are:" -msgstr "" +msgstr "Conversion flag ਅੱਖਰ ਹੇਠ ਲਿਖੇ ਹਨ:" msgid "Flag" -msgstr "" +msgstr "Flag" msgid "Meaning" -msgstr "" +msgstr "ਅਰਥ" msgid "``0``" msgstr "" msgid "The conversion will be zero padded for numeric values." -msgstr "" +msgstr "ਅੰਕੀ (numeric) values ਲਈ conversion ਵਿੱਚ zero padding ਕੀਤੀ ਜਾਵੇਗੀ।" msgid "``-``" msgstr "" @@ -635,8 +658,8 @@ msgid "``T``" msgstr "" msgid "" -"Get the fully qualified name of an object type; call :c:func:" -"`PyType_GetFullyQualifiedName`." +"Get the fully qualified name of an object type; " +"call :c:func:`PyType_GetFullyQualifiedName`." msgstr "" msgid "``#T``" @@ -654,8 +677,8 @@ msgid ":c:expr:`PyTypeObject*`" msgstr "" msgid "" -"Get the fully qualified name of a type; call :c:func:" -"`PyType_GetFullyQualifiedName`." +"Get the fully qualified name of a type; " +"call :c:func:`PyType_GetFullyQualifiedName`." msgstr "" msgid "``#N``" @@ -753,8 +776,8 @@ msgid "" msgstr "" msgid "" -"Append the string *right* to the end of *p_left*. *p_left* must point to a :" -"term:`strong reference` to a Unicode object; :c:func:`!PyUnicode_Append` " +"Append the string *right* to the end of *p_left*. *p_left* must point to " +"a :term:`strong reference` to a Unicode object; :c:func:`!PyUnicode_Append` " "releases (\":term:`steals `\") this reference." msgstr "" @@ -778,8 +801,8 @@ msgid "" msgstr "" msgid "" -"Return the name of the default string encoding, ``\"utf-8\"``. See :func:" -"`sys.getdefaultencoding`." +"Return the name of the default string encoding, ``\"utf-8\"``. " +"See :func:`sys.getdefaultencoding`." msgstr "" msgid "" @@ -793,6 +816,9 @@ msgstr "" msgid "On error, set an exception and return ``-1``." msgstr "" +msgid "The length does not count the trailing null character." +msgstr "" + msgid "" "Copy characters from one Unicode object into another. This function " "performs character conversion when necessary and falls back to :c:func:`!" @@ -826,8 +852,8 @@ msgid "" msgstr "" msgid "" -"Fill a string with a character: write *fill_char* into ``unicode[start:" -"start+length]``." +"Fill a string with a character: write *fill_char* into " +"``unicode[start:start+length]``." msgstr "" msgid "" @@ -847,20 +873,25 @@ msgstr "" msgid "" "This function checks that *unicode* is a Unicode object, that the index is " -"not out of bounds, and that the object's reference count is one. See :c:func:" -"`PyUnicode_WRITE` for a version that skips these checks, making them your " -"responsibility." +"not out of bounds, and that the object's reference count is one. " +"See :c:func:`PyUnicode_WRITE` for a version that skips these checks, making " +"them your responsibility." msgstr "" msgid "" "Read a character from a string. This function checks that *unicode* is a " -"Unicode object and the index is not out of bounds, in contrast to :c:func:" -"`PyUnicode_READ_CHAR`, which performs no error checking." +"Unicode object and the index is not out of bounds, in contrast " +"to :c:func:`PyUnicode_READ_CHAR`, which performs no error checking." msgstr "" msgid "Return character on success, ``-1`` on error with an exception set." msgstr "" +msgid "" +"Do not accept reading the trailing null character at " +"index :c:func:`PyUnicode_GetLength`." +msgstr "" + msgid "" "Return a substring of *unicode*, from character index *start* (included) to " "character index *end* (excluded). Negative indices are not supported. On " @@ -875,10 +906,10 @@ msgid "" msgstr "" msgid "" -"Copy the string *unicode* into a new UCS4 buffer that is allocated using :c:" -"func:`PyMem_Malloc`. If this fails, ``NULL`` is returned with a :exc:" -"`MemoryError` set. The returned buffer always has an extra null code point " -"appended." +"Copy the string *unicode* into a new UCS4 buffer that is allocated " +"using :c:func:`PyMem_Malloc`. If this fails, ``NULL`` is returned with " +"a :exc:`MemoryError` set. The returned buffer always has an extra null code " +"point appended." msgstr "" msgid "Locale Encoding" @@ -898,8 +929,8 @@ msgid "" msgstr "" msgid "" -"Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` to decode a string from the :" -"term:`filesystem encoding and error handler`." +"Use :c:func:`PyUnicode_DecodeFSDefaultAndSize` to decode a string from " +"the :term:`filesystem encoding and error handler`." msgstr "" msgid "This function ignores the :ref:`Python UTF-8 Mode `." @@ -910,9 +941,9 @@ msgstr "" msgid "" "The function now also uses the current locale encoding for the " -"``surrogateescape`` error handler, except on Android. Previously, :c:func:" -"`Py_DecodeLocale` was used for the ``surrogateescape``, and the current " -"locale encoding was used for ``strict``." +"``surrogateescape`` error handler, except on Android. " +"Previously, :c:func:`Py_DecodeLocale` was used for the ``surrogateescape``, " +"and the current locale encoding was used for ``strict``." msgstr "" msgid "" @@ -924,13 +955,13 @@ msgid "" "Encode a Unicode object to UTF-8 on Android and VxWorks, or to the current " "locale encoding on other platforms. The supported error handlers are " "``\"strict\"`` and ``\"surrogateescape\"`` (:pep:`383`). The encoder uses " -"``\"strict\"`` error handler if *errors* is ``NULL``. Return a :class:" -"`bytes` object. *unicode* cannot contain embedded null characters." +"``\"strict\"`` error handler if *errors* is ``NULL``. Return " +"a :class:`bytes` object. *unicode* cannot contain embedded null characters." msgstr "" msgid "" -"Use :c:func:`PyUnicode_EncodeFSDefault` to encode a string to the :term:" -"`filesystem encoding and error handler`." +"Use :c:func:`PyUnicode_EncodeFSDefault` to encode a string to " +"the :term:`filesystem encoding and error handler`." msgstr "" msgid "The :c:func:`Py_EncodeLocale` function." @@ -938,9 +969,9 @@ msgstr "" msgid "" "The function now also uses the current locale encoding for the " -"``surrogateescape`` error handler, except on Android. Previously, :c:func:" -"`Py_EncodeLocale` was used for the ``surrogateescape``, and the current " -"locale encoding was used for ``strict``." +"``surrogateescape`` error handler, except on Android. " +"Previously, :c:func:`Py_EncodeLocale` was used for the ``surrogateescape``, " +"and the current locale encoding was used for ``strict``." msgstr "" msgid "File System Encoding" @@ -959,8 +990,8 @@ msgstr "" msgid "" ":ref:`PyArg_Parse\\* converter `: encode :class:`str` objects " -"-- obtained directly or through the :class:`os.PathLike` interface -- to :" -"class:`bytes` using :c:func:`PyUnicode_EncodeFSDefault`; :class:`bytes` " +"-- obtained directly or through the :class:`os.PathLike` interface -- " +"to :class:`bytes` using :c:func:`PyUnicode_EncodeFSDefault`; :class:`bytes` " "objects are output as-is. *result* must be an address of a C variable of " "type :c:expr:`PyObject*` (or :c:expr:`PyBytesObject*`). On success, set the " "variable to a new :term:`strong reference` to a :ref:`bytes object " @@ -986,14 +1017,15 @@ msgstr "" msgid "" ":ref:`PyArg_Parse\\* converter `: decode :class:`bytes` objects " "-- obtained either directly or indirectly through the :class:`os.PathLike` " -"interface -- to :class:`str` using :c:func:" -"`PyUnicode_DecodeFSDefaultAndSize`; :class:`str` objects are output as-is. " -"*result* must be an address of a C variable of type :c:expr:`PyObject*` (or :" -"c:expr:`PyUnicodeObject*`). On success, set the variable to a new :term:" -"`strong reference` to a :ref:`Unicode object ` which must be " -"released when it is no longer used and return a non-zero value (:c:macro:" -"`Py_CLEANUP_SUPPORTED`). Embedded null characters are not allowed in the " -"result. On failure, return ``0`` with an exception set." +"interface -- to :class:`str` " +"using :c:func:`PyUnicode_DecodeFSDefaultAndSize`; :class:`str` objects are " +"output as-is. *result* must be an address of a C variable of " +"type :c:expr:`PyObject*` (or :c:expr:`PyUnicodeObject*`). On success, set " +"the variable to a new :term:`strong reference` to a :ref:`Unicode object " +"` which must be released when it is no longer used and " +"return a non-zero value (:c:macro:`Py_CLEANUP_SUPPORTED`). Embedded null " +"characters are not allowed in the result. On failure, return ``0`` with an " +"exception set." msgstr "" msgid "" @@ -1005,8 +1037,8 @@ msgid "Decode a string from the :term:`filesystem encoding and error handler`." msgstr "" msgid "" -"If you need to decode a string from the current locale encoding, use :c:func:" -"`PyUnicode_DecodeLocaleAndSize`." +"If you need to decode a string from the current locale encoding, " +"use :c:func:`PyUnicode_DecodeLocaleAndSize`." msgstr "" msgid "" @@ -1020,8 +1052,8 @@ msgid "" msgstr "" msgid "" -"If the string length is known, use :c:func:" -"`PyUnicode_DecodeFSDefaultAndSize`." +"If the string length is known, " +"use :c:func:`PyUnicode_DecodeFSDefaultAndSize`." msgstr "" msgid "" @@ -1031,8 +1063,8 @@ msgid "" msgstr "" msgid "" -"If you need to encode a string to the current locale encoding, use :c:func:" -"`PyUnicode_EncodeLocale`." +"If you need to encode a string to the current locale encoding, " +"use :c:func:`PyUnicode_EncodeLocale`." msgstr "" msgid "wchar_t Support" @@ -1051,8 +1083,8 @@ msgstr "" msgid "" "Copy the Unicode object contents into the :c:type:`wchar_t` buffer *wstr*. " "At most *size* :c:type:`wchar_t` characters are copied (excluding a possibly " -"trailing null termination character). Return the number of :c:type:" -"`wchar_t` characters copied or ``-1`` in case of an error." +"trailing null termination character). Return the number " +"of :c:type:`wchar_t` characters copied or ``-1`` in case of an error." msgstr "" msgid "" @@ -1062,9 +1094,9 @@ msgstr "" msgid "" "Note that the resulting :c:expr:`wchar_t*` string may or may not be null-" -"terminated. It is the responsibility of the caller to make sure that the :c:" -"expr:`wchar_t*` string is null-terminated in case this is required by the " -"application. Also, note that the :c:expr:`wchar_t*` string might contain " +"terminated. It is the responsibility of the caller to make sure that " +"the :c:expr:`wchar_t*` string is null-terminated in case this is required by " +"the application. Also, note that the :c:expr:`wchar_t*` string might contain " "null characters, which would cause the string to be truncated when used with " "most C functions." msgstr "" @@ -1075,8 +1107,9 @@ msgid "" "number of wide characters (excluding the trailing null termination " "character) into *\\*size*. Note that the resulting :c:type:`wchar_t` string " "might contain null characters, which would cause the string to be truncated " -"when used with most C functions. If *size* is ``NULL`` and the :c:expr:" -"`wchar_t*` string contains null characters a :exc:`ValueError` is raised." +"when used with most C functions. If *size* is ``NULL`` and " +"the :c:expr:`wchar_t*` string contains null characters a :exc:`ValueError` " +"is raised." msgstr "" msgid "" @@ -1219,8 +1252,8 @@ msgid "" "`_ embedded within *unicode*. " "As a result, strings containing null characters will remain in the returned " "string, which some C functions might interpret as the end of the string, " -"leading to truncation. If truncation is an issue, it is recommended to use :" -"c:func:`PyUnicode_AsUTF8AndSize` instead." +"leading to truncation. If truncation is an issue, it is recommended to " +"use :c:func:`PyUnicode_AsUTF8AndSize` instead." msgstr "" msgid "UTF-32 Codecs" @@ -1513,8 +1546,8 @@ msgstr "" msgid "" "Encode the Unicode object using the specified code page and return a Python " -"bytes object. Return ``NULL`` if an exception was raised by the codec. Use :" -"c:macro:`!CP_ACP` code page to get the MBCS encoder." +"bytes object. Return ``NULL`` if an exception was raised by the codec. " +"Use :c:macro:`!CP_ACP` code page to get the MBCS encoder." msgstr "" msgid "Methods and Slot Functions" @@ -1631,8 +1664,8 @@ msgid "" msgstr "" msgid "" -"This function returns ``-1`` upon failure, so one should call :c:func:" -"`PyErr_Occurred` to check for errors." +"This function returns ``-1`` upon failure, so one should " +"call :c:func:`PyErr_Occurred` to check for errors." msgstr "" msgid "The :c:func:`PyUnicode_Equal` function." @@ -1648,8 +1681,8 @@ msgid "Return ``0`` if *a* is not equal to *b*." msgstr "" msgid "" -"Set a :exc:`TypeError` exception and return ``-1`` if *a* or *b* is not a :" -"class:`str` object." +"Set a :exc:`TypeError` exception and return ``-1`` if *a* or *b* is not " +"a :class:`str` object." msgstr "" msgid "The function always succeeds if *a* and *b* are :class:`str` objects." @@ -1700,8 +1733,9 @@ msgid ":c:data:`Py_NotImplemented` in case the type combination is unknown" msgstr "" msgid "" -"Possible values for *op* are :c:macro:`Py_GT`, :c:macro:`Py_GE`, :c:macro:" -"`Py_EQ`, :c:macro:`Py_NE`, :c:macro:`Py_LT`, and :c:macro:`Py_LE`." +"Possible values for *op* " +"are :c:macro:`Py_GT`, :c:macro:`Py_GE`, :c:macro:`Py_EQ`, :c:macro:`Py_NE`, :c:macro:`Py_LT`, " +"and :c:macro:`Py_LE`." msgstr "" msgid "" @@ -1722,11 +1756,11 @@ msgstr "" msgid "" "Intern the argument :c:expr:`*p_unicode` in place. The argument must be the " "address of a pointer variable pointing to a Python Unicode string object. " -"If there is an existing interned string that is the same as :c:expr:" -"`*p_unicode`, it sets :c:expr:`*p_unicode` to it (releasing the reference to " -"the old string object and creating a new :term:`strong reference` to the " -"interned string object), otherwise it leaves :c:expr:`*p_unicode` alone and " -"interns it." +"If there is an existing interned string that is the same " +"as :c:expr:`*p_unicode`, it sets :c:expr:`*p_unicode` to it (releasing the " +"reference to the old string object and creating a new :term:`strong " +"reference` to the interned string object), otherwise it " +"leaves :c:expr:`*p_unicode` alone and interns it." msgstr "" msgid "" @@ -1742,9 +1776,9 @@ msgid "" msgstr "" msgid "" -"Instances of subclasses of :py:class:`str` may not be interned, that is, :c:" -"expr:`PyUnicode_CheckExact(*p_unicode)` must be true. If it is not, then -- " -"as with any other error -- the argument is left unchanged." +"Instances of subclasses of :py:class:`str` may not be interned, that " +"is, :c:expr:`PyUnicode_CheckExact(*p_unicode)` must be true. If it is not, " +"then -- as with any other error -- the argument is left unchanged." msgstr "" msgid "" @@ -1753,8 +1787,9 @@ msgid "" msgstr "" msgid "" -"A combination of :c:func:`PyUnicode_FromString` and :c:func:" -"`PyUnicode_InternInPlace`, meant for statically allocated strings." +"A combination of :c:func:`PyUnicode_FromString` " +"and :c:func:`PyUnicode_InternInPlace`, meant for statically allocated " +"strings." msgstr "" msgid "" @@ -1767,8 +1802,8 @@ msgid "" "Python may keep a reference to the result, or make it :term:`immortal`, " "preventing it from being garbage-collected promptly. For interning an " "unbounded number of different strings, such as ones coming from user input, " -"prefer calling :c:func:`PyUnicode_FromString` and :c:func:" -"`PyUnicode_InternInPlace` directly." +"prefer calling :c:func:`PyUnicode_FromString` " +"and :c:func:`PyUnicode_InternInPlace` directly." msgstr "" msgid "" @@ -1788,8 +1823,8 @@ msgid "PyUnicodeWriter" msgstr "" msgid "" -"The :c:type:`PyUnicodeWriter` API can be used to create a Python :class:" -"`str` object." +"The :c:type:`PyUnicodeWriter` API can be used to create a " +"Python :class:`str` object." msgstr "" msgid "A Unicode writer instance." @@ -1800,6 +1835,11 @@ msgid "" "success, or :c:func:`PyUnicodeWriter_Discard` on error." msgstr "" +msgid "" +"The API is **not thread safe**. To share a writer with multiple threads, a " +"critical section or a lock is needed." +msgstr "" + msgid "Create a Unicode writer instance." msgstr "" @@ -1864,12 +1904,17 @@ msgid "" "``wcslen(str)`` to get the string length." msgstr "" -msgid "Writer the UCS4 string *str* into *writer*." +msgid "Write the UCS4 string *str* into *writer*." msgstr "" msgid "*size* is a number of UCS4 characters." msgstr "" +msgid "" +"All characters must be in range [U+0000; U+10ffff]. If the string contains " +"invalid characters, the behavior is undefined." +msgstr "" + msgid "" "Call :c:func:`PyObject_Str` on *obj* and write the output into *writer*." msgstr "" diff --git a/c-api/utilities.po b/c-api/utilities.po index 97c5cc8..0bdcf84 100644 --- a/c-api/utilities.po +++ b/c-api/utilities.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Utilities" -msgstr "" +msgstr "ਉਪਯੋਗਿਤਾਵਾਂ" msgid "" "The functions in this chapter perform various utility tasks, ranging from " @@ -31,3 +31,6 @@ msgid "" "C, and parsing function arguments and constructing Python values from C " "values." msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਦਿੱਤੇ ਫੰਕਸ਼ਨ ਵੱਖ-ਵੱਖ ਉਪਯੋਗੀ ਕੰਮ ਕਰਦੇ ਹਨ। ਇਨ੍ਹਾਂ ਵਿੱਚ C ਕੋਡ ਨੂੰ ਵੱਖ-ਵੱਖ ਪਲੇਟਫਾਰਮਾਂ " +"'ਤੇ ਵਧੇਰੇ ਪੋਰਟੇਬਲ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਨਾ, C ਤੋਂ Python ਮੋਡੀਊਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ, ਅਤੇ ਫੰਕਸ਼ਨ " +"ਆਰਗੂਮੈਂਟਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਦੇ ਨਾਲ C ਮੁੱਲਾਂ ਤੋਂ Python ਮੁੱਲ ਤਿਆਰ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ।" diff --git a/c-api/veryhigh.po b/c-api/veryhigh.po index 6778418..87da2ab 100644 --- a/c-api/veryhigh.po +++ b/c-api/veryhigh.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,16 +29,16 @@ msgstr "" msgid "" "Several of these functions accept a start symbol from the grammar as a " -"parameter. The available start symbols are :c:data:`Py_eval_input`, :c:data:" -"`Py_file_input`, :c:data:`Py_single_input`, and :c:data:" -"`Py_func_type_input`. These are described following the functions which " -"accept them as parameters." +"parameter. The available start symbols " +"are :c:data:`Py_eval_input`, :c:data:`Py_file_input`, :c:data:`Py_single_input`, " +"and :c:data:`Py_func_type_input`. These are described following the " +"functions which accept them as parameters." msgstr "" msgid "" "Note also that several of these functions take :c:expr:`FILE*` parameters. " -"One particular issue which needs to be handled carefully is that the :c:type:" -"`FILE` structure for different C libraries can be different and " +"One particular issue which needs to be handled carefully is that " +"the :c:type:`FILE` structure for different C libraries can be different and " "incompatible. Under Windows (at least), it is possible for dynamically " "linked extensions to actually use different libraries, so care should be " "taken that :c:expr:`FILE*` parameters are only passed to these functions if " @@ -63,12 +63,12 @@ msgstr "" msgid "" "If *fp* refers to a file associated with an interactive device (console or " -"terminal input or Unix pseudo-terminal), return the value of :c:func:" -"`PyRun_InteractiveLoop`, otherwise return the result of :c:func:" -"`PyRun_SimpleFile`. *filename* is decoded from the filesystem encoding (:" -"func:`sys.getfilesystemencoding`). If *filename* is ``NULL``, this function " -"uses ``\"???\"`` as the filename. If *closeit* is true, the file is closed " -"before ``PyRun_SimpleFileExFlags()`` returns." +"terminal input or Unix pseudo-terminal), return the value " +"of :c:func:`PyRun_InteractiveLoop`, otherwise return the result " +"of :c:func:`PyRun_SimpleFile`. *filename* is decoded from the filesystem " +"encoding (:func:`sys.getfilesystemencoding`). If *filename* is ``NULL``, " +"this function uses ``\"???\"`` as the filename. If *closeit* is true, the " +"file is closed before ``PyRun_SimpleFileExFlags()`` returns." msgstr "" msgid "" @@ -86,8 +86,8 @@ msgstr "" msgid "" "Note that if an otherwise unhandled :exc:`SystemExit` is raised, this " -"function will not return ``-1``, but exit the process, as long as :c:member:" -"`PyConfig.inspect` is zero." +"function will not return ``-1``, but exit the process, as long " +"as :c:member:`PyConfig.inspect` is zero." msgstr "" msgid "" @@ -117,16 +117,16 @@ msgstr "" msgid "" "Read and execute a single statement from a file associated with an " "interactive device according to the *flags* argument. The user will be " -"prompted using ``sys.ps1`` and ``sys.ps2``. *filename* must be a Python :" -"class:`str` object." +"prompted using ``sys.ps1`` and ``sys.ps2``. *filename* must be a " +"Python :class:`str` object." msgstr "" msgid "" "Returns ``0`` when the input was executed successfully, ``-1`` if there was " "an exception, or an error code from the :file:`errcode.h` include file " -"distributed as part of Python if there was a parse error. (Note that :file:" -"`errcode.h` is not included by :file:`Python.h`, so must be included " -"specifically if needed.)" +"distributed as part of Python if there was a parse error. (Note " +"that :file:`errcode.h` is not included by :file:`Python.h`, so must be " +"included specifically if needed.)" msgstr "" msgid "" @@ -135,9 +135,9 @@ msgid "" msgstr "" msgid "" -"Similar to :c:func:`PyRun_InteractiveOneObject`, but *filename* is a :c:expr:" -"`const char*`, which is decoded from the :term:`filesystem encoding and " -"error handler`." +"Similar to :c:func:`PyRun_InteractiveOneObject`, but *filename* is " +"a :c:expr:`const char*`, which is decoded from the :term:`filesystem " +"encoding and error handler`." msgstr "" msgid "" @@ -161,6 +161,9 @@ msgid "" "Python source code." msgstr "" +msgid "The function is called without an :term:`attached thread state`." +msgstr "" + msgid "" "This function is only called from the :ref:`main interpreter `." @@ -168,23 +171,51 @@ msgstr "" msgid "" "Can be set to point to a function with the prototype ``char *func(FILE " -"*stdin, FILE *stdout, char *prompt)``, overriding the default function used " -"to read a single line of input at the interpreter's prompt. The function is " -"expected to output the string *prompt* if it's not ``NULL``, and then read a " -"line of input from the provided standard input file, returning the resulting " -"string. For example, The :mod:`readline` module sets this hook to provide " -"line-editing and tab-completion features." +"*stdin, FILE *stdout, const char *prompt)``, overriding the default function " +"used to read a single line of input at the interpreter's prompt. The " +"function is expected to output the string *prompt* if it's not ``NULL``, and " +"then read a line of input from the provided standard input file, returning " +"the resulting string. For example, the :mod:`readline` module sets this " +"hook to provide line-editing and tab-completion features." +msgstr "" + +msgid "" +"If this pointer is ``NULL``, :c:func:`PyOS_Readline` sets it to the default " +"implementation, :c:func:`PyOS_Readline`, before reading input." +msgstr "" + +msgid "" +"The returned string must be null-terminated and include the trailing " +"newline, if one was read. Return an empty string if the end of the file is " +"reached before any characters are read. Return ``NULL`` on failure or " +"interruption; a Python exception may be set." msgstr "" msgid "" -"The result must be a string allocated by :c:func:`PyMem_RawMalloc` or :c:" -"func:`PyMem_RawRealloc`, or ``NULL`` if an error occurred." +"A non-``NULL`` result must be a string allocated " +"by :c:func:`PyMem_RawMalloc` or :c:func:`PyMem_RawRealloc`." msgstr "" msgid "" -"The result must be allocated by :c:func:`PyMem_RawMalloc` or :c:func:" -"`PyMem_RawRealloc`, instead of being allocated by :c:func:`PyMem_Malloc` or :" -"c:func:`PyMem_Realloc`." +"The result must be allocated by :c:func:`PyMem_RawMalloc` " +"or :c:func:`PyMem_RawRealloc`, instead of being allocated " +"by :c:func:`PyMem_Malloc` or :c:func:`PyMem_Realloc`." +msgstr "" + +msgid "" +"Display *prompt*, if it is not ``NULL``, and read a line from *sys_stdin*. " +"If both streams are terminals and the call is made from the :ref:`main " +"interpreter `, " +"use :c:var:`PyOS_ReadlineFunctionPointer`. Otherwise, use the default " +"implementation, which flushes *sys_stdout* and writes *prompt* to the C " +"standard error stream." +msgstr "" + +msgid "" +"The returned string follows the contract " +"of :c:var:`PyOS_ReadlineFunctionPointer`, but the caller must free it " +"with :c:func:`PyMem_Free`. Return ``NULL`` on failure or interruption; a " +"Python exception may be set." msgstr "" msgid "" @@ -224,8 +255,8 @@ msgid "" "Similar to :c:func:`PyRun_StringFlags`, but the Python source code is read " "from *fp* instead of an in-memory string. *filename* should be the name of " "the file, it is decoded from the :term:`filesystem encoding and error " -"handler`. If *closeit* is true, the file is closed before :c:func:" -"`PyRun_FileExFlags` returns." +"handler`. If *closeit* is true, the file is closed " +"before :c:func:`PyRun_FileExFlags` returns." msgstr "" msgid "" @@ -276,8 +307,8 @@ msgid "" msgstr "" msgid "" -"Evaluate an execution frame. This is a simplified interface to :c:func:" -"`PyEval_EvalFrameEx`, for backward compatibility." +"Evaluate an execution frame. This is a simplified interface " +"to :c:func:`PyEval_EvalFrameEx`, for backward compatibility." msgstr "" msgid "" @@ -307,9 +338,9 @@ msgid "" msgstr "" msgid "" -"Whenever ``PyCompilerFlags *flags`` is ``NULL``, :c:member:`~PyCompilerFlags." -"cf_flags` is treated as equal to ``0``, and any modification due to ``from " -"__future__ import`` is discarded." +"Whenever ``PyCompilerFlags *flags`` is " +"``NULL``, :c:member:`~PyCompilerFlags.cf_flags` is treated as equal to " +"``0``, and any modification due to ``from __future__ import`` is discarded." msgstr "" msgid "Compiler flags." @@ -332,8 +363,9 @@ msgid "The available compiler flags are accessible as macros:" msgstr "" msgid "" -"See :ref:`compiler flags ` in documentation of the :py:" -"mod:`!ast` Python module, which exports these constants under the same names." +"See :ref:`compiler flags ` in documentation of " +"the :py:mod:`!ast` Python module, which exports these constants under the " +"same names." msgstr "" msgid "Low-level flags" @@ -356,19 +388,19 @@ msgid "" "With this flag set, when compilation fails because the source text ends " "where more input is expected, for example in the middle of an indented block " "or an unterminated string literal, the error raised is the undocumented " -"``_IncompleteInputError``, a subclass of :exc:`SyntaxError`. The :mod:" -"`codeop` module sets this flag, together with :c:macro:" -"`PyCF_DONT_IMPLY_DEDENT`, to tell input that is incomplete apart from input " -"with a real syntax error, so that interactive interpreters know when to " -"prompt for another line instead of reporting an error." +"``_IncompleteInputError``, a subclass of :exc:`SyntaxError`. " +"The :mod:`codeop` module sets this flag, together " +"with :c:macro:`PyCF_DONT_IMPLY_DEDENT`, to tell input that is incomplete " +"apart from input with a real syntax error, so that interactive interpreters " +"know when to prompt for another line instead of reporting an error." msgstr "" msgid "" "By default, when compiling with the :c:var:`Py_single_input` start symbol, " "reaching the end of the source text implicitly closes any open indented " "blocks. With this flag set, open blocks are only closed if the last line of " -"the source ends with a newline; otherwise, compilation fails with a :exc:" -"`SyntaxError`:" +"the source ends with a newline; otherwise, compilation fails with " +"a :exc:`SyntaxError`:" msgstr "" msgid "" @@ -424,16 +456,16 @@ msgid "" msgstr "" msgid "" -"Mark the source text as known to be UTF-8 encoded. The :func:`compile`, :" -"func:`eval` and :func:`exec` built-in functions set this flag, but it " -"currently has no effect." +"Mark the source text as known to be UTF-8 encoded. " +"The :func:`compile`, :func:`eval` and :func:`exec` built-in functions set " +"this flag, but it currently has no effect." msgstr "" msgid "" "The \"``PyCF``\" flags above can be combined with \"``CO_FUTURE``\" flags " "such as :c:macro:`CO_FUTURE_ANNOTATIONS` to enable features normally " -"selectable using :ref:`future statements `. See :ref:" -"`c_codeobject_flags` for a complete list." +"selectable using :ref:`future statements `. " +"See :ref:`c_codeobject_flags` for a complete list." msgstr "" msgid "The following masks combine several flags:" @@ -483,9 +515,9 @@ msgid "" msgstr "" msgid "" -"The start symbol from the Python grammar for a function type; for use with :" -"c:func:`Py_CompileString`. This is used to parse \"signature type comments\" " -"from :pep:`484`." +"The start symbol from the Python grammar for a function type; for use " +"with :c:func:`Py_CompileString`. This is used to parse \"signature type " +"comments\" from :pep:`484`." msgstr "" msgid "This requires the :c:macro:`PyCF_ONLY_AST` flag to be set." diff --git a/c-api/weakref.po b/c-api/weakref.po index 9282169..ee7d8df 100644 --- a/c-api/weakref.po +++ b/c-api/weakref.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -107,6 +107,16 @@ msgid "" "attempted." msgstr "" +msgid "" +"Return a pointer to an internal linked list of weak references to *object*. " +"*object* must support weak references and must not be ``NULL``." +msgstr "" + +msgid "" +"This function is intended for internal use only. Do not access or modify the " +"weak reference list through the returned pointer." +msgstr "" + msgid "Clears the weakrefs for *object* without calling the callbacks." msgstr "" @@ -119,6 +129,7 @@ msgid "" msgstr "" msgid "" -"In most circumstances, it's more appropriate to use :c:func:" -"`PyObject_ClearWeakRefs` to clear weakrefs instead of this function." +"In most circumstances, it's more appropriate to " +"use :c:func:`PyObject_ClearWeakRefs` to clear weakrefs instead of this " +"function." msgstr "" diff --git a/contents.po b/contents.po index 3bce697..dfb5490 100644 --- a/contents.po +++ b/contents.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,4 +23,4 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Python Documentation contents" -msgstr "" +msgstr "Python ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਦੀ ਸਮੱਗਰੀ" diff --git a/copyright.po b/copyright.po index a586c97..a91691f 100644 --- a/copyright.po +++ b/copyright.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/deprecations/c-api-pending-removal-in-3.14.po b/deprecations/c-api-pending-removal-in-3.14.po index 9241f76..664cca4 100644 --- a/deprecations/c-api-pending-removal-in-3.14.po +++ b/deprecations/c-api-pending-removal-in-3.14.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/deprecations/c-api-pending-removal-in-3.15.po b/deprecations/c-api-pending-removal-in-3.15.po index 75cda31..cd4fae3 100644 --- a/deprecations/c-api-pending-removal-in-3.15.po +++ b/deprecations/c-api-pending-removal-in-3.15.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,15 +22,15 @@ msgid "Pending removal in Python 3.15" msgstr "" msgid "" -"The :c:func:`!PyImport_ImportModuleNoBlock`: Use :c:func:" -"`PyImport_ImportModule` instead." +"The :c:func:`!PyImport_ImportModuleNoBlock`: " +"Use :c:func:`PyImport_ImportModule` instead." msgstr "" msgid "" -":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: Use :c:" -"func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project `__ can be used to get :c:func:" -"`PyWeakref_GetRef` on Python 3.12 and older." +":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: " +"Use :c:func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project " +"`__ can be used to " +"get :c:func:`PyWeakref_GetRef` on Python 3.12 and older." msgstr "" msgid "" @@ -63,16 +63,17 @@ msgstr "" msgid "" ":c:func:`!Py_GetPrefix`: Use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." +"` (:data:`sys.base_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) " +"if :ref:`virtual environments ` need to be handled." msgstr "" msgid "" ":c:func:`!Py_GetExecPrefix`: Use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." +"` (:data:`sys.base_exec_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"exec_prefix\") ` " +"(:data:`sys.exec_prefix`) if :ref:`virtual environments ` need to " +"be handled." msgstr "" msgid "" @@ -119,56 +120,56 @@ msgid "" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` instead." msgstr "" msgid "Global configuration variables:" msgstr "" msgid "" -":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` or :c:func:" -"`PyConfig_Get(\"parser_debug\") ` instead." +":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` " +"or :c:func:`PyConfig_Get(\"parser_debug\") ` instead." msgstr "" msgid "" -":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` or :c:func:" -"`PyConfig_Get(\"verbose\") ` instead." +":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` " +"or :c:func:`PyConfig_Get(\"verbose\") ` instead." msgstr "" msgid "" -":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` or :c:func:" -"`PyConfig_Get(\"quiet\") ` instead." +":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` " +"or :c:func:`PyConfig_Get(\"quiet\") ` instead." msgstr "" msgid "" -":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` or :c:func:" -"`PyConfig_Get(\"interactive\") ` instead." +":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` " +"or :c:func:`PyConfig_Get(\"interactive\") ` instead." msgstr "" msgid "" -":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` or :c:func:" -"`PyConfig_Get(\"inspect\") ` instead." +":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` " +"or :c:func:`PyConfig_Get(\"inspect\") ` instead." msgstr "" msgid "" -":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` or :c:" -"func:`PyConfig_Get(\"optimization_level\") ` instead." +":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` " +"or :c:func:`PyConfig_Get(\"optimization_level\") ` instead." msgstr "" msgid "" -":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` or :c:func:" -"`PyConfig_Get(\"site_import\") ` instead." +":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` " +"or :c:func:`PyConfig_Get(\"site_import\") ` instead." msgstr "" msgid "" -":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` or :c:" -"func:`PyConfig_Get(\"bytes_warning\") ` instead." +":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` " +"or :c:func:`PyConfig_Get(\"bytes_warning\") ` instead." msgstr "" msgid "" -":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` or :c:" -"func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." +":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` " +"or :c:func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." msgstr "" msgid "" @@ -182,14 +183,14 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_NoUserSiteDirectory`: Use :c:member:`PyConfig." -"user_site_directory` or :c:func:`PyConfig_Get(\"user_site_directory\") " -"` instead." +":c:var:`Py_NoUserSiteDirectory`: " +"Use :c:member:`PyConfig.user_site_directory` " +"or :c:func:`PyConfig_Get(\"user_site_directory\") ` instead." msgstr "" msgid "" -":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` or :" -"c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." +":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` " +"or :c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." msgstr "" msgid "" @@ -199,43 +200,44 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` or :c:func:" -"`PyConfig_Get(\"isolated\") ` instead." +":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` " +"or :c:func:`PyConfig_Get(\"isolated\") ` instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: Use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` or :c:func:" -"`PyConfig_Get(\"legacy_windows_fs_encoding\") ` instead." +":c:var:`Py_LegacyWindowsFSEncodingFlag`: " +"Use :c:member:`PyPreConfig.legacy_windows_fs_encoding` " +"or :c:func:`PyConfig_Get(\"legacy_windows_fs_encoding\") ` " +"instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: Use :c:member:`PyConfig." -"legacy_windows_stdio` or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") " -"` instead." +":c:var:`Py_LegacyWindowsStdioFlag`: " +"Use :c:member:`PyConfig.legacy_windows_stdio` " +"or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") ` instead." msgstr "" msgid "" ":c:var:`!Py_FileSystemDefaultEncoding`, :c:var:`!" -"Py_HasFileSystemDefaultEncoding`: Use :c:member:`PyConfig." -"filesystem_encoding` or :c:func:`PyConfig_Get(\"filesystem_encoding\") " -"` instead." +"Py_HasFileSystemDefaultEncoding`: " +"Use :c:member:`PyConfig.filesystem_encoding` " +"or :c:func:`PyConfig_Get(\"filesystem_encoding\") ` instead." msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: Use :c:member:`PyConfig." -"filesystem_errors` or :c:func:`PyConfig_Get(\"filesystem_errors\") " -"` instead." +":c:var:`!Py_FileSystemDefaultEncodeErrors`: " +"Use :c:member:`PyConfig.filesystem_errors` " +"or :c:func:`PyConfig_Get(\"filesystem_errors\") ` instead." msgstr "" msgid "" -":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` or :c:func:" -"`PyConfig_Get(\"utf8_mode\") ` instead. (see :c:func:" -"`Py_PreInitialize`)" +":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` " +"or :c:func:`PyConfig_Get(\"utf8_mode\") ` instead. " +"(see :c:func:`Py_PreInitialize`)" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can be used to " -"get these options at runtime." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can " +"be used to get these options at runtime." msgstr "" diff --git a/deprecations/c-api-pending-removal-in-3.16.po b/deprecations/c-api-pending-removal-in-3.16.po index 0cfdd94..0c5b317 100644 --- a/deprecations/c-api-pending-removal-in-3.16.po +++ b/deprecations/c-api-pending-removal-in-3.16.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/deprecations/c-api-pending-removal-in-3.18.po b/deprecations/c-api-pending-removal-in-3.18.po deleted file mode 100644 index fbe29e7..0000000 --- a/deprecations/c-api-pending-removal-in-3.18.po +++ /dev/null @@ -1,120 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Pending removal in Python 3.18" -msgstr "" - -msgid "" -"The following private functions are deprecated and planned for removal in " -"Python 3.18:" -msgstr "" - -msgid ":c:func:`!_PyBytes_Join`: use :c:func:`PyBytes_Join`." -msgstr "" - -msgid "" -":c:func:`!_PyDict_GetItemStringWithError`: use :c:func:" -"`PyDict_GetItemStringRef`." -msgstr "" - -msgid ":c:func:`!_PyDict_Pop()`: use :c:func:`PyDict_Pop`." -msgstr "" - -msgid ":c:func:`!_PyLong_Sign()`: use :c:func:`PyLong_GetSign`." -msgstr "" - -msgid "" -":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: use :c:func:" -"`PyLongWriter_Create`." -msgstr "" - -msgid "" -":c:func:`!_PyThreadState_UncheckedGet`: use :c:func:" -"`PyThreadState_GetUnchecked`." -msgstr "" - -msgid ":c:func:`!_PyUnicode_AsString`: use :c:func:`PyUnicode_AsUTF8`." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Init`: replace ``_PyUnicodeWriter_Init(&writer)`` " -"with :c:func:`writer = PyUnicodeWriter_Create(0) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Finish`: replace " -"``_PyUnicodeWriter_Finish(&writer)`` with :c:func:" -"`PyUnicodeWriter_Finish(writer) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Dealloc`: replace " -"``_PyUnicodeWriter_Dealloc(&writer)`` with :c:func:" -"`PyUnicodeWriter_Discard(writer) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteChar`: replace " -"``_PyUnicodeWriter_WriteChar(&writer, ch)`` with :c:func:" -"`PyUnicodeWriter_WriteChar(writer, ch) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteStr`: replace " -"``_PyUnicodeWriter_WriteStr(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteStr(writer, str) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteSubstring`: replace " -"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` with :c:func:" -"`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " -"`." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteASCIIString`: replace " -"``_PyUnicodeWriter_WriteASCIIString(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteASCII(writer, str) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteLatin1String`: replace " -"``_PyUnicodeWriter_WriteLatin1String(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." -msgstr "" - -msgid ":c:func:`!_PyUnicodeWriter_Prepare`: (no replacement)." -msgstr "" - -msgid ":c:func:`!_PyUnicodeWriter_PrepareKind`: (no replacement)." -msgstr "" - -msgid ":c:func:`!_Py_HashPointer`: use :c:func:`Py_HashPointer`." -msgstr "" - -msgid ":c:func:`!_Py_fopen_obj`: use :c:func:`Py_fopen`." -msgstr "" - -msgid "" -"The `pythoncapi-compat project `__ can be used to get these new public functions on Python 3.13 and older. " -"(Contributed by Victor Stinner in :gh:`128863`.)" -msgstr "" diff --git a/deprecations/c-api-pending-removal-in-3.19.po b/deprecations/c-api-pending-removal-in-3.19.po deleted file mode 100644 index da0c751..0000000 --- a/deprecations/c-api-pending-removal-in-3.19.po +++ /dev/null @@ -1,29 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Pending removal in Python 3.19" -msgstr "" - -msgid ":pep:`456` embedders support for the string hashing scheme definition." -msgstr "" diff --git a/deprecations/c-api-pending-removal-in-3.20.po b/deprecations/c-api-pending-removal-in-3.20.po deleted file mode 100644 index c75d740..0000000 --- a/deprecations/c-api-pending-removal-in-3.20.po +++ /dev/null @@ -1,43 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Pending removal in Python 3.20" -msgstr "" - -msgid "" -":c:func:`!_PyObject_CallMethodId`, :c:func:`!_PyObject_GetAttrId` and :c:" -"func:`!_PyUnicode_FromId` are deprecated since 3.15 and will be removed in " -"3.20. Instead, use :c:func:`PyUnicode_InternFromString()` and cache the " -"result in the module state, then call :c:func:`PyObject_CallMethod` or :c:" -"func:`PyObject_GetAttr`. (Contributed by Victor Stinner in :gh:`141049`.)" -msgstr "" - -msgid "" -"The ``cval`` field in :c:type:`PyComplexObject` (:gh:`128813`). Use :c:func:" -"`PyComplex_AsCComplex` and :c:func:`PyComplex_FromCComplex` to convert a " -"Python complex number to/from the C :c:type:`Py_complex` representation." -msgstr "" - -msgid "Macros :c:macro:`!Py_MATH_PIl` and :c:macro:`!Py_MATH_El`." -msgstr "" diff --git a/deprecations/c-api-pending-removal-in-future.po b/deprecations/c-api-pending-removal-in-future.po index 3ccb693..4b294a5 100644 --- a/deprecations/c-api-pending-removal-in-future.po +++ b/deprecations/c-api-pending-removal-in-future.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -50,8 +50,8 @@ msgid ":c:func:`PyOS_AfterFork`: Use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" msgid "" -":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` instead." +":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices` instead." msgstr "" msgid ":c:func:`PyUnicode_READY`: Unneeded since Python 3.12" diff --git a/deprecations/index.po b/deprecations/index.po index 205e60f..64cd060 100644 --- a/deprecations/index.po +++ b/deprecations/index.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Lakshdeep Kashyap, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,10 +33,10 @@ msgid "The import system:" msgstr "" msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." +"Setting :attr:`~module.__loader__` on a module while failing to " +"set :attr:`__spec__.loader ` is " +"deprecated. In Python 3.16, :attr:`!__loader__` will cease to be set or " +"taken into consideration by the import system or the standard library." msgstr "" msgid ":mod:`array`:" @@ -132,10 +133,10 @@ msgid ":mod:`mimetypes`:" msgstr "" msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" +"Valid extensions start with a '.' or are empty " +"for :meth:`mimetypes.MimeTypes.add_type`. Undotted extensions are deprecated " +"and will raise a :exc:`ValueError` in Python 3.16. (Contributed by Hugo van " +"Kemenade in :gh:`75223`.)" msgstr "" msgid ":mod:`shutil`:" @@ -237,9 +238,9 @@ msgstr "" msgid "" "The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" +"Use :mod:`profiling.tracing` instead, which provides a compatible API. " +"See :pep:`799` for details. (Contributed by Pablo Galindo and László Kiss " +"Kollár in :gh:`138122`.)" msgstr "" msgid ":mod:`webbrowser`:" @@ -251,7 +252,7 @@ msgid "" msgstr "" msgid ":mod:`typing`:" -msgstr "" +msgstr ":mod:`typing`:" msgid "" "Before Python 3.14, old-style unions were implemented using the private " @@ -272,10 +273,11 @@ msgstr "" msgid "" "The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" +"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` " +"and :meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for " +"removal in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` " +"and :meth:`!trace_info` instead. (Contributed by Serhiy Storchaka " +"in :gh:`120220`.)" msgstr "" msgid "Pending removal in Python 3.18" @@ -297,41 +299,50 @@ msgid "" msgstr "" msgid "Deprecations defined by :pep:`829`:" -msgstr "" +msgstr ":pep:`829` ਵੱਲੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀਆਂ ਗਈਆਂ ਡਿਪ੍ਰੀਕੇਸ਼ਨਾਂ:" msgid "``import`` lines in :file:`{name}.pth` files are silently ignored." msgstr "" msgid "(Contributed by Barry Warsaw in :gh:`148641`.)" -msgstr "" +msgstr "(ਬੈਰੀ ਵਾਰਸਾ ਦੁਆਰਾ ਯੋਗਦਾਨ, :gh:`148641` ।)" msgid "Pending removal in Python 3.19" -msgstr "" +msgstr "ਪਾਈਥਨ 3.19 ਵਿੱਚ ਹਟਾਏ ਜਾਣ ਦੀ ਉਡੀਕ ਵਿੱਚ" msgid ":mod:`ctypes`:" -msgstr "" +msgstr ":mod:`ctypes`:" msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." +"Implicitly switching to the MSVC-compatible struct layout by " +"setting :attr:`~ctypes.Structure._pack_` but " +"not :attr:`~ctypes.Structure._layout_` on non-Windows platforms." msgstr "" +"ਗੈਰ-ਵਿੰਡੋਜ਼ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਸਿਰਫ਼ :attr:`~ctypes.Structure._pack_` ਨੂੰ ਸੈੱਟ ਕਰਕੇ, " +"ਪਰ :attr:`~ctypes.Structure._layout_` ਨੂੰ ਨਹੀਂ, ਅਸਪਸ਼ਟ ਤੌਰ 'ਤੇ MSVC-ਅਨੁਕੂਲ struct " +"ਲੇਆਉਟ ਵੱਲ ਸਵਿੱਚ ਕਰਨਾ।" msgid ":mod:`hashlib`:" -msgstr "" +msgstr ":mod:`hashlib`:" msgid "" "In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." +"hash-named constructors such as :func:`~hashlib.md5` " +"and :func:`~hashlib.sha256`, their optional initial data parameter could " +"also be passed a keyword argument named ``data=`` or ``string=`` in " +"various :mod:`!hashlib` implementations." msgstr "" +":func:`~hashlib.new` ਜਾਂ :func:`~hashlib.md5` ਅਤੇ :func:`~hashlib.sha256` ਵਰਗੇ " +"ਹੈਸ਼ ਫੰਕਸ਼ਨ ਕੰਸਟਰਕਟਰਾਂ ਵਿੱਚ, ਉਹਨਾਂ ਦੇ ਵਿਕਲਪਿਕ initial data ਪੈਰਾਮੀਟਰ ਨੂੰ ਵੱਖ-ਵੱਖ :mod:`!" +"hashlib` ਇੰਪਲੀਮੇਂਟੇਸ਼ਨਾਂ ਵਿੱਚ ``data=`` ਜਾਂ ``string=`` ਨਾਮਕ ਕੀਵਰਡ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਵੀ ਭੇਜਿਆ " +"ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "Support for the ``string`` keyword argument name is now deprecated and " "slated for removal in Python 3.19." msgstr "" +"``string`` ਕੀਵਰਡ ਆਰਗੂਮੈਂਟ ਨਾਮ ਲਈ ਸਹਾਇਤਾ ਹੁਣ ਡਿਪ੍ਰੀਕੇਟ ਕੀਤੀ ਗਈ ਹੈ ਅਤੇ Python 3.19 ਵਿੱਚ " +"ਇਸਨੂੰ ਹਟਾਉਣ ਦੀ ਯੋਜਨਾ ਹੈ।" msgid "" "Before Python 3.13, the ``string`` keyword parameter was not correctly " @@ -341,143 +352,165 @@ msgid "" msgstr "" msgid ":mod:`http.cookies`:" -msgstr "" +msgstr ":mod:`http.cookies`:" msgid "" ":meth:`http.cookies.Morsel.js_output` is deprecated and will be removed in " "Python 3.19." msgstr "" +":meth:`http.cookies.Morsel.js_output` ਪੁਰਾਣਾ ਹੋ ਚੁੱਕਾ ਹੈ ਅਤੇ Python 3.19 ਵਿੱਚ ਹਟਾ " +"ਦਿੱਤਾ ਜਾਵੇਗਾ।" msgid "" ":meth:`http.cookies.BaseCookie.js_output` is deprecated and will be removed " "in Python 3.19." msgstr "" +":meth:`http.cookies.BaseCookie.js_output` ਪੁਰਾਣਾ ਹੋ ਚੁੱਕਾ ਹੈ ਅਤੇ Python 3.19 ਵਿੱਚ " +"ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ।" msgid ":mod:`imaplib`:" -msgstr "" +msgstr ":mod:`imaplib`:" msgid "" "Altering :attr:`IMAP4.file ` is now deprecated and " "slated for removal in Python 3.19. This property is now unused and changing " "its value does not automatically close the current file." msgstr "" +"ਬਦਲਣਾ :attr:`IMAP4.file ` ਹੁਣ ਬੇਕਾਰ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ ਅਤੇ " +"Python 3.19 ਵਿੱਚ ਹਟਾਉਣ ਲਈ ਨਿਯਤ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ ਪ੍ਰਾਪਰਟੀ ਹੁਣ ਵਰਤੀ ਨਹੀਂ ਜਾਂਦੀ ਅਤੇ " +"ਇਸਦੀ ਕੀਮਤ ਬਦਲਣ ਨਾਲ ਮੌਜੂਦਾ ਫਾਈਲ ਆਪਣੇ ਆਪ ਬੰਦ ਨਹੀਂ ਹੁੰਦੀ।" msgid "" "Before Python 3.14, this property was used to implement the corresponding " "``read()`` and ``readline()`` methods for :class:`~imaplib.IMAP4` but this " "is no longer the case since then." msgstr "" +"Python 3.14 ਤੋਂ ਪਹਿਲਾਂ, ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ :class:`~imaplib.IMAP4` ਲਈ ਸੰਬੰਧਤ " +"``read()`` ਅਤੇ ``readline()`` ਵਿਧੀਆਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਸੀ, ਪਰ ਹੁਣ ਇਹ ਸਥਿਤੀ " +"ਨਹੀਂ ਰਹੀ।" msgid "Pending removal in Python 3.20" -msgstr "" +msgstr "Python 3.20 ਵਿੱਚ ਹਟਾਇਆ ਜਾਣਾ ਬਾਕੀ" msgid "" "Calling the ``__new__()`` method of :class:`struct.Struct` without the " "*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." +"Calling :meth:`~object.__init__` method on " +"initialized :class:`~struct.Struct` objects is deprecated and will be " +"removed in Python 3.20." msgstr "" +":class:`struct.Struct` ਦੀ ``__new__()`` ਵਿਧੀ ਨੂੰ *format* ਆਰਗੂਮੈਂਟ ਦੇ ਬਿਨਾਂ ਕਾਲ " +"ਕਰਨਾ ਡਿਪ੍ਰੀਕੇਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ Python 3.20 ਵਿੱਚ ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ। " +"initialized :class:`~struct.Struct` ਆਬਜੈਕਟਾਂ 'ਤੇ :meth:`~object.__init__` ਵਿਧੀ " +"ਨੂੰ ਕਾਲ ਕਰਨਾ ਡਿਪ੍ਰੀਕੇਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ Python 3.20 ਵਿੱਚ ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ।" msgid "" "(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)" -msgstr "" +msgstr "(ਸੇਰਗੇ ਬੀ ਕਿਰਪਿਚੇਵ ਅਤੇ ਸੇਰਹੀ ਸਟੋਰਚਾਕਾ ਵੱਲੋਂ :gh:`143715` ਵਿੱਚ ਯੋਗਦਾਨ ਪਾਇਆ ਗਿਆ।)" msgid "" "The ``__version__``, ``version`` and ``VERSION`` attributes have been " "deprecated in these standard library modules and will be removed in Python " "3.20. Use :py:data:`sys.version_info` instead." msgstr "" +"``__version__``, ``version`` ਅਤੇ ``VERSION`` ਗੁਣ ਇਨ੍ਹਾਂ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਮੋਡਿਊਲਾਂ ਵਿੱਚ " +"ਬੇਕਾਰ ਕਰ ਦਿੱਤੇ ਗਏ ਹਨ ਅਤੇ Python 3.20 ਵਿੱਚ ਹਟਾ ਦਿੱਤੇ ਜਾਣਗੇ। ਇਸ ਦੀ " +"ਥਾਂ :py:data:`sys.version_info` ਵਰਤੋ।" msgid ":mod:`argparse`" -msgstr "" +msgstr ":mod:`argparse`" msgid ":mod:`csv`" -msgstr "" +msgstr ":mod:`csv`" msgid ":mod:`ctypes`" -msgstr "" +msgstr ":mod:`ctypes`" msgid ":mod:`!ctypes.macholib`" -msgstr "" +msgstr ":mod:`!ctypes.macholib`" msgid ":mod:`decimal` (use :data:`decimal.SPEC_VERSION` instead)" -msgstr "" +msgstr ":mod:`decimal` (ਇਸ ਦੀ ਬਜਾਏ :data:`decimal.SPEC_VERSION` ਵਰਤੋ)" msgid ":mod:`http.server`" -msgstr "" +msgstr ":mod:`http.server`" msgid ":mod:`imaplib`" -msgstr "" +msgstr ":mod:`imaplib`" msgid ":mod:`ipaddress`" -msgstr "" +msgstr ":mod:`ipaddress`" msgid ":mod:`json`" -msgstr "" +msgstr ":mod:`json`" msgid ":mod:`logging` (``__date__`` also deprecated)" msgstr "" msgid ":mod:`optparse`" -msgstr "" +msgstr ":mod:`optparse`" msgid ":mod:`pickle`" -msgstr "" +msgstr ":mod:`pickle`" msgid ":mod:`platform`" -msgstr "" +msgstr ":mod:`platform`" msgid ":mod:`re`" -msgstr "" +msgstr ":mod:`re`" msgid ":mod:`socketserver`" -msgstr "" +msgstr ":mod:`socketserver`" msgid ":mod:`tabnanny`" -msgstr "" +msgstr ":mod:`tabnanny`" msgid ":mod:`tarfile`" -msgstr "" +msgstr ":mod:`tarfile`" msgid ":mod:`tkinter.font`" -msgstr "" +msgstr ":mod:`tkinter.font`" msgid ":mod:`tkinter.ttk`" -msgstr "" +msgstr ":mod:`tkinter.ttk`" msgid ":mod:`wsgiref.simple_server`" -msgstr "" +msgstr ":mod:`wsgiref.simple_server`" msgid ":mod:`xml.etree.ElementTree`" -msgstr "" +msgstr ":mod:`xml.etree.ElementTree`" msgid ":mod:`!xml.sax.expatreader`" -msgstr "" +msgstr ":mod:`!xml.sax.expatreader`" msgid ":mod:`xml.sax.handler`" -msgstr "" +msgstr ":mod:`xml.sax.handler`" msgid ":mod:`zlib`" -msgstr "" +msgstr ":mod:`zlib`" msgid "(Contributed by Hugo van Kemenade and Stan Ulbrych in :gh:`76007`.)" -msgstr "" +msgstr "(ਹਿਊਗੋ ਵੈਨ ਕੇਮੇਨਾਡੇ ਅਤੇ ਸਟੈਨ ਉਲਬ੍ਰਿਚ ਦੁਆਰਾ ਯੋਗਦਾਨ ਪਾਇਆ ਗਿਆ, :gh:`76007` ਵਿੱਚ।)" msgid "" "Warnings are produced for ``import`` lines found in :file:`{name}.pth` files." msgstr "" +":file:`{name}.pth` ਫਾਈਲਾਂ ਵਿੱਚ ਮਿਲਣ ਵਾਲੀਆਂ ``import`` ਲਾਈਨਾਂ ਲਈ ਚੇਤਾਵਨੀਆਂ ਜਾਰੀ " +"ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।" msgid "" ":file:`{name}.pth` files are no longer decoded in the locale encoding by " "default. They **MUST** be encoded in ``utf-8-sig``." msgstr "" +":file:`{name}.pth` ਫਾਈਲਾਂ ਹੁਣ ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਲੋਕੇਲ ਇੰਕੋਡਿੰਗ ਵਿੱਚ ਡੀਕੋਡ ਨਹੀਂ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ। " +"ਉਹਨਾਂ ਨੂੰ **ਜ਼ਰੂਰ** ``utf-8-sig`` ਵਿੱਚ ਇੰਕੋਡ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid ":mod:`ast`:" msgstr "" msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." +"Creating instances of abstract AST nodes (such as :class:`ast.AST` " +"or :class:`!ast.expr`) is deprecated and will raise an error in Python 3.20." msgstr "" msgid "" @@ -506,8 +539,8 @@ msgid "" msgstr "" msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." +"Passing the undocumented keyword argument *prefix_chars* " +"to :meth:`~argparse.ArgumentParser.add_argument_group` is now deprecated." msgstr "" msgid "The :class:`argparse.FileType` type converter is deprecated." @@ -524,10 +557,10 @@ msgid "" "for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " "ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " "``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" +"if the numeric literal is immediately followed by one of " +"keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :keyword:`is` " +"and :keyword:`or`. In a future release it will be changed to a syntax " +"error. (:gh:`87999`)" msgstr "" msgid "" @@ -537,33 +570,34 @@ msgid "" msgstr "" msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." +"Support for ``__float__()`` method returning a strict subclass " +"of :class:`float`: these methods will be required to return an instance " +"of :class:`float`." msgstr "" msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." +"Support for ``__complex__()`` method returning a strict subclass " +"of :class:`complex`: these methods will be required to return an instance " +"of :class:`complex`." msgstr "" msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" +"Passing a complex number as the *real* or *imag* argument in " +"the :func:`complex` constructor is now deprecated; it should only be passed " +"as a single positional argument. (Contributed by Serhiy Storchaka " +"in :gh:`109218`.)" msgstr "" msgid "" ":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" +"are deprecated and replaced by :data:`calendar.JANUARY` " +"and :data:`calendar.FEBRUARY`. (Contributed by Prince Roshan " +"in :gh:`103636`.)" msgstr "" msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" +":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. " +"(:gh:`133038`)" msgstr "" msgid "" @@ -572,13 +606,13 @@ msgid "" msgstr "" msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." +":meth:`~datetime.datetime.utcnow`: use " +"``datetime.datetime.now(tz=datetime.UTC)``." msgstr "" msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." +":meth:`~datetime.datetime.utcfromtimestamp`: use " +"``datetime.datetime.fromtimestamp(timestamp, tz=datetime.UTC)``." msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." @@ -616,12 +650,13 @@ msgid "" msgstr "" msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." +":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, " +"use :func:`os.path.commonpath` for path prefixes. " +"The :func:`os.path.commonprefix` function is being deprecated due to having " +"a misleading name and module. The function is not safe to use for path " +"prefixes despite being included in a module about path manipulation, meaning " +"it is easy to accidentally introduce path traversal vulnerabilities into " +"Python programs by using this function." msgstr "" msgid "" @@ -649,8 +684,8 @@ msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." +":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` " +"and :meth:`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" msgid "``ssl.OP_NO_SSL*`` options" @@ -687,21 +722,21 @@ msgid ":mod:`threading` methods:" msgstr "" msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." +":meth:`!threading.Condition.notifyAll`: " +"use :meth:`~threading.Condition.notify_all`." msgstr "" msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." +":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: " +"use :attr:`threading.Thread.daemon` attribute." msgstr "" msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." +":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: " +"use :attr:`threading.Thread.name` attribute." msgstr "" msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." @@ -769,15 +804,15 @@ msgid "" msgstr "" msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." +":mod:`xml.etree.ElementTree`: Testing the truth value of " +"an :class:`~xml.etree.ElementTree.Element` is deprecated. In a future " +"release it will always return ``True``. Prefer explicit ``len(elem)`` or " +"``elem is not None`` tests instead." msgstr "" msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." +":func:`sys._clear_type_cache` is deprecated: " +"use :func:`sys._clear_internal_caches` instead." msgstr "" msgid "Soft deprecations" @@ -788,12 +823,13 @@ msgstr "" msgid "" ":func:`re.match` and :meth:`re.Pattern.match` are now :term:`soft " -"deprecated` in favor of the new :func:`re.prefixmatch` and :meth:`re.Pattern." -"prefixmatch` APIs, which have been added as alternate, more explicit names. " -"These are intended to be used to alleviate confusion around what *match* " -"means by following the Zen of Python's *\"Explicit is better than " -"implicit\"* mantra. Most other language regular expression libraries use an " -"API named *match* to mean what Python has always called *search*." +"deprecated` in favor of the new :func:`re.prefixmatch` " +"and :meth:`re.Pattern.prefixmatch` APIs, which have been added as alternate, " +"more explicit names. These are intended to be used to alleviate confusion " +"around what *match* means by following the Zen of Python's *\"Explicit is " +"better than implicit\"* mantra. Most other language regular expression " +"libraries use an API named *match* to mean what Python has always called " +"*search*." msgstr "" msgid "" @@ -804,8 +840,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Gregory P. Smith in :gh:`86519` and Hugo van Kemenade in :gh:" -"`148100`.)" +"(Contributed by Gregory P. Smith in :gh:`86519` and Hugo van Kemenade " +"in :gh:`148100`.)" msgstr "" msgid "" @@ -821,15 +857,15 @@ msgid "Pending removal in Python 3.15" msgstr "" msgid "" -"The :c:func:`!PyImport_ImportModuleNoBlock`: Use :c:func:" -"`PyImport_ImportModule` instead." +"The :c:func:`!PyImport_ImportModuleNoBlock`: " +"Use :c:func:`PyImport_ImportModule` instead." msgstr "" msgid "" -":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: Use :c:" -"func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project `__ can be used to get :c:func:" -"`PyWeakref_GetRef` on Python 3.12 and older." +":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: " +"Use :c:func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project " +"`__ can be used to " +"get :c:func:`PyWeakref_GetRef` on Python 3.12 and older." msgstr "" msgid "" @@ -862,16 +898,17 @@ msgstr "" msgid "" ":c:func:`!Py_GetPrefix`: Use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." +"` (:data:`sys.base_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) " +"if :ref:`virtual environments ` need to be handled." msgstr "" msgid "" ":c:func:`!Py_GetExecPrefix`: Use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." +"` (:data:`sys.base_exec_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"exec_prefix\") ` " +"(:data:`sys.exec_prefix`) if :ref:`virtual environments ` need to " +"be handled." msgstr "" msgid "" @@ -918,56 +955,56 @@ msgid "" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` instead." msgstr "" msgid "Global configuration variables:" msgstr "" msgid "" -":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` or :c:func:" -"`PyConfig_Get(\"parser_debug\") ` instead." +":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` " +"or :c:func:`PyConfig_Get(\"parser_debug\") ` instead." msgstr "" msgid "" -":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` or :c:func:" -"`PyConfig_Get(\"verbose\") ` instead." +":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` " +"or :c:func:`PyConfig_Get(\"verbose\") ` instead." msgstr "" msgid "" -":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` or :c:func:" -"`PyConfig_Get(\"quiet\") ` instead." +":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` " +"or :c:func:`PyConfig_Get(\"quiet\") ` instead." msgstr "" msgid "" -":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` or :c:func:" -"`PyConfig_Get(\"interactive\") ` instead." +":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` " +"or :c:func:`PyConfig_Get(\"interactive\") ` instead." msgstr "" msgid "" -":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` or :c:func:" -"`PyConfig_Get(\"inspect\") ` instead." +":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` " +"or :c:func:`PyConfig_Get(\"inspect\") ` instead." msgstr "" msgid "" -":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` or :c:" -"func:`PyConfig_Get(\"optimization_level\") ` instead." +":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` " +"or :c:func:`PyConfig_Get(\"optimization_level\") ` instead." msgstr "" msgid "" -":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` or :c:func:" -"`PyConfig_Get(\"site_import\") ` instead." +":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` " +"or :c:func:`PyConfig_Get(\"site_import\") ` instead." msgstr "" msgid "" -":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` or :c:" -"func:`PyConfig_Get(\"bytes_warning\") ` instead." +":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` " +"or :c:func:`PyConfig_Get(\"bytes_warning\") ` instead." msgstr "" msgid "" -":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` or :c:" -"func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." +":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` " +"or :c:func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." msgstr "" msgid "" @@ -981,14 +1018,14 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_NoUserSiteDirectory`: Use :c:member:`PyConfig." -"user_site_directory` or :c:func:`PyConfig_Get(\"user_site_directory\") " -"` instead." +":c:var:`Py_NoUserSiteDirectory`: " +"Use :c:member:`PyConfig.user_site_directory` " +"or :c:func:`PyConfig_Get(\"user_site_directory\") ` instead." msgstr "" msgid "" -":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` or :" -"c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." +":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` " +"or :c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." msgstr "" msgid "" @@ -998,45 +1035,46 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` or :c:func:" -"`PyConfig_Get(\"isolated\") ` instead." +":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` " +"or :c:func:`PyConfig_Get(\"isolated\") ` instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: Use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` or :c:func:" -"`PyConfig_Get(\"legacy_windows_fs_encoding\") ` instead." +":c:var:`Py_LegacyWindowsFSEncodingFlag`: " +"Use :c:member:`PyPreConfig.legacy_windows_fs_encoding` " +"or :c:func:`PyConfig_Get(\"legacy_windows_fs_encoding\") ` " +"instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: Use :c:member:`PyConfig." -"legacy_windows_stdio` or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") " -"` instead." +":c:var:`Py_LegacyWindowsStdioFlag`: " +"Use :c:member:`PyConfig.legacy_windows_stdio` " +"or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") ` instead." msgstr "" msgid "" ":c:var:`!Py_FileSystemDefaultEncoding`, :c:var:`!" -"Py_HasFileSystemDefaultEncoding`: Use :c:member:`PyConfig." -"filesystem_encoding` or :c:func:`PyConfig_Get(\"filesystem_encoding\") " -"` instead." +"Py_HasFileSystemDefaultEncoding`: " +"Use :c:member:`PyConfig.filesystem_encoding` " +"or :c:func:`PyConfig_Get(\"filesystem_encoding\") ` instead." msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: Use :c:member:`PyConfig." -"filesystem_errors` or :c:func:`PyConfig_Get(\"filesystem_errors\") " -"` instead." +":c:var:`!Py_FileSystemDefaultEncodeErrors`: " +"Use :c:member:`PyConfig.filesystem_errors` " +"or :c:func:`PyConfig_Get(\"filesystem_errors\") ` instead." msgstr "" msgid "" -":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` or :c:func:" -"`PyConfig_Get(\"utf8_mode\") ` instead. (see :c:func:" -"`Py_PreInitialize`)" +":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` " +"or :c:func:`PyConfig_Get(\"utf8_mode\") ` instead. " +"(see :c:func:`Py_PreInitialize`)" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can be used to " -"get these options at runtime." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can " +"be used to get these options at runtime." msgstr "" msgid "The bundled copy of ``libmpdec``." @@ -1051,8 +1089,8 @@ msgid ":c:func:`!_PyBytes_Join`: use :c:func:`PyBytes_Join`." msgstr "" msgid "" -":c:func:`!_PyDict_GetItemStringWithError`: use :c:func:" -"`PyDict_GetItemStringRef`." +":c:func:`!_PyDict_GetItemStringWithError`: " +"use :c:func:`PyDict_GetItemStringRef`." msgstr "" msgid ":c:func:`!_PyDict_Pop()`: use :c:func:`PyDict_Pop`." @@ -1062,13 +1100,13 @@ msgid ":c:func:`!_PyLong_Sign()`: use :c:func:`PyLong_GetSign`." msgstr "" msgid "" -":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: use :c:func:" -"`PyLongWriter_Create`." +":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: " +"use :c:func:`PyLongWriter_Create`." msgstr "" msgid "" -":c:func:`!_PyThreadState_UncheckedGet`: use :c:func:" -"`PyThreadState_GetUnchecked`." +":c:func:`!_PyThreadState_UncheckedGet`: " +"use :c:func:`PyThreadState_GetUnchecked`." msgstr "" msgid ":c:func:`!_PyUnicode_AsString`: use :c:func:`PyUnicode_AsUTF8`." @@ -1081,45 +1119,50 @@ msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Finish`: replace " -"``_PyUnicodeWriter_Finish(&writer)`` with :c:func:" -"`PyUnicodeWriter_Finish(writer) `." +"``_PyUnicodeWriter_Finish(&writer)`` " +"with :c:func:`PyUnicodeWriter_Finish(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Dealloc`: replace " -"``_PyUnicodeWriter_Dealloc(&writer)`` with :c:func:" -"`PyUnicodeWriter_Discard(writer) `." +"``_PyUnicodeWriter_Dealloc(&writer)`` " +"with :c:func:`PyUnicodeWriter_Discard(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteChar`: replace " -"``_PyUnicodeWriter_WriteChar(&writer, ch)`` with :c:func:" -"`PyUnicodeWriter_WriteChar(writer, ch) `." +"``_PyUnicodeWriter_WriteChar(&writer, ch)`` " +"with :c:func:`PyUnicodeWriter_WriteChar(writer, ch) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteStr`: replace " -"``_PyUnicodeWriter_WriteStr(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteStr(writer, str) `." +"``_PyUnicodeWriter_WriteStr(&writer, str)`` " +"with :c:func:`PyUnicodeWriter_WriteStr(writer, str) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteSubstring`: replace " -"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` with :c:func:" -"`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " +"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` " +"with :c:func:`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " "`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteASCIIString`: replace " -"``_PyUnicodeWriter_WriteASCIIString(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteASCII(writer, str) `." +"``_PyUnicodeWriter_WriteASCIIString(&writer, str, size)`` " +"with :c:func:`PyUnicodeWriter_WriteASCII(writer, str, size) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteLatin1String`: replace " -"``_PyUnicodeWriter_WriteLatin1String(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." +"``_PyUnicodeWriter_WriteLatin1String(&writer, str, size)`` by decoding the " +"string with :c:func:`PyUnicode_DecodeLatin1`, writing the result " +"with :c:func:`PyUnicodeWriter_WriteStr`, and releasing the result " +"with :c:func:`Py_DECREF`." msgstr "" msgid ":c:func:`!_PyUnicodeWriter_Prepare`: (no replacement)." @@ -1144,17 +1187,19 @@ msgid ":pep:`456` embedders support for the string hashing scheme definition." msgstr "" msgid "" -":c:func:`!_PyObject_CallMethodId`, :c:func:`!_PyObject_GetAttrId` and :c:" -"func:`!_PyUnicode_FromId` are deprecated since 3.15 and will be removed in " -"3.20. Instead, use :c:func:`PyUnicode_InternFromString()` and cache the " -"result in the module state, then call :c:func:`PyObject_CallMethod` or :c:" -"func:`PyObject_GetAttr`. (Contributed by Victor Stinner in :gh:`141049`.)" +":c:func:`!_PyObject_CallMethodId`, :c:func:`!_PyObject_GetAttrId` " +"and :c:func:`!_PyUnicode_FromId` are deprecated since 3.15 and will be " +"removed in 3.20. Instead, use :c:func:`PyUnicode_InternFromString()` and " +"cache the result in the module state, then " +"call :c:func:`PyObject_CallMethod` or :c:func:`PyObject_GetAttr`. " +"(Contributed by Victor Stinner in :gh:`141049`.)" msgstr "" msgid "" -"The ``cval`` field in :c:type:`PyComplexObject` (:gh:`128813`). Use :c:func:" -"`PyComplex_AsCComplex` and :c:func:`PyComplex_FromCComplex` to convert a " -"Python complex number to/from the C :c:type:`Py_complex` representation." +"The ``cval`` field in :c:type:`PyComplexObject` (:gh:`128813`). " +"Use :c:func:`PyComplex_AsCComplex` and :c:func:`PyComplex_FromCComplex` to " +"convert a Python complex number to/from the C :c:type:`Py_complex` " +"representation." msgstr "" msgid "Macros :c:macro:`!Py_MATH_PIl` and :c:macro:`!Py_MATH_El`." @@ -1189,8 +1234,8 @@ msgid ":c:func:`PyOS_AfterFork`: Use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" msgid "" -":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` instead." +":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices` instead." msgstr "" msgid ":c:func:`PyUnicode_READY`: Unneeded since Python 3.12" diff --git a/deprecations/pending-removal-in-3.13.po b/deprecations/pending-removal-in-3.13.po index ad4f19a..74e1ed7 100644 --- a/deprecations/pending-removal-in-3.13.po +++ b/deprecations/pending-removal-in-3.13.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/deprecations/pending-removal-in-3.14.po b/deprecations/pending-removal-in-3.14.po index c8b64be..f3bb1ec 100644 --- a/deprecations/pending-removal-in-3.14.po +++ b/deprecations/pending-removal-in-3.14.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,8 +49,8 @@ msgid ":class:`!ast.Ellipsis`" msgstr "" msgid "" -"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" -"`90953`.)" +"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka " +"in :gh:`90953`.)" msgstr "" msgid ":mod:`asyncio`:" @@ -58,14 +58,15 @@ msgstr "" msgid "" "The child watcher classes :class:`!asyncio.MultiLoopChildWatcher`, :class:`!" -"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` and :class:" -"`!asyncio.SafeChildWatcher` are deprecated and will be removed in Python " -"3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" +"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` " +"and :class:`!asyncio.SafeChildWatcher` are deprecated and will be removed in " +"Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" msgid "" -":func:`!asyncio.set_child_watcher`, :func:`!asyncio.get_child_watcher`, :" -"meth:`!asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" +":func:`!asyncio.set_child_watcher`, :func:`!" +"asyncio.get_child_watcher`, :meth:`!" +"asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" "asyncio.AbstractEventLoopPolicy.get_child_watcher` are deprecated and will " "be removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" @@ -78,8 +79,9 @@ msgid "" msgstr "" msgid "" -":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." -"localtime`. (Contributed by Alan Williams in :gh:`72346`.)" +":mod:`email`: Deprecated the *isdst* parameter " +"in :func:`email.utils.localtime`. (Contributed by Alan Williams " +"in :gh:`72346`.)" msgstr "" msgid ":mod:`importlib.abc` deprecated classes:" @@ -118,14 +120,15 @@ msgid "" "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " "currently the default (:gh:`84559`). Adding a runtime warning about this was " "deemed too disruptive as the majority of code is not expected to care. Use " -"the :func:`~multiprocessing.get_context` or :func:`~multiprocessing." -"set_start_method` APIs to explicitly specify when your code *requires* " -"``'fork'``. See :ref:`multiprocessing-start-methods`." +"the :func:`~multiprocessing.get_context` " +"or :func:`~multiprocessing.set_start_method` APIs to explicitly specify when " +"your code *requires* ``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" -":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." -"PurePath.relative_to`: passing additional arguments is deprecated." +":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` " +"and :meth:`~pathlib.PurePath.relative_to`: passing additional arguments is " +"deprecated." msgstr "" msgid "" @@ -150,13 +153,13 @@ msgid ":data:`!version` and :data:`!version_info`." msgstr "" msgid "" -":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" -"ref:`named placeholders ` are used and *parameters* is " -"a sequence instead of a :class:`dict`." +":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` " +"if :ref:`named placeholders ` are used and " +"*parameters* is a sequence instead of a :class:`dict`." msgstr "" msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " -"intended to be a public API. (Contributed by Gregory P. Smith in :gh:" -"`88168`.)" +"intended to be a public API. (Contributed by Gregory P. Smith " +"in :gh:`88168`.)" msgstr "" diff --git a/deprecations/pending-removal-in-3.15.po b/deprecations/pending-removal-in-3.15.po index c7cfcfb..d98df4b 100644 --- a/deprecations/pending-removal-in-3.15.po +++ b/deprecations/pending-removal-in-3.15.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Lakshdeep Kashyap, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,17 +29,18 @@ msgid "The import system:" msgstr "" msgid "" -"Setting ``__cached__`` on a module while failing to set :attr:`__spec__." -"cached ` is deprecated. In Python " -"3.15, ``__cached__`` will cease to be set or take into consideration by the " -"import system or standard library. (:gh:`97879`)" +"Setting ``__cached__`` on a module while failing to " +"set :attr:`__spec__.cached ` is " +"deprecated. In Python 3.15, ``__cached__`` will cease to be set or take into " +"consideration by the import system or standard library. (:gh:`97879`)" msgstr "" msgid "" -"Setting :attr:`~module.__package__` on a module while failing to set :attr:" -"`__spec__.parent ` is deprecated. In " -"Python 3.15, :attr:`!__package__` will cease to be set or take into " -"consideration by the import system or standard library. (:gh:`97879`)" +"Setting :attr:`~module.__package__` on a module while failing to " +"set :attr:`__spec__.parent ` is " +"deprecated. In Python 3.15, :attr:`!__package__` will cease to be set or " +"take into consideration by the import system or standard library. " +"(:gh:`97879`)" msgstr "" msgid ":mod:`ctypes`:" @@ -70,8 +75,8 @@ msgid ":mod:`pathlib`:" msgstr "" msgid "" -":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows." +":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. " +"Use :func:`os.path.isreserved` to detect reserved paths on Windows." msgstr "" msgid ":mod:`platform`:" @@ -115,10 +120,10 @@ msgid ":mod:`typing`:" msgstr "" msgid "" -"The undocumented keyword argument syntax for creating :class:`~typing." -"NamedTuple` classes (for example, ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``) has been deprecated since Python 3.13. Use the class-based syntax " -"or the functional syntax instead." +"The undocumented keyword argument syntax for " +"creating :class:`~typing.NamedTuple` classes (for example, ``Point = " +"NamedTuple(\"Point\", x=int, y=int)``) has been deprecated since Python " +"3.13. Use the class-based syntax or the functional syntax instead." msgstr "" msgid "" @@ -143,9 +148,9 @@ msgid ":mod:`wave`:" msgstr "" msgid "" -"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of the :class:" -"`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been deprecated " -"since Python 3.13." +"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of " +"the :class:`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been " +"deprecated since Python 3.13." msgstr "" msgid ":mod:`zipimport`:" diff --git a/deprecations/pending-removal-in-3.16.po b/deprecations/pending-removal-in-3.16.po index a1f5c95..5eeb83f 100644 --- a/deprecations/pending-removal-in-3.16.po +++ b/deprecations/pending-removal-in-3.16.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,10 +25,10 @@ msgid "The import system:" msgstr "" msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." +"Setting :attr:`~module.__loader__` on a module while failing to " +"set :attr:`__spec__.loader ` is " +"deprecated. In Python 3.16, :attr:`!__loader__` will cease to be set or " +"taken into consideration by the import system or the standard library." msgstr "" msgid ":mod:`array`:" @@ -125,10 +125,10 @@ msgid ":mod:`mimetypes`:" msgstr "" msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" +"Valid extensions start with a '.' or are empty " +"for :meth:`mimetypes.MimeTypes.add_type`. Undotted extensions are deprecated " +"and will raise a :exc:`ValueError` in Python 3.16. (Contributed by Hugo van " +"Kemenade in :gh:`75223`.)" msgstr "" msgid ":mod:`shutil`:" diff --git a/deprecations/pending-removal-in-3.17.po b/deprecations/pending-removal-in-3.17.po index 47c7df2..4c949e5 100644 --- a/deprecations/pending-removal-in-3.17.po +++ b/deprecations/pending-removal-in-3.17.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Lakshdeep Kashyap, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -74,9 +78,9 @@ msgstr "" msgid "" "The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" +"Use :mod:`profiling.tracing` instead, which provides a compatible API. " +"See :pep:`799` for details. (Contributed by Pablo Galindo and László Kiss " +"Kollár in :gh:`138122`.)" msgstr "" msgid ":mod:`webbrowser`:" @@ -109,8 +113,9 @@ msgstr "" msgid "" "The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" +"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` " +"and :meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for " +"removal in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` " +"and :meth:`!trace_info` instead. (Contributed by Serhiy Storchaka " +"in :gh:`120220`.)" msgstr "" diff --git a/deprecations/pending-removal-in-3.18.po b/deprecations/pending-removal-in-3.18.po index edeaa38..76ae472 100644 --- a/deprecations/pending-removal-in-3.18.po +++ b/deprecations/pending-removal-in-3.18.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Lakshdeep Kashyap, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2026-01-07 14:20+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/deprecations/pending-removal-in-3.19.po b/deprecations/pending-removal-in-3.19.po deleted file mode 100644 index 94edeb8..0000000 --- a/deprecations/pending-removal-in-3.19.po +++ /dev/null @@ -1,82 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Pending removal in Python 3.19" -msgstr "" - -msgid ":mod:`ctypes`:" -msgstr "" - -msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." -msgstr "" - -msgid ":mod:`hashlib`:" -msgstr "" - -msgid "" -"In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." -msgstr "" - -msgid "" -"Support for the ``string`` keyword argument name is now deprecated and " -"slated for removal in Python 3.19." -msgstr "" - -msgid "" -"Before Python 3.13, the ``string`` keyword parameter was not correctly " -"supported depending on the backend implementation of hash functions. Prefer " -"passing the initial data as a positional argument for maximum backwards " -"compatibility." -msgstr "" - -msgid ":mod:`http.cookies`:" -msgstr "" - -msgid "" -":meth:`http.cookies.Morsel.js_output` is deprecated and will be removed in " -"Python 3.19." -msgstr "" - -msgid "" -":meth:`http.cookies.BaseCookie.js_output` is deprecated and will be removed " -"in Python 3.19." -msgstr "" - -msgid ":mod:`imaplib`:" -msgstr "" - -msgid "" -"Altering :attr:`IMAP4.file ` is now deprecated and " -"slated for removal in Python 3.19. This property is now unused and changing " -"its value does not automatically close the current file." -msgstr "" - -msgid "" -"Before Python 3.14, this property was used to implement the corresponding " -"``read()`` and ``readline()`` methods for :class:`~imaplib.IMAP4` but this " -"is no longer the case since then." -msgstr "" diff --git a/deprecations/pending-removal-in-3.20.po b/deprecations/pending-removal-in-3.20.po deleted file mode 100644 index e79c53e..0000000 --- a/deprecations/pending-removal-in-3.20.po +++ /dev/null @@ -1,154 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Pending removal in Python 3.20" -msgstr "" - -msgid "" -"Calling the ``__new__()`` method of :class:`struct.Struct` without the " -"*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." -msgstr "" - -msgid "" -"(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)" -msgstr "" - -msgid "" -"The ``__version__``, ``version`` and ``VERSION`` attributes have been " -"deprecated in these standard library modules and will be removed in Python " -"3.20. Use :py:data:`sys.version_info` instead." -msgstr "" - -msgid ":mod:`argparse`" -msgstr "" - -msgid ":mod:`csv`" -msgstr "" - -msgid ":mod:`ctypes`" -msgstr "" - -msgid ":mod:`!ctypes.macholib`" -msgstr "" - -msgid ":mod:`decimal` (use :data:`decimal.SPEC_VERSION` instead)" -msgstr "" - -msgid ":mod:`http.server`" -msgstr "" - -msgid ":mod:`imaplib`" -msgstr "" - -msgid ":mod:`ipaddress`" -msgstr "" - -msgid ":mod:`json`" -msgstr "" - -msgid ":mod:`logging` (``__date__`` also deprecated)" -msgstr "" - -msgid ":mod:`optparse`" -msgstr "" - -msgid ":mod:`pickle`" -msgstr "" - -msgid ":mod:`platform`" -msgstr "" - -msgid ":mod:`re`" -msgstr "" - -msgid ":mod:`socketserver`" -msgstr "" - -msgid ":mod:`tabnanny`" -msgstr "" - -msgid ":mod:`tarfile`" -msgstr "" - -msgid ":mod:`tkinter.font`" -msgstr "" - -msgid ":mod:`tkinter.ttk`" -msgstr "" - -msgid ":mod:`wsgiref.simple_server`" -msgstr "" - -msgid ":mod:`xml.etree.ElementTree`" -msgstr "" - -msgid ":mod:`!xml.sax.expatreader`" -msgstr "" - -msgid ":mod:`xml.sax.handler`" -msgstr "" - -msgid ":mod:`zlib`" -msgstr "" - -msgid "(Contributed by Hugo van Kemenade and Stan Ulbrych in :gh:`76007`.)" -msgstr "" - -msgid "Deprecations defined by :pep:`829`:" -msgstr "" - -msgid "" -"Warnings are produced for ``import`` lines found in :file:`{name}.pth` files." -msgstr "" - -msgid "" -":file:`{name}.pth` files are no longer decoded in the locale encoding by " -"default. They **MUST** be encoded in ``utf-8-sig``." -msgstr "" - -msgid "(Contributed by Barry Warsaw in :gh:`148641`.)" -msgstr "" - -msgid ":mod:`ast`:" -msgstr "" - -msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." -msgstr "" - -msgid ":mod:`typing`:" -msgstr "" - -msgid "" -"It is deprecated to call :func:`isinstance` and :func:`issubclass` checks on " -"protocol classes that were not explicitly decorated with :func:`!" -"runtime_checkable` but that inherit from a runtime-checkable protocol class. " -"This will raise a :exc:`TypeError` in Python 3.20." -msgstr "" - -msgid "(Contributed by Bartosz Sławecki in :gh:`132604`.)" -msgstr "" diff --git a/deprecations/pending-removal-in-future.po b/deprecations/pending-removal-in-future.po index 98ca0fd..204d6d0 100644 --- a/deprecations/pending-removal-in-future.po +++ b/deprecations/pending-removal-in-future.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,8 +34,8 @@ msgid "" msgstr "" msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." +"Passing the undocumented keyword argument *prefix_chars* " +"to :meth:`~argparse.ArgumentParser.add_argument_group` is now deprecated." msgstr "" msgid "The :class:`argparse.FileType` type converter is deprecated." @@ -55,10 +55,10 @@ msgid "" "for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " "ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " "``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" +"if the numeric literal is immediately followed by one of " +"keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :keyword:`is` " +"and :keyword:`or`. In a future release it will be changed to a syntax " +"error. (:gh:`87999`)" msgstr "" msgid "" @@ -68,33 +68,34 @@ msgid "" msgstr "" msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." +"Support for ``__float__()`` method returning a strict subclass " +"of :class:`float`: these methods will be required to return an instance " +"of :class:`float`." msgstr "" msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." +"Support for ``__complex__()`` method returning a strict subclass " +"of :class:`complex`: these methods will be required to return an instance " +"of :class:`complex`." msgstr "" msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" +"Passing a complex number as the *real* or *imag* argument in " +"the :func:`complex` constructor is now deprecated; it should only be passed " +"as a single positional argument. (Contributed by Serhiy Storchaka " +"in :gh:`109218`.)" msgstr "" msgid "" ":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" +"are deprecated and replaced by :data:`calendar.JANUARY` " +"and :data:`calendar.FEBRUARY`. (Contributed by Prince Roshan " +"in :gh:`103636`.)" msgstr "" msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" +":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. " +"(:gh:`133038`)" msgstr "" msgid "" @@ -106,13 +107,13 @@ msgid ":mod:`datetime`:" msgstr "" msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." +":meth:`~datetime.datetime.utcnow`: use " +"``datetime.datetime.now(tz=datetime.UTC)``." msgstr "" msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." +":meth:`~datetime.datetime.utcfromtimestamp`: use " +"``datetime.datetime.fromtimestamp(timestamp, tz=datetime.UTC)``." msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." @@ -150,12 +151,13 @@ msgid "" msgstr "" msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." +":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, " +"use :func:`os.path.commonpath` for path prefixes. " +"The :func:`os.path.commonprefix` function is being deprecated due to having " +"a misleading name and module. The function is not safe to use for path " +"prefixes despite being included in a module about path manipulation, meaning " +"it is easy to accidentally introduce path traversal vulnerabilities into " +"Python programs by using this function." msgstr "" msgid "" @@ -183,8 +185,8 @@ msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." +":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` " +"and :meth:`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" msgid "``ssl.OP_NO_SSL*`` options" @@ -221,21 +223,21 @@ msgid ":mod:`threading` methods:" msgstr "" msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." +":meth:`!threading.Condition.notifyAll`: " +"use :meth:`~threading.Condition.notify_all`." msgstr "" msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." +":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: " +"use :attr:`threading.Thread.daemon` attribute." msgstr "" msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." +":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: " +"use :attr:`threading.Thread.name` attribute." msgstr "" msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." @@ -303,13 +305,13 @@ msgid "" msgstr "" msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." +":mod:`xml.etree.ElementTree`: Testing the truth value of " +"an :class:`~xml.etree.ElementTree.Element` is deprecated. In a future " +"release it will always return ``True``. Prefer explicit ``len(elem)`` or " +"``elem is not None`` tests instead." msgstr "" msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." +":func:`sys._clear_type_cache` is deprecated: " +"use :func:`sys._clear_internal_caches` instead." msgstr "" diff --git a/deprecations/soft-deprecations.po b/deprecations/soft-deprecations.po deleted file mode 100644 index f1810c2..0000000 --- a/deprecations/soft-deprecations.po +++ /dev/null @@ -1,53 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Soft deprecations" -msgstr "" - -msgid "There are no plans to remove :term:`soft deprecated` APIs." -msgstr "" - -msgid "" -":func:`re.match` and :meth:`re.Pattern.match` are now :term:`soft " -"deprecated` in favor of the new :func:`re.prefixmatch` and :meth:`re.Pattern." -"prefixmatch` APIs, which have been added as alternate, more explicit names. " -"These are intended to be used to alleviate confusion around what *match* " -"means by following the Zen of Python's *\"Explicit is better than " -"implicit\"* mantra. Most other language regular expression libraries use an " -"API named *match* to mean what Python has always called *search*." -msgstr "" - -msgid "" -"We **do not** plan to remove the older :func:`!match` name, as it has been " -"used in code for over 30 years. Code supporting older versions of Python " -"should continue to use :func:`!match`, while new code should prefer :func:`!" -"prefixmatch`. See :ref:`prefixmatch-vs-match`." -msgstr "" - -msgid "" -"(Contributed by Gregory P. Smith in :gh:`86519` and Hugo van Kemenade in :gh:" -"`148100`.)" -msgstr "" - -msgid "" -"Using ``'F'`` and ``'D'`` format type codes of the :mod:`struct` module now " -"are :term:`soft deprecated` in favor of two-letter forms ``'Zf'`` and " -"``'Zd'``. (Contributed by Sergey B Kirpichev in :gh:`121249`.)" -msgstr "" diff --git a/distributing/index.po b/distributing/index.po index b30a342..ff2b0d4 100644 --- a/distributing/index.po +++ b/distributing/index.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Bhuvansh Kataria, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,10 +23,13 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Distributing Python Modules" -msgstr "" +msgstr "Python ਮੋਡੀਊਲਾਂ ਦੀ ਵੰਡ" msgid "" "Information and guidance on distributing Python modules and packages has " "been moved to the `Python Packaging User Guide`_, and the tutorial on " "`packaging Python projects`_." msgstr "" +"Python ਮੋਡੀਊਲਾਂ ਅਤੇ ਪੈਕੇਜਾਂ ਦੀ ਵੰਡ ਬਾਰੇ ਜਾਣਕਾਰੀ ਅਤੇ ਮਾਰਗਦਰਸ਼ਨ `Python Packaging User " +"Guide`_ ਵਿੱਚ ਤਬਦੀਲ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਅਤੇ `Python ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਪੈਕੇਜਿੰਗ`_ ਬਾਰੇ ਟਿਊਟੋਰਿਅਲ " +"ਵੀ ਉੱਥੇ ਮੌਜੂਦ ਹੈ।" diff --git a/extending/building.po b/extending/building.po index deeb4b6..8be082c 100644 --- a/extending/building.po +++ b/extending/building.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,8 +35,8 @@ msgstr "" msgid "" "Building, packaging and distributing extension modules is best done with " "third-party tools, and is out of scope of this document. One suitable tool " -"is Setuptools, whose documentation can be found at https://setuptools.pypa." -"io/en/latest/setuptools.html." +"is Setuptools, whose documentation can be found at https://" +"setuptools.pypa.io/en/latest/setuptools.html." msgstr "" msgid "" diff --git a/extending/embedding.po b/extending/embedding.po index 8c168ee..1bb034d 100644 --- a/extending/embedding.po +++ b/extending/embedding.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -44,10 +44,10 @@ msgstr "" msgid "" "So if you are embedding Python, you are providing your own main program. " "One of the things this main program has to do is initialize the Python " -"interpreter. At the very least, you have to call the function :c:func:" -"`Py_Initialize`. There are optional calls to pass command line arguments to " -"Python. Then later you can call the interpreter from any part of the " -"application." +"interpreter. At the very least, you have to call the " +"function :c:func:`Py_Initialize`. There are optional calls to pass command " +"line arguments to Python. Then later you can call the interpreter from any " +"part of the application." msgstr "" msgid "" @@ -122,17 +122,17 @@ msgid "" msgstr "" msgid "" -"Setting :c:member:`PyConfig.program_name` should be called before :c:func:" -"`Py_InitializeFromConfig` to inform the interpreter about paths to Python " -"run-time libraries. Next, the Python interpreter is initialized with :c:" -"func:`Py_Initialize`, followed by the execution of a hard-coded Python " -"script that prints the date and time. Afterwards, the :c:func:" -"`Py_FinalizeEx` call shuts the interpreter down, followed by the end of the " -"program. In a real program, you may want to get the Python script from " -"another source, perhaps a text-editor routine, a file, or a database. " -"Getting the Python code from a file can better be done by using the :c:func:" -"`PyRun_SimpleFile` function, which saves you the trouble of allocating " -"memory space and loading the file contents." +"Setting :c:member:`PyConfig.program_name` should be called " +"before :c:func:`Py_InitializeFromConfig` to inform the interpreter about " +"paths to Python run-time libraries. Next, the Python interpreter is " +"initialized with :c:func:`Py_Initialize`, followed by the execution of a " +"hard-coded Python script that prints the date and time. Afterwards, " +"the :c:func:`Py_FinalizeEx` call shuts the interpreter down, followed by the " +"end of the program. In a real program, you may want to get the Python " +"script from another source, perhaps a text-editor routine, a file, or a " +"database. Getting the Python code from a file can better be done by using " +"the :c:func:`PyRun_SimpleFile` function, which saves you the trouble of " +"allocating memory space and loading the file contents." msgstr "" msgid "Beyond Very High Level Embedding: An overview" @@ -318,10 +318,10 @@ msgid "" msgstr "" msgid "" -"After initializing the interpreter, the script is loaded using :c:func:" -"`PyImport_Import`. This routine needs a Python string as its argument, " -"which is constructed using the :c:func:`PyUnicode_DecodeFSDefault` data " -"conversion routine. ::" +"After initializing the interpreter, the script is loaded " +"using :c:func:`PyImport_Import`. This routine needs a Python string as its " +"argument, which is constructed using the :c:func:`PyUnicode_DecodeFSDefault` " +"data conversion routine. ::" msgstr "" msgid "" @@ -335,11 +335,11 @@ msgid "" msgstr "" msgid "" -"Once the script is loaded, the name we're looking for is retrieved using :c:" -"func:`PyObject_GetAttrString`. If the name exists, and the object returned " -"is callable, you can safely assume that it is a function. The program then " -"proceeds by constructing a tuple of arguments as normal. The call to the " -"Python function is then made with::" +"Once the script is loaded, the name we're looking for is retrieved " +"using :c:func:`PyObject_GetAttrString`. If the name exists, and the object " +"returned is callable, you can safely assume that it is a function. The " +"program then proceeds by constructing a tuple of arguments as normal. The " +"call to the Python function is then made with::" msgstr "" msgid "pValue = PyObject_CallObject(pFunc, pArgs);" @@ -445,8 +445,8 @@ msgid "" msgstr "" msgid "" -"To find out the required compiler and linker flags, you can execute the :" -"file:`python{X.Y}-config` script which is generated as part of the " +"To find out the required compiler and linker flags, you can execute " +"the :file:`python{X.Y}-config` script which is generated as part of the " "installation process (a :file:`python3-config` script may also be " "available). This script has several options, of which the following will be " "directly useful to you:" @@ -470,8 +470,8 @@ msgstr "" msgid "" "$ /opt/bin/python3.11-config --ldflags --embed\n" -"-L/opt/lib/python3.11/config-3.11-x86_64-linux-gnu -L/opt/lib -lpython3.11 -" -"lpthread -ldl -lutil -lm" +"-L/opt/lib/python3.11/config-3.11-x86_64-linux-gnu -L/opt/lib -lpython3.11 " +"-lpthread -ldl -lutil -lm" msgstr "" msgid "" @@ -485,11 +485,11 @@ msgid "" "If this procedure doesn't work for you (it is not guaranteed to work for all " "Unix-like platforms; however, we welcome :ref:`bug reports `) you will have to read your system's documentation about dynamic " -"linking and/or examine Python's :file:`Makefile` (use :func:`sysconfig." -"get_makefile_filename` to find its location) and compilation options. In " -"this case, the :mod:`sysconfig` module is a useful tool to programmatically " -"extract the configuration values that you will want to combine together. " -"For example:" +"linking and/or examine Python's :file:`Makefile` " +"(use :func:`sysconfig.get_makefile_filename` to find its location) and " +"compilation options. In this case, the :mod:`sysconfig` module is a useful " +"tool to programmatically extract the configuration values that you will want " +"to combine together. For example:" msgstr "" msgid "" diff --git a/extending/extending.po b/extending/extending.po index ce1cfe7..47a8449 100644 --- a/extending/extending.po +++ b/extending/extending.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -62,18 +62,18 @@ msgstr "" msgid "" "Another useful function is :c:func:`PyErr_SetFromErrno`, which only takes an " "exception argument and constructs the associated value by inspection of the " -"global variable :c:data:`errno`. The most general function is :c:func:" -"`PyErr_SetObject`, which takes two object arguments, the exception and its " -"associated value. You don't need to :c:func:`Py_INCREF` the objects passed " -"to any of these functions." +"global variable :c:data:`errno`. The most general function " +"is :c:func:`PyErr_SetObject`, which takes two object arguments, the " +"exception and its associated value. You don't need to :c:func:`Py_INCREF` " +"the objects passed to any of these functions." msgstr "" msgid "" -"You can test non-destructively whether an exception has been set with :c:" -"func:`PyErr_Occurred`. This returns the current exception object, or " -"``NULL`` if no exception has occurred. You normally don't need to call :c:" -"func:`PyErr_Occurred` to see whether an error occurred in a function call, " -"since you should be able to tell from the return value." +"You can test non-destructively whether an exception has been set " +"with :c:func:`PyErr_Occurred`. This returns the current exception object, " +"or ``NULL`` if no exception has occurred. You normally don't need to " +"call :c:func:`PyErr_Occurred` to see whether an error occurred in a function " +"call, since you should be able to tell from the return value." msgstr "" msgid "" @@ -106,10 +106,11 @@ msgstr "" msgid "" "Every failing :c:func:`malloc` call must be turned into an exception --- the " -"direct caller of :c:func:`malloc` (or :c:func:`realloc`) must call :c:func:" -"`PyErr_NoMemory` and return a failure indicator itself. All the object-" -"creating functions (for example, :c:func:`PyLong_FromLong`) already do this, " -"so this note is only relevant to those who call :c:func:`malloc` directly." +"direct caller of :c:func:`malloc` (or :c:func:`realloc`) must " +"call :c:func:`PyErr_NoMemory` and return a failure indicator itself. All " +"the object-creating functions (for example, :c:func:`PyLong_FromLong`) " +"already do this, so this note is only relevant to those who " +"call :c:func:`malloc` directly." msgstr "" msgid "" @@ -120,8 +121,8 @@ msgid "" msgstr "" msgid "" -"Finally, be careful to clean up garbage (by making :c:func:`Py_XDECREF` or :" -"c:func:`Py_DECREF` calls for objects you have already created) when you " +"Finally, be careful to clean up garbage (by making :c:func:`Py_XDECREF` " +"or :c:func:`Py_DECREF` calls for objects you have already created) when you " "return an error indicator!" msgstr "" @@ -130,11 +131,12 @@ msgid "" "predeclared C objects corresponding to all built-in Python exceptions, such " "as :c:data:`PyExc_ZeroDivisionError`, which you can use directly. Of course, " "you should choose exceptions wisely --- don't use :c:data:`PyExc_TypeError` " -"to mean that a file couldn't be opened (that should probably be :c:data:" -"`PyExc_OSError`). If something's wrong with the argument list, the :c:func:" -"`PyArg_ParseTuple` function usually raises :c:data:`PyExc_TypeError`. If " -"you have an argument whose value must be in a particular range or must " -"satisfy other conditions, :c:data:`PyExc_ValueError` is appropriate." +"to mean that a file couldn't be opened (that should probably " +"be :c:data:`PyExc_OSError`). If something's wrong with the argument list, " +"the :c:func:`PyArg_ParseTuple` function usually " +"raises :c:data:`PyExc_TypeError`. If you have an argument whose value must " +"be in a particular range or must satisfy other " +"conditions, :c:data:`PyExc_ValueError` is appropriate." msgstr "" msgid "" @@ -147,8 +149,8 @@ msgid "static PyObject *SpamError = NULL;" msgstr "" msgid "" -"and initialize it by calling :c:func:`PyErr_NewException` in the module's :c:" -"data:`Py_mod_exec` function (:c:func:`!spam_module_exec`)::" +"and initialize it by calling :c:func:`PyErr_NewException` in the " +"module's :c:data:`Py_mod_exec` function (:c:func:`!spam_module_exec`)::" msgstr "" msgid "SpamError = PyErr_NewException(\"spam.error\", NULL, NULL);" @@ -301,8 +303,8 @@ msgstr "" msgid "" "Fortunately, the Python interpreter is easily called recursively, and there " "is a standard interface to call a Python function. (If you're interested in " -"how to call the Python parser with a particular string as input, see :ref:" -"`veryhigh`.)" +"how to call the Python parser with a particular string as input, " +"see :ref:`veryhigh`.)" msgstr "" msgid "" @@ -341,10 +343,10 @@ msgid "" msgstr "" msgid "" -"This function must be registered with the interpreter using the :c:macro:" -"`METH_VARARGS` flag in :c:type:`PyMethodDef.ml_flags`. The :c:func:" -"`PyArg_ParseTuple` function and its arguments are documented in section :ref:" -"`parsetuple`." +"This function must be registered with the interpreter using " +"the :c:macro:`METH_VARARGS` flag in :c:type:`PyMethodDef.ml_flags`. " +"The :c:func:`PyArg_ParseTuple` function and its arguments are documented in " +"section :ref:`parsetuple`." msgstr "" msgid "" @@ -355,14 +357,15 @@ msgid "" msgstr "" msgid "" -"Later, when it is time to call the function, you call the C function :c:func:" -"`PyObject_CallObject`. This function has two arguments, both pointers to " -"arbitrary Python objects: the Python function, and the argument list. The " -"argument list must always be a tuple object, whose length is the number of " -"arguments. To call the Python function with no arguments, pass in ``NULL``, " -"or an empty tuple; to call it with one argument, pass a singleton tuple. :c:" -"func:`Py_BuildValue` returns a tuple when its format string consists of zero " -"or more format codes between parentheses. For example::" +"Later, when it is time to call the function, you call the C " +"function :c:func:`PyObject_CallObject`. This function has two arguments, " +"both pointers to arbitrary Python objects: the Python function, and the " +"argument list. The argument list must always be a tuple object, whose " +"length is the number of arguments. To call the Python function with no " +"arguments, pass in ``NULL``, or an empty tuple; to call it with one " +"argument, pass a singleton tuple. :c:func:`Py_BuildValue` returns a tuple " +"when its format string consists of zero or more format codes between " +"parentheses. For example::" msgstr "" msgid "" @@ -382,8 +385,9 @@ msgid "" ":c:func:`PyObject_CallObject` returns a Python object pointer: this is the " "return value of the Python function. :c:func:`PyObject_CallObject` is " "\"reference-count-neutral\" with respect to its arguments. In the example a " -"new tuple was created to serve as the argument list, which is :c:func:" -"`Py_DECREF`\\ -ed immediately after the :c:func:`PyObject_CallObject` call." +"new tuple was created to serve as the argument list, which " +"is :c:func:`Py_DECREF`\\ -ed immediately after " +"the :c:func:`PyObject_CallObject` call." msgstr "" msgid "" @@ -426,6 +430,8 @@ msgid "" "PyObject *arglist;\n" "...\n" "arglist = Py_BuildValue(\"(l)\", eventcode);\n" +"if (arglist == NULL)\n" +" return NULL;\n" "result = PyObject_CallObject(my_callback, arglist);\n" "Py_DECREF(arglist);\n" "if (result == NULL)\n" @@ -436,22 +442,29 @@ msgstr "" msgid "" "Note the placement of ``Py_DECREF(arglist)`` immediately after the call, " -"before the error check! Also note that strictly speaking this code is not " -"complete: :c:func:`Py_BuildValue` may run out of memory, and this should be " -"checked." +"before the error check!" msgstr "" msgid "" -"You may also call a function with keyword arguments by using :c:func:" -"`PyObject_Call`, which supports arguments and keyword arguments. As in the " -"above example, we use :c:func:`Py_BuildValue` to construct the dictionary. ::" +"You may also call a function with keyword arguments by " +"using :c:func:`PyObject_Call`, which supports arguments and keyword " +"arguments. As in the above example, we use :c:func:`Py_BuildValue` to " +"construct the dictionary. ::" msgstr "" msgid "" -"PyObject *dict;\n" +"PyObject *arglist, *dict;\n" "...\n" +"arglist = PyTuple_New(0);\n" +"if (arglist == NULL)\n" +" return NULL;\n" "dict = Py_BuildValue(\"{s:i}\", \"name\", val);\n" -"result = PyObject_Call(my_callback, NULL, dict);\n" +"if (dict == NULL) {\n" +" Py_DECREF(arglist);\n" +" return NULL;\n" +"}\n" +"result = PyObject_Call(my_callback, arglist, dict);\n" +"Py_DECREF(arglist);\n" "Py_DECREF(dict);\n" "if (result == NULL)\n" " return NULL; /* Pass error back */\n" @@ -589,15 +602,16 @@ msgstr "" msgid "" "If you also want your function to accept :term:`keyword arguments `, use the :c:data:`METH_KEYWORDS` flag in combination with :c:data:" -"`METH_VARARGS`. (:c:data:`!METH_KEYWORDS` can also be used with other flags; " -"see its documentation for the allowed combinations.)" +"argument>`, use the :c:data:`METH_KEYWORDS` flag in combination " +"with :c:data:`METH_VARARGS`. (:c:data:`!METH_KEYWORDS` can also be used with " +"other flags; see its documentation for the allowed combinations.)" msgstr "" msgid "" "In this case, the C function should accept a third ``PyObject *`` parameter " -"which will be a dictionary of keywords. Use :c:func:" -"`PyArg_ParseTupleAndKeywords` to parse the arguments to such a function." +"which will be a dictionary of keywords. " +"Use :c:func:`PyArg_ParseTupleAndKeywords` to parse the arguments to such a " +"function." msgstr "" msgid "" @@ -611,20 +625,20 @@ msgid "" msgstr "" msgid "" -"The *arg* and *format* parameters are identical to those of the :c:func:" -"`PyArg_ParseTuple` function. The *kwdict* parameter is the dictionary of " -"keywords received as the third parameter from the Python runtime. The " -"*kwlist* parameter is a ``NULL``-terminated list of strings which identify " -"the parameters; the names are matched with the type information from " -"*format* from left to right. On success, :c:func:" -"`PyArg_ParseTupleAndKeywords` returns true, otherwise it returns false and " -"raises an appropriate exception." +"The *arg* and *format* parameters are identical to those of " +"the :c:func:`PyArg_ParseTuple` function. The *kwdict* parameter is the " +"dictionary of keywords received as the third parameter from the Python " +"runtime. The *kwlist* parameter is a ``NULL``-terminated list of strings " +"which identify the parameters; the names are matched with the type " +"information from *format* from left to right. On " +"success, :c:func:`PyArg_ParseTupleAndKeywords` returns true, otherwise it " +"returns false and raises an appropriate exception." msgstr "" msgid "" "Nested tuples cannot be parsed when using keyword arguments! Keyword " -"parameters passed in which are not present in the *kwlist* will cause :exc:" -"`TypeError` to be raised." +"parameters passed in which are not present in the *kwlist* will " +"cause :exc:`TypeError` to be raised." msgstr "" msgid "" @@ -683,10 +697,10 @@ msgid "PyObject *Py_BuildValue(const char *format, ...);" msgstr "" msgid "" -"It recognizes a set of format units similar to the ones recognized by :c:" -"func:`PyArg_ParseTuple`, but the arguments (which are input to the function, " -"not output) must not be pointers, just values. It returns a new Python " -"object, suitable for returning from a C function called from Python." +"It recognizes a set of format units similar to the ones recognized " +"by :c:func:`PyArg_ParseTuple`, but the arguments (which are input to the " +"function, not output) must not be pointers, just values. It returns a new " +"Python object, suitable for returning from a C function called from Python." msgstr "" msgid "" @@ -737,16 +751,16 @@ msgstr "" msgid "" "Every block of memory allocated with :c:func:`malloc` should eventually be " -"returned to the pool of available memory by exactly one call to :c:func:" -"`free`. It is important to call :c:func:`free` at the right time. If a " -"block's address is forgotten but :c:func:`free` is not called for it, the " -"memory it occupies cannot be reused until the program terminates. This is " -"called a :dfn:`memory leak`. On the other hand, if a program calls :c:func:" -"`free` for a block and then continues to use the block, it creates a " -"conflict with reuse of the block through another :c:func:`malloc` call. " -"This is called :dfn:`using freed memory`. It has the same bad consequences " -"as referencing uninitialized data --- core dumps, wrong results, mysterious " -"crashes." +"returned to the pool of available memory by exactly one call " +"to :c:func:`free`. It is important to call :c:func:`free` at the right " +"time. If a block's address is forgotten but :c:func:`free` is not called " +"for it, the memory it occupies cannot be reused until the program " +"terminates. This is called a :dfn:`memory leak`. On the other hand, if a " +"program calls :c:func:`free` for a block and then continues to use the " +"block, it creates a conflict with reuse of the block through " +"another :c:func:`malloc` call. This is called :dfn:`using freed memory`. It " +"has the same bad consequences as referencing uninitialized data --- core " +"dumps, wrong results, mysterious crashes." msgstr "" msgid "" @@ -805,9 +819,9 @@ msgstr "" msgid "" "The cycle detector is able to detect garbage cycles and can reclaim them. " -"The :mod:`gc` module exposes a way to run the detector (the :func:`~gc." -"collect` function), as well as configuration interfaces and the ability to " -"disable the detector at runtime." +"The :mod:`gc` module exposes a way to run the detector " +"(the :func:`~gc.collect` function), as well as configuration interfaces and " +"the ability to disable the detector at runtime." msgstr "" msgid "Reference Counting in Python" @@ -815,12 +829,12 @@ msgstr "" msgid "" "There are two macros, ``Py_INCREF(x)`` and ``Py_DECREF(x)``, which handle " -"the incrementing and decrementing of the reference count. :c:func:" -"`Py_DECREF` also frees the object when the count reaches zero. For " -"flexibility, it doesn't call :c:func:`free` directly --- rather, it makes a " -"call through a function pointer in the object's :dfn:`type object`. For " -"this purpose (and others), every object also contains a pointer to its type " -"object." +"the incrementing and decrementing of the reference " +"count. :c:func:`Py_DECREF` also frees the object when the count reaches " +"zero. For flexibility, it doesn't call :c:func:`free` directly --- rather, " +"it makes a call through a function pointer in the object's :dfn:`type " +"object`. For this purpose (and others), every object also contains a " +"pointer to its type object." msgstr "" msgid "" @@ -855,11 +869,11 @@ msgid "" msgstr "" msgid "" -"A borrowed reference can be changed into an owned reference by calling :c:" -"func:`Py_INCREF`. This does not affect the status of the owner from which " -"the reference was borrowed --- it creates a new owned reference, and gives " -"full owner responsibilities (the new owner must dispose of the reference " -"properly, as well as the previous owner)." +"A borrowed reference can be changed into an owned reference by " +"calling :c:func:`Py_INCREF`. This does not affect the status of the owner " +"from which the reference was borrowed --- it creates a new owned reference, " +"and gives full owner responsibilities (the new owner must dispose of the " +"reference properly, as well as the previous owner)." msgstr "" msgid "Ownership Rules" @@ -876,19 +890,19 @@ msgid "" "the reference. In particular, all functions whose function it is to create " "a new object, such as :c:func:`PyLong_FromLong` and :c:func:`Py_BuildValue`, " "pass ownership to the receiver. Even if the object is not actually new, you " -"still receive ownership of a new reference to that object. For instance, :c:" -"func:`PyLong_FromLong` maintains a cache of popular values and can return a " -"reference to a cached item." +"still receive ownership of a new reference to that object. For " +"instance, :c:func:`PyLong_FromLong` maintains a cache of popular values and " +"can return a reference to a cached item." msgstr "" msgid "" "Many functions that extract objects from other objects also transfer " -"ownership with the reference, for instance :c:func:" -"`PyObject_GetAttrString`. The picture is less clear, here, however, since a " -"few common routines are exceptions: :c:func:`PyTuple_GetItem`, :c:func:" -"`PyList_GetItem`, :c:func:`PyDict_GetItem`, and :c:func:" -"`PyDict_GetItemString` all return references that you borrow from the tuple, " -"list or dictionary." +"ownership with the reference, for " +"instance :c:func:`PyObject_GetAttrString`. The picture is less clear, here, " +"however, since a few common routines are " +"exceptions: :c:func:`PyTuple_GetItem`, :c:func:`PyList_GetItem`, :c:func:`PyDict_GetItem`, " +"and :c:func:`PyDict_GetItemString` all return references that you borrow " +"from the tuple, list or dictionary." msgstr "" msgid "" @@ -901,10 +915,11 @@ msgid "" "When you pass an object reference into another function, in general, the " "function borrows the reference from you --- if it needs to store it, it will " "use :c:func:`Py_INCREF` to become an independent owner. There are exactly " -"two important exceptions to this rule: :c:func:`PyTuple_SetItem` and :c:func:" -"`PyList_SetItem`. These functions take over ownership of the item passed to " -"them --- even if they fail! (Note that :c:func:`PyDict_SetItem` and friends " -"don't take over ownership --- they are \"normal.\")" +"two important exceptions to this rule: :c:func:`PyTuple_SetItem` " +"and :c:func:`PyList_SetItem`. These functions take over ownership of the " +"item passed to them --- even if they fail! (Note " +"that :c:func:`PyDict_SetItem` and friends don't take over ownership --- they " +"are \"normal.\")" msgstr "" msgid "" @@ -962,12 +977,12 @@ msgid "" "defined a :meth:`!__del__` method. If this class instance has a reference " "count of 1, disposing of it will call its :meth:`!__del__` method. " "Internally, :c:func:`PyList_SetItem` calls :c:func:`Py_DECREF` on the " -"replaced item, which invokes replaced item's corresponding :c:member:" -"`~PyTypeObject.tp_dealloc` function. During deallocation, :c:member:" -"`~PyTypeObject.tp_dealloc` calls :c:member:`~PyTypeObject.tp_finalize`, " -"which is mapped to the :meth:`!__del__` method for class instances (see :pep:" -"`442`). This entire sequence happens synchronously within the :c:func:" -"`PyList_SetItem` call." +"replaced item, which invokes replaced item's " +"corresponding :c:member:`~PyTypeObject.tp_dealloc` function. During " +"deallocation, :c:member:`~PyTypeObject.tp_dealloc` " +"calls :c:member:`~PyTypeObject.tp_finalize`, which is mapped to the :meth:`!" +"__del__` method for class instances (see :pep:`442`). This entire sequence " +"happens synchronously within the :c:func:`PyList_SetItem` call." msgstr "" msgid "" @@ -1009,11 +1024,12 @@ msgid "" "threads. Normally, multiple threads in the Python interpreter can't get in " "each other's way, because there is a :term:`global lock ` protecting Python's entire object space. However, it is possible to " -"temporarily release this lock using the macro :c:macro:" -"`Py_BEGIN_ALLOW_THREADS`, and to re-acquire it using :c:macro:" -"`Py_END_ALLOW_THREADS`. This is common around blocking I/O calls, to let " -"other threads use the processor while waiting for the I/O to complete. " -"Obviously, the following function has the same problem as the previous one::" +"temporarily release this lock using the " +"macro :c:macro:`Py_BEGIN_ALLOW_THREADS`, and to re-acquire it " +"using :c:macro:`Py_END_ALLOW_THREADS`. This is common around blocking I/O " +"calls, to let other threads use the processor while waiting for the I/O to " +"complete. Obviously, the following function has the same problem as the " +"previous one::" msgstr "" msgid "" @@ -1050,8 +1066,8 @@ msgstr "" msgid "" "The macros :c:func:`Py_INCREF` and :c:func:`Py_DECREF` do not check for " -"``NULL`` pointers --- however, their variants :c:func:`Py_XINCREF` and :c:" -"func:`Py_XDECREF` do." +"``NULL`` pointers --- however, their variants :c:func:`Py_XINCREF` " +"and :c:func:`Py_XDECREF` do." msgstr "" msgid "" @@ -1180,11 +1196,11 @@ msgid "" msgstr "" msgid "" -"The exporting module is a modification of the :mod:`!spam` module from the :" -"ref:`tutorial `. The function :func:`!spam.system` " -"does not call the C library function :c:func:`system` directly, but a " -"function :c:func:`!PySpam_System`, which would of course do something more " -"complicated in reality (such as adding \"spam\" to every command). This " +"The exporting module is a modification of the :mod:`!spam` module from " +"the :ref:`tutorial `. The function :func:`!" +"spam.system` does not call the C library function :c:func:`system` directly, " +"but a function :c:func:`!PySpam_System`, which would of course do something " +"more complicated in reality (such as adding \"spam\" to every command). This " "function :c:func:`!PySpam_System` is also exported to other extension " "modules." msgstr "" @@ -1232,9 +1248,9 @@ msgstr "" msgid "" "The ``#define`` is used to tell the header file that it is being included in " -"the exporting module, not a client module. Finally, the module's :c:data:" -"`mod_exec ` function must take care of initializing the C API " -"pointer array::" +"the exporting module, not a client module. Finally, the " +"module's :c:data:`mod_exec ` function must take care of " +"initializing the C API pointer array::" msgstr "" msgid "" @@ -1321,9 +1337,10 @@ msgid "" msgstr "" msgid "" -"All that a client module must do in order to have access to the function :c:" -"func:`!PySpam_System` is to call the function (or rather macro) :c:func:`!" -"import_spam` in its :c:data:`mod_exec ` function::" +"All that a client module must do in order to have access to the " +"function :c:func:`!PySpam_System` is to call the function (or rather " +"macro) :c:func:`!import_spam` in its :c:data:`mod_exec ` " +"function::" msgstr "" msgid "" diff --git a/extending/first-extension-module.po b/extending/first-extension-module.po deleted file mode 100644 index f6c7592..0000000 --- a/extending/first-extension-module.po +++ /dev/null @@ -1,913 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:36+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Your first C API extension module" -msgstr "" - -msgid "" -"This tutorial will take you through creating a simple Python extension " -"module written in C or C++." -msgstr "" - -msgid "" -"We will use the low-level Python C API directly. For easier ways to create " -"extension modules, see the :ref:`recommended third party tools `." -msgstr "" - -msgid "" -"The tutorial assumes basic knowledge about Python: you should be able to " -"define functions in Python code before starting to write them in C. See :ref:" -"`tutorial-index` for an introduction to Python itself." -msgstr "" - -msgid "" -"The tutorial should be approachable for anyone who can write a basic C " -"library. While we will mention several concepts that a C beginner would not " -"be expected to know, like ``static`` functions or linkage declarations, " -"understanding these is not necessary for success." -msgstr "" - -msgid "" -"We will focus on giving you a \"feel\" of what Python's C API is like. It " -"will not teach you important concepts, like error handling and reference " -"counting, which are covered in later chapters." -msgstr "" - -msgid "" -"We will assume that you use a Unix-like system (including macOS and Linux), " -"or Windows. On other systems, you might need to adjust some details -- for " -"example, a system command name." -msgstr "" - -msgid "" -"You need to have a suitable C compiler and Python development headers " -"installed. On Linux, headers are often in a package like ``python3-dev`` or " -"``python3-devel``." -msgstr "" - -msgid "" -"You need to be able to install Python packages. This tutorial uses `pip " -"`__ (``pip install``), but you can substitute any tool " -"that can build and install ``pyproject.toml``-based projects, like `uv " -"`_ (``uv pip install``). Preferably, have a :ref:" -"`virtual environment ` activated." -msgstr "" - -msgid "" -"This tutorial uses APIs that were added in CPython 3.15. To create an " -"extension that's compatible with earlier versions of CPython, please follow " -"an earlier version of this documentation." -msgstr "" - -msgid "" -"This tutorial uses C syntax added in C11 and C++20. If your extension needs " -"to be compatible with earlier standards, please follow tutorials in " -"documentation for Python 3.14 or below." -msgstr "" - -msgid "What we'll do" -msgstr "" - -msgid "" -"Let's create an extension module called ``spam`` [#why-spam]_, which will " -"include a Python interface to the C standard library function :c:func:" -"`system`. This function is defined in ``stdlib.h``. It takes a C string as " -"argument, runs the argument as a system command, and returns a result value " -"as an integer. A manual page for :c:func:`system` might summarize it this " -"way::" -msgstr "" - -msgid "" -"#include \n" -"int system(const char *command);" -msgstr "" - -msgid "" -"Note that like many functions in the C standard library, this function is " -"already exposed in Python. In production, use :py:func:`os.system` or :py:" -"func:`subprocess.run` rather than the module you'll write here." -msgstr "" - -msgid "We want this function to be callable from Python as follows:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> status = spam.system(\"whoami\")\n" -"User Name\n" -">>> status\n" -"0" -msgstr "" - -msgid "" -"The system command ``whoami`` prints out your username. It's useful in " -"tutorials like this one because it has the same name on both Unix and " -"Windows." -msgstr "" - -msgid "Start with the headers" -msgstr "" - -msgid "" -"Begin by creating a directory for this tutorial, and switching to it on the " -"command line. Then, create a file named :file:`spammodule.c` in your " -"directory. [#why-spammodule]_" -msgstr "" - -msgid "" -"In this file, we'll include two headers: :file:`Python.h` to pull in all " -"declarations of the Python C API, and :file:`stdlib.h` for the :c:func:" -"`system` function. [#stdlib-h]_" -msgstr "" - -msgid "Add the following lines to :file:`spammodule.c`:" -msgstr "" - -msgid "" -"#include \n" -"#include // for system()\n" -msgstr "" - -msgid "" -"Be sure to put :file:`stdlib.h`, and any other standard library includes, " -"*after* :file:`Python.h`. On some systems, Python may define some pre-" -"processor definitions that affect the standard headers." -msgstr "" - -msgid "Running your build tool" -msgstr "" - -msgid "" -"With only the includes in place, your extension won't do anything. Still, " -"it's a good time to compile it and try to import it. This will ensure that " -"your build tool works, so that you can make and test incremental changes as " -"you follow the rest of the text." -msgstr "" - -msgid "" -"CPython itself does not come with a tool to build extension modules; it is " -"recommended to use a third-party project for this. In this tutorial, we'll " -"use `meson-python`_. (If you want to use another one, see :ref:`first-" -"extension-other-tools`.)" -msgstr "" - -msgid "``meson-python`` requires defining a \"project\" using two extra files." -msgstr "" - -msgid "First, add ``pyproject.toml`` with these contents:" -msgstr "" - -msgid "" -"[build-system]\n" -"build-backend = 'mesonpy'\n" -"requires = ['meson-python']\n" -"\n" -"[project]\n" -"# Placeholder project information\n" -"# (change this before distributing the module)\n" -"name = 'sampleproject'\n" -"version = '0'" -msgstr "" - -msgid "Then, create ``meson.build`` containing the following:" -msgstr "" - -msgid "" -"project('sampleproject', 'c')\n" -"\n" -"py = import('python').find_installation(pure: false)\n" -"\n" -"py.extension_module(\n" -" 'spam', # name of the importable Python module\n" -" 'spammodule.c', # the C source file\n" -" install: true,\n" -")" -msgstr "" - -msgid "" -"See the `meson-python documentation `_ for details on " -"configuration." -msgstr "" - -msgid "" -"Now, build install the *project in the current directory* (``.``) via " -"``pip``:" -msgstr "" - -msgid "python -m pip -v install ." -msgstr "" - -msgid "" -"The ``-v`` (``--verbose``) option causes ``pip`` to show the output from the " -"compiler, which is often useful during development." -msgstr "" - -msgid "" -"If you don't have ``pip`` installed, run ``python -m ensurepip``, preferably " -"in a :ref:`virtual environment `. (Or, if you prefer another tool " -"that can build and install ``pyproject.toml``-based projects, use that.)" -msgstr "" - -msgid "" -"Note that you will need to run this command again every time you change your " -"extension. Unlike Python, C has an explicit compilation step." -msgstr "" - -msgid "" -"When your extension is compiled and installed, start Python and try to " -"import it. This should fail with the following exception:" -msgstr "" - -msgid "" -">>> import spam\n" -"Traceback (most recent call last):\n" -" ...\n" -"ImportError: dynamic module does not define module export function " -"(PyModExport_spam or PyInit_spam)" -msgstr "" - -msgid "Module export hook" -msgstr "" - -msgid "" -"The exception you got when you tried to import the module told you that " -"Python is looking for a \"module export function\", also known as a :ref:" -"`module export hook `. Let's define one." -msgstr "" - -msgid "First, add a prototype below the ``#include`` lines:" -msgstr "" - -msgid "" -"\n" -"PyMODEXPORT_FUNC PyModExport_spam(void);\n" -"\n" -msgstr "" - -msgid "" -"The prototype is not strictly necessary, but some modern compilers emit " -"warnings without it. It's generally better to add the prototype than to " -"disable the warning." -msgstr "" - -msgid "" -"The :c:macro:`PyMODEXPORT_FUNC` macro declares the function's return type, " -"and adds any special linkage declarations needed to make the function " -"visible and usable when CPython loads it." -msgstr "" - -msgid "" -"After the prototype, add the function itself. For now, make it return " -"``NULL``:" -msgstr "" - -msgid "" -"PyMODEXPORT_FUNC\n" -"PyModExport_spam(void)\n" -"{\n" -" return NULL;\n" -"}" -msgstr "" - -msgid "" -"Compile and load the module again. You should get a different error this " -"time." -msgstr "" - -msgid "" -">>> import spam\n" -"Traceback (most recent call last):\n" -" ...\n" -"SystemError: module export hook for module 'spam' failed without setting an " -"exception" -msgstr "" - -msgid "" -"Simply returning ``NULL`` is *not* correct behavior for an export hook, and " -"CPython complains about it. That's good -- it means that CPython found the " -"function! Let's now make it do something useful." -msgstr "" - -msgid "The slot table" -msgstr "" - -msgid "" -"Rather than ``NULL``, the export hook should return the information needed " -"to create a module. Let's start with the basics: the name and docstring." -msgstr "" - -msgid "" -"The information should be defined in an array of :c:type:`PySlot` entries, " -"which are essentially key-value pairs. Define this array just before your " -"export hook:" -msgstr "" - -msgid "" -"PyABIInfo_VAR(abi_info);\n" -"\n" -"static PySlot spam_slots[] = {\n" -" PySlot_STATIC_DATA(Py_mod_abi, &abi_info),\n" -" PySlot_STATIC_DATA(Py_mod_name, \"spam\"),\n" -" PySlot_STATIC_DATA(Py_mod_doc, \"A wonderful module with an example " -"function\"),\n" -" PySlot_END\n" -"};" -msgstr "" - -msgid "" -"The :c:macro:`PySlot_STATIC_DATA` macro is used when the slot value (here: " -"``&abi_info``, ``\"spam\"``, and the docstring) is a pointer to constant, " -"statically allocated data." -msgstr "" - -msgid "" -"The ``PyABIInfo_VAR(abi_info);`` macro and the :c:data:`Py_mod_abi` slot are " -"a bit of boilerplate that helps prevent extensions compiled for a different " -"version of Python from crashing the interpreter." -msgstr "" - -msgid "" -"For both :c:data:`Py_mod_name` and :c:data:`Py_mod_doc`, the values are C " -"strings -- that is, NUL-terminated, UTF-8 encoded byte arrays." -msgstr "" - -msgid "" -"Note ``PySlot_END`` sentinel entry at the end. This marks the end of the " -"array. If you forget it, you'll trigger undefined behavior." -msgstr "" - -msgid "" -"The array is defined as ``static`` -- that is, not visible outside this ``." -"c`` file. This will be a common theme. CPython only needs to access the " -"export hook; all global variables and all other functions should generally " -"be ``static``, so that they don't clash with other extensions." -msgstr "" - -msgid "Return this array from your export hook instead of ``NULL``:" -msgstr "" - -msgid "" -"PyMODEXPORT_FUNC\n" -"PyModExport_spam(void)\n" -"{\n" -" return spam_slots;\n" -"}" -msgstr "" - -msgid "Now, recompile and try it out:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> print(spam)\n" -"" -msgstr "" - -msgid "You have an extension module! Try ``help(spam)`` to see the docstring." -msgstr "" - -msgid "The next step will be adding a function." -msgstr "" - -msgid "Exposing a function" -msgstr "" - -msgid "" -"To expose the :c:func:`system` C function directly to Python, we'll need to " -"write a layer of glue code to convert arguments from Python objects to C " -"values, and the C return value back to Python." -msgstr "" - -msgid "" -"One of the simplest ways to write glue code is a \":c:data:`METH_O`\" " -"function, which takes two Python objects and returns one. All Python objects " -"-- regardless of the Python type -- are represented in C as pointers to the :" -"c:type:`PyObject` structure." -msgstr "" - -msgid "Add such a function above the slots array::" -msgstr "" - -msgid "" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" Py_RETURN_NONE;\n" -"}" -msgstr "" - -msgid "" -"For now, we ignore the arguments, and use the :c:macro:`Py_RETURN_NONE` " -"macro, which expands to a ``return`` statement that properly returns a " -"Python :py:data:`None` object." -msgstr "" - -msgid "" -"Recompile your extension to make sure you don't have syntax errors. We " -"haven't yet added ``spam_system`` to the module, so you might get a warning " -"that ``spam_system`` is unused." -msgstr "" - -msgid "Method definitions" -msgstr "" - -msgid "" -"To expose the C function to Python, you will need to provide several pieces " -"of information in a structure called :c:type:`PyMethodDef` [#why-" -"pymethoddef]_:" -msgstr "" - -msgid "``ml_name``: the name of the Python function;" -msgstr "" - -msgid "``ml_doc``: a docstring;" -msgstr "" - -msgid "``ml_meth``: the C function to be called; and" -msgstr "" - -msgid "" -"``ml_flags``: a set of flags describing details like how Python arguments " -"are passed to the C function. We'll use :c:data:`METH_O` here -- the flag " -"that matches our ``spam_system`` function's signature." -msgstr "" - -msgid "" -"Because modules typically create several functions, these definitions need " -"to be collected in an array, with a zero-filled sentinel at the end. Add " -"this array just below the ``spam_system`` function:" -msgstr "" - -msgid "" -"\n" -"static PyMethodDef spam_methods[] = {\n" -" {\n" -" .ml_name=\"system\",\n" -" .ml_meth=spam_system,\n" -" .ml_flags=METH_O,\n" -" .ml_doc=\"Execute a shell command.\",\n" -" },\n" -" {NULL, NULL, 0, NULL} /* Sentinel */\n" -"};\n" -"\n" -msgstr "" - -msgid "" -"As with module slots, a zero-filled sentinel marks the end of the array." -msgstr "" - -msgid "" -"Next, we'll add the method to the module. Add a :c:data:`Py_mod_methods` " -"slot to your :c:type:`PyMethodDef` array:" -msgstr "" - -msgid "" -"\n" -"PyABIInfo_VAR(abi_info);\n" -"\n" -"static PySlot spam_slots[] = {\n" -" PySlot_STATIC_DATA(Py_mod_abi, &abi_info),\n" -" PySlot_STATIC_DATA(Py_mod_name, \"spam\"),\n" -" PySlot_STATIC_DATA(Py_mod_doc, \"A wonderful module with an example " -"function\"),\n" -" PySlot_STATIC_DATA(Py_mod_methods, spam_methods),\n" -" PySlot_END\n" -"};\n" -"\n" -msgstr "" - -msgid "" -"Recompile your extension again, and test it. Be sure to restart the Python " -"interpreter, so that ``import spam`` picks up the new version of the module." -msgstr "" - -msgid "You should now be able to call the function:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> print(spam.system)\n" -"\n" -">>> print(spam.system('whoami'))\n" -"None" -msgstr "" - -msgid "" -"Note that our ``spam.system`` does not yet run the ``whoami`` command; it " -"only returns ``None``." -msgstr "" - -msgid "" -"Check that the function accepts exactly one argument, as specified by the :c:" -"data:`METH_O` flag:" -msgstr "" - -msgid "" -">>> print(spam.system('too', 'many', 'arguments'))\n" -"Traceback (most recent call last):\n" -" ...\n" -"TypeError: spam.system() takes exactly one argument (3 given)" -msgstr "" - -msgid "Returning an integer" -msgstr "" - -msgid "" -"Now, let's take a look at the return value. Instead of ``None``, we'll want " -"``spam.system`` to return a number -- that is, a Python :py:type:`int` " -"object. Eventually this will be the exit code of a system command, but let's " -"start with a fixed value, say, ``3``." -msgstr "" - -msgid "" -"The Python C API provides a function to create a Python :py:type:`int` " -"object from a C ``int`` value: :c:func:`PyLong_FromLong`. [#why-" -"pylongfromlong]_" -msgstr "" - -msgid "To call it, replace the ``Py_RETURN_NONE`` with the following 3 lines:" -msgstr "" - -msgid "" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" int status = 3;\n" -" PyObject *result = PyLong_FromLong(status);\n" -" return result;\n" -"}" -msgstr "" - -msgid "" -"Recompile, restart the Python interpreter again, and check that the function " -"now returns 3:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> spam.system('whoami')\n" -"3" -msgstr "" - -msgid "Accepting a string" -msgstr "" - -msgid "Finally, let's handle the function argument." -msgstr "" - -msgid "" -"Our C function, :c:func:`!spam_system`, takes two arguments. The first one, " -"``PyObject *self``, will be set to the ``spam`` module object. This isn't " -"useful in our case, so we'll ignore it." -msgstr "" - -msgid "" -"The other one, ``PyObject *arg``, will be set to the object that the user " -"passed from Python. We expect that it should be a Python string. In order to " -"use the information in it, we will need to convert it to a C value -- in " -"this case, a C string (``const char *``)." -msgstr "" - -msgid "" -"There's a slight type mismatch here: Python's :py:class:`str` objects store " -"Unicode text, but C strings are arrays of bytes. So, we'll need to *encode* " -"the data, and we'll use the UTF-8 encoding for it. (UTF-8 might not always " -"be correct for system commands, but it's what :py:meth:`str.encode` uses by " -"default, and the C API has special support for it.)" -msgstr "" - -msgid "" -"The function to encode a Python string into a UTF-8 buffer is named :c:func:" -"`PyUnicode_AsUTF8AndSize` [#why-pyunicodeasutf8]_. Call it like this:" -msgstr "" - -msgid "" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" const char *command = PyUnicode_AsUTF8AndSize(arg, NULL);\n" -" int status = 3;\n" -" PyObject *result = PyLong_FromLong(status);\n" -" return result;\n" -"}" -msgstr "" - -msgid "" -"If :c:func:`PyUnicode_AsUTF8AndSize` is successful, *command* will point to " -"the resulting C string -- a zero-terminated array of bytes [#embedded-nul]_. " -"This buffer is managed by the *arg* object, which means we don't need to " -"free it, but we must follow some rules:" -msgstr "" - -msgid "" -"We should only use the buffer inside the ``spam_system`` function. After " -"``spam_system`` returns, *arg* and the buffer it manages might be garbage-" -"collected." -msgstr "" - -msgid "We must not modify it. This is why we use ``const``." -msgstr "" - -msgid "" -"If :c:func:`PyUnicode_AsUTF8AndSize` was *not* successful, it returns a " -"``NULL`` pointer. When calling *any* Python C API, we always need to handle " -"such error cases. The way to do this in general is left for later chapters " -"of this documentation. For now, be assured that we are already handling " -"errors from :c:func:`PyLong_FromLong` correctly." -msgstr "" - -msgid "" -"For the :c:func:`PyUnicode_AsUTF8AndSize` call, the correct way to handle " -"errors is returning ``NULL`` from ``spam_system``. Add an ``if`` block for " -"this:" -msgstr "" - -msgid "" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" const char *command = PyUnicode_AsUTF8AndSize(arg);\n" -" if (command == NULL) {\n" -" return NULL;\n" -" }\n" -" int status = 3;\n" -" PyObject *result = PyLong_FromLong(status);\n" -" return result;\n" -"}" -msgstr "" - -msgid "" -"To test that error handling works, compile again, restart Python so that " -"``import spam`` picks up the new version of your module, and try passing a " -"non-string value to your function:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> spam.system(3)\n" -"Traceback (most recent call last):\n" -" ...\n" -"TypeError: bad argument type for built-in operation" -msgstr "" - -msgid "" -"Now, all that is left is calling the C library function :c:func:`system` " -"with the ``char *`` buffer, and using its result instead of the ``3``:" -msgstr "" - -msgid "" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" const char *command = PyUnicode_AsUTF8AndSize(arg);\n" -" if (command == NULL) {\n" -" return NULL;\n" -" }\n" -" int status = system(command);\n" -" PyObject *result = PyLong_FromLong(status);\n" -" return result;\n" -"}" -msgstr "" - -msgid "" -"Compile your module, restart Python, and test. This time, you should see " -"your username -- the output of the ``whoami`` system command:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> result = spam.system('whoami')\n" -"User Name\n" -">>> result\n" -"0" -msgstr "" - -msgid "" -"You can also test with other commands, like ``ls``, ``dir``, or one that " -"doesn't exist:" -msgstr "" - -msgid "" -">>> import spam\n" -">>> result = spam.system('nonexistent-command')\n" -"sh: line 1: nonexistent-command: command not found\n" -">>> result\n" -"32512" -msgstr "" - -msgid "The result" -msgstr "" - -msgid "" -"Congratulations! You have written a complete Python C API extension module, " -"and completed this tutorial!" -msgstr "" - -msgid "Here is the entire source file, for your convenience:" -msgstr "" - -msgid "" -"/// Includes\n" -"\n" -"#include \n" -"#include // for system()\n" -"\n" -"/// Implementation of spam.system\n" -"\n" -"static PyObject *\n" -"spam_system(PyObject *self, PyObject *arg)\n" -"{\n" -" const char *command = PyUnicode_AsUTF8AndSize(arg, NULL);\n" -" if (command == NULL) {\n" -" return NULL;\n" -" }\n" -" int status = system(command);\n" -" PyObject *result = PyLong_FromLong(status);\n" -" return result;\n" -"}\n" -"\n" -"/// Module method table\n" -"\n" -"static PyMethodDef spam_methods[] = {\n" -" {\n" -" .ml_name=\"system\",\n" -" .ml_meth=spam_system,\n" -" .ml_flags=METH_O,\n" -" .ml_doc=\"Execute a shell command.\",\n" -" },\n" -" {NULL, NULL, 0, NULL} /* Sentinel */\n" -"};\n" -"\n" -"/// Module slot table\n" -"\n" -"PyABIInfo_VAR(abi_info);\n" -"\n" -"static PySlot spam_slots[] = {\n" -" PySlot_STATIC_DATA(Py_mod_abi, &abi_info),\n" -" PySlot_STATIC_DATA(Py_mod_name, \"spam\"),\n" -" PySlot_STATIC_DATA(Py_mod_doc, \"A wonderful module with an example " -"function\"),\n" -" PySlot_STATIC_DATA(Py_mod_methods, spam_methods),\n" -" PySlot_END\n" -"};\n" -"\n" -"/// Export hook prototype\n" -"\n" -"PyMODEXPORT_FUNC PyModExport_spam(void);\n" -"\n" -"/// Module export hook\n" -"\n" -"PyMODEXPORT_FUNC\n" -"PyModExport_spam(void)\n" -"{\n" -" return spam_slots;\n" -"}\n" -msgstr "" - -msgid "Appendix: Other build tools" -msgstr "" - -msgid "" -"You should be able to follow this tutorial -- except the *Running your build " -"tool* section itself -- with a build tool other than ``meson-python``." -msgstr "" - -msgid "" -"The Python Packaging User Guide has a `list of recommended tools `_; be sure to choose one for the C language." -msgstr "" - -msgid "Workaround for missing PyInit function" -msgstr "" - -msgid "" -"If your build tool output complains about missing ``PyInit_spam``, add the " -"following function to your module for now:" -msgstr "" - -msgid "" -"// A workaround\n" -"void *PyInit_spam(void) { return NULL; }" -msgstr "" - -msgid "" -"This is a shim for an old-style :ref:`initialization function `, which was required in extension modules for CPython 3.14 and " -"below. Current CPython does not need it, but some build tools may still " -"assume that all extension modules need to define it." -msgstr "" - -msgid "" -"If you use this workaround, you will get the exception ``SystemError: " -"initialization of spam failed without raising an exception`` instead of " -"``ImportError: dynamic module does not define module export function``." -msgstr "" - -msgid "Compiling directly" -msgstr "" - -msgid "" -"Using a third-party build tool is heavily recommended, as it will take care " -"of various details of your platform and Python installation, of naming the " -"resulting extension, and, later, of distributing your work." -msgstr "" - -msgid "" -"If you are building an extension for as *specific* system, or for yourself " -"only, you might instead want to run your compiler directly. The way to do " -"this is system-specific; be prepared for issues you will need to solve " -"yourself." -msgstr "" - -msgid "Linux" -msgstr "" - -msgid "" -"On Linux, the Python development package may include a ``python3-config`` " -"command that prints out the required compiler flags. If you use it, check " -"that it corresponds to the CPython interpreter you'll use to load the " -"module. Then, start with the following command:" -msgstr "" - -msgid "" -"gcc --shared $(python3-config --cflags --ldflags) spammodule.c -o spam.so" -msgstr "" - -msgid "" -"This should generate a ``spam.so`` file that you need to put in a directory " -"on :py:attr:`sys.path`." -msgstr "" - -msgid "Footnotes" -msgstr "" - -msgid "``spam`` is the favorite food of Monty Python fans..." -msgstr "" - -msgid "" -"The source file name is entirely up to you, though some tools can be picky " -"about the ``.c`` extension. This tutorial uses the traditional ``*module.c`` " -"suffix. Some people would just use :file:`spam.c` to implement a module " -"named ``spam``, projects where Python isn't the primary language might use " -"``py_spam.c``, and so on." -msgstr "" - -msgid "" -"Including :file:`stdlib.h` is technically not necessary, since :file:`Python." -"h` includes it and :ref:`several other standard headers ` for its own use or for backwards compatibility. However, it is " -"good practice to explicitly include what you need." -msgstr "" - -msgid "" -"The :c:type:`!PyMethodDef` structure is also used to create methods of " -"classes, so there's no separate \":c:type:`!PyFunctionDef`\"." -msgstr "" - -msgid "" -"The name :c:func:`PyLong_FromLong` might not seem obvious. ``PyLong`` refers " -"to a the Python :py:class:`int`, which was originally called ``long``; the " -"``FromLong`` refers to the C ``long`` (or ``long int``) type." -msgstr "" - -msgid "" -"Here, ``PyUnicode`` refers to the original name of the Python :py:class:" -"`str` class: ``unicode``." -msgstr "" - -msgid "" -"The ``AndSize`` part of the name refers to the fact that this function can " -"also retrieve the size of the buffer, using an output argument. We don't " -"need this, so we set the second argument to NULL." -msgstr "" - -msgid "" -"We're ignoring the fact that Python strings can also contain NUL bytes, " -"which terminate a C string. In other words, our function will treat ``spam." -"system(\"foo\\0bar\")`` as ``spam.system(\"foo\")``. This possibility can " -"lead to security issues, so the real ``os.system`` function size checks for " -"this case and raises an error." -msgstr "" diff --git a/extending/index.po b/extending/index.po index aef36da..7f42b29 100644 --- a/extending/index.po +++ b/extending/index.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,14 +36,15 @@ msgstr "" msgid "" "This document assumes basic knowledge about C and Python. For an informal " "introduction to Python, see :ref:`tutorial-index`. :ref:`reference-index` " -"gives a more formal definition of the language. :ref:`library-index` " -"documents the existing object types, functions and modules (both built-in " -"and written in Python) that give the language its wide application range." +"gives a more formal definition of the language. :ref:`builtins-index` " +"documents the built-in functions and object types, and :ref:`library-index` " +"documents the modules (both built-in and written in Python) that give the " +"language its wide application range." msgstr "" msgid "" -"For a detailed description of the whole Python/C API, see the separate :ref:" -"`c-api-index`." +"For a detailed description of the whole Python/C API, see the " +"separate :ref:`c-api-index`." msgstr "" msgid "" diff --git a/extending/newtypes.po b/extending/newtypes.po index 505a7fb..b06f20b 100644 --- a/extending/newtypes.po +++ b/extending/newtypes.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -163,9 +163,9 @@ msgstr "" msgid "" "These fields tell the runtime how much memory to allocate when new objects " "of this type are created. Python has some built-in support for variable " -"length structures (think: strings, tuples) which is where the :c:member:" -"`~PyTypeObject.tp_itemsize` field comes in. This will be dealt with " -"later. ::" +"length structures (think: strings, tuples) which is where " +"the :c:member:`~PyTypeObject.tp_itemsize` field comes in. This will be " +"dealt with later. ::" msgstr "" msgid "const char *tp_doc;" @@ -206,8 +206,8 @@ msgid "" msgstr "" msgid "" -"If your type supports garbage collection, the destructor should call :c:func:" -"`PyObject_GC_UnTrack` before clearing any member fields::" +"If your type supports garbage collection, the destructor should " +"call :c:func:`PyObject_GC_UnTrack` before clearing any member fields::" msgstr "" msgid "" @@ -232,8 +232,8 @@ msgid "" "additional Python code to be executed may detect that an exception has been " "set. This can lead to misleading errors from the interpreter. The proper " "way to protect against this is to save a pending exception before performing " -"the unsafe action, and restoring it when done. This can be done using the :" -"c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` functions::" +"the unsafe action, and restoring it when done. This can be done using " +"the :c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` functions::" msgstr "" msgid "" @@ -268,14 +268,16 @@ msgstr "" msgid "" "There are limitations to what you can safely do in a deallocator function. " -"First, if your type supports garbage collection (using :c:member:" -"`~PyTypeObject.tp_traverse` and/or :c:member:`~PyTypeObject.tp_clear`), some " -"of the object's members can have been cleared or finalized by the time :c:" -"member:`~PyTypeObject.tp_dealloc` is called. Second, in :c:member:" -"`~PyTypeObject.tp_dealloc`, your object is in an unstable state: its " -"reference count is equal to zero. Any call to a non-trivial object or API " -"(as in the example above) might end up calling :c:member:`~PyTypeObject." -"tp_dealloc` again, causing a double free and a crash." +"First, if your type supports garbage collection " +"(using :c:member:`~PyTypeObject.tp_traverse` and/" +"or :c:member:`~PyTypeObject.tp_clear`), some of the object's members can " +"have been cleared or finalized by the " +"time :c:member:`~PyTypeObject.tp_dealloc` is called. Second, " +"in :c:member:`~PyTypeObject.tp_dealloc`, your object is in an unstable " +"state: its reference count is equal to zero. Any call to a non-trivial " +"object or API (as in the example above) might end up " +"calling :c:member:`~PyTypeObject.tp_dealloc` again, causing a double free " +"and a crash." msgstr "" msgid "" @@ -292,8 +294,9 @@ msgstr "" msgid "" "In Python, there are two ways to generate a textual representation of an " -"object: the :func:`repr` function, and the :func:`str` function. (The :func:" -"`print` function just calls :func:`str`.) These handlers are both optional." +"object: the :func:`repr` function, and the :func:`str` function. " +"(The :func:`print` function just calls :func:`str`.) These handlers are " +"both optional." msgstr "" msgid "" @@ -319,18 +322,19 @@ msgstr "" msgid "" "If no :c:member:`~PyTypeObject.tp_repr` handler is specified, the " -"interpreter will supply a representation that uses the type's :c:member:" -"`~PyTypeObject.tp_name` and a uniquely identifying value for the object." +"interpreter will supply a representation that uses the " +"type's :c:member:`~PyTypeObject.tp_name` and a uniquely identifying value " +"for the object." msgstr "" msgid "" -"The :c:member:`~PyTypeObject.tp_str` handler is to :func:`str` what the :c:" -"member:`~PyTypeObject.tp_repr` handler described above is to :func:`repr`; " -"that is, it is called when Python code calls :func:`str` on an instance of " -"your object. Its implementation is very similar to the :c:member:" -"`~PyTypeObject.tp_repr` function, but the resulting string is intended for " -"human consumption. If :c:member:`~PyTypeObject.tp_str` is not specified, " -"the :c:member:`~PyTypeObject.tp_repr` handler is used instead." +"The :c:member:`~PyTypeObject.tp_str` handler is to :func:`str` what " +"the :c:member:`~PyTypeObject.tp_repr` handler described above is " +"to :func:`repr`; that is, it is called when Python code calls :func:`str` on " +"an instance of your object. Its implementation is very similar to " +"the :c:member:`~PyTypeObject.tp_repr` function, but the resulting string is " +"intended for human consumption. If :c:member:`~PyTypeObject.tp_str` is not " +"specified, the :c:member:`~PyTypeObject.tp_repr` handler is used instead." msgstr "" msgid "Here is a simple example::" @@ -361,9 +365,10 @@ msgstr "" msgid "" "Python supports two pairs of attribute handlers; a type that supports " "attributes only needs to implement the functions for one pair. The " -"difference is that one pair takes the name of the attribute as a :c:expr:" -"`char\\*`, while the other accepts a :c:expr:`PyObject*`. Each type can use " -"whichever pair makes more sense for the implementation's convenience. ::" +"difference is that one pair takes the name of the attribute as " +"a :c:expr:`char\\*`, while the other accepts a :c:expr:`PyObject*`. Each " +"type can use whichever pair makes more sense for the implementation's " +"convenience. ::" msgstr "" msgid "" @@ -413,9 +418,10 @@ msgid "" "dictionary of the type object. Each descriptor controls access to one " "attribute of the instance object. Each of the tables is optional; if all " "three are ``NULL``, instances of the type will only have attributes that are " -"inherited from their base type, and should leave the :c:member:" -"`~PyTypeObject.tp_getattro` and :c:member:`~PyTypeObject.tp_setattro` fields " -"``NULL`` as well, allowing the base type to handle attributes." +"inherited from their base type, and should leave " +"the :c:member:`~PyTypeObject.tp_getattro` " +"and :c:member:`~PyTypeObject.tp_setattro` fields ``NULL`` as well, allowing " +"the base type to handle attributes." msgstr "" msgid "The tables are declared as three fields of the type object::" @@ -445,8 +451,8 @@ msgstr "" msgid "" "One entry should be defined for each method provided by the type; no entries " "are needed for methods inherited from a base type. One additional entry is " -"needed at the end; it is a sentinel that marks the end of the array. The :c:" -"member:`~PyMethodDef.ml_name` field of the sentinel must be ``NULL``." +"needed at the end; it is a sentinel that marks the end of the array. " +"The :c:member:`~PyMethodDef.ml_name` field of the sentinel must be ``NULL``." msgstr "" msgid "" @@ -460,7 +466,7 @@ msgid "" "typedef struct PyMemberDef {\n" " const char *name;\n" " int type;\n" -" int offset;\n" +" Py_ssize_t offset;\n" " int flags;\n" " const char *doc;\n" "} PyMemberDef;" @@ -471,10 +477,10 @@ msgid "" "added to the type which will be able to extract a value from the instance " "structure. The :c:member:`~PyMemberDef.type` field should contain a type " "code like :c:macro:`Py_T_INT` or :c:macro:`Py_T_DOUBLE`; the value will be " -"used to determine how to convert Python values to and from C values. The :c:" -"member:`~PyMemberDef.flags` field is used to store flags which control how " -"the attribute can be accessed: you can set it to :c:macro:`Py_READONLY` to " -"prevent Python code from setting it." +"used to determine how to convert Python values to and from C values. " +"The :c:member:`~PyMemberDef.flags` field is used to store flags which " +"control how the attribute can be accessed: you can set it " +"to :c:macro:`Py_READONLY` to prevent Python code from setting it." msgstr "" msgid "" @@ -482,8 +488,8 @@ msgid "" "table to build descriptors that are used at runtime is that any attribute " "defined this way can have an associated doc string simply by providing the " "text in the table. An application can use the introspection API to retrieve " -"the descriptor from the class object, and get the doc string using its :attr:" -"`~type.__doc__` attribute." +"the descriptor from the class object, and get the doc string using " +"its :attr:`~type.__doc__` attribute." msgstr "" msgid "" @@ -496,8 +502,8 @@ msgstr "" msgid "" "For simplicity, only the :c:expr:`char\\*` version will be demonstrated " -"here; the type of the name parameter is the only difference between the :c:" -"expr:`char\\*` and :c:expr:`PyObject*` flavors of the interface. This " +"here; the type of the name parameter is the only difference between " +"the :c:expr:`char\\*` and :c:expr:`PyObject*` flavors of the interface. This " "example effectively does the same thing as the generic example above, but " "does not use the generic support added in Python 2.2. It explains how the " "handler functions are called, so that if you do need to extend their " @@ -530,12 +536,13 @@ msgid "" msgstr "" msgid "" -"The :c:member:`~PyTypeObject.tp_setattr` handler is called when the :meth:" -"`~object.__setattr__` or :meth:`~object.__delattr__` method of a class " -"instance would be called. When an attribute should be deleted, the third " -"parameter will be ``NULL``. Here is an example that simply raises an " -"exception; if this were really all you wanted, the :c:member:`~PyTypeObject." -"tp_setattr` handler should be set to ``NULL``. ::" +"The :c:member:`~PyTypeObject.tp_setattr` handler is called when " +"the :meth:`~object.__setattr__` or :meth:`~object.__delattr__` method of a " +"class instance would be called. When an attribute should be deleted, the " +"third parameter will be ``NULL``. Here is an example that simply raises an " +"exception; if this were really all you wanted, " +"the :c:member:`~PyTypeObject.tp_setattr` handler should be set to " +"``NULL``. ::" msgstr "" msgid "" @@ -556,8 +563,8 @@ msgstr "" msgid "" "The :c:member:`~PyTypeObject.tp_richcompare` handler is called when " "comparisons are needed. It is analogous to the :ref:`rich comparison " -"methods `, like :meth:`!__lt__`, and also called by :c:func:" -"`PyObject_RichCompare` and :c:func:`PyObject_RichCompareBool`." +"methods `, like :meth:`!__lt__`, and also called " +"by :c:func:`PyObject_RichCompare` and :c:func:`PyObject_RichCompareBool`." msgstr "" msgid "" @@ -634,8 +641,8 @@ msgstr "" msgid "" "If you wish your object to be able to act like a number, a sequence, or a " "mapping object, then you place the address of a structure that implements " -"the C type :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, or :c:" -"type:`PyMappingMethods`, respectively. It is up to you to fill in this " +"the C type :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, " +"or :c:type:`PyMappingMethods`, respectively. It is up to you to fill in this " "structure with appropriate values. You can find examples of the use of each " "of these in the :file:`Objects` directory of the Python source " "distribution. ::" @@ -689,16 +696,17 @@ msgid "" msgstr "" msgid "" -"*args* is a tuple containing the arguments to the call. You can use :c:func:" -"`PyArg_ParseTuple` to extract the arguments." +"*args* is a tuple containing the arguments to the call. You can " +"use :c:func:`PyArg_ParseTuple` to extract the arguments." msgstr "" msgid "" "*kwds* is a dictionary of keyword arguments that were passed. If this is non-" -"``NULL`` and you support keyword arguments, use :c:func:" -"`PyArg_ParseTupleAndKeywords` to extract the arguments. If you do not want " -"to support keyword arguments and this is non-``NULL``, raise a :exc:" -"`TypeError` with a message saying that keyword arguments are not supported." +"``NULL`` and you support keyword arguments, " +"use :c:func:`PyArg_ParseTupleAndKeywords` to extract the arguments. If you " +"do not want to support keyword arguments and this is non-``NULL``, raise " +"a :exc:`TypeError` with a message saying that keyword arguments are not " +"supported." msgstr "" msgid "Here is a toy ``tp_call`` implementation::" @@ -736,15 +744,16 @@ msgid "" "take exactly one parameter, the instance for which they are being called, " "and return a new reference. In the case of an error, they should set an " "exception and return ``NULL``. :c:member:`~PyTypeObject.tp_iter` " -"corresponds to the Python :meth:`~object.__iter__` method, while :c:member:" -"`~PyTypeObject.tp_iternext` corresponds to the Python :meth:`~iterator." -"__next__` method." +"corresponds to the Python :meth:`~object.__iter__` method, " +"while :c:member:`~PyTypeObject.tp_iternext` corresponds to the " +"Python :meth:`~iterator.__next__` method." msgstr "" msgid "" -"Any :term:`iterable` object must implement the :c:member:`~PyTypeObject." -"tp_iter` handler, which must return an :term:`iterator` object. Here the " -"same guidelines apply as for Python classes:" +"Any :term:`iterable` object must implement " +"the :c:member:`~PyTypeObject.tp_iter` handler, which must return " +"an :term:`iterator` object. Here the same guidelines apply as for Python " +"classes:" msgstr "" msgid "" @@ -755,23 +764,26 @@ msgstr "" msgid "" "Objects which can only be iterated over once (usually due to side effects of " -"iteration, such as file objects) can implement :c:member:`~PyTypeObject." -"tp_iter` by returning a new reference to themselves -- and should also " -"therefore implement the :c:member:`~PyTypeObject.tp_iternext` handler." -msgstr "" - -msgid "" -"Any :term:`iterator` object should implement both :c:member:`~PyTypeObject." -"tp_iter` and :c:member:`~PyTypeObject.tp_iternext`. An iterator's :c:member:" -"`~PyTypeObject.tp_iter` handler should return a new reference to the " -"iterator. Its :c:member:`~PyTypeObject.tp_iternext` handler should return a " -"new reference to the next object in the iteration, if there is one. If the " -"iteration has reached the end, :c:member:`~PyTypeObject.tp_iternext` may " -"return ``NULL`` without setting an exception, or it may set :exc:" -"`StopIteration` *in addition* to returning ``NULL``; avoiding the exception " -"can yield slightly better performance. If an actual error occurs, :c:member:" -"`~PyTypeObject.tp_iternext` should always set an exception and return " -"``NULL``." +"iteration, such as file objects) can " +"implement :c:member:`~PyTypeObject.tp_iter` by returning a new reference to " +"themselves -- and should also therefore implement " +"the :c:member:`~PyTypeObject.tp_iternext` handler." +msgstr "" + +msgid "" +"Any :term:`iterator` object should implement " +"both :c:member:`~PyTypeObject.tp_iter` " +"and :c:member:`~PyTypeObject.tp_iternext`. An " +"iterator's :c:member:`~PyTypeObject.tp_iter` handler should return a new " +"reference to the iterator. Its :c:member:`~PyTypeObject.tp_iternext` " +"handler should return a new reference to the next object in the iteration, " +"if there is one. If the iteration has reached the " +"end, :c:member:`~PyTypeObject.tp_iternext` may return ``NULL`` without " +"setting an exception, or it may set :exc:`StopIteration` *in addition* to " +"returning ``NULL``; avoiding the exception can yield slightly better " +"performance. If an actual error " +"occurs, :c:member:`~PyTypeObject.tp_iternext` should always set an exception " +"and return ``NULL``." msgstr "" msgid "Weak Reference Support" diff --git a/extending/newtypes_tutorial.po b/extending/newtypes_tutorial.po index 697c614..c8dc0fe 100644 --- a/extending/newtypes_tutorial.po +++ b/extending/newtypes_tutorial.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,14 +37,14 @@ msgid "The Basics" msgstr "" msgid "" -"The :term:`CPython` runtime sees all Python objects as variables of type :c:" -"expr:`PyObject*`, which serves as a \"base type\" for all Python objects. " -"The :c:type:`PyObject` structure itself only contains the object's :term:" -"`reference count` and a pointer to the object's \"type object\". This is " -"where the action is; the type object determines which (C) functions get " -"called by the interpreter when, for instance, an attribute gets looked up on " -"an object, a method called, or it is multiplied by another object. These C " -"functions are called \"type methods\"." +"The :term:`CPython` runtime sees all Python objects as variables of " +"type :c:expr:`PyObject*`, which serves as a \"base type\" for all Python " +"objects. The :c:type:`PyObject` structure itself only contains the " +"object's :term:`reference count` and a pointer to the object's \"type " +"object\". This is where the action is; the type object determines which (C) " +"functions get called by the interpreter when, for instance, an attribute " +"gets looked up on an object, a method called, or it is multiplied by another " +"object. These C functions are called \"type methods\"." msgstr "" msgid "" @@ -61,8 +61,8 @@ msgstr "" msgid "" "What we're showing here is the traditional way of defining *static* " "extension types. It should be adequate for most uses. The C API also " -"allows defining heap-allocated extension types using the :c:func:" -"`PyType_FromSpec` function, which isn't covered in this tutorial." +"allows defining heap-allocated extension types using " +"the :c:func:`PyType_FromSpec` function, which isn't covered in this tutorial." msgstr "" msgid "" @@ -239,9 +239,10 @@ msgstr "" msgid "" "Note that the name is a dotted name that includes both the module name and " "the name of the type within the module. The module in this case is :mod:`!" -"custom` and the type is :class:`!Custom`, so we set the type name to :class:" -"`!custom.Custom`. Using the real dotted import path is important to make " -"your type compatible with the :mod:`pydoc` and :mod:`pickle` modules. ::" +"custom` and the type is :class:`!Custom`, so we set the type name " +"to :class:`!custom.Custom`. Using the real dotted import path is important " +"to make your type compatible with the :mod:`pydoc` and :mod:`pickle` " +"modules. ::" msgstr "" msgid "" @@ -250,9 +251,9 @@ msgid "" msgstr "" msgid "" -"This is so that Python knows how much memory to allocate when creating new :" -"class:`!Custom` instances. :c:member:`~PyTypeObject.tp_itemsize` is only " -"used for variable-sized objects and should otherwise be zero." +"This is so that Python knows how much memory to allocate when creating " +"new :class:`!Custom` instances. :c:member:`~PyTypeObject.tp_itemsize` is " +"only used for variable-sized objects and should otherwise be zero." msgstr "" msgid "" @@ -288,19 +289,19 @@ msgid ".tp_doc = PyDoc_STR(\"Custom objects\")," msgstr "" msgid "" -"To enable object creation, we have to provide a :c:member:`~PyTypeObject." -"tp_new` handler. This is the equivalent of the Python method :meth:`~object." -"__new__`, but has to be specified explicitly. In this case, we can just use " -"the default implementation provided by the API function :c:func:" -"`PyType_GenericNew`. ::" +"To enable object creation, we have to provide " +"a :c:member:`~PyTypeObject.tp_new` handler. This is the equivalent of the " +"Python method :meth:`~object.__new__`, but has to be specified explicitly. " +"In this case, we can just use the default implementation provided by the API " +"function :c:func:`PyType_GenericNew`. ::" msgstr "" msgid ".tp_new = PyType_GenericNew," msgstr "" msgid "" -"Everything else in the file should be familiar, except for some code in :c:" -"func:`!custom_module_exec`::" +"Everything else in the file should be familiar, except for some code " +"in :c:func:`!custom_module_exec`::" msgstr "" msgid "" @@ -322,8 +323,8 @@ msgid "" msgstr "" msgid "" -"This adds the type to the module dictionary. This allows us to create :" -"class:`!Custom` instances by calling the :class:`!Custom` class:" +"This adds the type to the module dictionary. This allows us to " +"create :class:`!Custom` instances by calling the :class:`!Custom` class:" msgstr "" msgid "" @@ -574,13 +575,13 @@ msgid ".tp_dealloc = Custom_dealloc," msgstr "" msgid "" -"This method first clears the reference counts of the two Python attributes. :" -"c:func:`Py_XDECREF` correctly handles the case where its argument is " -"``NULL`` (which might happen here if ``tp_new`` failed midway). It then " -"calls the :c:member:`~PyTypeObject.tp_free` member of the object's type " -"(computed by ``Py_TYPE(self)``) to free the object's memory. Note that the " -"object's type might not be :class:`!CustomType`, because the object may be " -"an instance of a subclass." +"This method first clears the reference counts of the two Python " +"attributes. :c:func:`Py_XDECREF` correctly handles the case where its " +"argument is ``NULL`` (which might happen here if ``tp_new`` failed midway). " +"It then calls the :c:member:`~PyTypeObject.tp_free` member of the object's " +"type (computed by ``Py_TYPE(self)``) to free the object's memory. Note that " +"the object's type might not be :class:`!CustomType`, because the object may " +"be an instance of a subclass." msgstr "" msgid "" @@ -650,12 +651,13 @@ msgstr "" msgid "" "The ``tp_new`` handler is responsible for creating (as opposed to " -"initializing) objects of the type. It is exposed in Python as the :meth:" -"`~object.__new__` method. It is not required to define a ``tp_new`` member, " -"and indeed many extension types will simply reuse :c:func:" -"`PyType_GenericNew` as done in the first version of the :class:`!Custom` " -"type above. In this case, we use the ``tp_new`` handler to initialize the " -"``first`` and ``last`` attributes to non-``NULL`` default values." +"initializing) objects of the type. It is exposed in Python as " +"the :meth:`~object.__new__` method. It is not required to define a " +"``tp_new`` member, and indeed many extension types will simply " +"reuse :c:func:`PyType_GenericNew` as done in the first version of " +"the :class:`!Custom` type above. In this case, we use the ``tp_new`` " +"handler to initialize the ``first`` and ``last`` attributes to non-``NULL`` " +"default values." msgstr "" msgid "" @@ -663,8 +665,8 @@ msgid "" "``CustomType``, if a subclass is instantiated) and any arguments passed when " "the type was called, and is expected to return the instance created. " "``tp_new`` handlers always accept positional and keyword arguments, but they " -"often ignore the arguments, leaving the argument handling to initializer (a." -"k.a. ``tp_init`` in C or ``__init__`` in Python) methods." +"often ignore the arguments, leaving the argument handling to initializer " +"(a.k.a. ``tp_init`` in C or ``__init__`` in Python) methods." msgstr "" msgid "" @@ -681,8 +683,9 @@ msgid "self = (CustomObject *) type->tp_alloc(type, 0);" msgstr "" msgid "" -"Since memory allocation may fail, we must check the :c:member:`~PyTypeObject." -"tp_alloc` result against ``NULL`` before proceeding." +"Since memory allocation may fail, we must check " +"the :c:member:`~PyTypeObject.tp_alloc` result against ``NULL`` before " +"proceeding." msgstr "" msgid "" @@ -694,14 +697,15 @@ msgstr "" msgid "" "If you are creating a co-operative :c:member:`~PyTypeObject.tp_new` (one " -"that calls a base type's :c:member:`~PyTypeObject.tp_new` or :meth:`~object." -"__new__`), you must *not* try to determine what method to call using method " -"resolution order at runtime. Always statically determine what type you are " -"going to call, and call its :c:member:`~PyTypeObject.tp_new` directly, or " -"via ``type->tp_base->tp_new``. If you do not do this, Python subclasses of " -"your type that also inherit from other Python-defined classes may not work " -"correctly. (Specifically, you may not be able to create instances of such " -"subclasses without getting a :exc:`TypeError`.)" +"that calls a base type's :c:member:`~PyTypeObject.tp_new` " +"or :meth:`~object.__new__`), you must *not* try to determine what method to " +"call using method resolution order at runtime. Always statically determine " +"what type you are going to call, and call " +"its :c:member:`~PyTypeObject.tp_new` directly, or via ``type->tp_base-" +">tp_new``. If you do not do this, Python subclasses of your type that also " +"inherit from other Python-defined classes may not work correctly. " +"(Specifically, you may not be able to create instances of such subclasses " +"without getting a :exc:`TypeError`.)" msgstr "" msgid "" @@ -745,10 +749,10 @@ msgid ".tp_init = Custom_init," msgstr "" msgid "" -"The :c:member:`~PyTypeObject.tp_init` slot is exposed in Python as the :meth:" -"`~object.__init__` method. It is used to initialize an object after it's " -"created. Initializers always accept positional and keyword arguments, and " -"they should return either ``0`` on success or ``-1`` on error." +"The :c:member:`~PyTypeObject.tp_init` slot is exposed in Python as " +"the :meth:`~object.__init__` method. It is used to initialize an object " +"after it's created. Initializers always accept positional and keyword " +"arguments, and they should return either ``0`` on success or ``-1`` on error." msgstr "" msgid "" @@ -788,15 +792,15 @@ msgid "when we absolutely know that the reference count is greater than 1;" msgstr "" msgid "" -"when we know that deallocation of the object [#]_ will neither detach the :" -"term:`thread state ` nor cause any calls back into " -"our type's code;" +"when we know that deallocation of the object [#]_ will neither detach " +"the :term:`thread state ` nor cause any calls back " +"into our type's code;" msgstr "" msgid "" -"when decrementing a reference count in a :c:member:`~PyTypeObject." -"tp_dealloc` handler on a type which doesn't support cyclic garbage " -"collection [#]_." +"when decrementing a reference count in " +"a :c:member:`~PyTypeObject.tp_dealloc` handler on a type which doesn't " +"support cyclic garbage collection [#]_." msgstr "" msgid "" @@ -862,12 +866,12 @@ msgid "" msgstr "" msgid "" -"The method is implemented as a C function that takes a :class:`!Custom` (or :" -"class:`!Custom` subclass) instance as the first argument. Methods always " -"take an instance as the first argument. Methods often take positional and " -"keyword arguments as well, but in this case we don't take any and don't need " -"to accept a positional argument tuple or keyword argument dictionary. This " -"method is equivalent to the Python method:" +"The method is implemented as a C function that takes a :class:`!Custom` " +"(or :class:`!Custom` subclass) instance as the first argument. Methods " +"always take an instance as the first argument. Methods often take positional " +"and keyword arguments as well, but in this case we don't take any and don't " +"need to accept a positional argument tuple or keyword argument dictionary. " +"This method is equivalent to the Python method:" msgstr "" msgid "" @@ -876,11 +880,11 @@ msgid "" msgstr "" msgid "" -"Note that we have to check for the possibility that our :attr:`!first` and :" -"attr:`!last` members are ``NULL``. This is because they can be deleted, in " -"which case they are set to ``NULL``. It would be better to prevent deletion " -"of these attributes and to restrict the attribute values to be strings. " -"We'll see how to do that in the next section." +"Note that we have to check for the possibility that our :attr:`!first` " +"and :attr:`!last` members are ``NULL``. This is because they can be " +"deleted, in which case they are set to ``NULL``. It would be better to " +"prevent deletion of these attributes and to restrict the attribute values to " +"be strings. We'll see how to do that in the next section." msgstr "" msgid "" @@ -944,9 +948,9 @@ msgstr "" msgid "" "In this section, we'll provide finer control over how the :attr:`!first` " "and :attr:`!last` attributes are set in the :class:`!Custom` example. In the " -"previous version of our module, the instance variables :attr:`!first` and :" -"attr:`!last` could be set to non-string values or even deleted. We want to " -"make sure that these attributes always contain strings." +"previous version of our module, the instance variables :attr:`!first` " +"and :attr:`!last` could be set to non-string values or even deleted. We want " +"to make sure that these attributes always contain strings." msgstr "" msgid "" @@ -1306,9 +1310,10 @@ msgstr "" msgid "" "In the second version of the :class:`!Custom` example, we allowed any kind " "of object to be stored in the :attr:`!first` or :attr:`!last` attributes " -"[#]_. Besides, in the second and third versions, we allowed subclassing :" -"class:`!Custom`, and subclasses may add arbitrary attributes. For any of " -"those two reasons, :class:`!Custom` objects can participate in cycles:" +"[#]_. Besides, in the second and third versions, we allowed " +"subclassing :class:`!Custom`, and subclasses may add arbitrary attributes. " +"For any of those two reasons, :class:`!Custom` objects can participate in " +"cycles:" msgstr "" msgid "" @@ -1565,11 +1570,11 @@ msgid "" msgstr "" msgid "" -"For each subobject that can participate in cycles, we need to call the :c:" -"func:`!visit` function, which is passed to the traversal method. The :c:func:" -"`!visit` function takes as arguments the subobject and the extra argument " -"*arg* passed to the traversal method. It returns an integer value that must " -"be returned if it is non-zero." +"For each subobject that can participate in cycles, we need to call " +"the :c:func:`!visit` function, which is passed to the traversal method. " +"The :c:func:`!visit` function takes as arguments the subobject and the extra " +"argument *arg* passed to the traversal method. It returns an integer value " +"that must be returned if it is non-zero." msgstr "" msgid "" @@ -1630,9 +1635,9 @@ msgid "" msgstr "" msgid "" -"Nevertheless, it is much easier and less error-prone to always use :c:func:" -"`Py_CLEAR` when deleting an attribute. Don't try to micro-optimize at the " -"expense of robustness!" +"Nevertheless, it is much easier and less error-prone to always " +"use :c:func:`Py_CLEAR` when deleting an attribute. Don't try to micro-" +"optimize at the expense of robustness!" msgstr "" msgid "" @@ -1640,8 +1645,8 @@ msgid "" "attributes. It means the circular GC can be triggered inside the function. " "Since the GC assumes reference count is not zero, we need to untrack the " "object from the GC by calling :c:func:`PyObject_GC_UnTrack` before clearing " -"members. Here is our reimplemented deallocator using :c:func:" -"`PyObject_GC_UnTrack` and ``Custom_clear``::" +"members. Here is our reimplemented deallocator " +"using :c:func:`PyObject_GC_UnTrack` and ``Custom_clear``::" msgstr "" msgid "" @@ -1663,9 +1668,10 @@ msgid "" msgstr "" msgid "" -"That's pretty much it. If we had written custom :c:member:`~PyTypeObject." -"tp_alloc` or :c:member:`~PyTypeObject.tp_free` handlers, we'd need to modify " -"them for cyclic garbage collection. Most extensions will use the versions " +"That's pretty much it. If we had written " +"custom :c:member:`~PyTypeObject.tp_alloc` " +"or :c:member:`~PyTypeObject.tp_free` handlers, we'd need to modify them for " +"cyclic garbage collection. Most extensions will use the versions " "automatically provided." msgstr "" @@ -1823,18 +1829,20 @@ msgid "" msgstr "" msgid "" -"This pattern is important when writing a type with custom :c:member:" -"`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject.tp_dealloc` members. " +"This pattern is important when writing a type with " +"custom :c:member:`~PyTypeObject.tp_new` " +"and :c:member:`~PyTypeObject.tp_dealloc` members. " "The :c:member:`~PyTypeObject.tp_new` handler should not actually create the " "memory for the object with its :c:member:`~PyTypeObject.tp_alloc`, but let " "the base class handle it by calling its own :c:member:`~PyTypeObject.tp_new`." msgstr "" msgid "" -"The :c:type:`PyTypeObject` struct supports a :c:member:`~PyTypeObject." -"tp_base` specifying the type's concrete base class. Due to cross-platform " -"compiler issues, you can't fill that field directly with a reference to :c:" -"type:`PyList_Type`; it should be done in the :c:data:`Py_mod_exec` function::" +"The :c:type:`PyTypeObject` struct supports " +"a :c:member:`~PyTypeObject.tp_base` specifying the type's concrete base " +"class. Due to cross-platform compiler issues, you can't fill that field " +"directly with a reference to :c:type:`PyList_Type`; it should be done in " +"the :c:data:`Py_mod_exec` function::" msgstr "" msgid "" @@ -1856,11 +1864,12 @@ msgid "" msgstr "" msgid "" -"Before calling :c:func:`PyType_Ready`, the type structure must have the :c:" -"member:`~PyTypeObject.tp_base` slot filled in. When we are deriving an " -"existing type, it is not necessary to fill out the :c:member:`~PyTypeObject." -"tp_alloc` slot with :c:func:`PyType_GenericNew` -- the allocation function " -"from the base type will be inherited." +"Before calling :c:func:`PyType_Ready`, the type structure must have " +"the :c:member:`~PyTypeObject.tp_base` slot filled in. When we are deriving " +"an existing type, it is not necessary to fill out " +"the :c:member:`~PyTypeObject.tp_alloc` slot " +"with :c:func:`PyType_GenericAlloc` -- the allocation function from the base " +"type will be inherited." msgstr "" msgid "" diff --git a/extending/windows.po b/extending/windows.po index 7369d3c..462f687 100644 --- a/extending/windows.po +++ b/extending/windows.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -98,15 +98,15 @@ msgstr "" msgid "" "In Windows, there are two types of library, a static library and an import " -"library (both called :file:`.lib`). A static library is like a Unix :file:`." -"a` file; it contains code to be included as necessary. An import library is " -"basically used only to reassure the linker that a certain identifier is " -"legal, and will be present in the program when the DLL is loaded. So the " -"linker uses the information from the import library to build the lookup " -"table for using identifiers that are not included in the DLL. When an " -"application or a DLL is linked, an import library may be generated, which " -"will need to be used for all future DLLs that depend on the symbols in the " -"application or DLL." +"library (both called :file:`.lib`). A static library is like a " +"Unix :file:`.a` file; it contains code to be included as necessary. An " +"import library is basically used only to reassure the linker that a certain " +"identifier is legal, and will be present in the program when the DLL is " +"loaded. So the linker uses the information from the import library to build " +"the lookup table for using identifiers that are not included in the DLL. " +"When an application or a DLL is linked, an import library may be generated, " +"which will need to be used for all future DLLs that depend on the symbols in " +"the application or DLL." msgstr "" msgid "" @@ -114,9 +114,10 @@ msgid "" "share another block of code A. On Unix, you would *not* pass :file:`A.a` to " "the linker for :file:`B.so` and :file:`C.so`; that would cause it to be " "included twice, so that B and C would each have their own copy. In Windows, " -"building :file:`A.dll` will also build :file:`A.lib`. You *do* pass :file:" -"`A.lib` to the linker for B and C. :file:`A.lib` does not contain code; it " -"just contains information which will be used at runtime to access A's code." +"building :file:`A.dll` will also build :file:`A.lib`. You *do* " +"pass :file:`A.lib` to the linker for B and C. :file:`A.lib` does not " +"contain code; it just contains information which will be used at runtime to " +"access A's code." msgstr "" msgid "" @@ -144,11 +145,11 @@ msgid "" msgstr "" msgid "" -"By default, inclusion of :file:`PC/pyconfig.h` directly or via :file:`Python." -"h` triggers an implicit, configure-aware link with the library. The header " -"file chooses :file:`pythonXY_d.lib` for Debug, :file:`pythonXY.lib` for " -"Release, and :file:`pythonX.lib` for Release with the :ref:`Limited API " -"` enabled." +"By default, inclusion of :file:`PC/pyconfig.h` directly or " +"via :file:`Python.h` triggers an implicit, configure-aware link with the " +"library. The header file chooses :file:`pythonXY_d.lib` for " +"Debug, :file:`pythonXY.lib` for Release, and :file:`pythonX.lib` for Release " +"with the :ref:`Limited API ` enabled." msgstr "" msgid "" @@ -169,14 +170,14 @@ msgid "" msgstr "" msgid "" -"The second command created :file:`ni.dll` (and :file:`.obj` and :file:`." -"lib`), which knows how to find the necessary functions from spam, and also " -"from the Python executable." +"The second command created :file:`ni.dll` (and :file:`.obj` " +"and :file:`.lib`), which knows how to find the necessary functions from " +"spam, and also from the Python executable." msgstr "" msgid "" -"Manually by defining :c:macro:`Py_NO_LINK_LIB` macro before including :file:" -"`Python.h`. You must pass :file:`pythonXY.lib` to the linker." +"Manually by defining :c:macro:`Py_NO_LINK_LIB` macro before " +"including :file:`Python.h`. You must pass :file:`pythonXY.lib` to the linker." msgstr "" msgid "" diff --git a/faq/design.po b/faq/design.po index ba961e9..db7a5ff 100644 --- a/faq/design.po +++ b/faq/design.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -95,12 +95,13 @@ msgid "" msgstr "" msgid "" -"The :class:`float` type in CPython uses a C ``double`` for storage. A :" -"class:`float` object's value is stored in binary floating-point with a fixed " -"precision (typically 53 bits) and Python uses C operations, which in turn " -"rely on the hardware implementation in the processor, to perform floating-" -"point operations. This means that as far as floating-point operations are " -"concerned, Python behaves like many popular languages including C and Java." +"The :class:`float` type in CPython uses a C ``double`` for storage. " +"A :class:`float` object's value is stored in binary floating-point with a " +"fixed precision (typically 53 bits) and Python uses C operations, which in " +"turn rely on the hardware implementation in the processor, to perform " +"floating-point operations. This means that as far as floating-point " +"operations are concerned, Python behaves like many popular languages " +"including C and Java." msgstr "" msgid "" @@ -242,12 +243,12 @@ msgstr "" msgid "" "(b) When I read code that says len(x) I *know* that it is asking for the " "length of something. This tells me two things: the result is an integer, and " -"the argument is some kind of container. To the contrary, when I read x." -"len(), I have to already know that x is some kind of container implementing " -"an interface or inheriting from a class that has a standard len(). Witness " -"the confusion we occasionally have when a class that is not implementing a " -"mapping has a get() or keys() method, or something that isn't a file has a " -"write() method." +"the argument is some kind of container. To the contrary, when I read " +"x.len(), I have to already know that x is some kind of container " +"implementing an interface or inheriting from a class that has a standard " +"len(). Witness the confusion we occasionally have when a class that is not " +"implementing a mapping has a get() or keys() method, or something that isn't " +"a file has a write() method." msgstr "" msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html" @@ -287,8 +288,9 @@ msgstr "" msgid "" "The second objection is typically cast as: \"I am really telling a sequence " "to join its members together with a string constant\". Sadly, you aren't. " -"For some reason there seems to be much less difficulty with having :meth:" -"`~str.split` as a string method, since in that case it is easy to see that ::" +"For some reason there seems to be much less difficulty with " +"having :meth:`~str.split` as a string method, since in that case it is easy " +"to see that ::" msgstr "" msgid "\"1, 2, 4, 8, 16\".split(\", \")" @@ -349,10 +351,10 @@ msgid "" "In general, structured switch statements execute one block of code when an " "expression has a particular value or set of values. Since Python 3.10 one " "can easily match literal values, or constants within a namespace, with a " -"``match ... case`` statement. See :ref:`the specification ` and :ref:" -"`the tutorial ` for more information about :keyword:`match` " -"statements. An older alternative is a sequence of ``if... elif... elif... " -"else``." +"``match ... case`` statement. See :ref:`the specification ` " +"and :ref:`the tutorial ` for more information " +"about :keyword:`match` statements. An older alternative is a sequence of " +"``if... elif... elif... else``." msgstr "" msgid "" @@ -371,8 +373,8 @@ msgid "" msgstr "" msgid "" -"For calling methods on objects, you can simplify yet further by using the :" -"func:`getattr` built-in to retrieve methods with a particular name::" +"For calling methods on objects, you can simplify yet further by using " +"the :func:`getattr` built-in to retrieve methods with a particular name::" msgstr "" msgid "" @@ -550,19 +552,20 @@ msgstr "" msgid "" "Lists, on the other hand, are more like arrays in other languages. They " "tend to hold a varying number of objects all of which have the same type and " -"which are operated on one-by-one. For example, :func:`os.listdir('.') ` returns a list of strings representing the files in the current " -"directory. Functions which operate on this output would generally not break " -"if you added another file or two to the directory." +"which are operated on one-by-one. For example, :func:`os.listdir('.') " +"` returns a list of strings representing the files in the " +"current directory. Functions which operate on this output would generally " +"not break if you added another file or two to the directory." msgstr "" msgid "" "Tuples are :term:`immutable`, meaning that once a tuple has been created, " -"you can't replace any of its elements with a new value. Lists are :term:" -"`mutable`, meaning that you can always change a list's elements. Only :term:" -"`hashable` objects can be used as dictionary keys. Most immutable types are " -"hashable, which is why tuples, but not lists, can be used as keys. Note, " -"however, that a tuple is only hashable if all of its elements are hashable." +"you can't replace any of its elements with a new value. Lists " +"are :term:`mutable`, meaning that you can always change a list's elements. " +"Only :term:`hashable` objects can be used as dictionary keys. Most immutable " +"types are hashable, which is why tuples, but not lists, can be used as keys. " +"Note, however, that a tuple is only hashable if all of its elements are " +"hashable." msgstr "" msgid "How are lists implemented in CPython?" @@ -587,6 +590,10 @@ msgid "" "the next few times don't require an actual resize." msgstr "" +msgid "" +"See :ref:`time-complexity` for the costs of the various list operations." +msgstr "" + msgid "How are dictionaries implemented in CPython?" msgstr "" @@ -609,6 +616,11 @@ msgid "" "O notation -- to retrieve a key." msgstr "" +msgid "" +"See :ref:`time-complexity` for the costs of the various dictionary " +"operations." +msgstr "" + msgid "Why must dictionary keys be immutable?" msgstr "" @@ -647,8 +659,8 @@ msgstr "" msgid "" "would raise a :exc:`KeyError` exception because the id of the ``[1, 2]`` " "used in the second line differs from that in the first line. In other " -"words, dictionary keys should be compared using ``==``, not using :keyword:" -"`is`." +"words, dictionary keys should be compared using ``==``, not " +"using :keyword:`is`." msgstr "" msgid "" @@ -708,11 +720,11 @@ msgid "" msgstr "" msgid "" -"Furthermore it must always be the case that if ``o1 == o2`` (ie ``o1." -"__eq__(o2) is True``) then ``hash(o1) == hash(o2)`` (ie, ``o1.__hash__() == " -"o2.__hash__()``), regardless of whether the object is in a dictionary or " -"not. If you fail to meet these restrictions dictionaries and other hash " -"based structures will misbehave." +"Furthermore it must always be the case that if ``o1 == o2`` (ie " +"``o1.__eq__(o2) is True``) then ``hash(o1) == hash(o2)`` (ie, " +"``o1.__hash__() == o2.__hash__()``), regardless of whether the object is in " +"a dictionary or not. If you fail to meet these restrictions dictionaries " +"and other hash based structures will misbehave." msgstr "" msgid "" @@ -759,10 +771,10 @@ msgstr "" msgid "" "Python 2.6 adds an :mod:`abc` module that lets you define Abstract Base " "Classes (ABCs). You can then use :func:`isinstance` and :func:`issubclass` " -"to check whether an instance or a class implements a particular ABC. The :" -"mod:`collections.abc` module defines a set of useful ABCs such as :class:" -"`~collections.abc.Iterable`, :class:`~collections.abc.Container`, and :class:" -"`~collections.abc.MutableMapping`." +"to check whether an instance or a class implements a particular ABC. " +"The :mod:`collections.abc` module defines a set of useful ABCs such " +"as :class:`~collections.abc.Iterable`, :class:`~collections.abc.Container`, " +"and :class:`~collections.abc.MutableMapping`." msgstr "" msgid "" @@ -775,10 +787,10 @@ msgid "" "as a module interface specification and a set of examples. Many Python " "modules can be run as a script to provide a simple \"self test.\" Even " "modules which use complex external interfaces can often be tested in " -"isolation using trivial \"stub\" emulations of the external interface. The :" -"mod:`doctest` and :mod:`unittest` modules or third-party test frameworks can " -"be used to construct exhaustive test suites that exercise every line of code " -"in a module." +"isolation using trivial \"stub\" emulations of the external interface. " +"The :mod:`doctest` and :mod:`unittest` modules or third-party test " +"frameworks can be used to construct exhaustive test suites that exercise " +"every line of code in a module." msgstr "" msgid "" @@ -808,9 +820,9 @@ msgid "" "\"spaghetti\" code that was hard to understand and revise. In a high-level " "language, it is also unneeded as long as there are ways to branch (in " "Python, with :keyword:`if` statements and :keyword:`or`, :keyword:`and`, " -"and :keyword:`if`/:keyword:`else` expressions) and loop (with :keyword:" -"`while` and :keyword:`for` statements, possibly containing :keyword:" -"`continue` and :keyword:`break`)." +"and :keyword:`if`/:keyword:`else` expressions) and loop " +"(with :keyword:`while` and :keyword:`for` statements, possibly " +"containing :keyword:`continue` and :keyword:`break`)." msgstr "" msgid "" @@ -963,9 +975,9 @@ msgstr "" msgid "" "For technical reasons, a generator used directly as a context manager would " "not work correctly. When, as is most common, a generator is used as an " -"iterator run to completion, no closing is needed. When it is, wrap it as :" -"func:`contextlib.closing(generator) ` in the :keyword:" -"`with` statement." +"iterator run to completion, no closing is needed. When it is, wrap it " +"as :func:`contextlib.closing(generator) ` in " +"the :keyword:`with` statement." msgstr "" msgid "Why are colons required for the if/while/def/class statements?" diff --git a/faq/extending.po b/faq/extending.po index 4251525..228fc29 100644 --- a/faq/extending.po +++ b/faq/extending.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,8 +29,8 @@ msgstr "" msgid "" "Yes, you can create built-in modules containing functions, variables, " -"exceptions and even new types in C. This is explained in the document :ref:" -"`extending-index`." +"exceptions and even new types in C. This is explained in the " +"document :ref:`extending-index`." msgstr "" msgid "Most intermediate or advanced Python books will also cover this topic." @@ -40,10 +40,10 @@ msgid "Can I create my own functions in C++?" msgstr "" msgid "" -"Yes, using the C compatibility features found in C++. Place ``extern " -"\"C\" { ... }`` around the Python include files and put ``extern \"C\"`` " -"before each function that is going to be called by the Python interpreter. " -"Global or static C++ objects with constructors are probably not a good idea." +"Yes, using the C compatibility features found in C++. Place ``extern \"C\" " +"{ ... }`` around the Python include files and put ``extern \"C\"`` before " +"each function that is going to be called by the Python interpreter. Global " +"or static C++ objects with constructors are probably not a good idea." msgstr "" msgid "Writing C is hard; are there any alternatives?" @@ -63,9 +63,9 @@ msgid "" "The highest-level function to do this is :c:func:`PyRun_SimpleString` which " "takes a single string argument to be executed in the context of the module " "``__main__`` and returns ``0`` for success and ``-1`` when an exception " -"occurred (including :exc:`SyntaxError`). If you want more control, use :c:" -"func:`PyRun_String`; see the source for :c:func:`PyRun_SimpleString` in " -"``Python/pythonrun.c``." +"occurred (including :exc:`SyntaxError`). If you want more control, " +"use :c:func:`PyRun_String`; see the source for :c:func:`PyRun_SimpleString` " +"in ``Python/pythonrun.c``." msgstr "" msgid "How can I evaluate an arbitrary Python expression from C?" @@ -83,21 +83,21 @@ msgstr "" msgid "" "That depends on the object's type. If it's a tuple, :c:func:`PyTuple_Size` " "returns its length and :c:func:`PyTuple_GetItem` returns the item at a " -"specified index. Lists have similar functions, :c:func:`PyList_Size` and :c:" -"func:`PyList_GetItem`." +"specified index. Lists have similar functions, :c:func:`PyList_Size` " +"and :c:func:`PyList_GetItem`." msgstr "" msgid "" -"For bytes, :c:func:`PyBytes_Size` returns its length and :c:func:" -"`PyBytes_AsStringAndSize` provides a pointer to its value and its length. " -"Note that Python bytes objects may contain null bytes so C's :c:func:`!" -"strlen` should not be used." +"For bytes, :c:func:`PyBytes_Size` returns its length " +"and :c:func:`PyBytes_AsStringAndSize` provides a pointer to its value and " +"its length. Note that Python bytes objects may contain null bytes so " +"C's :c:func:`!strlen` should not be used." msgstr "" msgid "" "To test the type of an object, first make sure it isn't ``NULL``, and then " -"use :c:func:`PyBytes_Check`, :c:func:`PyTuple_Check`, :c:func:" -"`PyList_Check`, etc." +"use :c:func:`PyBytes_Check`, :c:func:`PyTuple_Check`, :c:func:`PyList_Check`, " +"etc." msgstr "" msgid "" @@ -214,11 +214,11 @@ msgid "module = PyImport_ImportModule(\"\");" msgstr "" msgid "" -"If the module hasn't been imported yet (i.e. it is not yet present in :data:" -"`sys.modules`), this initializes the module; otherwise it simply returns the " -"value of ``sys.modules[\"\"]``. Note that it doesn't enter the " -"module into any namespace -- it only ensures it has been initialized and is " -"stored in :data:`sys.modules`." +"If the module hasn't been imported yet (i.e. it is not yet present " +"in :data:`sys.modules`), this initializes the module; otherwise it simply " +"returns the value of ``sys.modules[\"\"]``. Note that it " +"doesn't enter the module into any namespace -- it only ensures it has been " +"initialized and is stored in :data:`sys.modules`." msgstr "" msgid "" @@ -339,12 +339,12 @@ msgid "" msgstr "" msgid "" -"Yes, you can inherit from built-in classes such as :class:`int`, :class:" -"`list`, :class:`dict`, etc." +"Yes, you can inherit from built-in classes such " +"as :class:`int`, :class:`list`, :class:`dict`, etc." msgstr "" msgid "" -"The Boost Python Library (BPL, https://www.boost.org/libs/python/doc/index." -"html) provides a way of doing this from C++ (i.e. you can inherit from an " -"extension class written in C++ using the BPL)." +"The Boost Python Library (BPL, https://www.boost.org/libs/python/doc/" +"index.html) provides a way of doing this from C++ (i.e. you can inherit from " +"an extension class written in C++ using the BPL)." msgstr "" diff --git a/faq/general.po b/faq/general.po index d212fb7..eb33327 100644 --- a/faq/general.po +++ b/faq/general.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -62,8 +62,8 @@ msgstr "" msgid "" "Donations to the PSF are tax-exempt in the US. If you use Python and find " -"it helpful, please contribute via `the PSF donation page `_." +"it helpful, please contribute via `the PSF donation page `_." msgstr "" msgid "Are there copyright restrictions on the use of Python?" @@ -289,15 +289,16 @@ msgid "" "There is a newsgroup, :newsgroup:`comp.lang.python`, and a mailing list, " "`python-list `_. The " "newsgroup and mailing list are gatewayed into each other -- if you can read " -"news it's unnecessary to subscribe to the mailing list. :newsgroup:`comp." -"lang.python` is high-traffic, receiving hundreds of postings every day, and " -"Usenet readers are often more able to cope with this volume." +"news it's unnecessary to subscribe to the mailing " +"list. :newsgroup:`comp.lang.python` is high-traffic, receiving hundreds of " +"postings every day, and Usenet readers are often more able to cope with this " +"volume." msgstr "" msgid "" -"Announcements of new software releases and events can be found in comp.lang." -"python.announce, a low-traffic moderated list that receives about five " -"postings per day. It's available as `the python-announce mailing list " +"Announcements of new software releases and events can be found in " +"comp.lang.python.announce, a low-traffic moderated list that receives about " +"five postings per day. It's available as `the python-announce mailing list " "`_." msgstr "" @@ -311,9 +312,9 @@ msgstr "" msgid "" "Alpha and beta releases are available from https://www.python.org/" -"downloads/. All releases are announced on the comp.lang.python and comp." -"lang.python.announce newsgroups and on the Python home page at https://www." -"python.org/; an RSS feed of news is available." +"downloads/. All releases are announced on the comp.lang.python and " +"comp.lang.python.announce newsgroups and on the Python home page at https://" +"www.python.org/; an RSS feed of news is available." msgstr "" msgid "" @@ -325,8 +326,8 @@ msgid "How do I submit bug reports and patches for Python?" msgstr "" msgid "" -"To report a bug or submit a patch, use the issue tracker at https://github." -"com/python/cpython/issues." +"To report a bug or submit a patch, use the issue tracker at https://" +"github.com/python/cpython/issues." msgstr "" msgid "" @@ -369,8 +370,8 @@ msgstr "" msgid "" "The Python project's infrastructure is located all over the world and is " -"managed by the Python Infrastructure Team. Details `here `__." +"managed by the Python Infrastructure Team. Details `here `__." msgstr "" msgid "Why is it called Python?" @@ -378,8 +379,8 @@ msgstr "" msgid "" "When he began implementing Python, Guido van Rossum was also reading the " -"published scripts from `\"Monty Python's Flying Circus\" `__, a BBC comedy series from the 1970s. " +"published scripts from `\"Monty Python's Flying Circus\" `__, a BBC comedy series from the 1970s. " "Van Rossum thought he needed a name that was short, unique, and slightly " "mysterious, so he decided to call the language Python." msgstr "" @@ -442,18 +443,18 @@ msgstr "" msgid "" "See https://www.python.org/about/success for a list of projects that use " -"Python. Consulting the proceedings for `past Python conferences `_ will reveal contributions from many " +"Python. Consulting the proceedings for `past Python conferences `_ will reveal contributions from many " "different companies and organizations." msgstr "" msgid "" "High-profile Python projects include `the Mailman mailing list manager " -"`_ and `the Zope application server `_. Several Linux distributions, most notably `Red Hat `_, have written part or all of their installer and system " -"administration software in Python. Companies that use Python internally " -"include Google, Yahoo, and Lucasfilm Ltd." +"`_ and `the Zope application server `_. Several Linux distributions, most notably `Red Hat " +"`_, have written part or all of their installer and " +"system administration software in Python. Companies that use Python " +"internally include Google, Yahoo, and Lucasfilm Ltd." msgstr "" msgid "What new developments are expected for Python in the future?" @@ -468,8 +469,8 @@ msgid "" msgstr "" msgid "" -"New development is discussed on `the python-dev mailing list `_." +"New development is discussed on `the python-dev mailing list `_." msgstr "" msgid "Is it reasonable to propose incompatible changes to Python?" diff --git a/faq/gui.po b/faq/gui.po index 906b439..1524aec 100644 --- a/faq/gui.po +++ b/faq/gui.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,8 +35,9 @@ msgid "" "widget set, called :ref:`tkinter `. This is probably the easiest " "to install (since it comes included with most `binary distributions `_ of Python) and use. For more info about Tk, " -"including pointers to the source, see the `Tcl/Tk home page `_. Tcl/Tk is fully portable to the macOS, Windows, and Unix platforms." +"including pointers to the source, see the `Tcl/Tk home page `_. Tcl/Tk is fully portable to the macOS, Windows, and Unix " +"platforms." msgstr "" msgid "" diff --git a/faq/index.po b/faq/index.po index 12981ca..bfb7bd7 100644 --- a/faq/index.po +++ b/faq/index.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/faq/installed.po b/faq/installed.po index cd24985..e7f363e 100644 --- a/faq/installed.po +++ b/faq/installed.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/faq/library.po b/faq/library.po index 6570f6a..40e9e24 100644 --- a/faq/library.po +++ b/faq/library.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,8 +41,8 @@ msgid "" msgstr "" msgid "" -"For third-party packages, search the `Python Package Index `_ or try `Google `_ or another web search " +"For third-party packages, search the `Python Package Index `_ or try `Google `_ or another web search " "engine. Searching for \"Python\" plus a keyword or two for your topic of " "interest will usually find something helpful." msgstr "" @@ -53,9 +53,9 @@ msgstr "" msgid "" "If you can't find a source file for a module it may be a built-in or " "dynamically loaded module implemented in C, C++ or other compiled language. " -"In this case you may not have the source file or it may be something like :" -"file:`mathmodule.c`, somewhere in a C source directory (not on the Python " -"Path)." +"In this case you may not have the source file or it may be something " +"like :file:`mathmodule.c`, somewhere in a C source directory (not on the " +"Python Path)." msgstr "" msgid "There are (at least) three kinds of modules in Python:" @@ -334,10 +334,10 @@ msgstr "" msgid "" "Instead of trying to guess a good delay value for :func:`time.sleep`, it's " -"better to use some kind of semaphore mechanism. One idea is to use the :mod:" -"`queue` module to create a queue object, let each thread append a token to " -"the queue when it finishes, and let the main thread read as many tokens from " -"the queue as there are threads." +"better to use some kind of semaphore mechanism. One idea is to use " +"the :mod:`queue` module to create a queue object, let each thread append a " +"token to the queue when it finishes, and let the main thread read as many " +"tokens from the queue as there are threads." msgstr "" msgid "How do I parcel out work among a bunch of worker threads?" @@ -418,8 +418,8 @@ msgid "" msgstr "" msgid "" -"Consult the module's documentation for more details; the :class:`~queue." -"Queue` class provides a featureful interface." +"Consult the module's documentation for more details; " +"the :class:`~queue.Queue` class provides a featureful interface." msgstr "" msgid "What kinds of global value mutation are thread-safe?" @@ -471,10 +471,10 @@ msgid "" msgstr "" msgid "" -"Operations that replace other objects may invoke those other objects' :meth:" -"`~object.__del__` method when their reference count reaches zero, and that " -"can affect things. This is especially true for the mass updates to " -"dictionaries and lists. When in doubt, use a mutex!" +"Operations that replace other objects may invoke those other " +"objects' :meth:`~object.__del__` method when their reference count reaches " +"zero, and that can affect things. This is especially true for the mass " +"updates to dictionaries and lists. When in doubt, use a mutex!" msgstr "" msgid "Can't we get rid of the Global Interpreter Lock?" @@ -526,8 +526,8 @@ msgid "" "Judicious use of C extensions will also help; if you use a C extension to " "perform a time-consuming task, the extension can release the GIL while the " "thread of execution is in the C code and allow other threads to get some " -"work done. Some standard library modules such as :mod:`zlib` and :mod:" -"`hashlib` already do this." +"work done. Some standard library modules such as :mod:`zlib` " +"and :mod:`hashlib` already do this." msgstr "" msgid "" @@ -548,8 +548,9 @@ msgstr "" msgid "" "Use ``os.remove(filename)`` or ``os.unlink(filename)``; for documentation, " -"see the :mod:`os` module. The two functions are identical; :func:`~os." -"unlink` is simply the name of the Unix system call for this function." +"see the :mod:`os` module. The two functions are " +"identical; :func:`~os.unlink` is simply the name of the Unix system call for " +"this function." msgstr "" msgid "" @@ -566,14 +567,14 @@ msgstr "" msgid "" "To truncate a file, open it using ``f = open(filename, \"rb+\")``, and use " "``f.truncate(offset)``; offset defaults to the current seek position. " -"There's also ``os.ftruncate(fd, offset)`` for files opened with :func:`os." -"open`, where *fd* is the file descriptor (a small integer)." +"There's also ``os.ftruncate(fd, offset)`` for files opened " +"with :func:`os.open`, where *fd* is the file descriptor (a small integer)." msgstr "" msgid "" "The :mod:`shutil` module also contains a number of functions to work on " -"files including :func:`~shutil.copyfile`, :func:`~shutil.copytree`, and :" -"func:`~shutil.rmtree`." +"files including :func:`~shutil.copyfile`, :func:`~shutil.copytree`, " +"and :func:`~shutil.rmtree`." msgstr "" msgid "How do I copy a file?" @@ -593,9 +594,9 @@ msgid "How do I read (or write) binary data?" msgstr "" msgid "" -"To read or write complex binary data formats, it's best to use the :mod:" -"`struct` module. It allows you to take a string containing binary data " -"(usually numbers) and convert it to Python objects; and vice versa." +"To read or write complex binary data formats, it's best to use " +"the :mod:`struct` module. It allows you to take a string containing binary " +"data (usually numbers) and convert it to Python objects; and vice versa." msgstr "" msgid "" @@ -636,8 +637,8 @@ msgid "" ":func:`os.read` is a low-level function which takes a file descriptor, a " "small integer representing the opened file. :func:`os.popen` creates a high-" "level file object, the same type returned by the built-in :func:`open` " -"function. Thus, to read *n* bytes from a pipe *p* created with :func:`os." -"popen`, you need to use ``p.read(n)``." +"function. Thus, to read *n* bytes from a pipe *p* created " +"with :func:`os.popen`, you need to use ``p.read(n)``." msgstr "" msgid "How do I access the serial (RS232) port?" @@ -790,10 +791,10 @@ msgstr "" msgid "" "You can use the :meth:`~socket.socket.connect_ex` method to avoid creating " -"an exception. It will just return the errno value. To poll, you can call :" -"meth:`~socket.socket.connect_ex` again later -- ``0`` or ``errno.EISCONN`` " -"indicate that you're connected -- or you can pass this socket to :meth:" -"`select.select` to check if it's writable." +"an exception. It will just return the errno value. To poll, you can " +"call :meth:`~socket.socket.connect_ex` again later -- ``0`` or " +"``errno.EISCONN`` indicate that you're connected -- or you can pass this " +"socket to :meth:`select.select` to check if it's writable." msgstr "" msgid "" @@ -814,9 +815,9 @@ msgstr "" msgid "" "Interfaces to disk-based hashes such as :mod:`DBM ` and :mod:`GDBM " -"` are also included with standard Python. There is also the :mod:" -"`sqlite3` module, which provides a lightweight disk-based relational " -"database." +"` are also included with standard Python. There is also " +"the :mod:`sqlite3` module, which provides a lightweight disk-based " +"relational database." msgstr "" msgid "" @@ -830,8 +831,8 @@ msgstr "" msgid "" "The :mod:`pickle` library module solves this in a very general way (though " -"you still can't store things like open files, sockets or windows), and the :" -"mod:`shelve` library module uses pickle and (g)dbm to create persistent " +"you still can't store things like open files, sockets or windows), and " +"the :mod:`shelve` library module uses pickle and (g)dbm to create persistent " "mappings containing arbitrary Python objects." msgstr "" diff --git a/faq/programming.po b/faq/programming.po index 779f123..5c42de1 100644 --- a/faq/programming.po +++ b/faq/programming.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +39,8 @@ msgid "Yes." msgstr "" msgid "" -"Several debuggers for Python are described below, and the built-in function :" -"func:`breakpoint` allows you to drop into any of them." +"Several debuggers for Python are described below, and the built-in " +"function :func:`breakpoint` allows you to drop into any of them." msgstr "" msgid "" @@ -95,9 +95,9 @@ msgid "Are there tools to help find bugs or perform static analysis?" msgstr "" msgid "" -"`Ruff `__, `Pylint `__ and `Pyflakes `__ do basic " -"checking that will help you catch bugs sooner." +"`Ruff `__, `Pylint `__ and `Pyflakes `__ do basic checking that will help you catch bugs sooner." msgstr "" msgid "" @@ -372,8 +372,8 @@ msgid "It's good practice if you import modules in the following order:" msgstr "" msgid "" -"standard library modules -- such as :mod:`sys`, :mod:`os`, :mod:`argparse`, :" -"mod:`re`" +"standard library modules -- such " +"as :mod:`sys`, :mod:`os`, :mod:`argparse`, :mod:`re`" msgstr "" msgid "" @@ -532,9 +532,9 @@ msgstr "" msgid "" ":term:`Parameters ` are defined by the names that appear in a " "function definition, whereas :term:`arguments ` are the values " -"actually passed to a function when calling it. Parameters define what :term:" -"`kind of arguments ` a function can accept. For example, given " -"the function definition::" +"actually passed to a function when calling it. Parameters define " +"what :term:`kind of arguments ` a function can accept. For " +"example, given the function definition::" msgstr "" msgid "" @@ -640,16 +640,17 @@ msgid "In other words:" msgstr "" msgid "" -"If we have a mutable object (such as :class:`list`, :class:`dict`, :class:" -"`set`), we can use some specific operations to mutate it and all the " -"variables that refer to it will see the change." +"If we have a mutable object (such " +"as :class:`list`, :class:`dict`, :class:`set`), we can use some specific " +"operations to mutate it and all the variables that refer to it will see the " +"change." msgstr "" msgid "" -"If we have an immutable object (such as :class:`str`, :class:`int`, :class:" -"`tuple`), all the variables that refer to it will always see the same value, " -"but operations that transform that value into a new value always return a " -"new object." +"If we have an immutable object (such " +"as :class:`str`, :class:`int`, :class:`tuple`), all the variables that refer " +"to it will always see the same value, but operations that transform that " +"value into a new value always return a new object." msgstr "" msgid "" @@ -828,8 +829,8 @@ msgid "" msgstr "" msgid "" -"Some objects can be copied more easily. Dictionaries have a :meth:`~dict." -"copy` method::" +"Some objects can be copied more easily. Dictionaries have " +"a :meth:`~dict.copy` method::" msgstr "" msgid "newdict = olddict.copy()" @@ -1097,8 +1098,8 @@ msgid "How do I get int literal attribute instead of SyntaxError?" msgstr "" msgid "" -"Trying to lookup an ``int`` literal attribute in the normal manner gives a :" -"exc:`SyntaxError` because the period is seen as a decimal point::" +"Trying to lookup an ``int`` literal attribute in the normal manner gives " +"a :exc:`SyntaxError` because the period is seen as a decimal point::" msgstr "" msgid "" @@ -1295,10 +1296,10 @@ msgstr "" msgid "" "For simple input parsing, the easiest approach is usually to split the line " "into whitespace-delimited words using the :meth:`~str.split` method of " -"string objects and then convert decimal strings to numeric values using :" -"func:`int` or :func:`float`. :meth:`!split` supports an optional \"sep\" " -"parameter which is useful if the line uses something other than whitespace " -"as a separator." +"string objects and then convert decimal strings to numeric values " +"using :func:`int` or :func:`float`. :meth:`!split` supports an optional " +"\"sep\" parameter which is useful if the line uses something other than " +"whitespace as a separator." msgstr "" msgid "" @@ -1431,9 +1432,9 @@ msgid "" "When the standard library provides a primitive for doing something, it is " "likely (although not guaranteed) to be faster than any alternative you may " "come up with. This is doubly true for primitives written in C, such as " -"builtins and some extension types. For example, be sure to use either the :" -"meth:`list.sort` built-in method or the related :func:`sorted` function to " -"do sorting (and see the :ref:`sortinghowto` for examples of moderately " +"builtins and some extension types. For example, be sure to use either " +"the :meth:`list.sort` built-in method or the related :func:`sorted` function " +"to do sorting (and see the :ref:`sortinghowto` for examples of moderately " "advanced usage)." msgstr "" @@ -1468,7 +1469,8 @@ msgid "" ":class:`str` and :class:`bytes` objects are immutable, therefore " "concatenating many strings together is inefficient as each concatenation " "creates a new object. In the general case, the total runtime cost is " -"quadratic in the total string length." +"quadratic in the total string length. See :ref:`time-complexity` for more " +"information." msgstr "" msgid "" @@ -1582,8 +1584,8 @@ msgid "" msgstr "" msgid "" -"If all elements of the list may be used as set keys (that is, they are all :" -"term:`hashable`) this is often faster::" +"If all elements of the list may be used as set keys (that is, they are " +"all :term:`hashable`) this is often faster::" msgstr "" msgid "mylist = list(set(mylist))" @@ -1712,8 +1714,8 @@ msgid "How do I apply a method or function to a sequence of objects?" msgstr "" msgid "" -"To call a method or function and accumulate the return values in a list, a :" -"term:`list comprehension` is an elegant solution::" +"To call a method or function and accumulate the return values in a list, " +"a :term:`list comprehension` is an elegant solution::" msgstr "" msgid "" @@ -1815,8 +1817,8 @@ msgid "" "augmented assignment is executed, and its return value is what gets used in " "the assignment statement; and (b) for lists, :meth:`!__iadd__` is equivalent " "to calling :meth:`~sequence.extend` on the list and returning the list. " -"That's why we say that for lists, ``+=`` is a \"shorthand\" for :meth:`list." -"extend`::" +"That's why we say that for lists, ``+=`` is a \"shorthand\" " +"for :meth:`list.extend`::" msgstr "" msgid "" @@ -1910,8 +1912,8 @@ msgid "What is a method?" msgstr "" msgid "" -"A method is a function on some object ``x`` that you normally call as ``x." -"name(arguments...)``. Methods are defined as functions inside the class " +"A method is a function on some object ``x`` that you normally call as " +"``x.name(arguments...)``. Methods are defined as functions inside the class " "definition::" msgstr "" @@ -1949,8 +1951,8 @@ msgid "" msgstr "" msgid "" -"Note that :func:`isinstance` also checks for virtual inheritance from an :" -"term:`abstract base class`. So, the test will return ``True`` for a " +"Note that :func:`isinstance` also checks for virtual inheritance from " +"an :term:`abstract base class`. So, the test will return ``True`` for a " "registered class even if hasn't directly or indirectly inherited from it. " "To test for \"true inheritance\", scan the :term:`method resolution order` " "(MRO) of the class:" @@ -2053,18 +2055,18 @@ msgstr "" msgid "" "Here the ``UpperOut`` class redefines the ``write()`` method to convert the " -"argument string to uppercase before calling the underlying ``self._outfile." -"write()`` method. All other methods are delegated to the underlying ``self." -"_outfile`` object. The delegation is accomplished via the :meth:`~object." -"__getattr__` method; consult :ref:`the language reference ` for more information about controlling attribute access." +"argument string to uppercase before calling the underlying " +"``self._outfile.write()`` method. All other methods are delegated to the " +"underlying ``self._outfile`` object. The delegation is accomplished via " +"the :meth:`~object.__getattr__` method; consult :ref:`the language reference " +"` for more information about controlling attribute access." msgstr "" msgid "" "Note that for more general cases delegation can get trickier. When " -"attributes must be set as well as retrieved, the class must define a :meth:" -"`~object.__setattr__` method too, and it must do so carefully. The basic " -"implementation of :meth:`!__setattr__` is roughly equivalent to the " +"attributes must be set as well as retrieved, the class must define " +"a :meth:`~object.__setattr__` method too, and it must do so carefully. The " +"basic implementation of :meth:`!__setattr__` is roughly equivalent to the " "following::" msgstr "" @@ -2077,8 +2079,9 @@ msgid "" msgstr "" msgid "" -"Many :meth:`~object.__setattr__` implementations call :meth:`!object." -"__setattr__` to set an attribute on self without causing infinite recursion::" +"Many :meth:`~object.__setattr__` implementations call :meth:`!" +"object.__setattr__` to set an attribute on self without causing infinite " +"recursion::" msgstr "" msgid "" @@ -2089,8 +2092,8 @@ msgid "" msgstr "" msgid "" -"Alternatively, it is possible to set attributes by inserting entries into :" -"attr:`self.__dict__ ` directly." +"Alternatively, it is possible to set attributes by inserting entries " +"into :attr:`self.__dict__ ` directly." msgstr "" msgid "" @@ -2295,9 +2298,9 @@ msgid "There are several possible reasons for this." msgstr "" msgid "" -"The :keyword:`del` statement does not necessarily call :meth:`~object." -"__del__` -- it simply decrements the object's reference count, and if this " -"reaches zero :meth:`!__del__` is called." +"The :keyword:`del` statement does not necessarily " +"call :meth:`~object.__del__` -- it simply decrements the object's reference " +"count, and if this reaches zero :meth:`!__del__` is called." msgstr "" msgid "" @@ -2305,12 +2308,12 @@ msgid "" "each child has a parent reference and each parent has a list of children) " "the reference counts will never go back to zero. Once in a while Python " "runs an algorithm to detect such cycles, but the garbage collector might run " -"some time after the last reference to your data structure vanishes, so your :" -"meth:`!__del__` method may be called at an inconvenient and random time. " -"This is inconvenient if you're trying to reproduce a problem. Worse, the " -"order in which object's :meth:`!__del__` methods are executed is arbitrary. " -"You can run :func:`gc.collect` to force a collection, but there *are* " -"pathological cases where objects will never be collected." +"some time after the last reference to your data structure vanishes, so " +"your :meth:`!__del__` method may be called at an inconvenient and random " +"time. This is inconvenient if you're trying to reproduce a problem. Worse, " +"the order in which object's :meth:`!__del__` methods are executed is " +"arbitrary. You can run :func:`gc.collect` to force a collection, but there " +"*are* pathological cases where objects will never be collected." msgstr "" msgid "" @@ -2468,8 +2471,8 @@ msgid "" msgstr "" msgid "" -"For example, here is the implementation of :meth:`!collections.abc.Sequence." -"__contains__`::" +"For example, here is the implementation of :meth:`!" +"collections.abc.Sequence.__contains__`::" msgstr "" msgid "" @@ -2537,9 +2540,10 @@ msgid "How do I cache method calls?" msgstr "" msgid "" -"The two principal tools for caching methods are :deco:`functools." -"cached_property` and :deco:`functools.lru_cache`. The former stores results " -"at the instance level and the latter at the class level." +"The two principal tools for caching methods " +"are :deco:`functools.cached_property` and :deco:`functools.lru_cache`. The " +"former stores results at the instance level and the latter at the class " +"level." msgstr "" msgid "" @@ -2602,8 +2606,9 @@ msgstr "" msgid "" "To make the ``lru_cache`` approach work when the *station_id* is mutable, " -"the class needs to define the :meth:`~object.__eq__` and :meth:`~object." -"__hash__` methods so that the cache can detect relevant attribute updates::" +"the class needs to define the :meth:`~object.__eq__` " +"and :meth:`~object.__hash__` methods so that the cache can detect relevant " +"attribute updates::" msgstr "" msgid "" @@ -2661,18 +2666,18 @@ msgid "" msgstr "" msgid "" -"Running Python on a top-level script is not considered an import and no ``." -"pyc`` will be created. For example, if you have a top-level module ``foo." -"py`` that imports another module ``xyz.py``, when you run ``foo`` (by typing " -"``python foo.py`` as a shell command), a ``.pyc`` will be created for " +"Running Python on a top-level script is not considered an import and no " +"``.pyc`` will be created. For example, if you have a top-level module " +"``foo.py`` that imports another module ``xyz.py``, when you run ``foo`` (by " +"typing ``python foo.py`` as a shell command), a ``.pyc`` will be created for " "``xyz`` because ``xyz`` is imported, but no ``.pyc`` file will be created " "for ``foo`` since ``foo.py`` isn't being imported." msgstr "" msgid "" -"If you need to create a ``.pyc`` file for ``foo`` -- that is, to create a ``." -"pyc`` file for a module that is not imported -- you can, using the :mod:" -"`py_compile` and :mod:`compileall` modules." +"If you need to create a ``.pyc`` file for ``foo`` -- that is, to create a " +"``.pyc`` file for a module that is not imported -- you can, using " +"the :mod:`py_compile` and :mod:`compileall` modules." msgstr "" msgid "" @@ -2788,11 +2793,11 @@ msgid "There are (at least) three possible workarounds for this problem." msgstr "" msgid "" -"Guido van Rossum recommends avoiding all uses of ``from import ..." -"``, and placing all code inside functions. Initializations of global " -"variables and class variables should use constants or built-in functions " -"only. This means everything from an imported module is referenced as " -"``.``." +"Guido van Rossum recommends avoiding all uses of ``from " +"import ...``, and placing all code inside functions. Initializations of " +"global variables and class variables should use constants or built-in " +"functions only. This means everything from an imported module is referenced " +"as ``.``." msgstr "" msgid "" diff --git a/faq/windows.po b/faq/windows.po index abd000e..6461fa8 100644 --- a/faq/windows.po +++ b/faq/windows.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -103,19 +103,19 @@ msgstr "" msgid "" "Many people use the interactive mode as a convenient yet highly programmable " -"calculator. When you want to end your interactive Python session, call the :" -"func:`exit` function or hold the :kbd:`Ctrl` key down while you enter a :kbd:" -"`Z`, then hit the \":kbd:`Enter`\" key to get back to your Windows command " -"prompt." +"calculator. When you want to end your interactive Python session, call " +"the :func:`exit` function or hold the :kbd:`Ctrl` key down while you enter " +"a :kbd:`Z`, then hit the \":kbd:`Enter`\" key to get back to your Windows " +"command prompt." msgstr "" msgid "" -"You may also find that you have a Start-menu entry such as :menuselection:" -"`Start --> Programs --> Python 3.x --> Python (command line)` that results " -"in you seeing the ``>>>`` prompt in a new window. If so, the window will " -"disappear after you call the :func:`exit` function or enter the :kbd:`Ctrl-" -"Z` character; Windows is running a single \"python\" command in the window, " -"and closes it when you terminate the interpreter." +"You may also find that you have a Start-menu entry such " +"as :menuselection:`Start --> Programs --> Python 3.x --> Python (command " +"line)` that results in you seeing the ``>>>`` prompt in a new window. If " +"so, the window will disappear after you call the :func:`exit` function or " +"enter the :kbd:`Ctrl-Z` character; Windows is running a single \"python\" " +"command in the window, and closes it when you terminate the interpreter." msgstr "" msgid "" @@ -213,9 +213,10 @@ msgstr "" msgid "" "Do **not** build Python into your .exe file directly. On Windows, Python " "must be a DLL to handle importing modules that are themselves DLL's. (This " -"is the first key undocumented fact.) Instead, link to :file:`python{NN}." -"dll`; it is typically installed in ``C:\\Windows\\System``. *NN* is the " -"Python version, a number such as \"33\" for Python 3.3." +"is the first key undocumented fact.) Instead, link " +"to :file:`python{NN}.dll`; it is typically installed in ``C:" +"\\Windows\\System``. *NN* is the Python version, a number such as \"33\" " +"for Python 3.3." msgstr "" msgid "" @@ -331,16 +332,16 @@ msgstr "" msgid "" "Under any editor, mixing tabs and spaces is a bad idea. MSVC is no " -"different in this respect, and is easily configured to use spaces: Take :" -"menuselection:`Tools --> Options --> Tabs`, and for file type \"Default\" " -"set \"Tab size\" and \"Indent size\" to 4, and select the \"Insert spaces\" " -"radio button." +"different in this respect, and is easily configured to use spaces: " +"Take :menuselection:`Tools --> Options --> Tabs`, and for file type " +"\"Default\" set \"Tab size\" and \"Indent size\" to 4, and select the " +"\"Insert spaces\" radio button." msgstr "" msgid "" "Python raises :exc:`IndentationError` or :exc:`TabError` if mixed tabs and " -"spaces are causing problems in leading whitespace. You may also run the :mod:" -"`tabnanny` module to check a directory tree in batch mode." +"spaces are causing problems in leading whitespace. You may also run " +"the :mod:`tabnanny` module to check a directory tree in batch mode." msgstr "" msgid "How do I check for a keypress without blocking?" diff --git a/glossary.po b/glossary.po index 189e354..a9d2150 100644 --- a/glossary.po +++ b/glossary.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Mohit Yadav, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Mohit Yadav, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,21 +24,23 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Glossary" -msgstr "" +msgstr "ਸ਼ਬਦਾਵਲੀ" msgid "``>>>``" -msgstr "" +msgstr "``>>>``" msgid "" "The default Python prompt of the :term:`interactive` shell. Often seen for " "code examples which can be executed interactively in the interpreter." msgstr "" +":term:`interactive` ਸ਼ੈੱਲ ਦਾ ਮੂਲ Python ਪ੍ਰੌਮਪਟ। ਇਹ ਅਕਸਰ ਉਹਨਾਂ ਕੋਡ ਉਦਾਹਰਣਾਂ ਵਿੱਚ ਦਿਖਾਈ " +"ਦਿੰਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "``...``" -msgstr "" +msgstr "``...``" msgid "Can refer to:" -msgstr "" +msgstr "ਇਸਦਾ ਹਵਾਲਾ ਇਹਨਾਂ ਵੱਲ ਹੋ ਸਕਦਾ ਹੈ:" msgid "" "The default Python prompt of the :term:`interactive` shell when entering the " @@ -45,29 +48,42 @@ msgid "" "right delimiters (parentheses, square brackets, curly braces or triple " "quotes), or after specifying a decorator." msgstr "" +"ਇੰਡੈਂਟ ਕੀਤੇ ਕੋਡ ਬਲਾਕ ਲਈ ਕੋਡ ਦਰਜ ਕਰਨ ਸਮੇਂ, ਜਾਂ ਮਿਲਦੇ ਹੋਏ ਖੱਬੇ ਅਤੇ ਸੱਜੇ ਡਿਲਿਮਿਟਰਾਂ (ਗੋਲ ਬ੍ਰੈਕਟ, " +"ਚੌਰਸ ਬ੍ਰੈਕਟ, ਕਰਲੀ ਬ੍ਰੇਸ ਜਾਂ ਤਿੰਨਹਰੇ ਕੋਟ) ਦੇ ਅੰਦਰ ਹੋਣ ਸਮੇਂ, ਜਾਂ ਕਿਸੇ ਡੈਕੋਰੇਟਰ ਨੂੰ ਦਰਸਾਉਣ ਤੋਂ " +"ਬਾਅਦ :term:`interactive` ਸ਼ੈੱਲ ਦਾ ਮੂਲ Python ਪ੍ਰੌਮਪਟ।" msgid "" "The three dots form of the :ref:`Ellipsis ` object." -msgstr "" +msgstr ":ref:`Ellipsis ` ਆਬਜੈਕਟ ਦਾ ਤਿੰਨ ਬਿੰਦੀਆਂ ਵਾਲਾ ਰੂਪ।" msgid "abstract base class" -msgstr "" +msgstr "ਅਮੂਰਤ ਆਧਾਰ ਕਲਾਸ" msgid "" "Abstract base classes complement :term:`duck-typing` by providing a way to " "define interfaces when other techniques like :func:`hasattr` would be clumsy " "or subtly wrong (for example with :ref:`magic methods `). " "ABCs introduce virtual subclasses, which are classes that don't inherit from " -"a class but are still recognized by :func:`isinstance` and :func:" -"`issubclass`; see the :mod:`abc` module documentation. Python comes with " -"many built-in ABCs for data structures (in the :mod:`collections.abc` " -"module), numbers (in the :mod:`numbers` module), streams (in the :mod:`io` " -"module), import finders and loaders (in the :mod:`importlib.abc` module). " -"You can create your own ABCs with the :mod:`abc` module." -msgstr "" +"a class but are still recognized by :func:`isinstance` " +"and :func:`issubclass`; see the :mod:`abc` module documentation. Python " +"comes with many built-in ABCs for data structures (in " +"the :mod:`collections.abc` module), numbers (in the :mod:`numbers` module), " +"streams (in the :mod:`io` module), import finders and loaders (in " +"the :mod:`importlib.abc` module). You can create your own ABCs with " +"the :mod:`abc` module." +msgstr "" +"ਅਮੂਰਤ ਆਧਾਰ ਕਲਾਸਾਂ :term:`duck-typing` ਨੂੰ ਪੂਰਾ ਕਰਦੀਆਂ ਹਨ ਅਤੇ ਇੰਟਰਫੇਸ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਦਾ " +"ਇੱਕ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ ਜਦੋਂ :func:`hasattr` ਵਰਗੀਆਂ ਤਕਨੀਕਾਂ ਅਸੁਵਿਧਾਜਨਕ ਜਾਂ ਗਲਤ ਹੋ " +"ਸਕਦੀਆਂ ਹਨ (ਉਦਾਹਰਨ ਲਈ :ref:`magic methods ` ਨਾਲ)। ABCs ਵਰਚੁਅਲ " +"ਸਬਕਲਾਸਾਂ ਲਿਆਉਂਦੀਆਂ ਹਨ, ਜੋ ਕਿਸੇ ਕਲਾਸ ਤੋਂ ਵਾਰਸਤ ਨਹੀਂ ਲੈਂਦੀਆਂ ਪਰ ਫਿਰ ਵੀ :func:`isinstance` " +"ਅਤੇ :func:`issubclass` ਦੁਆਰਾ ਪਛਾਣੀਆਂ ਜਾਂਦੀਆਂ ਹਨ; ਵੇਰਵੇ ਲਈ :mod:`abc` ਮੋਡੀਊਲ ਦੇ ਦਸਤਾਵੇਜ਼ " +"ਵੇਖੋ। Python ਵਿੱਚ ਡਾਟਾ ਸੰਰਚਨਾਵਾਂ (:mod:`collections.abc`), ਸੰਖਿਆਵਾਂ " +"(:mod:`numbers`), ਸਟ੍ਰੀਮਾਂ (:mod:`io`) ਅਤੇ ਇੰਪੋਰਟ ਫਾਈਂਡਰ/ਲੋਡਰ " +"(:mod:`importlib.abc`) ਲਈ ਕਈ ਬਿਲਟ-ਇਨ ABCs ਮੌਜੂਦ ਹਨ। ਤੁਸੀਂ :mod:`abc` ਮੋਡੀਊਲ ਨਾਲ " +"ਆਪਣੀਆਂ ABCs ਵੀ ਬਣਾ ਸਕਦੇ ਹੋ।" msgid "annotate function" -msgstr "" +msgstr "ਐਨੋਟੇਟ ਫੰਕਸ਼ਨ" msgid "" "A callable that can be called to retrieve the :term:`annotations " @@ -76,14 +92,21 @@ msgid "" "attribute of functions, classes, and modules. Annotate functions are a " "subset of :term:`evaluate functions `." msgstr "" +"ਇੱਕ callable ਜਿਸਨੂੰ ਕਿਸੇ ਆਬਜੈਕਟ ਦੀਆਂ :term:`annotations ` ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ " +"ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Annotate ਫੰਕਸ਼ਨ ਆਮ ਤੌਰ 'ਤੇ :term:`functions ` ਹੁੰਦੇ " +"ਹਨ ਅਤੇ ਫੰਕਸ਼ਨਾਂ, ਕਲਾਸਾਂ ਅਤੇ ਮੋਡੀਊਲਾਂ ਦੇ :attr:`~object.__annotate__` ਐਟ੍ਰਿਬਿਊਟ ਵਜੋਂ ਆਪਣੇ " +"ਆਪ ਬਣਾਏ ਜਾਂਦੇ ਹਨ। Annotate ਫੰਕਸ਼ਨ :term:`evaluate functions ` " +"ਦਾ ਇੱਕ ਉਪਸਮੂਹ ਹਨ।" msgid "annotation" -msgstr "" +msgstr "ਐਨੋਟੇਸ਼ਨ" msgid "" "A label associated with a variable, a class attribute or a function " "parameter or return value, used by convention as a :term:`type hint`." msgstr "" +"ਕਿਸੇ ਵੇਰੀਏਬਲ, ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟ ਜਾਂ ਫੰਕਸ਼ਨ ਪੈਰਾਮੀਟਰ/ਰਿਟਰਨ ਮੁੱਲ ਨਾਲ ਜੁੜਿਆ ਇੱਕ ਲੇਬਲ, ਜੋ ਰਿਵਾਜ " +"ਅਨੁਸਾਰ :term:`type hint` ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "Annotations of local variables cannot be accessed at runtime, but " @@ -91,20 +114,29 @@ msgid "" "retrieved by calling :func:`annotationlib.get_annotations` on modules, " "classes, and functions, respectively." msgstr "" +"ਲੋਕਲ ਵੇਰੀਏਬਲਾਂ ਦੀਆਂ ਐਨੋਟੇਸ਼ਨਾਂ ਨੂੰ ਰਨਟਾਈਮ ਦੌਰਾਨ ਐਕਸੈਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ, ਪਰ ਗਲੋਬਲ ਵੇਰੀਏਬਲਾਂ, " +"ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟਾਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਦੀਆਂ ਐਨੋਟੇਸ਼ਨਾਂ ਨੂੰ ਕ੍ਰਮਵਾਰ ਮੋਡੀਊਲਾਂ, ਕਲਾਸਾਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ " +"ਉੱਤੇ :func:`annotationlib.get_annotations` ਕਾਲ ਕਰਕੇ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" -"See :term:`variable annotation`, :term:`function annotation`, :pep:`484`, :" -"pep:`526`, and :pep:`649`, which describe this functionality. Also see :ref:" -"`annotations-howto` for best practices on working with annotations." +"See :term:`variable annotation`, :term:`function " +"annotation`, :pep:`484`, :pep:`526`, and :pep:`649`, which describe this " +"functionality. Also see :ref:`annotations-howto` for best practices on " +"working with annotations." msgstr "" +"ਇਸ ਕਾਰਜਸ਼ੀਲਤਾ ਦੇ ਵੇਰਵੇ ਲਈ :term:`variable annotation`, :term:`function " +"annotation`, :pep:`484`, :pep:`526`, ਅਤੇ :pep:`649` ਵੇਖੋ। ਐਨੋਟੇਸ਼ਨਾਂ ਨਾਲ ਕੰਮ ਕਰਨ ਦੀਆਂ " +"ਵਧੀਆ ਪ੍ਰਥਾਵਾਂ ਲਈ :ref:`annotations-howto` ਵੀ ਵੇਖੋ।" msgid "argument" -msgstr "" +msgstr "ਆਰਗਿਊਮੈਂਟ" msgid "" "A value passed to a :term:`function` (or :term:`method`) when calling the " "function. There are two kinds of argument:" msgstr "" +"ਕਿਸੇ :term:`function` (ਜਾਂ :term:`method`) ਨੂੰ ਕਾਲ ਕਰਨ ਵੇਲੇ ਉਸਨੂੰ ਦਿੱਤਾ ਗਿਆ ਮੁੱਲ। " +"ਆਰਗਿਊਮੈਂਟ ਦੋ ਕਿਸਮਾਂ ਦੇ ਹੁੰਦੇ ਹਨ:" msgid "" ":dfn:`keyword argument`: an argument preceded by an identifier (e.g. " @@ -112,11 +144,16 @@ msgid "" "by ``**``. For example, ``3`` and ``5`` are both keyword arguments in the " "following calls to :func:`complex`::" msgstr "" +":dfn:`keyword argument`: ਉਹ ਆਰਗਿਊਮੈਂਟ ਜਿਸ ਤੋਂ ਪਹਿਲਾਂ ਕੋਈ ਪਛਾਣਕਰਤਾ (ਜਿਵੇਂ ``name=``) " +"ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਜਾਂ ਜੋ ``**`` ਨਾਲ ਦਿੱਤੀ ਡਿਕਸ਼ਨਰੀ ਦੇ ਮੁੱਲ ਵਜੋਂ ਪਾਸ ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੀਆਂ :func:`complex` ਕਾਲਾਂ ਵਿੱਚ ``3`` ਅਤੇ ``5`` ਦੋਵੇਂ ਕੀਵਰਡ ਆਰਗਿਊਮੈਂਟ ਹਨ::" msgid "" "complex(real=3, imag=5)\n" "complex(**{'real': 3, 'imag': 5})" msgstr "" +"complex(real=3, imag=5)\n" +"complex(**{'real': 3, 'imag': 5})" msgid "" ":dfn:`positional argument`: an argument that is not a keyword argument. " @@ -124,11 +161,17 @@ msgid "" "be passed as elements of an :term:`iterable` preceded by ``*``. For example, " "``3`` and ``5`` are both positional arguments in the following calls::" msgstr "" +":dfn:`positional argument`: ਉਹ ਆਰਗਿਊਮੈਂਟ ਜੋ ਕੀਵਰਡ ਆਰਗਿਊਮੈਂਟ ਨਹੀਂ ਹੁੰਦਾ। ਪੋਜ਼ੀਸ਼ਨਲ " +"ਆਰਗਿਊਮੈਂਟ ਆਰਗਿਊਮੈਂਟ ਸੂਚੀ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਆ ਸਕਦੇ ਹਨ ਅਤੇ/ਜਾਂ ``*`` ਨਾਲ ਦਿੱਤੇ :term:`iterable` ਦੇ " +"ਤੱਤਾਂ ਵਜੋਂ ਪਾਸ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਕਾਲਾਂ ਵਿੱਚ ``3`` ਅਤੇ ``5`` ਦੋਵੇਂ " +"ਪੋਜ਼ੀਸ਼ਨਲ ਆਰਗਿਊਮੈਂਟ ਹਨ::" msgid "" "complex(3, 5)\n" "complex(*(3, 5))" msgstr "" +"complex(3, 5)\n" +"complex(*(3, 5))" msgid "" "Arguments are assigned to the named local variables in a function body. See " @@ -136,24 +179,32 @@ msgid "" "Syntactically, any expression can be used to represent an argument; the " "evaluated value is assigned to the local variable." msgstr "" +"ਆਰਗਿਊਮੈਂਟਾਂ ਨੂੰ ਫੰਕਸ਼ਨ ਬਾਡੀ ਵਿੱਚ ਨਾਮਿਤ ਲੋਕਲ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਅਸਾਈਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ ਅਸਾਈਨਮੈਂਟ ਦੇ " +"ਨਿਯਮਾਂ ਲਈ :ref:`calls` ਭਾਗ ਵੇਖੋ। ਸਿੰਟੈਕਸ ਅਨੁਸਾਰ, ਕੋਈ ਵੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਆਰਗਿਊਮੈਂਟ ਨੂੰ ਦਰਸਾਉਣ ਲਈ " +"ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ; ਇਸਦਾ ਮੁਲਾਂਕਣ ਕੀਤਾ ਮੁੱਲ ਲੋਕਲ ਵੇਰੀਏਬਲ ਨੂੰ ਅਸਾਈਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "See also the :term:`parameter` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " "and :pep:`362`." msgstr "" +":term:`parameter` ਸ਼ਬਦਾਵਲੀ ਐਂਟਰੀ, :ref:`arguments ਅਤੇ parameters ਵਿੱਚ ਅੰਤਰ ` ਵਾਲਾ FAQ ਪ੍ਰਸ਼ਨ, ਅਤੇ :pep:`362` ਵੀ ਵੇਖੋ।" msgid "asynchronous context manager" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਰ" msgid "" "An object which controls the environment seen in an :keyword:`async with` " -"statement by defining :meth:`~object.__aenter__` and :meth:`~object." -"__aexit__` methods. Introduced by :pep:`492`." +"statement by defining :meth:`~object.__aenter__` " +"and :meth:`~object.__aexit__` methods. Introduced by :pep:`492`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ :meth:`~object.__aenter__` ਅਤੇ :meth:`~object.__aexit__` ਮੈਥਡ " +"ਪਰਿਭਾਸ਼ਿਤ ਕਰਕੇ :keyword:`async with` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਦਿੱਖ ਰਹੇ ਵਾਤਾਵਰਣ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ " +"ਹੈ। ਇਹ :pep:`492` ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "asynchronous generator" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਜਨਰੇਟਰ" msgid "" "Informally used to mean either an :term:`asynchronous generator function` or " @@ -162,9 +213,14 @@ msgid "" "generator iterator` are uncommon in practice; \"asynchronous generator\" " "alone is almost always sufficient." msgstr "" +"ਸੰਦਰਭ ਅਨੁਸਾਰ ਗੈਰ-ਆਧਿਕਾਰਿਕ ਤੌਰ 'ਤੇ ਇਸਦਾ ਅਰਥ ਜਾਂ ਤਾਂ :term:`asynchronous generator " +"function` ਜਾਂ :term:`asynchronous generator iterator` ਹੁੰਦਾ ਹੈ। ਰਸਮੀ " +"ਸ਼ਬਦ :term:`asynchronous generator function` ਅਤੇ :term:`asynchronous generator " +"iterator` ਅਮਲ ਵਿੱਚ ਘੱਟ ਵਰਤੇ ਜਾਂਦੇ ਹਨ; ਕੇਵਲ \"asynchronous generator\" ਕਹਿਣਾ ਲਗਭਗ " +"ਹਰ ਵੇਲੇ ਕਾਫ਼ੀ ਹੁੰਦਾ ਹੈ।" msgid "asynchronous generator function" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਜਨਰੇਟਰ ਫੰਕਸ਼ਨ" msgid "" "A function which returns an :term:`asynchronous generator iterator`. It " @@ -172,24 +228,33 @@ msgid "" "that it contains :keyword:`yield` expressions for producing a series of " "values usable in an :keyword:`async for` loop. See :pep:`525`." msgstr "" +"ਇੱਕ ਫੰਕਸ਼ਨ ਜੋ :term:`asynchronous generator iterator` ਵਾਪਸ ਕਰਦਾ ਹੈ। " +"ਇਹ :keyword:`async def` ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ coroutine function ਵਾਂਗ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ, ਪਰ " +"ਇਸ ਵਿੱਚ :keyword:`yield` ਐਕਸਪ੍ਰੈਸ਼ਨ ਹੁੰਦੀਆਂ ਹਨ ਜੋ :keyword:`async for` ਲੂਪ ਵਿੱਚ ਵਰਤੀ " +"ਜਾ ਸਕਣ ਵਾਲੀਆਂ ਮੁੱਲਾਂ ਦੀ ਲੜੀ ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ। ਵੇਖੋ :pep:`525`।" msgid "" "An asynchronous generator function may contain :keyword:`await` expressions " "as well as :keyword:`async for`, and :keyword:`async with` statements." msgstr "" +"ਇੱਕ ਅਸਿੰਕ੍ਰੋਨਸ ਜਨਰੇਟਰ ਫੰਕਸ਼ਨ ਵਿੱਚ :keyword:`await` ਐਕਸਪ੍ਰੈਸ਼ਨ ਦੇ ਨਾਲ :keyword:`async " +"for` ਅਤੇ :keyword:`async with` ਸਟੇਟਮੈਂਟ ਵੀ ਹੋ ਸਕਦੇ ਹਨ।" msgid "asynchronous generator iterator" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਜਨਰੇਟਰ ਇਟਰੇਟਰ" msgid "An object created by an :term:`asynchronous generator function`." -msgstr "" +msgstr ":term:`asynchronous generator function` ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਇੱਕ ਆਬਜੈਕਟ।" msgid "" -"This is an :term:`asynchronous iterator` which when called using the :meth:" -"`~object.__anext__` method returns an awaitable object which will execute " -"the body of the asynchronous generator function until the next :keyword:" -"`yield` expression." +"This is an :term:`asynchronous iterator` which when called using " +"the :meth:`~object.__anext__` method returns an awaitable object which will " +"execute the body of the asynchronous generator function until the " +"next :keyword:`yield` expression." msgstr "" +"ਇਹ ਇੱਕ :term:`asynchronous iterator` ਹੈ ਜੋ :meth:`~object.__anext__` ਮੈਥਡ ਰਾਹੀਂ " +"ਕਾਲ ਕਰਨ 'ਤੇ ਇੱਕ awaitable ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਜੋ ਅਸਿੰਕ੍ਰੋਨਸ ਜਨਰੇਟਰ ਫੰਕਸ਼ਨ ਦੀ ਬਾਡੀ ਨੂੰ " +"ਅਗਲੇ :keyword:`yield` ਐਕਸਪ੍ਰੈਸ਼ਨ ਤੱਕ ਚਲਾਉਂਦਾ ਹੈ।" msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " @@ -198,29 +263,44 @@ msgid "" "awaitable returned by :meth:`~object.__anext__`, it picks up where it left " "off. See :pep:`492` and :pep:`525`." msgstr "" +"ਹਰ :keyword:`yield` ਪ੍ਰੋਸੈਸਿੰਗ ਨੂੰ ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਰੋਕ ਦਿੰਦਾ ਹੈ ਅਤੇ ਐਗਜ਼ਿਕਿਊਸ਼ਨ ਦੀ ਸਥਿਤੀ " +"(ਲੋਕਲ ਵੇਰੀਏਬਲਾਂ ਅਤੇ ਬਾਕੀ ਰਹੇ try-statements ਸਮੇਤ) ਨੂੰ ਯਾਦ ਰੱਖਦਾ ਹੈ। ਜਦੋਂ *asynchronous " +"generator iterator* :meth:`~object.__anext__` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ ਹੋਰ awaitable ਨਾਲ " +"ਮੁੜ ਚਲਦਾ ਹੈ, ਤਾਂ ਇਹ ਉਥੋਂ ਹੀ ਜਾਰੀ ਰਹਿੰਦਾ ਹੈ ਜਿੱਥੇ ਇਹ ਰੁਕਿਆ ਸੀ। :pep:`492` ਅਤੇ :pep:`525` " +"ਵੇਖੋ।" msgid "asynchronous iterable" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਇਟਰੇਬਲ" msgid "" "An object, that can be used in an :keyword:`async for` statement. Must " "return an :term:`asynchronous iterator` from its :meth:`~object.__aiter__` " "method. Introduced by :pep:`492`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜਿਸਨੂੰ :keyword:`async for` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। " +"ਇਸਦੀ :meth:`~object.__aiter__` ਮੈਥਡ ਤੋਂ ਇੱਕ :term:`asynchronous iterator` ਵਾਪਸ " +"ਆਉਣਾ ਲਾਜ਼ਮੀ ਹੈ। ਇਹ :pep:`492` ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "asynchronous iterator" -msgstr "" +msgstr "ਅਸਿੰਕ੍ਰੋਨਸ ਇਟਰੇਟਰ" msgid "" -"An object that implements the :meth:`~object.__aiter__` and :meth:`~object." -"__anext__` methods. :meth:`~object.__anext__` must return an :term:" -"`awaitable` object. :keyword:`async for` resolves the awaitables returned by " -"an asynchronous iterator's :meth:`~object.__anext__` method until it raises " -"a :exc:`StopAsyncIteration` exception. Introduced by :pep:`492`." +"An object that implements the :meth:`~object.__aiter__` " +"and :meth:`~object.__anext__` methods. :meth:`~object.__anext__` must " +"return an :term:`awaitable` object. :keyword:`async for` resolves the " +"awaitables returned by an asynchronous iterator's :meth:`~object.__anext__` " +"method until it raises a :exc:`StopAsyncIteration` exception. Introduced " +"by :pep:`492`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ :meth:`~object.__aiter__` ਅਤੇ :meth:`~object.__anext__` ਮੈਥਡਾਂ ਨੂੰ " +"ਇੰਪਲੀਮੈਂਟ ਕਰਦਾ ਹੈ। :meth:`~object.__anext__` ਨੂੰ ਇੱਕ :term:`awaitable` ਆਬਜੈਕਟ ਵਾਪਸ " +"ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। :keyword:`async for` ਅਸਿੰਕ੍ਰੋਨਸ ਇਟਰੇਟਰ " +"ਦੀ :meth:`~object.__anext__` ਮੈਥਡ ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੇ awaitables ਨੂੰ resolve ਕਰਦਾ " +"ਰਹਿੰਦਾ ਹੈ ਜਦ ਤੱਕ ਕਿ :exc:`StopAsyncIteration` ਐਕਸੈਪਸ਼ਨ ਨਾ ਆ ਜਾਵੇ। ਇਹ :pep:`492` " +"ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "atomic operation" -msgstr "" +msgstr "ਐਟਾਮਿਕ ਓਪਰੇਸ਼ਨ" msgid "" "An operation that appears to execute as a single, indivisible step: no other " @@ -230,17 +310,24 @@ msgid "" "atomic). Atomicity is only guaranteed where explicitly documented. See " "also :term:`race condition` and :term:`data race`." msgstr "" +"ਇੱਕ ਅਜਿਹਾ ਓਪਰੇਸ਼ਨ ਜੋ ਇੱਕੋ, ਅਟੁੱਟ ਕਦਮ ਵਜੋਂ ਚੱਲਦਾ ਹੋਇਆ ਦਿਸਦਾ ਹੈ। ਕੋਈ ਹੋਰ ਥ੍ਰੈਡ ਇਸਨੂੰ ਅੱਧਾ ਮੁਕੰਮਲ ਹੋਇਆ " +"ਨਹੀਂ ਦੇਖ ਸਕਦਾ ਅਤੇ ਇਸਦੇ ਪ੍ਰਭਾਵ ਇੱਕੋ ਵਾਰ ਦਿਖਾਈ ਦਿੰਦੇ ਹਨ। Python ਇਹ ਗਾਰੰਟੀ ਨਹੀਂ ਦਿੰਦਾ ਕਿ ਉੱਚ-" +"ਪੱਧਰੀ ਸਟੇਟਮੈਂਟ ਐਟਾਮਿਕ ਹੁੰਦੇ ਹਨ (ਉਦਾਹਰਨ ਵਜੋਂ ``x += 1`` ਕਈ bytecode ਓਪਰੇਸ਼ਨ ਕਰਦਾ ਹੈ ਅਤੇ " +"ਐਟਾਮਿਕ ਨਹੀਂ ਹੈ)। ਐਟਾਮਿਸਿਟੀ ਦੀ ਗਾਰੰਟੀ ਕੇਵਲ ਉਥੇ ਹੁੰਦੀ ਹੈ ਜਿੱਥੇ ਇਹ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਦਸਤਾਵੇਜ਼ਬੱਧ " +"ਕੀਤੀ ਗਈ ਹੋਵੇ। :term:`race condition` ਅਤੇ :term:`data race` ਵੀ ਵੇਖੋ।" msgid "attached thread state" -msgstr "" +msgstr "ਜੁੜੀ ਹੋਈ ਥ੍ਰੈਡ ਸਥਿਤੀ" msgid "A :term:`thread state` that is active for the current OS thread." -msgstr "" +msgstr "ਇੱਕ :term:`thread state` ਜੋ ਮੌਜੂਦਾ OS ਥ੍ਰੈਡ ਲਈ ਸਰਗਰਮ ਹੁੰਦੀ ਹੈ।" msgid "" "When a :term:`thread state` is attached, the OS thread has access to the " "full Python C API and can safely invoke the bytecode interpreter." msgstr "" +"ਜਦੋਂ ਕੋਈ :term:`thread state` ਜੁੜੀ ਹੋਈ ਹੋਵੇ, ਤਾਂ OS ਥ੍ਰੈਡ ਨੂੰ ਪੂਰੀ Python C API ਤੱਕ ਪਹੁੰਚ " +"ਹੁੰਦੀ ਹੈ ਅਤੇ ਉਹ ਸੁਰੱਖਿਅਤ ਤਰੀਕੇ ਨਾਲ bytecode interpreter ਨੂੰ ਚਲਾ ਸਕਦਾ ਹੈ।" msgid "" "Unless a function explicitly notes otherwise, attempting to call the C API " @@ -249,6 +336,11 @@ msgid "" "user through the C API, or implicitly by the runtime, including during " "blocking C calls and by the bytecode interpreter in between calls." msgstr "" +"ਜਦ ਤੱਕ ਕੋਈ ਫੰਕਸ਼ਨ ਖਾਸ ਤੌਰ 'ਤੇ ਹੋਰ ਨਾ ਕਹੇ, ਜੁੜੀ ਹੋਈ thread state ਤੋਂ ਬਿਨਾਂ C API ਨੂੰ ਕਾਲ ਕਰਨ " +"ਦੀ ਕੋਸ਼ਿਸ਼ ਇੱਕ ਘਾਤਕ ਗਲਤੀ ਜਾਂ ਅਣਪਰਿਭਾਸ਼ਿਤ ਵਿਹਾਰ ਦਾ ਕਾਰਨ ਬਣੇਗੀ। Thread state ਨੂੰ C API " +"ਰਾਹੀਂ ਯੂਜ਼ਰ ਦੁਆਰਾ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਜਾਂ runtime ਦੁਆਰਾ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ ਜੋੜਿਆ ਜਾਂ ਅਲੱਗ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ blocking C calls ਦੌਰਾਨ ਅਤੇ ਕਾਲਾਂ ਦੇ ਵਿਚਕਾਰ bytecode interpreter " +"ਦੁਆਰਾ ਕੀਤਾ ਗਿਆ ਕੰਮ ਵੀ ਸ਼ਾਮਲ ਹੈ।" msgid "" "On most builds of Python, having an attached thread state implies that the " @@ -258,59 +350,82 @@ msgid "" "hold an attached thread state, allowing for true parallelism of the bytecode " "interpreter." msgstr "" +"Python ਦੇ ਜ਼ਿਆਦਾਤਰ ਬਿਲਡਾਂ ਵਿੱਚ, ਜੁੜੀ ਹੋਈ thread state ਹੋਣ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਕਾਲਰ ਮੌਜੂਦਾ " +"interpreter ਲਈ :term:`GIL` ਰੱਖਦਾ ਹੈ, ਇਸ ਲਈ ਕਿਸੇ ਵੀ ਸਮੇਂ ਕੇਵਲ ਇੱਕ OS thread ਹੀ ਜੁੜੀ " +"ਹੋਈ thread state ਰੱਖ ਸਕਦਾ ਹੈ। Python ਦੇ :term:`free-threaded builds ` ਵਿੱਚ, threads ਇੱਕੋ ਸਮੇਂ ਜੁੜੀ ਹੋਈ thread state ਰੱਖ ਸਕਦੇ ਹਨ, ਜਿਸ ਨਾਲ " +"bytecode interpreter ਦੀ ਅਸਲ ਸਮਾਂਤਰ ਕਾਰਗੁਜ਼ਾਰੀ (parallelism) ਸੰਭਵ ਹੁੰਦੀ ਹੈ।" msgid "attribute" -msgstr "" +msgstr "ਐਟ੍ਰਿਬਿਊਟ" msgid "" "A value associated with an object which is usually referenced by name using " "dotted expressions. For example, if an object *o* has an attribute *a* it " "would be referenced as *o.a*." msgstr "" +"ਕਿਸੇ ਆਬਜੈਕਟ ਨਾਲ ਸੰਬੰਧਿਤ ਇੱਕ ਮੁੱਲ ਜਿਸਨੂੰ ਆਮ ਤੌਰ 'ਤੇ dotted expressions ਰਾਹੀਂ ਨਾਮ ਨਾਲ " +"ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ਜੇ ਕਿਸੇ ਆਬਜੈਕਟ *o* ਦਾ ਇੱਕ ਐਟ੍ਰਿਬਿਊਟ *a* ਹੋਵੇ, ਤਾਂ ਇਸਨੂੰ " +"*o.a* ਵਜੋਂ ਦਰਸਾਇਆ ਜਾਵੇਗਾ।" msgid "" "It is possible to give an object an attribute whose name is not an " -"identifier as defined by :ref:`identifiers`, for example using :func:" -"`setattr`, if the object allows it. Such an attribute will not be accessible " -"using a dotted expression, and would instead need to be retrieved with :func:" -"`getattr`." +"identifier as defined by :ref:`identifiers`, for example " +"using :func:`setattr`, if the object allows it. Such an attribute will not " +"be accessible using a dotted expression, and would instead need to be " +"retrieved with :func:`getattr`." msgstr "" +"ਜੇ ਆਬਜੈਕਟ ਇਸਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੋਵੇ, ਤਾਂ ਉਸਨੂੰ ਅਜਿਹਾ ਐਟ੍ਰਿਬਿਊਟ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜਿਸਦਾ " +"ਨਾਮ :ref:`identifiers` ਅਨੁਸਾਰ ਇੱਕ identifier ਨਾ ਹੋਵੇ, ਉਦਾਹਰਨ ਵਜੋਂ :func:`setattr` " +"ਦੀ ਵਰਤੋਂ ਕਰਕੇ। ਅਜਿਹਾ ਐਟ੍ਰਿਬਿਊਟ dotted expression ਰਾਹੀਂ ਐਕਸੈਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕੇਗਾ ਅਤੇ " +"ਇਸਨੂੰ :func:`getattr` ਨਾਲ ਪ੍ਰਾਪਤ ਕਰਨਾ ਪਵੇਗਾ।" msgid "awaitable" -msgstr "" +msgstr "awaitable" msgid "" -"An object that can be used in an :keyword:`await` expression. Can be a :" -"term:`coroutine` or an object with an :meth:`~object.__await__` method. See " -"also :pep:`492`." +"An object that can be used in an :keyword:`await` expression. Can be " +"a :term:`coroutine` or an object with an :meth:`~object.__await__` method. " +"See also :pep:`492`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜਿਸਨੂੰ :keyword:`await` ਐਕਸਪ੍ਰੈਸ਼ਨ ਵਿੱਚ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। " +"ਇਹ :term:`coroutine` ਜਾਂ :meth:`~object.__await__` ਮੈਥਡ ਵਾਲਾ ਆਬਜੈਕਟ ਹੋ ਸਕਦਾ " +"ਹੈ। :pep:`492` ਵੀ ਵੇਖੋ।" msgid "BDFL" -msgstr "" +msgstr "BDFL" msgid "" -"Benevolent Dictator For Life, a.k.a. `Guido van Rossum `_, Python's creator." +"Benevolent Dictator For Life, a.k.a. `Guido van Rossum `_, Python's creator." msgstr "" +"Benevolent Dictator For Life (ਜੀਵਨ ਭਰ ਲਈ ਉਦਾਰ ਤਾਨਾਸ਼ਾਹ), ਅਰਥਾਤ `Guido van " +"Rossum `_, ਜੋ Python ਦੇ ਸਿਰਜਣਹਾਰ ਹਨ।" msgid "binary file" -msgstr "" +msgstr "ਬਾਈਨਰੀ ਫਾਈਲ" msgid "" "A :term:`file object` able to read and write :term:`bytes-like objects " "`. Examples of binary files are files opened in binary " -"mode (``'rb'``, ``'wb'`` or ``'rb+'``), :data:`sys.stdin.buffer `, :data:`sys.stdout.buffer `, and instances of :class:`io." -"BytesIO` and :class:`gzip.GzipFile`." +"mode (``'rb'``, ``'wb'`` or ``'rb+'``), :data:`sys.stdin.buffer " +"`, :data:`sys.stdout.buffer `, and instances " +"of :class:`io.BytesIO` and :class:`gzip.GzipFile`." msgstr "" +"ਇੱਕ :term:`file object` ਜੋ :term:`bytes-like objects ` ਨੂੰ " +"ਪੜ੍ਹ ਅਤੇ ਲਿਖ ਸਕਦਾ ਹੈ। ਬਾਈਨਰੀ ਫਾਈਲਾਂ ਦੀਆਂ ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਬਾਈਨਰੀ ਮੋਡ (``'rb'``, " +"``'wb'`` ਜਾਂ ``'rb+'``) ਵਿੱਚ ਖੋਲ੍ਹੀਆਂ ਫਾਈਲਾਂ, :data:`sys.stdin.buffer " +"`, :data:`sys.stdout.buffer `, ਅਤੇ :class:`io.BytesIO` " +"ਅਤੇ :class:`gzip.GzipFile` ਦੇ ਇੰਸਟੈਂਸ ਸ਼ਾਮਲ ਹਨ।" msgid "" -"See also :term:`text file` for a file object able to read and write :class:" -"`str` objects." +"See also :term:`text file` for a file object able to read and " +"write :class:`str` objects." msgstr "" +":class:`str` ਆਬਜੈਕਟਾਂ ਨੂੰ ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਯੋਗ file object ਲਈ :term:`text file` ਵੀ ਵੇਖੋ।" msgid "borrowed reference" -msgstr "" +msgstr "ਉਧਾਰ ਲਿਆ ਰੈਫਰੈਂਸ" msgid "" "In Python's C API, a borrowed reference is a reference to an object, where " @@ -318,38 +433,59 @@ msgid "" "pointer if the object is destroyed. For example, a garbage collection can " "remove the last :term:`strong reference` to the object and so destroy it." msgstr "" +"Python ਦੀ C API ਵਿੱਚ, borrowed reference ਕਿਸੇ ਆਬਜੈਕਟ ਲਈ ਅਜਿਹਾ ਰੈਫਰੈਂਸ ਹੁੰਦਾ ਹੈ ਜਿਸਦੀ " +"ਮਲਕੀਅਤ ਉਸ ਕੋਡ ਕੋਲ ਨਹੀਂ ਹੁੰਦੀ ਜੋ ਆਬਜੈਕਟ ਦੀ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹੈ। ਜੇ ਆਬਜੈਕਟ ਨਸ਼ਟ ਹੋ ਜਾਵੇ ਤਾਂ ਇਹ " +"dangling pointer ਬਣ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, garbage collection ਆਬਜੈਕਟ ਦਾ " +"ਆਖਰੀ :term:`strong reference` ਹਟਾ ਸਕਦੀ ਹੈ ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਉਸਨੂੰ ਨਸ਼ਟ ਕਰ ਸਕਦੀ ਹੈ।" msgid "" "Calling :c:func:`Py_INCREF` on the :term:`borrowed reference` is recommended " "to convert it to a :term:`strong reference` in-place, except when the object " -"cannot be destroyed before the last usage of the borrowed reference. The :c:" -"func:`Py_NewRef` function can be used to create a new :term:`strong " +"cannot be destroyed before the last usage of the borrowed reference. " +"The :c:func:`Py_NewRef` function can be used to create a new :term:`strong " "reference`." msgstr "" +":term:`borrowed reference` ਨੂੰ ਥਾਂ 'ਤੇ ਹੀ :term:`strong reference` ਵਿੱਚ ਬਦਲਣ " +"ਲਈ :c:func:`Py_INCREF` ਕਾਲ ਕਰਨਾ ਸਿਫਾਰਸ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਸਿਵਾਏ ਉਸ ਸਥਿਤੀ ਦੇ ਜਦੋਂ " +"borrowed reference ਦੀ ਆਖਰੀ ਵਰਤੋਂ ਤੋਂ ਪਹਿਲਾਂ ਆਬਜੈਕਟ ਨਸ਼ਟ ਨਹੀਂ ਹੋ ਸਕਦਾ। " +"ਨਵਾਂ :term:`strong reference` ਬਣਾਉਣ ਲਈ :c:func:`Py_NewRef` ਫੰਕਸ਼ਨ ਵਰਤਿਆ ਜਾ ਸਕਦਾ " +"ਹੈ।" msgid "bytes-like object" -msgstr "" +msgstr "ਬਾਈਟਸ-ਸਮਾਨ ਆਬਜੈਕਟ" msgid "" -"An object that supports the :ref:`bufferobjects` and can export a C-:term:" -"`contiguous` buffer. This includes all :class:`bytes`, :class:`bytearray`, " -"and :class:`array.array` objects, as well as many common :class:`memoryview` " -"objects. Bytes-like objects can be used for various operations that work " -"with binary data; these include compression, saving to a binary file, and " -"sending over a socket." +"An object that supports the :ref:`bufferobjects` and can export a " +"C-:term:`contiguous` buffer. This includes " +"all :class:`bytes`, :class:`bytearray`, and :class:`array.array` objects, as " +"well as many common :class:`memoryview` objects. Bytes-like objects can be " +"used for various operations that work with binary data; these include " +"compression, saving to a binary file, and sending over a socket." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ :ref:`bufferobjects` ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ C-:term:`contiguous` " +"ਬਫਰ ਨਿਰਯਾਤ ਕਰ ਸਕਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਸਾਰੇ :class:`bytes`, :class:`bytearray`, " +"ਅਤੇ :class:`array.array` ਆਬਜੈਕਟ ਸ਼ਾਮਲ ਹਨ, ਨਾਲ ਹੀ ਕਈ ਆਮ :class:`memoryview` " +"ਆਬਜੈਕਟ ਵੀ। ਬਾਈਟਸ-ਸਮਾਨ ਆਬਜੈਕਟ ਬਾਈਨਰੀ ਡਾਟਾ ਨਾਲ ਕੰਮ ਕਰਨ ਵਾਲੀਆਂ ਵੱਖ-ਵੱਖ ਕਾਰਵਾਈਆਂ ਲਈ ਵਰਤੇ " +"ਜਾ ਸਕਦੇ ਹਨ; ਇਨ੍ਹਾਂ ਵਿੱਚ ਸੰਕੁਚਨ (compression), ਬਾਈਨਰੀ ਫਾਈਲ ਵਿੱਚ ਸੇਵ ਕਰਨਾ ਅਤੇ ਸਾਕੇਟ ਰਾਹੀਂ " +"ਭੇਜਣਾ ਸ਼ਾਮਲ ਹੈ।" msgid "" "Some operations need the binary data to be mutable. The documentation often " "refers to these as \"read-write bytes-like objects\". Example mutable " -"buffer objects include :class:`bytearray` and a :class:`memoryview` of a :" -"class:`bytearray`. Other operations require the binary data to be stored in " -"immutable objects (\"read-only bytes-like objects\"); examples of these " +"buffer objects include :class:`bytearray` and a :class:`memoryview` of " +"a :class:`bytearray`. Other operations require the binary data to be stored " +"in immutable objects (\"read-only bytes-like objects\"); examples of these " "include :class:`bytes` and a :class:`memoryview` of a :class:`bytes` object." msgstr "" +"ਕੁਝ ਕਾਰਵਾਈਆਂ ਲਈ ਬਾਈਨਰੀ ਡਾਟਾ mutable ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੁੰਦਾ ਹੈ। ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਇਨ੍ਹਾਂ ਨੂੰ ਅਕਸਰ " +"\"read-write bytes-like objects\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ। Mutable ਬਫਰ ਆਬਜੈਕਟਾਂ ਦੀਆਂ " +"ਉਦਾਹਰਨਾਂ ਵਿੱਚ :class:`bytearray` ਅਤੇ :class:`bytearray` ਦਾ :class:`memoryview` " +"ਸ਼ਾਮਲ ਹਨ। ਹੋਰ ਕਾਰਵਾਈਆਂ ਲਈ ਬਾਈਨਰੀ ਡਾਟਾ immutable ਆਬਜੈਕਟਾਂ (\"read-only bytes-like " +"objects\") ਵਿੱਚ ਸਟੋਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ; ਇਨ੍ਹਾਂ ਦੀਆਂ ਉਦਾਹਰਨਾਂ :class:`bytes` " +"ਅਤੇ :class:`bytes` ਆਬਜੈਕਟ ਦਾ :class:`memoryview` ਹਨ।" msgid "bytecode" -msgstr "" +msgstr "ਬਾਈਟਕੋਡ" msgid "" "Python source code is compiled into bytecode, the internal representation of " @@ -361,69 +497,95 @@ msgid "" "expected to work between different Python virtual machines, nor to be stable " "between Python releases." msgstr "" +"Python ਸਰੋਤ ਕੋਡ ਨੂੰ ਬਾਈਟਕੋਡ ਵਿੱਚ ਕੰਪਾਈਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜੋ CPython ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ Python " +"ਪ੍ਰੋਗਰਾਮ ਦੀ ਅੰਦਰੂਨੀ ਨੁਮਾਇੰਦਗੀ ਹੈ। ਬਾਈਟਕੋਡ ਨੂੰ ``.pyc`` ਫਾਈਲਾਂ ਵਿੱਚ ਵੀ ਕੈਸ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ " +"ਜੋ ਇੱਕੋ ਫਾਈਲ ਨੂੰ ਦੂਜੀ ਵਾਰ ਚਲਾਉਣਾ ਤੇਜ਼ ਹੋਵੇ (ਸਰੋਤ ਤੋਂ ਬਾਈਟਕੋਡ ਵਿੱਚ ਮੁੜ ਕੰਪਾਈਲੇਸ਼ਨ ਤੋਂ ਬਚਿਆ ਜਾ ਸਕੇ)। " +"ਇਹ \"ਵਿਚੋਲੀਆ ਭਾਸ਼ਾ\" ਇੱਕ :term:`virtual machine` ਉੱਤੇ ਚਲਦੀ ਮੰਨੀ ਜਾਂਦੀ ਹੈ ਜੋ ਹਰ ਬਾਈਟਕੋਡ " +"ਨਾਲ ਸੰਬੰਧਿਤ ਮਸ਼ੀਨ ਕੋਡ ਨੂੰ ਚਲਾਉਂਦੀ ਹੈ। ਧਿਆਨ ਰਹੇ ਕਿ ਬਾਈਟਕੋਡ ਵੱਖ-ਵੱਖ Python ਵਰਚੁਅਲ ਮਸ਼ੀਨਾਂ " +"ਵਿਚਕਾਰ ਕੰਮ ਕਰਨ ਲਈ ਨਹੀਂ ਬਣਾਏ ਗਏ ਅਤੇ ਨਾ ਹੀ Python ਰਿਲੀਜ਼ਾਂ ਵਿਚਕਾਰ ਸਥਿਰ ਰਹਿਣ ਦੀ " +"ਗਾਰੰਟੀ ਹੈ।" msgid "" -"A list of bytecode instructions can be found in the documentation for :ref:" -"`the dis module `." +"A list of bytecode instructions can be found in the documentation " +"for :ref:`the dis module `." msgstr "" +"ਬਾਈਟਕੋਡ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਸੂਚੀ :ref:`the dis module ` ਦੇ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਮਿਲ " +"ਸਕਦੀ ਹੈ।" msgid "callable" -msgstr "" +msgstr "ਕਾਲਯੋਗ" msgid "" "A callable is an object that can be called, possibly with a set of arguments " "(see :term:`argument`), with the following syntax::" msgstr "" +"ਕਾਲਯੋਗ (callable) ਉਹ ਆਬਜੈਕਟ ਹੁੰਦਾ ਹੈ ਜਿਸਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕੇ, ਸੰਭਵ ਤੌਰ 'ਤੇ ਕੁਝ ਆਰਗਿਊਮੈਂਟਾਂ " +"(ਵੇਖੋ :term:`argument`) ਨਾਲ, ਹੇਠਾਂ ਦਿੱਤੇ ਸਿੰਟੈਕਸ ਅਨੁਸਾਰ::" msgid "callable(argument1, argument2, argumentN)" -msgstr "" +msgstr "callable(argument1, argument2, argumentN)" msgid "" "A :term:`function`, and by extension a :term:`method`, is a callable. An " "instance of a class that implements the :meth:`~object.__call__` method is " "also a callable." msgstr "" +"ਇੱਕ :term:`function`, ਅਤੇ ਇਸਦੇ ਵਿਸਥਾਰ ਵਜੋਂ ਇੱਕ :term:`method`, ਕਾਲਯੋਗ ਹੁੰਦਾ ਹੈ। ਕਿਸੇ " +"ਕਲਾਸ ਦਾ ਉਹ ਇੰਸਟੈਂਸ ਜੋ :meth:`~object.__call__` ਮੈਥਡ ਨੂੰ ਇੰਪਲੀਮੈਂਟ ਕਰਦਾ ਹੋਵੇ, ਉਹ ਵੀ ਕਾਲਯੋਗ " +"ਹੁੰਦਾ ਹੈ।" msgid "callback" -msgstr "" +msgstr "ਕਾਲਬੈਕ" msgid "" "A subroutine function which is passed as an argument to be executed at some " "point in the future." -msgstr "" +msgstr "ਇੱਕ ਸਬਰੂਟੀਨ ਫੰਕਸ਼ਨ ਜੋ ਭਵਿੱਖ ਵਿੱਚ ਕਿਸੇ ਸਮੇਂ ਚਲਾਉਣ ਲਈ ਆਰਗਿਊਮੈਂਟ ਵਜੋਂ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "class" -msgstr "" +msgstr "ਕਲਾਸ" msgid "" "A template for creating user-defined objects. Class definitions normally " "contain method definitions which operate on instances of the class." msgstr "" +"ਯੂਜ਼ਰ-ਪਰਿਭਾਸ਼ਿਤ ਆਬਜੈਕਟ ਬਣਾਉਣ ਲਈ ਇੱਕ ਖਾਕਾ (template)। ਕਲਾਸ ਪਰਿਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ " +"ਮੈਥਡ ਪਰਿਭਾਸ਼ਾਵਾਂ ਹੁੰਦੀਆਂ ਹਨ ਜੋ ਕਲਾਸ ਦੇ ਇੰਸਟੈਂਸਾਂ ਉੱਤੇ ਕੰਮ ਕਰਦੀਆਂ ਹਨ।" msgid "class variable" -msgstr "" +msgstr "ਕਲਾਸ ਵੇਰੀਏਬਲ" msgid "" "A variable defined in a class and intended to be modified only at class " "level (i.e., not in an instance of the class)." msgstr "" +"ਕਲਾਸ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਇੱਕ ਵੇਰੀਏਬਲ ਜਿਸਨੂੰ ਕੇਵਲ ਕਲਾਸ ਪੱਧਰ 'ਤੇ ਹੀ ਬਦਲਣ ਲਈ ਬਣਾਇਆ ਗਿਆ ਹੋਵੇ " +"(ਅਰਥਾਤ ਕਲਾਸ ਦੇ ਇੰਸਟੈਂਸ ਵਿੱਚ ਨਹੀਂ)।" msgid "closure variable" -msgstr "" +msgstr "ਕਲੋਜ਼ਰ ਵੇਰੀਏਬਲ" msgid "" "A :term:`free variable` referenced from a :term:`nested scope` that is " "defined in an outer scope rather than being resolved at runtime from the " -"globals or builtin namespaces. May be explicitly defined with the :keyword:" -"`nonlocal` keyword to allow write access, or implicitly defined if the " -"variable is only being read." +"globals or builtin namespaces. May be explicitly defined with " +"the :keyword:`nonlocal` keyword to allow write access, or implicitly defined " +"if the variable is only being read." msgstr "" +":term:`nested scope` ਵਿੱਚੋਂ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਇੱਕ :term:`free variable` ਜੋ ਕਿਸੇ ਬਾਹਰੀ " +"ਸਕੋਪ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦਾ ਹੈ, ਨਾ ਕਿ ਰਨਟਾਈਮ ਦੌਰਾਨ globals ਜਾਂ builtin namespaces ਤੋਂ ਹੱਲ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਲਿਖਣ ਦੀ ਪਹੁੰਚ ਦੇਣ ਲਈ ਇਸਨੂੰ :keyword:`nonlocal` ਕੀਵਰਡ ਨਾਲ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ " +"ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਾਂ ਜੇ ਵੇਰੀਏਬਲ ਸਿਰਫ਼ ਪੜ੍ਹਿਆ ਜਾ ਰਿਹਾ ਹੋਵੇ ਤਾਂ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ " +"ਪਰਿਭਾਸ਼ਿਤ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "For example, in the ``inner`` function in the following code, both ``x`` and " "``print`` are :term:`free variables `, but only ``x`` is a " "*closure variable*::" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਵਿੱਚ ``inner`` ਫੰਕਸ਼ਨ ਦੇ ਅੰਦਰ ``x`` ਅਤੇ ``print`` " +"ਦੋਵੇਂ :term:`free variables ` ਹਨ, ਪਰ ਕੇਵਲ ``x`` ਇੱਕ *closure " +"variable* ਹੈ::" msgid "" "def outer():\n" @@ -434,6 +596,13 @@ msgid "" " print(x)\n" " return inner" msgstr "" +"def outer():\n" +" x = 0\n" +" def inner():\n" +" nonlocal x\n" +" x += 1\n" +" print(x)\n" +" return inner" msgid "" "Due to the :attr:`codeobject.co_freevars` attribute (which, despite its " @@ -442,9 +611,13 @@ msgid "" "sometimes used even when the intended meaning is to refer specifically to " "closure variables." msgstr "" +":attr:`codeobject.co_freevars` ਐਟ੍ਰਿਬਿਊਟ ਦੇ ਕਾਰਨ (ਜੋ ਆਪਣੇ ਨਾਮ ਦੇ ਬਾਵਜੂਦ ਸਾਰੇ " +"referenced free variables ਦੀ ਸੂਚੀ ਨਹੀਂ ਦਿੰਦਾ, ਸਗੋਂ ਕੇਵਲ closure variables ਦੇ ਨਾਮ " +"ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ), ਵਧੇਰੇ ਆਮ :term:`free variable` ਸ਼ਬਦ ਕਈ ਵਾਰ ਉਸ ਵੇਲੇ ਵੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ " +"ਜਦੋਂ ਅਸਲ ਮਤਲਬ ਖਾਸ ਤੌਰ 'ਤੇ closure variables ਵੱਲ ਸੰਕੇਤ ਕਰਨਾ ਹੋਵੇ।" msgid "complex number" -msgstr "" +msgstr "ਕੰਪਲੈਕਸ ਸੰਖਿਆ" msgid "" "An extension of the familiar real number system in which all numbers are " @@ -457,9 +630,17 @@ msgid "" "Use of complex numbers is a fairly advanced mathematical feature. If you're " "not aware of a need for them, it's almost certain you can safely ignore them." msgstr "" +"ਜਾਣੀ-ਪਛਾਣੀ ਵਾਸਤਵਿਕ ਸੰਖਿਆ ਪ੍ਰਣਾਲੀ ਦਾ ਇੱਕ ਵਿਸਥਾਰ, ਜਿਸ ਵਿੱਚ ਹਰ ਸੰਖਿਆ ਨੂੰ ਇੱਕ ਵਾਸਤਵਿਕ " +"ਭਾਗ ਅਤੇ ਇੱਕ ਕਾਲਪਨਿਕ ਭਾਗ ਦੇ ਜੋੜ ਵਜੋਂ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ। ਕਾਲਪਨਿਕ ਸੰਖਿਆਵਾਂ ਕਾਲਪਨਿਕ ਇਕਾਈ " +"(``-1`` ਦਾ ਵਰਗਮੂਲ) ਦੇ ਵਾਸਤਵਿਕ ਗੁਣਾਕ ਹੁੰਦੀਆਂ ਹਨ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਗਣਿਤ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ``i`` ਅਤੇ " +"ਇੰਜੀਨੀਅਰਿੰਗ ਵਿੱਚ ``j`` ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ। Python ਵਿੱਚ complex numbers ਲਈ built-in " +"ਸਮਰਥਨ ਹੈ, ਜਿੱਥੇ ਕਾਲਪਨਿਕ ਭਾਗ ਨੂੰ ``j`` suffix ਨਾਲ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ, ਉਦਾਹਰਨ ਵਜੋਂ " +"``3+1j``। :mod:`math` ਮੋਡੀਊਲ ਦੇ complex ਸਮਕੱਖ ਲਈ :mod:`cmath` ਵਰਤੋ। Complex " +"numbers ਦਾ ਉਪਯੋਗ ਇੱਕ ਉੱਚ ਪੱਧਰੀ ਗਣਿਤੀ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ। ਜੇ ਤੁਹਾਨੂੰ ਇਨ੍ਹਾਂ ਦੀ ਲੋੜ ਬਾਰੇ ਪਤਾ ਨਹੀਂ ਹੈ, " +"ਤਾਂ ਸੰਭਵ ਹੈ ਕਿ ਤੁਸੀਂ ਇਨ੍ਹਾਂ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰ ਸਕਦੇ ਹੋ।" msgid "concurrency" -msgstr "" +msgstr "ਸਮਕਾਲੀ ਕਾਰਗੁਜ਼ਾਰੀ" msgid "" "The ability of a computer program to perform multiple tasks at the same " @@ -470,9 +651,15 @@ msgid "" "processes. Multi-core processors can execute threads and processes on " "different CPU cores at the same time (see :term:`parallelism`)." msgstr "" +"ਕਿਸੇ ਕੰਪਿਊਟਰ ਪ੍ਰੋਗਰਾਮ ਦੀ ਇੱਕੋ ਸਮੇਂ ਕਈ ਕੰਮ ਕਰਨ ਦੀ ਸਮਰੱਥਾ। Python ਵੱਖ-ਵੱਖ ਤਰ੍ਹਾਂ ਦੀ " +"concurrency ਵਰਤਣ ਵਾਲੇ ਪ੍ਰੋਗਰਾਮ ਲਿਖਣ ਲਈ ਲਾਇਬ੍ਰੇਰੀਆਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। :mod:`asyncio` " +"asynchronous tasks ਅਤੇ coroutines ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ " +"ਹੈ। :mod:`threading` ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ threads ਤੱਕ ਪਹੁੰਚ ਦਿੰਦਾ ਹੈ " +"ਅਤੇ :mod:`multiprocessing` ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ processes ਤੱਕ। Multi-core ਪ੍ਰੋਸੈਸਰ ਇੱਕੋ ਸਮੇਂ " +"ਵੱਖ-ਵੱਖ CPU cores ਉੱਤੇ threads ਅਤੇ processes ਚਲਾ ਸਕਦੇ ਹਨ (ਵੇਖੋ :term:`parallelism`)।" msgid "concurrent modification" -msgstr "" +msgstr "ਸਮਕਾਲੀ ਸੋਧ" msgid "" "When multiple threads modify shared data at the same time. Concurrent " @@ -480,49 +667,64 @@ msgid "" "`, and might also trigger a :term:`data race `, " "data corruption, or both." msgstr "" +"ਜਦੋਂ ਕਈ threads ਇੱਕੋ ਸਮੇਂ ਸਾਂਝੇ ਡਾਟੇ ਵਿੱਚ ਸੋਧ ਕਰਦੇ ਹਨ। ਠੀਕ synchronization ਤੋਂ ਬਿਨਾਂ " +"concurrent modification :term:`race conditions ` ਦਾ ਕਾਰਨ ਬਣ " +"ਸਕਦੀ ਹੈ ਅਤੇ :term:`data race `, ਡਾਟਾ ਖਰਾਬੀ ਜਾਂ ਦੋਵੇਂ ਪੈਦਾ ਕਰ ਸਕਦੀ ਹੈ।" msgid "context" -msgstr "" +msgstr "ਸੰਦਰਭ" msgid "" "This term has different meanings depending on where and how it is used. Some " "common meanings:" msgstr "" +"ਇਸ ਸ਼ਬਦ ਦੇ ਅਰਥ ਇਸ ਗੱਲ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ ਕਿ ਇਸਨੂੰ ਕਿੱਥੇ ਅਤੇ ਕਿਵੇਂ ਵਰਤਿਆ ਗਿਆ ਹੈ। ਕੁਝ ਆਮ ਅਰਥ " +"ਇਹ ਹਨ:" msgid "" "The temporary state or environment established by a :term:`context manager` " "via a :keyword:`with` statement." msgstr "" +":keyword:`with` ਸਟੇਟਮੈਂਟ ਰਾਹੀਂ ਕਿਸੇ :term:`context manager` ਦੁਆਰਾ ਸਥਾਪਿਤ ਕੀਤੀ " +"ਅਸਥਾਈ ਸਥਿਤੀ ਜਾਂ ਵਾਤਾਵਰਣ।" msgid "" -"The collection of key­value bindings associated with a particular :class:" -"`contextvars.Context` object and accessed via :class:`~contextvars." -"ContextVar` objects. Also see :term:`context variable`." +"The collection of key­value bindings associated with a " +"particular :class:`contextvars.Context` object and accessed " +"via :class:`~contextvars.ContextVar` objects. Also see :term:`context " +"variable`." msgstr "" +"ਕਿਸੇ ਖਾਸ :class:`contextvars.Context` ਆਬਜੈਕਟ ਨਾਲ ਸੰਬੰਧਿਤ key-value bindings ਦਾ " +"ਸੰਗ੍ਰਹਿ, ਜਿਸਨੂੰ :class:`~contextvars.ContextVar` ਆਬਜੈਕਟਾਂ ਰਾਹੀਂ ਐਕਸੈਸ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ। :term:`context variable` ਵੀ ਵੇਖੋ।" msgid "" "A :class:`contextvars.Context` object. Also see :term:`current context`." -msgstr "" +msgstr "ਇੱਕ :class:`contextvars.Context` ਆਬਜੈਕਟ। :term:`current context` ਵੀ ਵੇਖੋ।" msgid "context management protocol" -msgstr "" +msgstr "ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਮੈਂਟ ਪ੍ਰੋਟੋਕੋਲ" msgid "" "The :meth:`~object.__enter__` and :meth:`~object.__exit__` methods called by " "the :keyword:`with` statement. See :pep:`343`." msgstr "" +":keyword:`with` ਸਟੇਟਮੈਂਟ ਦੁਆਰਾ ਕਾਲ ਕੀਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ :meth:`~object.__enter__` " +"ਅਤੇ :meth:`~object.__exit__` ਮੈਥਡਾਂ। :pep:`343` ਵੇਖੋ।" msgid "context manager" -msgstr "" +msgstr "ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਰ" msgid "" "An object which implements the :term:`context management protocol` and " -"controls the environment seen in a :keyword:`with` statement. See :pep:" -"`343`." +"controls the environment seen in a :keyword:`with` statement. " +"See :pep:`343`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ :term:`context management protocol` ਨੂੰ ਇੰਪਲੀਮੈਂਟ ਕਰਦਾ ਹੈ " +"ਅਤੇ :keyword:`with` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਦਿੱਖ ਰਹੇ ਵਾਤਾਵਰਣ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ। :pep:`343` ਵੇਖੋ।" msgid "context variable" -msgstr "" +msgstr "ਕਾਂਟੈਕਸਟ ਵੇਰੀਏਬਲ" msgid "" "A variable whose value depends on which context is the :term:`current " @@ -530,9 +732,13 @@ msgid "" "Context variables are primarily used to isolate state between concurrent " "asynchronous tasks." msgstr "" +"ਇੱਕ ਐਸਾ ਵੇਰੀਏਬਲ ਜਿਸਦੀ value ਇਸ ਗੱਲ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ ਕਿ ਕਿਹੜਾ " +"context :term:`current context` ਹੈ। Values ਨੂੰ :class:`contextvars.ContextVar` " +"ਆਬਜੈਕਟਾਂ ਰਾਹੀਂ ਐਕਸੈਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Context variables ਮੁੱਖ ਤੌਰ 'ਤੇ ਸਮਕਾਲੀ asynchronous " +"tasks ਦੇ ਵਿਚਕਾਰ state ਨੂੰ ਅਲੱਗ ਰੱਖਣ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।" msgid "contiguous" -msgstr "" +msgstr "ਲਗਾਤਾਰ" msgid "" "A buffer is considered contiguous exactly if it is either *C-contiguous* or " @@ -543,9 +749,15 @@ msgid "" "visiting items in order of memory address. However, in Fortran contiguous " "arrays, the first index varies the fastest." msgstr "" +"ਇੱਕ buffer ਨੂੰ contiguous ਤਦੋਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਜੇ ਉਹ *C-contiguous* ਜਾਂ *Fortran " +"contiguous* ਹੋਵੇ। Zero-dimensional buffers ਦੋਵੇਂ C ਅਤੇ Fortran contiguous ਹੁੰਦੇ ਹਨ। " +"One-dimensional arrays ਵਿੱਚ items ਮੈਮੋਰੀ ਵਿੱਚ ਇੱਕ-ਦੂਜੇ ਦੇ ਨਾਲ ਅਤੇ zero ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ " +"indexes ਦੇ ਕ੍ਰਮ ਅਨੁਸਾਰ ਰੱਖੇ ਜਾਂਦੇ ਹਨ। Multidimensional C-contiguous arrays ਵਿੱਚ " +"memory address ਦੇ ਕ੍ਰਮ ਅਨੁਸਾਰ ਚਲਣ ਵੇਲੇ ਆਖਰੀ index ਸਭ ਤੋਂ ਤੇਜ਼ੀ ਨਾਲ ਬਦਲਦਾ ਹੈ। ਪਰ " +"Fortran contiguous arrays ਵਿੱਚ ਪਹਿਲਾ index ਸਭ ਤੋਂ ਤੇਜ਼ੀ ਨਾਲ ਬਦਲਦਾ ਹੈ।" msgid "coroutine" -msgstr "" +msgstr "ਕੋਰੂਟੀਨ" msgid "" "Coroutines are a more generalized form of subroutines. Subroutines are " @@ -553,19 +765,27 @@ msgid "" "entered, exited, and resumed at many different points. They can be " "implemented with the :keyword:`async def` statement. See also :pep:`492`." msgstr "" +"Coroutines subroutines ਦਾ ਇੱਕ ਹੋਰ ਵਿਆਪਕ ਰੂਪ ਹਨ। Subroutine ਇੱਕ ਬਿੰਦੂ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ ਅਤੇ " +"ਦੂਜੇ ਬਿੰਦੂ 'ਤੇ ਸਮਾਪਤ ਹੁੰਦੀ ਹੈ। Coroutines ਨੂੰ ਕਈ ਵੱਖ-ਵੱਖ ਬਿੰਦੂਆਂ 'ਤੇ ਸ਼ੁਰੂ, ਰੋਕਿਆ ਅਤੇ ਮੁੜ ਚਲਾਇਆ ਜਾ " +"ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਨੂੰ :keyword:`async def` ਸਟੇਟਮੈਂਟ ਨਾਲ ਇੰਪਲੀਮੈਂਟ ਕੀਤਾ ਜਾ ਸਕਦਾ " +"ਹੈ। :pep:`492` ਵੀ ਵੇਖੋ।" msgid "coroutine function" -msgstr "" +msgstr "ਕੋਰੂਟੀਨ ਫੰਕਸ਼ਨ" msgid "" "A function which returns a :term:`coroutine` object. A coroutine function " -"may be defined with the :keyword:`async def` statement, and may contain :" -"keyword:`await`, :keyword:`async for`, and :keyword:`async with` keywords. " -"These were introduced by :pep:`492`." +"may be defined with the :keyword:`async def` statement, and may " +"contain :keyword:`await`, :keyword:`async for`, and :keyword:`async with` " +"keywords. These were introduced by :pep:`492`." msgstr "" +"ਇੱਕ ਐਸਾ ਫੰਕਸ਼ਨ ਜੋ :term:`coroutine` ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ। Coroutine function " +"ਨੂੰ :keyword:`async def` ਸਟੇਟਮੈਂਟ ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇਸ " +"ਵਿੱਚ :keyword:`await`, :keyword:`async for` ਅਤੇ :keyword:`async with` ਕੀਵਰਡ ਹੋ " +"ਸਕਦੇ ਹਨ। ਇਹ :pep:`492` ਦੁਆਰਾ ਪੇਸ਼ ਕੀਤੇ ਗਏ ਸਨ।" msgid "CPython" -msgstr "" +msgstr "CPython" msgid "" "The canonical implementation of the Python programming language, as " @@ -573,21 +793,30 @@ msgid "" "is used when necessary to distinguish this implementation from others such " "as Jython or IronPython." msgstr "" +"Python ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾ ਦੀ ਮਿਆਰੀ implementation, ਜੋ python.org ਰਾਹੀਂ ਵੰਡ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। \"CPython\" ਸ਼ਬਦ ਇਸ implementation ਨੂੰ Jython ਜਾਂ IronPython ਵਰਗੀਆਂ ਹੋਰ " +"implementations ਤੋਂ ਵੱਖ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" msgid "current context" -msgstr "" +msgstr "ਮੌਜੂਦਾ ਕਾਂਟੈਕਸਟ" msgid "" "The :term:`context` (:class:`contextvars.Context` object) that is currently " "used by :class:`~contextvars.ContextVar` objects to access (get or set) the " "values of :term:`context variables `. Each thread has its " -"own current context. Frameworks for executing asynchronous tasks (see :mod:" -"`asyncio`) associate each task with a context which becomes the current " -"context whenever the task starts or resumes execution." +"own current context. Frameworks for executing asynchronous tasks " +"(see :mod:`asyncio`) associate each task with a context which becomes the " +"current context whenever the task starts or resumes execution." msgstr "" +"ਉਹ :term:`context` (:class:`contextvars.Context` ਆਬਜੈਕਟ) ਜੋ ਇਸ " +"ਵੇਲੇ :class:`~contextvars.ContextVar` ਆਬਜੈਕਟਾਂ ਦੁਆਰਾ :term:`context variables " +"` ਦੀਆਂ values ਨੂੰ (ਪ੍ਰਾਪਤ ਕਰਨ ਜਾਂ ਸੈੱਟ ਕਰਨ) ਲਈ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ। " +"ਹਰ thread ਦਾ ਆਪਣਾ current context ਹੁੰਦਾ ਹੈ। Asynchronous tasks ਚਲਾਉਣ ਵਾਲੇ " +"frameworks (ਵੇਖੋ :mod:`asyncio`) ਹਰ task ਨੂੰ ਇੱਕ context ਨਾਲ ਜੋੜਦੇ ਹਨ ਜੋ task ਦੇ ਸ਼ੁਰੂ " +"ਹੋਣ ਜਾਂ ਮੁੜ ਚੱਲਣ 'ਤੇ current context ਬਣ ਜਾਂਦਾ ਹੈ।" msgid "cyclic isolate" -msgstr "" +msgstr "ਚੱਕਰੀ ਅਲੱਗ ਸਮੂਹ" msgid "" "A subgroup of one or more objects that reference each other in a reference " @@ -596,23 +825,35 @@ msgid "" "these groups and break the reference cycles so that the memory can be " "reclaimed." msgstr "" +"ਇੱਕ ਜਾਂ ਵੱਧ ਆਬਜੈਕਟਾਂ ਦਾ ਉਪਸਮੂਹ ਜੋ ਆਪਸ ਵਿੱਚ reference cycle ਰਾਹੀਂ ਇੱਕ-ਦੂਜੇ ਨੂੰ ਰੈਫਰ ਕਰਦੇ ਹਨ, " +"ਪਰ ਸਮੂਹ ਤੋਂ ਬਾਹਰਲੇ ਆਬਜੈਕਟਾਂ ਦੁਆਰਾ ਰੈਫਰ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ। :term:`cyclic garbage collector " +"` ਦਾ ਉਦੇਸ਼ ਅਜਿਹੇ ਸਮੂਹਾਂ ਦੀ ਪਛਾਣ ਕਰਨਾ ਅਤੇ reference cycles ਨੂੰ " +"ਤੋੜਨਾ ਹੈ ਤਾਂ ਜੋ ਮੈਮੋਰੀ ਮੁੜ ਪ੍ਰਾਪਤ ਕੀਤੀ ਜਾ ਸਕੇ।" msgid "data race" -msgstr "" +msgstr "ਡਾਟਾ ਰੇਸ" msgid "" "A situation where multiple threads access the same memory location " "concurrently, at least one of the accesses is a write, and the threads do " -"not use any synchronization to control their access. Data races lead to :" -"term:`non-deterministic` behavior and can cause data corruption. Proper use " -"of :term:`locks ` and other :term:`synchronization primitives " +"not use any synchronization to control their access. Data races lead " +"to :term:`non-deterministic` behavior and can cause data corruption. Proper " +"use of :term:`locks ` and other :term:`synchronization primitives " "` prevents data races. Note that data races can " "only happen in native code, but that :term:`native code` might be exposed in " "a Python API. See also :term:`race condition` and :term:`thread-safe`." msgstr "" +"ਇਹੋ ਜਿਹੀ ਸਥਿਤੀ ਜਿੱਥੇ ਕਈ threads ਇੱਕੋ ਮੈਮੋਰੀ ਸਥਾਨ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਐਕਸੈਸ ਕਰਦੀਆਂ ਹਨ, ਘੱਟੋ-ਘੱਟ ਇੱਕ " +"ਐਕਸੈਸ write ਹੁੰਦੀ ਹੈ, ਅਤੇ threads ਆਪਣੇ ਐਕਸੈਸ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕੋਈ synchronization " +"ਨਹੀਂ ਵਰਤਦੀਆਂ। Data races :term:`non-deterministic` ਵਿਹਾਰ ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ ਅਤੇ ਡਾਟਾ " +"ਖਰਾਬ ਹੋਣ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦੀਆਂ ਹਨ। :term:`locks ` ਅਤੇ " +"ਹੋਰ :term:`synchronization primitives ` ਦੀ ਸਹੀ ਵਰਤੋਂ " +"data races ਨੂੰ ਰੋਕਦੀ ਹੈ। ਧਿਆਨ ਰਹੇ ਕਿ data races ਸਿਰਫ native code ਵਿੱਚ ਹੀ ਹੋ ਸਕਦੀਆਂ " +"ਹਨ, ਪਰ :term:`native code` Python API ਰਾਹੀਂ ਉਪਲਬਧ ਹੋ ਸਕਦਾ ਹੈ। :term:`race " +"condition` ਅਤੇ :term:`thread-safe` ਵੀ ਵੇਖੋ।" msgid "deadlock" -msgstr "" +msgstr "ਡੈਡਲਾਕ" msgid "" "A situation in which two or more tasks (threads, processes, or coroutines) " @@ -621,24 +862,37 @@ msgid "" "and waits for lock 2, while thread B holds lock 2 and waits for lock 1, both " "threads will wait indefinitely. In Python this often arises from acquiring " "multiple locks in conflicting orders or from circular join/await " -"dependencies. Deadlocks can be avoided by always acquiring multiple :term:" -"`locks ` in a consistent order. See also :term:`lock` and :term:" -"`reentrant`." -msgstr "" +"dependencies. Deadlocks can be avoided by always acquiring " +"multiple :term:`locks ` in a consistent order. See also :term:`lock` " +"and :term:`reentrant`." +msgstr "" +"ਇਹੋ ਜਿਹੀ ਸਥਿਤੀ ਜਿਸ ਵਿੱਚ ਦੋ ਜਾਂ ਵੱਧ tasks (threads, processes ਜਾਂ coroutines) ਇੱਕ-ਦੂਜੇ " +"ਵੱਲੋਂ resources ਛੱਡਣ ਜਾਂ ਕਾਰਵਾਈ ਪੂਰੀ ਕਰਨ ਦੀ ਅਣਮਿਆਦੀ ਉਡੀਕ ਕਰਦੀਆਂ ਹਨ, ਜਿਸ ਕਾਰਨ ਕੋਈ ਵੀ " +"ਅੱਗੇ ਨਹੀਂ ਵੱਧ ਸਕਦਾ। ਉਦਾਹਰਨ ਲਈ, ਜੇ thread A lock 1 ਰੱਖਦੀ ਹੈ ਅਤੇ lock 2 ਦੀ ਉਡੀਕ ਕਰਦੀ " +"ਹੈ, ਜਦਕਿ thread B lock 2 ਰੱਖਦੀ ਹੈ ਅਤੇ lock 1 ਦੀ ਉਡੀਕ ਕਰਦੀ ਹੈ, ਤਾਂ ਦੋਵੇਂ threads " +"ਅਣਮਿਆਦੀ ਉਡੀਕ ਕਰਨਗੀਆਂ। Python ਵਿੱਚ ਇਹ ਅਕਸਰ ਵੱਖਰੇ ਕ੍ਰਮਾਂ ਵਿੱਚ ਕਈ locks ਪ੍ਰਾਪਤ ਕਰਨ ਜਾਂ " +"circular join/await dependencies ਕਾਰਨ ਹੁੰਦਾ ਹੈ। Deadlocks ਤੋਂ ਬਚਣ ਲਈ ਹਮੇਸ਼ਾਂ " +"ਕਈ :term:`locks ` ਨੂੰ ਇਕਸਾਰ ਕ੍ਰਮ ਵਿੱਚ ਪ੍ਰਾਪਤ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। :term:`lock` " +"ਅਤੇ :term:`reentrant` ਵੀ ਵੇਖੋ।" msgid "decorator" -msgstr "" +msgstr "ਡੈਕੋਰੇਟਰ" msgid "" "A function returning another function, usually applied as a function " "transformation using the ``@wrapper`` syntax. Common examples for " "decorators are :deco:`classmethod` and :deco:`staticmethod`." msgstr "" +"ਇੱਕ ਫੰਕਸ਼ਨ ਜੋ ਦੂਜਾ ਫੰਕਸ਼ਨ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਆਮ ਤੌਰ 'ਤੇ ਫੰਕਸ਼ਨ ਟ੍ਰਾਂਸਫਾਰਮੇਸ਼ਨ ਵਜੋਂ ``@wrapper`` " +"ਸਿਨਟੈਕਸ ਰਾਹੀਂ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਡੈਕੋਰੇਟਰਾਂ ਲਈ ਆਮ ਉਦਾਹਰਣਾਂ ਹਨ :deco:`classmethod` " +"ਅਤੇ :deco:`staticmethod` ।" msgid "" "The decorator syntax is merely syntactic sugar, the following two function " "definitions are semantically equivalent::" msgstr "" +"Decorator syntax ਸਿਰਫ syntactic sugar ਹੈ; ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਦੋਵੇਂ function definitions " +"ਅਰਥਾਤਮਕ ਤੌਰ 'ਤੇ ਇਕੋ ਜਿਹੀਆਂ ਹਨ::" msgid "" "def f(arg):\n" @@ -649,44 +903,68 @@ msgid "" "def f(arg):\n" " ..." msgstr "" +"def f(arg):\n" +" ...\n" +"f = staticmethod(f)\n" +"\n" +"@staticmethod\n" +"def f(arg):\n" +" ..." msgid "" "The same concept exists for classes, but is less commonly used there. See " "the documentation for :ref:`function definitions ` and :ref:`class " "definitions ` for more about decorators." msgstr "" +"ਇਹੀ ਧਾਰਣਾ classes ਲਈ ਵੀ ਮੌਜੂਦ ਹੈ, ਪਰ ਉੱਥੇ ਇਸਦੀ ਵਰਤੋਂ ਘੱਟ ਹੁੰਦੀ ਹੈ। Decorators ਬਾਰੇ ਹੋਰ " +"ਜਾਣਕਾਰੀ ਲਈ :ref:`function definitions ` ਅਤੇ :ref:`class definitions " +"` ਦੇ ਦਸਤਾਵੇਜ਼ ਵੇਖੋ।" msgid "descriptor" -msgstr "" - -msgid "" -"Any object which defines the methods :meth:`~object.__get__`, :meth:`~object." -"__set__`, or :meth:`~object.__delete__`. When a class attribute is a " -"descriptor, its special binding behavior is triggered upon attribute " -"lookup. Normally, using *a.b* to get, set or delete an attribute looks up " -"the object named *b* in the class dictionary for *a*, but if *b* is a " -"descriptor, the respective descriptor method gets called. Understanding " -"descriptors is a key to a deep understanding of Python because they are the " -"basis for many features including functions, methods, properties, class " -"methods, static methods, and reference to super classes." -msgstr "" +msgstr "ਡਿਸਕ੍ਰਿਪਟਰ" + +msgid "" +"Any object which defines the " +"methods :meth:`~object.__get__`, :meth:`~object.__set__`, " +"or :meth:`~object.__delete__`. When a class attribute is a descriptor, its " +"special binding behavior is triggered upon attribute lookup. Normally, " +"using *a.b* to get, set or delete an attribute looks up the object named *b* " +"in the class dictionary for *a*, but if *b* is a descriptor, the respective " +"descriptor method gets called. Understanding descriptors is a key to a deep " +"understanding of Python because they are the basis for many features " +"including functions, methods, properties, class methods, static methods, and " +"reference to super classes." +msgstr "" +"ਕੋਈ ਵੀ ਆਬਜੈਕਟ ਜੋ :meth:`~object.__get__`, :meth:`~object.__set__`, " +"ਜਾਂ :meth:`~object.__delete__` ਮੈਥਡ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਕਿਸੇ ਕਲਾਸ ਦਾ attribute " +"ਇੱਕ descriptor ਹੁੰਦਾ ਹੈ, ਤਾਂ attribute lookup ਦੌਰਾਨ ਇਸਦਾ ਵਿਸ਼ੇਸ਼ binding ਵਿਹਾਰ ਚਾਲੂ ਹੋ " +"ਜਾਂਦਾ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ *a.b* ਰਾਹੀਂ attribute ਪ੍ਰਾਪਤ, ਸੈੱਟ ਜਾਂ ਮਿਟਾਉਣ ਵੇਲੇ *a* ਦੀ class " +"dictionary ਵਿੱਚ *b* ਨਾਮ ਵਾਲਾ ਆਬਜੈਕਟ ਲੱਭਿਆ ਜਾਂਦਾ ਹੈ, ਪਰ ਜੇ *b* ਇੱਕ descriptor ਹੋਵੇ, ਤਾਂ " +"ਸੰਬੰਧਿਤ descriptor ਮੈਥਡ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Descriptors ਨੂੰ ਸਮਝਣਾ Python ਦੀ ਡੂੰਘੀ ਸਮਝ " +"ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿਉਂਕਿ ਇਹ functions, methods, properties, class methods, static " +"methods ਅਤੇ super classes ਦੇ ਹਵਾਲਿਆਂ ਸਮੇਤ ਕਈ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਆਧਾਰ ਹਨ।" msgid "" "For more information about descriptors' methods, see :ref:`descriptors` or " "the :ref:`Descriptor How To Guide `." msgstr "" +"Descriptors ਦੇ ਮੈਥਡਾਂ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`descriptors` ਜਾਂ :ref:`Descriptor " +"How To Guide ` ਵੇਖੋ।" msgid "dictionary" -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀ" msgid "" "An associative array, where arbitrary keys are mapped to values. The keys " "can be any object with :meth:`~object.__hash__` and :meth:`~object.__eq__` " "methods. Called a hash in Perl." msgstr "" +"ਇੱਕ associative array, ਜਿਸ ਵਿੱਚ ਮਨਚਾਹੀਆਂ keys ਨੂੰ values ਨਾਲ ਮੈਪ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Keys " +"ਕੋਈ ਵੀ ਆਬਜੈਕਟ ਹੋ ਸਕਦੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਵਿੱਚ :meth:`~object.__hash__` " +"ਅਤੇ :meth:`~object.__eq__` ਮੈਥਡ ਮੌਜੂਦ ਹੋਣ। Perl ਵਿੱਚ ਇਸਨੂੰ hash ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "dictionary comprehension" -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ" msgid "" "A compact way to process all or part of the elements in an iterable and " @@ -694,20 +972,29 @@ msgid "" "range(10)}`` generates a dictionary containing key ``n`` mapped to value ``n " "** 2``. See :ref:`comprehensions`." msgstr "" +"ਕਿਸੇ iterable ਦੇ ਸਾਰੇ ਜਾਂ ਕੁਝ elements ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਕੇ ਨਤੀਜਿਆਂ ਵਾਲੀ dictionary ਵਾਪਸ ਕਰਨ " +"ਦਾ ਸੰਖੇਪ ਤਰੀਕਾ। ``results = {n: n ** 2 for n in range(10)}`` ਇੱਕ dictionary " +"ਬਣਾਉਂਦਾ ਹੈ ਜਿਸ ਵਿੱਚ key ``n`` ਨੂੰ value ``n ** 2`` ਨਾਲ ਮੈਪ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ। :ref:`comprehensions` ਵੇਖੋ।" msgid "dictionary view" -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀ ਵਿਊ" msgid "" -"The objects returned from :meth:`dict.keys`, :meth:`dict.values`, and :meth:" -"`dict.items` are called dictionary views. They provide a dynamic view on the " -"dictionary’s entries, which means that when the dictionary changes, the view " -"reflects these changes. To force the dictionary view to become a full list " -"use ``list(dictview)``. See :ref:`dict-views`." +"The objects returned from :meth:`dict.keys`, :meth:`dict.values`, " +"and :meth:`dict.items` are called dictionary views. They provide a dynamic " +"view on the dictionary’s entries, which means that when the dictionary " +"changes, the view reflects these changes. To force the dictionary view to " +"become a full list use ``list(dictview)``. See :ref:`dict-views`." msgstr "" +":meth:`dict.keys`, :meth:`dict.values`, ਅਤੇ :meth:`dict.items` ਤੋਂ ਵਾਪਸ ਆਉਣ ਵਾਲੇ " +"ਆਬਜੈਕਟਾਂ ਨੂੰ dictionary views ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਇਹ dictionary ਦੀਆਂ entries ਦਾ dynamic " +"view ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ ਜਦੋਂ dictionary ਬਦਲਦੀ ਹੈ ਤਾਂ view ਵੀ ਉਹ ਬਦਲਾਅ " +"ਦਰਸਾਉਂਦਾ ਹੈ। Dictionary view ਨੂੰ ਪੂਰੀ list ਵਿੱਚ ਬਦਲਣ ਲਈ ``list(dictview)`` " +"ਵਰਤੋ। :ref:`dict-views` ਵੇਖੋ।" msgid "docstring" -msgstr "" +msgstr "ਡੌਕਸਟ੍ਰਿੰਗ" msgid "" "A string literal which appears as the first expression in a class, function " @@ -716,9 +1003,15 @@ msgid "" "enclosing class, function or module. Since it is available via " "introspection, it is the canonical place for documentation of the object." msgstr "" +"ਇੱਕ string literal ਜੋ ਕਿਸੇ class, function ਜਾਂ module ਵਿੱਚ ਪਹਿਲੇ expression ਵਜੋਂ " +"ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ। ਭਾਵੇਂ suite ਦੇ ਚਲਣ ਦੌਰਾਨ ਇਸਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਪਰ compiler ਇਸਨੂੰ " +"ਪਛਾਣਦਾ ਹੈ ਅਤੇ enclosing class, function ਜਾਂ module " +"ਦੇ :attr:`~definition.__doc__` attribute ਵਿੱਚ ਸੰਭਾਲ ਦਿੰਦਾ ਹੈ। ਕਿਉਂਕਿ ਇਹ " +"introspection ਰਾਹੀਂ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਇਹ ਆਬਜੈਕਟ ਦੀ documentation ਲਈ ਮਿਆਰੀ ਥਾਂ " +"ਹੈ।" msgid "duck-typing" -msgstr "" +msgstr "ਡੱਕ-ਟਾਈਪਿੰਗ" msgid "" "A programming style which does not look at an object's type to determine if " @@ -726,23 +1019,34 @@ msgid "" "called or used (\"If it looks like a duck and quacks like a duck, it must be " "a duck.\") By emphasizing interfaces rather than specific types, well-" "designed code improves its flexibility by allowing polymorphic " -"substitution. Duck-typing avoids tests using :func:`type` or :func:" -"`isinstance`. (Note, however, that duck-typing can be complemented with :" -"term:`abstract base classes `.) Instead, it typically " -"employs :func:`hasattr` tests or :term:`EAFP` programming." -msgstr "" +"substitution. Duck-typing avoids tests using :func:`type` " +"or :func:`isinstance`. (Note, however, that duck-typing can be complemented " +"with :term:`abstract base classes `.) Instead, it " +"typically employs :func:`hasattr` tests or :term:`EAFP` programming." +msgstr "" +"ਇੱਕ programming ਸ਼ੈਲੀ ਜੋ ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਆਬਜੈਕਟ ਦੀ type ਨਹੀਂ ਵੇਖਦੀ ਕਿ ਉਸ ਕੋਲ ਸਹੀ " +"interface ਹੈ ਜਾਂ ਨਹੀਂ; ਇਸ ਦੀ ਬਜਾਏ method ਜਾਂ attribute ਨੂੰ ਸਿੱਧਾ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। (\"ਜੇ " +"ਇਹ ਬਤਖ਼ ਵਾਂਗ ਲੱਗਦੀ ਹੈ ਅਤੇ ਬਤਖ਼ ਵਾਂਗ ਆਵਾਜ਼ ਕਰਦੀ ਹੈ, ਤਾਂ ਇਹ ਬਤਖ਼ ਹੀ ਹੋਵੇਗੀ।\") Interfaces ਨੂੰ " +"ਖਾਸ types ਨਾਲੋਂ ਵੱਧ ਮਹੱਤਵ ਦੇਣ ਕਰਕੇ, ਵਧੀਆ code polymorphic substitution ਦੀ ਆਗਿਆ ਦੇ ਕੇ " +"ਵਧੇਰੇ ਲਚਕਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। Duck-typing :func:`type` ਜਾਂ :func:`isinstance` ਵਰਗੇ " +"ਟੈਸਟਾਂ ਤੋਂ ਬਚਦੀ ਹੈ। ਹਾਲਾਂਕਿ, duck-typing ਨੂੰ :term:`abstract base classes ` ਨਾਲ ਪੂਰਾ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਦੀ ਬਜਾਏ ਇਹ ਆਮ ਤੌਰ 'ਤੇ :func:`hasattr` " +"ਟੈਸਟਾਂ ਜਾਂ :term:`EAFP` programming ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ।" msgid "dunder" -msgstr "" +msgstr "ਡੰਡਰ" msgid "" -"An informal short-hand for \"double underscore\", used when talking about a :" -"term:`special method`. For example, ``__init__`` is often pronounced " +"An informal short-hand for \"double underscore\", used when talking about " +"a :term:`special method`. For example, ``__init__`` is often pronounced " "\"dunder init\"." msgstr "" +"\"double underscore\" ਲਈ ਇੱਕ ਗੈਰ-ਰਸਮੀ ਛੋਟਾ ਸ਼ਬਦ, ਜੋ :term:`special method` ਬਾਰੇ ਗੱਲ " +"ਕਰਦੇ ਸਮੇਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``__init__`` ਨੂੰ ਅਕਸਰ \"dunder init\" ਕਿਹਾ " +"ਜਾਂਦਾ ਹੈ।" msgid "EAFP" -msgstr "" +msgstr "EAFP" msgid "" "Easier to ask for forgiveness than permission. This common Python coding " @@ -752,51 +1056,73 @@ msgid "" "statements. The technique contrasts with the :term:`LBYL` style common to " "many other languages such as C." msgstr "" +"ਇਜਾਜ਼ਤ ਮੰਗਣ ਨਾਲੋਂ ਮਾਫ਼ੀ ਮੰਗਣਾ ਆਸਾਨ ਹੈ। Python ਦੀ ਇਹ ਆਮ coding ਸ਼ੈਲੀ ਇਹ ਮੰਨਦੀ ਹੈ ਕਿ " +"ਲੋੜੀਂਦੀਆਂ keys ਜਾਂ attributes ਮੌਜੂਦ ਹਨ ਅਤੇ ਜੇ ਇਹ ਧਾਰਣਾ ਗਲਤ ਸਾਬਤ ਹੋਵੇ ਤਾਂ exceptions ਨੂੰ " +"ਸੰਭਾਲ ਲੈਂਦੀ ਹੈ। ਇਹ ਸਾਫ਼ ਅਤੇ ਤੇਜ਼ ਸ਼ੈਲੀ ਕਈ :keyword:`try` ਅਤੇ :keyword:`except` " +"statements ਦੀ ਮੌਜੂਦਗੀ ਨਾਲ ਪਛਾਣੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਤਕਨੀਕ C ਵਰਗੀਆਂ ਕਈ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ " +"ਆਮ :term:`LBYL` ਸ਼ੈਲੀ ਦੇ ਉਲਟ ਹੈ।" msgid "evaluate function" -msgstr "" +msgstr "ਮੁਲਾਂਕਣ ਫੰਕਸ਼ਨ" msgid "" "A function that can be called to evaluate a lazily evaluated attribute of an " "object, such as the value of type aliases created with the :keyword:`type` " "statement." msgstr "" +"ਇੱਕ ਫੰਕਸ਼ਨ ਜਿਸਨੂੰ ਕਿਸੇ ਆਬਜੈਕਟ ਦੇ lazily evaluated attribute ਦਾ ਮੁਲਾਂਕਣ ਕਰਨ ਲਈ ਕਾਲ ਕੀਤਾ " +"ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ :keyword:`type` statement ਨਾਲ ਬਣੇ type aliases ਦੀ value।" -msgid "expression" +msgid "exhausted" msgstr "" +msgid "" +"An :term:`iterator` that has produced all of its values is said to " +"be :dfn:`exhausted`. Further attempts to get the next value (for example, " +"calls to :func:`next`) raise :exc:`StopIteration` " +"(or :exc:`StopAsyncIteration` in the case of an :term:`asynchronous " +"iterator`)." +msgstr "" + +msgid "expression" +msgstr "ਐਕਸਪ੍ਰੈਸ਼ਨ" + msgid "" "A piece of syntax which can be evaluated to some value. In other words, an " "expression is an accumulation of expression elements like literals, names, " -"attribute access, operators or function calls which all return a value. In " -"contrast to many other languages, not all language constructs are " -"expressions. There are also :term:`statement`\\s which cannot be used as " -"expressions, such as :keyword:`while`. Assignments are also statements, not " -"expressions." +"attribute access, operators or function calls which all return a value. Not " +"all language constructs are expressions. There are " +"also :term:`statement`\\s which cannot be used as expressions, such " +"as :keyword:`while`. Assignments are also statements, not expressions." msgstr "" msgid "extension module" -msgstr "" +msgstr "ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲ" msgid "" "A module written in C or C++, using Python's C API to interact with the core " "and with user code." msgstr "" +"C ਜਾਂ C++ ਵਿੱਚ ਲਿਖਿਆ ਮੋਡੀਊਲ, ਜੋ Python ਦੇ C API ਦੀ ਵਰਤੋਂ ਕਰਕੇ core ਅਤੇ user code ਨਾਲ " +"ਸੰਚਾਰ ਕਰਦਾ ਹੈ।" msgid "f-string" -msgstr "" +msgstr "f-string" msgid "f-strings" -msgstr "" +msgstr "f-strings" msgid "" "String literals prefixed with ``f`` or ``F`` are commonly called \"f-" "strings\" which is short for :ref:`formatted string literals `. " "See also :pep:`498`." msgstr "" +"``f`` ਜਾਂ ``F`` ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ string literals ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ \"f-strings\" ਕਿਹਾ " +"ਜਾਂਦਾ ਹੈ, ਜੋ :ref:`formatted string literals ` ਦਾ ਸੰਖੇਪ ਰੂਪ " +"ਹੈ। :pep:`498` ਵੀ ਵੇਖੋ।" msgid "file object" -msgstr "" +msgstr "ਫਾਇਲ ਆਬਜੈਕਟ" msgid "" "An object exposing a file-oriented API (with methods such as :meth:`!read` " @@ -806,6 +1132,11 @@ msgid "" "output, in-memory buffers, sockets, pipes, etc.). File objects are also " "called :dfn:`file-like objects` or :dfn:`streams`." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ ਕਿਸੇ ਅਧਾਰਭੂਤ ਸਰੋਤ ਲਈ file-oriented API (ਜਿਵੇਂ :meth:`!read` ਜਾਂ :meth:`!" +"write` ਮੈਥਡ) ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਸਦੀ ਬਣਤਰ ਦੇ ਤਰੀਕੇ ਅਨੁਸਾਰ, file object ਅਸਲ ਡਿਸਕ ਉੱਤੇ " +"ਮੌਜੂਦ ਫਾਇਲ ਜਾਂ ਕਿਸੇ ਹੋਰ storage ਜਾਂ communication device (ਉਦਾਹਰਨ ਵਜੋਂ standard input/" +"output, in-memory buffers, sockets, pipes ਆਦਿ) ਤੱਕ ਪਹੁੰਚ ਮੁਹੱਈਆ ਕਰ ਸਕਦਾ ਹੈ। File " +"objects ਨੂੰ :dfn:`file-like objects` ਜਾਂ :dfn:`streams` ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "" "There are actually three categories of file objects: raw :term:`binary files " @@ -814,63 +1145,83 @@ msgid "" "The canonical way to create a file object is by using the :func:`open` " "function." msgstr "" +"ਅਸਲ ਵਿੱਚ file objects ਦੀਆਂ ਤਿੰਨ ਸ਼੍ਰੇਣੀਆਂ ਹਨ: raw :term:`binary files `, buffered :term:`binary files ` ਅਤੇ :term:`text files " +"`। ਇਨ੍ਹਾਂ ਦੇ interfaces :mod:`io` module ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹਨ। File " +"object ਬਣਾਉਣ ਦਾ ਮਿਆਰੀ ਤਰੀਕਾ :func:`open` function ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਹੈ।" msgid "file-like object" -msgstr "" +msgstr "ਫਾਇਲ-ਸਮਾਨ ਆਬਜੈਕਟ" msgid "A synonym for :term:`file object`." -msgstr "" +msgstr ":term:`file object` ਦਾ ਸਮਾਨਾਰਥਕ ਸ਼ਬਦ।" msgid "filesystem encoding and error handler" -msgstr "" +msgstr "ਫਾਇਲਸਿਸਟਮ ਐਨਕੋਡਿੰਗ ਅਤੇ ਗਲਤੀ ਹੈਂਡਲਰ" msgid "" "Encoding and error handler used by Python to decode bytes from the operating " "system and encode Unicode to the operating system." msgstr "" +"Python ਦੁਆਰਾ operating system ਤੋਂ bytes ਨੂੰ decode ਕਰਨ ਅਤੇ Unicode ਨੂੰ operating " +"system ਲਈ encode ਕਰਨ ਵਾਸਤੇ ਵਰਤੀ ਜਾਣ ਵਾਲੀ encoding ਅਤੇ error handler।" msgid "" "The filesystem encoding must guarantee to successfully decode all bytes " "below 128. If the file system encoding fails to provide this guarantee, API " "functions can raise :exc:`UnicodeError`." msgstr "" +"ਫਾਇਲਸਿਸਟਮ ਐਨਕੋਡਿੰਗ ਨੂੰ 128 ਤੋਂ ਘੱਟ ਸਾਰੇ bytes ਨੂੰ ਸਫਲਤਾਪੂਰਵਕ decode ਕਰਨ ਦੀ ਗਾਰੰਟੀ ਦੇਣੀ " +"ਚਾਹੀਦੀ ਹੈ। ਜੇ ਫਾਇਲਸਿਸਟਮ ਐਨਕੋਡਿੰਗ ਇਹ ਗਾਰੰਟੀ ਦੇਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦੀ ਹੈ, ਤਾਂ API " +"ਫੰਕਸ਼ਨ :exc:`UnicodeError` ਉਠਾ ਸਕਦੇ ਹਨ।" msgid "" -"The :func:`sys.getfilesystemencoding` and :func:`sys." -"getfilesystemencodeerrors` functions can be used to get the filesystem " -"encoding and error handler." +"The :func:`sys.getfilesystemencoding` " +"and :func:`sys.getfilesystemencodeerrors` functions can be used to get the " +"filesystem encoding and error handler." msgstr "" +"ਫਾਇਲਸਿਸਟਮ ਐਨਕੋਡਿੰਗ ਅਤੇ error handler ਪ੍ਰਾਪਤ ਕਰਨ " +"ਲਈ :func:`sys.getfilesystemencoding` " +"ਅਤੇ :func:`sys.getfilesystemencodeerrors` ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "" "The :term:`filesystem encoding and error handler` are configured at Python " -"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." -"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" -"c:type:`PyConfig`." +"startup by the :c:func:`PyConfig_Read` function: " +"see :c:member:`~PyConfig.filesystem_encoding` " +"and :c:member:`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" +":term:`filesystem encoding and error handler` ਨੂੰ Python ਸ਼ੁਰੂ ਹੋਣ " +"ਸਮੇਂ :c:func:`PyConfig_Read` ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਸੰਰਚਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। :c:type:`PyConfig` " +"ਦੇ :c:member:`~PyConfig.filesystem_encoding` " +"ਅਤੇ :c:member:`~PyConfig.filesystem_errors` ਮੈਂਬਰ ਵੇਖੋ।" msgid "See also the :term:`locale encoding`." -msgstr "" +msgstr ":term:`locale encoding` ਵੀ ਵੇਖੋ।" msgid "finder" -msgstr "" +msgstr "ਫਾਈਂਡਰ" msgid "" "An object that tries to find the :term:`loader` for a module that is being " "imported." msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ import ਕੀਤੇ ਜਾ ਰਹੇ module ਲਈ :term:`loader` ਲੱਭਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ।" msgid "" "There are two types of finder: :term:`meta path finders ` " "for use with :data:`sys.meta_path`, and :term:`path entry finders ` for use with :data:`sys.path_hooks`." msgstr "" +"ਫਾਈਂਡਰ ਦੀਆਂ ਦੋ ਕਿਸਮਾਂ ਹਨ: :data:`sys.meta_path` ਨਾਲ ਵਰਤੇ ਜਾਣ ਵਾਲੇ :term:`meta path " +"finders ` ਅਤੇ :data:`sys.path_hooks` ਨਾਲ ਵਰਤੇ ਜਾਣ " +"ਵਾਲੇ :term:`path entry finders `।" msgid "" "See :ref:`finders-and-loaders` and :mod:`importlib` for much more detail." -msgstr "" +msgstr "ਹੋਰ ਵਿਸਥਾਰ ਲਈ :ref:`finders-and-loaders` ਅਤੇ :mod:`importlib` ਵੇਖੋ।" msgid "floor division" -msgstr "" +msgstr "ਫਲੋਰ ਡਿਵਿਜ਼ਨ" msgid "" "Mathematical division that rounds down to nearest integer. The floor " @@ -879,30 +1230,39 @@ msgid "" "division. Note that ``(-11) // 4`` is ``-3`` because that is ``-2.75`` " "rounded *downward*. See :pep:`238`." msgstr "" +"ਗਣਿਤਕ ਭਾਗ ਜਿਸ ਵਿੱਚ ਨਤੀਜੇ ਨੂੰ ਹੇਠਾਂ ਵਾਲੇ ਸਭ ਤੋਂ ਨੇੜਲੇ ਪੂਰਨ ਅੰਕ ਵੱਲ round ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Floor " +"division operator ``//`` ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``11 // 4`` ਦਾ ਨਤੀਜਾ ``2`` ਹੁੰਦਾ ਹੈ, " +"ਜਦਕਿ float true division ``2.75`` ਦਿੰਦੀ ਹੈ। ਧਿਆਨ ਦਿਓ ਕਿ ``(-11) // 4`` ਦਾ " +"ਨਤੀਜਾ ``-3`` ਹੈ ਕਿਉਂਕਿ ``-2.75`` ਨੂੰ ਹੇਠਾਂ ਵੱਲ round ਕੀਤਾ ਜਾਂਦਾ ਹੈ। :pep:`238` ਵੇਖੋ।" msgid "free threading" -msgstr "" +msgstr "ਫ੍ਰੀ ਥ੍ਰੈਡਿੰਗ" msgid "" "A threading model where multiple threads can run Python bytecode " -"simultaneously within the same interpreter. This is in contrast to the :" -"term:`global interpreter lock` which allows only one thread to execute " +"simultaneously within the same interpreter. This is in contrast to " +"the :term:`global interpreter lock` which allows only one thread to execute " "Python bytecode at a time. See :pep:`703`." msgstr "" +"ਇੱਕ threading ਮਾਡਲ ਜਿਸ ਵਿੱਚ ਇੱਕੋ interpreter ਦੇ ਅੰਦਰ ਕਈ threads ਇਕੱਠੇ Python " +"bytecode ਚਲਾ ਸਕਦੀਆਂ ਹਨ। ਇਹ :term:`global interpreter lock` ਦੇ ਉਲਟ ਹੈ, ਜੋ ਇੱਕ ਸਮੇਂ " +"ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ thread ਨੂੰ Python bytecode ਚਲਾਉਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। :pep:`703` ਵੇਖੋ।" msgid "free-threaded build" -msgstr "" +msgstr "ਫ੍ਰੀ-ਥ੍ਰੈਡਡ ਬਿਲਡ" msgid "" "A build of :term:`CPython` that supports :term:`free threading`, configured " "using the :option:`--disable-gil` option before compilation." msgstr "" +":term:`CPython` ਦਾ ਇੱਕ build ਜੋ :term:`free threading` ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ ਜਿਸਨੂੰ " +"compilation ਤੋਂ ਪਹਿਲਾਂ :option:`--disable-gil` ਵਿਕਲਪ ਨਾਲ ਸੰਰਚਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "See :ref:`freethreading-python-howto`." -msgstr "" +msgstr ":ref:`freethreading-python-howto` ਵੇਖੋ।" msgid "free variable" -msgstr "" +msgstr "ਫ੍ਰੀ ਵੇਰੀਏਬਲ" msgid "" "Formally, as defined in the :ref:`language execution model `, a " @@ -912,64 +1272,89 @@ msgid "" "attribute, the term is also sometimes used as a synonym for :term:`closure " "variable`." msgstr "" +"ਰਸਮੀ ਤੌਰ 'ਤੇ, :ref:`language execution model ` ਅਨੁਸਾਰ, free " +"variable ਉਹ ਵੇਰੀਏਬਲ ਹੈ ਜੋ ਕਿਸੇ namespace ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਪਰ ਉਸ namespace ਦਾ " +"local variable ਨਹੀਂ ਹੁੰਦਾ। ਉਦਾਹਰਨ ਲਈ :term:`closure variable` ਵੇਖੋ। ਵਿਹਾਰਕ ਤੌਰ " +"'ਤੇ, :attr:`codeobject.co_freevars` attribute ਦੇ ਨਾਮ ਕਾਰਨ ਇਹ ਸ਼ਬਦ ਕਈ " +"ਵਾਰ :term:`closure variable` ਦੇ ਸਮਾਨਾਰਥਕ ਵਜੋਂ ਵੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" msgid "function" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ" msgid "" "A series of statements which returns some value to a caller. It can also be " "passed zero or more :term:`arguments ` which may be used in the " -"execution of the body. See also :term:`parameter`, :term:`method`, and the :" -"ref:`function` section." +"execution of the body. See also :term:`parameter`, :term:`method`, and " +"the :ref:`function` section." msgstr "" +"Statements ਦੀ ਇੱਕ ਲੜੀ ਜੋ caller ਨੂੰ ਕੋਈ value ਵਾਪਸ ਕਰਦੀ ਹੈ। ਇਸਨੂੰ ਜ਼ੀਰੋ ਜਾਂ " +"ਵੱਧ :term:`arguments ` ਵੀ ਦਿੱਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਜੋ body ਦੇ execution ਦੌਰਾਨ " +"ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। :term:`parameter`, :term:`method`, ਅਤੇ :ref:`function` ਭਾਗ ਵੀ " +"ਵੇਖੋ।" msgid "function annotation" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਐਨੋਟੇਸ਼ਨ" msgid "An :term:`annotation` of a function parameter or return value." -msgstr "" +msgstr "ਕਿਸੇ ਫੰਕਸ਼ਨ ਦੇ parameter ਜਾਂ return value ਦੀ :term:`annotation`।" msgid "" "Function annotations are usually used for :term:`type hints `: " "for example, this function is expected to take two :class:`int` arguments " "and is also expected to have an :class:`int` return value::" msgstr "" +"ਫੰਕਸ਼ਨ ਐਨੋਟੇਸ਼ਨ ਆਮ ਤੌਰ 'ਤੇ :term:`type hints ` ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤਾ ਫੰਕਸ਼ਨ ਦੋ :class:`int` arguments ਲੈਂਦਾ ਹੈ ਅਤੇ :class:`int` return " +"value ਦੇਣ ਦੀ ਉਮੀਦ ਕੀਤੀ ਜਾਂਦੀ ਹੈ::" msgid "" "def sum_two_numbers(a: int, b: int) -> int:\n" " return a + b" msgstr "" +"def sum_two_numbers(a: int, b: int) -> int:\n" +" return a + b" msgid "Function annotation syntax is explained in section :ref:`function`." -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਐਨੋਟੇਸ਼ਨ ਦਾ syntax :ref:`function` ਭਾਗ ਵਿੱਚ ਸਮਝਾਇਆ ਗਿਆ ਹੈ।" msgid "" "See :term:`variable annotation` and :pep:`484`, which describe this " "functionality. Also see :ref:`annotations-howto` for best practices on " "working with annotations." msgstr "" +"ਇਸ ਕਾਰਜਕੁਸ਼ਲਤਾ ਬਾਰੇ ਜਾਣਕਾਰੀ ਲਈ :term:`variable annotation` ਅਤੇ :pep:`484` ਵੇਖੋ। " +"ਐਨੋਟੇਸ਼ਨਾਂ ਨਾਲ ਕੰਮ ਕਰਨ ਦੀਆਂ ਵਧੀਆ ਪ੍ਰਥਾਵਾਂ ਲਈ :ref:`annotations-howto` ਵੀ ਵੇਖੋ।" msgid "__future__" -msgstr "" +msgstr "__future__" msgid "" "A :ref:`future statement `, ``from __future__ import ``, " "directs the compiler to compile the current module using syntax or semantics " -"that will become standard in a future release of Python. The :mod:" -"`__future__` module documents the possible values of *feature*. By " +"that will become standard in a future release of Python. " +"The :mod:`__future__` module documents the possible values of *feature*. By " "importing this module and evaluating its variables, you can see when a new " "feature was first added to the language and when it will (or did) become the " "default::" msgstr "" +"ਇੱਕ :ref:`future statement `, ``from __future__ import ``, " +"compiler ਨੂੰ ਮੌਜੂਦਾ module ਨੂੰ ਉਸ syntax ਜਾਂ semantics ਨਾਲ compile ਕਰਨ ਲਈ ਨਿਰਦੇਸ਼ " +"ਦਿੰਦਾ ਹੈ ਜੋ Python ਦੇ ਭਵਿੱਖਲੇ ਸੰਸਕਰਣ ਵਿੱਚ ਮਿਆਰੀ ਬਣੇਗਾ। :mod:`__future__` module " +"*feature* ਦੀਆਂ ਸੰਭਾਵਿਤ values ਦਾ ਵੇਰਵਾ ਦਿੰਦਾ ਹੈ। ਇਸ module ਨੂੰ import ਕਰਕੇ ਅਤੇ ਇਸਦੇ " +"variables ਦਾ ਮੁਲਾਂਕਣ ਕਰਕੇ ਤੁਸੀਂ ਵੇਖ ਸਕਦੇ ਹੋ ਕਿ ਕੋਈ ਨਵੀਂ ਵਿਸ਼ੇਸ਼ਤਾ ਭਾਸ਼ਾ ਵਿੱਚ ਪਹਿਲੀ ਵਾਰ ਕਦੋਂ " +"ਜੋੜੀ ਗਈ ਸੀ ਅਤੇ ਕਦੋਂ ਇਹ default ਬਣੀ ਜਾਂ ਬਣੇਗੀ::" msgid "" ">>> import __future__\n" ">>> __future__.division\n" "_Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 8192)" msgstr "" +">>> import __future__\n" +">>> __future__.division\n" +"_Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 8192)" msgid "garbage collection" -msgstr "" +msgstr "ਗਾਰਬੇਜ ਕਲੇਕਸ਼ਨ" msgid "" "The process of freeing memory when it is not used anymore. Python performs " @@ -977,19 +1362,27 @@ msgid "" "that is able to detect and break reference cycles. The garbage collector " "can be controlled using the :mod:`gc` module." msgstr "" +"ਜਦੋਂ ਮੈਮੋਰੀ ਦੀ ਲੋੜ ਨਹੀਂ ਰਹਿੰਦੀ ਤਾਂ ਉਸਨੂੰ ਮੁਕਤ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ। Python reference counting " +"ਅਤੇ cyclic garbage collector ਰਾਹੀਂ garbage collection ਕਰਦਾ ਹੈ, ਜੋ reference " +"cycles ਨੂੰ ਖੋਜ ਅਤੇ ਤੋੜ ਸਕਦਾ ਹੈ। Garbage collector ਨੂੰ :mod:`gc` module ਦੀ ਮਦਦ ਨਾਲ " +"ਨਿਯੰਤਰਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "generator" -msgstr "" +msgstr "ਜਨਰੇਟਰ" msgid "" -"Informally used to mean either a :term:`generator function` or a :term:" -"`generator iterator`, depending on context. The formal terms :term:" -"`generator function` and :term:`generator iterator` are uncommon in " -"practice; \"generator\" alone is almost always sufficient." +"Informally used to mean either a :term:`generator function` or " +"a :term:`generator iterator`, depending on context. The formal " +"terms :term:`generator function` and :term:`generator iterator` are uncommon " +"in practice; \"generator\" alone is almost always sufficient." msgstr "" +"ਸੰਦਰਭ ਅਨੁਸਾਰ ਗੈਰ-ਆਧਿਕਾਰਿਕ ਤੌਰ 'ਤੇ ਇਸਦਾ ਅਰਥ ਜਾਂ ਤਾਂ :term:`generator function` " +"ਜਾਂ :term:`generator iterator` ਹੁੰਦਾ ਹੈ। ਰਸਮੀ ਸ਼ਬਦ :term:`generator function` " +"ਅਤੇ :term:`generator iterator` ਅਮਲ ਵਿੱਚ ਘੱਟ ਵਰਤੇ ਜਾਂਦੇ ਹਨ; ਕੇਵਲ \"generator\" ਕਹਿਣਾ " +"ਲਗਭਗ ਹਰ ਵੇਲੇ ਕਾਫ਼ੀ ਹੁੰਦਾ ਹੈ।" msgid "generator function" -msgstr "" +msgstr "ਜਨਰੇਟਰ ਫੰਕਸ਼ਨ" msgid "" "A function which returns a :term:`generator` object. It looks like a normal " @@ -997,14 +1390,20 @@ msgid "" "a series of values usable in a :keyword:`for`\\-loop or that can be " "retrieved one at a time with the :func:`next` function. See :ref:`yieldexpr`." msgstr "" +"ਇੱਕ ਫੰਕਸ਼ਨ ਜੋ :term:`generator` ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ਇੱਕ ਆਮ ਫੰਕਸ਼ਨ ਵਾਂਗ ਦਿਖਾਈ ਦਿੰਦਾ " +"ਹੈ, ਪਰ ਇਸ ਵਿੱਚ :keyword:`yield` ਐਕਸਪ੍ਰੈਸ਼ਨ ਹੁੰਦੀਆਂ ਹਨ ਜੋ :keyword:`for` ਲੂਪ ਵਿੱਚ ਵਰਤੀ " +"ਜਾ ਸਕਣ ਵਾਲੀਆਂ ਮੁੱਲਾਂ ਦੀ ਲੜੀ ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ ਜਾਂ ਜਿਨ੍ਹਾਂ ਨੂੰ :func:`next` ਫੰਕਸ਼ਨ ਰਾਹੀਂ ਇੱਕ ਸਮੇਂ " +"ਇੱਕ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਵੇਖੋ :ref:`yieldexpr`।" msgid "generator iterator" -msgstr "" +msgstr "ਜਨਰੇਟਰ ਇਟਰੇਟਰ" msgid "" "An object created by a :term:`generator function` or a :term:`generator " "expression`." msgstr "" +":term:`generator function` ਜਾਂ :term:`generator expression` ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਇੱਕ " +"ਆਬਜੈਕਟ।" msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " @@ -1012,6 +1411,10 @@ msgid "" "the *generator iterator* resumes, it picks up where it left off (in contrast " "to functions which start fresh on every invocation)." msgstr "" +"ਹਰ :keyword:`yield` ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਰੋਕ ਦਿੰਦਾ ਹੈ ਅਤੇ ਕਾਰਜਨਵਿਨ ਅਵਸਥਾ (ਸਥਾਨਕ " +"ਵੇਰੀਏਬਲਾਂ ਅਤੇ ਬਕਾਇਆ try-statements ਸਮੇਤ) ਨੂੰ ਯਾਦ ਰੱਖਦਾ ਹੈ। ਜਦੋਂ *generator iterator* " +"ਮੁੜ ਚਾਲੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਓਥੋਂ ਹੀ ਜਾਰੀ ਰਹਿੰਦਾ ਹੈ ਜਿੱਥੇ ਇਹ ਰੁਕਿਆ ਸੀ (ਉਨ੍ਹਾਂ ਫੰਕਸ਼ਨਾਂ ਦੇ ਉਲਟ ਜੋ ਹਰ " +"ਵਾਰ ਨਵੇਂ ਸਿਰੇ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹਨ)।" msgid "" "Generator iterators also implement the :meth:`~generator.send` method to " @@ -1019,9 +1422,13 @@ msgid "" "method to raise an exception at the point where the generator was paused. " "See :ref:`generator-methods`." msgstr "" +"Generator iterators :meth:`~generator.send` ਮੈਥਡ ਵੀ ਲਾਗੂ ਕਰਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਰੁਕੇ ਹੋਏ " +"generator ਨੂੰ ਕੋਈ ਮੁੱਲ ਭੇਜਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਅਤੇ :meth:`~generator.throw` ਮੈਥਡ ਵੀ, ਜਿਸ " +"ਨਾਲ ਉਸ ਬਿੰਦੂ 'ਤੇ exception ਉਠਾਈ ਜਾ ਸਕਦੀ ਹੈ ਜਿੱਥੇ generator ਰੁਕਿਆ ਹੋਇਆ ਸੀ। " +"ਵੇਖੋ :ref:`generator-methods`।" msgid "generator expression" -msgstr "" +msgstr "ਜਨਰੇਟਰ ਐਕਸਪ੍ਰੈਸ਼ਨ" msgid "" "An :term:`expression` that returns an :term:`iterator`. It looks like a " @@ -1029,48 +1436,67 @@ msgid "" "variable, range, and an optional :keyword:`!if` clause. The combined " "expression generates values for an enclosing function::" msgstr "" +"ਇੱਕ :term:`expression` ਜੋ :term:`iterator` ਵਾਪਸ ਕਰਦੀ ਹੈ। ਇਹ ਇੱਕ ਆਮ expression " +"ਵਾਂਗ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ ਜਿਸ ਤੋਂ ਬਾਅਦ loop variable, range ਅਤੇ ਇੱਕ ਵਿਕਲਪਿਕ :keyword:`!" +"if` clause ਵਾਲੀ :keyword:`!for` clause ਹੁੰਦੀ ਹੈ। ਇਹ ਮਿਲੀ-ਜੁਲੀ expression " +"enclosing function ਲਈ values ਤਿਆਰ ਕਰਦੀ ਹੈ::" msgid "" ">>> sum(i*i for i in range(10)) # sum of squares 0, 1, 4, ... 81\n" "285" msgstr "" +">>> sum(i*i for i in range(10)) # sum of squares 0, 1, 4, ... 81\n" +"285" msgid "generic function" -msgstr "" +msgstr "ਜੈਨੇਰਿਕ ਫੰਕਸ਼ਨ" msgid "" "A function composed of multiple functions implementing the same operation " "for different types. Which implementation should be used during a call is " "determined by the dispatch algorithm." msgstr "" +"ਇੱਕ ਫੰਕਸ਼ਨ ਜੋ ਕਈ ਫੰਕਸ਼ਨਾਂ ਤੋਂ ਬਣਿਆ ਹੁੰਦਾ ਹੈ ਅਤੇ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਲਈ ਇੱਕੋ ਕਾਰਵਾਈ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ। " +"ਕਾਲ ਦੌਰਾਨ ਕਿਹੜਾ implementation ਵਰਤਣਾ ਹੈ, ਇਹ dispatch algorithm ਦੁਆਰਾ ਨਿਰਧਾਰਤ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"See also the :term:`single dispatch` glossary entry, the :deco:`functools." -"singledispatch` decorator, and :pep:`443`." +"See also the :term:`single dispatch` glossary entry, " +"the :deco:`functools.singledispatch` decorator, and :pep:`443`." msgstr "" +"ਇਹ ਵੀ ਵੇਖੋ: :term:`single dispatch` ਸ਼ਬਦਾਵਲੀ " +"ਐਂਟਰੀ, :deco:`functools.singledispatch` ਸਜਾਵਟੀ ਫੰਕਸ਼ਨ, ਅਤੇ :pep:`443`।" msgid "generic type" -msgstr "" +msgstr "ਜੈਨੇਰਿਕ ਕਿਸਮ" msgid "" "A :term:`type` that can be parameterized; typically a :ref:`container " -"class` such as :class:`list` or :class:`dict`. Used for :" -"term:`type hints ` and :term:`annotations `." +"class` such as :class:`list` or :class:`dict`. Used " +"for :term:`type hints ` and :term:`annotations `." msgstr "" +"ਇੱਕ :term:`type` ਜਿਸਨੂੰ parameterized ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ; ਆਮ ਤੌਰ 'ਤੇ :class:`list` " +"ਜਾਂ :class:`dict` ਵਰਗੀ :ref:`container class`। ਇਸਦਾ " +"ਉਪਯੋਗ :term:`type hints ` ਅਤੇ :term:`annotations ` ਲਈ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"For more details, see :ref:`generic alias types`, :pep:" -"`483`, :pep:`484`, :pep:`585`, and the :mod:`typing` module." +"For more details, see :ref:`generic alias types`, :pep:`483`, :pep:`484`, :pep:`585`, and the :mod:`typing` " +"module." msgstr "" +"ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ :ref:`generic alias types`, :pep:`483`, :pep:`484`, :pep:`585`, ਅਤੇ :mod:`typing` module " +"ਵੇਖੋ।" msgid "GIL" -msgstr "" +msgstr "GIL" msgid "See :term:`global interpreter lock`." -msgstr "" +msgstr ":term:`global interpreter lock` ਵੇਖੋ।" msgid "global interpreter lock" -msgstr "" +msgstr "ਗਲੋਬਲ ਇੰਟਰਪ੍ਰੀਟਰ ਲੌਕ" msgid "" "The mechanism used by the :term:`CPython` interpreter to assure that only " @@ -1081,6 +1507,12 @@ msgid "" "multi-threaded, at the expense of much of the parallelism afforded by multi-" "processor machines." msgstr "" +":term:`CPython` interpreter ਦੁਆਰਾ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ਵਿਧੀ ਜੋ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦੀ ਹੈ ਕਿ " +"ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਕੇਵਲ ਇੱਕ thread ਹੀ Python :term:`bytecode` ਚਲਾ ਸਕੇ। ਇਹ object model " +"(ਜਿਸ ਵਿੱਚ :class:`dict` ਵਰਗੀਆਂ ਮਹੱਤਵਪੂਰਨ built-in ਕਿਸਮਾਂ ਸ਼ਾਮਲ ਹਨ) ਨੂੰ concurrent " +"access ਤੋਂ ਸੁਰੱਖਿਅਤ ਬਣਾਕੇ CPython implementation ਨੂੰ ਸੌਖਾ ਕਰਦੀ ਹੈ। ਪੂਰੇ interpreter ਨੂੰ " +"lock ਕਰਨਾ multi-threading ਨੂੰ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ, ਪਰ ਇਸ ਨਾਲ multi-processor ਮਸ਼ੀਨਾਂ " +"ਦੁਆਰਾ ਮਿਲਣ ਵਾਲੀ parallelism ਘੱਟ ਹੋ ਜਾਂਦੀ ਹੈ।" msgid "" "However, some extension modules, either standard or third-party, are " @@ -1088,44 +1520,56 @@ msgid "" "such as compression or hashing. Also, the GIL is always released when doing " "I/O." msgstr "" +"ਹਾਲਾਂਕਿ, ਕੁਝ standard ਜਾਂ third-party extension modules ਇਸ ਤਰ੍ਹਾਂ ਡਿਜ਼ਾਇਨ ਕੀਤੇ ਜਾਂਦੇ " +"ਹਨ ਕਿ compression ਜਾਂ hashing ਵਰਗੇ computationally intensive ਕੰਮ ਕਰਦੇ ਸਮੇਂ GIL ਨੂੰ " +"release ਕਰ ਦਿੰਦੇ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, I/O ਕਾਰਵਾਈਆਂ ਦੌਰਾਨ ਵੀ GIL ਹਮੇਸ਼ਾਂ release ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ।" msgid "" "As of Python 3.13, the GIL can be disabled using the :option:`--disable-gil` " -"build configuration. After building Python with this option, code must be " -"run with :option:`-X gil=0 <-X>` or after setting the :envvar:`PYTHON_GIL=0 " -"` environment variable. This feature enables improved " -"performance for multi-threaded applications and makes it easier to use multi-" -"core CPUs efficiently. For more details, see :pep:`703`." +"build configuration. This feature enables improved performance for multi-" +"threaded applications and makes it easier to use multi-core CPUs " +"efficiently. For more details, see :pep:`703`." msgstr "" msgid "" "In prior versions of Python's C API, a function might declare that it " -"requires the GIL to be held in order to use it. This refers to having an :" -"term:`attached thread state`." +"requires the GIL to be held in order to use it. This refers to having " +"an :term:`attached thread state`." msgstr "" +"Python ਦੇ C API ਦੇ ਪੁਰਾਣੇ ਸੰਸਕਰਣਾਂ ਵਿੱਚ, ਕੋਈ ਫੰਕਸ਼ਨ ਇਹ ਘੋਸ਼ਿਤ ਕਰ ਸਕਦਾ ਸੀ ਕਿ ਉਸਨੂੰ ਵਰਤਣ ਲਈ " +"GIL ਦਾ hold ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ। ਇਹ :term:`attached thread state` ਹੋਣ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।" msgid "global state" -msgstr "" +msgstr "ਗਲੋਬਲ ਸਟੇਟ" msgid "" "Data that is accessible throughout a program, such as module-level " "variables, class variables, or C static variables in :term:`extension " "modules `. In multi-threaded programs, global state " -"shared between threads typically requires synchronization to avoid :term:" -"`race conditions ` and :term:`data races `." +"shared between threads typically requires synchronization to " +"avoid :term:`race conditions ` and :term:`data races `." msgstr "" +"ਉਹ ਡਾਟਾ ਜੋ ਪੂਰੇ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ, ਜਿਵੇਂ module-level variables, class " +"variables ਜਾਂ :term:`extension modules ` ਵਿੱਚ C static " +"variables। Multi-threaded ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ threads ਵਿਚਕਾਰ ਸਾਂਝੀ ਕੀਤੀ ਗਈ global " +"state ਲਈ ਆਮ ਤੌਰ 'ਤੇ synchronization ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਤਾਂ ਜੋ :term:`race conditions " +"` ਅਤੇ :term:`data races ` ਤੋਂ ਬਚਿਆ ਜਾ ਸਕੇ।" msgid "hash-based pyc" -msgstr "" +msgstr "ਹੈਸ਼-ਅਧਾਰਿਤ pyc" msgid "" "A bytecode cache file that uses the hash rather than the last-modified time " "of the corresponding source file to determine its validity. See :ref:`pyc-" "invalidation`." msgstr "" +"ਇੱਕ bytecode cache ਫਾਈਲ ਜੋ ਆਪਣੀ ਵੈਧਤਾ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਸੰਬੰਧਿਤ source ਫਾਈਲ ਦੇ last-" +"modified time ਦੀ ਬਜਾਏ hash ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। :ref:`pyc-invalidation` ਵੇਖੋ।" msgid "hashable" -msgstr "" +msgstr "ਹੈਸ਼ਯੋਗ" msgid "" "An object is *hashable* if it has a hash value which never changes during " @@ -1133,11 +1577,17 @@ msgid "" "compared to other objects (it needs an :meth:`~object.__eq__` method). " "Hashable objects which compare equal must have the same hash value." msgstr "" +"ਕੋਈ object *hashable* ਹੁੰਦਾ ਹੈ ਜੇ ਇਸਦਾ hash value ਇਸਦੀ lifetime ਦੌਰਾਨ ਕਦੇ ਨਾ ਬਦਲੇ " +"(ਇਸ ਲਈ :meth:`~object.__hash__` method ਲੋੜੀਂਦੀ ਹੈ), ਅਤੇ ਇਸਦੀ ਹੋਰ objects ਨਾਲ ਤੁਲਨਾ " +"ਕੀਤੀ ਜਾ ਸਕੇ (ਇਸ ਲਈ :meth:`~object.__eq__` method ਲੋੜੀਂਦੀ ਹੈ)। ਜਿਹੜੇ hashable " +"objects ਇੱਕੋ ਜਿਹੇ ਮੰਨੇ ਜਾਂਦੇ ਹਨ, ਉਨ੍ਹਾਂ ਦਾ hash value ਵੀ ਇੱਕੋ ਹੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "" "Hashability makes an object usable as a dictionary key and a set member, " "because these data structures use the hash value internally." msgstr "" +"Hashability ਕਿਸੇ object ਨੂੰ dictionary key ਅਤੇ set member ਵਜੋਂ ਵਰਤਣਯੋਗ ਬਣਾਉਂਦੀ ਹੈ, " +"ਕਿਉਂਕਿ ਇਹ data structures ਅੰਦਰੂਨੀ ਤੌਰ 'ਤੇ hash value ਦੀ ਵਰਤੋਂ ਕਰਦੀਆਂ ਹਨ।" msgid "" "Most of Python's immutable built-in objects are hashable; mutable containers " @@ -1147,37 +1597,53 @@ msgid "" "default. They all compare unequal (except with themselves), and their hash " "value is derived from their :func:`id`." msgstr "" +"Python ਦੇ ਜ਼ਿਆਦਾਤਰ immutable built-in objects hashable ਹੁੰਦੇ ਹਨ; mutable " +"containers (ਜਿਵੇਂ lists ਜਾਂ dictionaries) ਨਹੀਂ ਹੁੰਦੇ। Immutable containers (ਜਿਵੇਂ " +"tuples ਅਤੇ frozensets) ਤਦੋਂ ਹੀ hashable ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਉਨ੍ਹਾਂ ਦੇ elements ਵੀ hashable " +"ਹੋਣ। User-defined classes ਦੇ instances ਮੂਲ ਰੂਪ ਵਿੱਚ hashable ਹੁੰਦੇ ਹਨ। ਉਹ ਸਭ ਇੱਕ-ਦੂਜੇ ਤੋਂ " +"ਅਸਮਾਨ ਮੰਨੇ ਜਾਂਦੇ ਹਨ (ਆਪਣੇ ਆਪ ਤੋਂ ਇਲਾਵਾ), ਅਤੇ ਉਨ੍ਹਾਂ ਦਾ hash value :func:`id` ਤੋਂ ਪ੍ਰਾਪਤ " +"ਹੁੰਦਾ ਹੈ।" msgid "IDLE" -msgstr "" +msgstr "IDLE" msgid "" "An Integrated Development and Learning Environment for Python. :ref:`idle` " "is a basic editor and interpreter environment which ships with the standard " "distribution of Python." msgstr "" +"Python ਲਈ ਇੱਕ Integrated Development and Learning Environment। :ref:`idle` ਇੱਕ " +"ਬੁਨਿਆਦੀ editor ਅਤੇ interpreter environment ਹੈ ਜੋ Python ਦੀ standard distribution " +"ਨਾਲ ਮਿਲਦਾ ਹੈ।" msgid "immortal" -msgstr "" +msgstr "ਅਮਰ" msgid "" -"*Immortal objects* are a CPython implementation detail introduced in :pep:" -"`683`." +"*Immortal objects* are a CPython implementation detail introduced " +"in :pep:`683`." msgstr "" +"*Immortal objects* CPython implementation ਦਾ ਇੱਕ ਵੇਰਵਾ ਹਨ ਜੋ :pep:`683` ਵਿੱਚ ਪੇਸ਼ " +"ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "" "If an object is immortal, its :term:`reference count` is never modified, and " "therefore it is never deallocated while the interpreter is running. For " "example, :const:`True` and :const:`None` are immortal in CPython." msgstr "" +"ਜੇ ਕੋਈ object immortal ਹੈ, ਤਾਂ ਉਸਦਾ :term:`reference count` ਕਦੇ ਵੀ ਬਦਲਿਆ ਨਹੀਂ ਜਾਂਦਾ " +"ਅਤੇ ਇਸ ਲਈ interpreter ਚੱਲਣ ਦੌਰਾਨ ਉਹ ਕਦੇ deallocate ਨਹੀਂ ਹੁੰਦਾ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, :const:`True` ਅਤੇ :const:`None` CPython ਵਿੱਚ immortal ਹਨ।" msgid "" -"Immortal objects can be identified via :func:`sys._is_immortal`, or via :c:" -"func:`PyUnstable_IsImmortal` in the C API." +"Immortal objects can be identified via :func:`sys._is_immortal`, or " +"via :c:func:`PyUnstable_IsImmortal` in the C API." msgstr "" +"Immortal objects ਦੀ ਪਛਾਣ :func:`sys._is_immortal` ਜਾਂ C API " +"ਵਿੱਚ :c:func:`PyUnstable_IsImmortal` ਰਾਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "immutable" -msgstr "" +msgstr "ਅਪਰਿਵਰਤਨਸ਼ੀਲ" msgid "" "An object with a fixed value. Immutable objects include numbers, strings " @@ -1188,9 +1654,16 @@ msgid "" "their state cannot be modified after creation, eliminating concerns about " "improperly synchronized :term:`concurrent modification`." msgstr "" +"ਇੱਕ ਐਸਾ object ਜਿਸਦੀ value ਸਥਿਰ ਰਹਿੰਦੀ ਹੈ। Immutable objects ਵਿੱਚ numbers, " +"strings ਅਤੇ tuples ਸ਼ਾਮਲ ਹਨ। ਅਜਿਹੇ object ਨੂੰ ਬਦਲਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਜੇ ਵੱਖਰੀ value " +"ਸੰਭਾਲਣੀ ਹੋਵੇ ਤਾਂ ਨਵਾਂ object ਬਣਾਉਣਾ ਪੈਂਦਾ ਹੈ। ਇਹ ਉਹਨਾਂ ਸਥਿਤੀਆਂ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਹੁੰਦੇ ਹਨ ਜਿੱਥੇ " +"ਇੱਕ ਸਥਿਰ hash value ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜਿਵੇਂ dictionary key ਵਜੋਂ। Immutable objects " +"ਸਵਭਾਵਿਕ ਤੌਰ 'ਤੇ :term:`thread-safe` ਹੁੰਦੇ ਹਨ ਕਿਉਂਕਿ ਬਣਨ ਤੋਂ ਬਾਅਦ ਉਨ੍ਹਾਂ ਦੀ state ਬਦਲੀ " +"ਨਹੀਂ ਜਾ ਸਕਦੀ, ਜਿਸ ਨਾਲ ਗਲਤ synchronized :term:`concurrent modification` ਦੀ " +"ਚਿੰਤਾ ਨਹੀਂ ਰਹਿੰਦੀ।" msgid "import path" -msgstr "" +msgstr "ਇੰਪੋਰਟ ਪਾਥ" msgid "" "A list of locations (or :term:`path entries `) that are searched " @@ -1198,46 +1671,59 @@ msgid "" "list of locations usually comes from :data:`sys.path`, but for subpackages " "it may also come from the parent package's ``__path__`` attribute." msgstr "" +"ਥਾਵਾਂ (ਜਾਂ :term:`path entries `) ਦੀ ਇੱਕ ਸੂਚੀ ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਮੋਡੀਊਲ ਲੱਭਣ " +"ਲਈ :term:`path based finder` ਖੋਜ ਕਰਦਾ ਹੈ। Import ਦੌਰਾਨ ਇਹ ਸੂਚੀ ਆਮ ਤੌਰ " +"'ਤੇ :data:`sys.path` ਤੋਂ ਆਉਂਦੀ ਹੈ, ਪਰ subpackages ਲਈ ਇਹ parent package ਦੇ " +"``__path__`` attribute ਤੋਂ ਵੀ ਆ ਸਕਦੀ ਹੈ।" msgid "importing" -msgstr "" +msgstr "ਇੰਪੋਰਟ ਕਰਨਾ" msgid "" "The process by which Python code in one module is made available to Python " "code in another module." msgstr "" +"ਉਹ ਪ੍ਰਕਿਰਿਆ ਜਿਸ ਰਾਹੀਂ ਇੱਕ module ਵਿੱਚ ਮੌਜੂਦ Python code ਨੂੰ ਕਿਸੇ ਹੋਰ module ਦੇ Python " +"code ਲਈ ਉਪਲਬਧ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "importer" -msgstr "" +msgstr "ਇੰਪੋਰਟਰ" msgid "" -"An object that both finds and loads a module; both a :term:`finder` and :" -"term:`loader` object." +"An object that both finds and loads a module; both a :term:`finder` " +"and :term:`loader` object." msgstr "" +"ਇੱਕ object ਜੋ module ਨੂੰ ਲੱਭਦਾ ਵੀ ਹੈ ਅਤੇ load ਵੀ ਕਰਦਾ ਹੈ; ਅਰਥਾਤ :term:`finder` " +"ਅਤੇ :term:`loader` ਦੋਵੇਂ object।" msgid "index" -msgstr "" +msgstr "ਇੰਡੈਕਸ" msgid "" -"A numeric value that represents the position of an element in a :term:" -"`sequence`." +"A numeric value that represents the position of an element in " +"a :term:`sequence`." msgstr "" +"ਇੱਕ ਸੰਖਿਆਤਮਕ value ਜੋ ਕਿਸੇ :term:`sequence` ਵਿੱਚ element ਦੀ ਸਥਿਤੀ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ।" msgid "" "In Python, indexing starts at zero. For example, ``things[0]`` names the " "*first* element of ``things``; ``things[1]`` names the second one." msgstr "" +"Python ਵਿੱਚ indexing 0 ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``things[0]`` , ``things`` ਦੇ " +"*ਪਹਿਲੇ* element ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਅਤੇ ``things[1]`` ਦੂਜੇ element ਨੂੰ।" msgid "" "In some contexts, Python allows negative indexes for counting from the end " "of a sequence, and indexing using :term:`slices `." msgstr "" +"ਕੁਝ ਸੰਦਰਭਾਂ ਵਿੱਚ Python sequence ਦੇ ਅੰਤ ਤੋਂ ਗਿਣਤੀ ਕਰਨ ਲਈ negative indexes " +"ਅਤੇ :term:`slices ` ਦੀ ਵਰਤੋਂ ਨਾਲ indexing ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।" msgid "See also :term:`subscript`." -msgstr "" +msgstr ":term:`subscript` ਵੀ ਵੇਖੋ।" msgid "interactive" -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ" msgid "" "Python has an interactive interpreter which means you can enter statements " @@ -1247,9 +1733,15 @@ msgid "" "test out new ideas or inspect modules and packages (remember ``help(x)``). " "For more on interactive mode, see :ref:`tut-interac`." msgstr "" +"Python ਕੋਲ ਇੱਕ ਇੰਟਰਐਕਟਿਵ ਇੰਟਰਪ੍ਰੀਟਰ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਸੀਂ ਇੰਟਰਪ੍ਰੀਟਰ ਪ੍ਰੋਂਪਟ 'ਤੇ ਬਿਆਨ " +"ਅਤੇ ਅਭਿਵਿਆਕਤੀਆਂ ਦਾਖਲ ਕਰ ਸਕਦੇ ਹੋ, ਤੁਰੰਤ ਉਹਨਾਂ ਨੂੰ ਚਲਾ ਸਕਦੇ ਹੋ ਅਤੇ ਉਹਨਾਂ ਦੇ ਨਤੀਜੇ ਵੇਖ ਸਕਦੇ ਹੋ। " +"ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ ``python`` ਚਲਾਓ (ਸ਼ਾਇਦ ਤੁਸੀਂ ਇਸਨੂੰ ਆਪਣੇ ਕੰਪਿਊਟਰ ਦੇ ਮੁੱਖ ਮੈਨੂ ਤੋਂ ਚੁਣ ਕੇ)। " +"ਇਹ ਨਵੇਂ ਵਿਚਾਰਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਜਾਂ ਮੋਡਿਊਲਾਂ ਅਤੇ ਪੈਕੇਜਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਦਾ ਬਹੁਤ ਹੀ ਸ਼ਕਤੀਸ਼ਾਲੀ " +"ਤਰੀਕਾ ਹੈ (ਯਾਦ ਰੱਖੋ ``help(x)``)। ਇੰਟਰਐਕਟਿਵ ਮੋਡ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ, ਵੇਖੋ :ref:`tut-" +"interac` ।" msgid "interpreted" -msgstr "" +msgstr "ਇੰਟਰਪ੍ਰੇਟ ਕੀਤਾ ਹੋਇਆ" msgid "" "Python is an interpreted language, as opposed to a compiled one, though the " @@ -1259,131 +1751,186 @@ msgid "" "shorter development/debug cycle than compiled ones, though their programs " "generally also run more slowly. See also :term:`interactive`." msgstr "" +"Python ਇੱਕ interpreted language ਹੈ, compiled language ਦੇ ਉਲਟ, ਹਾਲਾਂਕਿ bytecode " +"compiler ਦੀ ਮੌਜੂਦਗੀ ਕਾਰਨ ਇਹ ਅੰਤਰ ਕੁਝ ਹੱਦ ਤੱਕ ਧੁੰਦਲਾ ਹੋ ਸਕਦਾ ਹੈ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ source " +"files ਨੂੰ executable ਬਣਾਏ ਬਿਨਾਂ ਸਿੱਧਾ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। Interpreted languages ਵਿੱਚ " +"ਆਮ ਤੌਰ 'ਤੇ compiled languages ਨਾਲੋਂ ਛੋਟਾ development/debug cycle ਹੁੰਦਾ ਹੈ, ਹਾਲਾਂਕਿ " +"ਉਹਨਾਂ ਦੇ ਪ੍ਰੋਗਰਾਮ ਆਮ ਤੌਰ 'ਤੇ ਹੌਲੇ ਚੱਲਦੇ ਹਨ। :term:`interactive` ਵੀ ਵੇਖੋ।" msgid "interpreter shutdown" -msgstr "" +msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਸ਼ਟਡਾਊਨ" msgid "" "When asked to shut down, the Python interpreter enters a special phase where " "it gradually releases all allocated resources, such as modules and various " -"critical internal structures. It also makes several calls to the :term:" -"`garbage collector `. This can trigger the execution of " -"code in user-defined destructors or weakref callbacks. Code executed during " -"the shutdown phase can encounter various exceptions as the resources it " -"relies on may not function anymore (common examples are library modules or " -"the warnings machinery)." -msgstr "" +"critical internal structures. It also makes several calls to " +"the :term:`garbage collector `. This can trigger the " +"execution of code in user-defined destructors or weakref callbacks. Code " +"executed during the shutdown phase can encounter various exceptions as the " +"resources it relies on may not function anymore (common examples are library " +"modules or the warnings machinery)." +msgstr "" +"ਜਦੋਂ Python interpreter ਨੂੰ ਬੰਦ ਕਰਨ ਲਈ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਇਹ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਪੜਾਅ ਵਿੱਚ ਦਾਖਲ ਹੁੰਦਾ " +"ਹੈ ਜਿੱਥੇ ਇਹ ਹੌਲੀ-ਹੌਲੀ ਸਾਰੇ allocated resources ਜਿਵੇਂ modules ਅਤੇ ਹੋਰ ਮਹੱਤਵਪੂਰਨ internal " +"structures ਨੂੰ release ਕਰਦਾ ਹੈ। ਇਹ :term:`garbage collector ` ਨੂੰ ਵੀ ਕਈ ਵਾਰ ਕਾਲ ਕਰਦਾ ਹੈ। ਇਸ ਕਾਰਨ user-defined destructors ਜਾਂ " +"weakref callbacks ਵਿੱਚ code ਚੱਲ ਸਕਦਾ ਹੈ। Shutdown phase ਦੌਰਾਨ ਚੱਲਣ ਵਾਲਾ code ਵੱਖ-" +"ਵੱਖ exceptions ਦਾ ਸਾਹਮਣਾ ਕਰ ਸਕਦਾ ਹੈ ਕਿਉਂਕਿ ਜਿਨ੍ਹਾਂ resources 'ਤੇ ਉਹ ਨਿਰਭਰ ਕਰਦਾ ਹੈ, " +"ਉਹ ਹੁਣ ਕੰਮ ਨਹੀਂ ਕਰ ਰਹੇ ਹੋ ਸਕਦੇ।" msgid "" "The main reason for interpreter shutdown is that the ``__main__`` module or " "the script being run has finished executing." msgstr "" +"Interpreter shutdown ਦਾ ਮੁੱਖ ਕਾਰਨ ਇਹ ਹੁੰਦਾ ਹੈ ਕਿ ``__main__`` module ਜਾਂ ਚੱਲ ਰਹੀ " +"script ਆਪਣਾ execution ਪੂਰਾ ਕਰ ਚੁੱਕੀ ਹੁੰਦੀ ਹੈ।" msgid "iterable" -msgstr "" +msgstr "ਇਟਰੇਬਲ" msgid "" "An object capable of returning its members one at a time. Examples of " "iterables include all sequence types (such as :class:`list`, :class:`str`, " -"and :class:`tuple`) and some non-sequence types like :class:`dict`, :term:" -"`file objects `, and objects of any classes you define with an :" -"meth:`~object.__iter__` method or with a :meth:`~object.__getitem__` method " -"that implements :term:`sequence` semantics." +"and :class:`tuple`) and some non-sequence types " +"like :class:`dict`, :term:`file objects `, and objects of any " +"classes you define with an :meth:`~object.__iter__` method or with " +"a :meth:`~object.__getitem__` method that implements :term:`sequence` " +"semantics." msgstr "" +"ਇੱਕ ਐਸਾ object ਜੋ ਆਪਣੇ members ਨੂੰ ਇੱਕ-ਇੱਕ ਕਰਕੇ ਵਾਪਸ ਕਰ ਸਕਦਾ ਹੈ। Iterables ਦੀਆਂ " +"ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਸਾਰੇ sequence types (ਜਿਵੇਂ :class:`list`, :class:`str`, " +"ਅਤੇ :class:`tuple`) ਅਤੇ ਕੁਝ non-sequence types ਜਿਵੇਂ :class:`dict`, :term:`file " +"objects `, ਅਤੇ ਉਹ objects ਸ਼ਾਮਲ ਹਨ ਜਿਨ੍ਹਾਂ ਦੀਆਂ classes " +"ਵਿੱਚ :meth:`~object.__iter__` method ਜਾਂ :term:`sequence` semantics ਲਾਗੂ ਕਰਨ " +"ਵਾਲੀ :meth:`~object.__getitem__` method ਪਰਿਭਾਸ਼ਿਤ ਹੋਵੇ।" msgid "" "Iterables can be used in a :keyword:`for` loop and in many other places " "where a sequence is needed (:func:`zip`, :func:`map`, ...). When an " -"iterable object is passed as an argument to the built-in function :func:" -"`iter`, it returns an iterator for the object. This iterator is good for " -"one pass over the set of values. When using iterables, it is usually not " -"necessary to call :func:`iter` or deal with iterator objects yourself. The :" -"keyword:`for` statement does that automatically for you, creating a " -"temporary unnamed variable to hold the iterator for the duration of the " -"loop. See also :term:`iterator`, :term:`sequence`, and :term:`generator`." -msgstr "" +"iterable object is passed as an argument to the built-in " +"function :func:`iter`, it returns an iterator for the object. This iterator " +"is good for one pass over the set of values. When using iterables, it is " +"usually not necessary to call :func:`iter` or deal with iterator objects " +"yourself. The :keyword:`for` statement does that automatically for you, " +"creating a temporary unnamed variable to hold the iterator for the duration " +"of the loop. See also :term:`iterator`, :term:`sequence`, " +"and :term:`generator`." +msgstr "" +"Iterables ਨੂੰ :keyword:`for` loop ਅਤੇ ਹੋਰ ਕਈ ਥਾਵਾਂ 'ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿੱਥੇ " +"sequence ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ (:func:`zip`, :func:`map`, ਆਦਿ)। ਜਦੋਂ ਕਿਸੇ iterable object " +"ਨੂੰ built-in function :func:`iter` ਨੂੰ argument ਵਜੋਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਉਸ object " +"ਲਈ iterator ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ iterator values ਦੇ ਸਮੂਹ 'ਤੇ ਇੱਕ ਵਾਰ iteration ਕਰਨ ਲਈ " +"ਹੁੰਦਾ ਹੈ। Iterables ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ ਆਮ ਤੌਰ 'ਤੇ :func:`iter` ਨੂੰ ਖੁਦ call ਕਰਨ ਜਾਂ " +"iterator objects ਨੂੰ ਸਿੱਧੇ ਸੰਭਾਲਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ। :keyword:`for` statement ਇਹ ਕੰਮ " +"ਆਪਣੇ ਆਪ ਕਰਦਾ ਹੈ ਅਤੇ loop ਦੌਰਾਨ iterator ਰੱਖਣ ਲਈ ਇੱਕ ਅਸਥਾਈ unnamed variable ਬਣਾਉਂਦਾ " +"ਹੈ। :term:`iterator`, :term:`sequence`, ਅਤੇ :term:`generator` ਵੀ ਵੇਖੋ।" msgid "iterator" -msgstr "" - -msgid "" -"An object representing a stream of data. Repeated calls to the iterator's :" -"meth:`~iterator.__next__` method (or passing it to the built-in function :" -"func:`next`) return successive items in the stream. When no more data are " -"available a :exc:`StopIteration` exception is raised instead. At this " -"point, the iterator object is exhausted and any further calls to its :meth:`!" -"__next__` method just raise :exc:`StopIteration` again. Iterators are " -"required to have an :meth:`~iterator.__iter__` method that returns the " -"iterator object itself so every iterator is also iterable and may be used in " -"most places where other iterables are accepted. One notable exception is " -"code which attempts multiple iteration passes. A container object (such as " -"a :class:`list`) produces a fresh new iterator each time you pass it to the :" -"func:`iter` function or use it in a :keyword:`for` loop. Attempting this " -"with an iterator will just return the same exhausted iterator object used in " -"the previous iteration pass, making it appear like an empty container." +msgstr "ਇਟਰੇਟਰ" + +msgid "" +"An object representing a stream of data. Repeated calls to the " +"iterator's :meth:`~iterator.__next__` method (or passing it to the built-in " +"function :func:`next`) return successive items in the stream. When no more " +"data are available a :exc:`StopIteration` exception is raised instead. At " +"this point, the iterator object is :term:`exhausted` and any further calls " +"to its :meth:`!__next__` method just raise :exc:`StopIteration` again. " +"Iterators are required to have an :meth:`~iterator.__iter__` method that " +"returns the iterator object itself so every iterator is also iterable and " +"may be used in most places where other iterables are accepted. One notable " +"exception is code which attempts multiple iteration passes. A container " +"object (such as a :class:`list`) produces a fresh new iterator each time you " +"pass it to the :func:`iter` function or use it in a :keyword:`for` loop. " +"Attempting this with an iterator will just return the same exhausted " +"iterator object used in the previous iteration pass, making it appear like " +"an empty container." msgstr "" msgid "More information can be found in :ref:`typeiter`." -msgstr "" +msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`typeiter` ਵੇਖੋ।" msgid "" -"CPython does not consistently apply the requirement that an iterator define :" -"meth:`~iterator.__iter__`. And also please note that :term:`free-threaded " -"` CPython does not guarantee :term:`thread-safe` behavior of " -"iterator operations." +"CPython does not consistently apply the requirement that an iterator " +"define :meth:`~iterator.__iter__`. And also please note that :term:`free-" +"threaded ` CPython does not guarantee :term:`thread-safe` " +"behavior of iterator operations." msgstr "" +"CPython ਹਮੇਸ਼ਾਂ ਇਸ ਲੋੜ ਨੂੰ ਸਖ਼ਤੀ ਨਾਲ ਲਾਗੂ ਨਹੀਂ ਕਰਦਾ ਕਿ iterator " +"ਵਿੱਚ :meth:`~iterator.__iter__` method ਹੋਵੇ। ਇਹ ਵੀ ਧਿਆਨ ਰੱਖੋ ਕਿ :term:`free-" +"threaded ` CPython iterator operations ਲਈ :term:`thread-" +"safe` ਵਿਹਾਰ ਦੀ ਗਾਰੰਟੀ ਨਹੀਂ ਦਿੰਦਾ।" msgid "key" -msgstr "" +msgstr "ਕੀ" msgid "" -"A value that identifies an entry in a :term:`mapping`. See also :term:" -"`subscript`." +"A value that identifies an entry in a :term:`mapping`. See " +"also :term:`subscript`." msgstr "" +"ਇੱਕ value ਜੋ :term:`mapping` ਵਿੱਚ ਕਿਸੇ entry ਦੀ ਪਛਾਣ ਕਰਦੀ ਹੈ। :term:`subscript` " +"ਵੀ ਵੇਖੋ।" msgid "key function" -msgstr "" +msgstr "ਕੀ ਫੰਕਸ਼ਨ" msgid "" "A key function or collation function is a callable that returns a value used " "for sorting or ordering. For example, :func:`locale.strxfrm` is used to " "produce a sort key that is aware of locale specific sort conventions." msgstr "" +"Key function ਜਾਂ collation function ਇੱਕ callable ਹੁੰਦਾ ਹੈ ਜੋ sorting ਜਾਂ ordering " +"ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ value ਵਾਪਸ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, :func:`locale.strxfrm` locale-" +"ਵਿਸ਼ੇਸ਼ sorting conventions ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖਦੇ ਹੋਏ sort key ਤਿਆਰ ਕਰਦਾ ਹੈ।" msgid "" "A number of tools in Python accept key functions to control how elements are " -"ordered or grouped. They include :func:`min`, :func:`max`, :func:`sorted`, :" -"meth:`list.sort`, :func:`heapq.merge`, :func:`heapq.nsmallest`, :func:`heapq." -"nlargest`, and :func:`itertools.groupby`." -msgstr "" - -msgid "" -"There are several ways to create a key function. For example. the :meth:" -"`str.casefold` method can serve as a key function for case insensitive " -"sorts. Alternatively, a key function can be built from a :keyword:`lambda` " -"expression such as ``lambda r: (r[0], r[2])``. Also, :func:`operator." -"attrgetter`, :func:`operator.itemgetter`, and :func:`operator.methodcaller` " -"are three key function constructors. See the :ref:`Sorting HOW TO " -"` for examples of how to create and use key functions." -msgstr "" +"ordered or grouped. They " +"include :func:`min`, :func:`max`, :func:`sorted`, :meth:`list.sort`, :func:`heapq.merge`, :func:`heapq.nsmallest`, :func:`heapq.nlargest`, " +"and :func:`itertools.groupby`." +msgstr "" +"Python ਦੇ ਕਈ tools elements ਦੀ ordering ਜਾਂ grouping ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ key " +"functions ਸਵੀਕਾਰ ਕਰਦੇ ਹਨ। ਇਨ੍ਹਾਂ " +"ਵਿੱਚ :func:`min`, :func:`max`, :func:`sorted`, :meth:`list.sort`, :func:`heapq.merge`, :func:`heapq.nsmallest`, :func:`heapq.nlargest`, " +"ਅਤੇ :func:`itertools.groupby` ਸ਼ਾਮਲ ਹਨ।" + +msgid "" +"There are several ways to create a key function. For example. " +"the :meth:`str.casefold` method can serve as a key function for case " +"insensitive sorts. Alternatively, a key function can be built from " +"a :keyword:`lambda` expression such as ``lambda r: (r[0], r[2])``. " +"Also, :func:`operator.attrgetter`, :func:`operator.itemgetter`, " +"and :func:`operator.methodcaller` are three key function constructors. See " +"the :ref:`Sorting HOW TO ` for examples of how to create and " +"use key functions." +msgstr "" +"Key function ਬਣਾਉਣ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, :meth:`str.casefold` method case-" +"insensitive sorting ਲਈ key function ਵਜੋਂ ਕੰਮ ਕਰ ਸਕਦੀ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ``lambda r: " +"(r[0], r[2])`` ਵਰਗੇ :keyword:`lambda` expression ਨਾਲ ਵੀ key function ਬਣਾਇਆ ਜਾ " +"ਸਕਦਾ ਹੈ। :func:`operator.attrgetter`, :func:`operator.itemgetter`, " +"ਅਤੇ :func:`operator.methodcaller` ਤਿੰਨ key function constructors ਹਨ। Key " +"functions ਬਣਾਉਣ ਅਤੇ ਵਰਤਣ ਦੀਆਂ ਉਦਾਹਰਨਾਂ ਲਈ :ref:`Sorting HOW TO ` " +"ਵੇਖੋ।" msgid "keyword argument" -msgstr "" +msgstr "ਕੀਵਰਡ ਆਰਗਿਊਮੈਂਟ" msgid "See :term:`argument`." -msgstr "" +msgstr ":term:`argument` ਵੇਖੋ।" msgid "lambda" -msgstr "" +msgstr "ਲੈਂਬਡਾ" msgid "" "An anonymous inline function consisting of a single :term:`expression` which " "is evaluated when the function is called. The syntax to create a lambda " "function is ``lambda [parameters]: expression``" msgstr "" +"ਇੱਕ anonymous inline function ਜੋ ਇੱਕ ਹੀ :term:`expression` ਤੋਂ ਬਣਿਆ ਹੁੰਦਾ ਹੈ ਅਤੇ " +"function call ਹੋਣ 'ਤੇ evaluate ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Lambda function ਬਣਾਉਣ ਦਾ syntax ਹੈ " +"``lambda [parameters]: expression``" msgid "LBYL" -msgstr "" +msgstr "LBYL" msgid "" "Look before you leap. This coding style explicitly tests for pre-conditions " @@ -1391,33 +1938,42 @@ msgid "" "approach and is characterized by the presence of many :keyword:`if` " "statements." msgstr "" +"Look before you leap. ਇਹ coding style calls ਜਾਂ lookups ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸਪਸ਼ਟ ਤੌਰ " +"'ਤੇ pre-conditions ਦੀ ਜਾਂਚ ਕਰਦੀ ਹੈ। ਇਹ ਸ਼ੈਲੀ :term:`EAFP` approach ਦੇ ਉਲਟ ਹੈ ਅਤੇ " +"ਇਸਦੀ ਵਿਸ਼ੇਸ਼ਤਾ ਬਹੁਤ ਸਾਰੇ :keyword:`if` statements ਹਨ।" msgid "" -"In a multi-threaded environment, the LBYL approach can risk introducing a :" -"term:`race condition` between \"the looking\" and \"the leaping\". For " +"In a multi-threaded environment, the LBYL approach can risk introducing " +"a :term:`race condition` between \"the looking\" and \"the leaping\". For " "example, the code, ``if key in mapping: return mapping[key]`` can fail if " "another thread removes *key* from *mapping* after the test, but before the " -"lookup. This issue can be solved with :term:`locks ` or by using the :" -"term:`EAFP` approach. See also :term:`thread-safe`." +"lookup. This issue can be solved with :term:`locks ` or by using " +"the :term:`EAFP` approach. See also :term:`thread-safe`." msgstr "" +"Multi-threaded environment ਵਿੱਚ LBYL approach, \"ਦੇਖਣ\" ਅਤੇ \"ਕਰਵਾਈ ਕਰਨ\" ਦੇ " +"ਵਿਚਕਾਰ :term:`race condition` ਪੈਦਾ ਕਰਨ ਦਾ ਜੋਖਮ ਰੱਖਦੀ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``if key in " +"mapping: return mapping[key]`` ਫੇਲ੍ਹ ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ test ਤੋਂ ਬਾਅਦ ਪਰ lookup ਤੋਂ " +"ਪਹਿਲਾਂ ਕੋਈ ਹੋਰ thread *key* ਨੂੰ *mapping* ਤੋਂ ਹਟਾ ਦੇਵੇ। ਇਸ ਸਮੱਸਿਆ ਨੂੰ :term:`locks " +"` ਜਾਂ :term:`EAFP` approach ਨਾਲ ਹੱਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। :term:`thread-safe` " +"ਵੀ ਵੇਖੋ।" msgid "lexical analyzer" -msgstr "" +msgstr "ਲੈਕਸੀਕਲ ਐਨਾਲਾਈਜ਼ਰ" msgid "Formal name for the *tokenizer*; see :term:`token`." -msgstr "" +msgstr "*tokenizer* ਦਾ ਅਧਿਕਾਰਿਕ ਨਾਮ; :term:`token` ਵੇਖੋ।" msgid "list" -msgstr "" +msgstr "ਲਿਸਟ" msgid "" "A built-in Python :term:`sequence`. Despite its name it is more akin to an " "array in other languages than to a linked list since access to elements is " -"*O*\\ (1)." +"*O*\\ (1). See :ref:`time-complexity`." msgstr "" msgid "list comprehension" -msgstr "" +msgstr "ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਨਸ਼ਨ" msgid "" "A compact way to process all or part of the elements in a sequence and " @@ -1426,26 +1982,41 @@ msgid "" "numbers (0x..) in the range from 0 to 255. The :keyword:`if` clause is " "optional. If omitted, all elements in ``range(256)`` are processed." msgstr "" +"ਕਿਸੇ sequence ਦੇ ਸਾਰੇ ਜਾਂ ਕੁਝ elements ਨੂੰ process ਕਰਕੇ ਨਤੀਜਿਆਂ ਦੀ list ਵਾਪਸ ਕਰਨ ਦਾ " +"ਇੱਕ ਸੰਖੇਪ ਤਰੀਕਾ। ``result = ['{:#04x}'.format(x) for x in range(256) if x % 2 " +"== 0]`` 0 ਤੋਂ 255 ਤੱਕ ਦੀ range ਵਿੱਚ even hexadecimal numbers (0x..) ਵਾਲੀਆਂ " +"strings ਦੀ list ਬਣਾਉਂਦਾ ਹੈ। :keyword:`if` clause ਵਿਕਲਪਿਕ ਹੈ। ਜੇ ਇਸਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਵੇ " +"ਤਾਂ ``range(256)`` ਦੇ ਸਾਰੇ elements process ਕੀਤੇ ਜਾਂਦੇ ਹਨ।" msgid "lock" -msgstr "" +msgstr "ਲਾਕ" msgid "" "A :term:`synchronization primitive` that allows only one thread at a time to " "access a shared resource. A thread must acquire a lock before accessing the " "protected resource and release it afterward. If a thread attempts to " "acquire a lock that is already held by another thread, it will block until " -"the lock becomes available. Python's :mod:`threading` module provides :" -"class:`~threading.Lock` (a basic lock) and :class:`~threading.RLock` (a :" -"term:`reentrant` lock). Locks are used to prevent :term:`race conditions " -"` and ensure :term:`thread-safe` access to shared data. " -"Alternative design patterns to locks exist such as queues, producer/consumer " -"patterns, and thread-local state. See also :term:`deadlock`, and :term:" -"`reentrant`." -msgstr "" +"the lock becomes available. Python's :mod:`threading` module " +"provides :class:`~threading.Lock` (a basic lock) " +"and :class:`~threading.RLock` (a :term:`reentrant` lock). Locks are used to " +"prevent :term:`race conditions ` and ensure :term:`thread-" +"safe` access to shared data. Alternative design patterns to locks exist " +"such as queues, producer/consumer patterns, and thread-local state. See " +"also :term:`deadlock`, and :term:`reentrant`." +msgstr "" +"ਇੱਕ :term:`synchronization primitive` ਜੋ ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ thread ਨੂੰ shared " +"resource ਤੱਕ ਪਹੁੰਚ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। Protected resource ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ thread " +"ਨੂੰ lock acquire ਕਰਨਾ ਅਤੇ ਬਾਅਦ ਵਿੱਚ release ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੈ। ਜੇ ਕੋਈ thread ਉਸ lock ਨੂੰ " +"acquire ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੇ ਜੋ ਪਹਿਲਾਂ ਹੀ ਕਿਸੇ ਹੋਰ thread ਕੋਲ ਹੈ, ਤਾਂ ਉਹ lock ਉਪਲਬਧ ਹੋਣ ਤੱਕ " +"ਰੁਕਿਆ ਰਹੇਗਾ। Python ਦਾ :mod:`threading` module :class:`~threading.Lock` (basic " +"lock) ਅਤੇ :class:`~threading.RLock` (:term:`reentrant` lock) ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। " +"Locks ਦਾ ਉਪਯੋਗ :term:`race conditions ` ਤੋਂ ਬਚਾਅ ਅਤੇ shared data " +"ਲਈ :term:`thread-safe` access ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Locks ਦੇ ਵਿਕਲਪ ਵਜੋਂ " +"queues, producer/consumer patterns ਅਤੇ thread-local state ਵਰਗੇ design patterns " +"ਵੀ ਮੌਜੂਦ ਹਨ। :term:`deadlock` ਅਤੇ :term:`reentrant` ਵੀ ਵੇਖੋ।" msgid "lock-free" -msgstr "" +msgstr "ਲਾਕ-ਫ੍ਰੀ" msgid "" "An operation that does not acquire any :term:`lock` and uses atomic CPU " @@ -1457,81 +2028,111 @@ msgid "" "multi-step modifications even when those modifications hold the :term:`per-" "object lock`." msgstr "" +"ਇੱਕ ਐਸੀ operation ਜੋ ਕੋਈ :term:`lock` acquire ਨਹੀਂ ਕਰਦੀ ਅਤੇ correctness ਯਕੀਨੀ " +"ਬਣਾਉਣ ਲਈ atomic CPU instructions ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। Lock-free operations ਇਕੱਠੇ ਚੱਲ " +"ਸਕਦੀਆਂ ਹਨ ਬਿਨਾਂ ਇੱਕ-ਦੂਜੇ ਨੂੰ block ਕੀਤੇ ਅਤੇ ਉਹਨਾਂ ਨੂੰ lock ਰੱਖਣ ਵਾਲੀਆਂ operations ਦੁਆਰਾ ਵੀ " +"block ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। :term:`free-threaded ` Python " +"ਵਿੱਚ :class:`dict` ਅਤੇ :class:`list` ਵਰਗੇ built-in types lock-free read " +"operations ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਹੋਰ threads multi-step modifications " +"ਦੌਰਾਨ intermediate states ਨੂੰ ਵੇਖ ਸਕਦੇ ਹਨ ਭਾਵੇਂ ਉਹ modifications :term:`per-object " +"lock` ਰੱਖ ਰਹੀਆਂ ਹੋਣ।" msgid "loader" -msgstr "" +msgstr "ਲੋਡਰ" msgid "" -"An object that loads a module. It must define the :meth:`!exec_module` and :" -"meth:`!create_module` methods to implement the :class:`~importlib.abc." -"Loader` interface. A loader is typically returned by a :term:`finder`. See " -"also:" +"An object that loads a module. It must define the :meth:`!exec_module` " +"and :meth:`!create_module` methods to implement " +"the :class:`~importlib.abc.Loader` interface. A loader is typically returned " +"by a :term:`finder`. See also:" msgstr "" +"ਇੱਕ object ਜੋ module ਨੂੰ load ਕਰਦਾ ਹੈ। ਇਸਨੂੰ :class:`~importlib.abc.Loader` " +"interface ਨੂੰ implement ਕਰਨ ਲਈ :meth:`!exec_module` ਅਤੇ :meth:`!create_module` " +"methods ਪਰਿਭਾਸ਼ਿਤ ਕਰਨੀਆਂ ਲਾਜ਼ਮੀ ਹਨ। ਆਮ ਤੌਰ 'ਤੇ loader ਨੂੰ :term:`finder` ਦੁਆਰਾ ਵਾਪਸ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਵੀ ਵੇਖੋ:" msgid ":ref:`finders-and-loaders`" -msgstr "" +msgstr ":ref:`finders-and-loaders`" msgid ":class:`importlib.abc.Loader`" -msgstr "" +msgstr ":class:`importlib.abc.Loader`" msgid ":pep:`302`" -msgstr "" +msgstr ":pep:`302`" msgid "locale encoding" -msgstr "" +msgstr "ਲੋਕੇਲ ਐਨਕੋਡਿੰਗ" msgid "" -"On Unix, it is the encoding of the LC_CTYPE locale. It can be set with :func:" -"`locale.setlocale(locale.LC_CTYPE, new_locale) `." +"On Unix, it is the encoding of the LC_CTYPE locale. It can be set " +"with :func:`locale.setlocale(locale.LC_CTYPE, new_locale) " +"`." msgstr "" +"Unix 'ਤੇ ਇਹ LC_CTYPE locale ਦੀ encoding ਹੁੰਦੀ ਹੈ। " +"ਇਸਨੂੰ :func:`locale.setlocale(locale.LC_CTYPE, new_locale) ` " +"ਨਾਲ ਸੈੱਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "On Windows, it is the ANSI code page (ex: ``\"cp1252\"``)." -msgstr "" +msgstr "Windows 'ਤੇ ਇਹ ANSI code page ਹੁੰਦਾ ਹੈ (ਉਦਾਹਰਨ: ``\"cp1252\"``)।" msgid "" "On Android and VxWorks, Python uses ``\"utf-8\"`` as the locale encoding." msgstr "" +"Android ਅਤੇ VxWorks 'ਤੇ Python ``\"utf-8\"`` ਨੂੰ locale encoding ਵਜੋਂ ਵਰਤਦਾ ਹੈ।" msgid ":func:`locale.getencoding` can be used to get the locale encoding." msgstr "" +"Locale encoding ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ :func:`locale.getencoding` ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "See also the :term:`filesystem encoding and error handler`." -msgstr "" +msgstr ":term:`filesystem encoding and error handler` ਵੀ ਵੇਖੋ।" msgid "magic method" -msgstr "" +msgstr "ਮੈਜਿਕ ਮੈਥਡ" msgid "An informal synonym for :term:`special method`." -msgstr "" +msgstr ":term:`special method` ਲਈ ਇੱਕ ਗੈਰ-ਆਧਿਕਾਰਿਕ ਸਮਾਨਾਰਥਕ ਸ਼ਬਦ।" msgid "mapping" -msgstr "" +msgstr "ਮੈਪਿੰਗ" msgid "" "A container object that supports arbitrary key lookups and implements the " -"methods specified in the :class:`collections.abc.Mapping` or :class:" -"`collections.abc.MutableMapping` :ref:`abstract base classes `. Examples include :class:`dict`, :class:" -"`collections.defaultdict`, :class:`collections.OrderedDict` and :class:" -"`collections.Counter`." -msgstr "" +"methods specified in the :class:`collections.abc.Mapping` " +"or :class:`collections.abc.MutableMapping` :ref:`abstract base classes " +"`. Examples " +"include :class:`dict`, :class:`collections.defaultdict`, :class:`collections.OrderedDict` " +"and :class:`collections.Counter`." +msgstr "" +"ਇੱਕ container object ਜੋ arbitrary key lookups ਨੂੰ support ਕਰਦਾ ਹੈ " +"ਅਤੇ :class:`collections.abc.Mapping` " +"ਜਾਂ :class:`collections.abc.MutableMapping` :ref:`abstract base classes " +"` ਵਿੱਚ ਦਿੱਤੀਆਂ methods ਨੂੰ implement ਕਰਦਾ ਹੈ। " +"ਉਦਾਹਰਨਾਂ " +"ਵਿੱਚ :class:`dict`, :class:`collections.defaultdict`, :class:`collections.OrderedDict` " +"ਅਤੇ :class:`collections.Counter` ਸ਼ਾਮਲ ਹਨ।" msgid "meta path finder" -msgstr "" +msgstr "ਮੈਟਾ ਪਾਥ ਫਾਈਂਡਰ" msgid "" "A :term:`finder` returned by a search of :data:`sys.meta_path`. Meta path " "finders are related to, but different from :term:`path entry finders `." msgstr "" +":data:`sys.meta_path` ਦੀ ਖੋਜ ਤੋਂ ਵਾਪਸ ਮਿਲਣ ਵਾਲਾ ਇੱਕ :term:`finder`। Meta path " +"finders, :term:`path entry finders ` ਨਾਲ ਸੰਬੰਧਿਤ ਤਾਂ ਹਨ, ਪਰ " +"ਉਹਨਾਂ ਤੋਂ ਵੱਖਰੇ ਹਨ।" msgid "" "See :class:`importlib.abc.MetaPathFinder` for the methods that meta path " "finders implement." msgstr "" +"Meta path finders ਦੁਆਰਾ implement ਕੀਤੀਆਂ methods " +"ਲਈ :class:`importlib.abc.MetaPathFinder` ਵੇਖੋ।" msgid "metaclass" -msgstr "" +msgstr "ਮੈਟਾਕਲਾਸ" msgid "" "The class of a class. Class definitions create a class name, a class " @@ -1544,60 +2145,80 @@ msgid "" "access, adding thread-safety, tracking object creation, implementing " "singletons, and many other tasks." msgstr "" +"ਕਲਾਸ ਦੀ ਕਲਾਸ। Class definitions ਇੱਕ class name, ਇੱਕ class dictionary ਅਤੇ base " +"classes ਦੀ ਇੱਕ ਸੂਚੀ ਬਣਾਉਂਦੀਆਂ ਹਨ। Metaclass ਦੀ ਜ਼ਿੰਮੇਵਾਰੀ ਇਹਨਾਂ ਤਿੰਨਾਂ arguments ਨੂੰ ਲੈ ਕੇ " +"class ਬਣਾਉਣ ਦੀ ਹੁੰਦੀ ਹੈ। ਜ਼ਿਆਦਾਤਰ object-oriented programming languages ਇੱਕ " +"default implementation ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ। Python ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ ਇਹ ਹੈ ਕਿ custom " +"metaclasses ਬਣਾਈਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਬਹੁਤੇ users ਨੂੰ ਇਸਦੀ ਲੋੜ ਨਹੀਂ ਪੈਂਦੀ, ਪਰ ਜਦੋਂ ਲੋੜ ਪੈਂਦੀ ਹੈ " +"ਤਾਂ metaclasses ਸ਼ਕਤੀਸ਼ਾਲੀ ਅਤੇ ਸੁੰਦਰ ਹੱਲ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਇਹਨਾਂ ਦਾ ਉਪਯੋਗ attribute " +"access logging, thread-safety ਜੋੜਨ, object creation tracking, singleton " +"implementation ਅਤੇ ਹੋਰ ਕਈ ਕੰਮਾਂ ਲਈ ਕੀਤਾ ਗਿਆ ਹੈ।" msgid "More information can be found in :ref:`metaclasses`." -msgstr "" +msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`metaclasses` ਵੇਖੋ।" msgid "method" -msgstr "" +msgstr "ਮੈਥਡ" msgid "" "A function which is defined inside a class body. If called as an attribute " "of an instance of that class, the method will get the instance object as its " -"first :term:`argument` (which is usually called ``self``). See :term:" -"`function` and :term:`nested scope`." +"first :term:`argument` (which is usually called ``self``). " +"See :term:`function` and :term:`nested scope`." msgstr "" +"ਇੱਕ function ਜੋ class body ਦੇ ਅੰਦਰ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਇਸਨੂੰ ਉਸ class ਦੇ ਕਿਸੇ " +"instance ਦੇ attribute ਵਜੋਂ call ਕੀਤਾ ਜਾਵੇ, ਤਾਂ method ਨੂੰ instance object ਆਪਣਾ " +"ਪਹਿਲਾ :term:`argument` ਮਿਲਦਾ ਹੈ (ਜਿਸਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ``self`` ਕਿਹਾ ਜਾਂਦਾ " +"ਹੈ)। :term:`function` ਅਤੇ :term:`nested scope` ਵੀ ਵੇਖੋ।" msgid "method resolution order" -msgstr "" +msgstr "ਮੈਥਡ ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਆਰਡਰ" msgid "" "Method Resolution Order is the order in which base classes are searched for " "a member during lookup. See :ref:`python_2.3_mro` for details of the " "algorithm used by the Python interpreter since the 2.3 release." msgstr "" +"Method Resolution Order ਉਹ ਕ੍ਰਮ ਹੈ ਜਿਸ ਵਿੱਚ lookup ਦੌਰਾਨ member ਲਈ base classes " +"ਦੀ ਖੋਜ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। Python interpreter ਦੁਆਰਾ version 2.3 ਤੋਂ ਵਰਤੇ ਜਾ ਰਹੇ algorithm " +"ਦੇ ਵੇਰਵਿਆਂ ਲਈ :ref:`python_2.3_mro` ਵੇਖੋ।" msgid "module" -msgstr "" +msgstr "ਮੋਡੀਊਲ" msgid "" "An object that serves as an organizational unit of Python code. Modules " "have a namespace containing arbitrary Python objects. Modules are loaded " "into Python by the process of :term:`importing`." msgstr "" +"ਇੱਕ object ਜੋ Python code ਦੀ ਸੰਗਠਨਾਤਮਕ ਇਕਾਈ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। Modules ਕੋਲ ਇੱਕ " +"namespace ਹੁੰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ arbitrary Python objects ਹੋ ਸਕਦੇ ਹਨ। Modules " +"ਨੂੰ :term:`importing` ਦੀ ਪ੍ਰਕਿਰਿਆ ਰਾਹੀਂ Python ਵਿੱਚ load ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "See also :term:`package`." -msgstr "" +msgstr ":term:`package` ਵੀ ਵੇਖੋ।" msgid "module spec" -msgstr "" +msgstr "ਮੋਡੀਊਲ ਸਪੈਕ" msgid "" "A namespace containing the import-related information used to load a module. " "An instance of :class:`importlib.machinery.ModuleSpec`." msgstr "" +"ਇੱਕ namespace ਜਿਸ ਵਿੱਚ module ਨੂੰ load ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ import-ਸੰਬੰਧੀ ਜਾਣਕਾਰੀ " +"ਹੁੰਦੀ ਹੈ। ਇਹ :class:`importlib.machinery.ModuleSpec` ਦਾ ਇੱਕ instance ਹੁੰਦਾ ਹੈ।" msgid "See also :ref:`module-specs`." -msgstr "" +msgstr ":ref:`module-specs` ਵੀ ਵੇਖੋ।" msgid "MRO" -msgstr "" +msgstr "MRO" msgid "See :term:`method resolution order`." -msgstr "" +msgstr ":term:`method resolution order` ਵੇਖੋ।" msgid "mutable" -msgstr "" +msgstr "ਬਦਲਣਯੋਗ" msgid "" "An :term:`object` with state that is allowed to change during the course of " @@ -1606,21 +2227,32 @@ msgid "" "conditions `. See also :term:`immutable`, :term:`thread-" "safe`, and :term:`concurrent modification`." msgstr "" +"ਇੱਕ :term:`object` ਜਿਸਦੀ state ਪ੍ਰੋਗਰਾਮ ਦੇ ਚੱਲਣ ਦੌਰਾਨ ਬਦਲ ਸਕਦੀ ਹੈ। Multi-threaded " +"programs ਵਿੱਚ threads ਵਿਚਕਾਰ ਸਾਂਝੇ mutable objects ਲਈ :term:`race conditions " +"` ਤੋਂ ਬਚਣ ਵਾਸਤੇ ਧਿਆਨਪੂਰਵਕ synchronization ਦੀ ਲੋੜ ਹੁੰਦੀ " +"ਹੈ। :term:`immutable`, :term:`thread-safe`, ਅਤੇ :term:`concurrent " +"modification` ਵੀ ਵੇਖੋ।" msgid "named tuple" -msgstr "" +msgstr "ਨੇਮਡ ਟਿਊਪਲ" msgid "" "The term \"named tuple\" applies to any type or class that inherits from " "tuple and whose indexable elements are also accessible using named " "attributes. The type or class may have other features as well." msgstr "" +"\"Named tuple\" ਸ਼ਬਦ ਕਿਸੇ ਵੀ ਐਸੀ type ਜਾਂ class ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜੋ tuple ਤੋਂ " +"inherit ਕਰਦੀ ਹੋਵੇ ਅਤੇ ਜਿਸਦੇ indexable elements ਨੂੰ named attributes ਰਾਹੀਂ ਵੀ access " +"ਕੀਤਾ ਜਾ ਸਕੇ। ਉਸ type ਜਾਂ class ਵਿੱਚ ਹੋਰ features ਵੀ ਹੋ ਸਕਦੇ ਹਨ।" msgid "" -"Several built-in types are named tuples, including the values returned by :" -"func:`time.localtime` and :func:`os.stat`. Another example is :data:`sys." -"float_info`::" +"Several built-in types are named tuples, including the values returned " +"by :func:`time.localtime` and :func:`os.stat`. Another example " +"is :data:`sys.float_info`::" msgstr "" +"ਕਈ built-in types named tuples ਹਨ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ :func:`time.localtime` " +"ਅਤੇ :func:`os.stat` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤੀਆਂ values ਸ਼ਾਮਲ ਹਨ। ਇੱਕ ਹੋਰ " +"ਉਦਾਹਰਨ :data:`sys.float_info` ਹੈ::" msgid "" ">>> sys.float_info[1] # indexed access\n" @@ -1630,56 +2262,86 @@ msgid "" ">>> isinstance(sys.float_info, tuple) # kind of tuple\n" "True" msgstr "" +">>> sys.float_info[1] # indexed access\n" +"1024\n" +">>> sys.float_info.max_exp # named field access\n" +"1024\n" +">>> isinstance(sys.float_info, tuple) # kind of tuple\n" +"True" msgid "" "Some named tuples are built-in types (such as the above examples). " "Alternatively, a named tuple can be created from a regular class definition " "that inherits from :class:`tuple` and that defines named fields. Such a " -"class can be written by hand, or it can be created by inheriting :class:" -"`typing.NamedTuple`, or with the factory function :func:`collections." -"namedtuple`. The latter techniques also add some extra methods that may not " -"be found in hand-written or built-in named tuples." -msgstr "" +"class can be written by hand, or it can be created by " +"inheriting :class:`typing.NamedTuple`, or with the factory " +"function :func:`collections.namedtuple`. The latter techniques also add " +"some extra methods that may not be found in hand-written or built-in named " +"tuples." +msgstr "" +"ਕੁਝ named tuples built-in types ਹੁੰਦੇ ਹਨ (ਜਿਵੇਂ ਉੱਪਰ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ)। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਇੱਕ " +"named tuple ਨੂੰ ਐਸੀ ਆਮ class definition ਤੋਂ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ :class:`tuple` ਤੋਂ " +"inherit ਕਰਦੀ ਹੋਵੇ ਅਤੇ named fields ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੋਵੇ। ਐਸੀ class ਨੂੰ ਹੱਥੋਂ ਲਿਖਿਆ ਜਾ " +"ਸਕਦਾ ਹੈ, ਜਾਂ :class:`typing.NamedTuple` ਤੋਂ inherit ਕਰਕੇ " +"ਜਾਂ :func:`collections.namedtuple` factory function ਨਾਲ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ " +"ਆਖ਼ਰੀ ਤਰੀਕੇ ਕੁਝ ਵਾਧੂ methods ਵੀ ਜੋੜਦੇ ਹਨ ਜੋ ਹੱਥੋਂ ਲਿਖੇ ਜਾਂ built-in named tuples ਵਿੱਚ ਨਹੀਂ " +"ਮਿਲ ਸਕਦੇ।" msgid "namespace" -msgstr "" +msgstr "ਨੇਮਸਪੇਸ" msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as well " "as nested namespaces in objects (in methods). Namespaces support modularity " -"by preventing naming conflicts. For instance, the functions :func:`builtins." -"open <.open>` and :func:`os.open` are distinguished by their namespaces. " -"Namespaces also aid readability and maintainability by making it clear which " -"module implements a function. For instance, writing :func:`random.seed` or :" -"func:`itertools.islice` makes it clear that those functions are implemented " -"by the :mod:`random` and :mod:`itertools` modules, respectively." -msgstr "" +"by preventing naming conflicts. For instance, the " +"functions :func:`builtins.open <.open>` and :func:`os.open` are " +"distinguished by their namespaces. Namespaces also aid readability and " +"maintainability by making it clear which module implements a function. For " +"instance, writing :func:`random.seed` or :func:`itertools.islice` makes it " +"clear that those functions are implemented by the :mod:`random` " +"and :mod:`itertools` modules, respectively." +msgstr "" +"ਉਹ ਥਾਂ ਜਿੱਥੇ ਕੋਈ variable ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ। Namespaces ਨੂੰ dictionaries ਵਜੋਂ implement " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Local, global ਅਤੇ built-in namespaces ਤੋਂ ਇਲਾਵਾ objects (methods " +"ਵਿੱਚ) nested namespaces ਵੀ ਹੁੰਦੇ ਹਨ। Namespaces ਨਾਮਾਂ ਦੇ ਟਕਰਾਅ ਨੂੰ ਰੋਕ ਕੇ modularity ਨੂੰ " +"ਸਮਰਥਨ ਦਿੰਦੇ ਹਨ। ਉਦਾਹਰਨ ਲਈ, :func:`builtins.open <.open>` ਅਤੇ :func:`os.open` " +"functions ਆਪਣੇ namespaces ਰਾਹੀਂ ਵੱਖ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। Namespaces readability ਅਤੇ " +"maintainability ਵਿੱਚ ਵੀ ਮਦਦ ਕਰਦੇ ਹਨ ਕਿਉਂਕਿ ਇਹ ਸਪਸ਼ਟ ਕਰਦੇ ਹਨ ਕਿ ਕੋਈ function ਕਿਸ " +"module ਦੁਆਰਾ implement ਕੀਤੀ ਗਈ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, :func:`random.seed` " +"ਜਾਂ :func:`itertools.islice` ਲਿਖਣ ਨਾਲ ਸਪਸ਼ਟ ਹੁੰਦਾ ਹੈ ਕਿ ਇਹ functions " +"ਕ੍ਰਮਵਾਰ :mod:`random` ਅਤੇ :mod:`itertools` modules ਦੁਆਰਾ implement ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ।" msgid "namespace package" -msgstr "" +msgstr "ਨੇਮਸਪੇਸ ਪੈਕੇਜ" msgid "" "A :term:`package` which serves only as a container for subpackages. " "Namespace packages may have no physical representation, and specifically are " "not like a :term:`regular package` because they have no ``__init__.py`` file." msgstr "" +"ਇੱਕ :term:`package` ਜੋ ਸਿਰਫ਼ subpackages ਲਈ container ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। Namespace " +"packages ਦੀ ਕੋਈ physical representation ਨਹੀਂ ਵੀ ਹੋ ਸਕਦੀ, ਅਤੇ ਇਹ :term:`regular " +"package` ਵਰਗੇ ਨਹੀਂ ਹੁੰਦੇ ਕਿਉਂਕਿ ਇਨ੍ਹਾਂ ਵਿੱਚ ``__init__.py`` ਫਾਈਲ ਨਹੀਂ ਹੁੰਦੀ।" msgid "" "Namespace packages allow several individually installable packages to have a " "common parent package. Otherwise, it is recommended to use a :term:`regular " "package`." msgstr "" +"Namespace packages ਕਈ ਵੱਖ-ਵੱਖ install ਹੋਣ ਵਾਲੇ packages ਨੂੰ ਇੱਕ ਸਾਂਝਾ parent package " +"ਰੱਖਣ ਦੀ ਆਗਿਆ ਦਿੰਦੇ ਹਨ। ਨਹੀਂ ਤਾਂ, :term:`regular package` ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਸਿਫ਼ਾਰਸ਼ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "For more information, see :pep:`420` and :ref:`reference-namespace-package`." -msgstr "" +msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :pep:`420` ਅਤੇ :ref:`reference-namespace-package` ਵੇਖੋ।" msgid "See also :term:`module`." -msgstr "" +msgstr ":term:`module` ਵੀ ਵੇਖੋ।" msgid "native code" -msgstr "" +msgstr "ਨੇਟਿਵ ਕੋਡ" msgid "" "Code that is compiled to machine instructions and runs directly on the " @@ -1688,9 +2350,14 @@ msgid "" "Rust or Fortran code in :term:`extension modules ` that " "can be called from Python. See also :term:`extension module`." msgstr "" +"ਉਹ code ਜੋ machine instructions ਵਿੱਚ compile ਹੁੰਦਾ ਹੈ ਅਤੇ processor ਉੱਤੇ ਸਿੱਧਾ ਚਲਦਾ " +"ਹੈ, ਨਾ ਕਿ interpreted code ਜਾਂ virtual machine ਵਿੱਚ ਚੱਲਣ ਵਾਲਾ code। Python ਦੇ " +"ਸੰਦਰਭ ਵਿੱਚ, native code ਆਮ ਤੌਰ 'ਤੇ :term:`extension modules ` " +"ਵਿੱਚ ਮੌਜੂਦ C, C++, Rust ਜਾਂ Fortran code ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿਸਨੂੰ Python ਤੋਂ call ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ। :term:`extension module` ਵੀ ਵੇਖੋ।" msgid "nested scope" -msgstr "" +msgstr "ਨੇਸਟਡ ਸਕੋਪ" msgid "" "The ability to refer to a variable in an enclosing definition. For " @@ -1700,19 +2367,31 @@ msgid "" "the innermost scope. Likewise, global variables read and write to the " "global namespace. The :keyword:`nonlocal` allows writing to outer scopes." msgstr "" +"ਕਿਸੇ enclosing definition ਵਿੱਚ ਮੌਜੂਦ variable ਨੂੰ ਸੰਬੋਧਨ ਕਰਨ ਦੀ ਸਮਰੱਥਾ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ " +"function ਦੇ ਅੰਦਰ ਪਰਿਭਾਸ਼ਿਤ ਹੋਈ ਹੋਰ function ਬਾਹਰੀ function ਦੇ variables ਨੂੰ ਵਰਤ ਸਕਦੀ " +"ਹੈ। ਧਿਆਨ ਰਹੇ ਕਿ nested scopes ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਿਰਫ਼ reference ਲਈ ਕੰਮ ਕਰਦੀਆਂ ਹਨ, " +"assignment ਲਈ ਨਹੀਂ। Local variables ਸਭ ਤੋਂ ਅੰਦਰਲੇ scope ਵਿੱਚ ਪੜ੍ਹੇ ਅਤੇ ਲਿਖੇ ਜਾਂਦੇ ਹਨ। ਇਸੇ " +"ਤਰ੍ਹਾਂ global variables global namespace ਵਿੱਚ ਪੜ੍ਹੇ ਅਤੇ ਲਿਖੇ ਜਾਂਦੇ " +"ਹਨ। :keyword:`nonlocal` ਬਾਹਰੀ scopes ਵਿੱਚ ਲਿਖਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।" msgid "new-style class" -msgstr "" +msgstr "ਨਿਊ-ਸਟਾਈਲ ਕਲਾਸ" msgid "" "Old name for the flavor of classes now used for all class objects. In " "earlier Python versions, only new-style classes could use Python's newer, " -"versatile features like :attr:`~object.__slots__`, descriptors, properties, :" -"meth:`~object.__getattribute__`, class methods, and static methods." +"versatile features like :attr:`~object.__slots__`, descriptors, " +"properties, :meth:`~object.__getattribute__`, class methods, and static " +"methods." msgstr "" +"ਉਨ੍ਹਾਂ classes ਲਈ ਪੁਰਾਣਾ ਨਾਮ ਜੋ ਹੁਣ ਸਾਰੇ class objects ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। Python ਦੇ " +"ਪੁਰਾਣੇ versions ਵਿੱਚ ਸਿਰਫ਼ new-style classes ਹੀ Python ਦੀਆਂ ਨਵੀਆਂ ਅਤੇ ਲਚਕੀਲੀਆਂ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਜਿਵੇਂ :attr:`~object.__slots__`, descriptors, " +"properties, :meth:`~object.__getattribute__`, class methods ਅਤੇ static " +"methods ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੀਆਂ ਸਨ।" msgid "non-deterministic" -msgstr "" +msgstr "ਗੈਰ-ਨਿਰਧਾਰਤ" msgid "" "Behavior where the outcome of a program can vary between executions with the " @@ -1722,17 +2401,25 @@ msgid "" "using :term:`locks ` and other :term:`synchronization primitives " "` helps ensure deterministic behavior." msgstr "" +"ਐਸਾ ਵਿਹਾਰ ਜਿਸ ਵਿੱਚ ਇੱਕੋ inputs ਹੋਣ ਦੇ ਬਾਵਜੂਦ ਪ੍ਰੋਗਰਾਮ ਦਾ ਨਤੀਜਾ ਵੱਖ-ਵੱਖ executions ਵਿੱਚ " +"ਬਦਲ ਸਕਦਾ ਹੈ। Multi-threaded programs ਵਿੱਚ non-deterministic behavior " +"ਅਕਸਰ :term:`race conditions ` ਕਾਰਨ ਹੁੰਦਾ ਹੈ, ਜਿੱਥੇ threads ਦੀ " +"timing ਜਾਂ interleaving ਨਤੀਜੇ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੀ ਹੈ। :term:`locks ` ਅਤੇ " +"ਹੋਰ :term:`synchronization primitives ` ਦੀ ਸਹੀ ਵਰਤੋਂ " +"deterministic behavior ਯਕੀਨੀ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦੀ ਹੈ।" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "" "Any data with state (attributes or value) and defined behavior (methods). " "Also the ultimate base class of any :term:`new-style class`." msgstr "" +"ਕੋਈ ਵੀ data ਜਿਸਦੀ state (attributes ਜਾਂ value) ਅਤੇ ਪਰਿਭਾਸ਼ਿਤ behavior (methods) " +"ਹੋਵੇ। ਇਹ ਕਿਸੇ ਵੀ :term:`new-style class` ਦੀ ਅੰਤਿਮ base class ਵੀ ਹੈ।" msgid "optimized scope" -msgstr "" +msgstr "ਆਪਟੀਮਾਈਜ਼ਡ ਸਕੋਪ" msgid "" "A scope where target local variable names are reliably known to the compiler " @@ -1743,9 +2430,16 @@ msgid "" "relying on a known set of local and nonlocal variable names are restricted " "to optimized scopes." msgstr "" +"ਇੱਕ scope ਜਿਸ ਵਿੱਚ code compile ਹੋਣ ਸਮੇਂ target local variable names compiler ਨੂੰ " +"ਭਰੋਸੇਯੋਗ ਤੌਰ 'ਤੇ ਪਤਾ ਹੁੰਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਇਨ੍ਹਾਂ names ਲਈ read ਅਤੇ write access ਨੂੰ optimize " +"ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Functions, generators, coroutines, comprehensions ਅਤੇ " +"generator expressions ਦੇ local namespaces ਇਸ ਤਰੀਕੇ ਨਾਲ optimized ਹੁੰਦੇ ਹਨ। ਨੋਟ: " +"interpreter ਦੀਆਂ ਜ਼ਿਆਦਾਤਰ optimizations ਸਾਰੇ scopes 'ਤੇ ਲਾਗੂ ਹੁੰਦੀਆਂ ਹਨ; ਸਿਰਫ਼ ਉਹ " +"optimizations ਜੋ local ਅਤੇ nonlocal variable names ਦੇ ਜਾਣੇ-ਪਛਾਣੇ ਸਮੂਹ 'ਤੇ ਨਿਰਭਰ " +"ਹੁੰਦੀਆਂ ਹਨ, optimized scopes ਤੱਕ ਸੀਮਿਤ ਰਹਿੰਦੀਆਂ ਹਨ।" msgid "optional module" -msgstr "" +msgstr "ਵਿਕਲਪਿਕ ਮੋਡੀਊਲ" msgid "" "An :term:`extension module` that is part of the :term:`standard library`, " @@ -1753,26 +2447,34 @@ msgid "" "third-party libraries or because the module is not available for a given " "platform." msgstr "" +"ਇੱਕ :term:`extension module` ਜੋ :term:`standard library` ਦਾ ਹਿੱਸਾ ਹੁੰਦਾ ਹੈ, " +"ਪਰ :term:`CPython` ਦੇ ਕੁਝ builds ਵਿੱਚ ਮੌਜੂਦ ਨਹੀਂ ਵੀ ਹੋ ਸਕਦਾ, ਆਮ ਤੌਰ 'ਤੇ third-party " +"libraries ਦੀ ਗੈਰਮੌਜੂਦਗੀ ਜਾਂ ਕਿਸੇ ਖਾਸ platform ਲਈ module ਦੇ ਉਪਲਬਧ ਨਾ ਹੋਣ ਕਾਰਨ।" msgid "" "See :ref:`optional-module-requirements` for a list of optional modules that " "require third-party libraries." msgstr "" +"Third-party libraries ਦੀ ਲੋੜ ਵਾਲੇ optional modules ਦੀ ਸੂਚੀ ਲਈ :ref:`optional-" +"module-requirements` ਵੇਖੋ।" msgid "package" -msgstr "" +msgstr "ਪੈਕੇਜ" msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with a ``__path__`` " "attribute." msgstr "" +"ਇੱਕ Python :term:`module` ਜੋ submodules ਜਾਂ ਦੁਹਰਾਏ ਤੌਰ 'ਤੇ subpackages ਰੱਖ ਸਕਦਾ ਹੈ। " +"ਤਕਨੀਕੀ ਤੌਰ 'ਤੇ, package ਇੱਕ Python module ਹੁੰਦਾ ਹੈ ਜਿਸਦੇ ਕੋਲ ``__path__`` attribute " +"ਹੁੰਦਾ ਹੈ।" msgid "See also :term:`regular package` and :term:`namespace package`." -msgstr "" +msgstr ":term:`regular package` ਅਤੇ :term:`namespace package` ਵੀ ਵੇਖੋ।" msgid "parallelism" -msgstr "" +msgstr "ਪੈਰਾਲਲਿਜ਼ਮ" msgid "" "Executing multiple operations at the same time (e.g. on multiple CPU " @@ -1783,15 +2485,25 @@ msgid "" "the GIL. In :term:`free-threaded ` Python, multiple Python " "threads can run Python code simultaneously on different cores." msgstr "" +"ਇੱਕੋ ਸਮੇਂ ਕਈ operations ਚਲਾਉਣਾ (ਉਦਾਹਰਨ ਲਈ ਕਈ CPU cores ਉੱਤੇ)। :term:`global " +"interpreter lock (GIL) ` ਵਾਲੀਆਂ Python builds ਵਿੱਚ ਇੱਕ " +"ਸਮੇਂ ਸਿਰਫ਼ ਇੱਕ thread ਹੀ Python bytecode ਚਲਾ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਕਈ CPU cores ਦਾ ਲਾਭ " +"ਲੈਣ ਲਈ ਆਮ ਤੌਰ 'ਤੇ ਕਈ processes (ਜਿਵੇਂ :mod:`multiprocessing`) ਜਾਂ ਉਹ native " +"extensions ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਜੋ GIL ਨੂੰ release ਕਰਦੀਆਂ ਹਨ। :term:`free-threaded " +"` Python ਵਿੱਚ ਕਈ Python threads ਵੱਖ-ਵੱਖ cores ਉੱਤੇ ਇੱਕੋ ਸਮੇਂ Python " +"code ਚਲਾ ਸਕਦੀਆਂ ਹਨ।" msgid "parameter" -msgstr "" +msgstr "ਪੈਰਾਮੀਟਰ" msgid "" "A named entity in a :term:`function` (or method) definition that specifies " "an :term:`argument` (or in some cases, arguments) that the function can " "accept. There are five kinds of parameter:" msgstr "" +":term:`function` (ਜਾਂ method) ਦੀ definition ਵਿੱਚ ਇੱਕ ਨਾਮਿਤ ਇਕਾਈ ਜੋ " +"ਉਸ :term:`argument` (ਜਾਂ ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ arguments) ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ ਜੋ function " +"ਸਵੀਕਾਰ ਕਰ ਸਕਦੀ ਹੈ। Parameter ਦੀਆਂ ਪੰਜ ਕਿਸਮਾਂ ਹੁੰਦੀਆਂ ਹਨ:" msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " @@ -1799,9 +2511,12 @@ msgid "" "`. This is the default kind of parameter, for example *foo* and " "*bar* in the following::" msgstr "" +":dfn:`positional-or-keyword`: ਉਹ argument ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ :term:`positionally " +"` ਜਾਂ :term:`keyword argument ` ਵਜੋਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ " +"parameter ਦੀ ਮੂਲ ਕਿਸਮ ਹੈ, ਉਦਾਹਰਨ ਲਈ ਹੇਠਾਂ ਦਿੱਤੇ *foo* ਅਤੇ *bar*::" msgid "def func(foo, bar=None): ..." -msgstr "" +msgstr "def func(foo, bar=None): ..." msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only by " @@ -1809,9 +2524,13 @@ msgid "" "character in the parameter list of the function definition after them, for " "example *posonly1* and *posonly2* in the following::" msgstr "" +":dfn:`positional-only`: ਉਹ argument ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਸਿਰਫ਼ position ਰਾਹੀਂ ਦਿੱਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ। Positional-only parameters ਨੂੰ function definition ਦੀ parameter list " +"ਵਿੱਚ ਉਨ੍ਹਾਂ ਤੋਂ ਬਾਅਦ ``/`` ਚਿੰਨ੍ਹ ਜੋੜ ਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਉਦਾਹਰਨ ਲਈ " +"*posonly1* ਅਤੇ *posonly2*::" msgid "def func(posonly1, posonly2, /, positional_or_keyword): ..." -msgstr "" +msgstr "def func(posonly1, posonly2, /, positional_or_keyword): ..." msgid "" ":dfn:`keyword-only`: specifies an argument that can be supplied only by " @@ -1820,9 +2539,13 @@ msgid "" "definition before them, for example *kw_only1* and *kw_only2* in the " "following::" msgstr "" +":dfn:`keyword-only`: ਉਹ argument ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਸਿਰਫ਼ keyword ਰਾਹੀਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ " +"ਹੈ। Keyword-only parameters ਨੂੰ function definition ਦੀ parameter list ਵਿੱਚ ਉਨ੍ਹਾਂ " +"ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ var-positional parameter ਜਾਂ ਖਾਲੀ ``*`` ਜੋੜ ਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ " +"ਹੈ, ਉਦਾਹਰਨ ਲਈ *kw_only1* ਅਤੇ *kw_only2*::" msgid "def func(arg, *, kw_only1, kw_only2): ..." -msgstr "" +msgstr "def func(arg, *, kw_only1, kw_only2): ..." msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional " @@ -1831,9 +2554,13 @@ msgid "" "prepending the parameter name with ``*``, for example *args* in the " "following::" msgstr "" +":dfn:`var-positional`: ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ positional arguments ਦੀ ਮਨਚਾਹੀ ਲੜੀ ਦਿੱਤੀ " +"ਜਾ ਸਕਦੀ ਹੈ (ਉਨ੍ਹਾਂ positional arguments ਤੋਂ ਇਲਾਵਾ ਜੋ ਹੋਰ parameters ਪਹਿਲਾਂ ਹੀ ਸਵੀਕਾਰ " +"ਕਰਦੇ ਹਨ)। ਐਸਾ parameter ਉਸਦੇ ਨਾਮ ਤੋਂ ਪਹਿਲਾਂ ``*`` ਲਗਾ ਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, " +"ਉਦਾਹਰਨ ਲਈ *args*::" msgid "def func(*args, **kwargs): ..." -msgstr "" +msgstr "def func(*args, **kwargs): ..." msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can be " @@ -1841,21 +2568,30 @@ msgid "" "parameters). Such a parameter can be defined by prepending the parameter " "name with ``**``, for example *kwargs* in the example above." msgstr "" +":dfn:`var-keyword`: ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਮਨਚਾਹੀ ਗਿਣਤੀ ਦੇ keyword arguments ਦਿੱਤੇ ਜਾ ਸਕਦੇ " +"ਹਨ (ਉਨ੍ਹਾਂ keyword arguments ਤੋਂ ਇਲਾਵਾ ਜੋ ਹੋਰ parameters ਪਹਿਲਾਂ ਹੀ ਸਵੀਕਾਰ ਕਰਦੇ ਹਨ)। " +"ਐਸਾ parameter ਉਸਦੇ ਨਾਮ ਤੋਂ ਪਹਿਲਾਂ ``**`` ਲਗਾ ਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਉੱਪਰਲੇ " +"ਉਦਾਹਰਨ ਵਿੱਚ *kwargs*।" msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." msgstr "" +"Parameters optional ਅਤੇ required ਦੋਵੇਂ ਕਿਸਮ ਦੇ arguments ਦਰਸਾ ਸਕਦੇ ਹਨ, ਅਤੇ ਕੁਝ " +"optional arguments ਲਈ default values ਵੀ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹਨ।" msgid "" "See also the :term:`argument` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " -"the :class:`inspect.Parameter` class, the :ref:`function` section, and :pep:" -"`362`." +"the :class:`inspect.Parameter` class, the :ref:`function` section, " +"and :pep:`362`." msgstr "" +":term:`argument` glossary entry, :ref:`the difference between arguments and " +"parameters `, :class:`inspect.Parameter` " +"class, :ref:`function` section ਅਤੇ :pep:`362` ਵੀ ਵੇਖੋ।" msgid "per-object lock" -msgstr "" +msgstr "ਪ੍ਰਤੀ-ਆਬਜੈਕਟ ਲਾਕ" msgid "" "A :term:`lock` associated with an individual object instance rather than a " @@ -1866,62 +2602,88 @@ msgid "" "object lock prevent other locking operations on the same object from " "proceeding, but do not block :term:`lock-free` operations." msgstr "" +"ਇੱਕ :term:`lock` ਜੋ ਸਾਰੇ objects ਵਿੱਚ ਸਾਂਝੇ global lock ਦੀ ਬਜਾਇ ਕਿਸੇ ਵਿਅਕਤੀਗਤ " +"object instance ਨਾਲ ਸੰਬੰਧਿਤ ਹੁੰਦਾ ਹੈ। :term:`free-threaded ` " +"Python ਵਿੱਚ :class:`dict` ਅਤੇ :class:`list` ਵਰਗੇ built-in types per-object " +"locks ਵਰਤਦੇ ਹਨ ਤਾਂ ਜੋ ਵੱਖ-ਵੱਖ objects ਉੱਤੇ concurrent operations ਹੋ ਸਕਣ, ਜਦਕਿ ਇੱਕੋ " +"object ਉੱਤੇ operations ਨੂੰ ਕ੍ਰਮਬੱਧ ਕੀਤਾ ਜਾਵੇ। ਜਿਹੜੀਆਂ operations per-object lock " +"ਰੱਖਦੀਆਂ ਹਨ, ਉਹ ਉਸੇ object ਉੱਤੇ ਹੋਰ locking operations ਨੂੰ ਰੋਕਦੀਆਂ ਹਨ, ਪਰ :term:`lock-" +"free` operations ਨੂੰ ਨਹੀਂ ਰੋਕਦੀਆਂ।" msgid "path entry" -msgstr "" +msgstr "ਪਾਥ ਐਂਟਰੀ" msgid "" "A single location on the :term:`import path` which the :term:`path based " "finder` consults to find modules for importing." msgstr "" +":term:`import path` ਉੱਤੇ ਇੱਕ ਇਕੱਲੀ location ਜਿਸਨੂੰ :term:`path based finder` " +"import ਕਰਨ ਲਈ modules ਲੱਭਣ ਵਾਸਤੇ ਵੇਖਦਾ ਹੈ।" msgid "path entry finder" -msgstr "" +msgstr "ਪਾਥ ਐਂਟਰੀ ਫਾਈਂਡਰ" msgid "" -"A :term:`finder` returned by a callable on :data:`sys.path_hooks` (i.e. a :" -"term:`path entry hook`) which knows how to locate modules given a :term:" -"`path entry`." +"A :term:`finder` returned by a callable on :data:`sys.path_hooks` (i.e. " +"a :term:`path entry hook`) which knows how to locate modules given " +"a :term:`path entry`." msgstr "" +":data:`sys.path_hooks` ਉੱਤੇ ਮੌਜੂਦ callable (ਅਰਥਾਤ :term:`path entry hook`) ਦੁਆਰਾ " +"ਵਾਪਸ ਕੀਤਾ ਗਿਆ :term:`finder`, ਜੋ :term:`path entry` ਦਿੱਤੇ ਜਾਣ 'ਤੇ modules ਨੂੰ ਲੱਭਣਾ " +"ਜਾਣਦਾ ਹੈ।" msgid "" "See :class:`importlib.abc.PathEntryFinder` for the methods that path entry " "finders implement." msgstr "" +"path entry finders ਦੁਆਰਾ implement ਕੀਤੀਆਂ methods " +"ਲਈ :class:`importlib.abc.PathEntryFinder` ਵੇਖੋ।" msgid "path entry hook" -msgstr "" +msgstr "ਪਾਥ ਐਂਟਰੀ ਹੁੱਕ" msgid "" "A callable on the :data:`sys.path_hooks` list which returns a :term:`path " "entry finder` if it knows how to find modules on a specific :term:`path " "entry`." msgstr "" +":data:`sys.path_hooks` ਸੂਚੀ ਵਿੱਚ ਮੌਜੂਦ ਇੱਕ callable ਜੋ :term:`path entry finder` " +"ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੇਕਰ ਉਸਨੂੰ ਕਿਸੇ ਖਾਸ :term:`path entry` ਉੱਤੇ modules ਲੱਭਣ ਦਾ ਤਰੀਕਾ ਪਤਾ " +"ਹੋਵੇ।" msgid "path based finder" -msgstr "" +msgstr "ਪਾਥ ਆਧਾਰਿਤ ਫਾਈਂਡਰ" msgid "" "One of the default :term:`meta path finders ` which " "searches an :term:`import path` for modules." msgstr "" +"ਮੂਲ :term:`meta path finders ` ਵਿੱਚੋਂ ਇੱਕ ਜੋ modules " +"ਲਈ :term:`import path` ਵਿੱਚ ਖੋਜ ਕਰਦਾ ਹੈ।" msgid "path-like object" -msgstr "" - -msgid "" -"An object representing a file system path. A path-like object is either a :" -"class:`str` or :class:`bytes` object representing a path, or an object " -"implementing the :class:`os.PathLike` protocol. An object that supports the :" -"class:`os.PathLike` protocol can be converted to a :class:`str` or :class:" -"`bytes` file system path by calling the :func:`os.fspath` function; :func:" -"`os.fsdecode` and :func:`os.fsencode` can be used to guarantee a :class:" -"`str` or :class:`bytes` result instead, respectively. Introduced by :pep:" -"`519`." -msgstr "" +msgstr "ਪਾਥ-ਸਮਾਨ ਆਬਜੈਕਟ" + +msgid "" +"An object representing a file system path. A path-like object is either " +"a :class:`str` or :class:`bytes` object representing a path, or an object " +"implementing the :class:`os.PathLike` protocol. An object that supports " +"the :class:`os.PathLike` protocol can be converted to a :class:`str` " +"or :class:`bytes` file system path by calling the :func:`os.fspath` " +"function; :func:`os.fsdecode` and :func:`os.fsencode` can be used to " +"guarantee a :class:`str` or :class:`bytes` result instead, respectively. " +"Introduced by :pep:`519`." +msgstr "" +"ਇੱਕ ਆਬਜੈਕਟ ਜੋ file system path ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। Path-like object ਜਾਂ ਤਾਂ :class:`str` " +"ਜਾਂ :class:`bytes` ਆਬਜੈਕਟ ਹੁੰਦਾ ਹੈ ਜੋ path ਦਰਸਾਉਂਦਾ ਹੈ, ਜਾਂ ਫਿਰ :class:`os.PathLike` " +"protocol ਨੂੰ ਲਾਗੂ ਕਰਨ ਵਾਲਾ ਆਬਜੈਕਟ ਹੁੰਦਾ ਹੈ। :class:`os.PathLike` protocol ਨੂੰ ਸਮਰਥਨ " +"ਦੇਣ ਵਾਲੇ ਆਬਜੈਕਟ ਨੂੰ :func:`os.fspath` function ਰਾਹੀਂ :class:`str` " +"ਜਾਂ :class:`bytes` file system path ਵਿੱਚ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ; :func:`os.fsdecode` " +"ਅਤੇ :func:`os.fsencode` ਕ੍ਰਮਵਾਰ :class:`str` ਜਾਂ :class:`bytes` ਨਤੀਜੇ ਦੀ ਗਾਰੰਟੀ " +"ਦੇਣ ਲਈ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਇਹ :pep:`519` ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "PEP" -msgstr "" +msgstr "PEP" msgid "" "Python Enhancement Proposal. A PEP is a design document providing " @@ -1929,6 +2691,10 @@ msgid "" "or its processes or environment. PEPs should provide a concise technical " "specification and a rationale for proposed features." msgstr "" +"Python Enhancement Proposal। ਇੱਕ PEP ਇੱਕ ਡਿਜ਼ਾਇਨ ਦਸਤਾਵੇਜ਼ ਹੁੰਦਾ ਹੈ ਜੋ Python ਕਮਿਊਨਿਟੀ " +"ਨੂੰ ਜਾਣਕਾਰੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਾਂ Python, ਇਸ ਦੀਆਂ ਪ੍ਰਕਿਰਿਆਵਾਂ ਜਾਂ ਇਸਦੇ ਵਾਤਾਵਰਣ ਲਈ ਨਵੀਆਂ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਵੇਰਵਾ ਦਿੰਦਾ ਹੈ। PEPs ਵਿੱਚ ਸੰਖੇਪ ਤਕਨੀਕੀ ਵਿਵਰਣ ਅਤੇ ਪ੍ਰਸਤਾਵਿਤ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ " +"ਤਰਕ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " @@ -1937,23 +2703,29 @@ msgid "" "responsible for building consensus within the community and documenting " "dissenting opinions." msgstr "" +"PEPs ਦਾ ਉਦੇਸ਼ ਵੱਡੀਆਂ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਪ੍ਰਸਤਾਵ ਕਰਨ, ਕਿਸੇ ਮੁੱਦੇ ਉੱਤੇ ਕਮਿਊਨਿਟੀ ਦੀ ਰਾਏ ਇਕੱਠੀ " +"ਕਰਨ ਅਤੇ Python ਵਿੱਚ ਲਏ ਗਏ ਡਿਜ਼ਾਇਨ ਫੈਸਲਿਆਂ ਨੂੰ ਦਸਤਾਵੇਜ਼ਬੱਧ ਕਰਨ ਲਈ ਮੁੱਖ ਪ੍ਰਣਾਲੀ ਵਜੋਂ ਕੰਮ ਕਰਨਾ " +"ਹੈ। PEP ਦਾ ਲੇਖਕ ਕਮਿਊਨਿਟੀ ਵਿੱਚ ਸਹਿਮਤੀ ਬਣਾਉਣ ਅਤੇ ਵਿਰੋਧੀ ਵਿਚਾਰਾਂ ਨੂੰ ਦਰਜ ਕਰਨ ਲਈ ਜ਼ਿੰਮੇਵਾਰ " +"ਹੁੰਦਾ ਹੈ।" msgid "See :pep:`1`." -msgstr "" +msgstr ":pep:`1` ਵੇਖੋ।" msgid "portion" -msgstr "" +msgstr "ਹਿੱਸਾ" msgid "" "A set of files in a single directory (possibly stored in a zip file) that " "contribute to a namespace package, as defined in :pep:`420`." msgstr "" +"ਇੱਕ ਹੀ directory ਵਿੱਚ ਫਾਈਲਾਂ ਦਾ ਸਮੂਹ (ਸੰਭਵ ਹੈ zip file ਵਿੱਚ ਸੰਭਾਲਿਆ ਗਿਆ ਹੋਵੇ) " +"ਜੋ :pep:`420` ਅਨੁਸਾਰ namespace package ਵਿੱਚ ਯੋਗਦਾਨ ਪਾਉਂਦਾ ਹੈ।" msgid "positional argument" -msgstr "" +msgstr "ਸਥਿਤੀ-ਆਧਾਰਿਤ ਆਰਗੂਮੈਂਟ" msgid "provisional API" -msgstr "" +msgstr "ਅਸਥਾਈ API" msgid "" "A provisional API is one which has been deliberately excluded from the " @@ -1964,36 +2736,49 @@ msgid "" "will not be made gratuitously -- they will occur only if serious fundamental " "flaws are uncovered that were missed prior to the inclusion of the API." msgstr "" +"ਅਸਥਾਈ API ਉਹ ਹੁੰਦੀ ਹੈ ਜਿਸਨੂੰ ਜਾਣ-ਬੁੱਝ ਕੇ standard library ਦੀ backward compatibility " +"ਗਾਰੰਟੀ ਤੋਂ ਬਾਹਰ ਰੱਖਿਆ ਗਿਆ ਹੋਵੇ। ਹਾਲਾਂਕਿ ਐਸੀਆਂ interfaces ਵਿੱਚ ਵੱਡੇ ਬਦਲਾਵਾਂ ਦੀ ਉਮੀਦ ਨਹੀਂ " +"ਹੁੰਦੀ, ਪਰ ਜਦ ਤੱਕ ਉਹ provisional ਚਿੰਨ੍ਹਿਤ ਹਨ, core developers ਦੀ ਲੋੜ ਅਨੁਸਾਰ backward " +"incompatible ਬਦਲਾਅ (ਇੱਥੋਂ ਤੱਕ ਕਿ interface ਨੂੰ ਹਟਾਉਣਾ ਵੀ) ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਐਸੇ ਬਦਲਾਅ " +"ਬਿਨਾਂ ਕਾਰਨ ਨਹੀਂ ਕੀਤੇ ਜਾਣਗੇ; ਇਹ ਸਿਰਫ਼ ਉਸ ਵੇਲੇ ਕੀਤੇ ਜਾਣਗੇ ਜਦੋਂ API ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਛੁੱਟ " +"ਗਈਆਂ ਗੰਭੀਰ ਮੂਲ ਖਾਮੀਆਂ ਸਾਹਮਣੇ ਆਉਣ।" msgid "" "Even for provisional APIs, backwards incompatible changes are seen as a " "\"solution of last resort\" - every attempt will still be made to find a " "backwards compatible resolution to any identified problems." msgstr "" +"ਅਸਥਾਈ APIs ਲਈ ਵੀ backward incompatible ਬਦਲਾਵਾਂ ਨੂੰ \"ਆਖਰੀ ਹੱਲ\" ਵਜੋਂ ਵੇਖਿਆ ਜਾਂਦਾ ਹੈ — " +"ਪਛਾਣੀਆਂ ਗਈਆਂ ਸਮੱਸਿਆਵਾਂ ਲਈ backward compatible ਹੱਲ ਲੱਭਣ ਦੀ ਹਰ ਸੰਭਵ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਵੇਗੀ।" msgid "" "This process allows the standard library to continue to evolve over time, " "without locking in problematic design errors for extended periods of time. " "See :pep:`411` for more details." msgstr "" +"ਇਹ ਪ੍ਰਕਿਰਿਆ standard library ਨੂੰ ਸਮੇਂ ਦੇ ਨਾਲ ਵਿਕਸਿਤ ਹੋਣ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ, ਬਿਨਾਂ " +"ਸਮੱਸਿਆਪੂਰਨ ਡਿਜ਼ਾਇਨ ਗਲਤੀਆਂ ਨੂੰ ਲੰਬੇ ਸਮੇਂ ਲਈ ਸਥਿਰ ਕੀਤੇ। ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ :pep:`411` ਵੇਖੋ।" msgid "provisional package" -msgstr "" +msgstr "ਅਸਥਾਈ ਪੈਕੇਜ" msgid "See :term:`provisional API`." -msgstr "" +msgstr ":term:`provisional API` ਵੇਖੋ।" msgid "Python 3000" -msgstr "" +msgstr "Python 3000" msgid "" "Nickname for the Python 3.x release line (coined long ago when the release " "of version 3 was something in the distant future.) This is also abbreviated " "\"Py3k\"." msgstr "" +"Python 3.x release ਲੜੀ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਉਪਨਾਮ (ਜਦੋਂ version 3 ਦੀ release ਕਾਫ਼ੀ " +"ਦੂਰਲੇ ਭਵਿੱਖ ਦੀ ਗੱਲ ਸੀ ਤਦੋਂ ਇਹ ਨਾਮ ਰੱਖਿਆ ਗਿਆ ਸੀ)। ਇਸਨੂੰ ਸੰਖੇਪ ਵਿੱਚ \"Py3k\" ਵੀ ਕਿਹਾ ਜਾਂਦਾ " +"ਹੈ।" msgid "Pythonic" -msgstr "" +msgstr "ਪਾਇਥੋਨਿਕ" msgid "" "An idea or piece of code which closely follows the most common idioms of the " @@ -2003,22 +2788,31 @@ msgid "" "languages don't have this type of construct, so people unfamiliar with " "Python sometimes use a numerical counter instead::" msgstr "" +"ਕੋਈ ਵਿਚਾਰ ਜਾਂ ਕੋਡ ਦਾ ਹਿੱਸਾ ਜੋ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਦੇ ਆਮ ਸਿਧਾਂਤਾਂ ਦੀ ਬਜਾਇ Python ਭਾਸ਼ਾ ਦੇ ਸਭ ਤੋਂ ਆਮ " +"idioms ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, Python ਵਿੱਚ ਇੱਕ ਆਮ idiom :keyword:`for` " +"statement ਦੀ ਵਰਤੋਂ ਕਰਕੇ iterable ਦੇ ਸਾਰੇ elements ਉੱਤੇ loop ਚਲਾਉਣਾ ਹੈ। ਕਈ ਹੋਰ ਭਾਸ਼ਾਵਾਂ " +"ਵਿੱਚ ਇਹ ਬਣਤਰ ਨਹੀਂ ਹੁੰਦੀ, ਇਸ ਲਈ Python ਨਾਲ ਅਣਜਾਣ ਲੋਕ ਕਈ ਵਾਰ ਇਸਦੀ ਥਾਂ ਸੰਖਿਆਤਮਕ " +"counter ਵਰਤਦੇ ਹਨ::" msgid "" "for i in range(len(food)):\n" " print(food[i])" msgstr "" +"for i in range(len(food)):\n" +" print(food[i])" msgid "As opposed to the cleaner, Pythonic method::" -msgstr "" +msgstr "ਇਸਦੇ ਉਲਟ ਹੋਰ ਸਾਫ਼ ਅਤੇ Pythonic ਤਰੀਕਾ ਇਹ ਹੈ::" msgid "" "for piece in food:\n" " print(piece)" msgstr "" +"for piece in food:\n" +" print(piece)" msgid "qualified name" -msgstr "" +msgstr "ਯੋਗ ਨਾਮ" msgid "" "A dotted name showing the \"path\" from a module's global scope to a class, " @@ -2026,6 +2820,9 @@ msgid "" "top-level functions and classes, the qualified name is the same as the " "object's name::" msgstr "" +"ਇੱਕ dotted ਨਾਮ ਜੋ :pep:`3155` ਅਨੁਸਾਰ ਕਿਸੇ module ਦੇ global scope ਤੋਂ ਉਸ module ਵਿੱਚ " +"ਪਰਿਭਾਸ਼ਿਤ class, function ਜਾਂ method ਤੱਕ ਦਾ \"path\" ਦਰਸਾਉਂਦਾ ਹੈ। Top-level " +"functions ਅਤੇ classes ਲਈ qualified name ਆਬਜੈਕਟ ਦੇ ਨਾਮ ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ ਹੈ::" msgid "" ">>> class C:\n" @@ -2040,35 +2837,61 @@ msgid "" ">>> C.D.meth.__qualname__\n" "'C.D.meth'" msgstr "" +">>> class C:\n" +"... class D:\n" +"... def meth(self):\n" +"... pass\n" +"...\n" +">>> C.__qualname__\n" +"'C'\n" +">>> C.D.__qualname__\n" +"'C.D'\n" +">>> C.D.meth.__qualname__\n" +"'C.D.meth'" msgid "" "When used to refer to modules, the *fully qualified name* means the entire " -"dotted path to the module, including any parent packages, e.g. ``email.mime." -"text``::" +"dotted path to the module, including any parent packages, e.g. " +"``email.mime.text``::" msgstr "" +"ਜਦੋਂ modules ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, *fully qualified name* ਦਾ ਅਰਥ module ਤੱਕ ਪੂਰਾ " +"dotted path ਹੁੰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਸਾਰੇ parent packages ਵੀ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ " +"``email.mime.text``::" msgid "" ">>> import email.mime.text\n" ">>> email.mime.text.__name__\n" "'email.mime.text'" msgstr "" +">>> import email.mime.text\n" +">>> email.mime.text.__name__\n" +"'email.mime.text'" msgid "race condition" -msgstr "" +msgstr "ਰੇਸ ਕੰਡੀਸ਼ਨ" msgid "" "A condition of a program where the behavior depends on the relative timing " "or ordering of events, particularly in multi-threaded programs. Race " "conditions can lead to :term:`non-deterministic` behavior and bugs that are " "difficult to reproduce. A :term:`data race` is a specific type of race " -"condition involving unsynchronized access to shared memory. The :term:" -"`LBYL` coding style is particularly susceptible to race conditions in multi-" -"threaded code. Using :term:`locks ` and other :term:`synchronization " -"primitives ` helps prevent race conditions." -msgstr "" +"condition involving unsynchronized access to shared memory. " +"The :term:`LBYL` coding style is particularly susceptible to race conditions " +"in multi-threaded code. Using :term:`locks ` and " +"other :term:`synchronization primitives ` helps " +"prevent race conditions." +msgstr "" +"ਪ੍ਰੋਗਰਾਮ ਦੀ ਉਹ ਸਥਿਤੀ ਜਿੱਥੇ ਵਿਹਾਰ ਘਟਨਾਵਾਂ ਦੇ ਆਪਸੀ ਸਮੇਂ ਜਾਂ ਕ੍ਰਮ ਉੱਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ, ਖ਼ਾਸ " +"ਕਰਕੇ multi-threaded ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ। Race conditions :term:`non-deterministic` " +"ਵਿਹਾਰ ਅਤੇ ਅਜਿਹੀਆਂ ਗਲਤੀਆਂ ਦਾ ਕਾਰਣ ਬਣ ਸਕਦੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨਾ ਮੁਸ਼ਕਲ ਹੁੰਦਾ " +"ਹੈ। :term:`data race` race condition ਦੀ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਕਿਸਮ ਹੈ ਜਿਸ ਵਿੱਚ shared memory " +"ਤੱਕ ਬਿਨਾਂ synchronization ਦੇ ਪਹੁੰਚ ਸ਼ਾਮਲ ਹੁੰਦੀ ਹੈ। :term:`LBYL` coding style multi-" +"threaded code ਵਿੱਚ race conditions ਲਈ ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਸੰਵੇਦਨਸ਼ੀਲ ਹੁੰਦੀ ਹੈ। :term:`locks " +"` ਅਤੇ ਹੋਰ :term:`synchronization primitives ` " +"ਦੀ ਵਰਤੋਂ race conditions ਨੂੰ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਕਰਦੀ ਹੈ।" msgid "reference count" -msgstr "" +msgstr "ਰੈਫਰੈਂਸ ਗਿਣਤੀ" msgid "" "The number of references to an object. When the reference count of an " @@ -2079,32 +2902,46 @@ msgid "" "Programmers can call the :func:`sys.getrefcount` function to return the " "reference count for a particular object." msgstr "" +"ਕਿਸੇ ਆਬਜੈਕਟ ਲਈ references ਦੀ ਗਿਣਤੀ। ਜਦੋਂ ਕਿਸੇ ਆਬਜੈਕਟ ਦੀ reference count ਸ਼ੂਨਯ ਹੋ ਜਾਂਦੀ " +"ਹੈ, ਤਾਂ ਉਸਨੂੰ deallocate ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਕੁਝ ਆਬਜੈਕਟ :term:`immortal` ਹੁੰਦੇ ਹਨ ਅਤੇ ਉਨ੍ਹਾਂ " +"ਦੀ reference count ਕਦੇ ਬਦਲੀ ਨਹੀਂ ਜਾਂਦੀ, ਇਸ ਲਈ ਉਹ ਕਦੇ deallocate ਨਹੀਂ ਹੁੰਦੇ। " +"Reference counting ਆਮ ਤੌਰ 'ਤੇ Python code ਵਿੱਚ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦੀ, ਪਰ " +"ਇਹ :term:`CPython` implementation ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਹਿੱਸਾ ਹੈ। Programmers ਕਿਸੇ ਖ਼ਾਸ " +"ਆਬਜੈਕਟ ਦੀ reference count ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ :func:`sys.getrefcount` function ਵਰਤ " +"ਸਕਦੇ ਹਨ।" msgid "" "In :term:`CPython`, reference counts are not considered to be stable or well-" "defined values; the number of references to an object, and how that number " "is affected by Python code, may be different between versions." msgstr "" +":term:`CPython` ਵਿੱਚ reference counts ਨੂੰ ਸਥਿਰ ਜਾਂ ਪੂਰੀ ਤਰ੍ਹਾਂ ਪਰਿਭਾਸ਼ਿਤ ਮੁੱਲ ਨਹੀਂ ਮੰਨਿਆ " +"ਜਾਂਦਾ; ਕਿਸੇ ਆਬਜੈਕਟ ਲਈ references ਦੀ ਗਿਣਤੀ ਅਤੇ Python code ਦੁਆਰਾ ਉਸ ਗਿਣਤੀ ਉੱਤੇ ਪੈਣ " +"ਵਾਲਾ ਅਸਰ ਵੱਖ-ਵੱਖ versions ਵਿੱਚ ਵੱਖਰਾ ਹੋ ਸਕਦਾ ਹੈ।" msgid "regular package" -msgstr "" +msgstr "ਨਿਯਮਤ ਪੈਕੇਜ" msgid "" -"A traditional :term:`package`, such as a directory containing an ``__init__." -"py`` file." +"A traditional :term:`package`, such as a directory containing an " +"``__init__.py`` file." msgstr "" +"ਇੱਕ ਪਰੰਪਰਾਗਤ :term:`package`, ਜਿਵੇਂ ਕਿ ਉਹ directory ਜਿਸ ਵਿੱਚ ``__init__.py`` ਫਾਈਲ " +"ਹੋਵੇ।" msgid "See also :term:`namespace package`." -msgstr "" +msgstr ":term:`namespace package` ਵੀ ਵੇਖੋ।" msgid "reentrant" -msgstr "" +msgstr "ਰੀਐਂਟ੍ਰੈਂਟ" msgid "" "A property of a function or :term:`lock` that allows it to be called or " -"acquired multiple times by the same thread without causing errors or a :term:" -"`deadlock`." +"acquired multiple times by the same thread without causing errors or " +"a :term:`deadlock`." msgstr "" +"ਕਿਸੇ function ਜਾਂ :term:`lock` ਦੀ ਉਹ ਵਿਸ਼ੇਸ਼ਤਾ ਜੋ ਇੱਕੋ thread ਨੂੰ ਇਸਨੂੰ ਬਾਰ-ਬਾਰ call ਕਰਨ " +"ਜਾਂ acquire ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ ਬਿਨਾਂ ਗਲਤੀਆਂ ਜਾਂ :term:`deadlock` ਪੈਦਾ ਕੀਤੇ।" msgid "" "For functions, reentrancy means the function can be safely called again " @@ -2113,6 +2950,11 @@ msgid "" "functions may be :term:`non-deterministic` if they're called reentrantly in " "a multithreaded program." msgstr "" +"Functions ਲਈ reentrancy ਦਾ ਅਰਥ ਹੈ ਕਿ function ਨੂੰ ਪਿਛਲੀ call ਪੂਰੀ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਵੀ " +"ਸੁਰੱਖਿਅਤ ਤਰੀਕੇ ਨਾਲ ਦੁਬਾਰਾ call ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਉਸ ਵੇਲੇ ਮਹੱਤਵਪੂਰਨ ਹੁੰਦਾ ਹੈ ਜਦੋਂ " +"functions ਨੂੰ recursively ਜਾਂ signal handlers ਤੋਂ call ਕੀਤਾ ਜਾਂਦਾ ਹੈ। Thread-unsafe " +"functions, ਜੇਕਰ multithreaded ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ reentrantly call ਕੀਤੀਆਂ ਜਾਣ, " +"ਤਾਂ :term:`non-deterministic` ਹੋ ਸਕਦੀਆਂ ਹਨ।" msgid "" "For locks, Python's :class:`threading.RLock` (reentrant lock) is reentrant, " @@ -2120,20 +2962,26 @@ msgid "" "blocking. In contrast, :class:`threading.Lock` is not reentrant - " "attempting to acquire it twice from the same thread will cause a deadlock." msgstr "" +"Locks ਲਈ, Python ਦਾ :class:`threading.RLock` (reentrant lock) reentrant ਹੁੰਦਾ " +"ਹੈ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ lock ਰੱਖਣ ਵਾਲਾ thread ਇਸਨੂੰ ਦੁਬਾਰਾ acquire ਕਰ ਸਕਦਾ ਹੈ ਬਿਨਾਂ " +"block ਹੋਏ। ਇਸਦੇ ਉਲਟ, :class:`threading.Lock` reentrant ਨਹੀਂ ਹੁੰਦਾ — ਇੱਕੋ thread ਵੱਲੋਂ " +"ਇਸਨੂੰ ਦੋ ਵਾਰ acquire ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ deadlock ਪੈਦਾ ਕਰੇਗੀ।" msgid "See also :term:`lock` and :term:`deadlock`." -msgstr "" +msgstr ":term:`lock` ਅਤੇ :term:`deadlock` ਵੀ ਵੇਖੋ।" msgid "REPL" -msgstr "" +msgstr "REPL" msgid "" -"An acronym for the \"read–eval–print loop\", another name for the :term:" -"`interactive` interpreter shell." +"An acronym for the \"read–eval–print loop\", another name for " +"the :term:`interactive` interpreter shell." msgstr "" +"\"read–eval–print loop\" ਦਾ ਸੰਖੇਪ ਰੂਪ, ਜੋ :term:`interactive` interpreter shell " +"ਦਾ ਇੱਕ ਹੋਰ ਨਾਮ ਹੈ।" msgid "__slots__" -msgstr "" +msgstr "__slots__" msgid "" "A declaration inside a class that saves memory by pre-declaring space for " @@ -2142,130 +2990,183 @@ msgid "" "cases where there are large numbers of instances in a memory-critical " "application." msgstr "" +"ਕਿਸੇ class ਦੇ ਅੰਦਰ ਇੱਕ declaration ਜੋ instance attributes ਲਈ ਪਹਿਲਾਂ ਹੀ ਜਗ੍ਹਾ " +"ਨਿਰਧਾਰਤ ਕਰਕੇ ਅਤੇ instance dictionaries ਨੂੰ ਹਟਾਕੇ memory ਬਚਾਉਂਦੀ ਹੈ। ਹਾਲਾਂਕਿ ਇਹ ਕਾਫ਼ੀ " +"ਪ੍ਰਸਿੱਧ ਹੈ, ਪਰ ਇਸ ਤਕਨੀਕ ਨੂੰ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਵਰਤਣਾ ਕੁਝ ਮੁਸ਼ਕਲ ਹੋ ਸਕਦਾ ਹੈ ਅਤੇ ਇਹ ਉਹਨਾਂ ਵਿਰਲੇ " +"ਮਾਮਲਿਆਂ ਲਈ ਸਭ ਤੋਂ ਉਚਿਤ ਹੈ ਜਿੱਥੇ memory-critical application ਵਿੱਚ instances ਦੀ ਗਿਣਤੀ " +"ਬਹੁਤ ਵੱਧ ਹੋਵੇ।" msgid "sequence" -msgstr "" +msgstr "ਲੜੀ" msgid "" "An :term:`iterable` which supports efficient element access using integer " -"indices via the :meth:`~object.__getitem__` special method and defines a :" -"meth:`~object.__len__` method that returns the length of the sequence. Some " -"built-in sequence types are :class:`list`, :class:`str`, :class:`tuple`, " -"and :class:`bytes`. Note that :class:`dict` also supports :meth:`~object." -"__getitem__` and :meth:`!__len__`, but is considered a mapping rather than a " -"sequence because the lookups use arbitrary :term:`hashable` keys rather than " -"integers." -msgstr "" +"indices via the :meth:`~object.__getitem__` special method and defines " +"a :meth:`~object.__len__` method that returns the length of the sequence. " +"Some built-in sequence types " +"are :class:`list`, :class:`str`, :class:`tuple`, and :class:`bytes`. Note " +"that :class:`dict` also supports :meth:`~object.__getitem__` and :meth:`!" +"__len__`, but is considered a mapping rather than a sequence because the " +"lookups use arbitrary :term:`hashable` keys rather than integers." +msgstr "" +"ਇੱਕ :term:`iterable` ਜੋ :meth:`~object.__getitem__` special method ਰਾਹੀਂ " +"integer indices ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਤੱਤਾਂ ਤੱਕ ਕੁਸ਼ਲ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ " +"ਅਤੇ :meth:`~object.__len__` method ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਜੋ ਲੜੀ ਦੀ ਲੰਬਾਈ ਵਾਪਸ ਕਰਦਾ ਹੈ। " +"ਕੁਝ built-in sequence types :class:`list`, :class:`str`, :class:`tuple` " +"ਅਤੇ :class:`bytes` ਹਨ। ਧਿਆਨ ਰਹੇ ਕਿ :class:`dict` " +"ਵੀ :meth:`~object.__getitem__` ਅਤੇ :meth:`!__len__` ਨੂੰ ਸਮਰਥਨ ਦਿੰਦਾ ਹੈ, ਪਰ ਇਸਨੂੰ " +"sequence ਦੀ ਬਜਾਏ mapping ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ lookups integers ਦੀ ਥਾਂ " +"ਮਨਮਾਨੀਆਂ :term:`hashable` keys ਵਰਤਦੇ ਹਨ।" msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " -"richer interface that goes beyond just :meth:`~object.__getitem__` and :meth:" -"`~object.__len__`, adding :meth:`~sequence.count`, :meth:`~sequence.index`, :" -"meth:`~object.__contains__`, and :meth:`~object.__reversed__`. Types that " -"implement this expanded interface can be registered explicitly using :func:" -"`~abc.ABCMeta.register`. For more documentation on sequence methods " -"generally, see :ref:`Common Sequence Operations `." -msgstr "" +"richer interface that goes beyond just :meth:`~object.__getitem__` " +"and :meth:`~object.__len__`, " +"adding :meth:`~sequence.count`, :meth:`~sequence.index`, :meth:`~object.__contains__`, " +"and :meth:`~object.__reversed__`. Types that implement this expanded " +"interface can be registered explicitly using :func:`~abc.ABCMeta.register`. " +"For more documentation on sequence methods generally, see :ref:`Common " +"Sequence Operations `." +msgstr "" +":class:`collections.abc.Sequence` abstract base class ਇੱਕ ਹੋਰ ਵਿਆਪਕ interface " +"ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ ਜੋ ਕੇਵਲ :meth:`~object.__getitem__` ਅਤੇ :meth:`~object.__len__` " +"ਤੱਕ ਸੀਮਿਤ ਨਹੀਂ ਹੈ, " +"ਸਗੋਂ :meth:`~sequence.count`, :meth:`~sequence.index`, :meth:`~object.__contains__` " +"ਅਤੇ :meth:`~object.__reversed__` ਵੀ ਸ਼ਾਮਲ ਕਰਦੀ ਹੈ। ਇਸ ਵਿਸਤ੍ਰਿਤ interface ਨੂੰ ਲਾਗੂ " +"ਕਰਨ ਵਾਲੇ types ਨੂੰ :func:`~abc.ABCMeta.register` ਰਾਹੀਂ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ register ਕੀਤਾ " +"ਜਾ ਸਕਦਾ ਹੈ। Sequence methods ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`Common Sequence " +"Operations ` ਵੇਖੋ।" msgid "set comprehension" -msgstr "" +msgstr "ਸੈੱਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ" msgid "" "A compact way to process all or part of the elements in an iterable and " "return a set with the results. ``results = {c for c in 'abracadabra' if c " -"not in 'abc'}`` generates the set of strings ``{'r', 'd'}``. See :ref:" -"`comprehensions`." +"not in 'abc'}`` generates the set of strings ``{'r', 'd'}``. " +"See :ref:`comprehensions`." msgstr "" +"ਕਿਸੇ iterable ਦੇ ਸਾਰੇ ਜਾਂ ਕੁਝ ਤੱਤਾਂ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਕਰਕੇ ਨਤੀਜੇ ਵਜੋਂ ਇੱਕ set ਵਾਪਸ ਕਰਨ ਦਾ ਸੰਖੇਪ " +"ਤਰੀਕਾ। ``results = {c for c in 'abracadabra' if c not in 'abc'}`` ਸਟਰਿੰਗਾਂ ਦਾ " +"set ``{'r', 'd'}`` ਬਣਾਉਂਦਾ ਹੈ। :ref:`comprehensions` ਵੇਖੋ।" msgid "single dispatch" -msgstr "" +msgstr "ਸਿੰਗਲ ਡਿਸਪੈਚ" msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." msgstr "" +":term:`generic function` dispatch ਦਾ ਇੱਕ ਰੂਪ ਜਿਸ ਵਿੱਚ implementation ਇੱਕ ਹੀ " +"argument ਦੇ type ਦੇ ਆਧਾਰ 'ਤੇ ਚੁਣੀ ਜਾਂਦੀ ਹੈ।" msgid "slice" -msgstr "" +msgstr "ਸਲਾਈਸ" msgid "" -"An object of type :class:`slice`, used to describe a portion of a :term:" -"`sequence`. A slice object is created when using the :ref:`slicing " +"An object of type :class:`slice`, used to describe a portion of " +"a :term:`sequence`. A slice object is created when using the :ref:`slicing " "` form of :ref:`subscript notation `, with colons " "inside square brackets, such as in ``variable_name[1:3:5]``." msgstr "" +":class:`slice` type ਦਾ ਇੱਕ object ਜੋ :term:`sequence` ਦੇ ਕਿਸੇ ਹਿੱਸੇ ਨੂੰ ਦਰਸਾਉਣ ਲਈ " +"ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। Slice object ਉਸ ਵੇਲੇ ਬਣਦਾ ਹੈ ਜਦੋਂ :ref:`subscript notation " +"` ਦੇ :ref:`slicing ` ਰੂਪ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਵਿੱਚ " +"square brackets ਦੇ ਅੰਦਰ colons ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ ``variable_name[1:3:5]``।" msgid "soft deprecated" -msgstr "" +msgstr "ਸਾਫਟ ਡਿਪ੍ਰਿਕੇਟਿਡ" msgid "" "A soft deprecated API should not be used in new code, but it is safe for " "already existing code to use it. The API remains documented and tested, but " "will not be enhanced further." msgstr "" +"Soft deprecated API ਨੂੰ ਨਵੇਂ code ਵਿੱਚ ਨਹੀਂ ਵਰਤਣਾ ਚਾਹੀਦਾ, ਪਰ ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ code ਵਿੱਚ " +"ਇਸਦੀ ਵਰਤੋਂ ਸੁਰੱਖਿਅਤ ਹੈ। API ਦਾ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਅਤੇ ਟੈਸਟਿੰਗ ਜਾਰੀ ਰਹਿੰਦੀ ਹੈ, ਪਰ ਇਸ ਵਿੱਚ ਹੋਰ " +"ਸੁਧਾਰ ਨਹੀਂ ਕੀਤੇ ਜਾਣਗੇ।" msgid "" "Soft deprecation, unlike normal deprecation, does not plan on removing the " "API and will not emit warnings." msgstr "" +"Soft deprecation, ਆਮ deprecation ਤੋਂ ਵੱਖਰਾ, API ਨੂੰ ਹਟਾਉਣ ਦੀ ਯੋਜਨਾ ਨਹੀਂ ਰੱਖਦਾ ਅਤੇ ਕੋਈ " +"warnings ਵੀ ਜਾਰੀ ਨਹੀਂ ਕਰਦਾ।" msgid "" "See `PEP 387: Soft Deprecation `_." msgstr "" +"`PEP 387: Soft Deprecation `_ ਵੇਖੋ।" msgid "special method" -msgstr "" +msgstr "ਵਿਸ਼ੇਸ਼ ਮੈਥਡ" msgid "" "A method that is called implicitly by Python to execute a certain operation " "on a type, such as addition. Such methods have names starting and ending " -"with double underscores. Special methods are documented in :ref:" -"`specialnames`." +"with double underscores. Special methods are documented " +"in :ref:`specialnames`." msgstr "" +"ਇੱਕ method ਜਿਸਨੂੰ Python ਕਿਸੇ type ਉੱਤੇ ਖ਼ਾਸ operation, ਜਿਵੇਂ addition, ਕਰਨ ਲਈ ਆਪਣੇ ਆਪ " +"call ਕਰਦਾ ਹੈ। ਅਜਿਹੇ methods ਦੇ ਨਾਮ double underscores ਨਾਲ ਸ਼ੁਰੂ ਅਤੇ ਖ਼ਤਮ ਹੁੰਦੇ ਹਨ। " +"Special methods ਦਾ ਵੇਰਵਾ :ref:`specialnames` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" msgid "standard library" -msgstr "" +msgstr "ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ" msgid "" -"The collection of :term:`packages `, :term:`modules ` and :" -"term:`extension modules ` distributed as a part of the " -"official Python interpreter package. The exact membership of the collection " -"may vary based on platform, available system libraries, or other criteria. " -"Documentation can be found at :ref:`library-index`." +"The collection of :term:`packages `, :term:`modules ` " +"and :term:`extension modules ` distributed as a part of " +"the official Python interpreter package. The exact membership of the " +"collection may vary based on platform, available system libraries, or other " +"criteria. Documentation can be found at :ref:`library-index`." msgstr "" +"ਅਧਿਕਾਰਿਕ Python interpreter package ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਵੰਡੇ ਜਾਣ ਵਾਲੇ :term:`packages " +"`, :term:`modules ` ਅਤੇ :term:`extension modules ` ਦਾ ਸੰਗ੍ਰਹਿ। ਇਸ ਸੰਗ੍ਰਹਿ ਦੀ ਸਹੀ ਸਮੱਗਰੀ platform, ਉਪਲਬਧ system libraries ਜਾਂ " +"ਹੋਰ ਮਾਪਦੰਡਾਂ ਅਨੁਸਾਰ ਬਦਲ ਸਕਦੀ ਹੈ। ਇਸਦਾ ਦਸਤਾਵੇਜ਼ੀਕਰਨ :ref:`library-index` ਵਿੱਚ ਮਿਲ " +"ਸਕਦਾ ਹੈ।" msgid "" "See also :data:`sys.stdlib_module_names` for a list of all possible standard " "library module names." msgstr "" +"ਸਾਰੇ ਸੰਭਾਵਿਤ standard library module names ਦੀ ਸੂਚੀ " +"ਲਈ :data:`sys.stdlib_module_names` ਵੀ ਵੇਖੋ।" msgid "statement" -msgstr "" +msgstr "ਸਟੇਟਮੈਂਟ" msgid "" "A statement is part of a suite (a \"block\" of code). A statement is either " -"an :term:`expression` or one of several constructs with a keyword, such as :" -"keyword:`if`, :keyword:`while` or :keyword:`for`." +"an :term:`expression` or one of several constructs with a keyword, such " +"as :keyword:`if`, :keyword:`while` or :keyword:`for`." msgstr "" +"Statement ਇੱਕ suite (code ਦਾ \"block\") ਦਾ ਹਿੱਸਾ ਹੁੰਦਾ ਹੈ। Statement ਜਾਂ ਤਾਂ " +"ਇੱਕ :term:`expression` ਹੁੰਦਾ ਹੈ ਜਾਂ keyword ਵਾਲੀਆਂ ਕਈ ਬਣਤਰਾਂ ਵਿੱਚੋਂ ਇੱਕ, " +"ਜਿਵੇਂ :keyword:`if`, :keyword:`while` ਜਾਂ :keyword:`for`।" msgid "static type checker" -msgstr "" +msgstr "ਸਟੈਟਿਕ ਟਾਈਪ ਚੈੱਕਰ" msgid "" "An external tool that reads Python code and analyzes it, looking for issues " -"such as incorrect types. See also :term:`type hints ` and the :" -"mod:`typing` module." +"such as incorrect types. See also :term:`type hints ` and " +"the :mod:`typing` module." msgstr "" +"ਇੱਕ ਬਾਹਰੀ ਟੂਲ ਜੋ Python code ਨੂੰ ਪੜ੍ਹਦਾ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦਾ ਹੈ, ਅਤੇ ਗਲਤ types ਵਰਗੀਆਂ " +"ਸਮੱਸਿਆਵਾਂ ਲੱਭਦਾ ਹੈ। :term:`type hints ` ਅਤੇ :mod:`typing` module ਵੀ ਵੇਖੋ।" msgid "stdlib" -msgstr "" +msgstr "stdlib" msgid "An abbreviation of :term:`standard library`." -msgstr "" +msgstr ":term:`standard library` ਦਾ ਸੰਖੇਪ ਰੂਪ।" msgid "steal" -msgstr "" +msgstr "ਚੋਰੀ ਕਰਨਾ" msgid "" "In Python's C API, \"*stealing*\" an argument means that ownership of the " @@ -2273,19 +3174,27 @@ msgid "" "reference after the call. Generally, functions that \"steal\" an argument do " "so even if they fail." msgstr "" +"Python ਦੇ C API ਵਿੱਚ, \"*stealing*\" ਇੱਕ ਆਰਗੂਮੈਂਟ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਆਰਗੂਮੈਂਟ ਦੀ ਮਾਲਕੀ ਬੁਲਾਏ " +"ਗਏ ਫੰਕਸ਼ਨ ਨੂੰ ਸੌਂਪ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ। ਕਾਲ ਕਰਨ ਵਾਲੇ ਨੂੰ ਕਾਲ ਤੋਂ ਬਾਅਦ ਉਸ ਰੈਫਰੈਂਸ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਨੀ " +"ਚਾਹੀਦੀ। ਆਮ ਤੌਰ 'ਤੇ, ਉਹ ਫੰਕਸ਼ਨ ਜੋ ਆਰਗੂਮੈਂਟ \"steal\" ਕਰਦੇ ਹਨ, ਉਹ ਫੇਲ ਹੋਣ 'ਤੇ ਵੀ ਇਹ ਕੰਮ ਕਰਦੇ " +"ਹਨ।" msgid "See :ref:`api-refcountdetails` for a full explanation." -msgstr "" +msgstr "ਪੂਰੀ ਵਿਆਖਿਆ ਲਈ :ref:`api-refcountdetails` ਵੇਖੋ।" msgid "strong reference" -msgstr "" +msgstr "ਮਜ਼ਬੂਤ ਰੈਫਰੈਂਸ" msgid "" "In Python's C API, a strong reference is a reference to an object which is " "owned by the code holding the reference. The strong reference is taken by " -"calling :c:func:`Py_INCREF` when the reference is created and released with :" -"c:func:`Py_DECREF` when the reference is deleted." +"calling :c:func:`Py_INCREF` when the reference is created and released " +"with :c:func:`Py_DECREF` when the reference is deleted." msgstr "" +"Python ਦੀ C API ਵਿੱਚ, strong reference ਕਿਸੇ ਆਬਜੈਕਟ ਲਈ ਉਹ reference ਹੁੰਦਾ ਹੈ ਜਿਸਦੀ " +"ਮਾਲਕੀ ਉਸ code ਕੋਲ ਹੁੰਦੀ ਹੈ ਜੋ reference ਨੂੰ ਰੱਖਦਾ ਹੈ। Strong reference reference " +"ਬਣਾਉਣ ਵੇਲੇ :c:func:`Py_INCREF` ਨੂੰ call ਕਰਕੇ ਲਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ reference ਮਿਟਾਉਣ " +"ਵੇਲੇ :c:func:`Py_DECREF` ਨਾਲ ਰਿਲੀਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "The :c:func:`Py_NewRef` function can be used to create a strong reference to " @@ -2293,103 +3202,143 @@ msgid "" "strong reference before exiting the scope of the strong reference, to avoid " "leaking one reference." msgstr "" +":c:func:`Py_NewRef` function ਦੀ ਵਰਤੋਂ ਕਿਸੇ ਆਬਜੈਕਟ ਲਈ strong reference ਬਣਾਉਣ ਲਈ " +"ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ, strong reference ਦੇ scope ਤੋਂ ਬਾਹਰ ਨਿਕਲਣ ਤੋਂ " +"ਪਹਿਲਾਂ :c:func:`Py_DECREF` ਨੂੰ call ਕਰਨਾ ਲਾਜ਼ਮੀ ਹੁੰਦਾ ਹੈ ਤਾਂ ਜੋ reference leak ਨਾ ਹੋਵੇ।" msgid "See also :term:`borrowed reference`." -msgstr "" +msgstr ":term:`borrowed reference` ਵੀ ਵੇਖੋ।" msgid "subscript" -msgstr "" +msgstr "ਸਬਸਕ੍ਰਿਪਟ" msgid "" "The expression in square brackets of a :ref:`subscription expression " "`, for example, the ``3`` in ``items[3]``. Usually used to " "select an element of a container. Also called a :term:`key` when " -"subscripting a :term:`mapping`, or an :term:`index` when subscripting a :" -"term:`sequence`." +"subscripting a :term:`mapping`, or an :term:`index` when subscripting " +"a :term:`sequence`." msgstr "" +":ref:`subscription expression ` ਵਿੱਚ square brackets ਦੇ ਅੰਦਰ ਦੀ " +"expression, ਉਦਾਹਰਨ ਲਈ ``items[3]`` ਵਿੱਚ ``3``। ਇਹ ਆਮ ਤੌਰ 'ਤੇ container ਦੇ ਕਿਸੇ ਤੱਤ " +"ਨੂੰ ਚੁਣਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। :term:`mapping` ਨੂੰ subscript ਕਰਨ ਵੇਲੇ ਇਸਨੂੰ :term:`key` " +"ਅਤੇ :term:`sequence` ਨੂੰ subscript ਕਰਨ ਵੇਲੇ :term:`index` ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "synchronization primitive" -msgstr "" +msgstr "ਸਿੰਕ੍ਰੋਨਾਈਜ਼ੇਸ਼ਨ ਪ੍ਰਿਮਿਟਿਵ" msgid "" "A basic building block for coordinating (synchronizing) the execution of " "multiple threads to ensure :term:`thread-safe` access to shared resources. " "Python's :mod:`threading` module provides several synchronization primitives " -"including :class:`~threading.Lock`, :class:`~threading.RLock`, :class:" -"`~threading.Semaphore`, :class:`~threading.Condition`, :class:`~threading." -"Event`, and :class:`~threading.Barrier`. Additionally, the :mod:`queue` " -"module provides multi-producer, multi-consumer queues that are especially " -"useful in multithreaded programs. These primitives help prevent :term:`race " -"conditions ` and coordinate thread execution. See also :" -"term:`lock`." -msgstr "" +"including :class:`~threading.Lock`, :class:`~threading.RLock`, :class:`~threading.Semaphore`, :class:`~threading.Condition`, :class:`~threading.Event`, " +"and :class:`~threading.Barrier`. Additionally, the :mod:`queue` module " +"provides multi-producer, multi-consumer queues that are especially useful in " +"multithreaded programs. These primitives help prevent :term:`race conditions " +"` and coordinate thread execution. See also :term:`lock`." +msgstr "" +"Shared resources ਤੱਕ :term:`thread-safe` ਪਹੁੰਚ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਈ threads ਦੀ " +"execution ਨੂੰ coordinate (synchronize) ਕਰਨ ਵਾਲਾ ਬੁਨਿਆਦੀ building block। Python " +"ਦਾ :mod:`threading` module ਕਈ synchronization primitives ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, " +"ਜਿਵੇਂ :class:`~threading.Lock`, :class:`~threading.RLock`, :class:`~threading.Semaphore`, :class:`~threading.Condition`, :class:`~threading.Event` " +"ਅਤੇ :class:`~threading.Barrier`। ਇਸ ਤੋਂ ਇਲਾਵਾ, :mod:`queue` module multi-" +"producer ਅਤੇ multi-consumer queues ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ multithreaded ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ " +"ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਲਾਭਕਾਰੀ ਹਨ। ਇਹ primitives :term:`race conditions ` " +"ਨੂੰ ਰੋਕਣ ਅਤੇ thread execution ਨੂੰ coordinate ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦੀਆਂ ਹਨ। :term:`lock` ਵੀ " +"ਵੇਖੋ।" msgid "t-string" -msgstr "" +msgstr "t-string" msgid "t-strings" -msgstr "" +msgstr "t-strings" msgid "" "String literals prefixed with ``t`` or ``T`` are commonly called \"t-" "strings\" which is short for :ref:`template string literals `." msgstr "" +"``t`` ਜਾਂ ``T`` ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ string literals ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ \"t-strings\" ਕਿਹਾ " +"ਜਾਂਦਾ ਹੈ, ਜੋ :ref:`template string literals ` ਦਾ ਸੰਖੇਪ ਰੂਪ ਹੈ।" msgid "text encoding" -msgstr "" +msgstr "ਟੈਕਸਟ ਐਨਕੋਡਿੰਗ" msgid "" "A string in Python is a sequence of Unicode code points (in range " "``U+0000``--``U+10FFFF``). To store or transfer a string, it needs to be " "serialized as a sequence of bytes." msgstr "" +"Python ਵਿੱਚ ਇੱਕ string Unicode code points (ਸੀਮਾ ``U+0000``--``U+10FFFF``) ਦੀ " +"ਲੜੀ ਹੁੰਦੀ ਹੈ। ਕਿਸੇ string ਨੂੰ ਸੰਭਾਲਣ ਜਾਂ ਟ੍ਰਾਂਸਫਰ ਕਰਨ ਲਈ ਇਸਨੂੰ bytes ਦੀ ਲੜੀ ਵਜੋਂ serialize " +"ਕਰਨਾ ਪੈਂਦਾ ਹੈ।" msgid "" "Serializing a string into a sequence of bytes is known as \"encoding\", and " "recreating the string from the sequence of bytes is known as \"decoding\"." msgstr "" +"String ਨੂੰ bytes ਦੀ ਲੜੀ ਵਿੱਚ serialize ਕਰਨ ਨੂੰ \"encoding\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ bytes " +"ਦੀ ਲੜੀ ਤੋਂ string ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਉਣ ਨੂੰ \"decoding\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "" "There are a variety of different text serialization :ref:`codecs `, which are collectively referred to as \"text encodings\"." msgstr "" +"ਵੱਖ-ਵੱਖ ਕਿਸਮ ਦੇ text serialization :ref:`codecs ` ਮੌਜੂਦ ਹਨ, " +"ਜਿਨ੍ਹਾਂ ਨੂੰ ਇਕੱਠੇ ਮਿਲਾ ਕੇ \"text encodings\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "text file" -msgstr "" +msgstr "ਟੈਕਸਟ ਫਾਈਲ" msgid "" "A :term:`file object` able to read and write :class:`str` objects. Often, a " -"text file actually accesses a byte-oriented datastream and handles the :term:" -"`text encoding` automatically. Examples of text files are files opened in " -"text mode (``'r'`` or ``'w'``), :data:`sys.stdin`, :data:`sys.stdout`, and " -"instances of :class:`io.StringIO`." +"text file actually accesses a byte-oriented datastream and handles " +"the :term:`text encoding` automatically. Examples of text files are files " +"opened in text mode (``'r'`` or " +"``'w'``), :data:`sys.stdin`, :data:`sys.stdout`, and instances " +"of :class:`io.StringIO`." msgstr "" +"ਇੱਕ :term:`file object` ਜੋ :class:`str` objects ਨੂੰ ਪੜ੍ਹ ਅਤੇ ਲਿਖ ਸਕਦਾ ਹੈ। ਅਕਸਰ text " +"file ਅਸਲ ਵਿੱਚ byte-oriented datastream ਤੱਕ ਪਹੁੰਚ ਕਰਦੀ ਹੈ ਅਤੇ :term:`text encoding` " +"ਨੂੰ ਆਪਣੇ ਆਪ ਸੰਭਾਲਦੀ ਹੈ। Text files ਦੇ ਉਦਾਹਰਨਾਂ ਵਿੱਚ text mode (``'r'`` ਜਾਂ ``'w'``) " +"ਵਿੱਚ ਖੋਲ੍ਹੀਆਂ ਫਾਈਲਾਂ, :data:`sys.stdin`, :data:`sys.stdout`, " +"ਅਤੇ :class:`io.StringIO` ਦੇ instances ਸ਼ਾਮਲ ਹਨ।" msgid "" -"See also :term:`binary file` for a file object able to read and write :term:" -"`bytes-like objects `." +"See also :term:`binary file` for a file object able to read and " +"write :term:`bytes-like objects `." msgstr "" +":term:`bytes-like objects ` ਨੂੰ ਪੜ੍ਹਣ ਅਤੇ ਲਿਖਣ ਯੋਗ file object " +"ਲਈ :term:`binary file` ਵੀ ਵੇਖੋ।" msgid "thread state" -msgstr "" +msgstr "ਥ੍ਰੈਡ ਸਟੇਟ" msgid "" "The information used by the :term:`CPython` runtime to run in an OS thread. " "For example, this includes the current exception, if any, and the state of " "the bytecode interpreter." msgstr "" +"ਉਹ ਜਾਣਕਾਰੀ ਜੋ :term:`CPython` runtime ਵੱਲੋਂ ਕਿਸੇ OS thread ਵਿੱਚ ਚਲਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ " +"ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ਇਸ ਵਿੱਚ ਮੌਜੂਦਾ exception ਜੇ ਹੋਵੇ ਅਤੇ bytecode interpreter ਦੀ ਸਥਿਤੀ " +"ਸ਼ਾਮਲ ਹੁੰਦੀ ਹੈ।" msgid "" "Each thread state is bound to a single OS thread, but threads may have many " "thread states available. At most, one of them may be :term:`attached " "` at once." msgstr "" +"ਹਰ thread state ਇੱਕ ਹੀ OS thread ਨਾਲ ਜੁੜੀ ਹੁੰਦੀ ਹੈ, ਪਰ threads ਕੋਲ ਕਈ thread " +"states ਉਪਲਬਧ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਇੱਕ ਸਮੇਂ 'ਤੇ ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਵੱਧ ਤੋਂ ਵੱਧ ਇੱਕ ਹੀ :term:`attached " +"` ਹੋ ਸਕਦੀ ਹੈ।" msgid "" "An :term:`attached thread state` is required to call most of Python's C API, " "unless a function explicitly documents otherwise. The bytecode interpreter " "only runs under an attached thread state." msgstr "" +"Python ਦੀ ਜ਼ਿਆਦਾਤਰ C API ਨੂੰ call ਕਰਨ ਲਈ :term:`attached thread state` ਲੋੜੀਂਦੀ " +"ਹੁੰਦੀ ਹੈ, ਜਦੋਂ ਤੱਕ ਕੋਈ function ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਕੁਝ ਹੋਰ ਨਾ ਦੱਸੇ। Bytecode interpreter ਕੇਵਲ " +"attached thread state ਹੇਠਾਂ ਹੀ ਚਲਦਾ ਹੈ।" msgid "" "Each thread state belongs to a single interpreter, but each interpreter may " @@ -2398,44 +3347,66 @@ msgid "" "one can be :term:`attached ` in that thread at any " "given moment." msgstr "" +"ਹਰ thread state ਇੱਕ ਹੀ interpreter ਨਾਲ ਸੰਬੰਧਿਤ ਹੁੰਦੀ ਹੈ, ਪਰ ਹਰ interpreter ਕੋਲ ਕਈ " +"thread states ਹੋ ਸਕਦੀਆਂ ਹਨ, ਜਿਸ ਵਿੱਚ ਇੱਕੋ OS thread ਲਈ ਕਈ thread states ਵੀ ਸ਼ਾਮਲ ਹੋ " +"ਸਕਦੀਆਂ ਹਨ। ਕਈ interpreters ਦੀਆਂ thread states ਇੱਕੋ thread ਨਾਲ ਜੁੜੀਆਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, " +"ਪਰ ਕਿਸੇ ਵੀ ਸਮੇਂ ਉਸ thread ਵਿੱਚ ਕੇਵਲ ਇੱਕ ਹੀ :term:`attached ` ਹੋ ਸਕਦੀ ਹੈ।" msgid "" "See :ref:`Thread State and the Global Interpreter Lock ` for more " "information." msgstr "" +"ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ :ref:`Thread State and the Global Interpreter Lock ` " +"ਵੇਖੋ।" msgid "thread-safe" -msgstr "" +msgstr "ਥ੍ਰੈਡ-ਸੇਫ" msgid "" "A module, function, or class that behaves correctly when used by multiple " -"threads concurrently. Thread-safe code uses appropriate :term:" -"`synchronization primitives ` like :term:`locks " -"` to protect shared mutable state, or is designed to avoid shared " -"mutable state entirely. In the :term:`free-threaded ` " -"build, built-in types like :class:`dict`, :class:`list`, and :class:`set` " -"use internal locking to make many operations thread-safe, although thread " -"safety is not necessarily guaranteed. Code that is not thread-safe may " -"experience :term:`race conditions ` and :term:`data races " -"` when used in multi-threaded programs." -msgstr "" +"threads concurrently. Thread-safe code uses " +"appropriate :term:`synchronization primitives ` " +"like :term:`locks ` to protect shared mutable state, or is designed to " +"avoid shared mutable state entirely. In the :term:`free-threaded ` build, built-in types like :class:`dict`, :class:`list`, " +"and :class:`set` use internal locking to make many operations thread-safe, " +"although thread safety is not necessarily guaranteed. Code that is not " +"thread-safe may experience :term:`race conditions ` " +"and :term:`data races ` when used in multi-threaded programs." +msgstr "" +"ਐਸਾ module, function ਜਾਂ class ਜੋ ਕਈ threads ਦੁਆਰਾ ਇੱਕੋ ਸਮੇਂ ਵਰਤੇ ਜਾਣ 'ਤੇ ਵੀ ਸਹੀ ਤਰੀਕੇ " +"ਨਾਲ ਕੰਮ ਕਰੇ। Thread-safe code shared mutable state ਦੀ ਸੁਰੱਖਿਆ ਲਈ " +"ਉਚਿਤ :term:`synchronization primitives ` " +"ਜਿਵੇਂ :term:`locks ` ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਜਾਂ ਇਸ ਤਰ੍ਹਾਂ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਹੁੰਦਾ ਹੈ ਕਿ " +"shared mutable state ਤੋਂ ਪੂਰੀ ਤਰ੍ਹਾਂ ਬਚਿਆ ਜਾ ਸਕੇ। :term:`free-threaded ` build ਵਿੱਚ :class:`dict`, :class:`list` ਅਤੇ :class:`set` ਵਰਗੇ built-" +"in types ਕਈ operations ਨੂੰ thread-safe ਬਣਾਉਣ ਲਈ internal locking ਵਰਤਦੇ ਹਨ, " +"ਹਾਲਾਂਕਿ thread safety ਦੀ ਪੂਰੀ ਗਾਰੰਟੀ ਨਹੀਂ ਹੁੰਦੀ। ਜੋ code thread-safe ਨਹੀਂ ਹੁੰਦਾ, ਉਹ " +"multithreaded ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ :term:`race conditions ` " +"ਅਤੇ :term:`data races ` ਦਾ ਸ਼ਿਕਾਰ ਹੋ ਸਕਦਾ ਹੈ।" msgid "token" -msgstr "" +msgstr "ਟੋਕਨ" msgid "" "A small unit of source code, generated by the :ref:`lexical analyzer " "` (also called the *tokenizer*). Names, numbers, strings, " "operators, newlines and similar are represented by tokens." msgstr "" +"Source code ਦੀ ਇੱਕ ਛੋਟੀ ਇਕਾਈ, ਜੋ :ref:`lexical analyzer ` (ਜਿਸਨੂੰ " +"*tokenizer* ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ) ਦੁਆਰਾ ਬਣਾਈ ਜਾਂਦੀ ਹੈ। Names, numbers, strings, " +"operators, newlines ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਦੇ ਹੋਰ ਤੱਤ tokens ਰਾਹੀਂ ਦਰਸਾਏ ਜਾਂਦੇ ਹਨ।" msgid "" -"The :mod:`tokenize` module exposes Python's lexical analyzer. The :mod:" -"`token` module contains information on the various types of tokens." +"The :mod:`tokenize` module exposes Python's lexical analyzer. " +"The :mod:`token` module contains information on the various types of tokens." msgstr "" +":mod:`tokenize` module Python ਦੇ lexical analyzer ਤੱਕ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ " +"ਹੈ। :mod:`token` module ਵਿੱਚ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ tokens ਬਾਰੇ ਜਾਣਕਾਰੀ ਹੁੰਦੀ ਹੈ।" msgid "triple-quoted string" -msgstr "" +msgstr "ਤਿੰਨ-ਕੋਟ ਵਾਲੀ ਸਟ੍ਰਿੰਗ" msgid "" "A string which is bound by three instances of either a quotation mark (\") " @@ -2446,35 +3417,51 @@ msgid "" "continuation character, making them especially useful when writing " "docstrings." msgstr "" +"ਇੱਕ string ਜੋ ਤਿੰਨ quotation marks (\") ਜਾਂ ਤਿੰਨ apostrophes (') ਨਾਲ ਘੇਰੀ ਜਾਂਦੀ ਹੈ। " +"ਭਾਵੇਂ ਇਹ single-quoted strings ਨਾਲੋਂ ਕੋਈ ਵਾਧੂ functionality ਪ੍ਰਦਾਨ ਨਹੀਂ ਕਰਦੀ, ਪਰ ਕਈ " +"ਕਾਰਨਾਂ ਕਰਕੇ ਇਹ ਲਾਭਦਾਇਕ ਹੈ। ਇਹ string ਦੇ ਅੰਦਰ single ਅਤੇ double quotes ਨੂੰ ਬਿਨਾਂ " +"escape ਕੀਤੇ ਸ਼ਾਮਲ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ ਅਤੇ continuation character ਦੀ ਲੋੜ ਬਿਨਾਂ ਕਈ " +"ਲਾਈਨਾਂ ਤੱਕ ਫੈਲ ਸਕਦੀ ਹੈ, ਜਿਸ ਕਾਰਨ docstrings ਲਿਖਣ ਵੇਲੇ ਇਹ ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਉਪਯੋਗੀ ਹੁੰਦੀ ਹੈ।" msgid "type" -msgstr "" +msgstr "ਟਾਈਪ" msgid "" "The type of a Python object determines what kind of object it is; every " -"object has a type. An object's type is accessible as its :attr:`~object." -"__class__` attribute or can be retrieved with ``type(obj)``." +"object has a type. An object's type is accessible as " +"its :attr:`~object.__class__` attribute or can be retrieved with " +"``type(obj)``." msgstr "" +"ਕਿਸੇ Python object ਦੀ type ਇਹ ਨਿਰਧਾਰਤ ਕਰਦੀ ਹੈ ਕਿ ਉਹ ਕਿਸ ਕਿਸਮ ਦਾ object ਹੈ; ਹਰ " +"object ਦੀ ਇੱਕ type ਹੁੰਦੀ ਹੈ। ਕਿਸੇ object ਦੀ type ਨੂੰ ਉਸਦੇ :attr:`~object.__class__` " +"attribute ਰਾਹੀਂ ਜਾਂ ``type(obj)`` ਨਾਲ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "type alias" -msgstr "" +msgstr "ਟਾਈਪ ਐਲਿਆਸ" msgid "A synonym for a type, created by assigning the type to an identifier." msgstr "" +"ਕਿਸੇ type ਲਈ ਇੱਕ ਸਮਾਨਾਰਥਕ ਨਾਮ, ਜੋ type ਨੂੰ ਕਿਸੇ identifier ਨਾਲ assign ਕਰਕੇ ਬਣਾਇਆ " +"ਜਾਂਦਾ ਹੈ।" msgid "" "Type aliases are useful for simplifying :term:`type hints `. For " "example::" msgstr "" +"Type aliases :term:`type hints ` ਨੂੰ ਸਰਲ ਬਣਾਉਣ ਲਈ ਲਾਭਦਾਇਕ ਹੁੰਦੇ ਹਨ। " +"ਉਦਾਹਰਨ ਲਈ::" msgid "" "def remove_gray_shades(\n" " colors: list[tuple[int, int, int]]) -> list[tuple[int, int, int]]:\n" " pass" msgstr "" +"def remove_gray_shades(\n" +" colors: list[tuple[int, int, int]]) -> list[tuple[int, int, int]]:\n" +" pass" msgid "could be made more readable like this::" -msgstr "" +msgstr "ਇਸ ਤਰ੍ਹਾਂ ਹੋਰ ਪੜ੍ਹਨਯੋਗ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "Color = tuple[int, int, int]\n" @@ -2482,74 +3469,99 @@ msgid "" "def remove_gray_shades(colors: list[Color]) -> list[Color]:\n" " pass" msgstr "" +"Color = tuple[int, int, int]\n" +"\n" +"def remove_gray_shades(colors: list[Color]) -> list[Color]:\n" +" pass" msgid "See :mod:`typing` and :pep:`484`, which describe this functionality." -msgstr "" +msgstr ":mod:`typing` ਅਤੇ :pep:`484` ਵੇਖੋ, ਜੋ ਇਸ functionality ਦਾ ਵਰਣਨ ਕਰਦੇ ਹਨ।" msgid "type hint" -msgstr "" +msgstr "ਟਾਈਪ ਹਿੰਟ" msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." msgstr "" +"ਇੱਕ :term:`annotation` ਜੋ ਕਿਸੇ variable, class attribute ਜਾਂ function parameter " +"ਜਾਂ return value ਲਈ ਉਮੀਦ ਕੀਤੀ ਜਾਣ ਵਾਲੀ type ਦਰਸਾਉਂਦੀ ਹੈ।" msgid "" "Type hints are optional and are not enforced by Python but they are useful " "to :term:`static type checkers `. They can also aid " "IDEs with code completion and refactoring." msgstr "" +"Type hints ਵਿਕਲਪਿਕ ਹੁੰਦੇ ਹਨ ਅਤੇ Python ਦੁਆਰਾ ਲਾਗੂ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ, ਪਰ ਇਹ :term:`static " +"type checkers ` ਲਈ ਲਾਭਦਾਇਕ ਹੁੰਦੇ ਹਨ। ਇਹ IDEs ਨੂੰ code " +"completion ਅਤੇ refactoring ਵਿੱਚ ਵੀ ਮਦਦ ਕਰ ਸਕਦੇ ਹਨ।" msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." msgstr "" +"Global variables, class attributes ਅਤੇ functions ਦੇ type hints ਪਰ local " +"variables ਦੇ ਨਹੀਂ ਨੂੰ :func:`typing.get_type_hints` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ।" msgid "universal newlines" -msgstr "" +msgstr "ਯੂਨੀਵਰਸਲ ਨਿਊਲਾਈਨਜ਼" msgid "" "A manner of interpreting text streams in which all of the following are " "recognized as ending a line: the Unix end-of-line convention ``'\\n'``, the " "Windows convention ``'\\r\\n'``, and the old Macintosh convention " -"``'\\r'``. See :pep:`278` and :pep:`3116`, as well as :func:`bytes." -"splitlines` for an additional use." +"``'\\r'``. See :pep:`278` and :pep:`3116`, as well " +"as :func:`bytes.splitlines` for an additional use." msgstr "" +"Text streams ਦੀ ਵਿਆਖਿਆ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ ਜਿਸ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ਸਾਰੇ line ending ਵਜੋਂ ਮੰਨੇ " +"ਜਾਂਦੇ ਹਨ: Unix ਦਾ ``'\\n'``, Windows ਦਾ ``'\\r\\n'`` ਅਤੇ ਪੁਰਾਣੇ Macintosh ਦਾ " +"``'\\r'``। ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ :pep:`278`, :pep:`3116` ਅਤੇ ਵਾਧੂ ਵਰਤੋਂ " +"ਲਈ :func:`bytes.splitlines` ਵੇਖੋ।" msgid "variable annotation" -msgstr "" +msgstr "ਵੇਰੀਏਬਲ ਐਨੋਟੇਸ਼ਨ" msgid "An :term:`annotation` of a variable or a class attribute." -msgstr "" +msgstr "ਕਿਸੇ ਵੇਰੀਏਬਲ ਜਾਂ ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟ ਦੀ :term:`annotation`।" msgid "" "When annotating a variable or a class attribute, assignment is optional::" msgstr "" +"ਜਦੋਂ ਕਿਸੇ ਵੇਰੀਏਬਲ ਜਾਂ ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟ ਨੂੰ annotate ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ assignment ਵਿਕਲਪਿਕ " +"ਹੁੰਦੀ ਹੈ::" msgid "" "class C:\n" " field: 'annotation'" msgstr "" +"class C:\n" +" field: 'annotation'" msgid "" "Variable annotations are usually used for :term:`type hints `: " "for example this variable is expected to take :class:`int` values::" msgstr "" +"ਵੇਰੀਏਬਲ annotations ਆਮ ਤੌਰ 'ਤੇ :term:`type hints ` ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ " +"ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਇਹ ਵੇਰੀਏਬਲ :class:`int` ਮੁੱਲਾਂ ਨੂੰ ਰੱਖਣ ਦੀ ਉਮੀਦ ਰੱਖਦਾ ਹੈ::" msgid "count: int = 0" -msgstr "" +msgstr "count: int = 0" msgid "Variable annotation syntax is explained in section :ref:`annassign`." -msgstr "" +msgstr "ਵੇਰੀਏਬਲ annotation ਦੀ syntax ਨੂੰ :ref:`annassign` ਭਾਗ ਵਿੱਚ ਸਮਝਾਇਆ ਗਿਆ ਹੈ।" msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which describe " "this functionality. Also see :ref:`annotations-howto` for best practices on " "working with annotations." msgstr "" +":term:`function annotation`, :pep:`484` ਅਤੇ :pep:`526` ਵੇਖੋ, ਜੋ ਇਸ ਸੁਵਿਧਾ ਦਾ ਵਰਣਨ " +"ਕਰਦੇ ਹਨ। Annotations ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ ਵਧੀਆ ਅਭਿਆਸਾਂ ਲਈ :ref:`annotations-howto` ਵੀ " +"ਵੇਖੋ।" msgid "virtual environment" -msgstr "" +msgstr "ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ" msgid "" "A cooperatively isolated runtime environment that allows Python users and " @@ -2557,50 +3569,60 @@ msgid "" "interfering with the behaviour of other Python applications running on the " "same system." msgstr "" +"ਇੱਕ ਸਹਿਕਾਰਤਾਪੂਰਵਕ ਅਲੱਗ ਕੀਤਾ ਗਿਆ runtime environment ਜੋ Python ਵਰਤੋਂਕਾਰਾਂ ਅਤੇ " +"ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ Python distribution packages ਨੂੰ install ਅਤੇ upgrade ਕਰਨ ਦੀ ਆਗਿਆ " +"ਦਿੰਦਾ ਹੈ, ਬਿਨਾਂ ਉਸੇ ਸਿਸਟਮ 'ਤੇ ਚੱਲ ਰਹੀਆਂ ਹੋਰ Python ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੇ ਵਿਹਾਰ ਵਿੱਚ ਦਖ਼ਲ ਪਾਏ।" msgid "See also :mod:`venv`." -msgstr "" +msgstr ":mod:`venv` ਵੀ ਵੇਖੋ।" msgid "virtual machine" -msgstr "" +msgstr "ਵਰਚੁਅਲ ਮਸ਼ੀਨ" msgid "" "A computer defined entirely in software. Python's virtual machine executes " "the :term:`bytecode` emitted by the bytecode compiler." msgstr "" +"ਇੱਕ ਕੰਪਿਊਟਰ ਜੋ ਪੂਰੀ ਤਰ੍ਹਾਂ software ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦਾ ਹੈ। Python ਦੀ virtual machine " +"bytecode compiler ਦੁਆਰਾ ਬਣਾਏ ਗਏ :term:`bytecode` ਨੂੰ ਚਲਾਉਂਦੀ ਹੈ।" msgid "walrus operator" -msgstr "" +msgstr "ਵਾਲਰਸ ਓਪਰੇਟਰ" msgid "" "A light-hearted way to refer to the :ref:`assignment expression ` operator ``:=`` because it looks a bit like a walrus if you " "turn your head." msgstr "" +":ref:`assignment expression ` operator ``:=`` ਨੂੰ ਹਲਕੇ-" +"ਫੁਲਕੇ ਢੰਗ ਨਾਲ ਸੰਬੋਧਨ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ, ਕਿਉਂਕਿ ਸਿਰ ਥੋੜ੍ਹਾ ਮੋੜ ਕੇ ਵੇਖਣ ਤੇ ਇਹ ਕੁਝ ਹੱਦ ਤੱਕ " +"walrus ਵਰਗਾ ਦਿਸਦਾ ਹੈ।" msgid "Zen of Python" -msgstr "" +msgstr "ਜ਼ੈਨ ਆਫ਼ ਪਾਇਥਨ" msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing " "\"``import this``\" at the interactive prompt." msgstr "" +"Python ਦੇ ਡਿਜ਼ਾਈਨ ਸਿਧਾਂਤਾਂ ਅਤੇ ਦਰਸ਼ਨਾਂ ਦੀ ਸੂਚੀ, ਜੋ ਭਾਸ਼ਾ ਨੂੰ ਸਮਝਣ ਅਤੇ ਵਰਤਣ ਵਿੱਚ ਮਦਦਗਾਰ ਹੁੰਦੀ " +"ਹੈ। ਇਹ ਸੂਚੀ interactive prompt 'ਤੇ \"``import this``\" ਟਾਈਪ ਕਰਕੇ ਵੇਖੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "..." -msgstr "" +msgstr "..." msgid "ellipsis literal" -msgstr "" +msgstr "ellipsis literal" msgid "C-contiguous" -msgstr "" +msgstr "C-contiguous" msgid "Fortran contiguous" -msgstr "" +msgstr "Fortran contiguous" msgid "magic" -msgstr "" +msgstr "ਮੈਜਿਕ" msgid "special" -msgstr "" +msgstr "ਵਿਸ਼ੇਸ਼" diff --git a/howto/a-conceptual-overview-of-asyncio.po b/howto/a-conceptual-overview-of-asyncio.po index bc014f5..c090277 100644 --- a/howto/a-conceptual-overview-of-asyncio.po +++ b/howto/a-conceptual-overview-of-asyncio.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -58,9 +58,9 @@ msgid "" msgstr "" msgid "" -"`500 Lines or Less: A Web Crawler With asyncio Coroutines `_ by A. Jesse Jiryu " -"Davis and Guido van Rossum." +"`500 Lines or Less: A Web Crawler With asyncio Coroutines `_ by A. " +"Jesse Jiryu Davis and Guido van Rossum." msgstr "" msgid "A conceptual overview part 1: the high-level" @@ -182,9 +182,9 @@ msgstr "" msgid "" "Coroutines and coroutine functions were built by leveraging the " -"functionality of :term:`generators ` and :term:" -"`generator functions `. Recall, a generator function is a " -"function that :keyword:`yield`\\s, like this one::" +"functionality of :term:`generators ` " +"and :term:`generator functions `. Recall, a generator function is " +"a function that :keyword:`yield`\\s, like this one::" msgstr "" msgid "" @@ -238,8 +238,8 @@ msgstr "" msgid "" "Creating a task automatically schedules it for execution (by adding a " "callback to run it in the event loop's to-do list, that is, collection of " -"jobs). The recommended way to create tasks is via :func:`asyncio." -"create_task`." +"jobs). The recommended way to create tasks is " +"via :func:`asyncio.create_task`." msgstr "" msgid "" @@ -434,11 +434,11 @@ msgstr "" msgid "" "This behavior of ``await coroutine`` can trip a lot of people up! That " "example highlights how using only ``await coroutine`` could unintentionally " -"hog control from other tasks and effectively stall the event loop. :func:" -"`asyncio.run` can help you detect such occurrences via the ``debug=True`` " -"flag, which enables :ref:`debug mode `. Among other " -"things, it will log any coroutines that monopolize execution for 100ms or " -"longer." +"hog control from other tasks and effectively stall the event " +"loop. :func:`asyncio.run` can help you detect such occurrences via the " +"``debug=True`` flag, which enables :ref:`debug mode `. " +"Among other things, it will log any coroutines that monopolize execution for " +"100ms or longer." msgstr "" msgid "" @@ -507,11 +507,11 @@ msgstr "" msgid "" ":ref:`yield `, as usual, pauses execution and returns control to " "the caller. In the example above, the ``yield``, on line 3, is called by " -"``... = await rock`` on line 11. More broadly speaking, ``await`` calls the :" -"meth:`~object.__await__` method of the given object. ``await`` also does one " -"more very special thing: it propagates (or \"passes along\") any ``yield``\\ " -"s it receives up the call chain. In this case, that's back to ``... = " -"coroutine.send(None)`` on line 16." +"``... = await rock`` on line 11. More broadly speaking, ``await`` calls " +"the :meth:`~object.__await__` method of the given object. ``await`` also " +"does one more very special thing: it propagates (or \"passes along\") any " +"``yield``\\ s it receives up the call chain. In this case, that's back to " +"``... = coroutine.send(None)`` on line 16." msgstr "" msgid "" @@ -601,8 +601,8 @@ msgstr "" msgid "" "We'll go through an example of how you could leverage a future to create " -"your own variant of asynchronous sleep (``async_sleep``) which mimics :func:" -"`asyncio.sleep`." +"your own variant of asynchronous sleep (``async_sleep``) which " +"mimics :func:`asyncio.sleep`." msgstr "" msgid "" @@ -661,8 +661,8 @@ msgid "" "Below, we use a rather bare ``YieldToEventLoop()`` object to ``yield`` from " "its ``__await__`` method, ceding control to the event loop. This is " "effectively the same as calling ``asyncio.sleep(0)``, but this approach " -"offers more clarity, not to mention it's somewhat cheating to use ``asyncio." -"sleep`` when showcasing how to implement it!" +"offers more clarity, not to mention it's somewhat cheating to use " +"``asyncio.sleep`` when showcasing how to implement it!" msgstr "" msgid "" diff --git a/howto/abi3t-migration.po b/howto/abi3t-migration.po deleted file mode 100644 index 1f0de3c..0000000 --- a/howto/abi3t-migration.po +++ /dev/null @@ -1,887 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-06-03 18:21+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Migrating to Stable ABI for free threading (``abi3t``)" -msgstr "" - -msgid "" -"Starting with the 3.15 release, CPython supports a variant of the Stable ABI " -"that supports :term:`free-threaded ` Python: the Stable ABI " -"for Free-Threaded Builds, or ``abi3t`` for short. This document describes " -"how to adapt C API extensions to support free threading." -msgstr "" - -msgid "Why do this" -msgstr "" - -msgid "" -"The typical reason to use the Stable ABI is to reduce the number of " -"artifacts that you need to build and distribute for each version of your " -"library." -msgstr "" - -msgid "" -"Without the Stable ABI, you must build a separate shared library, and " -"typically a *wheel* distribution, for each feature version of CPython you " -"wish to support. For example, each tag in the following table represents a " -"separate library/wheel:" -msgstr "" - -msgid "CPython version" -msgstr "" - -msgid "Non-free-threaded" -msgstr "" - -msgid "Free-threaded" -msgstr "" - -msgid "3.12" -msgstr "" - -msgid "``cpython-312``" -msgstr "" - -msgid "---" -msgstr "" - -msgid "3.13" -msgstr "" - -msgid "``cpython-313``" -msgstr "" - -msgid "``cpython-313t``" -msgstr "" - -msgid "3.14" -msgstr "" - -msgid "``cpython-314``" -msgstr "" - -msgid "``cpython-314t``" -msgstr "" - -msgid "3.15" -msgstr "" - -msgid "``cpython-315``" -msgstr "" - -msgid "``cpython-315t``" -msgstr "" - -msgid "3.16" -msgstr "" - -msgid "``cpython-316``" -msgstr "" - -msgid "``cpython-316t``" -msgstr "" - -msgid "Later versions" -msgstr "" - -msgid ":samp:`cpython-3{XX}`" -msgstr "" - -msgid ":samp:`cpython-3{XX}t`" -msgstr "" - -msgid "" -"That's a lot of builds, especially when multiplied by the number of " -"supported platforms." -msgstr "" - -msgid "" -"With the Stable ABI (``abi3``, introduced in CPython 3.2), a single " -"extension (per platform) can cover all *non-free-threaded* builds of CPython:" -msgstr "" - -msgid "``abi3``" -msgstr "" - -msgid "" -"The Stable ABI for free-threaded builds (``abi3t``), introduced in CPython " -"3.15, does the same for free-threaded builds. And it's compatible with non-" -"free-threaded ones as well:" -msgstr "" - -msgid "``abi3`` *" -msgstr "" - -msgid "``abi3t``" -msgstr "" - -msgid "" -"\\* (As above, the ``abi3`` extension is compatible with all non-free-" -"threaded builds; even the 3.15+ ones that this table \"attributes\" to " -"``abi3t``.)" -msgstr "" - -msgid "Why *not* do this" -msgstr "" - -msgid "There are two main downsides to the Stable ABI." -msgstr "" - -msgid "" -"First, your extension may become slower, since the Stable ABI prioritizes " -"compatibility over performance. The difference is usually not noticeable, " -"and often can be mitigated by using the same source to build both a Stable " -"ABI build and a few version-specific ones for \"tier 1\" CPython versions." -msgstr "" - -msgid "" -"Second, not all of the C API is available. Extensions need to be ported to " -"build for the Stable ABI, which may be difficult or, in rare cases, " -"impossible." -msgstr "" - -msgid "" -"Specifically, ``abi3t`` requires APIs added in CPython 3.15. If you want to " -"build your extension for older versions of CPython from the same source, you " -"have two main options:" -msgstr "" - -msgid "Use preprocessor conditionals." -msgstr "" - -msgid "" -"When following this guide, use ``#ifdef Py_TARGET_ABI3T`` blocks whenever " -"you are told to do a change that breaks the build on CPython versions you " -"care about. Keep the pre-existing code in ``#else`` blocks." -msgstr "" - -msgid "" -"For hand-written C extensions, this approach is reasonable down to CPython " -"3.12, due to additions introduced in :pep:`697`. Keeping compatibility with " -"3.11 and below may be worth it for code generators (for example, Cython)." -msgstr "" - -msgid "" -"Do not port to ``abi3t``, and continue building separate extensions for each " -"version of CPython, until you can drop support for the older versions." -msgstr "" - -msgid "" -"This is a valid approach. Not all extensions need to switch to ``abi3t`` " -"right now." -msgstr "" - -msgid "Prerequisites" -msgstr "" - -msgid "" -"This guide assumes that you have an extension written directly in C (or C+" -"+), which you want to port to ``abi3t``." -msgstr "" - -msgid "" -"If your extension uses a code generator (like Cython) or language binding " -"(like PyO3), it's best to wait until that tool has support for ``abi3t``. If " -"you maintain such a tool, you might be able to adapt the instructions here " -"for your tool." -msgstr "" - -msgid "Non-free-threaded Stable ABI" -msgstr "" - -msgid "" -"Your extension should support the non-free-threaded Stable ABI (``abi3``). " -"If not, either port it first, or follow this guide but be prepared to fix " -"issues it does not mention." -msgstr "" - -msgid "Free-threading support" -msgstr "" - -msgid "" -"While it's technically not a hard prerequisite, you will most likely want to " -"prepare your extension for free threading before you port it to ``abi3t``. " -"See :ref:`freethreading-extensions-howto` for instructions." -msgstr "" - -msgid "" -"`Porting Extension Modules to Support Free-Threading `__: A community-maintained porting guide for " -"extension authors." -msgstr "" - -msgid "Isolating extension modules" -msgstr "" - -msgid "" -"Your module should use :ref:`multi-phase initialization `, and it should either be isolated or limit itself to be " -"loaded at most once per process. If it is not your case, follow :ref:" -"`isolating-extensions-howto` first. (See the :ref:`opt-out section " -"` for a shortcut.)" -msgstr "" - -msgid "Avoiding variable-sized types" -msgstr "" - -msgid "" -"If your extension defines variable-sized types (using :c:macro:" -"`Py_tp_itemsize` or :c:member:`PyTypeObject.tp_itemsize`), it cannot be " -"ported to ``abi3t`` 3.15." -msgstr "" - -msgid "Setting up the build" -msgstr "" - -msgid "" -"If you use a build tool (such as setuptools, meson-python, scikit-build-" -"core), search its documentation for a way to select ``abi3t``. At the time " -"of writing, not all of them have this; but if your tool does, use it. You " -"may want to verify that it set the right flag by temporarily adding the " -"following just after ``#include ``::" -msgstr "" - -msgid "" -"#if Py_TARGET_ABI3T+0 <= 0x30f0000\n" -"#error \"abi3t define is not set!\"\n" -"#endif" -msgstr "" - -msgid "" -"This should result in a different error than \"``abi3t`` define is not set\"." -msgstr "" - -msgid "" -"If your build tool doesn't support ``abi3t`` yet, set the following macro " -"before including ``Python.h``::" -msgstr "" - -msgid "#define Py_TARGET_ABI3T 0x30f0000" -msgstr "" - -msgid "or specify it as a compiler flag, for example::" -msgstr "" - -msgid "-DPy_TARGET_ABI3T=0x30f0000" -msgstr "" - -msgid "" -"Once your extension builds with this setting, it will be compatible with " -"CPython 3.15 and above." -msgstr "" - -msgid "" -"If you set this macro manually, you will later need to name and tag the " -"resulting extension manually as well. This is covered in :ref:`abi3t-" -"migration-tagging` below." -msgstr "" - -msgid "" -"This guide will ask you to make a series of changes. After each one, verify " -"that your extension still builds in the original (non-``abi3t``) " -"configuration, and ideally run tests on all Python versions you support. " -"This will ensure that nothing breaks as you are porting." -msgstr "" - -msgid "Module export hook" -msgstr "" - -msgid "" -"Unless you've done this step already, your extension module defines a :ref:" -"`module initialization function ` named :samp:" -"`PyInit_{}`. You will need to port it to a :ref:`module export " -"hook `, :samp:`PyModExport_{}`, a " -"feature added in CPython 3.15 in :pep:`793`." -msgstr "" - -msgid "" -"Your existing init function should look like this (with your own names for " -"```` and ````):" -msgstr "" - -msgid "" -"PyMODINIT_FUNC\n" -"PyInit_(void)\n" -"{\n" -" return PyModuleDef_Init(&);\n" -"}" -msgstr "" - -msgid "" -"If there is some code before the ``return``, move it to a :c:macro:" -"`Py_mod_create` or :c:macro:`Py_mod_exec` slot function. See the :ref:" -"`PyInit documentation ` for related information." -msgstr "" - -msgid "" -"The function references a ``PyModuleDef`` object (```` in the code " -"above). Its definition should be similar to the following, with different " -"values and perhaps some fields unnnamed or left out:" -msgstr "" - -msgid "" -"static PyModuleDef = {\n" -" PyModuleDef_HEAD_INIT,\n" -" .m_name = \"my_module\",\n" -" .m_doc = \"my docstring\",\n" -" .m_size = sizeof(my_state_struct),\n" -" .m_methods = my_methods,\n" -" .m_slots = my_slots,\n" -" .m_traverse = my_traverse,\n" -" .m_clear = my_clear,\n" -" .m_free = my_free,\n" -"};" -msgstr "" - -msgid "" -"Remove this definition and the ``PyInit`` function (or put them in an " -"``#ifndef Py_TARGET_ABI3T`` block, to retain backwards compatibility), and " -"replace them with the following:" -msgstr "" - -msgid "" -"PyABIInfo_VAR(abi_info);\n" -"\n" -"static PySlot my_slot_array[] = {\n" -" PySlot_STATIC_DATA(Py_mod_abi, &abi_info),\n" -" PySlot_STATIC_DATA(Py_mod_name, \"my_module\"),\n" -" PySlot_STATIC_DATA(Py_mod_doc, \"my docstring\"),\n" -" PySlot_SIZE(Py_mod_state_size, sizeof(my_state_struct)),\n" -" PySlot_STATIC_DATA(Py_mod_methods, my_methods),\n" -" PySlot_STATIC_DATA(Py_mod_slots, my_slots),\n" -" PySlot_FUNC(Py_mod_state_traverse, my_traverse),\n" -" PySlot_FUNC(Py_mod_state_clear, my_clear),\n" -" PySlot_FUNC(Py_mod_state_free, my_free),\n" -" PySlot_END\n" -"};\n" -"\n" -"PyMODEXPORT_FUNC\n" -"PyModExport_(void)\n" -"{\n" -" return my_slot_array;\n" -"}" -msgstr "" - -msgid "" -"Leave out any fields that were missing (except the new :c:macro:" -"`Py_mod_abi`), and substitute your own values." -msgstr "" - -msgid "" -"See the :c:type:`PySlot` and :c:ref:`export hook ` " -"documentation for details on this API." -msgstr "" - -msgid "" -"As in the example, your ``PyModExport_`` function should *only* return a " -"pointer to static data. If you cannot avoid additional code, refer to the :" -"ref:`caveats in PyModExport documentation `." -msgstr "" - -msgid "Existing slots" -msgstr "" - -msgid "" -"If you have a ``Py_mod_slots`` slot, check the array it refers to. It should " -"be a :c:type:`PyModuleDef_Slot` array like the following:" -msgstr "" - -msgid "" -"static PyObject *create_module(PyObject *spec, PyModuleDef *def) { ... }\n" -"static int my_first_module_exec(PyObject *module) { ... }\n" -"static int my_second_module_exec(PyObject *module) { ... }\n" -"\n" -"static PyModuleDef_Slot my_slots[] = {\n" -" {Py_mod_gil, Py_MOD_GIL_NOT_USED},\n" -" {Py_mod_multiple_interpreters, Py_MOD_PER_INTERPRETER_GIL_SUPPORTED},\n" -" {Py_mod_create, my_module_create},\n" -" {Py_mod_exec, my_first_module_exec},\n" -" {Py_mod_exec, my_second_module_exec},\n" -" {0, NULL}\n" -"};" -msgstr "" - -msgid "``py_mod_create``" -msgstr "" - -msgid "" -"If you have a :c:macro:`Py_mod_create` entry, make sure the function can be " -"called with ``NULL`` as its second argument (instead of the :c:type:" -"`PyModuleDef`, which you are removing). Often, this argument isn't used at " -"all; you can check by renaming it:" -msgstr "" - -msgid "" -"static PyObject *create_module(PyObject *spec, PyModuleDef *_unused) { ... }" -msgstr "" - -msgid "" -"If the argument is used, find a different way to pass in the data. Commonly, " -"the information is static and you can refer to it directly. (If you're " -"reusing a single function for several different modules, consider defining " -"several functions instead.)" -msgstr "" - -msgid "Multiple ``py_mod_exec``" -msgstr "" - -msgid "" -"If you have *more than one* :c:macro:`Py_mod_exec` entry, consolidate them: " -"create a new function that calls the others, and replace existing slots with " -"it." -msgstr "" - -msgid "" -"static int my_module_exec(PyObject *module) {\n" -" if (my_first_module_exec(module) < 0) return -1;\n" -" if (my_second_module_exec(module) < 0) return -1;\n" -"}\n" -"\n" -"static PyModuleDef_Slot my_slots[] = {\n" -" ...\n" -" /* (remove other Py_mod_exec slots) */\n" -" ...\n" -" {Py_mod_exec, my_module_exec},\n" -" {0, NULL}\n" -"};" -msgstr "" - -msgid "" -"If the functions aren't used elsewhere, you can combine their bodies instead." -msgstr "" - -msgid "Merging slot arrays" -msgstr "" - -msgid "" -"Optionally, when you break compatibility with Python 3.14, you may clean up " -"the code by moving slots into the :c:type:`PySlot` array, and converting the " -"definitions to :c:macro:`PySlot_DATA` and :c:macro:`PySlot_FUNC`:" -msgstr "" - -msgid "" -"static PySlot my_slot_array[] = {\n" -" ...\n" -" PySlot_DATA(Py_mod_gil, Py_MOD_GIL_NOT_USED),\n" -" PySlot_DATA(Py_mod_multiple_interpreters,\n" -" Py_MOD_PER_INTERPRETER_GIL_SUPPORTED)\n" -" PySlot_FUNC(Py_mod_create, my_module_create),\n" -" PySlot_FUNC(Py_mod_exec, my_module_exec),\n" -" PySlot_END\n" -"};" -msgstr "" - -msgid "" -"If you do this, delete the original :c:type:`PyModuleDef_Slot` array and its " -"``Py_mod_slots`` entry." -msgstr "" - -msgid "Associated ``PyModuleDef``" -msgstr "" - -msgid "" -"Since the new API does not use a :c:type:`!PyModuleDef` structure, a " -"definition will not be associated with the resulting module. This changes " -"the behavior of the following functions:" -msgstr "" - -msgid ":c:func:`PyModule_GetDef`" -msgstr "" - -msgid ":c:func:`PyType_GetModuleByDef`" -msgstr "" - -msgid "" -"Check your code for these. If you do not use them, you can skip this section." -msgstr "" - -msgid "These functions are typically used for two purposes:" -msgstr "" - -msgid "" -"To get the definition the module was created with. This is no longer " -"possible using the new API. Modules no longer keep a reference to the " -"definition, so you will need to figure out a different way to pass the " -"relevant data around." -msgstr "" - -msgid "" -"To check if a given module object is “yours”. This use case is now served " -"by :ref:`module tokens ` -- opaque pointers that identify " -"a module. To use a token, declare (or reuse) a unique static variable, for " -"example:" -msgstr "" - -msgid "static char my_token;" -msgstr "" - -msgid "" -"and add a pointer to it in a new entry to your module's ``PySlot`` array:" -msgstr "" - -msgid "" -"static PySlot my_slot_array[] = {\n" -" ...\n" -" PySlot_STATIC_DATA(Py_mod_token, &my_token),\n" -" PySlot_END\n" -"}" -msgstr "" - -msgid "Then, switch from :c:func:`PyModule_GetDef` calls such as:" -msgstr "" - -msgid "PyModuleDef *def = PyModule_GetDef(module);" -msgstr "" - -msgid "" -"to :c:func:`PyModule_GetToken` (which uses an output argument and may fail " -"with an exception):" -msgstr "" - -msgid "" -"void *token;\n" -"if (PyModule_GetToken(module, &token) < 0) {\n" -" /* handle error */\n" -"}" -msgstr "" - -msgid "and from :c:func:`PyType_GetModuleByDef` calls such as:" -msgstr "" - -msgid "" -"PyObject *module = PyType_GetModuleByDef(type, my_def);\n" -"/* handle error; use module */" -msgstr "" - -msgid "" -"to :c:func:`PyType_GetModuleByToken` (which returns a strong reference):" -msgstr "" - -msgid "" -"PyObject *module = PyType_GetModuleByToken(type, my_token);\n" -"/* handle error; use module */\n" -"Py_XDECREF(module);" -msgstr "" - -msgid "``PyObject`` opaqueness" -msgstr "" - -msgid "" -"The :c:type:`PyObject` and :c:type:`PyVarObject` structures are opaque in " -"``abi3t``." -msgstr "" - -msgid "" -"Accessing their members is prohibited. If you do this, switch to getter/" -"setter functions mentioned in their documentation:" -msgstr "" - -msgid ":c:member:`PyObject.ob_type`" -msgstr "" - -msgid ":c:member:`PyObject.ob_refcnt`" -msgstr "" - -msgid ":c:member:`PyVarObject.ob_size`" -msgstr "" - -msgid "" -"Also, the *size* of the :c:type:`PyObject` structures is unknown to the " -"compiler. It can -- and *does* -- change between different CPython builds." -msgstr "" - -msgid "" -"While the size is available at runtime (for example as ``sys." -"getsizeof(object())`` in Python code), you should resist the temptation to " -"calculate pointer offsets from it. The object memory layout is subject to " -"change in future ``abi3t`` implementations." -msgstr "" - -msgid "Custom type definitions" -msgstr "" - -msgid "" -"Since :c:type:`!PyObject` is opaque, the traditional way of defining custom " -"types no longer works:" -msgstr "" - -msgid "" -"typedef struct {\n" -" PyObject_HEAD // expands to `PyObject ob_base;` which has unknown size\n" -"\n" -" int my_data;\n" -"} CustomObject;\n" -"\n" -"static PyType_Spec CustomType_spec = {\n" -" ...\n" -" .basicsize = sizeof(CustomObject),\n" -" ...\n" -"};" -msgstr "" - -msgid "" -"Most likely, all your class definitions, *and* all code that accesses your " -"classes' data, will need to be rewritten. This will probably be the biggest " -"change you need to support ``abi3t``." -msgstr "" - -msgid "" -"For each such type, instead of defining a ``struct`` for the entire " -"instance, define one with only the “additional” fields -- ones specific to " -"your class, not its superclasses:" -msgstr "" - -msgid "" -"typedef struct {\n" -" int my_data;\n" -"} CustomObjectData;" -msgstr "" - -msgid "" -"Change the name. Almost all code that uses the struct will need to change " -"(notably, pointers to the new structure cannot be cast to/from " -"``PyObject*``), and changing the name will highlight the usages as compiler " -"errors. (If you use ``typeof``, C++ ``auto``, or similar ways to avoid " -"typing the type name, this won't work. Be extra careful, and consider " -"running tools to detect undefined behavior.)" -msgstr "" - -msgid "" -"Then, to create the class, use *negative* ``basicsize`` to indicate “extra” " -"storage space rather than *total* instance size:" -msgstr "" - -msgid "" -"static PyType_Spec CustomType_spec = {\n" -" ...\n" -" .basicsize = -sizeof(CustomObjectData), /* note the minus sign */\n" -" ...\n" -"};" -msgstr "" - -msgid "" -"If you use :c:macro:`Py_tp_members`, set the :c:macro:`Py_RELATIVE_OFFSET` " -"flag on each member and specify the :c:member:`~PyMemberDef.offset` relative " -"to your new struct." -msgstr "" - -msgid "Custom type data access" -msgstr "" - -msgid "" -"Then comes the hard part: in all code that needs to access this struct, you " -"will need an additional :c:func:`PyObject_GetTypeData` call to retrieve a " -"``CustomObjectData *`` pointer from ``PyObject *``:" -msgstr "" - -msgid "" -"PyObject *obj = ...;\n" -"CustomObjectData *data = PyObject_GetTypeData(obj, cls);" -msgstr "" - -msgid "" -"Note that this call requires the *type object* for your class (``cls``)." -msgstr "" - -msgid "" -"If your class is not subclassable (that is, it does not use the :c:macro:" -"`Py_TPFLAGS_BASETYPE` flag), ``cls`` will be ``Py_TYPE(obj)``. Otherwise, " -"**DO NOT USE** ``Py_TYPE`` with :c:func:`!PyObject_GetTypeData`: it might " -"return memory reserved to an unrelated subclass! For example, if a user " -"makes a subclass like this:" -msgstr "" - -msgid "" -"class Sub(YourCustomClass):\n" -" __slots__ = ('a', 'b')" -msgstr "" - -msgid "" -"then ``Py_TYPE(obj)`` is ``Sub``, and the underlying memory may look like " -"this:" -msgstr "" - -msgid "" -"╭─ PyObject *obj\n" -"│ ╭─ the pointer you want\n" -"│ │ ╭─ PyObject_GetTypeData(obj, " -"Py_TYPE(obj))\n" -"▼ ▼ ▼\n" -"┌──────────┬───┬────────────────┬───┬─────────────┬───┬─────────────┐\n" -"│ PyObject │...│ CustomTypeData │...│ PyObject *a │...│ PyObject *b │\n" -"└──────────┴───┴────────────────┴───┴─────────────┴───┴─────────────┘" -msgstr "" - -msgid "" -"(Ellipses indicate possible padding. Note that this memory layout is not " -"guaranteed: future versions of Python may add different padding or even " -"switch the order of the structures.)" -msgstr "" - -msgid "There are two main ways to get the right class:" -msgstr "" - -msgid "" -"In instance methods, your implementation may use the :c:type:`PyCMethod` " -"signature (and the :c:macro:`METH_METHOD` bit in :c:member:`PyMethodDef." -"ml_flags`), and get the class as the ``defining_class`` argument." -msgstr "" - -msgid "" -"Otherwise, give your class a unique static token using the :c:macro:" -"`Py_tp_token` slot, and use:" -msgstr "" - -msgid "" -"PyTypeObject cls;\n" -"if (PyType_GetBaseByToken(Py_TYPE(obj), my_tp_token, &cls) < 0) {\n" -" /* handle error */\n" -"}\n" -"CustomObjectData *data = PyObject_GetTypeData(obj, cls);" -msgstr "" - -msgid "" -"Type tokens work similarly to module tokens covered :ref:`earlier in this " -"guide `." -msgstr "" - -msgid "Avoid build-time conditionals" -msgstr "" - -msgid "" -"Check your code for API that identifies the version of Python used to " -"*build* your extension. This no longer corresponds to the Python your " -"extension runs on, so code that uses this information often needs changing. " -"The macros to check for are:" -msgstr "" - -msgid "" -":c:macro:`PY_VERSION_HEX`, :c:macro:`PY_MAJOR_VERSION`, :c:macro:" -"`PY_MINOR_VERSION`:" -msgstr "" - -msgid "to get the run-time version, use :c:data:`Py_Version`;" -msgstr "" - -msgid "" -"to determine what C API is available, use :c:macro:`Py_TARGET_ABI3T`. This " -"macro is set to the minimum supported version." -msgstr "" - -msgid "" -":c:macro:`Py_GIL_DISABLED`: under ``abi3t``, this macro is always defined. " -"Code that works with free-threaded Python *should* also work with the GIL " -"enabled (since the GIL can be enabled at run time), and usually *does* " -"(unless it, for some reason, requires more than one :term:`attached thread " -"state ` at one time)." -msgstr "" - -msgid "Further code changes" -msgstr "" - -msgid "" -"If you are still left with compiler errors or warnings, find a way to fix " -"them. Alas, this guide is limited, and cannot cover all possible code " -"changes extensions may need." -msgstr "" - -msgid "" -"If you find a problem that other extension authors might run into, consider :" -"ref:`reporting an issue ` (or sending a pull " -"request) for this guide." -msgstr "" - -msgid "" -"It is possible your issue cannot be fixed for the current version of " -"``abi3t``. In that case, reporting it may help it get prioritized for the " -"next version of CPython." -msgstr "" - -msgid "Tagging and distribution" -msgstr "" - -msgid "" -"If you are using a build tool with ``abi3t`` support, your extension is " -"ready, but you might want to check that it was built correctly." -msgstr "" - -msgid "Extensions built with ``abi3t`` should have the following extension:" -msgstr "" - -msgid "On Windows: ``.pyd`` (like any other extension);" -msgstr "" - -msgid "" -"Linux, macOS, and other systems that use the ``.so`` suffix: ``.abi3t.so`` " -"(**not** ``.cpython-315t.so`` or ``.abi3.so``). Note that both free-threaded " -"and non-free-threaded builds will load ``.abi3t.so`` extensions;" -msgstr "" - -msgid "Other systems: consult your distributor, and perhaps update this guide." -msgstr "" - -msgid "If you distribute the extension as a *wheel*, use the following tags:" -msgstr "" - -msgid "" -"Python tag: :samp:`cp3{XX}`, where *XX* is the minimum Python version the " -"extension is built for. (For example, ``cp315`` if you set " -"``Py_TARGET_ABI3T`` to ``0x30f0000``. See :ref:`abi3-compiling` for more " -"values.)" -msgstr "" - -msgid "" -"ABI tag: ``abi3.abi3t``. This is a *compressed tag set* that indicates " -"support for both non-free-threaded and free-threaded builds." -msgstr "" - -msgid "For example, the wheel filename may look like this:" -msgstr "" - -msgid "myproject-1.0-cp315-abi3.abi3t-macosx_11_0_arm64.whl" -msgstr "" - -msgid "" -"`Platform Compatibility Tags `__ in the PyPA package " -"distribution metadata." -msgstr "" - -msgid "If the filename or tags are incorrect, fix them." -msgstr "" - -msgid "Testing" -msgstr "" - -msgid "" -"Note that when you build an extension compatible with multiple versions of " -"CPython, you should always *test* it with each version it supports (for " -"example, 3.15, 3.16, and so on). The Stable ABI only guarantees *ABI* " -"compatibility; there may also be behavior changes -- both intentional ones " -"(covered by :pep:`387`) and bugs." -msgstr "" - -msgid "" -"Be sure to run tests on both free-threaded and non-free-threaded builds of " -"CPython." -msgstr "" - -msgid "If they pass, congratulations! You have an ``abi3t`` extension." -msgstr "" diff --git a/howto/annotations.po b/howto/annotations.po index 592533d..49400df 100644 --- a/howto/annotations.po +++ b/howto/annotations.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,44 +46,45 @@ msgstr "" msgid "" "Note that this document is specifically about working with " "``__annotations__``, not uses *for* annotations. If you're looking for " -"information on how to use \"type hints\" in your code, please see the :mod:" -"`typing` module." +"information on how to use \"type hints\" in your code, please see " +"the :mod:`typing` module." msgstr "" msgid "Accessing The Annotations Dict Of An Object In Python 3.10 And Newer" msgstr "" msgid "" -"Python 3.10 adds a new function to the standard library: :func:`inspect." -"get_annotations`. In Python versions 3.10 through 3.13, calling this " -"function is the best practice for accessing the annotations dict of any " -"object that supports annotations. This function can also \"un-stringize\" " -"stringized annotations for you." +"Python 3.10 adds a new function to the standard " +"library: :func:`inspect.get_annotations`. In Python versions 3.10 through " +"3.13, calling this function is the best practice for accessing the " +"annotations dict of any object that supports annotations. This function can " +"also \"un-stringize\" stringized annotations for you." msgstr "" msgid "" "In Python 3.14, there is a new :mod:`annotationlib` module with " -"functionality for working with annotations. This includes a :func:" -"`annotationlib.get_annotations` function, which supersedes :func:`inspect." -"get_annotations`." +"functionality for working with annotations. This includes " +"a :func:`annotationlib.get_annotations` function, which " +"supersedes :func:`inspect.get_annotations`." msgstr "" msgid "" "If for some reason :func:`inspect.get_annotations` isn't viable for your use " "case, you may access the ``__annotations__`` data member manually. Best " -"practice for this changed in Python 3.10 as well: as of Python 3.10, ``o." -"__annotations__`` is guaranteed to *always* work on Python functions, " +"practice for this changed in Python 3.10 as well: as of Python 3.10, " +"``o.__annotations__`` is guaranteed to *always* work on Python functions, " "classes, and modules. If you're certain the object you're examining is one " "of these three *specific* objects, you may simply use ``o.__annotations__`` " "to get at the object's annotations dict." msgstr "" msgid "" -"However, other types of callables--for example, callables created by :func:" -"`functools.partial`--may not have an ``__annotations__`` attribute defined. " -"When accessing the ``__annotations__`` of a possibly unknown object, best " -"practice in Python versions 3.10 and newer is to call :func:`getattr` with " -"three arguments, for example ``getattr(o, '__annotations__', None)``." +"However, other types of callables--for example, callables created " +"by :func:`functools.partial`--may not have an ``__annotations__`` attribute " +"defined. When accessing the ``__annotations__`` of a possibly unknown " +"object, best practice in Python versions 3.10 and newer is to " +"call :func:`getattr` with three arguments, for example ``getattr(o, " +"'__annotations__', None)``." msgstr "" msgid "" @@ -156,14 +157,14 @@ msgstr "" msgid "" "After running this code, ``ann`` should be either a dictionary or ``None``. " -"You're encouraged to double-check the type of ``ann`` using :func:" -"`isinstance` before further examination." +"You're encouraged to double-check the type of ``ann`` " +"using :func:`isinstance` before further examination." msgstr "" msgid "" -"Note that some exotic or malformed type objects may not have a :attr:`~type." -"__dict__` attribute, so for extra safety you may also wish to use :func:" -"`getattr` to access :attr:`!__dict__`." +"Note that some exotic or malformed type objects may not have " +"a :attr:`~type.__dict__` attribute, so for extra safety you may also wish to " +"use :func:`getattr` to access :attr:`!__dict__`." msgstr "" msgid "Manually Un-Stringizing Stringized Annotations" @@ -177,10 +178,11 @@ msgid "" msgstr "" msgid "" -"If you're using Python 3.9 or older, or if for some reason you can't use :" -"func:`inspect.get_annotations`, you'll need to duplicate its logic. You're " -"encouraged to examine the implementation of :func:`inspect.get_annotations` " -"in the current Python version and follow a similar approach." +"If you're using Python 3.9 or older, or if for some reason you can't " +"use :func:`inspect.get_annotations`, you'll need to duplicate its logic. " +"You're encouraged to examine the implementation " +"of :func:`inspect.get_annotations` in the current Python version and follow " +"a similar approach." msgstr "" msgid "" @@ -189,26 +191,27 @@ msgid "" msgstr "" msgid "" -"If ``o`` is a module, use ``o.__dict__`` as the ``globals`` when calling :" -"func:`eval`." +"If ``o`` is a module, use ``o.__dict__`` as the ``globals`` when " +"calling :func:`eval`." msgstr "" msgid "" "If ``o`` is a class, use ``sys.modules[o.__module__].__dict__`` as the " -"``globals``, and ``dict(vars(o))`` as the ``locals``, when calling :func:" -"`eval`." +"``globals``, and ``dict(vars(o))`` as the ``locals``, when " +"calling :func:`eval`." msgstr "" msgid "" -"If ``o`` is a wrapped callable using :func:`functools.update_wrapper`, :deco:" -"`functools.wraps`, or :func:`functools.partial`, iteratively unwrap it by " -"accessing either ``o.__wrapped__`` or ``o.func`` as appropriate, until you " -"have found the root unwrapped function." +"If ``o`` is a wrapped callable " +"using :func:`functools.update_wrapper`, :deco:`functools.wraps`, " +"or :func:`functools.partial`, iteratively unwrap it by accessing either " +"``o.__wrapped__`` or ``o.func`` as appropriate, until you have found the " +"root unwrapped function." msgstr "" msgid "" -"If ``o`` is a callable (but not a class), use :attr:`o.__globals__ ` as the globals when calling :func:`eval`." +"If ``o`` is a callable (but not a class), use :attr:`o.__globals__ " +"` as the globals when calling :func:`eval`." msgstr "" msgid "" @@ -225,8 +228,8 @@ msgid "" msgstr "" msgid "" -"Definitions that aren't needed at runtime, only imported when :const:`typing." -"TYPE_CHECKING` is true." +"Definitions that aren't needed at runtime, only imported " +"when :const:`typing.TYPE_CHECKING` is true." msgstr "" msgid "" @@ -251,8 +254,8 @@ msgstr "" msgid "" "You should avoid accessing ``__annotations__`` directly on any object. " -"Instead, use :func:`annotationlib.get_annotations` (Python 3.14+) or :func:" -"`inspect.get_annotations` (Python 3.10+)." +"Instead, use :func:`annotationlib.get_annotations` (Python 3.14+) " +"or :func:`inspect.get_annotations` (Python 3.10+)." msgstr "" msgid "" @@ -319,17 +322,18 @@ msgstr "" msgid "" "If you use a class with a custom metaclass and access ``__annotations__`` on " "the class, you may observe unexpected behavior; see :pep:`749 <749#pep749-" -"metaclasses>` for some examples. You can avoid these quirks by using :func:" -"`annotationlib.get_annotations` on Python 3.14+ or :func:`inspect." -"get_annotations` on Python 3.10+. On earlier versions of Python, you can " -"avoid these bugs by accessing the annotations from the class's :attr:`~type." -"__dict__` (for example, ``cls.__dict__.get('__annotations__', None)``)." +"metaclasses>` for some examples. You can avoid these quirks by " +"using :func:`annotationlib.get_annotations` on Python 3.14+ " +"or :func:`inspect.get_annotations` on Python 3.10+. On earlier versions of " +"Python, you can avoid these bugs by accessing the annotations from the " +"class's :attr:`~type.__dict__` (for example, " +"``cls.__dict__.get('__annotations__', None)``)." msgstr "" msgid "" "In some versions of Python, instances of classes may have an " "``__annotations__`` attribute. However, this is not supported functionality. " "If you need the annotations of an instance, you can use :func:`type` to " -"access its class (for example, ``annotationlib." -"get_annotations(type(myinstance))`` on Python 3.14+)." +"access its class (for example, " +"``annotationlib.get_annotations(type(myinstance))`` on Python 3.14+)." msgstr "" diff --git a/howto/argparse-optparse.po b/howto/argparse-optparse.po index 37f29f4..4496897 100644 --- a/howto/argparse-optparse.po +++ b/howto/argparse-optparse.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,30 +23,32 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Migrating ``optparse`` code to ``argparse``" -msgstr "" +msgstr "``optparse`` ਕੋਡ ਨੂੰ ``argparse`` ਵਿੱਚ ਮਾਈਗਰੇਟ ਕਰਨਾ" msgid "" "The :mod:`argparse` module offers several higher level features not natively " "provided by the :mod:`optparse` module, including:" msgstr "" +":mod:`argparse` ਮੋਡੀਊਲ ਕਈ ਉੱਚ-ਪੱਧਰੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ :mod:`optparse` " +"ਮੋਡੀਊਲ ਵਿੱਚ ਮੂਲ ਰੂਪ ਵਿੱਚ ਉਪਲਬਧ ਨਹੀਂ ਹਨ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:" msgid "Handling positional arguments." -msgstr "" +msgstr "ਸਥਿਤੀ-ਆਧਾਰਿਤ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਸੰਭਾਲਣਾ।" msgid "Supporting subcommands." -msgstr "" +msgstr "ਉਪ-ਕਮਾਂਡਾਂ ਦਾ ਸਮਰਥਨ ਕਰਨਾ।" msgid "Allowing alternative option prefixes like ``+`` and ``/``." -msgstr "" +msgstr "``+`` ਅਤੇ ``/`` ਵਰਗੇ ਵਿਕਲਪਿਕ ਓਪਸ਼ਨ ਪ੍ਰੀਫ਼ਿਕਸਾਂ ਦੀ ਆਗਿਆ ਦੇਣਾ।" msgid "Handling zero-or-more and one-or-more style arguments." -msgstr "" +msgstr "ਜ਼ੀਰੋ-ਜਾਂ-ਵੱਧ ਅਤੇ ਇੱਕ-ਜਾਂ-ਵੱਧ ਸ਼ੈਲੀ ਦੇ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਸੰਭਾਲਣਾ।" msgid "Producing more informative usage messages." -msgstr "" +msgstr "ਹੋਰ ਜਾਣਕਾਰੀਪੂਰਨ ਵਰਤੋਂ ਸੁਨੇਹੇ ਤਿਆਰ ਕਰਨਾ।" msgid "Providing a much simpler interface for custom ``type`` and ``action``." -msgstr "" +msgstr "ਕਸਟਮ ``type`` ਅਤੇ ``action`` ਲਈ ਕਾਫ਼ੀ ਸਰਲ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਨਾ।" msgid "" "Originally, the :mod:`argparse` module attempted to maintain compatibility " @@ -56,65 +58,100 @@ msgid "" "named options and positional arguments in the declarative interface mean " "that the API has diverged from that of ``optparse`` over time." msgstr "" +"ਸ਼ੁਰੂ ਵਿੱਚ, :mod:`argparse` ਮੋਡੀਊਲ ਨੇ :mod:`optparse` ਨਾਲ ਅਨੁਕੂਲਤਾ ਬਣਾਈ ਰੱਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ " +"ਕੀਤੀ ਸੀ। ਹਾਲਾਂਕਿ, ਘੋਸ਼ਣਾਤਮਕ ਕਮਾਂਡ ਲਾਈਨ ਓਪਸ਼ਨ ਪ੍ਰੋਸੈਸਿੰਗ (ਜਦੋਂ ਕਿ ਸਥਿਤੀ-ਆਧਾਰਿਤ ਆਰਗੂਮੈਂਟਾਂ ਦੀ " +"ਪ੍ਰੋਸੈਸਿੰਗ ਐਪਲੀਕੇਸ਼ਨ ਕੋਡ 'ਤੇ ਛੱਡੀ ਜਾਂਦੀ ਹੈ) ਅਤੇ ਘੋਸ਼ਣਾਤਮਕ ਇੰਟਰਫੇਸ ਵਿੱਚ ਨਾਮਿਤ ਓਪਸ਼ਨਾਂ ਅਤੇ ਸਥਿਤੀ-" +"ਆਧਾਰਿਤ ਆਰਗੂਮੈਂਟਾਂ ਦੋਵਾਂ ਦੇ ਸਮਰਥਨ ਵਿਚਲੇ ਬੁਨਿਆਦੀ ਡਿਜ਼ਾਈਨ ਅੰਤਰਾਂ ਕਾਰਨ, ਸਮੇਂ ਦੇ ਨਾਲ ਇਸ ਦਾ API " +"``optparse`` ਤੋਂ ਵੱਖਰਾ ਹੋ ਗਿਆ ਹੈ।" msgid "" "As described in :ref:`choosing-an-argument-parser`, applications that are " "currently using :mod:`optparse` and are happy with the way it works can just " "continue to use ``optparse``." msgstr "" +"ਜਿਵੇਂ ਕਿ :ref:`choosing-an-argument-parser` ਵਿੱਚ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ, ਉਹ ਐਪਲੀਕੇਸ਼ਨਾਂ ਜੋ " +"ਇਸ ਵੇਲੇ :mod:`optparse` ਵਰਤ ਰਹੀਆਂ ਹਨ ਅਤੇ ਇਸ ਦੇ ਕੰਮ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨਾਲ ਸੰਤੁਸ਼ਟ ਹਨ, ਉਹ ਸਿਰਫ਼ " +"``optparse`` ਦੀ ਵਰਤੋਂ ਜਾਰੀ ਰੱਖ ਸਕਦੀਆਂ ਹਨ।" msgid "" "Application developers that are considering migrating should also review the " "list of intrinsic behavioural differences described in that section before " "deciding whether or not migration is desirable." msgstr "" +"ਜਿਹੜੇ ਐਪਲੀਕੇਸ਼ਨ ਡਿਵੈਲਪਰ ਮਾਈਗਰੇਸ਼ਨ ਬਾਰੇ ਵਿਚਾਰ ਕਰ ਰਹੇ ਹਨ, ਉਹਨਾਂ ਨੂੰ ਇਹ ਫ਼ੈਸਲਾ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ " +"ਕਿ ਮਾਈਗਰੇਸ਼ਨ ਕਰਨਾ ਉਚਿਤ ਹੈ ਜਾਂ ਨਹੀਂ, ਉਸ ਭਾਗ ਵਿੱਚ ਵਰਣਿਤ ਅੰਦਰੂਨੀ ਵਿਹਾਰਕ ਅੰਤਰਾਂ ਦੀ ਸੂਚੀ ਵੀ " +"ਦੇਖਣੀ ਚਾਹੀਦੀ ਹੈ।" msgid "" -"For applications that do choose to migrate from :mod:`optparse` to :mod:" -"`argparse`, the following suggestions should be helpful:" +"For applications that do choose to migrate from :mod:`optparse` " +"to :mod:`argparse`, the following suggestions should be helpful:" msgstr "" +"ਉਹਨਾਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਜੋ :mod:`optparse` ਤੋਂ :mod:`argparse` ਵਿੱਚ ਮਾਈਗਰੇਟ ਕਰਨ ਦਾ ਫ਼ੈਸਲਾ " +"ਕਰਦੀਆਂ ਹਨ, ਹੇਠਾਂ ਦਿੱਤੇ ਸੁਝਾਅ ਮਦਦਗਾਰ ਹੋਣਗੇ:" msgid "" -"Replace all :meth:`optparse.OptionParser.add_option` calls with :meth:" -"`ArgumentParser.add_argument` calls." +"Replace all :meth:`optparse.OptionParser.add_option` calls " +"with :meth:`ArgumentParser.add_argument` calls." msgstr "" +"ਸਾਰੀਆਂ :meth:`optparse.OptionParser.add_option` ਕਾਲਾਂ " +"ਨੂੰ :meth:`ArgumentParser.add_argument` ਕਾਲਾਂ ਨਾਲ ਬਦਲੋ।" msgid "" -"Replace ``(options, args) = parser.parse_args()`` with ``args = parser." -"parse_args()`` and add additional :meth:`ArgumentParser.add_argument` calls " -"for the positional arguments. Keep in mind that what was previously called " -"``options``, now in the :mod:`argparse` context is called ``args``." +"Replace ``(options, args) = parser.parse_args()`` with ``args = " +"parser.parse_args()`` and add additional :meth:`ArgumentParser.add_argument` " +"calls for the positional arguments. Keep in mind that what was previously " +"called ``options``, now in the :mod:`argparse` context is called ``args``." msgstr "" +"``(options, args) = parser.parse_args()`` ਨੂੰ ``args = parser.parse_args()`` " +"ਨਾਲ ਬਦਲੋ ਅਤੇ ਸਥਿਤੀ-ਆਧਾਰਿਤ ਆਰਗੂਮੈਂਟਾਂ ਲਈ ਵਾਧੂ :meth:`ArgumentParser.add_argument` " +"ਕਾਲਾਂ ਸ਼ਾਮਲ ਕਰੋ। ਧਿਆਨ ਵਿੱਚ ਰੱਖੋ ਕਿ ਜਿਸ ਨੂੰ ਪਹਿਲਾਂ ``options`` ਕਿਹਾ ਜਾਂਦਾ ਸੀ, ਉਹ " +"ਹੁਣ :mod:`argparse` ਦੇ ਸੰਦਰਭ ਵਿੱਚ ``args`` ਕਿਹਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"Replace :meth:`optparse.OptionParser.disable_interspersed_args` by using :" -"meth:`~ArgumentParser.parse_intermixed_args` instead of :meth:" -"`~ArgumentParser.parse_args`." +"Replace :meth:`optparse.OptionParser.disable_interspersed_args` by " +"using :meth:`~ArgumentParser.parse_intermixed_args` instead " +"of :meth:`~ArgumentParser.parse_args`." msgstr "" +":meth:`optparse.OptionParser.disable_interspersed_args` ਦੀ " +"ਥਾਂ :meth:`~ArgumentParser.parse_args` ਦੀ " +"ਬਜਾਏ :meth:`~ArgumentParser.parse_intermixed_args` ਦੀ ਵਰਤੋਂ ਕਰੋ।" msgid "" "Replace callback actions and the ``callback_*`` keyword arguments with " "``type`` or ``action`` arguments." msgstr "" +"ਕਾਲਬੈਕ ਐਕਸ਼ਨਾਂ ਅਤੇ ``callback_*`` ਕੀਵਰਡ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ``type`` ਜਾਂ ``action`` ਆਰਗੂਮੈਂਟਾਂ " +"ਨਾਲ ਬਦਲੋ।" msgid "" "Replace string names for ``type`` keyword arguments with the corresponding " "type objects (e.g. int, float, complex, etc)." msgstr "" +"``type`` ਕੀਵਰਡ ਆਰਗੂਮੈਂਟਾਂ ਲਈ ਸਟਰਿੰਗ ਨਾਮਾਂ ਨੂੰ ਸੰਬੰਧਿਤ ਕਿਸਮ ਆਬਜੈਕਟਾਂ (ਜਿਵੇਂ ਕਿ int, float, " +"complex ਆਦਿ) ਨਾਲ ਬਦਲੋ।" msgid "" -"Replace :class:`optparse.Values` with :class:`Namespace` and :exc:`optparse." -"OptionError` and :exc:`optparse.OptionValueError` with :exc:`ArgumentError`." +"Replace :class:`optparse.Values` with :class:`Namespace` " +"and :exc:`optparse.OptionError` and :exc:`optparse.OptionValueError` " +"with :exc:`ArgumentError`." msgstr "" +":class:`optparse.Values` ਨੂੰ :class:`Namespace` ਨਾਲ " +"ਅਤੇ :exc:`optparse.OptionError` ਅਤੇ :exc:`optparse.OptionValueError` " +"ਨੂੰ :exc:`ArgumentError` ਨਾਲ ਬਦਲੋ।" msgid "" "Replace strings with implicit arguments such as ``%default`` or ``%prog`` " "with the standard Python syntax to use dictionaries to format strings, that " "is, ``%(default)s`` and ``%(prog)s``." msgstr "" +"``%default`` ਜਾਂ ``%prog`` ਵਰਗੇ ਅਪ੍ਰਤੱਖ ਆਰਗੂਮੈਂਟਾਂ ਵਾਲੀਆਂ ਸਟਰਿੰਗਾਂ ਨੂੰ ਸਟਰਿੰਗਾਂ ਨੂੰ ਫਾਰਮੈਟ ਕਰਨ " +"ਲਈ ਡਿਕਸ਼ਨਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੇ ਮਿਆਰੀ Python ਸਿੰਟੈਕਸ ਨਾਲ ਬਦਲੋ, ਅਰਥਾਤ ``%(default)s`` " +"ਅਤੇ ``%(prog)s``।" msgid "" "Replace the OptionParser constructor ``version`` argument with a call to " "``parser.add_argument('--version', action='version', version='')``." msgstr "" +"OptionParser ਕੰਸਟ੍ਰਕਟਰ ਦੇ ``version`` ਆਰਗੂਮੈਂਟ ਨੂੰ ``parser.add_argument('--" +"version', action='version', version='')`` ਕਾਲ ਨਾਲ ਬਦਲੋ।" diff --git a/howto/argparse.po b/howto/argparse.po index d8986db..2917cd6 100644 --- a/howto/argparse.po +++ b/howto/argparse.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -257,8 +257,8 @@ msgstr "" msgid "" "That didn't go so well. That's because :mod:`argparse` treats the options we " -"give it as strings, unless we tell it otherwise. So, let's tell :mod:" -"`argparse` to treat that input as an integer::" +"give it as strings, unless we tell it otherwise. So, let's " +"tell :mod:`argparse` to treat that input as an integer::" msgstr "" msgid "" @@ -329,8 +329,8 @@ msgid "" "To show that the option is actually optional, there is no error when running " "the program without it. Note that by default, if an optional argument isn't " "used, the relevant variable, in this case ``args.verbosity``, is given " -"``None`` as a value, which is the reason it fails the truth test of the :" -"keyword:`if` statement." +"``None`` as a value, which is the reason it fails the truth test of " +"the :keyword:`if` statement." msgstr "" msgid "The help message is a bit different." @@ -701,8 +701,8 @@ msgid "" "We've just introduced yet another keyword, ``default``. We've set it to " "``0`` in order to make it comparable to the other int values. Remember that " "by default, if an optional argument isn't specified, it gets the ``None`` " -"value, and that cannot be compared to an int value (hence the :exc:" -"`TypeError` exception)." +"value, and that cannot be compared to an int value (hence " +"the :exc:`TypeError` exception)." msgstr "" msgid "And:" @@ -829,12 +829,13 @@ msgid "Conflicting options" msgstr "" msgid "" -"So far, we have been working with two methods of an :class:`argparse." -"ArgumentParser` instance. Let's introduce a third one, :meth:" -"`~ArgumentParser.add_mutually_exclusive_group`. It allows for us to specify " -"options that conflict with each other. Let's also change the rest of the " -"program so that the new functionality makes more sense: we'll introduce the " -"``--quiet`` option, which will be the opposite of the ``--verbose`` one::" +"So far, we have been working with two methods of " +"an :class:`argparse.ArgumentParser` instance. Let's introduce a third " +"one, :meth:`~ArgumentParser.add_mutually_exclusive_group`. It allows for us " +"to specify options that conflict with each other. Let's also change the rest " +"of the program so that the new functionality makes more sense: we'll " +"introduce the ``--quiet`` option, which will be the opposite of the ``--" +"verbose`` one::" msgstr "" msgid "" @@ -950,9 +951,9 @@ msgid "" msgstr "" msgid "" -"In order to translate these strings, they must first be extracted into a ``." -"po`` file. For example, using `Babel `__, run this " -"command:" +"In order to translate these strings, they must first be extracted into a " +"``.po`` file. For example, using `Babel `__, run " +"this command:" msgstr "" msgid "$ pybabel extract -o messages.po /usr/lib/python3.12/argparse.py" @@ -981,8 +982,8 @@ msgid "" msgstr "" msgid "" -"To translate your own strings in the :mod:`argparse` output, use :mod:" -"`gettext`." +"To translate your own strings in the :mod:`argparse` output, " +"use :mod:`gettext`." msgstr "" msgid "Custom type converters" diff --git a/howto/clinic.po b/howto/clinic.po index 2b7e18c..fcc81a1 100644 --- a/howto/clinic.po +++ b/howto/clinic.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,9 +23,11 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Argument Clinic How-To" -msgstr "" +msgstr "Argument Clinic ਕਿਵੇਂ-ਕਰੀਏ " msgid "" "The Argument Clinic How-TO has been moved to the `Python Developer's Guide " "`__." msgstr "" +"Argument Clinic ਕਿਵੇਂ-ਕਰੀਏ ਨੂੰ `Python Developer's Guide `__ ਵਿੱਚ ਭੇਜ ਦਿੱਤਾ ਗਿਆ ਹੈ।" diff --git a/howto/cporting.po b/howto/cporting.po index 3a77e58..0958efa 100644 --- a/howto/cporting.po +++ b/howto/cporting.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,23 +23,28 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Porting Extension Modules to Python 3" -msgstr "" +msgstr "ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲਾਂ ਨੂੰ Python 3 ਵਿੱਚ ਪੋਰਟ ਕਰਨਾ" msgid "" "We recommend the following resources for porting extension modules to Python " "3:" msgstr "" +"ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲਾਂ ਨੂੰ Python 3 ਵਿੱਚ ਪੋਰਟ ਕਰਨ ਲਈ ਅਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਸਰੋਤਾਂ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕਰਦੇ ਹਾਂ:" msgid "" "The `Migrating C extensions`_ chapter from *Supporting Python 3: An in-depth " "guide*, a book on moving from Python 2 to Python 3 in general, guides the " "reader through porting an extension module." msgstr "" +"*Supporting Python 3: An in-depth guide* ਕਿਤਾਬ ਦਾ `Migrating C extensions`_ " +"ਅਧਿਆਇ, ਜੋ ਆਮ ਤੌਰ 'ਤੇ Python 2 ਤੋਂ Python 3 ਵਿੱਚ ਤਬਦੀਲੀ ਬਾਰੇ ਹੈ, ਪਾਠਕ ਨੂੰ ਇੱਕ ਐਕਸਟੈਂਸ਼ਨ " +"ਮੋਡੀਊਲ ਨੂੰ ਪੋਰਟ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਬਾਰੇ ਮਾਰਗਦਰਸ਼ਨ ਦਿੰਦਾ ਹੈ।" msgid "" "The `Porting guide`_ from the *py3c* project provides opinionated " "suggestions with supporting code." msgstr "" +"*py3c* ਪ੍ਰੋਜੈਕਟ ਦੀ `Porting guide`_ ਸਹਾਇਕ ਕੋਡ ਦੇ ਨਾਲ ਵਿਹਾਰਕ ਸੁਝਾਅ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ।" msgid "" ":ref:`Recommended third party tools ` offer abstractions over " @@ -47,3 +52,7 @@ msgid "" "them, but the library then handles differences between various Python " "versions and implementations." msgstr "" +":ref:`ਸਿਫ਼ਾਰਸ਼ ਕੀਤੇ ਤੀਜੀ-ਧਿਰ ਦੇ ਟੂਲ ` Python ਦੇ C API ਉੱਤੇ ਅਮੂਰਤ ਪਰਤਾਂ " +"ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ। ਆਮ ਤੌਰ 'ਤੇ ਐਕਸਟੈਂਸ਼ਨਾਂ ਨੂੰ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਦੁਬਾਰਾ ਲਿਖਣਾ " +"ਪੈਂਦਾ ਹੈ, ਪਰ ਉਸ ਤੋਂ ਬਾਅਦ ਲਾਇਬ੍ਰੇਰੀ ਵੱਖ-ਵੱਖ Python ਸੰਸਕਰਣਾਂ ਅਤੇ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨਾਂ ਵਿਚਲੇ ਅੰਤਰਾਂ ਨੂੰ " +"ਸੰਭਾਲ ਲੈਂਦੀ ਹੈ।" diff --git a/howto/curses.po b/howto/curses.po index fe1deab..9935876 100644 --- a/howto/curses.po +++ b/howto/curses.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -143,9 +143,9 @@ msgid "" "Terminals usually return special keys, such as the cursor keys or navigation " "keys such as Page Up and Home, as a multibyte escape sequence. While you " "could write your application to expect such sequences and process them " -"accordingly, curses can do it for you, returning a special value such as :" -"const:`curses.KEY_LEFT`. To get curses to do the job, you'll have to enable " -"keypad mode. ::" +"accordingly, curses can do it for you, returning a special value such " +"as :const:`curses.KEY_LEFT`. To get curses to do the job, you'll have to " +"enable keypad mode. ::" msgstr "" msgid "stdscr.keypad(True)" @@ -163,9 +163,9 @@ msgid "" msgstr "" msgid "" -"to reverse the curses-friendly terminal settings. Then call the :func:" -"`~curses.endwin` function to restore the terminal to its original operating " -"mode. ::" +"to reverse the curses-friendly terminal settings. Then call " +"the :func:`~curses.endwin` function to restore the terminal to its original " +"operating mode. ::" msgstr "" msgid "curses.endwin()" @@ -207,11 +207,11 @@ msgid "" "initializations described above, also initializing colors if color support " "is present. :func:`!wrapper` then runs your provided callable. Once the " "callable returns, :func:`!wrapper` will restore the original state of the " -"terminal. The callable is called inside a :keyword:`try`...\\ :keyword:" -"`except` that catches exceptions, restores the state of the terminal, and " -"then re-raises the exception. Therefore your terminal won't be left in a " -"funny state on exception and you'll be able to read the exception's message " -"and traceback." +"terminal. The callable is called inside a :keyword:`try`..." +"\\ :keyword:`except` that catches exceptions, restores the state of the " +"terminal, and then re-raises the exception. Therefore your terminal won't " +"be left in a funny state on exception and you'll be able to read the " +"exception's message and traceback." msgstr "" msgid "Windows and Pads" @@ -227,9 +227,9 @@ msgid "" "The ``stdscr`` object returned by the :func:`~curses.initscr` function is a " "window object that covers the entire screen. Many programs may need only " "this single window, but you might wish to divide the screen into smaller " -"windows, in order to redraw or clear them separately. The :func:`~curses." -"newwin` function creates a new window of a given size, returning the new " -"window object. ::" +"windows, in order to redraw or clear them separately. " +"The :func:`~curses.newwin` function creates a new window of a given size, " +"returning the new window object. ::" msgstr "" msgid "" @@ -248,24 +248,25 @@ msgid "" msgstr "" msgid "" -"Your application can determine the size of the screen by using the :data:" -"`curses.LINES` and :data:`curses.COLS` variables to obtain the *y* and *x* " -"sizes. Legal coordinates will then extend from ``(0,0)`` to ``(curses.LINES " -"- 1, curses.COLS - 1)``." +"Your application can determine the size of the screen by using " +"the :data:`curses.LINES` and :data:`curses.COLS` variables to obtain the *y* " +"and *x* sizes. Legal coordinates will then extend from ``(0,0)`` to " +"``(curses.LINES - 1, curses.COLS - 1)``." msgstr "" msgid "" "When you call a method to display or erase text, the effect doesn't " -"immediately show up on the display. Instead you must call the :meth:" -"`~curses.window.refresh` method of window objects to update the screen." +"immediately show up on the display. Instead you must call " +"the :meth:`~curses.window.refresh` method of window objects to update the " +"screen." msgstr "" msgid "" "This is because curses was originally written with slow 300-baud terminal " "connections in mind; with these terminals, minimizing the time required to " "redraw the screen was very important. Instead curses accumulates changes to " -"the screen and displays them in the most efficient manner when you call :" -"meth:`!refresh`. For example, if your program displays some text in a " +"the screen and displays them in the most efficient manner when you " +"call :meth:`!refresh`. For example, if your program displays some text in a " "window and then clears the window, there's no need to send the original text " "because they're never visible." msgstr "" @@ -349,9 +350,9 @@ msgstr "" msgid "" "Fortunately the Python interface hides all these details. ``stdscr`` is a " -"window object like any other, and methods such as :meth:`~curses.window." -"addstr` accept multiple argument forms. Usually there are four different " -"forms." +"window object like any other, and methods such " +"as :meth:`~curses.window.addstr` accept multiple argument forms. Usually " +"there are four different forms." msgstr "" msgid "Form" @@ -397,9 +398,10 @@ msgstr "" msgid "" "The :meth:`~curses.window.addstr` method takes a Python string or bytestring " "as the value to be displayed. The contents of bytestrings are sent to the " -"terminal as-is. Strings are encoded to bytes using the value of the " -"window's :attr:`~window.encoding` attribute; this defaults to the default " -"system encoding as returned by :func:`locale.getencoding`." +"terminal as-is. On a build without wide-character support strings are " +"encoded using the value of the window's :attr:`~window.encoding` attribute; " +"this defaults to the default system encoding as returned " +"by :func:`locale.getencoding`." msgstr "" msgid "" @@ -408,10 +410,10 @@ msgid "" msgstr "" msgid "" -"Constants are provided for extension characters; these constants are " -"integers greater than 255. For example, :const:`ACS_PLMINUS` is a +/- " -"symbol, and :const:`ACS_ULCORNER` is the upper left corner of a box (handy " -"for drawing borders). You can also use the appropriate Unicode character." +"Constants are provided for the characters of the terminal's alternate " +"character set. For example, :const:`ACS_PLMINUS` is a +/- symbol, " +"and :const:`ACS_ULCORNER` is the upper left corner of a box (handy for " +"drawing borders). You can also use the appropriate Unicode character." msgstr "" msgid "" @@ -426,11 +428,10 @@ msgstr "" msgid "" "If your application doesn't need a blinking cursor at all, you can call " -"``curs_set(False)`` to make it invisible. For compatibility with older " -"curses versions, there's a ``leaveok(bool)`` function that's a synonym for :" -"func:`~curses.curs_set`. When *bool* is true, the curses library will " -"attempt to suppress the flashing cursor, and you won't need to worry about " -"leaving it in odd locations." +"``curs_set(False)`` to make it invisible. The window " +"method :meth:`~curses.window.leaveok` does something different: when its " +"argument is true, curses leaves the cursor wherever the last update put it, " +"instead of moving it back to the window's cursor position." msgstr "" msgid "Attributes and Color" @@ -522,10 +523,10 @@ msgstr "" msgid "" "The curses library maintains a finite number of color pairs, containing a " "foreground (or text) color and a background color. You can get the " -"attribute value corresponding to a color pair with the :func:`~curses." -"color_pair` function; this can be bitwise-OR'ed with other attributes such " -"as :const:`A_REVERSE`, but again, such combinations are not guaranteed to " -"work on all terminals." +"attribute value corresponding to a color pair with " +"the :func:`~curses.color_pair` function; this can be bitwise-OR'ed with " +"other attributes such as :const:`A_REVERSE`, but again, such combinations " +"are not guaranteed to work on all terminals." msgstr "" msgid "An example, which displays a line of text using color pair 1::" @@ -545,10 +546,10 @@ msgstr "" msgid "" "Colors are numbered, and :func:`start_color` initializes 8 basic colors when " -"it activates color mode. They are: 0:black, 1:red, 2:green, 3:yellow, 4:" -"blue, 5:magenta, 6:cyan, and 7:white. The :mod:`curses` module defines " -"named constants for each of these colors: :const:`curses.COLOR_BLACK`, :" -"const:`curses.COLOR_RED`, and so forth." +"it activates color mode. They are: 0:black, 1:red, 2:green, 3:yellow, " +"4:blue, 5:magenta, 6:cyan, and 7:white. The :mod:`curses` module defines " +"named constants for each of these " +"colors: :const:`curses.COLOR_BLACK`, :const:`curses.COLOR_RED`, and so forth." msgstr "" msgid "" @@ -573,64 +574,70 @@ msgid "" "given RGB value. This lets you change color 1, which is usually red, to " "purple or blue or any other color you like. Unfortunately, the Linux " "console doesn't support this, so I'm unable to try it out, and can't provide " -"any examples. You can check if your terminal can do this by calling :func:" -"`~curses.can_change_color`, which returns ``True`` if the capability is " -"there. If you're lucky enough to have such a talented terminal, consult " -"your system's man pages for more information." +"any examples. You can check if your terminal can do this by " +"calling :func:`~curses.can_change_color`, which returns ``True`` if the " +"capability is there. If you're lucky enough to have such a talented " +"terminal, consult your system's man pages for more information." msgstr "" msgid "User Input" msgstr "" msgid "" -"The C curses library offers only very simple input mechanisms. Python's :mod:" -"`curses` module adds a basic text-input widget. (Other libraries such as :" -"pypi:`Urwid` have more extensive collections of widgets.)" +"The C curses library offers only very simple input mechanisms. " +"Python's :mod:`curses` module adds a basic text-input widget. (Other " +"libraries such as :pypi:`Urwid` have more extensive collections of widgets.)" msgstr "" -msgid "There are two methods for getting input from a window:" +msgid "There are three methods for getting input from a window:" msgstr "" msgid "" -":meth:`~curses.window.getch` refreshes the screen and then waits for the " +":meth:`~curses.window.get_wch` refreshes the screen and then waits for the " "user to hit a key, displaying the key if :func:`~curses.echo` has been " "called earlier. You can optionally specify a coordinate to which the cursor " "should be moved before pausing." msgstr "" msgid "" -":meth:`~curses.window.getkey` does the same thing but converts the integer " -"to a string. Individual characters are returned as 1-character strings, and " -"special keys such as function keys return longer strings containing a key " -"name such as ``KEY_UP`` or ``^G``." +":meth:`~curses.window.getch` does the same thing but returns the code of the " +"key instead of a character. With ncurses this is a single byte of the key's " +"encoding in the current locale, so a character encoded with several bytes " +"takes several calls, one byte per call." msgstr "" msgid "" -"It's possible to not wait for the user using the :meth:`~curses.window." -"nodelay` window method. After ``nodelay(True)``, :meth:`!getch` and :meth:`!" -"getkey` for the window become non-blocking. To signal that no input is " -"ready, :meth:`!getch` returns ``curses.ERR`` (a value of -1) and :meth:`!" -"getkey` raises an exception. There's also a :func:`~curses.halfdelay` " -"function, which can be used to (in effect) set a timer on each :meth:`!" -"getch`; if no input becomes available within a specified delay (measured in " -"tenths of a second), curses raises an exception." +":meth:`~curses.window.getkey` does the same as :meth:`!getch` but returns a " +"string: an ordinary key as a 1-character string, and a special key as its " +"name, such as ``KEY_UP``." msgstr "" msgid "" -"The :meth:`!getch` method returns an integer; if it's between 0 and 255, it " -"represents the ASCII code of the key pressed. Values greater than 255 are " -"special keys such as Page Up, Home, or the cursor keys. You can compare the " -"value returned to constants such as :const:`curses.KEY_PPAGE`, :const:" -"`curses.KEY_HOME`, or :const:`curses.KEY_LEFT`. The main loop of your " -"program may look something like this::" +"It's possible to not wait for the user using " +"the :meth:`~curses.window.nodelay` window method. After ``nodelay(True)``, " +"the reads for the window become non-blocking. To signal that no input is " +"ready, :meth:`!get_wch` and :meth:`!getkey` raise an exception, and :meth:`!" +"getch` returns ``-1``. There's also a :func:`~curses.halfdelay` function, " +"which can be used to (in effect) set a timer on each read; if no input " +"becomes available within a specified delay (measured in tenths of a second), " +"the read fails the same way." +msgstr "" + +msgid "" +"Special keys such as Page Up, Home, or the cursor keys are returned by all " +"three as one of the :ref:`KEY_* constants `, all " +"larger than 255. You can compare the value returned to constants such " +"as :const:`curses.KEY_PPAGE`, :const:`curses.KEY_HOME`, " +"or :const:`curses.KEY_LEFT`. The main loop of your program may look " +"something like this::" msgstr "" msgid "" "while True:\n" -" c = stdscr.getch()\n" -" if c == ord('p'):\n" +" c = stdscr.get_wch()\n" +" if c == 'p':\n" " PrintDocument()\n" -" elif c == ord('q'):\n" +" elif c == 'q':\n" " break # Exit the while loop\n" " elif c == curses.KEY_HOME:\n" " x = y = 0" @@ -646,25 +653,27 @@ msgid "" msgstr "" msgid "" -"There's also a method to retrieve an entire string, :meth:`~curses.window." -"getstr`. It isn't used very often, because its functionality is quite " -"limited; the only editing keys available are the backspace key and the Enter " -"key, which terminates the string. It can optionally be limited to a fixed " -"number of characters. ::" +"There's also a method to retrieve an entire " +"line, :meth:`~curses.window.getstr`. It isn't used very often, because its " +"functionality is quite limited; the only editing keys available are the " +"erase and kill characters, and the Enter key, which terminates the line. It " +"returns a bytes object, and can optionally be limited to a fixed number of " +"bytes. ::" msgstr "" msgid "" "curses.echo() # Enable echoing of characters\n" "\n" -"# Get a 15-character string, with the cursor on the top line\n" +"# Get a line of at most 15 bytes, with the cursor on the top line\n" "s = stdscr.getstr(0,0, 15)" msgstr "" msgid "" "The :mod:`curses.textpad` module supplies a text box that supports an Emacs-" -"like set of keybindings. Various methods of the :class:`~curses.textpad." -"Textbox` class support editing with input validation and gathering the edit " -"results either with or without trailing spaces. Here's an example::" +"like set of keybindings. Various methods of " +"the :class:`~curses.textpad.Textbox` class support editing with input " +"validation and gathering the edit results either with or without trailing " +"spaces. Here's an example::" msgstr "" msgid "" @@ -705,8 +714,8 @@ msgid "" "If you're in doubt about the detailed behavior of the curses functions, " "consult the manual pages for your curses implementation, whether it's " "ncurses or a proprietary Unix vendor's. The manual pages will document any " -"quirks, and provide complete lists of all the functions, attributes, and :" -"ref:`ACS_\\* ` characters available to you." +"quirks, and provide complete lists of all the functions, attributes, " +"and :ref:`ACS_\\* ` characters available to you." msgstr "" msgid "" @@ -714,8 +723,8 @@ msgid "" "Python interface. Often this isn't because they're difficult to implement, " "but because no one has needed them yet. Also, Python doesn't yet support " "the menu library associated with ncurses. Patches adding support for these " -"would be welcome; see `the Python Developer's Guide `_ to learn more about submitting patches to Python." +"would be welcome; see `the Python Developer's Guide `_ to learn more about submitting patches to Python." msgstr "" msgid "" diff --git a/howto/descriptor.po b/howto/descriptor.po index 8c8cf42..b5fcfa0 100644 --- a/howto/descriptor.po +++ b/howto/descriptor.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -55,8 +55,9 @@ msgstr "" msgid "" "The last section has pure Python equivalents for built-in descriptors that " "are written in C. Read this if you're curious about how functions turn into " -"bound methods or about the implementation of common tools like :deco:" -"`classmethod`, :deco:`staticmethod`, :deco:`property`, and :term:`__slots__`." +"bound methods or about the implementation of common tools " +"like :deco:`classmethod`, :deco:`staticmethod`, :deco:`property`, " +"and :term:`__slots__`." msgstr "" msgid "Primer" @@ -186,8 +187,9 @@ msgid "" "A popular use for descriptors is managing access to instance data. The " "descriptor is assigned to a public attribute in the class dictionary while " "the actual data is stored as a private attribute in the instance " -"dictionary. The descriptor's :meth:`~object.__get__` and :meth:`~object." -"__set__` methods are triggered when the public attribute is accessed." +"dictionary. The descriptor's :meth:`~object.__get__` " +"and :meth:`~object.__set__` methods are triggered when the public attribute " +"is accessed." msgstr "" msgid "" @@ -315,9 +317,10 @@ msgid "" msgstr "" msgid "" -"An interactive session shows that the :class:`!Person` class has called :" -"meth:`~object.__set_name__` so that the field names would be recorded. Here " -"we call :func:`vars` to look up the descriptor without triggering it:" +"An interactive session shows that the :class:`!Person` class has " +"called :meth:`~object.__set_name__` so that the field names would be " +"recorded. Here we call :func:`vars` to look up the descriptor without " +"triggering it:" msgstr "" msgid "" @@ -353,8 +356,9 @@ msgid "Closing thoughts" msgstr "" msgid "" -"A :term:`descriptor` is what we call any object that defines :meth:`~object." -"__get__`, :meth:`~object.__set__`, or :meth:`~object.__delete__`." +"A :term:`descriptor` is what we call any object that " +"defines :meth:`~object.__get__`, :meth:`~object.__set__`, " +"or :meth:`~object.__delete__`." msgstr "" msgid "" @@ -388,9 +392,9 @@ msgstr "" msgid "" "Descriptors are used throughout the language. It is how functions turn into " -"bound methods. Common tools like :deco:`classmethod`, :deco:" -"`staticmethod`, :deco:`property`, and :deco:`functools.cached_property` are " -"all implemented as descriptors." +"bound methods. Common tools " +"like :deco:`classmethod`, :deco:`staticmethod`, :deco:`property`, " +"and :deco:`functools.cached_property` are all implemented as descriptors." msgstr "" msgid "Complete Practical Example" @@ -452,9 +456,9 @@ msgid "" msgstr "" msgid "" -":class:`!Number` verifies that a value is either an :class:`int` or :class:" -"`float`. Optionally, it verifies that a value is between a given minimum or " -"maximum." +":class:`!Number` verifies that a value is either an :class:`int` " +"or :class:`float`. Optionally, it verifies that a value is between a given " +"minimum or maximum." msgstr "" msgid "" @@ -593,9 +597,10 @@ msgstr "" msgid "" "In general, a descriptor is an attribute value that has one of the methods " -"in the descriptor protocol. Those methods are :meth:`~object.__get__`, :" -"meth:`~object.__set__`, and :meth:`~object.__delete__`. If any of those " -"methods are defined for an attribute, it is said to be a :term:`descriptor`." +"in the descriptor protocol. Those methods " +"are :meth:`~object.__get__`, :meth:`~object.__set__`, " +"and :meth:`~object.__delete__`. If any of those methods are defined for an " +"attribute, it is said to be a :term:`descriptor`." msgstr "" msgid "" @@ -611,10 +616,10 @@ msgstr "" msgid "" "Descriptors are a powerful, general purpose protocol. They are the " -"mechanism behind properties, methods, static methods, class methods, and :" -"func:`super`. They are used throughout Python itself. Descriptors simplify " -"the underlying C code and offer a flexible set of new tools for everyday " -"Python programs." +"mechanism behind properties, methods, static methods, class methods, " +"and :func:`super`. They are used throughout Python itself. Descriptors " +"simplify the underlying C code and offer a flexible set of new tools for " +"everyday Python programs." msgstr "" msgid "Descriptor protocol" @@ -637,9 +642,9 @@ msgstr "" msgid "" "If an object defines :meth:`~object.__set__` or :meth:`~object.__delete__`, " -"it is considered a data descriptor. Descriptors that only define :meth:" -"`~object.__get__` are called non-data descriptors (they are often used for " -"methods but other uses are possible)." +"it is considered a data descriptor. Descriptors that only " +"define :meth:`~object.__get__` are called non-data descriptors (they are " +"often used for methods but other uses are possible)." msgstr "" msgid "" @@ -652,17 +657,18 @@ msgstr "" msgid "" "To make a read-only data descriptor, define both :meth:`~object.__get__` " -"and :meth:`~object.__set__` with the :meth:`~object.__set__` raising an :exc:" -"`AttributeError` when called. Defining the :meth:`~object.__set__` method " -"with an exception raising placeholder is enough to make it a data descriptor." +"and :meth:`~object.__set__` with the :meth:`~object.__set__` raising " +"an :exc:`AttributeError` when called. Defining the :meth:`~object.__set__` " +"method with an exception raising placeholder is enough to make it a data " +"descriptor." msgstr "" msgid "Overview of descriptor invocation" msgstr "" msgid "" -"A descriptor can be called directly with ``desc.__get__(obj)`` or ``desc." -"__get__(None, cls)``." +"A descriptor can be called directly with ``desc.__get__(obj)`` or " +"``desc.__get__(None, cls)``." msgstr "" msgid "" @@ -693,8 +699,8 @@ msgid "" msgstr "" msgid "" -"If a descriptor is found for ``a.x``, then it is invoked with: ``desc." -"__get__(a, type(a))``." +"If a descriptor is found for ``a.x``, then it is invoked with: " +"``desc.__get__(a, type(a))``." msgstr "" msgid "" @@ -731,17 +737,18 @@ msgid "" msgstr "" msgid "" -"Note, there is no :meth:`~object.__getattr__` hook in the :meth:`~object." -"__getattribute__` code. That is why calling :meth:`~object." -"__getattribute__` directly or with ``super().__getattribute__`` will bypass :" -"meth:`~object.__getattr__` entirely." +"Note, there is no :meth:`~object.__getattr__` hook in " +"the :meth:`~object.__getattribute__` code. That is why " +"calling :meth:`~object.__getattribute__` directly or with " +"``super().__getattribute__`` will bypass :meth:`~object.__getattr__` " +"entirely." msgstr "" msgid "" "Instead, it is the dot operator and the :func:`getattr` function that are " -"responsible for invoking :meth:`~object.__getattr__` whenever :meth:`~object." -"__getattribute__` raises an :exc:`AttributeError`. Their logic is " -"encapsulated in a helper function:" +"responsible for invoking :meth:`~object.__getattr__` " +"whenever :meth:`~object.__getattribute__` raises an :exc:`AttributeError`. " +"Their logic is encapsulated in a helper function:" msgstr "" msgid "" @@ -759,38 +766,39 @@ msgid "Invocation from a class" msgstr "" msgid "" -"The logic for a dotted lookup such as ``A.x`` is in :meth:`!type." -"__getattribute__`. The steps are similar to those for :meth:`!object." -"__getattribute__` but the instance dictionary lookup is replaced by a search " -"through the class's :term:`method resolution order`." +"The logic for a dotted lookup such as ``A.x`` is in :meth:`!" +"type.__getattribute__`. The steps are similar to those for :meth:`!" +"object.__getattribute__` but the instance dictionary lookup is replaced by a " +"search through the class's :term:`method resolution order`." msgstr "" msgid "If a descriptor is found, it is invoked with ``desc.__get__(None, A)``." msgstr "" msgid "" -"The full C implementation can be found in :c:func:`!type_getattro` and :c:" -"func:`!_PyType_Lookup` in :source:`Objects/typeobject.c`." +"The full C implementation can be found in :c:func:`!type_getattro` " +"and :c:func:`!_PyType_Lookup` in :source:`Objects/typeobject.c`." msgstr "" msgid "Invocation from super" msgstr "" msgid "" -"The logic for super's dotted lookup is in the :meth:`~object." -"__getattribute__` method for object returned by :func:`super`." +"The logic for super's dotted lookup is in " +"the :meth:`~object.__getattribute__` method for object returned " +"by :func:`super`." msgstr "" msgid "" -"A dotted lookup such as ``super(A, obj).m`` searches ``obj.__class__." -"__mro__`` for the base class ``B`` immediately following ``A`` and then " -"returns ``B.__dict__['m'].__get__(obj, A)``. If not a descriptor, ``m`` is " -"returned unchanged." +"A dotted lookup such as ``super(A, obj).m`` searches " +"``obj.__class__.__mro__`` for the base class ``B`` immediately following " +"``A`` and then returns ``B.__dict__['m'].__get__(obj, A)``. If not a " +"descriptor, ``m`` is returned unchanged." msgstr "" msgid "" -"The full C implementation can be found in :c:func:`!super_getattro` in :" -"source:`Objects/typeobject.c`. A pure Python equivalent can be found in " +"The full C implementation can be found in :c:func:`!super_getattro` " +"in :source:`Objects/typeobject.c`. A pure Python equivalent can be found in " "`Guido's Tutorial `_." msgstr "" @@ -799,9 +807,9 @@ msgid "Summary of invocation logic" msgstr "" msgid "" -"The mechanism for descriptors is embedded in the :meth:`~object." -"__getattribute__` methods for :class:`object`, :class:`type`, and :func:" -"`super`." +"The mechanism for descriptors is embedded in " +"the :meth:`~object.__getattribute__` methods " +"for :class:`object`, :class:`type`, and :func:`super`." msgstr "" msgid "The important points to remember are:" @@ -811,8 +819,8 @@ msgid "Descriptors are invoked by the :meth:`~object.__getattribute__` method." msgstr "" msgid "" -"Classes inherit this machinery from :class:`object`, :class:`type`, or :func:" -"`super`." +"Classes inherit this machinery from :class:`object`, :class:`type`, " +"or :func:`super`." msgstr "" msgid "" @@ -861,8 +869,8 @@ msgstr "" msgid "" "The following code is a simplified skeleton showing how data descriptors " -"could be used to implement an `object relational mapping `_." +"could be used to implement an `object relational mapping `_." msgstr "" msgid "" @@ -889,9 +897,9 @@ msgid "" msgstr "" msgid "" -"We can use the :class:`!Field` class to define `models `_ that describe the schema for each table in a " -"database:" +"We can use the :class:`!Field` class to define `models `_ that describe the schema for each " +"table in a database:" msgstr "" msgid "" @@ -1105,10 +1113,10 @@ msgid "" msgstr "" msgid "" -"To support automatic creation of methods, functions include the :meth:" -"`~object.__get__` method for binding methods during attribute access. This " -"means that functions are non-data descriptors that return bound methods " -"during dotted lookup from an instance. Here's how it works:" +"To support automatic creation of methods, functions include " +"the :meth:`~object.__get__` method for binding methods during attribute " +"access. This means that functions are non-data descriptors that return " +"bound methods during dotted lookup from an instance. Here's how it works:" msgstr "" msgid "" @@ -1146,8 +1154,9 @@ msgid "" msgstr "" msgid "" -"Accessing the function through the class dictionary does not invoke :meth:" -"`~object.__get__`. Instead, it just returns the underlying function object::" +"Accessing the function through the class dictionary does not " +"invoke :meth:`~object.__get__`. Instead, it just returns the underlying " +"function object::" msgstr "" msgid "" @@ -1248,10 +1257,10 @@ msgstr "" msgid "" "Static methods return the underlying function without changes. Calling " -"either ``c.f`` or ``C.f`` is the equivalent of a direct lookup into ``object." -"__getattribute__(c, \"f\")`` or ``object.__getattribute__(C, \"f\")``. As a " -"result, the function becomes identically accessible from either an object or " -"a class." +"either ``c.f`` or ``C.f`` is the equivalent of a direct lookup into " +"``object.__getattribute__(c, \"f\")`` or ``object.__getattribute__(C, " +"\"f\")``. As a result, the function becomes identically accessible from " +"either an object or a class." msgstr "" msgid "" @@ -1290,8 +1299,8 @@ msgid "" msgstr "" msgid "" -"Using the non-data descriptor protocol, a pure Python version of :deco:" -"`staticmethod` would look like this:" +"Using the non-data descriptor protocol, a pure Python version " +"of :deco:`staticmethod` would look like this:" msgstr "" msgid "" @@ -1319,8 +1328,8 @@ msgid "" "The :func:`functools.update_wrapper` call adds a ``__wrapped__`` attribute " "that refers to the underlying function. Also it carries forward the " "attributes necessary to make the wrapper look like the wrapped function, " -"including :attr:`~function.__name__`, :attr:`~function.__qualname__`, and :" -"attr:`~function.__doc__`." +"including :attr:`~function.__name__`, :attr:`~function.__qualname__`, " +"and :attr:`~function.__doc__`." msgstr "" msgid "Class methods" @@ -1377,8 +1386,8 @@ msgid "" msgstr "" msgid "" -"Using the non-data descriptor protocol, a pure Python version of :deco:" -"`classmethod` would look like this:" +"Using the non-data descriptor protocol, a pure Python version " +"of :deco:`classmethod` would look like this:" msgstr "" msgid "" @@ -1401,9 +1410,9 @@ msgid "" "The :func:`functools.update_wrapper` call in ``ClassMethod`` adds a " "``__wrapped__`` attribute that refers to the underlying function. Also it " "carries forward the attributes necessary to make the wrapper look like the " -"wrapped function: :attr:`~function.__name__`, :attr:`~function." -"__qualname__`, :attr:`~function.__doc__`, and :attr:`~function." -"__annotations__`." +"wrapped " +"function: :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__doc__`, " +"and :attr:`~function.__annotations__`." msgstr "" msgid "Member objects and __slots__" diff --git a/howto/enum.po b/howto/enum.po index c380ec5..18f3709 100644 --- a/howto/enum.po +++ b/howto/enum.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Lakshdeep Kashyap, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -232,8 +233,8 @@ msgstr "" msgid "" ">>> chores_for_ethan = {\n" -"... 'feed the cat': Weekday.MONDAY | Weekday.WEDNESDAY | Weekday." -"FRIDAY,\n" +"... 'feed the cat': Weekday.MONDAY | Weekday.WEDNESDAY | " +"Weekday.FRIDAY,\n" "... 'do the dishes': Weekday.TUESDAY | Weekday.THURSDAY,\n" "... 'answer SO questions': Weekday.SATURDAY,\n" "... }" @@ -274,8 +275,8 @@ msgid "Programmatic access to enumeration members and their attributes" msgstr "" msgid "" -"Sometimes it's useful to access members in enumerations programmatically (i." -"e. situations where ``Color.RED`` won't do because the exact color is not " +"Sometimes it's useful to access members in enumerations programmatically " +"(i.e. situations where ``Color.RED`` won't do because the exact color is not " "known at program-writing time). ``Enum`` allows such access::" msgstr "" @@ -428,9 +429,9 @@ msgid "" ">>> list(Shape)\n" "[, , ]\n" ">>> list(Weekday)\n" -"[, , , , , , ]" +"[, , , " +", , , " +"]" msgstr "" msgid "" @@ -577,22 +578,23 @@ msgid "" "The rules for what is allowed are as follows: names that start and end with " "a single underscore are reserved by enum and cannot be used; all other " "attributes defined within an enumeration will become members of this " -"enumeration, with the exception of special methods (:meth:`~object." -"__str__`, :meth:`~object.__add__`, etc.), descriptors (methods are also " -"descriptors), and variable names listed in :attr:`~Enum._ignore_`." +"enumeration, with the exception of special methods " +"(:meth:`~object.__str__`, :meth:`~object.__add__`, etc.), descriptors " +"(methods are also descriptors), and variable names listed " +"in :attr:`~Enum._ignore_`." msgstr "" msgid "" -"Note: if your enumeration defines :meth:`~object.__new__` and/or :meth:" -"`~object.__init__`, any value(s) given to the enum member will be passed " -"into those methods. See `Planet`_ for an example." +"Note: if your enumeration defines :meth:`~object.__new__` and/" +"or :meth:`~object.__init__`, any value(s) given to the enum member will be " +"passed into those methods. See `Planet`_ for an example." msgstr "" msgid "" "The :meth:`~object.__new__` method, if defined, is used during creation of " "the Enum members; it is then replaced by Enum's :meth:`~object.__new__` " -"which is used after class creation for lookup of existing members. See :ref:" -"`new-vs-init` for more details." +"which is used after class creation for lookup of existing members. " +"See :ref:`new-vs-init` for more details." msgstr "" msgid "Restricted Enum subclassing" @@ -648,8 +650,8 @@ msgid "Dataclass support" msgstr "" msgid "" -"When inheriting from a :class:`~dataclasses.dataclass`, the :meth:`~Enum." -"__repr__` omits the inherited class' name. For example::" +"When inheriting from a :class:`~dataclasses.dataclass`, " +"the :meth:`~Enum.__repr__` omits the inherited class' name. For example::" msgstr "" msgid "" @@ -722,9 +724,10 @@ msgid "" msgstr "" msgid "" -"It is possible to modify how enum members are pickled/unpickled by defining :" -"meth:`~object.__reduce_ex__` in the enumeration class. The default method " -"is by-value, but enums with complicated values may want to use by-name::" +"It is possible to modify how enum members are pickled/unpickled by " +"defining :meth:`~object.__reduce_ex__` in the enumeration class. The " +"default method is by-value, but enums with complicated values may want to " +"use by-name::" msgstr "" msgid "" @@ -804,10 +807,10 @@ msgid "" msgstr "" msgid "" -"The new pickle protocol 4 also, in some circumstances, relies on :attr:" -"`~type.__qualname__` being set to the location where pickle will be able to " -"find the class. For example, if the class was made available in class " -"SomeData in the global scope::" +"The new pickle protocol 4 also, in some circumstances, relies " +"on :attr:`~type.__qualname__` being set to the location where pickle will be " +"able to find the class. For example, if the class was made available in " +"class SomeData in the global scope::" msgstr "" msgid "" @@ -880,10 +883,10 @@ msgid "IntEnum" msgstr "" msgid "" -"The first variation of :class:`Enum` that is provided is also a subclass of :" -"class:`int`. Members of an :class:`IntEnum` can be compared to integers; by " -"extension, integer enumerations of different types can also be compared to " -"each other::" +"The first variation of :class:`Enum` that is provided is also a subclass " +"of :class:`int`. Members of an :class:`IntEnum` can be compared to " +"integers; by extension, integer enumerations of different types can also be " +"compared to each other::" msgstr "" msgid "" @@ -952,9 +955,9 @@ msgid "" "The next variation of :class:`Enum` provided, :class:`IntFlag`, is also " "based on :class:`int`. The difference being :class:`IntFlag` members can be " "combined using the bitwise operators (&, \\|, ^, ~) and the result is still " -"an :class:`IntFlag` member, if possible. Like :class:`IntEnum`, :class:" -"`IntFlag` members are also integers and can be used wherever an :class:`int` " -"is used." +"an :class:`IntFlag` member, if possible. " +"Like :class:`IntEnum`, :class:`IntFlag` members are also integers and can be " +"used wherever an :class:`int` is used." msgstr "" msgid "" @@ -1011,8 +1014,8 @@ msgstr "" msgid "" "Another important difference between :class:`IntFlag` and :class:`Enum` is " -"that if no flags are set (the value is 0), its boolean evaluation is :data:" -"`False`::" +"that if no flags are set (the value is 0), its boolean evaluation " +"is :data:`False`::" msgstr "" msgid "" @@ -1058,10 +1061,10 @@ msgstr "" msgid "" "The last variation is :class:`Flag`. Like :class:`IntFlag`, :class:`Flag` " -"members can be combined using the bitwise operators (&, \\|, ^, ~). Unlike :" -"class:`IntFlag`, they cannot be combined with, nor compared against, any " -"other :class:`Flag` enumeration, nor :class:`int`. While it is possible to " -"specify the values directly it is recommended to use :class:`auto` as the " +"members can be combined using the bitwise operators (&, \\|, ^, ~). " +"Unlike :class:`IntFlag`, they cannot be combined with, nor compared against, " +"any other :class:`Flag` enumeration, nor :class:`int`. While it is possible " +"to specify the values directly it is recommended to use :class:`auto` as the " "value and let :class:`Flag` select an appropriate value." msgstr "" @@ -1130,10 +1133,10 @@ msgid "" "For the majority of new code, :class:`Enum` and :class:`Flag` are strongly " "recommended, since :class:`IntEnum` and :class:`IntFlag` break some semantic " "promises of an enumeration (by being comparable to integers, and thus by " -"transitivity to other unrelated enumerations). :class:`IntEnum` and :class:" -"`IntFlag` should be used only in cases where :class:`Enum` and :class:`Flag` " -"will not do; for example, when integer constants are replaced with " -"enumerations, or for interoperability with other systems." +"transitivity to other unrelated enumerations). :class:`IntEnum` " +"and :class:`IntFlag` should be used only in cases where :class:`Enum` " +"and :class:`Flag` will not do; for example, when integer constants are " +"replaced with enumerations, or for interoperability with other systems." msgstr "" msgid "Others" @@ -1151,30 +1154,30 @@ msgstr "" msgid "" "This demonstrates how similar derived enumerations can be defined; for " -"example a :class:`!FloatEnum` that mixes in :class:`float` instead of :class:" -"`int`." +"example a :class:`!FloatEnum` that mixes in :class:`float` instead " +"of :class:`int`." msgstr "" msgid "Some rules:" msgstr "" msgid "" -"When subclassing :class:`Enum`, mix-in types must appear before the :class:" -"`Enum` class itself in the sequence of bases, as in the :class:`IntEnum` " -"example above." +"When subclassing :class:`Enum`, mix-in types must appear before " +"the :class:`Enum` class itself in the sequence of bases, as in " +"the :class:`IntEnum` example above." msgstr "" msgid "" -"Mix-in types must be subclassable. For example, :class:`bool` and :class:" -"`range` are not subclassable and will throw an error during Enum creation if " -"used as the mix-in type." +"Mix-in types must be subclassable. For example, :class:`bool` " +"and :class:`range` are not subclassable and will throw an error during Enum " +"creation if used as the mix-in type." msgstr "" msgid "" "While :class:`Enum` can have members of any type, once you mix in an " -"additional type, all the members must have values of that type, e.g. :class:" -"`int` above. This restriction does not apply to mix-ins which only add " -"methods and don't specify another type." +"additional type, all the members must have values of that type, " +"e.g. :class:`int` above. This restriction does not apply to mix-ins which " +"only add methods and don't specify another type." msgstr "" msgid "" @@ -1184,27 +1187,27 @@ msgid "" msgstr "" msgid "" -"A ``data type`` is a mixin that defines :meth:`~object.__new__`, or a :class:" -"`~dataclasses.dataclass`" +"A ``data type`` is a mixin that defines :meth:`~object.__new__`, or " +"a :class:`~dataclasses.dataclass`" msgstr "" msgid "" -"%-style formatting: ``%s`` and ``%r`` call the :class:`Enum` class's :meth:" -"`~object.__str__` and :meth:`~object.__repr__` respectively; other codes " -"(such as ``%i`` or ``%h`` for IntEnum) treat the enum member as its mixed-in " -"type." +"%-style formatting: ``%s`` and ``%r`` call the :class:`Enum` " +"class's :meth:`~object.__str__` and :meth:`~object.__repr__` respectively; " +"other codes (such as ``%i`` or ``%h`` for IntEnum) treat the enum member as " +"its mixed-in type." msgstr "" msgid "" -":ref:`Formatted string literals `, :meth:`str.format`, and :func:" -"`format` will use the enum's :meth:`~object.__str__` method." +":ref:`Formatted string literals `, :meth:`str.format`, " +"and :func:`format` will use the enum's :meth:`~object.__str__` method." msgstr "" msgid "" "Because :class:`IntEnum`, :class:`IntFlag`, and :class:`StrEnum` are " -"designed to be drop-in replacements for existing constants, their :meth:" -"`~object.__str__` method has been reset to their data types' :meth:`~object." -"__str__` method." +"designed to be drop-in replacements for existing constants, " +"their :meth:`~object.__str__` method has been reset to their data " +"types' :meth:`~object.__str__` method." msgstr "" msgid "When to use :meth:`~object.__new__` vs. :meth:`~object.__init__`" @@ -1213,8 +1216,8 @@ msgstr "" msgid "" ":meth:`~object.__new__` must be used whenever you want to customize the " "actual value of the :class:`Enum` member. Any other modifications may go in " -"either :meth:`~object.__new__` or :meth:`~object.__init__`, with :meth:" -"`~object.__init__` being preferred." +"either :meth:`~object.__new__` or :meth:`~object.__init__`, " +"with :meth:`~object.__init__` being preferred." msgstr "" msgid "" @@ -1258,8 +1261,8 @@ msgid "Supported ``__dunder__`` and ``_sunder_`` names" msgstr "" msgid "" -"The supported ``__dunder__`` and ``_sunder_`` names can be found in the :ref:" -"`Enum API documentation `." +"The supported ``__dunder__`` and ``_sunder_`` names can be found in " +"the :ref:`Enum API documentation `." msgstr "" msgid "_Private__names" @@ -1303,11 +1306,11 @@ msgid "Boolean value of ``Enum`` classes and members" msgstr "" msgid "" -"Enum classes that are mixed with non-:class:`Enum` types (such as :class:" -"`int`, :class:`str`, etc.) are evaluated according to the mixed-in type's " -"rules; otherwise, all members evaluate as :data:`True`. To make your own " -"enum's boolean evaluation depend on the member's value add the following to " -"your class::" +"Enum classes that are mixed with non-:class:`Enum` types (such " +"as :class:`int`, :class:`str`, etc.) are evaluated according to the mixed-in " +"type's rules; otherwise, all members evaluate as :data:`True`. To make your " +"own enum's boolean evaluation depend on the member's value add the following " +"to your class::" msgstr "" msgid "" @@ -1487,30 +1490,30 @@ msgstr "" msgid "" "The default for Flag is ``STRICT``, the default for ``IntFlag`` is " -"``EJECT``, and the default for ``_convert_`` is ``KEEP`` (see ``ssl." -"Options`` for an example of when ``KEEP`` is needed)." +"``EJECT``, and the default for ``_convert_`` is ``KEEP`` (see " +"``ssl.Options`` for an example of when ``KEEP`` is needed)." msgstr "" msgid "How are Enums and Flags different?" msgstr "" msgid "" -"Enums have a custom metaclass that affects many aspects of both derived :" -"class:`Enum` classes and their instances (members)." +"Enums have a custom metaclass that affects many aspects of both " +"derived :class:`Enum` classes and their instances (members)." msgstr "" msgid "Enum Classes" msgstr "" msgid "" -"The :class:`EnumType` metaclass is responsible for providing the :meth:" -"`~object.__contains__`, :meth:`~object.__dir__`, :meth:`~object.__iter__` " +"The :class:`EnumType` metaclass is responsible for providing " +"the :meth:`~object.__contains__`, :meth:`~object.__dir__`, :meth:`~object.__iter__` " "and other methods that allow one to do things with an :class:`Enum` class " "that fail on a typical class, such as ``list(Color)`` or ``some_enum_var in " "Color``. :class:`EnumType` is responsible for ensuring that various other " -"methods on the final :class:`Enum` class are correct (such as :meth:`~object." -"__new__`, :meth:`~object.__getnewargs__`, :meth:`~object.__str__` and :meth:" -"`~object.__repr__`)." +"methods on the final :class:`Enum` class are correct (such " +"as :meth:`~object.__new__`, :meth:`~object.__getnewargs__`, :meth:`~object.__str__` " +"and :meth:`~object.__repr__`)." msgstr "" msgid "Flag Classes" @@ -1519,8 +1522,8 @@ msgstr "" msgid "" "Flags have an expanded view of aliasing: to be canonical, the value of a " "flag needs to be a power-of-two value, and not a duplicate name. So, in " -"addition to the :class:`Enum` definition of alias, a flag with no value (a.k." -"a. ``0``) or with more than one power-of-two value (e.g. ``3``) is " +"addition to the :class:`Enum` definition of alias, a flag with no value " +"(a.k.a. ``0``) or with more than one power-of-two value (e.g. ``3``) is " "considered an alias." msgstr "" @@ -1528,11 +1531,11 @@ msgid "Enum Members (aka instances)" msgstr "" msgid "" -"The most interesting thing about enum members is that they are singletons. :" -"class:`EnumType` creates them all while it is creating the enum class " -"itself, and then puts a custom :meth:`~object.__new__` in place to ensure " -"that no new ones are ever instantiated by returning only the existing member " -"instances." +"The most interesting thing about enum members is that they are " +"singletons. :class:`EnumType` creates them all while it is creating the enum " +"class itself, and then puts a custom :meth:`~object.__new__` in place to " +"ensure that no new ones are ever instantiated by returning only the existing " +"member instances." msgstr "" msgid "Flag Members" @@ -1575,10 +1578,11 @@ msgid "Enum Cookbook" msgstr "" msgid "" -"While :class:`Enum`, :class:`IntEnum`, :class:`StrEnum`, :class:`Flag`, and :" -"class:`IntFlag` are expected to cover the majority of use-cases, they cannot " -"cover them all. Here are recipes for some different types of enumerations " -"that can be used directly, or as examples for creating one's own." +"While :class:`Enum`, :class:`IntEnum`, :class:`StrEnum`, :class:`Flag`, " +"and :class:`IntFlag` are expected to cover the majority of use-cases, they " +"cannot cover them all. Here are recipes for some different types of " +"enumerations that can be used directly, or as examples for creating one's " +"own." msgstr "" msgid "Omitting values" @@ -1642,8 +1646,8 @@ msgid "" msgstr "" msgid "" -"This is also a good example of why you might want to write your own :meth:" -"`~object.__repr__`::" +"This is also a good example of why you might want to write your " +"own :meth:`~object.__repr__`::" msgstr "" msgid "" @@ -1897,11 +1901,11 @@ msgid "" "... Period['day_%d' % i] = i\n" "...\n" ">>> list(Period)[:2]\n" -"[, ]\n" +"[, ]\n" ">>> list(Period)[-2:]\n" -"[, ]" +"[, ]" msgstr "" msgid "Subclassing EnumType" diff --git a/howto/free-threading-extensions.po b/howto/free-threading-extensions.po index 0ccda33..ca1da44 100644 --- a/howto/free-threading-extensions.po +++ b/howto/free-threading-extensions.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,9 +22,9 @@ msgid "C API Extension Support for Free Threading" msgstr "" msgid "" -"Starting with the 3.13 release, CPython has support for running with the :" -"term:`global interpreter lock` (GIL) disabled in a configuration called :" -"term:`free threading`. This document describes how to adapt C API " +"Starting with the 3.13 release, CPython has support for running with " +"the :term:`global interpreter lock` (GIL) disabled in a configuration " +"called :term:`free threading`. This document describes how to adapt C API " "extensions to support free threading." msgstr "" @@ -71,11 +71,12 @@ msgstr "" msgid "" "Extensions that use :ref:`multi-phase initialization ` (functions like :c:func:`PyModuleDef_Init`, :c:func:" -"`PyModExport_* ` export hook, :c:func:" -"`PyModule_FromSlotsAndSpec`) should add a :c:data:`Py_mod_gil` slot in the " -"module definition. If your extension supports older versions of CPython, you " -"should guard the slot with a :c:data:`PY_VERSION_HEX` check." +"initialization>` (functions " +"like :c:func:`PyModuleDef_Init`, :c:func:`PyModExport_* " +"` export hook, :c:func:`PyModule_FromSlotsAndSpec`) " +"should add a :c:data:`Py_mod_gil` slot in the module definition. If your " +"extension supports older versions of CPython, you should guard the slot with " +"a :c:data:`PY_VERSION_HEX` check." msgstr "" msgid "" @@ -93,11 +94,11 @@ msgstr "" msgid "" "Extensions that use legacy :ref:`single-phase initialization ` (that is, :c:func:`PyModule_Create`) should call :c:func:" -"`PyUnstable_Module_SetGIL` to indicate that they support running with the " -"GIL disabled. The function is only defined in the free-threaded build, so " -"you should guard the call with ``#ifdef Py_GIL_DISABLED`` to avoid " -"compilation errors in the regular build." +"initialization>` (that is, :c:func:`PyModule_Create`) should " +"call :c:func:`PyUnstable_Module_SetGIL` to indicate that they support " +"running with the GIL disabled. The function is only defined in the free-" +"threaded build, so you should guard the call with ``#ifdef Py_GIL_DISABLED`` " +"to avoid compilation errors in the regular build." msgstr "" msgid "" @@ -132,11 +133,12 @@ msgid "" msgstr "" msgid "" -"**Macros**: Accessor macros like :c:macro:`PyList_GET_ITEM`, :c:macro:" -"`PyList_SET_ITEM`, and macros like :c:macro:`PySequence_Fast_GET_SIZE` that " -"use the object returned by :c:func:`PySequence_Fast` do not perform any " -"error checking or locking. These macros are not thread-safe if the container " -"object may be modified concurrently." +"**Macros**: Accessor macros " +"like :c:macro:`PyList_GET_ITEM`, :c:macro:`PyList_SET_ITEM`, and macros " +"like :c:macro:`PySequence_Fast_GET_SIZE` that use the object returned " +"by :c:func:`PySequence_Fast` do not perform any error checking or locking. " +"These macros are not thread-safe if the container object may be modified " +"concurrently." msgstr "" msgid "" @@ -150,10 +152,10 @@ msgid "Container Thread Safety" msgstr "" msgid "" -"Containers like :c:struct:`PyListObject`, :c:struct:`PyDictObject`, and :c:" -"struct:`PySetObject` perform internal locking in the free-threaded build. " -"For example, the :c:func:`PyList_Append` will lock the list before appending " -"an item." +"Containers like :c:struct:`PyListObject`, :c:struct:`PyDictObject`, " +"and :c:struct:`PySetObject` perform internal locking in the free-threaded " +"build. For example, the :c:func:`PyList_Append` will lock the list before " +"appending an item." msgstr "" msgid "``PyDict_Next``" @@ -182,8 +184,8 @@ msgstr "" msgid "" "Some C API functions return :term:`borrowed references `. These APIs are not thread-safe if the containing object is " -"modified concurrently. For example, it's not safe to use :c:func:" -"`PyList_GetItem` if the list may be modified concurrently." +"modified concurrently. For example, it's not safe to " +"use :c:func:`PyList_GetItem` if the list may be modified concurrently." msgstr "" msgid "" @@ -255,13 +257,13 @@ msgid ":c:func:`PyCell_Get`" msgstr "" msgid "" -"Not all APIs that return borrowed references are problematic. For example, :" -"c:func:`PyTuple_GetItem` is safe because tuples are immutable. Similarly, " -"not all uses of the above APIs are problematic. For example, :c:func:" -"`PyDict_GetItem` is often used for parsing keyword argument dictionaries in " -"function calls; those keyword argument dictionaries are effectively private " -"(not accessible by other threads), so using borrowed references in that " -"context is safe." +"Not all APIs that return borrowed references are problematic. For " +"example, :c:func:`PyTuple_GetItem` is safe because tuples are immutable. " +"Similarly, not all uses of the above APIs are problematic. For " +"example, :c:func:`PyDict_GetItem` is often used for parsing keyword argument " +"dictionaries in function calls; those keyword argument dictionaries are " +"effectively private (not accessible by other threads), so using borrowed " +"references in that context is safe." msgstr "" msgid "" @@ -274,18 +276,20 @@ msgid "Memory Allocation APIs" msgstr "" msgid "" -"Python's memory management C API provides functions in three different :ref:" -"`allocation domains `: \"raw\", \"mem\", and \"object\". " -"For thread-safety, the free-threaded build requires that only Python objects " -"are allocated using the object domain, and that all Python objects are " -"allocated using that domain. This differs from the prior Python versions, " -"where this was only a best practice and not a hard requirement." +"Python's memory management C API provides functions in three " +"different :ref:`allocation domains `: \"raw\", \"mem\", " +"and \"object\". For thread-safety, the free-threaded build requires that " +"only Python objects are allocated using the object domain, and that all " +"Python objects are allocated using that domain. This differs from the prior " +"Python versions, where this was only a best practice and not a hard " +"requirement." msgstr "" msgid "" "Search for uses of :c:func:`PyObject_Malloc` in your extension and check " -"that the allocated memory is used for Python objects. Use :c:func:" -"`PyMem_Malloc` to allocate buffers instead of :c:func:`PyObject_Malloc`." +"that the allocated memory is used for Python objects. " +"Use :c:func:`PyMem_Malloc` to allocate buffers instead " +"of :c:func:`PyObject_Malloc`." msgstr "" msgid "Thread State and GIL APIs" @@ -297,8 +301,8 @@ msgid "" msgstr "" msgid "" -":c:func:`PyThreadState_Ensure`, :c:func:`PyThreadState_EnsureFromView`, and :" -"c:func:`PyThreadState_Release`" +":c:func:`PyThreadState_Ensure`, :c:func:`PyThreadState_EnsureFromView`, " +"and :c:func:`PyThreadState_Release`" msgstr "" msgid ":c:func:`PyGILState_Ensure` and :c:func:`PyGILState_Release`" @@ -313,16 +317,16 @@ msgstr "" msgid "" "These functions should still be used in the free-threaded build to manage " "thread state even when the :term:`GIL` is disabled. For example, if you " -"create a thread outside of Python, you must call :c:func:" -"`PyThreadState_Ensure` before calling into the Python API to ensure that the " -"thread has a valid Python thread state." +"create a thread outside of Python, you must " +"call :c:func:`PyThreadState_Ensure` before calling into the Python API to " +"ensure that the thread has a valid Python thread state." msgstr "" msgid "" -"You should continue to call :c:func:`PyEval_SaveThread` or :c:macro:" -"`Py_BEGIN_ALLOW_THREADS` around blocking operations, such as I/O or lock " -"acquisitions, to allow other threads to run the :term:`cyclic garbage " -"collector `." +"You should continue to call :c:func:`PyEval_SaveThread` " +"or :c:macro:`Py_BEGIN_ALLOW_THREADS` around blocking operations, such as I/O " +"or lock acquisitions, to allow other threads to run the :term:`cyclic " +"garbage collector `." msgstr "" msgid "Protecting Internal Extension State" @@ -365,9 +369,9 @@ msgid "" "Conceptually, critical sections act as a deadlock avoidance layer built on " "top of simple mutexes. Each thread maintains a stack of active critical " "sections. When a thread needs to acquire a lock associated with a critical " -"section (e.g., implicitly when calling a thread-safe C API function like :c:" -"func:`PyDict_SetItem`, or explicitly using macros), it attempts to acquire " -"the underlying mutex." +"section (e.g., implicitly when calling a thread-safe C API function " +"like :c:func:`PyDict_SetItem`, or explicitly using macros), it attempts to " +"acquire the underlying mutex." msgstr "" msgid "Using Critical Sections" @@ -382,8 +386,9 @@ msgid "" msgstr "" msgid "" -":c:macro:`Py_BEGIN_CRITICAL_SECTION2` and :c:macro:" -"`Py_END_CRITICAL_SECTION2` - For locking two objects simultaneously" +":c:macro:`Py_BEGIN_CRITICAL_SECTION2` " +"and :c:macro:`Py_END_CRITICAL_SECTION2` - For locking two objects " +"simultaneously" msgstr "" msgid "" @@ -531,10 +536,10 @@ msgid "Per-Object Locks (``ob_mutex``)" msgstr "" msgid "" -"In the free-threaded build, each Python object contains a :c:member:" -"`~PyObject.ob_mutex` field of type :c:type:`PyMutex`. This mutex is " -"**reserved for use by the critical section API** (:c:macro:" -"`Py_BEGIN_CRITICAL_SECTION` / :c:macro:`Py_END_CRITICAL_SECTION`)." +"In the free-threaded build, each Python object contains " +"a :c:member:`~PyObject.ob_mutex` field of type :c:type:`PyMutex`. This " +"mutex is **reserved for use by the critical section API** " +"(:c:macro:`Py_BEGIN_CRITICAL_SECTION` / :c:macro:`Py_END_CRITICAL_SECTION`)." msgstr "" msgid "" @@ -551,9 +556,9 @@ msgstr "" msgid "" "If your extension type needs its own lock, add a separate :c:type:`PyMutex` " -"field (or another synchronization primitive) to your object struct. :c:type:" -"`PyMutex` is very lightweight, so there is negligible cost to having an " -"additional one." +"field (or another synchronization primitive) to your object " +"struct. :c:type:`PyMutex` is very lightweight, so there is negligible cost " +"to having an additional one." msgstr "" msgid "Building Extensions for the Free-Threaded Build" diff --git a/howto/free-threading-python.po b/howto/free-threading-python.po index 648bff9..9ff318d 100644 --- a/howto/free-threading-python.po +++ b/howto/free-threading-python.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -77,9 +77,9 @@ msgstr "" msgid "" "To check if the current interpreter supports free-threading, :option:`python " -"-VV <-V>` and :data:`sys.version` contain \"free-threading build\". The new :" -"func:`sys._is_gil_enabled` function can be used to check whether the GIL is " -"actually disabled in the running process." +"-VV <-V>` and :data:`sys.version` contain \"free-threading build\". The " +"new :func:`sys._is_gil_enabled` function can be used to check whether the " +"GIL is actually disabled in the running process." msgstr "" msgid "" @@ -123,10 +123,8 @@ msgid "" "behavior at the Python level to the default GIL-enabled build. Built-in " "types like :class:`dict`, :class:`list`, and :class:`set` use internal locks " "to protect against concurrent modifications in ways that behave similarly to " -"the GIL. However, Python has not historically guaranteed specific behavior " -"for concurrent modifications to these built-in types, so this should be " -"treated as a description of the current implementation, not a guarantee of " -"current or future behavior." +"the GIL. See :ref:`threadsafety` for the guarantees provided by built-in " +"types." msgstr "" msgid "" @@ -204,25 +202,26 @@ msgid "Context variables" msgstr "" msgid "" -"In the free-threaded build, the flag :data:`~sys.flags." -"thread_inherit_context` is set to true by default which causes threads " -"created with :class:`threading.Thread` to start with a copy of the :class:" -"`~contextvars.Context()` of the caller of :meth:`~threading.Thread.start`. " -"In the default GIL-enabled build, the flag defaults to false so threads " -"start with an empty :class:`~contextvars.Context()`." +"In the free-threaded build, the " +"flag :data:`~sys.flags.thread_inherit_context` is set to true by default " +"which causes threads created with :class:`threading.Thread` to start with a " +"copy of the :class:`~contextvars.Context()` of the caller " +"of :meth:`~threading.Thread.start`. In the default GIL-enabled build, the " +"flag defaults to false so threads start with an " +"empty :class:`~contextvars.Context()`." msgstr "" msgid "Warning filters" msgstr "" msgid "" -"In the free-threaded build, the flag :data:`~sys.flags." -"context_aware_warnings` is set to true by default. In the default GIL-" -"enabled build, the flag defaults to false. If the flag is true then the :" -"class:`warnings.catch_warnings` context manager uses a context variable for " -"warning filters. If the flag is false then :class:`~warnings." -"catch_warnings` modifies the global filters list, which is not thread-safe. " -"See the :mod:`warnings` module for more details." +"In the free-threaded build, the " +"flag :data:`~sys.flags.context_aware_warnings` is set to true by default. " +"In the default GIL-enabled build, the flag defaults to false. If the flag " +"is true then the :class:`warnings.catch_warnings` context manager uses a " +"context variable for warning filters. If the flag is false " +"then :class:`~warnings.catch_warnings` modifies the global filters list, " +"which is not thread-safe. See the :mod:`warnings` module for more details." msgstr "" msgid "Increased memory usage" @@ -251,12 +250,13 @@ msgstr "" msgid "" "The free-threaded build uses a different :c:type:`PyObject` structure. " -"Instead of having the GC related information allocated before the :c:type:" -"`PyObject` structure, like in the default build, the GC related info is part " -"of the normal object header. For example, on the AMD64 platform, ``None`` " -"uses 32 bytes on the free-threaded build vs 16 bytes for the default build. " -"GC objects (such as dicts and lists) are the same size for both builds since " -"the free-threaded build does not use additional space for the GC info." +"Instead of having the GC related information allocated before " +"the :c:type:`PyObject` structure, like in the default build, the GC related " +"info is part of the normal object header. For example, on the AMD64 " +"platform, ``None`` uses 32 bytes on the free-threaded build vs 16 bytes for " +"the default build. GC objects (such as dicts and lists) are the same size " +"for both builds since the free-threaded build does not use additional space " +"for the GC info." msgstr "" msgid "QSBR can delay freeing of memory" @@ -268,8 +268,8 @@ msgid "" "(QSBR). This means that the memory backing data structures allowing lock-" "free access will use QSBR, which defers the free operation, rather than " "immediately freeing the memory. Two examples of these data structures are " -"the list object and the dictionary keys object. See ``InternalDocs/qsbr." -"md`` in the CPython source tree for more details on how QSBR is " +"the list object and the dictionary keys object. See ``InternalDocs/" +"qsbr.md`` in the CPython source tree for more details on how QSBR is " "implemented. Running :func:`gc.collect` should cause all memory being held " "by QSBR to be actually freed. Note that even when QSBR frees the memory, " "the underlying memory allocator may not immediately return that memory to " diff --git a/howto/functional.po b/howto/functional.po index 3de2f47..5280c45 100644 --- a/howto/functional.po +++ b/howto/functional.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,8 +28,8 @@ msgstr "" msgid "" "In this document, we'll take a tour of Python's features suitable for " "implementing programs in a functional style. After an introduction to the " -"concepts of functional programming, we'll look at language features such as :" -"term:`iterator`\\s and :term:`generator`\\s and relevant library modules " +"concepts of functional programming, we'll look at language features such " +"as :term:`iterator`\\s and :term:`generator`\\s and relevant library modules " "such as :mod:`itertools` and :mod:`functools`." msgstr "" @@ -303,9 +303,10 @@ msgid "" "iterator argument and will return the largest or smallest element. The " "``\"in\"`` and ``\"not in\"`` operators also support iterators: ``X in " "iterator`` is true if X is found in the stream returned by the iterator. " -"You'll run into obvious problems if the iterator is infinite; :func:`max`, :" -"func:`min` will never return, and if the element X never appears in the " -"stream, the ``\"in\"`` and ``\"not in\"`` operators won't return either." +"You'll run into obvious problems if the iterator is " +"infinite; :func:`max`, :func:`min` will never return, and if the element X " +"never appears in the stream, the ``\"in\"`` and ``\"not in\"`` operators " +"won't return either." msgstr "" msgid "" @@ -360,8 +361,9 @@ msgstr "" msgid "" "Applying :func:`iter` to a dictionary always loops over the keys, but " "dictionaries have methods that return other iterators. If you want to " -"iterate over values or key/value pairs, you can explicitly call the :meth:" -"`~dict.values` or :meth:`~dict.items` methods to get an appropriate iterator." +"iterate over values or key/value pairs, you can explicitly call " +"the :meth:`~dict.values` or :meth:`~dict.items` methods to get an " +"appropriate iterator." msgstr "" msgid "" @@ -640,9 +642,9 @@ msgid "" msgstr "" msgid "" -"In Python 2.5 there's a simple way to pass values into a generator. :keyword:" -"`yield` became an expression, returning a value that can be assigned to a " -"variable or otherwise operated on::" +"In Python 2.5 there's a simple way to pass values into a " +"generator. :keyword:`yield` became an expression, returning a value that can " +"be assigned to a variable or otherwise operated on::" msgstr "" msgid "val = (yield i)" @@ -666,8 +668,9 @@ msgstr "" msgid "" "Values are sent into a generator by calling its :meth:`send(value) " "` method. This method resumes the generator's code and the " -"``yield`` expression returns the specified value. If the regular :meth:" -"`~generator.__next__` method is called, the ``yield`` returns ``None``." +"``yield`` expression returns the specified value. If the " +"regular :meth:`~generator.__next__` method is called, the ``yield`` returns " +"``None``." msgstr "" msgid "" @@ -711,17 +714,17 @@ msgstr "" msgid "" ":meth:`~generator.close` sends a :exc:`GeneratorExit` exception to the " "generator to terminate the iteration. On receiving this exception, the " -"generator's code must either raise :exc:`GeneratorExit` or :exc:" -"`StopIteration`; catching the exception and doing anything else is illegal " -"and will trigger a :exc:`RuntimeError`. :meth:`~generator.close` will also " -"be called by Python's garbage collector when the generator is garbage-" -"collected." +"generator's code must either raise :exc:`GeneratorExit` " +"or :exc:`StopIteration`; catching the exception and doing anything else is " +"illegal and will trigger a :exc:`RuntimeError`. :meth:`~generator.close` " +"will also be called by Python's garbage collector when the generator is " +"garbage-collected." msgstr "" 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`." +"suggest using a ``try: ... finally:`` suite instead of " +"catching :exc:`GeneratorExit`." msgstr "" msgid "" @@ -750,11 +753,9 @@ msgid "" msgstr "" msgid "" -":func:`map(f, iterA, iterB, ...) ` returns an iterator over the sequence" -msgstr "" - -msgid "" -"``f(iterA[0], iterB[0]), f(iterA[1], iterB[1]), f(iterA[2], iterB[2]), ...``." +":func:`map(f, iterA, iterB, ...) ` returns an iterator over the " +"sequence ``f(iterA[0], iterB[0]), f(iterA[1], iterB[1]), f(iterA[2], " +"iterB[2]), ...``." msgstr "" msgid "You can of course achieve the same effect with a list comprehension." @@ -838,10 +839,10 @@ msgid "" msgstr "" msgid "" -"It doesn't construct an in-memory list and exhaust all the input iterators " -"before returning; instead tuples are constructed and returned only if " -"they're requested. (The technical term for this behaviour is `lazy " -"evaluation `__.)" +"It doesn't construct an in-memory list and :term:`exhaust ` all " +"the input iterators before returning; instead tuples are constructed and " +"returned only if they're requested. (The technical term for this behaviour " +"is `lazy evaluation `__.)" msgstr "" msgid "" @@ -933,7 +934,7 @@ msgid "" ":func:`itertools.chain(iterA, iterB, ...) ` takes an " "arbitrary number of iterables as input, and returns all the elements of the " "first iterator, then all the elements of the second, and so on, until all of " -"the iterables have been exhausted. ::" +"the iterables have been :term:`exhausted`. ::" msgstr "" msgid "" @@ -985,10 +986,11 @@ msgstr "" msgid "" "The :mod:`operator` module contains a set of functions corresponding to " -"Python's operators. Some examples are :func:`operator.add(a, b) ` (adds two values), :func:`operator.ne(a, b) ` (same as " -"``a != b``), and :func:`operator.attrgetter('id') ` " -"(returns a callable that fetches the ``.id`` attribute)." +"Python's operators. Some examples are :func:`operator.add(a, b) " +"` (adds two values), :func:`operator.ne(a, b) ` " +"(same as ``a != b``), and :func:`operator.attrgetter('id') " +"` (returns a callable that fetches the ``.id`` " +"attribute)." msgstr "" msgid "" @@ -1059,7 +1061,7 @@ msgid "" ":func:`itertools.compress(data, selectors) ` takes two " "iterators and returns only those elements of *data* for which the " "corresponding element of *selectors* is true, stopping whenever either one " -"is exhausted::" +"is :term:`exhausted`::" msgstr "" msgid "" @@ -1092,9 +1094,10 @@ msgstr "" msgid "" "The elements within each tuple remain in the same order as *iterable* " "returned them. For example, the number 1 is always before 2, 3, 4, or 5 in " -"the examples above. A similar function, :func:`itertools." -"permutations(iterable, r=None) `, removes this " -"constraint on the order, returning all possible arrangements of length *r*::" +"the examples above. A similar " +"function, :func:`itertools.permutations(iterable, r=None) " +"`, removes this constraint on the order, returning " +"all possible arrangements of length *r*::" msgstr "" msgid "" @@ -1133,11 +1136,11 @@ msgid "" msgstr "" msgid "" -"The :func:`itertools.combinations_with_replacement(iterable, r) ` function relaxes a different constraint: " -"elements can be repeated within a single tuple. Conceptually an element is " -"selected for the first position of each tuple and then is replaced before " -"the second element is selected. ::" +"The :func:`itertools.combinations_with_replacement(iterable, r) " +"` function relaxes a different " +"constraint: elements can be repeated within a single tuple. Conceptually an " +"element is selected for the first position of each tuple and then is " +"replaced before the second element is selected. ::" msgstr "" msgid "" @@ -1203,8 +1206,8 @@ msgstr "" msgid "" "The :mod:`functools` module contains some higher-order functions. A **higher-" "order function** takes one or more functions as input and returns a new " -"function. The most useful tool in this module is the :func:`functools." -"partial` function." +"function. The most useful tool in this module is " +"the :func:`functools.partial` function." msgstr "" msgid "" @@ -1242,14 +1245,15 @@ msgid "" ":func:`functools.reduce(func, iter, [initial_value]) ` " "cumulatively performs an operation on all the iterable's elements and, " "therefore, can't be applied to infinite iterables. *func* must be a function " -"that takes two elements and returns a single value. :func:`functools." -"reduce` takes the first two elements A and B returned by the iterator and " -"calculates ``func(A, B)``. It then requests the third element, C, " -"calculates ``func(func(A, B), C)``, combines this result with the fourth " -"element returned, and continues until the iterable is exhausted. If the " -"iterable returns no values at all, a :exc:`TypeError` exception is raised. " -"If the initial value is supplied, it's used as a starting point and " -"``func(initial_value, A)`` is the first calculation. ::" +"that takes two elements and returns a single " +"value. :func:`functools.reduce` takes the first two elements A and B " +"returned by the iterator and calculates ``func(A, B)``. It then requests " +"the third element, C, calculates ``func(func(A, B), C)``, combines this " +"result with the fourth element returned, and continues until the iterable " +"is :term:`exhausted`. If the iterable returns no values at all, " +"a :exc:`TypeError` exception is raised. If the initial value is supplied, " +"it's used as a starting point and ``func(initial_value, A)`` is the first " +"calculation. ::" msgstr "" msgid "" @@ -1289,10 +1293,11 @@ msgid "" msgstr "" msgid "" -"A related function is :func:`itertools.accumulate(iterable, func=operator." -"add) `. It performs the same calculation, but instead " -"of returning only the final result, :func:`~itertools.accumulate` returns an " -"iterator that also yields each partial result::" +"A related function is :func:`itertools.accumulate(iterable, " +"func=operator.add) `. It performs the same " +"calculation, but instead of returning only the final " +"result, :func:`~itertools.accumulate` returns an iterator that also yields " +"each partial result::" msgstr "" msgid "" @@ -1544,11 +1549,11 @@ msgstr "" msgid "" "Mertz also wrote a 3-part series of articles on functional programming for " -"IBM's DeveloperWorks site; see `part 1 `__, `part 2 " +"IBM's DeveloperWorks site; see `part 1 `__, `part 2 " "`__, and `part 3 `__." +"tutorials/l-prog2/>`__, and `part 3 `__." msgstr "" msgid "Python documentation" diff --git a/howto/gdb_helpers.po b/howto/gdb_helpers.po index 9d16d73..21b2230 100644 --- a/howto/gdb_helpers.po +++ b/howto/gdb_helpers.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -53,8 +53,8 @@ msgstr "" msgid "" "This document assumes that you are familiar with the basics of GDB and the " -"CPython C API. It consolidates guidance from the `devguide `_ and the `Python wiki `_ and the `Python wiki `_." msgstr "" @@ -293,8 +293,8 @@ msgid "" msgstr "" msgid "" -"Again, the implementation details can be revealed with a cast to :c:expr:" -"`PyUnicodeObject *`::" +"Again, the implementation details can be revealed with a cast " +"to :c:expr:`PyUnicodeObject *`::" msgstr "" msgid "" @@ -405,9 +405,9 @@ msgid "" "9 0 1 0 0 0 3 9 7 6 0 0 0 1 8 0 6 0 0 0 0 2 8 0 0 0 5 0 4 0 6 0 0 2 1 0 0 0 " "0 0 4 5', 'gsd.impossible_hints': 0, 'timer.__absolute_start_time__': , 'gsd.hints': 0, 'timer.active_time': , 'timer.total_time': }], dialog=, saved_game_model=, sudoku_maker=, 'timer.total_time': }], " +"dialog=, saved_game_model=, sudoku_maker=, 'gsd.hints': 0, 'timer.active_time': , 'timer.total_time': }], dialog=, saved_game_model=, sudoku_maker=, 'timer.total_time': }], " +"dialog=, saved_game_model=, sudoku_maker= (), throwflag=0) at Python/ceval." -"c:2665\n" +"test/regrtest.py, line 1548, in (), throwflag=0) at Python/" +"ceval.c:2665\n" "2665 x = call_function(&sp, oparg);\n" "(gdb) py-list\n" "1543 # Run the tests in a context manager that temporary changes the " diff --git a/howto/index.po b/howto/index.po index 47f0dac..0584872 100644 --- a/howto/index.po +++ b/howto/index.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/howto/instrumentation.po b/howto/instrumentation.po index 9a8f9e3..b5c818d 100644 --- a/howto/instrumentation.po +++ b/howto/instrumentation.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -340,8 +340,9 @@ msgid "should instead read:" msgstr "" msgid "" -"probe process(\"python\").library(\"libpython3.6dm.so.1.0\")." -"mark(\"function__entry\") {" +"probe " +"process(\"python\").library(\"libpython3.6dm.so.1.0\").mark(\"function__entry\") " +"{" msgstr "" msgid "(assuming a :ref:`debug build ` of CPython 3.6)" @@ -518,8 +519,8 @@ msgid "" " lineno = $arg3;\n" " frameptr = $arg4\n" "}\n" -"probe python.function.return = process(\"python\")." -"mark(\"function__return\")\n" +"probe python.function.return = " +"process(\"python\").mark(\"function__return\")\n" "{\n" " filename = user_string($arg1);\n" " funcname = user_string($arg2);\n" diff --git a/howto/ipaddress.po b/howto/ipaddress.po index c433abf..6233397 100644 --- a/howto/ipaddress.po +++ b/howto/ipaddress.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -107,8 +107,8 @@ msgid "Defining Networks" msgstr "" msgid "" -"Host addresses are usually grouped together into IP networks, so :mod:" -"`ipaddress` provides a way to create, inspect and manipulate network " +"Host addresses are usually grouped together into IP networks, " +"so :mod:`ipaddress` provides a way to create, inspect and manipulate network " "definitions. IP network objects are constructed from strings that define the " "range of host addresses that are part of that network. The simplest form for " "that information is a \"network address/network prefix\" pair, where the " @@ -180,11 +180,11 @@ msgid "" "network, neither the address nor the network classes are sufficient. " "Notation like ``192.0.2.1/24`` is commonly used by network engineers and the " "people who write tools for firewalls and routers as shorthand for \"the host " -"``192.0.2.1`` on the network ``192.0.2.0/24``\", Accordingly, :mod:" -"`ipaddress` provides a set of hybrid classes that associate an address with " -"a particular network. The interface for creation is identical to that for " -"defining network objects, except that the address portion isn't constrained " -"to being a network address." +"``192.0.2.1`` on the network ``192.0.2.0/24``\", " +"Accordingly, :mod:`ipaddress` provides a set of hybrid classes that " +"associate an address with a particular network. The interface for creation " +"is identical to that for defining network objects, except that the address " +"portion isn't constrained to being a network address." msgstr "" msgid "" @@ -197,8 +197,8 @@ msgstr "" msgid "" "You've gone to the trouble of creating an IPv(4|6)(Address|Network|" -"Interface) object, so you probably want to get information about it. :mod:" -"`ipaddress` tries to make doing this easy and intuitive." +"Interface) object, so you probably want to get information about " +"it. :mod:`ipaddress` tries to make doing this easy and intuitive." msgstr "" msgid "Extracting the IP version::" @@ -369,9 +369,9 @@ msgstr "" msgid "" "To support use cases where it is useful to have access to this additional " -"detail, the individual class constructors actually raise the :exc:" -"`ValueError` subclasses :exc:`ipaddress.AddressValueError` and :exc:" -"`ipaddress.NetmaskValueError` to indicate exactly which part of the " +"detail, the individual class constructors actually raise " +"the :exc:`ValueError` subclasses :exc:`ipaddress.AddressValueError` " +"and :exc:`ipaddress.NetmaskValueError` to indicate exactly which part of the " "definition failed to parse correctly." msgstr "" diff --git a/howto/isolating-extensions.po b/howto/isolating-extensions.po index 24ec969..966fbf1 100644 --- a/howto/isolating-extensions.po +++ b/howto/isolating-extensions.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -70,8 +70,8 @@ msgid "" msgstr "" msgid "" -"in parallel, managing \"sub-interpreters\" using :c:func:" -"`Py_NewInterpreter`/:c:func:`Py_EndInterpreter`." +"in parallel, managing \"sub-interpreters\" " +"using :c:func:`Py_NewInterpreter`/:c:func:`Py_EndInterpreter`." msgstr "" msgid "" @@ -270,8 +270,9 @@ msgstr "" msgid "" "An example of a module with per-module state is currently available as " -"`xxlimited `__; example module initialization shown at the bottom of the file." +"`xxlimited `__; example module initialization shown at the bottom of the " +"file." msgstr "" msgid "Opt-Out: Limiting to One Module Object per Process" @@ -396,8 +397,8 @@ msgid "" msgstr "" msgid "" -"Unlike static types, heap type objects are mutable by default. Use the :c:" -"macro:`Py_TPFLAGS_IMMUTABLETYPE` flag to prevent mutability." +"Unlike static types, heap type objects are mutable by default. Use " +"the :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` flag to prevent mutability." msgstr "" msgid "" @@ -411,8 +412,8 @@ msgstr "" msgid "" "Heap types can be created by filling a :c:struct:`PyType_Spec` structure, a " -"description or \"blueprint\" of a class, and calling :c:func:" -"`PyType_FromModuleAndSpec` to construct a new class object." +"description or \"blueprint\" of a class, and " +"calling :c:func:`PyType_FromModuleAndSpec` to construct a new class object." msgstr "" msgid "" @@ -449,8 +450,8 @@ msgid "" msgstr "" msgid "" -"Please refer to the documentation of :c:macro:`Py_TPFLAGS_HAVE_GC` and :c:" -"member:`~PyTypeObject.tp_traverse` for additional considerations." +"Please refer to the documentation of :c:macro:`Py_TPFLAGS_HAVE_GC` " +"and :c:member:`~PyTypeObject.tp_traverse` for additional considerations." msgstr "" msgid "" @@ -487,18 +488,18 @@ msgid ":c:macro:`PY_VERSION_HEX`, if not using the stable ABI, or" msgstr "" msgid "" -":py:data:`sys.version_info` (via :c:func:`PySys_GetObject` and :c:func:" -"`PyArg_ParseTuple`)." +":py:data:`sys.version_info` (via :c:func:`PySys_GetObject` " +"and :c:func:`PyArg_ParseTuple`)." msgstr "" msgid "Delegating ``tp_traverse``" msgstr "" msgid "" -"If your traverse function delegates to the :c:member:`~PyTypeObject." -"tp_traverse` of its base class (or another type), ensure that " -"``Py_TYPE(self)`` is visited only once. Note that only heap type are " -"expected to visit the type in ``tp_traverse``." +"If your traverse function delegates to " +"the :c:member:`~PyTypeObject.tp_traverse` of its base class (or another " +"type), ensure that ``Py_TYPE(self)`` is visited only once. Note that only " +"heap type are expected to visit the type in ``tp_traverse``." msgstr "" msgid "For example, if your traverse function includes::" @@ -521,8 +522,8 @@ msgid "" msgstr "" msgid "" -"It is not necessary to handle the type's reference count in :c:member:" -"`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject.tp_clear`." +"It is not necessary to handle the type's reference count " +"in :c:member:`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject.tp_clear`." msgstr "" msgid "Defining ``tp_dealloc``" @@ -565,8 +566,8 @@ msgid "Not overriding ``tp_free``" msgstr "" msgid "" -"The :c:member:`~PyTypeObject.tp_free` slot of a heap type must be set to :c:" -"func:`PyObject_GC_Del`. This is the default; do not override it." +"The :c:member:`~PyTypeObject.tp_free` slot of a heap type must be set " +"to :c:func:`PyObject_GC_Del`. This is the default; do not override it." msgstr "" msgid "Avoiding ``PyObject_New``" @@ -592,8 +593,8 @@ msgid "" msgstr "" msgid "" -"If the above is not possible (e.g. inside a custom ``tp_alloc``), call :c:" -"func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar`::" +"If the above is not possible (e.g. inside a custom ``tp_alloc``), " +"call :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar`::" msgstr "" msgid "" @@ -646,8 +647,8 @@ msgid "" msgstr "" msgid "" -"The following Python code can illustrate the concept. ``Base." -"get_defining_class`` returns ``Base`` even if ``type(self) == Sub``:" +"The following Python code can illustrate the concept. " +"``Base.get_defining_class`` returns ``Base`` even if ``type(self) == Sub``:" msgstr "" msgid "" @@ -663,10 +664,10 @@ msgid "" msgstr "" msgid "" -"For a method to get its \"defining class\", it must use the :ref:" -"`METH_METHOD | METH_FASTCALL | METH_KEYWORDS ` :c:type:`calling convention ` and the " -"corresponding :c:type:`PyCMethod` signature::" +"For a method to get its \"defining class\", it must use " +"the :ref:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS ` :c:type:`calling convention ` and " +"the corresponding :c:type:`PyCMethod` signature::" msgstr "" msgid "" @@ -719,18 +720,19 @@ msgid "This is new in Python 3.11." msgstr "" msgid "" -"Slot methods—the fast C equivalents for special methods, such as :c:member:" -"`~PyNumberMethods.nb_add` for :py:attr:`~object.__add__` or :c:member:" -"`~PyTypeObject.tp_new` for initialization—have a very simple API that " -"doesn't allow passing in the defining class, unlike with :c:type:" -"`PyCMethod`. The same goes for getters and setters defined with :c:type:" -"`PyGetSetDef`." +"Slot methods—the fast C equivalents for special methods, such " +"as :c:member:`~PyNumberMethods.nb_add` for :py:attr:`~object.__add__` " +"or :c:member:`~PyTypeObject.tp_new` for initialization—have a very simple " +"API that doesn't allow passing in the defining class, unlike " +"with :c:type:`PyCMethod`. The same goes for getters and setters defined " +"with :c:type:`PyGetSetDef`." msgstr "" msgid "" -"To access the module state in these cases, use the :c:func:" -"`PyType_GetModuleByDef` function, and pass in the module definition. Once " -"you have the module, call :c:func:`PyModule_GetState` to get the state::" +"To access the module state in these cases, use " +"the :c:func:`PyType_GetModuleByDef` function, and pass in the module " +"definition. Once you have the module, call :c:func:`PyModule_GetState` to " +"get the state::" msgstr "" msgid "" @@ -764,11 +766,11 @@ msgid "" msgstr "" msgid "" -"Usually this is not an issue, because types created with :c:func:" -"`PyType_FromModuleAndSpec`, and their instances, hold a reference to the " -"module. However, you must be careful in reference counting when you " -"reference module state from other places, such as callbacks for external " -"libraries." +"Usually this is not an issue, because types created " +"with :c:func:`PyType_FromModuleAndSpec`, and their instances, hold a " +"reference to the module. However, you must be careful in reference counting " +"when you reference module state from other places, such as callbacks for " +"external libraries." msgstr "" msgid "Open Issues" diff --git a/howto/logging-cookbook.po b/howto/logging-cookbook.po index eade5ea..d07f197 100644 --- a/howto/logging-cookbook.po +++ b/howto/logging-cookbook.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -59,8 +59,8 @@ msgid "" "ch = logging.StreamHandler()\n" "ch.setLevel(logging.ERROR)\n" "# create formatter and add it to the handlers\n" -"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - " -"%(message)s')\n" +"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %" +"(message)s')\n" "fh.setFormatter(formatter)\n" "ch.setFormatter(formatter)\n" "# add the handlers to the logger\n" @@ -89,8 +89,8 @@ msgid "" "\n" "class Auxiliary:\n" " def __init__(self):\n" -" self.logger = logging.getLogger('spam_application.auxiliary." -"Auxiliary')\n" +" self.logger = " +"logging.getLogger('spam_application.auxiliary.Auxiliary')\n" " self.logger.info('creating an instance of Auxiliary')\n" "\n" " def do_something(self):\n" @@ -147,8 +147,8 @@ msgid "" " time.sleep(0.5)\n" "\n" "def main():\n" -" logging.basicConfig(level=logging.DEBUG, format='%(relativeCreated)6d " -"%(threadName)s %(message)s')\n" +" logging.basicConfig(level=logging.DEBUG, format='%(relativeCreated)6d %" +"(threadName)s %(message)s')\n" " info = {'stop': False}\n" " thread = threading.Thread(target=worker, args=(info,))\n" " thread.start()\n" @@ -219,8 +219,8 @@ msgid "" "ch = logging.StreamHandler()\n" "ch.setLevel(logging.ERROR)\n" "# create formatter and add it to the handlers\n" -"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - " -"%(message)s')\n" +"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %" +"(message)s')\n" "ch.setFormatter(formatter)\n" "fh.setFormatter(formatter)\n" "# add the handlers to logger\n" @@ -268,8 +268,8 @@ msgid "" "\n" "# set up logging to file - see previous section for more details\n" "logging.basicConfig(level=logging.DEBUG,\n" -" format='%(asctime)s %(name)-12s %(levelname)-8s " -"%(message)s',\n" +" format='%(asctime)s %(name)-12s %(levelname)-8s %" +"(message)s',\n" " datefmt='%m-%d %H:%M',\n" " filename='/tmp/myapp.log',\n" " filemode='w')\n" @@ -456,9 +456,9 @@ msgid "" "a function which only returns ``True`` if the level of the passed in record " "is at or below the specified level. Note that in this example I have defined " "the ``filter_maker`` in a test script ``main.py`` that I run from the " -"command line, so its module will be ``__main__`` - hence the ``__main__." -"filter_maker`` in the filter configuration. You will need to change that if " -"you define it in a different module." +"command line, so its module will be ``__main__`` - hence the " +"``__main__.filter_maker`` in the filter configuration. You will need to " +"change that if you define it in a different module." msgstr "" msgid "With the filter added, we can run ``main.py``, which in full is:" @@ -635,13 +635,13 @@ msgid "" msgstr "" msgid "" -"A common culprit which demonstrates sluggish behaviour is the :class:" -"`SMTPHandler`: sending emails can take a long time, for a number of reasons " -"outside the developer's control (for example, a poorly performing mail or " -"network infrastructure). But almost any network-based handler can block: " -"Even a :class:`SocketHandler` operation may do a DNS query under the hood " -"which is too slow (and this query can be deep in the socket library code, " -"below the Python layer, and outside your control)." +"A common culprit which demonstrates sluggish behaviour is " +"the :class:`SMTPHandler`: sending emails can take a long time, for a number " +"of reasons outside the developer's control (for example, a poorly performing " +"mail or network infrastructure). But almost any network-based handler can " +"block: Even a :class:`SocketHandler` operation may do a DNS query under the " +"hood which is too slow (and this query can be deep in the socket library " +"code, below the Python layer, and outside your control)." msgstr "" msgid "" @@ -659,12 +659,12 @@ msgstr "" msgid "" "The second part of the solution is :class:`QueueListener`, which has been " -"designed as the counterpart to :class:`QueueHandler`. A :class:" -"`QueueListener` is very simple: it's passed a queue and some handlers, and " -"it fires up an internal thread which listens to its queue for LogRecords " -"sent from ``QueueHandlers`` (or any other source of ``LogRecords``, for that " -"matter). The ``LogRecords`` are removed from the queue and passed to the " -"handlers for processing." +"designed as the counterpart to :class:`QueueHandler`. " +"A :class:`QueueListener` is very simple: it's passed a queue and some " +"handlers, and it fires up an internal thread which listens to its queue for " +"LogRecords sent from ``QueueHandlers`` (or any other source of " +"``LogRecords``, for that matter). The ``LogRecords`` are removed from the " +"queue and passed to the handlers for processing." msgstr "" msgid "" @@ -706,10 +706,10 @@ msgid "" "Although the earlier discussion wasn't specifically talking about async " "code, but rather about slow logging handlers, it should be noted that when " "logging from async code, network and even file handlers could lead to " -"problems (blocking the event loop) because some logging is done from :mod:" -"`asyncio` internals. It might be best, if any async code is used in an " -"application, to use the above approach for logging, so that any blocking " -"code runs only in the ``QueueListener`` thread." +"problems (blocking the event loop) because some logging is done " +"from :mod:`asyncio` internals. It might be best, if any async code is used " +"in an application, to use the above approach for logging, so that any " +"blocking code runs only in the ``QueueListener`` thread." msgstr "" msgid "" @@ -724,8 +724,8 @@ msgid "" msgstr "" msgid "" -"The :class:`QueueListener` can be started (and stopped) via the :keyword:" -"`with` statement. For example:" +"The :class:`QueueListener` can be started (and stopped) via " +"the :keyword:`with` statement. For example:" msgstr "" msgid "" @@ -742,8 +742,8 @@ msgstr "" msgid "" "Let's say you want to send logging events across a network, and handle them " -"at the receiving end. A simple way of doing this is attaching a :class:" -"`SocketHandler` instance to the root logger at the sending end::" +"at the receiving end. A simple way of doing this is attaching " +"a :class:`SocketHandler` instance to the root logger at the sending end::" msgstr "" msgid "" @@ -774,8 +774,8 @@ msgid "" msgstr "" msgid "" -"At the receiving end, you can set up a receiver using the :mod:" -"`socketserver` module. Here is a basic working example::" +"At the receiving end, you can set up a receiver using " +"the :mod:`socketserver` module. Here is a basic working example::" msgstr "" msgid "" @@ -858,8 +858,8 @@ msgid "" "\n" "def main():\n" " logging.basicConfig(\n" -" format='%(relativeCreated)5d %(name)-15s %(levelname)-8s " -"%(message)s')\n" +" format='%(relativeCreated)5d %(name)-15s %(levelname)-8s %" +"(message)s')\n" " tcpserver = LogRecordSocketReceiver()\n" " print('About to start TCP server...')\n" " tcpserver.serve_until_stopped()\n" @@ -968,8 +968,8 @@ msgid "To test these files, do the following in a POSIX environment:" msgstr "" msgid "" -"Download `the Gist `__ as a ZIP archive using the :" -"guilabel:`Download ZIP` button." +"Download `the Gist `__ as a ZIP archive using " +"the :guilabel:`Download ZIP` button." msgstr "" msgid "Unzip the above files from the archive into a scratch directory." @@ -1041,8 +1041,8 @@ msgid "" "is not a good idea because these instances are not garbage collected. While " "this is not a problem in practice, when the number of :class:`Logger` " "instances is dependent on the level of granularity you want to use in " -"logging an application, it could be hard to manage if the number of :class:" -"`Logger` instances becomes effectively unbounded." +"logging an application, it could be hard to manage if the number " +"of :class:`Logger` instances becomes effectively unbounded." msgstr "" msgid "Using LoggerAdapters to impart contextual information" @@ -1051,21 +1051,21 @@ msgstr "" msgid "" "An easy way in which you can pass contextual information to be output along " "with logging event information is to use the :class:`LoggerAdapter` class. " -"This class is designed to look like a :class:`Logger`, so that you can call :" -"meth:`debug`, :meth:`info`, :meth:`warning`, :meth:`error`, :meth:" -"`exception`, :meth:`critical` and :meth:`log`. These methods have the same " -"signatures as their counterparts in :class:`Logger`, so you can use the two " -"types of instances interchangeably." +"This class is designed to look like a :class:`Logger`, so that you can " +"call :meth:`debug`, :meth:`info`, :meth:`warning`, :meth:`error`, :meth:`exception`, :meth:`critical` " +"and :meth:`log`. These methods have the same signatures as their " +"counterparts in :class:`Logger`, so you can use the two types of instances " +"interchangeably." msgstr "" msgid "" -"When you create an instance of :class:`LoggerAdapter`, you pass it a :class:" -"`Logger` instance and a dict-like object which contains your contextual " -"information. When you call one of the logging methods on an instance of :" -"class:`LoggerAdapter`, it delegates the call to the underlying instance of :" -"class:`Logger` passed to its constructor, and arranges to pass the " -"contextual information in the delegated call. Here's a snippet from the code " -"of :class:`LoggerAdapter`::" +"When you create an instance of :class:`LoggerAdapter`, you pass it " +"a :class:`Logger` instance and a dict-like object which contains your " +"contextual information. When you call one of the logging methods on an " +"instance of :class:`LoggerAdapter`, it delegates the call to the underlying " +"instance of :class:`Logger` passed to its constructor, and arranges to pass " +"the contextual information in the delegated call. Here's a snippet from the " +"code of :class:`LoggerAdapter`::" msgstr "" msgid "" @@ -1096,8 +1096,9 @@ msgid "" "use customized strings with your :class:`Formatter` instances which know " "about the keys of the dict-like object. If you need a different method, e.g. " "if you want to prepend or append the contextual information to the message " -"string, you just need to subclass :class:`LoggerAdapter` and override :meth:" -"`~LoggerAdapter.process` to do what you need. Here is a simple example::" +"string, you just need to subclass :class:`LoggerAdapter` and " +"override :meth:`~LoggerAdapter.process` to do what you need. Here is a " +"simple example::" msgstr "" msgid "" @@ -1138,22 +1139,22 @@ msgid "Using Filters to impart contextual information" msgstr "" msgid "" -"You can also add contextual information to log output using a user-defined :" -"class:`Filter`. ``Filter`` instances are allowed to modify the " +"You can also add contextual information to log output using a user-" +"defined :class:`Filter`. ``Filter`` instances are allowed to modify the " "``LogRecords`` passed to them, including adding additional attributes which " -"can then be output using a suitable format string, or if needed a custom :" -"class:`Formatter`." +"can then be output using a suitable format string, or if needed a " +"custom :class:`Formatter`." msgstr "" msgid "" "For example in a web application, the request being processed (or at least, " -"the interesting parts of it) can be stored in a threadlocal (:class:" -"`threading.local`) variable, and then accessed from a ``Filter`` to add, " -"say, information from the request - say, the remote IP address and remote " -"user's username - to the ``LogRecord``, using the attribute names 'ip' and " -"'user' as in the ``LoggerAdapter`` example above. In that case, the same " -"format string can be used to get similar output to that shown above. Here's " -"an example script::" +"the interesting parts of it) can be stored in a threadlocal " +"(:class:`threading.local`) variable, and then accessed from a ``Filter`` to " +"add, say, information from the request - say, the remote IP address and " +"remote user's username - to the ``LogRecord``, using the attribute names " +"'ip' and 'user' as in the ``LoggerAdapter`` example above. In that case, the " +"same format string can be used to get similar output to that shown above. " +"Here's an example script::" msgstr "" msgid "" @@ -1300,8 +1301,8 @@ msgid "" "\n" "# A dummy set of requests which will be used in the simulation - we'll just " "pick\n" -"# from this list randomly. Note that all GET requests are from 192.168.2." -"XXX\n" +"# from this list randomly. Note that all GET requests are from " +"192.168.2.XXX\n" "# addresses, whereas POST requests are from 192.16.3.XXX addresses. Three " "users\n" "# are represented in the sample requests.\n" @@ -1319,8 +1320,8 @@ msgid "" "information\n" "# such as HTTP method, client IP and username\n" "\n" -"formatter = logging.Formatter('%(threadName)-11s %(appName)s %(name)-9s " -"%(user)-6s %(ip)s %(method)-4s %(message)s')\n" +"formatter = logging.Formatter('%(threadName)-11s %(appName)s %(name)-9s %" +"(user)-6s %(ip)s %(method)-4s %(message)s')\n" "\n" "# Create our context variables. These will be filled at the start of " "request\n" @@ -1534,17 +1535,18 @@ msgid "" "this is to have all the processes log to a :class:`~handlers.SocketHandler`, " "and have a separate process which implements a socket server which reads " "from the socket and logs to file. (If you prefer, you can dedicate one " -"thread in one of the existing processes to perform this function.) :ref:" -"`This section ` documents this approach in more detail and " -"includes a working socket receiver which can be used as a starting point for " -"you to adapt in your own applications." +"thread in one of the existing processes to perform this " +"function.) :ref:`This section ` documents this approach in " +"more detail and includes a working socket receiver which can be used as a " +"starting point for you to adapt in your own applications." msgstr "" msgid "" -"You could also write your own handler which uses the :class:" -"`~multiprocessing.Lock` class from the :mod:`multiprocessing` module to " -"serialize access to the file from your processes. The stdlib :class:" -"`FileHandler` and subclasses do not make use of :mod:`multiprocessing`." +"You could also write your own handler which uses " +"the :class:`~multiprocessing.Lock` class from the :mod:`multiprocessing` " +"module to serialize access to the file from your processes. The " +"stdlib :class:`FileHandler` and subclasses do not make use " +"of :mod:`multiprocessing`." msgstr "" msgid "" @@ -1593,8 +1595,8 @@ msgid "" "def listener_configurer():\n" " root = logging.getLogger()\n" " h = logging.handlers.RotatingFileHandler('mptest.log', 'a', 300, 10)\n" -" f = logging.Formatter('%(asctime)s %(processName)-10s %(name)s " -"%(levelname)-8s %(message)s')\n" +" f = logging.Formatter('%(asctime)s %(processName)-10s %(name)s %" +"(levelname)-8s %(message)s')\n" " h.setFormatter(f)\n" " root.addHandler(h)\n" "\n" @@ -1724,8 +1726,8 @@ msgid "" " 'formatters': {\n" " 'detailed': {\n" " 'class': 'logging.Formatter',\n" -" 'format': '%(asctime)s %(name)-15s %(levelname)-8s " -"%(processName)-10s %(message)s'\n" +" 'format': '%(asctime)s %(name)-15s %(levelname)-8s %" +"(processName)-10s %(message)s'\n" " }\n" " },\n" " 'handlers': {\n" @@ -1918,9 +1920,9 @@ msgstr "" msgid "" "When logging was added to the Python standard library, the only way of " "formatting messages with variable content was to use the %-formatting " -"method. Since then, Python has gained two new formatting approaches: :class:" -"`string.Template` (added in Python 2.4) and :meth:`str.format` (added in " -"Python 2.6)." +"method. Since then, Python has gained two new formatting " +"approaches: :class:`string.Template` (added in Python 2.4) " +"and :meth:`str.format` (added in Python 2.6)." msgstr "" msgid "" @@ -1930,9 +1932,9 @@ msgid "" "``'%'``, but other possible values are ``'{'`` and ``'$'``, which correspond " "to the other two formatting styles. Backwards compatibility is maintained by " "default (as you would expect), but by explicitly specifying a style " -"parameter, you get the ability to specify format strings which work with :" -"meth:`str.format` or :class:`string.Template`. Here's an example console " -"session to show the possibilities:" +"parameter, you get the ability to specify format strings which work " +"with :meth:`str.format` or :class:`string.Template`. Here's an example " +"console session to show the possibilities:" msgstr "" msgid "" @@ -1978,12 +1980,12 @@ msgid "" "logging call (e.g. the ``exc_info`` keyword parameter to indicate that " "traceback information should be logged, or the ``extra`` keyword parameter " "to indicate additional contextual information to be added to the log). So " -"you cannot directly make logging calls using :meth:`str.format` or :class:" -"`string.Template` syntax, because internally the logging package uses %-" -"formatting to merge the format string and the variable arguments. There " -"would be no changing this while preserving backward compatibility, since all " -"logging calls which are out there in existing code will be using %-format " -"strings." +"you cannot directly make logging calls using :meth:`str.format` " +"or :class:`string.Template` syntax, because internally the logging package " +"uses %-formatting to merge the format string and the variable arguments. " +"There would be no changing this while preserving backward compatibility, " +"since all logging calls which are out there in existing code will be using %-" +"format strings." msgstr "" msgid "" @@ -2107,10 +2109,10 @@ msgstr "" msgid "" "Every logging event is represented by a :class:`LogRecord` instance. When an " -"event is logged and not filtered out by a logger's level, a :class:" -"`LogRecord` is created, populated with information about the event and then " -"passed to the handlers for that logger (and its ancestors, up to and " -"including the logger where further propagation up the hierarchy is " +"event is logged and not filtered out by a logger's level, " +"a :class:`LogRecord` is created, populated with information about the event " +"and then passed to the handlers for that logger (and its ancestors, up to " +"and including the logger where further propagation up the hierarchy is " "disabled). Before Python 3.2, there were only two places where this creation " "was done:" msgstr "" @@ -2124,19 +2126,20 @@ msgid "" ":func:`makeLogRecord`, which is called with a dictionary containing " "attributes to be added to the LogRecord. This is typically invoked when a " "suitable dictionary has been received over the network (e.g. in pickle form " -"via a :class:`~handlers.SocketHandler`, or in JSON form via an :class:" -"`~handlers.HTTPHandler`)." +"via a :class:`~handlers.SocketHandler`, or in JSON form via " +"an :class:`~handlers.HTTPHandler`)." msgstr "" msgid "" -"This has usually meant that if you need to do anything special with a :class:" -"`LogRecord`, you've had to do one of the following." +"This has usually meant that if you need to do anything special with " +"a :class:`LogRecord`, you've had to do one of the following." msgstr "" msgid "" -"Create your own :class:`Logger` subclass, which overrides :meth:`Logger." -"makeRecord`, and set it using :func:`~logging.setLoggerClass` before any " -"loggers that you care about are instantiated." +"Create your own :class:`Logger` subclass, which " +"overrides :meth:`Logger.makeRecord`, and set it " +"using :func:`~logging.setLoggerClass` before any loggers that you care about " +"are instantiated." msgstr "" msgid "" @@ -2175,10 +2178,10 @@ msgstr "" msgid "" "In Python 3.2 and later, :class:`~logging.LogRecord` creation is done " "through a factory, which you can specify. The factory is just a callable you " -"can set with :func:`~logging.setLogRecordFactory`, and interrogate with :" -"func:`~logging.getLogRecordFactory`. The factory is invoked with the same " -"signature as the :class:`~logging.LogRecord` constructor, as :class:" -"`LogRecord` is the default setting for the factory." +"can set with :func:`~logging.setLogRecordFactory`, and interrogate " +"with :func:`~logging.getLogRecordFactory`. The factory is invoked with the " +"same signature as the :class:`~logging.LogRecord` constructor, " +"as :class:`LogRecord` is the default setting for the factory." msgstr "" msgid "" @@ -2284,10 +2287,10 @@ msgstr "" msgid "" "In a similar way to the above section, we can implement a listener and " -"handler using :pypi:`pynng`, which is a Python binding to `NNG `_, billed as a spiritual successor to ZeroMQ. The following " -"snippets illustrate -- you can test them in an environment which has " -"``pynng`` installed. Just for variety, we present the listener first." +"handler using :pypi:`pynng`, which is a Python binding to `NNG `_, billed as a spiritual successor to ZeroMQ. The " +"following snippets illustrate -- you can test them in an environment which " +"has ``pynng`` installed. Just for variety, we present the listener first." msgstr "" msgid "" @@ -2383,8 +2386,8 @@ msgid "" "# Make sure the process ID is in the output\n" "logging.basicConfig(level=logging.DEBUG,\n" " handlers=[logging.StreamHandler(), handler],\n" -" format='%(levelname)-8s %(name)10s %(process)6s " -"%(message)s')\n" +" format='%(levelname)-8s %(name)10s %(process)6s %" +"(message)s')\n" "levels = (logging.DEBUG, logging.INFO, logging.WARNING, logging.ERROR,\n" " logging.CRITICAL)\n" "logger_names = ('myapp', 'myapp.lib1', 'myapp.lib2')\n" @@ -2470,8 +2473,8 @@ msgstr "" msgid "" "Below is an example of a logging configuration dictionary - it's taken from " "the `documentation on the Django project `_. This dictionary is passed to :" -"func:`~config.dictConfig` to put the configuration into effect::" +"stable/topics/logging/#configuring-logging>`_. This dictionary is passed " +"to :func:`~config.dictConfig` to put the configuration into effect::" msgstr "" msgid "" @@ -2756,13 +2759,13 @@ msgid "" " 'formatters': {\n" " 'detailed': {\n" " 'class': 'logging.Formatter',\n" -" 'format': '%(asctime)s %(name)-15s %(levelname)-8s " -"%(processName)-10s %(message)s'\n" +" 'format': '%(asctime)s %(name)-15s %(levelname)-8s %" +"(processName)-10s %(message)s'\n" " },\n" " 'simple': {\n" " 'class': 'logging.Formatter',\n" -" 'format': '%(name)-15s %(levelname)-8s %(processName)-10s " -"%(message)s'\n" +" 'format': '%(name)-15s %(levelname)-8s %(processName)-10s %" +"(message)s'\n" " }\n" " },\n" " 'handlers': {\n" @@ -2861,8 +2864,9 @@ msgid "" msgstr "" msgid "" -"Attach a :class:`~logging.Formatter` instance to your :class:`~logging." -"handlers.SysLogHandler` instance, with a format string such as::" +"Attach a :class:`~logging.Formatter` instance to " +"your :class:`~logging.handlers.SysLogHandler` instance, with a format string " +"such as::" msgstr "" msgid "'ASCII section\\ufeffUnicode section'" @@ -3003,8 +3007,9 @@ msgid "" msgstr "" msgid "" -"You can then specify, in a logging configuration passed to :func:" -"`dictConfig`, that a logging handler be created by calling this function::" +"You can then specify, in a logging configuration passed " +"to :func:`dictConfig`, that a logging handler be created by calling this " +"function::" msgstr "" msgid "" @@ -3102,11 +3107,11 @@ msgid "" msgstr "" msgid "" -"Note that this example uses Python 3.3 because that's where :func:`shutil." -"chown` makes an appearance. This approach should work with any Python " -"version that supports :func:`dictConfig` - namely, Python 2.7, 3.2 or later. " -"With pre-3.3 versions, you would need to implement the actual ownership " -"change using e.g. :func:`os.chown`." +"Note that this example uses Python 3.3 because that's " +"where :func:`shutil.chown` makes an appearance. This approach should work " +"with any Python version that supports :func:`dictConfig` - namely, Python " +"2.7, 3.2 or later. With pre-3.3 versions, you would need to implement the " +"actual ownership change using e.g. :func:`os.chown`." msgstr "" msgid "" @@ -3162,11 +3167,12 @@ msgid "" "call (e.g. the ``exc_info`` keyword parameter to indicate that traceback " "information should be logged, or the ``extra`` keyword parameter to indicate " "additional contextual information to be added to the log). So you cannot " -"directly make logging calls using :meth:`str.format` or :class:`string." -"Template` syntax, because internally the logging package uses %-formatting " -"to merge the format string and the variable arguments. There would be no " -"changing this while preserving backward compatibility, since all logging " -"calls which are out there in existing code will be using %-format strings." +"directly make logging calls using :meth:`str.format` " +"or :class:`string.Template` syntax, because internally the logging package " +"uses %-formatting to merge the format string and the variable arguments. " +"There would be no changing this while preserving backward compatibility, " +"since all logging calls which are out there in existing code will be using %-" +"format strings." msgstr "" msgid "" @@ -3201,8 +3207,8 @@ msgid "" msgstr "" msgid "" -"Refer to the reference documentation on :func:`setLogRecordFactory` and :" -"class:`LogRecord` for more information." +"Refer to the reference documentation on :func:`setLogRecordFactory` " +"and :class:`LogRecord` for more information." msgstr "" msgid "Using custom message objects" @@ -3210,11 +3216,11 @@ msgstr "" msgid "" "There is another, perhaps simpler way that you can use {}- and $- formatting " -"to construct your individual log messages. You may recall (from :ref:" -"`arbitrary-object-messages`) that when logging you can use an arbitrary " -"object as a message format string, and that the logging package will call :" -"func:`str` on that object to get the actual format string. Consider the " -"following two classes::" +"to construct your individual log messages. You may recall " +"(from :ref:`arbitrary-object-messages`) that when logging you can use an " +"arbitrary object as a message format string, and that the logging package " +"will call :func:`str` on that object to get the actual format string. " +"Consider the following two classes::" msgstr "" msgid "" @@ -3228,8 +3234,8 @@ msgid "" msgstr "" msgid "" -"Examples of this approach are given below. Firstly, formatting with :meth:" -"`str.format`::" +"Examples of this approach are given below. Firstly, formatting " +"with :meth:`str.format`::" msgstr "" msgid "" @@ -3275,13 +3281,13 @@ msgid "" "it might not be obvious at first glance how to do it (hence this recipe). " "Since :class:`~logging.Filter` is the only filter class included in the " "standard library, and it is unlikely to cater to many requirements (it's " -"only there as a base class), you will typically need to define your own :" -"class:`~logging.Filter` subclass with an overridden :meth:`~logging.Filter." -"filter` method. To do this, specify the ``()`` key in the configuration " -"dictionary for the filter, specifying a callable which will be used to " -"create the filter (a class is the most obvious, but you can provide any " -"callable which returns a :class:`~logging.Filter` instance). Here is a " -"complete example::" +"only there as a base class), you will typically need to define your " +"own :class:`~logging.Filter` subclass with an " +"overridden :meth:`~logging.Filter.filter` method. To do this, specify the " +"``()`` key in the configuration dictionary for the filter, specifying a " +"callable which will be used to create the filter (a class is the most " +"obvious, but you can provide any callable which returns " +"a :class:`~logging.Filter` instance). Here is a complete example::" msgstr "" msgid "" @@ -3432,14 +3438,14 @@ msgid "" "rendered in an audible rather than a visible format. This is easy to do if " "you have text-to-speech (TTS) functionality available in your system, even " "if it doesn't have a Python binding. Most TTS systems have a command line " -"program you can run, and this can be invoked from a handler using :mod:" -"`subprocess`. It's assumed here that TTS command line programs won't expect " -"to interact with users or take a long time to complete, and that the " -"frequency of logged messages will be not so high as to swamp the user with " -"messages, and that it's acceptable to have the messages spoken one at a time " -"rather than concurrently, The example implementation below waits for one " -"message to be spoken before the next is processed, and this might cause " -"other handlers to be kept waiting. Here is a short example showing the " +"program you can run, and this can be invoked from a handler " +"using :mod:`subprocess`. It's assumed here that TTS command line programs " +"won't expect to interact with users or take a long time to complete, and " +"that the frequency of logged messages will be not so high as to swamp the " +"user with messages, and that it's acceptable to have the messages spoken one " +"at a time rather than concurrently, The example implementation below waits " +"for one message to be spoken before the next is processed, and this might " +"cause other handlers to be kept waiting. Here is a short example showing the " "approach, which assumes that the ``espeak`` TTS package is available::" msgstr "" @@ -3523,9 +3529,9 @@ msgid "" "parameter and attaches a memory handler for the duration of the call to the " "decorated function. The decorator can be additionally parameterised using a " "target handler, a level at which flushing should occur, and a capacity for " -"the buffer (number of records buffered). These default to a :class:`~logging." -"StreamHandler` which writes to ``sys.stderr``, ``logging.ERROR`` and ``100`` " -"respectively." +"the buffer (number of records buffered). These default to " +"a :class:`~logging.StreamHandler` which writes to ``sys.stderr``, " +"``logging.ERROR`` and ``100`` respectively." msgstr "" msgid "Here's the script::" @@ -3647,12 +3653,13 @@ msgstr "" msgid "" "To illustrate how you can send log messages via email, so that a set number " -"of messages are sent per email, you can subclass :class:`~logging.handlers." -"BufferingHandler`. In the following example, which you can adapt to suit " -"your specific needs, a simple test harness is provided which allows you to " -"run the script with command line arguments specifying what you typically " -"need to send things via SMTP. (Run the downloaded script with the ``-h`` " -"argument to see the required and optional arguments.)" +"of messages are sent per email, you can " +"subclass :class:`~logging.handlers.BufferingHandler`. In the following " +"example, which you can adapt to suit your specific needs, a simple test " +"harness is provided which allows you to run the script with command line " +"arguments specifying what you typically need to send things via SMTP. (Run " +"the downloaded script with the ``-h`` argument to see the required and " +"optional arguments.)" msgstr "" msgid "" @@ -3674,8 +3681,8 @@ msgid "" " toaddrs = [toaddrs]\n" " self.toaddrs = toaddrs\n" " self.subject = subject\n" -" self.setFormatter(logging.Formatter(\"%(asctime)s %(levelname)-5s " -"%(message)s\"))\n" +" self.setFormatter(logging.Formatter(\"%(asctime)s %(levelname)-5s %" +"(message)s\"))\n" "\n" " def flush(self):\n" " if len(self.buffer) > 0:\n" @@ -3746,10 +3753,10 @@ msgid "" msgstr "" msgid "" -"and you can then use the ``UTCFormatter`` in your code instead of :class:" -"`~logging.Formatter`. If you want to do that via configuration, you can use " -"the :func:`~logging.config.dictConfig` API with an approach illustrated by " -"the following complete example::" +"and you can then use the ``UTCFormatter`` in your code instead " +"of :class:`~logging.Formatter`. If you want to do that via configuration, " +"you can use the :func:`~logging.config.dictConfig` API with an approach " +"illustrated by the following complete example::" msgstr "" msgid "" @@ -3954,8 +3961,8 @@ msgid "" "Suppose we have a command-line application whose job is to stop, start or " "restart some services. This could be organised for the purposes of " "illustration as a file ``app.py`` that is the main script for the " -"application, with individual commands implemented in ``start.py``, ``stop." -"py`` and ``restart.py``. Suppose further that we want to control the " +"application, with individual commands implemented in ``start.py``, " +"``stop.py`` and ``restart.py``. Suppose further that we want to control the " "verbosity of the application via a command-line argument, defaulting to " "``logging.INFO``. Here's one way that ``app.py`` could be written::" msgstr "" @@ -3994,8 +4001,8 @@ msgid "" " mod = importlib.import_module(options.command)\n" " cmd = getattr(mod, 'command')\n" " except (ImportError, AttributeError):\n" -" print('Unable to find the code for command \\'%s\\'' % options." -"command)\n" +" print('Unable to find the code for command \\'%s\\'' % " +"options.command)\n" " return 1\n" " # Could get fancy here and load configuration from file or dictionary\n" " logging.basicConfig(level=options.log_level,\n" @@ -4131,8 +4138,8 @@ msgstr "" msgid "" "A question that comes up from time to time is about how to log to a GUI " "application. The `Qt `_ framework is a popular cross-" -"platform UI framework with Python bindings using :pypi:`PySide2` or :pypi:" -"`PyQt5` libraries." +"platform UI framework with Python bindings using :pypi:`PySide2` " +"or :pypi:`PyQt5` libraries." msgstr "" msgid "" @@ -4338,8 +4345,8 @@ msgid "" " self.start_thread()\n" " self.work_button.clicked.connect(self.worker.start)\n" " # Once started, the button should be disabled\n" -" self.work_button.clicked.connect(lambda : self.work_button." -"setEnabled(False))\n" +" self.work_button.clicked.connect(lambda : " +"self.work_button.setEnabled(False))\n" "\n" " def start_thread(self):\n" " self.worker = Worker()\n" @@ -4414,8 +4421,9 @@ msgid "" "default to use the older :rfc:`3164`, which hails from 2001. When " "``logging`` was added to Python in 2003, it supported the earlier (and only " "existing) protocol at the time. Since RFC 5424 came out, as there has not " -"been widespread deployment of it in syslog servers, the :class:`~logging." -"handlers.SysLogHandler` functionality has not been updated." +"been widespread deployment of it in syslog servers, " +"the :class:`~logging.handlers.SysLogHandler` functionality has not been " +"updated." msgstr "" msgid "" @@ -4496,7 +4504,7 @@ msgid "" "You'll need to be familiar with RFC 5424 to fully understand the above code, " "and it may be that you have slightly different needs (e.g. for how you pass " "structural data to the log). Nevertheless, the above should be adaptable to " -"your speciric needs. With the above handler, you'd pass structured data " +"your specific needs. With the above handler, you'd pass structured data " "using something like this::" msgstr "" @@ -4566,8 +4574,8 @@ msgid "" msgstr "" msgid "" -"You could also use ``LoggerWriter`` to redirect ``sys.stdout`` and ``sys." -"stderr`` by doing something like this:" +"You could also use ``LoggerWriter`` to redirect ``sys.stdout`` and " +"``sys.stderr`` by doing something like this:" msgstr "" msgid "" @@ -4579,9 +4587,9 @@ msgstr "" msgid "" "You should do this *after* configuring logging for your needs. In the above " -"example, the :func:`~logging.basicConfig` call does this (using the ``sys." -"stderr`` value *before* it is overwritten by a ``LoggerWriter`` instance). " -"Then, you'd get this kind of result:" +"example, the :func:`~logging.basicConfig` call does this (using the " +"``sys.stderr`` value *before* it is overwritten by a ``LoggerWriter`` " +"instance). Then, you'd get this kind of result:" msgstr "" msgid "" @@ -4593,9 +4601,9 @@ msgid "" msgstr "" msgid "" -"Of course, the examples above show output according to the format used by :" -"func:`~logging.basicConfig`, but you can use a different formatter when you " -"configure logging." +"Of course, the examples above show output according to the format used " +"by :func:`~logging.basicConfig`, but you can use a different formatter when " +"you configure logging." msgstr "" msgid "" @@ -4719,8 +4727,8 @@ msgid "" " pass\n" "\n" "if __name__ == '__main__':\n" -" logging.basicConfig(level=logging.DEBUG, format='%(asctime)s " -"%(levelname)-9s %(message)s',\n" +" logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %" +"(levelname)-9s %(message)s',\n" " handlers = [StreamHandler()])\n" " logger.debug('Single line')\n" " logger.debug('Multiple lines:\\nfool me once ...')\n" @@ -4743,9 +4751,9 @@ msgid "" msgstr "" msgid "" -"If, on the other hand, you are concerned about `log injection `_, you can use a formatter which " -"escapes newlines, as per the following example:" +"If, on the other hand, you are concerned about `log injection `_, you can use a formatter " +"which escapes newlines, as per the following example:" msgstr "" msgid "" @@ -4760,8 +4768,8 @@ msgid "" "\n" "if __name__ == '__main__':\n" " h = logging.StreamHandler()\n" -" h.setFormatter(EscapingFormatter('%(asctime)s %(levelname)-9s " -"%(message)s'))\n" +" h.setFormatter(EscapingFormatter('%(asctime)s %(levelname)-9s %" +"(message)s'))\n" " logging.basicConfig(level=logging.DEBUG, handlers = [h])\n" " logger.debug('Single line')\n" " logger.debug('Multiple lines:\\nfool me once ...')\n" diff --git a/howto/logging.po b/howto/logging.po index 7435ddc..3271147 100644 --- a/howto/logging.po +++ b/howto/logging.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,8 +48,8 @@ msgstr "" msgid "" "You can access logging functionality by creating a logger via ``logger = " -"logging.getLogger(__name__)``, and then calling the logger's :meth:`~Logger." -"debug`, :meth:`~Logger.info`, :meth:`~Logger.warning`, :meth:`~Logger.error` " +"logging.getLogger(__name__)``, and then calling the " +"logger's :meth:`~Logger.debug`, :meth:`~Logger.info`, :meth:`~Logger.warning`, :meth:`~Logger.error` " "and :meth:`~Logger.critical` methods. To determine when to use logging, and " "to see which logger methods to use when, see the table below. It states, for " "each of a set of common tasks, the best tool to use for that task." @@ -103,8 +103,8 @@ msgid "" msgstr "" msgid "" -"A logger's :meth:`~Logger.error`, :meth:`~Logger.exception` or :meth:" -"`~Logger.critical` method as appropriate for the specific error and " +"A logger's :meth:`~Logger.error`, :meth:`~Logger.exception` " +"or :meth:`~Logger.critical` method as appropriate for the specific error and " "application domain" msgstr "" @@ -191,8 +191,8 @@ msgstr "" msgid "" "printed out on the console. The ``INFO`` message doesn't appear because the " "default level is ``WARNING``. The printed message includes the indication of " -"the level and the description of the event provided in the logging call, i." -"e. 'Watch out!'. The actual output can be formatted quite flexibly if you " +"the level and the description of the event provided in the logging call, " +"i.e. 'Watch out!'. The actual output can be formatted quite flexibly if you " "need that; formatting options will also be explained later." msgstr "" @@ -220,8 +220,8 @@ msgstr "" msgid "" "import logging\n" "logger = logging.getLogger(__name__)\n" -"logging.basicConfig(filename='example.log', encoding='utf-8', level=logging." -"DEBUG)\n" +"logging.basicConfig(filename='example.log', encoding='utf-8', " +"level=logging.DEBUG)\n" "logger.debug('This message should go to the log file')\n" "logger.info('So should this')\n" "logger.warning('And this, too')\n" @@ -299,8 +299,8 @@ msgid "" msgstr "" msgid "" -"logging.basicConfig(filename='example.log', filemode='w', level=logging." -"DEBUG)" +"logging.basicConfig(filename='example.log', filemode='w', " +"level=logging.DEBUG)" msgstr "" msgid "" @@ -346,8 +346,8 @@ msgstr "" msgid "" "import logging\n" -"logging.basicConfig(format='%(levelname)s:%(message)s', level=logging." -"DEBUG)\n" +"logging.basicConfig(format='%(levelname)s:%(message)s', " +"level=logging.DEBUG)\n" "logging.debug('This message should appear on the console')\n" "logging.info('So should this')\n" "logging.warning('And this, too')" @@ -392,9 +392,9 @@ msgid "2010-12-12 11:41:42,612 is when this event was logged." msgstr "" msgid "" -"The default format for date/time display (shown above) is like ISO8601 or :" -"rfc:`3339`. If you need more control over the formatting of the date/time, " -"provide a *datefmt* argument to ``basicConfig``, as in this example::" +"The default format for date/time display (shown above) is like ISO8601 " +"or :rfc:`3339`. If you need more control over the formatting of the date/" +"time, provide a *datefmt* argument to ``basicConfig``, as in this example::" msgstr "" msgid "" @@ -411,8 +411,8 @@ msgid "12/12/2010 11:46:36 AM is when this event was logged." msgstr "" msgid "" -"The format of the *datefmt* argument is the same as supported by :func:`time." -"strftime`." +"The format of the *datefmt* argument is the same as supported " +"by :func:`time.strftime`." msgstr "" msgid "Next Steps" @@ -494,10 +494,11 @@ msgstr "" msgid "" "The root of the hierarchy of loggers is called the root logger. That's the " -"logger used by the functions :func:`debug`, :func:`info`, :func:`warning`, :" -"func:`error` and :func:`critical`, which just call the same-named method of " -"the root logger. The functions and the methods have the same signatures. The " -"root logger's name is printed as 'root' in the logged output." +"logger used by the " +"functions :func:`debug`, :func:`info`, :func:`warning`, :func:`error` " +"and :func:`critical`, which just call the same-named method of the root " +"logger. The functions and the methods have the same signatures. The root " +"logger's name is printed as 'root' in the logged output." msgstr "" msgid "" @@ -513,12 +514,12 @@ msgstr "" msgid "" "By default, no destination is set for any logging messages. You can specify " "a destination (such as console or file) by using :func:`basicConfig` as in " -"the tutorial examples. If you call the functions :func:`debug`, :func:" -"`info`, :func:`warning`, :func:`error` and :func:`critical`, they will check " -"to see if no destination is set; and if one is not set, they will set a " -"destination of the console (``sys.stderr``) and a default format for the " -"displayed message before delegating to the root logger to do the actual " -"message output." +"the tutorial examples. If you call the " +"functions :func:`debug`, :func:`info`, :func:`warning`, :func:`error` " +"and :func:`critical`, they will check to see if no destination is set; and " +"if one is not set, they will set a destination of the console " +"(``sys.stderr``) and a default format for the displayed message before " +"delegating to the root logger to do the actual message output." msgstr "" msgid "The default format set by :func:`basicConfig` for messages is:" @@ -591,21 +592,22 @@ msgid "" msgstr "" msgid "" -":meth:`Logger.debug`, :meth:`Logger.info`, :meth:`Logger.warning`, :meth:" -"`Logger.error`, and :meth:`Logger.critical` all create log records with a " -"message and a level that corresponds to their respective method names. The " -"message is actually a format string, which may contain the standard string " -"substitution syntax of ``%s``, ``%d``, ``%f``, and so on. The rest of their " -"arguments is a list of objects that correspond with the substitution fields " -"in the message. With regard to ``**kwargs``, the logging methods care only " -"about a keyword of ``exc_info`` and use it to determine whether to log " -"exception information." +":meth:`Logger.debug`, :meth:`Logger.info`, :meth:`Logger.warning`, :meth:`Logger.error`, " +"and :meth:`Logger.critical` all create log records with a message and a " +"level that corresponds to their respective method names. The message is " +"actually a format string, which may contain the standard string substitution " +"syntax of ``%s``, ``%d``, ``%f``, and so on. The rest of their arguments is " +"a list of objects that correspond with the substitution fields in the " +"message. With regard to ``**kwargs``, the logging methods care only about a " +"keyword of ``exc_info`` and use it to determine whether to log exception " +"information." msgstr "" msgid "" -":meth:`Logger.exception` creates a log message similar to :meth:`Logger." -"error`. The difference is that :meth:`Logger.exception` dumps a stack trace " -"along with it. Call this method only from an exception handler." +":meth:`Logger.exception` creates a log message similar " +"to :meth:`Logger.error`. The difference is that :meth:`Logger.exception` " +"dumps a stack trace along with it. Call this method only from an exception " +"handler." msgstr "" msgid "" @@ -663,8 +665,8 @@ msgstr "" msgid "" "The standard library includes quite a few handler types (see :ref:`useful-" -"handlers`); the tutorials use mainly :class:`StreamHandler` and :class:" -"`FileHandler` in its examples." +"handlers`); the tutorials use mainly :class:`StreamHandler` " +"and :class:`FileHandler` in its examples." msgstr "" msgid "" @@ -694,10 +696,10 @@ msgid "" msgstr "" msgid "" -"Application code should not directly instantiate and use instances of :class:" -"`Handler`. Instead, the :class:`Handler` class is a base class that defines " -"the interface that all handlers should have and establishes some default " -"behavior that child classes can use (or override)." +"Application code should not directly instantiate and use instances " +"of :class:`Handler`. Instead, the :class:`Handler` class is a base class " +"that defines the interface that all handlers should have and establishes " +"some default behavior that child classes can use (or override)." msgstr "" msgid "Formatters" @@ -728,8 +730,8 @@ msgstr "" msgid "" "If the ``style`` is ``'%'``, the message format string uses ``%()s`` styled string substitution; the possible keys are documented in :" -"ref:`logrecord-attributes`. If the style is ``'{'``, the message format " +"key>)s`` styled string substitution; the possible keys are documented " +"in :ref:`logrecord-attributes`. If the style is ``'{'``, the message format " "string is assumed to be compatible with :meth:`str.format` (using keyword " "arguments), while if the style is ``'$'`` then the message format string " "should conform to what is expected by :meth:`string.Template.substitute`." @@ -774,8 +776,8 @@ msgid "" msgstr "" msgid "" -"Creating a dictionary of configuration information and passing it to the :" -"func:`dictConfig` function." +"Creating a dictionary of configuration information and passing it to " +"the :func:`dictConfig` function." msgstr "" msgid "" @@ -796,8 +798,8 @@ msgid "" "ch.setLevel(logging.DEBUG)\n" "\n" "# create formatter\n" -"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - " -"%(message)s')\n" +"formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %" +"(message)s')\n" "\n" "# add formatter to ch\n" "ch.setFormatter(formatter)\n" @@ -922,11 +924,11 @@ msgstr "" msgid "" "Note that the class names referenced in config files need to be either " "relative to the logging module, or absolute values which can be resolved " -"using normal import mechanisms. Thus, you could use either :class:`~logging." -"handlers.WatchedFileHandler` (relative to the logging module) or ``mypackage." -"mymodule.MyHandler`` (for a class defined in package ``mypackage`` and " -"module ``mymodule``, where ``mypackage`` is available on the Python import " -"path)." +"using normal import mechanisms. Thus, you could use " +"either :class:`~logging.handlers.WatchedFileHandler` (relative to the " +"logging module) or ``mypackage.mymodule.MyHandler`` (for a class defined in " +"package ``mypackage`` and module ``mymodule``, where ``mypackage`` is " +"available on the Python import path)." msgstr "" msgid "" @@ -984,10 +986,10 @@ msgid "" msgstr "" msgid "" -"The event is output using a 'handler of last resort', stored in :data:" -"`lastResort`. This internal handler is not associated with any logger, and " -"acts like a :class:`~logging.StreamHandler` which writes the event " -"description message to the current value of ``sys.stderr`` (therefore " +"The event is output using a 'handler of last resort', stored " +"in :data:`lastResort`. This internal handler is not associated with any " +"logger, and acts like a :class:`~logging.StreamHandler` which writes the " +"event description message to the current value of ``sys.stderr`` (therefore " "respecting any redirections which may be in effect). No formatting is done " "on the message - just the bare event description message is printed. The " "handler's level is set to ``WARNING``, so all events at this and greater " @@ -1036,13 +1038,13 @@ msgid "" msgstr "" msgid "" -"A do-nothing handler is included in the logging package: :class:`~logging." -"NullHandler` (since Python 3.1). An instance of this handler could be added " -"to the top-level logger of the logging namespace used by the library (*if* " -"you want to prevent your library's logged events being output to ``sys." -"stderr`` in the absence of logging configuration). If all logging by a " -"library *foo* is done using loggers with names matching 'foo.x', 'foo.x.y', " -"etc. then the code::" +"A do-nothing handler is included in the logging " +"package: :class:`~logging.NullHandler` (since Python 3.1). An instance of " +"this handler could be added to the top-level logger of the logging namespace " +"used by the library (*if* you want to prevent your library's logged events " +"being output to ``sys.stderr`` in the absence of logging configuration). If " +"all logging by a library *foo* is done using loggers with names matching " +"'foo.x', 'foo.x.y', etc. then the code::" msgstr "" msgid "" @@ -1066,13 +1068,14 @@ msgid "" msgstr "" msgid "" -"It is strongly advised that you *do not add any handlers other than* :class:" -"`~logging.NullHandler` *to your library's loggers*. This is because the " -"configuration of handlers is the prerogative of the application developer " -"who uses your library. The application developer knows their target audience " -"and what handlers are most appropriate for their application: if you add " -"handlers 'under the hood', you might well interfere with their ability to " -"carry out unit tests and deliver logs which suit their requirements." +"It is strongly advised that you *do not add any handlers other " +"than* :class:`~logging.NullHandler` *to your library's loggers*. This is " +"because the configuration of handlers is the prerogative of the application " +"developer who uses your library. The application developer knows their " +"target audience and what handlers are most appropriate for their " +"application: if you add handlers 'under the hood', you might well interfere " +"with their ability to carry out unit tests and deliver logs which suit their " +"requirements." msgstr "" msgid "Logging Levels" @@ -1121,33 +1124,33 @@ msgstr "" msgid "" "Logging messages are encoded as instances of the :class:`~logging.LogRecord` " -"class. When a logger decides to actually log an event, a :class:`~logging." -"LogRecord` instance is created from the logging message." +"class. When a logger decides to actually log an event, " +"a :class:`~logging.LogRecord` instance is created from the logging message." msgstr "" msgid "" -"Logging messages are subjected to a dispatch mechanism through the use of :" -"dfn:`handlers`, which are instances of subclasses of the :class:`Handler` " -"class. Handlers are responsible for ensuring that a logged message (in the " -"form of a :class:`LogRecord`) ends up in a particular location (or set of " -"locations) which is useful for the target audience for that message (such as " -"end users, support desk staff, system administrators, developers). Handlers " -"are passed :class:`LogRecord` instances intended for particular " -"destinations. Each logger can have zero, one or more handlers associated " -"with it (via the :meth:`~Logger.addHandler` method of :class:`Logger`). In " -"addition to any handlers directly associated with a logger, *all handlers " -"associated with all ancestors of the logger* are called to dispatch the " -"message (unless the *propagate* flag for a logger is set to a false value, " -"at which point the passing to ancestor handlers stops)." +"Logging messages are subjected to a dispatch mechanism through the use " +"of :dfn:`handlers`, which are instances of subclasses of " +"the :class:`Handler` class. Handlers are responsible for ensuring that a " +"logged message (in the form of a :class:`LogRecord`) ends up in a particular " +"location (or set of locations) which is useful for the target audience for " +"that message (such as end users, support desk staff, system administrators, " +"developers). Handlers are passed :class:`LogRecord` instances intended for " +"particular destinations. Each logger can have zero, one or more handlers " +"associated with it (via the :meth:`~Logger.addHandler` method " +"of :class:`Logger`). In addition to any handlers directly associated with a " +"logger, *all handlers associated with all ancestors of the logger* are " +"called to dispatch the message (unless the *propagate* flag for a logger is " +"set to a false value, at which point the passing to ancestor handlers stops)." msgstr "" msgid "" "Just as for loggers, handlers can have levels associated with them. A " "handler's level acts as a filter in the same way as a logger's level does. " -"If a handler decides to actually dispatch an event, the :meth:`~Handler." -"emit` method is used to send the message to its destination. Most user-" -"defined subclasses of :class:`Handler` will need to override this :meth:" -"`~Handler.emit`." +"If a handler decides to actually dispatch an event, " +"the :meth:`~Handler.emit` method is used to send the message to its " +"destination. Most user-defined subclasses of :class:`Handler` will need to " +"override this :meth:`~Handler.emit`." msgstr "" msgid "Custom Levels" @@ -1184,8 +1187,8 @@ msgstr "" msgid "" ":class:`~handlers.BaseRotatingHandler` is the base class for handlers that " "rotate log files at a certain point. It is not meant to be instantiated " -"directly. Instead, use :class:`~handlers.RotatingFileHandler` or :class:" -"`~handlers.TimedRotatingFileHandler`." +"directly. Instead, use :class:`~handlers.RotatingFileHandler` " +"or :class:`~handlers.TimedRotatingFileHandler`." msgstr "" msgid "" @@ -1219,8 +1222,8 @@ msgid "" msgstr "" msgid "" -":class:`~handlers.NTEventLogHandler` instances send messages to a Windows " -"NT/2000/XP event log." +":class:`~handlers.NTEventLogHandler` instances send messages to a Windows NT/" +"2000/XP event log." msgstr "" msgid "" @@ -1267,25 +1270,25 @@ msgid "" msgstr "" msgid "" -"Logged messages are formatted for presentation through instances of the :" -"class:`Formatter` class. They are initialized with a format string suitable " -"for use with the % operator and a dictionary." +"Logged messages are formatted for presentation through instances of " +"the :class:`Formatter` class. They are initialized with a format string " +"suitable for use with the % operator and a dictionary." msgstr "" msgid "" -"For formatting multiple messages in a batch, instances of :class:" -"`BufferingFormatter` can be used. In addition to the format string (which is " -"applied to each message in the batch), there is provision for header and " -"trailer format strings." +"For formatting multiple messages in a batch, instances " +"of :class:`BufferingFormatter` can be used. In addition to the format string " +"(which is applied to each message in the batch), there is provision for " +"header and trailer format strings." msgstr "" msgid "" "When filtering based on logger level and/or handler level is not enough, " -"instances of :class:`Filter` can be added to both :class:`Logger` and :class:" -"`Handler` instances (through their :meth:`~Handler.addFilter` method). " -"Before deciding to process a message further, both loggers and handlers " -"consult all their filters for permission. If any filter returns a false " -"value, the message is not processed further." +"instances of :class:`Filter` can be added to both :class:`Logger` " +"and :class:`Handler` instances (through their :meth:`~Handler.addFilter` " +"method). Before deciding to process a message further, both loggers and " +"handlers consult all their filters for permission. If any filter returns a " +"false value, the message is not processed further." msgstr "" msgid "" @@ -1307,15 +1310,15 @@ msgstr "" msgid "" ":class:`SystemExit` and :class:`KeyboardInterrupt` exceptions are never " "swallowed. Other exceptions which occur during the :meth:`~Handler.emit` " -"method of a :class:`Handler` subclass are passed to its :meth:`~Handler." -"handleError` method." +"method of a :class:`Handler` subclass are passed to " +"its :meth:`~Handler.handleError` method." msgstr "" msgid "" -"The default implementation of :meth:`~Handler.handleError` in :class:" -"`Handler` checks to see if a module-level variable, :data:`raiseExceptions`, " -"is set. If set, a traceback is printed to :data:`sys.stderr`. If not set, " -"the exception is swallowed." +"The default implementation of :meth:`~Handler.handleError` " +"in :class:`Handler` checks to see if a module-level " +"variable, :data:`raiseExceptions`, is set. If set, a traceback is printed " +"to :data:`sys.stderr`. If not set, the exception is swallowed." msgstr "" msgid "" @@ -1331,12 +1334,12 @@ msgstr "" msgid "" "In the preceding sections and examples, it has been assumed that the message " "passed when logging the event is a string. However, this is not the only " -"possibility. You can pass an arbitrary object as a message, and its :meth:" -"`~object.__str__` method will be called when the logging system needs to " -"convert it to a string representation. In fact, if you want to, you can " -"avoid computing a string representation altogether - for example, the :class:" -"`~handlers.SocketHandler` emits an event by pickling it and sending it over " -"the wire." +"possibility. You can pass an arbitrary object as a message, and " +"its :meth:`~object.__str__` method will be called when the logging system " +"needs to convert it to a string representation. In fact, if you want to, you " +"can avoid computing a string representation altogether - for example, " +"the :class:`~handlers.SocketHandler` emits an event by pickling it and " +"sending it over the wire." msgstr "" msgid "Optimization" @@ -1346,10 +1349,10 @@ msgid "" "Formatting of message arguments is deferred until it cannot be avoided. " "However, computing the arguments passed to the logging method can also be " "expensive, and you may want to avoid doing it if the logger will just throw " -"away your event. To decide what to do, you can call the :meth:`~Logger." -"isEnabledFor` method which takes a level argument and returns true if the " -"event would be created by the Logger for that level of call. You can write " -"code like this::" +"away your event. To decide what to do, you can call " +"the :meth:`~Logger.isEnabledFor` method which takes a level argument and " +"returns true if the event would be created by the Logger for that level of " +"call. You can write code like this::" msgstr "" msgid "" @@ -1391,9 +1394,10 @@ msgid "Information about where calls were made from." msgstr "" msgid "" -"Set ``logging._srcfile`` to ``None``. This avoids calling :func:`sys." -"_getframe`, which may help to speed up your code in environments like PyPy " -"(which can't speed up code that uses :func:`sys._getframe`)." +"Set ``logging._srcfile`` to ``None``. This avoids " +"calling :func:`sys._getframe`, which may help to speed up your code in " +"environments like PyPy (which can't speed up code that " +"uses :func:`sys._getframe`)." msgstr "" msgid "Threading information." diff --git a/howto/mro.po b/howto/mro.po index 9b55f98..90660b0 100644 --- a/howto/mro.po +++ b/howto/mro.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -261,9 +261,9 @@ msgid "" "tail of any of the other lists, then add it to the linearization of C and " "remove it from the lists in the merge, otherwise look at the head of the " "next list and take it, if it is a good head. Then repeat the operation " -"until all the class are removed or it is impossible to find good heads. In " -"this case, it is impossible to construct the merge, Python 2.3 will refuse " -"to create the class C and will raise an exception.*" +"until all the classes are removed or it is impossible to find good heads. " +"In this case, it is impossible to construct the merge, Python 2.3 will " +"refuse to create the class C and will raise an exception.*" msgstr "" msgid "" @@ -382,9 +382,9 @@ msgid "" msgstr "" msgid "" -"The only difference with the previous example is the change B(D,E) --> B(E," -"D); however even such a little modification completely changes the ordering " -"of the hierarchy:" +"The only difference with the previous example is the change B(D,E) --> " +"B(E,D); however even such a little modification completely changes the " +"ordering of the hierarchy:" msgstr "" msgid "" @@ -430,7 +430,7 @@ msgid "" msgstr "" msgid "" -"L[O] = 0\n" +"L[O] = O\n" "L[X] = X O\n" "L[Y] = Y O\n" "L[A] = A X Y O\n" @@ -487,8 +487,8 @@ msgstr "" msgid "" "We see that class G inherits from F and E, with F *before* E: therefore we " -"would expect the attribute *G.remember2buy* to be inherited by *F." -"remember2buy* and not by *E.remember2buy*: nevertheless Python 2.2 gives" +"would expect the attribute *G.remember2buy* to be inherited by " +"*F.remember2buy* and not by *E.remember2buy*: nevertheless Python 2.2 gives" msgstr "" msgid "" @@ -779,8 +779,8 @@ msgid "" msgstr "" msgid "" -"The paper *A Monotonic Superclass Linearization for Dylan*: https://doi." -"org/10.1145/236337.236343" +"The paper *A Monotonic Superclass Linearization for Dylan*: https://doi.org/" +"10.1145/236337.236343" msgstr "" msgid "" diff --git a/howto/perf_profiling.po b/howto/perf_profiling.po index df66421..ad8e599 100644 --- a/howto/perf_profiling.po +++ b/howto/perf_profiling.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -253,8 +253,8 @@ msgstr "" msgid "" "``perf`` profiling support can be enabled either from the start using the " "environment variable :envvar:`PYTHONPERFSUPPORT` or the :option:`-X perf <-" -"X>` option, or dynamically using :func:`sys.activate_stack_trampoline` and :" -"func:`sys.deactivate_stack_trampoline`." +"X>` option, or dynamically using :func:`sys.activate_stack_trampoline` " +"and :func:`sys.deactivate_stack_trampoline`." msgstr "" msgid "" @@ -266,8 +266,8 @@ msgid "Example, using the environment variable::" msgstr "" msgid "" -"$ PYTHONPERFSUPPORT=1 perf record -F 9999 -g -o perf.data python my_script." -"py\n" +"$ PYTHONPERFSUPPORT=1 perf record -F 9999 -g -o perf.data python " +"my_script.py\n" "$ perf report -g -i perf.data" msgstr "" @@ -339,9 +339,9 @@ msgid "" msgstr "" msgid "" -"To enable this mode, you can use the environment variable :envvar:" -"`PYTHON_PERF_JIT_SUPPORT` or the :option:`-X perf_jit <-X>` option, which " -"will enable the JIT mode for the ``perf`` profiler." +"To enable this mode, you can use the environment " +"variable :envvar:`PYTHON_PERF_JIT_SUPPORT` or the :option:`-X perf_jit <-X>` " +"option, which will enable the JIT mode for the ``perf`` profiler." msgstr "" msgid "" @@ -364,8 +364,8 @@ msgid "" msgstr "" msgid "" -"$ perf record -F 9999 -g -k 1 --call-graph dwarf -o perf.data python -" -"Xperf_jit my_script.py\n" +"$ perf record -F 9999 -g -k 1 --call-graph dwarf -o perf.data python " +"-Xperf_jit my_script.py\n" "$ perf inject -i perf.data --jit --output perf.jit.data\n" "$ perf report -g -i perf.jit.data" msgstr "" @@ -414,8 +414,8 @@ msgid "" msgstr "" msgid "" -"$ perf record -F 9999 -g -k 1 --call-graph dwarf,65528 -o perf.data python -" -"Xperf_jit my_script.py" +"$ perf record -F 9999 -g -k 1 --call-graph dwarf,65528 -o perf.data python " +"-Xperf_jit my_script.py" msgstr "" msgid "Different compilation flags can significantly impact stack sizes:" diff --git a/howto/pyporting.po b/howto/pyporting.po index ef69fd5..c2261ac 100644 --- a/howto/pyporting.po +++ b/howto/pyporting.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +39,8 @@ msgstr "" msgid "" "Since Python 3.11 the original porting guide was discontinued. You can find " -"the old guide in the `archive `_." +"the old guide in the `archive `_." msgstr "" msgid "Third-party guides" diff --git a/howto/regex.po b/howto/regex.po index 5da3565..b9781cc 100644 --- a/howto/regex.po +++ b/howto/regex.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Yashraj Jangra, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Yashraj Jangra, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,19 +24,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Regular expression HOWTO" -msgstr "" +msgstr "ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ HOWTO" msgid "Abstract" -msgstr "" +msgstr "ਸੰਖੇਪ" msgid "" "This document is an introductory tutorial to using regular expressions in " "Python with the :mod:`re` module. It provides a gentler introduction than " "the corresponding section in the Library Reference." msgstr "" +"ਇਹ ਦਸਤਾਵੇਜ਼ :mod:`re` ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਕੇ Python ਵਿੱਚ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਬਾਰੇ ਇੱਕ " +"ਜਾਣ-ਪਛਾਣ ਵਾਲਾ ਟਿਊਟੋਰਿਅਲ ਹੈ। ਇਹ ਲਾਇਬ੍ਰੇਰੀ ਰੈਫਰੈਂਸ ਦੇ ਸੰਬੰਧਿਤ ਭਾਗ ਨਾਲੋਂ ਵਧੇਰੇ ਆਸਾਨ ਅਤੇ ਕਦਮ-ਦਰ-" +"ਕਦਮ ਜਾਣ-ਪਛਾਣ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" msgid "Introduction" -msgstr "" +msgstr "ਜਾਣ-ਪਛਾਣ" msgid "" "Regular expressions (called REs, or regexes, or regex patterns) are " @@ -48,6 +52,14 @@ msgid "" "match for the pattern anywhere in this string?\". You can also use REs to " "modify a string or to split it apart in various ways." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ (ਜਿਨ੍ਹਾਂ ਨੂੰ REs, regexes ਜਾਂ regex patterns ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ) ਅਸਲ ਵਿੱਚ " +"ਇੱਕ ਛੋਟੀ ਪਰ ਬਹੁਤ ਵਿਸ਼ੇਸ਼ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੁੰਦੀ ਹੈ ਜੋ Python ਦੇ ਅੰਦਰ ਸ਼ਾਮਲ ਹੈ ਅਤੇ :mod:`re` " +"ਮੋਡੀਊਲ ਰਾਹੀਂ ਉਪਲਬਧ ਕਰਵਾਈ ਜਾਂਦੀ ਹੈ। ਇਸ ਛੋਟੀ ਭਾਸ਼ਾ ਦੀ ਮਦਦ ਨਾਲ ਤੁਸੀਂ ਉਹ ਨਿਯਮ ਨਿਰਧਾਰਤ " +"ਕਰਦੇ ਹੋ ਜਿਨ੍ਹਾਂ ਨਾਲ ਉਹਨਾਂ ਸੰਭਾਵਿਤ ਸਟਰਿੰਗਾਂ ਦਾ ਸਮੂਹ ਤਿਆਰ ਹੁੰਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ ਤੁਸੀਂ ਮੈਚ ਕਰਨਾ " +"ਚਾਹੁੰਦੇ ਹੋ। ਇਸ ਸਮੂਹ ਵਿੱਚ ਅੰਗਰੇਜ਼ੀ ਵਾਕ, ਈ-ਮੇਲ ਪਤੇ, TeX ਕਮਾਂਡਾਂ ਜਾਂ ਤੁਹਾਡੀ ਪਸੰਦ ਦੀ ਕੋਈ ਵੀ ਚੀਜ਼ " +"ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ। ਫਿਰ ਤੁਸੀਂ ਅਜਿਹੇ ਸਵਾਲ ਪੁੱਛ ਸਕਦੇ ਹੋ ਜਿਵੇਂ \"ਕੀ ਇਹ ਸਟਰਿੰਗ ਇਸ ਪੈਟਰਨ ਨਾਲ ਮੈਚ " +"ਕਰਦੀ ਹੈ?\" ਜਾਂ \"ਕੀ ਇਸ ਸਟਰਿੰਗ ਵਿੱਚ ਕਿਤੇ ਵੀ ਇਸ ਪੈਟਰਨ ਦਾ ਮੈਚ ਮੌਜੂਦ ਹੈ?\"। ਤੁਸੀਂ REs ਦੀ ਵਰਤੋਂ " +"ਸਟਰਿੰਗ ਨੂੰ ਸੋਧਣ ਜਾਂ ਉਸਨੂੰ ਵੱਖ-ਵੱਖ ਢੰਗਾਂ ਨਾਲ ਵੰਡਣ ਲਈ ਵੀ ਕਰ ਸਕਦੇ ਹੋ।" msgid "" "Regular expression patterns are compiled into a series of bytecodes which " @@ -58,6 +70,12 @@ msgid "" "requires that you have a good understanding of the matching engine's " "internals." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਪੈਟਰਨਾਂ ਨੂੰ bytecode ਦੀ ਇੱਕ ਲੜੀ ਵਿੱਚ compile ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸਨੂੰ ਬਾਅਦ " +"ਵਿੱਚ C ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ matching engine ਚਲਾਉਂਦਾ ਹੈ। ਉੱਚ ਪੱਧਰੀ ਵਰਤੋਂ ਲਈ ਕਈ ਵਾਰ ਇਹ ਸਮਝਣਾ " +"ਜ਼ਰੂਰੀ ਹੁੰਦਾ ਹੈ ਕਿ matching engine ਕਿਸੇ ਦਿੱਤੀ ਗਈ RE ਨੂੰ ਕਿਵੇਂ ਚਲਾਏਗਾ ਅਤੇ RE ਨੂੰ ਇਸ ਤਰੀਕੇ " +"ਨਾਲ ਲਿਖਣਾ ਪੈਂਦਾ ਹੈ ਕਿ ਉਸ ਤੋਂ ਬਣਨ ਵਾਲਾ bytecode ਹੋਰ ਤੇਜ਼ੀ ਨਾਲ ਚੱਲੇ। Optimization ਬਾਰੇ ਇਸ " +"ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਚਰਚਾ ਨਹੀਂ ਕੀਤੀ ਗਈ ਕਿਉਂਕਿ ਇਸ ਲਈ matching engine ਦੇ ਅੰਦਰੂਨੀ ਢਾਂਚੇ ਦੀ ਚੰਗੀ " +"ਸਮਝ ਲੋੜੀਂਦੀ ਹੈ।" msgid "" "The regular expression language is relatively small and restricted, so not " @@ -68,24 +86,35 @@ msgid "" "be slower than an elaborate regular expression, it will also probably be " "more understandable." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਭਾਸ਼ਾ ਕਾਫ਼ੀ ਛੋਟੀ ਅਤੇ ਸੀਮਿਤ ਹੈ, ਇਸ ਲਈ ਹਰ ਕਿਸਮ ਦਾ ਸਟਰਿੰਗ ਪ੍ਰੋਸੈਸਿੰਗ ਕੰਮ ਰੈਗੂਲਰ " +"ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨਾਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਕੁਝ ਅਜਿਹੇ ਕੰਮ ਵੀ ਹਨ ਜੋ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨਾਲ ਕੀਤੇ ਤਾਂ " +"ਜਾ ਸਕਦੇ ਹਨ, ਪਰ ਉਨ੍ਹਾਂ ਦੀਆਂ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਬਹੁਤ ਹੀ ਜਟਿਲ ਬਣ ਜਾਂਦੀਆਂ ਹਨ। ਅਜਿਹੀਆਂ ਸਥਿਤੀਆਂ ਵਿੱਚ " +"ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਸਿੱਧਾ Python ਕੋਡ ਲਿਖਣਾ ਵਧੀਆ ਹੋ ਸਕਦਾ ਹੈ; ਭਾਵੇਂ Python ਕੋਡ ਇੱਕ ਜਟਿਲ ਰੈਗੂਲਰ " +"ਐਕਸਪ੍ਰੈਸ਼ਨ ਨਾਲੋਂ ਹੌਲਾ ਹੋਵੇ, ਪਰ ਉਹ ਆਮ ਤੌਰ 'ਤੇ ਸਮਝਣ ਵਿੱਚ ਕਾਫ਼ੀ ਆਸਾਨ ਹੁੰਦਾ ਹੈ।" msgid "Simple patterns" -msgstr "" +msgstr "ਸਧਾਰਣ ਪੈਟਰਨ" msgid "" "We'll start by learning about the simplest possible regular expressions. " "Since regular expressions are used to operate on strings, we'll begin with " "the most common task: matching characters." msgstr "" +"ਅਸੀਂ ਸਭ ਤੋਂ ਸਧਾਰਣ ਸੰਭਵ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਬਾਰੇ ਸਿੱਖਣ ਨਾਲ ਸ਼ੁਰੂ ਕਰਾਂਗੇ। ਕਿਉਂਕਿ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ " +"ਦੀ ਵਰਤੋਂ ਸਟਰਿੰਗਾਂ ਉੱਤੇ ਕਾਰਵਾਈ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਇਸ ਲਈ ਅਸੀਂ ਸਭ ਤੋਂ ਆਮ ਕੰਮ ਨਾਲ ਸ਼ੁਰੂ " +"ਕਰਾਂਗੇ: ਅੱਖਰਾਂ ਨੂੰ ਮੈਚ ਕਰਨਾ।" msgid "" "For a detailed explanation of the computer science underlying regular " "expressions (deterministic and non-deterministic finite automata), you can " "refer to almost any textbook on writing compilers." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਦੇ ਪਿੱਛੇ ਮੌਜੂਦ ਕੰਪਿਊਟਰ ਸਾਇੰਸ ਦੇ ਸਿਧਾਂਤਾਂ (deterministic ਅਤੇ non-" +"deterministic finite automata) ਦੀ ਵਿਸਤ੍ਰਿਤ ਵਿਆਖਿਆ ਲਈ ਤੁਸੀਂ ਕੰਪਾਇਲਰ ਲਿਖਣ ਬਾਰੇ ਲਗਭਗ " +"ਕਿਸੇ ਵੀ ਪਾਠ ਪੁਸਤਕ ਨੂੰ ਵੇਖ ਸਕਦੇ ਹੋ।" msgid "Matching characters" -msgstr "" +msgstr "ਅੱਖਰਾਂ ਦਾ ਮੈਚ ਕਰਨਾ" msgid "" "Most letters and characters will simply match themselves. For example, the " @@ -93,23 +122,33 @@ msgid "" "can enable a case-insensitive mode that would let this RE match ``Test`` or " "``TEST`` as well; more about this later.)" msgstr "" +"ਜ਼ਿਆਦਾਤਰ ਅੱਖਰ ਅਤੇ ਚਿੰਨ੍ਹ ਆਪਣੇ ਆਪ ਨਾਲ ਹੀ ਮੈਚ ਕਰਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ " +"``test`` ਸਟਰਿੰਗ ``test`` ਨਾਲ ਬਿਲਕੁਲ ਸਹੀ ਮੈਚ ਕਰੇਗੀ। (ਤੁਸੀਂ case-insensitive mode ਵੀ " +"ਚਾਲੂ ਕਰ ਸਕਦੇ ਹੋ ਜਿਸ ਨਾਲ ਇਹ RE ``Test`` ਜਾਂ ``TEST`` ਨਾਲ ਵੀ ਮੈਚ ਕਰ ਸਕੇਗੀ; ਇਸ ਬਾਰੇ ਅੱਗੇ " +"ਹੋਰ ਜਾਣਕਾਰੀ ਦਿੱਤੀ ਗਈ ਹੈ।)" msgid "" -"There are exceptions to this rule; some characters are special :dfn:" -"`metacharacters`, and don't match themselves. Instead, they signal that " -"some out-of-the-ordinary thing should be matched, or they affect other " -"portions of the RE by repeating them or changing their meaning. Much of " -"this document is devoted to discussing various metacharacters and what they " -"do." +"There are exceptions to this rule; some characters are " +"special :dfn:`metacharacters`, and don't match themselves. Instead, they " +"signal that some out-of-the-ordinary thing should be matched, or they affect " +"other portions of the RE by repeating them or changing their meaning. Much " +"of this document is devoted to discussing various metacharacters and what " +"they do." msgstr "" +"ਇਸ ਨਿਯਮ ਦੇ ਕੁਝ ਅਪਵਾਦ ਹਨ; ਕੁਝ ਅੱਖਰ ਖਾਸ :dfn:`metacharacters` ਹੁੰਦੇ ਹਨ ਅਤੇ ਆਪਣੇ ਆਪ ਨਾਲ " +"ਮੈਚ ਨਹੀਂ ਕਰਦੇ। ਇਸ ਦੀ ਬਜਾਏ, ਇਹ ਸੰਕੇਤ ਦਿੰਦੇ ਹਨ ਕਿ ਕੋਈ ਵਿਸ਼ੇਸ਼ ਚੀਜ਼ ਮੈਚ ਕੀਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ " +"ਜਾਂ ਇਹ RE ਦੇ ਹੋਰ ਭਾਗਾਂ ਨੂੰ ਦੁਹਰਾਉਣ ਜਾਂ ਉਨ੍ਹਾਂ ਦਾ ਅਰਥ ਬਦਲਣ ਦਾ ਕੰਮ ਕਰਦੇ ਹਨ। ਇਸ ਦਸਤਾਵੇਜ਼ ਦਾ " +"ਵੱਡਾ ਹਿੱਸਾ ਵੱਖ-ਵੱਖ metacharacters ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਉਪਯੋਗ ਬਾਰੇ ਚਰਚਾ ਕਰਨ ਲਈ ਸਮਰਪਿਤ ਹੈ।" msgid "" "Here's a complete list of the metacharacters; their meanings will be " "discussed in the rest of this HOWTO." msgstr "" +"ਇੱਥੇ metacharacters ਦੀ ਪੂਰੀ ਸੂਚੀ ਦਿੱਤੀ ਗਈ ਹੈ; ਉਨ੍ਹਾਂ ਦੇ ਅਰਥਾਂ ਬਾਰੇ ਇਸ HOWTO ਦੇ ਬਾਕੀ ਹਿੱਸੇ " +"ਵਿੱਚ ਚਰਚਾ ਕੀਤੀ ਜਾਵੇਗੀ।" msgid ". ^ $ * + ? { } [ ] \\ | ( )" -msgstr "" +msgstr ". ^ $ * + ? { } [ ] \\ | ( )" msgid "" "The first metacharacters we'll look at are ``[`` and ``]``. They're used for " @@ -121,6 +160,12 @@ msgid "" "characters. If you wanted to match only lowercase letters, your RE would be " "``[a-z]``." msgstr "" +"ਪਹਿਲੇ metacharacters ਜਿਨ੍ਹਾਂ ਬਾਰੇ ਅਸੀਂ ਗੱਲ ਕਰਾਂਗੇ ਉਹ ``[`` ਅਤੇ ``]`` ਹਨ। ਇਹ character " +"class ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਜੋ ਅੱਖਰਾਂ ਦਾ ਇੱਕ ਸਮੂਹ ਹੁੰਦਾ ਹੈ ਜਿਸਨੂੰ ਤੁਸੀਂ ਮੈਚ ਕਰਨਾ " +"ਚਾਹੁੰਦੇ ਹੋ। ਅੱਖਰਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ ਤੌਰ 'ਤੇ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂ ਦੋ ਅੱਖਰਾਂ ਦੇ ਵਿਚਕਾਰ ``'-'`` ਲਗਾ ਕੇ " +"ਇੱਕ range ਦਰਸਾਈ ਜਾ ਸਕਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``[abc]`` ਕਿਸੇ ਵੀ ``a``, ``b`` ਜਾਂ ``c`` " +"ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰੇਗਾ; ਇਹ ``[a-c]`` ਦੇ ਬਰਾਬਰ ਹੈ ਜੋ ਉਸੇ ਸਮੂਹ ਨੂੰ range ਦੀ ਮਦਦ ਨਾਲ ਦਰਸਾਉਂਦਾ " +"ਹੈ। ਜੇ ਤੁਸੀਂ ਸਿਰਫ਼ ਛੋਟੇ ਅੱਖਰਾਂ ਨਾਲ ਮੈਚ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੀ RE ``[a-z]`` ਹੋਵੇਗੀ।" msgid "" "Metacharacters (except ``\\``) are not active inside classes. For example, " @@ -128,15 +173,24 @@ msgid "" "``'$'``; ``'$'`` is usually a metacharacter, but inside a character class " "it's stripped of its special nature." msgstr "" +"Metacharacters (``\\`` ਤੋਂ ਇਲਾਵਾ) classes ਦੇ ਅੰਦਰ ਸਰਗਰਮ ਨਹੀਂ ਹੁੰਦੇ। ਉਦਾਹਰਨ ਲਈ, " +"``[akm$]`` ਕਿਸੇ ਵੀ ``'a'``, ``'k'``, ``'m'`` ਜਾਂ ``'$'`` ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰੇਗਾ; " +"``'$'`` ਆਮ ਤੌਰ 'ਤੇ ਇੱਕ metacharacter ਹੁੰਦਾ ਹੈ, ਪਰ character class ਦੇ ਅੰਦਰ ਇਹ ਆਪਣੀ " +"ਖਾਸ ਵਿਸ਼ੇਸ਼ਤਾ ਗੁਆ ਬੈਠਦਾ ਹੈ।" msgid "" -"You can match the characters not listed within the class by :dfn:" -"`complementing` the set. This is indicated by including a ``'^'`` as the " -"first character of the class. For example, ``[^5]`` will match any character " -"except ``'5'``. If the caret appears elsewhere in a character class, it " -"does not have special meaning. For example: ``[5^]`` will match either a " -"``'5'`` or a ``'^'``." +"You can match the characters not listed within the class " +"by :dfn:`complementing` the set. This is indicated by including a ``'^'`` " +"as the first character of the class. For example, ``[^5]`` will match any " +"character except ``'5'``. If the caret appears elsewhere in a character " +"class, it does not have special meaning. For example: ``[5^]`` will match " +"either a ``'5'`` or a ``'^'``." msgstr "" +"ਤੁਸੀਂ class ਦੇ ਅੰਦਰ ਦਰਸਾਏ ਨਾ ਗਏ ਅੱਖਰਾਂ ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ ਉਸ ਸਮੂਹ ਦਾ :dfn:`complement` " +"ਬਣਾ ਸਕਦੇ ਹੋ। ਇਹ class ਦੇ ਪਹਿਲੇ ਅੱਖਰ ਵਜੋਂ ``'^'`` ਲਗਾ ਕੇ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``[^5]`` ਹਰ ਉਸ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰੇਗਾ ਜੋ ``'5'`` ਨਹੀਂ ਹੈ। ਜੇ caret character class ਦੇ " +"ਕਿਸੇ ਹੋਰ ਸਥਾਨ 'ਤੇ ਆਵੇ, ਤਾਂ ਇਸਦਾ ਕੋਈ ਖਾਸ ਅਰਥ ਨਹੀਂ ਹੁੰਦਾ। ਉਦਾਹਰਨ ਲਈ: ``[5^]`` ਜਾਂ ਤਾਂ " +"``'5'`` ਜਾਂ ``'^'`` ਨਾਲ ਮੈਚ ਕਰੇਗਾ।" msgid "" "Perhaps the most important metacharacter is the backslash, ``\\``. As in " @@ -146,22 +200,36 @@ msgid "" "need to match a ``[`` or ``\\``, you can precede them with a backslash to " "remove their special meaning: ``\\[`` or ``\\\\``." msgstr "" +"ਸ਼ਾਇਦ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ metacharacter backslash ``\\`` ਹੈ। Python string literals " +"ਵਾਂਗ, backslash ਤੋਂ ਬਾਅਦ ਵੱਖ-ਵੱਖ ਅੱਖਰ ਲਗਾ ਕੇ ਖਾਸ sequences ਦਰਸਾਈਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਇਹ " +"ਸਾਰੇ metacharacters ਨੂੰ escape ਕਰਨ ਲਈ ਵੀ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਤਾਂ ਜੋ ਤੁਸੀਂ ਪੈਟਰਨ ਵਿੱਚ ਉਨ੍ਹਾਂ ਨਾਲ " +"ਸਿੱਧਾ ਮੈਚ ਕਰ ਸਕੋ; ਉਦਾਹਰਨ ਲਈ, ਜੇ ਤੁਹਾਨੂੰ ``[`` ਜਾਂ ``\\`` ਨਾਲ ਮੈਚ ਕਰਨਾ ਹੋਵੇ, ਤਾਂ ਤੁਸੀਂ " +"ਉਨ੍ਹਾਂ ਤੋਂ ਪਹਿਲਾਂ backslash ਲਗਾ ਕੇ ਉਨ੍ਹਾਂ ਦਾ ਖਾਸ ਅਰਥ ਹਟਾ ਸਕਦੇ ਹੋ: ``\\[`` ਜਾਂ ``\\\\``।" msgid "" "Some of the special sequences beginning with ``'\\'`` represent predefined " "sets of characters that are often useful, such as the set of digits, the set " "of letters, or the set of anything that isn't whitespace." msgstr "" +"``'\\'`` ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀਆਂ ਕੁਝ ਖਾਸ sequences ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਅੱਖਰ ਸਮੂਹਾਂ ਨੂੰ " +"ਦਰਸਾਉਂਦੀਆਂ ਹਨ ਜੋ ਅਕਸਰ ਲਾਭਦਾਇਕ ਹੁੰਦੀਆਂ ਹਨ, ਜਿਵੇਂ ਅੰਕਾਂ ਦਾ ਸਮੂਹ, ਅੱਖਰਾਂ ਦਾ ਸਮੂਹ ਜਾਂ ਉਹ ਸਭ ਕੁਝ " +"ਜੋ whitespace ਨਹੀਂ ਹੈ।" msgid "" "Let's take an example: ``\\w`` matches any alphanumeric character. If the " "regex pattern is expressed in bytes, this is equivalent to the class ``[a-zA-" "Z0-9_]``. If the regex pattern is a string, ``\\w`` will match all the " -"characters marked as letters in the Unicode database provided by the :mod:" -"`unicodedata` module. You can use the more restricted definition of ``\\w`` " -"in a string pattern by supplying the :const:`re.ASCII` flag when compiling " -"the regular expression." +"characters marked as letters in the Unicode database provided by " +"the :mod:`unicodedata` module. You can use the more restricted definition " +"of ``\\w`` in a string pattern by supplying the :const:`re.ASCII` flag when " +"compiling the regular expression." msgstr "" +"ਆਓ ਇੱਕ ਉਦਾਹਰਨ ਵੇਖੀਏ: ``\\w`` ਕਿਸੇ ਵੀ ਅੱਖਰ-ਅੰਕ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ। ਜੇ regex pattern " +"ਨੂੰ bytes ਦੇ ਰੂਪ ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇਹ class ``[a-zA-Z0-9_]`` ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ ਹੈ। " +"ਜੇ regex pattern ਇੱਕ string ਹੋਵੇ, ਤਾਂ ``\\w`` :mod:`unicodedata` ਮੋਡੀਊਲ ਦੁਆਰਾ ਪ੍ਰਦਾਨ " +"ਕੀਤੇ Unicode ਡਾਟਾਬੇਸ ਵਿੱਚ ਅੱਖਰ ਵਜੋਂ ਚਿੰਨ੍ਹਿਤ ਸਾਰੇ ਅੱਖਰਾਂ ਨਾਲ ਮੈਚ ਕਰੇਗਾ। ਤੁਸੀਂ regular " +"expression compile ਕਰਦੇ ਸਮੇਂ :const:`re.ASCII` flag ਦੇ ਕੇ string pattern ਵਿੱਚ " +"``\\w`` ਦੀ ਹੋਰ ਸੀਮਿਤ ਪਰਿਭਾਸ਼ਾ ਵਰਤ ਸਕਦੇ ਹੋ।" msgid "" "The following list of special sequences isn't complete. For a complete list " @@ -170,67 +238,84 @@ msgid "" "Standard Library reference. In general, the Unicode versions match any " "character that's in the appropriate category in the Unicode database." msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀ special sequences ਦੀ ਸੂਚੀ ਪੂਰੀ ਨਹੀਂ ਹੈ। Unicode string patterns ਲਈ " +"sequences ਦੀ ਪੂਰੀ ਸੂਚੀ ਅਤੇ ਵਿਸਤ੍ਰਿਤ class definitions ਲਈ Standard Library " +"reference ਵਿੱਚ :ref:`Regular Expression Syntax ` ਦਾ ਆਖਰੀ ਭਾਗ ਵੇਖੋ। " +"ਆਮ ਤੌਰ 'ਤੇ Unicode ਸੰਸਕਰਣ Unicode ਡਾਟਾਬੇਸ ਦੀ ਉਚਿਤ ਸ਼੍ਰੇਣੀ ਵਿੱਚ ਆਉਣ ਵਾਲੇ ਹਰ ਅੱਖਰ ਨਾਲ ਮੈਚ " +"ਕਰਦੇ ਹਨ।" msgid "``\\d``" -msgstr "" +msgstr "``\\d``" msgid "Matches any decimal digit; this is equivalent to the class ``[0-9]``." -msgstr "" +msgstr "ਕਿਸੇ ਵੀ ਦਸ਼ਮਲਵ ਅੰਕ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[0-9]`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "``\\D``" -msgstr "" +msgstr "``\\D``" msgid "" "Matches any non-digit character; this is equivalent to the class ``[^0-9]``." -msgstr "" +msgstr "ਕਿਸੇ ਵੀ ਗੈਰ-ਅੰਕੀ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[^0-9]`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "``\\s``" -msgstr "" +msgstr "``\\s``" msgid "" "Matches any whitespace character; this is equivalent to the class " "``[ \\t\\n\\r\\f\\v]``." msgstr "" +"ਕਿਸੇ ਵੀ whitespace ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[ \\t\\n\\r\\f\\v]`` ਦੇ ਬਰਾਬਰ " +"ਹੈ।" msgid "``\\S``" -msgstr "" +msgstr "``\\S``" msgid "" "Matches any non-whitespace character; this is equivalent to the class ``[^ " "\\t\\n\\r\\f\\v]``." msgstr "" +"ਕਿਸੇ ਵੀ non-whitespace ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[^ \\t\\n\\r\\f\\v]`` ਦੇ " +"ਬਰਾਬਰ ਹੈ।" msgid "``\\w``" -msgstr "" +msgstr "``\\w``" msgid "" "Matches any alphanumeric character; this is equivalent to the class ``[a-zA-" "Z0-9_]``." -msgstr "" +msgstr "ਕਿਸੇ ਵੀ ਅੱਖਰ-ਅੰਕ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[a-zA-Z0-9_]`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "``\\W``" -msgstr "" +msgstr "``\\W``" msgid "" "Matches any non-alphanumeric character; this is equivalent to the class " "``[^a-zA-Z0-9_]``." msgstr "" +"ਕਿਸੇ ਵੀ ਗੈਰ-ਅੱਖਰ-ਅੰਕ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ class ``[^a-zA-Z0-9_]`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "" "These sequences can be included inside a character class. For example, " "``[\\s,.]`` is a character class that will match any whitespace character, " "or ``','`` or ``'.'``." msgstr "" +"ਇਨ੍ਹਾਂ sequences ਨੂੰ character class ਦੇ ਅੰਦਰ ਵੀ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``[\\s,.]`` ਇੱਕ character class ਹੈ ਜੋ ਕਿਸੇ ਵੀ whitespace ਅੱਖਰ, ``','`` ਜਾਂ ``'.'`` " +"ਨਾਲ ਮੈਚ ਕਰੇਗੀ।" msgid "" "The final metacharacter in this section is ``.``. It matches anything " -"except a newline character, and there's an alternate mode (:const:`re." -"DOTALL`) where it will match even a newline. ``.`` is often used where you " -"want to match \"any character\"." +"except a newline character, and there's an alternate mode " +"(:const:`re.DOTALL`) where it will match even a newline. ``.`` is often " +"used where you want to match \"any character\"." msgstr "" +"ਇਸ ਭਾਗ ਦਾ ਆਖਰੀ metacharacter ``.`` ਹੈ। ਇਹ newline character ਤੋਂ ਇਲਾਵਾ ਹਰ ਚੀਜ਼ " +"ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ, ਅਤੇ ਇੱਕ ਵਿਕਲਪਕ mode (:const:`re.DOTALL`) ਵਿੱਚ ਇਹ newline ਨਾਲ ਵੀ " +"ਮੈਚ ਕਰਦਾ ਹੈ। ``.`` ਅਕਸਰ ਉਸ ਵੇਲੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ \"ਕਿਸੇ ਵੀ ਅੱਖਰ\" ਨਾਲ ਮੈਚ ਕਰਨਾ " +"ਚਾਹੁੰਦੇ ਹੋ।" msgid "Repeating things" -msgstr "" +msgstr "ਚੀਜ਼ਾਂ ਨੂੰ ਦੁਹਰਾਉਣਾ" msgid "" "Being able to match varying sets of characters is the first thing regular " @@ -239,6 +324,11 @@ msgid "" "they wouldn't be much of an advance. Another capability is that you can " "specify that portions of the RE must be repeated a certain number of times." msgstr "" +"ਵੱਖ-ਵੱਖ ਅੱਖਰ ਸਮੂਹਾਂ ਨਾਲ ਮੈਚ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਉਹ ਪਹਿਲੀ ਚੀਜ਼ ਹੈ ਜੋ regular expressions ਕਰ " +"ਸਕਦੀਆਂ ਹਨ ਅਤੇ ਜੋ strings ਉੱਤੇ ਉਪਲਬਧ methods ਨਾਲ ਪਹਿਲਾਂ ਹੀ ਸੰਭਵ ਨਹੀਂ ਸੀ। ਹਾਲਾਂਕਿ, ਜੇ " +"regexes ਦੀ ਇਹੀ ਇਕੋ ਵਾਧੂ ਸਮਰੱਥਾ ਹੁੰਦੀ, ਤਾਂ ਇਹ ਕੋਈ ਵੱਡੀ ਤਰੱਕੀ ਨਾ ਹੁੰਦੀ। ਇੱਕ ਹੋਰ ਮਹੱਤਵਪੂਰਨ " +"ਸਮਰੱਥਾ ਇਹ ਹੈ ਕਿ ਤੁਸੀਂ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ ਕਿ RE ਦੇ ਕੁਝ ਹਿੱਸਿਆਂ ਨੂੰ ਕਿੰਨੀ ਵਾਰ ਦੁਹਰਾਇਆ ਜਾਣਾ " +"ਚਾਹੀਦਾ ਹੈ।" msgid "" "The first metacharacter for repeating things that we'll look at is ``*``. " @@ -246,11 +336,16 @@ msgid "" "that the previous character can be matched zero or more times, instead of " "exactly once." msgstr "" +"ਦੁਹਰਾਉਣ ਲਈ ਪਹਿਲਾ metacharacter ਜਿਸ ਬਾਰੇ ਅਸੀਂ ਗੱਲ ਕਰਾਂਗੇ ਉਹ ``*`` ਹੈ। ``*`` ਅਸਲ " +"``'*'`` ਅੱਖਰ ਨਾਲ ਮੈਚ ਨਹੀਂ ਕਰਦਾ; ਇਸ ਦੀ ਬਜਾਏ, ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਪਿਛਲਾ ਅੱਖਰ ਬਿਲਕੁਲ ਇੱਕ " +"ਵਾਰ ਦੀ ਥਾਂ ਸ਼ੂਨ੍ਯ ਜਾਂ ਵੱਧ ਵਾਰ ਮੈਚ ਹੋ ਸਕਦਾ ਹੈ।" msgid "" "For example, ``ca*t`` will match ``'ct'`` (0 ``'a'`` characters), ``'cat'`` " "(1 ``'a'``), ``'caaat'`` (3 ``'a'`` characters), and so forth." msgstr "" +"ਉਦਾਹਰਨ ਲਈ, ``ca*t`` ``'ct'`` (0 ``'a'`` ਅੱਖਰ), ``'cat'`` (1 ``'a'``), " +"``'caaat'`` (3 ``'a'`` ਅੱਖਰ), ਆਦਿ ਨਾਲ ਮੈਚ ਕਰੇਗਾ।" msgid "" "Repetitions such as ``*`` are :dfn:`greedy`; when repeating a RE, the " @@ -258,6 +353,10 @@ msgid "" "portions of the pattern don't match, the matching engine will then back up " "and try again with fewer repetitions." msgstr "" +"``*`` ਵਰਗੀਆਂ ਦੁਹਰਾਵਾਂ :dfn:`greedy` ਹੁੰਦੀਆਂ ਹਨ; ਜਦੋਂ ਕੋਈ RE ਦੁਹਰਾਈ ਜਾਂਦੀ ਹੈ, ਤਾਂ matching " +"engine ਇਸਨੂੰ ਸੰਭਵ ਹੋ ਸਕਣ ਵਾਲੀਆਂ ਸਭ ਤੋਂ ਵੱਧ ਵਾਰ ਦੁਹਰਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ। ਜੇ ਪੈਟਰਨ ਦੇ ਬਾਅਦ " +"ਵਾਲੇ ਭਾਗ ਮੈਚ ਨਹੀਂ ਕਰਦੇ, ਤਾਂ matching engine ਪਿੱਛੇ ਹਟਦਾ ਹੈ ਅਤੇ ਘੱਟ ਦੁਹਰਾਵਾਂ ਨਾਲ ਮੁੜ ਕੋਸ਼ਿਸ਼ " +"ਕਰਦਾ ਹੈ।" msgid "" "A step-by-step example will make this more obvious. Let's consider the " @@ -265,80 +364,91 @@ msgid "" "letters from the class ``[bcd]``, and finally ends with a ``'b'``. Now " "imagine matching this RE against the string ``'abcbd'``." msgstr "" +"ਇੱਕ ਕਦਮ-ਦਰ-ਕਦਮ ਉਦਾਹਰਨ ਇਸਨੂੰ ਹੋਰ ਸਪਸ਼ਟ ਕਰੇਗੀ। ਆਓ expression ``a[bcd]*b`` ਨੂੰ ਵੇਖੀਏ। ਇਹ " +"ਅੱਖਰ ``'a'`` ਨਾਲ ਮੈਚ ਕਰਦੀ ਹੈ, ਫਿਰ class ``[bcd]`` ਵਿੱਚੋਂ ਸ਼ੂਨ੍ਯ ਜਾਂ ਵੱਧ ਅੱਖਰਾਂ ਨਾਲ, ਅਤੇ ਅੰਤ " +"ਵਿੱਚ ``'b'`` ਨਾਲ ਖਤਮ ਹੁੰਦੀ ਹੈ। ਹੁਣ ਕਲਪਨਾ ਕਰੋ ਕਿ ਇਸ RE ਨੂੰ string ``'abcbd'`` ਨਾਲ ਮੈਚ " +"ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ।" msgid "Step" -msgstr "" +msgstr "ਕਦਮ" msgid "Matched" -msgstr "" +msgstr "ਮੈਚ ਕੀਤਾ ਗਿਆ" msgid "Explanation" -msgstr "" +msgstr "ਵਿਆਖਿਆ" msgid "1" -msgstr "" +msgstr "1" msgid "``a``" -msgstr "" +msgstr "``a``" msgid "The ``a`` in the RE matches." -msgstr "" +msgstr "RE ਵਿੱਚ ਮੌਜੂਦ ``a`` ਮੈਚ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "2" -msgstr "" +msgstr "2" msgid "``abcbd``" -msgstr "" +msgstr "``abcbd``" msgid "" "The engine matches ``[bcd]*``, going as far as it can, which is to the end " "of the string." msgstr "" +"Matching engine ``[bcd]*``, ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ ਅਤੇ ਜਿੰਨਾ ਅੱਗੇ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂਦਾ ਹੈ, ਅਰਥਾਤ " +"ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਤੱਕ।" msgid "3" -msgstr "" +msgstr "3" msgid "*Failure*" -msgstr "" +msgstr "*ਅਸਫਲਤਾ*" msgid "" "The engine tries to match ``b``, but the current position is at the end of " "the string, so it fails." msgstr "" +"Engine ``b`` ਨਾਲ ਮੈਚ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਪਰ ਮੌਜੂਦਾ ਸਥਿਤੀ ਸਟਰਿੰਗ ਦੇ ਅੰਤ 'ਤੇ ਹੈ, ਇਸ ਲਈ " +"ਮੈਚ ਅਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "4" -msgstr "" +msgstr "4" msgid "``abcb``" -msgstr "" +msgstr "``abcb``" msgid "Back up, so that ``[bcd]*`` matches one less character." -msgstr "" +msgstr "ਪਿੱਛੇ ਹਟੋ ਤਾਂ ਜੋ ``[bcd]*`` ਇੱਕ ਅੱਖਰ ਘੱਟ ਨਾਲ ਮੈਚ ਕਰੇ।" msgid "5" -msgstr "" +msgstr "5" msgid "" "Try ``b`` again, but the current position is at the last character, which is " "a ``'d'``." msgstr "" +"ਮੁੜ ``b`` ਨਾਲ ਮੈਚ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ, ਪਰ ਮੌਜੂਦਾ ਸਥਿਤੀ ਆਖਰੀ ਅੱਖਰ 'ਤੇ ਹੈ ਜੋ ``'d'`` ਹੈ।" msgid "6" -msgstr "" +msgstr "6" msgid "``abc``" -msgstr "" +msgstr "``abc``" msgid "Back up again, so that ``[bcd]*`` is only matching ``bc``." -msgstr "" +msgstr "ਮੁੜ ਪਿੱਛੇ ਹਟੋ ਤਾਂ ਜੋ ``[bcd]*`` ਸਿਰਫ਼ ``bc`` ਨਾਲ ਹੀ ਮੈਚ ਕਰ ਰਿਹਾ ਹੋਵੇ।" msgid "7" -msgstr "" +msgstr "7" msgid "" "Try ``b`` again. This time the character at the current position is " "``'b'``, so it succeeds." msgstr "" +"ਮੁੜ ``b`` ਨਾਲ ਮੈਚ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਇਸ ਵਾਰ ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਅੱਖਰ ``'b'`` ਹੈ, ਇਸ ਲਈ ਮੈਚ " +"ਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "" "The end of the RE has now been reached, and it has matched ``'abcb'``. This " @@ -348,6 +458,11 @@ msgid "" "``[bcd]*``, and if that subsequently fails, the engine will conclude that " "the string doesn't match the RE at all." msgstr "" +"ਹੁਣ RE ਦਾ ਅੰਤ ਆ ਗਿਆ ਹੈ ਅਤੇ ਇਸ ਨੇ ``'abcb'`` ਨਾਲ ਮੈਚ ਕਰ ਲਿਆ ਹੈ। ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ " +"matching engine ਪਹਿਲਾਂ ਸੰਭਵ ਹੋ ਸਕਣ ਵਾਲੀ ਸਭ ਤੋਂ ਵੱਧ ਹੱਦ ਤੱਕ ਜਾਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਅਤੇ ਜੇ " +"ਮੈਚ ਨਾ ਮਿਲੇ ਤਾਂ ਹੌਲੀ-ਹੌਲੀ ਪਿੱਛੇ ਹਟਦਾ ਹੈ ਅਤੇ RE ਦੇ ਬਾਕੀ ਭਾਗ ਨੂੰ ਵਾਰ-ਵਾਰ ਮੁੜ ਅਜ਼ਮਾਉਂਦਾ ਹੈ। ਇਹ " +"ਤਦ ਤੱਕ ਪਿੱਛੇ ਹਟਦਾ ਰਹੇਗਾ ਜਦ ਤੱਕ ``[bcd]*`` ਲਈ ਸ਼ੂਨ੍ਯ ਮੈਚ ਵੀ ਅਜ਼ਮਾਏ ਨਾ ਜਾ ਚੁੱਕੇ ਹੋਣ। ਜੇ ਫਿਰ " +"ਵੀ ਮੈਚ ਨਾ ਮਿਲੇ, ਤਾਂ engine ਨਤੀਜਾ ਕੱਢੇਗਾ ਕਿ ਇਹ ਸਟਰਿੰਗ RE ਨਾਲ ਬਿਲਕੁਲ ਵੀ ਮੈਚ ਨਹੀਂ ਕਰਦੀ।" msgid "" "Another repeating metacharacter is ``+``, which matches one or more times. " @@ -357,6 +472,11 @@ msgid "" "similar example, ``ca+t`` will match ``'cat'`` (1 ``'a'``), ``'caaat'`` (3 " "``'a'``\\ s), but won't match ``'ct'``." msgstr "" +"ਇੱਕ ਹੋਰ ਦੁਹਰਾਉਣ ਵਾਲਾ metacharacter ``+`` ਹੈ, ਜੋ ਇੱਕ ਜਾਂ ਵੱਧ ਵਾਰ ਮੈਚ ਕਰਦਾ ਹੈ। ``*`` ਅਤੇ " +"``+`` ਵਿਚਕਾਰ ਅੰਤਰ ਨੂੰ ਧਿਆਨ ਨਾਲ ਸਮਝੋ; ``*`` ਸ਼ੂਨ੍ਯ ਜਾਂ ਵੱਧ ਵਾਰ ਮੈਚ ਕਰਦਾ ਹੈ, ਇਸ ਲਈ ਦੁਹਰਾਈ " +"ਜਾ ਰਹੀ ਚੀਜ਼ ਮੌਜੂਦ ਨਾ ਵੀ ਹੋ ਸਕਦੀ ਹੈ, ਜਦਕਿ ``+`` ਲਈ ਘੱਟੋ-ਘੱਟ ਇੱਕ occurrence ਲਾਜ਼ਮੀ ਹੈ। ਇਸੇ " +"ਤਰ੍ਹਾਂ ਦੀ ਉਦਾਹਰਨ ਵਿੱਚ, ``ca+t`` ``'cat'`` (1 ``'a'``), ``'caaat'`` (3 ``'a'``\\" +"\\ s) ਨਾਲ ਮੈਚ ਕਰੇਗਾ, ਪਰ ``'ct'`` ਨਾਲ ਮੈਚ ਨਹੀਂ ਕਰੇਗਾ।" msgid "" "There are two more repeating operators or quantifiers. The question mark " @@ -364,6 +484,9 @@ msgid "" "marking something as being optional. For example, ``home-?brew`` matches " "either ``'homebrew'`` or ``'home-brew'``." msgstr "" +"ਹੋਰ ਦੋ repeating operators ਜਾਂ quantifiers ਵੀ ਹਨ। ਪ੍ਰਸ਼ਨ ਚਿੰਨ੍ਹ ``?`` ਇੱਕ ਵਾਰ ਜਾਂ ਸ਼ੂਨ੍ਯ " +"ਵਾਰ ਮੈਚ ਕਰਦਾ ਹੈ; ਤੁਸੀਂ ਇਸਨੂੰ ਕਿਸੇ ਚੀਜ਼ ਨੂੰ ਵਿਕਲਪਿਕ ਬਣਾਉਣ ਵਾਂਗ ਸਮਝ ਸਕਦੇ ਹੋ। ਉਦਾਹਰਨ ਲਈ, " +"``home-?brew`` ``'homebrew'`` ਅਤੇ ``'home-brew'`` ਦੋਵਾਂ ਨਾਲ ਮੈਚ ਕਰੇਗਾ।" msgid "" "The most complicated quantifier is ``{m,n}``, where *m* and *n* are decimal " @@ -372,17 +495,27 @@ msgid "" "and ``'a///b'``. It won't match ``'ab'``, which has no slashes, or ``'a////" "b'``, which has four." msgstr "" +"ਸਭ ਤੋਂ ਜਟਿਲ quantifier ``{m,n}`` ਹੈ, ਜਿੱਥੇ *m* ਅਤੇ *n* ਦਸ਼ਮਲਵ ਪੂਰਨ ਅੰਕ ਹੁੰਦੇ ਹਨ। ਇਸਦਾ " +"ਅਰਥ ਹੈ ਕਿ ਘੱਟੋ-ਘੱਟ *m* ਦੁਹਰਾਵਾਂ ਅਤੇ ਵੱਧ ਤੋਂ ਵੱਧ *n* ਦੁਹਰਾਵਾਂ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, " +"``a/{1,3}b`` ``'a/b'``, ``'a//b'`` ਅਤੇ ``'a///b'`` ਨਾਲ ਮੈਚ ਕਰੇਗਾ। ਇਹ ``'ab'`` " +"ਨਾਲ ਮੈਚ ਨਹੀਂ ਕਰੇਗਾ ਕਿਉਂਕਿ ਇਸ ਵਿੱਚ ਕੋਈ slash ਨਹੀਂ ਹੈ, ਅਤੇ ਨਾ ਹੀ ``'a////b'`` ਨਾਲ ਕਿਉਂਕਿ " +"ਇਸ ਵਿੱਚ ਚਾਰ slash ਹਨ।" msgid "" "You can omit either *m* or *n*; in that case, a reasonable value is assumed " "for the missing value. Omitting *m* is interpreted as a lower limit of 0, " "while omitting *n* results in an upper bound of infinity." msgstr "" +"ਤੁਸੀਂ *m* ਜਾਂ *n* ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਨੂੰ ਛੱਡ ਸਕਦੇ ਹੋ; ਅਜਿਹੇ ਮਾਮਲੇ ਵਿੱਚ ਗੁੰਮ ਮੁੱਲ ਲਈ ਇੱਕ ਉਚਿਤ ਮੁੱਲ ਮੰਨਿਆ " +"ਜਾਂਦਾ ਹੈ। *m* ਨੂੰ ਛੱਡਣ ਦਾ ਅਰਥ ਹੇਠਲੀ ਸੀਮਾ 0 ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ, ਜਦਕਿ *n* ਨੂੰ ਛੱਡਣ ਦਾ ਅਰਥ ਉੱਪਰੀ " +"ਸੀਮਾ ਅਨੰਤ ਹੋ ਜਾਂਦੀ ਹੈ।" msgid "" "The simplest case ``{m}`` matches the preceding item exactly *m* times. For " "example, ``a/{2}b`` will only match ``'a//b'``." msgstr "" +"ਸਭ ਤੋਂ ਸਧਾਰਣ ਰੂਪ ``{m}`` ਪਿਛਲੇ ਆਈਟਮ ਨਾਲ ਬਿਲਕੁਲ *m* ਵਾਰ ਮੈਚ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``a/" +"{2}b`` ਸਿਰਫ਼ ``'a//b'`` ਨਾਲ ਹੀ ਮੈਚ ਕਰੇਗਾ।" msgid "" "Readers of a reductionist bent may notice that the three other quantifiers " @@ -391,9 +524,13 @@ msgid "" "better to use ``*``, ``+``, or ``?`` when you can, simply because they're " "shorter and easier to read." msgstr "" +"ਜੋ ਪਾਠਕ reductionist ਸੋਚ ਰੱਖਦੇ ਹਨ ਉਹ ਧਿਆਨ ਦੇ ਸਕਦੇ ਹਨ ਕਿ ਬਾਕੀ ਤਿੰਨ quantifiers ਨੂੰ ਵੀ " +"ਇਸ notation ਨਾਲ ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ``{0,}`` ``*`` ਦੇ ਬਰਾਬਰ ਹੈ, ``{1,}`` ``+`` ਦੇ " +"ਬਰਾਬਰ ਹੈ ਅਤੇ ``{0,1}`` ``?`` ਦੇ ਬਰਾਬਰ ਹੈ। ਜਿੱਥੇ ਸੰਭਵ ਹੋਵੇ, ``*``, ``+`` ਜਾਂ ``?`` " +"ਵਰਤਣਾ ਬਿਹਤਰ ਹੈ ਕਿਉਂਕਿ ਇਹ ਛੋਟੇ ਅਤੇ ਪੜ੍ਹਨ ਵਿੱਚ ਆਸਾਨ ਹੁੰਦੇ ਹਨ।" msgid "Using regular expressions" -msgstr "" +msgstr "ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ" msgid "" "Now that we've looked at some simple regular expressions, how do we actually " @@ -401,15 +538,22 @@ msgid "" "regular expression engine, allowing you to compile REs into objects and then " "perform matches with them." msgstr "" +"ਹੁਣ ਜਦੋਂ ਅਸੀਂ ਕੁਝ ਸਧਾਰਣ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਬਾਰੇ ਵੇਖ ਲਿਆ ਹੈ, ਤਾਂ Python ਵਿੱਚ ਅਸੀਂ ਉਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ " +"ਅਸਲ ਵਿੱਚ ਕਿਵੇਂ ਕਰਦੇ ਹਾਂ? :mod:`re` ਮੋਡੀਊਲ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ engine ਲਈ ਇੱਕ interface " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ REs ਨੂੰ objects ਵਿੱਚ compile ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਫਿਰ ਉਨ੍ਹਾਂ ਨਾਲ " +"matching operations ਕਰ ਸਕਦੇ ਹੋ।" msgid "Compiling regular expressions" -msgstr "" +msgstr "ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨੂੰ compile ਕਰਨਾ" msgid "" "Regular expressions are compiled into pattern objects, which have methods " "for various operations such as searching for pattern matches or performing " "string substitutions. ::" msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨੂੰ pattern objects ਵਿੱਚ compile ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਵੱਖ-ਵੱਖ " +"ਕਾਰਵਾਈਆਂ ਲਈ methods ਹੁੰਦੀਆਂ ਹਨ, ਜਿਵੇਂ pattern matches ਖੋਜਣਾ ਜਾਂ string substitutions " +"ਕਰਨਾ। ::" msgid "" ">>> import re\n" @@ -417,15 +561,22 @@ msgid "" ">>> p\n" "re.compile('ab*')" msgstr "" +">>> import re\n" +">>> p = re.compile('ab*')\n" +">>> p\n" +"re.compile('ab*')" msgid "" ":func:`re.compile` also accepts an optional *flags* argument, used to enable " "various special features and syntax variations. We'll go over the available " "settings later, but for now a single example will do::" msgstr "" +":func:`re.compile` ਇੱਕ ਵਿਕਲਪਿਕ *flags* argument ਵੀ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ, ਜਿਸਦੀ ਵਰਤੋਂ " +"ਵੱਖ-ਵੱਖ ਵਿਸ਼ੇਸ਼ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ syntax variations ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਉਪਲਬਧ " +"settings ਬਾਰੇ ਅਸੀਂ ਬਾਅਦ ਵਿੱਚ ਗੱਲ ਕਰਾਂਗੇ, ਪਰ ਇਸ ਵੇਲੇ ਇੱਕ ਉਦਾਹਰਨ ਕਾਫ਼ੀ ਹੈ::" msgid ">>> p = re.compile('ab*', re.IGNORECASE)" -msgstr "" +msgstr ">>> p = re.compile('ab*', re.IGNORECASE)" msgid "" "The RE is passed to :func:`re.compile` as a string. REs are handled as " @@ -433,17 +584,25 @@ msgid "" "and no special syntax was created for expressing them. (There are " "applications that don't need REs at all, so there's no need to bloat the " "language specification by including them.) Instead, the :mod:`re` module is " -"simply a C extension module included with Python, just like the :mod:" -"`socket` or :mod:`zlib` modules." +"simply a C extension module included with Python, just like " +"the :mod:`socket` or :mod:`zlib` modules." msgstr "" +"RE ਨੂੰ :func:`re.compile` ਵਿੱਚ ਇੱਕ string ਵਜੋਂ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। REs ਨੂੰ strings ਵਜੋਂ " +"ਹੀ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ Python ਭਾਸ਼ਾ ਦੇ ਮੁੱਖ ਹਿੱਸੇ ਦਾ ਭਾਗ ਨਹੀਂ ਹਨ ਅਤੇ " +"ਉਨ੍ਹਾਂ ਨੂੰ ਦਰਸਾਉਣ ਲਈ ਕੋਈ ਵੱਖਰਾ syntax ਨਹੀਂ ਬਣਾਇਆ ਗਿਆ। (ਕਈ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ REs ਦੀ ਲੋੜ ਹੀ " +"ਨਹੀਂ ਹੁੰਦੀ, ਇਸ ਲਈ ਭਾਸ਼ਾ ਦੇ specification ਨੂੰ ਬੇਲੋੜਾ ਵੱਡਾ ਬਣਾਉਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।) ਇਸ ਦੀ " +"ਬਜਾਏ, :mod:`re` ਮੋਡੀਊਲ Python ਨਾਲ ਸ਼ਾਮਲ ਇੱਕ C extension module ਹੈ, " +"ਬਿਲਕੁਲ :mod:`socket` ਜਾਂ :mod:`zlib` ਮੋਡੀਊਲਾਂ ਵਾਂਗ।" msgid "" "Putting REs in strings keeps the Python language simpler, but has one " "disadvantage which is the topic of the next section." msgstr "" +"REs ਨੂੰ strings ਵਿੱਚ ਰੱਖਣ ਨਾਲ Python ਭਾਸ਼ਾ ਸਧਾਰਣ ਰਹਿੰਦੀ ਹੈ, ਪਰ ਇਸਦਾ ਇੱਕ ਨੁਕਸਾਨ ਵੀ ਹੈ, " +"ਜੋ ਅਗਲੇ ਭਾਗ ਦਾ ਵਿਸ਼ਾ ਹੈ।" msgid "The backslash plague" -msgstr "" +msgstr "ਬੈਕਸਲੈਸ਼ ਦੀ ਸਮੱਸਿਆ" msgid "" "As stated earlier, regular expressions use the backslash character " @@ -451,6 +610,10 @@ msgid "" "used without invoking their special meaning. This conflicts with Python's " "usage of the same character for the same purpose in string literals." msgstr "" +"ਜਿਵੇਂ ਪਹਿਲਾਂ ਦੱਸਿਆ ਗਿਆ ਹੈ, regular expressions ਖਾਸ ਰੂਪਾਂ ਨੂੰ ਦਰਸਾਉਣ ਜਾਂ ਖਾਸ ਅੱਖਰਾਂ ਨੂੰ " +"ਉਨ੍ਹਾਂ ਦੇ ਵਿਸ਼ੇਸ਼ ਅਰਥ ਤੋਂ ਬਿਨਾਂ ਵਰਤਣ ਲਈ backslash ਅੱਖਰ (``'\\'``) ਦੀ ਵਰਤੋਂ ਕਰਦੀਆਂ ਹਨ। ਇਹ " +"Python ਵਿੱਚ string literals ਦੇ ਅੰਦਰ ਉਸੇ ਅੱਖਰ ਦੀ ਇਸੇ ਉਦੇਸ਼ ਲਈ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਵਰਤੋਂ ਨਾਲ " +"ਟਕਰਾਉਂਦਾ ਹੈ।" msgid "" "Let's say you want to write a RE that matches the string ``\\section``, " @@ -462,30 +625,37 @@ msgid "" "to express this as a Python string literal, both backslashes must be escaped " "*again*." msgstr "" +"ਮੰਨ ਲਓ ਤੁਸੀਂ ਇੱਕ ਅਜਿਹੀ RE ਲਿਖਣਾ ਚਾਹੁੰਦੇ ਹੋ ਜੋ ``\\section`` ਸਟਰਿੰਗ ਨਾਲ ਮੈਚ ਕਰੇ, ਜੋ ਕਿਸੇ " +"LaTeX ਫਾਈਲ ਵਿੱਚ ਮਿਲ ਸਕਦੀ ਹੈ। ਇਹ ਸਮਝਣ ਲਈ ਕਿ ਪ੍ਰੋਗਰਾਮ ਕੋਡ ਵਿੱਚ ਕੀ ਲਿਖਣਾ ਹੈ, ਪਹਿਲਾਂ ਉਸ " +"ਸਟਰਿੰਗ ਤੋਂ ਸ਼ੁਰੂ ਕਰੋ ਜਿਸ ਨਾਲ ਮੈਚ ਕਰਨਾ ਹੈ। ਫਿਰ ਤੁਹਾਨੂੰ ਹਰ backslash ਅਤੇ ਹੋਰ metacharacters " +"ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ backslash ਲਗਾ ਕੇ ਉਨ੍ਹਾਂ ਨੂੰ escape ਕਰਨਾ ਪਵੇਗਾ, ਜਿਸ ਨਾਲ ``\\\\section`` " +"ਸਟਰਿੰਗ ਬਣੇਗੀ। :func:`re.compile` ਨੂੰ ਦਿੱਤੀ ਜਾਣ ਵਾਲੀ resulting string ``\\" +"\\section`` ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। ਪਰ ਇਸਨੂੰ Python string literal ਵਜੋਂ ਦਰਸਾਉਣ ਲਈ ਦੋਵੇਂ " +"backslashes ਨੂੰ *ਮੁੜ* escape ਕਰਨਾ ਪਵੇਗਾ।" msgid "Characters" -msgstr "" +msgstr "ਅੱਖਰ" msgid "Stage" -msgstr "" +msgstr "ਪੜਾਅ" msgid "``\\section``" -msgstr "" +msgstr "``\\section``" msgid "Text string to be matched" -msgstr "" +msgstr "ਮੈਚ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਟੈਕਸਟ ਸਟਰਿੰਗ" msgid "``\\\\section``" -msgstr "" +msgstr "``\\\\section``" msgid "Escaped backslash for :func:`re.compile`" -msgstr "" +msgstr ":func:`re.compile` ਲਈ escape ਕੀਤਾ ਗਿਆ backslash" msgid "``\"\\\\\\\\section\"``" -msgstr "" +msgstr "``\"\\\\\\\\section\"``" msgid "Escaped backslashes for a string literal" -msgstr "" +msgstr "string literal ਲਈ escape ਕੀਤੇ ਗਏ backslashes" msgid "" "In short, to match a literal backslash, one has to write ``'\\\\\\\\'`` as " @@ -494,6 +664,11 @@ msgid "" "literal. In REs that feature backslashes repeatedly, this leads to lots of " "repeated backslashes and makes the resulting strings difficult to understand." msgstr "" +"ਸੰਖੇਪ ਵਿੱਚ, ਇੱਕ literal backslash ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ RE string ਵਜੋਂ ``'\\\\\\\\'`` " +"ਲਿਖਣਾ ਪੈਂਦਾ ਹੈ, ਕਿਉਂਕਿ regular expression ``\\\\`` ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਅਤੇ ਹਰ backslash " +"ਨੂੰ ਇੱਕ ਆਮ Python string literal ਦੇ ਅੰਦਰ ``\\\\`` ਵਜੋਂ ਦਰਸਾਉਣਾ ਪੈਂਦਾ ਹੈ। ਜਿਨ੍ਹਾਂ REs ਵਿੱਚ " +"ਵਾਰ-ਵਾਰ backslashes ਆਉਂਦੇ ਹਨ, ਉੱਥੇ ਇਸ ਕਾਰਨ ਬਹੁਤ ਸਾਰੇ ਦੁਹਰਾਏ ਹੋਏ backslashes ਲਿਖਣੇ ਪੈਂਦੇ " +"ਹਨ ਅਤੇ resulting strings ਨੂੰ ਸਮਝਣਾ ਔਖਾ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "" "The solution is to use Python's raw string notation for regular expressions; " @@ -503,38 +678,49 @@ msgid "" "newline. Regular expressions will often be written in Python code using this " "raw string notation." msgstr "" +"ਇਸਦਾ ਹੱਲ regular expressions ਲਈ Python ਦੀ raw string notation ਵਰਤਣਾ ਹੈ; " +"``'r'`` ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ string literal ਵਿੱਚ backslashes ਨੂੰ ਕਿਸੇ ਖਾਸ ਤਰੀਕੇ ਨਾਲ ਨਹੀਂ " +"ਸੰਭਾਲਿਆ ਜਾਂਦਾ, ਇਸ ਲਈ ``r\"\\n\"`` ਇੱਕ ਦੋ-ਅੱਖਰੀ ਸਟਰਿੰਗ ਹੈ ਜਿਸ ਵਿੱਚ ``'\\'`` ਅਤੇ " +"``'n'`` ਹੁੰਦੇ ਹਨ, ਜਦਕਿ ``\"\\n\"`` ਇੱਕ ਇਕੱਲੇ newline ਅੱਖਰ ਵਾਲੀ ਸਟਰਿੰਗ ਹੈ। Python ਕੋਡ " +"ਵਿੱਚ regular expressions ਅਕਸਰ ਇਸ raw string notation ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਲਿਖੀਆਂ ਜਾਂਦੀਆਂ " +"ਹਨ।" msgid "" "In addition, special escape sequences that are valid in regular expressions, " -"but not valid as Python string literals, now result in a :exc:" -"`SyntaxWarning` and will eventually become a :exc:`SyntaxError`, which means " -"the sequences will be invalid if raw string notation or escaping the " -"backslashes isn't used." +"but not valid as Python string literals, now result in " +"a :exc:`SyntaxWarning` and will eventually become a :exc:`SyntaxError`, " +"which means the sequences will be invalid if raw string notation or escaping " +"the backslashes isn't used." msgstr "" +"ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕੁਝ special escape sequences ਜੋ regular expressions ਵਿੱਚ ਵੈਧ ਹਨ ਪਰ " +"Python string literals ਵਿੱਚ ਵੈਧ ਨਹੀਂ ਹਨ, ਹੁਣ :exc:`SyntaxWarning` ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ " +"ਅਤੇ ਭਵਿੱਖ ਵਿੱਚ :exc:`SyntaxError` ਬਣ ਜਾਣਗੀਆਂ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ਜੇ raw string " +"notation ਜਾਂ backslashes ਨੂੰ escape ਕਰਨ ਦੀ ਵਿਧੀ ਨਾ ਵਰਤੀ ਜਾਵੇ, ਤਾਂ ਉਹ sequences " +"ਅਵੈਧ ਮੰਨੀਆਂ ਜਾਣਗੀਆਂ।" msgid "Regular String" -msgstr "" +msgstr "ਆਮ ਸਟਰਿੰਗ" msgid "Raw string" -msgstr "" +msgstr "Raw string" msgid "``\"ab*\"``" -msgstr "" +msgstr "``\"ab*\"``" msgid "``r\"ab*\"``" -msgstr "" +msgstr "``r\"ab*\"``" msgid "``r\"\\\\section\"``" -msgstr "" +msgstr "``r\"\\\\section\"``" msgid "``\"\\\\w+\\\\s+\\\\1\"``" -msgstr "" +msgstr "``\"\\\\w+\\\\s+\\\\1\"``" msgid "``r\"\\w+\\s+\\1\"``" -msgstr "" +msgstr "``r\"\\w+\\s+\\1\"``" msgid "Performing matches" -msgstr "" +msgstr "ਮੈਚ ਕਰਨਾ" msgid "" "Once you have an object representing a compiled regular expression, what do " @@ -542,40 +728,48 @@ msgid "" "the most significant ones will be covered here; consult the :mod:`re` docs " "for a complete listing." msgstr "" +"ਜਦੋਂ ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ compiled regular expression ਨੂੰ ਦਰਸਾਉਣ ਵਾਲਾ object ਹੋਵੇ, ਤਾਂ ਤੁਸੀਂ ਉਸ " +"ਨਾਲ ਕੀ ਕਰਦੇ ਹੋ? Pattern objects ਵਿੱਚ ਕਈ methods ਅਤੇ attributes ਹੁੰਦੇ ਹਨ। ਇੱਥੇ ਸਿਰਫ਼ ਸਭ " +"ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਚੀਜ਼ਾਂ ਬਾਰੇ ਗੱਲ ਕੀਤੀ ਜਾਵੇਗੀ; ਪੂਰੀ ਸੂਚੀ ਲਈ :mod:`re` ਦੇ ਦਸਤਾਵੇਜ਼ ਵੇਖੋ।" msgid "Method/Attribute" -msgstr "" +msgstr "Method/Attribute" msgid "Purpose" -msgstr "" +msgstr "ਉਦੇਸ਼" msgid "``search()``" -msgstr "" +msgstr "``search()``" msgid "Scan through a string, looking for any location where this RE matches." -msgstr "" +msgstr "ਇੱਕ ਸਟਰਿੰਗ ਵਿੱਚੋਂ ਲੰਘਦੇ ਹੋਏ ਉਹ ਕੋਈ ਵੀ ਸਥਾਨ ਲੱਭਦਾ ਹੈ ਜਿੱਥੇ ਇਹ RE ਮੈਚ ਕਰਦੀ ਹੈ।" msgid "``prefixmatch()``" -msgstr "" +msgstr "``prefixmatch()``" msgid "" "Determine if the RE matches at the beginning of the string. Previously " "named :ref:`match() `." msgstr "" +"ਇਹ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ RE ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਮੈਚ ਕਰਦੀ ਹੈ ਜਾਂ ਨਹੀਂ। ਪਹਿਲਾਂ ਇਸਦਾ " +"ਨਾਮ :ref:`match() ` ਸੀ।" msgid "``findall()``" -msgstr "" +msgstr "``findall()``" msgid "Find all substrings where the RE matches, and return them as a list." msgstr "" +"ਉਹ ਸਾਰੀਆਂ substrings ਲੱਭਦਾ ਹੈ ਜਿੱਥੇ RE ਮੈਚ ਕਰਦੀ ਹੈ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਇੱਕ list ਵਜੋਂ ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "``finditer()``" -msgstr "" +msgstr "``finditer()``" msgid "" -"Find all substrings where the RE matches, and return them as an :term:" -"`iterator`." +"Find all substrings where the RE matches, and return them as " +"an :term:`iterator`." msgstr "" +"ਉਹ ਸਾਰੀਆਂ substrings ਲੱਭਦਾ ਹੈ ਜਿੱਥੇ RE ਮੈਚ ਕਰਦੀ ਹੈ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਇੱਕ :term:`iterator` ਵਜੋਂ " +"ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" ":meth:`~re.Pattern.search` and :meth:`~re.Pattern.prefixmatch` return " @@ -583,16 +777,22 @@ msgid "" "object ` instance is returned, containing information about " "the match: where it starts and ends, the substring it matched, and more." msgstr "" +":meth:`~re.Pattern.search` ਅਤੇ :meth:`~re.Pattern.prefixmatch` ਜੇ ਕੋਈ ਮੈਚ ਨਾ ਮਿਲੇ " +"ਤਾਂ ``None`` ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ। ਜੇ ਇਹ ਸਫਲ ਹੋਣ, ਤਾਂ ਇੱਕ :ref:`match object ` instance ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਮੈਚ ਬਾਰੇ ਜਾਣਕਾਰੀ ਹੁੰਦੀ ਹੈ: ਇਹ ਕਿੱਥੇ ਸ਼ੁਰੂ " +"ਅਤੇ ਖਤਮ ਹੁੰਦਾ ਹੈ, ਕਿਹੜੀ substring ਮੈਚ ਹੋਈ ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ।" msgid "" "You can learn about this by interactively experimenting with the :mod:`re` " "module." -msgstr "" +msgstr "ਤੁਸੀਂ :mod:`re` ਮੋਡੀਊਲ ਨਾਲ ਇੰਟਰਐਕਟਿਵ ਤੌਰ 'ਤੇ ਪ੍ਰਯੋਗ ਕਰਕੇ ਇਸ ਬਾਰੇ ਸਿੱਖ ਸਕਦੇ ਹੋ।" msgid "" "This HOWTO uses the standard Python interpreter for its examples. First, run " "the Python interpreter, import the :mod:`re` module, and compile a RE::" msgstr "" +"ਇਸ HOWTO ਵਿੱਚ ਉਦਾਹਰਨਾਂ ਲਈ ਮਿਆਰੀ Python interpreter ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਗਈ ਹੈ। ਪਹਿਲਾਂ " +"Python interpreter ਚਲਾਓ, :mod:`re` ਮੋਡੀਊਲ import ਕਰੋ ਅਤੇ ਇੱਕ RE compile ਕਰੋ::" msgid "" ">>> import re\n" @@ -600,6 +800,10 @@ msgid "" ">>> p\n" "re.compile('[a-z]+')" msgstr "" +">>> import re\n" +">>> p = re.compile('[a-z]+')\n" +">>> p\n" +"re.compile('[a-z]+')" msgid "" "Now, you can try matching various strings against the RE ``[a-z]+``. An " @@ -608,12 +812,20 @@ msgid "" "case, which will cause the interpreter to print no output. You can " "explicitly print the result of :meth:`!search` to make this clear. ::" msgstr "" +"ਹੁਣ ਤੁਸੀਂ RE ``[a-z]+`` ਦੇ ਵਿਰੁੱਧ ਵੱਖ-ਵੱਖ ਸਟਰਿੰਗਾਂ ਨੂੰ ਮੈਚ ਕਰਕੇ ਵੇਖ ਸਕਦੇ ਹੋ। ਇੱਕ ਖਾਲੀ ਸਟਰਿੰਗ " +"ਨਾਲ ਕੋਈ ਮੈਚ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ, ਕਿਉਂਕਿ ``+`` ਦਾ ਅਰਥ ਹੈ \"ਇੱਕ ਜਾਂ ਵੱਧ ਦੁਹਰਾਵਾਂ\"। ਇਸ ਸਥਿਤੀ " +"ਵਿੱਚ :meth:`~re.Pattern.search` ``None`` ਵਾਪਸ ਕਰੇਗਾ, ਜਿਸ ਕਾਰਨ interpreter ਕੋਈ " +"output ਨਹੀਂ ਦਿਖਾਏਗਾ। ਇਸਨੂੰ ਸਪਸ਼ਟ ਕਰਨ ਲਈ ਤੁਸੀਂ :meth:`!search` ਦਾ ਨਤੀਜਾ ਸਿੱਧਾ print " +"ਕਰ ਸਕਦੇ ਹੋ। ::" msgid "" ">>> p.search(\"\")\n" ">>> print(p.search(\"\"))\n" "None" msgstr "" +">>> p.search(\"\")\n" +">>> print(p.search(\"\"))\n" +"None" msgid "" "Now, let's try it on a string that it should match, such as ``tempo``. In " @@ -621,45 +833,55 @@ msgid "" "`, so you should store the result in a variable for later " "use. ::" msgstr "" +"ਹੁਣ ਇਸਨੂੰ ਇੱਕ ਅਜਿਹੀ ਸਟਰਿੰਗ ਉੱਤੇ ਅਜ਼ਮਾਈਏ ਜਿਸ ਨਾਲ ਇਹ ਮੈਚ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ, ਜਿਵੇਂ ``tempo``। " +"ਇਸ ਸਥਿਤੀ ਵਿੱਚ :meth:`~re.Pattern.search` ਇੱਕ :ref:`match object ` ਵਾਪਸ ਕਰੇਗਾ, ਇਸ ਲਈ ਨਤੀਜੇ ਨੂੰ ਬਾਅਦ ਵਿੱਚ ਵਰਤਣ ਲਈ ਇੱਕ variable ਵਿੱਚ ਸਟੋਰ ਕਰਨਾ " +"ਚਾਹੀਦਾ ਹੈ। ::" msgid "" ">>> m = p.search('tempo')\n" ">>> m\n" "" msgstr "" +">>> m = p.search('tempo')\n" +">>> m\n" +"" msgid "" "Now you can query the :ref:`match object ` for information " "about the matching string. Match object instances also have several methods " "and attributes; the most important ones are:" msgstr "" +"ਹੁਣ ਤੁਸੀਂ matching string ਬਾਰੇ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ :ref:`match object ` ਨੂੰ ਪੁੱਛ ਸਕਦੇ ਹੋ। Match object instances ਵਿੱਚ ਕਈ methods ਅਤੇ attributes ਹੁੰਦੇ " +"ਹਨ; ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਇਹ ਹਨ:" msgid "``group()``" -msgstr "" +msgstr "``group()``" msgid "Return the string matched by the RE" -msgstr "" +msgstr "RE ਦੁਆਰਾ ਮੈਚ ਕੀਤੀ ਗਈ ਸਟਰਿੰਗ ਵਾਪਸ ਕਰਦਾ ਹੈ" msgid "``start()``" -msgstr "" +msgstr "``start()``" msgid "Return the starting position of the match" -msgstr "" +msgstr "ਮੈਚ ਦੀ ਸ਼ੁਰੂਆਤੀ ਸਥਿਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ" msgid "``end()``" -msgstr "" +msgstr "``end()``" msgid "Return the ending position of the match" -msgstr "" +msgstr "ਮੈਚ ਦੀ ਅੰਤਿਮ ਸਥਿਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ" msgid "``span()``" -msgstr "" +msgstr "``span()``" msgid "Return a tuple containing the (start, end) positions of the match" -msgstr "" +msgstr "ਮੈਚ ਦੀਆਂ (start, end) ਸਥਿਤੀਆਂ ਵਾਲਾ ਇੱਕ tuple ਵਾਪਸ ਕਰਦਾ ਹੈ" msgid "Trying these methods will soon clarify their meaning::" -msgstr "" +msgstr "ਇਨ੍ਹਾਂ methods ਨੂੰ ਅਜ਼ਮਾਉਣ ਨਾਲ ਉਨ੍ਹਾਂ ਦਾ ਅਰਥ ਤੁਰੰਤ ਸਪਸ਼ਟ ਹੋ ਜਾਵੇਗਾ::" msgid "" ">>> m.group()\n" @@ -669,16 +891,30 @@ msgid "" ">>> m.span()\n" "(0, 5)" msgstr "" +">>> m.group()\n" +"'tempo'\n" +">>> m.start(), m.end()\n" +"(0, 5)\n" +">>> m.span()\n" +"(0, 5)" msgid "" -":meth:`~re.Match.group` returns the substring that was matched by the RE. :" -"meth:`~re.Match.start` and :meth:`~re.Match.end` return the starting and " -"ending index of the match. :meth:`~re.Match.span` returns both start and end " -"indexes in a single tuple. The :meth:`~re.Pattern.search` method of patterns " -"scans through the string, so the match may not start at zero. However, the :" -"meth:`~re.Pattern.prefixmatch` method only checks if the RE matches at the " -"start of a string, so :meth:`!start` will always be zero in that case. ::" +":meth:`~re.Match.group` returns the substring that was matched by the " +"RE. :meth:`~re.Match.start` and :meth:`~re.Match.end` return the starting " +"and ending index of the match. :meth:`~re.Match.span` returns both start and " +"end indexes in a single tuple. The :meth:`~re.Pattern.search` method of " +"patterns scans through the string, so the match may not start at zero. " +"However, the :meth:`~re.Pattern.prefixmatch` method only checks if the RE " +"matches at the start of a string, so :meth:`!start` will always be zero in " +"that case. ::" msgstr "" +":meth:`~re.Match.group` ਉਹ substring ਵਾਪਸ ਕਰਦਾ ਹੈ ਜਿਸ ਨਾਲ RE ਮੈਚ ਹੋਈ " +"ਸੀ। :meth:`~re.Match.start` ਅਤੇ :meth:`~re.Match.end` ਮੈਚ ਦੇ ਸ਼ੁਰੂ ਅਤੇ ਅੰਤ ਦੇ index " +"ਵਾਪਸ ਕਰਦੇ ਹਨ। :meth:`~re.Match.span` ਇੱਕ ਹੀ tuple ਵਿੱਚ ਦੋਵੇਂ index ਵਾਪਸ ਕਰਦਾ ਹੈ। " +"Patterns ਦੀ :meth:`~re.Pattern.search` method ਪੂਰੀ ਸਟਰਿੰਗ ਵਿੱਚ ਖੋਜ ਕਰਦੀ ਹੈ, ਇਸ ਲਈ " +"ਮੈਚ ਲਾਜ਼ਮੀ ਨਹੀਂ ਕਿ index 0 ਤੋਂ ਸ਼ੁਰੂ ਹੋਵੇ। ਹਾਲਾਂਕਿ :meth:`~re.Pattern.prefixmatch` ਸਿਰਫ਼ " +"ਇਹ ਜਾਂਚਦੀ ਹੈ ਕਿ RE ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਮੈਚ ਕਰਦੀ ਹੈ ਜਾਂ ਨਹੀਂ, ਇਸ ਲਈ ਉਸ ਸਥਿਤੀ ਵਿੱਚ :meth:`!" +"start` ਹਮੇਸ਼ਾਂ 0 ਹੋਵੇਗਾ। ::" msgid "" ">>> m = p.search('::: message'); print(m)\n" @@ -690,12 +926,23 @@ msgid "" ">>> print(p.prefixmatch('::: message'))\n" "None" msgstr "" +">>> m = p.search('::: message'); print(m)\n" +"\n" +">>> m.group()\n" +"'message'\n" +">>> m.span()\n" +"(4, 11)\n" +">>> print(p.prefixmatch('::: message'))\n" +"None" msgid "" "In actual programs, the most common style is to store the :ref:`match object " "` in a variable, and then check if it was ``None``. This " "usually looks like::" msgstr "" +"ਅਸਲ ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਸਭ ਤੋਂ ਆਮ ਤਰੀਕਾ ਇਹ ਹੁੰਦਾ ਹੈ ਕਿ :ref:`match object ` ਨੂੰ ਇੱਕ variable ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਜਾਵੇ ਅਤੇ ਫਿਰ ਜਾਂਚਿਆ ਜਾਵੇ ਕਿ ਕੀ ਉਹ ``None`` " +"ਹੈ। ਆਮ ਤੌਰ 'ਤੇ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ::" msgid "" "p = re.compile( ... )\n" @@ -705,17 +952,28 @@ msgid "" "else:\n" " print('No match')" msgstr "" +"p = re.compile( ... )\n" +"m = p.search( 'string goes here' )\n" +"if m:\n" +"print('Match found: ', m.group())\n" +"else:\n" +"print('No match')" msgid "" -"Two pattern methods return all of the matches for a pattern. :meth:`~re." -"Pattern.findall` returns a list of matching strings::" +"Two pattern methods return all of the matches for a " +"pattern. :meth:`~re.Pattern.findall` returns a list of matching strings::" msgstr "" +"Pattern ਦੀਆਂ ਦੋ methods ਕਿਸੇ pattern ਲਈ ਸਾਰੇ ਮੈਚ ਵਾਪਸ ਕਰਦੀਆਂ " +"ਹਨ। :meth:`~re.Pattern.findall` ਮੈਚ ਹੋਈਆਂ ਸਟਰਿੰਗਾਂ ਦੀ ਇੱਕ list ਵਾਪਸ ਕਰਦੀ ਹੈ::" msgid "" ">>> p = re.compile(r'\\d+')\n" ">>> p.findall('12 drummers drumming, 11 pipers piping, 10 lords a-leaping')\n" "['12', '11', '10']" msgstr "" +">>> p = re.compile(r'\\d+')\n" +">>> p.findall('12 drummers drumming, 11 pipers piping, 10 lords a-leaping')\n" +"['12', '11', '10']" msgid "" "The ``r`` prefix, making the literal a raw string literal, is needed in this " @@ -724,13 +982,21 @@ msgid "" "in a :exc:`SyntaxWarning` and will eventually become a :exc:`SyntaxError`. " "See :ref:`the-backslash-plague`." msgstr "" +"ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ ``r`` prefix, ਜੋ literal ਨੂੰ raw string literal ਬਣਾਉਂਦਾ ਹੈ, ਲਾਜ਼ਮੀ ਹੈ " +"ਕਿਉਂਕਿ ਇੱਕ ਆਮ \"cooked\" string literal ਵਿੱਚ ਮੌਜੂਦ escape sequences ਜਿਨ੍ਹਾਂ ਨੂੰ " +"Python ਨਹੀਂ ਪਛਾਣਦਾ ਭਾਵੇਂ regular expressions ਪਛਾਣ ਲੈਣ, ਹੁਣ :exc:`SyntaxWarning` " +"ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ ਅਤੇ ਭਵਿੱਖ ਵਿੱਚ :exc:`SyntaxError` ਬਣ ਜਾਣਗੀਆਂ। :ref:`the-backslash-" +"plague` ਵੇਖੋ।" msgid "" ":meth:`~re.Pattern.findall` has to create the entire list before it can be " "returned as the result. The :meth:`~re.Pattern.finditer` method returns a " -"sequence of :ref:`match object ` instances as an :term:" -"`iterator`::" +"sequence of :ref:`match object ` instances as " +"an :term:`iterator`::" msgstr "" +":meth:`~re.Pattern.findall` ਨੂੰ ਨਤੀਜਾ ਵਾਪਸ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪੂਰੀ list ਬਣਾਉਣੀ ਪੈਂਦੀ " +"ਹੈ। :meth:`~re.Pattern.finditer` method ਇੱਕ :term:`iterator` ਦੇ ਰੂਪ " +"ਵਿੱਚ :ref:`match object ` instances ਦੀ ਲੜੀ ਵਾਪਸ ਕਰਦੀ ਹੈ::" msgid "" ">>> iterator = p.finditer('12 drummers drumming, 11 ... 10 ...')\n" @@ -743,18 +1009,33 @@ msgid "" "(22, 24)\n" "(29, 31)" msgstr "" +">>> iterator = p.finditer('12 drummers drumming, 11 ... 10 ...')\n" +">>> iterator\n" +"\n" +">>> for match in iterator:\n" +"... print(match.span())\n" +"...\n" +"(0, 2)\n" +"(22, 24)\n" +"(29, 31)" msgid "Module-level functions" -msgstr "" +msgstr "ਮੋਡੀਊਲ-ਪੱਧਰੀ ਫੰਕਸ਼ਨ" msgid "" -"You don't have to create a pattern object and call its methods; the :mod:" -"`re` module also provides top-level functions called :func:`~re.search`, :" -"func:`~re.prefixmatch`, :func:`~re.findall`, :func:`~re.sub`, and so forth. " -"These functions take the same arguments as the corresponding pattern method " -"with the RE string added as the first argument, and still return either " -"``None`` or a :ref:`match object ` instance. ::" +"You don't have to create a pattern object and call its methods; " +"the :mod:`re` module also provides top-level functions " +"called :func:`~re.search`, :func:`~re.prefixmatch`, :func:`~re.findall`, :func:`~re.sub`, " +"and so forth. These functions take the same arguments as the corresponding " +"pattern method with the RE string added as the first argument, and still " +"return either ``None`` or a :ref:`match object ` instance. ::" msgstr "" +"ਤੁਹਾਨੂੰ pattern object ਬਣਾਕੇ ਉਸ ਦੀਆਂ methods ਨੂੰ ਕਾਲ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ; :mod:`re` " +"ਮੋਡੀਊਲ :func:`~re.search`, :func:`~re.prefixmatch`, :func:`~re.findall`, :func:`~re.sub` " +"ਆਦਿ top-level functions ਵੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਹ functions ਸੰਬੰਧਿਤ pattern method " +"ਵਾਲੇ ਹੀ arguments ਲੈਂਦੀਆਂ ਹਨ, ਸਿਰਫ਼ RE string ਨੂੰ ਪਹਿਲੇ argument ਵਜੋਂ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ " +"ਇਹ ਵੀ ``None`` ਜਾਂ :ref:`match object ` instance ਵਾਪਸ ਕਰਦੀਆਂ " +"ਹਨ। ::" msgid "" ">>> print(re.prefixmatch(r'From\\s+', 'Fromage amk'))\n" @@ -762,6 +1043,10 @@ msgid "" ">>> re.prefixmatch(r'From\\s+', 'From amk Thu May 14 19:12:10 1998')\n" "" msgstr "" +">>> print(re.prefixmatch(r'From\\s+', 'Fromage amk'))\n" +"None\n" +">>> re.prefixmatch(r'From\\s+', 'From amk Thu May 14 19:12:10 1998')\n" +"" msgid "" "Under the hood, these functions simply create a pattern object for you and " @@ -769,6 +1054,9 @@ msgid "" "cache, so future calls using the same RE won't need to parse the pattern " "again and again." msgstr "" +"ਅੰਦਰੂਨੀ ਤੌਰ 'ਤੇ, ਇਹ functions ਤੁਹਾਡੇ ਲਈ ਇੱਕ pattern object ਬਣਾਉਂਦੀਆਂ ਹਨ ਅਤੇ ਉਸ ਉੱਤੇ ਉਚਿਤ " +"method ਨੂੰ ਕਾਲ ਕਰਦੀਆਂ ਹਨ। ਇਹ compiled object ਨੂੰ cache ਵਿੱਚ ਵੀ ਸਟੋਰ ਕਰਦੀਆਂ ਹਨ, ਇਸ ਲਈ " +"ਇੱਕੋ RE ਨਾਲ ਭਵਿੱਖ ਦੀਆਂ calls ਨੂੰ pattern ਨੂੰ ਮੁੜ-ਮੁੜ parse ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਪਵੇਗੀ।" msgid "" "Should you use these module-level functions, or should you get the pattern " @@ -776,70 +1064,87 @@ msgid "" "pre-compiling it will save a few function calls. Outside of loops, there's " "not much difference thanks to the internal cache." msgstr "" +"ਕੀ ਤੁਹਾਨੂੰ ਇਹ module-level functions ਵਰਤਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ ਜਾਂ pattern ਪ੍ਰਾਪਤ ਕਰਕੇ ਉਸ " +"ਦੀਆਂ methods ਨੂੰ ਖੁਦ ਕਾਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ? ਜੇ ਤੁਸੀਂ ਕਿਸੇ loop ਦੇ ਅੰਦਰ regex ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ " +"ਹੋ, ਤਾਂ ਉਸਨੂੰ ਪਹਿਲਾਂ compile ਕਰ ਲੈਣਾ ਕੁਝ function calls ਬਚਾ ਸਕਦਾ ਹੈ। Loops ਤੋਂ ਬਾਹਰ, " +"internal cache ਕਰਕੇ ਦੋਹਾਂ ਤਰੀਕਿਆਂ ਵਿੱਚ ਬਹੁਤ ਘੱਟ ਫ਼ਰਕ ਹੁੰਦਾ ਹੈ।" msgid "Compilation flags" -msgstr "" +msgstr "ਕੰਪਾਈਲੇਸ਼ਨ ਫਲੈਗ" msgid "" "Compilation flags let you modify some aspects of how regular expressions " "work. Flags are available in the :mod:`re` module under two names, a long " -"name such as :const:`IGNORECASE` and a short, one-letter form such as :const:" -"`I`. (If you're familiar with Perl's pattern modifiers, the one-letter " -"forms use the same letters; the short form of :const:`re.VERBOSE` is :const:" -"`re.X`, for example.) Multiple flags can be specified by bitwise OR-ing " -"them; ``re.I | re.M`` sets both the :const:`I` and :const:`M` flags, for " -"example." -msgstr "" +"name such as :const:`IGNORECASE` and a short, one-letter form such " +"as :const:`I`. (If you're familiar with Perl's pattern modifiers, the one-" +"letter forms use the same letters; the short form of :const:`re.VERBOSE` " +"is :const:`re.X`, for example.) Multiple flags can be specified by bitwise " +"OR-ing them; ``re.I | re.M`` sets both the :const:`I` and :const:`M` flags, " +"for example." +msgstr "" +"Compilation flags ਤੁਹਾਨੂੰ regular expressions ਦੇ ਕੰਮ ਕਰਨ ਦੇ ਕੁਝ ਪੱਖਾਂ ਨੂੰ ਬਦਲਣ ਦੀ ਆਗਿਆ " +"ਦਿੰਦੀਆਂ ਹਨ। Flags :mod:`re` ਮੋਡੀਊਲ ਵਿੱਚ ਦੋ ਨਾਵਾਂ ਨਾਲ ਉਪਲਬਧ ਹੁੰਦੀਆਂ ਹਨ: ਇੱਕ ਲੰਮਾ ਨਾਮ " +"ਜਿਵੇਂ :const:`IGNORECASE` ਅਤੇ ਇੱਕ ਛੋਟਾ, ਇਕ-ਅੱਖਰੀ ਰੂਪ ਜਿਵੇਂ :const:`I`। (ਜੇ ਤੁਸੀਂ Perl ਦੇ " +"pattern modifiers ਨਾਲ ਜਾਣੂ ਹੋ, ਤਾਂ ਇਕ-ਅੱਖਰੀ ਰੂਪ ਉਹੀ ਅੱਖਰ ਵਰਤਦੇ ਹਨ; ਉਦਾਹਰਨ " +"ਲਈ :const:`re.VERBOSE` ਦਾ ਛੋਟਾ ਰੂਪ :const:`re.X` ਹੈ।) ਕਈ flags ਨੂੰ bitwise OR ਦੀ " +"ਵਰਤੋਂ ਕਰਕੇ ਇਕੱਠੇ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ; ਉਦਾਹਰਨ ਲਈ ``re.I | re.M`` ਦੋਵੇਂ :const:`I` " +"ਅਤੇ :const:`M` flags ਸੈੱਟ ਕਰਦਾ ਹੈ।" msgid "" "Here's a table of the available flags, followed by a more detailed " "explanation of each one." msgstr "" +"ਹੇਠਾਂ ਉਪਲਬਧ flags ਦੀ ਇੱਕ ਸਾਰਣੀ ਦਿੱਤੀ ਗਈ ਹੈ, ਜਿਸ ਤੋਂ ਬਾਅਦ ਹਰ ਇੱਕ ਦੀ ਹੋਰ ਵਿਸਤ੍ਰਿਤ ਵਿਆਖਿਆ " +"ਦਿੱਤੀ ਗਈ ਹੈ।" msgid "Flag" -msgstr "" +msgstr "Flag" msgid "Meaning" -msgstr "" +msgstr "ਅਰਥ" msgid ":const:`ASCII`, :const:`A`" -msgstr "" +msgstr ":const:`ASCII`:const:`A`" msgid "" "Makes several escapes like ``\\w``, ``\\b``, ``\\s`` and ``\\d`` match only " "on ASCII characters with the respective property." msgstr "" +"``\\w``, ``\\b``, ``\\s`` ਅਤੇ ``\\d`` ਵਰਗੀਆਂ ਕਈ escape sequences ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ " +"ਬਦਲਦਾ ਹੈ ਕਿ ਉਹ ਸਿਰਫ਼ ਸੰਬੰਧਿਤ ਗੁਣ ਵਾਲੇ ASCII ਅੱਖਰਾਂ ਨਾਲ ਹੀ ਮੈਚ ਕਰਨ।" msgid ":const:`DOTALL`, :const:`S`" -msgstr "" +msgstr ":const:`DOTALL`:const:`S`" msgid "Make ``.`` match any character, including newlines." -msgstr "" +msgstr "``.`` ਨੂੰ newline ਸਮੇਤ ਕਿਸੇ ਵੀ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਨ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ।" msgid ":const:`IGNORECASE`, :const:`I`" -msgstr "" +msgstr ":const:`IGNORECASE`:const:`I`" msgid "Do case-insensitive matches." -msgstr "" +msgstr "Case-insensitive ਮੈਚਿੰਗ ਕਰਦਾ ਹੈ।" msgid ":const:`LOCALE`, :const:`L`" -msgstr "" +msgstr ":const:`LOCALE`:const:`L`" msgid "Do a locale-aware match." -msgstr "" +msgstr "Locale-aware ਮੈਚਿੰਗ ਕਰਦਾ ਹੈ।" msgid ":const:`MULTILINE`, :const:`M`" -msgstr "" +msgstr ":const:`MULTILINE`:const:`M`" msgid "Multi-line matching, affecting ``^`` and ``$``." -msgstr "" +msgstr "ਬਹੁ-ਲਾਈਨ ਮੈਚਿੰਗ, ਜੋ ``^`` ਅਤੇ ``$`` ਦੇ ਵਿਹਾਰ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੀ ਹੈ।" msgid ":const:`VERBOSE`, :const:`X` (for 'extended')" -msgstr "" +msgstr ":const:`VERBOSE`, :const:`X` ('extended' ਲਈ)" msgid "" "Enable verbose REs, which can be organized more cleanly and understandably." msgstr "" +"ਵਿਸਤ੍ਰਿਤ REs ਨੂੰ ਸਮਰੱਥ ਕਰਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਹੋਰ ਸਾਫ਼ ਅਤੇ ਸਮਝਣਯੋਗ ਢੰਗ ਨਾਲ ਵਿਵਸਥਿਤ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ।" msgid "" "Perform case-insensitive matching; character class and literal strings will " @@ -847,19 +1152,31 @@ msgid "" "letters, too. Full Unicode matching also works unless the :const:`ASCII` " "flag is used to disable non-ASCII matches. When the Unicode patterns ``[a-" "z]`` or ``[A-Z]`` are used in combination with the :const:`IGNORECASE` flag, " -"they will match the 52 ASCII letters and 4 additional non-ASCII letters: " -"'İ' (U+0130, Latin capital letter I with dot above), 'ı' (U+0131, Latin " -"small letter dotless i), 'ſ' (U+017F, Latin small letter long s) and " -"'K' (U+212A, Kelvin sign). ``Spam`` will match ``'Spam'``, ``'spam'``, " -"``'spAM'``, or ``'ſpam'`` (the latter is matched only in Unicode mode). This " -"lowercasing doesn't take the current locale into account; it will if you " -"also set the :const:`LOCALE` flag." -msgstr "" +"they will match the 52 ASCII letters and 4 additional non-ASCII letters: 'İ' " +"(U+0130, Latin capital letter I with dot above), 'ı' (U+0131, Latin small " +"letter dotless i), 'ſ' (U+017F, Latin small letter long s) and 'K' (U+212A, " +"Kelvin sign). ``Spam`` will match ``'Spam'``, ``'spam'``, ``'spAM'``, or " +"``'ſpam'`` (the latter is matched only in Unicode mode). This lowercasing " +"doesn't take the current locale into account; it will if you also set " +"the :const:`LOCALE` flag." +msgstr "" +"Case-insensitive ਮੈਚਿੰਗ ਕਰਦਾ ਹੈ; character classes ਅਤੇ literal strings case ਨੂੰ " +"ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਦੇ ਹੋਏ ਅੱਖਰਾਂ ਨਾਲ ਮੈਚ ਕਰਨਗੀਆਂ। ਉਦਾਹਰਨ ਲਈ, ``[A-Z]`` ਛੋਟੇ ਅੱਖਰਾਂ ਨਾਲ ਵੀ ਮੈਚ " +"ਕਰੇਗਾ। ਜਦ ਤੱਕ :const:`ASCII` flag ਦੀ ਵਰਤੋਂ ਕਰਕੇ non-ASCII ਮੈਚਿੰਗ ਨੂੰ ਅਸਮਰੱਥ ਨਾ ਕੀਤਾ " +"ਜਾਵੇ, ਪੂਰੀ Unicode ਮੈਚਿੰਗ ਵੀ ਕੰਮ ਕਰਦੀ ਹੈ। ਜਦੋਂ Unicode patterns ``[a-z]`` ਜਾਂ ``[A-" +"Z]`` ਨੂੰ :const:`IGNORECASE` flag ਨਾਲ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ 52 ASCII ਅੱਖਰਾਂ ਅਤੇ 4 " +"ਵਾਧੂ non-ASCII ਅੱਖਰਾਂ ਨਾਲ ਵੀ ਮੈਚ ਕਰਦੇ ਹਨ: 'İ' (U+0130), 'ı' (U+0131), 'ſ' " +"(U+017F) ਅਤੇ 'K' (U+212A)। ``Spam`` ``'Spam'``, ``'spam'``, ``'spAM'`` ਅਤੇ " +"``'ſpam'`` ਨਾਲ ਮੈਚ ਕਰੇਗਾ (ਆਖਰੀ ਵਾਲਾ ਸਿਰਫ਼ Unicode mode ਵਿੱਚ)। ਇਹ lowercasing " +"ਮੌਜੂਦਾ locale ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਨਹੀਂ ਰੱਖਦੀ; ਜੇ ਤੁਸੀਂ :const:`LOCALE` flag ਵੀ ਸੈੱਟ ਕਰੋ ਤਾਂ " +"locale ਨੂੰ ਵੀ ਧਿਆਨ ਵਿੱਚ ਰੱਖਿਆ ਜਾਵੇਗਾ।" msgid "" "Make ``\\w``, ``\\W``, ``\\b``, ``\\B`` and case-insensitive matching " "dependent on the current locale instead of the Unicode database." msgstr "" +"``\\w``, ``\\W``, ``\\b``, ``\\B`` ਅਤੇ case-insensitive ਮੈਚਿੰਗ ਨੂੰ Unicode ਡਾਟਾਬੇਸ " +"ਦੀ ਬਜਾਏ ਮੌਜੂਦਾ locale 'ਤੇ ਨਿਰਭਰ ਬਣਾਉਂਦਾ ਹੈ।" msgid "" "Locales are a feature of the C library intended to help in writing programs " @@ -878,11 +1195,27 @@ msgid "" "matching is already enabled by default in Python 3 for Unicode (str) " "patterns, and it is able to handle different locales/languages." msgstr "" +"Locales C ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਇੱਕ ਵਿਸ਼ੇਸ਼ਤਾ ਹਨ, ਜਿਨ੍ਹਾਂ ਦਾ ਉਦੇਸ਼ ਅਜਿਹੇ ਪ੍ਰੋਗਰਾਮ ਲਿਖਣ ਵਿੱਚ ਮਦਦ " +"ਕਰਨਾ ਹੈ ਜੋ ਭਾਸ਼ਾਈ ਅੰਤਰਾਂ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖਣ। ਉਦਾਹਰਨ ਲਈ, ਜੇ ਤੁਸੀਂ encoded French text " +"ਪ੍ਰੋਸੈਸ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਚਾਹੋਗੇ ਕਿ ``\\w+`` ਸ਼ਬਦਾਂ ਨਾਲ ਮੈਚ ਕਰੇ, ਪਰ bytes patterns ਵਿੱਚ " +"``\\w`` ਸਿਰਫ਼ ``[A-Za-z]`` character class ਨਾਲ ਹੀ ਮੈਚ ਕਰਦਾ ਹੈ; ਇਹ ``é`` ਜਾਂ " +"``ç`` ਨਾਲ ਸੰਬੰਧਿਤ bytes ਨਾਲ ਮੈਚ ਨਹੀਂ ਕਰੇਗਾ। ਜੇ ਤੁਹਾਡਾ ਸਿਸਟਮ ਠੀਕ ਤਰ੍ਹਾਂ ਸੰਰਚਿਤ ਹੈ ਅਤੇ " +"French locale ਚੁਣਿਆ ਗਿਆ ਹੈ, ਤਾਂ ਕੁਝ C functions ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਦੱਸਣਗੀਆਂ ਕਿ ``é`` ਨਾਲ " +"ਸੰਬੰਧਿਤ byte ਨੂੰ ਵੀ ਇੱਕ ਅੱਖਰ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। Regular expression compile ਕਰਦੇ " +"ਸਮੇਂ :const:`LOCALE` flag ਸੈੱਟ ਕਰਨ ਨਾਲ compiled object ``\\w`` ਲਈ ਇਨ੍ਹਾਂ C " +"functions ਦੀ ਵਰਤੋਂ ਕਰੇਗਾ। ਇਹ ਕੁਝ ਹੌਲਾ ਹੈ, ਪਰ ``\\w+`` ਨੂੰ French ਸ਼ਬਦਾਂ ਨਾਲ ਉਮੀਦ ਅਨੁਸਾਰ " +"ਮੈਚ ਕਰਨ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ। Python 3 ਵਿੱਚ ਇਸ flag ਦੀ ਵਰਤੋਂ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ " +"ਕਿਉਂਕਿ locale mechanism ਕਾਫ਼ੀ ਅਣਭਰੋਸੇਯੋਗ ਹੈ, ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ \"culture\" ਨੂੰ " +"ਸੰਭਾਲਦਾ ਹੈ ਅਤੇ ਸਿਰਫ਼ 8-bit locales ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ। Python 3 ਵਿੱਚ Unicode (str) " +"patterns ਲਈ Unicode matching ਪਹਿਲਾਂ ਹੀ ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰੱਥ ਹੈ ਅਤੇ ਵੱਖ-ਵੱਖ ਭਾਸ਼ਾਵਾਂ ਅਤੇ " +"locales ਨੂੰ ਸੰਭਾਲ ਸਕਦੀ ਹੈ।" msgid "" "(``^`` and ``$`` haven't been explained yet; they'll be introduced in " "section :ref:`more-metacharacters`.)" msgstr "" +"(``^`` ਅਤੇ ``$`` ਬਾਰੇ ਹਾਲੇ ਤੱਕ ਵਿਆਖਿਆ ਨਹੀਂ ਕੀਤੀ ਗਈ; ਇਨ੍ਹਾਂ ਨੂੰ :ref:`more-" +"metacharacters` ਭਾਗ ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਜਾਵੇਗਾ।)" msgid "" "Usually ``^`` matches only at the beginning of the string, and ``$`` matches " @@ -893,17 +1226,27 @@ msgid "" "matches either at the end of the string and at the end of each line " "(immediately preceding each newline)." msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ ``^`` ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਅਤੇ ``$`` ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਵਿੱਚ (ਅਤੇ ਜੇ ਅੰਤ ਵਿੱਚ " +"newline ਹੋਵੇ ਤਾਂ ਉਸ ਤੋਂ ਤੁਰੰਤ ਪਹਿਲਾਂ) ਮੈਚ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਇਹ flag ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ " +"``^`` ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਅਤੇ ਸਟਰਿੰਗ ਦੇ ਅੰਦਰ ਹਰ newline ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ਵੀ ਮੈਚ ਕਰਦਾ ਹੈ। ਇਸੇ " +"ਤਰ੍ਹਾਂ, ``$`` metacharacter ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਅਤੇ ਹਰ ਲਾਈਨ ਦੇ ਅੰਤ (ਹਰ newline ਤੋਂ ਤੁਰੰਤ " +"ਪਹਿਲਾਂ) ਦੋਹਾਂ ਥਾਵਾਂ 'ਤੇ ਮੈਚ ਕਰਦਾ ਹੈ।" msgid "" "Makes the ``'.'`` special character match any character at all, including a " "newline; without this flag, ``'.'`` will match anything *except* a newline." msgstr "" +"``'.'`` ਖਾਸ ਅੱਖਰ ਨੂੰ newline ਸਮੇਤ ਕਿਸੇ ਵੀ ਅੱਖਰ ਨਾਲ ਮੈਚ ਕਰਨ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ; ਇਸ flag ਤੋਂ " +"ਬਿਨਾਂ ``'.'`` newline ਤੋਂ ਇਲਾਵਾ ਹਰ ਚੀਜ਼ ਨਾਲ ਮੈਚ ਕਰਦਾ ਹੈ।" msgid "" "Make ``\\w``, ``\\W``, ``\\b``, ``\\B``, ``\\s`` and ``\\S`` perform ASCII-" "only matching instead of full Unicode matching. This is only meaningful for " "Unicode patterns, and is ignored for byte patterns." msgstr "" +"``\\w``, ``\\W``, ``\\b``, ``\\B``, ``\\s`` ਅਤੇ ``\\S`` ਨੂੰ ਪੂਰੀ Unicode " +"matching ਦੀ ਬਜਾਏ ਸਿਰਫ਼ ASCII matching ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰਦਾ ਹੈ। ਇਹ ਸਿਰਫ਼ Unicode " +"patterns ਲਈ ਹੀ ਅਰਥਪੂਰਨ ਹੈ ਅਤੇ byte patterns ਲਈ ਇਸਨੂੰ ਅਣਡਿੱਠਾ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "This flag allows you to write regular expressions that are more readable by " @@ -915,11 +1258,21 @@ msgid "" "comments are marked by a ``'#'`` that's neither in a character class nor " "preceded by an unescaped backslash." msgstr "" +"ਇਹ flag ਤੁਹਾਨੂੰ regular expressions ਨੂੰ ਹੋਰ ਪੜ੍ਹਨਯੋਗ ਢੰਗ ਨਾਲ ਲਿਖਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ " +"ਕਿਉਂਕਿ ਇਹ formatting ਵਿੱਚ ਵੱਧ ਲਚਕਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਇਹ flag ਸਮਰੱਥ ਹੋਵੇ, ਤਾਂ RE " +"string ਦੇ ਅੰਦਰ whitespace ਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਸਿਵਾਏ ਉਸ ਸਥਿਤੀ ਦੇ ਜਦੋਂ whitespace " +"character class ਦੇ ਅੰਦਰ ਹੋਵੇ ਜਾਂ ਕਿਸੇ unescaped backslash ਤੋਂ ਬਾਅਦ ਆਵੇ। ਇਸ ਨਾਲ ਤੁਸੀਂ RE " +"ਨੂੰ ਹੋਰ ਸਪਸ਼ਟ ਢੰਗ ਨਾਲ ਵਿਵਸਥਿਤ ਅਤੇ indent ਕਰ ਸਕਦੇ ਹੋ। ਇਹ flag ਤੁਹਾਨੂੰ RE ਦੇ ਅੰਦਰ comments " +"ਲਿਖਣ ਦੀ ਵੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ engine ਅਣਡਿੱਠਾ ਕਰ ਦਿੰਦਾ ਹੈ; comments ਨੂੰ ``'#'`` " +"ਨਾਲ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ, ਬਸ਼ਰਤੇ ਉਹ character class ਦੇ ਅੰਦਰ ਨਾ ਹੋਣ ਅਤੇ ਨਾ ਹੀ ਕਿਸੇ " +"unescaped backslash ਤੋਂ ਪਹਿਲਾਂ ਹੋਣ।" msgid "" "For example, here's a RE that uses :const:`re.VERBOSE`; see how much easier " "it is to read? ::" msgstr "" +"ਉਦਾਹਰਨ ਲਈ, ਇੱਥੇ :const:`re.VERBOSE` ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੀ ਇੱਕ RE ਦਿੱਤੀ ਗਈ ਹੈ; ਵੇਖੋ ਇਸਨੂੰ " +"ਪੜ੍ਹਨਾ ਕਿੰਨਾ ਆਸਾਨ ਹੈ। ::" msgid "" "charref = re.compile(r\"\"\"\n" @@ -932,38 +1285,58 @@ msgid "" " ; # Trailing semicolon\n" "\"\"\", re.VERBOSE)" msgstr "" +"charref = re.compile(r\"\"\"\n" +"&[#] # Start of a numeric entity reference\n" +"(\n" +"0[0-7]+ # Octal form\n" +"| [0-9]+ # Decimal form\n" +"| x[0-9a-fA-F]+ # Hexadecimal form\n" +")\n" +"; # Trailing semicolon\n" +"\"\"\", re.VERBOSE)" msgid "Without the verbose setting, the RE would look like this::" -msgstr "" +msgstr "Verbose setting ਤੋਂ ਬਿਨਾਂ, RE ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦੇਵੇਗੀ::" msgid "" "charref = re.compile(\"&#(0[0-7]+\"\n" " \"|[0-9]+\"\n" " \"|x[0-9a-fA-F]+);\")" msgstr "" +"charref = re.compile(\"&#(0[0-7]+\"\n" +"\"|[0-9]+\"\n" +"\"|x[0-9a-fA-F]+);\")" msgid "" "In the above example, Python's automatic concatenation of string literals " "has been used to break up the RE into smaller pieces, but it's still more " "difficult to understand than the version using :const:`re.VERBOSE`." msgstr "" +"ਉੱਪਰ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ RE ਨੂੰ ਛੋਟੇ ਭਾਗਾਂ ਵਿੱਚ ਵੰਡਣ ਲਈ Python ਦੀ string literals ਦੀ " +"automatic concatenation ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਗਈ ਹੈ, ਪਰ ਫਿਰ ਵੀ " +"ਇਹ :const:`re.VERBOSE` ਵਾਲੇ ਸੰਸਕਰਣ ਨਾਲੋਂ ਸਮਝਣ ਵਿੱਚ ਵੱਧ ਔਖੀ ਹੈ।" msgid "More pattern power" -msgstr "" +msgstr "ਪੈਟਰਨਾਂ ਦੀ ਵੱਧ ਤਾਕਤ" msgid "" "So far we've only covered a part of the features of regular expressions. In " "this section, we'll cover some new metacharacters, and how to use groups to " "retrieve portions of the text that was matched." msgstr "" +"ਹੁਣ ਤੱਕ ਅਸੀਂ regular expressions ਦੀਆਂ ਕੁਝ ਹੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬਾਰੇ ਗੱਲ ਕੀਤੀ ਹੈ। ਇਸ ਭਾਗ ਵਿੱਚ " +"ਅਸੀਂ ਕੁਝ ਨਵੇਂ metacharacters ਅਤੇ groups ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮੈਚ ਕੀਤੇ ਗਏ ਟੈਕਸਟ ਦੇ ਭਾਗਾਂ ਨੂੰ ਪ੍ਰਾਪਤ " +"ਕਰਨ ਦੇ ਤਰੀਕਿਆਂ ਬਾਰੇ ਸਿੱਖਾਂਗੇ।" msgid "More metacharacters" -msgstr "" +msgstr "ਹੋਰ metacharacters" msgid "" "There are some metacharacters that we haven't covered yet. Most of them " "will be covered in this section." msgstr "" +"ਕੁਝ metacharacters ਅਜੇ ਵੀ ਬਾਕੀ ਹਨ ਜਿਨ੍ਹਾਂ ਬਾਰੇ ਅਸੀਂ ਹਾਲੇ ਗੱਲ ਨਹੀਂ ਕੀਤੀ। ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ " +"ਜ਼ਿਆਦਾਤਰ ਇਸ ਭਾਗ ਵਿੱਚ ਸਮਝਾਏ ਜਾਣਗੇ।" msgid "" "Some of the remaining metacharacters to be discussed are :dfn:`zero-width " @@ -975,9 +1348,15 @@ msgid "" "once at a given location, they can obviously be matched an infinite number " "of times." msgstr "" +"ਬਾਕੀ ਰਹਿ ਗਏ ਕੁਝ metacharacters :dfn:`zero-width assertions` ਹਨ। ਇਹ engine ਨੂੰ " +"ਸਟਰਿੰਗ ਵਿੱਚ ਅੱਗੇ ਨਹੀਂ ਵਧਾਉਂਦੀਆਂ; ਇਸ ਦੀ ਬਜਾਏ, ਇਹ ਕੋਈ ਅੱਖਰ consume ਨਹੀਂ ਕਰਦੀਆਂ ਅਤੇ ਸਿਰਫ਼ " +"ਸਫਲ ਜਾਂ ਅਸਫਲ ਹੁੰਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ``\\b`` ਇੱਕ assertion ਹੈ ਜੋ ਇਹ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ " +"ਮੌਜੂਦਾ ਸਥਿਤੀ ਸ਼ਬਦ ਸੀਮਾ 'ਤੇ ਹੈ; ``\\b`` ਖੁਦ ਸਥਿਤੀ ਨੂੰ ਬਿਲਕੁਲ ਨਹੀਂ ਬਦਲਦੀ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ " +"zero-width assertions ਨੂੰ ਕਦੇ ਵੀ ਦੁਹਰਾਇਆ ਨਹੀਂ ਜਾਣਾ ਚਾਹੀਦਾ, ਕਿਉਂਕਿ ਜੇ ਇਹ ਇੱਕ ਸਥਾਨ 'ਤੇ " +"ਇੱਕ ਵਾਰ ਮੈਚ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਤਾਂ ਸਿਧਾਂਤਕ ਤੌਰ 'ਤੇ ਇਹ ਅਨੰਤ ਵਾਰ ਮੈਚ ਹੋ ਸਕਦੀਆਂ ਹਨ।" msgid "``|``" -msgstr "" +msgstr "``|``" msgid "" "Alternation, or the \"or\" operator. If *A* and *B* are regular " @@ -987,26 +1366,38 @@ msgid "" "``'Crow'`` or ``'Servo'``, not ``'Cro'``, a ``'w'`` or an ``'S'``, and " "``'ervo'``." msgstr "" +"Alternation, ਜਾਂ \"or\" operator। ਜੇ *A* ਅਤੇ *B* regular expressions ਹਨ, ਤਾਂ ``A|" +"B`` ਕਿਸੇ ਵੀ ਅਜਿਹੀ ਸਟਰਿੰਗ ਨਾਲ ਮੈਚ ਕਰੇਗਾ ਜੋ *A* ਜਾਂ *B* ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਨਾਲ ਮੈਚ ਕਰਦੀ ਹੋਵੇ। " +"``|`` ਦੀ precedence ਬਹੁਤ ਘੱਟ ਹੁੰਦੀ ਹੈ ਤਾਂ ਜੋ ਇਹ ਬਹੁ-ਅੱਖਰੀ ਸਟਰਿੰਗਾਂ ਨਾਲ ਵੀ ਉਚਿਤ ਢੰਗ ਨਾਲ " +"ਕੰਮ ਕਰ ਸਕੇ। ``Crow|Servo`` ਜਾਂ ਤਾਂ ``'Crow'`` ਜਾਂ ``'Servo'`` ਨਾਲ ਮੈਚ ਕਰੇਗਾ, ਨਾ ਕਿ " +"``'Cro'``, ``'w'``, ``'S'`` ਜਾਂ ``'ervo'`` ਨਾਲ।" msgid "" "To match a literal ``'|'``, use ``\\|``, or enclose it inside a character " "class, as in ``[|]``." msgstr "" +"ਇੱਕ literal ``'|'`` ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ ``\\|`` ਵਰਤੋ, ਜਾਂ ਇਸਨੂੰ character class ਦੇ ਅੰਦਰ " +"ਰੱਖੋ, ਜਿਵੇਂ ``[|]``।" msgid "``^``" -msgstr "" +msgstr "``^``" msgid "" "Matches at the beginning of lines. Unless the :const:`MULTILINE` flag has " -"been set, this will only match at the beginning of the string. In :const:" -"`MULTILINE` mode, this also matches immediately after each newline within " -"the string." +"been set, this will only match at the beginning of the string. " +"In :const:`MULTILINE` mode, this also matches immediately after each newline " +"within the string." msgstr "" +"ਲਾਈਨਾਂ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਮੈਚ ਕਰਦਾ ਹੈ। ਜਦ ਤੱਕ :const:`MULTILINE` flag ਸੈੱਟ ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, " +"ਇਹ ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਹੀ ਮੈਚ ਕਰੇਗਾ। :const:`MULTILINE` mode ਵਿੱਚ ਇਹ ਸਟਰਿੰਗ ਦੇ " +"ਅੰਦਰ ਹਰ newline ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ਵੀ ਮੈਚ ਕਰਦਾ ਹੈ।" msgid "" "For example, if you wish to match the word ``From`` only at the beginning of " "a line, the RE to use is ``^From``. ::" msgstr "" +"ਉਦਾਹਰਨ ਲਈ, ਜੇ ਤੁਸੀਂ ਸ਼ਬਦ ``From`` ਨਾਲ ਸਿਰਫ਼ ਲਾਈਨ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਮੈਚ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਵਰਤੀ " +"ਜਾਣ ਵਾਲੀ RE ``^From`` ਹੋਵੇਗੀ। ::" msgid "" ">>> print(re.search('^From', 'From Here to Eternity'))\n" @@ -1014,17 +1405,23 @@ msgid "" ">>> print(re.search('^From', 'Reciting From Memory'))\n" "None" msgstr "" +">>> print(re.search('^From', 'From Here to Eternity'))\n" +"\n" +">>> print(re.search('^From', 'Reciting From Memory'))\n" +"None" msgid "To match a literal ``'^'``, use ``\\^``." -msgstr "" +msgstr "ਇੱਕ literal ``'^'`` ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ ``\\^`` ਵਰਤੋ।" msgid "``$``" -msgstr "" +msgstr "``$``" msgid "" "Matches at the end of a line, which is defined as either the end of the " "string, or any location followed by a newline character. ::" msgstr "" +"ਲਾਈਨ ਦੇ ਅੰਤ 'ਤੇ ਮੈਚ ਕਰਦਾ ਹੈ, ਜਿਸਦਾ ਅਰਥ ਜਾਂ ਤਾਂ ਸਟਰਿੰਗ ਦਾ ਅੰਤ ਹੁੰਦਾ ਹੈ ਜਾਂ ਕੋਈ ਅਜਿਹੀ ਸਥਿਤੀ " +"ਜਿਸ ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ newline ਅੱਖਰ ਆਉਂਦਾ ਹੋਵੇ। ::" msgid "" ">>> print(re.search('}$', '{block}'))\n" @@ -1034,14 +1431,22 @@ msgid "" ">>> print(re.search('}$', '{block}\\n'))\n" "" msgstr "" +">>> print(re.search('}$', '{block}'))\n" +"\n" +">>> print(re.search('}$', '{block} '))\n" +"None\n" +">>> print(re.search('}$', '{block}\\n'))\n" +"" msgid "" "To match a literal ``'$'``, use ``\\$`` or enclose it inside a character " "class, as in ``[$]``." msgstr "" +"ਇੱਕ literal ``'$'`` ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ ``\\$`` ਵਰਤੋ ਜਾਂ ਇਸਨੂੰ character class ਦੇ ਅੰਦਰ " +"ਰੱਖੋ, ਜਿਵੇਂ ``[$]``।" msgid "``\\A``" -msgstr "" +msgstr "``\\A``" msgid "" "Matches only at the start of the string. When not in :const:`MULTILINE` " @@ -1050,21 +1455,25 @@ msgid "" "string, but ``^`` may match at any location inside the string that follows a " "newline character." msgstr "" +"ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਮੈਚ ਕਰਦਾ ਹੈ। ਜਦੋਂ :const:`MULTILINE` mode ਸਰਗਰਮ ਨਾ ਹੋਵੇ, ਤਾਂ " +"``\\A`` ਅਤੇ ``^`` ਅਸਲ ਵਿੱਚ ਇੱਕੋ ਜਿਹੇ ਹੁੰਦੇ ਹਨ। :const:`MULTILINE` mode ਵਿੱਚ ਇਹ ਵੱਖਰੇ " +"ਹਨ: ``\\A`` ਫਿਰ ਵੀ ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਹੀ ਮੈਚ ਕਰਦਾ ਹੈ, ਜਦਕਿ ``^`` ਸਟਰਿੰਗ ਦੇ ਅੰਦਰ " +"newline ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲੀਆਂ ਹੋਰ ਸਥਿਤੀਆਂ ਨਾਲ ਵੀ ਮੈਚ ਕਰ ਸਕਦਾ ਹੈ।" msgid "``\\z``" -msgstr "" +msgstr "``\\z``" msgid "Matches only at the end of the string." -msgstr "" +msgstr "ਸਿਰਫ਼ ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਵਿੱਚ ਮੈਚ ਕਰਦਾ ਹੈ।" msgid "``\\Z``" -msgstr "" +msgstr "``\\Z``" msgid "The same as ``\\z``. For compatibility with old Python versions." -msgstr "" +msgstr "``\\z`` ਦੇ ਸਮਾਨ ਹੈ। ਪੁਰਾਣੇ Python ਸੰਸਕਰਣਾਂ ਨਾਲ ਅਨੁਕੂਲਤਾ ਲਈ ਉਪਲਬਧ ਹੈ।" msgid "``\\b``" -msgstr "" +msgstr "``\\b``" msgid "" "Word boundary. This is a zero-width assertion that matches only at the " @@ -1072,11 +1481,16 @@ msgid "" "characters, so the end of a word is indicated by whitespace or a non-" "alphanumeric character." msgstr "" +"ਸ਼ਬਦ ਸੀਮਾ। ਇਹ ਇੱਕ zero-width assertion ਹੈ ਜੋ ਸਿਰਫ਼ ਕਿਸੇ ਸ਼ਬਦ ਦੇ ਸ਼ੁਰੂ ਜਾਂ ਅੰਤ 'ਤੇ ਮੈਚ ਕਰਦੀ " +"ਹੈ। ਇੱਕ ਸ਼ਬਦ ਨੂੰ ਅੱਖਰ-ਅੰਕ ਅੱਖਰਾਂ ਦੀ ਲੜੀ ਵਜੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਇਸ ਲਈ ਸ਼ਬਦ ਦਾ ਅੰਤ " +"whitespace ਜਾਂ ਕਿਸੇ non-alphanumeric ਅੱਖਰ ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "" "The following example matches ``class`` only when it's a complete word; it " "won't match when it's contained inside another word. ::" msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ``class`` ਨਾਲ ਸਿਰਫ਼ ਤਦ ਮੈਚ ਕਰਦੀ ਹੈ ਜਦੋਂ ਇਹ ਇੱਕ ਪੂਰਾ ਸ਼ਬਦ ਹੋਵੇ; ਜਦੋਂ ਇਹ " +"ਕਿਸੇ ਹੋਰ ਸ਼ਬਦ ਦੇ ਅੰਦਰ ਹੋਵੇ ਤਾਂ ਮੈਚ ਨਹੀਂ ਕਰੇਗੀ। ::" msgid "" ">>> p = re.compile(r'\\bclass\\b')\n" @@ -1087,6 +1501,13 @@ msgid "" ">>> print(p.search('one subclass is'))\n" "None" msgstr "" +">>> p = re.compile(r'\\bclass\\b')\n" +">>> print(p.search('no class at all'))\n" +"\n" +">>> print(p.search('the declassified algorithm'))\n" +"None\n" +">>> print(p.search('one subclass is'))\n" +"None" msgid "" "There are two subtleties you should remember when using this special " @@ -1097,6 +1518,13 @@ msgid "" "won't match as you expect it to. The following example looks the same as our " "previous RE, but omits the ``'r'`` in front of the RE string. ::" msgstr "" +"ਇਸ special sequence ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ ਦੋ ਸੁਖਮ ਗੱਲਾਂ ਯਾਦ ਰੱਖਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ। ਪਹਿਲੀ ਗੱਲ " +"ਇਹ ਹੈ ਕਿ ਇਹ Python string literals ਅਤੇ regular expression sequences ਵਿਚਕਾਰ ਸਭ " +"ਤੋਂ ਵੱਡੀ ਟਕਰਾਅ ਵਾਲੀ ਸਥਿਤੀ ਹੈ। Python string literals ਵਿੱਚ ``\\b`` backspace ਅੱਖਰ " +"ਹੁੰਦਾ ਹੈ, ਜਿਸਦੀ ASCII value 8 ਹੈ। ਜੇ ਤੁਸੀਂ raw strings ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਰਹੇ, ਤਾਂ Python " +"``\\b`` ਨੂੰ backspace ਵਿੱਚ ਬਦਲ ਦੇਵੇਗਾ ਅਤੇ ਤੁਹਾਡੀ RE ਉਮੀਦ ਅਨੁਸਾਰ ਮੈਚ ਨਹੀਂ ਕਰੇਗੀ। ਹੇਠਾਂ " +"ਦਿੱਤੀ ਉਦਾਹਰਨ ਸਾਡੀ ਪਿਛਲੀ RE ਵਰਗੀ ਹੀ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ, ਪਰ ਇਸ ਵਿੱਚ RE string ਤੋਂ ਪਹਿਲਾਂ " +"``'r'`` ਨਹੀਂ ਹੈ। ::" msgid "" ">>> p = re.compile('\\bclass\\b')\n" @@ -1105,23 +1533,32 @@ msgid "" ">>> print(p.search('\\b' + 'class' + '\\b'))\n" "" msgstr "" +">>> p = re.compile('\\bclass\\b')\n" +">>> print(p.search('no class at all'))\n" +"None\n" +">>> print(p.search('\\b' + 'class' + '\\b'))\n" +"" msgid "" "Second, inside a character class, where there's no use for this assertion, " "``\\b`` represents the backspace character, for compatibility with Python's " "string literals." msgstr "" +"ਦੂਜੀ ਗੱਲ, character class ਦੇ ਅੰਦਰ, ਜਿੱਥੇ ਇਸ assertion ਦੀ ਕੋਈ ਵਰਤੋਂ ਨਹੀਂ ਹੁੰਦੀ, ``\\b`` " +"compatibility ਲਈ backspace ਅੱਖਰ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।" msgid "``\\B``" -msgstr "" +msgstr "``\\B``" msgid "" "Another zero-width assertion, this is the opposite of ``\\b``, only matching " "when the current position is not at a word boundary." msgstr "" +"ਇੱਕ ਹੋਰ zero-width assertion। ਇਹ ``\\b`` ਦੇ ਉਲਟ ਹੈ ਅਤੇ ਸਿਰਫ਼ ਉਸ ਵੇਲੇ ਮੈਚ ਕਰਦੀ ਹੈ ਜਦੋਂ " +"ਮੌਜੂਦਾ ਸਥਿਤੀ ਕਿਸੇ word boundary 'ਤੇ ਨਾ ਹੋਵੇ।" msgid "Grouping" -msgstr "" +msgstr "ਗਰੂਪਿੰਗ" msgid "" "Frequently you need to obtain more information than just whether the RE " @@ -1130,6 +1567,11 @@ msgid "" "of interest. For example, an RFC-822 header line is divided into a header " "name and a value, separated by a ``':'``, like this:" msgstr "" +"ਅਕਸਰ ਤੁਹਾਨੂੰ ਸਿਰਫ਼ ਇਹ ਜਾਣਨ ਨਾਲੋਂ ਵੱਧ ਜਾਣਕਾਰੀ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਕਿ RE ਮੈਚ ਹੋਈ ਜਾਂ ਨਹੀਂ। " +"Regular expressions ਦੀ ਵਰਤੋਂ ਅਕਸਰ ਸਟਰਿੰਗਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ ਹਿੱਸਿਆਂ ਵਿੱਚ ਤੋੜਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, " +"ਜਿਸ ਲਈ ਇੱਕ ਅਜਿਹੀ RE ਲਿਖੀ ਜਾਂਦੀ ਹੈ ਜੋ ਕਈ subgroups ਵਿੱਚ ਵੰਡੀ ਹੋਈ ਹੋਵੇ ਅਤੇ ਹਰ subgroup " +"ਦਿਲਚਸਪੀ ਵਾਲੇ ਵੱਖਰੇ ਭਾਗ ਨਾਲ ਮੈਚ ਕਰੇ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ RFC-822 header line ਨੂੰ header " +"name ਅਤੇ value ਵਿੱਚ ਵੰਡਿਆ ਜਾਂਦਾ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ ``':'`` ਵੱਖ ਕਰਦਾ ਹੈ:" msgid "" "From: author@example.com\n" @@ -1137,12 +1579,19 @@ msgid "" "MIME-Version: 1.0\n" "To: editor@example.com" msgstr "" +"From: author@example.com\n" +"User-Agent: Thunderbird 1.5.0.9 (X11/20061227)\n" +"MIME-Version: 1.0\n" +"To: editor@example.com" msgid "" "This can be handled by writing a regular expression which matches an entire " "header line, and has one group which matches the header name, and another " "group which matches the header's value." msgstr "" +"ਇਸਨੂੰ ਇੱਕ ਅਜਿਹੀ regular expression ਲਿਖ ਕੇ ਸੰਭਾਲਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਪੂਰੀ header line ਨਾਲ " +"ਮੈਚ ਕਰੇ ਅਤੇ ਜਿਸ ਵਿੱਚ ਇੱਕ group header name ਨਾਲ ਅਤੇ ਦੂਜਾ group header value ਨਾਲ ਮੈਚ " +"ਕਰੇ।" msgid "" "Groups are marked by the ``'('``, ``')'`` metacharacters. ``'('`` and " @@ -1152,23 +1601,39 @@ msgid "" "``, or ``{m,n}``. For example, ``(ab)*`` will match zero or more " "repetitions of ``ab``. ::" msgstr "" +"Groups ਨੂੰ ``'('`` ਅਤੇ ``')'`` metacharacters ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ। ``'('`` ਅਤੇ " +"``')'`` ਦਾ ਅਰਥ ਲਗਭਗ ਉਹੀ ਹੁੰਦਾ ਹੈ ਜੋ ਗਣਿਤੀ expressions ਵਿੱਚ ਹੁੰਦਾ ਹੈ; ਇਹ ਆਪਣੇ ਅੰਦਰ ਮੌਜੂਦ " +"expressions ਨੂੰ ਇਕੱਠਾ ਗਰੂਪ ਕਰਦੇ ਹਨ ਅਤੇ ਤੁਸੀਂ ਕਿਸੇ group ਦੀ ਸਮੱਗਰੀ ਨੂੰ ``*``, ``+``, ``?" +"`` ਜਾਂ ``{m,n}`` ਵਰਗੇ quantifier ਨਾਲ ਦੁਹਰਾ ਸਕਦੇ ਹੋ। ਉਦਾਹਰਨ ਲਈ, ``(ab)*`` ``ab`` " +"ਦੀਆਂ ਸ਼ੂਨ੍ਯ ਜਾਂ ਵੱਧ ਦੁਹਰਾਵਾਂ ਨਾਲ ਮੈਚ ਕਰੇਗਾ। ::" msgid "" ">>> p = re.compile('(ab)*')\n" ">>> print(p.search('ababababab').span())\n" "(0, 10)" msgstr "" +">>> p = re.compile('(ab)*')\n" +">>> print(p.search('ababababab').span())\n" +"(0, 10)" msgid "" "Groups indicated with ``'('``, ``')'`` also capture the starting and ending " "index of the text that they match; this can be retrieved by passing an " -"argument to :meth:`~re.Match.group`, :meth:`~re.Match.start`, :meth:`~re." -"Match.end`, and :meth:`~re.Match.span`. Groups are numbered starting with " -"0. Group 0 is always present; it's the whole RE, so :ref:`match object " -"` methods all have group 0 as their default argument. Later " -"we'll see how to express groups that don't capture the span of text that " -"they match. ::" -msgstr "" +"argument " +"to :meth:`~re.Match.group`, :meth:`~re.Match.start`, :meth:`~re.Match.end`, " +"and :meth:`~re.Match.span`. Groups are numbered starting with 0. Group 0 " +"is always present; it's the whole RE, so :ref:`match object ` " +"methods all have group 0 as their default argument. Later we'll see how to " +"express groups that don't capture the span of text that they match. ::" +msgstr "" +"``'('`` ਅਤੇ ``')'`` ਨਾਲ ਦਰਸਾਏ ਗਏ groups ਉਸ ਟੈਕਸਟ ਦੇ ਸ਼ੁਰੂ ਅਤੇ ਅੰਤ ਦੇ index ਵੀ capture " +"ਕਰਦੇ ਹਨ ਜਿਸ ਨਾਲ ਉਹ ਮੈਚ ਕਰਦੇ ਹਨ; ਇਹ " +"ਜਾਣਕਾਰੀ :meth:`~re.Match.group`, :meth:`~re.Match.start`, :meth:`~re.Match.end` " +"ਅਤੇ :meth:`~re.Match.span` ਨੂੰ argument ਦੇ ਕੇ ਪ੍ਰਾਪਤ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। Groups ਦੀ " +"ਗਿਣਤੀ 0 ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ। Group 0 ਹਮੇਸ਼ਾਂ ਮੌਜੂਦ ਹੁੰਦਾ ਹੈ; ਇਹ ਪੂਰੀ RE ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ, ਇਸ " +"ਲਈ :ref:`match object ` methods ਵਿੱਚ group 0 ਮੂਲ argument ਹੁੰਦਾ " +"ਹੈ। ਅੱਗੇ ਅਸੀਂ ਵੇਖਾਂਗੇ ਕਿ ਅਜਿਹੇ groups ਕਿਵੇਂ ਬਣਾਏ ਜਾਂਦੇ ਹਨ ਜੋ ਆਪਣੇ ਮੈਚ ਕੀਤੇ ਟੈਕਸਟ ਦੀ span " +"capture ਨਹੀਂ ਕਰਦੇ। ::" msgid "" ">>> p = re.compile('(a)b')\n" @@ -1178,12 +1643,21 @@ msgid "" ">>> m.group(0)\n" "'ab'" msgstr "" +">>> p = re.compile('(a)b')\n" +">>> m = p.search('ab')\n" +">>> m.group()\n" +"'ab'\n" +">>> m.group(0)\n" +"'ab'" msgid "" "Subgroups are numbered from left to right, from 1 upward. Groups can be " "nested; to determine the number, just count the opening parenthesis " "characters, going from left to right. ::" msgstr "" +"Subgroups ਨੂੰ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਕ੍ਰਮ ਵਿੱਚ 1 ਤੋਂ ਸ਼ੁਰੂ ਕਰਕੇ ਨੰਬਰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ। Groups nested ਵੀ ਹੋ " +"ਸਕਦੇ ਹਨ; group number ਪਤਾ ਕਰਨ ਲਈ ਸਿਰਫ਼ opening parenthesis ਅੱਖਰਾਂ ਨੂੰ ਖੱਬੇ ਤੋਂ ਸੱਜੇ " +"ਗਿਣੋ। ::" msgid "" ">>> p = re.compile('(a(b)c)d')\n" @@ -1195,27 +1669,43 @@ msgid "" ">>> m.group(2)\n" "'b'" msgstr "" +">>> p = re.compile('(a(b)c)d')\n" +">>> m = p.search('abcd')\n" +">>> m.group(0)\n" +"'abcd'\n" +">>> m.group(1)\n" +"'abc'\n" +">>> m.group(2)\n" +"'b'" msgid "" ":meth:`~re.Match.group` can be passed multiple group numbers at a time, in " "which case it will return a tuple containing the corresponding values for " "those groups. ::" msgstr "" +":meth:`~re.Match.group` ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਕਈ group numbers ਦਿੱਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਜਿਸ ਸਥਿਤੀ " +"ਵਿੱਚ ਇਹ ਉਹਨਾਂ groups ਦੇ ਸੰਬੰਧਿਤ ਮੁੱਲਾਂ ਵਾਲਾ ਇੱਕ tuple ਵਾਪਸ ਕਰਦਾ ਹੈ। ::" msgid "" ">>> m.group(2,1,2)\n" "('b', 'abc', 'b')" msgstr "" +">>> m.group(2,1,2)\n" +"('b', 'abc', 'b')" msgid "" "The :meth:`~re.Match.groups` method returns a tuple containing the strings " "for all the subgroups, from 1 up to however many there are. ::" msgstr "" +":meth:`~re.Match.groups` method 1 ਤੋਂ ਲੈ ਕੇ ਸਾਰੇ subgroups ਦੀਆਂ strings ਵਾਲਾ ਇੱਕ " +"tuple ਵਾਪਸ ਕਰਦੀ ਹੈ। ::" msgid "" ">>> m.groups()\n" "('abc', 'b')" msgstr "" +">>> m.groups()\n" +"('abc', 'b')" msgid "" "Backreferences in a pattern allow you to specify that the contents of an " @@ -1226,15 +1716,24 @@ msgid "" "including arbitrary characters in a string, so be sure to use a raw string " "when incorporating backreferences in a RE." msgstr "" +"Pattern ਵਿੱਚ backreferences ਤੁਹਾਨੂੰ ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ ਕਿ ਪਹਿਲਾਂ " +"capture ਕੀਤੇ ਗਏ group ਦੀ ਸਮੱਗਰੀ ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਵੀ ਮਿਲਣੀ ਚਾਹੀਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, " +"``\\1`` ਤਦ ਸਫਲ ਹੋਵੇਗਾ ਜੇ group 1 ਦੀ ਠੀਕ ਸਮੱਗਰੀ ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਮਿਲ ਜਾਵੇ; ਨਹੀਂ ਤਾਂ ਇਹ " +"ਅਸਫਲ ਹੋ ਜਾਵੇਗਾ। ਯਾਦ ਰੱਖੋ ਕਿ Python string literals ਵੀ backslash ਤੋਂ ਬਾਅਦ ਨੰਬਰਾਂ ਦੀ " +"ਵਰਤੋਂ ਕਰਕੇ arbitrary characters ਸ਼ਾਮਲ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ, ਇਸ ਲਈ RE ਵਿੱਚ " +"backreferences ਵਰਤਦੇ ਸਮੇਂ raw string ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਯਕੀਨੀ ਬਣਾਓ।" msgid "For example, the following RE detects doubled words in a string. ::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਲਈ, ਹੇਠਾਂ ਦਿੱਤੀ RE ਇੱਕ ਸਟਰਿੰਗ ਵਿੱਚ ਦੁਹਰਾਏ ਹੋਏ ਸ਼ਬਦਾਂ ਨੂੰ ਖੋਜਦੀ ਹੈ। ::" msgid "" ">>> p = re.compile(r'\\b(\\w+)\\s+\\1\\b')\n" ">>> p.search('Paris in the the spring').group()\n" "'the the'" msgstr "" +">>> p = re.compile(r'\\b(\\w+)\\s+\\1\\b')\n" +">>> p.search('Paris in the the spring').group()\n" +"'the the'" msgid "" "Backreferences like this aren't often useful for just searching through a " @@ -1242,9 +1741,12 @@ msgid "" "you'll soon find out that they're *very* useful when performing string " "substitutions." msgstr "" +"ਇਸ ਤਰ੍ਹਾਂ ਦੀਆਂ backreferences ਸਿਰਫ਼ ਸਟਰਿੰਗ ਵਿੱਚ ਖੋਜ ਕਰਨ ਲਈ ਬਹੁਤ ਵਾਰ ਲਾਭਦਾਇਕ ਨਹੀਂ ਹੁੰਦੀਆਂ " +"— ਕਿਉਂਕਿ ਬਹੁਤ ਘੱਟ text formats ਇਸ ਤਰੀਕੇ ਨਾਲ ਡਾਟਾ ਦੁਹਰਾਉਂਦੀਆਂ ਹਨ — ਪਰ ਤੁਸੀਂ ਜਲਦੀ ਹੀ " +"ਵੇਖੋਗੇ ਕਿ string substitutions ਕਰਦੇ ਸਮੇਂ ਇਹ *ਬਹੁਤ* ਲਾਭਦਾਇਕ ਹੁੰਦੀਆਂ ਹਨ।" msgid "Non-capturing and named groups" -msgstr "" +msgstr "Non-capturing ਅਤੇ named groups" msgid "" "Elaborate REs may use many groups, both to capture substrings of interest, " @@ -1253,6 +1755,10 @@ msgid "" "help with this problem. Both of them use a common syntax for regular " "expression extensions, so we'll look at that first." msgstr "" +"ਜਟਿਲ REs ਵਿੱਚ ਅਕਸਰ ਬਹੁਤ ਸਾਰੇ groups ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਕੁਝ ਦਿਲਚਸਪੀ ਵਾਲੀਆਂ substrings ਨੂੰ " +"capture ਕਰਨ ਲਈ ਅਤੇ ਕੁਝ RE ਨੂੰ ਖੁਦ ਗਰੂਪ ਅਤੇ ਸੰਰਚਿਤ ਕਰਨ ਲਈ। ਜਟਿਲ REs ਵਿੱਚ group numbers " +"ਨੂੰ ਯਾਦ ਰੱਖਣਾ ਮੁਸ਼ਕਲ ਹੋ ਜਾਂਦਾ ਹੈ। ਇਸ ਸਮੱਸਿਆ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਦੋ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ। ਦੋਵੇਂ regular " +"expression extensions ਲਈ ਇੱਕ ਸਾਂਝਾ syntax ਵਰਤਦੀਆਂ ਹਨ, ਇਸ ਲਈ ਪਹਿਲਾਂ ਅਸੀਂ ਉਸਨੂੰ ਵੇਖਾਂਗੇ।" msgid "" "Perl 5 is well known for its powerful additions to standard regular " @@ -1263,6 +1769,12 @@ msgid "" "expressions would be assuming that ``&`` was a regular character and " "wouldn't have escaped it by writing ``\\&`` or ``[&]``." msgstr "" +"Perl 5 ਆਪਣੀਆਂ ਸ਼ਕਤੀਸ਼ਾਲੀ regular expression extensions ਲਈ ਮਸ਼ਹੂਰ ਹੈ। ਇਨ੍ਹਾਂ ਨਵੀਆਂ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲਈ Perl developers ਨਵੇਂ single-keystroke metacharacters ਜਾਂ ``\\`` ਨਾਲ " +"ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀਆਂ ਨਵੀਆਂ special sequences ਨਹੀਂ ਚੁਣ ਸਕਦੇ ਸਨ, ਕਿਉਂਕਿ ਇਸ ਨਾਲ Perl ਦੀਆਂ " +"regular expressions ਮਿਆਰੀ REs ਨਾਲੋਂ ਬਹੁਤ ਵੱਖਰੀਆਂ ਅਤੇ ਉਲਝਣਭਰੀਆਂ ਹੋ ਜਾਂਦੀਆਂ। ਉਦਾਹਰਨ ਲਈ, " +"ਜੇ ``&`` ਨੂੰ ਇੱਕ ਨਵੇਂ metacharacter ਵਜੋਂ ਚੁਣਦੇ, ਤਾਂ ਪੁਰਾਣੀਆਂ expressions ਇਹ ਮੰਨ ਕੇ ਚੱਲਦੀਆਂ " +"ਕਿ ``&`` ਇੱਕ ਆਮ ਅੱਖਰ ਹੈ ਅਤੇ ਉਸਨੂੰ ``\\&`` ਜਾਂ ``[&]`` ਵਜੋਂ escape ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੋਵੇਗਾ।" msgid "" "The solution chosen by the Perl developers was to use ``(?...)`` as the " @@ -1273,17 +1785,28 @@ msgid "" "positive lookahead assertion) and ``(?:foo)`` is something else (a non-" "capturing group containing the subexpression ``foo``)." msgstr "" +"Perl developers ਦੁਆਰਾ ਚੁਣਿਆ ਗਿਆ ਹੱਲ ``(?...)`` extension syntax ਸੀ। Parenthesis " +"ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ਆਉਣ ਵਾਲਾ ``?`` ਇੱਕ syntax error ਹੁੰਦਾ, ਕਿਉਂਕਿ ``?`` ਕੋਲ ਦੁਹਰਾਉਣ ਲਈ ਕੁਝ " +"ਨਹੀਂ ਹੁੰਦਾ, ਇਸ ਲਈ ਇਸ ਨਾਲ compatibility ਦੀ ਕੋਈ ਸਮੱਸਿਆ ਪੈਦਾ ਨਹੀਂ ਹੋਈ। ``?`` ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ " +"ਆਉਣ ਵਾਲੇ ਅੱਖਰ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਕਿਹੜੀ extension ਵਰਤੀ ਜਾ ਰਹੀ ਹੈ; ਇਸ ਲਈ ``(?=foo)`` ਇੱਕ " +"ਚੀਜ਼ ਹੈ (positive lookahead assertion) ਅਤੇ ``(?:foo)`` ਕੁਝ ਹੋਰ ਹੈ (subexpression " +"``foo`` ਵਾਲਾ non-capturing group)।" msgid "" "Python supports several of Perl's extensions and adds an extension syntax to " "Perl's extension syntax. If the first character after the question mark is " "a ``P``, you know that it's an extension that's specific to Python." msgstr "" +"Python Perl ਦੀਆਂ ਕਈ extensions ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ Perl ਦੀ extension syntax " +"ਵਿੱਚ ਆਪਣੀਆਂ extensions ਵੀ ਜੋੜਦਾ ਹੈ। ਜੇ question mark ਤੋਂ ਬਾਅਦ ਪਹਿਲਾ ਅੱਖਰ ``P`` ਹੋਵੇ, " +"ਤਾਂ ਤੁਸੀਂ ਜਾਣ ਸਕਦੇ ਹੋ ਕਿ ਇਹ Python-ਵਿਸ਼ੇਸ਼ extension ਹੈ।" msgid "" "Now that we've looked at the general extension syntax, we can return to the " "features that simplify working with groups in complex REs." msgstr "" +"ਹੁਣ ਜਦੋਂ ਅਸੀਂ ਆਮ extension syntax ਨੂੰ ਵੇਖ ਲਿਆ ਹੈ, ਅਸੀਂ ਉਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵੱਲ ਵਾਪਸ ਆ ਸਕਦੇ ਹਾਂ " +"ਜੋ ਜਟਿਲ REs ਵਿੱਚ groups ਨਾਲ ਕੰਮ ਕਰਨਾ ਆਸਾਨ ਬਣਾਉਂਦੀਆਂ ਹਨ।" msgid "" "Sometimes you'll want to use a group to denote a part of a regular " @@ -1291,6 +1814,10 @@ msgid "" "can make this fact explicit by using a non-capturing group: ``(?:...)``, " "where you can replace the ``...`` with any other regular expression. ::" msgstr "" +"ਕਈ ਵਾਰ ਤੁਸੀਂ regular expression ਦੇ ਕਿਸੇ ਹਿੱਸੇ ਨੂੰ ਦਰਸਾਉਣ ਲਈ group ਵਰਤਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਪਰ " +"ਉਸ group ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਦਿਲਚਸਪੀ ਨਹੀਂ ਹੁੰਦੀ। ਤੁਸੀਂ ਇਸ ਗੱਲ ਨੂੰ non-capturing " +"group ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਪਸ਼ਟ ਕਰ ਸਕਦੇ ਹੋ: ``(?:...)``। ਇੱਥੇ ``...`` ਦੀ ਥਾਂ ਕੋਈ ਵੀ regular " +"expression ਰੱਖੀ ਜਾ ਸਕਦੀ ਹੈ। ::" msgid "" ">>> m = re.search(\"([abc])+\", \"abc\")\n" @@ -1300,6 +1827,12 @@ msgid "" ">>> m.groups()\n" "()" msgstr "" +">>> m = re.search(\"([abc])+\", \"abc\")\n" +">>> m.groups()\n" +"('c',)\n" +">>> m = re.search(\"(?:[abc])+\", \"abc\")\n" +">>> m.groups()\n" +"()" msgid "" "Except for the fact that you can't retrieve the contents of what the group " @@ -1312,11 +1845,21 @@ msgid "" "performance difference in searching between capturing and non-capturing " "groups; neither form is any faster than the other." msgstr "" +"ਇਸ ਗੱਲ ਤੋਂ ਇਲਾਵਾ ਕਿ ਤੁਸੀਂ group ਦੁਆਰਾ ਮੈਚ ਕੀਤੀ ਸਮੱਗਰੀ ਨੂੰ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕਰ ਸਕਦੇ, non-" +"capturing group ਬਿਲਕੁਲ capturing group ਵਾਂਗ ਹੀ ਵਰਤਾਓ ਕਰਦਾ ਹੈ; ਤੁਸੀਂ ਇਸਦੇ ਅੰਦਰ ਕੁਝ ਵੀ " +"ਰੱਖ ਸਕਦੇ ਹੋ, ਇਸਨੂੰ ``*`` ਵਰਗੇ repetition metacharacter ਨਾਲ ਦੁਹਰਾ ਸਕਦੇ ਹੋ ਅਤੇ ਇਸਨੂੰ ਹੋਰ " +"groups (capturing ਜਾਂ non-capturing) ਦੇ ਅੰਦਰ nest ਵੀ ਕਰ ਸਕਦੇ ਹੋ। ``(?:...)`` ਮੌਜੂਦਾ " +"pattern ਵਿੱਚ ਸੋਧ ਕਰਦੇ ਸਮੇਂ ਖਾਸ ਤੌਰ 'ਤੇ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ, ਕਿਉਂਕਿ ਤੁਸੀਂ ਹੋਰ groups ਦੀ " +"numbering ਬਦਲੇ ਬਿਨਾਂ ਨਵੇਂ groups ਜੋੜ ਸਕਦੇ ਹੋ। ਇਹ ਵੀ ਧਿਆਨਯੋਗ ਹੈ ਕਿ capturing ਅਤੇ non-" +"capturing groups ਵਿੱਚ searching performance ਦਾ ਕੋਈ ਅੰਤਰ ਨਹੀਂ ਹੁੰਦਾ; ਕੋਈ ਵੀ ਦੂਜੇ ਨਾਲੋਂ " +"ਤੇਜ਼ ਨਹੀਂ ਹੈ।" msgid "" "A more significant feature is named groups: instead of referring to them by " "numbers, groups can be referenced by a name." msgstr "" +"ਇੱਕ ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਵਿਸ਼ੇਸ਼ਤਾ named groups ਹਨ: groups ਨੂੰ ਨੰਬਰਾਂ ਦੀ ਬਜਾਏ ਨਾਂ ਦੁਆਰਾ ਵੀ " +"ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "The syntax for a named group is one of the Python-specific extensions: ``(?" @@ -1328,6 +1871,13 @@ msgid "" "still given numbers, so you can retrieve information about a group in two " "ways::" msgstr "" +"Named group ਦਾ syntax Python-ਵਿਸ਼ੇਸ਼ extensions ਵਿੱਚੋਂ ਇੱਕ ਹੈ: ``(?P...)``। " +"*name* ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ group ਦਾ ਨਾਮ ਹੈ। Named groups ਬਿਲਕੁਲ capturing groups ਵਾਂਗ ਹੀ " +"ਵਰਤਾਓ ਕਰਦੇ ਹਨ ਅਤੇ ਨਾਲ ਹੀ group ਨਾਲ ਇੱਕ ਨਾਮ ਵੀ ਜੋੜਦੇ ਹਨ। :ref:`match object ` ਦੀਆਂ ਉਹ methods ਜੋ capturing groups ਨਾਲ ਕੰਮ ਕਰਦੀਆਂ ਹਨ, group number " +"ਦਰਸਾਉਣ ਲਈ integer ਜਾਂ group name ਵਾਲੀ string ਦੋਵੇਂ ਸਵੀਕਾਰ ਕਰਦੀਆਂ ਹਨ। Named groups " +"ਨੂੰ ਫਿਰ ਵੀ ਨੰਬਰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ, ਇਸ ਲਈ ਤੁਸੀਂ group ਦੀ ਜਾਣਕਾਰੀ ਦੋ ਤਰੀਕਿਆਂ ਨਾਲ ਪ੍ਰਾਪਤ ਕਰ " +"ਸਕਦੇ ਹੋ::" msgid "" ">>> p = re.compile(r'(?P\\b\\w+\\b)')\n" @@ -1337,23 +1887,37 @@ msgid "" ">>> m.group(1)\n" "'Lots'" msgstr "" +">>> p = re.compile(r'(?P\\b\\w+\\b)')\n" +">>> m = p.search('(((( Lots of punctuation )))')\n" +">>> m.group('word')\n" +"'Lots'\n" +">>> m.group(1)\n" +"'Lots'" msgid "" -"Additionally, you can retrieve named groups as a dictionary with :meth:`~re." -"Match.groupdict`::" +"Additionally, you can retrieve named groups as a dictionary " +"with :meth:`~re.Match.groupdict`::" msgstr "" +"ਇਸ ਤੋਂ ਇਲਾਵਾ, ਤੁਸੀਂ :meth:`~re.Match.groupdict` ਦੀ ਵਰਤੋਂ ਕਰਕੇ named groups ਨੂੰ ਇੱਕ " +"dictionary ਵਜੋਂ ਵੀ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹੋ::" msgid "" ">>> m = re.search(r'(?P\\w+) (?P\\w+)', 'Jane Doe')\n" ">>> m.groupdict()\n" "{'first': 'Jane', 'last': 'Doe'}" msgstr "" +">>> m = re.search(r'(?P\\w+) (?P\\w+)', 'Jane Doe')\n" +">>> m.groupdict()\n" +"{'first': 'Jane', 'last': 'Doe'}" msgid "" "Named groups are handy because they let you use easily remembered names, " -"instead of having to remember numbers. Here's an example RE from the :mod:" -"`imaplib` module::" +"instead of having to remember numbers. Here's an example RE from " +"the :mod:`imaplib` module::" msgstr "" +"Named groups ਲਾਭਦਾਇਕ ਹੁੰਦੇ ਹਨ ਕਿਉਂਕਿ ਇਹ ਤੁਹਾਨੂੰ ਨੰਬਰਾਂ ਨੂੰ ਯਾਦ ਰੱਖਣ ਦੀ ਬਜਾਏ ਆਸਾਨੀ ਨਾਲ " +"ਯਾਦ ਰਹਿ ਜਾਣ ਵਾਲੇ ਨਾਮ ਵਰਤਣ ਦੀ ਆਗਿਆ ਦਿੰਦੇ ਹਨ। ਇੱਥੇ :mod:`imaplib` ਮੋਡੀਊਲ ਤੋਂ ਇੱਕ ਉਦਾਹਰਨ " +"RE ਦਿੱਤੀ ਗਈ ਹੈ::" msgid "" "InternalDate = re.compile(r'INTERNALDATE \"'\n" @@ -1363,11 +1927,18 @@ msgid "" " r' (?P[-+])(?P[0-9][0-9])(?P[0-9][0-9])'\n" " r'\"')" msgstr "" +"InternalDate = re.compile(r'INTERNALDATE \"'\n" +"r'(?P[ 123][0-9])-(?P[A-Z][a-z][a-z])-'\n" +"r'(?P[0-9][0-9][0-9][0-9])'\n" +"r' (?P[0-9][0-9]):(?P[0-9][0-9]):(?P[0-9][0-9])'\n" +"r' (?P[-+])(?P[0-9][0-9])(?P[0-9][0-9])'\n" +"r'\"')" msgid "" "It's obviously much easier to retrieve ``m.group('zonem')``, instead of " "having to remember to retrieve group 9." msgstr "" +"ਸਪਸ਼ਟ ਹੈ ਕਿ group 9 ਨੂੰ ਯਾਦ ਰੱਖਣ ਦੀ ਬਜਾਏ ``m.group('zonem')`` ਲਿਖਣਾ ਕਾਫ਼ੀ ਆਸਾਨ ਹੈ।" msgid "" "The syntax for backreferences in an expression such as ``(...)\\1`` refers " @@ -1375,27 +1946,38 @@ msgid "" "name instead of the number. This is another Python extension: ``(?P=name)`` " "indicates that the contents of the group called *name* should again be " "matched at the current point. The regular expression for finding doubled " -"words, ``\\b(\\w+)\\s+\\1\\b`` can also be written as ``\\b(?" -"P\\w+)\\s+(?P=word)\\b``::" +"words, ``\\b(\\w+)\\s+\\1\\b`` can also be written as ``\\b(?P\\w+)\\s+" +"(?P=word)\\b``::" msgstr "" +"``(...)\\1`` ਵਰਗੀ expression ਵਿੱਚ backreferences ਦਾ syntax group number ਨੂੰ " +"ਦਰਸਾਉਂਦਾ ਹੈ। ਕੁਦਰਤੀ ਤੌਰ 'ਤੇ ਇਸਦਾ ਇੱਕ ਰੂਪ ਅਜਿਹਾ ਵੀ ਹੈ ਜੋ number ਦੀ ਬਜਾਏ group name " +"ਵਰਤਦਾ ਹੈ। ਇਹ ਵੀ ਇੱਕ Python extension ਹੈ: ``(?P=name)`` ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ *name* ਨਾਮਕ " +"group ਦੀ ਸਮੱਗਰੀ ਮੌਜੂਦਾ ਸਥਾਨ 'ਤੇ ਦੁਬਾਰਾ ਮੈਚ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। Doubled words ਖੋਜਣ ਵਾਲੀ " +"regular expression ``\\b(\\w+)\\s+\\1\\b`` ਨੂੰ ``\\b(?P\\w+)\\s+(?P=word)" +"\\b`` ਵਜੋਂ ਵੀ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> p = re.compile(r'\\b(?P\\w+)\\s+(?P=word)\\b')\n" ">>> p.search('Paris in the the spring').group()\n" "'the the'" msgstr "" +">>> p = re.compile(r'\\b(?P\\w+)\\s+(?P=word)\\b')\n" +">>> p.search('Paris in the the spring').group()\n" +"'the the'" msgid "Lookahead assertions" -msgstr "" +msgstr "Lookahead assertions" msgid "" "Another zero-width assertion is the lookahead assertion. Lookahead " "assertions are available in both positive and negative form, and look like " "this:" msgstr "" +"ਇੱਕ ਹੋਰ zero-width assertion lookahead assertion ਹੈ। Lookahead assertions " +"positive ਅਤੇ negative ਦੋਹਾਂ ਰੂਪਾਂ ਵਿੱਚ ਉਪਲਬਧ ਹਨ ਅਤੇ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਦੀਆਂ ਹਨ:" msgid "``(?=...)``" -msgstr "" +msgstr "``(?=...)``" msgid "" "Positive lookahead assertion. This succeeds if the contained regular " @@ -1404,15 +1986,21 @@ msgid "" "tried, the matching engine doesn't advance at all; the rest of the pattern " "is tried right where the assertion started." msgstr "" +"Positive lookahead assertion। ਜੇ ਇੱਥੇ ``...`` ਦੁਆਰਾ ਦਰਸਾਈ ਗਈ regular expression " +"ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਸਫਲਤਾਪੂਰਵਕ ਮੈਚ ਕਰ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਇਹ assertion ਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ; ਨਹੀਂ ਤਾਂ " +"ਅਸਫਲ। ਪਰ contained expression ਦੀ ਜਾਂਚ ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ matching engine ਬਿਲਕੁਲ ਵੀ " +"ਅੱਗੇ ਨਹੀਂ ਵਧਦਾ; pattern ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਓਥੇ ਹੀ ਅਜ਼ਮਾਇਆ ਜਾਂਦਾ ਹੈ ਜਿੱਥੋਂ assertion ਸ਼ੁਰੂ ਹੋਈ ਸੀ।" msgid "``(?!...)``" -msgstr "" +msgstr "``(?!...)``" msgid "" "Negative lookahead assertion. This is the opposite of the positive " "assertion; it succeeds if the contained expression *doesn't* match at the " "current position in the string." msgstr "" +"Negative lookahead assertion। ਇਹ positive assertion ਦਾ ਉਲਟ ਹੈ; ਜੇ contained " +"expression ਸਟਰਿੰਗ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਮੈਚ *ਨਾ* ਕਰੇ, ਤਾਂ ਇਹ ਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ।" msgid "" "To make this concrete, let's look at a case where a lookahead is useful. " @@ -1420,12 +2008,16 @@ msgid "" "name and an extension, separated by a ``.``. For example, in ``news.rc``, " "``news`` is the base name, and ``rc`` is the filename's extension." msgstr "" +"ਇਸਨੂੰ ਹੋਰ ਸਪਸ਼ਟ ਬਣਾਉਣ ਲਈ ਆਓ ਇੱਕ ਅਜਿਹਾ ਮਾਮਲਾ ਵੇਖੀਏ ਜਿੱਥੇ lookahead ਲਾਭਦਾਇਕ ਹੁੰਦੀ ਹੈ। ਮੰਨੋ " +"ਤੁਸੀਂ ਇੱਕ filename ਨਾਲ ਮੈਚ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਅਤੇ ਉਸਨੂੰ base name ਅਤੇ extension ਵਿੱਚ ਵੰਡਣਾ " +"ਚਾਹੁੰਦੇ ਹੋ, ਜਿਨ੍ਹਾਂ ਨੂੰ ``.`` ਵੱਖ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``news.rc`` ਵਿੱਚ ``news`` base " +"name ਹੈ ਅਤੇ ``rc`` filename ਦੀ extension ਹੈ।" msgid "The pattern to match this is quite simple:" -msgstr "" +msgstr "ਇਸ ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ pattern ਕਾਫ਼ੀ ਸਧਾਰਣ ਹੈ:" msgid "``.*[.].*$``" -msgstr "" +msgstr "``.*[.].*$``" msgid "" "Notice that the ``.`` needs to be treated specially because it's a " @@ -1435,42 +2027,61 @@ msgid "" "expression matches ``foo.bar`` and ``autoexec.bat`` and ``sendmail.cf`` and " "``printers.conf``." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ``.`` ਨੂੰ ਖਾਸ ਤਰੀਕੇ ਨਾਲ ਸੰਭਾਲਣਾ ਪੈਂਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਇੱਕ metacharacter ਹੈ, " +"ਇਸ ਲਈ ਇਸਨੂੰ character class ਦੇ ਅੰਦਰ ਰੱਖਿਆ ਗਿਆ ਹੈ ਤਾਂ ਜੋ ਇਹ ਸਿਰਫ਼ ਉਸ ਖਾਸ ਅੱਖਰ ਨਾਲ ਹੀ ਮੈਚ " +"ਕਰੇ। ਨਾਲ ਹੀ, ਅੰਤ ਵਿੱਚ ਲਗਿਆ ``$`` ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਸਟਰਿੰਗ ਦਾ ਬਾਕੀ ਸਾਰਾ ਹਿੱਸਾ " +"extension ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਵੇ। ਇਹ regular expression ``foo.bar``, ``autoexec.bat``, " +"``sendmail.cf`` ਅਤੇ ``printers.conf`` ਨਾਲ ਮੈਚ ਕਰਦੀ ਹੈ।" msgid "" "Now, consider complicating the problem a bit; what if you want to match " "filenames where the extension is not ``bat``? Some incorrect attempts:" msgstr "" +"ਹੁਣ ਸਮੱਸਿਆ ਨੂੰ ਥੋੜ੍ਹਾ ਜਟਿਲ ਬਣਾਈਏ; ਜੇ ਤੁਸੀਂ ਅਜਿਹੇ filenames ਨਾਲ ਮੈਚ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਜਿਨ੍ਹਾਂ ਦੀ " +"extension ``bat`` ਨਾ ਹੋਵੇ ਤਾਂ ਕੀ ਕਰੋਂਗੇ? ਕੁਝ ਗਲਤ ਕੋਸ਼ਿਸ਼ਾਂ:" msgid "``.*[.][^b].*$``" -msgstr "" +msgstr "``.*[.][^b].*$``" msgid "" "The first attempt above tries to exclude ``bat`` by requiring that the first " "character of the extension is not a ``b``. This is wrong, because the " "pattern also doesn't match ``foo.bar``." msgstr "" +"ਉੱਪਰ ਦਿੱਤੀ ਪਹਿਲੀ ਕੋਸ਼ਿਸ਼ ``bat`` ਨੂੰ ਬਾਹਰ ਰੱਖਣ ਲਈ ਇਹ ਸ਼ਰਤ ਲਗਾਉਂਦੀ ਹੈ ਕਿ extension ਦਾ " +"ਪਹਿਲਾ ਅੱਖਰ ``b`` ਨਾ ਹੋਵੇ। ਇਹ ਗਲਤ ਹੈ, ਕਿਉਂਕਿ ਇਸ pattern ਨਾਲ ``foo.bar`` ਵੀ ਮੈਚ ਨਹੀਂ " +"ਕਰੇਗੀ।" msgid "``.*[.]([^b]..|.[^a].|..[^t])$``" -msgstr "" +msgstr "``.*[.]([^b]..|.[^a].|..[^t])$``" msgid "" "The expression gets messier when you try to patch up the first solution by " "requiring one of the following cases to match: the first character of the " "extension isn't ``b``; the second character isn't ``a``; or the third " -"character isn't ``t``. This accepts ``foo.bar`` and rejects ``autoexec." -"bat``, but it requires a three-letter extension and won't accept a filename " -"with a two-letter extension such as ``sendmail.cf``. We'll complicate the " -"pattern again in an effort to fix it." -msgstr "" +"character isn't ``t``. This accepts ``foo.bar`` and rejects " +"``autoexec.bat``, but it requires a three-letter extension and won't accept " +"a filename with a two-letter extension such as ``sendmail.cf``. We'll " +"complicate the pattern again in an effort to fix it." +msgstr "" +"ਜਦੋਂ ਤੁਸੀਂ ਪਹਿਲੇ ਹੱਲ ਨੂੰ ਠੀਕ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹੋ ਅਤੇ ਇਹ ਸ਼ਰਤ ਲਗਾਉਂਦੇ ਹੋ ਕਿ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਵਿੱਚੋਂ ਕੋਈ " +"ਇੱਕ ਸਥਿਤੀ ਮੈਚ ਹੋਵੇ — extension ਦਾ ਪਹਿਲਾ ਅੱਖਰ ``b`` ਨਾ ਹੋਵੇ, ਜਾਂ ਦੂਜਾ ਅੱਖਰ ``a`` ਨਾ ਹੋਵੇ, " +"ਜਾਂ ਤੀਜਾ ਅੱਖਰ ``t`` ਨਾ ਹੋਵੇ — ਤਾਂ expression ਹੋਰ ਵੀ ਉਲਝਣਭਰੀ ਹੋ ਜਾਂਦੀ ਹੈ। ਇਹ " +"``foo.bar`` ਨੂੰ ਸਵੀਕਾਰ ਕਰਦੀ ਹੈ ਅਤੇ ``autoexec.bat`` ਨੂੰ ਰੱਦ ਕਰਦੀ ਹੈ, ਪਰ ਇਹ ਤਿੰਨ-ਅੱਖਰੀ " +"extension ਦੀ ਮੰਗ ਕਰਦੀ ਹੈ ਅਤੇ ``sendmail.cf`` ਵਰਗੀ ਦੋ-ਅੱਖਰੀ extension ਵਾਲੀ " +"filename ਨੂੰ ਸਵੀਕਾਰ ਨਹੀਂ ਕਰਦੀ। ਇਸਨੂੰ ਠੀਕ ਕਰਨ ਲਈ ਅਸੀਂ pattern ਨੂੰ ਹੋਰ ਵੀ ਜਟਿਲ ਬਣਾਉਣ ਦੀ " +"ਕੋਸ਼ਿਸ਼ ਕਰਾਂਗੇ।" msgid "``.*[.]([^b].?.?|.[^a]?.?|..?[^t]?)$``" -msgstr "" +msgstr "``.*[.]([^b].?.?|.[^a]?.?|..?[^t]?)$``" msgid "" "In the third attempt, the second and third letters are all made optional in " "order to allow matching extensions shorter than three characters, such as " "``sendmail.cf``." msgstr "" +"ਤੀਜੇ ਯਤਨ ਵਿੱਚ, ਦੂਜੇ ਅਤੇ ਤੀਜੇ ਅੱਖਰਾਂ ਨੂੰ ਵਿਕਲਪਿਕ ਬਣਾ ਦਿੱਤਾ ਗਿਆ ਹੈ ਤਾਂ ਜੋ ਤਿੰਨ ਅੱਖਰਾਂ ਤੋਂ ਛੋਟੀਆਂ " +"ਐਕਸਟੈਂਸ਼ਨਾਂ ਨਾਲ ਵੀ ਮੇਲ ਕੀਤਾ ਜਾ ਸਕੇ, ਜਿਵੇਂ ਕਿ ``sendmail.cf``।" msgid "" "The pattern's getting really complicated now, which makes it hard to read " @@ -1478,12 +2089,15 @@ msgid "" "``bat`` and ``exe`` as extensions, the pattern would get even more " "complicated and confusing." msgstr "" +"ਹੁਣ ਪੈਟਰਨ ਕਾਫ਼ੀ ਜਟਿਲ ਹੋ ਗਿਆ ਹੈ, ਜਿਸ ਕਾਰਨ ਇਸਨੂੰ ਪੜ੍ਹਨਾ ਅਤੇ ਸਮਝਣਾ ਮੁਸ਼ਕਲ ਹੋ ਜਾਂਦਾ ਹੈ। ਇਸ ਤੋਂ " +"ਵੀ ਬੁਰਾ ਇਹ ਹੈ ਕਿ ਜੇ ਸਮੱਸਿਆ ਬਦਲ ਜਾਵੇ ਅਤੇ ਤੁਸੀਂ ``bat`` ਅਤੇ ``exe`` ਦੋਵੇਂ ਐਕਸਟੈਂਸ਼ਨਾਂ ਨੂੰ ਬਾਹਰ " +"ਰੱਖਣਾ ਚਾਹੋ, ਤਾਂ ਪੈਟਰਨ ਹੋਰ ਵੀ ਜਟਿਲ ਅਤੇ ਉਲਝਣ ਭਰਿਆ ਹੋ ਜਾਵੇਗਾ।" msgid "A negative lookahead cuts through all this confusion:" -msgstr "" +msgstr "ਨਕਾਰਾਤਮਕ ਲੁੱਕਅਹੈੱਡ ਇਸ ਸਾਰੀ ਉਲਝਣ ਨੂੰ ਦੂਰ ਕਰ ਦਿੰਦਾ ਹੈ:" msgid "``.*[.](?!bat$)[^.]*$``" -msgstr "" +msgstr "``.*[.](?!bat$)[^.]*$``" msgid "" "The negative lookahead means: if the expression ``bat`` doesn't match at " @@ -1493,49 +2107,63 @@ msgid "" "allowed. The ``[^.]*`` makes sure that the pattern works when there are " "multiple dots in the filename." msgstr "" +"ਨਕਾਰਾਤਮਕ ਲੁੱਕਅਹੈੱਡ ਦਾ ਅਰਥ ਹੈ: ਜੇ ਇਸ ਸਥਾਨ 'ਤੇ ``bat`` ਐਕਸਪ੍ਰੈਸ਼ਨ ਨਾਲ ਮੇਲ ਨਹੀਂ ਖਾਂਦਾ, ਤਾਂ " +"ਪੈਟਰਨ ਦੇ ਬਾਕੀ ਹਿੱਸੇ ਦੀ ਜਾਂਚ ਕਰੋ; ਜੇ ``bat$`` ਨਾਲ ਮੇਲ ਖਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਪੂਰਾ ਪੈਟਰਨ ਅਸਫਲ ਹੋ " +"ਜਾਵੇਗਾ। ਅੰਤ ਵਿੱਚ ਦਿੱਤਾ ``$`` ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਲਾਜ਼ਮੀ ਹੈ ਕਿ ``sample.batch`` ਵਰਗਾ " +"ਨਾਮ, ਜਿਸਦੀ ਐਕਸਟੈਂਸ਼ਨ ਸਿਰਫ਼ ``bat`` ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ, ਮਨਜ਼ੂਰ ਕੀਤਾ ਜਾਵੇ। ``[^.]*`` ਇਹ " +"ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਫਾਇਲ-ਨਾਂ ਵਿੱਚ ਕਈ ਡਾਟ ਹੋਣ 'ਤੇ ਵੀ ਪੈਟਰਨ ਠੀਕ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰੇ।" msgid "" "Excluding another filename extension is now easy; simply add it as an " "alternative inside the assertion. The following pattern excludes filenames " "that end in either ``bat`` or ``exe``:" msgstr "" +"ਕਿਸੇ ਹੋਰ ਫਾਇਲ ਐਕਸਟੈਂਸ਼ਨ ਨੂੰ ਬਾਹਰ ਰੱਖਣਾ ਹੁਣ ਆਸਾਨ ਹੈ; ਉਸਨੂੰ assertion ਦੇ ਅੰਦਰ ਇੱਕ ਵਿਕਲਪ ਵਜੋਂ " +"ਸ਼ਾਮਲ ਕਰ ਦਿਓ। ਹੇਠਾਂ ਦਿੱਤਾ ਪੈਟਰਨ ਉਹਨਾਂ ਫਾਇਲ-ਨਾਂਵਾਂ ਨੂੰ ਬਾਹਰ ਰੱਖਦਾ ਹੈ ਜੋ ``bat`` ਜਾਂ ``exe`` " +"ਵਿੱਚ ਖਤਮ ਹੁੰਦੇ ਹਨ:" msgid "``.*[.](?!bat$|exe$)[^.]*$``" -msgstr "" +msgstr "``.*[.](?!bat$|exe$)[^.]*$``" msgid "Modifying strings" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗਾਂ ਵਿੱਚ ਸੋਧ ਕਰਨਾ" msgid "" "Up to this point, we've simply performed searches against a static string. " "Regular expressions are also commonly used to modify strings in various " "ways, using the following pattern methods:" msgstr "" +"ਹੁਣ ਤੱਕ ਅਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਸਥਿਰ ਸਟਰਿੰਗ 'ਤੇ ਖੋਜ ਕੀਤੀ ਹੈ। ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਆਮ ਤੌਰ 'ਤੇ ਸਟਰਿੰਗਾਂ ਨੂੰ ਵੱਖ-" +"ਵੱਖ ਢੰਗਾਂ ਨਾਲ ਸੋਧਣ ਲਈ ਵੀ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਪੈਟਰਨ ਵਿਧੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ:" msgid "``split()``" -msgstr "" +msgstr "``split()``" msgid "Split the string into a list, splitting it wherever the RE matches" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗ ਨੂੰ ਸੂਚੀ ਵਿੱਚ ਵੰਡਦਾ ਹੈ, ਜਿੱਥੇ-ਜਿੱਥੇ RE ਨਾਲ ਮੇਲ ਹੁੰਦਾ ਹੈ ਉੱਥੇ ਵੰਡ ਕਰਦਾ ਹੈ।" msgid "``sub()``" -msgstr "" +msgstr "``sub()``" msgid "" "Find all substrings where the RE matches, and replace them with a different " "string" msgstr "" +"ਉਹ ਸਾਰੀਆਂ ਉਪ-ਸਟ੍ਰਿੰਗਾਂ ਲੱਭਦਾ ਹੈ ਜਿੱਥੇ RE ਨਾਲ ਮੇਲ ਹੁੰਦਾ ਹੈ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਕਿਸੇ ਹੋਰ ਸਟਰਿੰਗ ਨਾਲ ਬਦਲ " +"ਦਿੰਦਾ ਹੈ।" msgid "``subn()``" -msgstr "" +msgstr "``subn()``" msgid "" "Does the same thing as :meth:`!sub`, but returns the new string and the " "number of replacements" msgstr "" +"ਇਹ :meth:`!sub` ਵਾਂਗ ਹੀ ਕੰਮ ਕਰਦਾ ਹੈ, ਪਰ ਨਵੀਂ ਸਟਰਿੰਗ ਅਤੇ ਕੀਤੀਆਂ ਗਈਆਂ ਤਬਦੀਲੀਆਂ ਦੀ ਗਿਣਤੀ " +"ਦੋਵੇਂ ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "Splitting strings" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗਾਂ ਨੂੰ ਵੰਡਣਾ" msgid "" "The :meth:`~re.Pattern.split` method of a pattern splits a string apart " @@ -1545,6 +2173,12 @@ msgid "" "splitting by whitespace or by a fixed string. As you'd expect, there's a " "module-level :func:`re.split` function, too." msgstr "" +"ਕਿਸੇ ਪੈਟਰਨ ਦੀ :meth:`~re.Pattern.split` ਵਿਧੀ ਸਟਰਿੰਗ ਨੂੰ ਉੱਥੇ-ਉੱਥੇ ਵੰਡ ਦਿੰਦੀ ਹੈ ਜਿੱਥੇ RE " +"ਨਾਲ ਮੇਲ ਹੁੰਦਾ ਹੈ, ਅਤੇ ਟੁਕੜਿਆਂ ਦੀ ਇੱਕ ਸੂਚੀ ਵਾਪਸ ਕਰਦੀ ਹੈ। ਇਹ ਸਟਰਿੰਗਾਂ " +"ਦੀ :meth:`~str.split` ਵਿਧੀ ਵਰਗੀ ਹੈ, ਪਰ ਜਿਨ੍ਹਾਂ delimiter ਦੇ ਆਧਾਰ 'ਤੇ ਤੁਸੀਂ ਵੰਡ ਸਕਦੇ ਹੋ " +"ਉਹਨਾਂ ਵਿੱਚ ਕਾਫ਼ੀ ਵੱਧ ਲਚਕੀਲਾਪਣ ਦਿੰਦੀ ਹੈ; ਸਟਰਿੰਗ ਦੀ :meth:`!split` ਸਿਰਫ਼ whitespace ਜਾਂ " +"ਕਿਸੇ ਨਿਰਧਾਰਤ ਸਟਰਿੰਗ ਦੁਆਰਾ ਵੰਡ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ। ਜਿਵੇਂ ਤੁਸੀਂ ਉਮੀਦ ਕਰੋਗੇ, ਇਸ ਲਈ ਮੋਡੀਊਲ-" +"ਪੱਧਰੀ :func:`re.split` ਫੰਕਸ਼ਨ ਵੀ ਉਪਲਬਧ ਹੈ।" msgid "" "Split *string* by the matches of the regular expression. If capturing " @@ -1552,6 +2186,9 @@ msgid "" "part of the resulting list. If *maxsplit* is nonzero, at most *maxsplit* " "splits are performed." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਦੇ ਮੇਲਾਂ ਦੇ ਆਧਾਰ 'ਤੇ *string* ਨੂੰ ਵੰਡੋ। ਜੇ RE ਵਿੱਚ capturing parentheses " +"ਵਰਤੇ ਗਏ ਹਨ, ਤਾਂ ਉਹਨਾਂ ਦੀ ਸਮੱਗਰੀ ਵੀ ਨਤੀਜੇ ਵਜੋਂ ਮਿਲਣ ਵਾਲੀ ਸੂਚੀ ਦਾ ਹਿੱਸਾ ਬਣ ਕੇ ਵਾਪਸ ਕੀਤੀ " +"ਜਾਵੇਗੀ। ਜੇ *maxsplit* ਗੈਰ-ਸ਼ੂਨ੍ਯ ਹੈ, ਤਾਂ ਵੱਧ ਤੋਂ ਵੱਧ *maxsplit* ਵੰਡਾਂ ਹੀ ਕੀਤੀਆਂ ਜਾਣਗੀਆਂ।" msgid "" "You can limit the number of splits made, by passing a value for *maxsplit*. " @@ -1560,6 +2197,10 @@ msgid "" "the following example, the delimiter is any sequence of non-alphanumeric " "characters. ::" msgstr "" +"ਤੁਸੀਂ *maxsplit* ਲਈ ਇੱਕ ਮੁੱਲ ਦੇ ਕੇ ਕੀਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ ਵੰਡਾਂ ਦੀ ਗਿਣਤੀ ਸੀਮਿਤ ਕਰ ਸਕਦੇ ਹੋ। ਜਦੋਂ " +"*maxsplit* ਗੈਰ-ਸ਼ੂਨਯ ਹੋਵੇ, ਤਾਂ ਵੱਧ ਤੋਂ ਵੱਧ *maxsplit* ਵੰਡਾਂ ਕੀਤੀਆਂ ਜਾਣਗੀਆਂ ਅਤੇ ਸਟਰਿੰਗ ਦਾ " +"ਬਾਕੀ ਹਿੱਸਾ ਸੂਚੀ ਦੇ ਆਖਰੀ ਤੱਤ ਵਜੋਂ ਵਾਪਸ ਕੀਤਾ ਜਾਵੇਗਾ। ਹੇਠਾਂ ਦਿੱਤੇ ਉਦਾਹਰਨ ਵਿੱਚ, ਡਿਲੀਮੀਟਰ ਕੋਈ " +"ਵੀ ਗੈਰ-ਅੱਖਰ-ਅੰਕੀ ਅੱਖਰਾਂ ਦੀ ਲੜੀ ਹੈ।" msgid "" ">>> p = re.compile(r'\\W+')\n" @@ -1568,6 +2209,11 @@ msgid "" ">>> p.split('This is a test, short and sweet, of split().', 3)\n" "['This', 'is', 'a', 'test, short and sweet, of split().']" msgstr "" +">>> p = re.compile(r'\\W+')\n" +">>> p.split('This is a test, short and sweet, of split().')\n" +"['This', 'is', 'a', 'test', 'short', 'and', 'sweet', 'of', 'split', '']\n" +">>> p.split('This is a test, short and sweet, of split().', 3)\n" +"['This', 'is', 'a', 'test, short and sweet, of split().']" msgid "" "Sometimes you're not only interested in what the text between delimiters is, " @@ -1575,6 +2221,9 @@ msgid "" "used in the RE, then their values are also returned as part of the list. " "Compare the following calls::" msgstr "" +"ਕਈ ਵਾਰ ਤੁਹਾਡੀ ਦਿਲਚਸਪੀ ਸਿਰਫ਼ ਡਿਲੀਮੀਟਰਾਂ ਦੇ ਵਿਚਕਾਰਲੇ ਪਾਠ ਵਿੱਚ ਨਹੀਂ ਹੁੰਦੀ, ਸਗੋਂ ਇਹ ਜਾਣਨ " +"ਵਿੱਚ ਵੀ ਹੁੰਦੀ ਹੈ ਕਿ ਡਿਲੀਮੀਟਰ ਕੀ ਸੀ। ਜੇ RE ਵਿੱਚ ਕੈਪਚਰਿੰਗ ਕੋਠੀਆਂ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਤਾਂ " +"ਉਹਨਾਂ ਦੇ ਮੁੱਲ ਵੀ ਸੂਚੀ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਵਾਪਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਕਾਲਾਂ ਦੀ ਤੁਲਨਾ ਕਰੋ:" msgid "" ">>> p = re.compile(r'\\W+')\n" @@ -1584,11 +2233,19 @@ msgid "" ">>> p2.split('This... is a test.')\n" "['This', '... ', 'is', ' ', 'a', ' ', 'test', '.', '']" msgstr "" +">>> p = re.compile(r'\\W+')\n" +">>> p2 = re.compile(r'(\\W+)')\n" +">>> p.split('This... is a test.')\n" +"['This', 'is', 'a', 'test', '']\n" +">>> p2.split('This... is a test.')\n" +"['This', '... ', 'is', ' ', 'a', ' ', 'test', '.', '']" msgid "" "The module-level function :func:`re.split` adds the RE to be used as the " "first argument, but is otherwise the same. ::" msgstr "" +"ਮੋਡੀਊਲ-ਪੱਧਰੀ ਫੰਕਸ਼ਨ :func:`re.split` ਪਹਿਲੇ ਆਰਗਿਊਮੈਂਟ ਵਜੋਂ ਵਰਤੇ ਜਾਣ ਵਾਲੇ RE ਨੂੰ ਜੋੜਦਾ ਹੈ, ਪਰ " +"ਇਸ ਤੋਂ ਇਲਾਵਾ ਇਹ ਬਿਲਕੁਲ ਉਹੀ ਕੰਮ ਕਰਦਾ ਹੈ।" msgid "" ">>> re.split(r'[\\W]+', 'Words, words, words.')\n" @@ -1598,9 +2255,15 @@ msgid "" ">>> re.split(r'[\\W]+', 'Words, words, words.', 1)\n" "['Words', 'words, words.']" msgstr "" +">>> re.split(r'[\\W]+', 'Words, words, words.')\n" +"['Words', 'words', 'words', '']\n" +">>> re.split(r'([\\W]+)', 'Words, words, words.')\n" +"['Words', ', ', 'words', ', ', 'words', '.', '']\n" +">>> re.split(r'[\\W]+', 'Words, words, words.', 1)\n" +"['Words', 'words, words.']" msgid "Search and replace" -msgstr "" +msgstr "ਖੋਜ ਅਤੇ ਬਦਲੀ" msgid "" "Another common task is to find all the matches for a pattern, and replace " @@ -1608,23 +2271,34 @@ msgid "" "replacement value, which can be either a string or a function, and the " "string to be processed." msgstr "" +"ਇੱਕ ਹੋਰ ਆਮ ਕੰਮ ਹੈ ਕਿਸੇ ਪੈਟਰਨ ਨਾਲ ਹੋਏ ਸਾਰੇ ਮੇਲ ਲੱਭਣਾ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਕਿਸੇ ਹੋਰ ਸਟ੍ਰਿੰਗ ਨਾਲ " +"ਬਦਲਣਾ। :meth:`~re.Pattern.sub` ਵਿਧੀ ਇੱਕ ਬਦਲੀ ਮੁੱਲ ਲੈਂਦੀ ਹੈ, ਜੋ ਜਾਂ ਤਾਂ ਇੱਕ ਸਟਰਿੰਗ ਹੋ " +"ਸਕਦੀ ਹੈ ਜਾਂ ਇੱਕ ਫੰਕਸ਼ਨ, ਅਤੇ ਨਾਲ ਹੀ ਉਹ ਸਟਰਿੰਗ ਜਿਸ 'ਤੇ ਕਾਰਵਾਈ ਕੀਤੀ ਜਾਣੀ ਹੈ।" msgid "" "Returns the string obtained by replacing the leftmost non-overlapping " "occurrences of the RE in *string* by the replacement *replacement*. If the " "pattern isn't found, *string* is returned unchanged." msgstr "" +"*string* ਵਿੱਚ RE ਦੇ ਸਭ ਤੋਂ ਖੱਬੇ ਗੈਰ-ਓਵਰਲੈਪਿੰਗ ਮੇਲਾਂ ਨੂੰ *replacement* ਨਾਲ ਬਦਲ ਕੇ ਪ੍ਰਾਪਤ ਹੋਈ " +"ਸਟਰਿੰਗ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ ਪੈਟਰਨ ਨਹੀਂ ਮਿਲਦਾ, ਤਾਂ *string* ਨੂੰ ਬਿਨਾਂ ਕਿਸੇ ਤਬਦੀਲੀ ਦੇ ਵਾਪਸ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "The optional argument *count* is the maximum number of pattern occurrences " "to be replaced; *count* must be a non-negative integer. The default value " "of 0 means to replace all occurrences." msgstr "" +"ਵਿਕਲਪਿਕ ਆਰਗਿਊਮੈਂਟ *count* ਪੈਟਰਨ ਦੀਆਂ ਉਹਨਾਂ ਘਟਨਾਵਾਂ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਗਿਣਤੀ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ " +"ਬਦਲਿਆ ਜਾਣਾ ਹੈ; *count* ਇੱਕ ਗੈਰ-ਰਣਾਤਮਕ ਪੂਰਨ ਅੰਕ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। 0 ਦਾ ਮੂਲ ਮੁੱਲ ਸਾਰੀਆਂ " +"ਘਟਨਾਵਾਂ ਨੂੰ ਬਦਲਣ ਦਾ ਅਰਥ ਰੱਖਦਾ ਹੈ।" msgid "" "Here's a simple example of using the :meth:`~re.Pattern.sub` method. It " "replaces colour names with the word ``colour``::" msgstr "" +"ਇੱਥੇ :meth:`~re.Pattern.sub` ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਦਾ ਇੱਕ ਸਧਾਰਣ ਉਦਾਹਰਨ ਹੈ। ਇਹ ਰੰਗਾਂ ਦੇ ਨਾਮਾਂ ਨੂੰ " +"``colour`` ਸ਼ਬਦ ਨਾਲ ਬਦਲ ਦਿੰਦੀ ਹੈ:" msgid "" ">>> p = re.compile('(blue|white|red)')\n" @@ -1633,12 +2307,19 @@ msgid "" ">>> p.sub('colour', 'blue socks and red shoes', count=1)\n" "'colour socks and red shoes'" msgstr "" +"\">>> p = re.compile('(blue|white|red)')\\n\"\n" +"\">>> p.sub('colour', 'blue socks and red shoes')\\n\"\n" +"\"'colour socks and colour shoes'\\n\"\n" +"\">>> p.sub('colour', 'blue socks and red shoes', count=1)\\n\"\n" +"\"'colour socks and red shoes'\"" msgid "" "The :meth:`~re.Pattern.subn` method does the same work, but returns a 2-" "tuple containing the new string value and the number of replacements that " "were performed::" msgstr "" +":meth:`~re.Pattern.subn` ਵਿਧੀ ਵੀ ਇਹੀ ਕੰਮ ਕਰਦੀ ਹੈ, ਪਰ ਇਹ ਇੱਕ 2-ਟਿਊਪਲ ਵਾਪਸ ਕਰਦੀ ਹੈ " +"ਜਿਸ ਵਿੱਚ ਨਵੀਂ ਸਟਰਿੰਗ ਦਾ ਮੁੱਲ ਅਤੇ ਕੀਤੀਆਂ ਗਈਆਂ ਤਬਦੀਲੀਆਂ ਦੀ ਗਿਣਤੀ ਸ਼ਾਮਲ ਹੁੰਦੀ ਹੈ:" msgid "" ">>> p = re.compile('(blue|white|red)')\n" @@ -1647,17 +2328,25 @@ msgid "" ">>> p.subn('colour', 'no colours at all')\n" "('no colours at all', 0)" msgstr "" +"\">>> p = re.compile('(blue|white|red)')\\n\"\n" +"\">>> p.subn('colour', 'blue socks and red shoes')\\n\"\n" +"\"('colour socks and colour shoes', 2)\\n\"\n" +"\">>> p.subn('colour', 'no colours at all')\\n\"\n" +"\"('no colours at all', 0)\"" msgid "" "Empty matches are replaced only when they're not adjacent to a previous " "empty match. ::" -msgstr "" +msgstr "ਖਾਲੀ ਮੇਲਾਂ ਨੂੰ ਕੇਵਲ ਉਸ ਵੇਲੇ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਉਹ ਪਿਛਲੇ ਖਾਲੀ ਮੇਲ ਦੇ ਨਾਲ ਲੱਗਦੇ ਨਾ ਹੋਣ।" msgid "" ">>> p = re.compile('x*')\n" ">>> p.sub('-', 'abxd')\n" "'-a-b--d-'" msgstr "" +">>> p = re.compile('x*')\n" +">>> p.sub('-', 'abxd')\n" +"'-a-b--d-'" msgid "" "If *replacement* is a string, any backslash escapes in it are processed. " @@ -1668,17 +2357,27 @@ msgid "" "incorporate portions of the original text in the resulting replacement " "string." msgstr "" +"ਜੇ *replacement* ਇੱਕ ਸਟਰਿੰਗ ਹੈ, ਤਾਂ ਇਸ ਵਿੱਚ ਮੌਜੂਦ ਬੈਕਸਲੈਸ਼ ਐਸਕੇਪਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``\\n`` ਨੂੰ ਇੱਕ ਨਵੀਂ ਲਾਈਨ ਅੱਖਰ ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ``\\r`` ਨੂੰ ਕੈਰਿਜ " +"ਰਿਟਰਨ ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ਆਦਿ। ਅਣਪਛਾਤੀਆਂ ਐਸਕੇਪਾਂ ਜਿਵੇਂ ``\\&`` ਨੂੰ ਜਿਵੇਂ ਦਾ ਤਿਵੇਂ ਛੱਡ ਦਿੱਤਾ " +"ਜਾਂਦਾ ਹੈ। ਬੈਕਰੈਫਰੈਂਸਾਂ, ਜਿਵੇਂ ``\\6``, ਨੂੰ RE ਵਿੱਚ ਸੰਬੰਧਿਤ ਗਰੁੱਪ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਉਪ-ਸਟਰਿੰਗ ਨਾਲ " +"ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਨਾਲ ਤੁਸੀਂ ਨਤੀਜੇ ਵਾਲੀ ਬਦਲੀ ਸਟਰਿੰਗ ਵਿੱਚ ਮੂਲ ਪਾਠ ਦੇ ਹਿੱਸੇ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹੋ।" msgid "" "This example matches the word ``section`` followed by a string enclosed in " "``{``, ``}``, and changes ``section`` to ``subsection``::" msgstr "" +"ਇਹ ਉਦਾਹਰਨ ``section`` ਸ਼ਬਦ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ ਜਿਸ ਤੋਂ ਬਾਅਦ ``{`` ਅਤੇ ``}`` ਵਿੱਚ ਘਿਰੀ " +"ਇੱਕ ਸਟਰਿੰਗ ਹੁੰਦੀ ਹੈ, ਅਤੇ ``section`` ਨੂੰ ``subsection`` ਵਿੱਚ ਬਦਲ ਦਿੰਦੀ ਹੈ:" msgid "" ">>> p = re.compile('section{ ( [^}]* ) }', re.VERBOSE)\n" ">>> p.sub(r'subsection{\\1}','section{First} section{second}')\n" "'subsection{First} subsection{second}'" msgstr "" +">>> p = re.compile('section{ ( [^}]* ) }', re.VERBOSE)\n" +">>> p.sub(r'subsection{\\1}','section{First} section{second}')\n" +"'subsection{First} subsection{second}'" msgid "" "There's also a syntax for referring to named groups as defined by the ``(?" @@ -1690,6 +2389,12 @@ msgid "" "literal character ``'0'``.) The following substitutions are all equivalent, " "but use all three variations of the replacement string. ::" msgstr "" +"``(?P...)`` ਸੰਟੈਕਸ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਨਾਮਿਤ ਗਰੁੱਪਾਂ ਦਾ ਹਵਾਲਾ ਦੇਣ ਲਈ ਵੀ ਇੱਕ ਸੰਟੈਕਸ " +"ਮੌਜੂਦ ਹੈ। ``\\g`` ਨਾਮ ``name`` ਵਾਲੇ ਗਰੁੱਪ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਉਪ-ਸਟਰਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰੇਗਾ, " +"ਅਤੇ ``\\g`` ਸੰਬੰਧਿਤ ਗਰੁੱਪ ਨੰਬਰ ਦੀ ਵਰਤੋਂ ਕਰੇਗਾ। ਇਸ ਲਈ ``\\g<2>`` , ``\\2`` ਦੇ " +"ਬਰਾਬਰ ਹੈ, ਪਰ ``\\g<2>0`` ਵਰਗੀ ਬਦਲੀ ਸਟਰਿੰਗ ਵਿੱਚ ਇਹ ਅਸਪਸ਼ਟ ਨਹੀਂ ਹੁੰਦਾ। (``\\20`` ਨੂੰ " +"ਗਰੁੱਪ 20 ਦੇ ਹਵਾਲੇ ਵਜੋਂ ਸਮਝਿਆ ਜਾਵੇਗਾ, ਨਾ ਕਿ ਗਰੁੱਪ 2 ਦੇ ਹਵਾਲੇ ਤੋਂ ਬਾਅਦ ਅੱਖਰ ``'0'`` ਵਜੋਂ।) ਹੇਠਾਂ " +"ਦਿੱਤੀਆਂ ਸਾਰੀਆਂ ਬਦਲੀਆਂ ਇੱਕੋ ਜਿਹੀਆਂ ਹਨ, ਪਰ ਬਦਲੀ ਸਟਰਿੰਗ ਦੇ ਤਿੰਨੋਂ ਰੂਪਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀਆਂ ਹਨ:" msgid "" ">>> p = re.compile('section{ (?P [^}]* ) }', re.VERBOSE)\n" @@ -1700,6 +2405,13 @@ msgid "" ">>> p.sub(r'subsection{\\g}','section{First}')\n" "'subsection{First}'" msgstr "" +"\">>> p = re.compile('section{ (?P [^}]* ) }', re.VERBOSE)\\n\"\n" +"\">>> p.sub(r'subsection{\\\\1}','section{First}')\\n\"\n" +"\"'subsection{First}'\\n\"\n" +"\">>> p.sub(r'subsection{\\\\g<1>}','section{First}')\\n\"\n" +"\"'subsection{First}'\\n\"\n" +"\">>> p.sub(r'subsection{\\\\g}','section{First}')\\n\"\n" +"\"'subsection{First}'\"" msgid "" "*replacement* can also be a function, which gives you even more control. If " @@ -1708,11 +2420,17 @@ msgid "" "a :ref:`match object ` argument for the match and can use " "this information to compute the desired replacement string and return it." msgstr "" +"*replacement* ਇੱਕ ਫੰਕਸ਼ਨ ਵੀ ਹੋ ਸਕਦਾ ਹੈ, ਜੋ ਤੁਹਾਨੂੰ ਹੋਰ ਵੱਧ ਨਿਯੰਤਰਣ ਦਿੰਦਾ ਹੈ। ਜੇ " +"*replacement* ਇੱਕ ਫੰਕਸ਼ਨ ਹੈ, ਤਾਂ *pattern* ਦੇ ਹਰ ਗੈਰ-ਓਵਰਲੈਪਿੰਗ ਮੇਲ ਲਈ ਉਹ ਫੰਕਸ਼ਨ ਕਾਲ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ। ਹਰ ਕਾਲ 'ਤੇ, ਫੰਕਸ਼ਨ ਨੂੰ ਮੇਲ ਲਈ ਇੱਕ :ref:`match object ` " +"ਆਰਗਿਊਮੈਂਟ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਇਸ ਜਾਣਕਾਰੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਲੋੜੀਂਦੀ ਬਦਲੀ ਸਟਰਿੰਗ ਤਿਆਰ ਕਰਕੇ " +"ਵਾਪਸ ਕਰ ਸਕਦਾ ਹੈ।" msgid "" "In the following example, the replacement function translates decimals into " "hexadecimal::" msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੇ ਉਦਾਹਰਨ ਵਿੱਚ, ਬਦਲੀ ਫੰਕਸ਼ਨ ਦਸ਼ਮਲਵ ਸੰਖਿਆਵਾਂ ਨੂੰ ਹੈਕਸਾਡੈਸੀਮਲ ਵਿੱਚ ਤਬਦੀਲ ਕਰਦਾ ਹੈ:" msgid "" ">>> def hexrepl(match):\n" @@ -1724,6 +2442,14 @@ msgid "" ">>> p.sub(hexrepl, 'Call 65490 for printing, 49152 for user code.')\n" "'Call 0xffd2 for printing, 0xc000 for user code.'" msgstr "" +">>> def hexrepl(match):\n" +"... \"Return the hex string for a decimal number\"\n" +"... value = int(match.group())\n" +"... return hex(value)\n" +"...\n" +">>> p = re.compile(r'\\d+')\n" +">>> p.sub(hexrepl, 'Call 65490 for printing, 49152 for user code.')\n" +"'Call 0xffd2 for printing, 0xc000 for user code.'" msgid "" "When using the module-level :func:`re.sub` function, the pattern is passed " @@ -1733,9 +2459,14 @@ msgid "" "pattern string, e.g. ``sub(\"(?i)b+\", \"x\", \"bbbb BBBB\")`` returns ``'x " "x'``." msgstr "" +"ਮੋਡੀਊਲ-ਪੱਧਰੀ :func:`re.sub` ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਪੈਟਰਨ ਪਹਿਲੇ ਆਰਗਿਊਮੈਂਟ ਵਜੋਂ ਦਿੱਤਾ ਜਾਂਦਾ " +"ਹੈ। ਪੈਟਰਨ ਨੂੰ ਇੱਕ ਆਬਜੈਕਟ ਜਾਂ ਸਟਰਿੰਗ ਵਜੋਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ; ਜੇ ਤੁਹਾਨੂੰ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਫਲੈਗ " +"ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਜਾਂ ਤਾਂ ਪਹਿਲੇ ਪੈਰਾਮੀਟਰ ਵਜੋਂ ਇੱਕ ਪੈਟਰਨ ਆਬਜੈਕਟ ਵਰਤਣਾ ਹੋਵੇਗਾ " +"ਜਾਂ ਪੈਟਰਨ ਸਟਰਿੰਗ ਵਿੱਚ ਐਂਬੈਡਡ ਮੋਡੀਫਾਇਰ ਵਰਤਣੇ ਹੋਣਗੇ। ਉਦਾਹਰਨ ਲਈ, ``sub(\"(?i)b+\", \"x\", " +"\"bbbb BBBB\")`` ਦਾ ਨਤੀਜਾ ``'x x'`` ਹੁੰਦਾ ਹੈ।" msgid "Common problems" -msgstr "" +msgstr "ਆਮ ਸਮੱਸਿਆਵਾਂ" msgid "" "Regular expressions are a powerful tool for some applications, but in some " @@ -1743,20 +2474,29 @@ msgid "" "you may expect them to. This section will point out some of the most common " "pitfalls." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਸਾਧਨ ਹਨ, ਪਰ ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ ਉਹਨਾਂ ਦਾ " +"ਵਿਹਾਰ ਸਹਿਜ ਨਹੀਂ ਹੁੰਦਾ ਅਤੇ ਕਈ ਵਾਰ ਉਹ ਤੁਹਾਡੀ ਉਮੀਦ ਅਨੁਸਾਰ ਕੰਮ ਨਹੀਂ ਕਰਦੇ। ਇਹ ਭਾਗ ਕੁਝ ਸਭ ਤੋਂ " +"ਆਮ ਗਲਤੀਆਂ ਅਤੇ ਮੁਸ਼ਕਲਾਂ ਵੱਲ ਧਿਆਨ ਦਿਵਾਏਗਾ।" msgid "Use string methods" -msgstr "" +msgstr "ਸਟਰਿੰਗ ਵਿਧੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰੋ" msgid "" "Sometimes using the :mod:`re` module is a mistake. If you're matching a " -"fixed string, or a single character class, and you're not using any :mod:" -"`re` features such as the :const:`~re.IGNORECASE` flag, then the full power " -"of regular expressions may not be required. Strings have several methods for " -"performing operations with fixed strings and they're usually much faster, " -"because the implementation is a single small C loop that's been optimized " -"for the purpose, instead of the large, more generalized regular expression " -"engine." -msgstr "" +"fixed string, or a single character class, and you're not using " +"any :mod:`re` features such as the :const:`~re.IGNORECASE` flag, then the " +"full power of regular expressions may not be required. Strings have several " +"methods for performing operations with fixed strings and they're usually " +"much faster, because the implementation is a single small C loop that's been " +"optimized for the purpose, instead of the large, more generalized regular " +"expression engine." +msgstr "" +"ਕਈ ਵਾਰ :mod:`re` ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਗਲਤੀ ਹੋ ਸਕਦੀ ਹੈ। ਜੇ ਤੁਸੀਂ ਕਿਸੇ ਸਥਿਰ ਸਟਰਿੰਗ ਜਾਂ ਇੱਕ " +"ਹੀ ਅੱਖਰ ਵਰਗ ਨਾਲ ਮੇਲ ਕਰ ਰਹੇ ਹੋ ਅਤੇ ਤੁਸੀਂ :mod:`re` ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ " +"ਜਿਵੇਂ :const:`~re.IGNORECASE` ਫਲੈਗ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਰਹੇ, ਤਾਂ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਦੀ ਪੂਰੀ " +"ਤਾਕਤ ਦੀ ਲੋੜ ਨਹੀਂ ਹੋ ਸਕਦੀ। ਸਟਰਿੰਗਾਂ ਵਿੱਚ ਸਥਿਰ ਸਟਰਿੰਗਾਂ ਨਾਲ ਕਾਰਵਾਈਆਂ ਕਰਨ ਲਈ ਕਈ ਵਿਧੀਆਂ " +"ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ ਉਹ ਆਮ ਤੌਰ 'ਤੇ ਕਾਫ਼ੀ ਤੇਜ਼ ਹੁੰਦੀਆਂ ਹਨ, ਕਿਉਂਕਿ ਉਹਨਾਂ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਇੱਕ ਛੋਟੇ ਅਤੇ ਉਦੇਸ਼-" +"ਅਨੁਕੂਲਿਤ C ਲੂਪ 'ਤੇ ਆਧਾਰਿਤ ਹੁੰਦੀ ਹੈ, ਨਾ ਕਿ ਵੱਡੇ ਅਤੇ ਆਮ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਇੰਜਣ 'ਤੇ।" msgid "" "One example might be replacing a single fixed string with another one; for " @@ -1766,9 +2506,16 @@ msgid "" "turning ``swordfish`` into ``sdeedfish``, but the naive RE ``word`` would " "have done that, too. (To avoid performing the substitution on parts of " "words, the pattern would have to be ``\\bword\\b``, in order to require that " -"``word`` have a word boundary on either side. This takes the job beyond :" -"meth:`!replace`'s abilities.)" +"``word`` have a word boundary on either side. This takes the job " +"beyond :meth:`!replace`'s abilities.)" msgstr "" +"ਇੱਕ ਉਦਾਹਰਨ ਕਿਸੇ ਇੱਕ ਸਥਿਰ ਸਟਰਿੰਗ ਨੂੰ ਦੂਜੀ ਨਾਲ ਬਦਲਣ ਦੀ ਹੋ ਸਕਦੀ ਹੈ; ਉਦਾਹਰਨ ਲਈ, ਤੁਸੀਂ " +"``word`` ਨੂੰ ``deed`` ਨਾਲ ਬਦਲਣਾ ਚਾਹ ਸਕਦੇ ਹੋ। ਇਸ ਲਈ :func:`re.sub` ਠੀਕ ਲੱਗਦਾ ਹੈ, " +"ਪਰ :meth:`~str.replace` ਵਿਧੀ ਬਾਰੇ ਵੀ ਸੋਚੋ। ਧਿਆਨ ਦਿਓ ਕਿ :meth:`!replace` ਸ਼ਬਦਾਂ ਦੇ " +"ਅੰਦਰ ਮੌਜੂਦ ``word`` ਨੂੰ ਵੀ ਬਦਲ ਦੇਵੇਗੀ, ਜਿਸ ਨਾਲ ``swordfish`` , ``sdeedfish`` ਬਣ " +"ਜਾਵੇਗਾ, ਪਰ ਸਧਾਰਣ RE ``word`` ਵੀ ਇਹੀ ਕਰੇਗਾ। (ਸ਼ਬਦਾਂ ਦੇ ਹਿੱਸਿਆਂ 'ਤੇ ਬਦਲੀ ਤੋਂ ਬਚਣ ਲਈ, " +"ਪੈਟਰਨ ``\\bword\\b`` ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਤਾਂ ਜੋ ``word`` ਦੇ ਦੋਵਾਂ ਪਾਸਿਆਂ 'ਤੇ ਸ਼ਬਦ ਸੀਮਾ ਹੋਵੇ। " +"ਇਹ ਕੰਮ :meth:`!replace` ਦੀ ਸਮਰੱਥਾ ਤੋਂ ਪਰੇ ਹੈ।)" msgid "" "Another common task is deleting every occurrence of a single character from " @@ -1777,14 +2524,20 @@ msgid "" "capable of doing both tasks and will be faster than any regular expression " "operation can be." msgstr "" +"ਇੱਕ ਹੋਰ ਆਮ ਕੰਮ ਹੈ ਸਟਰਿੰਗ ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਅੱਖਰ ਦੀ ਹਰ ਘਟਨਾ ਨੂੰ ਹਟਾਉਣਾ ਜਾਂ ਉਸਨੂੰ ਕਿਸੇ ਹੋਰ ਇੱਕ ਅੱਖਰ " +"ਨਾਲ ਬਦਲਣਾ। ਤੁਸੀਂ ਇਹ ਕੰਮ ``re.sub('\\n', ' ', S)`` ਵਰਗੀ ਕਿਸੇ ਚੀਜ਼ ਨਾਲ ਕਰ ਸਕਦੇ ਹੋ, " +"ਪਰ :meth:`~str.translate` ਇਹ ਦੋਵੇਂ ਕੰਮ ਕਰ ਸਕਦੀ ਹੈ ਅਤੇ ਕਿਸੇ ਵੀ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਕਾਰਵਾਈ " +"ਨਾਲੋਂ ਤੇਜ਼ ਹੋਵੇਗੀ।" msgid "" "In short, before turning to the :mod:`re` module, consider whether your " "problem can be solved with a faster and simpler string method." msgstr "" +"ਸੰਖੇਪ ਵਿੱਚ, :mod:`re` ਮੋਡੀਊਲ ਵੱਲ ਮੁੜਨ ਤੋਂ ਪਹਿਲਾਂ ਇਹ ਵਿਚਾਰ ਕਰੋ ਕਿ ਕੀ ਤੁਹਾਡੀ ਸਮੱਸਿਆ ਨੂੰ ਕਿਸੇ " +"ਤੇਜ਼ ਅਤੇ ਸਧਾਰਣ ਸਟਰਿੰਗ ਵਿਧੀ ਨਾਲ ਹੱਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "prefixmatch() (aka match) versus search()" -msgstr "" +msgstr "prefixmatch() (ਜਿਸਨੂੰ match ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ) ਬਨਾਮ search()" msgid "" ":func:`~re.prefixmatch` was added in Python 3.15 as the :ref:`preferred name " @@ -1792,12 +2545,19 @@ msgid "" "known as :func:`!match` and the distinction with :func:`~re.search` was " "often misunderstood." msgstr "" +":func:`~re.prefixmatch` ਨੂੰ Python 3.15 ਵਿੱਚ :func:`~re.match` ਲਈ :ref:`ਤਰਜੀਹੀ " +"ਨਾਮ ` ਵਜੋਂ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਸੀ। ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਇਹ ਸਿਰਫ਼ :func:`!" +"match` ਦੇ ਨਾਮ ਨਾਲ ਜਾਣਿਆ ਜਾਂਦਾ ਸੀ ਅਤੇ :func:`~re.search` ਨਾਲ ਇਸਦਾ ਅੰਤਰ ਅਕਸਰ ਗਲਤ " +"ਸਮਝਿਆ ਜਾਂਦਾ ਸੀ।" msgid "" ":func:`!prefixmatch` aka :func:`!match` only checks if the RE matches at the " "beginning of the string while :func:`!search` scans forward through the " "string for a match. ::" msgstr "" +":func:`!prefixmatch` ਜਾਂ :func:`!match` ਸਿਰਫ਼ ਇਹ ਜਾਂਚਦਾ ਹੈ ਕਿ RE ਸਟਰਿੰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ " +"ਮੇਲ ਖਾਂਦਾ ਹੈ ਜਾਂ ਨਹੀਂ, ਜਦਕਿ :func:`!search` ਮੇਲ ਲੱਭਣ ਲਈ ਸਟਰਿੰਗ ਵਿੱਚ ਅੱਗੇ ਵਧਦਿਆਂ ਖੋਜ ਕਰਦਾ " +"ਹੈ।" msgid "" ">>> print(re.prefixmatch('super', 'superstition').span())\n" @@ -1805,11 +2565,17 @@ msgid "" ">>> print(re.prefixmatch('super', 'insuperable'))\n" "None" msgstr "" +">>> print(re.prefixmatch('super', 'superstition').span())\n" +"(0, 5)\n" +">>> print(re.prefixmatch('super', 'insuperable'))\n" +"None" msgid "" "On the other hand, :func:`~re.search` scans forward through the string, " "reporting the first match it finds. ::" msgstr "" +"ਦੂਜੇ ਪਾਸੇ, :func:`~re.search` ਸਟਰਿੰਗ ਵਿੱਚ ਅੱਗੇ ਵਧਦਿਆਂ ਖੋਜ ਕਰਦਾ ਹੈ ਅਤੇ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਮਿਲੇ ਮੇਲ " +"ਦੀ ਰਿਪੋਰਟ ਕਰਦਾ ਹੈ:" msgid "" ">>> print(re.search('super', 'superstition').span())\n" @@ -1817,14 +2583,21 @@ msgid "" ">>> print(re.search('super', 'insuperable').span())\n" "(2, 7)" msgstr "" +">>> print(re.search('super', 'superstition').span())\n" +"(0, 5)\n" +">>> print(re.search('super', 'insuperable').span())\n" +"(2, 7)" msgid "" -"This distinction is important to remember when using the old :func:`~re." -"match` name in code requiring compatibility with older Python versions." +"This distinction is important to remember when using the " +"old :func:`~re.match` name in code requiring compatibility with older Python " +"versions." msgstr "" +"ਪੁਰਾਣੇ Python ਸੰਸਕਰਣਾਂ ਨਾਲ ਅਨੁਕੂਲਤਾ ਦੀ ਲੋੜ ਵਾਲੇ ਕੋਡ ਵਿੱਚ ਪੁਰਾਣੇ :func:`~re.match` ਨਾਮ ਦੀ " +"ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ ਇਸ ਅੰਤਰ ਨੂੰ ਯਾਦ ਰੱਖਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ।" msgid "Greedy versus non-greedy" -msgstr "" +msgstr "ਲਾਲਚੀ ਬਨਾਮ ਗੈਰ-ਲਾਲਚੀ" msgid "" "When repeating a regular expression, as in ``a*``, the resulting action is " @@ -1833,6 +2606,11 @@ msgid "" "brackets surrounding an HTML tag. The naive pattern for matching a single " "HTML tag doesn't work because of the greedy nature of ``.*``. ::" msgstr "" +"ਜਦੋਂ ਕਿਸੇ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਨੂੰ ਦੁਹਰਾਇਆ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ``a*`` ਵਿੱਚ, ਤਾਂ ਇਸ ਦਾ ਨਤੀਜਾ ਇਹ ਹੁੰਦਾ ਹੈ " +"ਕਿ ਇਹ ਸੰਭਵ ਹੋ ਸਕਣ ਵਾਲੇ ਪੈਟਰਨ ਦੇ ਸਭ ਤੋਂ ਵੱਡੇ ਹਿੱਸੇ ਨੂੰ ਖਪਾ ਲੈਂਦਾ ਹੈ। ਇਹ ਗੱਲ ਅਕਸਰ ਉਸ ਵੇਲੇ ਸਮੱਸਿਆ " +"ਪੈਦਾ ਕਰਦੀ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਸੰਤੁਲਿਤ ਡਿਲੀਮੀਟਰਾਂ ਦੀ ਜੋੜੀ ਨਾਲ ਮੇਲ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਜਿਵੇਂ HTML ਟੈਗ ਦੇ " +"ਆਲੇ-ਦੁਆਲੇ ਵਾਲੀਆਂ ਐਂਗਲ ਬ੍ਰੈਕਟਾਂ। ਇੱਕ HTML ਟੈਗ ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ ਸਧਾਰਣ ਪੈਟਰਨ ``.*`` ਦੀ ਲਾਲਚੀ " +"ਪ੍ਰਕਿਰਤੀ ਕਾਰਨ ਠੀਕ ਕੰਮ ਨਹੀਂ ਕਰਦਾ।" msgid "" ">>> s = 'Title'\n" @@ -1843,6 +2621,13 @@ msgid "" ">>> print(re.prefixmatch('<.*>', s).group())\n" "Title" msgstr "" +"\">>> s = 'Title'\\n\"\n" +"\">>> len(s)\\n\"\n" +"\"32\\n\"\n" +"\">>> print(re.prefixmatch('<.*>', s).span())\\n\"\n" +"\"(0, 32)\\n\"\n" +"\">>> print(re.prefixmatch('<.*>', s).group())\\n\"\n" +"\"Title\"" msgid "" "The RE matches the ``'<'`` in ``''``, and the ``.*`` consumes the rest " @@ -1852,6 +2637,11 @@ msgid "" "The final match extends from the ``'<'`` in ``''`` to the ``'>'`` in " "``''``, which isn't what you want." msgstr "" +"RE, ``''`` ਵਿੱਚ ਮੌਜੂਦ ``'<'`` ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ ਅਤੇ ``.*`` ਬਾਕੀ ਸਾਰੀ ਸਟਰਿੰਗ ਨੂੰ " +"ਖਪਾ ਲੈਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ RE ਵਿੱਚ ਹੋਰ ਹਿੱਸਾ ਬਾਕੀ ਰਹਿੰਦਾ ਹੈ ਅਤੇ ``>`` ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਨਾਲ ਮੇਲ ਨਹੀਂ " +"ਖਾ ਸਕਦਾ, ਇਸ ਲਈ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਇੰਜਣ ਇੱਕ-ਇੱਕ ਅੱਖਰ ਪਿੱਛੇ ਹਟਦਾ ਹੈ ਜਦ ਤੱਕ ਉਸਨੂੰ ``>`` ਲਈ ਮੇਲ " +"ਨਹੀਂ ਮਿਲ ਜਾਂਦਾ। ਅੰਤਿਮ ਮੇਲ ``''`` ਦੇ ``'<'`` ਤੋਂ ਲੈ ਕੇ ``''`` ਦੇ ``'>'`` " +"ਤੱਕ ਫੈਲਦਾ ਹੈ, ਜੋ ਕਿ ਤੁਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ।" msgid "" "In this case, the solution is to use the non-greedy quantifiers ``*?``, ``+?" @@ -1860,11 +2650,18 @@ msgid "" "matches, and when it fails, the engine advances a character at a time, " "retrying the ``'>'`` at every step. This produces just the right result::" msgstr "" +"ਇਸ ਮਾਮਲੇ ਵਿੱਚ ਹੱਲ ਹੈ ਗੈਰ-ਲਾਲਚੀ ਮਾਤਰਾਕਾਰਾਂ ``*?``, ``+?``, ``??`` ਜਾਂ ``{m,n}?`` ਦੀ " +"ਵਰਤੋਂ ਕਰਨਾ, ਜੋ ਸੰਭਵ ਹੋ ਸਕਣ ਵਾਲੇ ਸਭ ਤੋਂ *ਘੱਟ* ਪਾਠ ਨਾਲ ਮੇਲ ਕਰਦੇ ਹਨ। ਉੱਪਰਲੇ ਉਦਾਹਰਨ ਵਿੱਚ, ਪਹਿਲੇ " +"``'<'`` ਨਾਲ ਮੇਲ ਹੋਣ ਤੋਂ ਤੁਰੰਤ ਬਾਅਦ ``'>'`` ਦੀ ਜਾਂਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਜਦੋਂ ਇਹ ਅਸਫਲ ਹੋ ਜਾਂਦੀ " +"ਹੈ, ਤਾਂ ਇੰਜਣ ਇੱਕ-ਇੱਕ ਅੱਖਰ ਅੱਗੇ ਵਧਦਾ ਹੈ ਅਤੇ ਹਰ ਪੜਾਅ 'ਤੇ ``'>'`` ਦੀ ਮੁੜ ਜਾਂਚ ਕਰਦਾ ਹੈ। ਇਸ ਨਾਲ " +"ਬਿਲਕੁਲ ਸਹੀ ਨਤੀਜਾ ਮਿਲਦਾ ਹੈ:" msgid "" ">>> print(re.prefixmatch('<.*?>', s).group())\n" "" msgstr "" +"\">>> print(re.prefixmatch('<.*?>', s).group())\\n\"\n" +"\"\"" msgid "" "(Note that parsing HTML or XML with regular expressions is painful. Quick-" @@ -1874,9 +2671,14 @@ msgid "" "patterns will be *very* complicated. Use an HTML or XML parser module for " "such tasks.)" msgstr "" +"(ਧਿਆਨ ਦਿਓ ਕਿ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨਾਲ HTML ਜਾਂ XML ਨੂੰ ਪਾਰਸ ਕਰਨਾ ਕਾਫ਼ੀ ਔਖਾ ਹੁੰਦਾ ਹੈ। ਸਧਾਰਣ " +"ਪੈਟਰਨ ਆਮ ਮਾਮਲਿਆਂ ਨੂੰ ਸੰਭਾਲ ਸਕਦੇ ਹਨ, ਪਰ HTML ਅਤੇ XML ਵਿੱਚ ਕਈ ਵਿਸ਼ੇਸ਼ ਮਾਮਲੇ ਹੁੰਦੇ ਹਨ ਜੋ ਆਮ " +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨੂੰ ਤੋੜ ਸਕਦੇ ਹਨ। ਜਦ ਤੱਕ ਤੁਸੀਂ ਹਰ ਸੰਭਵ ਮਾਮਲੇ ਨੂੰ ਸੰਭਾਲਣ ਵਾਲਾ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ " +"ਲਿਖੋਗੇ, ਪੈਟਰਨ *ਬਹੁਤ* ਜਟਿਲ ਹੋ ਜਾਵੇਗਾ। ਅਜਿਹੇ ਕੰਮਾਂ ਲਈ HTML ਜਾਂ XML ਪਾਰਸਰ ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ " +"ਕਰੋ।)" msgid "Using re.VERBOSE" -msgstr "" +msgstr "re.VERBOSE ਦੀ ਵਰਤੋਂ" msgid "" "By now you've probably noticed that regular expressions are a very compact " @@ -1884,12 +2686,18 @@ msgid "" "become lengthy collections of backslashes, parentheses, and metacharacters, " "making them difficult to read and understand." msgstr "" +"ਹੁਣ ਤੱਕ ਤੁਸੀਂ ਸ਼ਾਇਦ ਨੋਟ ਕੀਤਾ ਹੋਵੇਗਾ ਕਿ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਇੱਕ ਬਹੁਤ ਸੰਖੇਪ ਨੋਟੇਸ਼ਨ ਹਨ, ਪਰ ਉਹ ਬਹੁਤ " +"ਪੜ੍ਹਨਯੋਗ ਨਹੀਂ ਹੁੰਦੇ। ਦਰਮਿਆਨੀ ਜਟਿਲਤਾ ਵਾਲੇ RE ਬੈਕਸਲੈਸ਼ਾਂ, ਕੋਠੀਆਂ ਅਤੇ ਮੈਟਾਕੈਰੈਕਟਰਾਂ ਦੇ ਲੰਮੇ ਸਮੂਹ ਬਣ " +"ਸਕਦੇ ਹਨ, ਜਿਸ ਕਾਰਨ ਉਹਨਾਂ ਨੂੰ ਪੜ੍ਹਨਾ ਅਤੇ ਸਮਝਣਾ ਔਖਾ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "" "For such REs, specifying the :const:`re.VERBOSE` flag when compiling the " "regular expression can be helpful, because it allows you to format the " "regular expression more clearly." msgstr "" +"ਅਜਿਹੇ RE ਲਈ, ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਨੂੰ ਕੰਪਾਇਲ ਕਰਦੇ ਸਮੇਂ :const:`re.VERBOSE` ਫਲੈਗ ਨਿਰਧਾਰਤ ਕਰਨਾ " +"ਮਦਦਗਾਰ ਹੋ ਸਕਦਾ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਤੁਹਾਨੂੰ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਨੂੰ ਹੋਰ ਸਪਸ਼ਟ ਢੰਗ ਨਾਲ ਫਾਰਮੈਟ ਕਰਨ ਦੀ " +"ਆਗਿਆ ਦਿੰਦਾ ਹੈ।" msgid "" "The ``re.VERBOSE`` flag has several effects. Whitespace in the regular " @@ -1900,6 +2708,12 @@ msgid "" "extend from a ``#`` character to the next newline. When used with triple-" "quoted strings, this enables REs to be formatted more neatly::" msgstr "" +"``re.VERBOSE`` ਫਲੈਗ ਦੇ ਕਈ ਪ੍ਰਭਾਵ ਹਨ। ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਵਿੱਚ ਉਹ ਖਾਲੀ ਥਾਂ ਜੋ ਕਿਸੇ ਅੱਖਰ ਵਰਗ " +"ਦੇ ਅੰਦਰ ਨਹੀਂ ਹੈ, ਅਣਡਿੱਠੀ ਕਰ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ``dog | cat`` ਵਰਗੀ ਐਕਸਪ੍ਰੈਸ਼ਨ " +"ਘੱਟ ਪੜ੍ਹਨਯੋਗ ``dog|cat`` ਦੇ ਬਰਾਬਰ ਹੈ, ਪਰ ``[a b]`` ਹਾਲੇ ਵੀ ``'a'``, ``'b'`` ਜਾਂ ਇੱਕ " +"ਖਾਲੀ ਥਾਂ ਨਾਲ ਮੇਲ ਖਾਏਗੀ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਤੁਸੀਂ RE ਦੇ ਅੰਦਰ ਟਿੱਪਣੀਆਂ ਵੀ ਲਿਖ ਸਕਦੇ ਹੋ; ਟਿੱਪਣੀਆਂ " +"``#`` ਅੱਖਰ ਤੋਂ ਅਗਲੀ ਨਵੀਂ ਲਾਈਨ ਤੱਕ ਫੈਲਦੀਆਂ ਹਨ। ਜਦੋਂ ਇਸਦੀ ਵਰਤੋਂ triple-quoted ਸਟਰਿੰਗਾਂ ਨਾਲ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ RE ਨੂੰ ਹੋਰ ਸੁਚੱਜੇ ਢੰਗ ਨਾਲ ਫਾਰਮੈਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" "pat = re.compile(r\"\"\"\n" @@ -1911,15 +2725,25 @@ msgid "" " \\s*$ # Trailing whitespace to end-of-line\n" "\"\"\", re.VERBOSE)" msgstr "" +"\"pat = re.compile(r\\\"\\\"\\\"\\n\"\n" +"\" \\\\s* # Skip leading whitespace\\n\"\n" +"\" (?P
[^:]+) # Header name\\n\"\n" +"\" \\\\s* : # Whitespace, and a colon\\n\"\n" +"\" (?P.*?) # The header's value -- *? used to\\n\"\n" +"\" # lose the following trailing whitespace\\n\"\n" +"\" \\\\s*$ # Trailing whitespace to end-of-line\\n\"\n" +"\"\\\"\\\"\\\", re.VERBOSE)\"" msgid "This is far more readable than::" -msgstr "" +msgstr "ਇਹ ਹੇਠਾਂ ਦਿੱਤੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਨਾਲੋਂ ਕਾਫ਼ੀ ਵੱਧ ਪੜ੍ਹਨਯੋਗ ਹੈ:" msgid "pat = re.compile(r\"\\s*(?P
[^:]+)\\s*:(?P.*?)\\s*$\")" msgstr "" +"\"pat = re.compile(r\\\"\\\\s*(?P
[^:]+)\\\\s*:(?P.*?)\\\\s*$\\" +"\")\"" msgid "Feedback" -msgstr "" +msgstr "ਫੀਡਬੈਕ" msgid "" "Regular expressions are a complicated topic. Did this document help you " @@ -1927,6 +2751,10 @@ msgid "" "encountered that weren't covered here? If so, please send suggestions for " "improvements to the :ref:`issue tracker `." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਇੱਕ ਜਟਿਲ ਵਿਸ਼ਾ ਹਨ। ਕੀ ਇਸ ਦਸਤਾਵੇਜ਼ ਨੇ ਤੁਹਾਨੂੰ ਉਹਨਾਂ ਨੂੰ ਸਮਝਣ ਵਿੱਚ ਮਦਦ ਕੀਤੀ? " +"ਕੀ ਕੋਈ ਭਾਗ ਅਸਪਸ਼ਟ ਸੀ, ਜਾਂ ਕੀ ਤੁਹਾਨੂੰ ਅਜਿਹੀਆਂ ਸਮੱਸਿਆਵਾਂ ਆਈਆਂ ਜਿਨ੍ਹਾਂ ਬਾਰੇ ਇੱਥੇ ਚਰਚਾ ਨਹੀਂ ਕੀਤੀ " +"ਗਈ? ਜੇ ਹਾਂ, ਤਾਂ ਕਿਰਪਾ ਕਰਕੇ ਸੁਧਾਰਾਂ ਲਈ ਆਪਣੇ ਸੁਝਾਅ :ref:`issue tracker ` ਨੂੰ ਭੇਜੋ।" msgid "" "The most complete book on regular expressions is almost certainly Jeffrey " @@ -1937,3 +2765,10 @@ msgid "" "edition covered Python's now-removed :mod:`!regex` module, which won't help " "you much.) Consider checking it out from your library." msgstr "" +"ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਬਾਰੇ ਸਭ ਤੋਂ ਸੰਪੂਰਨ ਕਿਤਾਬ ਲਗਭਗ ਨਿਸ਼ਚਿਤ ਤੌਰ 'ਤੇ Jeffrey Friedl ਦੀ " +"*Mastering Regular Expressions* ਹੈ, ਜੋ O'Reilly ਵੱਲੋਂ ਪ੍ਰਕਾਸ਼ਿਤ ਕੀਤੀ ਗਈ ਹੈ। ਦੁੱਖ ਦੀ ਗੱਲ " +"ਹੈ ਕਿ ਇਹ ਮੁੱਖ ਤੌਰ 'ਤੇ Perl ਅਤੇ Java ਦੀਆਂ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਸ਼ੈਲੀਆਂ 'ਤੇ ਕੇਂਦ੍ਰਿਤ ਹੈ ਅਤੇ ਇਸ ਵਿੱਚ " +"Python ਨਾਲ ਸੰਬੰਧਿਤ ਸਮੱਗਰੀ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ Python ਪ੍ਰੋਗਰਾਮਿੰਗ ਲਈ ਇਹ ਇੱਕ ਸੰਦਰਭ ਕਿਤਾਬ ਵਜੋਂ " +"ਬਹੁਤ ਲਾਭਕਾਰੀ ਨਹੀਂ ਹੋਵੇਗੀ। (ਪਹਿਲੇ ਸੰਸਕਰਣ ਵਿੱਚ Python ਦੇ ਹੁਣ ਹਟਾਏ ਜਾ ਚੁੱਕੇ :mod:`!regex` " +"ਮੋਡੀਊਲ ਦੀ ਚਰਚਾ ਸੀ, ਜੋ ਤੁਹਾਡੀ ਵੱਡੀ ਮਦਦ ਨਹੀਂ ਕਰੇਗੀ।) ਫਿਰ ਵੀ, ਤੁਸੀਂ ਇਸਨੂੰ ਆਪਣੀ ਲਾਇਬ੍ਰੇਰੀ ਤੋਂ " +"ਵੇਖ ਸਕਦੇ ਹੋ।" diff --git a/howto/remote_debugging.po b/howto/remote_debugging.po deleted file mode 100644 index 98c39e4..0000000 --- a/howto/remote_debugging.po +++ /dev/null @@ -1,935 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Remote debugging attachment protocol" -msgstr "" - -msgid "" -"This protocol enables external tools to attach to a running CPython process " -"and execute Python code remotely." -msgstr "" - -msgid "" -"Most platforms require elevated privileges to attach to another Python " -"process." -msgstr "" - -msgid "Disabling remote debugging" -msgstr "" - -msgid "To disable remote debugging support, use any of the following:" -msgstr "" - -msgid "" -"Set the :envvar:`PYTHON_DISABLE_REMOTE_DEBUG` environment variable to ``1`` " -"before starting the interpreter." -msgstr "" - -msgid "Use the :option:`-X disable_remote_debug` command-line option." -msgstr "" - -msgid "Compile Python with the :option:`--without-remote-debug` build flag." -msgstr "" - -msgid "Permission requirements" -msgstr "" - -msgid "" -"Attaching to a running Python process for remote debugging requires elevated " -"privileges on most platforms. The specific requirements and troubleshooting " -"steps depend on your operating system:" -msgstr "" - -msgid "Linux" -msgstr "" - -msgid "" -"The tracer process must have the ``CAP_SYS_PTRACE`` capability or equivalent " -"privileges. You can only trace processes you own and can signal. Tracing may " -"fail if the process is already being traced, or if it is running with set-" -"user-ID or set-group-ID. Security modules like Yama may further restrict " -"tracing." -msgstr "" - -msgid "To temporarily relax ptrace restrictions (until reboot), run:" -msgstr "" - -msgid "``echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope``" -msgstr "" - -msgid "" -"Disabling ``ptrace_scope`` reduces system hardening and should only be done " -"in trusted environments." -msgstr "" - -msgid "" -"If running inside a container, use ``--cap-add=SYS_PTRACE`` or ``--" -"privileged``, and run as root if needed." -msgstr "" - -msgid "Try re-running the command with elevated privileges:" -msgstr "" - -msgid "``sudo -E !!``" -msgstr "" - -msgid "macOS" -msgstr "" - -msgid "" -"To attach to another process, you typically need to run your debugging tool " -"with elevated privileges. This can be done by using ``sudo`` or running as " -"root." -msgstr "" - -msgid "" -"Even when attaching to processes you own, macOS may block debugging unless " -"the debugger is run with root privileges due to system security restrictions." -msgstr "" - -msgid "Windows" -msgstr "" - -msgid "" -"To attach to another process, you usually need to run your debugging tool " -"with administrative privileges. Start the command prompt or terminal as " -"Administrator." -msgstr "" - -msgid "" -"Some processes may still be inaccessible even with Administrator rights, " -"unless you have the ``SeDebugPrivilege`` privilege enabled." -msgstr "" - -msgid "" -"To resolve file or folder access issues, adjust the security permissions:" -msgstr "" - -msgid "Right-click the file or folder and select **Properties**." -msgstr "" - -msgid "Go to the **Security** tab to view users and groups with access." -msgstr "" - -msgid "Click **Edit** to modify permissions." -msgstr "" - -msgid "Select your user account." -msgstr "" - -msgid "In **Permissions**, check **Read** or **Full control** as needed." -msgstr "" - -msgid "Click **Apply**, then **OK** to confirm." -msgstr "" - -msgid "" -"Ensure you've satisfied all :ref:`permission-requirements` before proceeding." -msgstr "" - -msgid "" -"This section describes the low-level protocol that enables external tools to " -"inject and execute a Python script within a running CPython process." -msgstr "" - -msgid "" -"This mechanism forms the basis of the :func:`sys.remote_exec` function, " -"which instructs a remote Python process to execute a ``.py`` file. However, " -"this section does not document the usage of that function. Instead, it " -"provides a detailed explanation of the underlying protocol, which takes as " -"input the ``pid`` of a target Python process and the path to a Python source " -"file to be executed. This information supports independent reimplementation " -"of the protocol, regardless of programming language." -msgstr "" - -msgid "" -"The execution of the injected script depends on the interpreter reaching a " -"safe evaluation point. As a result, execution may be delayed depending on " -"the runtime state of the target process." -msgstr "" - -msgid "" -"Once injected, the script is executed by the interpreter within the target " -"process the next time a safe evaluation point is reached. This approach " -"enables remote execution capabilities without modifying the behavior or " -"structure of the running Python application." -msgstr "" - -msgid "" -"Subsequent sections provide a step-by-step description of the protocol, " -"including techniques for locating interpreter structures in memory, safely " -"accessing internal fields, and triggering code execution. Platform-specific " -"variations are noted where applicable, and example implementations are " -"included to clarify each operation." -msgstr "" - -msgid "Locating the PyRuntime structure" -msgstr "" - -msgid "" -"CPython places the ``PyRuntime`` structure in a dedicated binary section to " -"help external tools find it at runtime. The name and format of this section " -"vary by platform. For example, ``.PyRuntime`` is used on ELF systems, and " -"``__DATA,__PyRuntime`` is used on macOS. Tools can find the offset of this " -"structure by examining the binary on disk." -msgstr "" - -msgid "" -"The ``PyRuntime`` structure contains CPython’s global interpreter state and " -"provides access to other internal data, including the list of interpreters, " -"thread states, and debugger support fields." -msgstr "" - -msgid "" -"To work with a remote Python process, a debugger must first find the memory " -"address of the ``PyRuntime`` structure in the target process. This address " -"can’t be hardcoded or calculated from a symbol name, because it depends on " -"where the operating system loaded the binary." -msgstr "" - -msgid "" -"The method for finding ``PyRuntime`` depends on the platform, but the steps " -"are the same in general:" -msgstr "" - -msgid "" -"Find the base address where the Python binary or shared library was loaded " -"in the target process." -msgstr "" - -msgid "" -"Use the on-disk binary to locate the offset of the ``.PyRuntime`` section." -msgstr "" - -msgid "" -"Add the section offset to the base address to compute the address in memory." -msgstr "" - -msgid "" -"The sections below explain how to do this on each supported platform and " -"include example code." -msgstr "" - -msgid "Linux (ELF)" -msgstr "" - -msgid "To find the ``PyRuntime`` structure on Linux:" -msgstr "" - -msgid "" -"Read the process’s memory map (for example, ``/proc//maps``) to find " -"the address where the Python executable or ``libpython`` was loaded." -msgstr "" - -msgid "" -"Parse the ELF section headers in the binary to get the offset of the ``." -"PyRuntime`` section." -msgstr "" - -msgid "" -"Add that offset to the base address from step 1 to get the memory address of " -"``PyRuntime``." -msgstr "" - -msgid "The following is an example implementation::" -msgstr "" - -msgid "" -"def find_py_runtime_linux(pid: int) -> int:\n" -" # Step 1: Try to find the Python executable in memory\n" -" binary_path, base_address = find_mapped_binary(\n" -" pid, name_contains=\"python\"\n" -" )\n" -"\n" -" # Step 2: Fallback to shared library if executable is not found\n" -" if binary_path is None:\n" -" binary_path, base_address = find_mapped_binary(\n" -" pid, name_contains=\"libpython\"\n" -" )\n" -"\n" -" # Step 3: Parse ELF headers to get .PyRuntime section offset\n" -" section_offset = parse_elf_section_offset(\n" -" binary_path, \".PyRuntime\"\n" -" )\n" -"\n" -" # Step 4: Compute PyRuntime address in memory\n" -" return base_address + section_offset" -msgstr "" - -msgid "" -"On Linux systems, there are two main approaches to read memory from another " -"process. The first is through the ``/proc`` filesystem, specifically by " -"reading from ``/proc/[pid]/mem`` which provides direct access to the " -"process's memory. This requires appropriate permissions - either being the " -"same user as the target process or having root access. The second approach " -"is using the ``process_vm_readv()`` system call which provides a more " -"efficient way to copy memory between processes. While ptrace's " -"``PTRACE_PEEKTEXT`` operation can also be used to read memory, it is " -"significantly slower as it only reads one word at a time and requires " -"multiple context switches between the tracer and tracee processes." -msgstr "" - -msgid "" -"For parsing ELF sections, the process involves reading and interpreting the " -"ELF file format structures from the binary file on disk. The ELF header " -"contains a pointer to the section header table. Each section header contains " -"metadata about a section including its name (stored in a separate string " -"table), offset, and size. To find a specific section like .PyRuntime, you " -"need to walk through these headers and match the section name. The section " -"header then provides the offset where that section exists in the file, which " -"can be used to calculate its runtime address when the binary is loaded into " -"memory." -msgstr "" - -msgid "" -"You can read more about the ELF file format in the `ELF specification " -"`_." -msgstr "" - -msgid "macOS (Mach-O)" -msgstr "" - -msgid "To find the ``PyRuntime`` structure on macOS:" -msgstr "" - -msgid "" -"Call ``task_for_pid()`` to get the ``mach_port_t`` task port for the target " -"process. This handle is needed to read memory using APIs like " -"``mach_vm_read_overwrite`` and ``mach_vm_region``." -msgstr "" - -msgid "" -"Scan the memory regions to find the one containing the Python executable or " -"``libpython``." -msgstr "" - -msgid "" -"Load the binary file from disk and parse the Mach-O headers to find the " -"section named ``PyRuntime`` in the ``__DATA`` segment. On macOS, symbol " -"names are automatically prefixed with an underscore, so the ``PyRuntime`` " -"symbol appears as ``_PyRuntime`` in the symbol table, but the section name " -"is not affected." -msgstr "" - -msgid "" -"def find_py_runtime_macos(pid: int) -> int:\n" -" # Step 1: Get access to the process's memory\n" -" handle = get_memory_access_handle(pid)\n" -"\n" -" # Step 2: Try to find the Python executable in memory\n" -" binary_path, base_address = find_mapped_binary(\n" -" handle, name_contains=\"python\"\n" -" )\n" -"\n" -" # Step 3: Fallback to libpython if the executable is not found\n" -" if binary_path is None:\n" -" binary_path, base_address = find_mapped_binary(\n" -" handle, name_contains=\"libpython\"\n" -" )\n" -"\n" -" # Step 4: Parse Mach-O headers to get __DATA,__PyRuntime section offset\n" -" section_offset = parse_macho_section_offset(\n" -" binary_path, \"__DATA\", \"__PyRuntime\"\n" -" )\n" -"\n" -" # Step 5: Compute the PyRuntime address in memory\n" -" return base_address + section_offset" -msgstr "" - -msgid "" -"On macOS, accessing another process's memory requires using Mach-O specific " -"APIs and file formats. The first step is obtaining a ``task_port`` handle " -"via ``task_for_pid()``, which provides access to the target process's memory " -"space. This handle enables memory operations through APIs like " -"``mach_vm_read_overwrite()``." -msgstr "" - -msgid "" -"The process memory can be examined using ``mach_vm_region()`` to scan " -"through the virtual memory space, while ``proc_regionfilename()`` helps " -"identify which binary files are loaded at each memory region. When the " -"Python binary or library is found, its Mach-O headers need to be parsed to " -"locate the ``PyRuntime`` structure." -msgstr "" - -msgid "" -"The Mach-O format organizes code and data into segments and sections. The " -"``PyRuntime`` structure lives in a section named ``__PyRuntime`` within the " -"``__DATA`` segment. The actual runtime address calculation involves finding " -"the ``__TEXT`` segment which serves as the binary's base address, then " -"locating the ``__DATA`` segment containing our target section. The final " -"address is computed by combining the base address with the appropriate " -"section offsets from the Mach-O headers." -msgstr "" - -msgid "" -"Note that accessing another process's memory on macOS typically requires " -"elevated privileges - either root access or special security entitlements " -"granted to the debugging process." -msgstr "" - -msgid "Windows (PE)" -msgstr "" - -msgid "To find the ``PyRuntime`` structure on Windows:" -msgstr "" - -msgid "" -"Use the ToolHelp API to enumerate all modules loaded in the target process. " -"This is done using functions such as `CreateToolhelp32Snapshot `_, `Module32First `_, and " -"`Module32Next `_." -msgstr "" - -msgid "" -"Identify the module corresponding to :file:`python.exe` or :file:`python{XY}." -"dll`, where ``X`` and ``Y`` are the major and minor version numbers of the " -"Python version, and record its base address." -msgstr "" - -msgid "" -"Locate the ``PyRuntim`` section. Due to the PE format's 8-character limit on " -"section names (defined as ``IMAGE_SIZEOF_SHORT_NAME``), the original name " -"``PyRuntime`` is truncated. This section contains the ``PyRuntime`` " -"structure." -msgstr "" - -msgid "" -"Retrieve the section’s relative virtual address (RVA) and add it to the base " -"address of the module." -msgstr "" - -msgid "" -"def find_py_runtime_windows(pid: int) -> int:\n" -" # Step 1: Try to find the Python executable in memory\n" -" binary_path, base_address = find_loaded_module(\n" -" pid, name_contains=\"python\"\n" -" )\n" -"\n" -" # Step 2: Fallback to shared pythonXY.dll if the executable is not\n" -" # found\n" -" if binary_path is None:\n" -" binary_path, base_address = find_loaded_module(\n" -" pid, name_contains=\"python3\"\n" -" )\n" -"\n" -" # Step 3: Parse PE section headers to get the RVA of the PyRuntime\n" -" # section. The section name appears as \"PyRuntim\" due to the\n" -" # 8-character limit defined by the PE format (IMAGE_SIZEOF_SHORT_NAME).\n" -" section_rva = parse_pe_section_offset(binary_path, \"PyRuntim\")\n" -"\n" -" # Step 4: Compute PyRuntime address in memory\n" -" return base_address + section_rva" -msgstr "" - -msgid "" -"On Windows, accessing another process's memory requires using the Windows " -"API functions like ``CreateToolhelp32Snapshot()`` and ``Module32First()/" -"Module32Next()`` to enumerate loaded modules. The ``OpenProcess()`` function " -"provides a handle to access the target process's memory space, enabling " -"memory operations through ``ReadProcessMemory()``." -msgstr "" - -msgid "" -"The process memory can be examined by enumerating loaded modules to find the " -"Python binary or DLL. When found, its PE headers need to be parsed to locate " -"the ``PyRuntime`` structure." -msgstr "" - -msgid "" -"The PE format organizes code and data into sections. The ``PyRuntime`` " -"structure lives in a section named \"PyRuntim\" (truncated from " -"\"PyRuntime\" due to PE's 8-character name limit). The actual runtime " -"address calculation involves finding the module's base address from the " -"module entry, then locating our target section in the PE headers. The final " -"address is computed by combining the base address with the section's virtual " -"address from the PE section headers." -msgstr "" - -msgid "" -"Note that accessing another process's memory on Windows typically requires " -"appropriate privileges - either administrative access or the " -"``SeDebugPrivilege`` privilege granted to the debugging process." -msgstr "" - -msgid "Reading _Py_DebugOffsets" -msgstr "" - -msgid "" -"Once the address of the ``PyRuntime`` structure has been determined, the " -"next step is to read the ``_Py_DebugOffsets`` structure located at the " -"beginning of the ``PyRuntime`` block." -msgstr "" - -msgid "" -"This structure provides version-specific field offsets that are needed to " -"safely read interpreter and thread state memory. These offsets vary between " -"CPython versions and must be checked before use to ensure they are " -"compatible." -msgstr "" - -msgid "To read and check the debug offsets, follow these steps:" -msgstr "" - -msgid "" -"Read memory from the target process starting at the ``PyRuntime`` address, " -"covering the same number of bytes as the ``_Py_DebugOffsets`` structure. " -"This structure is located at the very start of the ``PyRuntime`` memory " -"block. Its layout is defined in CPython’s internal headers and stays the " -"same within a given minor version, but may change in major versions." -msgstr "" - -msgid "Check that the structure contains valid data:" -msgstr "" - -msgid "The ``cookie`` field must match the expected debug marker." -msgstr "" - -msgid "" -"The ``version`` field must match the version of the Python interpreter used " -"by the debugger." -msgstr "" - -msgid "" -"If either the debugger or the target process is using a pre-release version " -"(for example, an alpha, beta, or release candidate), the versions must match " -"exactly." -msgstr "" - -msgid "" -"The ``free_threaded`` field must have the same value in both the debugger " -"and the target process." -msgstr "" - -msgid "" -"If the structure is valid, the offsets it contains can be used to locate " -"fields in memory. If any check fails, the debugger should stop the operation " -"to avoid reading memory in the wrong format." -msgstr "" - -msgid "" -"The following is an example implementation that reads and checks " -"``_Py_DebugOffsets``::" -msgstr "" - -msgid "" -"def read_debug_offsets(pid: int, py_runtime_addr: int) -> DebugOffsets:\n" -" # Step 1: Read memory from the target process at the PyRuntime address\n" -" data = read_process_memory(\n" -" pid, address=py_runtime_addr, size=DEBUG_OFFSETS_SIZE\n" -" )\n" -"\n" -" # Step 2: Deserialize the raw bytes into a _Py_DebugOffsets structure\n" -" debug_offsets = parse_debug_offsets(data)\n" -"\n" -" # Step 3: Validate the contents of the structure\n" -" if debug_offsets.cookie != EXPECTED_COOKIE:\n" -" raise RuntimeError(\"Invalid or missing debug cookie\")\n" -" if debug_offsets.version != LOCAL_PYTHON_VERSION:\n" -" raise RuntimeError(\n" -" \"Mismatch between caller and target Python versions\"\n" -" )\n" -" if debug_offsets.free_threaded != LOCAL_FREE_THREADED:\n" -" raise RuntimeError(\"Mismatch in free-threaded configuration\")\n" -"\n" -" return debug_offsets" -msgstr "" - -msgid "**Process suspension recommended**" -msgstr "" - -msgid "" -"To avoid race conditions and ensure memory consistency, it is strongly " -"recommended that the target process be suspended before performing any " -"operations that read or write internal interpreter state. The Python runtime " -"may concurrently mutate interpreter data structures—such as creating or " -"destroying threads—during normal execution. This can result in invalid " -"memory reads or writes." -msgstr "" - -msgid "" -"A debugger may suspend execution by attaching to the process with ``ptrace`` " -"or by sending a ``SIGSTOP`` signal. Execution should only be resumed after " -"debugger-side memory operations are complete." -msgstr "" - -msgid "" -"Some tools, such as profilers or sampling-based debuggers, may operate on a " -"running process without suspension. In such cases, tools must be explicitly " -"designed to handle partially updated or inconsistent memory. For most " -"debugger implementations, suspending the process remains the safest and most " -"robust approach." -msgstr "" - -msgid "Locating the interpreter and thread state" -msgstr "" - -msgid "" -"Before code can be injected and executed in a remote Python process, the " -"debugger must choose a thread in which to schedule execution. This is " -"necessary because the control fields used to perform remote code injection " -"are located in the ``_PyRemoteDebuggerSupport`` structure, which is embedded " -"in a ``PyThreadState`` object. These fields are modified by the debugger to " -"request execution of injected scripts." -msgstr "" - -msgid "" -"The ``PyThreadState`` structure represents a thread running inside a Python " -"interpreter. It maintains the thread’s evaluation context and contains the " -"fields required for debugger coordination. Locating a valid " -"``PyThreadState`` is therefore a key prerequisite for triggering execution " -"remotely." -msgstr "" - -msgid "" -"A thread is typically selected based on its role or ID. In most cases, the " -"main thread is used, but some tools may target a specific thread by its " -"native thread ID. Once the target thread is chosen, the debugger must locate " -"both the interpreter and the associated thread state structures in memory." -msgstr "" - -msgid "The relevant internal structures are defined as follows:" -msgstr "" - -msgid "" -"``PyInterpreterState`` represents an isolated Python interpreter instance. " -"Each interpreter maintains its own set of imported modules, built-in state, " -"and thread state list. Although most Python applications use a single " -"interpreter, CPython supports multiple interpreters in the same process." -msgstr "" - -msgid "" -"``PyThreadState`` represents a thread running within an interpreter. It " -"contains execution state and the control fields used by the debugger." -msgstr "" - -msgid "To locate a thread:" -msgstr "" - -msgid "" -"Use the offset ``runtime_state.interpreters_head`` to obtain the address of " -"the first interpreter in the ``PyRuntime`` structure. This is the entry " -"point to the linked list of active interpreters." -msgstr "" - -msgid "" -"Use the offset ``interpreter_state.threads_main`` to access the main thread " -"state associated with the selected interpreter. This is typically the most " -"reliable thread to target." -msgstr "" - -msgid "" -"Optionally, use the offset ``interpreter_state.threads_head`` to iterate " -"through the linked list of all thread states. Each ``PyThreadState`` " -"structure contains a ``native_thread_id`` field, which may be compared to a " -"target thread ID to find a specific thread." -msgstr "" - -msgid "" -"Once a valid ``PyThreadState`` has been found, its address can be used in " -"later steps of the protocol, such as writing debugger control fields and " -"scheduling execution." -msgstr "" - -msgid "" -"The following is an example implementation that locates the main thread " -"state::" -msgstr "" - -msgid "" -"def find_main_thread_state(\n" -" pid: int, py_runtime_addr: int, debug_offsets: DebugOffsets,\n" -") -> int:\n" -" # Step 1: Read interpreters_head from PyRuntime\n" -" interp_head_ptr = (\n" -" py_runtime_addr + debug_offsets.runtime_state.interpreters_head\n" -" )\n" -" interp_addr = read_pointer(pid, interp_head_ptr)\n" -" if interp_addr == 0:\n" -" raise RuntimeError(\"No interpreter found in the target process\")\n" -"\n" -" # Step 2: Read the threads_main pointer from the interpreter\n" -" threads_main_ptr = (\n" -" interp_addr + debug_offsets.interpreter_state.threads_main\n" -" )\n" -" thread_state_addr = read_pointer(pid, threads_main_ptr)\n" -" if thread_state_addr == 0:\n" -" raise RuntimeError(\"Main thread state is not available\")\n" -"\n" -" return thread_state_addr" -msgstr "" - -msgid "" -"The following example demonstrates how to locate a thread by its native " -"thread ID::" -msgstr "" - -msgid "" -"def find_thread_by_id(\n" -" pid: int,\n" -" interp_addr: int,\n" -" debug_offsets: DebugOffsets,\n" -" target_tid: int,\n" -") -> int:\n" -" # Start at threads_head and walk the linked list\n" -" thread_ptr = read_pointer(\n" -" pid,\n" -" interp_addr + debug_offsets.interpreter_state.threads_head\n" -" )\n" -"\n" -" while thread_ptr:\n" -" native_tid_ptr = (\n" -" thread_ptr + debug_offsets.thread_state.native_thread_id\n" -" )\n" -" native_tid = read_int(pid, native_tid_ptr)\n" -" if native_tid == target_tid:\n" -" return thread_ptr\n" -" thread_ptr = read_pointer(\n" -" pid,\n" -" thread_ptr + debug_offsets.thread_state.next\n" -" )\n" -"\n" -" raise RuntimeError(\"Thread with the given ID was not found\")" -msgstr "" - -msgid "" -"Once a valid thread state has been located, the debugger can proceed with " -"modifying its control fields and scheduling execution, as described in the " -"next section." -msgstr "" - -msgid "Writing control information" -msgstr "" - -msgid "" -"Once a valid ``PyThreadState`` structure has been identified, the debugger " -"may modify control fields within it to schedule the execution of a specified " -"Python script. These control fields are checked periodically by the " -"interpreter, and when set correctly, they trigger the execution of remote " -"code at a safe point in the evaluation loop." -msgstr "" - -msgid "" -"Each ``PyThreadState`` contains a ``_PyRemoteDebuggerSupport`` structure " -"used for communication between the debugger and the interpreter. The " -"locations of its fields are defined by the ``_Py_DebugOffsets`` structure " -"and include the following:" -msgstr "" - -msgid "" -"``debugger_script_path``: A fixed-size buffer that holds the full path to a " -"Python source file (``.py``). This file must be accessible and readable by " -"the target process when execution is triggered." -msgstr "" - -msgid "" -"``debugger_pending_call``: An integer flag. Setting this to ``1`` tells the " -"interpreter that a script is ready to be executed." -msgstr "" - -msgid "" -"``eval_breaker``: A field checked by the interpreter during execution. " -"Setting bit 5 (``_PY_EVAL_PLEASE_STOP_BIT``, value ``1U << 5``) in this " -"field causes the interpreter to pause and check for debugger activity." -msgstr "" - -msgid "" -"To complete the injection, the debugger must perform the following steps:" -msgstr "" - -msgid "Write the full script path into the ``debugger_script_path`` buffer." -msgstr "" - -msgid "Set ``debugger_pending_call`` to ``1``." -msgstr "" - -msgid "" -"Read the current value of ``eval_breaker``, set bit 5 " -"(``_PY_EVAL_PLEASE_STOP_BIT``), and write the updated value back. This " -"signals the interpreter to check for debugger activity." -msgstr "" - -msgid "" -"def inject_script(\n" -" pid: int,\n" -" thread_state_addr: int,\n" -" debug_offsets: DebugOffsets,\n" -" script_path: str\n" -") -> None:\n" -" # Compute the base offset of _PyRemoteDebuggerSupport\n" -" support_base = (\n" -" thread_state_addr +\n" -" debug_offsets.debugger_support.remote_debugger_support\n" -" )\n" -"\n" -" # Step 1: Write the script path into debugger_script_path\n" -" script_path_ptr = (\n" -" support_base +\n" -" debug_offsets.debugger_support.debugger_script_path\n" -" )\n" -" write_string(pid, script_path_ptr, script_path)\n" -"\n" -" # Step 2: Set debugger_pending_call to 1\n" -" pending_ptr = (\n" -" support_base +\n" -" debug_offsets.debugger_support.debugger_pending_call\n" -" )\n" -" write_int(pid, pending_ptr, 1)\n" -"\n" -" # Step 3: Set _PY_EVAL_PLEASE_STOP_BIT (bit 5, value 1 << 5) in\n" -" # eval_breaker\n" -" eval_breaker_ptr = (\n" -" thread_state_addr +\n" -" debug_offsets.debugger_support.eval_breaker\n" -" )\n" -" breaker = read_int(pid, eval_breaker_ptr)\n" -" breaker |= (1 << 5)\n" -" write_int(pid, eval_breaker_ptr, breaker)" -msgstr "" - -msgid "" -"Once these fields are set, the debugger may resume the process (if it was " -"suspended). The interpreter will process the request at the next safe " -"evaluation point, load the script from disk, and execute it." -msgstr "" - -msgid "" -"It is the responsibility of the debugger to ensure that the script file " -"remains present and accessible to the target process during execution." -msgstr "" - -msgid "" -"Script execution is asynchronous. The script file cannot be deleted " -"immediately after injection. The debugger should wait until the injected " -"script has produced an observable effect before removing the file. This " -"effect depends on what the script is designed to do. For example, a debugger " -"might wait until the remote process connects back to a socket before " -"removing the script. Once such an effect is observed, it is safe to assume " -"the file is no longer needed." -msgstr "" - -msgid "Summary" -msgstr "" - -msgid "To inject and execute a Python script in a remote process:" -msgstr "" - -msgid "Locate the ``PyRuntime`` structure in the target process’s memory." -msgstr "" - -msgid "" -"Read and validate the ``_Py_DebugOffsets`` structure at the beginning of " -"``PyRuntime``." -msgstr "" - -msgid "Use the offsets to locate a valid ``PyThreadState``." -msgstr "" - -msgid "Write the path to a Python script into ``debugger_script_path``." -msgstr "" - -msgid "Set the ``debugger_pending_call`` flag to ``1``." -msgstr "" - -msgid "Set ``_PY_EVAL_PLEASE_STOP_BIT`` in the ``eval_breaker`` field." -msgstr "" - -msgid "" -"Resume the process (if suspended). The script will execute at the next safe " -"evaluation point." -msgstr "" - -msgid "Security and threat model" -msgstr "" - -msgid "" -"The remote debugging protocol relies on the same operating system primitives " -"used by native debuggers such as GDB and LLDB. Attaching to a process " -"requires the **same privileges** that those debuggers require, for example " -"``ptrace`` / Yama LSM on Linux, ``task_for_pid`` on macOS, and " -"``SeDebugPrivilege`` on Windows. Python does not introduce any new " -"privilege escalation path; if an attacker already possesses the permissions " -"needed to attach to a process, they could equally use GDB to read memory or " -"inject code." -msgstr "" - -msgid "" -"The following principles define what is, and is not, considered a security " -"vulnerability in this feature:" -msgstr "" - -msgid "Attaching requires OS-level privileges" -msgstr "" - -msgid "" -"On every supported platform the operating system gates cross-process memory " -"access behind privilege checks (``CAP_SYS_PTRACE``, root, or administrator " -"rights). A report that demonstrates an issue only after these privileges " -"have already been obtained is **not** a vulnerability in CPython, since the " -"OS security boundary was already crossed." -msgstr "" - -msgid "" -"Crashes or memory errors when reading a compromised process are not " -"vulnerabilities" -msgstr "" - -msgid "" -"A tool that reads internal interpreter state from a target process must " -"trust that memory to be well-formed. If the target process has been " -"corrupted or is controlled by an attacker, the debugger or profiler may " -"crash, produce garbage output, or behave unpredictably. This is the same " -"risk accepted by every ``ptrace``-based debugger. Bugs in this category " -"(buffer overflows, segmentation faults, or undefined behaviour triggered by " -"reading corrupted state) are **not** treated as security issues, though " -"fixes that improve robustness are welcome." -msgstr "" - -msgid "Vulnerabilities in the target process are not in scope" -msgstr "" - -msgid "" -"If the Python process being debugged has already been compromised, the " -"attacker already controls execution in that process. Demonstrating further " -"impact from that starting point does not constitute a vulnerability in the " -"remote debugging protocol." -msgstr "" - -msgid "When to use ``PYTHON_DISABLE_REMOTE_DEBUG``" -msgstr "" - -msgid "" -"The environment variable :envvar:`PYTHON_DISABLE_REMOTE_DEBUG` (and the " -"equivalent :option:`-X disable_remote_debug` flag) allows operators to " -"disable the in-process side of the protocol as a **defence-in-depth** " -"measure. This may be useful in hardened or sandboxed deployment " -"environments where no debugging or profiling of the process is expected and " -"reducing attack surface is a priority, even though the OS-level privilege " -"checks already prevent unprivileged access." -msgstr "" - -msgid "" -"Setting this variable does **not** affect other OS-level debugging " -"interfaces (``ptrace``, ``/proc``, ``task_for_pid``, etc.), which remain " -"available according to their own permission models." -msgstr "" diff --git a/howto/sockets.po b/howto/sockets.po index 702192c..3d5b4df 100644 --- a/howto/sockets.po +++ b/howto/sockets.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -116,11 +116,11 @@ msgstr "" msgid "" "A couple things to notice: we used ``socket.gethostname()`` so that the " -"socket would be visible to the outside world. If we had used ``s." -"bind(('localhost', 80))`` or ``s.bind(('127.0.0.1', 80))`` we would still " -"have a \"server\" socket, but one that was only visible within the same " -"machine. ``s.bind(('', 80))`` specifies that the socket is reachable by any " -"address the machine happens to have." +"socket would be visible to the outside world. If we had used " +"``s.bind(('localhost', 80))`` or ``s.bind(('127.0.0.1', 80))`` we would " +"still have a \"server\" socket, but one that was only visible within the " +"same machine. ``s.bind(('', 80))`` specifies that the socket is reachable " +"by any address the machine happens to have." msgstr "" msgid "" diff --git a/howto/sorting.po b/howto/sorting.po index a14f702..ab6cd3c 100644 --- a/howto/sorting.po +++ b/howto/sorting.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Yashraj Jangra, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Yashraj Jangra, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,31 +24,40 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Sorting Techniques" -msgstr "" +msgstr "ਸੋਰਟਿੰਗ ਤਕਨੀਕਾਂ" msgid "" "Python lists have a built-in :meth:`list.sort` method that modifies the list " "in-place. There is also a :func:`sorted` built-in function that builds a " "new sorted list from an iterable." msgstr "" +"Python ਲਿਸਟਾਂ ਵਿੱਚ ਇੱਕ ਬਿਲਟ-ਇਨ :meth:`list.sort` ਮੈਥਡ ਹੁੰਦਾ ਹੈ ਜੋ ਲਿਸਟ ਨੂੰ ਉਸੇ ਥਾਂ ਸੋਧਦਾ " +"ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ ਇੱਕ ਬਿਲਟ-ਇਨ :func:`sorted` ਫੰਕਸ਼ਨ ਵੀ ਹੈ ਜੋ ਕਿਸੇ ਇਟਰੇਬਲ ਤੋਂ ਇੱਕ ਨਵੀਂ ਸੋਰਟ " +"ਕੀਤੀ ਲਿਸਟ ਬਣਾਉਂਦਾ ਹੈ।" msgid "" "In this document, we explore the various techniques for sorting data using " "Python." msgstr "" +"ਇਸ ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਅਸੀਂ Python ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡਾਟਾ ਨੂੰ ਸੋਰਟ ਕਰਨ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਤਕਨੀਕਾਂ ਦੀ ਪੜਚੋਲ " +"ਕਰਾਂਗੇ।" msgid "Sorting Basics" -msgstr "" +msgstr "ਸੋਰਟਿੰਗ ਦੇ ਮੁੱਢਲੇ ਸਿਧਾਂਤ" msgid "" "A simple ascending sort is very easy: just call the :func:`sorted` function. " "It returns a new sorted list:" msgstr "" +"ਇੱਕ ਸਧਾਰਣ ਵੱਧਦੇ ਕ੍ਰਮ ਵਿੱਚ ਸੋਰਟ ਕਰਨਾ ਬਹੁਤ ਆਸਾਨ ਹੈ: ਸਿਰਫ਼ :func:`sorted` ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ। " +"ਇਹ ਇੱਕ ਨਵੀਂ ਸੋਰਟ ਕੀਤੀ ਲਿਸਟ ਵਾਪਸ ਕਰਦਾ ਹੈ:" msgid "" ">>> sorted([5, 2, 3, 1, 4])\n" "[1, 2, 3, 4, 5]" msgstr "" +">>> sorted([5, 2, 3, 1, 4])\n" +"[1, 2, 3, 4, 5]" msgid "" "You can also use the :meth:`list.sort` method. It modifies the list in-place " @@ -55,6 +65,9 @@ msgid "" "than :func:`sorted` - but if you don't need the original list, it's slightly " "more efficient." msgstr "" +"ਤੁਸੀਂ :meth:`list.sort` ਮੈਥਡ ਦੀ ਵੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਇਹ ਲਿਸਟ ਨੂੰ ਉਸੇ ਥਾਂ ਸੋਧਦਾ ਹੈ (ਅਤੇ " +"ਗਲਤਫਹਿਮੀ ਤੋਂ ਬਚਣ ਲਈ ``None`` ਵਾਪਸ ਕਰਦਾ ਹੈ)। ਆਮ ਤੌਰ 'ਤੇ ਇਹ :func:`sorted` ਨਾਲੋਂ ਘੱਟ " +"ਸੁਵਿਧਾਜਨਕ ਹੁੰਦਾ ਹੈ, ਪਰ ਜੇ ਤੁਹਾਨੂੰ ਮੂਲ ਲਿਸਟ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ ਤਾਂ ਇਹ ਥੋੜ੍ਹਾ ਵੱਧ ਕਾਰਗਰ ਹੈ।" msgid "" ">>> a = [5, 2, 3, 1, 4]\n" @@ -62,36 +75,54 @@ msgid "" ">>> a\n" "[1, 2, 3, 4, 5]" msgstr "" +">>> a = [5, 2, 3, 1, 4]\n" +">>> a.sort()\n" +">>> a\n" +"[1, 2, 3, 4, 5]" msgid "" "Another difference is that the :meth:`list.sort` method is only defined for " "lists. In contrast, the :func:`sorted` function accepts any iterable." msgstr "" +"ਇੱਕ ਹੋਰ ਫਰਕ ਇਹ ਹੈ ਕਿ :meth:`list.sort` ਮੈਥਡ ਸਿਰਫ਼ ਲਿਸਟਾਂ ਲਈ ਹੀ ਪਰਿਭਾਸ਼ਿਤ ਹੈ। ਇਸਦੇ " +"ਉਲਟ, :func:`sorted` ਫੰਕਸ਼ਨ ਕਿਸੇ ਵੀ ਇਟਰੇਬਲ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ।" msgid "" ">>> sorted({1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'})\n" "[1, 2, 3, 4, 5]" msgstr "" +">>> sorted({1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'})\n" +"[1, 2, 3, 4, 5]" msgid "Key Functions" -msgstr "" +msgstr "Key ਫੰਕਸ਼ਨ" msgid "" -"The :meth:`list.sort` method and the functions :func:`sorted`, :func:`min`, :" -"func:`max`, :func:`heapq.nsmallest`, and :func:`heapq.nlargest` have a *key* " -"parameter to specify a function (or other callable) to be called on each " -"list element prior to making comparisons." +"The :meth:`list.sort` method and the " +"functions :func:`sorted`, :func:`min`, :func:`max`, :func:`heapq.nsmallest`, " +"and :func:`heapq.nlargest` have a *key* parameter to specify a function (or " +"other callable) to be called on each list element prior to making " +"comparisons." msgstr "" +":meth:`list.sort` ਮੈਥਡ " +"ਅਤੇ :func:`sorted`, :func:`min`, :func:`max`, :func:`heapq.nsmallest` " +"ਅਤੇ :func:`heapq.nlargest` ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਇੱਕ *key* ਪੈਰਾਮੀਟਰ ਹੁੰਦਾ ਹੈ ਜੋ ਤੁਲਨਾ ਕਰਨ ਤੋਂ " +"ਪਹਿਲਾਂ ਹਰ ਲਿਸਟ ਐਲੀਮੈਂਟ ਉੱਤੇ ਕਾਲ ਕੀਤੇ ਜਾਣ ਵਾਲੇ ਫੰਕਸ਼ਨ (ਜਾਂ ਹੋਰ callable) ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ " +"ਹੈ।" msgid "" -"For example, here's a case-insensitive string comparison using :meth:`str." -"casefold`:" +"For example, here's a case-insensitive string comparison " +"using :meth:`str.casefold`:" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਇੱਥੇ :meth:`str.casefold` ਦੀ ਵਰਤੋਂ ਕਰਕੇ case-insensitive ਸਟਰਿੰਗ ਤੁਲਨਾ " +"ਦਿਖਾਈ ਗਈ ਹੈ:" msgid "" ">>> sorted(\"This is a test string from Andrew\".split(), key=str.casefold)\n" "['a', 'Andrew', 'from', 'is', 'string', 'test', 'This']" msgstr "" +">>> sorted(\"This is a test string from Andrew\".split(), key=str.casefold)\n" +"['a', 'Andrew', 'from', 'is', 'string', 'test', 'This']" msgid "" "The value of the *key* parameter should be a function (or other callable) " @@ -99,11 +130,16 @@ msgid "" "This technique is fast because the key function is called exactly once for " "each input record." msgstr "" +"*key* ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਇੱਕ ਫੰਕਸ਼ਨ (ਜਾਂ ਹੋਰ callable) ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਇੱਕ ਇਕੱਲਾ argument " +"ਲੈਂਦਾ ਹੈ ਅਤੇ ਸੋਰਟਿੰਗ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ key ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ਤਕਨੀਕ ਤੇਜ਼ ਹੈ ਕਿਉਂਕਿ key " +"function ਹਰ ਇਨਪੁੱਟ ਰਿਕਾਰਡ ਲਈ ਸਿਰਫ਼ ਇੱਕ ਵਾਰ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "A common pattern is to sort complex objects using some of the object's " "indices as keys. For example:" msgstr "" +"ਇੱਕ ਆਮ ਪੈਟਰਨ ਇਹ ਹੈ ਕਿ ਜਟਿਲ objects ਨੂੰ object ਦੇ ਕੁਝ indices ਨੂੰ key ਵਜੋਂ ਵਰਤ ਕੇ ਸੋਰਟ " +"ਕੀਤਾ ਜਾਵੇ। ਉਦਾਹਰਨ ਲਈ:" msgid "" ">>> student_tuples = [\n" @@ -114,10 +150,17 @@ msgid "" ">>> sorted(student_tuples, key=lambda student: student[2]) # sort by age\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> student_tuples = [\n" +"... ('john', 'A', 15),\n" +"... ('jane', 'B', 12),\n" +"... ('dave', 'B', 10),\n" +"... ]\n" +">>> sorted(student_tuples, key=lambda student: student[2]) # sort by age\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" "The same technique works for objects with named attributes. For example:" -msgstr "" +msgstr "ਇਹੀ ਤਕਨੀਕ ਨਾਮਿਤ attributes ਵਾਲੇ objects ਲਈ ਵੀ ਕੰਮ ਕਰਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ:" msgid "" ">>> class Student:\n" @@ -137,25 +180,48 @@ msgid "" "age\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> class Student:\n" +"... def __init__(self, name, grade, age):\n" +"... self.name = name\n" +"... self.grade = grade\n" +"... self.age = age\n" +"... def __repr__(self):\n" +"... return repr((self.name, self.grade, self.age))\n" +"\n" +">>> student_objects = [\n" +"... Student('john', 'A', 15),\n" +"... Student('jane', 'B', 12),\n" +"... Student('dave', 'B', 10),\n" +"... ]\n" +">>> sorted(student_objects, key=lambda student: student.age) # sort by age\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" "Objects with named attributes can be made by a regular class as shown above, " -"or they can be instances of :class:`~dataclasses.dataclass` or a :term:" -"`named tuple`." +"or they can be instances of :class:`~dataclasses.dataclass` or " +"a :term:`named tuple`." msgstr "" +"ਨਾਮਿਤ attributes ਵਾਲੇ objects ਇੱਕ ਆਮ class ਰਾਹੀਂ ਬਣਾਏ ਜਾ ਸਕਦੇ ਹਨ, ਜਿਵੇਂ ਉੱਪਰ ਦਿਖਾਇਆ " +"ਗਿਆ ਹੈ, ਜਾਂ ਉਹ :class:`~dataclasses.dataclass` ਜਾਂ :term:`named tuple` ਦੇ " +"instances ਵੀ ਹੋ ਸਕਦੇ ਹਨ।" msgid "Operator Module Functions and Partial Function Evaluation" -msgstr "" +msgstr "ਓਪਰੇਟਰ ਮੋਡੀਊਲ ਫੰਕਸ਼ਨ ਅਤੇ Partial Function Evaluation" msgid "" "The :term:`key function` patterns shown above are very common, so Python " "provides convenience functions to make accessor functions easier and faster. " -"The :mod:`operator` module has :func:`~operator.itemgetter`, :func:" -"`~operator.attrgetter`, and a :func:`~operator.methodcaller` function." +"The :mod:`operator` module " +"has :func:`~operator.itemgetter`, :func:`~operator.attrgetter`, and " +"a :func:`~operator.methodcaller` function." msgstr "" +"ਉੱਪਰ ਦਿਖਾਏ ਗਏ :term:`key function` ਪੈਟਰਨ ਬਹੁਤ ਆਮ ਹਨ, ਇਸ ਲਈ Python ਐਕਸੈਸਰ ਫੰਕਸ਼ਨਾਂ ਨੂੰ " +"ਹੋਰ ਆਸਾਨ ਅਤੇ ਤੇਜ਼ ਬਣਾਉਣ ਲਈ ਸੁਵਿਧਾਜਨਕ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। :mod:`operator` ਮੋਡੀਊਲ " +"ਵਿੱਚ :func:`~operator.itemgetter`, :func:`~operator.attrgetter` " +"ਅਤੇ :func:`~operator.methodcaller` ਫੰਕਸ਼ਨ ਉਪਲਬਧ ਹਨ।" msgid "Using those functions, the above examples become simpler and faster:" -msgstr "" +msgstr "ਇਨ੍ਹਾਂ ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਨਾਲ ਉੱਪਰ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ ਹੋਰ ਸਧਾਰਣ ਅਤੇ ਤੇਜ਼ ਬਣ ਜਾਂਦੀਆਂ ਹਨ:" msgid "" ">>> from operator import itemgetter, attrgetter\n" @@ -166,11 +232,20 @@ msgid "" ">>> sorted(student_objects, key=attrgetter('age'))\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> from operator import itemgetter, attrgetter\n" +"\n" +">>> sorted(student_tuples, key=itemgetter(2))\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]\n" +"\n" +">>> sorted(student_objects, key=attrgetter('age'))\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" "The operator module functions allow multiple levels of sorting. For example, " "to sort by *grade* then by *age*:" msgstr "" +"ਓਪਰੇਟਰ ਮੋਡੀਊਲ ਦੇ ਫੰਕਸ਼ਨ ਬਹੁ-ਪੱਧਰੀ ਸੋਰਟਿੰਗ ਦੀ ਆਗਿਆ ਦਿੰਦੇ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ਪਹਿਲਾਂ *grade* ਅਤੇ " +"ਫਿਰ *age* ਦੇ ਅਧਾਰ 'ਤੇ ਸੋਰਟ ਕਰਨ ਲਈ:" msgid "" ">>> sorted(student_tuples, key=itemgetter(1,2))\n" @@ -179,6 +254,11 @@ msgid "" ">>> sorted(student_objects, key=attrgetter('grade', 'age'))\n" "[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]" msgstr "" +">>> sorted(student_tuples, key=itemgetter(1,2))\n" +"[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]\n" +"\n" +">>> sorted(student_objects, key=attrgetter('grade', 'age'))\n" +"[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]" msgid "" "The :mod:`functools` module provides another helpful tool for making key-" @@ -186,6 +266,10 @@ msgid "" "`_ of a multi-argument function making " "it suitable for use as a key-function." msgstr "" +":mod:`functools` ਮੋਡੀਊਲ key functions ਬਣਾਉਣ ਲਈ ਇੱਕ ਹੋਰ ਲਾਭਦਾਇਕ ਸਾਧਨ ਪ੍ਰਦਾਨ ਕਰਦਾ " +"ਹੈ। :func:`~functools.partial` ਫੰਕਸ਼ਨ ਬਹੁ-ਆਰਗੂਮੈਂਟ ਫੰਕਸ਼ਨ ਦੀ `arity `_ ਘਟਾ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਉਹ key function ਵਜੋਂ ਵਰਤਣ " +"ਲਈ ਉਚਿਤ ਬਣ ਜਾਂਦਾ ਹੈ।" msgid "" ">>> from functools import partial\n" @@ -199,15 +283,28 @@ msgid "" ">>> sorted(names, key=partial(normalize, 'NFC'))\n" "['Abe', 'Eloise', 'Nubia', 'Núñez', 'Zeke', 'Zoë', 'Åbjørn', 'Élana']" msgstr "" +">>> from functools import partial\n" +">>> from unicodedata import normalize\n" +"\n" +">>> names = 'Zoë Åbjørn Núñez Élana Zeke Abe Nubia Eloise'.split()\n" +"\n" +">>> sorted(names, key=partial(normalize, 'NFD'))\n" +"['Abe', 'Åbjørn', 'Eloise', 'Élana', 'Nubia', 'Núñez', 'Zeke', 'Zoë']\n" +"\n" +">>> sorted(names, key=partial(normalize, 'NFC'))\n" +"['Abe', 'Eloise', 'Nubia', 'Núñez', 'Zeke', 'Zoë', 'Åbjørn', 'Élana']" msgid "Ascending and Descending" -msgstr "" +msgstr "ਵੱਧਦਾ ਅਤੇ ਘਟਦਾ ਕ੍ਰਮ" msgid "" "Both :meth:`list.sort` and :func:`sorted` accept a *reverse* parameter with " "a boolean value. This is used to flag descending sorts. For example, to get " "the student data in reverse *age* order:" msgstr "" +":meth:`list.sort` ਅਤੇ :func:`sorted` ਦੋਵੇਂ *reverse* ਪੈਰਾਮੀਟਰ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦੇ ਹਨ, " +"ਜਿਸਦਾ ਮੁੱਲ boolean ਹੁੰਦਾ ਹੈ। ਇਸਦੀ ਵਰਤੋਂ ਘਟਦੇ ਕ੍ਰਮ ਵਿੱਚ ਸੋਰਟ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਉਦਾਹਰਨ " +"ਲਈ, ਵਿਦਿਆਰਥੀਆਂ ਦੇ ਡਾਟਾ ਨੂੰ ਉਲਟੇ *age* ਕ੍ਰਮ ਵਿੱਚ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ:" msgid "" ">>> sorted(student_tuples, key=itemgetter(2), reverse=True)\n" @@ -216,32 +313,48 @@ msgid "" ">>> sorted(student_objects, key=attrgetter('age'), reverse=True)\n" "[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]" msgstr "" +">>> sorted(student_tuples, key=itemgetter(2), reverse=True)\n" +"[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]\n" +"\n" +">>> sorted(student_objects, key=attrgetter('age'), reverse=True)\n" +"[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]" msgid "Sort Stability and Complex Sorts" -msgstr "" +msgstr "ਸੋਰਟ ਸਥਿਰਤਾ ਅਤੇ ਜਟਿਲ ਸੋਰਟਿੰਗ" msgid "" "Sorts are guaranteed to be `stable `_\\. That means that when multiple records have " "the same key, their original order is preserved." msgstr "" +"ਸੋਰਟਿੰਗ ਦੇ `stable `_ ਹੋਣ ਦੀ ਗਾਰੰਟੀ ਹੈ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ਜਦੋਂ ਕਈ ਰਿਕਾਰਡਾਂ ਦੀ " +"key ਇੱਕੋ ਜਿਹੀ ਹੋਵੇ, ਤਾਂ ਉਨ੍ਹਾਂ ਦਾ ਮੂਲ ਕ੍ਰਮ ਬਰਕਰਾਰ ਰਹਿੰਦਾ ਹੈ।" msgid "" ">>> data = [('red', 1), ('blue', 1), ('red', 2), ('blue', 2)]\n" ">>> sorted(data, key=itemgetter(0))\n" "[('blue', 1), ('blue', 2), ('red', 1), ('red', 2)]" msgstr "" +">>> data = [('red', 1), ('blue', 1), ('red', 2), ('blue', 2)]\n" +">>> sorted(data, key=itemgetter(0))\n" +"[('blue', 1), ('blue', 2), ('red', 1), ('red', 2)]" msgid "" "Notice how the two records for *blue* retain their original order so that " "``('blue', 1)`` is guaranteed to precede ``('blue', 2)``." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ *blue* ਵਾਲੇ ਦੋਵੇਂ ਰਿਕਾਰਡ ਆਪਣਾ ਮੂਲ ਕ੍ਰਮ ਬਰਕਰਾਰ ਰੱਖਦੇ ਹਨ, ਇਸ ਲਈ ``('blue', " +"1)`` ਹਮੇਸ਼ਾਂ ``('blue', 2)`` ਤੋਂ ਪਹਿਲਾਂ ਰਹੇਗਾ।" msgid "" "This wonderful property lets you build complex sorts in a series of sorting " "steps. For example, to sort the student data by descending *grade* and then " "ascending *age*, do the *age* sort first and then sort again using *grade*:" msgstr "" +"ਇਹ ਸ਼ਾਨਦਾਰ ਵਿਸ਼ੇਸ਼ਤਾ ਤੁਹਾਨੂੰ ਕਈ ਸੋਰਟਿੰਗ ਕਦਮਾਂ ਦੀ ਲੜੀ ਰਾਹੀਂ ਜਟਿਲ ਸੋਰਟਿੰਗ ਬਣਾਉਣ ਦੀ ਆਗਿਆ " +"ਦਿੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਵਿਦਿਆਰਥੀ ਡਾਟਾ ਨੂੰ ਘਟਦੇ *grade* ਅਤੇ ਫਿਰ ਵੱਧਦੇ *age* ਅਨੁਸਾਰ ਸੋਰਟ " +"ਕਰਨ ਲਈ, ਪਹਿਲਾਂ *age* ਅਨੁਸਾਰ ਸੋਰਟ ਕਰੋ ਅਤੇ ਫਿਰ *grade* ਅਨੁਸਾਰ ਮੁੜ ਸੋਰਟ ਕਰੋ:" msgid "" ">>> s = sorted(student_objects, key=attrgetter('age')) # sort on " @@ -250,11 +363,18 @@ msgid "" "primary key, descending\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> s = sorted(student_objects, key=attrgetter('age')) # sort on secondary " +"key\n" +">>> sorted(s, key=attrgetter('grade'), reverse=True) # now sort on primary " +"key, descending\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" "This can be abstracted out into a wrapper function that can take a list and " "tuples of field and order to sort them on multiple passes." msgstr "" +"ਇਸ ਵਿਚਾਰ ਨੂੰ ਇੱਕ wrapper function ਵਿੱਚ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਲਿਸਟ ਅਤੇ field तथा order " +"ਵਾਲੀਆਂ tuples ਨੂੰ ਸਵੀਕਾਰ ਕਰਕੇ ਕਈ ਪਾਸਾਂ ਵਿੱਚ ਸੋਰਟ ਕਰ ਸਕਦਾ ਹੈ।" msgid "" ">>> def multisort(xs, specs):\n" @@ -265,35 +385,51 @@ msgid "" ">>> multisort(list(student_objects), (('grade', True), ('age', False)))\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> def multisort(xs, specs):\n" +"... for key, reverse in reversed(specs):\n" +"... xs.sort(key=attrgetter(key), reverse=reverse)\n" +"... return xs\n" +"\n" +">>> multisort(list(student_objects), (('grade', True), ('age', False)))\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" "The `Timsort `_ algorithm used in " "Python does multiple sorts efficiently because it can take advantage of any " "ordering already present in a dataset." msgstr "" +"Python ਵਿੱਚ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ `Timsort `_ " +"ਐਲਗੋਰਿਦਮ ਕਈ ਸੋਰਟਿੰਗ ਕਾਰਵਾਈਆਂ ਨੂੰ ਬਹੁਤ ਕੁਸ਼ਲਤਾ ਨਾਲ ਕਰਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਡਾਟਾਸੈੱਟ ਵਿੱਚ ਪਹਿਲਾਂ ਤੋਂ " +"ਮੌਜੂਦ ਕ੍ਰਮਬੱਧਤਾ ਦਾ ਲਾਭ ਉਠਾ ਸਕਦਾ ਹੈ।" msgid "Decorate-Sort-Undecorate" -msgstr "" +msgstr "ਸਜਾਓ-ਸੋਰਟ ਕਰੋ-ਸਜਾਵਟ ਹਟਾਓ" msgid "This idiom is called Decorate-Sort-Undecorate after its three steps:" msgstr "" +"ਇਸ idiom ਨੂੰ Decorate-Sort-Undecorate ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਤਿੰਨ ਕਦਮਾਂ 'ਤੇ ਆਧਾਰਿਤ " +"ਹੈ:" msgid "" "First, the initial list is decorated with new values that control the sort " "order." msgstr "" +"ਸਭ ਤੋਂ ਪਹਿਲਾਂ, ਮੂਲ ਲਿਸਟ ਨੂੰ ਨਵੇਂ ਮੁੱਲਾਂ ਨਾਲ ਸਜਾਇਆ ਜਾਂਦਾ ਹੈ ਜੋ ਸੋਰਟਿੰਗ ਕ੍ਰਮ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦੇ ਹਨ।" msgid "Second, the decorated list is sorted." -msgstr "" +msgstr "ਦੂਜੇ ਕਦਮ ਵਿੱਚ, ਸਜਾਈ ਗਈ ਲਿਸਟ ਨੂੰ ਸੋਰਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "Finally, the decorations are removed, creating a list that contains only the " "initial values in the new order." msgstr "" +"ਅੰਤ ਵਿੱਚ, ਸਜਾਵਟਾਂ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਇੱਕ ਐਸੀ ਲਿਸਟ ਬਣਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਨਵੇਂ ਕ੍ਰਮ " +"ਵਿੱਚ ਸਿਰਫ਼ ਮੂਲ ਮੁੱਲ ਹੀ ਰਹਿੰਦੇ ਹਨ।" msgid "" "For example, to sort the student data by *grade* using the DSU approach:" msgstr "" +"ਉਦਾਹਰਨ ਲਈ, DSU ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਿਦਿਆਰਥੀ ਡਾਟਾ ਨੂੰ *grade* ਅਨੁਸਾਰ ਸੋਰਟ ਕਰਨ ਲਈ:" msgid "" ">>> decorated = [(student.grade, i, student) for i, student in " @@ -302,22 +438,34 @@ msgid "" ">>> [student for grade, i, student in decorated] # undecorate\n" "[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]" msgstr "" +">>> decorated = [(student.grade, i, student) for i, student in " +"enumerate(student_objects)]\n" +">>> decorated.sort()\n" +">>> [student for grade, i, student in decorated] # undecorate\n" +"[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]" msgid "" "This idiom works because tuples are compared lexicographically; the first " "items are compared; if they are the same then the second items are compared, " "and so on." msgstr "" +"ਇਹ idiom ਇਸ ਲਈ ਕੰਮ ਕਰਦਾ ਹੈ ਕਿਉਂਕਿ tuples ਦੀ ਤੁਲਨਾ lexicographical ਢੰਗ ਨਾਲ ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ; ਪਹਿਲਾਂ ਪਹਿਲੇ ਆਈਟਮਾਂ ਦੀ ਤੁਲਨਾ ਹੁੰਦੀ ਹੈ, ਜੇ ਉਹ ਇੱਕੋ ਜਿਹੇ ਹੋਣ ਤਾਂ ਦੂਜੇ ਆਈਟਮਾਂ ਦੀ, ਅਤੇ ਇਸੇ " +"ਤਰ੍ਹਾਂ ਅੱਗੇ।" msgid "" "It is not strictly necessary in all cases to include the index *i* in the " "decorated list, but including it gives two benefits:" msgstr "" +"ਸਜਾਈ ਗਈ ਲਿਸਟ ਵਿੱਚ index *i* ਸ਼ਾਮਲ ਕਰਨਾ ਹਰ ਮਾਮਲੇ ਵਿੱਚ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ, ਪਰ ਇਸਨੂੰ ਸ਼ਾਮਲ " +"ਕਰਨ ਨਾਲ ਦੋ ਲਾਭ ਮਿਲਦੇ ਹਨ:" msgid "" "The sort is stable -- if two items have the same key, their order will be " "preserved in the sorted list." msgstr "" +"ਸੋਰਟ ਸਥਿਰ ਰਹਿੰਦਾ ਹੈ -- ਜੇ ਦੋ ਆਈਟਮਾਂ ਦੀ key ਇੱਕੋ ਜਿਹੀ ਹੋਵੇ, ਤਾਂ ਉਨ੍ਹਾਂ ਦਾ ਕ੍ਰਮ ਸੋਰਟ ਕੀਤੀ " +"ਲਿਸਟ ਵਿੱਚ ਬਰਕਰਾਰ ਰਹੇਗਾ।" msgid "" "The original items do not have to be comparable because the ordering of the " @@ -325,25 +473,33 @@ msgid "" "example the original list could contain complex numbers which cannot be " "sorted directly." msgstr "" +"ਸੋਰਟ ਸਥਿਰ ਰਹਿੰਦਾ ਹੈ -- ਜੇ ਦੋ ਆਈਟਮਾਂ ਦੀ key ਇੱਕੋ ਜਿਹੀ ਹੋਵੇ, ਤਾਂ ਉਨ੍ਹਾਂ ਦਾ ਕ੍ਰਮ ਸੋਰਟ ਕੀਤੀ " +"ਲਿਸਟ ਵਿੱਚ ਬਰਕਰਾਰ ਰਹੇਗਾ।" msgid "" -"Another name for this idiom is `Schwartzian transform `_\\, after Randal L. Schwartz, who " -"popularized it among Perl programmers." +"Another name for this idiom is `Schwartzian transform `_\\, after Randal L. Schwartz, " +"who popularized it among Perl programmers." msgstr "" +"ਇਸ idiom ਦਾ ਇੱਕ ਹੋਰ ਨਾਮ `Schwartzian transform `_ ਵੀ ਹੈ, ਜਿਸਦਾ ਨਾਮ Randal L. Schwartz ਦੇ ਨਾਮ 'ਤੇ ਰੱਖਿਆ " +"ਗਿਆ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੇ ਇਸਨੂੰ Perl ਪ੍ਰੋਗਰਾਮਰਾਂ ਵਿੱਚ ਲੋਕਪ੍ਰਿਯ ਬਣਾਇਆ।" msgid "" "Now that Python sorting provides key-functions, this technique is not often " "needed." msgstr "" +"ਹੁਣ ਜਦੋਂ Python ਸੋਰਟਿੰਗ ਵਿੱਚ key functions ਉਪਲਬਧ ਹਨ, ਇਹ ਤਕਨੀਕ ਅਕਸਰ ਲੋੜੀਂਦੀ ਨਹੀਂ ਰਹਿੰਦੀ।" msgid "Comparison Functions" -msgstr "" +msgstr "Comparison Functions" msgid "" "Unlike key functions that return an absolute value for sorting, a comparison " "function computes the relative ordering for two inputs." msgstr "" +"ਉਨ੍ਹਾਂ key functions ਤੋਂ ਵੱਖਰੇ ਜੋ ਸੋਰਟਿੰਗ ਲਈ ਇੱਕ ਨਿਰਪੱਖ ਮੁੱਲ ਵਾਪਸ ਕਰਦੇ ਹਨ, ਇੱਕ comparison " +"function ਦੋ ਇਨਪੁੱਟਾਂ ਲਈ ਸਾਪੇਖ ਕ੍ਰਮ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ।" msgid "" "For example, a `balance scale `_ ਦੋ ਨਮੂਨਿਆਂ ਦੀ ਤੁਲਨਾ ਕਰਕੇ ਉਨ੍ਹਾਂ ਦਾ ਸਾਪੇਖ ਕ੍ਰਮ ਦੱਸਦਾ " +"ਹੈ: ਹਲਕਾ, ਬਰਾਬਰ ਜਾਂ ਭਾਰੀ। ਇਸੇ ਤਰ੍ਹਾਂ, ``cmp(a, b)`` ਵਰਗਾ comparison function ਘੱਟ " +"ਹੋਣ ਲਈ ਨਕਾਰਾਤਮਕ ਮੁੱਲ, ਬਰਾਬਰ ਹੋਣ ਲਈ ਸਿਫ਼ਰ ਅਤੇ ਵੱਧ ਹੋਣ ਲਈ ਸਕਾਰਾਤਮਕ ਮੁੱਲ ਵਾਪਸ ਕਰੇਗਾ।" msgid "" "It is common to encounter comparison functions when translating algorithms " @@ -359,39 +519,51 @@ msgid "" "part of their API. For example, :func:`locale.strcoll` is a comparison " "function." msgstr "" +"ਦੂਜੀਆਂ ਭਾਸ਼ਾਵਾਂ ਤੋਂ ਐਲਗੋਰਿਦਮਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰਦੇ ਸਮੇਂ comparison functions ਦਾ ਸਾਹਮਣਾ ਕਰਨਾ " +"ਆਮ ਗੱਲ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕੁਝ ਲਾਇਬ੍ਰੇਰੀਆਂ ਆਪਣੀ API ਦੇ ਹਿੱਸੇ ਵਜੋਂ comparison functions " +"ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, :func:`locale.strcoll` ਇੱਕ comparison function ਹੈ।" msgid "" -"To accommodate those situations, Python provides :class:`functools." -"cmp_to_key` to wrap the comparison function to make it usable as a key " -"function::" +"To accommodate those situations, Python " +"provides :class:`functools.cmp_to_key` to wrap the comparison function to " +"make it usable as a key function::" msgstr "" +"ਅਜਿਹੀਆਂ ਸਥਿਤੀਆਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ, Python :class:`functools.cmp_to_key` ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ " +"ਜੋ comparison function ਨੂੰ wrap ਕਰਕੇ ਉਸਨੂੰ key function ਵਜੋਂ ਵਰਤਣ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ::" msgid "sorted(words, key=cmp_to_key(strcoll)) # locale-aware sort order" -msgstr "" +msgstr "sorted(words, key=cmp_to_key(strcoll)) # locale-aware sort order" msgid "Strategies For Unorderable Types and Values" -msgstr "" +msgstr "ਅਸੋਰਟਯੋਗ ਕਿਸਮਾਂ ਅਤੇ ਮੁੱਲਾਂ ਲਈ ਰਣਨੀਤੀਆਂ" msgid "" "A number of type and value issues can arise when sorting. Here are some " "strategies that can help:" msgstr "" +"ਸੋਰਟਿੰਗ ਦੌਰਾਨ ਕਿਸਮਾਂ ਅਤੇ ਮੁੱਲਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਕਈ ਸਮੱਸਿਆਵਾਂ ਆ ਸਕਦੀਆਂ ਹਨ। ਹੇਠਾਂ ਕੁਝ ਰਣਨੀਤੀਆਂ " +"ਦਿੱਤੀਆਂ ਗਈਆਂ ਹਨ ਜੋ ਮਦਦਗਾਰ ਸਾਬਤ ਹੋ ਸਕਦੀਆਂ ਹਨ:" msgid "Convert non-comparable input types to strings prior to sorting:" -msgstr "" +msgstr "ਸੋਰਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਗੈਰ-ਤੁਲਨਾਯੋਗ ਇਨਪੁੱਟ ਕਿਸਮਾਂ ਨੂੰ strings ਵਿੱਚ ਬਦਲੋ:" msgid "" ">>> data = ['twelve', '11', 10]\n" ">>> sorted(map(str, data))\n" "['10', '11', 'twelve']" msgstr "" +">>> data = ['twelve', '11', 10]\n" +">>> sorted(map(str, data))\n" +"['10', '11', 'twelve']" msgid "" "This is needed because most cross-type comparisons raise a :exc:`TypeError`." msgstr "" +"ਇਹ ਇਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ ਕਿਉਂਕਿ ਜ਼ਿਆਦਾਤਰ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੀਆਂ ਤੁਲਨਾਵਾਂ :exc:`TypeError` ਪੈਦਾ " +"ਕਰਦੀਆਂ ਹਨ।" msgid "Remove special values prior to sorting:" -msgstr "" +msgstr "ਸੋਰਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਖ਼ਾਸ ਮੁੱਲਾਂ ਨੂੰ ਹਟਾਓ:" msgid "" ">>> from math import isnan\n" @@ -400,62 +572,87 @@ msgid "" ">>> sorted(filterfalse(isnan, data))\n" "[1.1, 2.2, 3.3]" msgstr "" +">>> from math import isnan\n" +">>> from itertools import filterfalse\n" +">>> data = [3.3, float('nan'), 1.1, 2.2]\n" +">>> sorted(filterfalse(isnan, data))\n" +"[1.1, 2.2, 3.3]" msgid "" "This is needed because the `IEEE-754 standard `_ specifies that, \"Every NaN shall compare unordered with " "everything, including itself.\"" msgstr "" +"ਇਹ ਇਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ ਕਿਉਂਕਿ `IEEE-754 standard `_ ਦੇ ਅਨੁਸਾਰ, \"ਹਰ NaN ਹਰ ਚੀਜ਼ ਨਾਲ, ਆਪਣੇ ਆਪ ਸਮੇਤ, ਬੇਤਰਤੀਬ ਤਰੀਕੇ ਨਾਲ ਤੁਲਨਾ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ।\"" msgid "Likewise, ``None`` can be stripped from datasets as well:" -msgstr "" +msgstr "ਇਸੇ ਤਰ੍ਹਾਂ, ``None`` ਨੂੰ ਵੀ ਡਾਟਾਸੈੱਟਾਂ ਵਿੱਚੋਂ ਹਟਾਇਆ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" ">>> data = [3.3, None, 1.1, 2.2]\n" ">>> sorted(x for x in data if x is not None)\n" "[1.1, 2.2, 3.3]" msgstr "" +">>> data = [3.3, None, 1.1, 2.2]\n" +">>> sorted(x for x in data if x is not None)\n" +"[1.1, 2.2, 3.3]" msgid "This is needed because ``None`` is not comparable to other types." -msgstr "" +msgstr "ਇਹ ਇਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ ਕਿਉਂਕਿ ``None`` ਹੋਰ ਕਿਸਮਾਂ ਨਾਲ ਤੁਲਨਾਯੋਗ ਨਹੀਂ ਹੈ।" msgid "Convert mapping types into sorted item lists before sorting:" -msgstr "" +msgstr "ਸੋਰਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ mapping ਕਿਸਮਾਂ ਨੂੰ ਸੋਰਟ ਕੀਤੀਆਂ item lists ਵਿੱਚ ਬਦਲੋ:" msgid "" ">>> data = [{'a': 1}, {'b': 2}]\n" ">>> sorted(data, key=lambda d: sorted(d.items()))\n" "[{'a': 1}, {'b': 2}]" msgstr "" +">>> data = [{'a': 1}, {'b': 2}]\n" +">>> sorted(data, key=lambda d: sorted(d.items()))\n" +"[{'a': 1}, {'b': 2}]" msgid "" "This is needed because dict-to-dict comparisons raise a :exc:`TypeError`." msgstr "" +"ਇਹ ਇਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ ਕਿਉਂਕਿ dict-to-dict ਤੁਲਨਾਵਾਂ :exc:`TypeError` ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ।" msgid "Convert set types into sorted lists before sorting:" -msgstr "" +msgstr "ਸੋਰਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ set ਕਿਸਮਾਂ ਨੂੰ ਸੋਰਟ ਕੀਤੀਆਂ ਲਿਸਟਾਂ ਵਿੱਚ ਬਦਲੋ:" msgid "" ">>> data = [{'a', 'b', 'c'}, {'b', 'c', 'd'}]\n" ">>> sorted(map(sorted, data))\n" "[['a', 'b', 'c'], ['b', 'c', 'd']]" msgstr "" +">>> data = [{'a', 'b', 'c'}, {'b', 'c', 'd'}]\n" +">>> sorted(map(sorted, data))\n" +"[['a', 'b', 'c'], ['b', 'c', 'd']]" msgid "" "This is needed because the elements contained in set types do not have a " "deterministic order. For example, ``list({'a', 'b'})`` may produce either " "``['a', 'b']`` or ``['b', 'a']``." msgstr "" +"ਇਹ ਇਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ ਕਿਉਂਕਿ set ਕਿਸਮਾਂ ਵਿੱਚ ਮੌਜੂਦ ਐਲੀਮੈਂਟਾਂ ਦਾ ਕ੍ਰਮ ਨਿਰਧਾਰਤ ਨਹੀਂ ਹੁੰਦਾ। " +"ਉਦਾਹਰਨ ਲਈ, ``list({'a', 'b'})`` ਕਦੇ ``['a', 'b']`` ਅਤੇ ਕਦੇ ``['b', 'a']`` ਪੈਦਾ " +"ਕਰ ਸਕਦਾ ਹੈ।" msgid "Odds and Ends" -msgstr "" +msgstr "ਕੁਝ ਹੋਰ ਲਾਭਦਾਇਕ ਜਾਣਕਾਰੀਆਂ" msgid "" -"For locale aware sorting, use :func:`locale.strxfrm` for a key function or :" -"func:`locale.strcoll` for a comparison function. This is necessary because " -"\"alphabetical\" sort orderings can vary across cultures even if the " +"For locale aware sorting, use :func:`locale.strxfrm` for a key function " +"or :func:`locale.strcoll` for a comparison function. This is necessary " +"because \"alphabetical\" sort orderings can vary across cultures even if the " "underlying alphabet is the same." msgstr "" +"locale-aware ਸੋਰਟਿੰਗ ਲਈ, key function ਵਜੋਂ :func:`locale.strxfrm` ਜਾਂ comparison " +"function ਵਜੋਂ :func:`locale.strcoll` ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇਹ ਇਸ ਲਈ ਲਾਜ਼ਮੀ ਹੈ ਕਿਉਂਕਿ " +"\"alphabetical\" ਸੋਰਟ ਕ੍ਰਮ ਵੱਖ-ਵੱਖ ਸਭਿਆਚਾਰਾਂ ਵਿੱਚ ਵੱਖ ਹੋ ਸਕਦੇ ਹਨ ਭਾਵੇਂ ਮੂਲ ਵਰਣਮਾਲਾ ਇੱਕੋ ਹੀ " +"ਹੋਵੇ।" msgid "" "The *reverse* parameter still maintains sort stability (so that records with " @@ -463,6 +660,9 @@ msgid "" "simulated without the parameter by using the builtin :func:`reversed` " "function twice:" msgstr "" +"*reverse* ਪੈਰਾਮੀਟਰ ਸੋਰਟ ਸਥਿਰਤਾ ਨੂੰ ਫਿਰ ਵੀ ਕਾਇਮ ਰੱਖਦਾ ਹੈ (ਅਰਥਾਤ ਇੱਕੋ key ਵਾਲੇ ਰਿਕਾਰਡ " +"ਆਪਣਾ ਮੂਲ ਕ੍ਰਮ ਬਰਕਰਾਰ ਰੱਖਦੇ ਹਨ)। ਦਿਲਚਸਪ ਗੱਲ ਇਹ ਹੈ ਕਿ ਇਸ ਪ੍ਰਭਾਵ ਨੂੰ :func:`reversed` " +"ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ ਦੀ ਦੋ ਵਾਰ ਵਰਤੋਂ ਕਰਕੇ ਵੀ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" ">>> data = [('red', 1), ('blue', 1), ('red', 2), ('blue', 2)]\n" @@ -473,26 +673,44 @@ msgid "" ">>> standard_way\n" "[('red', 1), ('red', 2), ('blue', 1), ('blue', 2)]" msgstr "" +">>> data = [('red', 1), ('blue', 1), ('red', 2), ('blue', 2)]\n" +">>> standard_way = sorted(data, key=itemgetter(0), reverse=True)\n" +">>> double_reversed = list(reversed(sorted(reversed(data), " +"key=itemgetter(0))))\n" +">>> assert standard_way == double_reversed\n" +">>> standard_way\n" +"[('red', 1), ('red', 2), ('blue', 1), ('blue', 2)]" msgid "" "The sort routines use ``<`` when making comparisons between two objects. So, " -"it is easy to add a standard sort order to a class by defining an :meth:" -"`~object.__lt__` method:" +"it is easy to add a standard sort order to a class by defining " +"an :meth:`~object.__lt__` method:" msgstr "" +"ਦੋ objects ਵਿਚਕਾਰ ਤੁਲਨਾ ਕਰਦੇ ਸਮੇਂ ਸੋਰਟ ਰੂਟੀਨ ``<`` ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਇਸ " +"ਲਈ, :meth:`~object.__lt__` ਮੈਥਡ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਕੇ ਕਿਸੇ class ਲਈ ਇੱਕ ਮਿਆਰੀ ਸੋਰਟ ਕ੍ਰਮ " +"ਜੋੜਨਾ ਆਸਾਨ ਹੈ:" msgid "" ">>> Student.__lt__ = lambda self, other: self.age < other.age\n" ">>> sorted(student_objects)\n" "[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgstr "" +">>> Student.__lt__ = lambda self, other: self.age < other.age\n" +">>> sorted(student_objects)\n" +"[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]" msgid "" -"However, note that ``<`` can fall back to using :meth:`~object.__gt__` if :" -"meth:`~object.__lt__` is not implemented (see :func:`object.__lt__` for " +"However, note that ``<`` can fall back to using :meth:`~object.__gt__` " +"if :meth:`~object.__lt__` is not implemented (see :func:`object.__lt__` for " "details on the mechanics). To avoid surprises, :pep:`8` recommends that all " "six comparison methods be implemented. The :deco:`~functools.total_ordering` " "decorator is provided to make that task easier." msgstr "" +"ਹਾਲਾਂਕਿ, ਧਿਆਨ ਰੱਖੋ ਕਿ ``<``, ਜੇ :meth:`~object.__lt__` ਲਾਗੂ ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, " +"ਤਾਂ :meth:`~object.__gt__` ਵਰਤਣ 'ਤੇ ਵਾਪਸ ਆ ਸਕਦਾ ਹੈ (ਮਕੈਨਿਕਸ ਦੀਆਂ ਵਿਸਥਾਰਾਂ " +"ਲਈ :func:`object.__lt__` ਵੇਖੋ). ਅਚਾਨਕ ਨਤੀਜਿਆਂ ਤੋਂ ਬਚਣ ਲਈ, :pep:`8` ਸਿਫਾਰਸ਼ ਕਰਦਾ ਹੈ " +"ਕਿ ਸਾਰੇ ਛੇ ਤੁਲਨਾ ਵਿਧੀਆਂ ਲਾਗੂ ਕੀਤੀਆਂ ਜਾਣ. ਇਸ ਕੰਮ ਨੂੰ ਆਸਾਨ ਬਣਾਉਣ " +"ਲਈ :deco:`~functools.total_ordering` ਡੈਕੋਰੇਟਰ ਮੁਹੱਈਆ ਕੀਤਾ ਗਿਆ ਹੈ." msgid "" "Key functions need not depend directly on the objects being sorted. A key " @@ -500,6 +718,10 @@ msgid "" "grades are stored in a dictionary, they can be used to sort a separate list " "of student names:" msgstr "" +"Key functions ਦਾ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਸੋਰਟ ਕੀਤੇ ਜਾ ਰਹੇ objects 'ਤੇ ਨਿਰਭਰ ਹੋਣਾ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ। " +"ਇੱਕ key function ਬਾਹਰੀ ਸਰੋਤਾਂ ਤੱਕ ਵੀ ਪਹੁੰਚ ਕਰ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਜੇ ਵਿਦਿਆਰਥੀਆਂ ਦੇ " +"grades ਇੱਕ dictionary ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਹੋਣ, ਤਾਂ ਉਹਨਾਂ ਦੀ ਵਰਤੋਂ ਵਿਦਿਆਰਥੀਆਂ ਦੇ ਨਾਂਵਾਂ ਦੀ ਵੱਖਰੀ " +"ਲਿਸਟ ਨੂੰ ਸੋਰਟ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:" msgid "" ">>> students = ['dave', 'john', 'jane']\n" @@ -507,20 +729,28 @@ msgid "" ">>> sorted(students, key=newgrades.__getitem__)\n" "['jane', 'dave', 'john']" msgstr "" +">>> students = ['dave', 'john', 'jane']\n" +">>> newgrades = {'john': 'F', 'jane':'A', 'dave': 'C'}\n" +">>> sorted(students, key=newgrades.__getitem__)\n" +"['jane', 'dave', 'john']" msgid "Partial Sorts" -msgstr "" +msgstr "ਅੰਸ਼ਿਕ ਸੋਰਟਿੰਗ" msgid "" "Some applications require only some of the data to be ordered. The standard " "library provides several tools that do less work than a full sort:" msgstr "" +"ਕੁਝ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਸਿਰਫ਼ ਕੁਝ ਡਾਟੇ ਨੂੰ ਹੀ ਕ੍ਰਮਬੱਧ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਕਈ " +"ਅਜਿਹੇ ਸਾਧਨ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ ਜੋ ਪੂਰੀ ਸੋਰਟਿੰਗ ਨਾਲੋਂ ਘੱਟ ਕੰਮ ਕਰਦੇ ਹਨ:" msgid "" ":func:`min` and :func:`max` return the smallest and largest values, " "respectively. These functions make a single pass over the input data and " "require almost no auxiliary memory." msgstr "" +":func:`min` ਅਤੇ :func:`max` ਕ੍ਰਮਵਾਰ ਸਭ ਤੋਂ ਛੋਟੇ ਅਤੇ ਸਭ ਤੋਂ ਵੱਡੇ ਮੁੱਲ ਵਾਪਸ ਕਰਦੇ ਹਨ। ਇਹ ਫੰਕਸ਼ਨ " +"ਇਨਪੁੱਟ ਡਾਟੇ ਉੱਤੇ ਸਿਰਫ਼ ਇੱਕ ਵਾਰ ਗੁਜ਼ਰਦੇ ਹਨ ਅਤੇ ਲਗਭਗ ਕੋਈ ਵਾਧੂ ਮੈਮੋਰੀ ਨਹੀਂ ਮੰਗਦੇ।" msgid "" ":func:`heapq.nsmallest` and :func:`heapq.nlargest` return the *n* smallest " @@ -529,6 +759,10 @@ msgid "" "that are small relative to the number of inputs, these functions make far " "fewer comparisons than a full sort." msgstr "" +":func:`heapq.nsmallest` ਅਤੇ :func:`heapq.nlargest` ਕ੍ਰਮਵਾਰ *n* ਸਭ ਤੋਂ ਛੋਟੇ ਅਤੇ ਸਭ ਤੋਂ " +"ਵੱਡੇ ਮੁੱਲ ਵਾਪਸ ਕਰਦੇ ਹਨ। ਇਹ ਫੰਕਸ਼ਨ ਡਾਟੇ ਉੱਤੇ ਇੱਕ ਵਾਰ ਗੁਜ਼ਰਦੇ ਹਨ ਅਤੇ ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਸਿਰਫ਼ *n* ਐਲੀਮੈਂਟ " +"ਮੈਮੋਰੀ ਵਿੱਚ ਰੱਖਦੇ ਹਨ। ਜਦੋਂ *n* ਦਾ ਮੁੱਲ ਕੁੱਲ ਇਨਪੁੱਟਾਂ ਦੇ ਮੁਕਾਬਲੇ ਛੋਟਾ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਫੰਕਸ਼ਨ ਪੂਰੀ " +"ਸੋਰਟਿੰਗ ਨਾਲੋਂ ਕਾਫ਼ੀ ਘੱਟ ਤੁਲਨਾਵਾਂ ਕਰਦੇ ਹਨ।" msgid "" ":func:`heapq.heappush` and :func:`heapq.heappop` create and maintain a " @@ -536,3 +770,7 @@ msgid "" "position ``0``. These functions are suitable for implementing priority " "queues which are commonly used for task scheduling." msgstr "" +":func:`heapq.heappush` ਅਤੇ :func:`heapq.heappop` ਡਾਟੇ ਦੀ ਇੱਕ ਅੰਸ਼ਿਕ ਤੌਰ 'ਤੇ ਸੋਰਟ " +"ਕੀਤੀ ਬਣਤਰ ਤਿਆਰ ਅਤੇ ਸੰਭਾਲਦੇ ਹਨ ਜਿਸ ਵਿੱਚ ਸਭ ਤੋਂ ਛੋਟਾ ਐਲੀਮੈਂਟ ਸਥਿਤੀ ``0`` 'ਤੇ ਰੱਖਿਆ ਜਾਂਦਾ " +"ਹੈ। ਇਹ ਫੰਕਸ਼ਨ priority queues ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਉਚਿਤ ਹਨ, ਜਿਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ ਆਮ ਤੌਰ 'ਤੇ ਕਾਰਜਾਂ " +"ਦੀ scheduling ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" diff --git a/howto/timerfd.po b/howto/timerfd.po index a83c130..e41aa47 100644 --- a/howto/timerfd.po +++ b/howto/timerfd.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -176,8 +176,8 @@ msgid "" " conn = None\n" " elif fd in fds:\n" " print(f\"Reading timer {fd}\")\n" -" count = int.from_bytes(os.read(fd, 8), byteorder=sys." -"byteorder)\n" +" count = int.from_bytes(os.read(fd, 8), " +"byteorder=sys.byteorder)\n" " print(f\"Timer {fds.index(fd) + 1} expired {count} " "times\")\n" " else:\n" @@ -261,8 +261,8 @@ msgid "" " conn = None\n" " elif fd in fds:\n" " print(f\"Reading timer {fd}\")\n" -" count = int.from_bytes(os.read(fd, 8), byteorder=sys." -"byteorder)\n" +" count = int.from_bytes(os.read(fd, 8), " +"byteorder=sys.byteorder)\n" " print(f\"Timer {fds.index(fd) + 1} expired {count} times\")\n" " else:\n" " print(f\"Unknown file descriptor {fd}\")\n" diff --git a/howto/unicode.po b/howto/unicode.po index 48d4d60..04cbc96 100644 --- a/howto/unicode.po +++ b/howto/unicode.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,10 +63,10 @@ msgstr "" msgid "" "The Unicode standard describes how characters are represented by **code " "points**. A code point value is an integer in the range 0 to 0x10FFFF " -"(about 1.1 million values, the `actual number assigned `_ is less than that). In the standard and in " -"this document, a code point is written using the notation ``U+265E`` to mean " -"the character with value ``0x265e`` (9,822 in decimal)." +"(about 1.1 million values, the `actual number assigned `_ is less than that). In the " +"standard and in this document, a code point is written using the notation " +"``U+265E`` to mean the character with value ``0x265e`` (9,822 in decimal)." msgstr "" msgid "" @@ -238,8 +238,8 @@ msgid "" msgstr "" msgid "" -"Another `good introductory article `_ was " "written by Joel Spolsky. If this introduction didn't make things clear to " "you, you should try reading this alternate article before continuing." @@ -372,10 +372,10 @@ msgid "" msgstr "" msgid "" -"The *errors* parameter is the same as the parameter of the :meth:`~bytes." -"decode` method but supports a few more possible handlers. As well as " -"``'strict'``, ``'ignore'``, and ``'replace'`` (which in this case inserts a " -"question mark instead of the unencodable character), there is also " +"The *errors* parameter is the same as the parameter of " +"the :meth:`~bytes.decode` method but supports a few more possible handlers. " +"As well as ``'strict'``, ``'ignore'``, and ``'replace'`` (which in this case " +"inserts a question mark instead of the unencodable character), there is also " "``'xmlcharrefreplace'`` (inserts an XML character reference), " "``backslashreplace`` (inserts a ``\\uNNNN`` escape sequence) and " "``namereplace`` (inserts a ``\\N{...}`` escape sequence)." @@ -525,9 +525,9 @@ msgid "" "subcategories. To take the codes from the above output, ``'Ll'`` means " "'Letter, lowercase', ``'No'`` means \"Number, other\", ``'Mn'`` is \"Mark, " "nonspacing\", and ``'So'`` is \"Symbol, other\". See `the General Category " -"Values section of the Unicode Character Database documentation `_ for a list of category " -"codes." +"Values section of the Unicode Character Database documentation `_ for a list of " +"category codes." msgstr "" msgid "Comparing Strings" @@ -557,12 +557,12 @@ msgid "" msgstr "" msgid "" -"A second tool is the :mod:`unicodedata` module's :func:`~unicodedata." -"normalize` function that converts strings to one of several normal forms, " -"where letters followed by a combining character are replaced with single " -"characters. :func:`~unicodedata.normalize` can be used to perform string " -"comparisons that won't falsely report inequality if two strings use " -"combining characters differently:" +"A second tool is the :mod:`unicodedata` " +"module's :func:`~unicodedata.normalize` function that converts strings to " +"one of several normal forms, where letters followed by a combining character " +"are replaced with single characters. :func:`~unicodedata.normalize` can be " +"used to perform string comparisons that won't falsely report inequality if " +"two strings use combining characters differently:" msgstr "" msgid "" @@ -667,8 +667,9 @@ msgid "Some good alternative discussions of Python's Unicode support are:" msgstr "" msgid "" -"`Processing Text Files in Python 3 `_, by Nick Coghlan." +"`Processing Text Files in Python 3 `_, " +"by Nick Coghlan." msgstr "" msgid "" @@ -677,8 +678,8 @@ msgid "" msgstr "" msgid "" -"The :class:`str` type is described in the Python library reference at :ref:" -"`textseq`." +"The :class:`str` type is described in the Python library reference " +"at :ref:`textseq`." msgstr "" msgid "The documentation for the :mod:`unicodedata` module." @@ -740,8 +741,8 @@ msgid "" "object that assumes the file's contents are in a specified encoding and " "accepts Unicode parameters for methods such as :meth:`~io.TextIOBase.read` " "and :meth:`~io.TextIOBase.write`. This works through :func:`open`\\'s " -"*encoding* and *errors* parameters which are interpreted just like those in :" -"meth:`str.encode` and :meth:`bytes.decode`." +"*encoding* and *errors* parameters which are interpreted just like those " +"in :meth:`str.encode` and :meth:`bytes.decode`." msgstr "" msgid "Reading Unicode from a file is therefore simple::" @@ -950,8 +951,8 @@ msgid "" msgstr "" msgid "" -"One section of `Mastering Python 3 Input/Output `_, a PyCon 2010 talk by David " +"One section of `Mastering Python 3 Input/Output `_, a PyCon 2010 talk by David " "Beazley, discusses text processing and binary data handling." msgstr "" diff --git a/howto/urllib2.po b/howto/urllib2.po index d5e6629..5abe3bd 100644 --- a/howto/urllib2.po +++ b/howto/urllib2.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,8 +34,8 @@ msgid "" msgstr "" msgid "" -"`Basic Authentication `__" +"`Basic Authentication `__" msgstr "" msgid "A tutorial on *Basic Authentication*, with examples in Python." @@ -83,8 +83,8 @@ msgstr "" msgid "" "If you wish to retrieve a resource via URL and store it in a temporary " -"location, you can do so via the :func:`shutil.copyfileobj` and :func:" -"`tempfile.NamedTemporaryFile` functions::" +"location, you can do so via the :func:`shutil.copyfileobj` " +"and :func:`tempfile.NamedTemporaryFile` functions::" msgstr "" msgid "" @@ -262,13 +262,13 @@ msgstr "" msgid "" "*urlopen* raises :exc:`~urllib.error.URLError` when it cannot handle a " -"response (though as usual with Python APIs, built-in exceptions such as :exc:" -"`ValueError`, :exc:`TypeError` etc. may also be raised)." +"response (though as usual with Python APIs, built-in exceptions such " +"as :exc:`ValueError`, :exc:`TypeError` etc. may also be raised)." msgstr "" msgid "" -":exc:`~urllib.error.HTTPError` is the subclass of :exc:`~urllib.error." -"URLError` raised in the specific case of HTTP URLs." +":exc:`~urllib.error.HTTPError` is the subclass " +"of :exc:`~urllib.error.URLError` raised in the specific case of HTTP URLs." msgstr "" msgid "The exception classes are exported from the :mod:`urllib.error` module." @@ -305,9 +305,9 @@ msgid "" "request. The default handlers will handle some of these responses for you " "(for example, if the response is a \"redirection\" that requests the client " "fetch the document from a different URL, urllib will handle that for you). " -"For those it can't handle, urlopen will raise an :exc:`~urllib.error." -"HTTPError`. Typical errors include '404' (page not found), '403' (request " -"forbidden), and '401' (authentication required)." +"For those it can't handle, urlopen will raise " +"an :exc:`~urllib.error.HTTPError`. Typical errors include '404' (page not " +"found), '403' (request forbidden), and '401' (authentication required)." msgstr "" msgid "" @@ -377,8 +377,8 @@ msgid "" "...\n" "404\n" "b'\\n\\n\\n\\n\\n\\nPage Not Found\\n\n" " ..." @@ -388,9 +388,9 @@ msgid "Wrapping it Up" msgstr "" msgid "" -"So if you want to be prepared for :exc:`~urllib.error.HTTPError` *or* :exc:" -"`~urllib.error.URLError` there are two basic approaches. I prefer the second " -"approach." +"So if you want to be prepared for :exc:`~urllib.error.HTTPError` " +"*or* :exc:`~urllib.error.URLError` there are two basic approaches. I prefer " +"the second approach." msgstr "" msgid "Number 1" @@ -455,8 +455,8 @@ msgstr "" msgid "" "**info** - this returns a dictionary-like object that describes the page " -"fetched, particularly the headers sent by the server. It is currently an :" -"class:`http.client.HTTPMessage` instance." +"fetched, particularly the headers sent by the server. It is currently " +"an :class:`http.client.HTTPMessage` instance." msgstr "" msgid "" @@ -486,8 +486,8 @@ msgid "" msgstr "" msgid "" -"To create an opener, instantiate an ``OpenerDirector``, and then call ``." -"add_handler(some_handler_instance)`` repeatedly." +"To create an opener, instantiate an ``OpenerDirector``, and then call " +"``.add_handler(some_handler_instance)`` repeatedly." msgstr "" msgid "" @@ -623,8 +623,8 @@ msgstr "" msgid "" "Currently ``urllib.request`` *does not* support fetching of ``https`` " -"locations through a proxy. However, this can be enabled by extending urllib." -"request as shown in the recipe [#]_." +"locations through a proxy. However, this can be enabled by extending " +"urllib.request as shown in the recipe [#]_." msgstr "" msgid "" @@ -644,9 +644,9 @@ msgid "" "As of Python 2.3 you can specify how long a socket should wait for a " "response before timing out. This can be useful in applications which have to " "fetch web pages. By default the socket module has *no timeout* and can hang. " -"Currently, the socket timeout is not exposed at the http.client or urllib." -"request levels. However, you can set the default timeout globally for all " -"sockets using ::" +"Currently, the socket timeout is not exposed at the http.client or " +"urllib.request levels. However, you can set the default timeout globally for " +"all sockets using ::" msgstr "" msgid "" diff --git a/improve-page-nojs.po b/improve-page-nojs.po deleted file mode 100644 index 0559d99..0000000 --- a/improve-page-nojs.po +++ /dev/null @@ -1,49 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-19 14:44+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Improve a documentation page" -msgstr "" - -msgid "" -"We are always interested to hear ideas about improvements to the " -"documentation." -msgstr "" - -msgid "" -"If the bug or suggested improvement concerns the translation of this " -"documentation, open an issue or edit the page in `translation's repository " -"`_ instead." -msgstr "" - -msgid "You have a few ways to ask questions or suggest changes:" -msgstr "" - -msgid "" -"You can start a discussion about the page on the Python discussion forum. " -"This link will start a topic in the Documentation category: `New " -"Documentation topic `_." -msgstr "" - -msgid "" -"You can open an issue on the Python GitHub issue tracker. This link will " -"create a new issue with the \"docs\" label: `New docs issue `_." -msgstr "" diff --git a/improve-page.po b/improve-page.po deleted file mode 100644 index 61dfce9..0000000 --- a/improve-page.po +++ /dev/null @@ -1,64 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-19 14:44+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Improve a documentation page" -msgstr "" - -msgid "" -"We are always interested to hear ideas about improvements to the " -"documentation." -msgstr "" - -msgid "" -"You were reading \"PAGETITLE\" at ``_. The source for that page is " -"on `GitHub `_." -msgstr "" - -msgid "" -"If the bug or suggested improvement concerns the translation of this " -"documentation, open an issue or edit the page in `translation's repository " -"`_ instead." -msgstr "" - -msgid "You have a few ways to ask questions or suggest changes:" -msgstr "" - -msgid "" -"You can start a discussion about the page on the Python discussion forum. " -"This link will start a pre-populated topic: `Question about page " -"\"PAGETITLE\" `_." -msgstr "" - -msgid "" -"You can open an issue on the Python GitHub issue tracker. This link will " -"create a new pre-populated issue: `Docs: problem with page \"PAGETITLE\" " -"`_." -msgstr "" - -msgid "" -"You can `edit the page on GitHub `_ to open a pull request and begin the " -"contribution process." -msgstr "" diff --git a/installing/index.po b/installing/index.po index e3d22ef..ba24d21 100644 --- a/installing/index.po +++ b/installing/index.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -143,8 +143,8 @@ msgstr "" msgid "" "More information and resources regarding :program:`pip` and its capabilities " -"can be found in the `Python Packaging User Guide `__." +"can be found in the `Python Packaging User Guide `__." msgstr "" msgid "" @@ -193,8 +193,8 @@ msgstr "" msgid "" "On Linux, macOS, and other POSIX systems, use the versioned Python commands " -"in combination with the ``-m`` switch to run the appropriate copy of :" -"program:`pip`::" +"in combination with the ``-m`` switch to run the appropriate copy " +"of :program:`pip`::" msgstr "" msgid "" @@ -246,9 +246,9 @@ msgid "python -m ensurepip --default-pip" msgstr "" msgid "" -"There are also additional resources for `installing pip `__." +"There are also additional resources for `installing pip `__." msgstr "" msgid "Installing binary extensions" @@ -268,13 +268,13 @@ msgid "" msgstr "" msgid "" -"Some of the solutions for installing `scientific software `__ that are not yet available as pre-built wheel files " -"may also help with obtaining other binary extensions without needing to " -"build them locally." +"Some of the solutions for installing `scientific software `__ that are not yet available as pre-built " +"wheel files may also help with obtaining other binary extensions without " +"needing to build them locally." msgstr "" msgid "" -"`Python Packaging User Guide: Binary Extensions `__" +"`Python Packaging User Guide: Binary Extensions `__" msgstr "" diff --git a/library/__future__.po b/library/__future__.po index e6cc802..d24a758 100644 --- a/library/__future__.po +++ b/library/__future__.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,10 +25,11 @@ msgid "**Source code:** :source:`Lib/__future__.py`" msgstr "" msgid "" -"Imports of the form ``from __future__ import feature`` are called :ref:" -"`future statements `. These are special-cased by the Python compiler " -"to allow the use of new Python features in modules containing the future " -"statement before the release in which the feature becomes standard." +"Imports of the form ``from __future__ import feature`` are " +"called :ref:`future statements `. These are special-cased by the " +"Python compiler to allow the use of new Python features in modules " +"containing the future statement before the release in which the feature " +"becomes standard." msgstr "" msgid "" @@ -195,15 +196,15 @@ msgstr "" msgid "" "*CompilerFlag* is the (bitfield) flag that should be passed in the fourth " "argument to the built-in function :func:`compile` to enable the feature in " -"dynamically compiled code. This flag is stored in the :attr:`_Feature." -"compiler_flag` attribute on :class:`_Feature` instances." +"dynamically compiled code. This flag is stored in " +"the :attr:`_Feature.compiler_flag` attribute on :class:`_Feature` instances." msgstr "" msgid "" "``from __future__ import annotations`` was previously scheduled to become " "mandatory in Python 3.10, but the change was delayed and ultimately " -"canceled. This feature will eventually be deprecated and removed. See :pep:" -"`649` and :pep:`749`." +"canceled. This feature will eventually be deprecated and removed. " +"See :pep:`649` and :pep:`749`." msgstr "" msgid ":ref:`future`" diff --git a/library/__main__.po b/library/__main__.po index e809c56..f7d63c0 100644 --- a/library/__main__.po +++ b/library/__main__.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,8 +37,8 @@ msgstr "" msgid "" "Both of these mechanisms are related to Python modules; how users interact " "with them and how they interact with each other. They are explained in " -"detail below. If you're new to Python modules, see the tutorial section :" -"ref:`tut-modules` for an introduction." +"detail below. If you're new to Python modules, see the tutorial " +"section :ref:`tut-modules` for an introduction." msgstr "" msgid "``__name__ == '__main__'``" @@ -103,8 +103,8 @@ msgid "" msgstr "" msgid "" -"the Python module or package passed to the Python interpreter with the :" -"option:`-m` argument:" +"the Python module or package passed to the Python interpreter with " +"the :option:`-m` argument:" msgstr "" msgid "" @@ -235,9 +235,9 @@ msgstr "" msgid "" "Since the call to ``main`` is wrapped in :func:`sys.exit`, the expectation " -"is that your function will return some value acceptable as an input to :func:" -"`sys.exit`; typically, an integer or ``None`` (which is implicitly returned " -"if your function does not have a return statement)." +"is that your function will return some value acceptable as an input " +"to :func:`sys.exit`; typically, an integer or ``None`` (which is implicitly " +"returned if your function does not have a return statement)." msgstr "" msgid "" @@ -251,8 +251,8 @@ msgid "" "In particular, be careful about returning strings from your ``main`` " "function. :func:`sys.exit` will interpret a string argument as a failure " "message, so your program will have an exit code of ``1``, indicating " -"failure, and the string will be written to :data:`sys.stderr`. The ``echo." -"py`` example from earlier exemplifies using the ``sys.exit(main())`` " +"failure, and the string will be written to :data:`sys.stderr`. The " +"``echo.py`` example from earlier exemplifies using the ``sys.exit(main())`` " "convention." msgstr "" @@ -331,8 +331,8 @@ msgid "" msgstr "" msgid "" -"This won't work for ``__main__.py`` files in the root directory of a ``." -"zip`` file though. Hence, for consistency, a minimal ``__main__.py`` " +"This won't work for ``__main__.py`` files in the root directory of a " +"``.zip`` file though. Hence, for consistency, a minimal ``__main__.py`` " "without a ``__name__`` check is preferred." msgstr "" @@ -463,6 +463,6 @@ msgid "" msgstr "" msgid "" -"The ``__main__`` scope is used in the implementation of :mod:`pdb` and :mod:" -"`rlcompleter`." +"The ``__main__`` scope is used in the implementation of :mod:`pdb` " +"and :mod:`rlcompleter`." msgstr "" diff --git a/library/_thread.po b/library/_thread.po index cd9d2b7..8d0ce0d 100644 --- a/library/_thread.po +++ b/library/_thread.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,10 +56,11 @@ msgid "When the function returns, the thread silently exits." msgstr "" msgid "" -"When the function terminates with an unhandled exception, :func:`sys." -"unraisablehook` is called to handle the exception. The *object* attribute of " -"the hook argument is *function*. By default, a stack trace is printed and " -"then the thread exits (but other threads continue to run)." +"When the function terminates with an unhandled " +"exception, :func:`sys.unraisablehook` is called to handle the exception. The " +"*object* attribute of the hook argument is *function*. By default, a stack " +"trace is printed and then the thread exits (but other threads continue to " +"run)." msgstr "" msgid "" @@ -87,8 +88,9 @@ msgid "" msgstr "" msgid "" -"If the given signal isn't handled by Python (it was set to :const:`signal." -"SIG_DFL` or :const:`signal.SIG_IGN`), this function does nothing." +"If the given signal isn't handled by Python (it was set " +"to :const:`signal.SIG_DFL` or :const:`signal.SIG_IGN`), this function does " +"nothing." msgstr "" msgid "The *signum* argument is added to customize the signal number." @@ -139,9 +141,9 @@ msgid "" "*size* argument specifies the stack size to be used for subsequently created " "threads, and must be 0 (use platform or configured default) or a positive " "integer value of at least 32,768 (32 KiB). If *size* is not specified, 0 is " -"used. If changing the thread stack size is unsupported, a :exc:" -"`RuntimeError` is raised. If the specified stack size is invalid, a :exc:" -"`ValueError` is raised and the stack size is unmodified. 32 KiB is " +"used. If changing the thread stack size is unsupported, " +"a :exc:`RuntimeError` is raised. If the specified stack size is invalid, " +"a :exc:`ValueError` is raised and the stack size is unmodified. 32 KiB is " "currently the minimum supported stack size value to guarantee sufficient " "stack space for the interpreter itself. Note that some platforms may have " "particular restrictions on values for the stack size, such as requiring a " @@ -213,8 +215,8 @@ msgid "" msgstr "" msgid "" -"In addition to these methods, lock objects can also be used via the :keyword:" -"`with` statement, e.g.::" +"In addition to these methods, lock objects can also be used via " +"the :keyword:`with` statement, e.g.::" msgstr "" msgid "" @@ -241,8 +243,9 @@ msgstr "" msgid "" "When the main thread exits, it is system defined whether the other threads " -"survive. On most systems, they are killed without executing :keyword:" -"`try` ... :keyword:`finally` clauses or executing object destructors." +"survive. On most systems, they are killed without " +"executing :keyword:`try` ... :keyword:`finally` clauses or executing object " +"destructors." msgstr "" msgid "light-weight processes" diff --git a/library/abc.po b/library/abc.po index 2924aa8..42c4551 100644 --- a/library/abc.po +++ b/library/abc.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,16 +31,17 @@ msgstr "" msgid "" "This module provides the infrastructure for defining :term:`abstract base " "classes ` (ABCs) in Python, as outlined in :pep:`3119`; " -"see the PEP for why this was added to Python. (See also :pep:`3141` and the :" -"mod:`numbers` module regarding a type hierarchy for numbers based on ABCs.)" +"see the PEP for why this was added to Python. (See also :pep:`3141` and " +"the :mod:`numbers` module regarding a type hierarchy for numbers based on " +"ABCs.)" msgstr "" msgid "" "The :mod:`collections` module has some concrete classes that derive from " -"ABCs; these can, of course, be further derived. In addition, the :mod:" -"`collections.abc` submodule has some ABCs that can be used to test whether a " -"class or instance provides a particular interface, for example, if it is :" -"term:`hashable` or if it is a :term:`mapping`." +"ABCs; these can, of course, be further derived. In addition, " +"the :mod:`collections.abc` submodule has some ABCs that can be used to test " +"whether a class or instance provides a particular interface, for example, if " +"it is :term:`hashable` or if it is a :term:`mapping`." msgstr "" msgid "" @@ -115,8 +116,8 @@ msgid "Returns the registered subclass, to allow usage as a class decorator." msgstr "" msgid "" -"To detect calls to :meth:`!register`, you can use the :func:" -"`get_cache_token` function." +"To detect calls to :meth:`!register`, you can use " +"the :func:`get_cache_token` function." msgstr "" msgid "You can also override this method in an abstract base class:" @@ -129,8 +130,8 @@ msgid "" "Check whether *subclass* is considered a subclass of this ABC. This means " "that you can customize the behavior of :func:`issubclass` further without " "the need to call :meth:`register` on every class you want to consider a " -"subclass of the ABC. (This class method is called from the :meth:`~type." -"__subclasscheck__` method of the ABC.)" +"subclass of the ABC. (This class method is called from " +"the :meth:`~type.__subclasscheck__` method of the ABC.)" msgstr "" msgid "" @@ -175,18 +176,18 @@ msgid "" msgstr "" msgid "" -"The ABC ``MyIterable`` defines the standard iterable method, :meth:`~object." -"__iter__`, as an abstract method. The implementation given here can still " -"be called from subclasses. The :meth:`!get_iterator` method is also part of " -"the ``MyIterable`` abstract base class, but it does not have to be " -"overridden in non-abstract derived classes." +"The ABC ``MyIterable`` defines the standard iterable " +"method, :meth:`~object.__iter__`, as an abstract method. The implementation " +"given here can still be called from subclasses. The :meth:`!get_iterator` " +"method is also part of the ``MyIterable`` abstract base class, but it does " +"not have to be overridden in non-abstract derived classes." msgstr "" msgid "" "The :meth:`__subclasshook__` class method defined here says that any class " "that has an :meth:`~object.__iter__` method in its :attr:`~object.__dict__` " -"(or in that of one of its base classes, accessed via the :attr:`~type." -"__mro__` list) is considered a ``MyIterable`` too." +"(or in that of one of its base classes, accessed via " +"the :attr:`~type.__mro__` list) is considered a ``MyIterable`` too." msgstr "" msgid "" @@ -335,9 +336,10 @@ msgid "" msgstr "" msgid "" -"It is now possible to use :deco:`property`, :deco:`property.getter`, :deco:" -"`property.setter` and :deco:`property.deleter` with :deco:`abstractmethod`, " -"making this decorator redundant." +"It is now possible to " +"use :deco:`property`, :deco:`property.getter`, :deco:`property.setter` " +"and :deco:`property.deleter` with :deco:`abstractmethod`, making this " +"decorator redundant." msgstr "" msgid "" diff --git a/library/aifc.po b/library/aifc.po index b4cdb09..eba1c74 100644 --- a/library/aifc.po +++ b/library/aifc.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,15 +23,20 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid ":mod:`!aifc` --- Read and write AIFF and AIFC files" -msgstr "" +msgstr ":mod:`!aifc` --- AIFF ਅਤੇ AIFC ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹੋ ਅਤੇ ਲਿਖੋ" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" +"ਇਹ ਮੋਡੀਊਲ ਹੁਣ Python ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਹਿੱਸਾ ਨਹੀਂ ਹੈ। ਇਸ ਨੂੰ Python 3.11 ਵਿੱਚ ਅਪ੍ਰਚਲਿਤ " +"ਕਰਨ ਤੋਂ ਬਾਅਦ :ref:`Python 3.13 ਵਿੱਚ ਹਟਾ ਦਿੱਤਾ ਗਿਆ `। ਇਸ ਨੂੰ " +"ਹਟਾਉਣ ਦਾ ਫ਼ੈਸਲਾ :pep:`594` ਵਿੱਚ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "" "The last version of Python that provided the :mod:`!aifc` module was `Python " "3.12 `_." msgstr "" +":mod:`!aifc` ਮੋਡੀਊਲ ਪ੍ਰਦਾਨ ਕਰਨ ਵਾਲਾ Python ਦਾ ਆਖਰੀ ਸੰਸਕਰਣ `Python 3.12 `_ ਸੀ।" diff --git a/library/allos.po b/library/allos.po index b43297d..a876f39 100644 --- a/library/allos.po +++ b/library/allos.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Generic Operating System Services" -msgstr "" +msgstr "ਆਮ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਸੇਵਾਵਾਂ" msgid "" "The modules described in this chapter provide interfaces to operating system " @@ -32,3 +32,7 @@ msgid "" "interfaces, but they are available on most other systems as well. Here's an " "overview:" msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਵਰਣਿਤ ਮੋਡੀਊਲ ਉਹਨਾਂ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲਈ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ ਜੋ " +"(ਲਗਭਗ) ਸਾਰੇ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ 'ਤੇ ਉਪਲਬਧ ਹੁੰਦੀਆਂ ਹਨ, ਜਿਵੇਂ ਕਿ ਫਾਈਲਾਂ ਅਤੇ ਘੜੀ। ਇਹ ਇੰਟਰਫੇਸ ਆਮ " +"ਤੌਰ 'ਤੇ Unix ਜਾਂ C ਇੰਟਰਫੇਸਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਤਿਆਰ ਕੀਤੇ ਗਏ ਹਨ, ਪਰ ਇਹ ਹੋਰ ਬਹੁਤ ਸਾਰੇ ਸਿਸਟਮਾਂ 'ਤੇ " +"ਵੀ ਉਪਲਬਧ ਹਨ। ਹੇਠਾਂ ਇੱਕ ਸੰਖੇਪ ਜਾਣਕਾਰੀ ਦਿੱਤੀ ਗਈ ਹੈ:" diff --git a/library/annotationlib.po b/library/annotationlib.po deleted file mode 100644 index 8590166..0000000 --- a/library/annotationlib.po +++ /dev/null @@ -1,957 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!annotationlib` --- Functionality for introspecting annotations" -msgstr "" - -msgid "**Source code:** :source:`Lib/annotationlib.py`" -msgstr "" - -msgid "" -"The :mod:`!annotationlib` module provides tools for introspecting :term:" -"`annotations ` on modules, classes, and functions." -msgstr "" - -msgid "" -"Annotations are :ref:`lazily evaluated ` and often contain " -"forward references to objects that are not yet defined when the annotation " -"is created. This module provides a set of low-level tools that can be used " -"to retrieve annotations in a reliable way, even in the presence of forward " -"references and other edge cases." -msgstr "" - -msgid "" -"This module supports retrieving annotations in three main formats (see :" -"class:`Format`), each of which works best for different use cases:" -msgstr "" - -msgid "" -":attr:`~Format.VALUE` evaluates the annotations and returns their value. " -"This is most straightforward to work with, but it may raise errors, for " -"example if the annotations contain references to undefined names." -msgstr "" - -msgid "" -":attr:`~Format.FORWARDREF` returns :class:`ForwardRef` objects for " -"annotations that cannot be resolved, allowing you to inspect the annotations " -"without evaluating them. This is useful when you need to work with " -"annotations that may contain unresolved forward references." -msgstr "" - -msgid "" -":attr:`~Format.STRING` returns the annotations as a string, similar to how " -"it would appear in the source file. This is useful for documentation " -"generators that want to display annotations in a readable way." -msgstr "" - -msgid "" -"The :func:`get_annotations` function is the main entry point for retrieving " -"annotations. Given a function, class, or module, it returns an annotations " -"dictionary in the requested format. This module also provides functionality " -"for working directly with the :term:`annotate function` that is used to " -"evaluate annotations, such as :func:`get_annotate_from_class_namespace` and :" -"func:`call_annotate_function`, as well as the :func:`call_evaluate_function` " -"function for working with :term:`evaluate functions `." -msgstr "" - -msgid "" -"Most functionality in this module can execute arbitrary code; see :ref:`the " -"security section ` for more information." -msgstr "" - -msgid "" -":pep:`649` proposed the current model for how annotations work in Python." -msgstr "" - -msgid "" -":pep:`749` expanded on various aspects of :pep:`649` and introduced the :mod:" -"`!annotationlib` module." -msgstr "" - -msgid "" -":ref:`annotations-howto` provides best practices for working with " -"annotations." -msgstr "" - -msgid "" -":pypi:`typing-extensions` provides a backport of :func:`get_annotations` " -"that works on earlier versions of Python." -msgstr "" - -msgid "Annotation semantics" -msgstr "" - -msgid "" -"The way annotations are evaluated has changed over the history of Python 3, " -"and currently still depends on a :ref:`future import `. There have " -"been execution models for annotations:" -msgstr "" - -msgid "" -"*Stock semantics* (default in Python 3.0 through 3.13; see :pep:`3107` and :" -"pep:`526`): Annotations are evaluated eagerly, as they are encountered in " -"the source code." -msgstr "" - -msgid "" -"*Stringified annotations* (used with ``from __future__ import annotations`` " -"in Python 3.7 and newer; see :pep:`563`): Annotations are stored as strings " -"only." -msgstr "" - -msgid "" -"*Deferred evaluation* (default in Python 3.14 and newer; see :pep:`649` and :" -"pep:`749`): Annotations are evaluated lazily, only when they are accessed." -msgstr "" - -msgid "As an example, consider the following program::" -msgstr "" - -msgid "" -"def func(a: Cls) -> None:\n" -" print(a)\n" -"\n" -"class Cls: pass\n" -"\n" -"print(func.__annotations__)" -msgstr "" - -msgid "This will behave as follows:" -msgstr "" - -msgid "" -"Under stock semantics (Python 3.13 and earlier), it will throw a :exc:" -"`NameError` at the line where ``func`` is defined, because ``Cls`` is an " -"undefined name at that point." -msgstr "" - -msgid "" -"Under stringified annotations (if ``from __future__ import annotations`` is " -"used), it will print ``{'a': 'Cls', 'return': 'None'}``." -msgstr "" - -msgid "" -"Under deferred evaluation (Python 3.14 and later), it will print ``{'a': " -", 'return': None}``." -msgstr "" - -msgid "" -"Stock semantics were used when function annotations were first introduced in " -"Python 3.0 (by :pep:`3107`) because this was the simplest, most obvious way " -"to implement annotations. The same execution model was used when variable " -"annotations were introduced in Python 3.6 (by :pep:`526`). However, stock " -"semantics caused problems when using annotations as type hints, such as a " -"need to refer to names that are not yet defined when the annotation is " -"encountered. In addition, there were performance problems with executing " -"annotations at module import time. Therefore, in Python 3.7, :pep:`563` " -"introduced the ability to store annotations as strings using the ``from " -"__future__ import annotations`` syntax. The plan at the time was to " -"eventually make this behavior the default, but a problem appeared: " -"stringified annotations are more difficult to process for those who " -"introspect annotations at runtime. An alternative proposal, :pep:`649`, " -"introduced the third execution model, deferred evaluation, and was " -"implemented in Python 3.14. Stringified annotations are still used if ``from " -"__future__ import annotations`` is present, but this behavior will " -"eventually be removed." -msgstr "" - -msgid "Classes" -msgstr "" - -msgid "" -"An :class:`~enum.IntEnum` describing the formats in which annotations can be " -"returned. Members of the enum, or their equivalent integer values, can be " -"passed to :func:`get_annotations` and other functions in this module, as " -"well as to :attr:`~object.__annotate__` functions." -msgstr "" - -msgid "Values are the result of evaluating the annotation expressions." -msgstr "" - -msgid "" -"Special value used to signal that an annotate function is being evaluated in " -"a special environment with fake globals. When passed this value, annotate " -"functions should either return the same value as for the :attr:`Format." -"VALUE` format, or raise :exc:`NotImplementedError` to signal that they do " -"not support execution in this environment. This format is only used " -"internally and should not be passed to the functions in this module." -msgstr "" - -msgid "" -"Values are real annotation values (as per :attr:`Format.VALUE` format) for " -"defined values, and :class:`ForwardRef` proxies for undefined values. Real " -"objects may contain references to :class:`ForwardRef` proxy objects." -msgstr "" - -msgid "" -"Values are the text string of the annotation as it appears in the source " -"code, up to modifications including, but not restricted to, whitespace " -"normalizations and constant values optimizations." -msgstr "" - -msgid "" -"The exact values of these strings may change in future versions of Python." -msgstr "" - -msgid "A proxy object for forward references in annotations." -msgstr "" - -msgid "" -"Instances of this class are returned when the :attr:`~Format.FORWARDREF` " -"format is used and annotations contain a name that cannot be resolved. This " -"can happen when a forward reference is used in an annotation, such as when a " -"class is referenced before it is defined." -msgstr "" - -msgid "" -"A string containing the code that was evaluated to produce the :class:" -"`~ForwardRef`. The string may not be exactly equivalent to the original " -"source." -msgstr "" - -msgid "Evaluate the forward reference, returning its value." -msgstr "" - -msgid "" -"If the *format* argument is :attr:`~Format.VALUE` (the default), this method " -"may throw an exception, such as :exc:`NameError`, if the forward reference " -"refers to a name that cannot be resolved. The arguments to this method can " -"be used to provide bindings for names that would otherwise be undefined. If " -"the *format* argument is :attr:`~Format.FORWARDREF`, the method will never " -"throw an exception, but may return a :class:`~ForwardRef` instance. For " -"example, if the forward reference object contains the code " -"``list[undefined]``, where ``undefined`` is a name that is not defined, " -"evaluating it with the :attr:`~Format.FORWARDREF` format will return " -"``list[ForwardRef('undefined')]``. If the *format* argument is :attr:" -"`~Format.STRING`, the method will return :attr:`~ForwardRef.__forward_arg__`." -msgstr "" - -msgid "" -"The *owner* parameter provides the preferred mechanism for passing scope " -"information to this method. The owner of a :class:`~ForwardRef` is the " -"object that contains the annotation from which the :class:`~ForwardRef` " -"derives, such as a module object, type object, or function object." -msgstr "" - -msgid "" -"The *globals*, *locals*, and *type_params* parameters provide a more precise " -"mechanism for influencing the names that are available when the :class:" -"`~ForwardRef` is evaluated. *globals* and *locals* are passed to :func:" -"`eval`, representing the global and local namespaces in which the name is " -"evaluated. The *type_params* parameter is relevant for objects created using " -"the native syntax for :ref:`generic classes ` and :ref:" -"`functions `. It is a tuple of :ref:`type parameters " -"` that are in scope while the forward reference is being " -"evaluated. For example, if evaluating a :class:`~ForwardRef` retrieved from " -"an annotation found in the class namespace of a generic class ``C``, " -"*type_params* should be set to ``C.__type_params__``." -msgstr "" - -msgid "" -":class:`~ForwardRef` instances returned by :func:`get_annotations` retain " -"references to information about the scope they originated from, so calling " -"this method with no further arguments may be sufficient to evaluate such " -"objects. :class:`~ForwardRef` instances created by other means may not have " -"any information about their scope, so passing arguments to this method may " -"be necessary to evaluate them successfully." -msgstr "" - -msgid "" -"If no *owner*, *globals*, *locals*, or *type_params* are provided and the :" -"class:`~ForwardRef` does not contain information about its origin, empty " -"globals and locals dictionaries are used." -msgstr "" - -msgid "Functions" -msgstr "" - -msgid "" -"Convert an annotations dict containing runtime values to a dict containing " -"only strings. If the values are not already strings, they are converted " -"using :func:`type_repr`. This is meant as a helper for user-provided " -"annotate functions that support the :attr:`~Format.STRING` format but do not " -"have access to the code creating the annotations." -msgstr "" - -msgid "" -"For example, this is used to implement the :attr:`~Format.STRING` format " -"for :class:`typing.TypedDict` classes created through the functional syntax:" -msgstr "" - -msgid "" -">>> from typing import TypedDict\n" -">>> Movie = TypedDict(\"movie\", {\"name\": str, \"year\": int})\n" -">>> get_annotations(Movie, format=Format.STRING)\n" -"{'name': 'str', 'year': 'int'}" -msgstr "" - -msgid "" -"Call the :term:`annotate function` *annotate* with the given *format*, a " -"member of the :class:`Format` enum, and return the annotations dictionary " -"produced by the function." -msgstr "" - -msgid "" -"This helper function is required because annotate functions generated by the " -"compiler for functions, classes, and modules only support the :attr:`~Format." -"VALUE` format when called directly. To support other formats, this function " -"calls the annotate function in a special environment that allows it to " -"produce annotations in the other formats. This is a useful building block " -"when implementing functionality that needs to partially evaluate annotations " -"while a class is being constructed." -msgstr "" - -msgid "" -"*owner* is the object that owns the annotation function, usually a function, " -"class, or module. If provided, it is used in the :attr:`~Format.FORWARDREF` " -"format to produce a :class:`ForwardRef` object that carries more information." -msgstr "" - -msgid "" -":PEP:`PEP 649 <649#the-stringizer-and-the-fake-globals-environment>` " -"contains an explanation of the implementation technique used by this " -"function." -msgstr "" - -msgid "" -"Call the :term:`evaluate function` *evaluate* with the given *format*, a " -"member of the :class:`Format` enum, and return the value produced by the " -"function. This is similar to :func:`call_annotate_function`, but the latter " -"always returns a dictionary mapping strings to annotations, while this " -"function returns a single value." -msgstr "" - -msgid "" -"This is intended for use with the evaluate functions generated for lazily " -"evaluated elements related to type aliases and type parameters:" -msgstr "" - -msgid ":meth:`typing.TypeAliasType.evaluate_value`, the value of type aliases" -msgstr "" - -msgid ":meth:`typing.TypeVar.evaluate_bound`, the bound of type variables" -msgstr "" - -msgid "" -":meth:`typing.TypeVar.evaluate_constraints`, the constraints of type " -"variables" -msgstr "" - -msgid "" -":meth:`typing.TypeVar.evaluate_default`, the default value of type variables" -msgstr "" - -msgid "" -":meth:`typing.ParamSpec.evaluate_default`, the default value of parameter " -"specifications" -msgstr "" - -msgid "" -":meth:`typing.TypeVarTuple.evaluate_default`, the default value of type " -"variable tuples" -msgstr "" - -msgid "" -"*owner* is the object that owns the evaluate function, such as the type " -"alias or type variable object." -msgstr "" - -msgid "" -"*format* can be used to control the format in which the value is returned:" -msgstr "" - -msgid "" -">>> type Alias = undefined\n" -">>> call_evaluate_function(Alias.evaluate_value, Format.VALUE)\n" -"Traceback (most recent call last):\n" -"...\n" -"NameError: name 'undefined' is not defined\n" -">>> call_evaluate_function(Alias.evaluate_value, Format.FORWARDREF)\n" -"ForwardRef('undefined')\n" -">>> call_evaluate_function(Alias.evaluate_value, Format.STRING)\n" -"'undefined'" -msgstr "" - -msgid "" -"Retrieve the :term:`annotate function` from a class namespace dictionary " -"*namespace*. Return :const:`!None` if the namespace does not contain an " -"annotate function. This is primarily useful before the class has been fully " -"created (e.g., in a metaclass); after the class exists, the annotate " -"function can be retrieved with ``cls.__annotate__``. See :ref:`below " -"` for an example using this function in a metaclass." -msgstr "" - -msgid "Compute the annotations dict for an object." -msgstr "" - -msgid "" -"*obj* may be a callable, class, module, or other object with :attr:`~object." -"__annotate__` or :attr:`~object.__annotations__` attributes. Passing any " -"other object raises :exc:`TypeError`." -msgstr "" - -msgid "" -"The *format* parameter controls the format in which annotations are " -"returned, and must be a member of the :class:`Format` enum or its integer " -"equivalent. The different formats work as follows:" -msgstr "" - -msgid "" -"VALUE: :attr:`!object.__annotations__` is tried first; if that does not " -"exist, the :attr:`!object.__annotate__` function is called if it exists." -msgstr "" - -msgid "" -"FORWARDREF: If :attr:`!object.__annotations__` exists and can be evaluated " -"successfully, it is used; otherwise, the :attr:`!object.__annotate__` " -"function is called. If it does not exist either, :attr:`!object." -"__annotations__` is tried again and any error from accessing it is re-raised." -msgstr "" - -msgid "" -"When calling :attr:`!object.__annotate__` it is first called with :attr:" -"`~Format.FORWARDREF`. If this is not implemented, it will then check if :" -"attr:`~Format.VALUE_WITH_FAKE_GLOBALS` is supported and use that in the fake " -"globals environment. If neither of these formats are supported, it will fall " -"back to using :attr:`~Format.VALUE`. If :attr:`~Format.VALUE` fails, the " -"error from this call will be raised." -msgstr "" - -msgid "" -"STRING: If :attr:`!object.__annotate__` exists, it is called first; " -"otherwise, :attr:`!object.__annotations__` is used and stringified using :" -"func:`annotations_to_string`." -msgstr "" - -msgid "" -"When calling :attr:`!object.__annotate__` it is first called with :attr:" -"`~Format.STRING`. If this is not implemented, it will then check if :attr:" -"`~Format.VALUE_WITH_FAKE_GLOBALS` is supported and use that in the fake " -"globals environment. If neither of these formats are supported, it will fall " -"back to using :attr:`~Format.VALUE` with the result converted using :func:" -"`annotations_to_string`. If :attr:`~Format.VALUE` fails, the error from this " -"call will be raised." -msgstr "" - -msgid "" -"Returns a dict. :func:`!get_annotations` returns a new dict every time it's " -"called; calling it twice on the same object will return two different but " -"equivalent dicts." -msgstr "" - -msgid "This function handles several details for you:" -msgstr "" - -msgid "" -"If *eval_str* is true, values of type :class:`!str` will be un-stringized " -"using :func:`eval`. This is intended for use with stringized annotations " -"(``from __future__ import annotations``). It is an error to set *eval_str* " -"to true with formats other than :attr:`Format.VALUE`." -msgstr "" - -msgid "" -"If *obj* doesn't have an annotations dict, returns an empty dict. (Functions " -"and methods always have an annotations dict; classes, modules, and other " -"types of callables may not.)" -msgstr "" - -msgid "" -"Ignores inherited annotations on classes, as well as annotations on " -"metaclasses. If a class doesn't have its own annotations dict, returns an " -"empty dict." -msgstr "" - -msgid "" -"All accesses to object members and dict values are done using ``getattr()`` " -"and ``dict.get()`` for safety." -msgstr "" - -msgid "" -"*eval_str* controls whether or not values of type :class:`!str` are replaced " -"with the result of calling :func:`eval` on those values:" -msgstr "" - -msgid "" -"If eval_str is true, :func:`eval` is called on values of type :class:`!str`. " -"(Note that :func:`!get_annotations` doesn't catch exceptions; if :func:" -"`eval` raises an exception, it will unwind the stack past the :func:`!" -"get_annotations` call.)" -msgstr "" - -msgid "" -"If *eval_str* is false (the default), values of type :class:`!str` are " -"unchanged." -msgstr "" - -msgid "" -"*globals* and *locals* are passed in to :func:`eval`; see the documentation " -"for :func:`eval` for more information. If *globals* or *locals* is :const:`!" -"None`, this function may replace that value with a context-specific default, " -"contingent on ``type(obj)``:" -msgstr "" - -msgid "If *obj* is a module, *globals* defaults to ``obj.__dict__``." -msgstr "" - -msgid "" -"If *obj* is a class, *globals* defaults to ``sys.modules[obj.__module__]." -"__dict__`` and *locals* defaults to the *obj* class namespace." -msgstr "" - -msgid "" -"If *obj* is a callable, *globals* defaults to :attr:`obj.__globals__ " -"`, although if *obj* is a wrapped function (using :" -"func:`functools.update_wrapper`) or a :class:`functools.partial` object, it " -"is unwrapped until a non-wrapped function is found." -msgstr "" - -msgid "" -"Calling :func:`!get_annotations` is best practice for accessing the " -"annotations dict of any object. See :ref:`annotations-howto` for more " -"information on annotations best practices." -msgstr "" - -msgid "" -">>> def f(a: int, b: str) -> float:\n" -"... pass\n" -">>> get_annotations(f)\n" -"{'a': , 'b': , 'return': }" -msgstr "" - -msgid "" -"Convert an arbitrary Python value to a format suitable for use by the :attr:" -"`~Format.STRING` format. This calls :func:`repr` for most objects, but has " -"special handling for some objects, such as type objects." -msgstr "" - -msgid "" -"This is meant as a helper for user-provided annotate functions that support " -"the :attr:`~Format.STRING` format but do not have access to the code " -"creating the annotations. It can also be used to provide a user-friendly " -"string representation for other objects that contain values that are " -"commonly encountered in annotations." -msgstr "" - -msgid "Recipes" -msgstr "" - -msgid "Using annotations in a metaclass" -msgstr "" - -msgid "" -"A :ref:`metaclass ` may want to inspect or even modify the " -"annotations in a class body during class creation. Doing so requires " -"retrieving annotations from the class namespace dictionary. For classes " -"created with ``from __future__ import annotations``, the annotations will be " -"in the ``__annotations__`` key of the dictionary. For other classes with " -"annotations, :func:`get_annotate_from_class_namespace` can be used to get " -"the annotate function, and :func:`call_annotate_function` can be used to " -"call it and retrieve the annotations. Using the :attr:`~Format.FORWARDREF` " -"format will usually be best, because this allows the annotations to refer to " -"names that cannot yet be resolved when the class is created." -msgstr "" - -msgid "" -"To modify the annotations, it is best to create a wrapper annotate function " -"that calls the original annotate function, makes any necessary adjustments, " -"and returns the result." -msgstr "" - -msgid "" -"Below is an example of a metaclass that filters out all :class:`typing." -"ClassVar` annotations from the class and puts them in a separate attribute:" -msgstr "" - -msgid "" -"import annotationlib\n" -"import typing\n" -"\n" -"class ClassVarSeparator(type):\n" -" def __new__(mcls, name, bases, ns):\n" -" if \"__annotations__\" in ns: # from __future__ import annotations\n" -" annotations = ns[\"__annotations__\"]\n" -" classvar_keys = {\n" -" key for key, value in annotations.items()\n" -" # Use string comparison for simplicity; a more robust solution\n" -" # could use annotationlib.ForwardRef.evaluate\n" -" if value.startswith(\"ClassVar\")\n" -" }\n" -" classvars = {key: annotations[key] for key in classvar_keys}\n" -" ns[\"__annotations__\"] = {\n" -" key: value for key, value in annotations.items()\n" -" if key not in classvar_keys\n" -" }\n" -" wrapped_annotate = None\n" -" elif annotate := annotationlib.get_annotate_from_class_namespace(ns):\n" -" annotations = annotationlib.call_annotate_function(\n" -" annotate, format=annotationlib.Format.FORWARDREF\n" -" )\n" -" classvar_keys = {\n" -" key for key, value in annotations.items()\n" -" if typing.get_origin(value) is typing.ClassVar\n" -" }\n" -" classvars = {key: annotations[key] for key in classvar_keys}\n" -"\n" -" def wrapped_annotate(format):\n" -" annos = annotationlib.call_annotate_function(annotate, format, " -"owner=typ)\n" -" return {key: value for key, value in annos.items() if key not in " -"classvar_keys}\n" -"\n" -" else: # no annotations\n" -" classvars = {}\n" -" wrapped_annotate = None\n" -" typ = super().__new__(mcls, name, bases, ns)\n" -"\n" -" if wrapped_annotate is not None:\n" -" # Wrap the original __annotate__ with a wrapper that removes " -"ClassVars\n" -" typ.__annotate__ = wrapped_annotate\n" -" typ.classvars = classvars # Store the ClassVars in a separate " -"attribute\n" -" return typ" -msgstr "" - -msgid "Creating a custom callable annotate function" -msgstr "" - -msgid "" -"Custom :term:`annotate functions ` may be literal " -"functions like those automatically generated for functions, classes, and " -"modules. Or, they may wish to utilise the encapsulation provided by classes, " -"in which case any :term:`callable` can be used as an :term:`annotate " -"function`." -msgstr "" - -msgid "" -"To provide the :attr:`~Format.VALUE`, :attr:`~Format.STRING`, or :attr:" -"`~Format.FORWARDREF` formats directly, an :term:`annotate function` must " -"provide the following attribute:" -msgstr "" - -msgid "" -"A callable ``__call__`` with signature ``__call__(format, /) -> dict``, that " -"does not raise a :exc:`NotImplementedError` when called with a supported " -"format." -msgstr "" - -msgid "" -"To provide the :attr:`~Format.VALUE_WITH_FAKE_GLOBALS` format, which is used " -"to automatically generate :attr:`~Format.STRING` or :attr:`~Format." -"FORWARDREF` if they are not supported directly, :term:`annotate functions " -"` must provide the following attributes:" -msgstr "" - -msgid "" -"A callable ``__call__`` with signature ``__call__(format, /) -> dict``, that " -"does not raise a :exc:`NotImplementedError` when called with :attr:`~Format." -"VALUE_WITH_FAKE_GLOBALS`." -msgstr "" - -msgid "" -"A :ref:`code object ` ``__code__`` containing the compiled " -"code for the annotate function." -msgstr "" - -msgid "" -"Optional: A tuple of the function's positional defaults ``__kwdefaults__``, " -"if the function represented by ``__code__`` uses any positional defaults." -msgstr "" - -msgid "" -"Optional: A dict of the function's keyword defaults ``__defaults__``, if the " -"function represented by ``__code__`` uses any keyword defaults." -msgstr "" - -msgid "Optional: All other :ref:`function attributes `." -msgstr "" - -msgid "" -"class Annotate:\n" -" called_formats = []\n" -"\n" -" def __call__(self, format=None, /, *, _self=None):\n" -" # When called with fake globals, `_self` will be the\n" -" # actual self value, and `self` will be the format.\n" -" if _self is not None:\n" -" self, format = _self, self\n" -"\n" -" self.called_formats.append(format)\n" -" if format <= 2: # VALUE or VALUE_WITH_FAKE_GLOBALS\n" -" return {\"x\": MyType}\n" -" raise NotImplementedError\n" -"\n" -" __code__ = __call__.__code__\n" -" __defaults__ = (None,)\n" -" __kwdefaults__ = property(lambda self: dict(_self=self))\n" -"\n" -" __globals__ = {}\n" -" __builtins__ = {}\n" -" __closure__ = None" -msgstr "" - -msgid "This can then be called with:" -msgstr "" - -msgid "" -">>> from annotationlib import call_annotate_function, Format\n" -">>> call_annotate_function(Annotate(), format=Format.STRING)\n" -"{'x': 'MyType'}" -msgstr "" - -msgid "Or used as the annotate function for an object:" -msgstr "" - -msgid "" -">>> from annotationlib import get_annotations, Format\n" -">>> class C:\n" -"... pass\n" -">>> C.__annotate__ = Annotate()\n" -">>> get_annotations(Annotate(), format=Format.STRING)\n" -"{'x': 'MyType'}" -msgstr "" - -msgid "Limitations of the ``STRING`` format" -msgstr "" - -msgid "" -"The :attr:`~Format.STRING` format is meant to approximate the source code of " -"the annotation, but the implementation strategy used means that it is not " -"always possible to recover the exact source code." -msgstr "" - -msgid "" -"First, the stringifier of course cannot recover any information that is not " -"present in the compiled code, including comments, whitespace, " -"parenthesization, and operations that get simplified by the compiler." -msgstr "" - -msgid "" -"Second, the stringifier can intercept almost all operations that involve " -"names looked up in some scope, but it cannot intercept operations that " -"operate fully on constants. As a corollary, this also means it is not safe " -"to request the ``STRING`` format on untrusted code: Python is powerful " -"enough that it is possible to achieve arbitrary code execution even with no " -"access to any globals or builtins. For example:" -msgstr "" - -msgid "" -">>> def f(x: (1).__class__.__base__.__subclasses__()[-1].__init__." -"__builtins__[\"print\"](\"Hello world\")): pass\n" -"...\n" -">>> annotationlib.get_annotations(f, format=annotationlib.Format.STRING)\n" -"Hello world\n" -"{'x': 'None'}" -msgstr "" - -msgid "" -"This particular example works as of the time of writing, but it relies on " -"implementation details and is not guaranteed to work in the future." -msgstr "" - -msgid "" -"Among the different kinds of expressions that exist in Python, as " -"represented by the :mod:`ast` module, some expressions are supported, " -"meaning that the ``STRING`` format can generally recover the original source " -"code; others are unsupported, meaning that they may result in incorrect " -"output or an error." -msgstr "" - -msgid "The following are supported (sometimes with caveats):" -msgstr "" - -msgid ":class:`ast.BinOp`" -msgstr "" - -msgid ":class:`ast.UnaryOp`" -msgstr "" - -msgid "" -":class:`ast.Invert` (``~``), :class:`ast.UAdd` (``+``), and :class:`ast." -"USub` (``-``) are supported" -msgstr "" - -msgid ":class:`ast.Not` (``not``) is not supported" -msgstr "" - -msgid ":class:`ast.Dict` (except when using ``**`` unpacking)" -msgstr "" - -msgid ":class:`ast.Set`" -msgstr "" - -msgid ":class:`ast.Compare`" -msgstr "" - -msgid ":class:`ast.Eq` and :class:`ast.NotEq` are supported" -msgstr "" - -msgid "" -":class:`ast.Lt`, :class:`ast.LtE`, :class:`ast.Gt`, and :class:`ast.GtE` are " -"supported, but the operand may be flipped" -msgstr "" - -msgid "" -":class:`ast.Is`, :class:`ast.IsNot`, :class:`ast.In`, and :class:`ast.NotIn` " -"are not supported" -msgstr "" - -msgid ":class:`ast.Call` (except when using ``**`` unpacking)" -msgstr "" - -msgid "" -":class:`ast.Constant` (though not the exact representation of the constant; " -"for example, escape sequences in strings are lost; hexadecimal numbers are " -"converted to decimal)" -msgstr "" - -msgid ":class:`ast.Attribute` (assuming the value is not a constant)" -msgstr "" - -msgid ":class:`ast.Subscript` (assuming the value is not a constant)" -msgstr "" - -msgid ":class:`ast.Starred` (``*`` unpacking)" -msgstr "" - -msgid ":class:`ast.Name`" -msgstr "" - -msgid ":class:`ast.List`" -msgstr "" - -msgid ":class:`ast.Tuple`" -msgstr "" - -msgid ":class:`ast.Slice`" -msgstr "" - -msgid "" -"The following are unsupported, but throw an informative error when " -"encountered by the stringifier:" -msgstr "" - -msgid "" -":class:`ast.FormattedValue` (f-strings; error is not detected if conversion " -"specifiers like ``!r`` are used)" -msgstr "" - -msgid ":class:`ast.JoinedStr` (f-strings)" -msgstr "" - -msgid "The following are unsupported and result in incorrect output:" -msgstr "" - -msgid ":class:`ast.BoolOp` (``and`` and ``or``)" -msgstr "" - -msgid ":class:`ast.IfExp`" -msgstr "" - -msgid ":class:`ast.Lambda`" -msgstr "" - -msgid ":class:`ast.ListComp`" -msgstr "" - -msgid ":class:`ast.SetComp`" -msgstr "" - -msgid ":class:`ast.DictComp`" -msgstr "" - -msgid ":class:`ast.GeneratorExp`" -msgstr "" - -msgid "" -"The following are disallowed in annotation scopes and therefore not relevant:" -msgstr "" - -msgid ":class:`ast.NamedExpr` (``:=``)" -msgstr "" - -msgid ":class:`ast.Await`" -msgstr "" - -msgid ":class:`ast.Yield`" -msgstr "" - -msgid ":class:`ast.YieldFrom`" -msgstr "" - -msgid "Limitations of the ``FORWARDREF`` format" -msgstr "" - -msgid "" -"The :attr:`~Format.FORWARDREF` format aims to produce real values as much as " -"possible, with anything that cannot be resolved replaced with :class:" -"`ForwardRef` objects. It is affected by broadly the same Limitations as the :" -"attr:`~Format.STRING` format: annotations that perform operations on " -"literals or that use unsupported expression types may raise exceptions when " -"evaluated using the :attr:`~Format.FORWARDREF` format." -msgstr "" - -msgid "Below are a few examples of the behavior with unsupported expressions:" -msgstr "" - -msgid "" -">>> from annotationlib import get_annotations, Format\n" -">>> def zerodiv(x: 1 / 0): ...\n" -">>> get_annotations(zerodiv, format=Format.STRING)\n" -"Traceback (most recent call last):\n" -" ...\n" -"ZeroDivisionError: division by zero\n" -">>> get_annotations(zerodiv, format=Format.FORWARDREF)\n" -"Traceback (most recent call last):\n" -" ...\n" -"ZeroDivisionError: division by zero\n" -">>> def ifexp(x: 1 if y else 0): ...\n" -">>> get_annotations(ifexp, format=Format.STRING)\n" -"{'x': '1'}" -msgstr "" - -msgid "Security implications of introspecting annotations" -msgstr "" - -msgid "" -"Much of the functionality in this module involves executing code related to " -"annotations, which can then do arbitrary things. For example, :func:" -"`get_annotations` may call an arbitrary :term:`annotate function`, and :meth:" -"`ForwardRef.evaluate` may call :func:`eval` on an arbitrary string. Code " -"contained in an annotation might make arbitrary system calls, enter an " -"infinite loop, or perform any other operation. This is also true for any " -"access of the :attr:`~object.__annotations__` attribute, and for various " -"functions in the :mod:`typing` module that work with annotations, such as :" -"func:`typing.get_type_hints`." -msgstr "" - -msgid "" -"Any security issue arising from this also applies immediately after " -"importing code that may contain untrusted annotations: importing code can " -"always cause arbitrary operations to be performed. However, it is unsafe to " -"accept strings or other input from an untrusted source and pass them to any " -"of the APIs for introspecting annotations, for example by editing an " -"``__annotations__`` dictionary or directly creating a :class:`ForwardRef` " -"object." -msgstr "" diff --git a/library/archiving.po b/library/archiving.po index bb15a0f..da6a68e 100644 --- a/library/archiving.po +++ b/library/archiving.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,14 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Data Compression and Archiving" -msgstr "" +msgstr "ਡਾਟਾ ਸੰਕੁਚਨ ਅਤੇ ਆਰਕਾਈਵਿੰਗ" msgid "" "The modules described in this chapter support data compression with the " "zlib, gzip, bzip2, lzma, and zstd algorithms, and the creation of ZIP- and " -"tar-format archives. See also :ref:`archiving-operations` provided by the :" -"mod:`shutil` module." +"tar-format archives. See also :ref:`archiving-operations` provided by " +"the :mod:`shutil` module." msgstr "" +"ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਵਰਣਿਤ ਮੋਡੀਊਲ zlib, gzip, bzip2, lzma ਅਤੇ zstd ਐਲਗੋਰਿਦਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ " +"ਡਾਟਾ ਸੰਕੁਚਨ ਅਤੇ ZIP ਅਤੇ tar ਫਾਰਮੈਟ ਵਾਲੇ ਆਰਕਾਈਵ ਬਣਾਉਣ ਦਾ ਸਮਰਥਨ ਕਰਦੇ " +"ਹਨ। :mod:`shutil` ਮੋਡੀਊਲ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੀਆਂ :ref:`archiving-operations` ਵੀ ਵੇਖੋ।" diff --git a/library/argparse.po b/library/argparse.po index 1d9df35..ce3ac26 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-09 14:27+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,15 +47,15 @@ msgstr "" msgid "" "This page contains the API reference information. For a more gentle " -"introduction to Python command-line parsing, have a look at the :ref:" -"`argparse tutorial `." +"introduction to Python command-line parsing, have a look at " +"the :ref:`argparse tutorial `." msgstr "" msgid "" "The :mod:`!argparse` module makes it easy to write user-friendly command-" "line interfaces. The program defines what arguments it requires, and :mod:`!" -"argparse` will figure out how to parse those out of :data:`sys.argv`. The :" -"mod:`!argparse` module also automatically generates help and usage " +"argparse` will figure out how to parse those out of :data:`sys.argv`. " +"The :mod:`!argparse` module also automatically generates help and usage " "messages. The module will also issue errors when users give the program " "invalid arguments." msgstr "" @@ -98,8 +98,8 @@ msgid "" msgstr "" msgid "" -"If you're looking for a guide about how to upgrade :mod:`optparse` code to :" -"mod:`!argparse`, see :ref:`Upgrading Optparse Code `." msgstr "" @@ -199,7 +199,7 @@ msgstr "" msgid "The following sections describe how each of these are used." msgstr "" -msgid "prog" +msgid "``prog``" msgstr "" msgid "" @@ -260,7 +260,7 @@ msgid "" "executed, rather than always being ``os.path.basename(sys.argv[0])``." msgstr "" -msgid "usage" +msgid "``usage``" msgstr "" msgid "" @@ -292,13 +292,13 @@ msgstr "" msgid "" "When a custom usage message is specified for the main parser, you may also " -"want to consider passing the ``prog`` argument to :meth:`~ArgumentParser." -"add_subparsers` or the ``prog`` and the ``usage`` arguments to :meth:" -"`~_SubParsersAction.add_parser`, to ensure consistent command prefixes and " -"usage information across subparsers." +"want to consider passing the ``prog`` argument " +"to :meth:`~ArgumentParser.add_subparsers` or the ``prog`` and the ``usage`` " +"arguments to :meth:`~_SubParsersAction.add_parser`, to ensure consistent " +"command prefixes and usage information across subparsers." msgstr "" -msgid "description" +msgid "``description``" msgstr "" msgid "" @@ -314,7 +314,7 @@ msgid "" "given space. To change this behavior, see the formatter_class_ argument." msgstr "" -msgid "epilog" +msgid "``epilog``" msgstr "" msgid "" @@ -344,17 +344,17 @@ msgid "" "argument to :class:`ArgumentParser`." msgstr "" -msgid "parents" +msgid "``parents``" msgstr "" msgid "" "Sometimes, several parsers share a common set of arguments. Rather than " "repeating the definitions of these arguments, a single parser with all the " -"shared arguments and passed to ``parents=`` argument to :class:" -"`ArgumentParser` can be used. The ``parents=`` argument takes a list of :" -"class:`ArgumentParser` objects, collects all the positional and optional " -"actions from them, and adds these actions to the :class:`ArgumentParser` " -"object being constructed::" +"shared arguments and passed to ``parents=`` argument " +"to :class:`ArgumentParser` can be used. The ``parents=`` argument takes a " +"list of :class:`ArgumentParser` objects, collects all the positional and " +"optional actions from them, and adds these actions to " +"the :class:`ArgumentParser` object being constructed::" msgstr "" msgid "" @@ -384,7 +384,7 @@ msgid "" "not be reflected in the child." msgstr "" -msgid "formatter_class" +msgid "``formatter_class``" msgstr "" msgid "" @@ -395,9 +395,9 @@ msgstr "" msgid "" ":class:`RawDescriptionHelpFormatter` and :class:`RawTextHelpFormatter` give " -"more control over how textual descriptions are displayed. By default, :class:" -"`ArgumentParser` objects line-wrap the description_ and epilog_ texts in " -"command-line help messages::" +"more control over how textual descriptions are displayed. By " +"default, :class:`ArgumentParser` objects line-wrap the description_ and " +"epilog_ texts in command-line help messages::" msgstr "" msgid "" @@ -505,7 +505,7 @@ msgid "" " --foo int" msgstr "" -msgid "prefix_chars" +msgid "``prefix_chars``" msgstr "" msgid "" @@ -529,7 +529,7 @@ msgid "" "disallowed." msgstr "" -msgid "fromfile_prefix_chars" +msgid "``fromfile_prefix_chars``" msgstr "" msgid "" @@ -552,9 +552,9 @@ msgid "" msgstr "" msgid "" -"Arguments read from a file must be one per line by default (but see also :" -"meth:`~ArgumentParser.convert_arg_line_to_args`) and are treated as if they " -"were in the same place as the original file referencing argument on the " +"Arguments read from a file must be one per line by default (but see " +"also :meth:`~ArgumentParser.convert_arg_line_to_args`) and are treated as if " +"they were in the same place as the original file referencing argument on the " "command line. So in the example above, the expression ``['-f', 'foo', " "'@args.txt']`` is considered equivalent to the expression ``['-f', 'foo', '-" "f', 'bar']``." @@ -577,24 +577,25 @@ msgstr "" msgid "" ":class:`ArgumentParser` changed encoding and errors to read arguments files " -"from default (e.g. :func:`locale.getpreferredencoding(False) ` and ``\"strict\"``) to the :term:`filesystem encoding " -"and error handler`. Arguments file should be encoded in UTF-8 instead of " -"ANSI Codepage on Windows." +"from default (e.g. :func:`locale.getpreferredencoding(False) " +"` and ``\"strict\"``) to the :term:`filesystem " +"encoding and error handler`. Arguments file should be encoded in UTF-8 " +"instead of ANSI Codepage on Windows." msgstr "" -msgid "argument_default" +msgid "``argument_default``" msgstr "" msgid "" -"Generally, argument defaults are specified either by passing a default to :" -"meth:`~ArgumentParser.add_argument` or by calling the :meth:`~ArgumentParser." -"set_defaults` methods with a specific set of name-value pairs. Sometimes " -"however, it may be useful to specify a single parser-wide default for " -"arguments. This can be accomplished by passing the ``argument_default=`` " -"keyword argument to :class:`ArgumentParser`. For example, to globally " -"suppress attribute creation on :meth:`~ArgumentParser.parse_args` calls, we " -"supply ``argument_default=SUPPRESS``::" +"Generally, argument defaults are specified either by passing a default " +"to :meth:`~ArgumentParser.add_argument` or by calling " +"the :meth:`~ArgumentParser.set_defaults` methods with a specific set of name-" +"value pairs. Sometimes however, it may be useful to specify a single parser-" +"wide default for arguments. This can be accomplished by passing the " +"``argument_default=`` keyword argument to :class:`ArgumentParser`. For " +"example, to globally suppress attribute creation " +"on :meth:`~ArgumentParser.parse_args` calls, we supply " +"``argument_default=SUPPRESS``::" msgstr "" msgid "" @@ -607,13 +608,13 @@ msgid "" "Namespace()" msgstr "" -msgid "allow_abbrev" +msgid "``allow_abbrev``" msgstr "" msgid "" -"Normally, when you pass an argument list to the :meth:`~ArgumentParser." -"parse_args` method of an :class:`ArgumentParser`, it :ref:`recognizes " -"abbreviations ` of long options." +"Normally, when you pass an argument list to " +"the :meth:`~ArgumentParser.parse_args` method of an :class:`ArgumentParser`, " +"it :ref:`recognizes abbreviations ` of long options." msgstr "" msgid "This feature can be disabled by setting ``allow_abbrev`` to ``False``::" @@ -628,7 +629,7 @@ msgid "" "PROG: error: unrecognized arguments: --foon" msgstr "" -msgid "conflict_handler" +msgid "``conflict_handler``" msgstr "" msgid "" @@ -675,7 +676,7 @@ msgid "" "option string was overridden." msgstr "" -msgid "add_help" +msgid "``add_help``" msgstr "" msgid "" @@ -686,8 +687,8 @@ msgstr "" msgid "" "Occasionally, it may be useful to disable the addition of this help option. " -"This can be achieved by passing ``False`` as the ``add_help=`` argument to :" -"class:`ArgumentParser`::" +"This can be achieved by passing ``False`` as the ``add_help=`` argument " +"to :class:`ArgumentParser`::" msgstr "" msgid "" @@ -716,13 +717,14 @@ msgid "" " +h, ++help show this help message and exit" msgstr "" -msgid "exit_on_error" +msgid "``exit_on_error``" msgstr "" msgid "" -"Normally, when you pass an invalid argument list to the :meth:" -"`~ArgumentParser.parse_args` method of an :class:`ArgumentParser`, it will " -"print a *message* to :data:`sys.stderr` and exit with a status code of 2." +"Normally, when you pass an invalid argument list to " +"the :meth:`~ArgumentParser.parse_args` method of an :class:`ArgumentParser`, " +"it will print a *message* to :data:`sys.stderr` and exit with a status code " +"of 2." msgstr "" msgid "" @@ -744,7 +746,7 @@ msgid "" "Catching an argumentError" msgstr "" -msgid "suggest_on_error" +msgid "``suggest_on_error``" msgstr "" msgid "" @@ -773,7 +775,7 @@ msgid "" "Changed default value of ``suggest_on_error`` from ``False`` to ``True``." msgstr "" -msgid "color" +msgid "``color``" msgstr "" msgid "" @@ -871,8 +873,8 @@ msgid "metavar_ - A name for the argument in usage messages." msgstr "" msgid "" -"dest_ - The name of the attribute to be added to the object returned by :" -"meth:`parse_args`." +"dest_ - The name of the attribute to be added to the object returned " +"by :meth:`parse_args`." msgstr "" msgid "deprecated_ - Whether or not use of the argument is deprecated." @@ -881,15 +883,15 @@ msgstr "" msgid "The method returns an :class:`Action` object representing the argument." msgstr "" -msgid "name or flags" +msgid "``name`` or ``flags``" msgstr "" msgid "" "The :meth:`~ArgumentParser.add_argument` method must know whether an " "optional argument, like ``-f`` or ``--foo``, or a positional argument, like " -"a list of filenames, is expected. The first arguments passed to :meth:" -"`~ArgumentParser.add_argument` must therefore be either a series of flags, " -"or a simple argument name." +"a list of filenames, is expected. The first arguments passed " +"to :meth:`~ArgumentParser.add_argument` must therefore be either a series of " +"flags, or a simple argument name." msgstr "" msgid "For example, an optional argument could be created like::" @@ -945,7 +947,7 @@ msgid "" " --foo-bar FOO-BAR" msgstr "" -msgid "action" +msgid "``action``" msgstr "" msgid "" @@ -991,6 +993,11 @@ msgid "" "Namespace(foo=True, bar=False, baz=True)" msgstr "" +msgid "" +"These defaults apply when the options are absent. They can be overridden by " +"default_ or argument_default_." +msgstr "" + msgid "" "``'append'`` - This appends each argument value to a list. It is useful for " "allowing an option to be specified multiple times. If the default value is a " @@ -1052,7 +1059,10 @@ msgid "" "Namespace(verbose=3)" msgstr "" -msgid "Note, the *default* will be ``None`` unless explicitly set to *0*." +msgid "" +"Unless explicitly set, the *default* will be ``None``. If the default value " +"is a non-zero number, the count starts from that number rather than from " +"zero." msgstr "" msgid "" @@ -1063,9 +1073,9 @@ msgid "" msgstr "" msgid "" -"``'version'`` - This expects a ``version=`` keyword argument in the :meth:" -"`~ArgumentParser.add_argument` call, and prints version information and " -"exits when invoked::" +"``'version'`` - This expects a ``version=`` keyword argument in " +"the :meth:`~ArgumentParser.add_argument` call, and prints version " +"information and exits when invoked::" msgstr "" msgid "" @@ -1119,7 +1129,7 @@ msgstr "" msgid "For more details, see :class:`Action`." msgstr "" -msgid "nargs" +msgid "``nargs``" msgstr "" msgid "" @@ -1226,7 +1236,7 @@ msgid "" "``'store_const'``) set ``nargs=0``." msgstr "" -msgid "const" +msgid "``const``" msgstr "" msgid "" @@ -1239,10 +1249,11 @@ msgstr "" msgid "" "When :meth:`~ArgumentParser.add_argument` is called with " "``action='store_const'`` or ``action='append_const'``. These actions add " -"the ``const`` value to one of the attributes of the object returned by :meth:" -"`~ArgumentParser.parse_args`. See the action_ description for examples. If " -"``const`` is not provided to :meth:`~ArgumentParser.add_argument`, it will " -"receive a default value of ``None``." +"the ``const`` value to one of the attributes of the object returned " +"by :meth:`~ArgumentParser.parse_args`. See the action_ description for " +"examples. If ``const`` is not provided " +"to :meth:`~ArgumentParser.add_argument`, it will receive a default value of " +"``None``." msgstr "" msgid "" @@ -1259,16 +1270,14 @@ msgid "" "``action='store_const'``." msgstr "" -msgid "default" +msgid "``default``" msgstr "" msgid "" "All optional arguments and some positional arguments may be omitted at the " -"command line. The ``default`` keyword argument of :meth:`~ArgumentParser." -"add_argument`, whose value defaults to ``None``, specifies what value should " -"be used if the command-line argument is not present. For optional arguments, " -"the ``default`` value is used when the option string was not present at the " -"command line::" +"command line. The ``default`` keyword argument " +"of :meth:`~ArgumentParser.add_argument` specifies what value should be used " +"if the command-line argument is not present. For example::" msgstr "" msgid "" @@ -1280,6 +1289,13 @@ msgid "" "Namespace(foo=42)" msgstr "" +msgid "" +"If ``default`` is omitted, :meth:`~ArgumentParser.add_argument` uses a value " +"previously set for the dest_ with :meth:`~ArgumentParser.set_defaults`, or " +"otherwise a non-``None`` argument_default_. If neither is set, the action's " +"own default is used." +msgstr "" + msgid "" "If the target namespace already has an attribute set, the action *default* " "will not overwrite it::" @@ -1295,8 +1311,9 @@ msgstr "" msgid "" "If the ``default`` value is a string, the parser parses the value as if it " "were a command-line argument. In particular, the parser applies any type_ " -"conversion argument, if provided, before setting the attribute on the :class:" -"`Namespace` return value. Otherwise, the parser uses the value as is::" +"conversion argument, if provided, before setting the attribute on " +"the :class:`Namespace` return value. Otherwise, the parser uses the value " +"as is::" msgstr "" msgid "" @@ -1347,7 +1364,7 @@ msgid "" "Namespace(foo='1')" msgstr "" -msgid "type" +msgid "``type``" msgstr "" msgid "" @@ -1366,9 +1383,9 @@ msgstr "" msgid "" "The argument to ``type`` can be a callable that accepts a single string or " "the name of a registered type (see :meth:`~ArgumentParser.register`) If the " -"function raises :exc:`ArgumentTypeError`, :exc:`TypeError`, or :exc:" -"`ValueError`, the exception is caught and a nicely formatted error message " -"is displayed. Other exception types are not handled." +"function raises :exc:`ArgumentTypeError`, :exc:`TypeError`, " +"or :exc:`ValueError`, the exception is caught and a nicely formatted error " +"message is displayed. Other exception types are not handled." msgstr "" msgid "Common built-in types and functions can be used as type converters:" @@ -1426,9 +1443,9 @@ msgstr "" msgid "" "For example, JSON or YAML conversions have complex error cases that require " -"better reporting than can be given by the ``type`` keyword. A :exc:`~json." -"JSONDecodeError` would not be well formatted and a :exc:`FileNotFoundError` " -"exception would not be handled at all." +"better reporting than can be given by the ``type`` keyword. " +"A :exc:`~json.JSONDecodeError` would not be well formatted and " +"a :exc:`FileNotFoundError` exception would not be handled at all." msgstr "" msgid "" @@ -1445,7 +1462,7 @@ msgid "" "using the choices_ keyword instead." msgstr "" -msgid "choices" +msgid "``choices``" msgstr "" msgid "" @@ -1496,7 +1513,7 @@ msgid "" "are many choices), just specify an explicit metavar_." msgstr "" -msgid "required" +msgid "``required``" msgstr "" msgid "" @@ -1517,9 +1534,9 @@ msgid "" msgstr "" msgid "" -"As the example shows, if an option is marked as ``required``, :meth:" -"`~ArgumentParser.parse_args` will report an error if that option is not " -"present at the command line." +"As the example shows, if an option is marked as " +"``required``, :meth:`~ArgumentParser.parse_args` will report an error if " +"that option is not present at the command line." msgstr "" msgid "" @@ -1527,7 +1544,7 @@ msgid "" "*options* to be *optional*, and thus they should be avoided when possible." msgstr "" -msgid "help" +msgid "``help``" msgstr "" msgid "" @@ -1541,8 +1558,8 @@ msgid "" "The ``help`` strings can include various format specifiers to avoid " "repetition of things like the program name or the argument default_. The " "available specifiers include the program name, ``%(prog)s`` and most keyword " -"arguments to :meth:`~ArgumentParser.add_argument`, e.g. ``%(default)s``, " -"``%(type)s``, etc.::" +"arguments to :meth:`~ArgumentParser.add_argument`, e.g. ``%(default)s``, ``%" +"(type)s``, etc.::" msgstr "" msgid "" @@ -1579,7 +1596,7 @@ msgid "" " -h, --help show this help message and exit" msgstr "" -msgid "metavar" +msgid "``metavar``" msgstr "" msgid "" @@ -1655,16 +1672,16 @@ msgid "" " --foo bar baz" msgstr "" -msgid "dest" +msgid "``dest``" msgstr "" msgid "" "Most :class:`ArgumentParser` actions add some value as an attribute of the " "object returned by :meth:`~ArgumentParser.parse_args`. The name of this " -"attribute is determined by the ``dest`` keyword argument of :meth:" -"`~ArgumentParser.add_argument`. For positional argument actions, ``dest`` " -"is normally supplied as the first argument to :meth:`~ArgumentParser." -"add_argument`::" +"attribute is determined by the ``dest`` keyword argument " +"of :meth:`~ArgumentParser.add_argument`. For positional argument actions, " +"``dest`` is normally supplied as the first argument " +"to :meth:`~ArgumentParser.add_argument`::" msgstr "" msgid "" @@ -1719,7 +1736,7 @@ msgstr "" msgid "Single-dash long option now takes precedence over short options." msgstr "" -msgid "deprecated" +msgid "``deprecated``" msgstr "" msgid "" @@ -1749,16 +1766,16 @@ msgstr "" msgid "" ":class:`!Action` classes implement the Action API, a callable which returns " "a callable which processes arguments from the command-line. Any object which " -"follows this API may be passed as the ``action`` parameter to :meth:" -"`~ArgumentParser.add_argument`." +"follows this API may be passed as the ``action`` parameter " +"to :meth:`~ArgumentParser.add_argument`." msgstr "" msgid "" ":class:`!Action` objects are used by an :class:`ArgumentParser` to represent " "the information needed to parse a single argument from one or more strings " "from the command line. The :class:`!Action` class must accept the two " -"positional arguments plus any keyword arguments passed to :meth:" -"`ArgumentParser.add_argument` except for the ``action`` itself." +"positional arguments plus any keyword arguments passed " +"to :meth:`ArgumentParser.add_argument` except for the ``action`` itself." msgstr "" msgid "" @@ -1779,15 +1796,15 @@ msgid "" msgstr "" msgid "" -"*namespace* - The :class:`Namespace` object that will be returned by :meth:" -"`~ArgumentParser.parse_args`. Most actions add an attribute to this object " -"using :func:`setattr`." +"*namespace* - The :class:`Namespace` object that will be returned " +"by :meth:`~ArgumentParser.parse_args`. Most actions add an attribute to " +"this object using :func:`setattr`." msgstr "" msgid "" "*values* - The associated command-line arguments, with any type conversions " -"applied. Type conversions are specified with the type_ keyword argument to :" -"meth:`~ArgumentParser.add_argument`." +"applied. Type conversions are specified with the type_ keyword argument " +"to :meth:`~ArgumentParser.add_argument`." msgstr "" msgid "" @@ -1851,13 +1868,13 @@ msgid "" msgstr "" msgid "" -"args_ - List of strings to parse. The default is taken from :data:`sys." -"argv`." +"args_ - List of strings to parse. The default is taken " +"from :data:`sys.argv`." msgstr "" msgid "" -"namespace_ - An object to take the attributes. The default is a new empty :" -"class:`Namespace` object." +"namespace_ - An object to take the attributes. The default is a new " +"empty :class:`Namespace` object." msgstr "" msgid "Option value syntax" @@ -2116,13 +2133,14 @@ msgid "" "example, the ``svn`` program can invoke subcommands like ``svn checkout``, " "``svn update``, and ``svn commit``. Splitting up functionality this way can " "be a particularly good idea when a program performs several different " -"functions which require different kinds of command-line arguments. :class:" -"`ArgumentParser` supports the creation of such subcommands with the :meth:`!" -"add_subparsers` method. The :meth:`!add_subparsers` method is normally " -"called with no arguments and returns a special action object. This object " -"has a single method, :meth:`~_SubParsersAction.add_parser`, which takes a " -"command name and any :class:`!ArgumentParser` constructor arguments, and " -"returns an :class:`!ArgumentParser` object that can be modified as usual." +"functions which require different kinds of command-line " +"arguments. :class:`ArgumentParser` supports the creation of such subcommands " +"with the :meth:`!add_subparsers` method. The :meth:`!add_subparsers` method " +"is normally called with no arguments and returns a special action object. " +"This object has a single method, :meth:`~_SubParsersAction.add_parser`, " +"which takes a command name and any :class:`!ArgumentParser` constructor " +"arguments, and returns an :class:`!ArgumentParser` object that can be " +"modified as usual." msgstr "" msgid "Description of parameters:" @@ -2280,9 +2298,9 @@ msgstr "" msgid "" "One particularly effective way of handling subcommands is to combine the use " -"of the :meth:`~ArgumentParser.add_subparsers` method with calls to :meth:" -"`~ArgumentParser.set_defaults` so that each subparser knows which Python " -"function it should execute. For example::" +"of the :meth:`~ArgumentParser.add_subparsers` method with calls " +"to :meth:`~ArgumentParser.set_defaults` so that each subparser knows which " +"Python function it should execute. For example::" msgstr "" msgid "" @@ -2400,10 +2418,10 @@ msgstr "" msgid "" "The :class:`FileType` factory creates objects that can be passed to the type " -"argument of :meth:`ArgumentParser.add_argument`. Arguments that have :class:" -"`FileType` objects as their type will open command-line arguments as files " -"with the requested modes, buffer sizes, encodings and error handling (see " -"the :func:`open` function for more details)::" +"argument of :meth:`ArgumentParser.add_argument`. Arguments that " +"have :class:`FileType` objects as their type will open command-line " +"arguments as files with the requested modes, buffer sizes, encodings and " +"error handling (see the :func:`open` function for more details)::" msgstr "" msgid "" @@ -2466,12 +2484,12 @@ msgstr "" msgid "" "The :meth:`add_argument_group` method returns an argument group object which " -"has an :meth:`~ArgumentParser.add_argument` method just like a regular :" -"class:`ArgumentParser`. When an argument is added to the group, the parser " -"treats it just like a normal argument, but displays the argument in a " -"separate group for help messages. The :meth:`!add_argument_group` method " -"accepts *title* and *description* arguments which can be used to customize " -"this display::" +"has an :meth:`~ArgumentParser.add_argument` method just like a " +"regular :class:`ArgumentParser`. When an argument is added to the group, " +"the parser treats it just like a normal argument, but displays the argument " +"in a separate group for help messages. The :meth:`!add_argument_group` " +"method accepts *title* and *description* arguments which can be used to " +"customize this display::" msgstr "" msgid "" @@ -2497,9 +2515,9 @@ msgstr "" msgid "" "The optional, keyword-only parameters argument_default_ and " "conflict_handler_ allow for finer-grained control of the behavior of the " -"argument group. These parameters have the same meaning as in the :class:" -"`ArgumentParser` constructor, but apply specifically to the argument group " -"rather than the entire parser." +"argument group. These parameters have the same meaning as in " +"the :class:`ArgumentParser` constructor, but apply specifically to the " +"argument group rather than the entire parser." msgstr "" msgid "" @@ -2562,9 +2580,10 @@ msgstr "" msgid "" "Note that currently mutually exclusive argument groups do not support the " -"*title* and *description* arguments of :meth:`~ArgumentParser." -"add_argument_group`. However, a mutually exclusive group can be added to an " -"argument group that has a title and description. For example::" +"*title* and *description* arguments " +"of :meth:`~ArgumentParser.add_argument_group`. However, a mutually exclusive " +"group can be added to an argument group that has a title and description. " +"For example::" msgstr "" msgid "" @@ -2597,9 +2616,9 @@ msgid "Parser defaults" msgstr "" msgid "" -"Most of the time, the attributes of the object returned by :meth:" -"`parse_args` will be fully determined by inspecting the command-line " -"arguments and the argument actions. :meth:`set_defaults` allows some " +"Most of the time, the attributes of the object returned " +"by :meth:`parse_args` will be fully determined by inspecting the command-" +"line arguments and the argument actions. :meth:`set_defaults` allows some " "additional attributes that are determined without any inspection of the " "command line to be added::" msgstr "" @@ -2613,10 +2632,10 @@ msgid "" msgstr "" msgid "" -"Note that defaults can be set at both the parser level using :meth:" -"`set_defaults` and at the argument level using :meth:`add_argument`. If both " -"are called for the same argument, the last default set for an argument is " -"used::" +"Note that defaults can be set at both the parser level " +"using :meth:`set_defaults` and at the argument level " +"using :meth:`add_argument`. If both are called for the same argument, the " +"last default set for an argument is used::" msgstr "" msgid "" @@ -2634,8 +2653,9 @@ msgid "" msgstr "" msgid "" -"Get the default value for a namespace attribute, as set by either :meth:" -"`~ArgumentParser.add_argument` or by :meth:`~ArgumentParser.set_defaults`::" +"Get the default value for a namespace attribute, as set by " +"either :meth:`~ArgumentParser.add_argument` or " +"by :meth:`~ArgumentParser.set_defaults`::" msgstr "" msgid "" @@ -2672,8 +2692,8 @@ msgid "" msgstr "" msgid "" -"Return a string containing a brief description of how the :class:" -"`ArgumentParser` should be invoked on the command line." +"Return a string containing a brief description of how " +"the :class:`ArgumentParser` should be invoked on the command line." msgstr "" msgid "" @@ -2707,10 +2727,10 @@ msgid "" msgstr "" msgid "" -":ref:`Prefix matching ` rules apply to :meth:" -"`~ArgumentParser.parse_known_args`. The parser may consume an option even if " -"it's just a prefix of one of its known options, instead of leaving it in the " -"remaining arguments list." +":ref:`Prefix matching ` rules apply " +"to :meth:`~ArgumentParser.parse_known_args`. The parser may consume an " +"option even if it's just a prefix of one of its known options, instead of " +"leaving it in the remaining arguments list." msgstr "" msgid "Customizing file parsing" @@ -2763,8 +2783,8 @@ msgid "" msgstr "" msgid "" -"This method prints a usage message, including the *message*, to :data:`sys." -"stderr` and terminates the program with a status code of 2." +"This method prints a usage message, including the *message*, " +"to :data:`sys.stderr` and terminates the program with a status code of 2." msgstr "" msgid "Intermixed parsing" @@ -2785,10 +2805,11 @@ msgid "" msgstr "" msgid "" -"The following example shows the difference between :meth:`~ArgumentParser." -"parse_known_args` and :meth:`~ArgumentParser.parse_intermixed_args`: the " -"former returns ``['2', '3']`` as unparsed arguments, while the latter " -"collects all the positionals into ``rest``. ::" +"The following example shows the difference " +"between :meth:`~ArgumentParser.parse_known_args` " +"and :meth:`~ArgumentParser.parse_intermixed_args`: the former returns " +"``['2', '3']`` as unparsed arguments, while the latter collects all the " +"positionals into ``rest``. ::" msgstr "" msgid "" diff --git a/library/array.po b/library/array.po index 375d0bc..548f48f 100644 --- a/library/array.po +++ b/library/array.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -220,8 +220,9 @@ msgstr "" msgid "" "The :ref:`ctypes ` and :ref:`struct ` modules, as well as third-party modules like `numpy `__, use similar -- but slightly different -- type codes." +"numpy.org/doc/stable/reference/" +"arrays.interface.html#object.__array_interface__>`__, use similar -- but " +"slightly different -- type codes." msgstr "" msgid "" @@ -244,9 +245,9 @@ msgstr "" msgid "" "A new array whose items are restricted by *typecode*, and initialized from " -"the optional *initializer* value, which must be a :class:`bytes` or :class:" -"`bytearray` object, a Unicode string, or iterable over elements of the " -"appropriate type." +"the optional *initializer* value, which must be a :class:`bytes` " +"or :class:`bytearray` object, a Unicode string, or iterable over elements of " +"the appropriate type." msgstr "" msgid "" @@ -258,12 +259,13 @@ msgid "" msgstr "" msgid "" -"Array objects support the ordinary :ref:`mutable ` :term:" -"`sequence` operations of indexing, slicing, concatenation, and " -"multiplication. When using slice assignment, the assigned value must be an " -"array object with the same type code; in all other cases, :exc:`TypeError` " -"is raised. Array objects also implement the buffer interface, and may be " -"used wherever :term:`bytes-like objects ` are supported." +"Array objects support the ordinary :ref:`mutable ` :term:`sequence` operations of indexing, slicing, concatenation, " +"and multiplication. When using slice assignment, the assigned value must be " +"an array object with the same type code; in all other " +"cases, :exc:`TypeError` is raised. Array objects also implement the buffer " +"interface, and may be used wherever :term:`bytes-like objects ` are supported." msgstr "" msgid "Arrays are :ref:`generic ` over the type of their contents." @@ -304,11 +306,11 @@ msgstr "" msgid "" "\"Byteswap\" all items of the array. This is only supported for values " -"which are 1, 2, 4, 8 or 16 bytes in size; for other types of values, :exc:" -"`RuntimeError` is raised. It is useful when reading data from a file " -"written on a machine with a different byte order. Note, that for complex " -"types the order of components (the real part, followed by imaginary part) is " -"preserved." +"which are 1, 2, 4, 8 or 16 bytes in size; for other types of " +"values, :exc:`RuntimeError` is raised. It is useful when reading data from " +"a file written on a machine with a different byte order. Note, that for " +"complex types the order of components (the real part, followed by imaginary " +"part) is preserved." msgstr "" msgid "Return the number of occurrences of *value* in the array." @@ -316,15 +318,16 @@ msgstr "" msgid "" "Append items from *iterable* to the end of the array. If *iterable* is " -"another array, it must have *exactly* the same type code; if not, :exc:" -"`TypeError` will be raised. If *iterable* is not an array, it must be " -"iterable and its elements must be the right type to be appended to the array." +"another array, it must have *exactly* the same type code; if " +"not, :exc:`TypeError` will be raised. If *iterable* is not an array, it " +"must be iterable and its elements must be the right type to be appended to " +"the array." msgstr "" msgid "" "Appends items from the :term:`bytes-like object`, interpreting its content " -"as an array of machine values (as if it had been read from a file using the :" -"meth:`fromfile` method)." +"as an array of machine values (as if it had been read from a file using " +"the :meth:`fromfile` method)." msgstr "" msgid ":meth:`!fromstring` is renamed to :meth:`frombytes` for clarity." @@ -332,14 +335,14 @@ msgstr "" msgid "" "Read *n* items (as machine values) from the :term:`file object` *f* and " -"append them to the end of the array. If less than *n* items are available, :" -"exc:`EOFError` is raised, but the items that were available are still " -"inserted into the array." +"append them to the end of the array. If less than *n* items are " +"available, :exc:`EOFError` is raised, but the items that were available are " +"still inserted into the array." msgstr "" msgid "" -"Append items from the list. This is equivalent to ``for x in list: a." -"append(x)`` except that if there is a type error, the array is unchanged." +"Append items from the list. This is equivalent to ``for x in list: " +"a.append(x)`` except that if there is a type error, the array is unchanged." msgstr "" msgid "" @@ -352,8 +355,8 @@ msgstr "" msgid "" "Return the smallest *i* such that *i* is the index of the first occurrence " "of *value* in the array. The optional arguments *start* and *stop* can be " -"specified to search for *value* within a subsection of the array. Raise :" -"exc:`ValueError` if *value* is not found." +"specified to search for *value* within a subsection of the array. " +"Raise :exc:`ValueError` if *value* is not found." msgstr "" msgid "Added optional *start* and *stop* parameters." @@ -396,8 +399,9 @@ msgstr "" msgid "" "Convert the array to a Unicode string. The array must have a type ``'u'`` " -"or ``'w'``; otherwise a :exc:`ValueError` is raised. Use ``array.tobytes()." -"decode(enc)`` to obtain a Unicode string from an array of some other type." +"or ``'w'``; otherwise a :exc:`ValueError` is raised. Use " +"``array.tobytes().decode(enc)`` to obtain a Unicode string from an array of " +"some other type." msgstr "" msgid "" diff --git a/library/ast.po b/library/ast.po index 692792d..dda99e7 100644 --- a/library/ast.po +++ b/library/ast.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,12 +37,12 @@ msgid "" msgstr "" msgid "" -"An abstract syntax tree can be generated by passing :data:`ast." -"PyCF_ONLY_AST` as a flag to the :func:`compile` built-in function, or using " -"the :func:`parse` helper provided in this module. The result will be a tree " -"of objects whose classes all inherit from :class:`ast.AST`. An abstract " -"syntax tree can be compiled into a Python code object using the built-in :" -"func:`compile` function." +"An abstract syntax tree can be generated by " +"passing :data:`ast.PyCF_ONLY_AST` as a flag to the :func:`compile` built-in " +"function, or using the :func:`parse` helper provided in this module. The " +"result will be a tree of objects whose classes all inherit " +"from :class:`ast.AST`. An abstract syntax tree can be compiled into a " +"Python code object using the built-in :func:`compile` function." msgstr "" msgid "Abstract grammar" @@ -232,9 +233,9 @@ msgstr "" msgid "" "This is the abstract base of all AST node classes. The actual node classes " -"are derived from the :file:`Parser/Python.asdl` file, which is reproduced :" -"ref:`above `. They are defined in the :mod:`!_ast` C " -"module and re-exported in :mod:`!ast`." +"are derived from the :file:`Parser/Python.asdl` file, which is " +"reproduced :ref:`above `. They are defined in the :mod:`!" +"_ast` C module and re-exported in :mod:`!ast`." msgstr "" msgid "" @@ -278,14 +279,14 @@ msgid "" msgstr "" msgid "" -"Instances of :class:`ast.expr` and :class:`ast.stmt` subclasses have :attr:" -"`lineno`, :attr:`col_offset`, :attr:`end_lineno`, and :attr:`end_col_offset` " -"attributes. The :attr:`lineno` and :attr:`end_lineno` are the first and " -"last line numbers of source text span (1-indexed so the first line is line " -"1) and the :attr:`col_offset` and :attr:`end_col_offset` are the " -"corresponding UTF-8 byte offsets of the first and last tokens that generated " -"the node. The UTF-8 offset is recorded because the parser uses UTF-8 " -"internally." +"Instances of :class:`ast.expr` and :class:`ast.stmt` subclasses " +"have :attr:`lineno`, :attr:`col_offset`, :attr:`end_lineno`, " +"and :attr:`end_col_offset` attributes. The :attr:`lineno` " +"and :attr:`end_lineno` are the first and last line numbers of source text " +"span (1-indexed so the first line is line 1) and the :attr:`col_offset` " +"and :attr:`end_col_offset` are the corresponding UTF-8 byte offsets of the " +"first and last tokens that generated the node. The UTF-8 offset is recorded " +"because the parser uses UTF-8 internally." msgstr "" msgid "" @@ -323,8 +324,8 @@ msgid "" "If a field that is optional in the grammar is omitted from the constructor, " "it defaults to ``None``. If a list field is omitted, it defaults to the " "empty list. If a field of type :class:`!ast.expr_context` is omitted, it " -"defaults to :class:`Load() `. If any other field is omitted, a :" -"exc:`DeprecationWarning` is raised and the AST node will not have this " +"defaults to :class:`Load() `. If any other field is omitted, " +"a :exc:`DeprecationWarning` is raised and the AST node will not have this " "field. In Python 3.15, this condition will raise an error." msgstr "" @@ -339,9 +340,9 @@ msgstr "" msgid "" "AST node constructors were changed to provide sensible defaults for omitted " "fields: optional fields now default to ``None``, list fields default to an " -"empty list, and fields of type :class:`!ast.expr_context` default to :class:" -"`Load() `. Previously, omitted attributes would not exist on " -"constructed nodes (accessing them raised :exc:`AttributeError`)." +"empty list, and fields of type :class:`!ast.expr_context` default " +"to :class:`Load() `. Previously, omitted attributes would not " +"exist on constructed nodes (accessing them raised :exc:`AttributeError`)." msgstr "" msgid "" @@ -350,11 +351,11 @@ msgid "" msgstr "" msgid "" -"Previous versions of Python provided the AST classes :class:`!ast.Num`, :" -"class:`!ast.Str`, :class:`!ast.Bytes`, :class:`!ast.NameConstant` and :class:" -"`!ast.Ellipsis`, which were deprecated in Python 3.8. These classes were " -"removed in Python 3.14, and their functionality has been replaced with :" -"class:`ast.Constant`." +"Previous versions of Python provided the AST classes :class:`!" +"ast.Num`, :class:`!ast.Str`, :class:`!ast.Bytes`, :class:`!ast.NameConstant` " +"and :class:`!ast.Ellipsis`, which were deprecated in Python 3.8. These " +"classes were removed in Python 3.14, and their functionality has been " +"replaced with :class:`ast.Constant`." msgstr "" msgid "" @@ -367,8 +368,8 @@ msgid "" "Previous versions of Python allowed the creation of AST nodes that were " "missing required fields. Similarly, AST node constructors allowed arbitrary " "keyword arguments that were set as attributes of the AST node, even if they " -"did not match any of the fields of the AST node. These cases now raise a :" -"exc:`TypeError`." +"did not match any of the fields of the AST node. These cases now raise " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -381,8 +382,9 @@ msgstr "" msgid "" "The descriptions of the specific node classes displayed here were initially " -"adapted from the fantastic `Green Tree Snakes `__ project and all its contributors." +"adapted from the fantastic `Green Tree Snakes `__ project and all its " +"contributors." msgstr "" msgid "Root nodes" @@ -489,9 +491,9 @@ msgstr "" msgid "" "A constant value. The ``value`` attribute of the ``Constant`` literal " "contains the Python object it represents. The values represented can be " -"instances of :class:`str`, :class:`bytes`, :class:`int`, :class:`float`, :" -"class:`complex`, and :class:`bool`, and the constants :data:`None` and :data:" -"`Ellipsis`." +"instances " +"of :class:`str`, :class:`bytes`, :class:`int`, :class:`float`, :class:`complex`, " +"and :class:`bool`, and the constants :data:`None` and :data:`Ellipsis`." msgstr "" msgid "" @@ -542,8 +544,8 @@ msgid "" msgstr "" msgid "" -"An f-string, comprising a series of :class:`FormattedValue` and :class:" -"`Constant` nodes." +"An f-string, comprising a series of :class:`FormattedValue` " +"and :class:`Constant` nodes." msgstr "" msgid "" @@ -569,9 +571,9 @@ msgid "" msgstr "" msgid "" -"Node representing a template string literal, comprising a series of :class:" -"`Interpolation` and :class:`Constant` nodes. These nodes may be any order, " -"and do not need to be interleaved." +"Node representing a template string literal, comprising a series " +"of :class:`Interpolation` and :class:`Constant` nodes. These nodes may be " +"any order, and do not need to be interleaved." msgstr "" msgid "" @@ -733,9 +735,9 @@ msgid "" msgstr "" msgid "" -"A ``*var`` variable reference. ``value`` holds the variable, typically a :" -"class:`Name` node. This type must be used when building a :class:`Call` node " -"with ``*args``." +"A ``*var`` variable reference. ``value`` holds the variable, typically " +"a :class:`Name` node. This type must be used when building a :class:`Call` " +"node with ``*args``." msgstr "" msgid "" @@ -760,9 +762,9 @@ msgstr "" msgid "" "When an expression, such as a function call, appears as a statement by " "itself with its return value not used or stored, it is wrapped in this " -"container. ``value`` holds one of the other nodes in this section, a :class:" -"`Constant`, a :class:`Name`, a :class:`Lambda`, a :class:`Yield` or :class:" -"`YieldFrom` node." +"container. ``value`` holds one of the other nodes in this section, " +"a :class:`Constant`, a :class:`Name`, a :class:`Lambda`, a :class:`Yield` " +"or :class:`YieldFrom` node." msgstr "" msgid "" @@ -856,8 +858,8 @@ msgid "Comparison operator tokens." msgstr "" msgid "" -"A function call. ``func`` is the function, which will often be a :class:" -"`Name` or :class:`Attribute` object. Of the arguments:" +"A function call. ``func`` is the function, which will often be " +"a :class:`Name` or :class:`Attribute` object. Of the arguments:" msgstr "" msgid "``args`` holds a list of the arguments passed by position." @@ -911,10 +913,10 @@ msgid "" msgstr "" msgid "" -"Attribute access, e.g. ``d.keys``. ``value`` is a node, typically a :class:" -"`Name`. ``attr`` is a bare string giving the name of the attribute, and " -"``ctx`` is :class:`Load`, :class:`Store` or :class:`Del` according to how " -"the attribute is acted on." +"Attribute access, e.g. ``d.keys``. ``value`` is a node, typically " +"a :class:`Name`. ``attr`` is a bare string giving the name of the attribute, " +"and ``ctx`` is :class:`Load`, :class:`Store` or :class:`Del` according to " +"how the attribute is acted on." msgstr "" msgid "" @@ -927,9 +929,9 @@ msgstr "" msgid "" "A named expression. This AST node is produced by the assignment expressions " -"operator (also known as the walrus operator). As opposed to the :class:" -"`Assign` node in which the first argument can be multiple nodes, in this " -"case both ``target`` and ``value`` must be single nodes." +"operator (also known as the walrus operator). As opposed to " +"the :class:`Assign` node in which the first argument can be multiple nodes, " +"in this case both ``target`` and ``value`` must be single nodes." msgstr "" msgid "" @@ -945,9 +947,10 @@ msgstr "" msgid "" "A subscript, such as ``l[1]``. ``value`` is the subscripted object (usually " -"sequence or mapping). ``slice`` is an index, slice or key. It can be a :" -"class:`Tuple` and contain a :class:`Slice`. ``ctx`` is :class:`Load`, :class:" -"`Store` or :class:`Del` according to the action performed with the subscript." +"sequence or mapping). ``slice`` is an index, slice or key. It can be " +"a :class:`Tuple` and contain a :class:`Slice`. ``ctx`` " +"is :class:`Load`, :class:`Store` or :class:`Del` according to the action " +"performed with the subscript." msgstr "" msgid "" @@ -1156,16 +1159,16 @@ msgstr "" msgid "" "An assignment with a type annotation. ``target`` is a single node and can be " "a :class:`Name`, an :class:`Attribute` or a :class:`Subscript`. " -"``annotation`` is the annotation, such as a :class:`Constant` or :class:" -"`Name` node. ``value`` is a single optional node." +"``annotation`` is the annotation, such as a :class:`Constant` " +"or :class:`Name` node. ``value`` is a single optional node." msgstr "" msgid "" "``simple`` is always either 0 (indicating a \"complex\" target) or 1 " -"(indicating a \"simple\" target). A \"simple\" target consists solely of a :" -"class:`Name` node that does not appear between parentheses; all other " -"targets are considered complex. Only simple targets appear in the :attr:" -"`~object.__annotations__` dictionary of modules and classes." +"(indicating a \"simple\" target). A \"simple\" target consists solely of " +"a :class:`Name` node that does not appear between parentheses; all other " +"targets are considered complex. Only simple targets appear in " +"the :attr:`~object.__annotations__` dictionary of modules and classes." msgstr "" msgid "" @@ -1263,8 +1266,8 @@ msgid "" msgstr "" msgid "" -"Represents a ``del`` statement. ``targets`` is a list of nodes, such as :" -"class:`Name`, :class:`Attribute` or :class:`Subscript` nodes." +"Represents a ``del`` statement. ``targets`` is a list of nodes, such " +"as :class:`Name`, :class:`Attribute` or :class:`Subscript` nodes." msgstr "" msgid "" @@ -1290,9 +1293,9 @@ msgstr "" msgid "" "A :ref:`type alias ` created through the :keyword:`type` " -"statement. ``name`` is the name of the alias, ``type_params`` is a list of :" -"ref:`type parameters `, and ``value`` is the value of the " -"type alias." +"statement. ``name`` is the name of the alias, ``type_params`` is a list " +"of :ref:`type parameters `, and ``value`` is the value of " +"the type alias." msgstr "" msgid "" @@ -1375,8 +1378,8 @@ msgid "" msgstr "" msgid "" -"An ``if`` statement. ``test`` holds a single node, such as a :class:" -"`Compare` node. ``body`` and ``orelse`` each hold a list of nodes." +"An ``if`` statement. ``test`` holds a single node, such as " +"a :class:`Compare` node. ``body`` and ``orelse`` each hold a list of nodes." msgstr "" msgid "" @@ -1414,9 +1417,9 @@ msgstr "" msgid "" "A ``for`` loop. ``target`` holds the variable(s) the loop assigns to, as a " -"single :class:`Name`, :class:`Tuple`, :class:`List`, :class:`Attribute` or :" -"class:`Subscript` node. ``iter`` holds the item to be looped over, again as " -"a single node. ``body`` and ``orelse`` contain lists of nodes to execute. " +"single :class:`Name`, :class:`Tuple`, :class:`List`, :class:`Attribute` " +"or :class:`Subscript` node. ``iter`` holds the item to be looped over, again " +"as a single node. ``body`` and ``orelse`` contain lists of nodes to execute. " "Those in ``orelse`` are executed if the loop finishes normally, rather than " "via a ``break`` statement." msgstr "" @@ -1605,9 +1608,9 @@ msgstr "" msgid "" "A single context manager in a ``with`` block. ``context_expr`` is the " -"context manager, often a :class:`Call` node. ``optional_vars`` is a :class:" -"`Name`, :class:`Tuple` or :class:`List` for the ``as foo`` part, or ``None`` " -"if that isn't used." +"context manager, often a :class:`Call` node. ``optional_vars`` is " +"a :class:`Name`, :class:`Tuple` or :class:`List` for the ``as foo`` part, or " +"``None`` if that isn't used." msgstr "" msgid "" @@ -1645,8 +1648,8 @@ msgstr "" msgid "" "A single case pattern in a ``match`` statement. ``pattern`` contains the " -"match pattern that the subject will be matched against. Note that the :class:" -"`AST` nodes produced for patterns differ from those produced for " +"match pattern that the subject will be matched against. Note that " +"the :class:`AST` nodes produced for patterns differ from those produced for " "expressions, even when they share the same syntax." msgstr "" @@ -2047,10 +2050,10 @@ msgstr "" msgid "" "A :class:`typing.TypeVar`. ``name`` is the name of the type variable. " -"``bound`` is the bound or constraints, if any. If ``bound`` is a :class:" -"`Tuple`, it represents constraints; otherwise it represents the bound. " -"``default_value`` is the default value; if the :class:`!TypeVar` has no " -"default, this attribute will be set to ``None``." +"``bound`` is the bound or constraints, if any. If ``bound`` is " +"a :class:`Tuple`, it represents constraints; otherwise it represents the " +"bound. ``default_value`` is the default value; if the :class:`!TypeVar` has " +"no default, this attribute will be set to ``None``." msgstr "" msgid "" @@ -2309,8 +2312,8 @@ msgstr "" msgid "" "``keywords`` is a list of :class:`.keyword` nodes, principally for " -"'metaclass'. Other keywords will be passed to the metaclass, as per :pep:" -"`3115`." +"'metaclass'. Other keywords will be passed to the metaclass, as " +"per :pep:`3115`." msgstr "" msgid "" @@ -2350,8 +2353,8 @@ msgid "Async and await" msgstr "" msgid "" -"An ``async def`` function definition. Has the same fields as :class:" -"`FunctionDef`." +"An ``async def`` function definition. Has the same fields " +"as :class:`FunctionDef`." msgstr "" msgid "" @@ -2383,11 +2386,11 @@ msgid "" msgstr "" msgid "" -"When a string is parsed by :func:`ast.parse`, operator nodes (subclasses of :" -"class:`ast.operator`, :class:`ast.unaryop`, :class:`ast.cmpop`, :class:`ast." -"boolop` and :class:`ast.expr_context`) on the returned tree will be " -"singletons. Changes to one will be reflected in all other occurrences of the " -"same value (for example, :class:`ast.Add`)." +"When a string is parsed by :func:`ast.parse`, operator nodes (subclasses " +"of :class:`ast.operator`, :class:`ast.unaryop`, :class:`ast.cmpop`, :class:`ast.boolop` " +"and :class:`ast.expr_context`) on the returned tree will be singletons. " +"Changes to one will be reflected in all other occurrences of the same value " +"(for example, :class:`ast.Add`)." msgstr "" msgid ":mod:`!ast` helpers" @@ -2408,8 +2411,8 @@ msgstr "" msgid "" "If ``type_comments=True`` is given, the parser is modified to check and " "return type comments as specified by :pep:`484` and :pep:`526`. This is " -"equivalent to adding :data:`ast.PyCF_TYPE_COMMENTS` to the flags passed to :" -"func:`compile`. This will report syntax errors for misplaced type " +"equivalent to adding :data:`ast.PyCF_TYPE_COMMENTS` to the flags passed " +"to :func:`compile`. This will report syntax errors for misplaced type " "comments. Without this flag, type comments will be ignored, and the " "``type_comment`` field on selected AST nodes will always be ``None``. In " "addition, the locations of ``# type: ignore`` comments will be returned as " @@ -2419,8 +2422,8 @@ msgstr "" msgid "" "In addition, if ``mode`` is ``'func_type'``, the input syntax is modified to " -"correspond to :pep:`484` \"signature type comments\", e.g. ``(str, int) -> " -"List[str]``." +"correspond to :pep:`484` \"signature type comments\", for example ``(str, " +"int) -> List[str]``." msgstr "" msgid "" @@ -2471,8 +2474,8 @@ msgstr "" msgid "" "Unparse an :class:`ast.AST` object and generate a string with code that " -"would produce an equivalent :class:`ast.AST` object if parsed back with :" -"func:`ast.parse`." +"would produce an equivalent :class:`ast.AST` object if parsed back " +"with :func:`ast.parse`." msgstr "" msgid "" @@ -2482,8 +2485,8 @@ msgid "" msgstr "" msgid "" -"Trying to unparse a highly complex expression would result with :exc:" -"`RecursionError`." +"Trying to unparse a highly complex expression would result " +"with :exc:`RecursionError`." msgstr "" msgid "" @@ -2516,8 +2519,9 @@ msgid "" msgstr "" msgid "" -"It can raise :exc:`ValueError`, :exc:`TypeError`, :exc:`SyntaxError`, :exc:" -"`MemoryError` and :exc:`RecursionError` depending on the malformed input." +"It can " +"raise :exc:`ValueError`, :exc:`TypeError`, :exc:`SyntaxError`, :exc:`MemoryError` " +"and :exc:`RecursionError` depending on the malformed input." msgstr "" msgid "Now allows bytes and set literals." @@ -2530,10 +2534,10 @@ msgid "For string inputs, leading spaces and tabs are now stripped." msgstr "" msgid "" -"Return the docstring of the given *node* (which must be a :class:" -"`FunctionDef`, :class:`AsyncFunctionDef`, :class:`ClassDef`, or :class:" -"`Module` node), or ``None`` if it has no docstring. If *clean* is true, " -"clean up the docstring's indentation with :func:`inspect.cleandoc`." +"Return the docstring of the given *node* (which must be " +"a :class:`FunctionDef`, :class:`AsyncFunctionDef`, :class:`ClassDef`, " +"or :class:`Module` node), or ``None`` if it has no docstring. If *clean* is " +"true, clean up the docstring's indentation with :func:`inspect.cleandoc`." msgstr "" msgid ":class:`AsyncFunctionDef` is now supported." @@ -2541,9 +2545,9 @@ msgstr "" msgid "" "Get source code segment of the *source* that generated *node*. If some " -"location information (:attr:`~ast.AST.lineno`, :attr:`~ast.AST.end_lineno`, :" -"attr:`~ast.AST.col_offset`, or :attr:`~ast.AST.end_col_offset`) is missing, " -"return ``None``." +"location information " +"(:attr:`~ast.AST.lineno`, :attr:`~ast.AST.end_lineno`, :attr:`~ast.AST.col_offset`, " +"or :attr:`~ast.AST.end_col_offset`) is missing, return ``None``." msgstr "" msgid "" @@ -2552,12 +2556,12 @@ msgid "" msgstr "" msgid "" -"When you compile a node tree with :func:`compile`, the compiler expects :" -"attr:`~ast.AST.lineno` and :attr:`~ast.AST.col_offset` attributes for every " -"node that supports them. This is rather tedious to fill in for generated " -"nodes, so this helper adds these attributes recursively where not already " -"set, by setting them to the values of the parent node. It works recursively " -"starting at *node*." +"When you compile a node tree with :func:`compile`, the compiler " +"expects :attr:`~ast.AST.lineno` and :attr:`~ast.AST.col_offset` attributes " +"for every node that supports them. This is rather tedious to fill in for " +"generated nodes, so this helper adds these attributes recursively where not " +"already set, by setting them to the values of the parent node. It works " +"recursively starting at *node*." msgstr "" msgid "" @@ -2567,9 +2571,10 @@ msgid "" msgstr "" msgid "" -"Copy source location (:attr:`~ast.AST.lineno`, :attr:`~ast.AST.col_offset`, :" -"attr:`~ast.AST.end_lineno`, and :attr:`~ast.AST.end_col_offset`) from " -"*old_node* to *new_node* if possible, and return *new_node*." +"Copy source location " +"(:attr:`~ast.AST.lineno`, :attr:`~ast.AST.col_offset`, :attr:`~ast.AST.end_lineno`, " +"and :attr:`~ast.AST.end_col_offset`) from *old_node* to *new_node* if " +"possible, and return *new_node*." msgstr "" msgid "" @@ -2600,9 +2605,9 @@ msgid "" msgstr "" msgid "" -"Visit a node. The default implementation calls the method called :samp:" -"`self.visit_{classname}` where *classname* is the name of the node class, " -"or :meth:`generic_visit` if that method doesn't exist." +"Visit a node. The default implementation calls the method " +"called :samp:`self.visit_{classname}` where *classname* is the name of the " +"node class, or :meth:`generic_visit` if that method doesn't exist." msgstr "" msgid "This visitor calls :meth:`visit` on all children of the node." @@ -2618,15 +2623,15 @@ msgstr "" msgid "" "Don't use the :class:`NodeVisitor` if you want to apply changes to nodes " -"during traversal. For this a special visitor exists (:class:" -"`NodeTransformer`) that allows modifications." +"during traversal. For this a special visitor exists " +"(:class:`NodeTransformer`) that allows modifications." msgstr "" msgid "" -"Methods :meth:`!visit_Num`, :meth:`!visit_Str`, :meth:`!visit_Bytes`, :meth:" -"`!visit_NameConstant` and :meth:`!visit_Ellipsis` will not be called in " -"Python 3.14+. Add the :meth:`visit_Constant` method instead to handle all " -"constant nodes." +"Methods :meth:`!visit_Num`, :meth:`!visit_Str`, :meth:`!" +"visit_Bytes`, :meth:`!visit_NameConstant` and :meth:`!visit_Ellipsis` will " +"not be called in Python 3.14+. Add the :meth:`visit_Constant` method " +"instead to handle all constant nodes." msgstr "" msgid "" @@ -2660,8 +2665,8 @@ msgstr "" msgid "" "Keep in mind that if the node you're operating on has child nodes you must " -"either transform the child nodes yourself or call the :meth:`~ast." -"NodeVisitor.generic_visit` method for the node first." +"either transform the child nodes yourself or call " +"the :meth:`~ast.NodeVisitor.generic_visit` method for the node first." msgstr "" msgid "" @@ -2672,9 +2677,9 @@ msgstr "" msgid "" "If :class:`NodeTransformer` introduces new nodes (that weren't part of " -"original tree) without giving them location information (such as :attr:`~ast." -"AST.lineno`), :func:`fix_missing_locations` should be called with the new " -"sub-tree to recalculate the location information::" +"original tree) without giving them location information (such " +"as :attr:`~ast.AST.lineno`), :func:`fix_missing_locations` should be called " +"with the new sub-tree to recalculate the location information::" msgstr "" msgid "" @@ -2778,8 +2783,8 @@ msgid "" msgstr "" msgid "" -"The returned AST is optimized according to the *optimize* argument in :func:" -"`compile` or :func:`ast.parse`." +"The returned AST is optimized according to the *optimize* argument " +"in :func:`compile` or :func:`ast.parse`." msgstr "" msgid "" @@ -2791,8 +2796,9 @@ msgid "Command-line usage" msgstr "" msgid "" -"The output is now syntax highlighted by default. This can be :ref:" -"`controlled using environment variables `." +"The output is now syntax highlighted by default. This can " +"be :ref:`controlled using environment variables `." msgstr "" msgid "" @@ -2810,8 +2816,8 @@ msgid "Show the help message and exit." msgstr "" msgid "" -"Specify what kind of code must be compiled, like the *mode* argument in :" -"func:`parse`." +"Specify what kind of code must be compiled, like the *mode* argument " +"in :func:`parse`." msgstr "" msgid "Don't parse type comments." diff --git a/library/asynchat.po b/library/asynchat.po index 8ef63a3..8173230 100644 --- a/library/asynchat.po +++ b/library/asynchat.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,18 +23,23 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid ":mod:`!asynchat` --- Asynchronous socket command/response handler" -msgstr "" +msgstr ":mod:`!asynchat` --- Asynchronous ਸਾਕੇਟ ਕਮਾਂਡ/ਜਵਾਬ ਹੈਂਡਲਰ" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.12 ` after being deprecated in " -"Python 3.6. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.12 ` after being " +"deprecated in Python 3.6. The removal was decided in :pep:`594`." msgstr "" +"ਇਹ ਮੋਡੀਊਲ ਹੁਣ Python ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਹਿੱਸਾ ਨਹੀਂ ਹੈ। ਇਸ ਨੂੰ Python 3.6 ਵਿੱਚ ਅਪ੍ਰਚਲਿਤ " +"ਕਰਨ ਤੋਂ ਬਾਅਦ :ref:`Python 3.12 ਵਿੱਚ ਹਟਾ ਦਿੱਤਾ ਗਿਆ `। ਇਸ ਨੂੰ " +"ਹਟਾਉਣ ਦਾ ਫ਼ੈਸਲਾ :pep:`594` ਵਿੱਚ ਕੀਤਾ ਗਿਆ ਸੀ।" msgid "Applications should use the :mod:`asyncio` module instead." -msgstr "" +msgstr "ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਇਸ ਦੀ ਬਜਾਏ :mod:`asyncio` ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ।" msgid "" "The last version of Python that provided the :mod:`!asynchat` module was " "`Python 3.11 `_." msgstr "" +":mod:`!asynchat` ਮੋਡੀਊਲ ਪ੍ਰਦਾਨ ਕਰਨ ਵਾਲਾ Python ਦਾ ਆਖਰੀ ਸੰਸਕਰਣ `Python 3.11 " +"`_ ਸੀ।" diff --git a/library/asyncio-api-index.po b/library/asyncio-api-index.po index 85fe053..c5be171 100644 --- a/library/asyncio-api-index.po +++ b/library/asyncio-api-index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/asyncio-dev.po b/library/asyncio-dev.po index 930ce8c..d43b79c 100644 --- a/library/asyncio-dev.po +++ b/library/asyncio-dev.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -61,9 +61,9 @@ msgid "In addition to enabling the debug mode, consider also:" msgstr "" msgid "" -"setting the log level of the :ref:`asyncio logger ` to :py:" -"const:`logging.DEBUG`, for example the following snippet of code can be run " -"at startup of the application::" +"setting the log level of the :ref:`asyncio logger ` " +"to :py:const:`logging.DEBUG`, for example the following snippet of code can " +"be run at startup of the application::" msgstr "" msgid "logging.basicConfig(level=logging.DEBUG)" @@ -79,9 +79,9 @@ msgid "When the debug mode is enabled:" msgstr "" msgid "" -"Many non-threadsafe asyncio APIs (such as :meth:`loop.call_soon` and :meth:" -"`loop.call_at` methods) raise an exception if they are called from a wrong " -"thread." +"Many non-threadsafe asyncio APIs (such as :meth:`loop.call_soon` " +"and :meth:`loop.call_at` methods) raise an exception if they are called from " +"a wrong thread." msgstr "" msgid "" @@ -90,9 +90,9 @@ msgid "" msgstr "" msgid "" -"Callbacks taking longer than 100 milliseconds are logged. The :attr:`loop." -"slow_callback_duration` attribute can be used to set the minimum execution " -"duration in seconds that is considered \"slow\"." +"Callbacks taking longer than 100 milliseconds are logged. " +"The :attr:`loop.slow_callback_duration` attribute can be used to set the " +"minimum execution duration in seconds that is considered \"slow\"." msgstr "" msgid "Concurrency and Multithreading" @@ -107,8 +107,8 @@ msgid "" msgstr "" msgid "" -"To schedule a :term:`callback` from another OS thread, the :meth:`loop." -"call_soon_threadsafe` method should be used. Example::" +"To schedule a :term:`callback` from another OS thread, " +"the :meth:`loop.call_soon_threadsafe` method should be used. Example::" msgstr "" msgid "loop.call_soon_threadsafe(callback, *args)" @@ -125,9 +125,9 @@ msgid "loop.call_soon_threadsafe(fut.cancel)" msgstr "" msgid "" -"To schedule a coroutine object from a different OS thread, the :func:" -"`run_coroutine_threadsafe` function should be used. It returns a :class:" -"`concurrent.futures.Future` to access the result::" +"To schedule a coroutine object from a different OS thread, " +"the :func:`run_coroutine_threadsafe` function should be used. It returns " +"a :class:`concurrent.futures.Future` to access the result::" msgstr "" msgid "" @@ -145,21 +145,22 @@ msgid "To handle signals the event loop must be run in the main thread." msgstr "" msgid "" -"The :meth:`loop.run_in_executor` method can be used with a :class:" -"`concurrent.futures.ThreadPoolExecutor` or :class:`~concurrent.futures." -"InterpreterPoolExecutor` to execute blocking code in a different OS thread " -"without blocking the OS thread that the event loop runs in." +"The :meth:`loop.run_in_executor` method can be used with " +"a :class:`concurrent.futures.ThreadPoolExecutor` " +"or :class:`~concurrent.futures.InterpreterPoolExecutor` to execute blocking " +"code in a different OS thread without blocking the OS thread that the event " +"loop runs in." msgstr "" msgid "" "There is currently no way to schedule coroutines or callbacks directly from " -"a different process (such as one started with :mod:`multiprocessing`). The :" -"ref:`asyncio-event-loop-methods` section lists APIs that can read from pipes " -"and watch file descriptors without blocking the event loop. In addition, " -"asyncio's :ref:`Subprocess ` APIs provide a way to start " -"a process and communicate with it from the event loop. Lastly, the " -"aforementioned :meth:`loop.run_in_executor` method can also be used with a :" -"class:`concurrent.futures.ProcessPoolExecutor` to execute code in a " +"a different process (such as one started with :mod:`multiprocessing`). " +"The :ref:`asyncio-event-loop-methods` section lists APIs that can read from " +"pipes and watch file descriptors without blocking the event loop. In " +"addition, asyncio's :ref:`Subprocess ` APIs provide a " +"way to start a process and communicate with it from the event loop. Lastly, " +"the aforementioned :meth:`loop.run_in_executor` method can also be used with " +"a :class:`concurrent.futures.ProcessPoolExecutor` to execute code in a " "different process." msgstr "" @@ -197,8 +198,8 @@ msgstr "" msgid "" "Network logging can block the event loop. It is recommended to use a " -"separate thread for handling logs or use non-blocking IO. For example, see :" -"ref:`blocking-handlers`." +"separate thread for handling logs or use non-blocking IO. For example, " +"see :ref:`blocking-handlers`." msgstr "" msgid "Detect never-awaited coroutines" @@ -206,8 +207,8 @@ msgstr "" msgid "" "When a coroutine function is called, but not awaited (e.g. ``coro()`` " -"instead of ``await coro()``) or the coroutine is not scheduled with :meth:" -"`asyncio.create_task`, asyncio will emit a :exc:`RuntimeWarning`::" +"instead of ``await coro()``) or the coroutine is not scheduled " +"with :meth:`asyncio.create_task`, asyncio will emit a :exc:`RuntimeWarning`::" msgstr "" msgid "" @@ -247,8 +248,8 @@ msgid "" msgstr "" msgid "" -"The usual fix is to either await the coroutine or call the :meth:`asyncio." -"create_task` function::" +"The usual fix is to either await the coroutine or call " +"the :meth:`asyncio.create_task` function::" msgstr "" msgid "" @@ -339,8 +340,9 @@ msgid "" msgstr "" msgid "" -"To avoid this, explicitly close the generator by calling its :meth:`~agen." -"aclose` method, or use the :func:`contextlib.aclosing` context manager::" +"To avoid this, explicitly close the generator by calling " +"its :meth:`~agen.aclose` method, or use the :func:`contextlib.aclosing` " +"context manager::" msgstr "" msgid "" @@ -523,9 +525,10 @@ msgid "Avoid concurrent iteration and closure of the same generator" msgstr "" msgid "" -"Async generators may be reentered while another :meth:`~agen.__anext__` / :" -"meth:`~agen.athrow` / :meth:`~agen.aclose` call is in progress. This may " -"lead to an inconsistent state of the async generator and can cause errors." +"Async generators may be reentered while " +"another :meth:`~agen.__anext__` / :meth:`~agen.athrow` / :meth:`~agen.aclose` " +"call is in progress. This may lead to an inconsistent state of the async " +"generator and can cause errors." msgstr "" msgid "Let's consider the following example::" diff --git a/library/asyncio-eventloop.po b/library/asyncio-eventloop.po index 510fcf5..a52bd94 100644 --- a/library/asyncio-eventloop.po +++ b/library/asyncio-eventloop.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -95,8 +95,8 @@ msgstr "" msgid "" "The :mod:`!asyncio` policy system is deprecated and will be removed in " "Python 3.16; from there on, this function will return the current running " -"event loop if present else it will return the loop set by :func:" -"`set_event_loop`." +"event loop if present else it will return the loop set " +"by :func:`set_event_loop`." msgstr "" msgid "Set *loop* as the current event loop for the current OS thread." @@ -123,9 +123,9 @@ msgid "" msgstr "" msgid "" -"The `Callback Handles`_ section documents the :class:`Handle` and :class:" -"`TimerHandle` instances which are returned from scheduling methods such as :" -"meth:`loop.call_soon` and :meth:`loop.call_later`;" +"The `Callback Handles`_ section documents the :class:`Handle` " +"and :class:`TimerHandle` instances which are returned from scheduling " +"methods such as :meth:`loop.call_soon` and :meth:`loop.call_later`;" msgstr "" msgid "" @@ -134,8 +134,8 @@ msgid "" msgstr "" msgid "" -"The `Event Loop Implementations`_ section documents the :class:" -"`SelectorEventLoop` and :class:`ProactorEventLoop` classes;" +"The `Event Loop Implementations`_ section documents " +"the :class:`SelectorEventLoop` and :class:`ProactorEventLoop` classes;" msgstr "" msgid "" @@ -233,8 +233,8 @@ msgstr "" msgid "" "Schedule the closure of the default executor and wait for it to join all of " "the threads in the :class:`~concurrent.futures.ThreadPoolExecutor`. Once " -"this method has been called, using the default executor with :meth:`loop." -"run_in_executor` will raise a :exc:`RuntimeError`." +"this method has been called, using the default executor " +"with :meth:`loop.run_in_executor` will raise a :exc:`RuntimeError`." msgstr "" msgid "" @@ -276,9 +276,9 @@ msgid "" msgstr "" msgid "" -"The optional keyword-only *context* argument specifies a custom :class:" -"`contextvars.Context` for the *callback* to run in. Callbacks use the " -"current context when no *context* is provided." +"The optional keyword-only *context* argument specifies a " +"custom :class:`contextvars.Context` for the *callback* to run in. Callbacks " +"use the current context when no *context* is provided." msgstr "" msgid "Unlike :meth:`call_soon_threadsafe`, this method is not thread-safe." @@ -357,15 +357,15 @@ msgid "" msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the *callback* to run in. The current " -"context is used when no *context* is provided." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the *callback* to run in. The " +"current context is used when no *context* is provided." msgstr "" msgid "" "For performance, callbacks scheduled with :meth:`loop.call_later` may run up " -"to one clock-resolution early (see ``time.get_clock_info('monotonic')." -"resolution``)." +"to one clock-resolution early (see " +"``time.get_clock_info('monotonic').resolution``)." msgstr "" msgid "" @@ -383,8 +383,8 @@ msgstr "" msgid "" "For performance, callbacks scheduled with :meth:`loop.call_at` may run up to " -"one clock-resolution early (see ``time.get_clock_info('monotonic')." -"resolution``)." +"one clock-resolution early (see " +"``time.get_clock_info('monotonic').resolution``)." msgstr "" msgid "" @@ -419,14 +419,14 @@ msgid "" msgstr "" msgid "" -"Schedule the execution of :ref:`coroutine ` *coro*. Return a :" -"class:`Task` object." +"Schedule the execution of :ref:`coroutine ` *coro*. Return " +"a :class:`Task` object." msgstr "" msgid "" "Third-party event loops can use their own subclass of :class:`Task` for " -"interoperability. In this case, the result type is a subclass of :class:" -"`Task`." +"interoperability. In this case, the result type is a subclass " +"of :class:`Task`." msgstr "" msgid "" @@ -441,16 +441,16 @@ msgid "" msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the *coro* to run in. The current context " -"copy is created when no *context* is provided." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the *coro* to run in. The current " +"context copy is created when no *context* is provided." msgstr "" msgid "" "An optional keyword-only *eager_start* argument allows specifying if the " "task should execute eagerly during the call to create_task, or be scheduled " -"later. If *eager_start* is not passed the mode set by :meth:`loop." -"set_task_factory` will be used." +"later. If *eager_start* is not passed the mode set " +"by :meth:`loop.set_task_factory` will be used." msgstr "" msgid "Added the *name* parameter." @@ -511,9 +511,9 @@ msgid "" msgstr "" msgid "" -"The socket family can be either :py:const:`~socket.AF_INET` or :py:const:" -"`~socket.AF_INET6` depending on *host* (or the *family* argument, if " -"provided)." +"The socket family can be either :py:const:`~socket.AF_INET` " +"or :py:const:`~socket.AF_INET6` depending on *host* (or the *family* " +"argument, if provided)." msgstr "" msgid "The socket type will be :py:const:`~socket.SOCK_STREAM`." @@ -538,13 +538,13 @@ msgid "" msgstr "" msgid "" -"*protocol_factory* is called without arguments and is expected to return a :" -"ref:`protocol ` instance." +"*protocol_factory* is called without arguments and is expected to return " +"a :ref:`protocol ` instance." msgstr "" msgid "" -"The protocol instance is coupled with the transport by calling its :meth:" -"`~BaseProtocol.connection_made` method." +"The protocol instance is coupled with the transport by calling " +"its :meth:`~BaseProtocol.connection_made` method." msgstr "" msgid "A ``(transport, protocol)`` tuple is returned on success." @@ -560,9 +560,9 @@ msgstr "" msgid "" "*ssl*: if given and not false, a SSL/TLS transport is created (by default a " "plain TCP transport is created). If *ssl* is a :class:`ssl.SSLContext` " -"object, this context is used to create the transport; if *ssl* is :const:" -"`True`, a default context returned from :func:`ssl.create_default_context` " -"is used." +"object, this context is used to create the transport; if *ssl* " +"is :const:`True`, a default context returned " +"from :func:`ssl.create_default_context` is used." msgstr "" msgid ":ref:`SSL/TLS security considerations `" @@ -605,16 +605,16 @@ msgid "" msgstr "" msgid "" -"*sock*, if given, should be an existing, already connected :class:`socket." -"socket` object to be used by the transport. If *sock* is given, none of " -"*host*, *port*, *family*, *proto*, *flags*, *happy_eyeballs_delay*, " -"*interleave* and *local_addr* should be specified." +"*sock*, if given, should be an existing, already " +"connected :class:`socket.socket` object to be used by the transport. If " +"*sock* is given, none of *host*, *port*, *family*, *proto*, *flags*, " +"*happy_eyeballs_delay*, *interleave* and *local_addr* should be specified." msgstr "" msgid "" "The *sock* argument transfers ownership of the socket to the transport " -"created. To close the socket, call the transport's :meth:`~asyncio." -"BaseTransport.close` method." +"created. To close the socket, call the " +"transport's :meth:`~asyncio.BaseTransport.close` method." msgstr "" msgid "" @@ -677,6 +677,11 @@ msgstr "" msgid "*all_errors* was added." msgstr "" +msgid "" +"Raises a ``ValueError`` if ``ssl.check_hostname`` is ``True`` and " +"``server_hostname`` is not supplied." +msgstr "" + msgid "" "The :func:`open_connection` function is a high-level alternative API. It " "returns a pair of (:class:`StreamReader`, :class:`StreamWriter`) that can be " @@ -687,9 +692,10 @@ msgid "Create a datagram connection." msgstr "" msgid "" -"The socket family can be either :py:const:`~socket.AF_INET`, :py:const:" -"`~socket.AF_INET6`, or :py:const:`~socket.AF_UNIX`, depending on *host* (or " -"the *family* argument, if provided)." +"The socket family can be " +"either :py:const:`~socket.AF_INET`, :py:const:`~socket.AF_INET6`, " +"or :py:const:`~socket.AF_UNIX`, depending on *host* (or the *family* " +"argument, if provided)." msgstr "" msgid "The socket type will be :py:const:`~socket.SOCK_DGRAM`." @@ -705,13 +711,14 @@ msgstr "" msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " -"the socket locally. The *local_host* and *local_port* are looked up using :" -"meth:`getaddrinfo`." +"the socket locally. The *local_host* and *local_port* are looked up " +"using :meth:`getaddrinfo`." msgstr "" msgid "" -"On Windows, when using the proactor event loop with ``local_addr=None``, an :" -"exc:`OSError` with :attr:`!errno.WSAEINVAL` will be raised when running it." +"On Windows, when using the proactor event loop with ``local_addr=None``, " +"an :exc:`OSError` with :attr:`!errno.WSAEINVAL` will be raised when running " +"it." msgstr "" msgid "" @@ -743,13 +750,14 @@ msgstr "" msgid "" "*sock* can optionally be specified in order to use a preexisting, already " "connected, :class:`socket.socket` object to be used by the transport. If " -"specified, *local_addr* and *remote_addr* should be omitted (must be :const:" -"`None`)." +"specified, *local_addr* and *remote_addr* should be omitted (must " +"be :const:`None`)." msgstr "" msgid "" -"See :ref:`UDP echo client protocol ` and :" -"ref:`UDP echo server protocol ` examples." +"See :ref:`UDP echo client protocol ` " +"and :ref:`UDP echo server protocol ` " +"examples." msgstr "" msgid "" @@ -761,9 +769,10 @@ msgid "Added support for Windows." msgstr "" msgid "" -"The *reuse_address* parameter is no longer supported, as using :ref:`socket." -"SO_REUSEADDR ` poses a significant security concern " -"for UDP. Explicitly passing ``reuse_address=True`` will raise an exception." +"The *reuse_address* parameter is no longer supported, as " +"using :ref:`socket.SO_REUSEADDR ` poses a significant " +"security concern for UDP. Explicitly passing ``reuse_address=True`` will " +"raise an exception." msgstr "" msgid "" @@ -788,14 +797,15 @@ msgid "Create a Unix connection." msgstr "" msgid "" -"The socket family will be :py:const:`~socket.AF_UNIX`; socket type will be :" -"py:const:`~socket.SOCK_STREAM`." +"The socket family will be :py:const:`~socket.AF_UNIX`; socket type will " +"be :py:const:`~socket.SOCK_STREAM`." msgstr "" msgid "" "*path* is the name of a Unix domain socket and is required, unless a *sock* " -"parameter is specified. Abstract Unix sockets, :class:`str`, :class:" -"`bytes`, and :class:`~pathlib.Path` paths are supported." +"parameter is specified. Abstract Unix " +"sockets, :class:`str`, :class:`bytes`, and :class:`~pathlib.Path` paths are " +"supported." msgstr "" msgid "" @@ -854,9 +864,10 @@ msgid "" msgstr "" msgid "" -"*family* can be set to either :const:`socket.AF_INET` or :const:`~socket." -"AF_INET6` to force the socket to use IPv4 or IPv6. If not set, the *family* " -"will be determined from host name (defaults to :const:`~socket.AF_UNSPEC`)." +"*family* can be set to either :const:`socket.AF_INET` " +"or :const:`~socket.AF_INET6` to force the socket to use IPv4 or IPv6. If not " +"set, the *family* will be determined from host name (defaults " +"to :const:`~socket.AF_UNSPEC`)." msgstr "" msgid "*flags* is a bitmask for :meth:`getaddrinfo`." @@ -873,8 +884,8 @@ msgid "" msgstr "" msgid "" -"*backlog* is the maximum number of queued connections passed to :meth:" -"`~socket.socket.listen` (defaults to 100)." +"*backlog* is the maximum number of queued connections passed " +"to :meth:`~socket.socket.listen` (defaults to 100)." msgstr "" msgid "" @@ -931,8 +942,8 @@ msgid "" msgstr "" msgid "" -"Similar to :meth:`loop.create_server` but works with the :py:const:`~socket." -"AF_UNIX` socket family." +"Similar to :meth:`loop.create_server` but works with " +"the :py:const:`~socket.AF_UNIX` socket family." msgstr "" msgid "" @@ -1047,8 +1058,8 @@ msgid "" msgstr "" msgid "" -"*transport* and *protocol* instances that methods like :meth:`~loop." -"create_server` and :meth:`~loop.create_connection` return." +"*transport* and *protocol* instances that methods " +"like :meth:`~loop.create_server` and :meth:`~loop.create_connection` return." msgstr "" msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`." @@ -1107,16 +1118,16 @@ msgid "Working with socket objects directly" msgstr "" msgid "" -"In general, protocol implementations that use transport-based APIs such as :" -"meth:`loop.create_connection` and :meth:`loop.create_server` are faster than " -"implementations that work with sockets directly. However, there are some use " -"cases when performance is not critical, and working with :class:`~socket." -"socket` objects directly is more convenient." +"In general, protocol implementations that use transport-based APIs such " +"as :meth:`loop.create_connection` and :meth:`loop.create_server` are faster " +"than implementations that work with sockets directly. However, there are " +"some use cases when performance is not critical, and working " +"with :class:`~socket.socket` objects directly is more convenient." msgstr "" msgid "" -"Receive up to *nbytes* from *sock*. Asynchronous version of :meth:`socket." -"recv() `." +"Receive up to *nbytes* from *sock*. Asynchronous version " +"of :meth:`socket.recv() `." msgstr "" msgid "Return the received data as a bytes object." @@ -1132,16 +1143,16 @@ msgid "" msgstr "" msgid "" -"Receive data from *sock* into the *buf* buffer. Modeled after the blocking :" -"meth:`socket.recv_into() ` method." +"Receive data from *sock* into the *buf* buffer. Modeled after the " +"blocking :meth:`socket.recv_into() ` method." msgstr "" msgid "Return the number of bytes written to the buffer." msgstr "" msgid "" -"Receive a datagram of up to *bufsize* from *sock*. Asynchronous version of :" -"meth:`socket.recvfrom() `." +"Receive a datagram of up to *bufsize* from *sock*. Asynchronous version " +"of :meth:`socket.recvfrom() `." msgstr "" msgid "Return a tuple of (received data, remote address)." @@ -1156,8 +1167,8 @@ msgid "Return a tuple of (number of bytes received, remote address)." msgstr "" msgid "" -"Send *data* to the *sock* socket. Asynchronous version of :meth:`socket." -"sendall() `." +"Send *data* to the *sock* socket. Asynchronous version " +"of :meth:`socket.sendall() `." msgstr "" msgid "" @@ -1175,8 +1186,8 @@ msgid "" msgstr "" msgid "" -"Send a datagram from *sock* to *address*. Asynchronous version of :meth:" -"`socket.sendto() `." +"Send a datagram from *sock* to *address*. Asynchronous version " +"of :meth:`socket.sendto() `." msgstr "" msgid "Return the number of bytes sent." @@ -1200,9 +1211,9 @@ msgstr "" msgid "" ":class:`ProactorEventLoop`, the default event loop on Windows, does not " "resolve *address*. The host must already be a numeric IP address; passing a " -"host name raises :exc:`OSError`. Resolve the address with :meth:`loop." -"getaddrinfo` first, or use :meth:`loop.create_connection`, which resolves " -"the address on every platform." +"host name raises :exc:`OSError`. Resolve the address " +"with :meth:`loop.getaddrinfo` first, or use :meth:`loop.create_connection`, " +"which resolves the address on every platform." msgstr "" msgid "" @@ -1239,8 +1250,8 @@ msgid "" msgstr "" msgid "" -"*sock* must be a non-blocking :const:`socket.SOCK_STREAM` :class:`~socket." -"socket`." +"*sock* must be a non-" +"blocking :const:`socket.SOCK_STREAM` :class:`~socket.socket`." msgstr "" msgid "*file* must be a regular file object open in binary mode." @@ -1277,9 +1288,9 @@ msgstr "" msgid "" "Both *getaddrinfo* and *getnameinfo* methods were always documented to " -"return a coroutine, but prior to Python 3.7 they were, in fact, returning :" -"class:`asyncio.Future` objects. Starting with Python 3.7 both methods are " -"coroutines." +"return a coroutine, but prior to Python 3.7 they were, in fact, " +"returning :class:`asyncio.Future` objects. Starting with Python 3.7 both " +"methods are coroutines." msgstr "" msgid "Working with pipes" @@ -1294,9 +1305,9 @@ msgid "" msgstr "" msgid "" -"Return pair ``(transport, protocol)``, where *transport* supports the :class:" -"`ReadTransport` interface and *protocol* is an object instantiated by the " -"*protocol_factory*." +"Return pair ``(transport, protocol)``, where *transport* supports " +"the :class:`ReadTransport` interface and *protocol* is an object " +"instantiated by the *protocol_factory*." msgstr "" msgid "" @@ -1308,9 +1319,9 @@ msgid "Register the write end of *pipe* in the event loop." msgstr "" msgid "" -"Return pair ``(transport, protocol)``, where *transport* supports :class:" -"`WriteTransport` interface and *protocol* is an object instantiated by the " -"*protocol_factory*." +"Return pair ``(transport, protocol)``, where *transport* " +"supports :class:`WriteTransport` interface and *protocol* is an object " +"instantiated by the *protocol_factory*." msgstr "" msgid "Supported pipe objects" @@ -1330,8 +1341,8 @@ msgid "" msgstr "" msgid "" -"a pipe, such as an end of an :func:`os.pipe` pair or a FIFO created with :" -"func:`os.mkfifo`;" +"a pipe, such as an end of an :func:`os.pipe` pair or a FIFO created " +"with :func:`os.mkfifo`;" msgstr "" msgid "a socket;" @@ -1345,10 +1356,10 @@ msgid "" "*pipe* must wrap a handle opened for overlapped I/O (that is, created with " "the ``FILE_FLAG_OVERLAPPED`` flag), since the handle has to be associated " "with an I/O completion port. Handles that were not opened for overlapped I/" -"O are rejected. In particular, the standard streams (:data:`sys.stdin`, :" -"data:`sys.stdout` and :data:`sys.stderr`), console handles, and the pipes " -"created by :func:`os.pipe` are **not** opened for overlapped I/O and " -"therefore cannot be used with these methods." +"O are rejected. In particular, the standard streams " +"(:data:`sys.stdin`, :data:`sys.stdout` and :data:`sys.stderr`), console " +"handles, and the pipes created by :func:`os.pipe` are **not** opened for " +"overlapped I/O and therefore cannot be used with these methods." msgstr "" msgid "" @@ -1483,14 +1494,14 @@ msgstr "" msgid "" "Set *executor* as the default executor used by :meth:`run_in_executor`. " -"*executor* must be an instance of :class:`~concurrent.futures." -"ThreadPoolExecutor`, which includes :class:`~concurrent.futures." -"InterpreterPoolExecutor`." +"*executor* must be an instance " +"of :class:`~concurrent.futures.ThreadPoolExecutor`, which " +"includes :class:`~concurrent.futures.InterpreterPoolExecutor`." msgstr "" msgid "" -"*executor* must be an instance of :class:`~concurrent.futures." -"ThreadPoolExecutor`." +"*executor* must be an instance " +"of :class:`~concurrent.futures.ThreadPoolExecutor`." msgstr "" msgid "Error handling API" @@ -1511,9 +1522,9 @@ msgid "" msgstr "" msgid "" -"If the handler is called on behalf of a :class:`~asyncio.Task` or :class:" -"`~asyncio.Handle`, it is run in the :class:`contextvars.Context` of that " -"task or callback handle." +"If the handler is called on behalf of a :class:`~asyncio.Task` " +"or :class:`~asyncio.Handle`, it is run in the :class:`contextvars.Context` " +"of that task or callback handle." msgstr "" msgid "" @@ -1536,8 +1547,8 @@ msgid "" msgstr "" msgid "" -"*context* parameter has the same meaning as in :meth:" -"`call_exception_handler`." +"*context* parameter has the same meaning as " +"in :meth:`call_exception_handler`." msgstr "" msgid "Call the current event loop exception handler." @@ -1578,10 +1589,8 @@ msgstr "" msgid "'handle_traceback' (optional): Traceback of the handle;" msgstr "" -msgid "'asyncgen' (optional): Asynchronous generator that caused" -msgstr "" - -msgid "the exception." +msgid "" +"'asyncgen' (optional): Asynchronous generator that caused the exception." msgstr "" msgid "" @@ -1596,8 +1605,9 @@ msgid "Get the debug mode (:class:`bool`) of the event loop." msgstr "" msgid "" -"The default value is ``True`` if the environment variable :envvar:" -"`PYTHONASYNCIODEBUG` is set to a non-empty string, ``False`` otherwise." +"The default value is ``True`` if the environment " +"variable :envvar:`PYTHONASYNCIODEBUG` is set to a non-empty string, " +"``False`` otherwise." msgstr "" msgid "Set the debug mode of the event loop." @@ -1631,8 +1641,9 @@ msgstr "" msgid "" "On Windows, the default event loop :class:`ProactorEventLoop` supports " -"subprocesses, whereas :class:`SelectorEventLoop` does not. See :ref:" -"`Subprocess Support on Windows ` for details." +"subprocesses, whereas :class:`SelectorEventLoop` does not. " +"See :ref:`Subprocess Support on Windows ` for " +"details." msgstr "" msgid "" @@ -1664,8 +1675,8 @@ msgid "" msgstr "" msgid "" -"The *protocol_factory* must be a callable returning a subclass of the :class:" -"`asyncio.SubprocessProtocol` class." +"The *protocol_factory* must be a callable returning a subclass of " +"the :class:`asyncio.SubprocessProtocol` class." msgstr "" msgid "Other parameters:" @@ -1693,8 +1704,8 @@ msgid "" msgstr "" msgid "" -"the :const:`subprocess.DEVNULL` constant which indicates that the special :" -"data:`os.devnull` file will be used" +"the :const:`subprocess.DEVNULL` constant which indicates that the " +"special :data:`os.devnull` file will be used" msgstr "" msgid "*stdout* can be any of these:" @@ -1722,9 +1733,9 @@ msgstr "" msgid "" "If a file-like object passed as *stdin*, *stdout* or *stderr* represents a " -"pipe, then the other side of this pipe should be registered with :meth:" -"`~loop.connect_write_pipe` or :meth:`~loop.connect_read_pipe` for use with " -"the event loop." +"pipe, then the other side of this pipe should be registered " +"with :meth:`~loop.connect_write_pipe` or :meth:`~loop.connect_read_pipe` for " +"use with the event loop." msgstr "" msgid "" @@ -1744,8 +1755,8 @@ msgid "" msgstr "" msgid "" -"Create a subprocess from *cmd*, which can be a :class:`str` or a :class:" -"`bytes` string encoded to the :ref:`filesystem encoding `, using the platform's \"shell\" syntax." msgstr "" @@ -1755,8 +1766,8 @@ msgid "" msgstr "" msgid "" -"The *protocol_factory* must be a callable returning a subclass of the :class:" -"`SubprocessProtocol` class." +"The *protocol_factory* must be a callable returning a subclass of " +"the :class:`SubprocessProtocol` class." msgstr "" msgid "" @@ -1783,8 +1794,8 @@ msgid "Callback handles" msgstr "" msgid "" -"A callback wrapper object returned by :meth:`loop.call_soon`, :meth:`loop." -"call_soon_threadsafe`." +"A callback wrapper object returned " +"by :meth:`loop.call_soon`, :meth:`loop.call_soon_threadsafe`." msgstr "" msgid "" @@ -1800,8 +1811,8 @@ msgid "Return ``True`` if the callback was cancelled." msgstr "" msgid "" -"A callback wrapper object returned by :meth:`loop.call_later`, and :meth:" -"`loop.call_at`." +"A callback wrapper object returned by :meth:`loop.call_later`, " +"and :meth:`loop.call_at`." msgstr "" msgid "This class is a subclass of :class:`Handle`." @@ -1811,17 +1822,17 @@ msgid "Return a scheduled callback time as :class:`float` seconds." msgstr "" msgid "" -"The time is an absolute timestamp, using the same time reference as :meth:" -"`loop.time`." +"The time is an absolute timestamp, using the same time reference " +"as :meth:`loop.time`." msgstr "" msgid "Server objects" msgstr "" msgid "" -"Server objects are created by :meth:`loop.create_server`, :meth:`loop." -"create_unix_server`, :func:`start_server`, and :func:`start_unix_server` " -"functions." +"Server objects are created " +"by :meth:`loop.create_server`, :meth:`loop.create_unix_server`, :func:`start_server`, " +"and :func:`start_unix_server` functions." msgstr "" msgid "Do not instantiate the :class:`Server` class directly." @@ -1962,8 +1973,8 @@ msgid "Event loop implementations" msgstr "" msgid "" -"asyncio ships with two different event loop implementations: :class:" -"`SelectorEventLoop` and :class:`ProactorEventLoop`." +"asyncio ships with two different event loop " +"implementations: :class:`SelectorEventLoop` and :class:`ProactorEventLoop`." msgstr "" msgid "By default asyncio is configured to use :class:`EventLoop`." @@ -1987,8 +1998,8 @@ msgid "" "async def main():\n" " ...\n" "\n" -"loop_factory = lambda: asyncio.SelectorEventLoop(selectors." -"SelectSelector())\n" +"loop_factory = lambda: " +"asyncio.SelectorEventLoop(selectors.SelectSelector())\n" "asyncio.run(main(), loop_factory=loop_factory)" msgstr "" @@ -2003,13 +2014,13 @@ msgid "" msgstr "" msgid "" -"An alias to the most efficient available subclass of :class:" -"`AbstractEventLoop` for the given platform." +"An alias to the most efficient available subclass " +"of :class:`AbstractEventLoop` for the given platform." msgstr "" msgid "" -"It is an alias to :class:`SelectorEventLoop` on Unix and :class:" -"`ProactorEventLoop` on Windows." +"It is an alias to :class:`SelectorEventLoop` on Unix " +"and :class:`ProactorEventLoop` on Windows." msgstr "" msgid "Abstract base class for asyncio-compliant event loops." @@ -2020,14 +2031,27 @@ msgid "" "alternative implementation of ``AbstractEventLoop`` should have defined." msgstr "" +msgid "" +"A base class that partially implements :class:`AbstractEventLoop` to " +"simplify writing custom event loops." +msgstr "" + +msgid "" +"It provides default implementations of many :class:`AbstractEventLoop` " +"methods, so subclasses have fewer methods to implement themselves. In " +"return, a subclass is expected to implement a number of internal, protected " +"methods. See :ref:`writing_custom_event_loop` for more information." +msgstr "" + msgid "Examples" msgstr "" msgid "" "Note that all examples in this section **purposefully** show how to use the " -"low-level event loop APIs, such as :meth:`loop.run_forever` and :meth:`loop." -"call_soon`. Modern asyncio applications rarely need to be written this way; " -"consider using the high-level functions like :func:`asyncio.run`." +"low-level event loop APIs, such as :meth:`loop.run_forever` " +"and :meth:`loop.call_soon`. Modern asyncio applications rarely need to be " +"written this way; consider using the high-level functions " +"like :func:`asyncio.run`." msgstr "" msgid "Hello World with call_soon()" @@ -2105,8 +2129,8 @@ msgid "Watch a file descriptor for read events" msgstr "" msgid "" -"Wait until a file descriptor received some data using the :meth:`loop." -"add_reader` method and then close the event loop::" +"Wait until a file descriptor received some data using " +"the :meth:`loop.add_reader` method and then close the event loop::" msgstr "" msgid "" @@ -2161,8 +2185,9 @@ msgid "(This ``signal`` example only works on Unix.)" msgstr "" msgid "" -"Register handlers for signals :const:`~signal.SIGINT` and :const:`~signal." -"SIGTERM` using the :meth:`loop.add_signal_handler` method::" +"Register handlers for signals :const:`~signal.SIGINT` " +"and :const:`~signal.SIGTERM` using the :meth:`loop.add_signal_handler` " +"method::" msgstr "" msgid "" diff --git a/library/asyncio-exceptions.po b/library/asyncio-exceptions.po index e36cd03..02b04af 100644 --- a/library/asyncio-exceptions.po +++ b/library/asyncio-exceptions.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/asyncio-extending.po b/library/asyncio-extending.po index d42368a..215da52 100644 --- a/library/asyncio-extending.po +++ b/library/asyncio-extending.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,15 +28,17 @@ msgstr "" msgid "" "Third-parties should reuse existing asyncio code with caution, a new Python " -"version is free to break backward compatibility in *internal* part of API." +"version is free to break backward compatibility in the *internal* part of " +"the API." msgstr "" -msgid "Writing a Custom Event Loop" +msgid "Writing a custom event loop" msgstr "" msgid "" -":class:`asyncio.AbstractEventLoop` declares very many methods. Implementing " -"all them from scratch is a tedious job." +":class:`asyncio.AbstractEventLoop` declares very many methods. " +"See :ref:`asyncio-event-loop-methods` for the full list. Implementing them " +"all from scratch is a tedious job." msgstr "" msgid "" @@ -61,8 +63,9 @@ msgstr "" msgid "" ":class:`asyncio.Future` and :class:`asyncio.Task` should be never created " -"directly, please use corresponding :meth:`loop.create_future` and :meth:" -"`loop.create_task`, or :func:`asyncio.create_task` factories instead." +"directly, please use corresponding :meth:`loop.create_future` " +"and :meth:`loop.create_task`, or :func:`asyncio.create_task` factories " +"instead." msgstr "" msgid "" @@ -96,8 +99,8 @@ msgstr "" msgid "" "A third party task implementation should call the following functions to " -"keep a task visible by :func:`asyncio.all_tasks` and :func:`asyncio." -"current_task`:" +"keep a task visible by :func:`asyncio.all_tasks` " +"and :func:`asyncio.current_task`:" msgstr "" msgid "Register a new *task* as managed by *asyncio*." @@ -116,14 +119,14 @@ msgid "Switch the current task to the *task* argument." msgstr "" msgid "" -"Call the function just before executing a portion of embedded *coroutine* (:" -"meth:`coroutine.send` or :meth:`coroutine.throw`)." +"Call the function just before executing a portion of embedded *coroutine* " +"(:meth:`coroutine.send` or :meth:`coroutine.throw`)." msgstr "" msgid "Switch the current task back from *task* to ``None``." msgstr "" msgid "" -"Call the function just after :meth:`coroutine.send` or :meth:`coroutine." -"throw` execution." +"Call the function just after :meth:`coroutine.send` " +"or :meth:`coroutine.throw` execution." msgstr "" diff --git a/library/asyncio-future.po b/library/asyncio-future.po index a85b763..06f13e8 100644 --- a/library/asyncio-future.po +++ b/library/asyncio-future.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -55,14 +55,14 @@ msgid "" msgstr "" msgid "" -"a :class:`Task` object wrapping *obj*, if *obj* is a coroutine (:func:" -"`iscoroutine` is used for the test); in this case the coroutine will be " -"scheduled by ``ensure_future()``." +"a :class:`Task` object wrapping *obj*, if *obj* is a coroutine " +"(:func:`iscoroutine` is used for the test); in this case the coroutine will " +"be scheduled by ``ensure_future()``." msgstr "" msgid "" -"a :class:`Task` object that would await on *obj*, if *obj* is an awaitable (:" -"func:`inspect.isawaitable` is used for the test.)" +"a :class:`Task` object that would await on *obj*, if *obj* is an awaitable " +"(:func:`inspect.isawaitable` is used for the test.)" msgstr "" msgid "If *obj* is neither of the above a :exc:`TypeError` is raised." @@ -88,8 +88,8 @@ msgid "" msgstr "" msgid "" -"Wrap a :class:`concurrent.futures.Future` object in a :class:`asyncio." -"Future` object." +"Wrap a :class:`concurrent.futures.Future` object in " +"a :class:`asyncio.Future` object." msgstr "" msgid "" @@ -119,9 +119,10 @@ msgstr "" msgid "" "The rule of thumb is to never expose Future objects in user-facing APIs, and " -"the recommended way to create a Future object is to call :meth:`loop." -"create_future`. This way alternative event loop implementations can inject " -"their own optimized implementations of a Future object." +"the recommended way to create a Future object is to " +"call :meth:`loop.create_future`. This way alternative event loop " +"implementations can inject their own optimized implementations of a Future " +"object." msgstr "" msgid "Futures are :ref:`generic ` over the type of their results." @@ -144,18 +145,18 @@ msgid "" msgstr "" msgid "" -"If the Future is *done* and has an exception set by the :meth:" -"`set_exception` method, this method raises the exception." +"If the Future is *done* and has an exception set by " +"the :meth:`set_exception` method, this method raises the exception." msgstr "" msgid "" -"If the Future has been *cancelled*, this method raises a :exc:" -"`CancelledError` exception." +"If the Future has been *cancelled*, this method raises " +"a :exc:`CancelledError` exception." msgstr "" msgid "" -"If the Future's result isn't yet available, this method raises an :exc:" -"`InvalidStateError` exception." +"If the Future's result isn't yet available, this method raises " +"an :exc:`InvalidStateError` exception." msgstr "" msgid "Mark the Future as *done* and set its result." @@ -201,14 +202,14 @@ msgid "" msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the *callback* to run in. The current " -"context is used when no *context* is provided." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the *callback* to run in. The " +"current context is used when no *context* is provided." msgstr "" msgid "" -":func:`functools.partial` can be used to pass parameters to the callback, e." -"g.::" +":func:`functools.partial` can be used to pass parameters to the callback, " +"e.g.::" msgstr "" msgid "" @@ -240,8 +241,9 @@ msgid "" msgstr "" msgid "" -"The optional string argument *msg* is passed as the argument to the :exc:" -"`CancelledError` exception raised when a cancelled Future is awaited." +"The optional string argument *msg* is passed as the argument to " +"the :exc:`CancelledError` exception raised when a cancelled Future is " +"awaited." msgstr "" msgid "Added the *msg* parameter." @@ -256,8 +258,8 @@ msgid "" msgstr "" msgid "" -"If the Future isn't *done* yet, this method raises an :exc:" -"`InvalidStateError` exception." +"If the Future isn't *done* yet, this method raises " +"an :exc:`InvalidStateError` exception." msgstr "" msgid "Return the event loop the Future object is bound to." @@ -314,8 +316,8 @@ msgid "" msgstr "" msgid "" -":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise an :" -"exc:`InvalidStateError` exception when the Future is not *done*." +":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise " +"an :exc:`InvalidStateError` exception when the Future is not *done*." msgstr "" msgid "" @@ -329,6 +331,6 @@ msgid "" msgstr "" msgid "" -":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, but :" -"meth:`concurrent.futures.Future.cancel` does not." +":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, " +"but :meth:`concurrent.futures.Future.cancel` does not." msgstr "" diff --git a/library/asyncio-graph.po b/library/asyncio-graph.po deleted file mode 100644 index 1c6b53a..0000000 --- a/library/asyncio-graph.po +++ /dev/null @@ -1,179 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Call graph introspection" -msgstr "" - -msgid "**Source code:** :source:`Lib/asyncio/graph.py`" -msgstr "" - -msgid "" -"asyncio has powerful runtime call graph introspection utilities to trace the " -"entire call graph of a running *coroutine* or *task*, or a suspended " -"*future*. These utilities and the underlying machinery can be used from " -"within a Python program or by external profilers and debuggers." -msgstr "" - -msgid ":ref:`asyncio-introspection-tools`" -msgstr "" - -msgid "" -"Command-line tools for inspecting tasks in another running Python process." -msgstr "" - -msgid "" -"Print the async call graph for the current task or the provided :class:" -"`Task` or :class:`Future`." -msgstr "" - -msgid "" -"This function prints entries starting from the top frame and going down " -"towards the invocation point." -msgstr "" - -msgid "" -"The function receives an optional *future* argument. If not passed, the " -"current running task will be used." -msgstr "" - -msgid "" -"If the function is called on *the current task*, the optional keyword-only " -"*depth* argument can be used to skip the specified number of frames from top " -"of the stack." -msgstr "" - -msgid "" -"If the optional keyword-only *limit* argument is provided, each call stack " -"in the resulting graph is truncated to include at most ``abs(limit)`` " -"entries. If *limit* is positive, the entries left are the closest to the " -"invocation point. If *limit* is negative, the topmost entries are left. If " -"*limit* is omitted or ``None``, all entries are present. If *limit* is " -"``0``, the call stack is not printed at all, only \"awaited by\" information " -"is printed." -msgstr "" - -msgid "" -"If *file* is omitted or ``None``, the function will print to :data:`sys." -"stdout`." -msgstr "" - -msgid "**Example:**" -msgstr "" - -msgid "The following Python code:" -msgstr "" - -msgid "" -"import asyncio\n" -"\n" -"async def test():\n" -" asyncio.print_call_graph()\n" -"\n" -"async def main():\n" -" async with asyncio.TaskGroup() as g:\n" -" g.create_task(test(), name='test')\n" -"\n" -"asyncio.run(main())" -msgstr "" - -msgid "will print::" -msgstr "" - -msgid "" -"* Task(name='test', id=0x1039f0fe0)\n" -"+ Call stack:\n" -"| File 't2.py', line 4, in async test()\n" -"+ Awaited by:\n" -" * Task(name='Task-1', id=0x103a5e060)\n" -" + Call stack:\n" -" | File 'taskgroups.py', line 107, in async TaskGroup.__aexit__()\n" -" | File 't2.py', line 7, in async main()" -msgstr "" - -msgid "" -"Like :func:`print_call_graph`, but returns a string. If *future* is ``None`` " -"and there's no current task, the function returns an empty string." -msgstr "" - -msgid "" -"Capture the async call graph for the current task or the provided :class:" -"`Task` or :class:`Future`." -msgstr "" - -msgid "" -"The function receives an optional *future* argument. If not passed, the " -"current running task will be used. If there's no current task, the function " -"returns ``None``." -msgstr "" - -msgid "Returns a ``FutureCallGraph`` data class object:" -msgstr "" - -msgid "``FutureCallGraph(future, call_stack, awaited_by)``" -msgstr "" - -msgid "" -"Where *future* is a reference to a :class:`Future` or a :class:`Task` (or " -"their subclasses.)" -msgstr "" - -msgid "``call_stack`` is a tuple of ``FrameCallGraphEntry`` objects." -msgstr "" - -msgid "``awaited_by`` is a tuple of ``FutureCallGraph`` objects." -msgstr "" - -msgid "``FrameCallGraphEntry(frame)``" -msgstr "" - -msgid "" -"Where *frame* is a frame object of a regular Python function in the call " -"stack." -msgstr "" - -msgid "Low level utility functions" -msgstr "" - -msgid "" -"To introspect an async call graph asyncio requires cooperation from control " -"flow structures, such as :func:`shield` or :class:`TaskGroup`. Any time an " -"intermediate :class:`Future` object with low-level APIs like :meth:`Future." -"add_done_callback() ` is involved, the " -"following two functions should be used to inform asyncio about how exactly " -"such intermediate future objects are connected with the tasks they wrap or " -"control." -msgstr "" - -msgid "Record that *future* is awaited on by *waiter*." -msgstr "" - -msgid "" -"Both *future* and *waiter* must be instances of :class:`Future` or :class:" -"`Task` or their subclasses, otherwise the call would have no effect." -msgstr "" - -msgid "" -"A call to ``future_add_to_awaited_by()`` must be followed by an eventual " -"call to the :func:`future_discard_from_awaited_by` function with the same " -"arguments." -msgstr "" - -msgid "Record that *future* is no longer awaited on by *waiter*." -msgstr "" diff --git a/library/asyncio-llapi-index.po b/library/asyncio-llapi-index.po index c465cac..7c31a47 100644 --- a/library/asyncio-llapi-index.po +++ b/library/asyncio-llapi-index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -487,8 +487,9 @@ msgstr "" msgid "" "Transports that can receive data (TCP and Unix connections, pipes, etc). " -"Returned from methods like :meth:`loop.create_connection`, :meth:`loop." -"create_unix_connection`, :meth:`loop.connect_read_pipe`, etc:" +"Returned from methods " +"like :meth:`loop.create_connection`, :meth:`loop.create_unix_connection`, :meth:`loop.connect_read_pipe`, " +"etc:" msgstr "" msgid "Read Transports" @@ -514,8 +515,9 @@ msgstr "" msgid "" "Transports that can Send data (TCP and Unix connections, pipes, etc). " -"Returned from methods like :meth:`loop.create_connection`, :meth:`loop." -"create_unix_connection`, :meth:`loop.connect_write_pipe`, etc:" +"Returned from methods " +"like :meth:`loop.create_connection`, :meth:`loop.create_unix_connection`, :meth:`loop.connect_write_pipe`, " +"etc:" msgstr "" msgid "Write Transports" @@ -552,24 +554,24 @@ msgid "Close the transport immediately." msgstr "" msgid "" -":meth:`transport.get_write_buffer_size() `" +":meth:`transport.get_write_buffer_size() " +"`" msgstr "" msgid "Return the current size of the output buffer." msgstr "" msgid "" -":meth:`transport.get_write_buffer_limits() `" +":meth:`transport.get_write_buffer_limits() " +"`" msgstr "" msgid "Return high and low water marks for write flow control." msgstr "" msgid "" -":meth:`transport.set_write_buffer_limits() `" +":meth:`transport.set_write_buffer_limits() " +"`" msgstr "" msgid "Set new high and low water marks for write flow control." @@ -591,8 +593,8 @@ msgid ":meth:`transport.abort() `" msgstr "" msgid "" -"Low-level transport abstraction over subprocesses. Returned by :meth:`loop." -"subprocess_exec` and :meth:`loop.subprocess_shell`:" +"Low-level transport abstraction over subprocesses. Returned " +"by :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell`:" msgstr "" msgid "Subprocess Transports" @@ -605,8 +607,8 @@ msgid "Return the subprocess process id." msgstr "" msgid "" -":meth:`transport.get_pipe_transport() `" +":meth:`transport.get_pipe_transport() " +"`" msgstr "" msgid "" @@ -746,18 +748,18 @@ msgid "" msgstr "" msgid "" -"Called when the child process has exited. It can be called before :meth:" -"`~SubprocessProtocol.pipe_data_received` and :meth:`~SubprocessProtocol." -"pipe_connection_lost` methods." +"Called when the child process has exited. It can be called " +"before :meth:`~SubprocessProtocol.pipe_data_received` " +"and :meth:`~SubprocessProtocol.pipe_connection_lost` methods." msgstr "" msgid "Event Loop Policies" msgstr "" msgid "" -"Policies is a low-level mechanism to alter the behavior of functions like :" -"func:`asyncio.get_event_loop`. See also the main :ref:`policies section " -"` for more details." +"Policies is a low-level mechanism to alter the behavior of functions " +"like :func:`asyncio.get_event_loop`. See also the main :ref:`policies " +"section ` for more details." msgstr "" msgid "Accessing Policies" diff --git a/library/asyncio-platforms.po b/library/asyncio-platforms.po index a7c5e8a..77b3387 100644 --- a/library/asyncio-platforms.po +++ b/library/asyncio-platforms.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -79,14 +79,14 @@ msgid "" msgstr "" msgid "" -"Pipes are not supported, so the :meth:`loop.connect_read_pipe` and :meth:" -"`loop.connect_write_pipe` methods are not implemented." +"Pipes are not supported, so the :meth:`loop.connect_read_pipe` " +"and :meth:`loop.connect_write_pipe` methods are not implemented." msgstr "" msgid "" -":ref:`Subprocesses ` are not supported, i.e. :meth:`loop." -"subprocess_exec` and :meth:`loop.subprocess_shell` methods are not " -"implemented." +":ref:`Subprocesses ` are not supported, " +"i.e. :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell` methods " +"are not implemented." msgstr "" msgid ":class:`ProactorEventLoop` has the following limitations:" @@ -128,11 +128,12 @@ msgid "macOS <= 10.8" msgstr "" msgid "" -"On macOS 10.6, 10.7 and 10.8, the default event loop uses :class:`selectors." -"KqueueSelector`, which does not support character devices on these " -"versions. The :class:`SelectorEventLoop` can be manually configured to use :" -"class:`~selectors.SelectSelector` or :class:`~selectors.PollSelector` to " -"support character devices on these older versions of macOS. Example::" +"On macOS 10.6, 10.7 and 10.8, the default event loop " +"uses :class:`selectors.KqueueSelector`, which does not support character " +"devices on these versions. The :class:`SelectorEventLoop` can be manually " +"configured to use :class:`~selectors.SelectSelector` " +"or :class:`~selectors.PollSelector` to support character devices on these " +"older versions of macOS. Example::" msgstr "" msgid "" diff --git a/library/asyncio-policy.po b/library/asyncio-policy.po index 27d2576..793dc48 100644 --- a/library/asyncio-policy.po +++ b/library/asyncio-policy.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,17 +27,18 @@ msgstr "" msgid "" "Policies are deprecated and will be removed in Python 3.16. Users are " -"encouraged to use the :func:`asyncio.run` function or the :class:`asyncio." -"Runner` with *loop_factory* to use the desired loop implementation." +"encouraged to use the :func:`asyncio.run` function or " +"the :class:`asyncio.Runner` with *loop_factory* to use the desired loop " +"implementation." msgstr "" msgid "" -"An event loop policy is a global object used to get and set the current :ref:" -"`event loop `, as well as create new event loops. The " -"default policy can be :ref:`replaced ` with :ref:" -"`built-in alternatives ` to use different event loop " -"implementations, or substituted by a :ref:`custom policy ` that can override these behaviors." +"An event loop policy is a global object used to get and set the " +"current :ref:`event loop `, as well as create new event " +"loops. The default policy can be :ref:`replaced ` " +"with :ref:`built-in alternatives ` to use different " +"event loop implementations, or substituted by a :ref:`custom policy ` that can override these behaviors." msgstr "" msgid "" @@ -47,13 +48,14 @@ msgid "" msgstr "" msgid "" -"Custom event loop policies can control the behavior of :func:" -"`get_event_loop`, :func:`set_event_loop`, and :func:`new_event_loop`." +"Custom event loop policies can control the behavior " +"of :func:`get_event_loop`, :func:`set_event_loop`, " +"and :func:`new_event_loop`." msgstr "" msgid "" -"Policy objects should implement the APIs defined in the :class:" -"`AbstractEventLoopPolicy` abstract base class." +"Policy objects should implement the APIs defined in " +"the :class:`AbstractEventLoopPolicy` abstract base class." msgstr "" msgid "Getting and Setting the Policy" @@ -118,8 +120,8 @@ msgid "asyncio ships with the following built-in policies:" msgstr "" msgid "" -"The default asyncio policy. Uses :class:`SelectorEventLoop` on Unix and :" -"class:`ProactorEventLoop` on Windows." +"The default asyncio policy. Uses :class:`SelectorEventLoop` on Unix " +"and :class:`ProactorEventLoop` on Windows." msgstr "" msgid "" @@ -167,9 +169,9 @@ msgid "Custom Policies" msgstr "" msgid "" -"To implement a new event loop policy, it is recommended to subclass :class:" -"`DefaultEventLoopPolicy` and override the methods for which custom behavior " -"is wanted, e.g.::" +"To implement a new event loop policy, it is recommended to " +"subclass :class:`DefaultEventLoopPolicy` and override the methods for which " +"custom behavior is wanted, e.g.::" msgstr "" msgid "" diff --git a/library/asyncio-protocol.po b/library/asyncio-protocol.po index a5e641e..e0c56dc 100644 --- a/library/asyncio-protocol.po +++ b/library/asyncio-protocol.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -70,11 +70,11 @@ msgid "" msgstr "" msgid "" -"Most of connection oriented event loop methods (such as :meth:`loop." -"create_connection`) usually accept a *protocol_factory* argument used to " -"create a *Protocol* object for an accepted connection, represented by a " -"*Transport* object. Such methods usually return a tuple of ``(transport, " -"protocol)``." +"Most of connection oriented event loop methods (such " +"as :meth:`loop.create_connection`) usually accept a *protocol_factory* " +"argument used to create a *Protocol* object for an accepted connection, " +"represented by a *Transport* object. Such methods usually return a tuple of " +"``(transport, protocol)``." msgstr "" msgid "Contents" @@ -84,15 +84,15 @@ msgid "This documentation page contains the following sections:" msgstr "" msgid "" -"The `Transports`_ section documents asyncio :class:`BaseTransport`, :class:" -"`ReadTransport`, :class:`WriteTransport`, :class:`Transport`, :class:" -"`DatagramTransport`, and :class:`SubprocessTransport` classes." +"The `Transports`_ section documents " +"asyncio :class:`BaseTransport`, :class:`ReadTransport`, :class:`WriteTransport`, :class:`Transport`, :class:`DatagramTransport`, " +"and :class:`SubprocessTransport` classes." msgstr "" msgid "" -"The `Protocols`_ section documents asyncio :class:`BaseProtocol`, :class:" -"`Protocol`, :class:`BufferedProtocol`, :class:`DatagramProtocol`, and :class:" -"`SubprocessProtocol` classes." +"The `Protocols`_ section documents " +"asyncio :class:`BaseProtocol`, :class:`Protocol`, :class:`BufferedProtocol`, :class:`DatagramProtocol`, " +"and :class:`SubprocessProtocol` classes." msgstr "" msgid "" @@ -137,18 +137,18 @@ msgid "A base transport for write-only connections." msgstr "" msgid "" -"Instances of the *WriteTransport* class are returned from the :meth:`loop." -"connect_write_pipe` event loop method and are also used by subprocess-" -"related methods like :meth:`loop.subprocess_exec`." +"Instances of the *WriteTransport* class are returned from " +"the :meth:`loop.connect_write_pipe` event loop method and are also used by " +"subprocess-related methods like :meth:`loop.subprocess_exec`." msgstr "" msgid "A base transport for read-only connections." msgstr "" msgid "" -"Instances of the *ReadTransport* class are returned from the :meth:`loop." -"connect_read_pipe` event loop method and are also used by subprocess-related " -"methods like :meth:`loop.subprocess_exec`." +"Instances of the *ReadTransport* class are returned from " +"the :meth:`loop.connect_read_pipe` event loop method and are also used by " +"subprocess-related methods like :meth:`loop.subprocess_exec`." msgstr "" msgid "" @@ -163,8 +163,8 @@ msgstr "" msgid "" "Instances of the *Transport* class are returned from or used by event loop " -"methods like :meth:`loop.create_connection`, :meth:`loop." -"create_unix_connection`, :meth:`loop.create_server`, :meth:`loop.sendfile`, " +"methods " +"like :meth:`loop.create_connection`, :meth:`loop.create_unix_connection`, :meth:`loop.create_server`, :meth:`loop.sendfile`, " "etc." msgstr "" @@ -172,8 +172,8 @@ msgid "A transport for datagram (UDP) connections." msgstr "" msgid "" -"Instances of the *DatagramTransport* class are returned from the :meth:`loop." -"create_datagram_endpoint` event loop method." +"Instances of the *DatagramTransport* class are returned from " +"the :meth:`loop.create_datagram_endpoint` event loop method." msgstr "" msgid "" @@ -243,8 +243,8 @@ msgid "``'socket'``: :class:`socket.socket` instance" msgstr "" msgid "" -"``'sockname'``: the socket's own address, result of :meth:`socket.socket." -"getsockname`" +"``'sockname'``: the socket's own address, result " +"of :meth:`socket.socket.getsockname`" msgstr "" msgid "SSL socket:" @@ -252,8 +252,8 @@ msgstr "" msgid "" "``'compression'``: the compression algorithm being used as a string, or " -"``None`` if the connection isn't compressed; result of :meth:`ssl.SSLSocket." -"compression`" +"``None`` if the connection isn't compressed; result " +"of :meth:`ssl.SSLSocket.compression`" msgstr "" msgid "" @@ -335,8 +335,8 @@ msgid "" msgstr "" msgid "" -"Return :const:`True` if the transport supports :meth:`~WriteTransport." -"write_eof`, :const:`False` if not." +"Return :const:`True` if the transport " +"supports :meth:`~WriteTransport.write_eof`, :const:`False` if not." msgstr "" msgid "Return the current size of the output buffer used by the transport." @@ -354,18 +354,18 @@ msgid "Set the *high* and *low* watermarks for write flow control." msgstr "" msgid "" -"These two values (measured in number of bytes) control when the protocol's :" -"meth:`protocol.pause_writing() ` and :meth:" -"`protocol.resume_writing() ` methods are " -"called. If specified, the low watermark must be less than or equal to the " -"high watermark. Neither *high* nor *low* can be negative." +"These two values (measured in number of bytes) control when the " +"protocol's :meth:`protocol.pause_writing() ` " +"and :meth:`protocol.resume_writing() ` methods " +"are called. If specified, the low watermark must be less than or equal to " +"the high watermark. Neither *high* nor *low* can be negative." msgstr "" msgid "" ":meth:`~BaseProtocol.pause_writing` is called when the buffer size becomes " -"greater than or equal to the *high* value. If writing has been paused, :meth:" -"`~BaseProtocol.resume_writing` is called when the buffer size becomes less " -"than or equal to the *low* value." +"greater than or equal to the *high* value. If writing has been " +"paused, :meth:`~BaseProtocol.resume_writing` is called when the buffer size " +"becomes less than or equal to the *low* value." msgstr "" msgid "" @@ -373,10 +373,10 @@ msgid "" "given, the low watermark defaults to an implementation-specific value less " "than or equal to the high watermark. Setting *high* to zero forces *low* to " "zero as well, and causes :meth:`~BaseProtocol.pause_writing` to be called " -"whenever the buffer becomes non-empty. Setting *low* to zero causes :meth:" -"`~BaseProtocol.resume_writing` to be called only once the buffer is empty. " -"Use of zero for either limit is generally sub-optimal as it reduces " -"opportunities for doing I/O and computation concurrently." +"whenever the buffer becomes non-empty. Setting *low* to zero " +"causes :meth:`~BaseProtocol.resume_writing` to be called only once the " +"buffer is empty. Use of zero for either limit is generally sub-optimal as it " +"reduces opportunities for doing I/O and computation concurrently." msgstr "" msgid "Use :meth:`~WriteTransport.get_write_buffer_limits` to get the limits." @@ -440,18 +440,18 @@ msgid "" msgstr "" msgid "" -"``0``: writable streaming transport of the standard input (*stdin*), or :" -"const:`None` if the subprocess was not created with ``stdin=PIPE``" +"``0``: writable streaming transport of the standard input (*stdin*), " +"or :const:`None` if the subprocess was not created with ``stdin=PIPE``" msgstr "" msgid "" -"``1``: readable streaming transport of the standard output (*stdout*), or :" -"const:`None` if the subprocess was not created with ``stdout=PIPE``" +"``1``: readable streaming transport of the standard output (*stdout*), " +"or :const:`None` if the subprocess was not created with ``stdout=PIPE``" msgstr "" msgid "" -"``2``: readable streaming transport of the standard error (*stderr*), or :" -"const:`None` if the subprocess was not created with ``stderr=PIPE``" +"``2``: readable streaming transport of the standard error (*stderr*), " +"or :const:`None` if the subprocess was not created with ``stderr=PIPE``" msgstr "" msgid "other *fd*: :const:`None`" @@ -475,8 +475,8 @@ msgid "See also :meth:`subprocess.Popen.kill`." msgstr "" msgid "" -"Send the *signal* number to the subprocess, as in :meth:`subprocess.Popen." -"send_signal`." +"Send the *signal* number to the subprocess, as " +"in :meth:`subprocess.Popen.send_signal`." msgstr "" msgid "Stop the subprocess." @@ -593,8 +593,9 @@ msgid "Called when the transport's buffer drains below the low watermark." msgstr "" msgid "" -"If the buffer size equals the high watermark, :meth:`~BaseProtocol." -"pause_writing` is not called: the buffer size must go strictly over." +"If the buffer size equals the high " +"watermark, :meth:`~BaseProtocol.pause_writing` is not called: the buffer " +"size must go strictly over." msgstr "" msgid "" @@ -607,11 +608,10 @@ msgid "Streaming Protocols" msgstr "" msgid "" -"Event methods, such as :meth:`loop.create_server`, :meth:`loop." -"create_unix_server`, :meth:`loop.create_connection`, :meth:`loop." -"create_unix_connection`, :meth:`loop.connect_accepted_socket`, :meth:`loop." -"connect_read_pipe`, and :meth:`loop.connect_write_pipe` accept factories " -"that return streaming protocols." +"Event methods, such " +"as :meth:`loop.create_server`, :meth:`loop.create_unix_server`, :meth:`loop.create_connection`, :meth:`loop.create_unix_connection`, :meth:`loop.connect_accepted_socket`, :meth:`loop.connect_read_pipe`, " +"and :meth:`loop.connect_write_pipe` accept factories that return streaming " +"protocols." msgstr "" msgid "" @@ -710,16 +710,16 @@ msgid "*nbytes* is the total number of bytes that were written to the buffer." msgstr "" msgid "" -"See the documentation of the :meth:`protocol.eof_received() ` method." +"See the documentation of the :meth:`protocol.eof_received() " +"` method." msgstr "" msgid "" ":meth:`~BufferedProtocol.get_buffer` can be called an arbitrary number of " "times during a connection. However, :meth:`protocol.eof_received() " -"` is called at most once and, if called, :meth:" -"`~BufferedProtocol.get_buffer` and :meth:`~BufferedProtocol.buffer_updated` " -"won't be called after it." +"` is called at most once and, if " +"called, :meth:`~BufferedProtocol.get_buffer` " +"and :meth:`~BufferedProtocol.buffer_updated` won't be called after it." msgstr "" msgid "" @@ -746,8 +746,8 @@ msgid "" msgstr "" msgid "" -"Called when a previous send or receive operation raises an :class:" -"`OSError`. *exc* is the :class:`OSError` instance." +"Called when a previous send or receive operation raises " +"an :class:`OSError`. *exc* is the :class:`OSError` instance." msgstr "" msgid "" @@ -763,10 +763,10 @@ msgid "" msgstr "" msgid "" -"The socket always appears 'ready' and excess packets are dropped. An :class:" -"`OSError` with ``errno`` set to :const:`errno.ENOBUFS` may or may not be " -"raised; if it is raised, it will be reported to :meth:`DatagramProtocol." -"error_received` but otherwise ignored." +"The socket always appears 'ready' and excess packets are dropped. " +"An :class:`OSError` with ``errno`` set to :const:`errno.ENOBUFS` may or may " +"not be raised; if it is raised, it will be reported " +"to :meth:`DatagramProtocol.error_received` but otherwise ignored." msgstr "" msgid "Subprocess Protocols" @@ -799,8 +799,8 @@ msgid "Called when the child process has exited." msgstr "" msgid "" -"It can be called before :meth:`~SubprocessProtocol.pipe_data_received` and :" -"meth:`~SubprocessProtocol.pipe_connection_lost` methods." +"It can be called before :meth:`~SubprocessProtocol.pipe_data_received` " +"and :meth:`~SubprocessProtocol.pipe_connection_lost` methods." msgstr "" msgid "Examples" @@ -1077,8 +1077,8 @@ msgstr "" msgid "" "The :ref:`watch a file descriptor for read events " -"` example uses the low-level :meth:`loop." -"add_reader` method to register an FD." +"` example uses the low-" +"level :meth:`loop.add_reader` method to register an FD." msgstr "" msgid "" diff --git a/library/asyncio-queue.po b/library/asyncio-queue.po index 99613d8..3c00d04 100644 --- a/library/asyncio-queue.po +++ b/library/asyncio-queue.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,8 +35,8 @@ msgid "" msgstr "" msgid "" -"Note that methods of asyncio queues don't have a *timeout* parameter; use :" -"func:`asyncio.wait_for` function to do queue operations with a timeout." +"Note that methods of asyncio queues don't have a *timeout* parameter; " +"use :func:`asyncio.wait_for` function to do queue operations with a timeout." msgstr "" msgid "See also the `Examples`_ section below." @@ -75,8 +75,8 @@ msgid "Return ``True`` if there are :attr:`maxsize` items in the queue." msgstr "" msgid "" -"If the queue was initialized with ``maxsize=0`` (the default), then :meth:" -"`full` never returns ``True``." +"If the queue was initialized with ``maxsize=0`` (the default), " +"then :meth:`full` never returns ``True``." msgstr "" msgid "" @@ -102,10 +102,10 @@ msgstr "" msgid "" "The count of unfinished tasks goes up whenever an item is added to the " -"queue. The count goes down whenever a consumer coroutine calls :meth:" -"`task_done` to indicate that the item was retrieved and all work on it is " -"complete. When the count of unfinished tasks drops to zero, :meth:`join` " -"unblocks." +"queue. The count goes down whenever a consumer coroutine " +"calls :meth:`task_done` to indicate that the item was retrieved and all work " +"on it is complete. When the count of unfinished tasks drops to " +"zero, :meth:`join` unblocks." msgstr "" msgid "" @@ -129,9 +129,10 @@ msgid "Put a :class:`Queue` instance into a shutdown mode." msgstr "" msgid "" -"The queue can no longer grow. Future calls to :meth:`~Queue.put` raise :exc:" -"`QueueShutDown`. Currently blocked callers of :meth:`~Queue.put` will be " -"unblocked and will raise :exc:`QueueShutDown` in the formerly awaiting task." +"The queue can no longer grow. Future calls to :meth:`~Queue.put` " +"raise :exc:`QueueShutDown`. Currently blocked callers of :meth:`~Queue.put` " +"will be unblocked and will raise :exc:`QueueShutDown` in the formerly " +"awaiting task." msgstr "" msgid "" @@ -145,17 +146,17 @@ msgid "" msgstr "" msgid "" -"Once the queue is empty, future calls to :meth:`~Queue.get` will raise :exc:" -"`QueueShutDown`." +"Once the queue is empty, future calls to :meth:`~Queue.get` will " +"raise :exc:`QueueShutDown`." msgstr "" msgid "" "If *immediate* is true, the queue is terminated immediately. The queue is " "drained to be completely empty and the count of unfinished tasks is reduced " -"by the number of tasks drained. If unfinished tasks is zero, callers of :" -"meth:`~Queue.join` are unblocked. Also, blocked callers of :meth:`~Queue." -"get` are unblocked and will raise :exc:`QueueShutDown` because the queue is " -"empty." +"by the number of tasks drained. If unfinished tasks is zero, callers " +"of :meth:`~Queue.join` are unblocked. Also, blocked callers " +"of :meth:`~Queue.get` are unblocked and will raise :exc:`QueueShutDown` " +"because the queue is empty." msgstr "" msgid "" @@ -217,9 +218,9 @@ msgid "" msgstr "" msgid "" -"Exception raised when :meth:`~Queue.put`, :meth:`~Queue.put_nowait`, :meth:" -"`~Queue.get` or :meth:`~Queue.get_nowait` is called on a queue which has " -"been shut down." +"Exception raised " +"when :meth:`~Queue.put`, :meth:`~Queue.put_nowait`, :meth:`~Queue.get` " +"or :meth:`~Queue.get_nowait` is called on a queue which has been shut down." msgstr "" msgid "Examples" diff --git a/library/asyncio-runner.po b/library/asyncio-runner.po index b838254..dd86a5f 100644 --- a/library/asyncio-runner.po +++ b/library/asyncio-runner.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -58,8 +58,8 @@ msgstr "" msgid "" "If *debug* is ``True``, the event loop will be run in debug mode. ``False`` " -"disables debug mode explicitly. ``None`` is used to respect the global :ref:" -"`asyncio-debug-mode` settings." +"disables debug mode explicitly. ``None`` is used to respect the " +"global :ref:`asyncio-debug-mode` settings." msgstr "" msgid "" @@ -67,8 +67,9 @@ msgid "" "otherwise :func:`asyncio.new_event_loop` is used. The loop is closed at the " "end. This function should be used as a main entry point for asyncio " "programs, and should ideally only be called once. It is recommended to use " -"*loop_factory* to configure the event loop instead of policies. Passing :" -"class:`asyncio.EventLoop` allows running asyncio without the policy system." +"*loop_factory* to configure the event loop instead of policies. " +"Passing :class:`asyncio.EventLoop` allows running asyncio without the policy " +"system." msgstr "" msgid "" @@ -116,8 +117,8 @@ msgid "" msgstr "" msgid "" -"Sometimes several top-level async functions should be called in the same :" -"ref:`event loop ` and :class:`contextvars.Context`." +"Sometimes several top-level async functions should be called in the " +"same :ref:`event loop ` and :class:`contextvars.Context`." msgstr "" msgid "" @@ -148,9 +149,9 @@ msgid "If the argument is a coroutine, it is wrapped in a Task." msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the code to run in. The runner's default " -"context is used if context is ``None``." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the code to run in. The runner's " +"default context is used if context is ``None``." msgstr "" msgid "Returns the awaitable's result or raises an exception." @@ -181,10 +182,10 @@ msgid "Handling Keyboard Interruption" msgstr "" msgid "" -"When :const:`signal.SIGINT` is raised by :kbd:`Ctrl-C`, :exc:" -"`KeyboardInterrupt` exception is raised in the main thread by default. " -"However this doesn't work with :mod:`asyncio` because it can interrupt " -"asyncio internals and can hang the program from exiting." +"When :const:`signal.SIGINT` is raised by :kbd:`Ctrl-" +"C`, :exc:`KeyboardInterrupt` exception is raised in the main thread by " +"default. However this doesn't work with :mod:`asyncio` because it can " +"interrupt asyncio internals and can hang the program from exiting." msgstr "" msgid "" @@ -208,13 +209,13 @@ msgid "" "handler cancels the main task by calling :meth:`asyncio.Task.cancel` which " "raises :exc:`asyncio.CancelledError` inside the main task. This causes the " "Python stack to unwind, ``try/except`` and ``try/finally`` blocks can be " -"used for resource cleanup. After the main task is cancelled, :meth:`asyncio." -"Runner.run` raises :exc:`KeyboardInterrupt`." +"used for resource cleanup. After the main task is " +"cancelled, :meth:`asyncio.Runner.run` raises :exc:`KeyboardInterrupt`." msgstr "" msgid "" -"A user could write a tight loop which cannot be interrupted by :meth:" -"`asyncio.Task.cancel`, in which case the second following :kbd:`Ctrl-C` " -"immediately raises the :exc:`KeyboardInterrupt` without cancelling the main " -"task." +"A user could write a tight loop which cannot be interrupted " +"by :meth:`asyncio.Task.cancel`, in which case the second " +"following :kbd:`Ctrl-C` immediately raises the :exc:`KeyboardInterrupt` " +"without cancelling the main task." msgstr "" diff --git a/library/asyncio-stream.po b/library/asyncio-stream.po index ce41297..bb41657 100644 --- a/library/asyncio-stream.po +++ b/library/asyncio-stream.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-05 15:56+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -75,24 +75,25 @@ msgid "" msgstr "" msgid "" -"The returned *reader* and *writer* objects are instances of :class:" -"`StreamReader` and :class:`StreamWriter` classes." +"The returned *reader* and *writer* objects are instances " +"of :class:`StreamReader` and :class:`StreamWriter` classes." msgstr "" msgid "" -"*limit* determines the buffer size limit used by the returned :class:" -"`StreamReader` instance. By default the *limit* is set to 64 KiB." +"*limit* determines the buffer size limit used by the " +"returned :class:`StreamReader` instance. By default the *limit* is set to " +"64 KiB." msgstr "" msgid "" -"The rest of the arguments are passed directly to :meth:`loop." -"create_connection`." +"The rest of the arguments are passed directly " +"to :meth:`loop.create_connection`." msgstr "" msgid "" -"The *sock* argument transfers ownership of the socket to the :class:" -"`StreamWriter` created. To close the socket, call its :meth:`~asyncio." -"StreamWriter.close` method." +"The *sock* argument transfers ownership of the socket to " +"the :class:`StreamWriter` created. To close the socket, call " +"its :meth:`~asyncio.StreamWriter.close` method." msgstr "" msgid "Added the *ssl_handshake_timeout* parameter." @@ -187,13 +188,13 @@ msgstr "" msgid "" "Represents a reader object that provides APIs to read data from the IO " -"stream. As an :term:`asynchronous iterable`, the object supports the :" -"keyword:`async for` statement." +"stream. As an :term:`asynchronous iterable`, the object supports " +"the :keyword:`async for` statement." msgstr "" msgid "" -"It is not recommended to instantiate *StreamReader* objects directly; use :" -"func:`open_connection` and :func:`start_server` instead." +"It is not recommended to instantiate *StreamReader* objects directly; " +"use :func:`open_connection` and :func:`start_server` instead." msgstr "" msgid "Acknowledge the EOF." @@ -249,15 +250,15 @@ msgid "" msgstr "" msgid "" -"If the amount of data read exceeds the configured stream limit, a :exc:" -"`LimitOverrunError` exception is raised, and the data is left in the " +"If the amount of data read exceeds the configured stream limit, " +"a :exc:`LimitOverrunError` exception is raised, and the data is left in the " "internal buffer and can be read again." msgstr "" msgid "" -"If EOF is reached before the complete separator is found, an :exc:" -"`IncompleteReadError` exception is raised, and the internal buffer is " -"reset. The :attr:`IncompleteReadError.partial` attribute may contain a " +"If EOF is reached before the complete separator is found, " +"an :exc:`IncompleteReadError` exception is raised, and the internal buffer " +"is reset. The :attr:`IncompleteReadError.partial` attribute may contain a " "portion of the separator." msgstr "" @@ -282,8 +283,8 @@ msgid "" msgstr "" msgid "" -"It is not recommended to instantiate *StreamWriter* objects directly; use :" -"func:`open_connection` and :func:`start_server` instead." +"It is not recommended to instantiate *StreamWriter* objects directly; " +"use :func:`open_connection` and :func:`start_server` instead." msgstr "" msgid "" @@ -342,8 +343,8 @@ msgid "Return the underlying asyncio transport." msgstr "" msgid "" -"Access optional transport information; see :meth:`BaseTransport." -"get_extra_info` for details." +"Access optional transport information; " +"see :meth:`BaseTransport.get_extra_info` for details." msgstr "" msgid "Wait until it is appropriate to resume writing to the stream. Example::" @@ -358,8 +359,8 @@ msgid "" "This is a flow control method that interacts with the underlying IO write " "buffer. When the size of the buffer reaches the high watermark, *drain()* " "blocks until the size of the buffer is drained down to the low watermark and " -"writing can be resumed. When there is nothing to wait for, the :meth:" -"`drain` returns immediately." +"writing can be resumed. When there is nothing to wait for, " +"the :meth:`drain` returns immediately." msgstr "" msgid "" @@ -396,6 +397,11 @@ msgid "" "(default)." msgstr "" +msgid "" +"Raises a ``ValueError`` if ``sslcontext.check_hostname`` is ``True`` and " +"``server_hostname`` is not supplied." +msgstr "" + msgid "" "Return ``True`` if the stream is closed or in the process of being closed." msgstr "" @@ -420,8 +426,8 @@ msgstr "" msgid "" "The :ref:`TCP echo client protocol " -"` example uses the low-level :meth:" -"`loop.create_connection` method." +"` example uses the low-" +"level :meth:`loop.create_connection` method." msgstr "" msgid "TCP echo server using streams" @@ -463,8 +469,8 @@ msgstr "" msgid "" "The :ref:`TCP echo server protocol " -"` example uses the :meth:`loop." -"create_server` method." +"` example uses " +"the :meth:`loop.create_server` method." msgstr "" msgid "Get HTTP headers" @@ -528,8 +534,8 @@ msgid "Register an open socket to wait for data using streams" msgstr "" msgid "" -"Coroutine waiting until a socket receives data using the :func:" -"`open_connection` function::" +"Coroutine waiting until a socket receives data using " +"the :func:`open_connection` function::" msgstr "" msgid "" @@ -572,6 +578,6 @@ msgstr "" msgid "" "The :ref:`watch a file descriptor for read events " -"` example uses the low-level :meth:`loop." -"add_reader` method to watch a file descriptor." +"` example uses the low-" +"level :meth:`loop.add_reader` method to watch a file descriptor." msgstr "" diff --git a/library/asyncio-subprocess.po b/library/asyncio-subprocess.po index 9a95f2b..3e02ae7 100644 --- a/library/asyncio-subprocess.po +++ b/library/asyncio-subprocess.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -92,9 +92,9 @@ msgstr "" msgid "" "The *limit* argument sets the buffer limit for :class:`StreamReader` " -"wrappers for :attr:`~asyncio.subprocess.Process.stdout` and :attr:`~asyncio." -"subprocess.Process.stderr` (if :const:`subprocess.PIPE` is passed to " -"*stdout* and *stderr* arguments)." +"wrappers for :attr:`~asyncio.subprocess.Process.stdout` " +"and :attr:`~asyncio.subprocess.Process.stderr` (if :const:`subprocess.PIPE` " +"is passed to *stdout* and *stderr* arguments)." msgstr "" msgid "Return a :class:`~asyncio.subprocess.Process` instance." @@ -135,11 +135,10 @@ msgid "" msgstr "" msgid "" -"asyncio also has the following *low-level* APIs to work with subprocesses: :" -"meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop." -"connect_read_pipe`, :meth:`loop.connect_write_pipe`, as well as the :ref:" -"`Subprocess Transports ` and :ref:`Subprocess " -"Protocols `." +"asyncio also has the following *low-level* APIs to work with " +"subprocesses: :meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop.connect_read_pipe`, :meth:`loop.connect_write_pipe`, " +"as well as the :ref:`Subprocess Transports ` " +"and :ref:`Subprocess Protocols `." msgstr "" msgid "Constants" @@ -149,16 +148,16 @@ msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters." msgstr "" msgid "" -"If *PIPE* is passed to *stdin* argument, the :attr:`Process.stdin ` attribute will point to a :class:`~asyncio." -"StreamWriter` instance." +"If *PIPE* is passed to *stdin* argument, the :attr:`Process.stdin " +"` attribute will point to " +"a :class:`~asyncio.StreamWriter` instance." msgstr "" msgid "" -"If *PIPE* is passed to *stdout* or *stderr* arguments, the :attr:`Process." -"stdout ` and :attr:`Process.stderr " -"` attributes will point to :class:" -"`~asyncio.StreamReader` instances." +"If *PIPE* is passed to *stdout* or *stderr* arguments, " +"the :attr:`Process.stdout ` " +"and :attr:`Process.stderr ` attributes " +"will point to :class:`~asyncio.StreamReader` instances." msgstr "" msgid "" @@ -168,8 +167,8 @@ msgstr "" msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " -"to process creation functions. It indicates that the special file :data:`os." -"devnull` will be used for the corresponding subprocess stream." +"to process creation functions. It indicates that the special " +"file :data:`os.devnull` will be used for the corresponding subprocess stream." msgstr "" msgid "Interacting with Subprocesses" @@ -183,25 +182,25 @@ msgid "" msgstr "" msgid "" -"An object that wraps OS processes created by the :func:`~asyncio." -"create_subprocess_exec` and :func:`~asyncio.create_subprocess_shell` " -"functions." +"An object that wraps OS processes created by " +"the :func:`~asyncio.create_subprocess_exec` " +"and :func:`~asyncio.create_subprocess_shell` functions." msgstr "" msgid "" -"This class is designed to have a similar API to the :class:`subprocess." -"Popen` class, but there are some notable differences:" +"This class is designed to have a similar API to " +"the :class:`subprocess.Popen` class, but there are some notable differences:" msgstr "" msgid "" -"unlike Popen, Process instances do not have an equivalent to the :meth:" -"`~subprocess.Popen.poll` method;" +"unlike Popen, Process instances do not have an equivalent to " +"the :meth:`~subprocess.Popen.poll` method;" msgstr "" msgid "" -"the :meth:`~asyncio.subprocess.Process.communicate` and :meth:`~asyncio." -"subprocess.Process.wait` methods don't have a *timeout* parameter: use the :" -"func:`~asyncio.wait_for` function;" +"the :meth:`~asyncio.subprocess.Process.communicate` " +"and :meth:`~asyncio.subprocess.Process.wait` methods don't have a *timeout* " +"parameter: use the :func:`~asyncio.wait_for` function;" msgstr "" msgid "" @@ -338,9 +337,9 @@ msgid "Process identification number (PID)." msgstr "" msgid "" -"Note that for processes created by the :func:`~asyncio." -"create_subprocess_shell` function, this attribute is the PID of the spawned " -"shell." +"Note that for processes created by " +"the :func:`~asyncio.create_subprocess_shell` function, this attribute is the " +"PID of the spawned shell." msgstr "" msgid "Return code of the process when it exits." diff --git a/library/asyncio-sync.po b/library/asyncio-sync.po index b2afd85..3111c6f 100644 --- a/library/asyncio-sync.po +++ b/library/asyncio-sync.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -146,8 +146,8 @@ msgid "" msgstr "" msgid "" -"An Event object manages an internal flag that can be set to *true* with the :" -"meth:`~Event.set` method and reset to *false* with the :meth:`clear` " +"An Event object manages an internal flag that can be set to *true* with " +"the :meth:`~Event.set` method and reset to *false* with the :meth:`clear` " "method. The :meth:`~Event.wait` method blocks until the flag is set to " "*true*. The flag is set to *false* initially." msgstr "" @@ -196,8 +196,8 @@ msgid "Clear (unset) the event." msgstr "" msgid "" -"Subsequent tasks awaiting on :meth:`~Event.wait` will now block until the :" -"meth:`~Event.set` method is called again." +"Subsequent tasks awaiting on :meth:`~Event.wait` will now block until " +"the :meth:`~Event.set` method is called again." msgstr "" msgid "Return ``True`` if the event is set." @@ -215,11 +215,11 @@ msgid "" msgstr "" msgid "" -"In essence, a Condition object combines the functionality of an :class:" -"`Event` and a :class:`Lock`. It is possible to have multiple Condition " -"objects share one Lock, which allows coordinating exclusive access to a " -"shared resource between different tasks interested in particular states of " -"that shared resource." +"In essence, a Condition object combines the functionality of " +"an :class:`Event` and a :class:`Lock`. It is possible to have multiple " +"Condition objects share one Lock, which allows coordinating exclusive access " +"to a shared resource between different tasks interested in particular states " +"of that shared resource." msgstr "" msgid "" @@ -288,8 +288,8 @@ msgid "Wait until notified." msgstr "" msgid "" -"If the calling task has not acquired the lock when this method is called, a :" -"exc:`RuntimeError` is raised." +"If the calling task has not acquired the lock when this method is called, " +"a :exc:`RuntimeError` is raised." msgstr "" msgid "" @@ -300,9 +300,9 @@ msgstr "" msgid "" "Note that a task *may* return from this call spuriously, which is why the " -"caller should always re-check the state and be prepared to :meth:`~Condition." -"wait` again. For this reason, you may prefer to use :meth:`~Condition." -"wait_for` instead." +"caller should always re-check the state and be prepared " +"to :meth:`~Condition.wait` again. For this reason, you may prefer to " +"use :meth:`~Condition.wait_for` instead." msgstr "" msgid "Wait until a predicate becomes *true*." @@ -321,16 +321,16 @@ msgid "A Semaphore object. Not thread-safe." msgstr "" msgid "" -"A semaphore manages an internal counter which is decremented by each :meth:" -"`acquire` call and incremented by each :meth:`release` call. The counter can " -"never go below zero; when :meth:`acquire` finds that it is zero, it blocks, " -"waiting until some task calls :meth:`release`." +"A semaphore manages an internal counter which is decremented by " +"each :meth:`acquire` call and incremented by each :meth:`release` call. The " +"counter can never go below zero; when :meth:`acquire` finds that it is zero, " +"it blocks, waiting until some task calls :meth:`release`." msgstr "" msgid "" "The optional *value* argument gives the initial value for the internal " -"counter (``1`` by default). If the given value is less than ``0`` a :exc:" -"`ValueError` is raised." +"counter (``1`` by default). If the given value is less than ``0`` " +"a :exc:`ValueError` is raised." msgstr "" msgid "" @@ -385,9 +385,9 @@ msgid "A bounded semaphore object. Not thread-safe." msgstr "" msgid "" -"Bounded Semaphore is a version of :class:`Semaphore` that raises a :exc:" -"`ValueError` in :meth:`~Semaphore.release` if it increases the internal " -"counter above the initial *value*." +"Bounded Semaphore is a version of :class:`Semaphore` that raises " +"a :exc:`ValueError` in :meth:`~Semaphore.release` if it increases the " +"internal counter above the initial *value*." msgstr "" msgid "Barrier" @@ -398,15 +398,15 @@ msgstr "" msgid "" "A barrier is a simple synchronization primitive that allows to block until " -"*parties* number of tasks are waiting on it. Tasks can wait on the :meth:" -"`~Barrier.wait` method and would be blocked until the specified number of " -"tasks end up waiting on :meth:`~Barrier.wait`. At that point all of the " -"waiting tasks would unblock simultaneously." +"*parties* number of tasks are waiting on it. Tasks can wait on " +"the :meth:`~Barrier.wait` method and would be blocked until the specified " +"number of tasks end up waiting on :meth:`~Barrier.wait`. At that point all " +"of the waiting tasks would unblock simultaneously." msgstr "" msgid "" -":keyword:`async with` can be used as an alternative to awaiting on :meth:" -"`~Barrier.wait`." +":keyword:`async with` can be used as an alternative to awaiting " +"on :meth:`~Barrier.wait`." msgstr "" msgid "The barrier can be reused any number of times." @@ -472,8 +472,8 @@ msgstr "" msgid "" "This method may raise a :class:`BrokenBarrierError` exception if the barrier " -"is broken or reset while a task is waiting. It could raise a :exc:" -"`CancelledError` if a task is cancelled." +"is broken or reset while a task is waiting. It could raise " +"a :exc:`CancelledError` if a task is cancelled." msgstr "" msgid "" @@ -503,12 +503,12 @@ msgid "A boolean that is ``True`` if the barrier is in the broken state." msgstr "" msgid "" -"This exception, a subclass of :exc:`RuntimeError`, is raised when the :class:" -"`Barrier` object is reset or broken." +"This exception, a subclass of :exc:`RuntimeError`, is raised when " +"the :class:`Barrier` object is reset or broken." msgstr "" msgid "" -"Acquiring a lock using ``await lock`` or ``yield from lock`` and/or :keyword:" -"`with` statement (``with await lock``, ``with (yield from lock)``) was " -"removed. Use ``async with lock`` instead." +"Acquiring a lock using ``await lock`` or ``yield from lock`` and/" +"or :keyword:`with` statement (``with await lock``, ``with (yield from " +"lock)``) was removed. Use ``async with lock`` instead." msgstr "" diff --git a/library/asyncio-task.po b/library/asyncio-task.po index 3cd13bb..9d3a234 100644 --- a/library/asyncio-task.po +++ b/library/asyncio-task.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-09 14:27+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -148,8 +148,8 @@ msgid "" msgstr "" msgid "" -"The :class:`asyncio.TaskGroup` class provides a more modern alternative to :" -"func:`create_task`. Using this API, the last example becomes::" +"The :class:`asyncio.TaskGroup` class provides a more modern alternative " +"to :func:`create_task`. Using this API, the last example becomes::" msgstr "" msgid "" @@ -178,8 +178,8 @@ msgid "Awaitables" msgstr "" msgid "" -"We say that an object is an **awaitable** object if it can be used in an :" -"keyword:`await` expression. Many asyncio APIs are designed to accept " +"We say that an object is an **awaitable** object if it can be used in " +"an :keyword:`await` expression. Many asyncio APIs are designed to accept " "awaitables." msgstr "" @@ -230,8 +230,9 @@ msgid "*Tasks* are used to schedule coroutines *concurrently*." msgstr "" msgid "" -"When a coroutine is wrapped into a *Task* with functions like :func:`asyncio." -"create_task` the coroutine is automatically scheduled to run soon::" +"When a coroutine is wrapped into a *Task* with functions " +"like :func:`asyncio.create_task` the coroutine is automatically scheduled to " +"run soon::" msgstr "" msgid "" @@ -292,8 +293,8 @@ msgid "" msgstr "" msgid "" -"A good example of a low-level function that returns a Future object is :meth:" -"`loop.run_in_executor`." +"A good example of a low-level function that returns a Future object " +"is :meth:`loop.run_in_executor`." msgstr "" msgid "Creating tasks" @@ -314,21 +315,22 @@ msgid "" msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the *coro* to run in. The current context " -"copy is created when no *context* is provided." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the *coro* to run in. The current " +"context copy is created when no *context* is provided." msgstr "" msgid "" "An optional keyword-only *eager_start* argument allows specifying if the " "task should execute eagerly during the call to create_task, or be scheduled " -"later. If *eager_start* is not passed the mode set by :meth:`loop." -"set_task_factory` will be used." +"later. If *eager_start* is not passed the mode set " +"by :meth:`loop.set_task_factory` will be used." msgstr "" msgid "" -"The task is executed in the loop returned by :func:`get_running_loop`, :exc:" -"`RuntimeError` is raised if there is no running loop in current thread." +"The task is executed in the loop returned " +"by :func:`get_running_loop`, :exc:`RuntimeError` is raised if there is no " +"running loop in current thread." msgstr "" msgid "" @@ -363,8 +365,8 @@ msgstr "" msgid "" "Note that this approach never awaits the tasks, so if a task fails, its " "exception is never retrieved and asyncio logs a \"Task exception was never " -"retrieved\" message when the task is garbage collected. To avoid this, use :" -"class:`asyncio.TaskGroup` which keeps a strong reference to each task, " +"retrieved\" message when the task is garbage collected. To avoid this, " +"use :class:`asyncio.TaskGroup` which keeps a strong reference to each task, " "awaits them and propagates their exceptions::" msgstr "" @@ -387,26 +389,28 @@ msgid "Task cancellation" msgstr "" msgid "" -"Tasks can easily and safely be cancelled. When a task is cancelled, :exc:" -"`asyncio.CancelledError` will be raised in the task at the next opportunity." +"Tasks can easily and safely be cancelled. When a task is " +"cancelled, :exc:`asyncio.CancelledError` will be raised in the task at the " +"next opportunity." msgstr "" msgid "" "It is recommended that coroutines use ``try/finally`` blocks to robustly " "perform clean-up logic. In case :exc:`asyncio.CancelledError` is explicitly " -"caught, it should generally be propagated when clean-up is complete. :exc:" -"`asyncio.CancelledError` directly subclasses :exc:`BaseException` so most " -"code will not need to be aware of it." +"caught, it should generally be propagated when clean-up is " +"complete. :exc:`asyncio.CancelledError` directly " +"subclasses :exc:`BaseException` so most code will not need to be aware of it." msgstr "" msgid "" -"The asyncio components that enable structured concurrency, like :class:" -"`asyncio.TaskGroup` and :func:`asyncio.timeout`, are implemented using " -"cancellation internally and might misbehave if a coroutine swallows :exc:" -"`asyncio.CancelledError`. Similarly, user code should not generally call :" -"meth:`uncancel `. However, in cases when suppressing :" -"exc:`asyncio.CancelledError` is truly desired, it is necessary to also call " -"``uncancel()`` to completely remove the cancellation state." +"The asyncio components that enable structured concurrency, " +"like :class:`asyncio.TaskGroup` and :func:`asyncio.timeout`, are implemented " +"using cancellation internally and might misbehave if a coroutine " +"swallows :exc:`asyncio.CancelledError`. Similarly, user code should not " +"generally call :meth:`uncancel `. However, in cases " +"when suppressing :exc:`asyncio.CancelledError` is truly desired, it is " +"necessary to also call ``uncancel()`` to completely remove the cancellation " +"state." msgstr "" msgid "Task groups" @@ -424,10 +428,10 @@ msgid "" msgstr "" msgid "" -"Create a task in this task group. The signature matches that of :func:" -"`asyncio.create_task`. If the task group is inactive (e.g. not yet entered, " -"already finished, or in the process of shutting down), we will close the " -"given ``coro``." +"Create a task in this task group. The signature matches that " +"of :func:`asyncio.create_task`. If the task group is inactive (e.g. not yet " +"entered, already finished, or in the process of shutting down), we will " +"close the given ``coro`` and raise :exc:`RuntimeError`." msgstr "" msgid "Close the given coroutine if the task group is not active." @@ -485,8 +489,8 @@ msgid "" " async with asyncio.TaskGroup() as tg:\n" " task1 = tg.create_task(some_coro(...))\n" " task2 = tg.create_task(another_coro(...))\n" -" print(f\"Both tasks have completed now: {task1.result()}, {task2." -"result()}\")" +" print(f\"Both tasks have completed now: {task1.result()}, " +"{task2.result()}\")" msgstr "" msgid "" @@ -503,11 +507,11 @@ msgid "" "The first time any of the tasks belonging to the group fails with an " "exception other than :exc:`asyncio.CancelledError`, the remaining tasks in " "the group are cancelled. No further tasks can then be added to the group. At " -"this point, if the body of the ``async with`` statement is still active (i." -"e., :meth:`~object.__aexit__` hasn't been called yet), the task directly " -"containing the ``async with`` statement is also cancelled. The resulting :" -"exc:`asyncio.CancelledError` will interrupt an ``await``, but it will not " -"bubble out of the containing ``async with`` statement." +"this point, if the body of the ``async with`` statement is still active " +"(i.e., :meth:`~object.__aexit__` hasn't been called yet), the task directly " +"containing the ``async with`` statement is also cancelled. The " +"resulting :exc:`asyncio.CancelledError` will interrupt an ``await``, but it " +"will not bubble out of the containing ``async with`` statement." msgstr "" msgid "" @@ -518,25 +522,26 @@ msgid "" msgstr "" msgid "" -"Two base exceptions are treated specially: If any task fails with :exc:" -"`KeyboardInterrupt` or :exc:`SystemExit`, the task group still cancels the " -"remaining tasks and waits for them, but then the initial :exc:" -"`KeyboardInterrupt` or :exc:`SystemExit` is re-raised instead of :exc:" -"`ExceptionGroup` or :exc:`BaseExceptionGroup`." +"Two base exceptions are treated specially: If any task fails " +"with :exc:`KeyboardInterrupt` or :exc:`SystemExit`, the task group still " +"cancels the remaining tasks and waits for them, but then the " +"initial :exc:`KeyboardInterrupt` or :exc:`SystemExit` is re-raised instead " +"of :exc:`ExceptionGroup` or :exc:`BaseExceptionGroup`." msgstr "" msgid "" -"If the body of the ``async with`` statement exits with an exception (so :" -"meth:`~object.__aexit__` is called with an exception set), this is treated " -"the same as if one of the tasks failed: the remaining tasks are cancelled " -"and then waited for, and non-cancellation exceptions are grouped into an " -"exception group and raised. The exception passed into :meth:`~object." -"__aexit__`, unless it is :exc:`asyncio.CancelledError`, is also included in " -"the exception group. The same special case is made for :exc:" -"`KeyboardInterrupt` and :exc:`SystemExit` as in the previous paragraph. " -"There is an additional special case made only for the body of the ``async " -"with``: if it raises :exc:`GeneratorExit` and none of the other tasks raise " -"exceptions that would be reported, then the :exc:`GeneratorExit` is reraised." +"If the body of the ``async with`` statement exits with an exception " +"(so :meth:`~object.__aexit__` is called with an exception set), this is " +"treated the same as if one of the tasks failed: the remaining tasks are " +"cancelled and then waited for, and non-cancellation exceptions are grouped " +"into an exception group and raised. The exception passed " +"into :meth:`~object.__aexit__`, unless it is :exc:`asyncio.CancelledError`, " +"is also included in the exception group. The same special case is made " +"for :exc:`KeyboardInterrupt` and :exc:`SystemExit` as in the previous " +"paragraph. There is an additional special case made only for the body of the " +"``async with``: if it raises :exc:`GeneratorExit` and none of the other " +"tasks raise exceptions that would be reported, then the :exc:`GeneratorExit` " +"is reraised." msgstr "" msgid "" @@ -551,14 +556,15 @@ msgstr "" msgid "" "In the case where a task group is cancelled externally and also must raise " -"an :exc:`ExceptionGroup`, it will call the parent task's :meth:`~asyncio." -"Task.cancel` method. This ensures that a :exc:`asyncio.CancelledError` will " -"be raised at the next :keyword:`await`, so the cancellation is not lost." +"an :exc:`ExceptionGroup`, it will call the parent " +"task's :meth:`~asyncio.Task.cancel` method. This ensures that " +"a :exc:`asyncio.CancelledError` will be raised at the next :keyword:`await`, " +"so the cancellation is not lost." msgstr "" msgid "" -"Task groups preserve the cancellation count reported by :meth:`asyncio.Task." -"cancelling`." +"Task groups preserve the cancellation count reported " +"by :meth:`asyncio.Task.cancelling`." msgstr "" msgid "" @@ -732,12 +738,12 @@ msgid "A task factory for eager task execution." msgstr "" msgid "" -"When using this factory (via :meth:`loop.set_task_factory(asyncio." -"eager_task_factory) `), coroutines begin execution " -"synchronously during :class:`Task` construction. Tasks are only scheduled on " -"the event loop if they block. This can be a performance improvement as the " -"overhead of loop scheduling is avoided for coroutines that complete " -"synchronously." +"When using this factory " +"(via :meth:`loop.set_task_factory(asyncio.eager_task_factory) " +"`), coroutines begin execution synchronously " +"during :class:`Task` construction. Tasks are only scheduled on the event " +"loop if they block. This can be a performance improvement as the overhead of " +"loop scheduling is avoided for coroutines that complete synchronously." msgstr "" msgid "" @@ -761,22 +767,22 @@ msgstr "" msgid "" "*custom_task_constructor* must be a *callable* with the signature matching " -"the signature of :class:`Task.__init__ `. The callable must return a :" -"class:`asyncio.Task`-compatible object." +"the signature of :class:`Task.__init__ `. The callable must return " +"a :class:`asyncio.Task`-compatible object." msgstr "" msgid "" "This function returns a *callable* intended to be used as a task factory of " -"an event loop via :meth:`loop.set_task_factory(factory) `)." +"an event loop via :meth:`loop.set_task_factory(factory) " +"`)." msgstr "" msgid "Shielding from cancellation" msgstr "" msgid "" -"Protect an :ref:`awaitable object ` from being :meth:" -"`cancelled `." +"Protect an :ref:`awaitable object ` from " +"being :meth:`cancelled `." msgstr "" msgid "If *aw* is a coroutine it is automatically scheduled as a Task." @@ -800,8 +806,8 @@ msgid "" "*except* that if the coroutine containing it is cancelled, the Task running " "in ``something()`` is not cancelled. From the point of view of " "``something()``, the cancellation did not happen. Although its caller is " -"still cancelled, so the \"await\" expression still raises a :exc:" -"`CancelledError`." +"still cancelled, so the \"await\" expression still raises " +"a :exc:`CancelledError`." msgstr "" msgid "" @@ -850,8 +856,8 @@ msgid "" msgstr "" msgid "" -"In either case, the context manager can be rescheduled after creation using :" -"meth:`Timeout.reschedule`." +"In either case, the context manager can be rescheduled after creation " +"using :meth:`Timeout.reschedule`." msgstr "" msgid "" @@ -862,15 +868,15 @@ msgstr "" msgid "" "If ``long_running_task`` takes more than 10 seconds to complete, the context " -"manager will cancel the current task and handle the resulting :exc:`asyncio." -"CancelledError` internally, transforming it into a :exc:`TimeoutError` which " -"can be caught and handled." +"manager will cancel the current task and handle the " +"resulting :exc:`asyncio.CancelledError` internally, transforming it into " +"a :exc:`TimeoutError` which can be caught and handled." msgstr "" msgid "" -"The :func:`asyncio.timeout` context manager is what transforms the :exc:" -"`asyncio.CancelledError` into a :exc:`TimeoutError`, which means the :exc:" -"`TimeoutError` can only be caught *outside* of the context manager." +"The :func:`asyncio.timeout` context manager is what transforms " +"the :exc:`asyncio.CancelledError` into a :exc:`TimeoutError`, which means " +"the :exc:`TimeoutError` can only be caught *outside* of the context manager." msgstr "" msgid "Example of catching :exc:`TimeoutError`::" @@ -973,13 +979,10 @@ msgid "" "for. If *timeout* is ``None``, block until the future completes." msgstr "" -msgid "" -"If a timeout occurs, it cancels the task and raises :exc:`TimeoutError`." +msgid "If a timeout occurs, it cancels *aw* and raises :exc:`TimeoutError`." msgstr "" -msgid "" -"To avoid the task :meth:`cancellation `, wrap it in :func:" -"`shield`." +msgid "To prevent *aw* from being cancelled, wrap it in :func:`shield`." msgstr "" msgid "" @@ -1019,6 +1022,11 @@ msgstr "" msgid "Raises :exc:`TimeoutError` instead of :exc:`asyncio.TimeoutError`." msgstr "" +msgid "" +"Implemented using :func:`asyncio.timeout`, a coroutine passed as *aw* is no " +"longer wrapped in a :class:`Task` when *timeout* is positive." +msgstr "" + msgid "Waiting primitives" msgstr "" @@ -1067,8 +1075,8 @@ msgstr "" msgid "" "The function will return when any future finishes by raising an exception. " -"If no future raises an exception then it is equivalent to :const:" -"`ALL_COMPLETED`." +"If no future raises an exception then it is equivalent " +"to :const:`ALL_COMPLETED`." msgstr "" msgid "The function will return when all futures finish or are cancelled." @@ -1097,11 +1105,11 @@ msgid "" msgstr "" msgid "" -"The object returned by ``as_completed()`` can be iterated as an :term:" -"`asynchronous iterator` or a plain :term:`iterator`. When asynchronous " -"iteration is used, the originally-supplied awaitables are yielded if they " -"are tasks or futures. This makes it easy to correlate previously-scheduled " -"tasks with their results. Example::" +"The object returned by ``as_completed()`` can be iterated as " +"an :term:`asynchronous iterator` or a plain :term:`iterator`. When " +"asynchronous iteration is used, the originally-supplied awaitables are " +"yielded if they are tasks or futures. This makes it easy to correlate " +"previously-scheduled tasks with their results. Example::" msgstr "" msgid "" @@ -1394,20 +1402,20 @@ msgstr "" msgid "" ":meth:`cancelled` can be used to check if the Task was cancelled. The method " -"returns ``True`` if the wrapped coroutine did not suppress the :exc:" -"`CancelledError` exception and was actually cancelled." +"returns ``True`` if the wrapped coroutine did not suppress " +"the :exc:`CancelledError` exception and was actually cancelled." msgstr "" msgid "" -":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :" -"meth:`Future.set_result` and :meth:`Future.set_exception`." +":class:`asyncio.Task` inherits from :class:`Future` all of its APIs " +"except :meth:`Future.set_result` and :meth:`Future.set_exception`." msgstr "" msgid "" -"An optional keyword-only *context* argument allows specifying a custom :" -"class:`contextvars.Context` for the *coro* to run in. If no *context* is " -"provided, the Task copies the current context and later runs its coroutine " -"in the copied context." +"An optional keyword-only *context* argument allows specifying a " +"custom :class:`contextvars.Context` for the *coro* to run in. If no " +"*context* is provided, the Task copies the current context and later runs " +"its coroutine in the copied context." msgstr "" msgid "" @@ -1457,8 +1465,8 @@ msgid "" msgstr "" msgid "" -"If the Task's result isn't yet available, this method raises an :exc:" -"`InvalidStateError` exception." +"If the Task's result isn't yet available, this method raises " +"an :exc:`InvalidStateError` exception." msgstr "" msgid "Return the exception of the Task." @@ -1563,8 +1571,8 @@ msgid "" msgstr "" msgid "" -"In the default Task implementation, the name will be visible in the :func:" -"`repr` output of a task object." +"In the default Task implementation, the name will be visible in " +"the :func:`repr` output of a task object." msgstr "" msgid "Request the Task to be cancelled." @@ -1583,12 +1591,12 @@ msgstr "" msgid "" "The coroutine then has a chance to clean up or even deny the request by " "suppressing the exception with a :keyword:`try` ... ... ``except " -"CancelledError`` ... :keyword:`finally` block. Therefore, unlike :meth:" -"`Future.cancel`, :meth:`Task.cancel` does not guarantee that the Task will " -"be cancelled, although suppressing cancellation completely is not common and " -"is actively discouraged. Should the coroutine nevertheless decide to " -"suppress the cancellation, it needs to call :meth:`Task.uncancel` in " -"addition to catching the exception." +"CancelledError`` ... :keyword:`finally` block. Therefore, " +"unlike :meth:`Future.cancel`, :meth:`Task.cancel` does not guarantee that " +"the Task will be cancelled, although suppressing cancellation completely is " +"not common and is actively discouraged. Should the coroutine nevertheless " +"decide to suppress the cancellation, it needs to call :meth:`Task.uncancel` " +"in addition to catching the exception." msgstr "" msgid "" @@ -1648,9 +1656,9 @@ msgid "Return ``True`` if the Task is *cancelled*." msgstr "" msgid "" -"The Task is *cancelled* when the cancellation was requested with :meth:" -"`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` " -"exception thrown into it." +"The Task is *cancelled* when the cancellation was requested " +"with :meth:`cancel` and the wrapped coroutine propagated " +"the :exc:`CancelledError` exception thrown into it." msgstr "" msgid "Decrement the count of cancellation requests to this Task." @@ -1660,16 +1668,16 @@ msgid "Returns the remaining number of cancellation requests." msgstr "" msgid "" -"Note that once execution of a cancelled task completed, further calls to :" -"meth:`uncancel` are ineffective." +"Note that once execution of a cancelled task completed, further calls " +"to :meth:`uncancel` are ineffective." msgstr "" msgid "" "This method is used by asyncio's internals and isn't expected to be used by " "end-user code. In particular, if a Task gets successfully uncancelled, this " -"allows for elements of structured concurrency like :ref:`taskgroups` and :" -"func:`asyncio.timeout` to continue running, isolating cancellation to the " -"respective structured block. For example::" +"allows for elements of structured concurrency like :ref:`taskgroups` " +"and :func:`asyncio.timeout` to continue running, isolating cancellation to " +"the respective structured block. For example::" msgstr "" msgid "" @@ -1688,22 +1696,22 @@ msgstr "" msgid "" "While the block with ``make_request()`` and ``make_another_request()`` might " "get cancelled due to the timeout, ``unrelated_code()`` should continue " -"running even in case of the timeout. This is implemented with :meth:" -"`uncancel`. :class:`TaskGroup` context managers use :func:`uncancel` in a " -"similar fashion." +"running even in case of the timeout. This is implemented " +"with :meth:`uncancel`. :class:`TaskGroup` context managers " +"use :func:`uncancel` in a similar fashion." msgstr "" msgid "" -"If end-user code is, for some reason, suppressing cancellation by catching :" -"exc:`CancelledError`, it needs to call this method to remove the " +"If end-user code is, for some reason, suppressing cancellation by " +"catching :exc:`CancelledError`, it needs to call this method to remove the " "cancellation state." msgstr "" msgid "" "When this method decrements the cancellation count to zero, the method " -"checks if a previous :meth:`cancel` call had arranged for :exc:" -"`CancelledError` to be thrown into the task. If it hasn't been thrown yet, " -"that arrangement will be rescinded (by resetting the internal " +"checks if a previous :meth:`cancel` call had arranged " +"for :exc:`CancelledError` to be thrown into the task. If it hasn't been " +"thrown yet, that arrangement will be rescinded (by resetting the internal " "``_must_cancel`` flag)." msgstr "" diff --git a/library/asyncio-threading.po b/library/asyncio-threading.po deleted file mode 100644 index 0dec74c..0000000 --- a/library/asyncio-threading.po +++ /dev/null @@ -1,190 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-06-11 17:36+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "asyncio and free-threaded Python" -msgstr "" - -msgid "" -"asyncio uses an event loop as a scheduler to enable highly efficient " -"concurrency by switching between tasks to allow non-blocking I/O operations. " -"This results in better performance for I/O-bound use cases. It also allows " -"off-loading CPU-bound work to a thread or process pool, but that is still " -"limited by the :term:`global interpreter lock` in CPython." -msgstr "" - -msgid "" -"However, in :ref:`free-threaded Python `, the " -"GIL is disabled and Python can run true multi-threaded code. This means that " -"asyncio can now take advantage of multiple CPU cores without the limitations " -"imposed by the GIL." -msgstr "" - -msgid "" -"Since Python 3.14, asyncio has first-class support for free-threaded Python, " -"and the implementation of asyncio is safe to use in a multi-threaded " -"environment." -msgstr "" - -msgid "" -"A single event loop on one core can handle many connections concurrently, " -"but the Python code that runs to handle each one still executes serially. " -"Once requests involve a non-trivial amount of per-request computation, that " -"handling becomes the bottleneck, and a single core can no longer keep up. " -"Combining asyncio with threads is most useful here: by running an event loop " -"per thread, the handling of different requests can run in parallel across " -"multiple CPU cores. It is also useful when you need to run blocking or CPU-" -"bound code from an asyncio application." -msgstr "" - -msgid "" -"`Scaling asyncio on Free-Threaded Python `__, a blog post by Kumar Aditya " -"which explains the internal changes that make asyncio safe and efficient " -"under free-threaded Python, together with benchmarks of the resulting " -"improvements." -msgstr "" - -msgid "Thread safety considerations" -msgstr "" - -msgid "" -"While asyncio is designed to be thread-safe in a free-threaded Python " -"environment, there are still some considerations to keep in mind when using " -"asyncio with threads:" -msgstr "" - -msgid "" -"**Event loop**: Each thread should have its own event loop which should not " -"be shared across threads. This ensures that the event loop can manage its " -"own tasks and callbacks without interference from other threads." -msgstr "" - -msgid "" -"**Task management**: Tasks and futures created in one thread should not be " -"awaited or manipulated from another thread." -msgstr "" - -msgid "" -"**Thread-safe APIs**: When interacting with asyncio from multiple threads, " -"it's important to use thread-safe APIs provided by asyncio, such as :func:" -"`asyncio.run_coroutine_threadsafe` for submitting coroutines to an event " -"loop from another thread. If you need to call a callback from a different " -"thread, you can use :meth:`loop.call_soon_threadsafe` to schedule it safely." -msgstr "" - -msgid "" -"**Synchronization**: The synchronization primitives provided by asyncio " -"(like :class:`asyncio.Lock` and :class:`asyncio.Event`) are not designed to " -"be used across threads. If you need to synchronize between threads, you " -"should use the synchronization primitives from the :mod:`threading` module " -"instead." -msgstr "" - -msgid "Using asyncio with threads" -msgstr "" - -msgid "" -"asyncio supports running one event loop per thread, which allows you to take " -"advantage of multiple CPU cores in a free-threaded Python environment. Each " -"thread can run its own event loop, and tasks can be scheduled on those loops " -"independently." -msgstr "" - -msgid "Here's an example of how to use asyncio with threads::" -msgstr "" - -msgid "" -"import asyncio\n" -"import threading\n" -"\n" -"async def worker(name: str) -> None:\n" -" print(f\"Worker {name} starting\")\n" -" await asyncio.sleep(1)\n" -" print(f\"Worker {name} done\")\n" -"\n" -"def run_loop(name: str) -> None:\n" -" asyncio.run(worker(name))\n" -"\n" -"threads = [\n" -" threading.Thread(target=run_loop, args=(f\"T{i}\",))\n" -" for i in range(4)\n" -"]\n" -"for t in threads:\n" -" t.start()\n" -"for t in threads:\n" -" t.join()" -msgstr "" - -msgid "" -"In this example, each thread creates its own event loop with :func:`asyncio." -"run` and runs a coroutine on it. The threads execute concurrently, and in a " -"free-threaded build they can run on separate CPU cores in parallel." -msgstr "" - -msgid "Producer/consumer across threads" -msgstr "" - -msgid "" -"When a regular (non-asyncio) thread needs to hand work to an asyncio event " -"loop running in another thread, use a thread-safe primitive such as :class:" -"`queue.Queue` rather than :class:`asyncio.Queue`, which is only safe within " -"a single event loop.::" -msgstr "" - -msgid "" -"import asyncio\n" -"import queue\n" -"import threading\n" -"\n" -"def producer(q: queue.Queue[int]) -> None:\n" -" for i in range(5):\n" -" print(f\"Producing {i}\")\n" -" q.put(i)\n" -" q.shutdown()\n" -"\n" -"async def consumer(q: queue.Queue[int]) -> None:\n" -" while True:\n" -" try:\n" -" item = q.get_nowait()\n" -" except queue.Empty:\n" -" await asyncio.sleep(0.1)\n" -" continue\n" -" except queue.ShutDown:\n" -" break\n" -" print(f\"Consumed {item}\")\n" -" await asyncio.sleep(item)\n" -"\n" -"q: queue.Queue[int] = queue.Queue()\n" -"consumer_thread = threading.Thread(\n" -" target=lambda: asyncio.run(consumer(q))\n" -")\n" -"consumer_thread.start()\n" -"producer(q)\n" -"consumer_thread.join()" -msgstr "" - -msgid "" -"The producer runs on the main thread while the consumer runs inside an event " -"loop on its own thread, yet they communicate safely through ``queue.Queue``. " -"When the queue is empty the consumer sleeps briefly and tries again. When " -"the producer is done it calls :meth:`~queue.Queue.shutdown`, which causes " -"subsequent :meth:`~queue.Queue.get_nowait` calls to raise :exc:`queue." -"ShutDown` so the consumer can exit cleanly." -msgstr "" diff --git a/library/asyncio-tools.po b/library/asyncio-tools.po deleted file mode 100644 index 16a461a..0000000 --- a/library/asyncio-tools.po +++ /dev/null @@ -1,207 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-07-11 14:48+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Command-line introspection tools" -msgstr "" - -msgid "**Source code:** :source:`Lib/asyncio/tools.py`" -msgstr "" - -msgid "" -"The :mod:`!asyncio` module can be invoked as a script via ``python -m " -"asyncio`` to inspect the task graph of another running Python process " -"without modifying it or restarting it. The :mod:`!asyncio.tools` submodule " -"implements this interface." -msgstr "" - -msgid "The following commands inspect the process identified by ``PID``:" -msgstr "" - -msgid "" -"$ python -m asyncio pstree [--retries N] PID\n" -"$ python -m asyncio ps [--retries N] PID" -msgstr "" - -msgid "" -"The commands read the target process state without executing any code in it. " -"They are only available on supported platforms and may require permission to " -"inspect another process. See the :ref:`permission requirements ` for details." -msgstr "" - -msgid ":ref:`asyncio-graph`" -msgstr "" - -msgid "" -"Programmatic APIs for inspecting the async call graph of a task or future in " -"the current process." -msgstr "" - -msgid "" -"The command examples below use this program, which creates a task hierarchy " -"suitable for inspection and prints its process ID:" -msgstr "" - -msgid "example.py" -msgstr "" - -msgid "" -"import asyncio\n" -"import os\n" -"\n" -"async def play(track):\n" -" await asyncio.sleep(3600)\n" -" print(f\"🎵 Finished: {track}\")\n" -"\n" -"async def album(name, tracks):\n" -" async with asyncio.TaskGroup() as tg:\n" -" for track in tracks:\n" -" tg.create_task(play(track), name=track)\n" -"\n" -"async def main():\n" -" print(f\"PID: {os.getpid()}\")\n" -" async with asyncio.TaskGroup() as tg:\n" -" tg.create_task(\n" -" album(\"Sundowning\", [\"TNDNBTG\", \"Levitate\"]),\n" -" name=\"Sundowning\",\n" -" )\n" -" tg.create_task(\n" -" album(\"TMBTE\", [\"DYWTYLM\", \"Aqua Regia\"]),\n" -" name=\"TMBTE\",\n" -" )\n" -"\n" -"asyncio.run(main())" -msgstr "" - -msgid "Run the program in one terminal and leave it running:" -msgstr "" - -msgid "" -"$ python example.py\n" -"PID: 12345" -msgstr "" - -msgid "" -"Then pass the printed process ID to the commands from another terminal. " -"Thread IDs, task IDs, file paths, and line numbers vary between runs and " -"source layouts." -msgstr "" - -msgid "Command-line options" -msgstr "" - -msgid "" -"Display task and coroutine relationships as a tree. Each task is shown with " -"its full coroutine stack, nested under the task (if any) that is awaiting " -"it. This subcommand is useful for quickly identifying which branch of a " -"task hierarchy is blocked and where in its coroutine stack execution has " -"paused:" -msgstr "" - -msgid "" -"$ python -m asyncio pstree 12345\n" -"└── (T) Task-1\n" -" └── main example.py:12\n" -" └── TaskGroup.__aexit__ Lib/asyncio/taskgroups.py:75\n" -" └── TaskGroup._aexit Lib/asyncio/taskgroups.py:124\n" -" ├── (T) Sundowning\n" -" │ └── album example.py:7\n" -" │ └── TaskGroup.__aexit__ Lib/asyncio/taskgroups." -"py:75\n" -" │ └── TaskGroup._aexit Lib/asyncio/taskgroups." -"py:124\n" -" │ ├── (T) TNDNBTG\n" -" │ │ └── play example.py:4\n" -" │ │ └── sleep Lib/asyncio/tasks.py:702\n" -" │ └── (T) Levitate\n" -" │ └── play example.py:4\n" -" │ └── sleep Lib/asyncio/tasks.py:702\n" -" └── (T) TMBTE\n" -" └── album example.py:7\n" -" └── TaskGroup.__aexit__ Lib/asyncio/taskgroups." -"py:75\n" -" └── TaskGroup._aexit Lib/asyncio/taskgroups." -"py:124\n" -" ├── (T) DYWTYLM\n" -" │ └── play example.py:4\n" -" │ └── sleep Lib/asyncio/tasks.py:702\n" -" └── (T) Aqua Regia\n" -" └── play example.py:4\n" -" └── sleep Lib/asyncio/tasks.py:702" -msgstr "" - -msgid "" -"If the await graph contains a cycle, ``pstree`` reports an error instead of " -"printing a tree. A cycle in the await graph is unusual and typically " -"indicates a programming error:" -msgstr "" - -msgid "" -"$ python -m asyncio pstree 12345\n" -"ERROR: await-graph contains cycles - cannot print a tree!\n" -"\n" -"cycle: Task-2 → Task-3 → Task-2" -msgstr "" - -msgid "" -"Display a flat table of all pending tasks in the process *PID*. Each row " -"shows the event-loop thread ID, task ID and name, coroutine stack, and the " -"awaiting task's stack, name, and ID, if any." -msgstr "" - -msgid "" -"This subcommand prints all tasks regardless of whether the await graph " -"contains cycles:" -msgstr "" - -msgid "" -"$ python -m asyncio ps 12345\n" -"tid task id task name coroutine " -"stack awaiter " -"chain awaiter name awaiter id\n" -"------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n" -"18445801 0x10a456060 Task-1 TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> " -"main " -"0x0\n" -"18445801 0x10a439f60 Sundowning TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> album TaskGroup._aexit -> TaskGroup.__aexit__ -> " -"main Task-1 0x10a456060\n" -"18445801 0x10a439d70 TMBTE TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> album TaskGroup._aexit -> TaskGroup.__aexit__ -> " -"main Task-1 0x10a456060\n" -"18445801 0x10a2a3a80 TNDNBTG sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album Sundowning 0x10a439f60\n" -"18445801 0x10a2a38a0 Levitate sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album Sundowning 0x10a439f60\n" -"18445801 0x10a2d7150 DYWTYLM sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album TMBTE 0x10a439d70\n" -"18445801 0x10a6bdaa0 Aqua Regia sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album TMBTE 0x10a439d70" -msgstr "" - -msgid "" -"Retry failed attempts to inspect the target process up to *N* times. This " -"can help when the target process changes while its state is being read." -msgstr "" diff --git a/library/asyncio.po b/library/asyncio.po index 4557723..4dc07ba 100644 --- a/library/asyncio.po +++ b/library/asyncio.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -112,9 +112,9 @@ msgstr "" msgid "" "create and manage :ref:`event loops `, which provide " -"asynchronous APIs for :ref:`networking `, running :ref:" -"`subprocesses `, handling :ref:`OS signals " -"`, etc;" +"asynchronous APIs for :ref:`networking `, " +"running :ref:`subprocesses `, handling :ref:`OS " +"signals `, etc;" msgstr "" msgid "" @@ -139,8 +139,8 @@ msgid "asyncio REPL" msgstr "" msgid "" -"You can experiment with an ``asyncio`` concurrent context in the :term:" -"`REPL`:" +"You can experiment with an ``asyncio`` concurrent context in " +"the :term:`REPL`:" msgstr "" msgid "" diff --git a/library/asyncore.po b/library/asyncore.po index 4dfcd65..871edd9 100644 --- a/library/asyncore.po +++ b/library/asyncore.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!asyncore` --- Asynchronous socket handler" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.12 ` after being deprecated in " -"Python 3.6. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.12 ` after being " +"deprecated in Python 3.6. The removal was decided in :pep:`594`." msgstr "" msgid "Applications should use the :mod:`asyncio` module instead." diff --git a/library/atexit.po b/library/atexit.po index 0702bc4..ea716f3 100644 --- a/library/atexit.po +++ b/library/atexit.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,76 +22,84 @@ msgid ":mod:`!atexit` --- Exit handlers" msgstr "" msgid "" -"The :mod:`!atexit` module defines functions to register and unregister " -"cleanup functions. Functions thus registered are automatically executed " -"upon normal interpreter termination. :mod:`!atexit` runs these functions in " -"the *reverse* order in which they were registered; if you register ``A``, " -"``B``, and ``C``, at interpreter termination time they will be run in the " -"order ``C``, ``B``, ``A``." +"The :mod:`!atexit` module defines functions to register and " +"unregister :dfn:`exit handlers`: functions that are automatically executed " +"\"at exit\", that is, upon normal program termination (for instance, " +"if :func:`sys.exit` is called or the main module's execution completes) or, " +"more generally, upon :term:`interpreter shutdown`." msgstr "" msgid "" -"**Note:** The functions registered via this module are not called when the " -"program is killed by a signal not handled by Python, when a Python fatal " -"internal error is detected, or when :func:`os._exit` is called." +"At exit, all registered exit handlers are called in the *reverse* order in " +"which they were registered. If you register ``A``, ``B``, and ``C``, at " +"interpreter shutdown time they will be run in the order ``C``, ``B``, ``A``. " +"The assumption is that lower level modules will normally be imported before " +"higher level modules and thus must be cleaned up later." msgstr "" msgid "" -"**Note:** The effect of registering or unregistering functions from within a " -"cleanup function is undefined." +"If an exception is raised during execution of an exit handler, a traceback " +"is printed (unless :exc:`SystemExit` is raised) and the exception " +"information is saved. After all exit handlers have had a chance to run, the " +"last exception to be raised is re-raised." msgstr "" msgid "" -"When used with C-API subinterpreters, registered functions are local to the " -"interpreter they were registered in." +"In programs that use multiple interpreters, each interpreter has its own " +"stack of exit handlers, which are executed when the interpreter shuts down " +"(for example, with :meth:`concurrent.interpreters.Interpreter.close` or the " +"C API :c:func:`Py_EndInterpreter`). Registration functions in this module " +"only affect the interpreter they are called from." msgstr "" msgid "" -"Register *func* as a function to be executed at termination. Any optional " -"arguments that are to be passed to *func* must be passed as arguments to :" -"func:`register`. It is possible to register the same function and arguments " -"more than once." +"**Note:** Exit handlers are not called when the program is killed by a " +"signal not handled by Python, when a Python fatal internal error is " +"detected, or when :func:`os._exit` is called." msgstr "" msgid "" -"At normal program termination (for instance, if :func:`sys.exit` is called " -"or the main module's execution completes), all functions registered are " -"called in last in, first out order. The assumption is that lower level " -"modules will normally be imported before higher level modules and thus must " -"be cleaned up later." +"**Note:** The effect of registering or unregistering functions from within a " +"cleanup function is undefined." msgstr "" msgid "" -"If an exception is raised during execution of the exit handlers, a traceback " -"is printed (unless :exc:`SystemExit` is raised) and the exception " -"information is saved. After all exit handlers have had a chance to run, the " -"last exception to be raised is re-raised." +"When writing exit handlers, especially in C API extensions, keep in mind " +"that other exit handlers may still run arbitrary Python code after you clean " +"up. Such code should succeed or fail with an exception, rather than crash." msgstr "" msgid "" -"This function returns *func*, which makes it possible to use it as a " -"decorator." +"Attempts to start a new thread or :func:`os.fork` a new process in an exit " +"handler now leads to :exc:`RuntimeError`. Previously, this could cause race " +"conditions between the main Python runtime thread freeing thread states " +"while internal :mod:`threading` routines or the new process try to use that " +"state, which could lead to crashes rather than clean shutdown." msgstr "" msgid "" -"Starting new threads or calling :func:`os.fork` from a registered function " -"can lead to race condition between the main Python runtime thread freeing " -"thread states while internal :mod:`threading` routines or the new process " -"try to use that state. This can lead to crashes rather than clean shutdown." +"When used with subinterpreters, registered functions are local to the " +"interpreter they were registered in." msgstr "" msgid "" -"Attempts to start a new thread or :func:`os.fork` a new process in a " -"registered function now leads to :exc:`RuntimeError`." +"Register *func* as an exit handler. Any optional arguments that are to be " +"passed to *func* must be passed as arguments to :func:`register`. It is " +"possible to register the same function and arguments more than once." +msgstr "" + +msgid "" +"This function returns *func*, which makes it possible to use it as a " +"decorator." msgstr "" msgid "" -"Remove *func* from the list of functions to be run at interpreter shutdown. :" -"func:`unregister` silently does nothing if *func* was not previously " -"registered. If *func* has been registered more than once, every occurrence " -"of that function in the :mod:`!atexit` call stack will be removed. Equality " -"comparisons (``==``) are used internally during unregistration, so function " -"references do not need to have matching identities." +"Remove *func* from the list of exit handlers. :func:`unregister` silently " +"does nothing if *func* was not previously registered. If *func* has been " +"registered more than once, every occurrence of that function in the :mod:`!" +"atexit` call stack will be removed. Equality comparisons (``==``) are used " +"internally during unregistration, so function references do not need to have " +"matching identities." msgstr "" msgid "Module :mod:`readline`" diff --git a/library/audioop.po b/library/audioop.po index 14df1ed..5cf0116 100644 --- a/library/audioop.po +++ b/library/audioop.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!audioop` --- Manipulate raw audio data" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/audit_events.po b/library/audit_events.po index 7e4d7b0..637eb4a 100644 --- a/library/audit_events.po +++ b/library/audit_events.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,9 +22,9 @@ msgid "Audit events table" msgstr "" msgid "" -"This table contains all events raised by :func:`sys.audit` or :c:func:" -"`PySys_Audit` calls throughout the CPython runtime and the standard " -"library. These calls were added in 3.8 or later (see :pep:`578`)." +"This table contains all events raised by :func:`sys.audit` " +"or :c:func:`PySys_Audit` calls throughout the CPython runtime and the " +"standard library. These calls were added in 3.8 or later (see :pep:`578`)." msgstr "" msgid "" diff --git a/library/base64.po b/library/base64.po index 54ca08f..b04f811 100644 --- a/library/base64.po +++ b/library/base64.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,19 +35,20 @@ msgstr "" msgid "" "There are two interfaces provided by this module. The modern interface " -"supports encoding :term:`bytes-like objects ` to ASCII :" -"class:`bytes`, and decoding :term:`bytes-like objects ` " -"or strings containing ASCII to :class:`bytes`. Both base-64 alphabets " -"defined in :rfc:`4648` (normal, and URL- and filesystem-safe) are supported." +"supports encoding :term:`bytes-like objects ` to " +"ASCII :class:`bytes`, and decoding :term:`bytes-like objects ` or strings containing ASCII to :class:`bytes`. Both base-64 " +"alphabets defined in :rfc:`4648` (normal, and URL- and filesystem-safe) are " +"supported." msgstr "" msgid "" "The :ref:`legacy interface ` does not support decoding from " "strings, but it does provide functions for encoding and decoding to and " "from :term:`file objects `. It only supports the Base64 " -"standard alphabet, and it adds newlines every 76 characters as per :rfc:" -"`2045`. Note that if you are looking for :rfc:`2045` support you probably " -"want to be looking at the :mod:`email` package instead." +"standard alphabet, and it adds newlines every 76 characters as " +"per :rfc:`2045`. Note that if you are looking for :rfc:`2045` support you " +"probably want to be looking at the :mod:`email` package instead." msgstr "" msgid "" @@ -144,13 +145,13 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-zero padding bits are rejected. See :func:" -"`binascii.a2b_base64` for details." +"If *canonical* is true, non-zero padding bits are rejected. " +"See :func:`binascii.a2b_base64` for details." msgstr "" msgid "" -"For more information about the strict base64 check, see :func:`binascii." -"a2b_base64`" +"For more information about the strict base64 check, " +"see :func:`binascii.a2b_base64`" msgstr "" msgid "Added the *canonical*, *ignorechars*, and *padded* parameters." @@ -184,8 +185,8 @@ msgstr "" msgid "" "Decode :term:`bytes-like object` or ASCII string *s* using the URL- and " "filesystem-safe alphabet, which substitutes ``-`` instead of ``+`` and ``_`` " -"instead of ``/`` in the standard Base64 alphabet, and return the decoded :" -"class:`bytes`." +"instead of ``/`` in the standard Base64 alphabet, and return the " +"decoded :class:`bytes`." msgstr "" msgid "" @@ -246,8 +247,8 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-zero padding bits are rejected. See :func:" -"`binascii.a2b_base32` for details." +"If *canonical* is true, non-zero padding bits are rejected. " +"See :func:`binascii.a2b_base32` for details." msgstr "" msgid "" @@ -372,8 +373,8 @@ msgstr "" msgid "" "*adobe* controls whether the ``<~`` and ``~>`` markers are present. While " -"the leading ``<~`` is not required, the input must end with ``~>``, or a :" -"exc:`ValueError` is raised." +"the leading ``<~`` is not required, the input must end with ``~>``, or " +"a :exc:`ValueError` is raised." msgstr "" msgid "" @@ -383,8 +384,8 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-canonical encodings are rejected. See :func:" -"`binascii.a2b_ascii85` for details." +"If *canonical* is true, non-canonical encodings are rejected. " +"See :func:`binascii.a2b_ascii85` for details." msgstr "" msgid "" @@ -410,8 +411,8 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-canonical encodings are rejected. See :func:" -"`binascii.a2b_base85` for details." +"If *canonical* is true, non-canonical encodings are rejected. " +"See :func:`binascii.a2b_base85` for details." msgstr "" msgid "" @@ -456,11 +457,12 @@ msgstr "" msgid "" "Encode the contents of the binary *input* file and write the resulting " -"base64 encoded data to the *output* file. *input* and *output* must be :term:" -"`file objects `. *input* will be read until ``input.read()`` " -"returns an empty bytes object. :func:`encode` inserts a newline character " -"(``b'\\n'``) after every 76 bytes of the output, as well as ensuring that " -"the output always ends with a newline, as per :rfc:`2045` (MIME)." +"base64 encoded data to the *output* file. *input* and *output* must " +"be :term:`file objects `. *input* will be read until " +"``input.read()`` returns an empty bytes object. :func:`encode` inserts a " +"newline character (``b'\\n'``) after every 76 bytes of the output, as well " +"as ensuring that the output always ends with a newline, as per :rfc:`2045` " +"(MIME)." msgstr "" msgid "" diff --git a/library/bdb.po b/library/bdb.po index da7de0d..298bf06 100644 --- a/library/bdb.po +++ b/library/bdb.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,10 +52,10 @@ msgstr "" msgid "" "When creating a breakpoint, its associated :attr:`file name ` should " -"be in canonical form. If a :attr:`funcname` is defined, a breakpoint :attr:" -"`hit ` will be counted when the first line of that function is " -"executed. A :attr:`conditional ` breakpoint always counts a :attr:" -"`hit `." +"be in canonical form. If a :attr:`funcname` is defined, a " +"breakpoint :attr:`hit ` will be counted when the first line of that " +"function is executed. A :attr:`conditional ` breakpoint always counts " +"a :attr:`hit `." msgstr "" msgid ":class:`Breakpoint` instances have the following methods:" @@ -128,8 +128,8 @@ msgid "Numeric index for a single instance of a :class:`Breakpoint`." msgstr "" msgid "" -"Dictionary of :class:`Breakpoint` instances indexed by (:attr:`file`, :attr:" -"`line`) tuples." +"Dictionary of :class:`Breakpoint` instances indexed by " +"(:attr:`file`, :attr:`line`) tuples." msgstr "" msgid "Number of times to ignore a :class:`Breakpoint`." @@ -143,8 +143,8 @@ msgstr "" msgid "" "This class takes care of the details of the trace facility; a derived class " -"should implement user interaction. The standard debugger class (:class:`pdb." -"Pdb`) is an example." +"should implement user interaction. The standard debugger class " +"(:class:`pdb.Pdb`) is an example." msgstr "" msgid "" @@ -157,13 +157,13 @@ msgstr "" msgid "" "The *backend* argument specifies the backend to use for :class:`Bdb`. It can " -"be either ``'settrace'`` or ``'monitoring'``. ``'settrace'`` uses :func:`sys." -"settrace` which has the best backward compatibility. The ``'monitoring'`` " -"backend uses the new :mod:`sys.monitoring` that was introduced in Python " -"3.12, which can be much more efficient because it can disable unused events. " -"We are trying to keep the exact interfaces for both backends, but there are " -"some differences. The debugger developers are encouraged to use the " -"``'monitoring'`` backend to achieve better performance." +"be either ``'settrace'`` or ``'monitoring'``. ``'settrace'`` " +"uses :func:`sys.settrace` which has the best backward compatibility. The " +"``'monitoring'`` backend uses the new :mod:`sys.monitoring` that was " +"introduced in Python 3.12, which can be much more efficient because it can " +"disable unused events. We are trying to keep the exact interfaces for both " +"backends, but there are some differences. The debugger developers are " +"encouraged to use the ``'monitoring'`` backend to achieve better performance." msgstr "" msgid "Added the *skip* parameter." @@ -180,10 +180,10 @@ msgid "Return canonical form of *filename*." msgstr "" msgid "" -"For real file names, the canonical form is an operating-system-dependent, :" -"func:`case-normalized ` :func:`absolute path `. A *filename* with angle brackets, such as ``\"\"`` " -"generated in interactive mode, is returned unchanged." +"For real file names, the canonical form is an operating-system-" +"dependent, :func:`case-normalized ` :func:`absolute path " +"`. A *filename* with angle brackets, such as " +"``\"\"`` generated in interactive mode, is returned unchanged." msgstr "" msgid "" @@ -192,13 +192,13 @@ msgid "" msgstr "" msgid "" -"Stop tracing. For ``'settrace'`` backend, this method is equivalent to ``sys." -"settrace(None)``" +"Stop tracing. For ``'settrace'`` backend, this method is equivalent to " +"``sys.settrace(None)``" msgstr "" msgid "" -"Set the :attr:`!botframe`, :attr:`!stopframe`, :attr:`!returnframe` and :" -"attr:`quitting ` attributes with values ready to start " +"Set the :attr:`!botframe`, :attr:`!stopframe`, :attr:`!returnframe` " +"and :attr:`quitting ` attributes with values ready to start " "debugging." msgstr "" @@ -235,40 +235,41 @@ msgstr "" msgid "" "See the documentation for :func:`sys.settrace` for more information on the " -"trace function. For more information on code and frame objects, refer to :" -"ref:`types`." +"trace function. For more information on code and frame objects, refer " +"to :ref:`types`." msgstr "" msgid "" -"If the debugger should stop on the current line, invoke the :meth:" -"`user_line` method (which should be overridden in subclasses). Raise a :exc:" -"`BdbQuit` exception if the :attr:`quitting ` flag is set " -"(which can be set from :meth:`user_line`). Return a reference to the :meth:" -"`trace_dispatch` method for further tracing in that scope." +"If the debugger should stop on the current line, invoke " +"the :meth:`user_line` method (which should be overridden in subclasses). " +"Raise a :exc:`BdbQuit` exception if the :attr:`quitting ` " +"flag is set (which can be set from :meth:`user_line`). Return a reference " +"to the :meth:`trace_dispatch` method for further tracing in that scope." msgstr "" msgid "" -"If the debugger should stop on this function call, invoke the :meth:" -"`user_call` method (which should be overridden in subclasses). Raise a :exc:" -"`BdbQuit` exception if the :attr:`quitting ` flag is set " -"(which can be set from :meth:`user_call`). Return a reference to the :meth:" -"`trace_dispatch` method for further tracing in that scope." +"If the debugger should stop on this function call, invoke " +"the :meth:`user_call` method (which should be overridden in subclasses). " +"Raise a :exc:`BdbQuit` exception if the :attr:`quitting ` " +"flag is set (which can be set from :meth:`user_call`). Return a reference " +"to the :meth:`trace_dispatch` method for further tracing in that scope." msgstr "" msgid "" -"If the debugger should stop on this function return, invoke the :meth:" -"`user_return` method (which should be overridden in subclasses). Raise a :" -"exc:`BdbQuit` exception if the :attr:`quitting ` flag is set " -"(which can be set from :meth:`user_return`). Return a reference to the :" -"meth:`trace_dispatch` method for further tracing in that scope." +"If the debugger should stop on this function return, invoke " +"the :meth:`user_return` method (which should be overridden in subclasses). " +"Raise a :exc:`BdbQuit` exception if the :attr:`quitting ` " +"flag is set (which can be set from :meth:`user_return`). Return a reference " +"to the :meth:`trace_dispatch` method for further tracing in that scope." msgstr "" msgid "" -"If the debugger should stop at this exception, invokes the :meth:" -"`user_exception` method (which should be overridden in subclasses). Raise a :" -"exc:`BdbQuit` exception if the :attr:`quitting ` flag is set " -"(which can be set from :meth:`user_exception`). Return a reference to the :" -"meth:`trace_dispatch` method for further tracing in that scope." +"If the debugger should stop at this exception, invokes " +"the :meth:`user_exception` method (which should be overridden in " +"subclasses). Raise a :exc:`BdbQuit` exception if the :attr:`quitting " +"` flag is set (which can be set from :meth:`user_exception`). " +"Return a reference to the :meth:`trace_dispatch` method for further tracing " +"in that scope." msgstr "" msgid "" @@ -309,8 +310,8 @@ msgid "" msgstr "" msgid "" -"Called from :meth:`dispatch_line` when either :meth:`stop_here` or :meth:" -"`break_here` returns ``True``." +"Called from :meth:`dispatch_line` when either :meth:`stop_here` " +"or :meth:`break_here` returns ``True``." msgstr "" msgid "" @@ -385,9 +386,9 @@ msgid "" msgstr "" msgid "" -"Delete the breakpoint which has the index *arg* in the :attr:`Breakpoint." -"bpbynumber`. If *arg* is not numeric or out of range, return an error " -"message." +"Delete the breakpoint which has the index *arg* in " +"the :attr:`Breakpoint.bpbynumber`. If *arg* is not numeric or out of range, " +"return an error message." msgstr "" msgid "" @@ -497,16 +498,16 @@ msgid "Finally, the module defines the following functions:" msgstr "" msgid "" -"Return ``True`` if we should break here, depending on the way the :class:" -"`Breakpoint` *b* was set." +"Return ``True`` if we should break here, depending on the way " +"the :class:`Breakpoint` *b* was set." msgstr "" msgid "" -"If it was set via line number, it checks if :attr:`b.line ` is the same as the one in *frame*. If the breakpoint was set via :" -"attr:`function name `, we have to check we are in " -"the right *frame* (the right function) and if we are on its first executable " -"line." +"If it was set via line number, it checks if :attr:`b.line " +"` is the same as the one in *frame*. If the breakpoint " +"was set via :attr:`function name `, we have to " +"check we are in the right *frame* (the right function) and if we are on its " +"first executable line." msgstr "" msgid "" @@ -515,15 +516,16 @@ msgid "" msgstr "" msgid "" -"The *active breakpoint* is the first entry in :attr:`bplist ` for the (:attr:`file `, :attr:`line `) (which must exist) that is :attr:`enabled `, for which :func:`checkfuncname` is true, and that has neither a " +"The *active breakpoint* is the first entry in :attr:`bplist " +"` for the (:attr:`file " +"`, :attr:`line `) (which must " +"exist) that is :attr:`enabled `, for " +"which :func:`checkfuncname` is true, and that has neither a " "false :attr:`condition ` nor positive :attr:`ignore " "` count. The *flag*, meaning that a temporary " -"breakpoint should be deleted, is ``False`` only when the :attr:`cond ` cannot be evaluated (in which case, :attr:`ignore ` count is ignored)." +"breakpoint should be deleted, is ``False`` only when the :attr:`cond " +"` cannot be evaluated (in which case, :attr:`ignore " +"` count is ignored)." msgstr "" msgid "If no such entry exists, then ``(None, None)`` is returned." diff --git a/library/binary.po b/library/binary.po index 5e90c10..8a4c466 100644 --- a/library/binary.po +++ b/library/binary.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/binascii.po b/library/binascii.po index 77a0a48..cab7a78 100644 --- a/library/binascii.po +++ b/library/binascii.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -114,8 +114,8 @@ msgstr "" msgid "" "If *canonical* is true, non-zero padding bits in the last group are rejected " -"with :exc:`binascii.Error`, enforcing canonical encoding as defined in :rfc:" -"`4648` section 3.5. This check is independent of *strict_mode*." +"with :exc:`binascii.Error`, enforcing canonical encoding as defined " +"in :rfc:`4648` section 3.5. This check is independent of *strict_mode*." msgstr "" msgid "Added the *strict_mode* parameter." @@ -184,11 +184,11 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-canonical encodings are rejected with :exc:" -"`binascii.Error`. Here \"canonical\" means the encoding that :func:" -"`b2a_ascii85` would produce: the ``z`` abbreviation must be used for all-" -"zero groups (rather than ``!!!!!``), and partial final groups must use the " -"same padding digits as the encoder." +"If *canonical* is true, non-canonical encodings are rejected " +"with :exc:`binascii.Error`. Here \"canonical\" means the encoding " +"that :func:`b2a_ascii85` would produce: the ``z`` abbreviation must be used " +"for all-zero groups (rather than ``!!!!!``), and partial final groups must " +"use the same padding digits as the encoder." msgstr "" msgid "Invalid Ascii85 data will raise :exc:`binascii.Error`." @@ -243,10 +243,10 @@ msgid "" msgstr "" msgid "" -"If *canonical* is true, non-canonical encodings are rejected with :exc:" -"`binascii.Error`. Here \"canonical\" means the encoding that :func:" -"`b2a_base85` would produce: partial final groups must use the same padding " -"digits as the encoder." +"If *canonical* is true, non-canonical encodings are rejected " +"with :exc:`binascii.Error`. Here \"canonical\" means the encoding " +"that :func:`b2a_base85` would produce: partial final groups must use the " +"same padding digits as the encoder." msgstr "" msgid "Invalid Base85 data will raise :exc:`binascii.Error`." @@ -272,10 +272,10 @@ msgid "Convert base32 data back to binary and return the binary data." msgstr "" msgid "" -"Valid base32 data contains characters from the base32 alphabet specified in :" -"rfc:`4648` in groups of eight (if necessary, the final group is padded to " -"eight characters with ``=``). Each group encodes 40 bits of binary data in " -"the range from ``0`` to ``2 ** 40 - 1``, inclusive." +"Valid base32 data contains characters from the base32 alphabet specified " +"in :rfc:`4648` in groups of eight (if necessary, the final group is padded " +"to eight characters with ``=``). Each group encodes 40 bits of binary data " +"in the range from ``0`` to ``2 ** 40 - 1``, inclusive." msgstr "" msgid "" @@ -305,8 +305,8 @@ msgstr "" msgid "" "If *canonical* is true, non-zero padding bits in the last group are rejected " -"with :exc:`binascii.Error`, enforcing canonical encoding as defined in :rfc:" -"`4648` section 3.5." +"with :exc:`binascii.Error`, enforcing canonical encoding as defined " +"in :rfc:`4648` section 3.5." msgstr "" msgid "Invalid base32 data will raise :exc:`binascii.Error`." diff --git a/library/bisect.po b/library/bisect.po index 11df310..73acd0f 100644 --- a/library/bisect.po +++ b/library/bisect.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,10 +35,10 @@ msgid "" "The module is called :mod:`!bisect` because it uses a basic bisection " "algorithm to do its work. Unlike other bisection tools that search for a " "specific value, the functions in this module are designed to locate an " -"insertion point. Accordingly, the functions never call an :meth:`~object." -"__eq__` method to determine whether a value has been found. Instead, the " -"functions only call the :meth:`~object.__lt__` method and will return an " -"insertion point between values in an array." +"insertion point. Accordingly, the functions never call " +"an :meth:`~object.__eq__` method to determine whether a value has been " +"found. Instead, the functions only call the :meth:`~object.__lt__` method " +"and will return an insertion point between values in an array." msgstr "" msgid "" @@ -148,10 +148,10 @@ msgid "" "The search functions are stateless and discard key function results after " "they are used. Consequently, if the search functions are used in a loop, " "the key function may be called again and again on the same array elements. " -"If the key function isn't fast, consider wrapping it with :py:deco:" -"`functools.cache` to avoid duplicate computations. Alternatively, consider " -"searching an array of precomputed keys to locate the insertion point (as " -"shown in the examples section below)." +"If the key function isn't fast, consider wrapping it " +"with :py:deco:`functools.cache` to avoid duplicate computations. " +"Alternatively, consider searching an array of precomputed keys to locate the " +"insertion point (as shown in the examples section below)." msgstr "" msgid "" diff --git a/library/builtins.po b/library/builtins.po index 102ffe3..ed23234 100644 --- a/library/builtins.po +++ b/library/builtins.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,8 +23,8 @@ msgstr "" msgid "" "This module provides direct access to all 'built-in' identifiers of Python; " -"for example, ``builtins.open`` is the full name for the built-in function :" -"func:`open`." +"for example, ``builtins.open`` is the full name for the built-in " +"function :func:`open`." msgstr "" msgid "" @@ -57,9 +57,9 @@ msgstr "" msgid "" "As an implementation detail, most modules have the name ``__builtins__`` " "made available as part of their globals. The value of ``__builtins__`` is " -"normally either this module or the value of this module's :attr:`~object." -"__dict__` attribute. Since this is an implementation detail, it may not be " -"used by alternate implementations of Python." +"normally either this module or the value of this " +"module's :attr:`~object.__dict__` attribute. Since this is an implementation " +"detail, it may not be used by alternate implementations of Python." msgstr "" msgid ":ref:`built-in-consts`" diff --git a/library/bz2.po b/library/bz2.po index c588088..cfbad3f 100644 --- a/library/bz2.po +++ b/library/bz2.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -75,8 +79,8 @@ msgid "" msgstr "" msgid "" -"The *compresslevel* argument is an integer from 1 to 9, as for the :class:" -"`BZ2File` constructor." +"The *compresslevel* argument is an integer from 1 to 9, as for " +"the :class:`BZ2File` constructor." msgstr "" msgid "" @@ -87,8 +91,8 @@ msgid "" msgstr "" msgid "" -"For text mode, a :class:`BZ2File` object is created, and wrapped in an :" -"class:`io.TextIOWrapper` instance with the specified encoding, error " +"For text mode, a :class:`BZ2File` object is created, and wrapped in " +"an :class:`io.TextIOWrapper` instance with the specified encoding, error " "handling behavior, and line ending(s)." msgstr "" @@ -131,9 +135,10 @@ msgid "" msgstr "" msgid "" -":class:`BZ2File` provides all of the members specified by the :class:`io." -"BufferedIOBase`, except for :meth:`~io.BufferedIOBase.detach` and :meth:`~io." -"IOBase.truncate`. Iteration and the :keyword:`with` statement are supported." +":class:`BZ2File` provides all of the members specified by " +"the :class:`io.BufferedIOBase`, except for :meth:`~io.BufferedIOBase.detach` " +"and :meth:`~io.IOBase.truncate`. Iteration and the :keyword:`with` statement " +"are supported." msgstr "" msgid ":class:`BZ2File` also provides the following methods and attributes:" @@ -146,10 +151,10 @@ msgid "" msgstr "" msgid "" -"While calling :meth:`peek` does not change the file position of the :class:" -"`BZ2File`, it may change the position of the underlying file object (e.g. if " -"the :class:`BZ2File` was constructed by passing a file object for " -"*filename*)." +"While calling :meth:`peek` does not change the file position of " +"the :class:`BZ2File`, it may change the position of the underlying file " +"object (e.g. if the :class:`BZ2File` was constructed by passing a file " +"object for *filename*)." msgstr "" msgid "Return the file descriptor for the underlying file." @@ -239,8 +244,8 @@ msgid "" msgstr "" msgid "" -"When you have finished providing data to the compressor, call the :meth:" -"`flush` method to finish the compression process." +"When you have finished providing data to the compressor, call " +"the :meth:`flush` method to finish the compression process." msgstr "" msgid "" @@ -287,9 +292,9 @@ msgid "" msgstr "" msgid "" -"Attempting to decompress data after the end of stream is reached raises an :" -"exc:`EOFError`. Any data found after the end of the stream is ignored and " -"saved in the :attr:`~.unused_data` attribute." +"Attempting to decompress data after the end of stream is reached raises " +"an :exc:`EOFError`. Any data found after the end of the stream is ignored " +"and saved in the :attr:`~.unused_data` attribute." msgstr "" msgid "Added the *max_length* parameter." diff --git a/library/calendar.po b/library/calendar.po index 40bd85f..ab06be4 100644 --- a/library/calendar.po +++ b/library/calendar.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,8 +50,8 @@ msgstr "" msgid "" "Creates a :class:`Calendar` object. *firstweekday* is an integer specifying " -"the first day of the week. :const:`MONDAY` is ``0`` (the default), :const:" -"`SUNDAY` is ``6``." +"the first day of the week. :const:`MONDAY` is ``0`` (the " +"default), :const:`SUNDAY` is ``6``." msgstr "" msgid "" @@ -63,8 +67,9 @@ msgid "The first weekday as an integer (0--6)." msgstr "" msgid "" -"This property can also be set and read using :meth:`~Calendar." -"setfirstweekday` and :meth:`~Calendar.getfirstweekday` respectively." +"This property can also be set and read " +"using :meth:`~Calendar.setfirstweekday` " +"and :meth:`~Calendar.getfirstweekday` respectively." msgstr "" msgid "Return an :class:`int` for the current first weekday (0--6)." @@ -82,8 +87,8 @@ msgstr "" msgid "" "Return an iterator for the weekday numbers that will be used for one week. " -"The first value from the iterator will be the same as the value of the :attr:" -"`~Calendar.firstweekday` property." +"The first value from the iterator will be the same as the value of " +"the :attr:`~Calendar.firstweekday` property." msgstr "" msgid "" @@ -94,31 +99,31 @@ msgid "" msgstr "" msgid "" -"Return an iterator for the month *month* in the year *year* similar to :meth:" -"`itermonthdates`, but not restricted by the :class:`datetime.date` range. " -"Days returned will simply be day of the month numbers. For the days outside " -"of the specified month, the day number is ``0``." +"Return an iterator for the month *month* in the year *year* similar " +"to :meth:`itermonthdates`, but not restricted by the :class:`datetime.date` " +"range. Days returned will simply be day of the month numbers. For the days " +"outside of the specified month, the day number is ``0``." msgstr "" msgid "" -"Return an iterator for the month *month* in the year *year* similar to :meth:" -"`itermonthdates`, but not restricted by the :class:`datetime.date` range. " -"Days returned will be tuples consisting of a day of the month number and a " -"weekday number." +"Return an iterator for the month *month* in the year *year* similar " +"to :meth:`itermonthdates`, but not restricted by the :class:`datetime.date` " +"range. Days returned will be tuples consisting of a day of the month number " +"and a weekday number." msgstr "" msgid "" -"Return an iterator for the month *month* in the year *year* similar to :meth:" -"`itermonthdates`, but not restricted by the :class:`datetime.date` range. " -"Days returned will be tuples consisting of a year, a month and a day of the " -"month numbers." +"Return an iterator for the month *month* in the year *year* similar " +"to :meth:`itermonthdates`, but not restricted by the :class:`datetime.date` " +"range. Days returned will be tuples consisting of a year, a month and a day " +"of the month numbers." msgstr "" msgid "" -"Return an iterator for the month *month* in the year *year* similar to :meth:" -"`itermonthdates`, but not restricted by the :class:`datetime.date` range. " -"Days returned will be tuples consisting of a year, a month, a day of the " -"month, and a day of the week numbers." +"Return an iterator for the month *month* in the year *year* similar " +"to :meth:`itermonthdates`, but not restricted by the :class:`datetime.date` " +"range. Days returned will be tuples consisting of a year, a month, a day of " +"the month, and a day of the week numbers." msgstr "" msgid "" @@ -144,15 +149,15 @@ msgid "" msgstr "" msgid "" -"Return the data for the specified year ready for formatting (similar to :" -"meth:`yeardatescalendar`). Entries in the week lists are tuples of day " +"Return the data for the specified year ready for formatting (similar " +"to :meth:`yeardatescalendar`). Entries in the week lists are tuples of day " "numbers and weekday numbers. Day numbers outside this month are zero." msgstr "" msgid "" -"Return the data for the specified year ready for formatting (similar to :" -"meth:`yeardatescalendar`). Entries in the week lists are day numbers. Day " -"numbers outside this month are zero." +"Return the data for the specified year ready for formatting (similar " +"to :meth:`yeardatescalendar`). Entries in the week lists are day numbers. " +"Day numbers outside this month are zero." msgstr "" msgid "This class can be used to generate plain text calendars." @@ -173,10 +178,9 @@ msgid "" msgstr "" msgid "" -"Return a single week in a string with no newline. If *w* is provided, it " -"specifies the width of the date columns, which are centered. Depends on the " -"first weekday as specified in the constructor or set by the :meth:" -"`setfirstweekday` method." +"Return a single week in a string with no newline. *width* specifies the " +"width of the date columns, which are centered. Depends on the first weekday " +"as specified in the constructor or set by the :meth:`setfirstweekday` method." msgstr "" msgid "" @@ -195,8 +199,8 @@ msgid "" "Return a month's calendar in a multi-line string. If *w* is provided, it " "specifies the width of the date columns, which are centered. If *l* is " "given, it specifies the number of lines that each week will use. Depends on " -"the first weekday as specified in the constructor or set by the :meth:" -"`setfirstweekday` method." +"the first weekday as specified in the constructor or set by " +"the :meth:`setfirstweekday` method." msgstr "" msgid "" @@ -213,9 +217,9 @@ msgid "" "Return a *m*-column calendar for an entire year as a multi-line string. " "Optional parameters *w*, *l*, and *c* are for date column width, lines per " "week, and number of spaces between month columns, respectively. Depends on " -"the first weekday as specified in the constructor or set by the :meth:" -"`setfirstweekday` method. The earliest year for which a calendar can be " -"generated is platform-dependent." +"the first weekday as specified in the constructor or set by " +"the :meth:`setfirstweekday` method. The earliest year for which a calendar " +"can be generated is platform-dependent." msgstr "" msgid "" @@ -294,13 +298,13 @@ msgid "" msgstr "" msgid "" -"The CSS class for the whole year's table of tables (used by :meth:" -"`formatyear`). The default value is ``\"year\"``." +"The CSS class for the whole year's table of tables (used " +"by :meth:`formatyear`). The default value is ``\"year\"``." msgstr "" msgid "" -"The CSS class for the table head for the whole year (used by :meth:" -"`formatyear`). The default value is ``\"year\"``." +"The CSS class for the table head for the whole year (used " +"by :meth:`formatyear`). The default value is ``\"year\"``." msgstr "" msgid "" @@ -346,9 +350,9 @@ msgstr "" msgid "" "Sets the weekday (``0`` is Monday, ``6`` is Sunday) to start each week. The " -"values :const:`MONDAY`, :const:`TUESDAY`, :const:`WEDNESDAY`, :const:" -"`THURSDAY`, :const:`FRIDAY`, :const:`SATURDAY`, and :const:`SUNDAY` are " -"provided for convenience. For example, to set the first weekday to Sunday::" +"values :const:`MONDAY`, :const:`TUESDAY`, :const:`WEDNESDAY`, :const:`THURSDAY`, :const:`FRIDAY`, :const:`SATURDAY`, " +"and :const:`SUNDAY` are provided for convenience. For example, to set the " +"first weekday to Sunday::" msgstr "" msgid "" @@ -396,12 +400,13 @@ msgid "Prints a month's calendar as returned by :func:`month`." msgstr "" msgid "" -"Returns a month's calendar in a multi-line string using the :meth:" -"`~TextCalendar.formatmonth` of the :class:`TextCalendar` class." +"Returns a month's calendar in a multi-line string using " +"the :meth:`~TextCalendar.formatmonth` of the :class:`TextCalendar` class." msgstr "" msgid "" -"Prints the calendar for an entire year as returned by :func:`calendar`." +"Prints the calendar for an entire year as returned " +"by :func:`~calendar.calendar`." msgstr "" msgid "" @@ -437,8 +442,8 @@ msgstr "" msgid "" "Enumeration defining days of the week as integer constants. The members of " -"this enumeration are exported to the module scope as :data:`MONDAY` through :" -"data:`SUNDAY`." +"this enumeration are exported to the module scope as :data:`MONDAY` " +"through :data:`SUNDAY`." msgstr "" msgid "" @@ -451,8 +456,8 @@ msgid "" "In locales with alternative month names forms, the :data:`!month_name` " "sequence may not be suitable when a month name stands by itself and not as " "part of a date. For instance, in Greek and in many Slavic and Baltic " -"languages, :data:`!month_name` will produce the month in genitive case. Use :" -"data:`standalone_month_name` for a form suitable for standalone use." +"languages, :data:`!month_name` will produce the month in genitive case. " +"Use :data:`standalone_month_name` for a form suitable for standalone use." msgstr "" msgid "" @@ -470,8 +475,8 @@ msgstr "" msgid "" "A sequence that represents the months of the year in the current locale in " -"the standalone form if the locale provides one. Else it is equivalent to :" -"data:`month_name`." +"the standalone form if the locale provides one. Else it is equivalent " +"to :data:`month_name`." msgstr "" msgid "" @@ -596,8 +601,8 @@ msgid "The locale to use for month and weekday names. Defaults to English." msgstr "" msgid "" -"The encoding to use for output. :option:`--encoding` is required if :option:" -"`--locale` is set." +"The encoding to use for output. :option:`--encoding` is required " +"if :option:`--locale` is set." msgstr "" msgid "Print the calendar to the terminal as text, or as an HTML document." diff --git a/library/cgi.po b/library/cgi.po index dc49a0a..0967daf 100644 --- a/library/cgi.po +++ b/library/cgi.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!cgi` --- Common Gateway Interface support" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/cgitb.po b/library/cgitb.po index 8aacfcd..d6062ec 100644 --- a/library/cgitb.po +++ b/library/cgitb.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!cgitb` --- Traceback manager for CGI scripts" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/chunk.po b/library/chunk.po index 9560613..fbe9b34 100644 --- a/library/chunk.po +++ b/library/chunk.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!chunk` --- Read IFF chunked data" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/cmath.po b/library/cmath.po index 7ce9dc3..5210457 100644 --- a/library/cmath.po +++ b/library/cmath.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -270,8 +270,8 @@ msgstr "" msgid "" "A Python complex number ``z`` is stored internally using *rectangular* or " -"*Cartesian* coordinates. It is completely determined by its *real part* ``z." -"real`` and its *imaginary part* ``z.imag``." +"*Cartesian* coordinates. It is completely determined by its *real part* " +"``z.real`` and its *imaginary part* ``z.imag``." msgstr "" msgid "" @@ -335,8 +335,8 @@ msgid "" msgstr "" msgid "" -"Return the base-10 logarithm of *z*. This has the same branch cut as :func:" -"`log`." +"Return the base-10 logarithm of *z*. This has the same branch cut " +"as :func:`log`." msgstr "" msgid "" diff --git a/library/cmd.po b/library/cmd.po index 4d688ba..ff5245a 100644 --- a/library/cmd.po +++ b/library/cmd.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,6 +31,15 @@ msgid "" "sophisticated interface." msgstr "" +msgid "" +"A command interpreter built with :class:`Cmd` typically presents the user " +"with an interactive prompt, reads input one line at a time, and dispatches " +"each command to a method named ``do_`` followed by the command name. For " +"example, the ``help`` command is handled by the :meth:`~Cmd.do_help` " +"method. Apart from the built-in ``help`` command, most of the interpreter's " +"behavior is defined by the ``do_*`` methods you add in your own subclass." +msgstr "" + msgid "" "A :class:`Cmd` instance or subclass instance is a line-oriented interpreter " "framework. There is no good reason to instantiate :class:`Cmd` itself; " @@ -41,30 +50,30 @@ msgstr "" msgid "" "The optional argument *completekey* is the :mod:`readline` name of a " -"completion key; it defaults to :kbd:`Tab`. If *completekey* is not :const:" -"`None` and :mod:`readline` is available, command completion is done " -"automatically." +"completion key; it defaults to :kbd:`Tab`. If *completekey* is " +"not :const:`None` and :mod:`readline` is available, command completion is " +"done automatically." msgstr "" msgid "" -"The default, ``'tab'``, is treated specially, so that it refers to the :kbd:" -"`Tab` key on every :data:`readline.backend`. Specifically, if :data:" -"`readline.backend` is ``editline``, ``Cmd`` will use ``'^I'`` instead of " -"``'tab'``. Note that other values are not treated this way, and might only " -"work with a specific backend." +"The default, ``'tab'``, is treated specially, so that it refers to " +"the :kbd:`Tab` key on every :data:`readline.backend`. Specifically, " +"if :data:`readline.backend` is ``editline``, ``Cmd`` will use ``'^I'`` " +"instead of ``'tab'``. Note that other values are not treated this way, and " +"might only work with a specific backend." msgstr "" msgid "" "The optional arguments *stdin* and *stdout* specify the input and output " "file objects that the Cmd instance or subclass instance will use for input " -"and output. If not specified, they will default to :data:`sys.stdin` and :" -"data:`sys.stdout`." +"and output. If not specified, they will default to :data:`sys.stdin` " +"and :data:`sys.stdout`." msgstr "" msgid "" -"If you want a given *stdin* to be used, make sure to set the instance's :" -"attr:`use_rawinput` attribute to ``False``, otherwise *stdin* will be " -"ignored." +"If you want a given *stdin* to be used, make sure to set the " +"instance's :attr:`use_rawinput` attribute to ``False``, otherwise *stdin* " +"will be ignored." msgstr "" msgid "``completekey='tab'`` is replaced by ``'^I'`` for ``editline``." @@ -88,11 +97,12 @@ msgid "" msgstr "" msgid "" -"If the :mod:`readline` module is loaded, input will automatically inherit :" -"program:`bash`\\ -like history-list editing (e.g. :kbd:`Control-P` scrolls " -"back to the last command, :kbd:`Control-N` forward to the next one, :kbd:" -"`Control-F` moves the cursor to the right non-destructively, :kbd:`Control-" -"B` moves the cursor to the left non-destructively, etc.)." +"If the :mod:`readline` module is loaded, input will automatically " +"inherit :program:`bash`\\ -like history-list editing (e.g. :kbd:`Control-P` " +"scrolls back to the last command, :kbd:`Control-N` forward to the next " +"one, :kbd:`Control-F` moves the cursor to the right non-" +"destructively, :kbd:`Control-B` moves the cursor to the left non-" +"destructively, etc.)." msgstr "" msgid "An end-of-file on input is passed back as the string ``'EOF'``." @@ -125,20 +135,20 @@ msgstr "" msgid "" "All subclasses of :class:`Cmd` inherit a predefined :meth:`!do_help`. This " -"method, called with an argument ``'bar'``, invokes the corresponding method :" -"meth:`!help_bar`, and if that is not present, prints the docstring of :meth:" -"`!do_bar`, if available. With no argument, :meth:`!do_help` lists all " -"available help topics (that is, all commands with corresponding :meth:`!" +"method, called with an argument ``'bar'``, invokes the corresponding " +"method :meth:`!help_bar`, and if that is not present, prints the docstring " +"of :meth:`!do_bar`, if available. With no argument, :meth:`!do_help` lists " +"all available help topics (that is, all commands with corresponding :meth:`!" "help_\\*` methods or commands that have docstrings), and also lists any " "undocumented commands." msgstr "" msgid "" "Interpret the argument as though it had been typed in response to the " -"prompt. This may be overridden, but should not normally need to be; see the :" -"meth:`precmd` and :meth:`postcmd` methods for useful execution hooks. The " -"return value is a flag indicating whether interpretation of commands by the " -"interpreter should stop. If there is a :meth:`!do_\\*` method for the " +"prompt. This may be overridden, but should not normally need to be; see " +"the :meth:`precmd` and :meth:`postcmd` methods for useful execution hooks. " +"The return value is a flag indicating whether interpretation of commands by " +"the interpreter should stop. If there is a :meth:`!do_\\*` method for the " "command *str*, the return value of that method is returned, otherwise the " "return value from the :meth:`default` method is returned." msgstr "" @@ -166,9 +176,9 @@ msgstr "" msgid "" "Hook method executed just before the command line *line* is interpreted, but " -"after the input prompt is generated and issued. This method is a stub in :" -"class:`Cmd`; it exists to be overridden by subclasses. The return value is " -"used as the command which will be executed by the :meth:`onecmd` method; " +"after the input prompt is generated and issued. This method is a stub " +"in :class:`Cmd`; it exists to be overridden by subclasses. The return value " +"is used as the command which will be executed by the :meth:`onecmd` method; " "the :meth:`precmd` implementation may re-write the command or simply return " "*line* unchanged." msgstr "" @@ -207,14 +217,14 @@ msgid "The last nonempty command prefix seen." msgstr "" msgid "" -"A list of queued input lines. The cmdqueue list is checked in :meth:" -"`cmdloop` when new input is needed; if it is nonempty, its elements will be " -"processed in order, as if entered at the prompt." +"A list of queued input lines. The cmdqueue list is checked " +"in :meth:`cmdloop` when new input is needed; if it is nonempty, its elements " +"will be processed in order, as if entered at the prompt." msgstr "" msgid "" -"A string to issue as an intro or banner. May be overridden by giving the :" -"meth:`cmdloop` method an argument." +"A string to issue as an intro or banner. May be overridden by giving " +"the :meth:`cmdloop` method an argument." msgstr "" msgid "" @@ -223,14 +233,14 @@ msgstr "" msgid "" "The header to issue if the help output has a section for miscellaneous help " -"topics (that is, there are :meth:`!help_\\*` methods without corresponding :" -"meth:`!do_\\*` methods)." +"topics (that is, there are :meth:`!help_\\*` methods without " +"corresponding :meth:`!do_\\*` methods)." msgstr "" msgid "" "The header to issue if the help output has a section for undocumented " -"commands (that is, there are :meth:`!do_\\*` methods without corresponding :" -"meth:`!help_\\*` methods)." +"commands (that is, there are :meth:`!do_\\*` methods without " +"corresponding :meth:`!help_\\*` methods)." msgstr "" msgid "" @@ -240,11 +250,12 @@ msgstr "" msgid "" "A flag, defaulting to true. If true, :meth:`cmdloop` uses :func:`input` to " -"display a prompt and read the next command; if false, :data:`sys.stdout." -"write() ` and :data:`sys.stdin.readline() ` are used. " -"(This means that by importing :mod:`readline`, on systems that support it, " -"the interpreter will automatically support :program:`Emacs`\\ -like line " -"editing and command-history keystrokes.)" +"display a prompt and read the next command; if " +"false, :data:`sys.stdout.write() ` " +"and :data:`sys.stdin.readline() ` are used. (This means that by " +"importing :mod:`readline`, on systems that support it, the interpreter will " +"automatically support :program:`Emacs`\\ -like line editing and command-" +"history keystrokes.)" msgstr "" msgid "Cmd Example" @@ -261,18 +272,18 @@ msgid "" msgstr "" msgid "" -"Basic turtle commands such as :meth:`~turtle.forward` are added to a :class:" -"`Cmd` subclass with method named :meth:`!do_forward`. The argument is " -"converted to a number and dispatched to the turtle module. The docstring is " -"used in the help utility provided by the shell." +"Basic turtle commands such as :meth:`~turtle.forward` are added to " +"a :class:`Cmd` subclass with method named :meth:`!do_forward`. The argument " +"is converted to a number and dispatched to the turtle module. The docstring " +"is used in the help utility provided by the shell." msgstr "" msgid "" "The example also includes a basic record and playback facility implemented " "with the :meth:`~Cmd.precmd` method which is responsible for converting the " "input to lowercase and writing the commands to a file. The :meth:`!" -"do_playback` method reads the file and adds the recorded commands to the :" -"attr:`~Cmd.cmdqueue` for immediate playback::" +"do_playback` method reads the file and adds the recorded commands to " +"the :attr:`~Cmd.cmdqueue` for immediate playback::" msgstr "" msgid "" diff --git a/library/cmdline.po b/library/cmdline.po index d1b3fb3..d0a5781 100644 --- a/library/cmdline.po +++ b/library/cmdline.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Lakshdeep Kashyap, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/cmdlinelibs.po b/library/cmdlinelibs.po index 56b32c8..b45f174 100644 --- a/library/cmdlinelibs.po +++ b/library/cmdlinelibs.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/code.po b/library/code.po index bb6e6b7..25f9a0b 100644 --- a/library/code.po +++ b/library/code.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -50,8 +50,8 @@ msgid "" "Closely emulate the behavior of the interactive Python interpreter. This " "class builds on :class:`InteractiveInterpreter` and adds prompting using the " "familiar ``sys.ps1`` and ``sys.ps2``, and input buffering. If *local_exit* " -"is true, ``exit()`` and ``quit()`` in the console will not raise :exc:" -"`SystemExit`, but instead return to the calling code." +"is true, ``exit()`` and ``quit()`` in the console will not " +"raise :exc:`SystemExit`, but instead return to the calling code." msgstr "" msgid "Added *local_exit* parameter." @@ -63,9 +63,9 @@ msgid "" "the :meth:`InteractiveConsole.raw_input` method, if provided. If *local* is " "provided, it is passed to the :class:`InteractiveConsole` constructor for " "use as the default namespace for the interpreter loop. If *local_exit* is " -"provided, it is passed to the :class:`InteractiveConsole` constructor. The :" -"meth:`~InteractiveConsole.interact` method of the instance is then run with " -"*banner* and *exitmsg* passed as the banner and exit message to use, if " +"provided, it is passed to the :class:`InteractiveConsole` constructor. " +"The :meth:`~InteractiveConsole.interact` method of the instance is then run " +"with *banner* and *exitmsg* passed as the banner and exit message to use, if " "provided. The console object is discarded after use." msgstr "" @@ -106,10 +106,9 @@ msgid "" msgstr "" msgid "" -"The input is incorrect; :func:`compile_command` raised an exception (:exc:" -"`SyntaxError` or :exc:`OverflowError`). A syntax traceback will be printed " -"by calling the :meth:`showsyntaxerror` method. :meth:`runsource` returns " -"``False``." +"The input is incorrect; :func:`compile_command` raised an exception " +"(usually :exc:`SyntaxError`). A syntax traceback will be printed by calling " +"the :meth:`showsyntaxerror` method. :meth:`runsource` returns ``False``." msgstr "" msgid "" @@ -125,14 +124,14 @@ msgid "" msgstr "" msgid "" -"The return value can be used to decide whether to use ``sys.ps1`` or ``sys." -"ps2`` to prompt the next line." +"The return value can be used to decide whether to use ``sys.ps1`` or " +"``sys.ps2`` to prompt the next line." msgstr "" msgid "" "Execute a code object. When an exception occurs, :meth:`showtraceback` is " -"called to display a traceback. All exceptions are caught except :exc:" -"`SystemExit`, which is allowed to propagate." +"called to display a traceback. All exceptions are caught " +"except :exc:`SystemExit`, which is allowed to propagate." msgstr "" msgid "" @@ -170,9 +169,9 @@ msgid "Interactive Console Objects" msgstr "" msgid "" -"The :class:`InteractiveConsole` class is a subclass of :class:" -"`InteractiveInterpreter`, and so offers all the methods of the interpreter " -"objects as well as the following additions." +"The :class:`InteractiveConsole` class is a subclass " +"of :class:`InteractiveInterpreter`, and so offers all the methods of the " +"interpreter objects as well as the following additions." msgstr "" msgid "" @@ -213,7 +212,7 @@ msgstr "" msgid "" "Write a prompt and read a line. The returned line does not include the " -"trailing newline. When the user enters the EOF key sequence, :exc:" -"`EOFError` is raised. The base implementation reads from ``sys.stdin``; a " -"subclass may replace this with a different implementation." +"trailing newline. When the user enters the EOF key " +"sequence, :exc:`EOFError` is raised. The base implementation reads from " +"``sys.stdin``; a subclass may replace this with a different implementation." msgstr "" diff --git a/library/codecs.po b/library/codecs.po index d75b3de..89f0842 100644 --- a/library/codecs.po +++ b/library/codecs.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -50,9 +50,9 @@ msgstr "" msgid "" "*Errors* may be given to set the desired error handling scheme. The default " -"error handler is ``'strict'`` meaning that encoding errors raise :exc:" -"`ValueError` (or a more codec specific subclass, such as :exc:" -"`UnicodeEncodeError`). Refer to :ref:`codec-base-classes` for more " +"error handler is ``'strict'`` meaning that encoding errors " +"raise :exc:`ValueError` (or a more codec specific subclass, such " +"as :exc:`UnicodeEncodeError`). Refer to :ref:`codec-base-classes` for more " "information on codec error handling." msgstr "" @@ -61,9 +61,9 @@ msgstr "" msgid "" "*Errors* may be given to set the desired error handling scheme. The default " -"error handler is ``'strict'`` meaning that decoding errors raise :exc:" -"`ValueError` (or a more codec specific subclass, such as :exc:" -"`UnicodeDecodeError`). Refer to :ref:`codec-base-classes` for more " +"error handler is ``'strict'`` meaning that decoding errors " +"raise :exc:`ValueError` (or a more codec specific subclass, such " +"as :exc:`UnicodeDecodeError`). Refer to :ref:`codec-base-classes` for more " "information on codec error handling." msgstr "" @@ -79,16 +79,16 @@ msgid "The full details for each codec can also be looked up directly:" msgstr "" msgid "" -"Looks up the codec info in the Python codec registry and returns a :class:" -"`CodecInfo` object as defined below." +"Looks up the codec info in the Python codec registry and returns " +"a :class:`CodecInfo` object as defined below." msgstr "" msgid "" "This function first normalizes the *encoding*: all ASCII letters are " "converted to lower case, spaces are replaced with hyphens. Then encoding is " "looked up in the registry's cache. If not found, the list of registered " -"search functions is scanned. If no :class:`CodecInfo` object is found, a :" -"exc:`LookupError` is raised. Otherwise, the :class:`CodecInfo` object is " +"search functions is scanned. If no :class:`CodecInfo` object is found, " +"a :exc:`LookupError` is raised. Otherwise, the :class:`CodecInfo` object is " "stored in the cache and returned to the caller." msgstr "" @@ -112,23 +112,23 @@ msgstr "" msgid "" "The stateless encoding and decoding functions. These must be functions or " -"methods which have the same interface as the :meth:`~Codec.encode` and :meth:" -"`~Codec.decode` methods of Codec instances (see :ref:`Codec Interface `). The functions or methods are expected to work in a stateless " -"mode." +"methods which have the same interface as the :meth:`~Codec.encode` " +"and :meth:`~Codec.decode` methods of Codec instances (see :ref:`Codec " +"Interface `). The functions or methods are expected to work " +"in a stateless mode." msgstr "" msgid "" "Incremental encoder and decoder classes or factory functions. These have to " -"provide the interface defined by the base classes :class:" -"`IncrementalEncoder` and :class:`IncrementalDecoder`, respectively. " -"Incremental codecs can maintain state." +"provide the interface defined by the base " +"classes :class:`IncrementalEncoder` and :class:`IncrementalDecoder`, " +"respectively. Incremental codecs can maintain state." msgstr "" msgid "" "Stream writer and reader classes or factory functions. These have to provide " -"the interface defined by the base classes :class:`StreamWriter` and :class:" -"`StreamReader`, respectively. Stream codecs can maintain state." +"the interface defined by the base classes :class:`StreamWriter` " +"and :class:`StreamReader`, respectively. Stream codecs can maintain state." msgstr "" msgid "" @@ -168,13 +168,13 @@ msgid "" msgstr "" msgid "" -"Look up the codec for the given encoding and return its :class:" -"`StreamReader` class or factory function." +"Look up the codec for the given encoding and return " +"its :class:`StreamReader` class or factory function." msgstr "" msgid "" -"Look up the codec for the given encoding and return its :class:" -"`StreamWriter` class or factory function." +"Look up the codec for the given encoding and return " +"its :class:`StreamWriter` class or factory function." msgstr "" msgid "" @@ -202,9 +202,9 @@ msgid "" msgstr "" msgid "" -"Open an encoded file using the given *mode* and return an instance of :class:" -"`StreamReaderWriter`, providing transparent encoding/decoding. The default " -"file mode is ``'r'``, meaning to open the file in read mode." +"Open an encoded file using the given *mode* and return an instance " +"of :class:`StreamReaderWriter`, providing transparent encoding/decoding. The " +"default file mode is ``'r'``, meaning to open the file in read mode." msgstr "" msgid "" @@ -261,8 +261,8 @@ msgstr "" msgid "" "Uses an incremental encoder to iteratively encode the input provided by " -"*iterator*. *iterator* must yield :class:`str` objects. This function is a :" -"term:`generator`. The *errors* argument (as well as any other keyword " +"*iterator*. *iterator* must yield :class:`str` objects. This function is " +"a :term:`generator`. The *errors* argument (as well as any other keyword " "argument) is passed through to the incremental encoder." msgstr "" @@ -282,8 +282,8 @@ msgstr "" msgid "" "This function requires that the codec accept :class:`bytes` objects to " "decode. Therefore it does not support text-to-text encoders such as " -"``rot_13``, although ``rot_13`` may be used equivalently with :func:" -"`iterencode`." +"``rot_13``, although ``rot_13`` may be used equivalently " +"with :func:`iterencode`." msgstr "" msgid "" @@ -309,11 +309,11 @@ msgid "" "These constants define various byte sequences, being Unicode byte order " "marks (BOMs) for several encodings. They are used in UTF-16 and UTF-32 data " "streams to indicate the byte order used, and in UTF-8 as a Unicode " -"signature. :const:`BOM_UTF16` is either :const:`BOM_UTF16_BE` or :const:" -"`BOM_UTF16_LE` depending on the platform's native byte order, :const:`BOM` " -"is an alias for :const:`BOM_UTF16`, :const:`BOM_LE` for :const:" -"`BOM_UTF16_LE` and :const:`BOM_BE` for :const:`BOM_UTF16_BE`. The others " -"represent the BOM in UTF-8 and UTF-32 encodings." +"signature. :const:`BOM_UTF16` is either :const:`BOM_UTF16_BE` " +"or :const:`BOM_UTF16_LE` depending on the platform's native byte " +"order, :const:`BOM` is an alias for :const:`BOM_UTF16`, :const:`BOM_LE` " +"for :const:`BOM_UTF16_LE` and :const:`BOM_BE` for :const:`BOM_UTF16_BE`. The " +"others represent the BOM in UTF-8 and UTF-32 encodings." msgstr "" msgid "Codec Base Classes" @@ -382,9 +382,10 @@ msgstr "" msgid "" "Replace with backslashed escape sequences. On encoding, use hexadecimal form " -"of Unicode code point with formats :samp:`\\\\x{hh}` :samp:`\\\\u{xxxx}` :" -"samp:`\\\\U{xxxxxxxx}`. On decoding, use hexadecimal form of byte value with " -"format :samp:`\\\\x{hh}`. Implemented in :func:`backslashreplace_errors`." +"of Unicode code point with formats :samp:`\\\\x{hh}` :samp:`\\\\u{xxxx}" +"` :samp:`\\\\U{xxxxxxxx}`. On decoding, use hexadecimal form of byte value " +"with format :samp:`\\\\x{hh}`. Implemented " +"in :func:`backslashreplace_errors`." msgstr "" msgid "``'surrogateescape'``" @@ -398,8 +399,8 @@ msgid "" msgstr "" msgid "" -"The following error handlers are only applicable to encoding (within :term:" -"`text encodings `):" +"The following error handlers are only applicable to encoding " +"(within :term:`text encodings `):" msgstr "" msgid "``'xmlcharrefreplace'``" @@ -407,8 +408,8 @@ msgstr "" msgid "" "Replace with XML/HTML numeric character reference, which is a decimal form " -"of Unicode code point with format :samp:`&#{num};`. Implemented in :func:" -"`xmlcharrefreplace_errors`." +"of Unicode code point with format :samp:`&#{num};`. Implemented " +"in :func:`xmlcharrefreplace_errors`." msgstr "" msgid "``'namereplace'``" @@ -416,8 +417,8 @@ msgstr "" msgid "" "Replace with ``\\N{...}`` escape sequences, what appears in the braces is " -"the Name property from Unicode Character Database. Implemented in :func:" -"`namereplace_errors`." +"the Name property from Unicode Character Database. Implemented " +"in :func:`namereplace_errors`." msgstr "" msgid "" @@ -467,17 +468,18 @@ msgid "" msgstr "" msgid "" -"For encoding, *error_handler* will be called with a :exc:" -"`UnicodeEncodeError` instance, which contains information about the location " -"of the error. The error handler must either raise this or a different " -"exception, or return a tuple with a replacement for the unencodable part of " -"the input and a position where encoding should continue. The replacement may " -"be either :class:`str` or :class:`bytes`. If the replacement is bytes, the " -"encoder will simply copy them into the output buffer. If the replacement is " -"a string, the encoder will encode the replacement. Encoding continues on " -"original input at the specified position. Negative position values will be " -"treated as being relative to the end of the input string. If the resulting " -"position is out of bound an :exc:`IndexError` will be raised." +"For encoding, *error_handler* will be called with " +"a :exc:`UnicodeEncodeError` instance, which contains information about the " +"location of the error. The error handler must either raise this or a " +"different exception, or return a tuple with a replacement for the " +"unencodable part of the input and a position where encoding should continue. " +"The replacement may be either :class:`str` or :class:`bytes`. If the " +"replacement is bytes, the encoder will simply copy them into the output " +"buffer. If the replacement is a string, the encoder will encode the " +"replacement. Encoding continues on original input at the specified position. " +"Negative position values will be treated as being relative to the end of the " +"input string. If the resulting position is out of bound an :exc:`IndexError` " +"will be raised." msgstr "" msgid "" @@ -538,8 +540,8 @@ msgid "Works with decoding and translating." msgstr "" msgid "" -"Implements the ``'xmlcharrefreplace'`` error handling (for encoding within :" -"term:`text encoding` only)." +"Implements the ``'xmlcharrefreplace'`` error handling (for encoding " +"within :term:`text encoding` only)." msgstr "" msgid "" @@ -549,8 +551,8 @@ msgid "" msgstr "" msgid "" -"Implements the ``'namereplace'`` error handling (for encoding within :term:" -"`text encoding` only)." +"Implements the ``'namereplace'`` error handling (for encoding " +"within :term:`text encoding` only)." msgstr "" msgid "" @@ -581,9 +583,9 @@ msgid "" msgstr "" msgid "" -"The method may not store state in the :class:`Codec` instance. Use :class:" -"`StreamWriter` for codecs which have to keep state in order to make encoding " -"efficient." +"The method may not store state in the :class:`Codec` instance. " +"Use :class:`StreamWriter` for codecs which have to keep state in order to " +"make encoding efficient." msgstr "" msgid "" @@ -605,9 +607,9 @@ msgid "" msgstr "" msgid "" -"The method may not store state in the :class:`Codec` instance. Use :class:" -"`StreamReader` for codecs which have to keep state in order to make decoding " -"efficient." +"The method may not store state in the :class:`Codec` instance. " +"Use :class:`StreamReader` for codecs which have to keep state in order to " +"make decoding efficient." msgstr "" msgid "" @@ -622,17 +624,17 @@ msgid "" "The :class:`IncrementalEncoder` and :class:`IncrementalDecoder` classes " "provide the basic interface for incremental encoding and decoding. Encoding/" "decoding the input isn't done with one call to the stateless encoder/decoder " -"function, but with multiple calls to the :meth:`~IncrementalEncoder.encode`/:" -"meth:`~IncrementalDecoder.decode` method of the incremental encoder/decoder. " -"The incremental encoder/decoder keeps track of the encoding/decoding process " -"during method calls." +"function, but with multiple calls to " +"the :meth:`~IncrementalEncoder.encode`/:meth:`~IncrementalDecoder.decode` " +"method of the incremental encoder/decoder. The incremental encoder/decoder " +"keeps track of the encoding/decoding process during method calls." msgstr "" msgid "" -"The joined output of calls to the :meth:`~IncrementalEncoder.encode`/:meth:" -"`~IncrementalDecoder.decode` method is the same as if all the single inputs " -"were joined into one, and this input was encoded/decoded with the stateless " -"encoder/decoder." +"The joined output of calls to " +"the :meth:`~IncrementalEncoder.encode`/:meth:`~IncrementalDecoder.decode` " +"method is the same as if all the single inputs were joined into one, and " +"this input was encoded/decoded with the stateless encoder/decoder." msgstr "" msgid "IncrementalEncoder Objects" @@ -662,19 +664,19 @@ msgstr "" msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " -"error handling strategies during the lifetime of the :class:" -"`IncrementalEncoder` object." +"error handling strategies during the lifetime of " +"the :class:`IncrementalEncoder` object." msgstr "" msgid "" "Encodes *object* (taking the current state of the encoder into account) and " -"returns the resulting encoded object. If this is the last call to :meth:" -"`encode` *final* must be true (the default is false)." +"returns the resulting encoded object. If this is the last call " +"to :meth:`encode` *final* must be true (the default is false)." msgstr "" msgid "" -"Reset the encoder to the initial state. The output is discarded: call ``." -"encode(object, final=True)``, passing an empty byte or text string if " +"Reset the encoder to the initial state. The output is discarded: call " +"``.encode(object, final=True)``, passing an empty byte or text string if " "necessary, to reset the encoder and to get the output." msgstr "" @@ -718,18 +720,18 @@ msgstr "" msgid "" "The *errors* argument will be assigned to an attribute of the same name. " "Assigning to this attribute makes it possible to switch between different " -"error handling strategies during the lifetime of the :class:" -"`IncrementalDecoder` object." +"error handling strategies during the lifetime of " +"the :class:`IncrementalDecoder` object." msgstr "" msgid "" "Decodes *object* (taking the current state of the decoder into account) and " -"returns the resulting decoded object. If this is the last call to :meth:" -"`decode` *final* must be true (the default is false). If *final* is true the " -"decoder must decode the input completely and must flush all buffers. If this " -"isn't possible (e.g. because of incomplete byte sequences at the end of the " -"input) it must initiate error handling just like in the stateless case " -"(which might raise an exception)." +"returns the resulting decoded object. If this is the last call " +"to :meth:`decode` *final* must be true (the default is false). If *final* is " +"true the decoder must decode the input completely and must flush all " +"buffers. If this isn't possible (e.g. because of incomplete byte sequences " +"at the end of the input) it must initiate error handling just like in the " +"stateless case (which might raise an exception)." msgstr "" msgid "Reset the decoder to the initial state." @@ -859,8 +861,8 @@ msgid "" msgstr "" msgid "" -"The set of allowed values for the *errors* argument can be extended with :" -"func:`register_error`." +"The set of allowed values for the *errors* argument can be extended " +"with :func:`register_error`." msgstr "" msgid "Decodes data from the stream and returns the resulting object." @@ -915,8 +917,8 @@ msgid "" msgstr "" msgid "" -"*sizehint*, if given, is passed as the *size* argument to the stream's :meth:" -"`read` method." +"*sizehint*, if given, is passed as the *size* argument to the " +"stream's :meth:`read` method." msgstr "" msgid "" @@ -938,8 +940,8 @@ msgid "" msgstr "" msgid "" -"The design is such that one can use the factory functions returned by the :" -"func:`lookup` function to construct the instance." +"The design is such that one can use the factory functions returned by " +"the :func:`lookup` function to construct the instance." msgstr "" msgid "" @@ -951,8 +953,8 @@ msgid "" msgstr "" msgid "" -":class:`StreamReaderWriter` instances define the combined interfaces of :" -"class:`StreamReader` and :class:`StreamWriter` classes. They inherit all " +":class:`StreamReaderWriter` instances define the combined interfaces " +"of :class:`StreamReader` and :class:`StreamWriter` classes. They inherit all " "other methods and attributes from the underlying stream." msgstr "" @@ -992,9 +994,9 @@ msgid "" msgstr "" msgid "" -":class:`StreamRecoder` instances define the combined interfaces of :class:" -"`StreamReader` and :class:`StreamWriter` classes. They inherit all other " -"methods and attributes from the underlying stream." +":class:`StreamRecoder` instances define the combined interfaces " +"of :class:`StreamReader` and :class:`StreamWriter` classes. They inherit all " +"other methods and attributes from the underlying stream." msgstr "" msgid "Encodings and Unicode" @@ -1904,9 +1906,9 @@ msgid "Text Encodings" msgstr "" msgid "" -"The following codecs provide :class:`str` to :class:`bytes` encoding and :" -"term:`bytes-like object` to :class:`str` decoding, similar to the Unicode " -"text encodings." +"The following codecs provide :class:`str` to :class:`bytes` encoding " +"and :term:`bytes-like object` to :class:`str` decoding, similar to the " +"Unicode text encodings." msgstr "" msgid "idna" @@ -1917,6 +1919,11 @@ msgid "" "``errors='strict'`` is supported." msgstr "" +msgid "" +"This codec builds on ``punycode``, whose algorithms scale poorly, so limit " +"the length of untrusted input." +msgstr "" + msgid "mbcs" msgstr "" @@ -2088,10 +2095,10 @@ msgstr "" msgid "" "The following functions provide encoding and decoding functionality similar " -"to codecs, but are not available as named codecs through :func:`codecs." -"encode` or :func:`codecs.decode`. They are used internally (for example, by :" -"mod:`pickle`) and behave similarly to the ``string_escape`` codec that was " -"removed in Python 3." +"to codecs, but are not available as named codecs " +"through :func:`codecs.encode` or :func:`codecs.decode`. They are used " +"internally (for example, by :mod:`pickle`) and behave similarly to the " +"``string_escape`` codec that was removed in Python 3." msgstr "" msgid "" @@ -2117,9 +2124,9 @@ msgid "Text Transforms" msgstr "" msgid "" -"The following codec provides a text transform: a :class:`str` to :class:" -"`str` mapping. It is not supported by :meth:`str.encode` (which only " -"produces :class:`bytes` output)." +"The following codec provides a text transform: a :class:`str` " +"to :class:`str` mapping. It is not supported by :meth:`str.encode` (which " +"only produces :class:`bytes` output)." msgstr "" msgid "rot_13" @@ -2167,10 +2174,10 @@ msgid "" msgstr "" msgid "" -"This function first normalizes the *encoding* using :func:" -"`normalize_encoding`, then looks for a corresponding alias. It attempts to " -"import a codec module from the encodings package using either the alias or " -"the normalized name. If the module is found and defines a valid " +"This function first normalizes the *encoding* " +"using :func:`normalize_encoding`, then looks for a corresponding alias. It " +"attempts to import a codec module from the encodings package using either " +"the alias or the normalized name. If the module is found and defines a valid " "``getregentry()`` function that returns a :class:`codecs.CodecInfo` object, " "the codec is cached and returned." msgstr "" @@ -2209,6 +2216,11 @@ msgid "" "encoding and :mod:`stringprep`." msgstr "" +msgid "" +"This module builds on ``punycode``, whose algorithms scale poorly, so limit " +"the length of untrusted input." +msgstr "" + msgid "" "If you need the IDNA 2008 standard from :rfc:`5891` and :rfc:`5895`, use the " "third-party :pypi:`idna` module." @@ -2216,15 +2228,15 @@ msgstr "" msgid "" "These RFCs together define a protocol to support non-ASCII characters in " -"domain names. A domain name containing non-ASCII characters (such as ``www." -"Alliancefrançaise.nu``) is converted into an ASCII-compatible encoding (ACE, " -"such as ``www.xn--alliancefranaise-npb.nu``). The ACE form of the domain " -"name is then used in all places where arbitrary characters are not allowed " -"by the protocol, such as DNS queries, HTTP :mailheader:`Host` fields, and so " -"on. This conversion is carried out in the application; if possible invisible " -"to the user: The application should transparently convert Unicode domain " -"labels to IDNA on the wire, and convert back ACE labels to Unicode before " -"presenting them to the user." +"domain names. A domain name containing non-ASCII characters (such as " +"``www.Alliancefrançaise.nu``) is converted into an ASCII-compatible encoding " +"(ACE, such as ``www.xn--alliancefranaise-npb.nu``). The ACE form of the " +"domain name is then used in all places where arbitrary characters are not " +"allowed by the protocol, such as DNS queries, HTTP :mailheader:`Host` " +"fields, and so on. This conversion is carried out in the application; if " +"possible invisible to the user: The application should transparently convert " +"Unicode domain labels to IDNA on the wire, and convert back ACE labels to " +"Unicode before presenting them to the user." msgstr "" msgid "" @@ -2237,8 +2249,8 @@ msgid "" "the :mod:`socket` module transparently converts Unicode host names to ACE, " "so that applications need not be concerned about converting host names " "themselves when they pass them to the socket module. On top of that, modules " -"that have host names as function parameters, such as :mod:`http.client` and :" -"mod:`ftplib`, accept Unicode host names (:mod:`http.client` then also " +"that have host names as function parameters, such as :mod:`http.client` " +"and :mod:`ftplib`, accept Unicode host names (:mod:`http.client` then also " "transparently sends an IDNA hostname in the :mailheader:`Host` field if it " "sends that field at all)." msgstr "" diff --git a/library/codeop.po b/library/codeop.po index 09f8367..5d96bd7 100644 --- a/library/codeop.po +++ b/library/codeop.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -62,16 +62,16 @@ msgid "" msgstr "" msgid "" -"If there is a problem with *source*, an exception will be raised. :exc:" -"`SyntaxError` is raised if there is invalid Python syntax, and :exc:" -"`OverflowError` or :exc:`ValueError` if there is an invalid literal." +"If there is a problem with *source*, an exception will be " +"raised. :exc:`SyntaxError` is raised if there is invalid Python syntax, " +"and :exc:`OverflowError` or :exc:`ValueError` if there is an invalid literal." msgstr "" msgid "" "The *symbol* argument determines whether *source* is compiled as a statement " "(``'single'``, the default), as a sequence of :term:`statement` (``'exec'``) " -"or as an :term:`expression` (``'eval'``). Any other value will cause :exc:" -"`ValueError` to be raised." +"or as an :term:`expression` (``'eval'``). Any other value will " +"cause :exc:`ValueError` to be raised." msgstr "" msgid "" diff --git a/library/collections.abc.po b/library/collections.abc.po index fa30c45..0b314b7 100644 --- a/library/collections.abc.po +++ b/library/collections.abc.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,8 +34,8 @@ msgstr "" msgid "" "This module provides :term:`abstract base classes ` " "that can be used to test whether a class provides a particular interface; " -"for example, whether it is :term:`hashable` or whether it is a :term:" -"`mapping`." +"for example, whether it is :term:`hashable` or whether it is " +"a :term:`mapping`." msgstr "" msgid "" @@ -97,9 +97,9 @@ msgstr "" msgid "" "In this example, class :class:`!D` does not need to define ``__contains__``, " "``__iter__``, and ``__reversed__`` because the :ref:`in-operator " -"`, the :term:`iteration ` logic, and the :func:" -"`reversed` function automatically fall back to using ``__getitem__`` and " -"``__len__``." +"`, the :term:`iteration ` logic, and " +"the :func:`reversed` function automatically fall back to using " +"``__getitem__`` and ``__len__``." msgstr "" msgid "" @@ -386,8 +386,8 @@ msgid "" "Checking ``isinstance(obj, Iterable)`` detects classes that are registered " "as :class:`Iterable` or that have an :meth:`~container.__iter__` method, but " "it does not detect classes that iterate with the :meth:`~object.__getitem__` " -"method. The only reliable way to determine whether an object is :term:" -"`iterable` is to call ``iter(obj)``." +"method. The only reliable way to determine whether an object " +"is :term:`iterable` is to call ``iter(obj)``." msgstr "" msgid "Collections Abstract Base Classes -- Detailed Descriptions" @@ -417,16 +417,17 @@ msgid "" "Checking ``isinstance(obj, Iterable)`` detects classes that are registered " "as :class:`Iterable` or that have an :meth:`~container.__iter__` method, but " "it does not detect classes that iterate with the :meth:`~object.__getitem__` " -"method. The only reliable way to determine whether an object is :term:" -"`iterable` is to call ``iter(obj)``." +"method. The only reliable way to determine whether an object " +"is :term:`iterable` is to call ``iter(obj)``." msgstr "" msgid "ABC for sized iterable container classes." msgstr "" msgid "" -"ABC for classes that provide the :meth:`~iterator.__iter__` and :meth:" -"`~iterator.__next__` methods. See also the definition of :term:`iterator`." +"ABC for classes that provide the :meth:`~iterator.__iter__` " +"and :meth:`~iterator.__next__` methods. See also the definition " +"of :term:`iterator`." msgstr "" msgid "" @@ -435,28 +436,29 @@ msgid "" msgstr "" msgid "" -"ABC for :term:`generator` classes that implement the protocol defined in :" -"pep:`342` that extends :term:`iterators ` with the :meth:" -"`~generator.send`, :meth:`~generator.throw` and :meth:`~generator.close` " -"methods." +"ABC for :term:`generator` classes that implement the protocol defined " +"in :pep:`342` that extends :term:`iterators ` with " +"the :meth:`~generator.send`, :meth:`~generator.throw` " +"and :meth:`~generator.close` methods." msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`!Generator` in type annotations." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`!Generator` in type annotations." msgstr "" msgid "ABCs for read-only and mutable :term:`sequences `." msgstr "" msgid "" -"Implementation note: Some of the mixin methods, such as :meth:`~container." -"__iter__`, :meth:`~object.__reversed__`, and :meth:`~sequence.index` make " -"repeated calls to the underlying :meth:`~object.__getitem__` method. " -"Consequently, if :meth:`~object.__getitem__` is implemented with constant " -"access speed, the mixin methods will have linear performance; however, if " -"the underlying method is linear (as it would be with a linked list), the " -"mixins will have quadratic performance and will likely need to be overridden." +"Implementation note: Some of the mixin methods, such " +"as :meth:`~container.__iter__`, :meth:`~object.__reversed__`, " +"and :meth:`~sequence.index` make repeated calls to the " +"underlying :meth:`~object.__getitem__` method. Consequently, " +"if :meth:`~object.__getitem__` is implemented with constant access speed, " +"the mixin methods will have linear performance; however, if the underlying " +"method is linear (as it would be with a linked list), the mixins will have " +"quadratic performance and will likely need to be overridden." msgstr "" msgid "Return first index of *value*." @@ -510,13 +512,13 @@ msgstr "" msgid "" "ABC for :term:`awaitable` objects, which can be used in :keyword:`await` " -"expressions. Custom implementations must provide the :meth:`~object." -"__await__` method." +"expressions. Custom implementations must provide " +"the :meth:`~object.__await__` method." msgstr "" msgid "" -":term:`Coroutine ` objects and instances of the :class:" -"`~collections.abc.Coroutine` ABC are all instances of this ABC." +":term:`Coroutine ` objects and instances of " +"the :class:`~collections.abc.Coroutine` ABC are all instances of this ABC." msgstr "" msgid "" @@ -529,10 +531,11 @@ msgstr "" msgid "" "ABC for :term:`coroutine` compatible classes. These implement the following " -"methods, defined in :ref:`coroutine-objects`: :meth:`~coroutine.send`, :meth:" -"`~coroutine.throw`, and :meth:`~coroutine.close`. Custom implementations " -"must also implement :meth:`~object.__await__`. All :class:`Coroutine` " -"instances are also instances of :class:`Awaitable`." +"methods, defined in :ref:`coroutine-" +"objects`: :meth:`~coroutine.send`, :meth:`~coroutine.throw`, " +"and :meth:`~coroutine.close`. Custom implementations must also " +"implement :meth:`~object.__await__`. All :class:`Coroutine` instances are " +"also instances of :class:`Awaitable`." msgstr "" msgid "" @@ -544,9 +547,9 @@ msgid "" msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`!Coroutine` in type annotations. The variance and order of type parameters " -"correspond to those of :class:`Generator`." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`!Coroutine` in type annotations. The variance and order of " +"type parameters correspond to those of :class:`Generator`." msgstr "" msgid "" @@ -565,8 +568,8 @@ msgid "" msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`!AsyncGenerator` in type annotations." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`!AsyncGenerator` in type annotations." msgstr "" msgid "" @@ -592,9 +595,10 @@ msgid "" "Several of the ABCs are also useful as mixins that make it easier to develop " "classes supporting container APIs. For example, to write a class supporting " "the full :class:`Set` API, it is only necessary to supply the three " -"underlying abstract methods: :meth:`~object.__contains__`, :meth:`~container." -"__iter__`, and :meth:`~object.__len__`. The ABC supplies the remaining " -"methods such as :meth:`!__and__` and :meth:`~frozenset.isdisjoint`::" +"underlying abstract " +"methods: :meth:`~object.__contains__`, :meth:`~container.__iter__`, " +"and :meth:`~object.__len__`. The ABC supplies the remaining methods such " +"as :meth:`!__and__` and :meth:`~frozenset.isdisjoint`::" msgstr "" msgid "" @@ -629,12 +633,12 @@ msgid "" "Since some set operations create new sets, the default mixin methods need a " "way to create new instances from an :term:`iterable`. The class constructor " "is assumed to have a signature in the form ``ClassName(iterable)``. That " -"assumption is factored-out to an internal :class:`classmethod` called :meth:" -"`!_from_iterable` which calls ``cls(iterable)`` to produce a new set. If " -"the :class:`Set` mixin is being used in a class with a different constructor " -"signature, you will need to override :meth:`!_from_iterable` with a " -"classmethod or regular method that can construct new instances from an " -"iterable argument." +"assumption is factored-out to an internal :class:`classmethod` " +"called :meth:`!_from_iterable` which calls ``cls(iterable)`` to produce a " +"new set. If the :class:`Set` mixin is being used in a class with a different " +"constructor signature, you will need to override :meth:`!_from_iterable` " +"with a classmethod or regular method that can construct new instances from " +"an iterable argument." msgstr "" msgid "" diff --git a/library/collections.po b/library/collections.po index 5162030..4c5655c 100644 --- a/library/collections.po +++ b/library/collections.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,8 +30,8 @@ msgstr "" msgid "" "This module implements specialized container datatypes providing " -"alternatives to Python's general purpose built-in containers, :class:" -"`dict`, :class:`list`, :class:`set`, and :class:`tuple`." +"alternatives to Python's general purpose built-in " +"containers, :class:`dict`, :class:`list`, :class:`set`, and :class:`tuple`." msgstr "" msgid ":func:`namedtuple`" @@ -158,10 +158,11 @@ msgstr "" msgid "" "Property returning a new :class:`ChainMap` containing all of the maps in the " "current instance except the first one. This is useful for skipping the " -"first map in the search. Use cases are similar to those for the :keyword:" -"`nonlocal` keyword used in :term:`nested scopes `. The use " -"cases also parallel those for the built-in :func:`super` function. A " -"reference to ``d.parents`` is equivalent to: ``ChainMap(*d.maps[1:])``." +"first map in the search. Use cases are similar to those for " +"the :keyword:`nonlocal` keyword used in :term:`nested scopes `. The use cases also parallel those for the built-in :func:`super` " +"function. A reference to ``d.parents`` is equivalent to: " +"``ChainMap(*d.maps[1:])``." msgstr "" msgid "" @@ -201,9 +202,9 @@ msgstr "" msgid "" "Django's `Context class `_ for templating is a read-only chain of mappings. It " -"also features pushing and popping of contexts similar to the :meth:" -"`~collections.ChainMap.new_child` method and the :attr:`~collections." -"ChainMap.parents` property." +"also features pushing and popping of contexts similar to " +"the :meth:`~collections.ChainMap.new_child` method and " +"the :attr:`~collections.ChainMap.parents` property." msgstr "" msgid "" @@ -214,8 +215,8 @@ msgid "" msgstr "" msgid "" -"A `greatly simplified read-only version of Chainmap `_." +"A `greatly simplified read-only version of Chainmap `_." msgstr "" msgid ":class:`ChainMap` Examples and Recipes" @@ -507,9 +508,9 @@ msgstr "" msgid "" "For in-place operations such as ``c[key] += 1``, the value type need only " "support addition and subtraction. So fractions, floats, and decimals would " -"work and negative values are supported. The same is also true for :meth:" -"`~Counter.update` and :meth:`~Counter.subtract` which allow negative and " -"zero values for both inputs and outputs." +"work and negative values are supported. The same is also true " +"for :meth:`~Counter.update` and :meth:`~Counter.subtract` which allow " +"negative and zero values for both inputs and outputs." msgstr "" msgid "" @@ -525,8 +526,8 @@ msgid "" msgstr "" msgid "" -"`Bag class `_ in Smalltalk." +"`Bag class `_ in Smalltalk." msgstr "" msgid "" @@ -628,8 +629,8 @@ msgid "Insert *value* into the deque at position *index*." msgstr "" msgid "" -"If the insertion would cause a bounded deque to grow beyond *maxlen*, an :" -"exc:`IndexError` is raised." +"If the insertion would cause a bounded deque to grow beyond *maxlen*, " +"an :exc:`IndexError` is raised." msgstr "" msgid "" @@ -643,8 +644,8 @@ msgid "" msgstr "" msgid "" -"Remove the first occurrence of *value*. If not found, raises a :exc:" -"`ValueError`." +"Remove the first occurrence of *value*. If not found, raises " +"a :exc:`ValueError`." msgstr "" msgid "Reverse the elements of the deque in-place and then return ``None``." @@ -778,11 +779,11 @@ msgstr "" msgid "" "A `round-robin scheduler `_ can be implemented with input iterators stored in a :" -"class:`deque`. Values are yielded from the active iterator in position " -"zero. If that iterator is exhausted, it can be removed with :meth:`~deque." -"popleft`; otherwise, it can be cycled back to the end with the :meth:`~deque." -"rotate` method::" +"robin_scheduling>`_ can be implemented with input iterators stored in " +"a :class:`deque`. Values are yielded from the active iterator in position " +"zero. If that iterator is :term:`exhausted`, it can be removed " +"with :meth:`~deque.popleft`; otherwise, it can be cycled back to the end " +"with the :meth:`~deque.rotate` method::" msgstr "" msgid "" @@ -813,12 +814,13 @@ msgid "" msgstr "" msgid "" -"To implement :class:`deque` slicing, use a similar approach applying :meth:" -"`~deque.rotate` to bring a target element to the left side of the deque. " -"Remove old entries with :meth:`~deque.popleft`, add new entries with :meth:" -"`~deque.extend`, and then reverse the rotation. With minor variations on " -"that approach, it is easy to implement Forth style stack manipulations such " -"as ``dup``, ``drop``, ``swap``, ``over``, ``pick``, ``rot``, and ``roll``." +"To implement :class:`deque` slicing, use a similar approach " +"applying :meth:`~deque.rotate` to bring a target element to the left side of " +"the deque. Remove old entries with :meth:`~deque.popleft`, add new entries " +"with :meth:`~deque.extend`, and then reverse the rotation. With minor " +"variations on that approach, it is easy to implement Forth style stack " +"manipulations such as ``dup``, ``drop``, ``swap``, ``over``, ``pick``, " +"``rot``, and ``roll``." msgstr "" msgid ":class:`defaultdict` objects" @@ -832,10 +834,10 @@ msgid "" msgstr "" msgid "" -"The first argument provides the initial value for the :attr:" -"`default_factory` attribute; it defaults to ``None``. All remaining " -"arguments are treated the same as if they were passed to the :class:`dict` " -"constructor, including keyword arguments." +"The first argument provides the initial value for " +"the :attr:`default_factory` attribute; it defaults to ``None``. All " +"remaining arguments are treated the same as if they were passed to " +"the :class:`dict` constructor, including keyword arguments." msgstr "" msgid "" @@ -849,8 +851,8 @@ msgid "" msgstr "" msgid "" -"If the :attr:`default_factory` attribute is ``None``, this raises a :exc:" -"`KeyError` exception with the *key* as argument." +"If the :attr:`default_factory` attribute is ``None``, this raises " +"a :exc:`KeyError` exception with the *key* as argument." msgstr "" msgid "" @@ -865,16 +867,16 @@ msgid "" msgstr "" msgid "" -"This method is called by the :meth:`~object.__getitem__` method of the :" -"class:`dict` class when the requested key is not found; whatever it returns " -"or raises is then returned or raised by :meth:`~object.__getitem__`." +"This method is called by the :meth:`~object.__getitem__` method of " +"the :class:`dict` class when the requested key is not found; whatever it " +"returns or raises is then returned or raised by :meth:`~object.__getitem__`." msgstr "" msgid "" -"Note that :meth:`__missing__` is *not* called for any operations besides :" -"meth:`~object.__getitem__`. This means that :meth:`~dict.get` will, like " -"normal dictionaries, return ``None`` as a default rather than using :attr:" -"`default_factory`." +"Note that :meth:`__missing__` is *not* called for any operations " +"besides :meth:`~object.__getitem__`. This means that :meth:`~dict.get` will, " +"like normal dictionaries, return ``None`` as a default rather than " +"using :attr:`default_factory`." msgstr "" msgid ":class:`defaultdict` objects support the following instance variable:" @@ -900,26 +902,27 @@ msgstr "" msgid "" "When each key is encountered for the first time, it is not already in the " -"mapping; so an entry is automatically created using the :attr:`~defaultdict." -"default_factory` function which returns an empty :class:`list`. The :meth:" -"`list.append` operation then attaches the value to the new list. When keys " -"are encountered again, the look-up proceeds normally (returning the list for " -"that key) and the :meth:`list.append` operation adds another value to the " -"list. This technique is simpler and faster than an equivalent technique " +"mapping; so an entry is automatically created using " +"the :attr:`~defaultdict.default_factory` function which returns an " +"empty :class:`list`. The :meth:`list.append` operation then attaches the " +"value to the new list. When keys are encountered again, the look-up " +"proceeds normally (returning the list for that key) and " +"the :meth:`list.append` operation adds another value to the list. This " +"technique is simpler and faster than an equivalent technique " "using :meth:`dict.setdefault`:" msgstr "" msgid "" -"Setting the :attr:`~defaultdict.default_factory` to :class:`int` makes the :" -"class:`defaultdict` useful for counting (like a bag or multiset in other " -"languages):" +"Setting the :attr:`~defaultdict.default_factory` to :class:`int` makes " +"the :class:`defaultdict` useful for counting (like a bag or multiset in " +"other languages):" msgstr "" msgid "" -"When a letter is first encountered, it is missing from the mapping, so the :" -"attr:`~defaultdict.default_factory` function calls :func:`int` to supply a " -"default count of zero. The increment operation then builds up the count for " -"each letter." +"When a letter is first encountered, it is missing from the mapping, so " +"the :attr:`~defaultdict.default_factory` function calls :func:`int` to " +"supply a default count of zero. The increment operation then builds up the " +"count for each letter." msgstr "" msgid "" @@ -930,8 +933,8 @@ msgid "" msgstr "" msgid "" -"Setting the :attr:`~defaultdict.default_factory` to :class:`set` makes the :" -"class:`defaultdict` useful for building a dictionary of sets:" +"Setting the :attr:`~defaultdict.default_factory` to :class:`set` makes " +"the :class:`defaultdict` useful for building a dictionary of sets:" msgstr "" msgid ":func:`namedtuple` Factory Function for Tuples with Named Fields" @@ -948,9 +951,9 @@ msgid "" "Returns a new tuple subclass named *typename*. The new subclass is used to " "create tuple-like objects that have fields accessible by attribute lookup as " "well as being indexable and iterable. Instances of the subclass also have a " -"helpful docstring (with *typename* and *field_names*) and a helpful :meth:" -"`~object.__repr__` method which lists the tuple contents in a ``name=value`` " -"format." +"helpful docstring (with *typename* and *field_names*) and a " +"helpful :meth:`~object.__repr__` method which lists the tuple contents in a " +"``name=value`` format." msgstr "" msgid "" @@ -962,8 +965,9 @@ msgstr "" msgid "" "Any valid Python identifier may be used for a fieldname except for names " "starting with an underscore. Valid identifiers consist of letters, digits, " -"and underscores but do not start with a digit or underscore and cannot be a :" -"mod:`keyword` such as *class*, *for*, *return*, *global*, *pass*, or *raise*." +"and underscores but do not start with a digit or underscore and cannot be " +"a :mod:`keyword` such as *class*, *for*, *return*, *global*, *pass*, or " +"*raise*." msgstr "" msgid "" @@ -1012,8 +1016,8 @@ msgid "Removed the *verbose* parameter and the :attr:`!_source` attribute." msgstr "" msgid "" -"Added the *defaults* parameter and the :attr:`~somenamedtuple." -"_field_defaults` attribute." +"Added the *defaults* parameter and " +"the :attr:`~somenamedtuple._field_defaults` attribute." msgstr "" msgid "" @@ -1143,8 +1147,8 @@ msgid "" msgstr "" msgid "" -"To retrieve a field whose name is stored in a string, use the :func:" -"`getattr` function:" +"To retrieve a field whose name is stored in a string, use " +"the :func:`getattr` function:" msgstr "" msgid "" @@ -1333,15 +1337,15 @@ msgid "" msgstr "" msgid "" -"Equality tests between :class:`OrderedDict` objects and other :class:" -"`~collections.abc.Mapping` objects are order-insensitive like regular " -"dictionaries. This allows :class:`OrderedDict` objects to be substituted " -"anywhere a regular dictionary is used." +"Equality tests between :class:`OrderedDict` objects and " +"other :class:`~collections.abc.Mapping` objects are order-insensitive like " +"regular dictionaries. This allows :class:`OrderedDict` objects to be " +"substituted anywhere a regular dictionary is used." msgstr "" msgid "" -"The items, keys, and values :term:`views ` of :class:" -"`OrderedDict` now support reverse iteration using :func:`reversed`." +"The items, keys, and values :term:`views ` " +"of :class:`OrderedDict` now support reverse iteration using :func:`reversed`." msgstr "" msgid "" @@ -1370,8 +1374,8 @@ msgid "" msgstr "" msgid "" -"An :class:`OrderedDict` would also be useful for implementing variants of :" -"deco:`functools.lru_cache`:" +"An :class:`OrderedDict` would also be useful for implementing variants " +"of :deco:`functools.lru_cache`:" msgstr "" msgid "" @@ -1449,9 +1453,9 @@ msgstr "" msgid "" "Class that simulates a dictionary. The instance's contents are kept in a " -"regular dictionary, which is accessible via the :attr:`data` attribute of :" -"class:`!UserDict` instances. If arguments are provided, they are used to " -"initialize :attr:`data`, like a regular dictionary." +"regular dictionary, which is accessible via the :attr:`data` attribute " +"of :class:`!UserDict` instances. If arguments are provided, they are used " +"to initialize :attr:`data`, like a regular dictionary." msgstr "" msgid "" @@ -1468,9 +1472,9 @@ msgstr "" msgid "" "Remove and return a ``(key, value)`` pair from the wrapped dictionary. Pairs " -"are returned in the same order as ``data.popitem()``. (For the default :meth:" -"`dict.popitem`, this order is :abbr:`LIFO (last-in, first-out)`.) If the " -"dictionary is empty, raises a :exc:`KeyError`." +"are returned in the same order as ``data.popitem()``. (For the " +"default :meth:`dict.popitem`, this order is :abbr:`LIFO (last-in, first-" +"out)`.) If the dictionary is empty, raises a :exc:`KeyError`." msgstr "" msgid ":class:`UserList` objects" @@ -1491,20 +1495,20 @@ msgstr "" msgid "" "Class that simulates a list. The instance's contents are kept in a regular " -"list, which is accessible via the :attr:`data` attribute of :class:" -"`UserList` instances. The instance's contents are initially set to a copy " -"of *list*, defaulting to the empty list ``[]``. *list* can be any iterable, " -"for example a real Python list or a :class:`UserList` object." +"list, which is accessible via the :attr:`data` attribute " +"of :class:`UserList` instances. The instance's contents are initially set " +"to a copy of *list*, defaulting to the empty list ``[]``. *list* can be any " +"iterable, for example a real Python list or a :class:`UserList` object." msgstr "" msgid "" -"In addition to supporting the methods and operations of mutable sequences, :" -"class:`UserList` instances provide the following attribute:" +"In addition to supporting the methods and operations of mutable " +"sequences, :class:`UserList` instances provide the following attribute:" msgstr "" msgid "" -"A real :class:`list` object used to store the contents of the :class:" -"`UserList` class." +"A real :class:`list` object used to store the contents of " +"the :class:`UserList` class." msgstr "" msgid "" @@ -1542,13 +1546,13 @@ msgid "" msgstr "" msgid "" -"In addition to supporting the methods and operations of strings, :class:" -"`UserString` instances provide the following attribute:" +"In addition to supporting the methods and operations of " +"strings, :class:`UserString` instances provide the following attribute:" msgstr "" msgid "" -"A real :class:`str` object used to store the contents of the :class:" -"`UserString` class." +"A real :class:`str` object used to store the contents of " +"the :class:`UserString` class." msgstr "" msgid "" diff --git a/library/colorsys.po b/library/colorsys.po index 73860c7..9877bf2 100644 --- a/library/colorsys.po +++ b/library/colorsys.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,9 +39,9 @@ msgid "" msgstr "" msgid "" -"More information about color spaces can be found at https://poynton.ca/" -"ColorFAQ.html and https://www.cambridgeincolour.com/tutorials/color-spaces." -"htm." +"More information about color spaces can be found at https://www.poynton.ca/" +"pdf/ColourFAQ.pdf and https://www.cambridgeincolour.com/tutorials/color-" +"spaces.htm." msgstr "" msgid "The :mod:`!colorsys` module defines the following functions:" diff --git a/library/compileall.po b/library/compileall.po index 44b7b17..b210acf 100644 --- a/library/compileall.po +++ b/library/compileall.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -132,9 +133,9 @@ msgid "" "values cause hash-based pycs to be generated. Hash-based pycs embed a hash " "of the source file contents rather than a timestamp. See :ref:`pyc-" "invalidation` for more information on how Python validates bytecode cache " -"files at runtime. The default is ``timestamp`` if the :envvar:" -"`SOURCE_DATE_EPOCH` environment variable is not set, and ``checked-hash`` if " -"the ``SOURCE_DATE_EPOCH`` environment variable is set." +"files at runtime. The default is ``timestamp`` if " +"the :envvar:`SOURCE_DATE_EPOCH` environment variable is not set, and " +"``checked-hash`` if the ``SOURCE_DATE_EPOCH`` environment variable is set." msgstr "" msgid "" @@ -176,19 +177,19 @@ msgid "" msgstr "" msgid "" -"Similarly, the :func:`compile` function respects the :data:`sys." -"pycache_prefix` setting. The generated bytecode cache will only be useful " -"if :func:`compile` is run with the same :data:`sys.pycache_prefix` (if any) " -"that will be used at runtime." +"Similarly, the :func:`compile` function respects " +"the :data:`sys.pycache_prefix` setting. The generated bytecode cache will " +"only be useful if :func:`compile` is run with the " +"same :data:`sys.pycache_prefix` (if any) that will be used at runtime." msgstr "" msgid "Public functions" msgstr "" msgid "" -"Recursively descend the directory tree named by *dir*, compiling all :file:`." -"py` files along the way. Return a true value if all the files compiled " -"successfully, and a false value otherwise." +"Recursively descend the directory tree named by *dir*, compiling " +"all :file:`.py` files along the way. Return a true value if all the files " +"compiled successfully, and a false value otherwise." msgstr "" msgid "" @@ -242,14 +243,14 @@ msgid "" "in parallel. The default is to not use multiple workers. If the platform " "can't use multiple workers and *workers* argument is given, then sequential " "compilation will be used as a fallback. If *workers* is 0, the number of " -"cores in the system is used. If *workers* is lower than ``0``, a :exc:" -"`ValueError` will be raised." +"cores in the system is used. If *workers* is lower than ``0``, " +"a :exc:`ValueError` will be raised." msgstr "" msgid "" -"*invalidation_mode* should be a member of the :class:`py_compile." -"PycInvalidationMode` enum and controls how the generated pycs are " -"invalidated at runtime." +"*invalidation_mode* should be a member of " +"the :class:`py_compile.PycInvalidationMode` enum and controls how the " +"generated pycs are invalidated at runtime." msgstr "" msgid "" @@ -293,8 +294,8 @@ msgstr "" msgid "" "Added *stripdir*, *prependdir*, *limit_sl_dest* and *hardlink_dupes* " -"arguments. Default value of *maxlevels* was changed from ``10`` to ``sys." -"getrecursionlimit()``" +"arguments. Default value of *maxlevels* was changed from ``10`` to " +"``sys.getrecursionlimit()``" msgstr "" msgid "" @@ -331,9 +332,9 @@ msgstr "" msgid "" "If *skip_curdir* is true (the default), the current directory is not " -"included in the search. All other parameters are passed to the :func:" -"`compile_dir` function. Note that unlike the other compile functions, " -"``maxlevels`` defaults to ``0``." +"included in the search. All other parameters are passed to " +"the :func:`compile_dir` function. Note that unlike the other compile " +"functions, ``maxlevels`` defaults to ``0``." msgstr "" msgid "" diff --git a/library/compression.po b/library/compression.po deleted file mode 100644 index e1dac3d..0000000 --- a/library/compression.po +++ /dev/null @@ -1,47 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "The :mod:`!compression` package" -msgstr "" - -msgid "" -"The :mod:`!compression` package contains the canonical compression modules " -"containing interfaces to several different compression algorithms. Some of " -"these modules have historically been available as separate modules; those " -"will continue to be available under their original names for compatibility " -"reasons, and will not be removed without a deprecation cycle. The use of " -"modules in :mod:`!compression` is encouraged where practical." -msgstr "" - -msgid ":mod:`!compression.bz2` -- Re-exports :mod:`bz2`" -msgstr "" - -msgid ":mod:`!compression.gzip` -- Re-exports :mod:`gzip`" -msgstr "" - -msgid ":mod:`!compression.lzma` -- Re-exports :mod:`lzma`" -msgstr "" - -msgid ":mod:`!compression.zlib` -- Re-exports :mod:`zlib`" -msgstr "" - -msgid "" -":mod:`compression.zstd` -- Wrapper for the Zstandard compression library" -msgstr "" diff --git a/library/compression.zstd.po b/library/compression.zstd.po deleted file mode 100644 index 2e54ace..0000000 --- a/library/compression.zstd.po +++ /dev/null @@ -1,979 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "" -":mod:`!compression.zstd` --- Compression compatible with the Zstandard format" -msgstr "" - -msgid "**Source code:** :source:`Lib/compression/zstd/__init__.py`" -msgstr "" - -msgid "" -"This module provides classes and functions for compressing and decompressing " -"data using the Zstandard (or *zstd*) compression algorithm. The `zstd manual " -"`__ describes " -"Zstandard as \"a fast lossless compression algorithm, targeting real-time " -"compression scenarios at zlib-level and better compression ratios.\" Also " -"included is a file interface that supports reading and writing the contents " -"of ``.zst`` files created by the :program:`zstd` utility, as well as raw " -"zstd compressed streams." -msgstr "" - -msgid "The :mod:`!compression.zstd` module contains:" -msgstr "" - -msgid "" -"The :func:`.open` function and :class:`ZstdFile` class for reading and " -"writing compressed files." -msgstr "" - -msgid "" -"The :class:`ZstdCompressor` and :class:`ZstdDecompressor` classes for " -"incremental (de)compression." -msgstr "" - -msgid "" -"The :func:`compress` and :func:`decompress` functions for one-shot " -"(de)compression." -msgstr "" - -msgid "" -"The :func:`train_dict` and :func:`finalize_dict` functions and the :class:" -"`ZstdDict` class to train and manage Zstandard dictionaries." -msgstr "" - -msgid "" -"The :class:`CompressionParameter`, :class:`DecompressionParameter`, and :" -"class:`Strategy` classes for setting advanced (de)compression parameters." -msgstr "" - -msgid "" -"This is an :term:`optional module`. If it is missing from your copy of " -"CPython, look for documentation from your distributor (that is, whoever " -"provided Python to you). If you are the distributor, see :ref:`optional-" -"module-requirements`." -msgstr "" - -msgid "Exceptions" -msgstr "" - -msgid "" -"This exception is raised when an error occurs during compression or " -"decompression, or while initializing the (de)compressor state." -msgstr "" - -msgid "Reading and writing compressed files" -msgstr "" - -msgid "" -"Open a Zstandard-compressed file in binary or text mode, returning a :term:" -"`file object`." -msgstr "" - -msgid "" -"The *file* argument can be either a file name (given as a :class:`str`, :" -"class:`bytes` or :term:`path-like ` object), in which case " -"the named file is opened, or it can be an existing file object to read from " -"or write to." -msgstr "" - -msgid "" -"The mode argument can be either ``'rb'`` for reading (default), ``'wb'`` for " -"overwriting, ``'ab'`` for appending, or ``'xb'`` for exclusive creation. " -"These can equivalently be given as ``'r'``, ``'w'``, ``'a'``, and ``'x'`` " -"respectively. You may also open in text mode with ``'rt'``, ``'wt'``, " -"``'at'``, and ``'xt'`` respectively." -msgstr "" - -msgid "" -"When reading, the *options* argument can be a dictionary providing advanced " -"decompression parameters; see :class:`DecompressionParameter` for detailed " -"information about supported parameters. The *zstd_dict* argument is a :class:" -"`ZstdDict` instance to be used during decompression. When reading, if the " -"*level* argument is not None, a :exc:`!TypeError` will be raised." -msgstr "" - -msgid "" -"When writing, the *options* argument can be a dictionary providing advanced " -"compression parameters; see :class:`CompressionParameter` for detailed " -"information about supported parameters. The *level* argument is the " -"compression level to use when writing compressed data. Only one of *level* " -"or *options* may be non-None. The *zstd_dict* argument is a :class:" -"`ZstdDict` instance to be used during compression." -msgstr "" - -msgid "" -"In binary mode, this function is equivalent to the :class:`ZstdFile` " -"constructor: ``ZstdFile(file, mode, ...)``. In this case, the *encoding*, " -"*errors*, and *newline* parameters must not be provided." -msgstr "" - -msgid "" -"In text mode, a :class:`ZstdFile` object is created, and wrapped in an :" -"class:`io.TextIOWrapper` instance with the specified encoding, error " -"handling behavior, and line endings." -msgstr "" - -msgid "Open a Zstandard-compressed file in binary mode." -msgstr "" - -msgid "" -"A :class:`ZstdFile` can wrap an already-open :term:`file object`, or operate " -"directly on a named file. The *file* argument specifies either the file " -"object to wrap, or the name of the file to open (as a :class:`str`, :class:" -"`bytes` or :term:`path-like ` object). If wrapping an " -"existing file object, the wrapped file will not be closed when the :class:" -"`ZstdFile` is closed." -msgstr "" - -msgid "" -"The *mode* argument can be either ``'rb'`` for reading (default), ``'wb'`` " -"for overwriting, ``'xb'`` for exclusive creation, or ``'ab'`` for appending. " -"These can equivalently be given as ``'r'``, ``'w'``, ``'x'`` and ``'a'`` " -"respectively." -msgstr "" - -msgid "" -"If *file* is a file object (rather than an actual file name), a mode of " -"``'w'`` does not truncate the file, and is instead equivalent to ``'a'``." -msgstr "" - -msgid "" -"When writing, the *options* argument can be a dictionary providing advanced " -"compression parameters; see :class:`CompressionParameter` for detailed " -"information about supported parameters. The *level* argument is the " -"compression level to use when writing compressed data. Only one of *level* " -"or *options* may be passed. The *zstd_dict* argument is a :class:`ZstdDict` " -"instance to be used during compression." -msgstr "" - -msgid "" -":class:`!ZstdFile` supports all the members specified by :class:`io." -"BufferedIOBase`, except for :meth:`~io.BufferedIOBase.detach` and :meth:`~io." -"IOBase.truncate`. Iteration and the :keyword:`with` statement are supported." -msgstr "" - -msgid "The following method and attributes are also provided:" -msgstr "" - -msgid "" -"Return buffered data without advancing the file position. At least one byte " -"of data will be returned, unless EOF has been reached. The exact number of " -"bytes returned is unspecified (the *size* argument is ignored)." -msgstr "" - -msgid "" -"While calling :meth:`peek` does not change the file position of the :class:" -"`ZstdFile`, it may change the position of the underlying file object (for " -"example, if the :class:`ZstdFile` was constructed by passing a file object " -"for *file*)." -msgstr "" - -msgid "``'rb'`` for reading and ``'wb'`` for writing." -msgstr "" - -msgid "" -"The name of the Zstandard file. Equivalent to the :attr:`~io.FileIO.name` " -"attribute of the underlying :term:`file object`." -msgstr "" - -msgid "Compressing and decompressing data in memory" -msgstr "" - -msgid "" -"Compress *data* (a :term:`bytes-like object`), returning the compressed data " -"as a :class:`bytes` object." -msgstr "" - -msgid "" -"The *level* argument is an integer controlling the level of compression. " -"*level* is an alternative to setting :attr:`CompressionParameter." -"compression_level` in *options*. Use :meth:`~CompressionParameter.bounds` " -"on :attr:`~CompressionParameter.compression_level` to get the values that " -"can be passed for *level*. If advanced compression options are needed, the " -"*level* argument must be omitted and in the *options* dictionary the :attr:`!" -"CompressionParameter.compression_level` parameter should be set." -msgstr "" - -msgid "" -"The *options* argument is a Python dictionary containing advanced " -"compression parameters. The valid keys and values for compression parameters " -"are documented as part of the :class:`CompressionParameter` documentation." -msgstr "" - -msgid "" -"The *zstd_dict* argument is an instance of :class:`ZstdDict` containing " -"trained data to improve compression efficiency. The function :func:" -"`train_dict` can be used to generate a Zstandard dictionary." -msgstr "" - -msgid "" -"Decompress *data* (a :term:`bytes-like object`), returning the uncompressed " -"data as a :class:`bytes` object." -msgstr "" - -msgid "" -"The *options* argument is a Python dictionary containing advanced " -"decompression parameters. The valid keys and values for compression " -"parameters are documented as part of the :class:`DecompressionParameter` " -"documentation." -msgstr "" - -msgid "" -"The *zstd_dict* argument is an instance of :class:`ZstdDict` containing " -"trained data used during compression. This must be the same Zstandard " -"dictionary used during compression." -msgstr "" - -msgid "" -"If *data* is the concatenation of multiple distinct compressed frames, " -"decompress all of these frames, and return the concatenation of the results." -msgstr "" - -msgid "" -"Create a compressor object, which can be used to compress data incrementally." -msgstr "" - -msgid "" -"For a more convenient way of compressing a single chunk of data, see the " -"module-level function :func:`compress`." -msgstr "" - -msgid "" -"The *zstd_dict* argument is an optional instance of :class:`ZstdDict` " -"containing trained data to improve compression efficiency. The function :" -"func:`train_dict` can be used to generate a Zstandard dictionary." -msgstr "" - -msgid "" -"Compress *data* (a :term:`bytes-like object`), returning a :class:`bytes` " -"object with compressed data if possible, or otherwise an empty :class:`!" -"bytes` object. Some of *data* may be buffered internally, for use in later " -"calls to :meth:`!compress` and :meth:`~.flush`. The returned data should be " -"concatenated with the output of any previous calls to :meth:`~.compress`." -msgstr "" - -msgid "" -"The *mode* argument is a :class:`ZstdCompressor` attribute, either :attr:`~." -"CONTINUE`, :attr:`~.FLUSH_BLOCK`, or :attr:`~.FLUSH_FRAME`." -msgstr "" - -msgid "" -"When all data has been provided to the compressor, call the :meth:`~.flush` " -"method to finish the compression process. If :meth:`~.compress` is called " -"with *mode* set to :attr:`~.FLUSH_FRAME`, :meth:`~.flush` should not be " -"called, as it would write out a new empty frame." -msgstr "" - -msgid "" -"Finish the compression process, returning a :class:`bytes` object containing " -"any data stored in the compressor's internal buffers." -msgstr "" - -msgid "" -"The *mode* argument is a :class:`ZstdCompressor` attribute, either :attr:`~." -"FLUSH_BLOCK`, or :attr:`~.FLUSH_FRAME`." -msgstr "" - -msgid "" -"Specify the amount of uncompressed data *size* that will be provided for the " -"next frame. *size* will be written into the frame header of the next frame " -"unless :attr:`CompressionParameter.content_size_flag` is ``False`` or ``0``. " -"A size of ``0`` means that the frame is empty. If *size* is ``None``, the " -"frame header will omit the frame size. Frames that include the uncompressed " -"data size require less memory to decompress, especially at higher " -"compression levels." -msgstr "" - -msgid "" -"If :attr:`last_mode` is not :attr:`FLUSH_FRAME`, a :exc:`ValueError` is " -"raised as the compressor is not at the start of a frame. If the pledged size " -"does not match the actual size of data provided to :meth:`.compress`, future " -"calls to :meth:`!compress` or :meth:`flush` may raise :exc:`ZstdError` and " -"the last chunk of data may be lost." -msgstr "" - -msgid "" -"After :meth:`flush` or :meth:`.compress` are called with mode :attr:" -"`FLUSH_FRAME`, the next frame will not include the frame size into the " -"header unless :meth:`!set_pledged_input_size` is called again." -msgstr "" - -msgid "" -"Collect more data for compression, which may or may not generate output " -"immediately. This mode optimizes the compression ratio by maximizing the " -"amount of data per block and frame." -msgstr "" - -msgid "" -"Complete and write a block to the data stream. The data returned so far can " -"be immediately decompressed. Past data can still be referenced in future " -"blocks generated by calls to :meth:`~.compress`, improving compression." -msgstr "" - -msgid "" -"Complete and write out a frame. Future data provided to :meth:`~.compress` " -"will be written into a new frame and *cannot* reference past data." -msgstr "" - -msgid "" -"The last mode passed to either :meth:`~.compress` or :meth:`~.flush`. The " -"value can be one of :attr:`~.CONTINUE`, :attr:`~.FLUSH_BLOCK`, or :attr:`~." -"FLUSH_FRAME`. The initial value is :attr:`~.FLUSH_FRAME`, signifying that " -"the compressor is at the start of a new frame." -msgstr "" - -msgid "" -"Create a decompressor object, which can be used to decompress data " -"incrementally." -msgstr "" - -msgid "" -"For a more convenient way of decompressing an entire compressed stream at " -"once, see the module-level function :func:`decompress`." -msgstr "" - -msgid "" -"This class does not transparently handle inputs containing multiple " -"compressed frames, unlike the :func:`decompress` function and :class:" -"`ZstdFile` class. To decompress a multi-frame input, you should use :func:" -"`decompress`, :class:`ZstdFile` if working with a :term:`file object`, or " -"multiple :class:`!ZstdDecompressor` instances." -msgstr "" - -msgid "" -"Decompress *data* (a :term:`bytes-like object`), returning uncompressed data " -"as bytes. Some of *data* may be buffered internally, for use in later calls " -"to :meth:`!decompress`. The returned data should be concatenated with the " -"output of any previous calls to :meth:`!decompress`." -msgstr "" - -msgid "" -"If *max_length* is non-negative, the method returns at most *max_length* " -"bytes of decompressed data. If this limit is reached and further output can " -"be produced (or EOF is reached), the :attr:`~.needs_input` attribute will be " -"set to ``False``. In this case, the next call to :meth:`~.decompress` may " -"provide *data* as ``b''`` to obtain more of the output. The full content can " -"thus be read like::" -msgstr "" - -msgid "" -"process_output(d.decompress(data, max_length))\n" -"while not d.eof and not d.needs_input:\n" -" process_output(d.decompress(b\"\", max_length))" -msgstr "" - -msgid "" -"If all of the input data was decompressed and returned (either because this " -"was less than *max_length* bytes, or because *max_length* was negative), " -"the :attr:`~.needs_input` attribute will be set to ``True``." -msgstr "" - -msgid "" -"Attempting to decompress data after the end of a frame will raise a :exc:" -"`EOFError`. Any data found after the end of the frame is ignored and saved " -"in the :attr:`~.unused_data` attribute." -msgstr "" - -msgid "``True`` if the end-of-stream marker has been reached." -msgstr "" - -msgid "Data found after the end of the compressed stream." -msgstr "" - -msgid "Before the end of the stream is reached, this will be ``b''``." -msgstr "" - -msgid "" -"``False`` if the :meth:`.decompress` method can provide more decompressed " -"data before requiring new compressed input." -msgstr "" - -msgid "Zstandard dictionaries" -msgstr "" - -msgid "" -"Train a Zstandard dictionary, returning a :class:`ZstdDict` instance. " -"Zstandard dictionaries enable more efficient compression of smaller sizes of " -"data, which is traditionally difficult to compress due to less repetition. " -"If you are compressing multiple similar groups of data (such as similar " -"files), Zstandard dictionaries can improve compression ratios and speed " -"significantly." -msgstr "" - -msgid "" -"The *samples* argument (an iterable of :class:`bytes` objects), is the " -"population of samples used to train the Zstandard dictionary." -msgstr "" - -msgid "" -"The *dict_size* argument, an integer, is the maximum size (in bytes) the " -"Zstandard dictionary should be. The Zstandard documentation suggests an " -"absolute maximum of no more than 100 KB, but the maximum can often be " -"smaller depending on the data. Larger dictionaries generally slow down " -"compression, but improve compression ratios. Smaller dictionaries lead to " -"faster compression, but reduce the compression ratio." -msgstr "" - -msgid "" -"An advanced function for converting a \"raw content\" Zstandard dictionary " -"into a regular Zstandard dictionary. \"Raw content\" dictionaries are a " -"sequence of bytes that do not need to follow the structure of a normal " -"Zstandard dictionary." -msgstr "" - -msgid "" -"The *zstd_dict* argument is a :class:`ZstdDict` instance with the :attr:" -"`~ZstdDict.dict_content` containing the raw dictionary contents." -msgstr "" - -msgid "" -"The *samples* argument (an iterable of :class:`bytes` objects), contains " -"sample data for generating the Zstandard dictionary." -msgstr "" - -msgid "" -"The *dict_size* argument, an integer, is the maximum size (in bytes) the " -"Zstandard dictionary should be. See :func:`train_dict` for suggestions on " -"the maximum dictionary size." -msgstr "" - -msgid "" -"The *level* argument (an integer) is the compression level expected to be " -"passed to the compressors using this dictionary. The dictionary information " -"varies for each compression level, so tuning for the proper compression " -"level can make compression more efficient." -msgstr "" - -msgid "" -"A wrapper around Zstandard dictionaries. Dictionaries can be used to improve " -"the compression of many small chunks of data. Use :func:`train_dict` if you " -"need to train a new dictionary from sample data." -msgstr "" - -msgid "" -"The *dict_content* argument (a :term:`bytes-like object`), is the already " -"trained dictionary information." -msgstr "" - -msgid "" -"The *is_raw* argument, a boolean, is an advanced parameter controlling the " -"meaning of *dict_content*. ``True`` means *dict_content* is a \"raw " -"content\" dictionary, without any format restrictions. ``False`` means " -"*dict_content* is an ordinary Zstandard dictionary, created from Zstandard " -"functions, for example, :func:`train_dict` or the external :program:`zstd` " -"CLI." -msgstr "" - -msgid "" -"When passing a :class:`!ZstdDict` to a function, the :attr:`!" -"as_digested_dict` and :attr:`!as_undigested_dict` attributes can control how " -"the dictionary is loaded by passing them as the ``zstd_dict`` argument, for " -"example, ``compress(data, zstd_dict=zd.as_digested_dict)``. Digesting a " -"dictionary is a costly operation that occurs when loading a Zstandard " -"dictionary. When making multiple calls to compression or decompression, " -"passing a digested dictionary will reduce the overhead of loading the " -"dictionary." -msgstr "" - -msgid "Difference for compression" -msgstr "" - -msgid "Digested dictionary" -msgstr "" - -msgid "Undigested dictionary" -msgstr "" - -msgid "" -"Advanced parameters of the compressor which may be overridden by the " -"dictionary's parameters" -msgstr "" - -msgid "" -"``window_log``, ``hash_log``, ``chain_log``, ``search_log``, ``min_match``, " -"``target_length``, ``strategy``, ``enable_long_distance_matching``, " -"``ldm_hash_log``, ``ldm_min_match``, ``ldm_bucket_size_log``, " -"``ldm_hash_rate_log``, and some non-public parameters." -msgstr "" - -msgid "None" -msgstr "" - -msgid ":class:`!ZstdDict` internally caches the dictionary" -msgstr "" - -msgid "" -"Yes. It's faster when loading a digested dictionary again with the same " -"compression level." -msgstr "" - -msgid "" -"No. If you wish to load an undigested dictionary multiple times, consider " -"reusing a compressor object." -msgstr "" - -msgid "" -"If passing a :class:`!ZstdDict` without any attribute, an undigested " -"dictionary is passed by default when compressing and a digested dictionary " -"is generated if necessary and passed by default when decompressing." -msgstr "" - -msgid "" -"The content of the Zstandard dictionary, a ``bytes`` object. It's the same " -"as the *dict_content* argument in the ``__init__`` method. It can be used " -"with other programs, such as the ``zstd`` CLI program." -msgstr "" - -msgid "Identifier of the Zstandard dictionary, a non-negative int value." -msgstr "" - -msgid "" -"Non-zero means the dictionary is ordinary, created by Zstandard functions " -"and following the Zstandard format." -msgstr "" - -msgid "" -"``0`` means a \"raw content\" dictionary, free of any format restriction, " -"used for advanced users." -msgstr "" - -msgid "" -"The meaning of ``0`` for :attr:`!ZstdDict.dict_id` is different from the " -"``dictionary_id`` attribute to the :func:`get_frame_info` function." -msgstr "" - -msgid "Load as a digested dictionary." -msgstr "" - -msgid "Load as an undigested dictionary." -msgstr "" - -msgid "Advanced parameter control" -msgstr "" - -msgid "" -"An :class:`~enum.IntEnum` containing the advanced compression parameter keys " -"that can be used when compressing data." -msgstr "" - -msgid "" -"The :meth:`~.bounds` method can be used on any attribute to get the valid " -"values for that parameter." -msgstr "" - -msgid "" -"Parameters are optional; any omitted parameter will have its value selected " -"automatically." -msgstr "" - -msgid "" -"Example getting the lower and upper bound of :attr:`~.compression_level`::" -msgstr "" - -msgid "lower, upper = CompressionParameter.compression_level.bounds()" -msgstr "" - -msgid "Example setting the :attr:`~.window_log` to the maximum size::" -msgstr "" - -msgid "" -"_lower, upper = CompressionParameter.window_log.bounds()\n" -"options = {CompressionParameter.window_log: upper}\n" -"compress(b'venezuelan beaver cheese', options=options)" -msgstr "" - -msgid "" -"Return the tuple of int bounds, ``(lower, upper)``, of a compression " -"parameter. This method should be called on the attribute you wish to " -"retrieve the bounds of. For example, to get the valid values for :attr:`~." -"compression_level`, one may check the result of ``CompressionParameter." -"compression_level.bounds()``." -msgstr "" - -msgid "Both the lower and upper bounds are inclusive." -msgstr "" - -msgid "" -"A high-level means of setting other compression parameters that affect the " -"speed and ratio of compressing data." -msgstr "" - -msgid "" -"Regular compression levels are greater than ``0``. Values greater than " -"``20`` are considered \"ultra\" compression and require more memory than " -"other levels. Negative values can be used to trade off faster compression " -"for worse compression ratios." -msgstr "" - -msgid "Setting the level to zero uses :attr:`COMPRESSION_LEVEL_DEFAULT`." -msgstr "" - -msgid "" -"Maximum allowed back-reference distance the compressor can use when " -"compressing data, expressed as power of two, ``1 << window_log`` bytes. This " -"parameter greatly influences the memory usage of compression. Higher values " -"require more memory but gain better compression values." -msgstr "" - -msgid "A value of zero causes the value to be selected automatically." -msgstr "" - -msgid "" -"Size of the initial probe table, as a power of two. The resulting memory " -"usage is ``1 << (hash_log+2)`` bytes. Larger tables improve compression " -"ratio of strategies <= :attr:`~Strategy.dfast`, and improve compression " -"speed of strategies > :attr:`~Strategy.dfast`." -msgstr "" - -msgid "" -"Size of the multi-probe search table, as a power of two. The resulting " -"memory usage is ``1 << (chain_log+2)`` bytes. Larger tables result in better " -"and slower compression. This parameter has no effect for the :attr:" -"`~Strategy.fast` strategy. It's still useful when using :attr:`~Strategy." -"dfast` strategy, in which case it defines a secondary probe table." -msgstr "" - -msgid "" -"Number of search attempts, as a power of two. More attempts result in better " -"and slower compression. This parameter is useless for :attr:`~Strategy.fast` " -"and :attr:`~Strategy.dfast` strategies." -msgstr "" - -msgid "" -"Minimum size of searched matches. Larger values increase compression and " -"decompression speed, but decrease ratio. Note that Zstandard can still find " -"matches of smaller size, it just tweaks its search algorithm to look for " -"this size and larger. For all strategies < :attr:`~Strategy.btopt`, the " -"effective minimum is ``4``; for all strategies > :attr:`~Strategy.fast`, the " -"effective maximum is ``6``." -msgstr "" - -msgid "The impact of this field depends on the selected :class:`Strategy`." -msgstr "" - -msgid "" -"For strategies :attr:`~Strategy.btopt`, :attr:`~Strategy.btultra` and :attr:" -"`~Strategy.btultra2`, the value is the length of a match considered \"good " -"enough\" to stop searching. Larger values make compression ratios better, " -"but compresses slower." -msgstr "" - -msgid "" -"For strategy :attr:`~Strategy.fast`, it is the distance between match " -"sampling. Larger values make compression faster, but with a worse " -"compression ratio." -msgstr "" - -msgid "" -"The higher the value of selected strategy, the more complex the compression " -"technique used by zstd, resulting in higher compression ratios but slower " -"compression." -msgstr "" - -msgid ":class:`Strategy`" -msgstr "" - -msgid "" -"Long distance matching can be used to improve compression for large inputs " -"by finding large matches at greater distances. It increases memory usage and " -"window size." -msgstr "" - -msgid "" -"``True`` or ``1`` enable long distance matching while ``False`` or ``0`` " -"disable it." -msgstr "" - -msgid "" -"Enabling this parameter increases default :attr:`~CompressionParameter." -"window_log` to 128 MiB except when expressly set to a different value. This " -"setting is enabled by default if :attr:`!window_log` >= 128 MiB and the " -"compression strategy >= :attr:`~Strategy.btopt` (compression level 16+)." -msgstr "" - -msgid "" -"Size of the table for long distance matching, as a power of two. Larger " -"values increase memory usage and compression ratio, but decrease compression " -"speed." -msgstr "" - -msgid "" -"Minimum match size for long distance matcher. Larger or too small values can " -"often decrease the compression ratio." -msgstr "" - -msgid "" -"Log size of each bucket in the long distance matcher hash table for " -"collision resolution. Larger values improve collision resolution but " -"decrease compression speed." -msgstr "" - -msgid "" -"Frequency of inserting/looking up entries into the long distance matcher " -"hash table. Larger values improve compression speed. Deviating far from the " -"default value will likely result in a compression ratio decrease." -msgstr "" - -msgid "" -"Write the size of the data to be compressed into the Zstandard frame header " -"when known prior to compressing." -msgstr "" - -msgid "This flag only takes effect under the following scenarios:" -msgstr "" - -msgid "Calling :func:`compress` for one-shot compression" -msgstr "" - -msgid "" -"Providing all of the data to be compressed in the frame in a single :meth:" -"`ZstdCompressor.compress` call, with the :attr:`ZstdCompressor.FLUSH_FRAME` " -"mode." -msgstr "" - -msgid "" -"Calling :meth:`ZstdCompressor.set_pledged_input_size` with the exact amount " -"of data that will be provided to the compressor prior to any calls to :meth:" -"`ZstdCompressor.compress` for the current frame. :meth:`!ZstdCompressor." -"set_pledged_input_size` must be called for each new frame." -msgstr "" - -msgid "" -"All other compression calls may not write the size information into the " -"frame header." -msgstr "" - -msgid "" -"``True`` or ``1`` enable the content size flag while ``False`` or ``0`` " -"disable it." -msgstr "" - -msgid "" -"A four-byte checksum using XXHash64 of the uncompressed content is written " -"at the end of each frame. Zstandard's decompression code verifies the " -"checksum. If there is a mismatch a :class:`ZstdError` exception is raised." -msgstr "" - -msgid "" -"``True`` or ``1`` enable checksum generation while ``False`` or ``0`` " -"disable it." -msgstr "" - -msgid "" -"When compressing with a :class:`ZstdDict`, the dictionary's ID is written " -"into the frame header." -msgstr "" - -msgid "" -"``True`` or ``1`` enable storing the dictionary ID while ``False`` or ``0`` " -"disable it." -msgstr "" - -msgid "" -"Select how many threads will be spawned to compress in parallel. When :attr:" -"`!nb_workers` > 0, enables multi-threaded compression, a value of ``1`` " -"means \"one-thread multi-threaded mode\". More workers improve speed, but " -"also increase memory usage and slightly reduce compression ratio." -msgstr "" - -msgid "A value of zero disables multi-threading." -msgstr "" - -msgid "" -"Size of a compression job, in bytes. This value is enforced only when :attr:" -"`~CompressionParameter.nb_workers` >= 1. Each compression job is completed " -"in parallel, so this value can indirectly impact the number of active " -"threads." -msgstr "" - -msgid "" -"Sets how much data is reloaded from previous jobs (threads) for new jobs to " -"be used by the look behind window during compression. This value is only " -"used when :attr:`~CompressionParameter.nb_workers` >= 1. Acceptable values " -"vary from 0 to 9." -msgstr "" - -msgid "0 means dynamically set the overlap amount" -msgstr "" - -msgid "1 means no overlap" -msgstr "" - -msgid "9 means use a full window size from the previous job" -msgstr "" - -msgid "" -"Each increment halves/doubles the overlap size. \"8\" means an overlap of " -"``window_size/2``, \"7\" means an overlap of ``window_size/4``, etc." -msgstr "" - -msgid "" -"An :class:`~enum.IntEnum` containing the advanced decompression parameter " -"keys that can be used when decompressing data. Parameters are optional; any " -"omitted parameter will have its value selected automatically." -msgstr "" - -msgid "Example setting the :attr:`~.window_log_max` to the maximum size::" -msgstr "" - -msgid "" -"data = compress(b'Some very long buffer of bytes...')\n" -"\n" -"_lower, upper = DecompressionParameter.window_log_max.bounds()\n" -"\n" -"options = {DecompressionParameter.window_log_max: upper}\n" -"decompress(data, options=options)" -msgstr "" - -msgid "" -"Return the tuple of int bounds, ``(lower, upper)``, of a decompression " -"parameter. This method should be called on the attribute you wish to " -"retrieve the bounds of." -msgstr "" - -msgid "" -"The base-two logarithm of the maximum size of the window used during " -"decompression. This can be useful to limit the amount of memory used when " -"decompressing data. A larger maximum window size leads to faster " -"decompression." -msgstr "" - -msgid "" -"An :class:`~enum.IntEnum` containing strategies for compression. Higher-" -"numbered strategies correspond to more complex and slower compression." -msgstr "" - -msgid "" -"The values of attributes of :class:`!Strategy` are not necessarily stable " -"across zstd versions. Only the ordering of the attributes may be relied " -"upon. The attributes are listed below in order." -msgstr "" - -msgid "The following strategies are available:" -msgstr "" - -msgid "Miscellaneous" -msgstr "" - -msgid "" -"Retrieve a :class:`FrameInfo` object containing metadata about a Zstandard " -"frame. Frames contain metadata related to the compressed data they hold." -msgstr "" - -msgid "Metadata related to a Zstandard frame." -msgstr "" - -msgid "The size of the decompressed contents of the frame." -msgstr "" - -msgid "" -"An integer representing the Zstandard dictionary ID needed for decompressing " -"the frame. ``0`` means the dictionary ID was not recorded in the frame " -"header. This may mean that a Zstandard dictionary is not needed, or that the " -"ID of a required dictionary was not recorded." -msgstr "" - -msgid "The default compression level for Zstandard: ``3``." -msgstr "" - -msgid "" -"Version number of the runtime zstd library as a tuple of integers (major, " -"minor, release)." -msgstr "" - -msgid "Examples" -msgstr "" - -msgid "Reading in a compressed file:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"with zstd.open(\"file.zst\") as f:\n" -" file_content = f.read()" -msgstr "" - -msgid "Creating a compressed file:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"data = b\"Insert Data Here\"\n" -"with zstd.open(\"file.zst\", \"w\") as f:\n" -" f.write(data)" -msgstr "" - -msgid "Compressing data in memory:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"data_in = b\"Insert Data Here\"\n" -"data_out = zstd.compress(data_in)" -msgstr "" - -msgid "Incremental compression:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"comp = zstd.ZstdCompressor()\n" -"out1 = comp.compress(b\"Some data\\n\")\n" -"out2 = comp.compress(b\"Another piece of data\\n\")\n" -"out3 = comp.compress(b\"Even more data\\n\")\n" -"out4 = comp.flush()\n" -"# Concatenate all the partial results:\n" -"result = b\"\".join([out1, out2, out3, out4])" -msgstr "" - -msgid "Writing compressed data to an already-open file:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"with open(\"myfile\", \"wb\") as f:\n" -" f.write(b\"This data will not be compressed\\n\")\n" -" with zstd.open(f, \"w\") as zstf:\n" -" zstf.write(b\"This *will* be compressed\\n\")\n" -" f.write(b\"Not compressed\\n\")" -msgstr "" - -msgid "Creating a compressed file using compression parameters:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"\n" -"options = {\n" -" zstd.CompressionParameter.checksum_flag: 1\n" -"}\n" -"with zstd.open(\"file.zst\", \"w\", options=options) as f:\n" -" f.write(b\"Mind if I squeeze in?\")" -msgstr "" diff --git a/library/concurrency.po b/library/concurrency.po index 94e2df5..d3f0d18 100644 --- a/library/concurrency.po +++ b/library/concurrency.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/concurrent.futures.po b/library/concurrent.futures.po index 0aa1146..88a9a35 100644 --- a/library/concurrent.futures.po +++ b/library/concurrent.futures.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,17 +37,17 @@ msgid "" msgstr "" msgid "" -"The asynchronous execution can be performed with threads, using :class:" -"`ThreadPoolExecutor` or :class:`InterpreterPoolExecutor`, or separate " -"processes, using :class:`ProcessPoolExecutor`. Each implements the same " -"interface, which is defined by the abstract :class:`Executor` class." +"The asynchronous execution can be performed with threads, " +"using :class:`ThreadPoolExecutor` or :class:`InterpreterPoolExecutor`, or " +"separate processes, using :class:`ProcessPoolExecutor`. Each implements the " +"same interface, which is defined by the abstract :class:`Executor` class." msgstr "" msgid "" -":class:`concurrent.futures.Future` must not be confused with :class:`asyncio." -"Future`, which is designed for use with :mod:`asyncio` tasks and coroutines. " -"See the :doc:`asyncio's Future ` documentation for a " -"detailed comparison of the two." +":class:`concurrent.futures.Future` must not be confused " +"with :class:`asyncio.Future`, which is designed for use with :mod:`asyncio` " +"tasks and coroutines. See the :doc:`asyncio's Future ` " +"documentation for a detailed comparison of the two." msgstr "" msgid "Availability" @@ -94,11 +94,11 @@ msgid "" msgstr "" msgid "" -"The returned iterator raises a :exc:`TimeoutError` if :meth:`~iterator." -"__next__` is called and the result isn't available after *timeout* seconds " -"from the original call to :meth:`Executor.map`. *timeout* can be an int or a " -"float. If *timeout* is not specified or ``None``, there is no limit to the " -"wait time." +"The returned iterator raises a :exc:`TimeoutError` " +"if :meth:`~iterator.__next__` is called and the result isn't available after " +"*timeout* seconds from the original call to :meth:`Executor.map`. *timeout* " +"can be an int or a float. If *timeout* is not specified or ``None``, there " +"is no limit to the wait time." msgstr "" msgid "" @@ -112,8 +112,8 @@ msgid "" "(approximate) size of these chunks can be specified by setting *chunksize* " "to a positive integer. For very long iterables, using a large value for " "*chunksize* can significantly improve performance compared to the default " -"size of 1. With :class:`ThreadPoolExecutor` and :class:" -"`InterpreterPoolExecutor`, *chunksize* has no effect." +"size of 1. With :class:`ThreadPoolExecutor` " +"and :class:`InterpreterPoolExecutor`, *chunksize* has no effect." msgstr "" msgid "Added the *chunksize* parameter." @@ -124,9 +124,9 @@ msgstr "" msgid "" "Signal the executor that it should free any resources that it is using when " -"the currently pending futures are done executing. Calls to :meth:`Executor." -"submit` and :meth:`Executor.map` made after shutdown will raise :exc:" -"`RuntimeError`." +"the currently pending futures are done executing. Calls " +"to :meth:`Executor.submit` and :meth:`Executor.map` made after shutdown will " +"raise :exc:`RuntimeError`." msgstr "" msgid "" @@ -167,7 +167,7 @@ msgid "" " e.submit(shutil.copy, 'src4.txt', 'dest4.txt')" msgstr "" -msgid "Added *cancel_futures*." +msgid "Added the *cancel_futures* parameter." msgstr "" msgid "ThreadPoolExecutor" @@ -239,18 +239,30 @@ msgid "" "well as any attempt to submit more jobs to the pool." msgstr "" +msgid "" +"*ctxkwargs* is a mapping of additional keyword arguments passed " +"to :meth:`prepare_context`, allowing customization of the worker execution " +"context." +msgstr "" + +msgid "" +"Setting up the necessary context for creating worker instances in a pool-" +"based executor (for example, in a concurrent environment like threads or " +"interpreters)." +msgstr "" + msgid "" "If *max_workers* is ``None`` or not given, it will default to the number of " -"processors on the machine, multiplied by ``5``, assuming that :class:" -"`ThreadPoolExecutor` is often used to overlap I/O instead of CPU work and " -"the number of workers should be higher than the number of workers for :class:" -"`ProcessPoolExecutor`." +"processors on the machine, multiplied by ``5``, assuming " +"that :class:`ThreadPoolExecutor` is often used to overlap I/O instead of CPU " +"work and the number of workers should be higher than the number of workers " +"for :class:`ProcessPoolExecutor`." msgstr "" msgid "" -"Added the *thread_name_prefix* parameter to allow users to control the :" -"class:`threading.Thread` names for worker threads created by the pool for " -"easier debugging." +"Added the *thread_name_prefix* parameter to allow users to control " +"the :class:`threading.Thread` names for worker threads created by the pool " +"for easier debugging." msgstr "" msgid "Added the *initializer* and *initargs* arguments." @@ -269,8 +281,13 @@ msgid "" msgstr "" msgid "" -"Default value of *max_workers* is changed to ``min(32, (os." -"process_cpu_count() or 1) + 4)``." +"Default value of *max_workers* is changed to ``min(32, " +"(os.process_cpu_count() or 1) + 4)``." +msgstr "" + +msgid "" +"Added *ctxkwargs* to pass additional arguments to :meth:`prepare_context` " +"class method." msgstr "" msgid "ThreadPoolExecutor Example" @@ -385,8 +402,8 @@ msgid "" msgstr "" msgid "" -"The executor may replace uncaught exceptions from *initializer* with :class:" -"`~concurrent.interpreters.ExecutionFailed`." +"The executor may replace uncaught exceptions from *initializer* " +"with :class:`~concurrent.interpreters.ExecutionFailed`." msgstr "" msgid "Other caveats from parent :class:`ThreadPoolExecutor` apply here." @@ -402,11 +419,13 @@ msgstr "" msgid "" "When a worker's current task raises an uncaught exception, the worker always " "tries to preserve the exception as-is. If that is successful then it also " -"sets the ``__cause__`` to a corresponding :class:`~concurrent.interpreters." -"ExecutionFailed` instance, which contains a summary of the original " -"exception. In the uncommon case that the worker is not able to preserve the " -"original as-is then it directly preserves the corresponding :class:" -"`~concurrent.interpreters.ExecutionFailed` instance instead." +"sets the ``__cause__`` to a " +"corresponding :class:`~concurrent.interpreters.ExecutionFailed` instance, " +"which contains a summary of the original exception. In the uncommon case " +"that the worker is not able to preserve the original as-is then it directly " +"preserves the " +"corresponding :class:`~concurrent.interpreters.ExecutionFailed` instance " +"instead." msgstr "" msgid "ProcessPoolExecutor" @@ -414,11 +433,11 @@ msgstr "" msgid "" "The :class:`ProcessPoolExecutor` class is an :class:`Executor` subclass that " -"uses a pool of processes to execute calls asynchronously. :class:" -"`ProcessPoolExecutor` uses the :mod:`multiprocessing` module, which allows " -"it to side-step the :term:`Global Interpreter Lock ` but also means that only picklable objects can be executed and " -"returned." +"uses a pool of processes to execute calls " +"asynchronously. :class:`ProcessPoolExecutor` uses the :mod:`multiprocessing` " +"module, which allows it to side-step the :term:`Global Interpreter Lock " +"` but also means that only picklable objects can be " +"executed and returned." msgstr "" msgid "" @@ -434,9 +453,10 @@ msgstr "" msgid "" "Note that the restrictions on functions and arguments needing to picklable " -"as per :class:`multiprocessing.Process` apply when using :meth:`~Executor." -"submit` and :meth:`~Executor.map` on a :class:`ProcessPoolExecutor`. A " -"function defined in a REPL or a lambda should not be expected to work." +"as per :class:`multiprocessing.Process` apply when " +"using :meth:`~Executor.submit` and :meth:`~Executor.map` on " +"a :class:`ProcessPoolExecutor`. A function defined in a REPL or a lambda " +"should not be expected to work." msgstr "" msgid "" @@ -449,8 +469,8 @@ msgid "" "the default chosen will be at most ``61``, even if more processors are " "available. *mp_context* can be a :mod:`multiprocessing` context or ``None``. " "It will be used to launch the workers. If *mp_context* is ``None`` or not " -"given, the default :mod:`multiprocessing` context is used. See :ref:" -"`multiprocessing-start-methods`." +"given, the default :mod:`multiprocessing` context is used. " +"See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" @@ -472,10 +492,10 @@ msgid "" msgstr "" msgid "" -"When one of the worker processes terminates abruptly, a :exc:`~concurrent." -"futures.process.BrokenProcessPool` error is now raised. Previously, " -"behaviour was undefined but operations on the executor or its futures would " -"often freeze or deadlock." +"When one of the worker processes terminates abruptly, " +"a :exc:`~concurrent.futures.process.BrokenProcessPool` error is now raised. " +"Previously, behaviour was undefined but operations on the executor or its " +"futures would often freeze or deadlock." msgstr "" msgid "" @@ -489,23 +509,24 @@ msgid "" msgstr "" msgid "" -"On POSIX systems, if your application has multiple threads and the :mod:" -"`multiprocessing` context uses the ``\"fork\"`` start method: The :func:`os." -"fork` function called internally to spawn workers may raise a :exc:" -"`DeprecationWarning`. Pass a *mp_context* configured to use a different " -"start method. See the :func:`os.fork` documentation for further explanation." +"On POSIX systems, if your application has multiple threads and " +"the :mod:`multiprocessing` context uses the ``\"fork\"`` start method: " +"The :func:`os.fork` function called internally to spawn workers may raise " +"a :exc:`DeprecationWarning`. Pass a *mp_context* configured to use a " +"different start method. See the :func:`os.fork` documentation for further " +"explanation." msgstr "" msgid "" -"*max_workers* uses :func:`os.process_cpu_count` by default, instead of :func:" -"`os.cpu_count`." +"*max_workers* uses :func:`os.process_cpu_count` by default, instead " +"of :func:`os.cpu_count`." msgstr "" msgid "" "The default process start method (see :ref:`multiprocessing-start-methods`) " -"changed away from *fork*. If you require the *fork* start method for :class:" -"`ProcessPoolExecutor` you must explicitly pass ``mp_context=multiprocessing." -"get_context(\"fork\")``." +"changed away from *fork*. If you require the *fork* start method " +"for :class:`ProcessPoolExecutor` you must explicitly pass " +"``mp_context=multiprocessing.get_context(\"fork\")``." msgstr "" msgid "" @@ -515,10 +536,10 @@ msgid "" msgstr "" msgid "" -"Attempt to terminate all living worker processes immediately by calling :" -"meth:`Process.terminate ` on each of " -"them. Internally, it will also call :meth:`Executor.shutdown` to ensure that " -"all other resources associated with the executor are freed." +"Attempt to terminate all living worker processes immediately by " +"calling :meth:`Process.terminate ` on " +"each of them. Internally, it will also call :meth:`Executor.shutdown` to " +"ensure that all other resources associated with the executor are freed." msgstr "" msgid "" @@ -527,10 +548,10 @@ msgid "" msgstr "" msgid "" -"Attempt to kill all living worker processes immediately by calling :meth:" -"`Process.kill ` on each of them. Internally, " -"it will also call :meth:`Executor.shutdown` to ensure that all other " -"resources associated with the executor are freed." +"Attempt to kill all living worker processes immediately by " +"calling :meth:`Process.kill ` on each of them. " +"Internally, it will also call :meth:`Executor.shutdown` to ensure that all " +"other resources associated with the executor are freed." msgstr "" msgid "ProcessPoolExecutor Example" @@ -652,8 +673,8 @@ msgid "" msgstr "" msgid "" -"The following :class:`Future` methods are meant for use in unit tests and :" -"class:`Executor` implementations." +"The following :class:`Future` methods are meant for use in unit tests " +"and :class:`Executor` implementations." msgstr "" msgid "" @@ -663,8 +684,8 @@ msgid "" msgstr "" msgid "" -"If the method returns ``False`` then the :class:`Future` was cancelled, i." -"e. :meth:`Future.cancel` was called and returned ``True``. Any threads " +"If the method returns ``False`` then the :class:`Future` was cancelled, " +"i.e. :meth:`Future.cancel` was called and returned ``True``. Any threads " "waiting on the :class:`Future` completing (i.e. through :func:`as_completed` " "or :func:`wait`) will be woken up." msgstr "" @@ -676,8 +697,9 @@ msgid "" msgstr "" msgid "" -"This method can only be called once and cannot be called after :meth:`Future." -"set_result` or :meth:`Future.set_exception` have been called." +"This method can only be called once and cannot be called " +"after :meth:`Future.set_result` or :meth:`Future.set_exception` have been " +"called." msgstr "" msgid "" @@ -690,26 +712,26 @@ msgid "" msgstr "" msgid "" -"This method raises :exc:`concurrent.futures.InvalidStateError` if the :class:" -"`Future` is already done." +"This method raises :exc:`concurrent.futures.InvalidStateError` if " +"the :class:`Future` is already done." msgstr "" msgid "" -"Sets the result of the work associated with the :class:`Future` to the :" -"class:`Exception` *exception*." +"Sets the result of the work associated with the :class:`Future` to " +"the :class:`Exception` *exception*." msgstr "" msgid "Module Functions" msgstr "" msgid "" -"Wait for the :class:`Future` instances (possibly created by different :class:" -"`Executor` instances) given by *fs* to complete. Duplicate futures given to " -"*fs* are removed and will be returned only once. Returns a named 2-tuple of " -"sets. The first set, named ``done``, contains the futures that completed " -"(finished or cancelled futures) before the wait completed. The second set, " -"named ``not_done``, contains the futures that did not complete (pending or " -"running futures)." +"Wait for the :class:`Future` instances (possibly created by " +"different :class:`Executor` instances) given by *fs* to complete. Duplicate " +"futures given to *fs* are removed and will be returned only once. Returns a " +"named 2-tuple of sets. The first set, named ``done``, contains the futures " +"that completed (finished or cancelled futures) before the wait completed. " +"The second set, named ``not_done``, contains the futures that did not " +"complete (pending or running futures)." msgstr "" msgid "" @@ -734,8 +756,8 @@ msgstr "" msgid "" "The function will return when any future finishes by raising an exception. " -"If no future raises an exception then it is equivalent to :const:" -"`ALL_COMPLETED`." +"If no future raises an exception then it is equivalent " +"to :const:`ALL_COMPLETED`." msgstr "" msgid "The function will return when all futures finish or are cancelled." @@ -788,19 +810,21 @@ msgstr "" msgid "" "Derived from :exc:`~concurrent.futures.BrokenExecutor`, this exception class " -"is raised when one of the workers of a :class:`~concurrent.futures." -"ThreadPoolExecutor` has failed initializing." +"is raised when one of the workers of " +"a :class:`~concurrent.futures.ThreadPoolExecutor` has failed initializing." msgstr "" msgid "" "Derived from :exc:`~concurrent.futures.thread.BrokenThreadPool`, this " -"exception class is raised when one of the workers of a :class:`~concurrent." -"futures.InterpreterPoolExecutor` has failed initializing." +"exception class is raised when one of the workers of " +"a :class:`~concurrent.futures.InterpreterPoolExecutor` has failed " +"initializing." msgstr "" msgid "" -"Derived from :exc:`~concurrent.futures.BrokenExecutor` (formerly :exc:" -"`RuntimeError`), this exception class is raised when one of the workers of " -"a :class:`~concurrent.futures.ProcessPoolExecutor` has terminated in a non-" -"clean fashion (for example, if it was killed from the outside)." +"Derived from :exc:`~concurrent.futures.BrokenExecutor` " +"(formerly :exc:`RuntimeError`), this exception class is raised when one of " +"the workers of a :class:`~concurrent.futures.ProcessPoolExecutor` has " +"terminated in a non-clean fashion (for example, if it was killed from the " +"outside)." msgstr "" diff --git a/library/concurrent.interpreters.po b/library/concurrent.interpreters.po deleted file mode 100644 index bc2dc2f..0000000 --- a/library/concurrent.interpreters.po +++ /dev/null @@ -1,439 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "" -":mod:`!concurrent.interpreters` --- Multiple interpreters in the same process" -msgstr "" - -msgid "**Source code:** :source:`Lib/concurrent/interpreters`" -msgstr "" - -msgid "" -"The :mod:`!concurrent.interpreters` module constructs higher-level " -"interfaces on top of the lower level :mod:`!_interpreters` module." -msgstr "" - -msgid "" -"The module is primarily meant to provide a basic API for managing " -"interpreters (AKA \"subinterpreters\") and running things in them. Running " -"mostly involves switching to an interpreter (in the current thread) and " -"calling a function in that execution context." -msgstr "" - -msgid "" -"For concurrency, interpreters themselves (and this module) don't provide " -"much more than isolation, which on its own isn't useful. Actual concurrency " -"is available separately through :mod:`threads ` -- see `below " -"`_." -msgstr "" - -msgid ":class:`~concurrent.futures.InterpreterPoolExecutor`" -msgstr "" - -msgid "Combines threads with interpreters in a familiar interface." -msgstr "" - -msgid ":ref:`isolating-extensions-howto`" -msgstr "" - -msgid "How to update an extension module to support multiple interpreters." -msgstr "" - -msgid ":pep:`554`" -msgstr "" - -msgid ":pep:`734`" -msgstr "" - -msgid ":pep:`684`" -msgstr "" - -msgid "Availability" -msgstr "" - -msgid "" -"This module does not work or is not available on WebAssembly. See :ref:`wasm-" -"availability` for more information." -msgstr "" - -msgid "Key details" -msgstr "" - -msgid "" -"Before we dive in further, there are a small number of details to keep in " -"mind about using multiple interpreters:" -msgstr "" - -msgid "`isolated `_, by default" -msgstr "" - -msgid "no implicit threads" -msgstr "" - -msgid "not all PyPI packages support use in multiple interpreters yet" -msgstr "" - -msgid "Introduction" -msgstr "" - -msgid "" -"An \"interpreter\" is effectively the execution context of the Python " -"runtime. It contains all of the state the runtime needs to execute a " -"program. This includes things like the import state and builtins. (Each " -"thread, even if there's only the main thread, has some extra runtime state, " -"in addition to the current interpreter, related to the current exception and " -"the bytecode eval loop.)" -msgstr "" - -msgid "" -"The concept and functionality of the interpreter have been a part of Python " -"since version 2.2, but the feature was only available through the C-API and " -"not well known, and the `isolation `_ was relatively " -"incomplete until version 3.12." -msgstr "" - -msgid "Multiple Interpreters and Isolation" -msgstr "" - -msgid "" -"A Python implementation may support using multiple interpreters in the same " -"process. CPython has this support. Each interpreter is effectively " -"isolated from the others (with a limited number of carefully managed process-" -"global exceptions to the rule)." -msgstr "" - -msgid "" -"That isolation is primarily useful as a strong separation between distinct " -"logical components of a program, where you want to have careful control of " -"how those components interact." -msgstr "" - -msgid "" -"Interpreters in the same process can technically never be strictly isolated " -"from one another since there are few restrictions on memory access within " -"the same process. The Python runtime makes a best effort at isolation but " -"extension modules may easily violate that. Therefore, do not use multiple " -"interpreters in security-sensitive situations, where they shouldn't have " -"access to each other's data." -msgstr "" - -msgid "Running in an Interpreter" -msgstr "" - -msgid "" -"Running in a different interpreter involves switching to it in the current " -"thread and then calling some function. The runtime will execute the " -"function using the current interpreter's state. The :mod:`!concurrent." -"interpreters` module provides a basic API for creating and managing " -"interpreters, as well as the switch-and-call operation." -msgstr "" - -msgid "" -"No other threads are automatically started for the operation. There is `a " -"helper `_ for that though. There is another " -"dedicated helper for calling the builtin :func:`exec` in an interpreter." -msgstr "" - -msgid "" -"When :func:`exec` (or :func:`eval`) are called in an interpreter, they run " -"using the interpreter's :mod:`!__main__` module as the \"globals\" " -"namespace. The same is true for functions that aren't associated with any " -"module. This is the same as how scripts invoked from the command-line run " -"in the :mod:`!__main__` module." -msgstr "" - -msgid "Concurrency and Parallelism" -msgstr "" - -msgid "" -"As noted earlier, interpreters do not provide any concurrency on their own. " -"They strictly represent the isolated execution context the runtime will use " -"*in the current thread*. That isolation makes them similar to processes, " -"but they still enjoy in-process efficiency, like threads." -msgstr "" - -msgid "" -"All that said, interpreters do naturally support certain flavors of " -"concurrency. There's a powerful side effect of that isolation. It enables a " -"different approach to concurrency than you can take with async or threads. " -"It's a similar concurrency model to CSP or the actor model, a model which is " -"relatively easy to reason about." -msgstr "" - -msgid "" -"You can take advantage of that concurrency model in a single thread, " -"switching back and forth between interpreters, Stackless-style. However, " -"this model is more useful when you combine interpreters with multiple " -"threads. This mostly involves starting a new thread, where you switch to " -"another interpreter and run what you want there." -msgstr "" - -msgid "" -"Each actual thread in Python, even if you're only running in the main " -"thread, has its own *current* execution context. Multiple threads can use " -"the same interpreter or different ones." -msgstr "" - -msgid "" -"At a high level, you can think of the combination of threads and " -"interpreters as threads with opt-in sharing." -msgstr "" - -msgid "" -"As a significant bonus, interpreters are sufficiently isolated that they do " -"not share the :term:`GIL`, which means combining threads with multiple " -"interpreters enables full multi-core parallelism. (This has been the case " -"since Python 3.12.)" -msgstr "" - -msgid "Communication Between Interpreters" -msgstr "" - -msgid "" -"In practice, multiple interpreters are useful only if we have a way to " -"communicate between them. This usually involves some form of message " -"passing, but can even mean sharing data in some carefully managed way." -msgstr "" - -msgid "" -"With this in mind, the :mod:`!concurrent.interpreters` module provides a :" -"class:`queue.Queue` implementation, available through :func:`create_queue`." -msgstr "" - -msgid "\"Sharing\" Objects" -msgstr "" - -msgid "" -"Any data actually shared between interpreters loses the thread-safety " -"provided by the :term:`GIL`. There are various options for dealing with " -"this in extension modules. However, from Python code the lack of thread-" -"safety means objects can't actually be shared, with a few exceptions. " -"Instead, a copy must be created, which means mutable objects won't stay in " -"sync." -msgstr "" - -msgid "" -"By default, most objects are copied with :mod:`pickle` when they are passed " -"to another interpreter. Nearly all of the immutable builtin objects are " -"either directly shared or copied efficiently. For example:" -msgstr "" - -msgid ":const:`None`" -msgstr "" - -msgid ":class:`bool` (:const:`True` and :const:`False`)" -msgstr "" - -msgid ":class:`bytes`" -msgstr "" - -msgid ":class:`str`" -msgstr "" - -msgid ":class:`int`" -msgstr "" - -msgid ":class:`float`" -msgstr "" - -msgid ":class:`tuple` (of similarly supported objects)" -msgstr "" - -msgid "" -"There is a small number of Python types that actually share mutable data " -"between interpreters:" -msgstr "" - -msgid ":class:`memoryview`" -msgstr "" - -msgid ":class:`Queue`" -msgstr "" - -msgid "Reference" -msgstr "" - -msgid "This module defines the following functions:" -msgstr "" - -msgid "" -"Return a :class:`list` of :class:`Interpreter` objects, one for each " -"existing interpreter." -msgstr "" - -msgid "" -"Return an :class:`Interpreter` object for the currently running interpreter." -msgstr "" - -msgid "" -"Return an :class:`Interpreter` object for the main interpreter. This is the " -"interpreter the runtime created to run the :term:`REPL` or the script given " -"at the command-line. It is usually the only one." -msgstr "" - -msgid "" -"Initialize a new (idle) Python interpreter and return a :class:`Interpreter` " -"object for it." -msgstr "" - -msgid "" -"Initialize a new cross-interpreter queue and return a :class:`Queue` object " -"for it." -msgstr "" - -msgid "Interpreter objects" -msgstr "" - -msgid "A single interpreter in the current process." -msgstr "" - -msgid "" -"Generally, :class:`Interpreter` shouldn't be called directly. Instead, use :" -"func:`create` or one of the other module functions." -msgstr "" - -msgid "(read-only)" -msgstr "" - -msgid "The underlying interpreter's ID." -msgstr "" - -msgid "A string describing where the interpreter came from." -msgstr "" - -msgid "" -"Return ``True`` if the interpreter is currently executing code in its :mod:`!" -"__main__` module and ``False`` otherwise." -msgstr "" - -msgid "Finalize and destroy the interpreter." -msgstr "" - -msgid "Bind objects in the interpreter's :mod:`!__main__` module." -msgstr "" - -msgid "" -"Some objects are actually shared and some are copied efficiently, but most " -"are copied via :mod:`pickle`. See :ref:`interp-object-sharing`." -msgstr "" - -msgid "Run the given source code in the interpreter (in the current thread)." -msgstr "" - -msgid "" -"Return the result of calling running the given function in the interpreter " -"(in the current thread)." -msgstr "" - -msgid "Run the given function in the interpreter (in a new thread)." -msgstr "" - -msgid "Exceptions" -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`Exception`, is raised when an " -"interpreter-related error happens." -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`InterpreterError`, is raised when the " -"targeted interpreter no longer exists." -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`InterpreterError`, is raised when the " -"running code raised an uncaught exception." -msgstr "" - -msgid "A basic snapshot of the exception raised in the other interpreter." -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`TypeError`, is raised when an object " -"cannot be sent to another interpreter." -msgstr "" - -msgid "Communicating Between Interpreters" -msgstr "" - -msgid "" -"A wrapper around a low-level, cross-interpreter queue, which implements the :" -"class:`queue.Queue` interface. The underlying queue can only be created " -"through :func:`create_queue`." -msgstr "" - -msgid "The queue's ID." -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`queue.Empty`, is raised from :meth:`!" -"Queue.get` and :meth:`!Queue.get_nowait` when the queue is empty." -msgstr "" - -msgid "" -"This exception, a subclass of :exc:`queue.Full`, is raised from :meth:`!" -"Queue.put` and :meth:`!Queue.put_nowait` when the queue is full." -msgstr "" - -msgid "Basic usage" -msgstr "" - -msgid "Creating an interpreter and running code in it::" -msgstr "" - -msgid "" -"from concurrent import interpreters\n" -"\n" -"interp = interpreters.create()\n" -"\n" -"# Run in the current OS thread.\n" -"\n" -"interp.exec('print(\"spam!\")')\n" -"\n" -"interp.exec(\"\"\"if True:\n" -" print('spam!')\n" -" \"\"\")\n" -"\n" -"from textwrap import dedent\n" -"interp.exec(dedent(\"\"\"\n" -" print('spam!')\n" -" \"\"\"))\n" -"\n" -"def run(arg):\n" -" return arg\n" -"\n" -"res = interp.call(run, 'spam!')\n" -"print(res)\n" -"\n" -"def run():\n" -" print('spam!')\n" -"\n" -"interp.call(run)\n" -"\n" -"# Run in new OS thread.\n" -"\n" -"t = interp.call_in_thread(run)\n" -"t.join()" -msgstr "" diff --git a/library/concurrent.po b/library/concurrent.po index d41191f..cfd9fe1 100644 --- a/library/concurrent.po +++ b/library/concurrent.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/configparser.po b/library/configparser.po index 160e258..7fa5fe0 100644 --- a/library/configparser.po +++ b/library/configparser.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -168,12 +168,12 @@ msgid "" msgstr "" msgid "" -"It is possible to read several configurations into a single :class:" -"`ConfigParser`, where the most recently added configuration has the highest " -"priority. Any conflicting keys are taken from the more recent configuration " -"while the previously existing keys are retained. The example below reads in " -"an ``override.ini`` file, which will override any conflicting keys from the " -"``example.ini`` file." +"It is possible to read several configurations into a " +"single :class:`ConfigParser`, where the most recently added configuration " +"has the highest priority. Any conflicting keys are taken from the more " +"recent configuration while the previously existing keys are retained. The " +"example below reads in an ``override.ini`` file, which will override any " +"conflicting keys from the ``example.ini`` file." msgstr "" msgid "" @@ -273,10 +273,10 @@ msgid "" msgstr "" msgid "" -"One more thing to be aware of is that the parser-level :meth:`~ConfigParser." -"get` method provides a custom, more complex interface, maintained for " -"backwards compatibility. When using this method, a fallback value can be " -"provided via the ``fallback`` keyword-only argument:" +"One more thing to be aware of is that the parser-" +"level :meth:`~ConfigParser.get` method provides a custom, more complex " +"interface, maintained for backwards compatibility. When using this method, " +"a fallback value can be provided via the ``fallback`` keyword-only argument:" msgstr "" msgid "" @@ -286,9 +286,9 @@ msgid "" msgstr "" msgid "" -"The same ``fallback`` argument can be used with the :meth:`~ConfigParser." -"getint`, :meth:`~ConfigParser.getfloat` and :meth:`~ConfigParser.getboolean` " -"methods, for example:" +"The same ``fallback`` argument can be used with " +"the :meth:`~ConfigParser.getint`, :meth:`~ConfigParser.getfloat` " +"and :meth:`~ConfigParser.getboolean` methods, for example:" msgstr "" msgid "" @@ -440,8 +440,8 @@ msgid "" msgstr "" msgid "" -"With ``interpolation`` set to ``None``, the parser would simply return " -"``%(my_dir)s/Pictures`` as the value of ``my_pictures`` and ``%(home_dir)s/" +"With ``interpolation`` set to ``None``, the parser would simply return ``%" +"(my_dir)s/Pictures`` as the value of ``my_pictures`` and ``%(home_dir)s/" "lumberjack`` as the value of ``my_dir``." msgstr "" @@ -449,9 +449,9 @@ msgid "" "An alternative handler for interpolation which implements a more advanced " "syntax, used for instance in ``zc.buildout``. Extended interpolation is " "using ``${section:option}`` to denote a value from a foreign section. " -"Interpolation can span multiple levels. For convenience, if the ``section:" -"`` part is omitted, interpolation defaults to the current section (and " -"possibly the default values from the special section)." +"Interpolation can span multiple levels. For convenience, if the " +"``section:`` part is omitted, interpolation defaults to the current section " +"(and possibly the default values from the special section)." msgstr "" msgid "" @@ -513,9 +513,9 @@ msgstr "" msgid "" ":mod:`!configparser` objects behave as close to actual dictionaries as " -"possible. The mapping interface is complete and adheres to the :class:" -"`~collections.abc.MutableMapping` ABC. However, there are a few differences " -"that should be taken into account:" +"possible. The mapping interface is complete and adheres to " +"the :class:`~collections.abc.MutableMapping` ABC. However, there are a few " +"differences that should be taken into account:" msgstr "" msgid "" @@ -532,8 +532,8 @@ msgid "" msgstr "" msgid "" -"All sections include ``DEFAULTSECT`` values as well which means that ``." -"clear()`` on a section may not leave the section visibly empty. This is " +"All sections include ``DEFAULTSECT`` values as well which means that " +"``.clear()`` on a section may not leave the section visibly empty. This is " "because default values cannot be deleted from the section (because " "technically they are not there). If they are overridden in the section, " "deleting causes the default value to be visible again. Trying to delete a " @@ -561,10 +561,10 @@ msgstr "" msgid "" "``parser.items()`` is compatible with the mapping protocol (returns a list " "of *section_name*, *section_proxy* pairs including the DEFAULTSECT). " -"However, this method can also be invoked with arguments: ``parser." -"items(section, raw, vars)``. The latter call returns a list of *option*, " -"*value* pairs for a specified ``section``, with all interpolations expanded " -"(unless ``raw=True`` is provided)." +"However, this method can also be invoked with arguments: " +"``parser.items(section, raw, vars)``. The latter call returns a list of " +"*option*, *value* pairs for a specified ``section``, with all interpolations " +"expanded (unless ``raw=True`` is provided)." msgstr "" msgid "" @@ -600,8 +600,8 @@ msgid "" msgstr "" msgid "" -"Hint: if you want to specify default values for a specific section, use :" -"meth:`~ConfigParser.read_dict` before you read the actual file." +"Hint: if you want to specify default values for a specific section, " +"use :meth:`~ConfigParser.read_dict` before you read the actual file." msgstr "" msgid "*dict_type*, default value: :class:`dict`" @@ -693,8 +693,8 @@ msgid "" msgstr "" msgid "" -"See also the *space_around_delimiters* argument to :meth:`ConfigParser." -"write`." +"See also the *space_around_delimiters* argument " +"to :meth:`ConfigParser.write`." msgstr "" msgid "*comment_prefixes*, default value: ``('#', ';')``" @@ -772,9 +772,10 @@ msgstr "" msgid "" "When set to ``True``, the parser will not allow for any section or option " -"duplicates while reading from a single source (using :meth:`~ConfigParser." -"read_file`, :meth:`~ConfigParser.read_string` or :meth:`~ConfigParser." -"read_dict`). It is recommended to use strict parsers in new applications." +"duplicates while reading from a single source " +"(using :meth:`~ConfigParser.read_file`, :meth:`~ConfigParser.read_string` " +"or :meth:`~ConfigParser.read_dict`). It is recommended to use strict " +"parsers in new applications." msgstr "" msgid "" @@ -823,9 +824,9 @@ msgid "" "other valid section name. Some typical values include: ``\"general\"`` or " "``\"common\"``. The name provided is used for recognizing default sections " "when reading from any source and is used when writing configuration back to " -"a file. Its current value can be retrieved using the ``parser_instance." -"default_section`` attribute and may be modified at runtime (i.e. to convert " -"files from one format to another)." +"a file. Its current value can be retrieved using the " +"``parser_instance.default_section`` attribute and may be modified at runtime " +"(i.e. to convert files from one format to another)." msgstr "" msgid "*interpolation*, default value: ``configparser.BasicInterpolation``" @@ -836,8 +837,8 @@ msgid "" "through the *interpolation* argument. ``None`` can be used to turn off " "interpolation completely, ``ExtendedInterpolation()`` provides a more " "advanced variant inspired by ``zc.buildout``. More on the subject in the " -"`dedicated documentation section <#interpolation-of-values>`_. :class:" -"`RawConfigParser` has a default value of ``None``." +"`dedicated documentation section <#interpolation-of-" +"values>`_. :class:`RawConfigParser` has a default value of ``None``." msgstr "" msgid "*converters*, default value: not set" @@ -849,9 +850,9 @@ msgid "" "and :meth:`~ConfigParser.getboolean` are implemented. Should other getters " "be desirable, users may define them in a subclass or pass a dictionary where " "each key is a name of the converter and each value is a callable " -"implementing said conversion. For instance, passing ``{'decimal': decimal." -"Decimal}`` would add :meth:`!getdecimal` on both the parser object and all " -"section proxies. In other words, it will be possible to write both " +"implementing said conversion. For instance, passing ``{'decimal': " +"decimal.Decimal}`` would add :meth:`!getdecimal` on both the parser object " +"and all section proxies. In other words, it will be possible to write both " "``parser_instance.getdecimal('section', 'key', fallback=0)`` and " "``parser_instance['section'].getdecimal('key', 0)``." msgstr "" @@ -1098,13 +1099,13 @@ msgstr "" msgid "" "When *strict* is ``True`` (the default), the parser won't allow for any " "section or option duplicates while reading from a single source (file, " -"string or dictionary), raising :exc:`DuplicateSectionError` or :exc:" -"`DuplicateOptionError`. When *empty_lines_in_values* is ``False`` (default: " -"``True``), each empty line marks the end of an option. Otherwise, internal " -"empty lines of a multiline option are kept as part of the value. When " -"*allow_no_value* is ``True`` (default: ``False``), options without values " -"are accepted; the value held for these is ``None`` and they are serialized " -"without the trailing delimiter." +"string or dictionary), raising :exc:`DuplicateSectionError` " +"or :exc:`DuplicateOptionError`. When *empty_lines_in_values* is ``False`` " +"(default: ``True``), each empty line marks the end of an option. Otherwise, " +"internal empty lines of a multiline option are kept as part of the value. " +"When *allow_no_value* is ``True`` (default: ``False``), options without " +"values are accepted; the value held for these is ``None`` and they are " +"serialized without the trailing delimiter." msgstr "" msgid "" @@ -1125,11 +1126,11 @@ msgid "" msgstr "" msgid "" -"All option names used in interpolation will be passed through the :meth:" -"`optionxform` method just like any other option name reference. For " -"example, using the default implementation of :meth:`optionxform` (which " -"converts option names to lower case), the values ``foo %(bar)s`` and ``foo " -"%(BAR)s`` are equivalent." +"All option names used in interpolation will be passed through " +"the :meth:`optionxform` method just like any other option name reference. " +"For example, using the default implementation of :meth:`optionxform` (which " +"converts option names to lower case), the values ``foo %(bar)s`` and ``foo %" +"(BAR)s`` are equivalent." msgstr "" msgid "" @@ -1203,9 +1204,9 @@ msgid "Return a list of options available in the specified *section*." msgstr "" msgid "" -"If the given *section* exists, and contains the given *option*, return :" -"const:`True`; otherwise return :const:`False`. If the specified *section* " -"is :const:`None` or an empty string, DEFAULT is assumed." +"If the given *section* exists, and contains the given *option*, " +"return :const:`True`; otherwise return :const:`False`. If the specified " +"*section* is :const:`None` or an empty string, DEFAULT is assumed." msgstr "" msgid "" @@ -1226,8 +1227,8 @@ msgstr "" msgid "" "If none of the named files exist, the :class:`ConfigParser` instance will " "contain an empty dataset. An application which requires initial values to " -"be loaded from a file should load the required file or files using :meth:" -"`read_file` before calling :meth:`read` for any optional files::" +"be loaded from a file should load the required file or files " +"using :meth:`read_file` before calling :meth:`read` for any optional files::" msgstr "" msgid "" @@ -1327,9 +1328,9 @@ msgid "" "``'1'``, ``'yes'``, ``'true'``, and ``'on'``, which cause this method to " "return ``True``, and ``'0'``, ``'no'``, ``'false'``, and ``'off'``, which " "cause it to return ``False``. These string values are checked in a case-" -"insensitive manner. Any other value will cause it to raise :exc:" -"`ValueError`. See :meth:`get` for explanation of *raw*, *vars* and " -"*fallback*." +"insensitive manner. Any other value will cause it to " +"raise :exc:`ValueError`. See :meth:`get` for explanation of *raw*, *vars* " +"and *fallback*." msgstr "" msgid "" @@ -1339,8 +1340,8 @@ msgstr "" msgid "" "Otherwise, return a list of *name*, *value* pairs for the options in the " -"given *section*. Optional arguments have the same meaning as for the :meth:" -"`get` method." +"given *section*. Optional arguments have the same meaning as for " +"the :meth:`get` method." msgstr "" msgid "" @@ -1416,9 +1417,9 @@ msgid "" msgstr "" msgid "" -"The maximum depth for recursive interpolation for :meth:`~configparser." -"ConfigParser.get` when the *raw* parameter is false. This is relevant only " -"when the default *interpolation* is used." +"The maximum depth for recursive interpolation " +"for :meth:`~configparser.ConfigParser.get` when the *raw* parameter is " +"false. This is relevant only when the default *interpolation* is used." msgstr "" msgid "RawConfigParser Objects" @@ -1443,9 +1444,9 @@ msgstr "" msgid "" "If the given section already exists, :exc:`DuplicateSectionError` is raised. " -"If the *default section* name is passed, :exc:`ValueError` is raised. If :" -"const:`UNNAMED_SECTION` is passed and support is disabled, :exc:" -"`UnnamedSectionDisabledError` is raised." +"If the *default section* name is passed, :exc:`ValueError` is raised. " +"If :const:`UNNAMED_SECTION` is passed and support is " +"disabled, :exc:`UnnamedSectionDisabledError` is raised." msgstr "" msgid "" @@ -1458,9 +1459,9 @@ msgstr "" msgid "" "If the given section exists, set the given option to the specified value; " -"otherwise raise :exc:`NoSectionError`. While it is possible to use :class:" -"`RawConfigParser` (or :class:`ConfigParser` with *raw* parameters set to " -"true) for *internal* storage of non-string values, full functionality " +"otherwise raise :exc:`NoSectionError`. While it is possible to " +"use :class:`RawConfigParser` (or :class:`ConfigParser` with *raw* parameters " +"set to true) for *internal* storage of non-string values, full functionality " "(including interpolation and output to files) can only be achieved using " "string values." msgstr "" @@ -1488,8 +1489,8 @@ msgid "" msgstr "" msgid "" -"Added the optional *source* and *lineno* attributes and parameters to :meth:" -"`!__init__`." +"Added the optional *source* and *lineno* attributes and parameters " +"to :meth:`!__init__`." msgstr "" msgid "" @@ -1511,8 +1512,8 @@ msgstr "" msgid "" "Exception raised when string interpolation cannot be completed because the " -"number of iterations exceeds :const:`MAX_INTERPOLATION_DEPTH`. Subclass of :" -"exc:`InterpolationError`." +"number of iterations exceeds :const:`MAX_INTERPOLATION_DEPTH`. Subclass " +"of :exc:`InterpolationError`." msgstr "" msgid "" diff --git a/library/contextlib.po b/library/contextlib.po index 35259cc..27f947c 100644 --- a/library/contextlib.po +++ b/library/contextlib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,9 +30,9 @@ msgid "**Source code:** :source:`Lib/contextlib.py`" msgstr "" msgid "" -"This module provides utilities for common tasks involving the :keyword:" -"`with` statement. For more information see also :ref:`typecontextmanager` " -"and :ref:`context-managers`." +"This module provides utilities for common tasks involving " +"the :keyword:`with` statement. For more information see " +"also :ref:`typecontextmanager` and :ref:`context-managers`." msgstr "" msgid "Utilities" @@ -42,33 +42,35 @@ msgid "Functions and classes provided:" msgstr "" msgid "" -"An :term:`abstract base class` for classes that implement :meth:`~object." -"__enter__` and :meth:`~object.__exit__`. A default implementation for :meth:" -"`~object.__enter__` is provided which returns ``self`` while :meth:`~object." -"__exit__` is an abstract method which by default returns ``None``. See also " -"the definition of :ref:`typecontextmanager`." +"An :term:`abstract base class` for classes that " +"implement :meth:`~object.__enter__` and :meth:`~object.__exit__`. A default " +"implementation for :meth:`~object.__enter__` is provided which returns " +"``self`` while :meth:`~object.__exit__` is an abstract method which by " +"default returns ``None``. See also the definition " +"of :ref:`typecontextmanager`." msgstr "" msgid "" -"An :term:`abstract base class` for classes that implement :meth:`~object." -"__aenter__` and :meth:`~object.__aexit__`. A default implementation for :" -"meth:`~object.__aenter__` is provided which returns ``self`` while :meth:" -"`~object.__aexit__` is an abstract method which by default returns ``None``. " -"See also the definition of :ref:`async-context-managers`." +"An :term:`abstract base class` for classes that " +"implement :meth:`~object.__aenter__` and :meth:`~object.__aexit__`. A " +"default implementation for :meth:`~object.__aenter__` is provided which " +"returns ``self`` while :meth:`~object.__aexit__` is an abstract method which " +"by default returns ``None``. See also the definition of :ref:`async-context-" +"managers`." msgstr "" msgid "" "This function is a :term:`decorator` that can be used to define a factory " "function for :keyword:`with` statement context managers, without needing to " -"create a class or separate :meth:`~object.__enter__` and :meth:`~object." -"__exit__` methods." +"create a class or separate :meth:`~object.__enter__` " +"and :meth:`~object.__exit__` methods." msgstr "" msgid "" "While many objects natively support use in with statements, sometimes a " "resource needs to be managed that isn't a context manager in its own right, " -"and doesn't implement a ``close()`` method for use with ``contextlib." -"closing``." +"and doesn't implement a ``close()`` method for use with " +"``contextlib.closing``." msgstr "" msgid "" @@ -106,18 +108,18 @@ msgid "" msgstr "" msgid "" -"At the point where the generator yields, the block nested in the :keyword:" -"`with` statement is executed. The generator is then resumed after the block " -"is exited. If an unhandled exception occurs in the block, it is reraised " -"inside the generator at the point where the yield occurred. Thus, you can " -"use a :keyword:`try`...\\ :keyword:`except`...\\ :keyword:`finally` " -"statement to trap the error (if any), or ensure that some cleanup takes " -"place. If an exception is trapped merely in order to log it or to perform " -"some action (rather than to suppress it entirely), the generator must " -"reraise that exception. Otherwise the generator context manager will " -"indicate to the :keyword:`!with` statement that the exception has been " -"handled, and execution will resume with the statement immediately following " -"the :keyword:`!with` statement." +"At the point where the generator yields, the block nested in " +"the :keyword:`with` statement is executed. The generator is then resumed " +"after the block is exited. If an unhandled exception occurs in the block, it " +"is reraised inside the generator at the point where the yield occurred. " +"Thus, you can use a :keyword:`try`...\\ :keyword:`except`..." +"\\ :keyword:`finally` statement to trap the error (if any), or ensure that " +"some cleanup takes place. If an exception is trapped merely in order to log " +"it or to perform some action (rather than to suppress it entirely), the " +"generator must reraise that exception. Otherwise the generator context " +"manager will indicate to the :keyword:`!with` statement that the exception " +"has been handled, and execution will resume with the statement immediately " +"following the :keyword:`!with` statement." msgstr "" msgid "" @@ -134,16 +136,16 @@ msgid "Use of :class:`ContextDecorator`." msgstr "" msgid "" -"Similar to :deco:`~contextlib.contextmanager`, but creates an :ref:" -"`asynchronous context manager `." +"Similar to :deco:`~contextlib.contextmanager`, but creates " +"an :ref:`asynchronous context manager `." msgstr "" msgid "" "This function is a :term:`decorator` that can be used to define a factory " "function for :keyword:`async with` statement asynchronous context managers, " "without needing to create a class or separate :meth:`~object.__aenter__` " -"and :meth:`~object.__aexit__` methods. It must be applied to an :term:" -"`asynchronous generator` function." +"and :meth:`~object.__aexit__` methods. It must be applied to " +"an :term:`asynchronous generator` function." msgstr "" msgid "A simple example::" @@ -234,10 +236,11 @@ msgstr "" msgid "" "Most types managing resources support the :term:`context manager` protocol, " -"which closes *thing* on leaving the :keyword:`with` statement. As such, :" -"func:`!closing` is most useful for third party types that don't support " -"context managers. This example is purely for illustration purposes, as :func:" -"`~urllib.request.urlopen` would normally be used in a context manager." +"which closes *thing* on leaving the :keyword:`with` statement. As " +"such, :func:`!closing` is most useful for third party types that don't " +"support context managers. This example is purely for illustration purposes, " +"as :func:`~urllib.request.urlopen` would normally be used in a context " +"manager." msgstr "" msgid "" @@ -279,9 +282,9 @@ msgid "" msgstr "" msgid "" -"Return a context manager that returns *enter_result* from :meth:`~object." -"__enter__`, but otherwise does nothing. It is intended to be used as a stand-" -"in for an optional context manager, for example::" +"Return a context manager that returns *enter_result* " +"from :meth:`~object.__enter__`, but otherwise does nothing. It is intended " +"to be used as a stand-in for an optional context manager, for example::" msgstr "" msgid "" @@ -379,21 +382,21 @@ msgid "This context manager is :ref:`reentrant `." msgstr "" msgid "" -"If the code within the :keyword:`!with` block raises a :exc:" -"`BaseExceptionGroup`, suppressed exceptions are removed from the group. Any " -"exceptions of the group which are not suppressed are re-raised in a new " -"group which is created using the original group's :meth:`~BaseExceptionGroup." -"derive` method." +"If the code within the :keyword:`!with` block raises " +"a :exc:`BaseExceptionGroup`, suppressed exceptions are removed from the " +"group. Any exceptions of the group which are not suppressed are re-raised " +"in a new group which is created using the original " +"group's :meth:`~BaseExceptionGroup.derive` method." msgstr "" msgid "" -"``suppress`` now supports suppressing exceptions raised as part of a :exc:" -"`BaseExceptionGroup`." +"``suppress`` now supports suppressing exceptions raised as part of " +"a :exc:`BaseExceptionGroup`." msgstr "" msgid "" -"Context manager for temporarily redirecting :data:`sys.stdout` to another :" -"term:`file object`." +"Context manager for temporarily redirecting :data:`sys.stdout` to " +"another :term:`file object`." msgstr "" msgid "" @@ -403,10 +406,10 @@ msgstr "" msgid "" "For example, the output of :func:`help` normally is sent to *sys.stdout*. " -"You can capture that output in a string by redirecting the output to an :" -"class:`io.StringIO` object. The replacement stream is returned from the :" -"meth:`~object.__enter__` method and so is available as the target of the :" -"keyword:`with` statement::" +"You can capture that output in a string by redirecting the output to " +"an :class:`io.StringIO` object. The replacement stream is returned from " +"the :meth:`~object.__enter__` method and so is available as the target of " +"the :keyword:`with` statement::" msgstr "" msgid "" @@ -442,8 +445,8 @@ msgid "" msgstr "" msgid "" -"Similar to :func:`~contextlib.redirect_stdout` but redirecting the global :" -"data:`sys.stderr` to another :term:`file object`." +"Similar to :func:`~contextlib.redirect_stdout` but redirecting the " +"global :data:`sys.stderr` to another :term:`file object`." msgstr "" msgid "" @@ -465,8 +468,8 @@ msgid "" msgstr "" msgid "" -"Context managers inheriting from ``ContextDecorator`` have to implement :" -"meth:`~object.__enter__` and :meth:`~object.__exit__` as normal. " +"Context managers inheriting from ``ContextDecorator`` have to " +"implement :meth:`~object.__enter__` and :meth:`~object.__exit__` as normal. " "``__exit__`` retains its optional exception handling even when used as a " "decorator." msgstr "" @@ -571,8 +574,8 @@ msgstr "" msgid "" "For asynchronous generators the wrapper re-yields each value with ``async " -"for``; values sent with :meth:`~agen.asend` and exceptions thrown with :meth:" -"`~agen.athrow` are not forwarded to the wrapped generator." +"for``; values sent with :meth:`~agen.asend` and exceptions thrown " +"with :meth:`~agen.athrow` are not forwarded to the wrapped generator." msgstr "" msgid "" @@ -722,14 +725,15 @@ msgstr "" msgid "" "As ``__enter__`` is *not* invoked, this method can be used to cover part of " -"an :meth:`~object.__enter__` implementation with a context manager's own :" -"meth:`~object.__exit__` method." +"an :meth:`~object.__enter__` implementation with a context manager's " +"own :meth:`~object.__exit__` method." msgstr "" msgid "" "If passed an object that is not a context manager, this method assumes it is " -"a callback with the same signature as a context manager's :meth:`~object." -"__exit__` method and adds it directly to the callback stack." +"a callback with the same signature as a context " +"manager's :meth:`~object.__exit__` method and adds it directly to the " +"callback stack." msgstr "" msgid "" @@ -790,9 +794,10 @@ msgid "" msgstr "" msgid "" -"An :ref:`asynchronous context manager `, similar to :" -"class:`ExitStack`, that supports combining both synchronous and asynchronous " -"context managers, as well as having coroutines for cleanup logic." +"An :ref:`asynchronous context manager `, similar " +"to :class:`ExitStack`, that supports combining both synchronous and " +"asynchronous context managers, as well as having coroutines for cleanup " +"logic." msgstr "" msgid "" @@ -881,12 +886,12 @@ msgid "Catching exceptions from ``__enter__`` methods" msgstr "" msgid "" -"It is occasionally desirable to catch exceptions from an :meth:`~object." -"__enter__` method implementation, *without* inadvertently catching " -"exceptions from the :keyword:`with` statement body or the context manager's :" -"meth:`~object.__exit__` method. By using :class:`ExitStack` the steps in the " -"context management protocol can be separated slightly in order to allow " -"this::" +"It is occasionally desirable to catch exceptions from " +"an :meth:`~object.__enter__` method implementation, *without* inadvertently " +"catching exceptions from the :keyword:`with` statement body or the context " +"manager's :meth:`~object.__exit__` method. By using :class:`ExitStack` the " +"steps in the context management protocol can be separated slightly in order " +"to allow this::" msgstr "" msgid "" @@ -902,12 +907,12 @@ msgstr "" msgid "" "Actually needing to do this is likely to indicate that the underlying API " -"should be providing a direct resource management interface for use with :" -"keyword:`try`/:keyword:`except`/:keyword:`finally` statements, but not all " -"APIs are well designed in that regard. When a context manager is the only " -"resource management API provided, then :class:`ExitStack` can make it easier " -"to handle various situations that can't be handled directly in a :keyword:" -"`with` statement." +"should be providing a direct resource management interface for use " +"with :keyword:`try`/:keyword:`except`/:keyword:`finally` statements, but not " +"all APIs are well designed in that regard. When a context manager is the " +"only resource management API provided, then :class:`ExitStack` can make it " +"easier to handle various situations that can't be handled directly in " +"a :keyword:`with` statement." msgstr "" msgid "Cleaning up in an ``__enter__`` implementation" @@ -915,8 +920,8 @@ msgstr "" msgid "" "As noted in the documentation of :meth:`ExitStack.push`, this method can be " -"useful in cleaning up an already allocated resource if later steps in the :" -"meth:`~object.__enter__` implementation fail." +"useful in cleaning up an already allocated resource if later steps in " +"the :meth:`~object.__enter__` implementation fail." msgstr "" msgid "" @@ -1034,8 +1039,8 @@ msgstr "" msgid "" "If the resource cleanup isn't already neatly bundled into a standalone " -"function, then it is still possible to use the decorator form of :meth:" -"`ExitStack.callback` to declare the resource cleanup in advance::" +"function, then it is still possible to use the decorator form " +"of :meth:`ExitStack.callback` to declare the resource cleanup in advance::" msgstr "" msgid "" @@ -1110,9 +1115,9 @@ msgstr "" msgid "" "Note that there is one additional limitation when using context managers as " -"function decorators: there's no way to access the return value of :meth:" -"`~object.__enter__`. If that value is needed, then it is still necessary to " -"use an explicit ``with`` statement." +"function decorators: there's no way to access the return value " +"of :meth:`~object.__enter__`. If that value is needed, then it is still " +"necessary to use an explicit ``with`` statement." msgstr "" msgid ":pep:`343` - The \"with\" statement" @@ -1215,8 +1220,8 @@ msgstr "" msgid "" "Note also that being reentrant is *not* the same thing as being thread " "safe. :func:`redirect_stdout`, for example, is definitely not thread safe, " -"as it makes a global modification to the system state by binding :data:`sys." -"stdout` to a different stream." +"as it makes a global modification to the system state by " +"binding :data:`sys.stdout` to a different stream." msgstr "" msgid "Reusable context managers" @@ -1233,14 +1238,15 @@ msgstr "" msgid "" ":class:`threading.Lock` is an example of a reusable, but not reentrant, " -"context manager (for a reentrant lock, it is necessary to use :class:" -"`threading.RLock` instead)." +"context manager (for a reentrant lock, it is necessary to " +"use :class:`threading.RLock` instead)." msgstr "" msgid "" -"Another example of a reusable, but not reentrant, context manager is :class:" -"`ExitStack`, as it invokes *all* currently registered callbacks when leaving " -"any with statement, regardless of where those callbacks were added::" +"Another example of a reusable, but not reentrant, context manager " +"is :class:`ExitStack`, as it invokes *all* currently registered callbacks " +"when leaving any with statement, regardless of where those callbacks were " +"added::" msgstr "" msgid "" diff --git a/library/contextvars.po b/library/contextvars.po index 41f52fc..1613d2e 100644 --- a/library/contextvars.po +++ b/library/contextvars.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,9 +34,9 @@ msgid "" msgstr "" msgid "" -"Context managers that have state should use Context Variables instead of :" -"func:`threading.local` to prevent their state from bleeding to other code " -"unexpectedly, when used in concurrent code." +"Context managers that have state should use Context Variables instead " +"of :func:`threading.local` to prevent their state from bleeding to other " +"code unexpectedly, when used in concurrent code." msgstr "" msgid "See also :pep:`567` for additional details." @@ -56,9 +56,9 @@ msgid "" msgstr "" msgid "" -"The optional keyword-only *default* parameter is returned by :meth:" -"`ContextVar.get` when no value for the variable is found in the current " -"context." +"The optional keyword-only *default* parameter is returned " +"by :meth:`ContextVar.get` when no value for the variable is found in the " +"current context." msgstr "" msgid "" @@ -142,8 +142,8 @@ msgid "Added support for using tokens as context managers." msgstr "" msgid "" -"Reset the context variable to the value it had before the :meth:`ContextVar." -"set` that created the *token* was used." +"Reset the context variable to the value it had before " +"the :meth:`ContextVar.set` that created the *token* was used." msgstr "" msgid "For example::" @@ -176,8 +176,8 @@ msgid "" msgstr "" msgid "" -"Tokens are :ref:`generic ` over the same type as the :class:" -"`ContextVar` which created them." +"Tokens are :ref:`generic ` over the same type as " +"the :class:`ContextVar` which created them." msgstr "" msgid "Added support for usage as a context manager." @@ -189,9 +189,9 @@ msgid "" msgstr "" msgid "" -"A read-only property. Set to the value the variable had before the :meth:" -"`ContextVar.set` method call that created the token. It points to :attr:" -"`Token.MISSING` if the variable was not set before the call." +"A read-only property. Set to the value the variable had before " +"the :meth:`ContextVar.set` method call that created the token. It points " +"to :attr:`Token.MISSING` if the variable was not set before the call." msgstr "" msgid "A marker object used by :attr:`Token.old_value`." @@ -228,9 +228,9 @@ msgid "" msgstr "" msgid "" -"Each thread has its own effective stack of :class:`!Context` objects. The :" -"term:`current context` is the :class:`!Context` object at the top of the " -"current thread's stack. All :class:`!Context` objects in the stacks are " +"Each thread has its own effective stack of :class:`!Context` objects. " +"The :term:`current context` is the :class:`!Context` object at the top of " +"the current thread's stack. All :class:`!Context` objects in the stacks are " "considered to be *entered*." msgstr "" diff --git a/library/copy.po b/library/copy.po index e12fd29..7a37874 100644 --- a/library/copy.po +++ b/library/copy.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -101,18 +101,18 @@ msgid "" "This module does not copy types like module, method, stack trace, stack " "frame, file, socket, window, or any similar types. It does \"copy\" " "functions and classes (shallow and deeply), by returning the original object " -"unchanged; this is compatible with the way these are treated by the :mod:" -"`pickle` module." +"unchanged; this is compatible with the way these are treated by " +"the :mod:`pickle` module." msgstr "" msgid "" -"Shallow copies of many collections can be made using the corresponding :meth:" -"`!copy` method (such as :meth:`list.copy`, :meth:`dict.copy` or :meth:`set." -"copy`), and of sequences (such as lists or bytearrays) by making a slice of " -"the entire sequence (``sequence[:]``). However, these methods and slicing " -"can create an instance of the base type when copying an instance of a " -"subclass, whereas :func:`copy.copy` normally returns an instance of the same " -"type." +"Shallow copies of many collections can be made using the " +"corresponding :meth:`!copy` method (such " +"as :meth:`list.copy`, :meth:`dict.copy` or :meth:`set.copy`), and of " +"sequences (such as lists or bytearrays) by making a slice of the entire " +"sequence (``sequence[:]``). However, these methods and slicing can create an " +"instance of the base type when copying an instance of a subclass, " +"whereas :func:`copy.copy` normally returns an instance of the same type." msgstr "" msgid "" @@ -141,10 +141,10 @@ msgid "" msgstr "" msgid "" -"Function :func:`!copy.replace` is more limited than :func:`~copy.copy` and :" -"func:`~copy.deepcopy`, and only supports named tuples created by :func:" -"`~collections.namedtuple`, :mod:`dataclasses`, and other classes which " -"define method :meth:`~object.__replace__`." +"Function :func:`!copy.replace` is more limited than :func:`~copy.copy` " +"and :func:`~copy.deepcopy`, and only supports named tuples created " +"by :func:`~collections.namedtuple`, :mod:`dataclasses`, and other classes " +"which define method :meth:`~object.__replace__`." msgstr "" msgid "" diff --git a/library/copyreg.po b/library/copyreg.po index c51830e..ab01d29 100644 --- a/library/copyreg.po +++ b/library/copyreg.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -44,8 +45,9 @@ msgstr "" msgid "" "Declares that *function* should be used as a \"reduction\" function for " "objects of type *type*. *function* must return either a string or a tuple " -"containing between two and six elements. See the :attr:`~pickle.Pickler." -"dispatch_table` for more details on the interface of *function*." +"containing between two and six elements. See " +"the :attr:`~pickle.Pickler.dispatch_table` for more details on the interface " +"of *function*." msgstr "" msgid "" diff --git a/library/crypt.po b/library/crypt.po index e336eed..0bfc28d 100644 --- a/library/crypt.po +++ b/library/crypt.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,16 +26,16 @@ msgid ":mod:`!crypt` --- Function to check Unix passwords" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" "Applications can use the :mod:`hashlib` module from the standard library. " -"Other possible replacements are third-party libraries from PyPI: :pypi:" -"`legacycrypt`, :pypi:`bcrypt`, or :pypi:`argon2-cffi`. These are not " -"supported or maintained by the Python core team." +"Other possible replacements are third-party libraries from " +"PyPI: :pypi:`legacycrypt`, :pypi:`bcrypt`, or :pypi:`argon2-cffi`. These are " +"not supported or maintained by the Python core team." msgstr "" msgid "" diff --git a/library/crypto.po b/library/crypto.po index d1977a2..dfeb426 100644 --- a/library/crypto.po +++ b/library/crypto.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/csv.po b/library/csv.po index 862f607..0df2d62 100644 --- a/library/csv.po +++ b/library/csv.po @@ -11,18 +11,18 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pa\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -msgid ":mod:`!csv` --- CSV File Reading and Writing" +msgid ":mod:`!csv` --- CSV file reading and writing" msgstr "" msgid "**Source code:** :source:`Lib/csv.py`" @@ -62,7 +62,7 @@ msgstr "" msgid "The Python Enhancement Proposal which proposed this addition to Python." msgstr "" -msgid "Module Contents" +msgid "Module contents" msgstr "" msgid "The :mod:`!csv` module defines the following functions:" @@ -84,9 +84,9 @@ msgstr "" msgid "" "Each row read from the csv file is returned as a list of strings. No " -"automatic data type conversion is performed unless the :data:" -"`QUOTE_NONNUMERIC` format option is specified (in which case unquoted fields " -"are transformed into floats)." +"automatic data type conversion is performed unless " +"the :data:`QUOTE_NONNUMERIC` format option is specified (in which case " +"unquoted fields are transformed into floats)." msgstr "" msgid "A short usage example::" @@ -116,12 +116,12 @@ msgid "" "object with a :meth:`~io.TextIOBase.write` method. If *csvfile* is a file " "object, it should be opened with ``newline=''`` [1]_. An optional *dialect* " "parameter can be given which is used to define a set of parameters specific " -"to a particular CSV dialect. It may be an instance of a subclass of the :" -"class:`Dialect` class or one of the strings returned by the :func:" -"`list_dialects` function. The other optional *fmtparams* keyword arguments " -"can be given to override individual formatting parameters in the current " -"dialect. For full details about dialects and formatting parameters, see " -"the :ref:`csv-fmt-params` section. To make it as easy as possible to " +"to a particular CSV dialect. It may be an instance of a subclass of " +"the :class:`Dialect` class or one of the strings returned by " +"the :func:`list_dialects` function. The other optional *fmtparams* keyword " +"arguments can be given to override individual formatting parameters in the " +"current dialect. For full details about dialects and formatting parameters, " +"see the :ref:`csv-fmt-params` section. To make it as easy as possible to " "interface with modules which implement the DB API, the value :const:`None` " "is written as the empty string. While this isn't a reversible " "transformation, it makes it easier to dump SQL NULL data values to CSV files " @@ -150,8 +150,8 @@ msgid "" msgstr "" msgid "" -"Delete the dialect associated with *name* from the dialect registry. An :" -"exc:`Error` is raised if *name* is not a registered dialect name." +"Delete the dialect associated with *name* from the dialect registry. " +"An :exc:`Error` is raised if *name* is not a registered dialect name." msgstr "" msgid "" @@ -195,8 +195,8 @@ msgid "" msgstr "" msgid "" -"All other optional or keyword arguments are passed to the underlying :class:" -"`reader` instance." +"All other optional or keyword arguments are passed to the " +"underlying :class:`reader` instance." msgstr "" msgid "" @@ -242,10 +242,10 @@ msgid "" "written if the dictionary is missing a key in *fieldnames*. If the " "dictionary passed to the :meth:`~csvwriter.writerow` method contains a key " "not found in *fieldnames*, the optional *extrasaction* parameter indicates " -"what action to take. If it is set to ``'raise'``, the default value, a :exc:" -"`ValueError` is raised. If it is set to ``'ignore'``, extra values in the " -"dictionary are ignored. Any other optional or keyword arguments are passed " -"to the underlying :class:`writer` instance." +"what action to take. If it is set to ``'raise'``, the default value, " +"a :exc:`ValueError` is raised. If it is set to ``'ignore'``, extra values in " +"the dictionary are ignored. Any other optional or keyword arguments are " +"passed to the underlying :class:`writer` instance." msgstr "" msgid "" @@ -280,8 +280,8 @@ msgid "" "The :class:`Dialect` class is a container class whose attributes contain " "information for how to handle doublequotes, whitespace, delimiters, etc. Due " "to the lack of a strict CSV specification, different applications produce " -"subtly different CSV data. :class:`Dialect` instances define how :class:" -"`reader` and :class:`writer` instances behave." +"subtly different CSV data. :class:`Dialect` instances define " +"how :class:`reader` and :class:`writer` instances behave." msgstr "" msgid "" @@ -328,16 +328,16 @@ msgstr "" msgid "" "If several delimiters fit the sample equally well --- for example if both " -"``','`` and ``';'`` split every row consistently --- the delimiters ``','``, " -"``'\\t'``, ``';'``, ``' '`` and ``':'`` are preferred, in this order, no " +"``','`` and ``';'`` split every row consistently --- the delimiters listed " +"in the :attr:`~Sniffer.preferred` attribute are preferred, in that order, no " "matter how many times each of them occurs." msgstr "" msgid "" -"Analyze the sample text (presumed to be in CSV format) and return :const:" -"`True` if the first row appears to be a series of column headers. Inspecting " -"each column, one of two key criteria will be considered to estimate if the " -"sample contains a header:" +"Analyze the sample text (presumed to be in CSV format) and " +"return :const:`True` if the first row appears to be a series of column " +"headers. Inspecting each column, one of two key criteria will be considered " +"to estimate if the sample contains a header:" msgstr "" msgid "the second through n-th rows contain numeric values" @@ -358,6 +358,15 @@ msgid "" "negatives." msgstr "" +msgid "The :class:`Sniffer` class has the following attribute:" +msgstr "" + +msgid "" +"The list of the delimiters preferred for breaking ties, in the order of " +"preference. It can be modified. Its initial value is ``[',', '\\t', ';', ' " +"', ':']``." +msgstr "" + msgid "An example for :class:`Sniffer` use::" msgstr "" @@ -378,22 +387,24 @@ msgstr "" msgid "" "Instructs :class:`writer` objects to only quote those fields which contain " "special characters such as *delimiter*, *quotechar*, ``'\\r'``, ``'\\n'`` or " -"any of the characters in *lineterminator*." +"any of the characters in *lineterminator*. If *doublequote* " +"is :const:`False` and *escapechar* is set, the *quotechar* is escaped " +"instead of causing the field to be quoted." msgstr "" msgid "Instructs :class:`writer` objects to quote all non-numeric fields." msgstr "" msgid "" -"Instructs :class:`reader` objects to convert all non-quoted fields to type :" -"class:`float`." +"Instructs :class:`reader` objects to convert all non-quoted fields to " +"type :class:`float`." msgstr "" msgid "" -"Some numeric types, such as :class:`bool`, :class:`~fractions.Fraction`, or :" -"class:`~enum.IntEnum`, have a string representation that cannot be converted " -"to :class:`float`. They cannot be read in the :data:`QUOTE_NONNUMERIC` and :" -"data:`QUOTE_STRINGS` modes." +"Some numeric types, such as :class:`bool`, :class:`~fractions.Fraction`, " +"or :class:`~enum.IntEnum`, have a string representation that cannot be " +"converted to :class:`float`. They cannot be read in " +"the :data:`QUOTE_NONNUMERIC` and :data:`QUOTE_STRINGS` modes." msgstr "" msgid "" @@ -438,19 +449,19 @@ msgstr "" msgid "Raised by any of the functions when an error is detected." msgstr "" -msgid "Dialects and Formatting Parameters" +msgid "Dialects and formatting parameters" msgstr "" msgid "" "To make it easier to specify the format of input and output records, " "specific formatting parameters are grouped together into dialects. A " "dialect is a subclass of the :class:`Dialect` class containing various " -"attributes describing the format of the CSV file. When creating :class:" -"`reader` or :class:`writer` objects, the programmer can specify a string or " -"a subclass of the :class:`Dialect` class as the dialect parameter. In " -"addition to, or instead of, the *dialect* parameter, the programmer can also " -"specify individual formatting parameters, which have the same names as the " -"attributes defined below for the :class:`Dialect` class." +"attributes describing the format of the CSV file. When " +"creating :class:`reader` or :class:`writer` objects, the programmer can " +"specify a string or a subclass of the :class:`Dialect` class as the dialect " +"parameter. In addition to, or instead of, the *dialect* parameter, the " +"programmer can also specify individual formatting parameters, which have the " +"same names as the attributes defined below for the :class:`Dialect` class." msgstr "" msgid "Dialects support the following attributes:" @@ -462,14 +473,14 @@ msgstr "" msgid "" "Controls how instances of *quotechar* appearing inside a field should " -"themselves be quoted. When :const:`True`, the character is doubled. When :" -"const:`False`, the *escapechar* is used as a prefix to the *quotechar*. It " -"defaults to :const:`True`." +"themselves be quoted. When :const:`True`, the character is doubled. " +"When :const:`False`, the *escapechar* is used as a prefix to the " +"*quotechar*. It defaults to :const:`True`." msgstr "" msgid "" -"On output, if *doublequote* is :const:`False` and no *escapechar* is set, :" -"exc:`Error` is raised if a *quotechar* is found in a field." +"On output, if *doublequote* is :const:`False` and no *escapechar* is " +"set, :exc:`Error` is raised if a *quotechar* is found in a field." msgstr "" msgid "" @@ -479,8 +490,8 @@ msgstr "" msgid "" "the *delimiter*, the *quotechar*, ``'\\r'``, ``'\\n'`` and any of the " -"characters in *lineterminator* are escaped if *quoting* is set to :const:" -"`QUOTE_NONE`;" +"characters in *lineterminator* are escaped if *quoting* is set " +"to :const:`QUOTE_NONE`;" msgstr "" msgid "the *quotechar* is escaped if *doublequote* is :const:`False`;" @@ -494,6 +505,10 @@ msgid "" "character. It defaults to :const:`None`, which disables escaping." msgstr "" +msgid "" +"Previously the *escapechar* itself was not escaped, which lost it on reading." +msgstr "" + msgid "An empty *escapechar* is not allowed." msgstr "" @@ -537,12 +552,12 @@ msgid "" "``False``." msgstr "" -msgid "Reader Objects" +msgid "Reader objects" msgstr "" msgid "" -"Reader objects (:class:`DictReader` instances and objects returned by the :" -"func:`reader` function) have the following public methods:" +"Reader objects (:class:`DictReader` instances and objects returned by " +"the :func:`reader` function) have the following public methods:" msgstr "" msgid "" @@ -571,7 +586,7 @@ msgid "" "initialized upon first access or when the first record is read from the file." msgstr "" -msgid "Writer Objects" +msgid "Writer objects" msgstr "" msgid "" @@ -616,8 +631,8 @@ msgid "" msgstr "" msgid "" -":meth:`writeheader` now also returns the value returned by the :meth:" -"`csvwriter.writerow` method it uses internally." +":meth:`writeheader` now also returns the value returned by " +"the :meth:`csvwriter.writerow` method it uses internally." msgstr "" msgid "Examples" @@ -657,22 +672,21 @@ msgstr "" msgid "" "Since :func:`open` is used to open a CSV file for reading, the file will by " -"default be decoded into unicode using the system default encoding (see :func:" -"`locale.getencoding`). To decode a file using a different encoding, use the " -"``encoding`` argument of open::" +"default be decoded into Unicode using UTF-8. To decode a file using a " +"different encoding, use the ``encoding`` argument of open::" msgstr "" msgid "" "import csv\n" -"with open('some.csv', newline='', encoding='utf-8') as f:\n" +"with open('some.csv', newline='', encoding='latin-1') as f:\n" " reader = csv.reader(f)\n" " for row in reader:\n" " print(row)" msgstr "" msgid "" -"The same applies to writing in something other than the system default " -"encoding: specify the encoding argument when opening the output file." +"The same applies to writing in something other than the default encoding: " +"specify the encoding argument when opening the output file." msgstr "" msgid "Registering a new dialect::" @@ -720,8 +734,8 @@ msgid "" "If ``newline=''`` is not specified, newlines embedded inside quoted fields " "will not be interpreted correctly, and on platforms that use ``\\r\\n`` line " "endings on write an extra ``\\r`` will be added. It should always be safe " -"to specify ``newline=''``, since the csv module does its own (:term:" -"`universal `) newline handling." +"to specify ``newline=''``, since the csv module does its own " +"(:term:`universal `) newline handling." msgstr "" msgid "csv" diff --git a/library/ctypes.po b/library/ctypes.po index 5a1f582..d3a9d21 100644 --- a/library/ctypes.po +++ b/library/ctypes.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,34 +55,35 @@ msgstr "" msgid "" "Note: Some code samples reference the ctypes :class:`c_int` type. On " -"platforms where ``sizeof(long) == sizeof(int)`` it is an alias to :class:" -"`c_long`. So, you should not be confused if :class:`c_long` is printed if " -"you would expect :class:`c_int` --- they are actually the same type." +"platforms where ``sizeof(long) == sizeof(int)`` it is an alias " +"to :class:`c_long`. So, you should not be confused if :class:`c_long` is " +"printed if you would expect :class:`c_int` --- they are actually the same " +"type." msgstr "" msgid "Loading dynamic link libraries" msgstr "" msgid "" -":mod:`!ctypes` exports the :py:data:`~ctypes.cdll`, and on Windows :py:data:" -"`~ctypes.windll` and :py:data:`~ctypes.oledll` objects, for loading dynamic " -"link libraries." +":mod:`!ctypes` exports the :py:data:`~ctypes.cdll`, and on " +"Windows :py:data:`~ctypes.windll` and :py:data:`~ctypes.oledll` objects, for " +"loading dynamic link libraries." msgstr "" msgid "" -"You load libraries by accessing them as attributes of these objects. :py:" -"data:`!cdll` loads libraries which export functions using the standard " -"``cdecl`` calling convention, while :py:data:`!windll` libraries call " -"functions using the ``stdcall`` calling convention. :py:data:`~oledll` also " -"uses the ``stdcall`` calling convention, and assumes the functions return a " -"Windows :c:type:`!HRESULT` error code. The error code is used to " +"You load libraries by accessing them as attributes of these " +"objects. :py:data:`!cdll` loads libraries which export functions using the " +"standard ``cdecl`` calling convention, while :py:data:`!windll` libraries " +"call functions using the ``stdcall`` calling convention. :py:data:`~oledll` " +"also uses the ``stdcall`` calling convention, and assumes the functions " +"return a Windows :c:type:`!HRESULT` error code. The error code is used to " "automatically raise an :class:`OSError` exception when the function call " "fails." msgstr "" msgid "" -"Windows errors used to raise :exc:`WindowsError`, which is now an alias of :" -"exc:`OSError`." +"Windows errors used to raise :exc:`WindowsError`, which is now an alias " +"of :exc:`OSError`." msgstr "" msgid "" @@ -112,10 +114,10 @@ msgstr "" msgid "" "Other systems require the filename *including* the extension to load a " -"library, so attribute access can not be used to load libraries. Either the :" -"meth:`~LibraryLoader.LoadLibrary` method of the dll loaders should be used, " -"or you should load the library by creating an instance of :py:class:`CDLL` " -"by calling the constructor." +"library, so attribute access can not be used to load libraries. Either " +"the :meth:`~LibraryLoader.LoadLibrary` method of the dll loaders should be " +"used, or you should load the library by creating an instance " +"of :py:class:`CDLL` by calling the constructor." msgstr "" msgid "For example, on Linux::" @@ -186,8 +188,8 @@ msgstr "" msgid "" "Sometimes, dlls export functions with names which aren't valid Python " -"identifiers, like ``\"??2@YAPAXI@Z\"``. In this case you have to use :func:" -"`getattr` to retrieve the function::" +"identifiers, like ``\"??2@YAPAXI@Z\"``. In this case you have to " +"use :func:`getattr` to retrieve the function::" msgstr "" msgid "" @@ -241,29 +243,13 @@ msgid "" msgstr "" msgid "" -":exc:`ValueError` is raised when you call an ``stdcall`` function with the " -"``cdecl`` calling convention, or vice versa::" -msgstr "" - -msgid "" -">>> cdll.kernel32.GetModuleHandleA(None)\n" -"Traceback (most recent call last):\n" -" File \"\", line 1, in \n" -"ValueError: Procedure probably called with not enough arguments (4 bytes " -"missing)\n" -">>>\n" -"\n" -">>> windll.msvcrt.printf(b\"spam\")\n" -"Traceback (most recent call last):\n" -" File \"\", line 1, in \n" -"ValueError: Procedure probably called with too many arguments (4 bytes in " -"excess)\n" -">>>" -msgstr "" - -msgid "" -"To find out the correct calling convention you have to look into the C " -"header file or the documentation for the function you want to call." +":mod:`!ctypes` cannot determine a function's calling convention or " +"signature. Consult the function's C header file or documentation to choose " +"the correct calling convention and set the :attr:`~_CFuncPtr.argtypes` " +"attribute, as described in :ref:`ctypes-specifying-required-argument-types`. " +"Without :attr:`~_CFuncPtr.argtypes`, the number of arguments is not checked. " +"Calling a function with an incorrect calling convention or with incorrect " +"arguments can corrupt memory or crash Python." msgstr "" msgid "" @@ -289,10 +275,10 @@ msgid "" "``None``, integers, bytes objects and (unicode) strings are the only native " "Python objects that can directly be used as parameters in these function " "calls. ``None`` is passed as a C ``NULL`` pointer, bytes objects and strings " -"are passed as pointer to the memory block that contains their data (:c:expr:" -"`char *` or :c:expr:`wchar_t *`). Python integers are passed as the " -"platform's default C :c:expr:`int` type, their value is masked to fit into " -"the C type." +"are passed as pointer to the memory block that contains their data " +"(:c:expr:`char *` or :c:expr:`wchar_t *`). Python integers are passed as " +"the platform's default C :c:expr:`int` type, their value is masked to fit " +"into the C type." msgstr "" msgid "" @@ -657,10 +643,10 @@ msgid "" msgstr "" msgid "" -"The constructors for numeric types will convert input using :py:meth:" -"`~object.__bool__`, :py:meth:`~object.__index__` (for ``int``), :py:meth:" -"`~object.__float__` or :py:meth:`~object.__complex__`. This means :py:class:" -"`~ctypes.c_bool` accepts any object with a truth value::" +"The constructors for numeric types will convert input " +"using :py:meth:`~object.__bool__`, :py:meth:`~object.__index__` (for " +"``int``), :py:meth:`~object.__float__` or :py:meth:`~object.__complex__`. " +"This means :py:class:`~ctypes.c_bool` accepts any object with a truth value::" msgstr "" msgid "" @@ -686,10 +672,10 @@ msgid "" msgstr "" msgid "" -"Assigning a new value to instances of the pointer types :class:`c_char_p`, :" -"class:`c_wchar_p`, and :class:`c_void_p` changes the *memory location* they " -"point to, *not the contents* of the memory block (of course not, because " -"Python string objects are immutable)::" +"Assigning a new value to instances of the pointer " +"types :class:`c_char_p`, :class:`c_wchar_p`, and :class:`c_void_p` changes " +"the *memory location* they point to, *not the contents* of the memory block " +"(of course not, because Python string objects are immutable)::" msgstr "" msgid "" @@ -711,11 +697,11 @@ msgstr "" msgid "" "You should be careful, however, not to pass them to functions expecting " -"pointers to mutable memory. If you need mutable memory blocks, ctypes has a :" -"func:`create_string_buffer` function which creates these in various ways. " -"The current memory block contents can be accessed (or changed) with the " -"``raw`` property; if you want to access it as NUL terminated string, use the " -"``value`` property::" +"pointers to mutable memory. If you need mutable memory blocks, ctypes has " +"a :func:`create_string_buffer` function which creates these in various " +"ways. The current memory block contents can be accessed (or changed) with " +"the ``raw`` property; if you want to access it as NUL terminated string, use " +"the ``value`` property::" msgstr "" msgid "" @@ -750,9 +736,9 @@ msgid "Calling functions, continued" msgstr "" msgid "" -"Note that printf prints to the real standard output channel, *not* to :data:" -"`sys.stdout`, so these examples will only work at the console prompt, not " -"from within *IDLE* or *PythonWin*::" +"Note that printf prints to the real standard output channel, *not* " +"to :data:`sys.stdout`, so these examples will only work at the console " +"prompt, not from within *IDLE* or *PythonWin*::" msgstr "" msgid "" @@ -882,16 +868,36 @@ msgid "" ">>>" msgstr "" +msgid "" +"Setting :attr:`~_CFuncPtr.argtypes` also causes :mod:`!ctypes` to " +"raise :exc:`TypeError` if too few arguments are passed::" +msgstr "" + +msgid "" +">>> printf(b\"%s %d %f\\n\", b\"X\", 2)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: this function takes at least 4 arguments (3 given)" +msgstr "" + +msgid "" +"Functions using the ``stdcall`` calling convention require exactly as many " +"arguments as there are items in :attr:`~_CFuncPtr.argtypes`. Functions using " +"the ``cdecl`` calling convention accept additional arguments, to support " +"variadic functions. The declaration must match the function's actual " +"signature; ctypes cannot verify this." +msgstr "" + msgid "" "If you have defined your own classes which you pass to function calls, you " "have to implement a :meth:`~_CData.from_param` class method for them to be " -"able to use them in the :attr:`~_CFuncPtr.argtypes` sequence. The :meth:" -"`~_CData.from_param` class method receives the Python object passed to the " -"function call, it should do a typecheck or whatever is needed to make sure " -"this object is acceptable, and then return the object itself, its :attr:`!" -"_as_parameter_` attribute, or whatever you want to pass as the C function " -"argument in this case. Again, the result should be an integer, string, " -"bytes, a :mod:`!ctypes` instance, or an object with an :attr:`!" +"able to use them in the :attr:`~_CFuncPtr.argtypes` sequence. " +"The :meth:`~_CData.from_param` class method receives the Python object " +"passed to the function call, it should do a typecheck or whatever is needed " +"to make sure this object is acceptable, and then return the object itself, " +"its :attr:`!_as_parameter_` attribute, or whatever you want to pass as the C " +"function argument in this case. Again, the result should be an integer, " +"string, bytes, a :mod:`!ctypes` instance, or an object with an :attr:`!" "_as_parameter_` attribute." msgstr "" @@ -905,9 +911,10 @@ msgid "" msgstr "" msgid "" -"The C prototype of :c:func:`time` is ``time_t time(time_t *)``. Because :c:" -"type:`time_t` might be of a different type than the default return type :c:" -"expr:`int`, you should specify the :attr:`!restype` attribute::" +"The C prototype of :c:func:`time` is ``time_t time(time_t *)``. " +"Because :c:type:`time_t` might be of a different type than the default " +"return type :c:expr:`int`, you should specify the :attr:`!restype` " +"attribute::" msgstr "" msgid ">>> libc.time.restype = c_time_t" @@ -1021,10 +1028,10 @@ msgstr "" msgid "" ":mod:`!ctypes` exports the :func:`byref` function which is used to pass " -"parameters by reference. The same effect can be achieved with the :func:" -"`pointer` function, although :func:`pointer` does a lot more work since it " -"constructs a real pointer object, so it is faster to use :func:`byref` if " -"you don't need the pointer object in Python itself::" +"parameters by reference. The same effect can be achieved with " +"the :func:`pointer` function, although :func:`pointer` does a lot more work " +"since it constructs a real pointer object, so it is faster to " +"use :func:`byref` if you don't need the pointer object in Python itself::" msgstr "" msgid "" @@ -1045,11 +1052,11 @@ msgid "Structures and unions" msgstr "" msgid "" -"Structures and unions must derive from the :class:`Structure` and :class:" -"`Union` base classes which are defined in the :mod:`!ctypes` module. Each " -"subclass must define a :attr:`~Structure._fields_` attribute. :attr:`!" -"_fields_` must be a list of *2-tuples*, containing a *field name* and a " -"*field type*." +"Structures and unions must derive from the :class:`Structure` " +"and :class:`Union` base classes which are defined in the :mod:`!ctypes` " +"module. Each subclass must define a :attr:`~Structure._fields_` " +"attribute. :attr:`!_fields_` must be a list of *2-tuples*, containing a " +"*field name* and a *field type*." msgstr "" msgid "" @@ -1117,8 +1124,8 @@ msgstr "" msgid "" "Field :term:`descriptor`\\s can be retrieved from the *class*, they are " -"useful for debugging because they can provide useful information. See :class:" -"`CField`::" +"useful for debugging because they can provide useful information. " +"See :class:`CField`::" msgstr "" msgid "" @@ -1148,17 +1155,17 @@ msgstr "" msgid "" "It is possible to specify the maximum alignment for the fields and/or for " -"the structure itself by setting the class attributes :attr:`~Structure." -"_pack_` and/or :attr:`~Structure._align_`, respectively. See the attribute " -"documentation for details." +"the structure itself by setting the class " +"attributes :attr:`~Structure._pack_` and/or :attr:`~Structure._align_`, " +"respectively. See the attribute documentation for details." msgstr "" msgid "" ":mod:`!ctypes` uses the native byte order for Structures and Unions. To " -"build structures with non-native byte order, you can use one of the :class:" -"`BigEndianStructure`, :class:`LittleEndianStructure`, :class:" -"`BigEndianUnion`, and :class:`LittleEndianUnion` base classes. These " -"classes cannot contain pointer fields." +"build structures with non-native byte order, you can use one of " +"the :class:`BigEndianStructure`, :class:`LittleEndianStructure`, :class:`BigEndianUnion`, " +"and :class:`LittleEndianUnion` base classes. These classes cannot contain " +"pointer fields." msgstr "" msgid "Bit fields in structures and unions" @@ -1258,8 +1265,8 @@ msgid "Pointers" msgstr "" msgid "" -"Pointer instances are created by calling the :func:`pointer` function on a :" -"mod:`!ctypes` type::" +"Pointer instances are created by calling the :func:`pointer` function on " +"a :mod:`!ctypes` type::" msgstr "" msgid "" @@ -1336,6 +1343,15 @@ msgid "" "instead of a single item." msgstr "" +msgid "" +"Because pointer objects support subscription, they implicitly " +"support :term:`iteration `. Unless doing this in a controlled " +"manner, such as by manually calling :func:`next` on a :func:`pointer` " +"iterator, this will typically lead to infinite loops or crashes, because " +"ctypes has no way of knowing when to stop iteration. In other words, a " +"``pointer`` iterator will infinitely yield arbitrary memory." +msgstr "" + msgid "" "Behind the scenes, the :func:`pointer` function does more than simply create " "pointer instances, it has to create pointer *types* first. This is done with " @@ -1406,8 +1422,8 @@ msgid "" "In the above, it's only safe for one object to read and write to the address " "at once if the GIL is disabled. So, ``pointer_a`` can be shared and written " "to across multiple threads, but only if ``pointer_b`` is not also attempting " -"to do the same. If this is an issue, consider using a :class:`threading." -"Lock` to synchronize access to memory:" +"to do the same. If this is an issue, consider using " +"a :class:`threading.Lock` to synchronize access to memory:" msgstr "" msgid "" @@ -1551,8 +1567,8 @@ msgstr "" msgid "" "because the new ``class cell`` is not available in the class statement " -"itself. In :mod:`!ctypes`, we can define the ``cell`` class and set the :" -"attr:`~Structure._fields_` attribute later, after the class statement::" +"itself. In :mod:`!ctypes`, we can define the ``cell`` class and set " +"the :attr:`~Structure._fields_` attribute later, after the class statement::" msgstr "" msgid "" @@ -1985,9 +2001,9 @@ msgid "" "Functions in this library use the standard C calling convention, and are " "assumed to return :c:expr:`int`. The Python :term:`global interpreter lock` " "is released before calling any function exported by these libraries, and " -"reacquired afterwards. For different function behavior, use a subclass: :py:" -"class:`~ctypes.OleDLL`, :py:class:`~ctypes.WinDLL`, or :py:class:`~ctypes." -"PyDLL`." +"reacquired afterwards. For different function behavior, use a " +"subclass: :py:class:`~ctypes.OleDLL`, :py:class:`~ctypes.WinDLL`, " +"or :py:class:`~ctypes.PyDLL`." msgstr "" msgid "" @@ -2013,14 +2029,14 @@ msgid "" "On Windows, the ``.DLL`` suffix may be missing. (For details, see " "`LoadLibraryExW`_ documentation.) Other platform-specific prefixes and " "suffixes (for example, ``lib``, ``.so``, ``.dylib``, or version numbers) " -"must be present in *name*; they are not added automatically. See :ref:" -"`ctypes-finding-shared-libraries` for more information." +"must be present in *name*; they are not added automatically. " +"See :ref:`ctypes-finding-shared-libraries` for more information." msgstr "" msgid "" "On non-Windows systems, *name* can be ``None``. In this case, :c:func:`!" "dlopen` is called with ``NULL``, which opens the main program as a " -"\"library\". (Some systems do the same is *name* is empty; ``None``/``NULL`` " +"\"library\". (Some systems do the same if *name* is empty; ``None``/``NULL`` " "is more portable.)" msgstr "" @@ -2058,7 +2074,11 @@ msgid "" "ctypes` maintains a thread-local copy of the system's :data:`errno` " "variable; if you call foreign functions created with ``use_errno=True`` then " "the :data:`errno` value before the function call is swapped with the ctypes " -"private copy, the same happens immediately after the function call." +"private copy, the same happens immediately after the function call. This " +"mechanism only works for libraries that use the same C runtime library as " +"the interpreter itself. A library linked against a different C runtime (for " +"example, a different CRT on Windows) has its own :data:`errno`, which :mod:`!" +"ctypes` cannot observe." msgstr "" msgid "" @@ -2069,10 +2089,11 @@ msgstr "" msgid "" "The *use_last_error* parameter, when set to true, enables the same mechanism " -"for the Windows error code which is managed by the :func:`GetLastError` and :" -"func:`!SetLastError` Windows API functions; :func:`ctypes.get_last_error` " -"and :func:`ctypes.set_last_error` are used to request and change the ctypes " -"private copy of the windows error code." +"for the Windows error code which is managed by the :func:`GetLastError` " +"and :func:`!SetLastError` Windows API " +"functions; :func:`ctypes.get_last_error` and :func:`ctypes.set_last_error` " +"are used to request and change the ctypes private copy of the windows error " +"code." msgstr "" msgid "" @@ -2086,13 +2107,14 @@ msgstr "" msgid "" "On Windows creating a :class:`CDLL` instance may fail even if the DLL name " -"exists. When a dependent DLL of the loaded DLL is not found, a :exc:" -"`OSError` error is raised with the message *\"[WinError 126] The specified " -"module could not be found\".* This error message does not contain the name " -"of the missing DLL because the Windows API does not return this information " -"making this error hard to diagnose. To resolve this error and determine " -"which DLL is not found, you need to find the list of dependent DLLs and " -"determine which one is not found using Windows debugging and tracing tools." +"exists. When a dependent DLL of the loaded DLL is not found, " +"a :exc:`OSError` error is raised with the message *\"[WinError 126] The " +"specified module could not be found\".* This error message does not contain " +"the name of the missing DLL because the Windows API does not return this " +"information making this error hard to diagnose. To resolve this error and " +"determine which DLL is not found, you need to find the list of dependent " +"DLLs and determine which one is not found using Windows debugging and " +"tracing tools." msgstr "" msgid "" @@ -2140,18 +2162,19 @@ msgstr "" msgid "" "Functions in this library use the ``stdcall`` calling convention, and are " -"assumed to return the windows specific :class:`HRESULT` code. :class:" -"`HRESULT` values contain information specifying whether the function call " -"failed or succeeded, together with additional error code. If the return " -"value signals a failure, an :class:`OSError` is automatically raised." +"assumed to return the windows specific :class:`HRESULT` " +"code. :class:`HRESULT` values contain information specifying whether the " +"function call failed or succeeded, together with additional error code. If " +"the return value signals a failure, an :class:`OSError` is automatically " +"raised." msgstr "" msgid "Availability" msgstr "" msgid "" -":exc:`WindowsError` used to be raised, which is now an alias of :exc:" -"`OSError`." +":exc:`WindowsError` used to be raised, which is now an alias " +"of :exc:`OSError`." msgstr "" msgid "" @@ -2191,8 +2214,8 @@ msgid "" msgstr "" msgid "" -"Class which loads shared libraries. *dlltype* should be one of the :class:" -"`CDLL`, :class:`PyDLL`, :class:`WinDLL`, or :class:`OleDLL` types." +"Class which loads shared libraries. *dlltype* should be one of " +"the :class:`CDLL`, :class:`PyDLL`, :class:`WinDLL`, or :class:`OleDLL` types." msgstr "" msgid "" @@ -2224,9 +2247,12 @@ msgstr "" msgid "" "An instance of :class:`PyDLL` that exposes Python C API functions as " -"attributes. Note that all these functions are assumed to return C :c:expr:" -"`int`, which is of course not always the truth, so you have to assign the " -"correct :attr:`!restype` attribute to use these functions." +"attributes. Note that all these functions are assumed to return " +"C :c:expr:`int`, which is of course not always the truth, so you have to " +"assign the correct :attr:`!restype` attribute to use these functions." +msgstr "" + +msgid "If the Python interpreter is statically linked, this may be ``None``." msgstr "" msgid "" @@ -2236,9 +2262,9 @@ msgid "" msgstr "" msgid "" -"Accessing a function on a loaded library raises an auditing event ``ctypes." -"dlsym`` with arguments ``library`` (the library object) and ``name`` (the " -"symbol's name as a string or integer)." +"Accessing a function on a loaded library raises an auditing event " +"``ctypes.dlsym`` with arguments ``library`` (the library object) and " +"``name`` (the symbol's name as a string or integer)." msgstr "" msgid "" @@ -2452,19 +2478,20 @@ msgstr "" msgid "" "Assign a tuple of ctypes types to specify the argument types that the " -"function accepts. Functions using the ``stdcall`` calling convention can " -"only be called with the same number of arguments as the length of this " -"tuple; functions using the C calling convention accept additional, " -"unspecified arguments as well." +"function accepts. :exc:`TypeError` is raised if the function is called with " +"fewer arguments than the length of this tuple. Functions using the " +"``stdcall`` calling convention also raise :exc:`TypeError` if called with " +"more arguments; functions using the ``cdecl`` calling convention accept " +"additional, unspecified arguments as well." msgstr "" msgid "" -"When a foreign function is called, each actual argument is passed to the :" -"meth:`~_CData.from_param` class method of the items in the :attr:`argtypes` " -"tuple, this method allows adapting the actual argument to an object that the " -"foreign function accepts. For example, a :class:`c_char_p` item in the :" -"attr:`argtypes` tuple will convert a string passed as argument into a bytes " -"object using ctypes conversion rules." +"When a foreign function is called, each actual argument is passed to " +"the :meth:`~_CData.from_param` class method of the items in " +"the :attr:`argtypes` tuple, this method allows adapting the actual argument " +"to an object that the foreign function accepts. For example, " +"a :class:`c_char_p` item in the :attr:`argtypes` tuple will convert a string " +"passed as argument into a bytes object using ctypes conversion rules." msgstr "" msgid "" @@ -2490,22 +2517,49 @@ msgid "" msgstr "" msgid "" -"*arguments* is a tuple containing the parameters originally passed to the " -"function call, this allows specializing the behavior on the arguments used." +"*arguments* is a tuple containing the parameters passed to the function " +"call, including any output parameters that :mod:`!ctypes` created for the " +"call; this allows specializing the behavior on the arguments used." msgstr "" msgid "" -"The object that this function returns will be returned from the foreign " -"function call, but it can also check the result value and raise an exception " -"if the foreign function call failed." +"If the callable returns the *arguments* tuple it received, unchanged, :mod:`!" +"ctypes` continues its normal processing of the result, which includes " +"returning output parameters (see :ref:`ctypes-function-prototypes`). Any " +"other object returned by the callable is returned from the foreign function " +"call instead. The callable can also check the result value and raise an " +"exception if the foreign function call failed." +msgstr "" + +msgid "" +"For example, this callable raises an exception when the foreign function " +"signals failure with a negative return value, and otherwise leaves the " +"result to :mod:`!ctypes`::" +msgstr "" + +msgid "" +"def errcheck(result, func, arguments):\n" +" if result < 0:\n" +" raise RuntimeError(f\"call failed with error {result}\")\n" +" return arguments" +msgstr "" + +msgid "" +"This one instead replaces the result, converting a C ``int`` used as a " +"boolean into a :class:`bool`::" +msgstr "" + +msgid "" +"def errcheck(result, func, arguments):\n" +" return result != 0" msgstr "" msgid "" "On Windows, when a foreign function call raises a system exception (for " "example, due to an access violation), it will be captured and replaced with " -"a suitable Python exception. Further, an auditing event ``ctypes." -"set_exception`` with argument ``code`` will be raised, allowing an audit " -"hook to replace the exception with its own." +"a suitable Python exception. Further, an auditing event " +"``ctypes.set_exception`` with argument ``code`` will be raised, allowing an " +"audit hook to replace the exception with its own." msgstr "" msgid "" @@ -2530,9 +2584,10 @@ msgstr "" msgid "" "The returned function prototype creates functions that use the standard C " "calling convention. The function will release the GIL during the call. If " -"*use_errno* is set to true, the ctypes private copy of the system :data:" -"`errno` variable is exchanged with the real :data:`errno` value before and " -"after the call; *use_last_error* does the same for the Windows error code." +"*use_errno* is set to true, the ctypes private copy of the " +"system :data:`errno` variable is exchanged with the real :data:`errno` value " +"before and after the call; *use_last_error* does the same for the Windows " +"error code." msgstr "" msgid "" @@ -2543,7 +2598,10 @@ msgstr "" msgid "" "The returned function prototype creates functions that use the Python " -"calling convention. The function will *not* release the GIL during the call." +"calling convention. Unlike :func:`CFUNCTYPE` and :func:`WINFUNCTYPE`, " +"ctypes does *not* release the GIL before calling the foreign function, so " +"the function may safely use the Python C API. Note that this does not " +"prevent the GIL from being released *during* the call." msgstr "" msgid "" @@ -2592,8 +2650,8 @@ msgid "" msgstr "" msgid "" -"*paramflags* must be a tuple of the same length as :attr:`~_CFuncPtr." -"argtypes`." +"*paramflags* must be a tuple of the same length " +"as :attr:`~_CFuncPtr.argtypes`." msgstr "" msgid "" @@ -2773,8 +2831,8 @@ msgid "" msgstr "" msgid "" -"Copies a COM pointer from *src* to *dst* and returns the Windows specific :c:" -"type:`!HRESULT` value." +"Copies a COM pointer from *src* to *dst* and returns the Windows " +"specific :c:type:`!HRESULT` value." msgstr "" msgid "" @@ -2890,8 +2948,8 @@ msgstr "" msgid "" "Returns a textual description of the error code *code*. If no error code is " -"specified, the last error code is used by calling the Windows API function :" -"func:`GetLastError`." +"specified, the last error code is used by calling the Windows API " +"function :func:`GetLastError`." msgstr "" msgid "" @@ -2901,8 +2959,8 @@ msgid "" msgstr "" msgid "" -"Returns the current value of the ctypes-private copy of the system :data:" -"`errno` variable in the calling thread." +"Returns the current value of the ctypes-private copy of the " +"system :data:`errno` variable in the calling thread." msgstr "" msgid "" @@ -3000,10 +3058,10 @@ msgid "" msgstr "" msgid "" -"Creates an instance of :exc:`OSError`. If *code* is not specified, :func:" -"`GetLastError` is called to determine the error code. If *descr* is not " -"specified, :func:`FormatError` is called to get a textual description of the " -"error." +"Creates an instance of :exc:`OSError`. If *code* is not " +"specified, :func:`GetLastError` is called to determine the error code. If " +"*descr* is not specified, :func:`FormatError` is called to get a textual " +"description of the error." msgstr "" msgid "" @@ -3036,10 +3094,10 @@ msgstr "" msgid "" "This function is similar to :func:`string_at` with the key difference of not " "making a copy of the specified memory. It is a semantically equivalent (but " -"more efficient) alternative to ``memoryview((c_byte * size)." -"from_address(ptr))``. (While :meth:`~_CData.from_address` only takes " -"integers, *ptr* can also be given as a :class:`ctypes.POINTER` or a :func:" -"`~ctypes.byref` object.)" +"more efficient) alternative to ``memoryview((c_byte * " +"size).from_address(ptr))``. (While :meth:`~_CData.from_address` only takes " +"integers, *ptr* can also be given as a :class:`ctypes.POINTER` or " +"a :func:`~ctypes.byref` object.)" msgstr "" msgid "" @@ -3053,9 +3111,9 @@ msgstr "" msgid "" "This non-public class is the common base class of all ctypes data types. " "Among other things, all ctypes type instances contain a memory block that " -"hold C compatible data; the address of the memory block is returned by the :" -"func:`addressof` helper function. Another instance variable is exposed as :" -"attr:`_objects`; this contains other Python objects that need to be kept " +"hold C compatible data; the address of the memory block is returned by " +"the :func:`addressof` helper function. Another instance variable is exposed " +"as :attr:`_objects`; this contains other Python objects that need to be kept " "alive in case the memory block contains pointers." msgstr "" @@ -3068,8 +3126,8 @@ msgid "" "This method returns a ctypes instance that shares the buffer of the *source* " "object. The *source* object must support the writeable buffer interface. " "The optional *offset* parameter specifies an offset into the source buffer " -"in bytes; the default is zero. If the source buffer is not large enough a :" -"exc:`ValueError` is raised." +"in bytes; the default is zero. If the source buffer is not large enough " +"a :exc:`ValueError` is raised." msgstr "" msgid "" @@ -3090,8 +3148,9 @@ msgid "" msgstr "" msgid "" -"This method, and others that indirectly call this method, raises an :ref:" -"`auditing event ` ``ctypes.cdata`` with argument ``address``." +"This method, and others that indirectly call this method, raises " +"an :ref:`auditing event ` ``ctypes.cdata`` with argument " +"``address``." msgstr "" msgid "" @@ -3127,9 +3186,9 @@ msgstr "" msgid "" "Sometimes ctypes data instances do not own the memory block they contain, " -"instead they share part of the memory block of a base object. The :attr:" -"`_b_base_` read-only member is the root ctypes object that owns the memory " -"block." +"instead they share part of the memory block of a base object. " +"The :attr:`_b_base_` read-only member is the root ctypes object that owns " +"the memory block." msgstr "" msgid "" @@ -3147,8 +3206,8 @@ msgstr "" msgid "" "This non-public class is the base class of all fundamental ctypes data " "types. It is mentioned here because it contains the common attributes of the " -"fundamental ctypes data types. :class:`_SimpleCData` is a subclass of :" -"class:`_CData`, so it inherits their methods and attributes. ctypes data " +"fundamental ctypes data types. :class:`_SimpleCData` is a subclass " +"of :class:`_CData`, so it inherits their methods and attributes. ctypes data " "types that are not and do not contain pointers can now be pickled." msgstr "" @@ -3180,11 +3239,11 @@ msgstr "" msgid "" "Types marked \\* in the summary may be (or always are) aliases of a " "different :class:`_SimpleCData` subclass, and will not necessarily use the " -"listed type code. For example, if the platform's :c:expr:`long`, :c:expr:" -"`long long` and :c:expr:`time_t` C types are the same, then :class:" -"`c_long`, :class:`c_longlong` and :class:`c_time_t` all refer to a single " -"class, :class:`c_long`, whose :attr:`_type_` code is ``'l'``. The ``'L'`` " -"code will be unused." +"listed type code. For example, if the " +"platform's :c:expr:`long`, :c:expr:`long long` and :c:expr:`time_t` C types " +"are the same, then :class:`c_long`, :class:`c_longlong` " +"and :class:`c_time_t` all refer to a single class, :class:`c_long`, " +"whose :attr:`_type_` code is ``'l'``. The ``'L'`` code will be unused." msgstr "" msgid "" @@ -3270,8 +3329,8 @@ msgid "" msgstr "" msgid "" -"Represents the C 8-bit :c:expr:`signed int` datatype. It is an alias for :" -"class:`c_byte`." +"Represents the C 8-bit :c:expr:`signed int` datatype. It is an alias " +"for :class:`c_byte`." msgstr "" msgid "" @@ -3297,8 +3356,8 @@ msgstr "" msgid "" "Represents the C :c:expr:`signed long long` datatype. The constructor " "accepts an optional integer initializer; no overflow checking is done. On " -"platforms where ``sizeof(long long) == sizeof(long)`` it is an alias to :" -"class:`c_long`." +"platforms where ``sizeof(long long) == sizeof(long)`` it is an alias " +"to :class:`c_long`." msgstr "" msgid "" @@ -3312,9 +3371,9 @@ msgid "" msgstr "" msgid "" -"Represents the :c:type:`Py_ssize_t` datatype. This is a signed version of :c:" -"type:`size_t`; that is, the POSIX :c:type:`ssize_t` type. Usually an alias " -"for another integer type." +"Represents the :c:type:`Py_ssize_t` datatype. This is a signed version " +"of :c:type:`size_t`; that is, the POSIX :c:type:`ssize_t` type. Usually an " +"alias for another integer type." msgstr "" msgid "" @@ -3335,8 +3394,8 @@ msgid "" msgstr "" msgid "" -"Represents the C 8-bit :c:expr:`unsigned int` datatype. It is an alias for :" -"class:`c_ubyte`." +"Represents the C 8-bit :c:expr:`unsigned int` datatype. It is an alias " +"for :class:`c_ubyte`." msgstr "" msgid "" @@ -3362,8 +3421,8 @@ msgstr "" msgid "" "Represents the C :c:expr:`unsigned long long` datatype. The constructor " "accepts an optional integer initializer; no overflow checking is done. On " -"platforms where ``sizeof(long long) == sizeof(long)`` it is an alias to :" -"class:`c_long`." +"platforms where ``sizeof(long long) == sizeof(long)`` it is an alias " +"to :class:`c_long`." msgstr "" msgid "" @@ -3407,11 +3466,353 @@ msgstr "" msgid ":class:`!py_object` is now a :term:`generic type`." msgstr "" +msgid "Windows data types" +msgstr "" + +msgid "**Source code:** :source:`Lib/ctypes/wintypes.py`" +msgstr "" + +msgid "" +"The :mod:`!ctypes.wintypes` module provides types for use with Windows APIs. " +"Most are aliases for types defined in :mod:`ctypes`. See Microsoft's " +"`Windows data types `_ documentation for the corresponding C definitions. On " +"non-Windows platforms, the sizes and layouts of these types may differ from " +"their Windows counterparts." +msgstr "" + +msgid "" +"Added :class:`HCONV`, :class:`HCONVLIST`, :class:`HCURSOR`, :class:`HDDEDATA`, :class:`HDROP`, :class:`HFILE`, :class:`HRESULT`, " +"and :class:`HSZ`." +msgstr "" + +msgid "" +">>> from ctypes import POINTER\n" +">>> from ctypes.wintypes import LPRECT, RECT, SHORT\n" +">>> SHORT(-1).value\n" +"-1\n" +">>> rect = RECT(0, 0, 100, 50)\n" +">>> rect.right, rect.bottom\n" +"(100, 50)\n" +">>> LPRECT is POINTER(RECT)\n" +"True" +msgstr "" + +msgid "Simple types" +msgstr "" + +msgid "The following names are aliases for fundamental :mod:`ctypes` types:" +msgstr "" + +msgid "Windows types" +msgstr "" + +msgid ":mod:`ctypes` type" +msgstr "" + +msgid ":class:`~ctypes.c_ubyte`" +msgstr "" + +msgid ":class:`~ctypes.c_char`" +msgstr "" + +msgid ":class:`~ctypes.c_wchar`" +msgstr "" + +msgid ":class:`~ctypes.c_ushort`" +msgstr "" + +msgid ":class:`~ctypes.c_ulong`" +msgstr "" + +msgid ":class:`~ctypes.c_long`" +msgstr "" + +msgid ":class:`~ctypes.c_int`" +msgstr "" + +msgid ":class:`~ctypes.c_uint`" +msgstr "" + +msgid ":class:`~ctypes.c_short`" +msgstr "" + +msgid ":class:`~ctypes.c_double`" +msgstr "" + +msgid ":class:`~ctypes.c_float`" +msgstr "" + +msgid ":class:`~ctypes.c_longlong`" +msgstr "" + +msgid ":class:`~ctypes.c_ulonglong`" +msgstr "" + +msgid ":class:`~ctypes.c_char_p`" +msgstr "" + +msgid ":class:`~ctypes.c_wchar_p`" +msgstr "" + +msgid ":class:`~ctypes.c_void_p`" +msgstr "" + +msgid "" +":class:`LARGE_INTEGER` and :class:`ULARGE_INTEGER` expose an integer :attr:`!" +"value` attribute, with no ``LowPart``, ``HighPart``, or ``QuadPart`` fields." +msgstr "" + +msgid "" +"An unsigned integer type with the same size as :class:`~ctypes.c_void_p`." +msgstr "" + +msgid "A signed integer type with the same size as :class:`~ctypes.c_void_p`." +msgstr "" + +msgid "" +"A 16-bit Boolean type whose :attr:`!value` attribute is a " +"Python :class:`bool`. Assigning to :attr:`!value` stores ``-1`` for a true " +"value and ``0`` for a false value." +msgstr "" + +msgid "Handle types" +msgstr "" + +msgid "" +"An alias for :class:`~ctypes.c_void_p`, used to represent Windows handles." +msgstr "" + +msgid "" +"Aliases for :class:`HANDLE` for use with specific Windows " +"APIs. :class:`HFILE` is an alias for :class:`INT` and is listed among the " +"simple types above." +msgstr "" + +msgid "Structures" +msgstr "" + +msgid "The following types are subclasses of :class:`ctypes.Structure`." +msgstr "" + +msgid "" +"A rectangle with ``left``, ``top``, ``right``, and ``bottom`` fields, all of " +"type :class:`LONG`." +msgstr "" + +msgid "" +"A rectangle with ``Left``, ``Top``, ``Right``, and ``Bottom`` fields, all of " +"type :class:`SHORT`." +msgstr "" + +msgid "A point with ``x`` and ``y`` fields, both of type :class:`LONG`." +msgstr "" + +msgid "Dimensions with ``cx`` and ``cy`` fields, both of type :class:`LONG`." +msgstr "" + +msgid "" +"A file time with ``dwLowDateTime`` and ``dwHighDateTime`` fields, both of " +"type :class:`DWORD`." +msgstr "" + +msgid "A Windows message with the following fields:" +msgstr "" + +msgid "Field" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "``hWnd``" +msgstr "" + +msgid ":class:`HWND`" +msgstr "" + +msgid "``message``" +msgstr "" + +msgid ":class:`UINT`" +msgstr "" + +msgid "``wParam``" +msgstr "" + +msgid ":class:`WPARAM`" +msgstr "" + +msgid "``lParam``" +msgstr "" + +msgid ":class:`LPARAM`" +msgstr "" + +msgid "``time``" +msgstr "" + +msgid ":class:`DWORD`" +msgstr "" + +msgid "``pt``" +msgstr "" + +msgid ":class:`POINT`" +msgstr "" + +msgid "" +"Structures used by Windows file-search functions, with the following " +"fields. :class:`WIN32_FIND_DATAA` uses :class:`CHAR` for its file names, " +"and :class:`WIN32_FIND_DATAW` uses :class:`WCHAR`." +msgstr "" + +msgid "Fields" +msgstr "" + +msgid "``dwFileAttributes``" +msgstr "" + +msgid "``ftCreationTime``, ``ftLastAccessTime``, ``ftLastWriteTime``" +msgstr "" + +msgid ":class:`FILETIME`" +msgstr "" + +msgid "``nFileSizeHigh``, ``nFileSizeLow``" +msgstr "" + +msgid "``dwReserved0``, ``dwReserved1``" +msgstr "" + +msgid "``cFileName``" +msgstr "" + +msgid "An array of :data:`MAX_PATH` characters" +msgstr "" + +msgid "``cAlternateFileName``" +msgstr "" + +msgid "An array of 14 characters" +msgstr "" + +msgid "Pointer types" +msgstr "" + +msgid "" +"The following names are aliases for ``ctypes.POINTER(T)``, where *T* is the " +"type in the second column:" +msgstr "" + +msgid "Referenced type" +msgstr "" + +msgid ":class:`BOOL`" +msgstr "" + +msgid ":class:`BOOLEAN`" +msgstr "" + +msgid ":class:`BYTE`" +msgstr "" + +msgid ":class:`CHAR`" +msgstr "" + +msgid ":class:`COLORREF`" +msgstr "" + +msgid ":class:`FLOAT`" +msgstr "" + +msgid ":class:`HANDLE`" +msgstr "" + +msgid ":class:`HKEY`" +msgstr "" + +msgid ":class:`HKL`" +msgstr "" + +msgid ":class:`INT`" +msgstr "" + +msgid ":class:`LARGE_INTEGER`" +msgstr "" + +msgid ":class:`LCID`" +msgstr "" + +msgid ":class:`LONG`" +msgstr "" + +msgid ":class:`MSG`" +msgstr "" + +msgid ":class:`POINTL`" +msgstr "" + +msgid ":class:`RECT`" +msgstr "" + +msgid ":class:`RECTL`" +msgstr "" + +msgid ":class:`SC_HANDLE`" +msgstr "" + +msgid ":class:`SHORT`" +msgstr "" + +msgid ":class:`SIZE`" +msgstr "" + +msgid ":class:`SIZEL`" +msgstr "" + +msgid ":class:`SMALL_RECT`" +msgstr "" + +msgid ":class:`ULARGE_INTEGER`" +msgstr "" + +msgid ":class:`ULONG`" +msgstr "" + +msgid ":class:`USHORT`" +msgstr "" + +msgid ":class:`WCHAR`" +msgstr "" + +msgid ":class:`WIN32_FIND_DATAA`" +msgstr "" + +msgid ":class:`WIN32_FIND_DATAW`" +msgstr "" + +msgid ":class:`WORD`" +msgstr "" + +msgid "Constants and functions" +msgstr "" + +msgid "" +"The value ``260``, used as the size of the file-name arrays " +"in :class:`WIN32_FIND_DATAA` and :class:`WIN32_FIND_DATAW`." +msgstr "" + +msgid "" +"Return a :class:`COLORREF` value as a Python integer. The *red*, *green*, " +"and *blue* arguments are integers from ``0`` to ``255``, specifying the " +"intensity of each color component::" +msgstr "" + msgid "" -"The :mod:`!ctypes.wintypes` module provides quite some other Windows " -"specific data types, for example :c:type:`!HWND`, :c:type:`!WPARAM`, :c:type:" -"`!VARIANT_BOOL` or :c:type:`!DWORD`. Some useful structures like :c:type:`!" -"MSG` or :c:type:`!RECT` are also defined." +">>> from ctypes.wintypes import RGB\n" +">>> hex(RGB(255, 128, 0))\n" +"'0x80ff'" msgstr "" msgid "Structured data types" @@ -3421,8 +3822,8 @@ msgid "Abstract base class for unions in native byte order." msgstr "" msgid "" -"Unions share common attributes and behavior with structures; see :class:" -"`Structure` documentation for details." +"Unions share common attributes and behavior with structures; " +"see :class:`Structure` documentation for details." msgstr "" msgid "Abstract base class for unions in *big endian* byte order." @@ -3491,10 +3892,10 @@ msgstr "" msgid "" "Additionally, the :attr:`!_fields_` class variable must be defined before " "the structure or union type is first used: an instance or subclass is " -"created, :func:`sizeof` is called on it, and so on. Later assignments to :" -"attr:`!_fields_` will raise an :exc:`AttributeError`. If :attr:`!_fields_` " -"has not been set before such use, the structure or union will have no own " -"fields, as if :attr:`!_fields_` was empty." +"created, :func:`sizeof` is called on it, and so on. Later assignments " +"to :attr:`!_fields_` will raise an :exc:`AttributeError`. If :attr:`!" +"_fields_` has not been set before such use, the structure or union will have " +"no own fields, as if :attr:`!_fields_` was empty." msgstr "" msgid "" @@ -3508,8 +3909,8 @@ msgid "" msgstr "" msgid "" -"This is only implemented for the MSVC-compatible memory layout (see :attr:" -"`_layout_`)." +"This is only implemented for the MSVC-compatible memory layout " +"(see :attr:`_layout_`)." msgstr "" msgid "" @@ -3569,8 +3970,8 @@ msgstr "" msgid "" "``\"gcc-sysv\"``: the layout used by GCC with the System V or “SysV-like” " -"data model, as used on Linux and macOS. With this layout, :attr:`~Structure." -"_pack_` must be unset or zero." +"data model, as used on Linux and macOS. With this " +"layout, :attr:`~Structure._pack_` must be unset or zero." msgstr "" msgid "" @@ -3597,15 +3998,15 @@ msgid "" msgstr "" msgid "" -"An optional sequence that lists the names of unnamed (anonymous) fields. :" -"attr:`_anonymous_` must be already defined when :attr:`_fields_` is " +"An optional sequence that lists the names of unnamed (anonymous) " +"fields. :attr:`_anonymous_` must be already defined when :attr:`_fields_` is " "assigned, otherwise it will have no effect." msgstr "" msgid "" -"The fields listed in this variable must be structure or union type fields. :" -"mod:`!ctypes` will create descriptors in the structure type that allows " -"accessing the nested fields directly, without the need to create the " +"The fields listed in this variable must be structure or union type " +"fields. :mod:`!ctypes` will create descriptors in the structure type that " +"allows accessing the nested fields directly, without the need to create the " "structure or union field." msgstr "" @@ -3642,9 +4043,9 @@ msgstr "" msgid "" "It is possible to define sub-subclasses of structures, they inherit the " -"fields of the base class. If the subclass definition has a separate :attr:" -"`_fields_` variable, the fields specified in this are appended to the fields " -"of the base class." +"fields of the base class. If the subclass definition has a " +"separate :attr:`_fields_` variable, the fields specified in this are " +"appended to the fields of the base class." msgstr "" msgid "" @@ -3732,8 +4133,9 @@ msgid "True if this is a bitfield." msgstr "" msgid "" -"The location of a bitfield within its *storage unit*, that is, within :attr:" -"`~CField.byte_size` bytes of memory starting at :attr:`~CField.byte_offset`." +"The location of a bitfield within its *storage unit*, that is, " +"within :attr:`~CField.byte_size` bytes of memory starting " +"at :attr:`~CField.byte_offset`." msgstr "" msgid "" @@ -3759,12 +4161,12 @@ msgid "Abstract base class for arrays." msgstr "" msgid "" -"The recommended way to create concrete array types is by multiplying any :" -"mod:`!ctypes` data type with a non-negative integer. Alternatively, you can " -"subclass this type and define :attr:`_length_` and :attr:`_type_` class " -"variables. Array elements can be read and written using standard subscript " -"and slice accesses; for slice reads, the resulting object is *not* itself " -"an :class:`Array`." +"The recommended way to create concrete array types is by multiplying " +"any :mod:`!ctypes` data type with a non-negative integer. Alternatively, " +"you can subclass this type and define :attr:`_length_` and :attr:`_type_` " +"class variables. Array elements can be read and written using standard " +"subscript and slice accesses; for slice reads, the resulting object is *not* " +"itself an :class:`Array`." msgstr "" msgid "Arrays are :ref:`generic ` over the type of their elements." @@ -3772,8 +4174,8 @@ msgstr "" msgid "" "A positive integer specifying the number of elements in the array. Out-of-" -"range subscripts result in an :exc:`IndexError`. Will be returned by :func:" -"`len`." +"range subscripts result in an :exc:`IndexError`. Will be returned " +"by :func:`len`." msgstr "" msgid "Specifies the type of each element in the array." @@ -3802,10 +4204,10 @@ msgstr "" msgid "" "If a pointer points to an array, its elements can be read and written using " -"standard subscript and slice accesses. Pointer objects have no size, so :" -"func:`len` will raise :exc:`TypeError`. Negative subscripts will read from " -"the memory *before* the pointer (as in C), and out-of-range subscripts will " -"probably crash with an access violation (if you're lucky)." +"standard subscript and slice accesses. Pointer objects have no size, " +"so :func:`len` will raise :exc:`TypeError`. Negative subscripts will read " +"from the memory *before* the pointer (as in C), and out-of-range subscripts " +"will probably crash with an access violation (if you're lucky)." msgstr "" msgid "Specifies the type pointed to." diff --git a/library/curses.ascii.po b/library/curses.ascii.po index 00584e8..404076c 100644 --- a/library/curses.ascii.po +++ b/library/curses.ascii.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -204,13 +204,13 @@ msgid "Checks for an ASCII uppercase letter." msgstr "" msgid "" -"Checks for an ASCII hexadecimal digit. This is equivalent to ``c in string." -"hexdigits``." +"Checks for an ASCII hexadecimal digit. This is equivalent to ``c in " +"string.hexdigits``." msgstr "" msgid "" -"Checks for an ASCII control character (ordinal values 0 to 31). Unlike :" -"func:`iscntrl`, this does not include the delete character (0x7f)." +"Checks for an ASCII control character (ordinal values 0 to 31). " +"Unlike :func:`iscntrl`, this does not include the delete character (0x7f)." msgstr "" msgid "Checks for a non-ASCII character (ordinal values 0x80 and above)." @@ -218,8 +218,8 @@ msgstr "" msgid "" "These functions accept either integers or single-character strings; when the " -"argument is a string, it is first converted using the built-in function :" -"func:`ord`." +"argument is a string, it is first converted using the built-in " +"function :func:`ord`." msgstr "" msgid "" diff --git a/library/curses.panel.po b/library/curses.panel.po index 66ce72f..d167e6b 100644 --- a/library/curses.panel.po +++ b/library/curses.panel.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/curses.po b/library/curses.po index 52a5fd3..ca9197d 100644 --- a/library/curses.po +++ b/library/curses.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -57,7 +58,9 @@ msgstr "" msgid "" "Whenever the documentation mentions a *character* it can be specified as an " -"integer, a one-character Unicode string or a one-byte byte string." +"integer, a one-character Unicode string or a one-byte byte string. An " +"integer is the code of a single encoded byte, optionally combined with " +"attributes and a color pair, as returned by :meth:`window.inch`." msgstr "" msgid "" @@ -65,6 +68,15 @@ msgid "" "as a Unicode string or a byte string." msgstr "" +msgid "" +"Whether curses may be used from several threads depends on the underlying " +"library and how it was built. In many implementations, including the default " +"build of ncurses, the screen state is shared and not thread-safe; since the " +"blocking and refresh methods (such as :meth:`~window.getch` " +"and :meth:`~window.refresh`) release the :term:`GIL`, unsynchronized use " +"from several threads can then crash the interpreter. Serialize the calls." +msgstr "" + msgid "Module :mod:`curses.ascii`" msgstr "" @@ -166,9 +178,9 @@ msgstr "" msgid "" "Return the attribute value for displaying text in the specified color pair. " "Only the first 256 color pairs are supported. This attribute value can be " -"combined with :const:`A_STANDOUT`, :const:`A_REVERSE`, and the other :const:" -"`!A_\\*` attributes. :func:`pair_number` is the counterpart to this " -"function." +"combined with :const:`A_STANDOUT`, :const:`A_REVERSE`, and the " +"other :const:`!A_\\*` attributes. :func:`pair_number` is the counterpart to " +"this function." msgstr "" msgid "" @@ -182,15 +194,15 @@ msgstr "" msgid "" "Save the current terminal mode as the \"program\" mode, the mode when the " "running program is using curses. (Its counterpart is the \"shell\" mode, " -"for when the program is not in curses.) Subsequent calls to :func:" -"`reset_prog_mode` will restore this mode." +"for when the program is not in curses.) Subsequent calls " +"to :func:`reset_prog_mode` will restore this mode." msgstr "" msgid "" "Save the current terminal mode as the \"shell\" mode, the mode when the " "running program is not using curses. (Its counterpart is the \"program\" " -"mode, when the program is using curses capabilities.) Subsequent calls to :" -"func:`reset_shell_mode` will restore this mode." +"mode, when the program is using curses capabilities.) Subsequent calls " +"to :func:`reset_shell_mode` will restore this mode." msgstr "" msgid "Insert an *ms* millisecond pause in output." @@ -209,8 +221,8 @@ msgid "" "a window. The normal :meth:`~window.refresh` call is simply :meth:`!" "noutrefresh` followed by :func:`!doupdate`; if you have to update multiple " "windows, you can speed performance and perhaps reduce screen flicker by " -"issuing :meth:`!noutrefresh` calls on all windows, followed by a single :" -"func:`!doupdate`." +"issuing :meth:`!noutrefresh` calls on all windows, followed by a " +"single :func:`!doupdate`." msgstr "" msgid "" @@ -256,10 +268,8 @@ msgid "" "coordinates. (*z* is currently unused.) *bstate* is an integer value whose " "bits will be set to indicate the type of event, and will be the bitwise OR " "of one or more of the following constants, where *n* is the button number " -"from 1 to 5: :const:`BUTTONn_PRESSED`, :const:`BUTTONn_RELEASED`, :const:" -"`BUTTONn_CLICKED`, :const:`BUTTONn_DOUBLE_CLICKED`, :const:" -"`BUTTONn_TRIPLE_CLICKED`, :const:`BUTTON_SHIFT`, :const:`BUTTON_CTRL`, :" -"const:`BUTTON_ALT`." +"from 1 to " +"5: :const:`BUTTONn_PRESSED`, :const:`BUTTONn_RELEASED`, :const:`BUTTONn_CLICKED`, :const:`BUTTONn_DOUBLE_CLICKED`, :const:`BUTTONn_TRIPLE_CLICKED`, :const:`BUTTON_SHIFT`, :const:`BUTTON_CTRL`, :const:`BUTTON_ALT`." msgstr "" msgid "" @@ -274,10 +284,10 @@ msgid "" msgstr "" msgid "" -"Read window-related data stored in the file by an earlier :meth:`window." -"putwin` call. The routine then creates and initializes a new window using " -"that data, returning the new window object. The *file* argument must be a " -"file object opened for reading in binary mode." +"Read window-related data stored in the file by an " +"earlier :meth:`window.putwin` call. The routine then creates and initializes " +"a new window using that data, returning the new window object. The *file* " +"argument must be a file object opened for reading in binary mode." msgstr "" msgid "" @@ -315,9 +325,11 @@ msgstr "" msgid "" "Used for half-delay mode, which is similar to cbreak mode in that characters " "typed by the user are immediately available to the program. However, after " -"blocking for *tenths* tenths of seconds, raise an exception if nothing has " -"been typed. The value of *tenths* must be a number between ``1`` and " -"``255``. Use :func:`nocbreak` to leave half-delay mode." +"blocking for *tenths* tenths of seconds, if nothing has been " +"typed, :meth:`~window.getch` returns ``-1``, while :meth:`~window.getkey` " +"and :meth:`~window.get_wch` raise :exc:`curses.error`. The value of *tenths* " +"must be a number between ``1`` and ``255``. Use :func:`nocbreak` to leave " +"half-delay mode." msgstr "" msgid "" @@ -335,10 +347,10 @@ msgid "" "Change the definition of a color-pair. It takes three arguments: the number " "of the color-pair to be changed, the foreground color number, and the " "background color number. The value of *pair_number* must be between ``1`` " -"and ``COLOR_PAIRS - 1`` (the ``0`` color pair can only be changed by :func:" -"`use_default_colors` and :func:`assume_default_colors`). The value of *fg* " -"and *bg* arguments must be between ``0`` and ``COLORS - 1``, or, after " -"calling :func:`!use_default_colors` or :func:`!assume_default_colors`, " +"and ``COLOR_PAIRS - 1`` (the ``0`` color pair can only be changed " +"by :func:`use_default_colors` and :func:`assume_default_colors`). The value " +"of *fg* and *bg* arguments must be between ``0`` and ``COLORS - 1``, or, " +"after calling :func:`!use_default_colors` or :func:`!assume_default_colors`, " "``-1``. If the color-pair was previously initialized, the screen is " "refreshed and all occurrences of that color-pair are changed to the new " "definition." @@ -433,14 +445,14 @@ msgid "" "and is not necessarily associated with a particular part of the screen. " "Pads can be used when a large window is needed, and only a part of the " "window will be on the screen at one time. Automatic refreshes of pads (such " -"as from scrolling or echoing of input) do not occur. The :meth:`~window." -"refresh` and :meth:`~window.noutrefresh` methods of a pad require 6 " -"arguments to specify the part of the pad to be displayed and the location on " -"the screen to be used for the display. The arguments are *pminrow*, " -"*pmincol*, *sminrow*, *smincol*, *smaxrow*, *smaxcol*; the *p* arguments " -"refer to the upper-left corner of the pad region to be displayed and the *s* " -"arguments define a clipping box on the screen within which the pad region is " -"to be displayed." +"as from scrolling or echoing of input) do not occur. " +"The :meth:`~window.refresh` and :meth:`~window.noutrefresh` methods of a pad " +"require 6 arguments to specify the part of the pad to be displayed and the " +"location on the screen to be used for the display. The arguments are " +"*pminrow*, *pmincol*, *sminrow*, *smincol*, *smaxrow*, *smaxcol*; the *p* " +"arguments refer to the upper-left corner of the pad region to be displayed " +"and the *s* arguments define a clipping box on the screen within which the " +"pad region is to be displayed." msgstr "" msgid "" @@ -496,14 +508,14 @@ msgid "" msgstr "" msgid "" -"Return the number of the color-pair set by the attribute value *attr*. :func:" -"`color_pair` is the counterpart to this function." +"Return the number of the color-pair set by the attribute value " +"*attr*. :func:`color_pair` is the counterpart to this function." msgstr "" msgid "" "Equivalent to ``tputs(str, 1, putchar)``; emit the value of a specified " -"terminfo capability for the current terminal. Note that the output of :func:" -"`putp` always goes to standard output." +"terminfo capability, a bytes object, for the current terminal. Note that the " +"output of :func:`putp` always goes to standard output." msgstr "" msgid ":func:`setupterm` (or :func:`initscr`) must be called first." @@ -522,18 +534,18 @@ msgid "" msgstr "" msgid "" -"Restore the terminal to \"program\" mode, as previously saved by :func:" -"`def_prog_mode`." +"Restore the terminal to \"program\" mode, as previously saved " +"by :func:`def_prog_mode`." msgstr "" msgid "" -"Restore the terminal to \"shell\" mode, as previously saved by :func:" -"`def_shell_mode`." +"Restore the terminal to \"shell\" mode, as previously saved " +"by :func:`def_shell_mode`." msgstr "" msgid "" -"Restore the state of the terminal modes to what it was at the last call to :" -"func:`savetty`." +"Restore the state of the terminal modes to what it was at the last call " +"to :func:`savetty`." msgstr "" msgid "" @@ -552,8 +564,8 @@ msgid "" msgstr "" msgid "" -"Save the current state of the terminal modes in a buffer, usable by :func:" -"`resetty`." +"Save the current state of the terminal modes in a buffer, usable " +"by :func:`resetty`." msgstr "" msgid "Retrieves the value set by :func:`set_escdelay`." @@ -593,9 +605,9 @@ msgid "" msgstr "" msgid "" -"Calling :func:`initscr` after :func:`setupterm` leaks the terminal that :" -"func:`setupterm` allocated: the curses library keeps only a single current " -"terminal and does not free the previously allocated one." +"Calling :func:`initscr` after :func:`setupterm` leaks the terminal " +"that :func:`setupterm` allocated: the curses library keeps only a single " +"current terminal and does not free the previously allocated one." msgstr "" msgid "" @@ -606,11 +618,11 @@ msgstr "" msgid "" ":func:`start_color` initializes eight basic colors (black, red, green, " -"yellow, blue, magenta, cyan, and white), and two global variables in the :" -"mod:`!curses` module, :const:`COLORS` and :const:`COLOR_PAIRS`, containing " -"the maximum number of colors and color-pairs the terminal can support. It " -"also restores the colors on the terminal to the values they had when the " -"terminal was just turned on." +"yellow, blue, magenta, cyan, and white), and two global variables in " +"the :mod:`!curses` module, :const:`COLORS` and :const:`COLOR_PAIRS`, " +"containing the maximum number of colors and color-pairs the terminal can " +"support. It also restores the colors on the terminal to the values they had " +"when the terminal was just turned on." msgstr "" msgid "" @@ -620,8 +632,10 @@ msgid "" msgstr "" msgid "" -"Return the value of the environment variable :envvar:`TERM`, as a bytes " -"object, truncated to 14 characters." +"Return the name of the terminal in use, as a bytes object. This is the name " +"passed to :func:`setupterm`, or the value of the :envvar:`TERM` environment " +"variable if none was given. Some curses libraries truncate it to 14 " +"characters." msgstr "" msgid "" @@ -647,8 +661,8 @@ msgstr "" msgid "" "Instantiate the bytes object *str* with the supplied parameters, where *str* " -"should be a parameterized string obtained from the terminfo database. For " -"example, ``tparm(tigetstr(\"cup\"), 5, 3)`` could result in " +"should be a parameterized byte string obtained from the terminfo database. " +"For example, ``tparm(tigetstr(\"cup\"), 5, 3)`` could result in " "``b'\\033[6;4H'``, the exact result depending on terminal type. Up to nine " "integer parameters may be supplied." msgstr "" @@ -669,14 +683,19 @@ msgstr "" msgid "" "Return a bytes object which is a printable representation of the character " -"*ch*. Control characters are represented as a caret followed by the " -"character, for example as ``b'^C'``. Printing characters are left as they " -"are." +"*ch*; any attributes and color pair are ignored. Control characters are " +"represented as a caret followed by the character, for example as ``b'^C'``. " +"Printing characters are left as they are." msgstr "" msgid "Push *ch* so the next :meth:`~window.getch` will return it." msgstr "" +msgid "" +"*ch* may be an integer (a key code or the code of an encoded byte), a byte, " +"or a string of length 1 which encodes to a single byte." +msgstr "" + msgid "Only one *ch* can be pushed before :meth:`!getch` is called." msgstr "" @@ -688,6 +707,11 @@ msgstr "" msgid "Push *ch* so the next :meth:`~window.get_wch` will return it." msgstr "" +msgid "" +"*ch* may be an integer (a character code, not a key code) or a string of " +"length 1." +msgstr "" + msgid "Only one *ch* can be pushed before :meth:`!get_wch` is called." msgstr "" @@ -760,9 +784,9 @@ msgstr "" msgid "" "A bug in ncurses, the backend for this Python module, could cause segfaults " "when resizing windows. This was fixed in ncurses-6.1-20190511. If you are " -"stuck with an earlier ncurses, you can avoid triggering it by not calling :" -"meth:`!addstr` with a *str* that has embedded newlines; instead, call :meth:" -"`!addstr` separately for each line." +"stuck with an earlier ncurses, you can avoid triggering it by not " +"calling :meth:`!addstr` with a *str* that has embedded newlines; instead, " +"call :meth:`!addstr` separately for each line." msgstr "" msgid "" @@ -949,8 +973,8 @@ msgid "" msgstr "" msgid "" -"Add character *ch* with attribute *attr*, and immediately call :meth:" -"`refresh` on the window." +"Add character *ch* with attribute *attr*, and immediately " +"call :meth:`refresh` on the window." msgstr "" msgid "" @@ -964,10 +988,11 @@ msgid "Previously it returned ``1`` or ``0`` instead of ``True`` or ``False``." msgstr "" msgid "" -"Encoding used to encode method arguments (Unicode strings and characters). " -"The encoding attribute is inherited from the parent window when a subwindow " -"is created, for example with :meth:`window.subwin`. By default, current " -"locale encoding is used (see :func:`locale.getencoding`)." +"Encoding used to encode the string arguments of the methods and to decode " +"their results on a build without wide-character support. The encoding " +"attribute is inherited from the parent window when a subwindow is created, " +"for example with :meth:`window.subwin`. By default, current locale encoding " +"is used (see :func:`locale.getencoding`)." msgstr "" msgid "Clear the window." @@ -982,23 +1007,54 @@ msgid "" msgstr "" msgid "" -"Get a character. Note that the integer returned does *not* have to be in " -"ASCII range: function keys, keypad keys and so on are represented by numbers " -"higher than 255. In no-delay mode, return ``-1`` if there is no input, " -"otherwise wait until a key is pressed." +"Read a key press, after moving the cursor to *y*, *x* if specified, and " +"return it as an integer. The window is refreshed first if it is not a pad " +"and was modified since the last refresh. Wait until a key is pressed, or " +"return ``-1`` if the read is non-blocking or times out (see :meth:`nodelay` " +"and :meth:`timeout`)." msgstr "" msgid "" -"Get a wide character. Return a character for most keys, or an integer for " -"function keys, keypad keys, and other special keys. In no-delay mode, raise " -"an exception if there is no input." +"An ordinary key is returned as the code of a single byte of its encoding in " +"the current locale, so a character encoded with several bytes takes several " +"calls. For example, in a UTF-8 locale ``'é'`` is read as ``195``, then " +"``169``. Use :meth:`get_wch` to read it as a single character." msgstr "" msgid "" -"Get a character, returning a string instead of an integer, as :meth:`getch` " -"does. Function keys, keypad keys and other special keys return a multibyte " -"string containing the key name. In no-delay mode, raise an exception if " -"there is no input." +"In keypad mode (see :meth:`keypad`) function keys and other special keys are " +"returned as one of the :ref:`KEY_* constants `, which " +"cannot be mistaken for an ordinary key. Otherwise, or if their escape " +"sequence does not arrive in time (see :meth:`notimeout` " +"and :func:`set_escdelay`), their bytes are returned one at a time." +msgstr "" + +msgid "" +"In echo mode (see :func:`echo`) the key is added to the window as " +"by :meth:`addch`; special keys are not echoed." +msgstr "" + +msgid "" +"Read a key press, after moving the cursor to *y*, *x* if specified, and " +"return it as a one-character :class:`str`. The window is refreshed first if " +"it is not a pad and was modified since the last refresh. Wait until a key is " +"pressed, or raise :exc:`error` if the read is non-blocking or times out " +"(see :meth:`nodelay` and :meth:`timeout`)." +msgstr "" + +msgid "" +"In keypad mode (see :meth:`keypad`) function keys and other special keys are " +"returned as one of the :ref:`KEY_* constants `, an " +"integer. Otherwise, or if their escape sequence does not arrive in time " +"(see :meth:`notimeout` and :func:`set_escdelay`), their characters are " +"returned one at a time." +msgstr "" + +msgid "" +"Read a key press as :meth:`getch` does, but return it as a :class:`str`: an " +"ordinary key as a one-character string, the byte decoded as Latin-1, and a " +"special key as its name, such as ``'KEY_UP'`` (see :func:`keyname`). " +"Raise :exc:`error` instead of returning ``-1`` if there is no input." msgstr "" msgid "Return a tuple ``(y, x)`` of the height and width of the window." @@ -1011,8 +1067,10 @@ msgid "" msgstr "" msgid "" -"Read a bytes object from the user, with primitive line editing capacity. At " -"most *n* characters are read; *n* defaults to and cannot exceed 2047." +"Read a line of input from the user, with primitive line editing capacity, " +"after moving the cursor to *y*, *x* if specified. Return it as a bytes " +"object, in the encoding of the current locale and without the terminating " +"newline. At most *n* bytes are read; *n* defaults to and cannot exceed 2047." msgstr "" msgid "The maximum value for *n* was increased from 1023 to 2047." @@ -1063,7 +1121,8 @@ msgid "" "Insert character *ch* with attributes *attr* before the character under the " "cursor, or at ``(y, x)`` if specified. All characters to the right of the " "cursor are shifted one position right, with the rightmost character on the " -"line being lost. The cursor position does not change." +"line being lost. The cursor position does not change (after moving to *y*, " +"*x*, if specified)." msgstr "" msgid "" @@ -1082,10 +1141,10 @@ msgstr "" msgid "" "Insert a character string (as many characters as will fit on the line) " "before the character under the cursor, up to *n* characters. If *n* is " -"zero or negative, the entire string is inserted. All characters to the right " -"of the cursor are shifted right, with the rightmost characters on the line " -"being lost. The cursor position does not change (after moving to *y*, *x*, " -"if specified)." +"negative, the entire string is inserted. All characters to the right of the " +"cursor are shifted right, with the rightmost characters on the line being " +"lost. The cursor position does not change (after moving to *y*, *x*, if " +"specified)." msgstr "" msgid "" @@ -1097,29 +1156,29 @@ msgid "" msgstr "" msgid "" -"Return a bytes object of characters, extracted from the window starting at " -"the current cursor position, or at *y*, *x* if specified, and stopping at " -"the end of the line. Attributes and color information are stripped from the " -"characters. If *n* is specified, :meth:`instr` returns a string at most *n* " -"characters long (exclusive of the trailing NUL). The maximum value for *n* " -"is 2047." +"Read the text of the window from the current cursor position, or from *y*, " +"*x* if specified, to the end of the line, and return it as a bytes object, " +"in the encoding of the current locale. Attributes and color pairs are " +"stripped. At most *n* bytes are read; *n* defaults to and cannot exceed 2047." msgstr "" msgid "" -"Return ``True`` if the specified line was modified since the last call to :" -"meth:`refresh`; otherwise return ``False``. Raise a :exc:`curses.error` " +"Return ``True`` if the specified line was modified since the last call " +"to :meth:`refresh`; otherwise return ``False``. Raise a :exc:`curses.error` " "exception if *line* is not valid for the given window." msgstr "" msgid "" -"Return ``True`` if the specified window was modified since the last call to :" -"meth:`refresh`; otherwise return ``False``." +"Return ``True`` if the specified window was modified since the last call " +"to :meth:`refresh`; otherwise return ``False``." msgstr "" msgid "" "If *flag* is ``True``, escape sequences generated by some keys (keypad, " "function keys) will be interpreted by :mod:`!curses`. If *flag* is " -"``False``, escape sequences will be left as is in the input stream." +"``False``, escape sequences will be left as is in the input stream. Keypad " +"mode is disabled by default, but :func:`wrapper` enables it for the main " +"window." msgstr "" msgid "" @@ -1180,8 +1239,8 @@ msgid "" msgstr "" msgid "" -"To get fine-grained control over the copied region, the second form of :meth:" -"`overlay` can be used. *sminrow* and *smincol* are the upper-left " +"To get fine-grained control over the copied region, the second form " +"of :meth:`overlay` can be used. *sminrow* and *smincol* are the upper-left " "coordinates of the source window, and the other variables mark a rectangle " "in the destination window." msgstr "" @@ -1194,8 +1253,8 @@ msgid "" msgstr "" msgid "" -"To get fine-grained control over the copied region, the second form of :meth:" -"`overwrite` can be used. *sminrow* and *smincol* are the upper-left " +"To get fine-grained control over the copied region, the second form " +"of :meth:`overwrite` can be used. *sminrow* and *smincol* are the upper-left " "coordinates of the source window, the other variables mark a rectangle in " "the destination window." msgstr "" @@ -1211,8 +1270,8 @@ msgid "" msgstr "" msgid "" -"Touch the entire window, causing it to be completely redrawn on the next :" -"meth:`refresh` call." +"Touch the entire window, causing it to be completely redrawn on the " +"next :meth:`refresh` call." msgstr "" msgid "" @@ -1243,8 +1302,9 @@ msgstr "" msgid "" "Scroll the screen or scrolling region. Scroll upward by *lines* lines if " -"*lines* is positive, or downward if it is negative. Scrolling has no effect " -"unless it has been enabled for the window with :meth:`scrollok`." +"*lines* is positive, or downward if it is negative. " +"Raise :exc:`curses.error` unless scrolling has been enabled for the window " +"with :meth:`scrollok`." msgstr "" msgid "" @@ -1307,9 +1367,9 @@ msgid "" "Set blocking or non-blocking read behavior for the window. If *delay* is " "negative, blocking read is used (which will wait indefinitely for input). " "If *delay* is zero, then non-blocking read is used, and :meth:`getch` will " -"return ``-1`` if no input is waiting. If *delay* is positive, then :meth:" -"`getch` will block for *delay* milliseconds, and return ``-1`` if there is " -"still no input at the end of that time." +"return ``-1`` if no input is waiting. If *delay* is positive, " +"then :meth:`getch` will block for *delay* milliseconds, and return ``-1`` if " +"there is still no input at the end of that time." msgstr "" msgid "" @@ -1325,8 +1385,8 @@ msgid "" msgstr "" msgid "" -"Mark all lines in the window as unchanged since the last call to :meth:" -"`refresh`." +"Mark all lines in the window as unchanged since the last call " +"to :meth:`refresh`." msgstr "" msgid "" @@ -1341,8 +1401,8 @@ msgid "The :mod:`!curses` module defines the following data members:" msgstr "" msgid "" -"Some curses routines that return an integer, such as :meth:`~window." -"getch`, return :const:`ERR` upon failure." +"Some curses routines that return an integer, such " +"as :meth:`~window.getch`, return :const:`ERR` upon failure." msgstr "" msgid "" @@ -1375,14 +1435,14 @@ msgstr "" msgid "" "The width of the screen, that is, the number of columns. It is defined only " -"after the call to :func:`initscr`. Updated by :func:`update_lines_cols`, :" -"func:`resizeterm` and :func:`resize_term`." +"after the call to :func:`initscr`. Updated " +"by :func:`update_lines_cols`, :func:`resizeterm` and :func:`resize_term`." msgstr "" msgid "" "The height of the screen, that is, the number of lines. It is defined only " -"after the call to :func:`initscr`. Updated by :func:`update_lines_cols`, :" -"func:`resizeterm` and :func:`resize_term`." +"after the call to :func:`initscr`. Updated " +"by :func:`update_lines_cols`, :func:`resizeterm` and :func:`resize_term`." msgstr "" msgid "" @@ -1762,13 +1822,14 @@ msgstr "" msgid "" "On VT100s and their software emulations, such as X terminal emulators, there " -"are normally at least four function keys (:const:`KEY_F1 `, :const:" -"`KEY_F2 `, :const:`KEY_F3 `, :const:`KEY_F4 `) " -"available, and the arrow keys mapped to :const:`KEY_UP`, :const:`KEY_DOWN`, :" -"const:`KEY_LEFT` and :const:`KEY_RIGHT` in the obvious way. If your machine " -"has a PC keyboard, it is safe to expect arrow keys and twelve function keys " -"(older PC keyboards may have only ten function keys); also, the following " -"keypad mappings are standard:" +"are normally at least four function keys (:const:`KEY_F1 " +"`, :const:`KEY_F2 `, :const:`KEY_F3 " +"`, :const:`KEY_F4 `) available, and the arrow keys mapped " +"to :const:`KEY_UP`, :const:`KEY_DOWN`, :const:`KEY_LEFT` " +"and :const:`KEY_RIGHT` in the obvious way. If your machine has a PC " +"keyboard, it is safe to expect arrow keys and twelve function keys (older PC " +"keyboards may have only ten function keys); also, the following keypad " +"mappings are standard:" msgstr "" msgid "Keycap" @@ -2049,13 +2110,13 @@ msgid "You can instantiate a :class:`Textbox` object as follows:" msgstr "" msgid "" -"Return a textbox widget object. The *win* argument should be a curses :ref:" -"`window ` object in which the textbox is to be " -"contained. If *insert_mode* is true, the textbox inserts typed characters, " -"shifting existing text to the right, rather than overwriting it. The edit " -"cursor of the textbox is initially located at the upper-left corner of the " -"containing window, with coordinates ``(0, 0)``. The instance's :attr:" -"`stripspaces` flag is initially on." +"Return a textbox widget object. The *win* argument should be a " +"curses :ref:`window ` object in which the textbox is " +"to be contained. If *insert_mode* is true, the textbox inserts typed " +"characters, shifting existing text to the right, rather than overwriting it. " +"The edit cursor of the textbox is initially located at the upper-left corner " +"of the containing window, with coordinates ``(0, 0)``. The " +"instance's :attr:`stripspaces` flag is initially on." msgstr "" msgid ":class:`Textbox` objects have the following methods:" diff --git a/library/custominterp.po b/library/custominterp.po index f5bc306..32cef7a 100644 --- a/library/custominterp.po +++ b/library/custominterp.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/dataclasses.po b/library/dataclasses.po index 8df68e2..97d1197 100644 --- a/library/dataclasses.po +++ b/library/dataclasses.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,14 +30,14 @@ msgstr "" msgid "" "This module provides a decorator and functions for automatically adding " -"generated :term:`special methods ` such as :meth:`~object." -"__init__` and :meth:`~object.__repr__` to user-defined classes. It was " -"originally described in :pep:`557`." +"generated :term:`special methods ` such " +"as :meth:`~object.__init__` and :meth:`~object.__repr__` to user-defined " +"classes. It was originally described in :pep:`557`." msgstr "" msgid "" -"The member variables to use in these generated methods are defined using :" -"pep:`526` type annotations. For example, this code::" +"The member variables to use in these generated methods are defined " +"using :pep:`526` type annotations. For example, this code::" msgstr "" msgid "" @@ -74,8 +74,9 @@ msgid "Module contents" msgstr "" msgid "" -"This function is a :term:`decorator` that is used to add generated :term:" -"`special methods ` to classes, as described below." +"This function is a :term:`decorator` that is used to add " +"generated :term:`special methods ` to classes, as described " +"below." msgstr "" msgid "" @@ -173,28 +174,30 @@ msgstr "" msgid "" "In Python 3.12 and earlier, the comparison was performed by creating tuples " -"of the fields and comparing them (for example, ``(self.a, self.b) == (other." -"a, other.b)``)." +"of the fields and comparing them (for example, ``(self.a, self.b) == " +"(other.a, other.b)``)." msgstr "" msgid "" -"*order*: If true (the default is ``False``), :meth:`~object.__lt__`, :meth:" -"`~object.__le__`, :meth:`~object.__gt__`, and :meth:`~object.__ge__` methods " -"will be generated. These compare the class as if it were a tuple of its " -"fields, in order. Both instances in the comparison must be of the identical " -"type. If *order* is true and *eq* is false, a :exc:`ValueError` is raised." +"*order*: If true (the default is " +"``False``), :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object.__gt__`, " +"and :meth:`~object.__ge__` methods will be generated. These compare the " +"class as if it were a tuple of its fields, in order. Both instances in the " +"comparison must be of the identical type. If *order* is true and *eq* is " +"false, a :exc:`ValueError` is raised." msgstr "" msgid "" -"If the class already defines any of :meth:`!__lt__`, :meth:`!__le__`, :meth:" -"`!__gt__`, or :meth:`!__ge__`, then :exc:`TypeError` is raised." +"If the class already defines any of :meth:`!__lt__`, :meth:`!" +"__le__`, :meth:`!__gt__`, or :meth:`!__ge__`, then :exc:`TypeError` is " +"raised." msgstr "" msgid "" -"*unsafe_hash*: If true, force ``dataclasses`` to create a :meth:`~object." -"__hash__` method, even though it may not be safe to do so. Otherwise, " -"generate a :meth:`~object.__hash__` method according to how *eq* and " -"*frozen* are set. The default value is ``False``." +"*unsafe_hash*: If true, force ``dataclasses`` to create " +"a :meth:`~object.__hash__` method, even though it may not be safe to do so. " +"Otherwise, generate a :meth:`~object.__hash__` method according to how *eq* " +"and *frozen* are set. The default value is ``False``." msgstr "" msgid "" @@ -207,11 +210,11 @@ msgid "" msgstr "" msgid "" -"By default, ``@dataclass`` will not implicitly add a :meth:`~object." -"__hash__` method unless it is safe to do so. Neither will it add or change " -"an existing explicitly defined :meth:`!__hash__` method. Setting the class " -"attribute ``__hash__ = None`` has a specific meaning to Python, as described " -"in the :meth:`!__hash__` documentation." +"By default, ``@dataclass`` will not implicitly add " +"a :meth:`~object.__hash__` method unless it is safe to do so. Neither will " +"it add or change an existing explicitly defined :meth:`!__hash__` method. " +"Setting the class attribute ``__hash__ = None`` has a specific meaning to " +"Python, as described in the :meth:`!__hash__` documentation." msgstr "" msgid "" @@ -226,24 +229,24 @@ msgstr "" msgid "" "Here are the rules governing implicit creation of a :meth:`!__hash__` " "method. Note that you cannot both have an explicit :meth:`!__hash__` method " -"in your dataclass and set ``unsafe_hash=True``; this will result in a :exc:" -"`TypeError`." +"in your dataclass and set ``unsafe_hash=True``; this will result in " +"a :exc:`TypeError`." msgstr "" msgid "" "If *eq* and *frozen* are both true, by default ``@dataclass`` will generate " -"a :meth:`!__hash__` method for you. If *eq* is true and *frozen* is false, :" -"meth:`!__hash__` will be set to ``None``, marking it unhashable (which it " -"is, since it is mutable). If *eq* is false, :meth:`!__hash__` will be left " -"untouched meaning the :meth:`!__hash__` method of the superclass will be " -"used (if the superclass is :class:`object`, this means it will fall back to " -"id-based hashing)." +"a :meth:`!__hash__` method for you. If *eq* is true and *frozen* is " +"false, :meth:`!__hash__` will be set to ``None``, marking it unhashable " +"(which it is, since it is mutable). If *eq* is false, :meth:`!__hash__` " +"will be left untouched meaning the :meth:`!__hash__` method of the " +"superclass will be used (if the superclass is :class:`object`, this means it " +"will fall back to id-based hashing)." msgstr "" msgid "" "*frozen*: If true (the default is ``False``), assigning to fields will " -"generate an exception. This emulates read-only frozen instances. See the :" -"ref:`discussion ` below." +"generate an exception. This emulates read-only frozen instances. See " +"the :ref:`discussion ` below." msgstr "" msgid "" @@ -252,11 +255,11 @@ msgid "" msgstr "" msgid "" -"*match_args*: If true (the default is ``True``), the :attr:`~object." -"__match_args__` tuple will be created from the list of non keyword-only " -"parameters to the generated :meth:`~object.__init__` method (even if :meth:`!" -"__init__` is not generated, see above). If false, or if :attr:`!" -"__match_args__` is already defined in the class, then :attr:`!" +"*match_args*: If true (the default is ``True``), " +"the :attr:`~object.__match_args__` tuple will be created from the list of " +"non keyword-only parameters to the generated :meth:`~object.__init__` method " +"(even if :meth:`!__init__` is not generated, see above). If false, or " +"if :attr:`!__match_args__` is already defined in the class, then :attr:`!" "__match_args__` will not be generated." msgstr "" @@ -275,8 +278,8 @@ msgstr "" msgid "" "*slots*: If true (the default is ``False``), :attr:`~object.__slots__` " "attribute will be generated and new class will be returned instead of the " -"original one. If :attr:`!__slots__` is already defined in the class, then :" -"exc:`TypeError` is raised." +"original one. If :attr:`!__slots__` is already defined in the class, " +"then :exc:`TypeError` is raised." msgstr "" msgid "" @@ -290,9 +293,9 @@ msgid "" "If a field name is already included in the :attr:`!__slots__` of a base " "class, it will not be included in the generated :attr:`!__slots__` to " "prevent :ref:`overriding them `. Therefore, do not " -"use :attr:`!__slots__` to retrieve the field names of a dataclass. Use :func:" -"`fields` instead. To be able to determine inherited slots, base class :attr:" -"`!__slots__` may be any iterable, but *not* an iterator." +"use :attr:`!__slots__` to retrieve the field names of a dataclass. " +"Use :func:`fields` instead. To be able to determine inherited slots, base " +"class :attr:`!__slots__` may be any iterable, but *not* an iterator." msgstr "" msgid "" @@ -346,9 +349,9 @@ msgid "" msgstr "" msgid "" -"As shown above, the :const:`MISSING` value is a sentinel object used to " -"detect if some parameters are provided by the user. This sentinel is used " -"because ``None`` is a valid value for some parameters with a distinct " +"As shown above, the :const:`MISSING` value is a :class:`sentinel` object " +"used to detect if some parameters are provided by the user. This sentinel is " +"used because ``None`` is a valid value for some parameters with a distinct " "meaning. No code should directly use the :const:`MISSING` value." msgstr "" @@ -399,8 +402,8 @@ msgstr "" msgid "" "*compare*: If true (the default), this field is included in the generated " -"equality and comparison methods (:meth:`~object.__eq__`, :meth:`~object." -"__gt__`, et al.)." +"equality and comparison methods " +"(:meth:`~object.__eq__`, :meth:`~object.__gt__`, et al.)." msgstr "" msgid "" @@ -449,8 +452,8 @@ msgid "" msgstr "" msgid "" -"If *metadata* is ``None``, use an empty :class:`frozendict`, instead of a :" -"func:`~types.MappingProxyType` of an empty :class:`dict`." +"If *metadata* is ``None``, use an empty :class:`frozendict`, instead of " +"a :func:`~types.MappingProxyType` of an empty :class:`dict`." msgstr "" msgid "" @@ -467,9 +470,10 @@ msgid ":attr:`!type`: The type of the field." msgstr "" msgid "" -":attr:`!default`, :attr:`!default_factory`, :attr:`!init`, :attr:`!repr`, :" -"attr:`!hash`, :attr:`!compare`, :attr:`!metadata`, and :attr:`!kw_only` have " -"the identical meaning and values as they do in the :func:`field` function." +":attr:`!default`, :attr:`!default_factory`, :attr:`!init`, :attr:`!" +"repr`, :attr:`!hash`, :attr:`!compare`, :attr:`!metadata`, and :attr:`!" +"kw_only` have the identical meaning and values as they do in " +"the :func:`field` function." msgstr "" msgid "" @@ -480,9 +484,9 @@ msgstr "" msgid "" "``InitVar[T]`` type annotations describe variables that are :ref:`init-only " "`. Fields annotated with :class:`!InitVar` " -"are considered pseudo-fields, and thus are neither returned by the :func:" -"`fields` function nor used in any way except adding them as parameters to :" -"meth:`~object.__init__` and an optional :meth:`__post_init__`." +"are considered pseudo-fields, and thus are neither returned by " +"the :func:`fields` function nor used in any way except adding them as " +"parameters to :meth:`~object.__init__` and an optional :meth:`__post_init__`." msgstr "" msgid "" @@ -559,8 +563,8 @@ msgid "" "``name``, ``(name, type)``, or ``(name, type, Field)``. If just ``name`` is " "supplied, :data:`typing.Any` is used for ``type``. The values of *init*, " "*repr*, *eq*, *order*, *unsafe_hash*, *frozen*, *match_args*, *kw_only*, " -"*slots*, and *weakref_slot* have the same meaning as they do in :deco:" -"`dataclass`." +"*slots*, and *weakref_slot* have the same meaning as they do " +"in :deco:`dataclass`." msgstr "" msgid "" @@ -610,8 +614,8 @@ msgstr "" msgid "" "Creates a new object of the same type as *obj*, replacing fields with values " "from *changes*. If *obj* is not a Data Class, raises :exc:`TypeError`. If " -"keys in *changes* are not field names of the given dataclass, raises :exc:" -"`TypeError`." +"keys in *changes* are not field names of the given dataclass, " +"raises :exc:`TypeError`." msgstr "" msgid "" @@ -642,8 +646,8 @@ msgid "" msgstr "" msgid "" -"Dataclass instances are also supported by generic function :func:`copy." -"replace`." +"Dataclass instances are also supported by generic " +"function :func:`copy.replace`." msgstr "" msgid "" @@ -663,17 +667,21 @@ msgid "" " return is_dataclass(obj) and not isinstance(obj, type)" msgstr "" -msgid "A sentinel value signifying a missing default or default_factory." +msgid "" +"A :class:`sentinel` object signifying a missing default or *default_factory*." +msgstr "" + +msgid ":const:`!MISSING` is now a :class:`sentinel` object." msgstr "" msgid "" -"A sentinel value used as a type annotation. Any fields after a pseudo-field " -"with the type of :const:`!KW_ONLY` are marked as keyword-only fields. Note " -"that a pseudo-field of type :const:`!KW_ONLY` is otherwise completely " -"ignored. This includes the name of such a field. By convention, a name of " -"``_`` is used for a :const:`!KW_ONLY` field. Keyword-only fields signify :" -"meth:`~object.__init__` parameters that must be specified as keywords when " -"the class is instantiated." +"A :class:`sentinel` object used as a type annotation. Any fields after a " +"pseudo-field with the type of :const:`!KW_ONLY` are marked as keyword-only " +"fields. Note that a pseudo-field of type :const:`!KW_ONLY` is otherwise " +"completely ignored. This includes the name of such a field. By convention, " +"a name of ``_`` is used for a :const:`!KW_ONLY` field. Keyword-only fields " +"signify :meth:`~object.__init__` parameters that must be specified as " +"keywords when the class is instantiated." msgstr "" msgid "" @@ -697,22 +705,25 @@ msgid "" "type is :const:`!KW_ONLY`." msgstr "" +msgid ":const:`!KW_ONLY` is now a :class:`sentinel` object." +msgstr "" + msgid "" -"Raised when an implicitly defined :meth:`~object.__setattr__` or :meth:" -"`~object.__delattr__` is called on a dataclass which was defined with " -"``frozen=True``. It is a subclass of :exc:`AttributeError`." +"Raised when an implicitly defined :meth:`~object.__setattr__` " +"or :meth:`~object.__delattr__` is called on a dataclass which was defined " +"with ``frozen=True``. It is a subclass of :exc:`AttributeError`." msgstr "" msgid "Post-init processing" msgstr "" msgid "" -"When defined on the class, it will be called by the generated :meth:`~object." -"__init__`, normally as :meth:`!self.__post_init__`. However, if any " -"``InitVar`` fields are defined, they will also be passed to :meth:`!" -"__post_init__` in the order they were defined in the class. If no :meth:`!" -"__init__` method is generated, then :meth:`!__post_init__` will not " -"automatically be called." +"When defined on the class, it will be called by the " +"generated :meth:`~object.__init__`, normally as :meth:`!self.__post_init__`. " +"However, if any ``InitVar`` fields are defined, they will also be passed " +"to :meth:`!__post_init__` in the order they were defined in the class. If " +"no :meth:`!__init__` method is generated, then :meth:`!__post_init__` will " +"not automatically be called." msgstr "" msgid "" @@ -759,8 +770,8 @@ msgid "" msgstr "" msgid "" -"See the section below on init-only variables for ways to pass parameters to :" -"meth:`!__post_init__`. Also see the warning about how :func:`replace` " +"See the section below on init-only variables for ways to pass parameters " +"to :meth:`!__post_init__`. Also see the warning about how :func:`replace` " "handles ``init=False`` fields." msgstr "" @@ -769,11 +780,12 @@ msgstr "" msgid "" "One of the few places where :deco:`dataclass` actually inspects the type of " -"a field is to determine if a field is a class variable as defined in :pep:" -"`526`. It does this by checking if the type of the field is :data:`typing." -"ClassVar`. If a field is a ``ClassVar``, it is excluded from consideration " -"as a field and is ignored by the dataclass mechanisms. Such ``ClassVar`` " -"pseudo-fields are not returned by the module-level :func:`fields` function." +"a field is to determine if a field is a class variable as defined " +"in :pep:`526`. It does this by checking if the type of the field " +"is :data:`typing.ClassVar`. If a field is a ``ClassVar``, it is excluded " +"from consideration as a field and is ignored by the dataclass mechanisms. " +"Such ``ClassVar`` pseudo-fields are not returned by the module-" +"level :func:`fields` function." msgstr "" msgid "Init-only variables" @@ -782,12 +794,13 @@ msgstr "" msgid "" "Another place where :deco:`dataclass` inspects a type annotation is to " "determine if a field is an init-only variable. It does this by seeing if " -"the type of a field is of type :class:`InitVar`. If a field is an :class:" -"`InitVar`, it is considered a pseudo-field called an init-only field. As it " -"is not a true field, it is not returned by the module-level :func:`fields` " -"function. Init-only fields are added as parameters to the generated :meth:" -"`~object.__init__` method, and are passed to the optional :meth:" -"`__post_init__` method. They are not otherwise used by dataclasses." +"the type of a field is of type :class:`InitVar`. If a field is " +"an :class:`InitVar`, it is considered a pseudo-field called an init-only " +"field. As it is not a true field, it is not returned by the module-" +"level :func:`fields` function. Init-only fields are added as parameters to " +"the generated :meth:`~object.__init__` method, and are passed to the " +"optional :meth:`__post_init__` method. They are not otherwise used by " +"dataclasses." msgstr "" msgid "" @@ -820,15 +833,16 @@ msgstr "" msgid "" "It is not possible to create truly immutable Python objects. However, by " "passing ``frozen=True`` to the :deco:`dataclass` decorator you can emulate " -"immutability. In that case, dataclasses will add :meth:`~object." -"__setattr__` and :meth:`~object.__delattr__` methods to the class. These " -"methods will raise a :exc:`FrozenInstanceError` when invoked." +"immutability. In that case, dataclasses will " +"add :meth:`~object.__setattr__` and :meth:`~object.__delattr__` methods to " +"the class. These methods will raise a :exc:`FrozenInstanceError` when " +"invoked." msgstr "" msgid "" -"There is a tiny performance penalty when using ``frozen=True``: :meth:" -"`~object.__init__` cannot use simple assignment to initialize fields, and " -"must use :meth:`!object.__setattr__`." +"There is a tiny performance penalty when using " +"``frozen=True``: :meth:`~object.__init__` cannot use simple assignment to " +"initialize fields, and must use :meth:`!object.__setattr__`." msgstr "" msgid "Inheritance" @@ -994,14 +1008,14 @@ msgstr "" msgid "" "This has the same issue as the original example using class :class:`!C`. " -"That is, two instances of class :class:`!D` that do not specify a value for :" -"attr:`!x` when creating a class instance will share the same copy of :attr:`!" -"x`. Because dataclasses just use normal Python class creation they also " -"share this behavior. There is no general way for Data Classes to detect " -"this condition. Instead, the :deco:`dataclass` decorator will raise a :exc:" -"`ValueError` if it detects an unhashable default parameter. The assumption " -"is that if a value is unhashable, it is mutable. This is a partial " -"solution, but it does protect against many common errors." +"That is, two instances of class :class:`!D` that do not specify a value " +"for :attr:`!x` when creating a class instance will share the same copy " +"of :attr:`!x`. Because dataclasses just use normal Python class creation " +"they also share this behavior. There is no general way for Data Classes to " +"detect this condition. Instead, the :deco:`dataclass` decorator will raise " +"a :exc:`ValueError` if it detects an unhashable default parameter. The " +"assumption is that if a value is unhashable, it is mutable. This is a " +"partial solution, but it does protect against many common errors." msgstr "" msgid "" @@ -1018,9 +1032,10 @@ msgid "" msgstr "" msgid "" -"Instead of looking for and disallowing objects of type :class:`list`, :class:" -"`dict`, or :class:`set`, unhashable objects are now not allowed as default " -"values. Unhashability is used to approximate mutability." +"Instead of looking for and disallowing objects of " +"type :class:`list`, :class:`dict`, or :class:`set`, unhashable objects are " +"now not allowed as default values. Unhashability is used to approximate " +"mutability." msgstr "" msgid "Descriptor-typed fields" @@ -1038,9 +1053,9 @@ msgid "" msgstr "" msgid "" -"Similarly, when getting or setting the field, the descriptor's :meth:" -"`~object.__get__` or :meth:`!__set__` method is called rather than returning " -"or overwriting the descriptor object." +"Similarly, when getting or setting the field, the " +"descriptor's :meth:`~object.__get__` or :meth:`!__set__` method is called " +"rather than returning or overwriting the descriptor object." msgstr "" msgid "" diff --git a/library/datatypes.po b/library/datatypes.po index 3c82cb6..6eca1a9 100644 --- a/library/datatypes.po +++ b/library/datatypes.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,10 +33,10 @@ msgstr "" msgid "" "Python also provides :ref:`some built-in data types `, in " -"particular, :class:`list`, :class:`tuple`, :class:`dict`, :class:" -"`frozendict`, :class:`set`, and :class:`frozenset`. The :class:`str` class " -"is used to hold Unicode strings, and the :class:`bytes` and :class:" -"`bytearray` classes are used to hold binary data." +"particular, :class:`list`, :class:`tuple`, :class:`dict`, :class:`frozendict`, :class:`set`, " +"and :class:`frozenset`. The :class:`str` class is used to hold Unicode " +"strings, and the :class:`bytes` and :class:`bytearray` classes are used to " +"hold binary data." msgstr "" msgid "The following modules are documented in this chapter:" diff --git a/library/datetime.po b/library/datetime.po index fa75f79..91ccb67 100644 --- a/library/datetime.po +++ b/library/datetime.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -101,12 +102,12 @@ msgid "" msgstr "" msgid "" -"For applications requiring aware objects, :class:`.datetime` and :class:`." -"time` objects have an optional time zone information attribute, :attr:`!" -"tzinfo`, that can be set to an instance of a subclass of the abstract :class:" -"`!tzinfo` class. These :class:`tzinfo` objects capture information about the " -"offset from UTC time, the time zone name, and whether daylight saving time " -"is in effect." +"For applications requiring aware objects, :class:`.datetime` " +"and :class:`.time` objects have an optional time zone information " +"attribute, :attr:`!tzinfo`, that can be set to an instance of a subclass of " +"the abstract :class:`!tzinfo` class. These :class:`tzinfo` objects capture " +"information about the offset from UTC time, the time zone name, and whether " +"daylight saving time is in effect." msgstr "" msgid "" @@ -143,26 +144,27 @@ msgstr "" msgid "" "An idealized naive date, assuming the current Gregorian calendar always was, " -"and always will be, in effect. Attributes: :attr:`year`, :attr:`month`, and :" -"attr:`day`." +"and always will be, in effect. Attributes: :attr:`year`, :attr:`month`, " +"and :attr:`day`." msgstr "" msgid "" "An idealized time, independent of any particular day, assuming that every " "day has exactly 24\\*60\\*60 seconds. (There is no notion of \"leap " -"seconds\" here.) Attributes: :attr:`hour`, :attr:`minute`, :attr:`second`, :" -"attr:`microsecond`, and :attr:`.tzinfo`." +"seconds\" here.) " +"Attributes: :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:`microsecond`, " +"and :attr:`.tzinfo`." msgstr "" msgid "" -"A combination of a date and a time. Attributes: :attr:`year`, :attr:" -"`month`, :attr:`day`, :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:" -"`microsecond`, and :attr:`.tzinfo`." +"A combination of a date and a time. " +"Attributes: :attr:`year`, :attr:`month`, :attr:`day`, :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:`microsecond`, " +"and :attr:`.tzinfo`." msgstr "" msgid "" -"A duration expressing the difference between two :class:`.datetime` or :" -"class:`date` instances to microsecond resolution." +"A duration expressing the difference between two :class:`.datetime` " +"or :class:`date` instances to microsecond resolution." msgstr "" msgid "" @@ -217,28 +219,13 @@ msgid "" msgstr "" msgid "" -"A :class:`.datetime` object ``d`` is aware if both of the following hold:" +"A :class:`.datetime` object ``d`` is aware if :meth:`d.utcoffset() " +"` does not return ``None``. Otherwise, ``d`` is naive." msgstr "" -msgid "``d.tzinfo`` is not ``None``" -msgstr "" - -msgid "``d.tzinfo.utcoffset(d)`` does not return ``None``" -msgstr "" - -msgid "Otherwise, ``d`` is naive." -msgstr "" - -msgid "A :class:`.time` object ``t`` is aware if both of the following hold:" -msgstr "" - -msgid "``t.tzinfo`` is not ``None``" -msgstr "" - -msgid "``t.tzinfo.utcoffset(None)`` does not return ``None``." -msgstr "" - -msgid "Otherwise, ``t`` is naive." +msgid "" +"A :class:`.time` object ``t`` is aware if :meth:`t.utcoffset() " +"` does not return ``None``. Otherwise, ``t`` is naive." msgstr "" msgid "" @@ -328,8 +315,8 @@ msgid "" msgstr "" msgid "" -"If the normalized value of days lies outside the indicated range, :exc:" -"`OverflowError` is raised." +"If the normalized value of days lies outside the indicated " +"range, :exc:`OverflowError` is raised." msgstr "" msgid "" @@ -380,8 +367,8 @@ msgstr "" msgid "" "Note that, because of normalization, ``timedelta.max`` is greater than ``-" -"timedelta.min``. ``-timedelta.max`` is not representable as a :class:" -"`timedelta` object." +"timedelta.min``. ``-timedelta.max`` is not representable as " +"a :class:`timedelta` object." msgstr "" msgid "Instance attributes (read-only):" @@ -459,8 +446,8 @@ msgid "``f = t2 / t3``" msgstr "" msgid "" -"Division (3) of overall duration ``t2`` by interval unit ``t3``. Returns a :" -"class:`float` object." +"Division (3) of overall duration ``t2`` by interval unit ``t3``. Returns " +"a :class:`float` object." msgstr "" msgid "``t1 = t2 / f or t1 = t2 / i``" @@ -567,15 +554,15 @@ msgstr "" msgid "" "In addition to the operations listed above, :class:`timedelta` objects " -"support certain additions and subtractions with :class:`date` and :class:`." -"datetime` objects (see below)." +"support certain additions and subtractions with :class:`date` " +"and :class:`.datetime` objects (see below)." msgstr "" msgid "" -"Floor division and true division of a :class:`timedelta` object by another :" -"class:`!timedelta` object are now supported, as are remainder operations and " -"the :func:`divmod` function. True division and multiplication of a :class:`!" -"timedelta` object by a :class:`float` object are now supported." +"Floor division and true division of a :class:`timedelta` object by " +"another :class:`!timedelta` object are now supported, as are remainder " +"operations and the :func:`divmod` function. True division and multiplication " +"of a :class:`!timedelta` object by a :class:`float` object are now supported." msgstr "" msgid ":class:`timedelta` objects support equality and order comparisons." @@ -685,18 +672,18 @@ msgstr "" msgid "" "This may raise :exc:`OverflowError`, if the timestamp is out of the range of " -"values supported by the platform C :c:func:`localtime` function, and :exc:" -"`OSError` on :c:func:`localtime` failure. It's common for this to be " -"restricted to years from 1970 through 2038. Note that on non-POSIX systems " -"that include leap seconds in their notion of a timestamp, leap seconds are " -"ignored by :meth:`fromtimestamp`." +"values supported by the platform C :c:func:`localtime` function, " +"and :exc:`OSError` on :c:func:`localtime` failure. It's common for this to " +"be restricted to years from 1970 through 2038. Note that on non-POSIX " +"systems that include leap seconds in their notion of a timestamp, leap " +"seconds are ignored by :meth:`fromtimestamp`." msgstr "" msgid "" "Raise :exc:`OverflowError` instead of :exc:`ValueError` if the timestamp is " "out of the range of values supported by the platform C :c:func:`localtime` " -"function. Raise :exc:`OSError` instead of :exc:`ValueError` on :c:func:" -"`localtime` failure." +"function. Raise :exc:`OSError` instead of :exc:`ValueError` " +"on :c:func:`localtime` failure." msgstr "" msgid "Accepts any real number as *timestamp*, not only integer or float." @@ -747,8 +734,8 @@ msgstr "" msgid "" "Return a :class:`date` corresponding to the ISO calendar date specified by " -"*year*, *week* and *day*. This is the inverse of the function :meth:`date." -"isocalendar`." +"*year*, *week* and *day*. This is the inverse of the " +"function :meth:`date.isocalendar`." msgstr "" msgid "" @@ -766,12 +753,13 @@ msgid "" msgstr "" msgid "" -"If *format* specifies a day of month (``%d``) without a year, :exc:" -"`ValueError` is raised. This is to avoid a quadrennial leap year bug in " -"code seeking to parse only a month and day as the default year used in " -"absence of one in the format is not a leap year. The workaround is to always " -"include a year in your *format*. If parsing *date_string* values that do " -"not have a year, explicitly add a year that is a leap year before parsing:" +"If *format* specifies a day of month (``%d``) without a " +"year, :exc:`ValueError` is raised. This is to avoid a quadrennial leap year " +"bug in code seeking to parse only a month and day as the default year used " +"in absence of one in the format is not a leap year. The workaround is to " +"always include a year in your *format*. If parsing *date_string* values " +"that do not have a year, explicitly add a year that is a leap year before " +"parsing:" msgstr "" msgid "" @@ -848,17 +836,17 @@ msgstr "" msgid "" "*date2* is moved forward in time if ``timedelta.days > 0``, or backward if " "``timedelta.days < 0``. Afterward ``date2 - date1 == timedelta.days``. " -"``timedelta.seconds`` and ``timedelta.microseconds`` are ignored. :exc:" -"`OverflowError` is raised if ``date2.year`` would be smaller than :const:" -"`MINYEAR` or larger than :const:`MAXYEAR`." +"``timedelta.seconds`` and ``timedelta.microseconds`` are " +"ignored. :exc:`OverflowError` is raised if ``date2.year`` would be smaller " +"than :const:`MINYEAR` or larger than :const:`MAXYEAR`." msgstr "" msgid "``timedelta.seconds`` and ``timedelta.microseconds`` are ignored." msgstr "" msgid "" -"This is exact, and cannot overflow. ``timedelta.seconds`` and ``timedelta." -"microseconds`` are 0, and ``date2 + timedelta == date1`` after." +"This is exact, and cannot overflow. ``timedelta.seconds`` and " +"``timedelta.microseconds`` are 0, and ``date2 + timedelta == date1`` after." msgstr "" msgid ":class:`date` objects are equal if they represent the same date." @@ -877,16 +865,17 @@ msgid "" msgstr "" msgid "" -"Order comparison between a :class:`date` object that is not also a :class:`." -"datetime` instance and a :class:`!datetime` object raises :exc:`TypeError`." +"Order comparison between a :class:`date` object that is not also " +"a :class:`.datetime` instance and a :class:`!datetime` object " +"raises :exc:`TypeError`." msgstr "" msgid "" -"Comparison between :class:`.datetime` object and an instance of the :class:" -"`date` subclass that is not a :class:`!datetime` subclass no longer converts " -"the latter to :class:`!date`, ignoring the time part and the time zone. The " -"default behavior can be changed by overriding the special comparison methods " -"in subclasses." +"Comparison between :class:`.datetime` object and an instance of " +"the :class:`date` subclass that is not a :class:`!datetime` subclass no " +"longer converts the latter to :class:`!date`, ignoring the time part and the " +"time zone. The default behavior can be changed by overriding the special " +"comparison methods in subclasses." msgstr "" msgid "" @@ -914,8 +903,8 @@ msgid "" msgstr "" msgid "" -"Return a :class:`time.struct_time` such as returned by :func:`time." -"localtime`." +"Return a :class:`time.struct_time` such as returned " +"by :func:`time.localtime`." msgstr "" msgid "The hours, minutes and seconds are 0, and the DST flag is -1." @@ -935,20 +924,20 @@ msgstr "" msgid "" "Return the proleptic Gregorian ordinal of the date, where January 1 of year " -"1 has ordinal 1. For any :class:`date` object ``d``, ``date.fromordinal(d." -"toordinal()) == d``." +"1 has ordinal 1. For any :class:`date` object ``d``, " +"``date.fromordinal(d.toordinal()) == d``." msgstr "" msgid "" "Return the day of the week as an integer, where Monday is 0 and Sunday is 6. " -"For example, ``date(2002, 12, 4).weekday() == 2``, a Wednesday. See also :" -"meth:`isoweekday`." +"For example, ``date(2002, 12, 4).weekday() == 2``, a Wednesday. See " +"also :meth:`isoweekday`." msgstr "" msgid "" "Return the day of the week as an integer, where Monday is 1 and Sunday is 7. " -"For example, ``date(2002, 12, 4).isoweekday() == 3``, a Wednesday. See also :" -"meth:`weekday`, :meth:`isocalendar`." +"For example, ``date(2002, 12, 4).isoweekday() == 3``, a Wednesday. See " +"also :meth:`weekday`, :meth:`isocalendar`." msgstr "" msgid "" @@ -1013,16 +1002,16 @@ msgid "time.ctime(time.mktime(d.timetuple()))" msgstr "" msgid "" -"on platforms where the native C :c:func:`ctime` function (which :func:`time." -"ctime` invokes, but which :meth:`date.ctime` does not invoke) conforms to " -"the C standard." +"on platforms where the native C :c:func:`ctime` function " +"(which :func:`time.ctime` invokes, but which :meth:`date.ctime` does not " +"invoke) conforms to the C standard." msgstr "" msgid "" "Return a string representing the date, controlled by an explicit format " "string. Format codes referring to hours, minutes or seconds will see 0 " -"values. See also :ref:`strftime-strptime-behavior` and :meth:`date." -"isoformat`." +"values. See also :ref:`strftime-strptime-behavior` " +"and :meth:`date.isoformat`." msgstr "" msgid "" @@ -1175,10 +1164,11 @@ msgid "Return the current local date and time." msgstr "" msgid "" -"If optional argument *tz* is ``None`` or not specified, this is like :meth:" -"`today`, but, if possible, supplies more precision than can be gotten from " -"going through a :func:`time.time` timestamp (for example, this may be " -"possible on platforms supplying the C :c:func:`gettimeofday` function)." +"If optional argument *tz* is ``None`` or not specified, this is " +"like :meth:`today`, but, if possible, supplies more precision than can be " +"gotten from going through a :func:`time.time` timestamp (for example, this " +"may be possible on platforms supplying the C :c:func:`gettimeofday` " +"function)." msgstr "" msgid "" @@ -1228,20 +1218,20 @@ msgstr "" msgid "" ":meth:`fromtimestamp` may raise :exc:`OverflowError`, if the timestamp is " "out of the range of values supported by the platform C :c:func:`localtime` " -"or :c:func:`gmtime` functions, and :exc:`OSError` on :c:func:`localtime` or :" -"c:func:`gmtime` failure. It's common for this to be restricted to years in " -"1970 through 2038. Note that on non-POSIX systems that include leap seconds " -"in their notion of a timestamp, leap seconds are ignored by :meth:" -"`fromtimestamp`, and then it's possible to have two timestamps differing by " -"a second that yield identical :class:`.datetime` objects. This method is " -"preferred over :meth:`utcfromtimestamp`." +"or :c:func:`gmtime` functions, and :exc:`OSError` on :c:func:`localtime` " +"or :c:func:`gmtime` failure. It's common for this to be restricted to years " +"in 1970 through 2038. Note that on non-POSIX systems that include leap " +"seconds in their notion of a timestamp, leap seconds are ignored " +"by :meth:`fromtimestamp`, and then it's possible to have two timestamps " +"differing by a second that yield identical :class:`.datetime` objects. This " +"method is preferred over :meth:`utcfromtimestamp`." msgstr "" msgid "" "Raise :exc:`OverflowError` instead of :exc:`ValueError` if the timestamp is " "out of the range of values supported by the platform C :c:func:`localtime` " -"or :c:func:`gmtime` functions. Raise :exc:`OSError` instead of :exc:" -"`ValueError` on :c:func:`localtime` or :c:func:`gmtime` failure." +"or :c:func:`gmtime` functions. Raise :exc:`OSError` instead " +"of :exc:`ValueError` on :c:func:`localtime` or :c:func:`gmtime` failure." msgstr "" msgid ":meth:`fromtimestamp` may return instances with :attr:`.fold` set to 1." @@ -1254,9 +1244,9 @@ msgstr "" msgid "" "This may raise :exc:`OverflowError`, if the timestamp is out of the range of " -"values supported by the platform C :c:func:`gmtime` function, and :exc:" -"`OSError` on :c:func:`gmtime` failure. It's common for this to be restricted " -"to years in 1970 through 2038." +"values supported by the platform C :c:func:`gmtime` function, " +"and :exc:`OSError` on :c:func:`gmtime` failure. It's common for this to be " +"restricted to years in 1970 through 2038." msgstr "" msgid "To get an aware :class:`.datetime` object, call :meth:`fromtimestamp`::" @@ -1275,8 +1265,8 @@ msgid "" msgstr "" msgid "" -"except the latter formula always supports the full years range: between :" -"const:`MINYEAR` and :const:`MAXYEAR` inclusive." +"except the latter formula always supports the full years range: " +"between :const:`MINYEAR` and :const:`MAXYEAR` inclusive." msgstr "" msgid "" @@ -1290,8 +1280,8 @@ msgstr "" msgid "" "Raise :exc:`OverflowError` instead of :exc:`ValueError` if the timestamp is " "out of the range of values supported by the platform C :c:func:`gmtime` " -"function. Raise :exc:`OSError` instead of :exc:`ValueError` on :c:func:" -"`gmtime` failure." +"function. Raise :exc:`OSError` instead of :exc:`ValueError` " +"on :c:func:`gmtime` failure." msgstr "" msgid "Use :meth:`datetime.fromtimestamp` with :const:`UTC` instead." @@ -1311,13 +1301,13 @@ msgid "" "given :class:`.time` object's. If the *tzinfo* argument is provided, its " "value is used to set the :attr:`.tzinfo` attribute of the result, otherwise " "the :attr:`~.time.tzinfo` attribute of the *time* argument is used. If the " -"*date* argument is a :class:`!datetime` object, its time components and :" -"attr:`.tzinfo` attributes are ignored." +"*date* argument is a :class:`!datetime` object, its time components " +"and :attr:`.tzinfo` attributes are ignored." msgstr "" msgid "" -"For any :class:`.datetime` object ``d``, ``d == datetime.combine(d.date(), d." -"time(), d.tzinfo)``." +"For any :class:`.datetime` object ``d``, ``d == datetime.combine(d.date(), " +"d.time(), d.tzinfo)``." msgstr "" msgid "Added the *tzinfo* argument." @@ -1354,16 +1344,16 @@ msgid "" ">>> dt.datetime.fromisoformat('2011-11-04 00:05:23.283')\n" "datetime.datetime(2011, 11, 4, 0, 5, 23, 283000)\n" ">>> dt.datetime.fromisoformat('2011-11-04 00:05:23.283+00:00')\n" -"datetime.datetime(2011, 11, 4, 0, 5, 23, 283000, tzinfo=datetime.timezone." -"utc)\n" +"datetime.datetime(2011, 11, 4, 0, 5, 23, 283000, " +"tzinfo=datetime.timezone.utc)\n" ">>> dt.datetime.fromisoformat('2011-11-04T00:05:23+04:00')\n" "datetime.datetime(2011, 11, 4, 0, 5, 23,\n" " tzinfo=datetime.timezone(datetime.timedelta(seconds=14400)))" msgstr "" msgid "" -"Previously, this method only supported formats that could be emitted by :" -"meth:`date.isoformat` or :meth:`datetime.isoformat`." +"Previously, this method only supported formats that could be emitted " +"by :meth:`date.isoformat` or :meth:`datetime.isoformat`." msgstr "" msgid "" @@ -1389,8 +1379,8 @@ msgstr "" msgid "" ":exc:`ValueError` is raised if the date_string and format can't be parsed " "by :func:`time.strptime` or if it returns a value which isn't a time tuple. " -"See also :ref:`strftime-strptime-behavior` and :meth:`datetime." -"fromisoformat`." +"See also :ref:`strftime-strptime-behavior` " +"and :meth:`datetime.fromisoformat`." msgstr "" msgid "" @@ -1475,12 +1465,12 @@ msgstr "" msgid "" "``datetime2`` is a duration of ``timedelta`` removed from ``datetime1``, " -"moving forward in time if ``timedelta.days > 0``, or backward if ``timedelta." -"days < 0``. The result has the same :attr:`~.datetime.tzinfo` attribute as " -"the input datetime, and ``datetime2 - datetime1 == timedelta`` after. :exc:" -"`OverflowError` is raised if ``datetime2.year`` would be smaller than :const:" -"`MINYEAR` or larger than :const:`MAXYEAR`. Note that no time zone " -"adjustments are done even if the input is an aware object." +"moving forward in time if ``timedelta.days > 0``, or backward if " +"``timedelta.days < 0``. The result has the same :attr:`~.datetime.tzinfo` " +"attribute as the input datetime, and ``datetime2 - datetime1 == timedelta`` " +"after. :exc:`OverflowError` is raised if ``datetime2.year`` would be smaller " +"than :const:`MINYEAR` or larger than :const:`MAXYEAR`. Note that no time " +"zone adjustments are done even if the input is an aware object." msgstr "" msgid "" @@ -1497,18 +1487,19 @@ msgid "" msgstr "" msgid "" -"If both are naive, or both are aware and have the same :attr:`~.datetime." -"tzinfo` attribute, the :attr:`~.datetime.tzinfo` attributes are ignored, and " -"the result is a :class:`timedelta` object ``t`` such that ``datetime2 + t == " -"datetime1``. No time zone adjustments are done in this case." +"If both are naive, or both are aware and have the " +"same :attr:`~.datetime.tzinfo` attribute, the :attr:`~.datetime.tzinfo` " +"attributes are ignored, and the result is a :class:`timedelta` object ``t`` " +"such that ``datetime2 + t == datetime1``. No time zone adjustments are done " +"in this case." msgstr "" msgid "" "If both are aware and have different :attr:`~.datetime.tzinfo` attributes, " "``a-b`` acts as if ``a`` and ``b`` were first converted to naive UTC " -"datetimes. The result is ``(a.replace(tzinfo=None) - a.utcoffset()) - (b." -"replace(tzinfo=None) - b.utcoffset())`` except that the implementation never " -"overflows." +"datetimes. The result is ``(a.replace(tzinfo=None) - a.utcoffset()) - " +"(b.replace(tzinfo=None) - b.utcoffset())`` except that the implementation " +"never overflows." msgstr "" msgid "" @@ -1535,8 +1526,8 @@ msgid "" msgstr "" msgid "" -"Order comparison between naive and aware :class:`.datetime` objects raises :" -"exc:`TypeError`." +"Order comparison between naive and aware :class:`.datetime` objects " +"raises :exc:`TypeError`." msgstr "" msgid "" @@ -1570,15 +1561,15 @@ msgid "" msgstr "" msgid "" -"Return a new :class:`datetime` object with the same attributes, but with " -"specified parameters updated. Note that ``tzinfo=None`` can be specified to " -"create a naive datetime from an aware datetime with no conversion of date " -"and time data." +"Return a new :class:`~datetime.datetime` object with the same attributes, " +"but with specified parameters updated. Note that ``tzinfo=None`` can be " +"specified to create a naive datetime from an aware datetime with no " +"conversion of date and time data." msgstr "" msgid "" -":class:`.datetime` objects are also supported by generic function :func:" -"`copy.replace`." +":class:`.datetime` objects are also supported by generic " +"function :func:`copy.replace`." msgstr "" msgid "" @@ -1610,16 +1601,16 @@ msgstr "" msgid "" "If you merely want to attach a :class:`timezone` object *tz* to a datetime " -"*dt* without adjustment of date and time data, use ``dt." -"replace(tzinfo=tz)``. If you merely want to remove the :class:`!timezone` " -"object from an aware datetime *dt* without conversion of date and time data, " -"use ``dt.replace(tzinfo=None)``." +"*dt* without adjustment of date and time data, use " +"``dt.replace(tzinfo=tz)``. If you merely want to remove the :class:`!" +"timezone` object from an aware datetime *dt* without conversion of date and " +"time data, use ``dt.replace(tzinfo=None)``." msgstr "" msgid "" -"Note that the default :meth:`tzinfo.fromutc` method can be overridden in a :" -"class:`tzinfo` subclass to affect the result returned by :meth:`astimezone`. " -"Ignoring error cases, :meth:`astimezone` acts like::" +"Note that the default :meth:`tzinfo.fromutc` method can be overridden in " +"a :class:`tzinfo` subclass to affect the result returned " +"by :meth:`astimezone`. Ignoring error cases, :meth:`astimezone` acts like::" msgstr "" msgid "" @@ -1641,27 +1632,29 @@ msgid "" msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"utcoffset(self)``, and raises an exception if the latter doesn't return " -"``None`` or a :class:`timedelta` object with magnitude less than one day." +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.utcoffset(self)``, and raises an exception if the latter " +"doesn't return ``None`` or a :class:`timedelta` object with magnitude less " +"than one day." msgstr "" msgid "The UTC offset is not restricted to a whole number of minutes." msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"dst(self)``, and raises an exception if the latter doesn't return ``None`` " -"or a :class:`timedelta` object with magnitude less than one day." +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.dst(self)``, and raises an exception if the latter doesn't " +"return ``None`` or a :class:`timedelta` object with magnitude less than one " +"day." msgstr "" msgid "The DST offset is not restricted to a whole number of minutes." msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"tzname(self)``, raises an exception if the latter doesn't return ``None`` or " -"a string object," +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.tzname(self)``, raises an exception if the latter doesn't " +"return ``None`` or a string object," msgstr "" msgid "" @@ -1672,55 +1665,55 @@ msgstr "" msgid "" "where ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` is the " -"day number within the current year starting with 1 for January 1st. The :" -"attr:`~time.struct_time.tm_isdst` flag of the result is set according to " -"the :meth:`dst` method: :attr:`.tzinfo` is ``None`` or :meth:`dst` returns " -"``None``, :attr:`!tm_isdst` is set to ``-1``; else if :meth:`dst` returns a " -"non-zero value, :attr:`!tm_isdst` is set to 1; else :attr:`!tm_isdst` is set " -"to 0." +"day number within the current year starting with 1 for January 1st. " +"The :attr:`~time.struct_time.tm_isdst` flag of the result is set according " +"to the :meth:`dst` method: :attr:`.tzinfo` is ``None`` or :meth:`dst` " +"returns ``None``, :attr:`!tm_isdst` is set to ``-1``; else if :meth:`dst` " +"returns a non-zero value, :attr:`!tm_isdst` is set to 1; else :attr:`!" +"tm_isdst` is set to 0." msgstr "" msgid "" -"If :class:`.datetime` instance ``d`` is naive, this is the same as ``d." -"timetuple()`` except that :attr:`~.time.struct_time.tm_isdst` is forced to 0 " -"regardless of what ``d.dst()`` returns. DST is never in effect for a UTC " -"time." +"If :class:`.datetime` instance ``d`` is naive, this is the same as " +"``d.timetuple()`` except that :attr:`~.time.struct_time.tm_isdst` is forced " +"to 0 regardless of what ``d.dst()`` returns. DST is never in effect for a " +"UTC time." msgstr "" msgid "" -"If ``d`` is aware, ``d`` is normalized to UTC time, by subtracting ``d." -"utcoffset()``, and a :class:`time.struct_time` for the normalized time is " -"returned. :attr:`!tm_isdst` is forced to 0. Note that an :exc:" -"`OverflowError` may be raised if ``d.year`` was ``MINYEAR`` or ``MAXYEAR`` " -"and UTC adjustment spills over a year boundary." +"If ``d`` is aware, ``d`` is normalized to UTC time, by subtracting " +"``d.utcoffset()``, and a :class:`time.struct_time` for the normalized time " +"is returned. :attr:`!tm_isdst` is forced to 0. Note that " +"an :exc:`OverflowError` may be raised if ``d.year`` was ``MINYEAR`` or " +"``MAXYEAR`` and UTC adjustment spills over a year boundary." msgstr "" msgid "" "Because naive ``datetime`` objects are treated by many ``datetime`` methods " "as local times, it is preferred to use aware datetimes to represent times in " "UTC; as a result, using :meth:`datetime.utctimetuple` may give misleading " -"results. If you have a naive ``datetime`` representing UTC, use ``datetime." -"replace(tzinfo=timezone.utc)`` to make it aware, at which point you can use :" -"meth:`.datetime.timetuple`." +"results. If you have a naive ``datetime`` representing UTC, use " +"``datetime.replace(tzinfo=timezone.utc)`` to make it aware, at which point " +"you can use :meth:`.datetime.timetuple`." msgstr "" msgid "" -"Return the proleptic Gregorian ordinal of the date. The same as ``self." -"date().toordinal()``." +"Return the proleptic Gregorian ordinal of the date. The same as " +"``self.date().toordinal()``." msgstr "" msgid "" "Return POSIX timestamp corresponding to the :class:`.datetime` instance. The " -"return value is a :class:`float` similar to that returned by :func:`time." -"time`." +"return value is a :class:`float` similar to that returned " +"by :func:`time.time`." msgstr "" msgid "" "Naive :class:`.datetime` instances are assumed to represent local time and " -"this method relies on platform C functions to perform the conversion. Since :" -"class:`!datetime` supports a wider range of values than the platform C " -"functions on many platforms, this method may raise :exc:`OverflowError` or :" -"exc:`OSError` for times far in the past or far in the future." +"this method relies on platform C functions to perform the conversion. " +"Since :class:`!datetime` supports a wider range of values than the platform " +"C functions on many platforms, this method may raise :exc:`OverflowError` " +"or :exc:`OSError` for times far in the past or far in the future." msgstr "" msgid "" @@ -1731,10 +1724,10 @@ msgid "(dt - datetime(1970, 1, 1, tzinfo=timezone.utc)).total_seconds()" msgstr "" msgid "" -"There is no method to obtain the POSIX timestamp directly from a naive :" -"class:`.datetime` instance representing UTC time. If your application uses " -"this convention and your system time zone is not set to UTC, you can obtain " -"the POSIX timestamp by supplying ``tzinfo=timezone.utc``::" +"There is no method to obtain the POSIX timestamp directly from a " +"naive :class:`.datetime` instance representing UTC time. If your application " +"uses this convention and your system time zone is not set to UTC, you can " +"obtain the POSIX timestamp by supplying ``tzinfo=timezone.utc``::" msgstr "" msgid "timestamp = dt.replace(tzinfo=timezone.utc).timestamp()" @@ -1763,8 +1756,8 @@ msgstr "" msgid "" "Return the day of the week as an integer, where Monday is 1 and Sunday is 7. " -"The same as ``self.date().isoweekday()``. See also :meth:`weekday`, :meth:" -"`isocalendar`." +"The same as ``self.date().isoweekday()``. See " +"also :meth:`weekday`, :meth:`isocalendar`." msgstr "" msgid "" @@ -1871,8 +1864,8 @@ msgid "Added the *timespec* parameter." msgstr "" msgid "" -"For a :class:`.datetime` instance ``d``, ``str(d)`` is equivalent to ``d." -"isoformat(' ')``." +"For a :class:`.datetime` instance ``d``, ``str(d)`` is equivalent to " +"``d.isoformat(' ')``." msgstr "" msgid "Return a string representing the date and time::" @@ -1890,22 +1883,22 @@ msgid "" msgstr "" msgid "" -"on platforms where the native C :c:func:`ctime` function (which :func:`time." -"ctime` invokes, but which :meth:`datetime.ctime` does not invoke) conforms " -"to the C standard." +"on platforms where the native C :c:func:`ctime` function " +"(which :func:`time.ctime` invokes, but which :meth:`datetime.ctime` does not " +"invoke) conforms to the C standard." msgstr "" msgid "" "Return a string representing the date and time, controlled by an explicit " -"format string. See also :ref:`strftime-strptime-behavior` and :meth:" -"`datetime.isoformat`." +"format string. See also :ref:`strftime-strptime-behavior` " +"and :meth:`datetime.isoformat`." msgstr "" msgid "" "Same as :meth:`.datetime.strftime`. This makes it possible to specify a " "format string for a :class:`.datetime` object in :ref:`formatted string " -"literals ` and when using :meth:`str.format`. See also :ref:" -"`strftime-strptime-behavior` and :meth:`datetime.isoformat`." +"literals ` and when using :meth:`str.format`. See " +"also :ref:`strftime-strptime-behavior` and :meth:`datetime.isoformat`." msgstr "" msgid "Examples of usage: :class:`!datetime`" @@ -1927,8 +1920,8 @@ msgid "" ">>> dt.datetime.now()\n" "datetime.datetime(2007, 12, 6, 16, 29, 43, 79043) # GMT +1\n" ">>> dt.datetime.now(dt.timezone.utc)\n" -"datetime.datetime(2007, 12, 6, 15, 29, 43, 79060, tzinfo=datetime.timezone." -"utc)\n" +"datetime.datetime(2007, 12, 6, 15, 29, 43, 79060, " +"tzinfo=datetime.timezone.utc)\n" "\n" ">>> # Using datetime.strptime()\n" ">>> my_datetime = dt.datetime.strptime(\"21/11/06 16:30\", \"%d/%m/%y %H:" @@ -1963,8 +1956,8 @@ msgid "" ">>> # Formatting a datetime\n" ">>> my_datetime.strftime(\"%A, %d. %B %Y %I:%M%p\")\n" "'Tuesday, 21. November 2006 04:30PM'\n" -">>> 'The {1} is {0:%d}, the {2} is {0:%B}, the {3} is {0:%I:%M%p}.'." -"format(my_datetime, \"day\", \"month\", \"time\")\n" +">>> 'The {1} is {0:%d}, the {2} is {0:%B}, the {3} is {0:%I:" +"%M%p}.'.format(my_datetime, \"day\", \"month\", \"time\")\n" "'The day is 21, the month is November, the time is 04:30PM.'" msgstr "" @@ -2055,8 +2048,8 @@ msgid "" msgstr "" msgid "" -"All arguments are optional. *tzinfo* may be ``None``, or an instance of a :" -"class:`tzinfo` subclass. The remaining arguments must be integers in the " +"All arguments are optional. *tzinfo* may be ``None``, or an instance of " +"a :class:`tzinfo` subclass. The remaining arguments must be integers in the " "following ranges:" msgstr "" @@ -2073,8 +2066,8 @@ msgstr "" msgid "" "The smallest possible difference between non-equal :class:`.time` objects, " -"``timedelta(microseconds=1)``, although note that arithmetic on :class:`." -"time` objects is not supported." +"``timedelta(microseconds=1)``, although note that arithmetic " +"on :class:`.time` objects is not supported." msgstr "" msgid "" @@ -2150,8 +2143,8 @@ msgid "" ">>> dt.time.fromisoformat('04:23:01,000384')\n" "datetime.time(4, 23, 1, 384)\n" ">>> dt.time.fromisoformat('04:23:01+04:00')\n" -"datetime.time(4, 23, 1, tzinfo=datetime.timezone(datetime." -"timedelta(seconds=14400)))\n" +"datetime.time(4, 23, 1, " +"tzinfo=datetime.timezone(datetime.timedelta(seconds=14400)))\n" ">>> dt.time.fromisoformat('04:23:01Z')\n" "datetime.time(4, 23, 1, tzinfo=datetime.timezone.utc)\n" ">>> dt.time.fromisoformat('04:23:01+00:00')\n" @@ -2159,8 +2152,8 @@ msgid "" msgstr "" msgid "" -"Previously, this method only supported formats that could be emitted by :" -"meth:`time.isoformat`." +"Previously, this method only supported formats that could be emitted " +"by :meth:`time.isoformat`." msgstr "" msgid "" @@ -2179,8 +2172,8 @@ msgstr "" msgid "" ":exc:`ValueError` is raised if the *date_string* and *format* cannot be " "parsed by :func:`time.strptime` or if it returns a value which is not a time " -"tuple. See also :ref:`strftime-strptime-behavior` and :meth:`time." -"fromisoformat`." +"tuple. See also :ref:`strftime-strptime-behavior` " +"and :meth:`time.fromisoformat`." msgstr "" msgid "" @@ -2191,8 +2184,8 @@ msgid "" msgstr "" msgid "" -":class:`.time` objects are also supported by generic function :func:`copy." -"replace`." +":class:`.time` objects are also supported by generic " +"function :func:`copy.replace`." msgstr "" msgid "Return a string representing the time in ISO 8601 format, one of:" @@ -2210,8 +2203,8 @@ msgid "" msgstr "" msgid "" -"``HH:MM:SS+HH:MM[:SS[.ffffff]]``, if :attr:`microsecond` is 0 and :meth:" -"`utcoffset` does not return ``None``" +"``HH:MM:SS+HH:MM[:SS[.ffffff]]``, if :attr:`microsecond` is 0 " +"and :meth:`utcoffset` does not return ``None``" msgstr "" msgid ":exc:`ValueError` will be raised on an invalid *timespec* argument." @@ -2219,8 +2212,8 @@ msgstr "" msgid "" ">>> import datetime as dt\n" -">>> dt.time(hour=12, minute=34, second=56, microsecond=123456)." -"isoformat(timespec='minutes')\n" +">>> dt.time(hour=12, minute=34, second=56, " +"microsecond=123456).isoformat(timespec='minutes')\n" "'12:34'\n" ">>> my_time = dt.time(hour=12, minute=34, second=56, microsecond=0)\n" ">>> my_time.isoformat(timespec='microseconds')\n" @@ -2234,8 +2227,8 @@ msgstr "" msgid "" "Return a string representing the time, controlled by an explicit format " -"string. See also :ref:`strftime-strptime-behavior` and :meth:`time." -"isoformat`." +"string. See also :ref:`strftime-strptime-behavior` " +"and :meth:`time.isoformat`." msgstr "" msgid "" @@ -2246,21 +2239,23 @@ msgid "" msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"utcoffset(None)``, and raises an exception if the latter doesn't return " -"``None`` or a :class:`timedelta` object with magnitude less than one day." +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.utcoffset(None)``, and raises an exception if the latter " +"doesn't return ``None`` or a :class:`timedelta` object with magnitude less " +"than one day." msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"dst(None)``, and raises an exception if the latter doesn't return ``None``, " -"or a :class:`timedelta` object with magnitude less than one day." +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.dst(None)``, and raises an exception if the latter doesn't " +"return ``None``, or a :class:`timedelta` object with magnitude less than one " +"day." msgstr "" msgid "" -"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." -"tzname(None)``, or raises an exception if the latter doesn't return ``None`` " -"or a string object." +"If :attr:`.tzinfo` is ``None``, returns ``None``, else returns " +"``self.tzinfo.tzname(None)``, or raises an exception if the latter doesn't " +"return ``None`` or a string object." msgstr "" msgid "Examples of usage: :class:`!time`" @@ -2316,24 +2311,24 @@ msgstr "" msgid "" "You need to derive a concrete subclass, and (at least) supply " -"implementations of the standard :class:`tzinfo` methods needed by the :class:" -"`.datetime` methods you use. The :mod:`!datetime` module provides :class:" -"`timezone`, a simple concrete subclass of :class:`!tzinfo` which can " -"represent time zones with fixed offset from UTC such as UTC itself or North " -"American EST and EDT." +"implementations of the standard :class:`tzinfo` methods needed by " +"the :class:`.datetime` methods you use. The :mod:`!datetime` module " +"provides :class:`timezone`, a simple concrete subclass of :class:`!tzinfo` " +"which can represent time zones with fixed offset from UTC such as UTC itself " +"or North American EST and EDT." msgstr "" msgid "" -"Special requirement for pickling: A :class:`tzinfo` subclass must have an :" -"meth:`~object.__init__` method that can be called with no arguments, " +"Special requirement for pickling: A :class:`tzinfo` subclass must have " +"an :meth:`~object.__init__` method that can be called with no arguments, " "otherwise it can be pickled but possibly not unpickled again. This is a " "technical requirement that may be relaxed in the future." msgstr "" msgid "" "A concrete subclass of :class:`tzinfo` may need to implement the following " -"methods. Exactly which methods are needed depends on the uses made of aware :" -"mod:`!datetime` objects. If in doubt, simply implement all of them." +"methods. Exactly which methods are needed depends on the uses made of " +"aware :mod:`!datetime` objects. If in doubt, simply implement all of them." msgstr "" msgid "" @@ -2342,13 +2337,14 @@ msgid "" msgstr "" msgid "" -"This represents the *total* offset from UTC; for example, if a :class:" -"`tzinfo` object represents both time zone and DST adjustments, :meth:" -"`utcoffset` should return their sum. If the UTC offset isn't known, return " -"``None``. Else the value returned must be a :class:`timedelta` object " -"strictly between ``-timedelta(hours=24)`` and ``timedelta(hours=24)`` (the " -"magnitude of the offset must be less than one day). Most implementations of :" -"meth:`utcoffset` will probably look like one of these two::" +"This represents the *total* offset from UTC; for example, if " +"a :class:`tzinfo` object represents both time zone and DST " +"adjustments, :meth:`utcoffset` should return their sum. If the UTC offset " +"isn't known, return ``None``. Else the value returned must be " +"a :class:`timedelta` object strictly between ``-timedelta(hours=24)`` and " +"``timedelta(hours=24)`` (the magnitude of the offset must be less than one " +"day). Most implementations of :meth:`utcoffset` will probably look like one " +"of these two::" msgstr "" msgid "" @@ -2362,8 +2358,8 @@ msgid "" msgstr "" msgid "" -"The default implementation of :meth:`utcoffset` raises :exc:" -"`NotImplementedError`." +"The default implementation of :meth:`utcoffset` " +"raises :exc:`NotImplementedError`." msgstr "" msgid "" @@ -2375,12 +2371,13 @@ msgid "" "Return ``timedelta(0)`` if DST is not in effect. If DST is in effect, return " "the offset as a :class:`timedelta` object (see :meth:`utcoffset` for " "details). Note that DST offset, if applicable, has already been added to the " -"UTC offset returned by :meth:`utcoffset`, so there's no need to consult :" -"meth:`dst` unless you're interested in obtaining DST info separately. For " -"example, :meth:`datetime.timetuple` calls its :attr:`~.datetime.tzinfo` " -"attribute's :meth:`dst` method to determine how the :attr:`~time.struct_time." -"tm_isdst` flag should be set, and :meth:`tzinfo.fromutc` calls :meth:`dst` " -"to account for DST changes when crossing time zones." +"UTC offset returned by :meth:`utcoffset`, so there's no need to " +"consult :meth:`dst` unless you're interested in obtaining DST info " +"separately. For example, :meth:`datetime.timetuple` calls " +"its :attr:`~.datetime.tzinfo` attribute's :meth:`dst` method to determine " +"how the :attr:`~time.struct_time.tm_isdst` flag should be set, " +"and :meth:`tzinfo.fromutc` calls :meth:`dst` to account for DST changes when " +"crossing time zones." msgstr "" msgid "" @@ -2392,15 +2389,15 @@ msgid "``tz.utcoffset(dt) - tz.dst(dt)``" msgstr "" msgid "" -"must return the same result for every :class:`.datetime` *dt* with ``dt." -"tzinfo == tz``. For sane :class:`!tzinfo` subclasses, this expression yields " -"the time zone's \"standard offset\", which should not depend on the date or " -"the time, but only on geographic location. The implementation of :meth:" -"`datetime.astimezone` relies on this, but cannot detect violations; it's the " -"programmer's responsibility to ensure it. If a :class:`!tzinfo` subclass " -"cannot guarantee this, it may be able to override the default implementation " -"of :meth:`tzinfo.fromutc` to work correctly with :meth:`~.datetime." -"astimezone` regardless." +"must return the same result for every :class:`.datetime` *dt* with " +"``dt.tzinfo == tz``. For sane :class:`!tzinfo` subclasses, this expression " +"yields the time zone's \"standard offset\", which should not depend on the " +"date or the time, but only on geographic location. The implementation " +"of :meth:`datetime.astimezone` relies on this, but cannot detect violations; " +"it's the programmer's responsibility to ensure it. If a :class:`!tzinfo` " +"subclass cannot guarantee this, it may be able to override the default " +"implementation of :meth:`tzinfo.fromutc` to work correctly " +"with :meth:`~.datetime.astimezone` regardless." msgstr "" msgid "" @@ -2444,15 +2441,15 @@ msgid "" "particular. For example, ``\"GMT\"``, ``\"UTC\"``, ``\"-500\"``, " "``\"-5:00\"``, ``\"EDT\"``, ``\"US/Eastern\"``, ``\"America/New York\"`` are " "all valid replies. Return ``None`` if a string name isn't known. Note that " -"this is a method rather than a fixed string primarily because some :class:" -"`tzinfo` subclasses will wish to return different names depending on the " -"specific value of *dt* passed, especially if the :class:`!tzinfo` class is " -"accounting for daylight time." +"this is a method rather than a fixed string primarily because " +"some :class:`tzinfo` subclasses will wish to return different names " +"depending on the specific value of *dt* passed, especially if the :class:`!" +"tzinfo` class is accounting for daylight time." msgstr "" msgid "" -"The default implementation of :meth:`tzname` raises :exc:" -"`NotImplementedError`." +"The default implementation of :meth:`tzname` " +"raises :exc:`NotImplementedError`." msgstr "" msgid "" @@ -2474,11 +2471,11 @@ msgstr "" msgid "" "When a :class:`.datetime` object is passed in response to a :class:`!" -"datetime` method, ``dt.tzinfo`` is the same object as *self*. :class:" -"`tzinfo` methods can rely on this, unless user code calls :class:`!tzinfo` " -"methods directly. The intent is that the :class:`!tzinfo` methods interpret " -"*dt* as being in local time, and not need worry about objects in other time " -"zones." +"datetime` method, ``dt.tzinfo`` is the same object as " +"*self*. :class:`tzinfo` methods can rely on this, unless user code " +"calls :class:`!tzinfo` methods directly. The intent is that the :class:`!" +"tzinfo` methods interpret *dt* as being in local time, and not need worry " +"about objects in other time zones." msgstr "" msgid "" @@ -2489,23 +2486,23 @@ msgstr "" msgid "" "This is called from the default :meth:`datetime.astimezone` implementation. " "When called from that, ``dt.tzinfo`` is *self*, and *dt*'s date and time " -"data are to be viewed as expressing a UTC time. The purpose of :meth:" -"`fromutc` is to adjust the date and time data, returning an equivalent " -"datetime in *self*'s local time." +"data are to be viewed as expressing a UTC time. The purpose " +"of :meth:`fromutc` is to adjust the date and time data, returning an " +"equivalent datetime in *self*'s local time." msgstr "" msgid "" -"Most :class:`tzinfo` subclasses should be able to inherit the default :meth:" -"`fromutc` implementation without problems. It's strong enough to handle " -"fixed-offset time zones, and time zones accounting for both standard and " -"daylight time, and the latter even if the DST transition times differ in " -"different years. An example of a time zone the default :meth:`fromutc` " -"implementation may not handle correctly in all cases is one where the " -"standard offset (from UTC) depends on the specific date and time passed, " -"which can happen for political reasons. The default implementations of :meth:" -"`~.datetime.astimezone` and :meth:`fromutc` may not produce the result you " -"want if the result is one of the hours straddling the moment the standard " -"offset changes." +"Most :class:`tzinfo` subclasses should be able to inherit the " +"default :meth:`fromutc` implementation without problems. It's strong enough " +"to handle fixed-offset time zones, and time zones accounting for both " +"standard and daylight time, and the latter even if the DST transition times " +"differ in different years. An example of a time zone the " +"default :meth:`fromutc` implementation may not handle correctly in all cases " +"is one where the standard offset (from UTC) depends on the specific date and " +"time passed, which can happen for political reasons. The default " +"implementations of :meth:`~.datetime.astimezone` and :meth:`fromutc` may not " +"produce the result you want if the result is one of the hours straddling the " +"moment the standard offset changes." msgstr "" msgid "" @@ -2533,8 +2530,8 @@ msgid "" msgstr "" msgid "" -"In the following :download:`tzinfo_examples.py <../includes/tzinfo_examples." -"py>` file there are some examples of :class:`tzinfo` classes:" +"In the following :download:`tzinfo_examples.py <../includes/" +"tzinfo_examples.py>` file there are some examples of :class:`tzinfo` classes:" msgstr "" msgid "" @@ -2720,11 +2717,11 @@ msgid "" msgstr "" msgid "" -"Note that there are unavoidable subtleties twice per year in a :class:" -"`tzinfo` subclass accounting for both standard and daylight time, at the DST " -"transition points. For concreteness, consider US Eastern (UTC -0500), where " -"EDT begins the minute after 1:59 (EST) on the second Sunday in March, and " -"ends the minute after 1:59 (EDT) on the first Sunday in November::" +"Note that there are unavoidable subtleties twice per year in " +"a :class:`tzinfo` subclass accounting for both standard and daylight time, " +"at the DST transition points. For concreteness, consider US Eastern (UTC " +"-0500), where EDT begins the minute after 1:59 (EST) on the second Sunday in " +"March, and ends the minute after 1:59 (EDT) on the first Sunday in November::" msgstr "" msgid "" @@ -2796,11 +2793,11 @@ msgstr "" msgid "" "Applications that can't bear wall-time ambiguities should explicitly check " -"the value of the :attr:`~.datetime.fold` attribute or avoid using hybrid :" -"class:`tzinfo` subclasses; there are no ambiguities when using :class:" -"`timezone`, or any other fixed-offset :class:`!tzinfo` subclass (such as a " -"class representing only EST (fixed offset -5 hours), or only EDT (fixed " -"offset -4 hours))." +"the value of the :attr:`~.datetime.fold` attribute or avoid using " +"hybrid :class:`tzinfo` subclasses; there are no ambiguities when " +"using :class:`timezone`, or any other fixed-offset :class:`!tzinfo` subclass " +"(such as a class representing only EST (fixed offset -5 hours), or only EDT " +"(fixed offset -4 hours))." msgstr "" msgid ":mod:`zoneinfo`" @@ -2881,8 +2878,8 @@ msgid "Always returns ``None``." msgstr "" msgid "" -"Return ``dt + offset``. The *dt* argument must be an aware :class:`." -"datetime` instance, with ``tzinfo`` set to ``self``." +"Return ``dt + offset``. The *dt* argument must be an " +"aware :class:`.datetime` instance, with ``tzinfo`` set to ``self``." msgstr "" msgid "The UTC time zone, ``timezone(timedelta(0))``." @@ -2898,14 +2895,14 @@ msgid "" msgstr "" msgid "" -"Conversely, the :meth:`date.strptime`, :meth:`datetime.strptime` and :meth:" -"`time.strptime` class methods create an object from a string representing " -"the time and a corresponding format string." +"Conversely, the :meth:`date.strptime`, :meth:`datetime.strptime` " +"and :meth:`time.strptime` class methods create an object from a string " +"representing the time and a corresponding format string." msgstr "" msgid "" -"The table below provides a high-level comparison of :meth:`~.datetime." -"strftime` versus :meth:`~.datetime.strptime`:" +"The table below provides a high-level comparison " +"of :meth:`~.datetime.strftime` versus :meth:`~.datetime.strptime`:" msgstr "" msgid "``strftime``" @@ -3375,9 +3372,9 @@ msgstr "" msgid "" "The ISO 8601 year and ISO 8601 week directives are not interchangeable with " -"the year and week number directives above. Calling :meth:`~.datetime." -"strptime` with incomplete or ambiguous ISO 8601 directives will raise a :exc:" -"`ValueError`." +"the year and week number directives above. " +"Calling :meth:`~.datetime.strptime` with incomplete or ambiguous ISO 8601 " +"directives will raise a :exc:`ValueError`." msgstr "" msgid "" @@ -3424,8 +3421,8 @@ msgid "``%:z`` was added for :meth:`~.datetime.strftime`." msgstr "" msgid "" -"``%D``, ``%F``, ``%n``, ``%t``, and ``%:z`` were added for :meth:`~.datetime." -"strptime`." +"``%D``, ``%F``, ``%n``, ``%t``, and ``%:z`` were added " +"for :meth:`~.datetime.strptime`." msgstr "" msgid "Technical detail" @@ -3433,8 +3430,8 @@ msgstr "" msgid "" "Broadly speaking, ``d.strftime(fmt)`` acts like the :mod:`time` module's " -"``time.strftime(fmt, d.timetuple())`` although not all objects support a :" -"meth:`~date.timetuple` method." +"``time.strftime(fmt, d.timetuple())`` although not all objects support " +"a :meth:`~date.timetuple` method." msgstr "" msgid "" @@ -3457,6 +3454,14 @@ msgid "" "year to partial date strings before parsing." msgstr "" +msgid "" +"If a :meth:`~.datetime.strptime` format string contains more than one " +"directive for the same field, for example both ``%Y`` and ``%y``, every " +"directive must still match the input, but only the value of the last one is " +"used. For example, parsing ``200099`` with ``%Y%y`` gives the year 1999. " +"Repeating the same directive, like ``%Y%Y``, raises an error." +msgstr "" + msgid "" ">>> import datetime as dt\n" ">>> value = \"2/29\"\n" @@ -3493,8 +3498,8 @@ msgid "" "For the same reason, handling of format strings containing Unicode code " "points that can't be represented in the charset of the current locale is " "also platform-dependent. On some platforms such code points are preserved " -"intact in the output, while on others ``strftime`` may raise :exc:" -"`UnicodeError` or return an empty string instead." +"intact in the output, while on others ``strftime`` may " +"raise :exc:`UnicodeError` or return an empty string instead." msgstr "" msgid "" @@ -3557,9 +3562,9 @@ msgid "" "seconds and ``ffffff`` is a 6-digit string giving the number of UTC offset " "microseconds. The ``ffffff`` part is omitted when the offset is a whole " "number of seconds and both the ``ffffff`` and the ``SS`` part is omitted " -"when the offset is a whole number of minutes. For example, if :meth:`~." -"datetime.utcoffset` returns ``timedelta(hours=-3, minutes=-30)``, ``%z`` is " -"replaced with the string ``'-0330'``." +"when the offset is a whole number of minutes. For example, " +"if :meth:`~.datetime.utcoffset` returns ``timedelta(hours=-3, " +"minutes=-30)``, ``%z`` is replaced with the string ``'-0330'``." msgstr "" msgid "" @@ -3583,9 +3588,9 @@ msgid "" msgstr "" msgid "" -"In :meth:`~.datetime.strftime`, ``%Z`` is replaced by an empty string if :" -"meth:`~.datetime.tzname` returns ``None``; otherwise ``%Z`` is replaced by " -"the returned value, which must be a string." +"In :meth:`~.datetime.strftime`, ``%Z`` is replaced by an empty string " +"if :meth:`~.datetime.tzname` returns ``None``; otherwise ``%Z`` is replaced " +"by the returned value, which must be a string." msgstr "" msgid ":meth:`~.datetime.strptime` only accepts certain values for ``%Z``:" @@ -3617,9 +3622,9 @@ msgstr "" msgid "" "Similar to ``%U`` and ``%W``, ``%V`` is only used in calculations when the " -"day of the week and the ISO year (``%G``) are specified in a :meth:`~." -"datetime.strptime` format string. Also note that ``%G`` and ``%Y`` are not " -"interchangeable." +"day of the week and the ISO year (``%G``) are specified in " +"a :meth:`~.datetime.strptime` format string. Also note that ``%G`` and " +"``%Y`` are not interchangeable." msgstr "" msgid "" diff --git a/library/dbm.po b/library/dbm.po index 384fae6..5d466ae 100644 --- a/library/dbm.po +++ b/library/dbm.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,9 +48,9 @@ msgstr "" msgid "" "None of the underlying modules will automatically shrink the disk space used " -"by the database file. However, :mod:`dbm.sqlite3`, :mod:`dbm.gnu` and :mod:" -"`dbm.dumb` provide a :meth:`!reorganize` method that can be used for this " -"purpose." +"by the database file. However, :mod:`dbm.sqlite3`, :mod:`dbm.gnu` " +"and :mod:`dbm.dumb` provide a :meth:`!reorganize` method that can be used " +"for this purpose." msgstr "" msgid "" @@ -61,8 +61,8 @@ msgstr "" msgid "" "This function attempts to guess which of the several simple database modules " -"available --- :mod:`dbm.sqlite3`, :mod:`dbm.gnu`, :mod:`dbm.ndbm`, or :mod:" -"`dbm.dumb` --- should be used to open a given file." +"available --- :mod:`dbm.sqlite3`, :mod:`dbm.gnu`, :mod:`dbm.ndbm`, " +"or :mod:`dbm.dumb` --- should be used to open a given file." msgstr "" msgid "Return one of the following values:" @@ -90,10 +90,10 @@ msgid "Parameters" msgstr "" msgid "" -"The database file to open. If the database file already exists, the :func:" -"`whichdb` function is used to determine its type and the appropriate module " -"is used; if it does not exist, the first submodule listed above that can be " -"imported is used." +"The database file to open. If the database file already exists, " +"the :func:`whichdb` function is used to determine its type and the " +"appropriate module is used; if it does not exist, the first submodule listed " +"above that can be imported is used." msgstr "" msgid "The database file to open." @@ -140,7 +140,8 @@ msgstr "" msgid "" "Key and values are always stored as :class:`bytes`. This means that when " "strings are used they are implicitly converted to the default encoding " -"before being stored." +"before being stored. For detailed information about accepted types, " +"see :ref:`dbm-key-value-types`." msgstr "" msgid "" @@ -149,8 +150,8 @@ msgid "" msgstr "" msgid "" -":meth:`!get` and :meth:`!setdefault` methods are now available for all :mod:" -"`!dbm` backends." +":meth:`!get` and :meth:`!setdefault` methods are now available for " +"all :mod:`!dbm` backends." msgstr "" msgid "" @@ -166,6 +167,77 @@ msgstr "" msgid ":meth:`!clear` methods are now available for all :mod:`!dbm` backends." msgstr "" +msgid "Key and value types" +msgstr "" + +msgid "" +"The accepted types for keys and values vary by backend. Keys and values are " +"handled the same way, except where noted below:" +msgstr "" + +msgid "**Traditional backends:**" +msgstr "" + +msgid "" +":mod:`dbm.gnu` and :mod:`dbm.ndbm`: Accept :class:`str` and :class:`bytes` " +"objects." +msgstr "" + +msgid "" +":mod:`dbm.dumb`: Accepts :class:`str` and :class:`bytes` " +"objects; :class:`bytearray` is acceptable as a value, but not as a key." +msgstr "" + +msgid "" +"**SQLite backend** (:mod:`dbm.sqlite3`): " +"Accepts :class:`str`, :class:`bytes`, :class:`int`, :class:`float`, :class:`bool`, :class:`bytearray`, :class:`memoryview`, " +"and :class:`array.array` objects." +msgstr "" + +msgid "**Storage format:**" +msgstr "" + +msgid "" +"All keys and values are stored as :class:`bytes` objects in the database. " +"When retrieving, you'll always get bytes back, regardless of the original " +"type stored." +msgstr "" + +msgid "**Type conversion examples:**" +msgstr "" + +msgid "``db['key'] = 'string'`` stored as ``b'string'``" +msgstr "" + +msgid "" +"``db['key'] = bytearray(b'data')`` stored as ``b'data'`` (:mod:`dbm.dumb` " +"and :mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "``db['key'] = 42`` stored as ``b'42'`` (:mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "``db['key'] = 3.14`` stored as ``b'3.14'`` (:mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "``db['key'] = True`` stored as ``b'1'`` (:mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "``db['key'] = False`` stored as ``b'0'`` (:mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "" +"``db['key'] = memoryview(b'data')`` stored as ``b'data'`` " +"(:mod:`dbm.sqlite3` only)" +msgstr "" + +msgid "" +"``db['key'] = array.array('i', [1, 2, 3])`` stored as bytes (for example, on " +"little-endian: " +"``b'\\x01\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x03\\x00\\x00\\x00'``) " +"(:mod:`dbm.sqlite3` only)" +msgstr "" + msgid "" "The following example records some hostnames and a corresponding title, and " "then prints out the contents of the database::" @@ -190,8 +262,9 @@ msgid "" " # Often-used methods of the dict interface work too.\n" " print(db.get('python.org', b'not present'))\n" "\n" -" # Storing a non-string key or value will raise an exception (most\n" -" # likely a TypeError).\n" +" # Storing a non-string key or value behavior depends on the backend:\n" +" # - Traditional backends (ndbm, gnu, dumb) will raise a TypeError\n" +" # - The sqlite3 backend accepts it and converts to bytes\n" " db['www.yahoo.com'] = 4\n" "\n" "# db is automatically closed when leaving the with statement." @@ -214,9 +287,9 @@ msgstr "" msgid "" "This module uses the standard library :mod:`sqlite3` module to provide an " -"SQLite backend for the :mod:`!dbm` module. The files created by :mod:`!dbm." -"sqlite3` can thus be opened by :mod:`sqlite3`, or any other SQLite browser, " -"including the SQLite CLI." +"SQLite backend for the :mod:`!dbm` module. The files created by :mod:`!" +"dbm.sqlite3` can thus be opened by :mod:`sqlite3`, or any other SQLite " +"browser, including the SQLite CLI." msgstr "" msgid "Availability" @@ -287,9 +360,9 @@ msgid "" msgstr "" msgid "" -"Raised on :mod:`!dbm.gnu`-specific errors, such as I/O errors. :exc:" -"`KeyError` is raised for general mapping errors like specifying an incorrect " -"key." +"Raised on :mod:`!dbm.gnu`-specific errors, such as I/O " +"errors. :exc:`KeyError` is raised for general mapping errors like specifying " +"an incorrect key." msgstr "" msgid "" @@ -379,10 +452,10 @@ msgstr "" msgid "" "If you have carried out a lot of deletions and would like to shrink the " -"space used by the GDBM file, this routine will reorganize the database. :" -"class:`!gdbm` objects will not shorten the length of a database file except " -"by using this reorganization; otherwise, deleted file space will be kept and " -"reused as new (key, value) pairs are added." +"space used by the GDBM file, this routine will reorganize the " +"database. :class:`!gdbm` objects will not shorten the length of a database " +"file except by using this reorganization; otherwise, deleted file space will " +"be kept and reused as new (key, value) pairs are added." msgstr "" msgid "" @@ -421,9 +494,9 @@ msgid "" msgstr "" msgid "" -"Raised on :mod:`!dbm.ndbm`-specific errors, such as I/O errors. :exc:" -"`KeyError` is raised for general mapping errors like specifying an incorrect " -"key." +"Raised on :mod:`!dbm.ndbm`-specific errors, such as I/O " +"errors. :exc:`KeyError` is raised for general mapping errors like specifying " +"an incorrect key." msgstr "" msgid "Name of the NDBM implementation library used." @@ -461,10 +534,10 @@ msgid "**Source code:** :source:`Lib/dbm/dumb.py`" msgstr "" msgid "" -"The :mod:`!dbm.dumb` module is intended as a last resort fallback for the :" -"mod:`!dbm` module when a more robust module is not available. The :mod:`!dbm." -"dumb` module is not written for speed and is not nearly as heavily used as " -"the other database modules." +"The :mod:`!dbm.dumb` module is intended as a last resort fallback for " +"the :mod:`!dbm` module when a more robust module is not available. " +"The :mod:`!dbm.dumb` module is not written for speed and is not nearly as " +"heavily used as the other database modules." msgstr "" msgid "" @@ -477,9 +550,9 @@ msgid "The :mod:`!dbm.dumb` module defines the following:" msgstr "" msgid "" -"Raised on :mod:`!dbm.dumb`-specific errors, such as I/O errors. :exc:" -"`KeyError` is raised for general mapping errors like specifying an incorrect " -"key." +"Raised on :mod:`!dbm.dumb`-specific errors, such as I/O " +"errors. :exc:`KeyError` is raised for general mapping errors like " +"specifying an incorrect key." msgstr "" msgid "Open a :mod:`!dbm.dumb` database." @@ -487,8 +560,8 @@ msgstr "" msgid "" "The basename of the database file (without extensions). A new database " -"creates the following files: - :file:`{filename}.dat` - :file:`{filename}." -"dir`" +"creates the following files: - :file:`{filename}.dat` " +"- :file:`{filename}.dir`" msgstr "" msgid "" @@ -536,9 +609,9 @@ msgstr "" msgid "" "The returned database object behaves similar to a mutable :term:`mapping`, " -"but the :meth:`!keys` and :meth:`!items` methods return lists, and the :meth:" -"`!setdefault` method requires two arguments. It also supports a \"closing\" " -"context manager via the :keyword:`with` keyword." +"but the :meth:`!keys` and :meth:`!items` methods return lists, and " +"the :meth:`!setdefault` method requires two arguments. It also supports a " +"\"closing\" context manager via the :keyword:`with` keyword." msgstr "" msgid "Close the database." diff --git a/library/debug.po b/library/debug.po index af1c9ea..17ec49b 100644 --- a/library/debug.po +++ b/library/debug.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Debugging and profiling" -msgstr "" +msgstr "ਡੀਬੱਗਿੰਗ ਅਤੇ ਪ੍ਰੋਫਾਈਲਿੰਗ" msgid "" "These libraries help you with Python development: the debugger enables you " @@ -33,3 +33,9 @@ msgid "" "provide visibility into runtime behaviors that would otherwise require " "intrusive debugging or patching." msgstr "" +"ਇਹ ਲਾਇਬ੍ਰੇਰੀਆਂ ਪਾਈਥਨ ਵਿਕਾਸ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਦੀਆਂ ਹਨ। ਡੀਬੱਗਰ ਤੁਹਾਨੂੰ ਕੋਡ ਨੂੰ ਕਦਮ-ਦਰ-ਕਦਮ " +"ਚਲਾਉਣ, ਸਟੈਕ ਫ੍ਰੇਮਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਅਤੇ ਬ੍ਰੇਕਪੌਇੰਟ ਆਦਿ ਸੈੱਟ ਕਰਨ ਦੀ ਸਹੂਲਤ ਦਿੰਦਾ ਹੈ, ਜਦਕਿ " +"ਪ੍ਰੋਫਾਈਲਰ ਕੋਡ ਚਲਾ ਕੇ ਚਲਾਉਣ ਦੇ ਸਮੇਂ ਦਾ ਵਿਸਤ੍ਰਿਤ ਵਿਸ਼ਲੇਸ਼ਣ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ ਆਪਣੇ " +"ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਕਾਰਗੁਜ਼ਾਰੀ ਦੀਆਂ ਰੁਕਾਵਟਾਂ ਦੀ ਪਛਾਣ ਕਰ ਸਕਦੇ ਹੋ। ਆਡਿਟਿੰਗ ਇਵੈਂਟ ਰਨਟਾਈਮ ਦੌਰਾਨ ਹੋਣ " +"ਵਾਲੇ ਵਿਹਾਰਾਂ ਬਾਰੇ ਜਾਣਕਾਰੀ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਨਹੀਂ ਤਾਂ ਦਖਲਅੰਦਾਜ਼ੀ ਵਾਲੀ ਡੀਬੱਗਿੰਗ ਜਾਂ " +"ਪੈਚਿੰਗ ਤੋਂ ਬਿਨਾਂ ਦੇਖਣਾ ਮੁਸ਼ਕਲ ਹੁੰਦਾ ਹੈ।" diff --git a/library/decimal.po b/library/decimal.po index 3debed2..58c04a2 100644 --- a/library/decimal.po +++ b/library/decimal.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,8 +30,8 @@ msgstr "" msgid "" "The :mod:`!decimal` module provides support for fast correctly rounded " -"decimal floating-point arithmetic. It offers several advantages over the :" -"class:`float` datatype:" +"decimal floating-point arithmetic. It offers several advantages over " +"the :class:`float` datatype:" msgstr "" msgid "" @@ -106,19 +106,18 @@ msgid "" "The context for arithmetic is an environment specifying precision, rounding " "rules, limits on exponents, flags indicating the results of operations, and " "trap enablers which determine whether signals are treated as exceptions. " -"Rounding options include :const:`ROUND_CEILING`, :const:`ROUND_DOWN`, :const:" -"`ROUND_FLOOR`, :const:`ROUND_HALF_DOWN`, :const:`ROUND_HALF_EVEN`, :const:" -"`ROUND_HALF_UP`, :const:`ROUND_UP`, and :const:`ROUND_05UP`." +"Rounding options " +"include :const:`ROUND_CEILING`, :const:`ROUND_DOWN`, :const:`ROUND_FLOOR`, :const:`ROUND_HALF_DOWN`, :const:`ROUND_HALF_EVEN`, :const:`ROUND_HALF_UP`, :const:`ROUND_UP`, " +"and :const:`ROUND_05UP`." msgstr "" msgid "" "Signals are groups of exceptional conditions arising during the course of " "computation. Depending on the needs of the application, signals may be " "ignored, considered as informational, or treated as exceptions. The signals " -"in the decimal module are: :const:`Clamped`, :const:`InvalidOperation`, :" -"const:`DivisionByZero`, :const:`Inexact`, :const:`Rounded`, :const:" -"`Subnormal`, :const:`Overflow`, :const:`Underflow` and :const:" -"`FloatOperation`." +"in the decimal module " +"are: :const:`Clamped`, :const:`InvalidOperation`, :const:`DivisionByZero`, :const:`Inexact`, :const:`Rounded`, :const:`Subnormal`, :const:`Overflow`, :const:`Underflow` " +"and :const:`FloatOperation`." msgstr "" msgid "" @@ -304,15 +303,15 @@ msgstr "" msgid "" "For more advanced work, it may be useful to create alternate contexts using " -"the :meth:`Context` constructor. To make an alternate active, use the :func:" -"`setcontext` function." +"the :meth:`Context` constructor. To make an alternate active, use " +"the :func:`setcontext` function." msgstr "" msgid "" "In accordance with the standard, the :mod:`!decimal` module provides two " -"ready to use standard contexts, :const:`BasicContext` and :const:" -"`ExtendedContext`. The former is especially useful for debugging because " -"many of the traps are enabled:" +"ready to use standard contexts, :const:`BasicContext` " +"and :const:`ExtendedContext`. The former is especially useful for debugging " +"because many of the traps are enabled:" msgstr "" msgid "" @@ -393,11 +392,11 @@ msgid "Construct a new :class:`Decimal` object based from *value*." msgstr "" msgid "" -"*value* can be an integer, string, tuple, :class:`float`, or another :class:" -"`Decimal` object. If no *value* is given, returns ``Decimal('0')``. If " -"*value* is a string, it should conform to the decimal numeric string syntax " -"after leading and trailing whitespace characters, as well as underscores " -"throughout, are removed::" +"*value* can be an integer, string, tuple, :class:`float`, or " +"another :class:`Decimal` object. If no *value* is given, returns " +"``Decimal('0')``. If *value* is a string, it should conform to the decimal " +"numeric string syntax after leading and trailing whitespace characters, as " +"well as underscores throughout, are removed::" msgstr "" msgid "" @@ -475,8 +474,8 @@ msgid "" "numeric types such as :class:`float` and :class:`int`. All of the usual " "math operations and special methods apply. Likewise, decimal objects can be " "copied, pickled, printed, used as dictionary keys, used as set elements, " -"compared, sorted, and coerced to another type (such as :class:`float` or :" -"class:`int`)." +"compared, sorted, and coerced to another type (such as :class:`float` " +"or :class:`int`)." msgstr "" msgid "" @@ -512,13 +511,13 @@ msgid "" msgstr "" msgid "" -"Decimal objects cannot generally be combined with floats or instances of :" -"class:`fractions.Fraction` in arithmetic operations: an attempt to add a :" -"class:`Decimal` to a :class:`float`, for example, will raise a :exc:" -"`TypeError`. However, it is possible to use Python's comparison operators " -"to compare a :class:`Decimal` instance ``x`` with another number ``y``. " -"This avoids confusing results when doing equality comparisons between " -"numbers of different types." +"Decimal objects cannot generally be combined with floats or instances " +"of :class:`fractions.Fraction` in arithmetic operations: an attempt to add " +"a :class:`Decimal` to a :class:`float`, for example, will raise " +"a :exc:`TypeError`. However, it is possible to use Python's comparison " +"operators to compare a :class:`Decimal` instance ``x`` with another number " +"``y``. This avoids confusing results when doing equality comparisons " +"between numbers of different types." msgstr "" msgid "" @@ -539,9 +538,9 @@ msgid "" msgstr "" msgid "" -"Return a pair ``(n, d)`` of integers that represent the given :class:" -"`Decimal` instance as a fraction, in lowest terms and with a positive " -"denominator::" +"Return a pair ``(n, d)`` of integers that represent the " +"given :class:`Decimal` instance as a fraction, in lowest terms and with a " +"positive denominator::" msgstr "" msgid "" @@ -609,8 +608,8 @@ msgstr "" msgid "" "Compare two operands using their abstract representation rather than their " "value as in :meth:`compare_total`, but ignoring the sign of each operand. " -"``x.compare_total_mag(y)`` is equivalent to ``x.copy_abs().compare_total(y." -"copy_abs())``." +"``x.compare_total_mag(y)`` is equivalent to " +"``x.copy_abs().compare_total(y.copy_abs())``." msgstr "" msgid "" @@ -640,8 +639,8 @@ msgid "" msgstr "" msgid "" -"Alternative constructor that only accepts instances of :class:`float` or :" -"class:`int`." +"Alternative constructor that only accepts instances of :class:`float` " +"or :class:`int`." msgstr "" msgid "" @@ -669,8 +668,9 @@ msgid "" msgstr "" msgid "" -"Alternative constructor that only accepts instances of :class:`float`, :" -"class:`int` or :class:`Decimal`, but not strings or tuples." +"Alternative constructor that only accepts instances " +"of :class:`float`, :class:`int` or :class:`Decimal`, but not strings or " +"tuples." msgstr "" msgid "" @@ -704,13 +704,13 @@ msgid "" msgstr "" msgid "" -"Return :const:`True` if the argument is a (quiet or signaling) NaN and :" -"const:`False` otherwise." +"Return :const:`True` if the argument is a (quiet or signaling) NaN " +"and :const:`False` otherwise." msgstr "" msgid "" -"Return :const:`True` if the argument is a *normal* finite number. Return :" -"const:`False` if the argument is zero, subnormal, infinite or a NaN." +"Return :const:`True` if the argument is a *normal* finite number. " +"Return :const:`False` if the argument is zero, subnormal, infinite or a NaN." msgstr "" msgid "" @@ -734,8 +734,8 @@ msgid "" msgstr "" msgid "" -"Return :const:`True` if the argument is a (positive or negative) zero and :" -"const:`False` otherwise." +"Return :const:`True` if the argument is a (positive or negative) zero " +"and :const:`False` otherwise." msgstr "" msgid "" @@ -749,8 +749,8 @@ msgid "" msgstr "" msgid "" -"For a nonzero number, return the adjusted exponent of its operand as a :" -"class:`Decimal` instance. If the operand is a zero then ``Decimal('-" +"For a nonzero number, return the adjusted exponent of its operand as " +"a :class:`Decimal` instance. If the operand is a zero then ``Decimal('-" "Infinity')`` is returned and the :const:`DivisionByZero` flag is raised. If " "the operand is an infinity then ``Decimal('Infinity')`` is returned." msgstr "" @@ -911,8 +911,8 @@ msgid "" msgstr "" msgid "" -"An error is returned whenever the resulting exponent is greater than :attr:" -"`~Context.Emax` or less than :meth:`~Context.Etiny`." +"An error is returned whenever the resulting exponent is greater " +"than :attr:`~Context.Emax` or less than :meth:`~Context.Etiny`." msgstr "" msgid "" @@ -993,9 +993,9 @@ msgid "" msgstr "" msgid "" -"Round to the nearest integer without signaling :const:`Inexact` or :const:" -"`Rounded`. If given, applies *rounding*; otherwise, uses the rounding " -"method in either the supplied *context* or the current context." +"Round to the nearest integer without signaling :const:`Inexact` " +"or :const:`Rounded`. If given, applies *rounding*; otherwise, uses the " +"rounding method in either the supplied *context* or the current context." msgstr "" msgid "Decimal numbers can be rounded using the :func:`.round` function:" @@ -1003,8 +1003,8 @@ msgstr "" msgid "" "If *ndigits* is not given or ``None``, returns the nearest :class:`int` to " -"*number*, rounding ties to even, and ignoring the rounding mode of the :" -"class:`Decimal` context. Raises :exc:`OverflowError` if *number* is an " +"*number*, rounding ties to even, and ignoring the rounding mode of " +"the :class:`Decimal` context. Raises :exc:`OverflowError` if *number* is an " "infinity or :exc:`ValueError` if it is a (quiet or signaling) NaN." msgstr "" @@ -1013,10 +1013,11 @@ msgid "" "and a :class:`Decimal` representing *number* rounded to the nearest multiple " "of ``Decimal('1E-ndigits')`` is returned; in this case, ``round(number, " "ndigits)`` is equivalent to ``self.quantize(Decimal('1E-ndigits'))``. " -"Returns ``Decimal('NaN')`` if *number* is a quiet NaN. Raises :class:" -"`InvalidOperation` if *number* is an infinity, a signaling NaN, or if the " -"length of the coefficient after the quantize operation would be greater than " -"the current context's precision. In other words, for the non-corner cases:" +"Returns ``Decimal('NaN')`` if *number* is a quiet NaN. " +"Raises :class:`InvalidOperation` if *number* is an infinity, a signaling " +"NaN, or if the length of the coefficient after the quantize operation would " +"be greater than the current context's precision. In other words, for the " +"non-corner cases:" msgstr "" msgid "" @@ -1054,11 +1055,11 @@ msgid "Logical operands" msgstr "" msgid "" -"The :meth:`~Decimal.logical_and`, :meth:`~Decimal.logical_invert`, :meth:" -"`~Decimal.logical_or`, and :meth:`~Decimal.logical_xor` methods expect their " -"arguments to be *logical operands*. A *logical operand* is a :class:" -"`Decimal` instance whose exponent and sign are both zero, and whose digits " -"are all either ``0`` or ``1``." +"The :meth:`~Decimal.logical_and`, :meth:`~Decimal.logical_invert`, :meth:`~Decimal.logical_or`, " +"and :meth:`~Decimal.logical_xor` methods expect their arguments to be " +"*logical operands*. A *logical operand* is a :class:`Decimal` instance " +"whose exponent and sign are both zero, and whose digits are all either ``0`` " +"or ``1``." msgstr "" msgid "Context objects" @@ -1121,9 +1122,9 @@ msgid "" msgstr "" msgid "" -"Raises :exc:`TypeError` if *kwargs* supplies an attribute that :class:" -"`Context` doesn't support. Raises either :exc:`TypeError` or :exc:" -"`ValueError` if *kwargs* supplies an invalid value for an attribute." +"Raises :exc:`TypeError` if *kwargs* supplies an attribute " +"that :class:`Context` doesn't support. Raises either :exc:`TypeError` " +"or :exc:`ValueError` if *kwargs* supplies an invalid value for an attribute." msgstr "" msgid "" @@ -1133,8 +1134,8 @@ msgstr "" msgid "" "Return a context object initialized to the proper values for one of the IEEE " -"interchange formats. The argument must be a multiple of 32 and less than :" -"const:`IEEE_CONTEXT_MAX_BITS`." +"interchange formats. The argument must be a multiple of 32 and less " +"than :const:`IEEE_CONTEXT_MAX_BITS`." msgstr "" msgid "" @@ -1144,10 +1145,10 @@ msgstr "" msgid "" "This is a standard context defined by the General Decimal Arithmetic " -"Specification. Precision is set to nine. Rounding is set to :const:" -"`ROUND_HALF_UP`. All flags are cleared. All traps are enabled (treated as " -"exceptions) except :const:`Inexact`, :const:`Rounded`, and :const:" -"`Subnormal`." +"Specification. Precision is set to nine. Rounding is set " +"to :const:`ROUND_HALF_UP`. All flags are cleared. All traps are enabled " +"(treated as exceptions) except :const:`Inexact`, :const:`Rounded`, " +"and :const:`Subnormal`." msgstr "" msgid "" @@ -1156,9 +1157,9 @@ msgstr "" msgid "" "This is a standard context defined by the General Decimal Arithmetic " -"Specification. Precision is set to nine. Rounding is set to :const:" -"`ROUND_HALF_EVEN`. All flags are cleared. No traps are enabled (so that " -"exceptions are not raised during computations)." +"Specification. Precision is set to nine. Rounding is set " +"to :const:`ROUND_HALF_EVEN`. All flags are cleared. No traps are enabled " +"(so that exceptions are not raised during computations)." msgstr "" msgid "" @@ -1188,9 +1189,10 @@ msgid "" msgstr "" msgid "" -"The default values are :attr:`Context.prec`\\ =\\ ``28``, :attr:`Context." -"rounding`\\ =\\ :const:`ROUND_HALF_EVEN`, and enabled traps for :class:" -"`Overflow`, :class:`InvalidOperation`, and :class:`DivisionByZero`." +"The default values are :attr:`Context.prec`\\ =\\ " +"``28``, :attr:`Context.rounding`\\ =\\ :const:`ROUND_HALF_EVEN`, and enabled " +"traps for :class:`Overflow`, :class:`InvalidOperation`, " +"and :class:`DivisionByZero`." msgstr "" msgid "" @@ -1219,8 +1221,8 @@ msgstr "" msgid "" "Integers specifying the outer limits allowable for exponents. *Emin* must be " -"in the range [:const:`MIN_EMIN`, ``0``], *Emax* in the range [``0``, :const:" -"`MAX_EMAX`]." +"in the range [:const:`MIN_EMIN`, ``0``], *Emax* in the range " +"[``0``, :const:`MAX_EMAX`]." msgstr "" msgid "" @@ -1233,12 +1235,13 @@ msgid "" "Either ``0`` (the default) or ``1``. If set to ``1``, the exponent ``e`` of " "a :class:`Decimal` instance representable in this context is strictly " "limited to the range ``Emin - prec + 1 <= e <= Emax - prec + 1``. If *clamp* " -"is ``0`` then a weaker condition holds: the adjusted exponent of the :class:" -"`Decimal` instance is at most :attr:`~Context.Emax`. When *clamp* is ``1``, " -"a large normal number will, where possible, have its exponent reduced and a " -"corresponding number of zeros added to its coefficient, in order to fit the " -"exponent constraints; this preserves the value of the number but loses " -"information about significant trailing zeros. For example::" +"is ``0`` then a weaker condition holds: the adjusted exponent of " +"the :class:`Decimal` instance is at most :attr:`~Context.Emax`. When " +"*clamp* is ``1``, a large normal number will, where possible, have its " +"exponent reduced and a corresponding number of zeros added to its " +"coefficient, in order to fit the exponent constraints; this preserves the " +"value of the number but loses information about significant trailing zeros. " +"For example::" msgstr "" msgid "" @@ -1255,12 +1258,13 @@ msgid "" "The :class:`Context` class defines several general purpose methods as well " "as a large number of methods for doing arithmetic directly in a given " "context. In addition, for each of the :class:`Decimal` methods described " -"above (with the exception of the :meth:`~Decimal.adjusted` and :meth:" -"`~Decimal.as_tuple` methods) there is a corresponding :class:`Context` " -"method. For example, for a :class:`Context` instance ``C`` and :class:" -"`Decimal` instance ``x``, ``C.exp(x)`` is equivalent to ``x." -"exp(context=C)``. Each :class:`Context` method accepts a Python integer (an " -"instance of :class:`int`) anywhere that a Decimal instance is accepted." +"above (with the exception of the :meth:`~Decimal.adjusted` " +"and :meth:`~Decimal.as_tuple` methods) there is a " +"corresponding :class:`Context` method. For example, for a :class:`Context` " +"instance ``C`` and :class:`Decimal` instance ``x``, ``C.exp(x)`` is " +"equivalent to ``x.exp(context=C)``. Each :class:`Context` method accepts a " +"Python integer (an instance of :class:`int`) anywhere that a Decimal " +"instance is accepted." msgstr "" msgid "Resets all of the flags to ``0``." @@ -1323,8 +1327,8 @@ msgstr "" msgid "" "Returns a value equal to ``Emin - prec + 1`` which is the minimum exponent " -"value for subnormal results. When underflow occurs, the exponent is set to :" -"const:`Etiny`." +"value for subnormal results. When underflow occurs, the exponent is set " +"to :const:`Etiny`." msgstr "" msgid "Returns a value equal to ``Emax - prec + 1``." @@ -1491,9 +1495,9 @@ msgid "" msgstr "" msgid "" -"The C module computes :meth:`power` in terms of the correctly rounded :meth:" -"`exp` and :meth:`ln` functions. The result is well-defined but only \"almost " -"always correctly rounded\"." +"The C module computes :meth:`power` in terms of the correctly " +"rounded :meth:`exp` and :meth:`ln` functions. The result is well-defined but " +"only \"almost always correctly rounded\"." msgstr "" msgid "" @@ -1666,18 +1670,18 @@ msgstr "" msgid "" "If the context's trap enabler is set for the signal, then the condition " -"causes a Python exception to be raised. For example, if the :class:" -"`DivisionByZero` trap is set, then a :exc:`DivisionByZero` exception is " -"raised upon encountering the condition." +"causes a Python exception to be raised. For example, if " +"the :class:`DivisionByZero` trap is set, then a :exc:`DivisionByZero` " +"exception is raised upon encountering the condition." msgstr "" msgid "Altered an exponent to fit representation constraints." msgstr "" msgid "" -"Typically, clamping occurs when an exponent falls outside the context's :" -"attr:`~Context.Emin` and :attr:`~Context.Emax` limits. If possible, the " -"exponent is reduced to fit by adding zeros to the coefficient." +"Typically, clamping occurs when an exponent falls outside the " +"context's :attr:`~Context.Emin` and :attr:`~Context.Emax` limits. If " +"possible, the exponent is reduced to fit by adding zeros to the coefficient." msgstr "" msgid "Base class for other signals and a subclass of :exc:`ArithmeticError`." @@ -1728,8 +1732,8 @@ msgid "" "Indicates the exponent is larger than :attr:`Context.Emax` after rounding " "has occurred. If not trapped, the result depends on the rounding mode, " "either pulling inward to the largest representable finite number or rounding " -"outward to ``Infinity``. In either case, :class:`Inexact` and :class:" -"`Rounded` are also signaled." +"outward to ``Infinity``. In either case, :class:`Inexact` " +"and :class:`Rounded` are also signaled." msgstr "" msgid "Rounding occurred though possibly no information was lost." @@ -1753,8 +1757,8 @@ msgid "Numerical underflow with result rounded to zero." msgstr "" msgid "" -"Occurs when a subnormal result is pushed to zero by rounding. :class:" -"`Inexact` and :class:`Subnormal` are also signaled." +"Occurs when a subnormal result is pushed to zero by " +"rounding. :class:`Inexact` and :class:`Subnormal` are also signaled." msgstr "" msgid "Enable stricter semantics for mixing floats and Decimals." @@ -1762,18 +1766,18 @@ msgstr "" msgid "" "If the signal is not trapped (default), mixing floats and Decimals is " -"permitted in the :class:`~decimal.Decimal` constructor, :meth:`~decimal." -"Context.create_decimal` and all comparison operators. Both conversion and " -"comparisons are exact. Any occurrence of a mixed operation is silently " -"recorded by setting :exc:`FloatOperation` in the context flags. Explicit " -"conversions with :meth:`~decimal.Decimal.from_float` or :meth:`~decimal." -"Context.create_decimal_from_float` do not set the flag." +"permitted in the :class:`~decimal.Decimal` " +"constructor, :meth:`~decimal.Context.create_decimal` and all comparison " +"operators. Both conversion and comparisons are exact. Any occurrence of a " +"mixed operation is silently recorded by setting :exc:`FloatOperation` in the " +"context flags. Explicit conversions with :meth:`~decimal.Decimal.from_float` " +"or :meth:`~decimal.Context.create_decimal_from_float` do not set the flag." msgstr "" msgid "" "Otherwise (the signal is trapped), only equality comparisons and explicit " -"conversions are silent. All other mixed operations raise :exc:" -"`FloatOperation`." +"conversions are silent. All other mixed operations " +"raise :exc:`FloatOperation`." msgstr "" msgid "The following table summarizes the hierarchy of signals::" @@ -1876,10 +1880,10 @@ msgid "" msgstr "" msgid "" -"Some operations are indeterminate and return ``NaN``, or if the :exc:" -"`InvalidOperation` signal is trapped, raise an exception. For example, " -"``0/0`` returns ``NaN`` which means \"not a number\". This variety of " -"``NaN`` is quiet and, once created, will flow through other computations " +"Some operations are indeterminate and return ``NaN``, or if " +"the :exc:`InvalidOperation` signal is trapped, raise an exception. For " +"example, ``0/0`` returns ``NaN`` which means \"not a number\". This variety " +"of ``NaN`` is quiet and, once created, will flow through other computations " "always resulting in another ``NaN``. This behavior can be useful for a " "series of computations that occasionally have missing inputs --- it allows " "the calculation to proceed while flagging specific results as invalid." @@ -1897,14 +1901,14 @@ msgid "" "is a quiet or signaling ``NaN`` always returns :const:`False` (even when " "doing ``Decimal('NaN')==Decimal('NaN')``), while a test for inequality " "always returns :const:`True`. An attempt to compare two Decimals using any " -"of the ``<``, ``<=``, ``>`` or ``>=`` operators will raise the :exc:" -"`InvalidOperation` signal if either operand is a ``NaN``, and return :const:" -"`False` if this signal is not trapped. Note that the General Decimal " -"Arithmetic specification does not specify the behavior of direct " +"of the ``<``, ``<=``, ``>`` or ``>=`` operators will raise " +"the :exc:`InvalidOperation` signal if either operand is a ``NaN``, and " +"return :const:`False` if this signal is not trapped. Note that the General " +"Decimal Arithmetic specification does not specify the behavior of direct " "comparisons; these rules for comparisons involving a ``NaN`` were taken from " "the IEEE 854 standard (see Table 3 in section 5.7). To ensure strict " -"standards-compliance, use the :meth:`~Decimal.compare` and :meth:`~Decimal." -"compare_signal` methods instead." +"standards-compliance, use the :meth:`~Decimal.compare` " +"and :meth:`~Decimal.compare_signal` methods instead." msgstr "" msgid "" @@ -1938,10 +1942,10 @@ msgid "" msgstr "" msgid "" -"If :func:`setcontext` has not been called before :func:`getcontext`, then :" -"func:`getcontext` will automatically create a new context for use in the " -"current thread. New context objects have default values set from the :data:" -"`decimal.DefaultContext` object." +"If :func:`setcontext` has not been called before :func:`getcontext`, " +"then :func:`getcontext` will automatically create a new context for use in " +"the current thread. New context objects have default values set from " +"the :data:`decimal.DefaultContext` object." msgstr "" msgid "" @@ -1949,8 +1953,8 @@ msgid "" "new threads. If the flag is false, new threads will start with an empty " "context. In this case, :func:`getcontext` will create a new context object " "when called and use the default values from *DefaultContext*. If the flag " -"is true, new threads will start with a copy of context from the caller of :" -"meth:`threading.Thread.start`." +"is true, new threads will start with a copy of context from the caller " +"of :meth:`threading.Thread.start`." msgstr "" msgid "" @@ -2204,7 +2208,7 @@ msgid "" "Decimal('3.1416')\n" ">>> pi - Decimal('0.00005') # Subtract unrounded numbers, then round\n" "Decimal('3.1415')\n" -">>> pi + 0 - Decimal('0.00005'). # Intermediate values are rounded\n" +">>> pi + 0 - Decimal('0.00005') # Intermediate values are rounded\n" "Decimal('3.1416')" msgstr "" @@ -2286,8 +2290,8 @@ msgid "" msgstr "" msgid "" -"Alternatively, inputs can be rounded upon creation using the :meth:`Context." -"create_decimal` method:" +"Alternatively, inputs can be rounded upon creation using " +"the :meth:`Context.create_decimal` method:" msgstr "" msgid "Q: Is the CPython implementation fast for large numbers?" @@ -2295,10 +2299,10 @@ msgstr "" msgid "" "A: Yes. In the CPython and PyPy3 implementations, the C/CFFI versions of " -"the decimal module integrate the high speed `libmpdec `_ library for arbitrary precision " -"correctly rounded decimal floating-point arithmetic [#]_. ``libmpdec`` uses " -"`Karatsuba multiplication `_ library for arbitrary " +"precision correctly rounded decimal floating-point arithmetic [#]_. " +"``libmpdec`` uses `Karatsuba multiplication `_ for medium-sized numbers and the `Number Theoretic " "Transform `_ for very " @@ -2306,10 +2310,10 @@ msgid "" msgstr "" msgid "" -"The context must be adapted for exact arbitrary precision arithmetic. :attr:" -"`~Context.Emin` and :attr:`~Context.Emax` should always be set to the " -"maximum values, :attr:`~Context.clamp` should always be 0 (the default). " -"Setting :attr:`~Context.prec` requires some care." +"The context must be adapted for exact arbitrary precision " +"arithmetic. :attr:`~Context.Emin` and :attr:`~Context.Emax` should always be " +"set to the maximum values, :attr:`~Context.clamp` should always be 0 (the " +"default). Setting :attr:`~Context.prec` requires some care." msgstr "" msgid "" diff --git a/library/development.po b/library/development.po index 62e1d51..26b0ca4 100644 --- a/library/development.po +++ b/library/development.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/devmode.po b/library/devmode.po index 08df503..99238ad 100644 --- a/library/devmode.po +++ b/library/devmode.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -78,9 +78,9 @@ msgid "" msgstr "" msgid "" -"Use the :option:`-W error <-W>` command line option or set the :envvar:" -"`PYTHONWARNINGS` environment variable to ``error`` to treat warnings as " -"errors." +"Use the :option:`-W error <-W>` command line option or set " +"the :envvar:`PYTHONWARNINGS` environment variable to ``error`` to treat " +"warnings as errors." msgstr "" msgid "Install debug hooks on memory allocators to check for:" @@ -114,9 +114,8 @@ msgstr "" msgid "" "Call :func:`faulthandler.enable` at Python startup to install handlers for " -"the :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal." -"SIGABRT`, :const:`~signal.SIGBUS` and :const:`~signal.SIGILL` signals to " -"dump the Python traceback on a crash." +"the :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS` " +"and :const:`~signal.SIGILL` signals to dump the Python traceback on a crash." msgstr "" msgid "" @@ -126,8 +125,9 @@ msgid "" msgstr "" msgid "" -"Enable :ref:`asyncio debug mode `. For example, :mod:" -"`asyncio` checks for coroutines that were not awaited and logs them." +"Enable :ref:`asyncio debug mode `. For " +"example, :mod:`asyncio` checks for coroutines that were not awaited and logs " +"them." msgstr "" msgid "" @@ -137,8 +137,8 @@ msgstr "" msgid "" "Check the *encoding* and *errors* arguments for string encoding and decoding " -"operations. Examples: :func:`open`, :meth:`str.encode` and :meth:`bytes." -"decode`." +"operations. Examples: :func:`open`, :meth:`str.encode` " +"and :meth:`bytes.decode`." msgstr "" msgid "" @@ -159,16 +159,16 @@ msgid "" "The Python Development Mode does not enable the :mod:`tracemalloc` module by " "default, because the overhead cost (to performance and memory) would be too " "large. Enabling the :mod:`tracemalloc` module provides additional " -"information on the origin of some errors. For example, :exc:" -"`ResourceWarning` logs the traceback where the resource was allocated, and a " -"buffer overflow error logs the traceback where the memory block was " -"allocated." +"information on the origin of some errors. For " +"example, :exc:`ResourceWarning` logs the traceback where the resource was " +"allocated, and a buffer overflow error logs the traceback where the memory " +"block was allocated." msgstr "" msgid "" "The Python Development Mode does not prevent the :option:`-O` command line " -"option from removing :keyword:`assert` statements nor from setting :const:" -"`__debug__` to ``False``." +"option from removing :keyword:`assert` statements nor from " +"setting :const:`__debug__` to ``False``." msgstr "" msgid "" @@ -223,8 +223,8 @@ msgstr "" msgid "" "$ python -X dev script.py README.txt\n" "269\n" -"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper name='README." -"rst' mode='r' encoding='UTF-8'>\n" +"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper " +"name='README.rst' mode='r' encoding='UTF-8'>\n" " main()\n" "ResourceWarning: Enable tracemalloc to get the object allocation traceback" msgstr "" @@ -237,8 +237,8 @@ msgstr "" msgid "" "$ python -X dev -X tracemalloc=5 script.py README.rst\n" "269\n" -"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper name='README." -"rst' mode='r' encoding='UTF-8'>\n" +"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper " +"name='README.rst' mode='r' encoding='UTF-8'>\n" " main()\n" "Object allocated at (most recent call last):\n" " File \"script.py\", lineno 10\n" @@ -301,8 +301,8 @@ msgstr "" msgid "" "$ python -X dev script.py\n" "import os\n" -"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper name='script." -"py' mode='r' encoding='UTF-8'>\n" +"script.py:10: ResourceWarning: unclosed file <_io.TextIOWrapper " +"name='script.py' mode='r' encoding='UTF-8'>\n" " main()\n" "ResourceWarning: Enable tracemalloc to get the object allocation traceback\n" "Exception ignored in: <_io.TextIOWrapper name='script.py' mode='r' " @@ -317,8 +317,8 @@ msgid "" "``os.close(fp.fileno())`` closes the file descriptor. When the file object " "finalizer tries to close the file descriptor again, it fails with the ``Bad " "file descriptor`` error. A file descriptor must be closed only once. In the " -"worst case scenario, closing it twice can lead to a crash (see :issue:" -"`18748` for an example)." +"worst case scenario, closing it twice can lead to a crash " +"(see :issue:`18748` for an example)." msgstr "" msgid "" diff --git a/library/dialog.po b/library/dialog.po index b6f6827..561bcb8 100644 --- a/library/dialog.po +++ b/library/dialog.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,10 +40,10 @@ msgstr "" msgid "" "*title* is the dialog title and *prompt* the message shown above the entry. " "*initialvalue* is the value initially placed in the entry. *parent* is the " -"window over which the dialog is shown. :func:`askinteger` and :func:" -"`askfloat` also accept *minvalue* and *maxvalue*, which bound the accepted " -"value. :func:`askstring` also accepts *show*, a character used to mask the " -"entered text, for example ``'*'`` to hide a password." +"window over which the dialog is shown. :func:`askinteger` " +"and :func:`askfloat` also accept *minvalue* and *maxvalue*, which bound the " +"accepted value. :func:`askstring` also accepts *show*, a character used to " +"mask the entered text, for example ``'*'`` to hide a password." msgstr "" msgid "" @@ -74,10 +74,10 @@ msgid "" msgstr "" msgid "" -"Process the data entered by the user, for example by storing it in the :attr:" -"`!result` attribute. Called after :meth:`validate` succeeds and just before " -"the dialog is destroyed. The default implementation does nothing; override " -"it to act on or store the result." +"Process the data entered by the user, for example by storing it in " +"the :attr:`!result` attribute. Called after :meth:`validate` succeeds and " +"just before the dialog is destroyed. The default implementation does " +"nothing; override it to act on or store the result." msgstr "" msgid "" @@ -169,9 +169,9 @@ msgstr "" msgid "" "Create an :class:`Open` dialog. :func:`askopenfilename` returns the selected " -"filename as a string, or an empty string if the dialog is cancelled. :func:" -"`askopenfilenames` returns a tuple of the selected filenames, or an empty " -"tuple if cancelled." +"filename as a string, or an empty string if the dialog is " +"cancelled. :func:`askopenfilenames` returns a tuple of the selected " +"filenames, or an empty tuple if cancelled." msgstr "" msgid "" @@ -239,8 +239,8 @@ msgstr "" msgid "" "Called when the user confirms the current selection. The base implementation " -"accepts the selection and closes the dialog; :class:`LoadFileDialog` and :" -"class:`SaveFileDialog` override it to check the selection first." +"accepts the selection and closes the dialog; :class:`LoadFileDialog` " +"and :class:`SaveFileDialog` override it to check the selection first." msgstr "" msgid "Exit dialog returning filename, if any." @@ -306,8 +306,8 @@ msgid "" "Display a modal dialog box built from the classic (non-themed) Tk widgets " "and wait for the user to press one of its buttons. The options, given " "through *cnf* or as keyword arguments, are all required: *title* (the window " -"title), *text* (the message), *bitmap* (the name of a bitmap icon, such as :" -"data:`DIALOG_ICON`), *default* (the index of the default button) and " +"title), *text* (the message), *bitmap* (the name of a bitmap icon, such " +"as :data:`DIALOG_ICON`), *default* (the index of the default button) and " "*strings* (the sequence of button labels). After construction, the :attr:`!" "num` attribute holds the index of the button the user pressed." msgstr "" diff --git a/library/difflib.po b/library/difflib.po index e7d8f8a..27d6c7e 100644 --- a/library/difflib.po +++ b/library/difflib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,27 +30,27 @@ msgstr "" msgid "" "This module provides classes and functions for comparing sequences. Most of " -"them compare sequences of text lines (for example lists of strings, or :term:" -"`file objects `) and produce :dfn:`diffs` -- reports on the " -"differences. Diffs can be produced in in various formats, including HTML and " -"context and unified diffs -- formats produced by tools like :manpage:`diff " -"` and :manpage:`git diff `." +"them compare sequences of text lines (for example lists of strings, " +"or :term:`file objects `) and produce :dfn:`diffs` -- reports " +"on the differences. Diffs can be produced in various formats, including HTML " +"and context and unified diffs -- formats produced by tools " +"like :manpage:`diff ` and :manpage:`git diff `." msgstr "" msgid "" -"Comparisons are done using a matching algorithm implemented in :class:" -"`SequenceMatcher` -- a flexible class for comparing pairs of sequences of " -"any type, not just text, so long as the sequence elements are :term:" -"`hashable`." +"Comparisons are done using a matching algorithm implemented " +"in :class:`SequenceMatcher` -- a flexible class for comparing pairs of " +"sequences of any type, not just text, so long as the sequence elements " +"are :term:`hashable`." msgstr "" msgid "Junk heuristic" msgstr "" msgid "" -":mod:`!difflib` uses a :dfn:`junk` heuristic: some items are deemed to be :" -"dfn:`junk`, and ignored when searching for similarities. Ideally, these are " -"uninteresting or common items, such as blank lines or whitespace." +":mod:`!difflib` uses a :dfn:`junk` heuristic: some items are deemed to " +"be :dfn:`junk`, and ignored when searching for similarities. Ideally, these " +"are uninteresting or common items, such as blank lines or whitespace." msgstr "" msgid "" @@ -78,9 +78,9 @@ msgstr "" msgid "" "Depending on your data, you should consider turning this heuristic off " -"(setting :class:`~difflib.SequenceMatcher`'s *autojunk* argument to to " -"``False``) or tuning it (using the *isjunk* argument, perhaps to one of the :" -"ref:`predefined functions `)." +"(setting :class:`~difflib.SequenceMatcher`'s *autojunk* argument to " +"``False``) or tuning it (using the *isjunk* argument, perhaps to one of " +"the :ref:`predefined functions `)." msgstr "" msgid "The :mod:`!difflib` algorithm" @@ -107,8 +107,8 @@ msgstr "" msgid "" "As an extension to the Ratcliff and Obershelp algorithm, :mod:`!difflib` " -"searches for the longest *junk-free* contiguous subsequence. See the :ref:" -"`difflib-junk` section for details." +"searches for the longest *junk-free* contiguous subsequence. See " +"the :ref:`difflib-junk` section for details." msgstr "" msgid "Timing" @@ -218,10 +218,10 @@ msgstr "" msgid "" "Each sequence must contain individual single-line strings ending with " -"newlines. Such sequences can be obtained from the :meth:`~io.IOBase." -"readlines` method of file-like objects. The generated delta also consists " -"of newline-terminated strings, ready to be printed as-is via the :meth:`~io." -"IOBase.writelines` method of a file-like object." +"newlines. Such sequences can be obtained from " +"the :meth:`~io.IOBase.readlines` method of file-like objects. The generated " +"delta also consists of newline-terminated strings, ready to be printed as-is " +"via the :meth:`~io.IOBase.writelines` method of a file-like object." msgstr "" msgid "" @@ -253,10 +253,10 @@ msgid "" msgstr "" msgid "" -"*linejunk* and *charjunk* are optional keyword arguments passed into :func:" -"`ndiff` (used by :class:`HtmlDiff` to generate the side by side HTML " -"differences). See :func:`ndiff` documentation for argument default values " -"and descriptions." +"*linejunk* and *charjunk* are optional keyword arguments passed " +"into :func:`ndiff` (used by :class:`HtmlDiff` to generate the side by side " +"HTML differences). See :func:`ndiff` documentation for argument default " +"values and descriptions." msgstr "" msgid "The following methods are public:" @@ -302,8 +302,8 @@ msgid "" msgstr "" msgid "" -"The arguments for this method are the same as those for the :meth:" -"`make_file` method." +"The arguments for this method are the same as those for " +"the :meth:`make_file` method." msgstr "" msgid "" @@ -490,8 +490,8 @@ msgstr "" msgid "" "The optional arguments *a* and *b* are sequences to be compared; both " -"default to empty strings. The elements of both sequences must be :term:" -"`hashable`." +"default to empty strings. The elements of both sequences must " +"be :term:`hashable`." msgstr "" msgid "" @@ -507,8 +507,8 @@ msgid "" "elements of *b* for which *isjunk* is ``True``; *bpopular* is the set of non-" "junk elements considered popular by the heuristic (if it is not disabled); " "*b2j* is a dict mapping the remaining elements of *b* to a list of positions " -"where they occur. All three are reset whenever *b* is reset with :meth:" -"`set_seqs` or :meth:`set_seq2`." +"where they occur. All three are reset whenever *b* is reset " +"with :meth:`set_seqs` or :meth:`set_seq2`." msgstr "" msgid "The *bjunk* and *bpopular* attributes." @@ -577,8 +577,8 @@ msgstr "" msgid "" "Return list of triples describing non-overlapping matching subsequences. " -"Each triple is of the form ``(i, j, n)``, and means that ``a[i:i+n] == b[j:" -"j+n]``. The triples are monotonically increasing in *i* and *j*." +"Each triple is of the form ``(i, j, n)``, and means that ``a[i:i+n] == " +"b[j:j+n]``. The triples are monotonically increasing in *i* and *j*." msgstr "" msgid "" @@ -674,9 +674,10 @@ msgid "" msgstr "" msgid "" -"This is expensive to compute if :meth:`get_matching_blocks` or :meth:" -"`get_opcodes` hasn't already been called, in which case you may want to try :" -"meth:`quick_ratio` or :meth:`real_quick_ratio` first to get an upper bound." +"This is expensive to compute if :meth:`get_matching_blocks` " +"or :meth:`get_opcodes` hasn't already been called, in which case you may " +"want to try :meth:`quick_ratio` or :meth:`real_quick_ratio` first to get an " +"upper bound." msgstr "" msgid "Return an upper bound on :meth:`ratio` relatively quickly." @@ -687,10 +688,10 @@ msgstr "" msgid "" "The three methods that return the ratio of matching to total characters can " -"give different results due to differing levels of approximation, although :" -"meth:`~SequenceMatcher.quick_ratio` and :meth:`~SequenceMatcher." -"real_quick_ratio` are always at least as large as :meth:`~SequenceMatcher." -"ratio`:" +"give different results due to differing levels of approximation, " +"although :meth:`~SequenceMatcher.quick_ratio` " +"and :meth:`~SequenceMatcher.real_quick_ratio` are always at least as large " +"as :meth:`~SequenceMatcher.ratio`:" msgstr "" msgid "Examples" @@ -704,25 +705,26 @@ msgstr "" msgid "" ":meth:`~SequenceMatcher.ratio` returns a float in [0, 1], measuring the " -"similarity of the sequences. As a rule of thumb, a :meth:`~SequenceMatcher." -"ratio` value over 0.6 means the sequences are close matches:" +"similarity of the sequences. As a rule of thumb, " +"a :meth:`~SequenceMatcher.ratio` value over 0.6 means the sequences are " +"close matches:" msgstr "" msgid "" -"If you're only interested in where the sequences match, :meth:" -"`~SequenceMatcher.get_matching_blocks` is handy:" +"If you're only interested in where the sequences " +"match, :meth:`~SequenceMatcher.get_matching_blocks` is handy:" msgstr "" msgid "" -"Note that the last tuple returned by :meth:`~SequenceMatcher." -"get_matching_blocks` is always a dummy, ``(len(a), len(b), 0)``, and this is " -"the only case in which the last tuple element (number of elements matched) " -"is ``0``." +"Note that the last tuple returned " +"by :meth:`~SequenceMatcher.get_matching_blocks` is always a dummy, " +"``(len(a), len(b), 0)``, and this is the only case in which the last tuple " +"element (number of elements matched) is ``0``." msgstr "" msgid "" -"If you want to know how to change the first sequence into the second, use :" -"meth:`~SequenceMatcher.get_opcodes`:" +"If you want to know how to change the first sequence into the second, " +"use :meth:`~SequenceMatcher.get_opcodes`:" msgstr "" msgid "" @@ -732,8 +734,8 @@ msgstr "" msgid "" "`Simple version control recipe `_ for a small application built with :class:" -"`SequenceMatcher`." +"simple-version-control/>`_ for a small application built " +"with :class:`SequenceMatcher`." msgstr "" msgid "Differ example" @@ -825,8 +827,8 @@ msgid "" " elif options.n:\n" " diff = difflib.ndiff(fromlines, tolines)\n" " elif options.m:\n" -" diff = difflib.HtmlDiff().make_file(fromlines,tolines,fromfile," -"tofile,context=options.c,numlines=n)\n" +" diff = " +"difflib.HtmlDiff().make_file(fromlines,tolines,fromfile,tofile,context=options.c,numlines=n)\n" " else:\n" " diff = difflib.context_diff(fromlines, tolines, fromfile, tofile, " "fromdate, todate, n=n)\n" @@ -870,8 +872,8 @@ msgid "" "confusing if the source files contain tab characters.\n" "\n" "The first file can be recovered by retaining only lines that begin with\n" -"\" \" or \"- \", and deleting those 2-character prefixes; use ndiff with -" -"r1.\n" +"\" \" or \"- \", and deleting those 2-character prefixes; use ndiff with " +"-r1.\n" "\n" "The second file can be recovered similarly, but by retaining only \" \" " "and\n" diff --git a/library/dis.po b/library/dis.po index 48683cc..a63898c 100644 --- a/library/dis.po +++ b/library/dis.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,8 +64,8 @@ msgstr "" msgid "" "The argument of a jump is the offset of the target instruction relative to " -"the instruction that appears immediately after the jump instruction's :" -"opcode:`CACHE` entries." +"the instruction that appears immediately after the jump " +"instruction's :opcode:`CACHE` entries." msgstr "" msgid "" @@ -151,9 +152,9 @@ msgid "Bytecode analysis" msgstr "" msgid "" -"The bytecode analysis API allows pieces of Python code to be wrapped in a :" -"class:`Bytecode` object that provides easy access to details of the compiled " -"code." +"The bytecode analysis API allows pieces of Python code to be wrapped in " +"a :class:`Bytecode` object that provides easy access to details of the " +"compiled code." msgstr "" msgid "" @@ -213,8 +214,8 @@ msgid "The first source line of the code object (if available)" msgstr "" msgid "" -"Return a formatted view of the bytecode operations (the same as printed by :" -"func:`dis.dis`, but returned as a multi-line string)." +"Return a formatted view of the bytecode operations (the same as printed " +"by :func:`dis.dis`, but returned as a multi-line string)." msgstr "" msgid "" @@ -376,7 +377,7 @@ msgid "" "the details of each operation in the supplied code." msgstr "" -msgid "The *adaptive* parameter works as it does in :func:`dis`." +msgid "The *adaptive* parameter works as it does in :func:`~dis.dis`." msgstr "" msgid "" @@ -387,18 +388,18 @@ msgid "" msgstr "" msgid "" -"This generator function uses the :meth:`~codeobject.co_lines` method of the :" -"ref:`code object ` *code* to find the offsets which are starts " -"of lines in the source code. They are generated as ``(offset, lineno)`` " -"pairs." +"This generator function uses the :meth:`~codeobject.co_lines` method of " +"the :ref:`code object ` *code* to find the offsets which are " +"starts of lines in the source code. They are generated as ``(offset, " +"lineno)`` pairs." msgstr "" msgid "Line numbers can be decreasing. Before, they were always increasing." msgstr "" msgid "" -"The :pep:`626` :meth:`~codeobject.co_lines` method is used instead of the :" -"attr:`~codeobject.co_firstlineno` and :attr:`!codeobject.co_lnotab` " +"The :pep:`626` :meth:`~codeobject.co_lines` method is used instead of " +"the :attr:`~codeobject.co_firstlineno` and :attr:`!codeobject.co_lnotab` " "attributes of the :ref:`code object `." msgstr "" @@ -550,9 +551,9 @@ msgid "" msgstr "" msgid "" -"Do nothing code. Used by the interpreter to record :monitoring-event:" -"`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT` events for :mod:`sys." -"monitoring`." +"Do nothing code. Used by the interpreter to record :monitoring-" +"event:`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT` events " +"for :mod:`sys.monitoring`." msgstr "" msgid "Removes the iterator from the top of the stack." @@ -747,10 +748,10 @@ msgid "" msgstr "" msgid "" -"Handles an exception raised during a :meth:`~generator.throw` or :meth:" -"`~generator.close` call through the current frame. If ``STACK[-1]`` is an " -"instance of :exc:`StopIteration`, pop three values from the stack and push " -"its ``value`` member. Otherwise, re-raise ``STACK[-1]``." +"Handles an exception raised during a :meth:`~generator.throw` " +"or :meth:`~generator.close` call through the current frame. If " +"``STACK[-1]`` is an instance of :exc:`StopIteration`, pop three values from " +"the stack and push its ``value`` member. Otherwise, re-raise ``STACK[-1]``." msgstr "" msgid "**Miscellaneous opcodes**" @@ -787,10 +788,10 @@ msgid "" msgstr "" msgid "" -"For all of the :opcode:`SET_ADD`, :opcode:`LIST_APPEND` and :opcode:" -"`MAP_ADD` instructions, while the added value or key/value pair is popped " -"off, the container object remains on the stack so that it is available for " -"further iterations of the loop." +"For all of the :opcode:`SET_ADD`, :opcode:`LIST_APPEND` " +"and :opcode:`MAP_ADD` instructions, while the added value or key/value pair " +"is popped off, the container object remains on the stack so that it is " +"available for further iterations of the loop." msgstr "" msgid "Returns with ``STACK[-1]`` to the caller of the function." @@ -825,8 +826,8 @@ msgstr "" msgid "" "Re-raises the exception currently on top of the stack. If oparg is non-zero, " -"pops an additional value from the stack which is used to set :attr:`~frame." -"f_lasti` of the current frame." +"pops an additional value from the stack which is used to " +"set :attr:`~frame.f_lasti` of the current frame." msgstr "" msgid "" @@ -867,8 +868,8 @@ msgstr "" msgid "" "Pushes a common constant onto the stack. The interpreter contains a " -"hardcoded list of constants supported by this instruction. Used by the :" -"keyword:`assert` statement to load :exc:`AssertionError`." +"hardcoded list of constants supported by this instruction. Used by " +"the :keyword:`assert` statement to load :exc:`AssertionError`." msgstr "" msgid "" @@ -898,8 +899,9 @@ msgstr "" msgid "" "``STACK[-1]`` is a tuple of mapping keys, and ``STACK[-2]`` is the match " -"subject. If ``STACK[-2]`` contains all of the keys in ``STACK[-1]``, push a :" -"class:`tuple` containing the corresponding values. Otherwise, push ``None``." +"subject. If ``STACK[-2]`` contains all of the keys in ``STACK[-1]``, push " +"a :class:`tuple` containing the corresponding values. Otherwise, push " +"``None``." msgstr "" msgid "" @@ -910,13 +912,14 @@ msgstr "" msgid "" "Implements ``name = STACK.pop()``. *namei* is the index of *name* in the " "attribute :attr:`~codeobject.co_names` of the :ref:`code object `. The compiler tries to use :opcode:`STORE_FAST` or :opcode:" -"`STORE_GLOBAL` if possible." +"objects>`. The compiler tries to use :opcode:`STORE_FAST` " +"or :opcode:`STORE_GLOBAL` if possible." msgstr "" msgid "" -"Implements ``del name``, where *namei* is the index into :attr:`~codeobject." -"co_names` attribute of the :ref:`code object `." +"Implements ``del name``, where *namei* is the index " +"into :attr:`~codeobject.co_names` attribute of the :ref:`code object `." msgstr "" msgid "" @@ -959,8 +962,8 @@ msgid "" msgstr "" msgid "" -"where *namei* is the index of name in :attr:`~codeobject.co_names` of the :" -"ref:`code object `." +"where *namei* is the index of name in :attr:`~codeobject.co_names` of " +"the :ref:`code object `." msgstr "" msgid "" @@ -969,8 +972,8 @@ msgid "" msgstr "" msgid "" -"where *namei* is the index of name into :attr:`~codeobject.co_names` of the :" -"ref:`code object `." +"where *namei* is the index of name into :attr:`~codeobject.co_names` of " +"the :ref:`code object `." msgstr "" msgid "Works as :opcode:`STORE_NAME`, but stores the name as a global." @@ -993,8 +996,8 @@ msgstr "" msgid "" "Pushes a reference to the locals dictionary onto the stack. This is used to " -"prepare namespace dictionaries for :opcode:`LOAD_FROM_DICT_OR_DEREF` and :" -"opcode:`LOAD_FROM_DICT_OR_GLOBALS`." +"prepare namespace dictionaries for :opcode:`LOAD_FROM_DICT_OR_DEREF` " +"and :opcode:`LOAD_FROM_DICT_OR_GLOBALS`." msgstr "" msgid "" @@ -1160,9 +1163,9 @@ msgid "" msgstr "" msgid "" -"The low bit of ``namei`` signals to attempt a method load, as with :opcode:" -"`LOAD_ATTR`, which results in pushing ``NULL`` and the loaded method. When " -"it is unset a single value is pushed to the stack." +"The low bit of ``namei`` signals to attempt a method load, as " +"with :opcode:`LOAD_ATTR`, which results in pushing ``NULL`` and the loaded " +"method. When it is unset a single value is pushed to the stack." msgstr "" msgid "" @@ -1177,8 +1180,8 @@ msgid "" msgstr "" msgid "" -"The fifth-lowest bit of the oparg now indicates a forced conversion to :" -"class:`bool`." +"The fifth-lowest bit of the oparg now indicates a forced conversion " +"to :class:`bool`." msgstr "" msgid "Performs ``is`` comparison, or ``is not`` if ``invert`` is 1." @@ -1189,10 +1192,10 @@ msgstr "" msgid "" "Imports the module ``co_names[namei]``. ``STACK[-1]`` and ``STACK[-2]`` are " -"popped and provide the *fromlist* and *level* arguments of :func:" -"`__import__`. The module object is pushed onto the stack. The current " -"namespace is not affected: for a proper import statement, a subsequent :" -"opcode:`STORE_FAST` instruction modifies the namespace." +"popped and provide the *fromlist* and *level* arguments " +"of :func:`__import__`. The module object is pushed onto the stack. The " +"current namespace is not affected: for a proper import statement, a " +"subsequent :opcode:`STORE_FAST` instruction modifies the namespace." msgstr "" msgid "" @@ -1242,19 +1245,24 @@ msgstr "" msgid "" "``STACK[-1]`` is an :term:`iterator`. Call its :meth:`~iterator.__next__` " "method. If this yields a new value, push it on the stack (leaving the " -"iterator below it). If the iterator indicates it is exhausted then the byte " -"code counter is incremented by *delta*." +"iterator below it). If the iterator indicates it is :term:`exhausted` then " +"the byte code counter is incremented by *delta*." msgstr "" msgid "Up until 3.11 the iterator was popped when it was exhausted." msgstr "" -msgid "Loads the global named ``co_names[namei>>1]`` onto the stack." +msgid "" +"Loads the global named ``co_names[namei>>1]`` onto the stack. If the low bit " +"of ``namei`` is set, a ``NULL`` is pushed onto the stack after the global " +"variable." +msgstr "" + +msgid "The low bit of ``namei`` indicates whether a ``NULL`` is pushed." msgstr "" msgid "" -"If the low bit of ``namei`` is set, then a ``NULL`` is pushed to the stack " -"before the global variable." +"The ``NULL`` is pushed after the global variable, rather than before it." msgstr "" msgid "" @@ -1327,8 +1335,8 @@ msgstr "" msgid "" "Pops a mapping off the stack and looks up the name associated with slot " "``i`` of the \"fast locals\" storage in this mapping. If the name is not " -"found there, loads it from the cell contained in slot ``i``, similar to :" -"opcode:`LOAD_DEREF`. This is used for loading :term:`closure variables " +"found there, loads it from the cell contained in slot ``i``, similar " +"to :opcode:`LOAD_DEREF`. This is used for loading :term:`closure variables " "` in class bodies (which previously used :opcode:`!" "LOAD_CLASSDEREF`) and in :ref:`annotation scopes ` within " "class bodies." @@ -1765,10 +1773,10 @@ msgid "Sets the ``__type_params__`` attribute of a function." msgstr "" msgid "" -"Performs special method lookup on ``STACK[-1]``. If ``type(STACK[-1])." -"__xxx__`` is a method, leave ``type(STACK[-1]).__xxx__; STACK[-1]`` on the " -"stack. If ``type(STACK[-1]).__xxx__`` is not a method, leave ``STACK[-1]." -"__xxx__; NULL`` on the stack." +"Performs special method lookup on ``STACK[-1]``. If " +"``type(STACK[-1]).__xxx__`` is a method, leave ``type(STACK[-1]).__xxx__; " +"STACK[-1]`` on the stack. If ``type(STACK[-1]).__xxx__`` is not a method, " +"leave ``STACK[-1].__xxx__; NULL`` on the stack." msgstr "" msgid "**Pseudo-instructions**" @@ -1802,8 +1810,9 @@ msgstr "" msgid "" "This variant is used in :keyword:`with` and :keyword:`async with` " -"constructs, which push the return value of the context manager's :meth:" -"`~object.__enter__` or :meth:`~object.__aenter__` to the stack." +"constructs, which push the return value of the context " +"manager's :meth:`~object.__enter__` or :meth:`~object.__aenter__` to the " +"stack." msgstr "" msgid "" diff --git a/library/distribution.po b/library/distribution.po index 553ceba..f2de382 100644 --- a/library/distribution.po +++ b/library/distribution.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/distutils.po b/library/distutils.po index bf898e5..d4e8d4b 100644 --- a/library/distutils.po +++ b/library/distutils.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,10 +22,11 @@ msgid ":mod:`!distutils` --- Building and installing Python modules" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.12 ` after being " -"deprecated in Python 3.10. The removal was decided in :pep:`632`, which has " -"`migration advice `_." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.12 ` after " +"being deprecated in Python 3.10. The removal was decided in :pep:`632`, " +"which has `migration advice `_." msgstr "" msgid "" diff --git a/library/doctest.po b/library/doctest.po index 84272e9..fec15ee 100644 --- a/library/doctest.po +++ b/library/doctest.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -219,9 +219,9 @@ msgstr "" msgid "" "You can force verbose mode by passing ``verbose=True`` to :func:`testmod`, " -"or prohibit it by passing ``verbose=False``. In either of those cases, :" -"data:`sys.argv` is not examined by :func:`testmod` (so passing ``-v`` or not " -"has no effect)." +"or prohibit it by passing ``verbose=False``. In either of those " +"cases, :data:`sys.argv` is not examined by :func:`testmod` (so passing ``-" +"v`` or not has no effect)." msgstr "" msgid "" @@ -290,8 +290,8 @@ msgstr "" msgid "" "As with :func:`testmod`, :func:`testfile` won't display anything unless an " "example fails. If an example does fail, then the failing example(s) and the " -"cause(s) of the failure(s) are printed to stdout, using the same format as :" -"func:`!testmod`." +"cause(s) of the failure(s) are printed to stdout, using the same format " +"as :func:`!testmod`." msgstr "" msgid "" @@ -335,9 +335,9 @@ msgid "python -m doctest -v example.py" msgstr "" msgid "" -"This will import :file:`example.py` as a standalone module and run :func:" -"`testmod` on it. Note that this may not work correctly if the file is part " -"of a package and imports other submodules from that package." +"This will import :file:`example.py` as a standalone module and " +"run :func:`testmod` on it. Note that this may not work correctly if the file " +"is part of a package and imports other submodules from that package." msgstr "" msgid "" @@ -349,8 +349,8 @@ msgid "python -m doctest -v example.txt" msgstr "" msgid "" -"Option flags control various aspects of doctest's behavior, see section :ref:" -"`doctest-options`." +"Option flags control various aspects of doctest's behavior, see " +"section :ref:`doctest-options`." msgstr "" msgid "This is shorthand for ``-o FAIL_FAST``." @@ -382,10 +382,10 @@ msgid "" "the docstring. Doctest looks for a module-level variable called ``__test__`` " "and uses it to locate other tests. If ``M.__test__`` exists, it must be a " "dict, and each entry maps a (string) name to a function object, class " -"object, or string. Function and class object docstrings found from ``M." -"__test__`` are searched, and strings are treated as if they were " -"docstrings. In output, a key ``K`` in ``M.__test__`` appears with name ``M." -"__test__.K``." +"object, or string. Function and class object docstrings found from " +"``M.__test__`` are searched, and strings are treated as if they were " +"docstrings. In output, a key ``K`` in ``M.__test__`` appears with name " +"``M.__test__.K``." msgstr "" msgid "For example, place this block of code at the top of :file:`example.py`:" @@ -406,8 +406,8 @@ msgstr "" msgid "" "The value of ``example.__test__[\"numbers\"]`` will be treated as a " "docstring and all the tests inside it will be run. It is important to note " -"that the value can be mapped to a function, class object, or module; if so, :" -"mod:`!doctest` searches them recursively for docstrings, which are then " +"that the value can be mapped to a function, class object, or module; if " +"so, :mod:`!doctest` searches them recursively for docstrings, which are then " "scanned for tests." msgstr "" @@ -473,14 +473,14 @@ msgid "" "All hard tab characters are expanded to spaces, using 8-column tab stops. " "Tabs in output generated by the tested code are not modified. Because any " "hard tabs in the sample output *are* expanded, this means that if the code " -"output includes hard tabs, the only way the doctest can pass is if the :" -"const:`NORMALIZE_WHITESPACE` option or :ref:`directive ` " -"is in effect. Alternatively, the test can be rewritten to capture the output " -"and compare it to an expected value as part of the test. This handling of " -"tabs in the source was arrived at through trial and error, and has proven to " -"be the least error prone way of handling them. It is possible to use a " -"different algorithm for handling tabs by writing a custom :class:" -"`DocTestParser` class." +"output includes hard tabs, the only way the doctest can pass is if " +"the :const:`NORMALIZE_WHITESPACE` option or :ref:`directive ` is in effect. Alternatively, the test can be rewritten to " +"capture the output and compare it to an expected value as part of the test. " +"This handling of tabs in the source was arrived at through trial and error, " +"and has proven to be the least error prone way of handling them. It is " +"possible to use a different algorithm for handling tabs by writing a " +"custom :class:`DocTestParser` class." msgstr "" msgid "" @@ -572,8 +572,8 @@ msgid "" msgstr "" msgid "" -"That doctest succeeds if :exc:`ValueError` is raised, with the ``list." -"remove(x): x not in list`` detail as shown." +"That doctest succeeds if :exc:`ValueError` is raised, with the " +"``list.remove(x): x not in list`` detail as shown." msgstr "" msgid "" @@ -631,10 +631,10 @@ msgstr "" msgid "" "Note that tracebacks are treated very specially. In particular, in the " -"rewritten example, the use of ``...`` is independent of doctest's :const:" -"`ELLIPSIS` option. The ellipsis in that example could be left out, or could " -"just as well be three (or three hundred) commas or digits, or an indented " -"transcript of a Monty Python skit." +"rewritten example, the use of ``...`` is independent of " +"doctest's :const:`ELLIPSIS` option. The ellipsis in that example could be " +"left out, or could just as well be three (or three hundred) commas or " +"digits, or an indented transcript of a Monty Python skit." msgstr "" msgid "Some details you should read once, but won't need to remember:" @@ -664,8 +664,8 @@ msgid "" msgstr "" msgid "" -"The interactive shell omits the traceback header line for some :exc:" -"`SyntaxError`\\ s. But doctest uses the traceback header line to " +"The interactive shell omits the traceback header line for " +"some :exc:`SyntaxError`\\ s. But doctest uses the traceback header line to " "distinguish exceptions from non-exceptions. So in the rare case where you " "need to test a :exc:`!SyntaxError` that omits the traceback header, you will " "need to manually add the traceback header line to your test example." @@ -704,11 +704,11 @@ msgstr "" msgid "" "A number of option flags control various aspects of doctest's behavior. " -"Symbolic names for the flags are supplied as module constants, which can be :" -"ref:`bitwise ORed ` together and passed to various functions. The " -"names can also be used in :ref:`doctest directives `, " -"and may be passed to the doctest command line interface via the ``-o`` " -"option." +"Symbolic names for the flags are supplied as module constants, which can " +"be :ref:`bitwise ORed ` together and passed to various functions. " +"The names can also be used in :ref:`doctest directives `, and may be passed to the doctest command line interface via " +"the ``-o`` option." msgstr "" msgid "" @@ -719,20 +719,21 @@ msgstr "" msgid "" "By default, if an expected output block contains just ``1``, an actual " "output block containing just ``1`` or just ``True`` is considered to be a " -"match, and similarly for ``0`` versus ``False``. When :const:" -"`DONT_ACCEPT_TRUE_FOR_1` is specified, neither substitution is allowed. The " -"default behavior caters to that Python changed the return type of many " -"functions from integer to boolean; doctests expecting \"little integer\" " -"output still work in these cases. This option will probably go away, but " -"not for several years." +"match, and similarly for ``0`` versus ``False``. " +"When :const:`DONT_ACCEPT_TRUE_FOR_1` is specified, neither substitution is " +"allowed. The default behavior caters to that Python changed the return type " +"of many functions from integer to boolean; doctests expecting \"little " +"integer\" output still work in these cases. This option will probably go " +"away, but not for several years." msgstr "" msgid "" "By default, if an expected output block contains a line containing only the " "string ````, then that line will match a blank line in the actual " "output. Because a genuinely blank line delimits the expected output, this " -"is the only way to communicate that a blank line is expected. When :const:" -"`DONT_ACCEPT_BLANKLINE` is specified, this substitution is not allowed." +"is the only way to communicate that a blank line is expected. " +"When :const:`DONT_ACCEPT_BLANKLINE` is specified, this substitution is not " +"allowed." msgstr "" msgid "" @@ -760,11 +761,11 @@ msgstr "" msgid "" "For example, an example expecting ``ValueError: 42`` will pass if the actual " -"exception raised is ``ValueError: 3*14``, but will fail if, say, a :exc:" -"`TypeError` is raised instead. It will also ignore any fully qualified name " -"included before the exception class, which can vary between implementations " -"and versions of Python and the code/libraries in use. Hence, all three of " -"these variations will work with the flag specified:" +"exception raised is ``ValueError: 3*14``, but will fail if, say, " +"a :exc:`TypeError` is raised instead. It will also ignore any fully " +"qualified name included before the exception class, which can vary between " +"implementations and versions of Python and the code/libraries in use. Hence, " +"all three of these variations will work with the flag specified:" msgstr "" msgid "" @@ -856,10 +857,10 @@ msgstr "" msgid "" "Create a new option flag with a given name, and return the new flag's " -"integer value. :func:`register_optionflag` can be used when subclassing :" -"class:`OutputChecker` or :class:`DocTestRunner` to create new options that " -"are supported by your subclasses. :func:`register_optionflag` should always " -"be called using the following idiom::" +"integer value. :func:`register_optionflag` can be used when " +"subclassing :class:`OutputChecker` or :class:`DocTestRunner` to create new " +"options that are supported by your subclasses. :func:`register_optionflag` " +"should always be called using the following idiom::" msgstr "" msgid "MY_FLAG = register_optionflag('MY_FLAG')" @@ -1120,8 +1121,9 @@ msgid "" msgstr "" msgid "" -"Optional argument *optionflags* (default value ``0``) takes the :ref:" -"`bitwise OR ` of option flags. See section :ref:`doctest-options`." +"Optional argument *optionflags* (default value ``0``) takes " +"the :ref:`bitwise OR ` of option flags. See section :ref:`doctest-" +"options`." msgstr "" msgid "" @@ -1154,10 +1156,10 @@ msgid "" msgstr "" msgid "" -"Also test examples reachable from dict ``m.__test__``, if it exists. ``m." -"__test__`` maps names (strings) to functions, classes and strings; function " -"and class docstrings are searched for examples; strings are searched " -"directly, as if they were docstrings." +"Also test examples reachable from dict ``m.__test__``, if it exists. " +"``m.__test__`` maps names (strings) to functions, classes and strings; " +"function and class docstrings are searched for examples; strings are " +"searched directly, as if they were docstrings." msgstr "" msgid "" @@ -1175,11 +1177,11 @@ msgstr "" msgid "" "Optional argument *exclude_empty* defaults to false. If true, objects for " "which no doctests are found are excluded from consideration. The default is " -"a backward compatibility hack, so that code still using :meth:`doctest." -"master.summarize ` in conjunction with :func:" -"`testmod` continues to get output for objects with no tests. The " -"*exclude_empty* argument to the newer :class:`DocTestFinder` constructor " -"defaults to true." +"a backward compatibility hack, so that code still " +"using :meth:`doctest.master.summarize ` in " +"conjunction with :func:`testmod` continues to get output for objects with no " +"tests. The *exclude_empty* argument to the newer :class:`DocTestFinder` " +"constructor defaults to true." msgstr "" msgid "" @@ -1248,19 +1250,19 @@ msgid "" msgstr "" msgid "" -"Convert doctest tests from one or more text files to a :class:`unittest." -"TestSuite`." +"Convert doctest tests from one or more text files to " +"a :class:`unittest.TestSuite`." msgstr "" msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs the interactive examples in each file. Each file is run " -"as a separate unit test, and each example in a file is run as a :ref:" -"`subtest `. If any example in a file fails, then the synthesized " -"unit test fails. The traceback for failure or error contains the name of the " -"file containing the test and a (sometimes approximate) line number. If all " -"the examples in a file are skipped, then the synthesized unit test is also " -"marked as skipped." +"as a separate unit test, and each example in a file is run as " +"a :ref:`subtest `. If any example in a file fails, then the " +"synthesized unit test fails. The traceback for failure or error contains the " +"name of the file containing the test and a (sometimes approximate) line " +"number. If all the examples in a file are skipped, then the synthesized unit " +"test is also marked as skipped." msgstr "" msgid "Pass one or more paths (as strings) to text files to be examined." @@ -1322,9 +1324,10 @@ msgstr "" msgid "" "Optional argument *optionflags* specifies the default doctest options for " -"the tests, created by or-ing together individual option flags. See section :" -"ref:`doctest-options`. See function :func:`set_unittest_reportflags` below " -"for a better way to set reporting options." +"the tests, created by or-ing together individual option flags. See " +"section :ref:`doctest-options`. See " +"function :func:`set_unittest_reportflags` below for a better way to set " +"reporting options." msgstr "" msgid "" @@ -1341,12 +1344,12 @@ msgstr "" msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs each doctest in the module. Each docstring is run as a " -"separate unit test, and each example in a docstring is run as a :ref:" -"`subtest `. If any of the doctests fail, then the synthesized unit " -"test fails. The traceback for failure or error contains the name of the file " -"containing the test and a (sometimes approximate) line number. If all the " -"examples in a docstring are skipped, then the synthesized unit test is also " -"marked as skipped." +"separate unit test, and each example in a docstring is run as " +"a :ref:`subtest `. If any of the doctests fail, then the " +"synthesized unit test fails. The traceback for failure or error contains the " +"name of the file containing the test and a (sometimes approximate) line " +"number. If all the examples in a docstring are skipped, then the synthesized " +"unit test is also marked as skipped." msgstr "" msgid "" @@ -1400,9 +1403,9 @@ msgid "" msgstr "" msgid "" -"So both ways of creating a :class:`unittest.TestSuite` run instances of :" -"class:`!DocTestCase`. This is important for a subtle reason: when you run :" -"mod:`!doctest` functions yourself, you can control the :mod:`!doctest` " +"So both ways of creating a :class:`unittest.TestSuite` run instances " +"of :class:`!DocTestCase`. This is important for a subtle reason: when you " +"run :mod:`!doctest` functions yourself, you can control the :mod:`!doctest` " "options in use directly, by passing option flags to :mod:`!doctest` " "functions. However, if you're writing a :mod:`unittest` framework, :mod:`!" "unittest` ultimately controls when and how tests get run. The framework " @@ -1427,14 +1430,15 @@ msgstr "" msgid "" "This is a module-global setting, and affects all future doctests run by " "module :mod:`unittest`: the :meth:`!runTest` method of :class:`!" -"DocTestCase` looks at the option flags specified for the test case when the :" -"class:`!DocTestCase` instance was constructed. If no reporting flags were " -"specified (which is the typical and expected case), :mod:`!doctest`'s :mod:`!" -"unittest` reporting flags are :ref:`bitwise ORed ` into the option " -"flags, and the option flags so augmented are passed to the :class:" -"`DocTestRunner` instance created to run the doctest. If any reporting flags " -"were specified when the :class:`!DocTestCase` instance was constructed, :mod:" -"`!doctest`'s :mod:`!unittest` reporting flags are ignored." +"DocTestCase` looks at the option flags specified for the test case when " +"the :class:`!DocTestCase` instance was constructed. If no reporting flags " +"were specified (which is the typical and expected case), :mod:`!" +"doctest`'s :mod:`!unittest` reporting flags are :ref:`bitwise ORed " +"` into the option flags, and the option flags so augmented are " +"passed to the :class:`DocTestRunner` instance created to run the doctest. " +"If any reporting flags were specified when the :class:`!DocTestCase` " +"instance was constructed, :mod:`!doctest`'s :mod:`!unittest` reporting flags " +"are ignored." msgstr "" msgid "" @@ -1473,9 +1477,9 @@ msgid "" msgstr "" msgid "" -":class:`DocTestFinder`: Finds all docstrings in a given module, and uses a :" -"class:`DocTestParser` to create a :class:`DocTest` from every docstring that " -"contains interactive examples." +":class:`DocTestFinder`: Finds all docstrings in a given module, and uses " +"a :class:`DocTestParser` to create a :class:`DocTest` from every docstring " +"that contains interactive examples." msgstr "" msgid "" @@ -1531,8 +1535,8 @@ msgstr "" msgid "" "The namespace (aka globals) that the examples should be run in. This is a " "dictionary mapping names to values. Any changes to the namespace made by " -"the examples (such as binding new variables) will be reflected in :attr:" -"`globs` after the test is run." +"the examples (such as binding new variables) will be reflected " +"in :attr:`globs` after the test is run." msgstr "" msgid "" @@ -1587,9 +1591,9 @@ msgstr "" msgid "" "The exception message generated by the example, if the example is expected " "to generate an exception; or ``None`` if it is not expected to generate an " -"exception. This exception message is compared against the return value of :" -"func:`traceback.format_exception_only`. :attr:`exc_msg` ends with a newline " -"unless it's ``None``. The constructor adds a newline if needed." +"exception. This exception message is compared against the return value " +"of :func:`traceback.format_exception_only`. :attr:`exc_msg` ends with a " +"newline unless it's ``None``. The constructor adds a newline if needed." msgstr "" msgid "" @@ -1637,8 +1641,9 @@ msgid "" msgstr "" msgid "" -"If the optional argument *exclude_empty* is false, then :meth:`DocTestFinder." -"find` will include tests for objects with empty docstrings." +"If the optional argument *exclude_empty* is false, " +"then :meth:`DocTestFinder.find` will include tests for objects with empty " +"docstrings." msgstr "" msgid ":class:`DocTestFinder` defines the following method:" @@ -1689,9 +1694,9 @@ msgid "" "The globals for each :class:`DocTest` is formed by combining *globs* and " "*extraglobs* (bindings in *extraglobs* override bindings in *globs*). A new " "shallow copy of the globals dictionary is created for each :class:`!" -"DocTest`. If *globs* is not specified, then it defaults to the module's :" -"attr:`~module.__dict__`, if specified, or ``{}`` otherwise. If *extraglobs* " -"is not specified, then it defaults to ``{}``." +"DocTest`. If *globs* is not specified, then it defaults to the " +"module's :attr:`~module.__dict__`, if specified, or ``{}`` otherwise. If " +"*extraglobs* is not specified, then it defaults to ``{}``." msgstr "" msgid "DocTestParser objects" @@ -1706,14 +1711,14 @@ msgid ":class:`DocTestParser` defines the following methods:" msgstr "" msgid "" -"Extract all doctest examples from the given string, and collect them into a :" -"class:`DocTest` object." +"Extract all doctest examples from the given string, and collect them into " +"a :class:`DocTest` object." msgstr "" msgid "" -"*globs*, *name*, *filename*, and *lineno* are attributes for the new :class:" -"`!DocTest` object. See the documentation for :class:`DocTest` for more " -"information." +"*globs*, *name*, *filename*, and *lineno* are attributes for the " +"new :class:`!DocTest` object. See the documentation for :class:`DocTest` " +"for more information." msgstr "" msgid "" @@ -1746,15 +1751,15 @@ msgid "DocTestRunner objects" msgstr "" msgid "" -"A processing class used to execute and verify the interactive examples in a :" -"class:`DocTest`." +"A processing class used to execute and verify the interactive examples in " +"a :class:`DocTest`." msgstr "" msgid "" -"The comparison between expected outputs and actual outputs is done by an :" -"class:`OutputChecker`. This comparison may be customized with a number of " -"option flags; see section :ref:`doctest-options` for more information. If " -"the option flags are insufficient, then the comparison may also be " +"The comparison between expected outputs and actual outputs is done by " +"an :class:`OutputChecker`. This comparison may be customized with a number " +"of option flags; see section :ref:`doctest-options` for more information. " +"If the option flags are insufficient, then the comparison may also be " "customized by passing a subclass of :class:`!OutputChecker` to the " "constructor." msgstr "" @@ -1762,11 +1767,12 @@ msgstr "" msgid "" "The test runner's display output can be controlled in two ways. First, an " "output function can be passed to :meth:`run`; this function will be called " -"with strings that should be displayed. It defaults to ``sys.stdout." -"write``. If capturing the output is not sufficient, then the display output " -"can be also customized by subclassing DocTestRunner, and overriding the " -"methods :meth:`report_skip`, :meth:`report_start`, :meth:`report_success`, :" -"meth:`report_unexpected_exception`, and :meth:`report_failure`." +"with strings that should be displayed. It defaults to " +"``sys.stdout.write``. If capturing the output is not sufficient, then the " +"display output can be also customized by subclassing DocTestRunner, and " +"overriding the " +"methods :meth:`report_skip`, :meth:`report_start`, :meth:`report_success`, :meth:`report_unexpected_exception`, " +"and :meth:`report_failure`." msgstr "" msgid "" @@ -1776,11 +1782,12 @@ msgid "" msgstr "" msgid "" -"The optional keyword argument *verbose* controls the :class:" -"`DocTestRunner`'s verbosity. If *verbose* is ``True``, then information is " -"printed about each example, as it is run. If *verbose* is ``False``, then " -"only failures are printed. If *verbose* is unspecified, or ``None``, then " -"verbose output is used iff the command-line switch ``-v`` is used." +"The optional keyword argument *verbose* controls " +"the :class:`DocTestRunner`'s verbosity. If *verbose* is ``True``, then " +"information is printed about each example, as it is run. If *verbose* is " +"``False``, then only failures are printed. If *verbose* is unspecified, or " +"``None``, then verbose output is used iff the command-line switch ``-v`` is " +"used." msgstr "" msgid "" @@ -1791,9 +1798,10 @@ msgstr "" msgid "" "The test runner accumulates statistics. The aggregated number of attempted, " -"failed and skipped examples is also available via the :attr:`tries`, :attr:" -"`failures` and :attr:`skips` attributes. The :meth:`run` and :meth:" -"`summarize` methods return a :class:`TestResults` instance." +"failed and skipped examples is also available via " +"the :attr:`tries`, :attr:`failures` and :attr:`skips` attributes. " +"The :meth:`run` and :meth:`summarize` methods return a :class:`TestResults` " +"instance." msgstr "" msgid ":class:`DocTestRunner` defines the following methods:" @@ -1807,8 +1815,8 @@ msgstr "" msgid "" "*example* is the example about to be processed. *test* is the test " -"containing *example*. *out* is the output function that was passed to :meth:" -"`DocTestRunner.run`." +"containing *example*. *out* is the output function that was passed " +"to :meth:`DocTestRunner.run`." msgstr "" msgid "" @@ -1843,9 +1851,9 @@ msgstr "" msgid "" "*example* is the example about to be processed. *exc_info* is a tuple " -"containing information about the unexpected exception (as returned by :func:" -"`sys.exc_info`). *test* is the test containing *example*. *out* is the " -"output function that was passed to :meth:`DocTestRunner.run`." +"containing information about the unexpected exception (as returned " +"by :func:`sys.exc_info`). *test* is the test containing *example*. *out* is " +"the output function that was passed to :meth:`DocTestRunner.run`." msgstr "" msgid "" @@ -1869,8 +1877,8 @@ msgstr "" msgid "" "The output of each example is checked using the :class:`DocTestRunner`'s " -"output checker, and the results are formatted by the :meth:`!DocTestRunner." -"report_\\*` methods." +"output checker, and the results are formatted by the :meth:`!" +"DocTestRunner.report_\\*` methods." msgstr "" msgid "" @@ -1901,10 +1909,10 @@ msgstr "" msgid "" "A class used to check the whether the actual output from a doctest example " -"matches the expected output. :class:`OutputChecker` defines two methods: :" -"meth:`check_output`, which compares a given pair of outputs, and returns " -"``True`` if they match; and :meth:`output_difference`, which returns a " -"string describing the differences between two outputs." +"matches the expected output. :class:`OutputChecker` defines two " +"methods: :meth:`check_output`, which compares a given pair of outputs, and " +"returns ``True`` if they match; and :meth:`output_difference`, which returns " +"a string describing the differences between two outputs." msgstr "" msgid ":class:`OutputChecker` defines the following methods:" @@ -1914,8 +1922,8 @@ msgid "" "Return ``True`` iff the actual output from an example (*got*) matches the " "expected output (*want*). These strings are always considered to match if " "they are identical; but depending on what option flags the test runner is " -"using, several non-exact match types are also possible. See section :ref:" -"`doctest-options` for more information about option flags." +"using, several non-exact match types are also possible. See " +"section :ref:`doctest-options` for more information about option flags." msgstr "" msgid "" @@ -1943,15 +1951,15 @@ msgid "" msgstr "" msgid "" -"The :mod:`unittest` cases generated by :func:`DocTestSuite` support the :" -"meth:`debug` method defined by :class:`unittest.TestCase`." +"The :mod:`unittest` cases generated by :func:`DocTestSuite` support " +"the :meth:`debug` method defined by :class:`unittest.TestCase`." msgstr "" msgid "" "You can add a call to :func:`pdb.set_trace` in a doctest example, and you'll " "drop into the Python debugger when that line is executed. Then you can " -"inspect current values of variables, and so on. For example, suppose :file:" -"`a.py` contains just this module docstring::" +"inspect current values of variables, and so on. For example, " +"suppose :file:`a.py` contains just this module docstring::" msgstr "" msgid "" @@ -2073,10 +2081,10 @@ msgid "Debug the doctests for an object." msgstr "" msgid "" -"The *module* and *name* arguments are the same as for function :func:" -"`testsource` above. The synthesized Python script for the named object's " -"docstring is written to a temporary file, and then that file is run under " -"the control of the Python debugger, :mod:`pdb`." +"The *module* and *name* arguments are the same as for " +"function :func:`testsource` above. The synthesized Python script for the " +"named object's docstring is written to a temporary file, and then that file " +"is run under the control of the Python debugger, :mod:`pdb`." msgstr "" msgid "" @@ -2088,8 +2096,8 @@ msgid "" "Optional argument *pm* controls whether post-mortem debugging is used. If " "*pm* has a true value, the script file is run directly, and the debugger " "gets involved only if the script terminates via raising an unhandled " -"exception. If it does, then post-mortem debugging is invoked, via :func:" -"`pdb.post_mortem`, passing the traceback object from the unhandled " +"exception. If it does, then post-mortem debugging is invoked, " +"via :func:`pdb.post_mortem`, passing the traceback object from the unhandled " "exception. If *pm* is not specified, or is false, the script is run under " "the debugger from the start, via passing an appropriate :func:`exec` call " "to :func:`pdb.run`." @@ -2123,11 +2131,11 @@ msgstr "" msgid "" "A subclass of :class:`DocTestRunner` that raises an exception as soon as a " -"failure is encountered. If an unexpected exception occurs, an :exc:" -"`UnexpectedException` exception is raised, containing the test, the example, " -"and the original exception. If the output doesn't match, then a :exc:" -"`DocTestFailure` exception is raised, containing the test, the example, and " -"the actual output." +"failure is encountered. If an unexpected exception occurs, " +"an :exc:`UnexpectedException` exception is raised, containing the test, the " +"example, and the original exception. If the output doesn't match, then " +"a :exc:`DocTestFailure` exception is raised, containing the test, the " +"example, and the actual output." msgstr "" msgid "" diff --git a/library/email.charset.po b/library/email.charset.po index ba6e10c..d9f5859 100644 --- a/library/email.charset.po +++ b/library/email.charset.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,8 +38,8 @@ msgid "" "This module provides a class :class:`Charset` for representing character " "sets and character set conversions in email messages, as well as a character " "set registry and several convenience methods for manipulating this registry. " -"Instances of :class:`Charset` are used in several other modules within the :" -"mod:`email` package." +"Instances of :class:`Charset` are used in several other modules within " +"the :mod:`email` package." msgstr "" msgid "Import this class from the :mod:`!email.charset` module." @@ -92,8 +92,8 @@ msgstr "" msgid "" "Same as *header_encoding*, but describes the encoding for the mail message's " -"body, which indeed may be different than the header encoding. ``charset." -"SHORTEST`` is not allowed for *body_encoding*." +"body, which indeed may be different than the header encoding. " +"``charset.SHORTEST`` is not allowed for *body_encoding*." msgstr "" msgid "" @@ -213,8 +213,8 @@ msgstr "" msgid "" "Optional *output_charset* is the character set that the output should be in. " "Conversions will proceed from input charset, to Unicode, to the output " -"charset when the method :meth:`Charset.convert` is called. The default is " -"to output in the same character set as the input." +"charset when the method :meth:`Charset.body_encode` is called. The default " +"is to output in the same character set as the input." msgstr "" msgid "" @@ -246,6 +246,6 @@ msgstr "" msgid "" "*charset* is the canonical name of a character set. *codecname* is the name " -"of a Python codec, as appropriate for the second argument to the :class:" -"`str`'s :meth:`~str.encode` method." +"of a Python codec, as appropriate for the second argument to " +"the :class:`str`'s :meth:`~str.encode` method." msgstr "" diff --git a/library/email.compat32-message.po b/library/email.compat32-message.po index ca76b31..5e4a5a0 100644 --- a/library/email.compat32-message.po +++ b/library/email.compat32-message.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,38 +23,38 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "" -":mod:`email.message.Message`: Representing an email message using the :data:" -"`~email.policy.compat32` API" +":mod:`email.message.Message`: Representing an email message using " +"the :data:`~email.policy.compat32` API" msgstr "" msgid "" -"The :class:`Message` class is very similar to the :class:`~email.message." -"EmailMessage` class, without the methods added by that class, and with the " -"default behavior of certain other methods being slightly different. We also " -"document here some methods that, while supported by the :class:`~email." -"message.EmailMessage` class, are not recommended unless you are dealing with " -"legacy code." +"The :class:`Message` class is very similar to " +"the :class:`~email.message.EmailMessage` class, without the methods added by " +"that class, and with the default behavior of certain other methods being " +"slightly different. We also document here some methods that, while " +"supported by the :class:`~email.message.EmailMessage` class, are not " +"recommended unless you are dealing with legacy code." msgstr "" msgid "The philosophy and structure of the two classes is otherwise the same." msgstr "" msgid "" -"This document describes the behavior under the default (for :class:" -"`Message`) policy :attr:`~email.policy.Compat32`. If you are going to use " -"another policy, you should be using the :class:`~email.message.EmailMessage` " -"class instead." +"This document describes the behavior under the default " +"(for :class:`Message`) policy :attr:`~email.policy.Compat32`. If you are " +"going to use another policy, you should be using " +"the :class:`~email.message.EmailMessage` class instead." msgstr "" msgid "" -"An email message consists of *headers* and a *payload*. Headers must be :" -"rfc:`5322` style names and values, where the field name and value are " +"An email message consists of *headers* and a *payload*. Headers must " +"be :rfc:`5322` style names and values, where the field name and value are " "separated by a colon. The colon is not part of either the field name or the " "field value. The payload may be a simple text message, or a binary object, " "or a structured sequence of sub-messages each with their own set of headers " "and their own payload. The latter type of payload is indicated by the " -"message having a MIME type such as :mimetype:`multipart/\\*` or :mimetype:" -"`message/rfc822`." +"message having a MIME type such as :mimetype:`multipart/\\*` " +"or :mimetype:`message/rfc822`." msgstr "" msgid "" @@ -71,8 +75,8 @@ msgid "" "matched case-insensitively. There may also be a single envelope header, " "also known as the *Unix-From* header or the ``From_`` header. The *payload* " "is either a string or bytes, in the case of simple message objects, or a " -"list of :class:`Message` objects, for MIME container documents (e.g. :" -"mimetype:`multipart/\\*` and :mimetype:`message/rfc822`)." +"list of :class:`Message` objects, for MIME container documents " +"(e.g. :mimetype:`multipart/\\*` and :mimetype:`message/rfc822`)." msgstr "" msgid "Here are the methods of the :class:`Message` class:" @@ -81,10 +85,10 @@ msgstr "" msgid "" "If *policy* is specified (it must be an instance of a :mod:`~email.policy` " "class) use the rules it specifies to update and serialize the representation " -"of the message. If *policy* is not set, use the :class:`compat32 ` policy, which maintains backward compatibility with the " -"Python 3.2 version of the email package. For more information see the :mod:" -"`~email.policy` documentation." +"of the message. If *policy* is not set, use the :class:`compat32 " +"` policy, which maintains backward compatibility with " +"the Python 3.2 version of the email package. For more information see " +"the :mod:`~email.policy` documentation." msgstr "" msgid "The *policy* keyword argument was added." @@ -112,9 +116,10 @@ msgid "" "Note that this method is provided as a convenience and may not always format " "the message the way you want. For example, by default it does not do the " "mangling of lines that begin with ``From`` that is required by the Unix mbox " -"format. For more flexibility, instantiate a :class:`~email.generator." -"Generator` instance and use its :meth:`~email.generator.Generator.flatten` " -"method directly. For example::" +"format. For more flexibility, instantiate " +"a :class:`~email.generator.Generator` instance and use " +"its :meth:`~email.generator.Generator.flatten` method directly. For " +"example::" msgstr "" msgid "" @@ -129,8 +134,8 @@ msgstr "" msgid "" "If the message object contains binary data that is not encoded according to " "RFC standards, the non-compliant data will be replaced by Unicode \"unknown " -"character\" code points. (See also :meth:`.as_bytes` and :class:`~email." -"generator.BytesGenerator`.)" +"character\" code points. (See also :meth:`.as_bytes` " +"and :class:`~email.generator.BytesGenerator`.)" msgstr "" msgid "the *policy* keyword argument was added." @@ -154,9 +159,10 @@ msgid "" "Note that this method is provided as a convenience and may not always format " "the message the way you want. For example, by default it does not do the " "mangling of lines that begin with ``From`` that is required by the Unix mbox " -"format. For more flexibility, instantiate a :class:`~email.generator." -"BytesGenerator` instance and use its :meth:`~email.generator.BytesGenerator." -"flatten` method directly. For example::" +"format. For more flexibility, instantiate " +"a :class:`~email.generator.BytesGenerator` instance and use " +"its :meth:`~email.generator.BytesGenerator.flatten` method directly. For " +"example::" msgstr "" msgid "" @@ -174,13 +180,14 @@ msgid "" msgstr "" msgid "" -"Return ``True`` if the message's payload is a list of sub-\\ :class:" -"`Message` objects, otherwise return ``False``. When :meth:`is_multipart` " -"returns ``False``, the payload should be a string object (which might be a " -"CTE encoded binary payload). (Note that :meth:`is_multipart` returning " -"``True`` does not necessarily mean that \"msg.get_content_maintype() == " -"'multipart'\" will return the ``True``. For example, ``is_multipart`` will " -"return ``True`` when the :class:`Message` is of type ``message/rfc822``.)" +"Return ``True`` if the message's payload is a list of sub-" +"\\ :class:`Message` objects, otherwise return ``False``. " +"When :meth:`is_multipart` returns ``False``, the payload should be a string " +"object (which might be a CTE encoded binary payload). (Note " +"that :meth:`is_multipart` returning ``True`` does not necessarily mean that " +"\"msg.get_content_maintype() == 'multipart'\" will return the ``True``. For " +"example, ``is_multipart`` will return ``True`` when the :class:`Message` is " +"of type ``message/rfc822``.)" msgstr "" msgid "" @@ -202,8 +209,9 @@ msgstr "" msgid "" "This is a legacy method. On the :class:`~email.message.EmailMessage` class " -"its functionality is replaced by :meth:`~email.message.EmailMessage." -"set_content` and the related ``make`` and ``add`` methods." +"its functionality is replaced " +"by :meth:`~email.message.EmailMessage.set_content` and the related ``make`` " +"and ``add`` methods." msgstr "" msgid "" @@ -218,8 +226,8 @@ msgid "" "element of the payload, counting from zero, if :meth:`is_multipart` is " "``True``. An :exc:`IndexError` will be raised if *i* is less than 0 or " "greater than or equal to the number of items in the payload. If the payload " -"is a string (i.e. :meth:`is_multipart` is ``False``) and *i* is given, a :" -"exc:`TypeError` is raised." +"is a string (i.e. :meth:`is_multipart` is ``False``) and *i* is given, " +"a :exc:`TypeError` is raised." msgstr "" msgid "" @@ -241,16 +249,18 @@ msgid "" "When *decode* is ``False`` (the default) the body is returned as a string " "without decoding the :mailheader:`Content-Transfer-Encoding`. However, for " "a :mailheader:`Content-Transfer-Encoding` of 8bit, an attempt is made to " -"decode the original bytes using the ``charset`` specified by the :mailheader:" -"`Content-Type` header, using the ``replace`` error handler. If no " -"``charset`` is specified, or if the ``charset`` given is not recognized by " -"the email package, the body is decoded using the default ASCII charset." +"decode the original bytes using the ``charset`` specified by " +"the :mailheader:`Content-Type` header, using the ``replace`` error handler. " +"If no ``charset`` is specified, or if the ``charset`` given is not " +"recognized by the email package, the body is decoded using the default ASCII " +"charset." msgstr "" msgid "" "This is a legacy method. On the :class:`~email.message.EmailMessage` class " -"its functionality is replaced by :meth:`~email.message.EmailMessage." -"get_content` and :meth:`~email.message.EmailMessage.iter_parts`." +"its functionality is replaced " +"by :meth:`~email.message.EmailMessage.get_content` " +"and :meth:`~email.message.EmailMessage.iter_parts`." msgstr "" msgid "" @@ -261,40 +271,40 @@ msgstr "" msgid "" "This is a legacy method. On the :class:`~email.message.EmailMessage` class " -"its functionality is replaced by :meth:`~email.message.EmailMessage." -"set_content`." +"its functionality is replaced " +"by :meth:`~email.message.EmailMessage.set_content`." msgstr "" msgid "" -"Set the character set of the payload to *charset*, which can either be a :" -"class:`~email.charset.Charset` instance (see :mod:`email.charset`), a string " -"naming a character set, or ``None``. If it is a string, it will be " +"Set the character set of the payload to *charset*, which can either be " +"a :class:`~email.charset.Charset` instance (see :mod:`email.charset`), a " +"string naming a character set, or ``None``. If it is a string, it will be " "converted to a :class:`~email.charset.Charset` instance. If *charset* is " -"``None``, the ``charset`` parameter will be removed from the :mailheader:" -"`Content-Type` header (the message will not be otherwise modified). " -"Anything else will generate a :exc:`TypeError`." +"``None``, the ``charset`` parameter will be removed from " +"the :mailheader:`Content-Type` header (the message will not be otherwise " +"modified). Anything else will generate a :exc:`TypeError`." msgstr "" msgid "" "If there is no existing :mailheader:`MIME-Version` header one will be " "added. If there is no existing :mailheader:`Content-Type` header, one will " -"be added with a value of :mimetype:`text/plain`. Whether the :mailheader:" -"`Content-Type` header already exists or not, its ``charset`` parameter will " -"be set to *charset.output_charset*. If *charset.input_charset* and " -"*charset.output_charset* differ, the payload will be re-encoded to the " -"*output_charset*. If there is no existing :mailheader:`Content-Transfer-" -"Encoding` header, then the payload will be transfer-encoded, if needed, " -"using the specified :class:`~email.charset.Charset`, and a header with the " -"appropriate value will be added. If a :mailheader:`Content-Transfer-" -"Encoding` header already exists, the payload is assumed to already be " -"correctly encoded using that :mailheader:`Content-Transfer-Encoding` and is " -"not modified." +"be added with a value of :mimetype:`text/plain`. Whether " +"the :mailheader:`Content-Type` header already exists or not, its ``charset`` " +"parameter will be set to *charset.output_charset*. If " +"*charset.input_charset* and *charset.output_charset* differ, the payload " +"will be re-encoded to the *output_charset*. If there is no " +"existing :mailheader:`Content-Transfer-Encoding` header, then the payload " +"will be transfer-encoded, if needed, using the " +"specified :class:`~email.charset.Charset`, and a header with the appropriate " +"value will be added. If a :mailheader:`Content-Transfer-Encoding` header " +"already exists, the payload is assumed to already be correctly encoded using " +"that :mailheader:`Content-Transfer-Encoding` and is not modified." msgstr "" msgid "" "This is a legacy method. On the :class:`~email.message.EmailMessage` class " -"its functionality is replaced by the *charset* parameter of the :meth:`email." -"message.EmailMessage.set_content` method." +"its functionality is replaced by the *charset* parameter of " +"the :meth:`email.message.EmailMessage.set_content` method." msgstr "" msgid "" @@ -313,10 +323,11 @@ msgid "" "differences between these methods and a normal mapping (i.e. dictionary) " "interface. For example, in a dictionary there are no duplicate keys, but " "here there may be duplicate message headers. Also, in dictionaries there is " -"no guaranteed order to the keys returned by :meth:`keys`, but in a :class:" -"`Message` object, headers are always returned in the order they appeared in " -"the original message, or were added to the message later. Any header " -"deleted and then re-added are always appended to the end of the header list." +"no guaranteed order to the keys returned by :meth:`keys`, but in " +"a :class:`Message` object, headers are always returned in the order they " +"appeared in the original message, or were added to the message later. Any " +"header deleted and then re-added are always appended to the end of the " +"header list." msgstr "" msgid "" @@ -352,8 +363,8 @@ msgstr "" msgid "" "Return the value of the named header field. *name* should not include the " -"colon field separator. If the header is missing, ``None`` is returned; a :" -"exc:`KeyError` is never raised." +"colon field separator. If the header is missing, ``None`` is returned; " +"a :exc:`KeyError` is never raised." msgstr "" msgid "" @@ -397,9 +408,9 @@ msgid "" msgstr "" msgid "" -"Return the value of the named header field. This is identical to :meth:" -"`~object.__getitem__` except that optional *failobj* is returned if the " -"named header is missing (defaults to ``None``)." +"Return the value of the named header field. This is identical " +"to :meth:`~object.__getitem__` except that optional *failobj* is returned if " +"the named header is missing (defaults to ``None``)." msgstr "" msgid "Here are some additional useful methods:" @@ -426,11 +437,11 @@ msgid "" "key will be added. If the value contains non-ASCII characters, it can be " "specified as a three tuple in the format ``(CHARSET, LANGUAGE, VALUE)``, " "where ``CHARSET`` is a string naming the charset to be used to encode the " -"value, ``LANGUAGE`` can usually be set to ``None`` or the empty string (see :" -"rfc:`2231` for other possibilities), and ``VALUE`` is the string value " +"value, ``LANGUAGE`` can usually be set to ``None`` or the empty string " +"(see :rfc:`2231` for other possibilities), and ``VALUE`` is the string value " "containing non-ASCII code points. If a three tuple is not passed and the " -"value contains non-ASCII characters, it is automatically encoded in :rfc:" -"`2231` format using a ``CHARSET`` of ``utf-8`` and a ``LANGUAGE`` of " +"value contains non-ASCII characters, it is automatically encoded " +"in :rfc:`2231` format using a ``CHARSET`` of ``utf-8`` and a ``LANGUAGE`` of " "``None``." msgstr "" @@ -469,11 +480,11 @@ msgstr "" msgid "" "Return the message's content type. The returned string is coerced to lower " -"case of the form :mimetype:`maintype/subtype`. If there was no :mailheader:" -"`Content-Type` header in the message the default type as given by :meth:" -"`get_default_type` will be returned. Since according to :rfc:`2045`, " -"messages always have a default type, :meth:`get_content_type` will always " -"return a value." +"case of the form :mimetype:`maintype/subtype`. If there was " +"no :mailheader:`Content-Type` header in the message the default type as " +"given by :meth:`get_default_type` will be returned. Since according " +"to :rfc:`2045`, messages always have a default " +"type, :meth:`get_content_type` will always return a value." msgstr "" msgid "" @@ -496,8 +507,8 @@ msgstr "" msgid "" "Return the default content type. Most messages have a default content type " -"of :mimetype:`text/plain`, except for messages that are subparts of :" -"mimetype:`multipart/digest` containers. Such subparts have a default " +"of :mimetype:`text/plain`, except for messages that are subparts " +"of :mimetype:`multipart/digest` containers. Such subparts have a default " "content type of :mimetype:`message/rfc822`." msgstr "" @@ -512,14 +523,15 @@ msgid "" "elements of the returned list are 2-tuples of key/value pairs, as split on " "the ``'='`` sign. The left hand side of the ``'='`` is the key, while the " "right hand side is the value. If there is no ``'='`` sign in the parameter " -"the value is the empty string, otherwise the value is as described in :meth:" -"`get_param` and is unquoted if optional *unquote* is ``True`` (the default)." +"the value is the empty string, otherwise the value is as described " +"in :meth:`get_param` and is unquoted if optional *unquote* is ``True`` (the " +"default)." msgstr "" msgid "" -"Optional *failobj* is the object to return if there is no :mailheader:" -"`Content-Type` header. Optional *header* is the header to search instead " -"of :mailheader:`Content-Type`." +"Optional *failobj* is the object to return if there is " +"no :mailheader:`Content-Type` header. Optional *header* is the header to " +"search instead of :mailheader:`Content-Type`." msgstr "" msgid "" @@ -536,8 +548,8 @@ msgid "" msgstr "" msgid "" -"Optional *header* if given, specifies the message header to use instead of :" -"mailheader:`Content-Type`." +"Optional *header* if given, specifies the message header to use instead " +"of :mailheader:`Content-Type`." msgstr "" msgid "" @@ -550,11 +562,12 @@ msgid "" msgstr "" msgid "" -"If your application doesn't care whether the parameter was encoded as in :" -"rfc:`2231`, you can collapse the parameter value by calling :func:`email." -"utils.collapse_rfc2231_value`, passing in the return value from :meth:" -"`get_param`. This will return a suitably decoded Unicode string when the " -"value is a tuple, or the original string unquoted if it isn't. For example::" +"If your application doesn't care whether the parameter was encoded as " +"in :rfc:`2231`, you can collapse the parameter value by " +"calling :func:`email.utils.collapse_rfc2231_value`, passing in the return " +"value from :meth:`get_param`. This will return a suitably decoded Unicode " +"string when the value is a tuple, or the original string unquoted if it " +"isn't. For example::" msgstr "" msgid "" @@ -602,8 +615,8 @@ msgid "" "Remove the given parameter completely from the :mailheader:`Content-Type` " "header. The header will be re-written in place without the parameter or its " "value. All values will be quoted as necessary unless *requote* is ``False`` " -"(the default is ``True``). Optional *header* specifies an alternative to :" -"mailheader:`Content-Type`." +"(the default is ``True``). Optional *header* specifies an alternative " +"to :mailheader:`Content-Type`." msgstr "" msgid "" @@ -620,9 +633,9 @@ msgid "" msgstr "" msgid "" -"An alternative header can be specified in the *header* argument. When the :" -"mailheader:`Content-Type` header is set a :mailheader:`MIME-Version` header " -"is also added." +"An alternative header can be specified in the *header* argument. When " +"the :mailheader:`Content-Type` header is set a :mailheader:`MIME-Version` " +"header is also added." msgstr "" msgid "" @@ -654,12 +667,12 @@ msgid "" msgstr "" msgid "" -"Note that using this method is subtly different than deleting the old :" -"mailheader:`Content-Type` header and adding a new one with the new boundary " -"via :meth:`add_header`, because :meth:`set_boundary` preserves the order of " -"the :mailheader:`Content-Type` header in the list of headers. However, it " -"does *not* preserve any continuation lines which may have been present in " -"the original :mailheader:`Content-Type` header." +"Note that using this method is subtly different than deleting the " +"old :mailheader:`Content-Type` header and adding a new one with the new " +"boundary via :meth:`add_header`, because :meth:`set_boundary` preserves the " +"order of the :mailheader:`Content-Type` header in the list of headers. " +"However, it does *not* preserve any continuation lines which may have been " +"present in the original :mailheader:`Content-Type` header." msgstr "" msgid "" @@ -669,8 +682,8 @@ msgid "" msgstr "" msgid "" -"Note that this method differs from :meth:`get_charset` which returns the :" -"class:`~email.charset.Charset` instance for the default encoding of the " +"Note that this method differs from :meth:`get_charset` which returns " +"the :class:`~email.charset.Charset` instance for the default encoding of the " "message body." msgstr "" @@ -689,10 +702,10 @@ msgid "" msgstr "" msgid "" -"Return the lowercased value (without parameters) of the message's :" -"mailheader:`Content-Disposition` header if it has one, or ``None``. The " -"possible values for this method are *inline*, *attachment* or ``None`` if " -"the message follows :rfc:`2183`." +"Return the lowercased value (without parameters) of the " +"message's :mailheader:`Content-Disposition` header if it has one, or " +"``None``. The possible values for this method are *inline*, *attachment* or " +"``None`` if the message follows :rfc:`2183`." msgstr "" msgid "" @@ -772,11 +785,12 @@ msgid "" "The *preamble* attribute contains this leading extra-armor text for MIME " "documents. When the :class:`~email.parser.Parser` discovers some text after " "the headers but before the first boundary string, it assigns this text to " -"the message's *preamble* attribute. When the :class:`~email.generator." -"Generator` is writing out the plain text representation of a MIME message, " -"and it finds the message has a *preamble* attribute, it will write this text " -"in the area between the headers and the first boundary. See :mod:`email." -"parser` and :mod:`email.generator` for details." +"the message's *preamble* attribute. When " +"the :class:`~email.generator.Generator` is writing out the plain text " +"representation of a MIME message, and it finds the message has a *preamble* " +"attribute, it will write this text in the area between the headers and the " +"first boundary. See :mod:`email.parser` and :mod:`email.generator` for " +"details." msgstr "" msgid "" @@ -791,8 +805,9 @@ msgid "" msgstr "" msgid "" -"You do not need to set the epilogue to the empty string in order for the :" -"class:`~email.generator.Generator` to print a newline at the end of the file." +"You do not need to set the epilogue to the empty string in order for " +"the :class:`~email.generator.Generator` to print a newline at the end of the " +"file." msgstr "" msgid "" diff --git a/library/email.contentmanager.po b/library/email.contentmanager.po index 149e942..71ba1c3 100644 --- a/library/email.contentmanager.po +++ b/library/email.contentmanager.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -83,8 +83,8 @@ msgid "the type itself (``typ``)" msgstr "" msgid "" -"the type's fully qualified name (``typ.__module__ + '.' + typ." -"__qualname__``)." +"the type's fully qualified name (``typ.__module__ + '.' + " +"typ.__qualname__``)." msgstr "" msgid "the type's :attr:`qualname ` (``typ.__qualname__``)" @@ -121,10 +121,11 @@ msgid "Content Manager Instances" msgstr "" msgid "" -"Currently the email package provides only one concrete content manager, :" -"data:`raw_data_manager`, although more may be added in the future. :data:" -"`raw_data_manager` is the :attr:`~email.policy.EmailPolicy.content_manager` " -"provided by :attr:`~email.policy.EmailPolicy` and its derivatives." +"Currently the email package provides only one concrete content " +"manager, :data:`raw_data_manager`, although more may be added in the " +"future. :data:`raw_data_manager` is " +"the :attr:`~email.policy.EmailPolicy.content_manager` provided " +"by :attr:`~email.policy.EmailPolicy` and its derivatives." msgstr "" msgid "" @@ -140,12 +141,12 @@ msgid "" msgstr "" msgid "" -"Return the payload of the part as either a string (for ``text`` parts), an :" -"class:`~email.message.EmailMessage` object (for ``message/rfc822`` parts), " -"or a ``bytes`` object (for all other non-multipart types). Raise a :exc:" -"`KeyError` if called on a ``multipart``. If the part is a ``text`` part and " -"*errors* is specified, use it as the error handler when decoding the payload " -"to a string. The default error handler is ``replace``." +"Return the payload of the part as either a string (for ``text`` parts), " +"an :class:`~email.message.EmailMessage` object (for ``message/rfc822`` " +"parts), or a ``bytes`` object (for all other non-multipart types). Raise " +"a :exc:`KeyError` if called on a ``multipart``. If the part is a ``text`` " +"part and *errors* is specified, use it as the error handler when decoding " +"the payload to a string. The default error handler is ``replace``." msgstr "" msgid "Add headers and payload to *msg*:" @@ -161,8 +162,8 @@ msgid "" msgstr "" msgid "" -"For ``bytes``, use the specified *maintype* and *subtype*, or raise a :exc:" -"`TypeError` if they are not specified." +"For ``bytes``, use the specified *maintype* and *subtype*, or raise " +"a :exc:`TypeError` if they are not specified." msgstr "" msgid "" @@ -211,8 +212,8 @@ msgstr "" msgid "" "A *cte* of ``binary`` does not actually work correctly yet. The " -"``EmailMessage`` object as modified by ``set_content`` is correct, but :" -"class:`~email.generator.BytesGenerator` does not serialize it correctly." +"``EmailMessage`` object as modified by ``set_content`` is correct, " +"but :class:`~email.generator.BytesGenerator` does not serialize it correctly." msgstr "" msgid "" @@ -235,8 +236,8 @@ msgstr "" msgid "" "If *params* is specified, iterate its ``items`` method and use the resulting " -"``(key, value)`` pairs to set additional parameters on the :mailheader:" -"`Content-Type` header." +"``(key, value)`` pairs to set additional parameters on " +"the :mailheader:`Content-Type` header." msgstr "" msgid "" diff --git a/library/email.encoders.po b/library/email.encoders.po index c08f17c..454a157 100644 --- a/library/email.encoders.po +++ b/library/email.encoders.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,8 +30,8 @@ msgstr "" msgid "" "This module is part of the legacy (``Compat32``) email API. In the new API " -"the functionality is provided by the *cte* parameter of the :meth:`~email." -"message.EmailMessage.set_content` method." +"the functionality is provided by the *cte* parameter of " +"the :meth:`~email.message.EmailMessage.set_content` method." msgstr "" msgid "" @@ -49,35 +49,35 @@ msgstr "" msgid "" "When creating :class:`~email.message.Message` objects from scratch, you " "often need to encode the payloads for transport through compliant mail " -"servers. This is especially true for :mimetype:`image/\\*` and :mimetype:" -"`text/\\*` type messages containing binary data." +"servers. This is especially true for :mimetype:`image/\\*` " +"and :mimetype:`text/\\*` type messages containing binary data." msgstr "" msgid "" "The :mod:`email` package provides some convenient encoders in its :mod:`!" -"encoders` module. These encoders are actually used by the :class:`~email." -"mime.audio.MIMEAudio` and :class:`~email.mime.image.MIMEImage` class " -"constructors to provide default encodings. All encoder functions take " -"exactly one argument, the message object to encode. They usually extract " -"the payload, encode it, and reset the payload to this newly encoded value. " -"They should also set the :mailheader:`Content-Transfer-Encoding` header as " -"appropriate." +"encoders` module. These encoders are actually used by " +"the :class:`~email.mime.audio.MIMEAudio` " +"and :class:`~email.mime.image.MIMEImage` class constructors to provide " +"default encodings. All encoder functions take exactly one argument, the " +"message object to encode. They usually extract the payload, encode it, and " +"reset the payload to this newly encoded value. They should also set " +"the :mailheader:`Content-Transfer-Encoding` header as appropriate." msgstr "" msgid "" "Note that these functions are not meaningful for a multipart message. They " -"must be applied to individual subparts instead, and will raise a :exc:" -"`TypeError` if passed a message whose type is multipart." +"must be applied to individual subparts instead, and will raise " +"a :exc:`TypeError` if passed a message whose type is multipart." msgstr "" msgid "Here are the encoding functions provided:" msgstr "" msgid "" -"Encodes the payload into quoted-printable form and sets the :mailheader:" -"`Content-Transfer-Encoding` header to ``quoted-printable`` [#]_. This is a " -"good encoding to use when most of your payload is normal printable data, but " -"contains a few unprintable characters." +"Encodes the payload into quoted-printable form and sets " +"the :mailheader:`Content-Transfer-Encoding` header to ``quoted-printable`` " +"[#]_. This is a good encoding to use when most of your payload is normal " +"printable data, but contains a few unprintable characters." msgstr "" msgid "" @@ -89,9 +89,9 @@ msgid "" msgstr "" msgid "" -"This doesn't actually modify the message's payload, but it does set the :" -"mailheader:`Content-Transfer-Encoding` header to either ``7bit`` or ``8bit`` " -"as appropriate, based on the payload data." +"This doesn't actually modify the message's payload, but it does set " +"the :mailheader:`Content-Transfer-Encoding` header to either ``7bit`` or " +"``8bit`` as appropriate, based on the payload data." msgstr "" msgid "" diff --git a/library/email.errors.po b/library/email.errors.po index 3db0844..b5b3479 100644 --- a/library/email.errors.po +++ b/library/email.errors.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,20 +36,22 @@ msgid "" msgstr "" msgid "" -"This is the base class for exceptions raised by the :class:`~email.parser." -"Parser` class. It is derived from :exc:`MessageError`. This class is also " -"used internally by the parser used by :mod:`~email.headerregistry`." +"This is the base class for exceptions raised by " +"the :class:`~email.parser.Parser` class. It is derived " +"from :exc:`MessageError`. This class is also used internally by the parser " +"used by :mod:`~email.headerregistry`." msgstr "" msgid "" "Raised under some error conditions when parsing the :rfc:`5322` headers of a " -"message, this class is derived from :exc:`MessageParseError`. The :meth:" -"`~email.message.EmailMessage.set_boundary` method will raise this error if " -"the content type is unknown when the method is called. :class:`~email.header." -"Header` may raise this error for certain base64 decoding errors, and when an " -"attempt is made to create a header that appears to contain an embedded " -"header (that is, there is what is supposed to be a continuation line that " -"has no leading whitespace and looks like a header)." +"message, this class is derived from :exc:`MessageParseError`. " +"The :meth:`~email.message.EmailMessage.set_boundary` method will raise this " +"error if the content type is unknown when the method is " +"called. :class:`~email.header.Header` may raise this error for certain " +"base64 decoding errors, and when an attempt is made to create a header that " +"appears to contain an embedded header (that is, there is what is supposed to " +"be a continuation line that has no leading whitespace and looks like a " +"header)." msgstr "" msgid "Deprecated and no longer used." @@ -57,10 +59,10 @@ msgstr "" msgid "" "Raised if the :meth:`~email.message.Message.attach` method is called on an " -"instance of a class derived from :class:`~email.mime.nonmultipart." -"MIMENonMultipart` (e.g. :class:`~email.mime.image.MIMEImage`). :exc:" -"`MultipartConversionError` multiply inherits from :exc:`MessageError` and " -"the built-in :exc:`TypeError`." +"instance of a class derived " +"from :class:`~email.mime.nonmultipart.MIMENonMultipart` " +"(e.g. :class:`~email.mime.image.MIMEImage`). :exc:`MultipartConversionError` " +"multiply inherits from :exc:`MessageError` and the built-in :exc:`TypeError`." msgstr "" msgid "" @@ -126,9 +128,9 @@ msgstr "" msgid "" "A message claimed to be a :mimetype:`multipart`, but no subparts were found. " -"Note that when a message has this defect, its :meth:`~email.message.Message." -"is_multipart` method may return ``False`` even though its content type " -"claims to be :mimetype:`multipart`." +"Note that when a message has this defect, " +"its :meth:`~email.message.Message.is_multipart` method may return ``False`` " +"even though its content type claims to be :mimetype:`multipart`." msgstr "" msgid "" diff --git a/library/email.examples.po b/library/email.examples.po index 993758a..e497869 100644 --- a/library/email.examples.po +++ b/library/email.examples.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -414,8 +414,8 @@ msgid "" " elif richest['content-type'].subtype == 'html':\n" " body = richest\n" " else:\n" -" print(\"Don't know how to display {}\".format(richest." -"get_content_type()))\n" +" print(\"Don't know how to display {}" +"\".format(richest.get_content_type()))\n" " sys.exit()\n" "elif richest['content-type'].content_type == 'multipart/related':\n" " body = richest.get_body(preferencelist=('html'))\n" @@ -431,8 +431,8 @@ msgid "" " # again strip the <> to go from email form of cid to html form.\n" " partfiles[part['content-id'][1:-1]] = f.name\n" "else:\n" -" print(\"Don't know how to display {}\".format(richest." -"get_content_type()))\n" +" print(\"Don't know how to display {}" +"\".format(richest.get_content_type()))\n" " sys.exit()\n" "with tempfile.NamedTemporaryFile(mode='w', delete=False) as f:\n" " f.write(magic_html_parser(body.get_content(), partfiles))\n" diff --git a/library/email.generator.po b/library/email.generator.po index 460f98a..e7b8090 100644 --- a/library/email.generator.po +++ b/library/email.generator.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,10 +31,10 @@ msgstr "" msgid "" "One of the most common tasks is to generate the flat (serialized) version of " "the email message represented by a message object structure. You will need " -"to do this if you want to send your message via :meth:`smtplib.SMTP." -"sendmail`, or print the message on the console. Taking a message object " -"structure and producing a serialized representation is the job of the " -"generator classes." +"to do this if you want to send your message " +"via :meth:`smtplib.SMTP.sendmail`, or print the message on the console. " +"Taking a message object structure and producing a serialized representation " +"is the job of the generator classes." msgstr "" msgid "" @@ -43,14 +43,14 @@ msgid "" "yourself. However the bundled generator knows how to generate most email in " "a standards-compliant way, should handle MIME and non-MIME email messages " "just fine, and is designed so that the bytes-oriented parsing and generation " -"operations are inverses, assuming the same non-transforming :mod:`~email." -"policy` is used for both. That is, parsing the serialized byte stream via " -"the :class:`~email.parser.BytesParser` class and then regenerating the " -"serialized byte stream using :class:`BytesGenerator` should produce output " -"identical to the input [#]_. (On the other hand, using the generator on an :" -"class:`~email.message.EmailMessage` constructed by program may result in " -"changes to the :class:`~email.message.EmailMessage` object as defaults are " -"filled in.)" +"operations are inverses, assuming the same non-" +"transforming :mod:`~email.policy` is used for both. That is, parsing the " +"serialized byte stream via the :class:`~email.parser.BytesParser` class and " +"then regenerating the serialized byte stream using :class:`BytesGenerator` " +"should produce output identical to the input [#]_. (On the other hand, " +"using the generator on an :class:`~email.message.EmailMessage` constructed " +"by program may result in changes to the :class:`~email.message.EmailMessage` " +"object as defaults are filled in.)" msgstr "" msgid "" @@ -63,9 +63,9 @@ msgid "" msgstr "" msgid "" -"To accommodate reproducible processing of SMIME-signed messages :class:" -"`Generator` disables header folding for message parts of type ``multipart/" -"signed`` and all subparts." +"To accommodate reproducible processing of SMIME-signed " +"messages :class:`Generator` disables header folding for message parts of " +"type ``multipart/signed`` and all subparts." msgstr "" msgid "" @@ -80,26 +80,26 @@ msgid "" "any line in the body that starts with the exact string ``\"From \"``, that " "is ``From`` followed by a space at the beginning of a line. *mangle_from_* " "defaults to the value of the :attr:`~email.policy.Policy.mangle_from_` " -"setting of the *policy* (which is ``True`` for the :data:`~email.policy." -"compat32` policy and ``False`` for all others). *mangle_from_* is intended " -"for use when messages are stored in Unix mbox format (see :mod:`mailbox` and " -"`WHY THE CONTENT-LENGTH FORMAT IS BAD `_)." +"setting of the *policy* (which is ``True`` for " +"the :data:`~email.policy.compat32` policy and ``False`` for all others). " +"*mangle_from_* is intended for use when messages are stored in Unix mbox " +"format (see :mod:`mailbox` and `WHY THE CONTENT-LENGTH FORMAT IS BAD " +"`_)." msgstr "" msgid "" "If *maxheaderlen* is not ``None``, refold any header lines that are longer " "than *maxheaderlen*, or if ``0``, do not rewrap any headers. If " -"*manheaderlen* is ``None`` (the default), wrap headers and other message " +"*maxheaderlen* is ``None`` (the default), wrap headers and other message " "lines according to the *policy* settings." msgstr "" msgid "" "If *policy* is specified, use that policy to control message generation. If " -"*policy* is ``None`` (the default), use the policy associated with the :" -"class:`~email.message.Message` or :class:`~email.message.EmailMessage` " -"object passed to ``flatten`` to control the message generation. See :mod:" -"`email.policy` for details on what *policy* controls." +"*policy* is ``None`` (the default), use the policy associated with " +"the :class:`~email.message.Message` or :class:`~email.message.EmailMessage` " +"object passed to ``flatten`` to control the message generation. " +"See :mod:`email.policy` for details on what *policy* controls." msgstr "" msgid "Added the *policy* keyword." @@ -120,15 +120,15 @@ msgid "" "If the :mod:`~email.policy` option :attr:`~email.policy.Policy.cte_type` is " "``8bit`` (the default), copy any headers in the original parsed message that " "have not been modified to the output with any bytes with the high bit set " -"reproduced as in the original, and preserve the non-ASCII :mailheader:" -"`Content-Transfer-Encoding` of any body parts that have them. If " -"``cte_type`` is ``7bit``, convert the bytes with the high bit set as needed " -"using an ASCII-compatible :mailheader:`Content-Transfer-Encoding`. That is, " -"transform parts with non-ASCII :mailheader:`Content-Transfer-Encoding` (:" -"mailheader:`Content-Transfer-Encoding: 8bit`) to an ASCII compatible :" -"mailheader:`Content-Transfer-Encoding`, and encode RFC-invalid non-ASCII " -"bytes in headers using the MIME ``unknown-8bit`` character set, thus " -"rendering them RFC-compliant." +"reproduced as in the original, and preserve the non-" +"ASCII :mailheader:`Content-Transfer-Encoding` of any body parts that have " +"them. If ``cte_type`` is ``7bit``, convert the bytes with the high bit set " +"as needed using an ASCII-compatible :mailheader:`Content-Transfer-Encoding`. " +"That is, transform parts with non-ASCII :mailheader:`Content-Transfer-" +"Encoding` (:mailheader:`Content-Transfer-Encoding: 8bit`) to an ASCII " +"compatible :mailheader:`Content-Transfer-Encoding`, and encode RFC-invalid " +"non-ASCII bytes in headers using the MIME ``unknown-8bit`` character set, " +"thus rendering them RFC-compliant." msgstr "" msgid "" @@ -152,26 +152,27 @@ msgstr "" msgid "" "Encode *s* using the ``ASCII`` codec and the ``surrogateescape`` error " -"handler, and pass it to the *write* method of the *outfp* passed to the :" -"class:`BytesGenerator`'s constructor." +"handler, and pass it to the *write* method of the *outfp* passed to " +"the :class:`BytesGenerator`'s constructor." msgstr "" msgid "" -"As a convenience, :class:`~email.message.EmailMessage` provides the methods :" -"meth:`~email.message.EmailMessage.as_bytes` and ``bytes(aMessage)`` (a.k.a. :" -"meth:`~email.message.EmailMessage.__bytes__`), which simplify the generation " -"of a serialized binary representation of a message object. For more detail, " -"see :mod:`email.message`." +"As a convenience, :class:`~email.message.EmailMessage` provides the " +"methods :meth:`~email.message.EmailMessage.as_bytes` and ``bytes(aMessage)`` " +"(a.k.a. :meth:`~email.message.EmailMessage.__bytes__`), which simplify the " +"generation of a serialized binary representation of a message object. For " +"more detail, see :mod:`email.message`." msgstr "" msgid "" "Because strings cannot represent binary data, the :class:`Generator` class " "must convert any binary data in any message it flattens to an ASCII " -"compatible format, by converting them to an ASCII compatible :mailheader:" -"`Content-Transfer_Encoding`. Using the terminology of the email RFCs, you " -"can think of this as :class:`Generator` serializing to an I/O stream that is " -"not \"8 bit clean\". In other words, most applications will want to be " -"using :class:`BytesGenerator`, and not :class:`Generator`." +"compatible format, by converting them to an ASCII " +"compatible :mailheader:`Content-Transfer-Encoding`. Using the terminology " +"of the email RFCs, you can think of this as :class:`Generator` serializing " +"to an I/O stream that is not \"8 bit clean\". In other words, most " +"applications will want to be using :class:`BytesGenerator`, and " +"not :class:`Generator`." msgstr "" msgid "" @@ -191,12 +192,13 @@ msgid "" "If the :mod:`~email.policy` option :attr:`~email.policy.Policy.cte_type` is " "``8bit``, generate the message as if the option were set to ``7bit``. (This " "is required because strings cannot represent non-ASCII bytes.) Convert any " -"bytes with the high bit set as needed using an ASCII-compatible :mailheader:" -"`Content-Transfer-Encoding`. That is, transform parts with non-ASCII :" -"mailheader:`Content-Transfer-Encoding` (:mailheader:`Content-Transfer-" -"Encoding: 8bit`) to an ASCII compatible :mailheader:`Content-Transfer-" -"Encoding`, and encode RFC-invalid non-ASCII bytes in headers using the MIME " -"``unknown-8bit`` character set, thus rendering them RFC-compliant." +"bytes with the high bit set as needed using an ASCII-" +"compatible :mailheader:`Content-Transfer-Encoding`. That is, transform " +"parts with non-ASCII :mailheader:`Content-Transfer-Encoding` " +"(:mailheader:`Content-Transfer-Encoding: 8bit`) to an ASCII " +"compatible :mailheader:`Content-Transfer-Encoding`, and encode RFC-invalid " +"non-ASCII bytes in headers using the MIME ``unknown-8bit`` character set, " +"thus rendering them RFC-compliant." msgstr "" msgid "" @@ -210,32 +212,33 @@ msgid "" msgstr "" msgid "" -"Write *s* to the *write* method of the *outfp* passed to the :class:" -"`Generator`'s constructor. This provides just enough file-like API for :" -"class:`Generator` instances to be used in the :func:`print` function." +"Write *s* to the *write* method of the *outfp* passed to " +"the :class:`Generator`'s constructor. This provides just enough file-like " +"API for :class:`Generator` instances to be used in the :func:`print` " +"function." msgstr "" msgid "" -"As a convenience, :class:`~email.message.EmailMessage` provides the methods :" -"meth:`~email.message.EmailMessage.as_string` and ``str(aMessage)`` (a.k.a. :" -"meth:`~email.message.EmailMessage.__str__`), which simplify the generation " -"of a formatted string representation of a message object. For more detail, " -"see :mod:`email.message`." +"As a convenience, :class:`~email.message.EmailMessage` provides the " +"methods :meth:`~email.message.EmailMessage.as_string` and ``str(aMessage)`` " +"(a.k.a. :meth:`~email.message.EmailMessage.__str__`), which simplify the " +"generation of a formatted string representation of a message object. For " +"more detail, see :mod:`email.message`." msgstr "" msgid "" -"The :mod:`!email.generator` module also provides a derived class, :class:" -"`DecodedGenerator`, which is like the :class:`Generator` base class, except " -"that non-\\ :mimetype:`text` parts are not serialized, but are instead " -"represented in the output stream by a string derived from a template filled " -"in with information about the part." +"The :mod:`!email.generator` module also provides a derived " +"class, :class:`DecodedGenerator`, which is like the :class:`Generator` base " +"class, except that non-\\ :mimetype:`text` parts are not serialized, but are " +"instead represented in the output stream by a string derived from a template " +"filled in with information about the part." msgstr "" msgid "" "Act like :class:`Generator`, except that for any subpart of the message " -"passed to :meth:`Generator.flatten`, if the subpart is of main type :" -"mimetype:`text`, print the decoded payload of the subpart, and if the main " -"type is not :mimetype:`text`, instead of printing it fill in the string " +"passed to :meth:`Generator.flatten`, if the subpart is of main " +"type :mimetype:`text`, print the decoded payload of the subpart, and if the " +"main type is not :mimetype:`text`, instead of printing it fill in the string " "*fmt* using information from the part and print the resulting filled-in " "string." msgstr "" @@ -274,8 +277,8 @@ msgid "" msgstr "" msgid "" -"Optional *_mangle_from_* and *maxheaderlen* are as with the :class:" -"`Generator` base class." +"Optional *mangle_from_* and *maxheaderlen* are as with " +"the :class:`Generator` base class." msgstr "" msgid "Footnotes" @@ -284,10 +287,10 @@ msgstr "" msgid "" "This statement assumes that you use the appropriate setting for " "``unixfrom``, and that there are no :mod:`email.policy` settings calling for " -"automatic adjustments (for example, :attr:`~email.policy.EmailPolicy." -"refold_source` must be ``none``, which is *not* the default). It is also " -"not 100% true, since if the message does not conform to the RFC standards " -"occasionally information about the exact original text is lost during " -"parsing error recovery. It is a goal to fix these latter edge cases when " -"possible." +"automatic adjustments (for " +"example, :attr:`~email.policy.EmailPolicy.refold_source` must be ``none``, " +"which is *not* the default). It is also not 100% true, since if the message " +"does not conform to the RFC standards occasionally information about the " +"exact original text is lost during parsing error recovery. It is a goal to " +"fix these latter edge cases when possible." msgstr "" diff --git a/library/email.header.po b/library/email.header.po index 5d09f92..fd97de5 100644 --- a/library/email.header.po +++ b/library/email.header.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,18 +52,19 @@ msgid "" "used in email messages. The base standard still requires email messages to " "be transferred using only 7-bit ASCII characters, so a slew of RFCs have " "been written describing how to encode email containing non-ASCII characters " -"into :rfc:`2822`\\ -compliant format. These RFCs include :rfc:`2045`, :rfc:" -"`2046`, :rfc:`2047`, and :rfc:`2231`. The :mod:`email` package supports " -"these standards in its :mod:`!email.header` and :mod:`email.charset` modules." +"into :rfc:`2822`\\ -compliant format. These RFCs " +"include :rfc:`2045`, :rfc:`2046`, :rfc:`2047`, and :rfc:`2231`. " +"The :mod:`email` package supports these standards in its :mod:`!" +"email.header` and :mod:`email.charset` modules." msgstr "" msgid "" "If you want to include non-ASCII characters in your email headers, say in " -"the :mailheader:`Subject` or :mailheader:`To` fields, you should use the :" -"class:`Header` class and assign the field in the :class:`~email.message." -"Message` object to an instance of :class:`Header` instead of using a string " -"for the header value. Import the :class:`Header` class from the :mod:`!" -"email.header` module. For example::" +"the :mailheader:`Subject` or :mailheader:`To` fields, you should use " +"the :class:`Header` class and assign the field in " +"the :class:`~email.message.Message` object to an instance of :class:`Header` " +"instead of using a string for the header value. Import the :class:`Header` " +"class from the :mod:`!email.header` module. For example::" msgstr "" msgid "" @@ -79,10 +80,11 @@ msgstr "" msgid "" "Notice here how we wanted the :mailheader:`Subject` field to contain a non-" "ASCII character? We did this by creating a :class:`Header` instance and " -"passing in the character set to use when encoding it. When the subsequent :" -"class:`~email.message.Message` instance was flattened, the :mailheader:" -"`Subject` field was properly :rfc:`2047` encoded. MIME-aware mail readers " -"would show this header using the embedded ISO-8859-1 character." +"passing in the character set to use when encoding it. When the " +"subsequent :class:`~email.message.Message` instance was flattened, " +"the :mailheader:`Subject` field was properly :rfc:`2047` encoded. MIME-" +"aware mail readers would show this header using the embedded ISO-8859-1 " +"character." msgstr "" msgid "Here is the :class:`Header` class description:" @@ -95,9 +97,9 @@ msgstr "" msgid "" "Optional *s* is the initial header value. If ``None`` (the default), the " -"initial header value is not set. You can later append to the header with :" -"meth:`append` method calls. *s* may be an instance of :class:`bytes` or :" -"class:`str`, but see the :meth:`append` documentation for semantics." +"initial header value is not set. You can later append to the header " +"with :meth:`append` method calls. *s* may be an instance of :class:`bytes` " +"or :class:`str`, but see the :meth:`append` documentation for semantics." msgstr "" msgid "" @@ -153,9 +155,9 @@ msgid "" msgstr "" msgid "" -"In either case, when producing an :rfc:`2822`\\ -compliant header using :rfc:" -"`2047` rules, the string will be encoded using the output codec of the " -"charset. If the string cannot be encoded using the output codec, a " +"In either case, when producing an :rfc:`2822`\\ -compliant header " +"using :rfc:`2047` rules, the string will be encoded using the output codec " +"of the charset. If the string cannot be encoded using the output codec, a " "UnicodeError will be raised." msgstr "" @@ -266,8 +268,8 @@ msgid "" msgstr "" msgid "" -"Create a :class:`Header` instance from a sequence of pairs as returned by :" -"func:`decode_header`." +"Create a :class:`Header` instance from a sequence of pairs as returned " +"by :func:`decode_header`." msgstr "" msgid "" @@ -277,8 +279,8 @@ msgid "" msgstr "" msgid "" -"This function takes one of those sequence of pairs and returns a :class:" -"`Header` instance. Optional *maxlinelen*, *header_name*, and " +"This function takes one of those sequence of pairs and returns " +"a :class:`Header` instance. Optional *maxlinelen*, *header_name*, and " "*continuation_ws* are as in the :class:`Header` constructor." msgstr "" diff --git a/library/email.headerregistry.po b/library/email.headerregistry.po index ae3ca46..0ae8f2d 100644 --- a/library/email.headerregistry.po +++ b/library/email.headerregistry.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,39 +33,41 @@ msgstr "" msgid "" "Headers are represented by customized subclasses of :class:`str`. The " -"particular class used to represent a given header is determined by the :attr:" -"`~email.policy.EmailPolicy.header_factory` of the :mod:`~email.policy` in " -"effect when the headers are created. This section documents the particular " -"``header_factory`` implemented by the email package for handling :RFC:`5322` " -"compliant email messages, which not only provides customized header objects " -"for various header types, but also provides an extension mechanism for " -"applications to add their own custom header types." +"particular class used to represent a given header is determined by " +"the :attr:`~email.policy.EmailPolicy.header_factory` of " +"the :mod:`~email.policy` in effect when the headers are created. This " +"section documents the particular ``header_factory`` implemented by the email " +"package for handling :RFC:`5322` compliant email messages, which not only " +"provides customized header objects for various header types, but also " +"provides an extension mechanism for applications to add their own custom " +"header types." msgstr "" msgid "" -"When using any of the policy objects derived from :data:`~email.policy." -"EmailPolicy`, all headers are produced by :class:`.HeaderRegistry` and have :" -"class:`.BaseHeader` as their last base class. Each header class has an " -"additional base class that is determined by the type of the header. For " -"example, many headers have the class :class:`.UnstructuredHeader` as their " -"other base class. The specialized second class for a header is determined " -"by the name of the header, using a lookup table stored in the :class:`." -"HeaderRegistry`. All of this is managed transparently for the typical " -"application program, but interfaces are provided for modifying the default " -"behavior for use by more complex applications." +"When using any of the policy objects derived " +"from :data:`~email.policy.EmailPolicy`, all headers are produced " +"by :class:`.HeaderRegistry` and have :class:`.BaseHeader` as their last base " +"class. Each header class has an additional base class that is determined by " +"the type of the header. For example, many headers have the " +"class :class:`.UnstructuredHeader` as their other base class. The " +"specialized second class for a header is determined by the name of the " +"header, using a lookup table stored in the :class:`.HeaderRegistry`. All of " +"this is managed transparently for the typical application program, but " +"interfaces are provided for modifying the default behavior for use by more " +"complex applications." msgstr "" msgid "" "The sections below first document the header base classes and their " -"attributes, followed by the API for modifying the behavior of :class:`." -"HeaderRegistry`, and finally the support classes used to represent the data " -"parsed from structured headers." +"attributes, followed by the API for modifying the behavior " +"of :class:`.HeaderRegistry`, and finally the support classes used to " +"represent the data parsed from structured headers." msgstr "" msgid "" -"*name* and *value* are passed to ``BaseHeader`` from the :attr:`~email." -"policy.EmailPolicy.header_factory` call. The string value of any header " -"object is the *value* fully decoded to a string." +"*name* and *value* are passed to ``BaseHeader`` from " +"the :attr:`~email.policy.EmailPolicy.header_factory` call. The string value " +"of any header object is the *value* fully decoded to a string." msgstr "" msgid "This base class defines the following read-only properties:" @@ -73,8 +75,9 @@ msgstr "" msgid "" "The name of the header (the portion of the field before the ':'). This is " -"exactly the value passed in the :attr:`~email.policy.EmailPolicy." -"header_factory` call for *name*; that is, case is preserved." +"exactly the value passed in " +"the :attr:`~email.policy.EmailPolicy.header_factory` call for *name*; that " +"is, case is preserved." msgstr "" msgid "" @@ -99,11 +102,11 @@ msgstr "" msgid "" "Return a string containing :attr:`~email.policy.Policy.linesep` characters " -"as required to correctly fold the header according to *policy*. A :attr:" -"`~email.policy.Policy.cte_type` of ``8bit`` will be treated as if it were " -"``7bit``, since headers may not contain arbitrary binary data. If :attr:" -"`~email.policy.EmailPolicy.utf8` is ``False``, non-ASCII data will be :rfc:" -"`2047` encoded." +"as required to correctly fold the header according to *policy*. " +"A :attr:`~email.policy.Policy.cte_type` of ``8bit`` will be treated as if it " +"were ``7bit``, since headers may not contain arbitrary binary data. " +"If :attr:`~email.policy.EmailPolicy.utf8` is ``False``, non-ASCII data will " +"be :rfc:`2047` encoded." msgstr "" msgid "" @@ -186,10 +189,11 @@ msgid "" "another, this attribute will contain a :class:`~datetime.datetime` instance " "representing that date. If the timezone of the input date is specified as " "``-0000`` (indicating it is in UTC but contains no information about the " -"source timezone), then :attr:`.datetime` will be a naive :class:`~datetime." -"datetime`. If a specific timezone offset is found (including ``+0000``), " -"then :attr:`.datetime` will contain an aware ``datetime`` that uses :class:" -"`datetime.timezone` to record the timezone offset." +"source timezone), then :attr:`.datetime` will be a " +"naive :class:`~datetime.datetime`. If a specific timezone offset is found " +"(including ``+0000``), then :attr:`.datetime` will contain an aware " +"``datetime`` that uses :class:`datetime.timezone` to record the timezone " +"offset." msgstr "" msgid "" @@ -212,8 +216,8 @@ msgstr "" msgid "" "Because this is a naive ``datetime`` it will be interpreted as a UTC " "timestamp, and the resulting value will have a timezone of ``-0000``. Much " -"more useful is to use the :func:`~email.utils.localtime` function from the :" -"mod:`~email.utils` module::" +"more useful is to use the :func:`~email.utils.localtime` function from " +"the :mod:`~email.utils` module::" msgstr "" msgid "msg['Date'] = utils.localtime()" @@ -247,8 +251,9 @@ msgstr "" msgid "" "The ``decoded`` value of the header will have all encoded words decoded to a " "string. :class:`~encodings.idna` encoded domain names are also decoded to a " -"string. The ``decoded`` value is set by :ref:`joining ` the :" -"class:`str` value of the elements of the ``groups`` attribute with ``', '``." +"string. The ``decoded`` value is set by :ref:`joining ` " +"the :class:`str` value of the elements of the ``groups`` attribute with ``', " +"'``." msgstr "" msgid "" @@ -309,16 +314,16 @@ msgid "" msgstr "" msgid "" -"A :class:`ParameterizedMIMEHeader` class that handles the :mailheader:" -"`Content-Type` header." +"A :class:`ParameterizedMIMEHeader` class that handles " +"the :mailheader:`Content-Type` header." msgstr "" msgid "The content type string, in the form ``maintype/subtype``." msgstr "" msgid "" -"A :class:`ParameterizedMIMEHeader` class that handles the :mailheader:" -"`Content-Disposition` header." +"A :class:`ParameterizedMIMEHeader` class that handles " +"the :mailheader:`Content-Disposition` header." msgstr "" msgid "``inline`` and ``attachment`` are the only valid values in common use." @@ -485,8 +490,8 @@ msgid "username@domain" msgstr "" msgid "" -"where each part must conform to specific syntax rules spelled out in :rfc:" -"`5322`." +"where each part must conform to specific syntax rules spelled out " +"in :rfc:`5322`." msgstr "" msgid "" @@ -516,8 +521,8 @@ msgid "" msgstr "" msgid "" -"The ``str`` value of the object is the address quoted according to :rfc:" -"`5322` rules, but with no Content Transfer Encoding of any non-ASCII " +"The ``str`` value of the object is the address quoted according " +"to :rfc:`5322` rules, but with no Content Transfer Encoding of any non-ASCII " "characters." msgstr "" diff --git a/library/email.iterators.po b/library/email.iterators.po index 7ecd9d6..ace982e 100644 --- a/library/email.iterators.po +++ b/library/email.iterators.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,10 +25,10 @@ msgid "**Source code:** :source:`Lib/email/iterators.py`" msgstr "" msgid "" -"Iterating over a message object tree is fairly easy with the :meth:`Message." -"walk ` method. The :mod:`!email.iterators` " -"module provides some useful higher level iterations over message object " -"trees." +"Iterating over a message object tree is fairly easy with " +"the :meth:`Message.walk ` method. The :mod:`!" +"email.iterators` module provides some useful higher level iterations over " +"message object trees." msgstr "" msgid "" @@ -41,8 +41,8 @@ msgid "" msgstr "" msgid "" -"Optional *decode* is passed through to :meth:`Message.get_payload `." +"Optional *decode* is passed through to :meth:`Message.get_payload " +"`." msgstr "" msgid "" diff --git a/library/email.message.po b/library/email.message.po index a7474eb..51ca576 100644 --- a/library/email.message.po +++ b/library/email.message.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -80,24 +81,24 @@ msgstr "" msgid "" "If *policy* is specified use the rules it specifies to update and serialize " -"the representation of the message. If *policy* is not set, use the :class:" -"`~email.policy.default` policy, which follows the rules of the email RFCs " -"except for line endings (instead of the RFC mandated ``\\r\\n``, it uses the " -"Python standard ``\\n`` line endings). For more information see the :mod:" -"`~email.policy` documentation. [2]_" +"the representation of the message. If *policy* is not set, use " +"the :class:`~email.policy.default` policy, which follows the rules of the " +"email RFCs except for line endings (instead of the RFC mandated ``\\r\\n``, " +"it uses the Python standard ``\\n`` line endings). For more information see " +"the :mod:`~email.policy` documentation. [2]_" msgstr "" msgid "" "Return the entire message flattened as a string. When optional *unixfrom* " "is true, the envelope header is included in the returned string. *unixfrom* " -"defaults to ``False``. For backward compatibility with the base :class:" -"`~email.message.Message` class *maxheaderlen* is accepted, but defaults to " -"``None``, which means that by default the line length is controlled by the :" -"attr:`~email.policy.Policy.max_line_length` of the policy. The *policy* " -"argument may be used to override the default policy obtained from the " -"message instance. This can be used to control some of the formatting " -"produced by the method, since the specified *policy* will be passed to the :" -"class:`~email.generator.Generator`." +"defaults to ``False``. For backward compatibility with the " +"base :class:`~email.message.Message` class *maxheaderlen* is accepted, but " +"defaults to ``None``, which means that by default the line length is " +"controlled by the :attr:`~email.policy.Policy.max_line_length` of the " +"policy. The *policy* argument may be used to override the default policy " +"obtained from the message instance. This can be used to control some of the " +"formatting produced by the method, since the specified *policy* will be " +"passed to the :class:`~email.generator.Generator`." msgstr "" msgid "" @@ -111,8 +112,9 @@ msgid "" "useful way to serialize messages in your application, especially if you are " "dealing with multiple messages. See :class:`email.generator.Generator` for " "a more flexible API for serializing messages. Note also that this method is " -"restricted to producing messages serialized as \"7 bit clean\" when :attr:" -"`~email.policy.EmailPolicy.utf8` is ``False``, which is the default." +"restricted to producing messages serialized as \"7 bit clean\" " +"when :attr:`~email.policy.EmailPolicy.utf8` is ``False``, which is the " +"default." msgstr "" msgid "" @@ -129,8 +131,8 @@ msgstr "" msgid "" "the method was changed to use ``utf8=True``, thus producing an :rfc:`6531`-" -"like message representation, instead of being a direct alias for :meth:" -"`as_string`." +"like message representation, instead of being a direct alias " +"for :meth:`as_string`." msgstr "" msgid "" @@ -139,8 +141,8 @@ msgid "" "*unixfrom* defaults to ``False``. The *policy* argument may be used to " "override the default policy obtained from the message instance. This can be " "used to control some of the formatting produced by the method, since the " -"specified *policy* will be passed to the :class:`~email.generator." -"BytesGenerator`." +"specified *policy* will be passed to " +"the :class:`~email.generator.BytesGenerator`." msgstr "" msgid "" @@ -156,14 +158,14 @@ msgid "" msgstr "" msgid "" -"Return ``True`` if the message's payload is a list of sub-\\ :class:" -"`EmailMessage` objects, otherwise return ``False``. When :meth:" -"`is_multipart` returns ``False``, the payload should be a string object " -"(which might be a CTE encoded binary payload). Note that :meth:" -"`is_multipart` returning ``True`` does not necessarily mean that \"msg." -"get_content_maintype() == 'multipart'\" will return the ``True``. For " -"example, ``is_multipart`` will return ``True`` when the :class:" -"`EmailMessage` is of type ``message/rfc822``." +"Return ``True`` if the message's payload is a list of sub-" +"\\ :class:`EmailMessage` objects, otherwise return ``False``. " +"When :meth:`is_multipart` returns ``False``, the payload should be a string " +"object (which might be a CTE encoded binary payload). Note " +"that :meth:`is_multipart` returning ``True`` does not necessarily mean that " +"\"msg.get_content_maintype() == 'multipart'\" will return the ``True``. For " +"example, ``is_multipart`` will return ``True`` when " +"the :class:`EmailMessage` is of type ``message/rfc822``." msgstr "" msgid "" @@ -215,8 +217,8 @@ msgstr "" msgid "" "Return the value of the named header field. *name* does not include the " -"colon field separator. If the header is missing, ``None`` is returned; a :" -"exc:`KeyError` is never raised." +"colon field separator. If the header is missing, ``None`` is returned; " +"a :exc:`KeyError` is never raised." msgstr "" msgid "" @@ -274,9 +276,9 @@ msgid "" msgstr "" msgid "" -"Return the value of the named header field. This is identical to :meth:" -"`~object.__getitem__` except that optional *failobj* is returned if the " -"named header is missing (*failobj* defaults to ``None``)." +"Return the value of the named header field. This is identical " +"to :meth:`~object.__getitem__` except that optional *failobj* is returned if " +"the named header is missing (*failobj* defaults to ``None``)." msgstr "" msgid "Here are some additional useful header related methods:" @@ -342,21 +344,21 @@ msgid "" msgstr "" msgid "" -"Return the message's content type, coerced to lower case of the form :" -"mimetype:`maintype/subtype`. If there is no :mailheader:`Content-Type` " -"header in the message return the value returned by :meth:" -"`get_default_type`. If the :mailheader:`Content-Type` header is invalid, " -"return ``text/plain``." +"Return the message's content type, coerced to lower case of the " +"form :mimetype:`maintype/subtype`. If there is no :mailheader:`Content-" +"Type` header in the message return the value returned " +"by :meth:`get_default_type`. If the :mailheader:`Content-Type` header is " +"invalid, return ``text/plain``." msgstr "" msgid "" -"(According to :rfc:`2045`, messages always have a default type, :meth:" -"`get_content_type` will always return a value. :rfc:`2045` defines a " -"message's default type to be :mimetype:`text/plain` unless it appears inside " -"a :mimetype:`multipart/digest` container, in which case it would be :" -"mimetype:`message/rfc822`. If the :mailheader:`Content-Type` header has an " -"invalid type specification, :rfc:`2045` mandates that the default type be :" -"mimetype:`text/plain`.)" +"(According to :rfc:`2045`, messages always have a default " +"type, :meth:`get_content_type` will always return a value. :rfc:`2045` " +"defines a message's default type to be :mimetype:`text/plain` unless it " +"appears inside a :mimetype:`multipart/digest` container, in which case it " +"would be :mimetype:`message/rfc822`. If the :mailheader:`Content-Type` " +"header has an invalid type specification, :rfc:`2045` mandates that the " +"default type be :mimetype:`text/plain`.)" msgstr "" msgid "" @@ -371,8 +373,8 @@ msgstr "" msgid "" "Return the default content type. Most messages have a default content type " -"of :mimetype:`text/plain`, except for messages that are subparts of :" -"mimetype:`multipart/digest` containers. Such subparts have a default " +"of :mimetype:`text/plain`, except for messages that are subparts " +"of :mimetype:`multipart/digest` containers. Such subparts have a default " "content type of :mimetype:`message/rfc822`." msgstr "" @@ -389,8 +391,8 @@ msgid "" "already exists in the header, replace its value with *value*. When *header* " "is ``Content-Type`` (the default) and the header does not yet exist in the " "message, add it, set its value to :mimetype:`text/plain`, and append the new " -"parameter value. Optional *header* specifies an alternative header to :" -"mailheader:`Content-Type`." +"parameter value. Optional *header* specifies an alternative header " +"to :mailheader:`Content-Type`." msgstr "" msgid "" @@ -414,9 +416,9 @@ msgid "" msgstr "" msgid "" -"Note that existing parameter values of headers may be accessed through the :" -"attr:`~email.headerregistry.ParameterizedMIMEHeader.params` attribute of the " -"header value (for example, ``msg['Content-Type'].params['charset']``)." +"Note that existing parameter values of headers may be accessed through " +"the :attr:`~email.headerregistry.ParameterizedMIMEHeader.params` attribute " +"of the header value (for example, ``msg['Content-Type'].params['charset']``)." msgstr "" msgid "``replace`` keyword was added." @@ -453,10 +455,10 @@ msgid "" msgstr "" msgid "" -"Note that using this method is subtly different from deleting the old :" -"mailheader:`Content-Type` header and adding a new one with the new boundary " -"via :meth:`add_header`, because :meth:`set_boundary` preserves the order of " -"the :mailheader:`Content-Type` header in the list of headers." +"Note that using this method is subtly different from deleting the " +"old :mailheader:`Content-Type` header and adding a new one with the new " +"boundary via :meth:`add_header`, because :meth:`set_boundary` preserves the " +"order of the :mailheader:`Content-Type` header in the list of headers." msgstr "" msgid "" @@ -485,15 +487,15 @@ msgid "" msgstr "" msgid "" -"is_attachment is now a method instead of a property, for consistency with :" -"meth:`~email.message.Message.is_multipart`." +"is_attachment is now a method instead of a property, for consistency " +"with :meth:`~email.message.Message.is_multipart`." msgstr "" msgid "" -"Return the lowercased value (without parameters) of the message's :" -"mailheader:`Content-Disposition` header if it has one, or ``None``. The " -"possible values for this method are *inline*, *attachment* or ``None`` if " -"the message follows :rfc:`2183`." +"Return the lowercased value (without parameters) of the " +"message's :mailheader:`Content-Disposition` header if it has one, or " +"``None``. The possible values for this method are *inline*, *attachment* or " +"``None`` if the message follows :rfc:`2183`." msgstr "" msgid "" @@ -615,8 +617,8 @@ msgid "" "Return an iterator over all of the immediate sub-parts of the message that " "are not candidate \"body\" parts. That is, skip the first occurrence of " "each of ``text/plain``, ``text/html``, ``multipart/related``, or ``multipart/" -"alternative`` (unless they are explicitly marked as attachments via :" -"mailheader:`Content-Disposition: attachment`), and return all remaining " +"alternative`` (unless they are explicitly marked as attachments " +"via :mailheader:`Content-Disposition: attachment`), and return all remaining " "parts. When applied directly to a ``multipart/related``, return an iterator " "over the all the related parts except the root part (ie: the part pointed to " "by the ``start`` parameter, or the first part if there is no ``start`` " @@ -627,8 +629,8 @@ msgstr "" msgid "" "Return an iterator over all of the immediate sub-parts of the message, which " -"will be empty for a non-``multipart``. (See also :meth:`~email.message." -"EmailMessage.walk`.)" +"will be empty for a non-``multipart``. (See " +"also :meth:`~email.message.EmailMessage.walk`.)" msgstr "" msgid "" @@ -666,48 +668,50 @@ msgid "" msgstr "" msgid "" -"Convert a non-``multipart``, a ``multipart/related``, or a ``multipart-" -"alternative`` into a ``multipart/mixed``, moving any existing :mailheader:" -"`Content-` headers and payload into a (new) first part of the " -"``multipart``. If *boundary* is specified, use it as the boundary string in " -"the multipart, otherwise leave the boundary to be automatically created when " -"it is needed (for example, when the message is serialized)." +"Convert a non-``multipart``, a ``multipart/related``, or a ``multipart/" +"alternative`` into a ``multipart/mixed``, moving any " +"existing :mailheader:`Content-` headers and payload into a (new) first part " +"of the ``multipart``. If *boundary* is specified, use it as the boundary " +"string in the multipart, otherwise leave the boundary to be automatically " +"created when it is needed (for example, when the message is serialized)." msgstr "" msgid "" "If the message is a ``multipart/related``, create a new message object, pass " -"all of the arguments to its :meth:`set_content` method, and :meth:`~email." -"message.Message.attach` it to the ``multipart``. If the message is a non-" -"``multipart``, call :meth:`make_related` and then proceed as above. If the " -"message is any other type of ``multipart``, raise a :exc:`TypeError`. If " -"*content_manager* is not specified, use the ``content_manager`` specified by " -"the current :mod:`~email.policy`. If the added part has no :mailheader:" -"`Content-Disposition` header, add one with the value ``inline``." +"all of the arguments to its :meth:`set_content` method, " +"and :meth:`~email.message.Message.attach` it to the ``multipart``. If the " +"message is a non-``multipart``, call :meth:`make_related` and then proceed " +"as above. If the message is any other type of ``multipart``, raise " +"a :exc:`TypeError`. If *content_manager* is not specified, use the " +"``content_manager`` specified by the current :mod:`~email.policy`. If the " +"added part has no :mailheader:`Content-Disposition` header, add one with the " +"value ``inline``." msgstr "" msgid "" "If the message is a ``multipart/alternative``, create a new message object, " -"pass all of the arguments to its :meth:`set_content` method, and :meth:" -"`~email.message.Message.attach` it to the ``multipart``. If the message is " -"a non-``multipart`` or ``multipart/related``, call :meth:`make_alternative` " -"and then proceed as above. If the message is any other type of " -"``multipart``, raise a :exc:`TypeError`. If *content_manager* is not " -"specified, use the ``content_manager`` specified by the current :mod:`~email." -"policy`." +"pass all of the arguments to its :meth:`set_content` method, " +"and :meth:`~email.message.Message.attach` it to the ``multipart``. If the " +"message is a non-``multipart`` or ``multipart/related``, " +"call :meth:`make_alternative` and then proceed as above. If the message is " +"any other type of ``multipart``, raise a :exc:`TypeError`. If " +"*content_manager* is not specified, use the ``content_manager`` specified by " +"the current :mod:`~email.policy`." msgstr "" msgid "" "If the message is a ``multipart/mixed``, create a new message object, pass " -"all of the arguments to its :meth:`set_content` method, and :meth:`~email." -"message.Message.attach` it to the ``multipart``. If the message is a non-" -"``multipart``, ``multipart/related``, or ``multipart/alternative``, call :" -"meth:`make_mixed` and then proceed as above. If *content_manager* is not " -"specified, use the ``content_manager`` specified by the current :mod:`~email." -"policy`. If the added part has no :mailheader:`Content-Disposition` header, " -"add one with the value ``attachment``. This method can be used both for " -"explicit attachments (:mailheader:`Content-Disposition: attachment`) and " -"``inline`` attachments (:mailheader:`Content-Disposition: inline`), by " -"passing appropriate options to the ``content_manager``." +"all of the arguments to its :meth:`set_content` method, " +"and :meth:`~email.message.Message.attach` it to the ``multipart``. If the " +"message is a non-``multipart``, ``multipart/related``, or ``multipart/" +"alternative``, call :meth:`make_mixed` and then proceed as above. If " +"*content_manager* is not specified, use the ``content_manager`` specified by " +"the current :mod:`~email.policy`. If the added part has " +"no :mailheader:`Content-Disposition` header, add one with the value " +"``attachment``. This method can be used both for explicit attachments " +"(:mailheader:`Content-Disposition: attachment`) and ``inline`` attachments " +"(:mailheader:`Content-Disposition: inline`), by passing appropriate options " +"to the ``content_manager``." msgstr "" msgid "Remove the payload and all of the headers." @@ -734,11 +738,12 @@ msgid "" "The *preamble* attribute contains this leading extra-armor text for MIME " "documents. When the :class:`~email.parser.Parser` discovers some text after " "the headers but before the first boundary string, it assigns this text to " -"the message's *preamble* attribute. When the :class:`~email.generator." -"Generator` is writing out the plain text representation of a MIME message, " -"and it finds the message has a *preamble* attribute, it will write this text " -"in the area between the headers and the first boundary. See :mod:`email." -"parser` and :mod:`email.generator` for details." +"the message's *preamble* attribute. When " +"the :class:`~email.generator.Generator` is writing out the plain text " +"representation of a MIME message, and it finds the message has a *preamble* " +"attribute, it will write this text in the area between the headers and the " +"first boundary. See :mod:`email.parser` and :mod:`email.generator` for " +"details." msgstr "" msgid "" @@ -760,10 +765,10 @@ msgid "" msgstr "" msgid "" -"This class represents a subpart of a MIME message. It is identical to :" -"class:`EmailMessage`, except that no :mailheader:`MIME-Version` headers are " -"added when :meth:`~EmailMessage.set_content` is called, since sub-parts do " -"not need their own :mailheader:`MIME-Version` headers." +"This class represents a subpart of a MIME message. It is identical " +"to :class:`EmailMessage`, except that no :mailheader:`MIME-Version` headers " +"are added when :meth:`~EmailMessage.set_content` is called, since sub-parts " +"do not need their own :mailheader:`MIME-Version` headers." msgstr "" msgid "Footnotes" @@ -777,7 +782,7 @@ msgstr "" msgid "" "The :class:`EmailMessage` class requires a policy that provides a " "``content_manager`` attribute for content management methods like " -"``set_content()`` and ``get_content()`` to work. The legacy :const:`~email." -"policy.compat32` policy does not support these methods and should not be " -"used with :class:`EmailMessage`." +"``set_content()`` and ``get_content()`` to work. The " +"legacy :const:`~email.policy.compat32` policy does not support these methods " +"and should not be used with :class:`EmailMessage`." msgstr "" diff --git a/library/email.mime.po b/library/email.mime.po index 4a6ec78..526a3b9 100644 --- a/library/email.mime.po +++ b/library/email.mime.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,16 +36,17 @@ msgid "" "text to a parser, which parses the text and returns the root message " "object. However you can also build a complete message structure from " "scratch, or even individual :class:`~email.message.Message` objects by " -"hand. In fact, you can also take an existing structure and add new :class:" -"`~email.message.Message` objects, move them around, etc. This makes a very " -"convenient interface for slicing-and-dicing MIME messages." +"hand. In fact, you can also take an existing structure and add " +"new :class:`~email.message.Message` objects, move them around, etc. This " +"makes a very convenient interface for slicing-and-dicing MIME messages." msgstr "" msgid "" -"You can create a new object structure by creating :class:`~email.message." -"Message` instances, adding attachments and all the appropriate headers " -"manually. For MIME messages though, the :mod:`email` package provides some " -"convenient subclasses to make things easier." +"You can create a new object structure by " +"creating :class:`~email.message.Message` instances, adding attachments and " +"all the appropriate headers manually. For MIME messages though, " +"the :mod:`email` package provides some convenient subclasses to make things " +"easier." msgstr "" msgid "Here are the classes:" @@ -55,24 +56,26 @@ msgid "Module: :mod:`email.mime.base`" msgstr "" msgid "" -"This is the base class for all the MIME-specific subclasses of :class:" -"`~email.message.Message`. Ordinarily you won't create instances " +"This is the base class for all the MIME-specific subclasses " +"of :class:`~email.message.Message`. Ordinarily you won't create instances " "specifically of :class:`MIMEBase`, although you could. :class:`MIMEBase` is " "provided primarily as a convenient base class for more specific MIME-aware " "subclasses." msgstr "" msgid "" -"*_maintype* is the :mailheader:`Content-Type` major type (e.g. :mimetype:" -"`text` or :mimetype:`image`), and *_subtype* is the :mailheader:`Content-" -"Type` minor type (e.g. :mimetype:`plain` or :mimetype:`gif`). *_params* is " -"a parameter key/value dictionary and is passed directly to :meth:`Message." -"add_header `." +"*_maintype* is the :mailheader:`Content-Type` major type " +"(e.g. :mimetype:`text` or :mimetype:`image`), and *_subtype* is " +"the :mailheader:`Content-Type` minor type (e.g. :mimetype:`plain` " +"or :mimetype:`gif`). *_params* is a parameter key/value dictionary and is " +"passed directly to :meth:`Message.add_header " +"`." msgstr "" msgid "" -"If *policy* is specified, (defaults to the :class:`compat32 ` policy) it will be passed to :class:`~email.message.Message`." +"If *policy* is specified, (defaults to the :class:`compat32 " +"` policy) it will be passed " +"to :class:`~email.message.Message`." msgstr "" msgid "" @@ -90,9 +93,10 @@ msgstr "" msgid "" "A subclass of :class:`~email.mime.base.MIMEBase`, this is an intermediate " "base class for MIME messages that are not :mimetype:`multipart`. The " -"primary purpose of this class is to prevent the use of the :meth:`~email." -"message.Message.attach` method, which only makes sense for :mimetype:" -"`multipart` messages. If :meth:`~email.message.Message.attach` is called, " +"primary purpose of this class is to prevent the use of " +"the :meth:`~email.message.Message.attach` method, which only makes sense " +"for :mimetype:`multipart` messages. " +"If :meth:`~email.message.Message.attach` is called, " "a :exc:`~email.errors.MultipartConversionError` exception is raised." msgstr "" @@ -103,9 +107,9 @@ msgid "" "A subclass of :class:`~email.mime.base.MIMEBase`, this is an intermediate " "base class for MIME messages that are :mimetype:`multipart`. Optional " "*_subtype* defaults to :mimetype:`mixed`, but can be used to specify the " -"subtype of the message. A :mailheader:`Content-Type` header of :mimetype:" -"`multipart/_subtype` will be added to the message object. A :mailheader:" -"`MIME-Version` header will also be added." +"subtype of the message. A :mailheader:`Content-Type` header " +"of :mimetype:`multipart/_subtype` will be added to the message object. " +"A :mailheader:`MIME-Version` header will also be added." msgstr "" msgid "" @@ -117,13 +121,13 @@ msgstr "" msgid "" "*_subparts* is a sequence of initial subparts for the payload. It must be " "possible to convert this sequence to a list. You can always attach new " -"subparts to the message by using the :meth:`Message.attach ` method." +"subparts to the message by using the :meth:`Message.attach " +"` method." msgstr "" msgid "" -"Optional *policy* argument defaults to :class:`compat32 `." +"Optional *policy* argument defaults to :class:`compat32 " +"`." msgstr "" msgid "" @@ -136,22 +140,23 @@ msgid "Module: :mod:`email.mime.application`" msgstr "" msgid "" -"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, the :class:" -"`MIMEApplication` class is used to represent MIME message objects of major " -"type :mimetype:`application`. *_data* contains the bytes for the raw " -"application data. Optional *_subtype* specifies the MIME subtype and " +"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, " +"the :class:`MIMEApplication` class is used to represent MIME message objects " +"of major type :mimetype:`application`. *_data* contains the bytes for the " +"raw application data. Optional *_subtype* specifies the MIME subtype and " "defaults to :mimetype:`octet-stream`." msgstr "" msgid "" "Optional *_encoder* is a callable (i.e. function) which will perform the " "actual encoding of the data for transport. This callable takes one " -"argument, which is the :class:`MIMEApplication` instance. It should use :" -"meth:`~email.message.Message.get_payload` and :meth:`~email.message.Message." -"set_payload` to change the payload to encoded form. It should also add any :" -"mailheader:`Content-Transfer-Encoding` or other headers to the message " -"object as necessary. The default encoding is base64. See the :mod:`email." -"encoders` module for a list of the built-in encoders." +"argument, which is the :class:`MIMEApplication` instance. It should " +"use :meth:`~email.message.Message.get_payload` " +"and :meth:`~email.message.Message.set_payload` to change the payload to " +"encoded form. It should also add any :mailheader:`Content-Transfer-" +"Encoding` or other headers to the message object as necessary. The default " +"encoding is base64. See the :mod:`email.encoders` module for a list of the " +"built-in encoders." msgstr "" msgid "*_params* are passed straight through to the base class constructor." @@ -161,87 +166,89 @@ msgid "Module: :mod:`email.mime.audio`" msgstr "" msgid "" -"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, the :class:" -"`MIMEAudio` class is used to create MIME message objects of major type :" -"mimetype:`audio`. *_audiodata* contains the bytes for the raw audio data. " -"If this data can be decoded as au, wav, aiff, or aifc, then the subtype will " -"be automatically included in the :mailheader:`Content-Type` header. " -"Otherwise you can explicitly specify the audio subtype via the *_subtype* " -"argument. If the minor type could not be guessed and *_subtype* was not " -"given, then :exc:`TypeError` is raised." +"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, " +"the :class:`MIMEAudio` class is used to create MIME message objects of major " +"type :mimetype:`audio`. *_audiodata* contains the bytes for the raw audio " +"data. If this data can be decoded as au, wav, aiff, or aifc, then the " +"subtype will be automatically included in the :mailheader:`Content-Type` " +"header. Otherwise you can explicitly specify the audio subtype via the " +"*_subtype* argument. If the minor type could not be guessed and *_subtype* " +"was not given, then :exc:`TypeError` is raised." msgstr "" msgid "" "Optional *_encoder* is a callable (i.e. function) which will perform the " "actual encoding of the audio data for transport. This callable takes one " -"argument, which is the :class:`MIMEAudio` instance. It should use :meth:" -"`~email.message.Message.get_payload` and :meth:`~email.message.Message." -"set_payload` to change the payload to encoded form. It should also add any :" -"mailheader:`Content-Transfer-Encoding` or other headers to the message " -"object as necessary. The default encoding is base64. See the :mod:`email." -"encoders` module for a list of the built-in encoders." +"argument, which is the :class:`MIMEAudio` instance. It should " +"use :meth:`~email.message.Message.get_payload` " +"and :meth:`~email.message.Message.set_payload` to change the payload to " +"encoded form. It should also add any :mailheader:`Content-Transfer-" +"Encoding` or other headers to the message object as necessary. The default " +"encoding is base64. See the :mod:`email.encoders` module for a list of the " +"built-in encoders." msgstr "" msgid "Module: :mod:`email.mime.image`" msgstr "" msgid "" -"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, the :class:" -"`MIMEImage` class is used to create MIME message objects of major type :" -"mimetype:`image`. *_imagedata* contains the bytes for the raw image data. " -"If this data type can be detected (jpeg, png, gif, tiff, rgb, pbm, pgm, ppm, " -"rast, xbm, bmp, webp, and exr attempted), then the subtype will be " +"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, " +"the :class:`MIMEImage` class is used to create MIME message objects of major " +"type :mimetype:`image`. *_imagedata* contains the bytes for the raw image " +"data. If this data type can be detected (jpeg, png, gif, tiff, rgb, pbm, " +"pgm, ppm, rast, xbm, bmp, webp, and exr attempted), then the subtype will be " "automatically included in the :mailheader:`Content-Type` header. Otherwise " "you can explicitly specify the image subtype via the *_subtype* argument. If " -"the minor type could not be guessed and *_subtype* was not given, then :exc:" -"`TypeError` is raised." +"the minor type could not be guessed and *_subtype* was not given, " +"then :exc:`TypeError` is raised." msgstr "" msgid "" "Optional *_encoder* is a callable (i.e. function) which will perform the " "actual encoding of the image data for transport. This callable takes one " -"argument, which is the :class:`MIMEImage` instance. It should use :meth:" -"`~email.message.Message.get_payload` and :meth:`~email.message.Message." -"set_payload` to change the payload to encoded form. It should also add any :" -"mailheader:`Content-Transfer-Encoding` or other headers to the message " -"object as necessary. The default encoding is base64. See the :mod:`email." -"encoders` module for a list of the built-in encoders." +"argument, which is the :class:`MIMEImage` instance. It should " +"use :meth:`~email.message.Message.get_payload` " +"and :meth:`~email.message.Message.set_payload` to change the payload to " +"encoded form. It should also add any :mailheader:`Content-Transfer-" +"Encoding` or other headers to the message object as necessary. The default " +"encoding is base64. See the :mod:`email.encoders` module for a list of the " +"built-in encoders." msgstr "" msgid "" -"*_params* are passed straight through to the :class:`~email.mime.base." -"MIMEBase` constructor." +"*_params* are passed straight through to " +"the :class:`~email.mime.base.MIMEBase` constructor." msgstr "" msgid "Module: :mod:`email.mime.message`" msgstr "" msgid "" -"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, the :class:" -"`MIMEMessage` class is used to create MIME objects of main type :mimetype:" -"`message`. *_msg* is used as the payload, and must be an instance of class :" -"class:`~email.message.Message` (or a subclass thereof), otherwise a :exc:" -"`TypeError` is raised." +"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, " +"the :class:`MIMEMessage` class is used to create MIME objects of main " +"type :mimetype:`message`. *_msg* is used as the payload, and must be an " +"instance of class :class:`~email.message.Message` (or a subclass thereof), " +"otherwise a :exc:`TypeError` is raised." msgstr "" msgid "" -"Optional *_subtype* sets the subtype of the message; it defaults to :" -"mimetype:`rfc822`." +"Optional *_subtype* sets the subtype of the message; it defaults " +"to :mimetype:`rfc822`." msgstr "" msgid "Module: :mod:`email.mime.text`" msgstr "" msgid "" -"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, the :class:" -"`MIMEText` class is used to create MIME objects of major type :mimetype:" -"`text`. *_text* is the string for the payload. *_subtype* is the minor type " -"and defaults to :mimetype:`plain`. *_charset* is the character set of the " -"text and is passed as an argument to the :class:`~email.mime.nonmultipart." -"MIMENonMultipart` constructor; it defaults to ``us-ascii`` if the string " -"contains only ``ascii`` code points, and ``utf-8`` otherwise. The " -"*_charset* parameter accepts either a string or a :class:`~email.charset." -"Charset` instance." +"A subclass of :class:`~email.mime.nonmultipart.MIMENonMultipart`, " +"the :class:`MIMEText` class is used to create MIME objects of major " +"type :mimetype:`text`. *_text* is the string for the payload. *_subtype* is " +"the minor type and defaults to :mimetype:`plain`. *_charset* is the " +"character set of the text and is passed as an argument to " +"the :class:`~email.mime.nonmultipart.MIMENonMultipart` constructor; it " +"defaults to ``us-ascii`` if the string contains only ``ascii`` code points, " +"and ``utf-8`` otherwise. The *_charset* parameter accepts either a string " +"or a :class:`~email.charset.Charset` instance." msgstr "" msgid "" diff --git a/library/email.parser.po b/library/email.parser.po index 3c52fcf..1a4ba37 100644 --- a/library/email.parser.po +++ b/library/email.parser.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,47 +40,47 @@ msgid "" "root :class:`~email.message.EmailMessage` instance of the object structure. " "For simple, non-MIME messages the payload of this root object will likely be " "a string containing the text of the message. For MIME messages, the root " -"object will return ``True`` from its :meth:`~email.message.EmailMessage." -"is_multipart` method, and the subparts can be accessed via the payload " -"manipulation methods, such as :meth:`~email.message.EmailMessage.get_body`, :" -"meth:`~email.message.EmailMessage.iter_parts`, and :meth:`~email.message." -"EmailMessage.walk`." +"object will return ``True`` from " +"its :meth:`~email.message.EmailMessage.is_multipart` method, and the " +"subparts can be accessed via the payload manipulation methods, such " +"as :meth:`~email.message.EmailMessage.get_body`, :meth:`~email.message.EmailMessage.iter_parts`, " +"and :meth:`~email.message.EmailMessage.walk`." msgstr "" msgid "" -"There are actually two parser interfaces available for use, the :class:" -"`Parser` API and the incremental :class:`FeedParser` API. The :class:" -"`Parser` API is most useful if you have the entire text of the message in " -"memory, or if the entire message lives in a file on the file system. :class:" -"`FeedParser` is more appropriate when you are reading the message from a " -"stream which might block waiting for more input (such as reading an email " -"message from a socket). The :class:`FeedParser` can consume and parse the " -"message incrementally, and only returns the root object when you close the " -"parser." +"There are actually two parser interfaces available for use, " +"the :class:`Parser` API and the incremental :class:`FeedParser` API. " +"The :class:`Parser` API is most useful if you have the entire text of the " +"message in memory, or if the entire message lives in a file on the file " +"system. :class:`FeedParser` is more appropriate when you are reading the " +"message from a stream which might block waiting for more input (such as " +"reading an email message from a socket). The :class:`FeedParser` can " +"consume and parse the message incrementally, and only returns the root " +"object when you close the parser." msgstr "" msgid "" "Note that the parser can be extended in limited ways, and of course you can " "implement your own parser completely from scratch. All of the logic that " -"connects the :mod:`email` package's bundled parser and the :class:`~email." -"message.EmailMessage` class is embodied in the :class:`~email.policy.Policy` " -"class, so a custom parser can create message object trees any way it finds " -"necessary by implementing custom versions of the appropriate :class:`!" -"Policy` methods." +"connects the :mod:`email` package's bundled parser and " +"the :class:`~email.message.EmailMessage` class is embodied in " +"the :class:`~email.policy.Policy` class, so a custom parser can create " +"message object trees any way it finds necessary by implementing custom " +"versions of the appropriate :class:`!Policy` methods." msgstr "" msgid "FeedParser API" msgstr "" msgid "" -"The :class:`BytesFeedParser`, imported from the :mod:`email.feedparser` " +"The :class:`BytesFeedParser`, imported from the :mod:`!email.feedparser` " "module, provides an API that is conducive to incremental parsing of email " "messages, such as would be necessary when reading the text of an email " -"message from a source that can block (such as a socket). The :class:" -"`BytesFeedParser` can of course be used to parse an email message fully " -"contained in a :term:`bytes-like object`, string, or file, but the :class:" -"`BytesParser` API may be more convenient for such use cases. The semantics " -"and results of the two parser APIs are identical." +"message from a source that can block (such as a socket). " +"The :class:`BytesFeedParser` can of course be used to parse an email message " +"fully contained in a :term:`bytes-like object`, string, or file, but " +"the :class:`BytesParser` API may be more convenient for such use cases. The " +"semantics and results of the two parser APIs are identical." msgstr "" msgid "" @@ -89,10 +89,10 @@ msgid "" "to retrieve the root message object. The :class:`BytesFeedParser` is " "extremely accurate when parsing standards-compliant messages, and it does a " "very good job of parsing non-compliant messages, providing information about " -"how a message was deemed broken. It will populate a message object's :attr:" -"`~email.message.EmailMessage.defects` attribute with a list of any problems " -"it found in a message. See the :mod:`email.errors` module for the list of " -"defects that it can find." +"how a message was deemed broken. It will populate a message " +"object's :attr:`~email.message.EmailMessage.defects` attribute with a list " +"of any problems it found in a message. See the :mod:`email.errors` module " +"for the list of defects that it can find." msgstr "" msgid "Here is the API for the :class:`BytesFeedParser`:" @@ -100,24 +100,24 @@ msgstr "" msgid "" "Create a :class:`BytesFeedParser` instance. Optional *_factory* is a no-" -"argument callable; if not specified use the :attr:`~email.policy.Policy." -"message_factory` from the *policy*. Call *_factory* whenever a new message " -"object is needed." +"argument callable; if not specified use " +"the :attr:`~email.policy.Policy.message_factory` from the *policy*. Call " +"*_factory* whenever a new message object is needed." msgstr "" msgid "" "If *policy* is specified use the rules it specifies to update the " -"representation of the message. If *policy* is not set, use the :class:" -"`compat32 ` policy, which maintains backward " -"compatibility with the Python 3.2 version of the email package and provides :" -"class:`~email.message.Message` as the default factory. All other policies " -"provide :class:`~email.message.EmailMessage` as the default *_factory*. For " -"more information on what else *policy* controls, see the :mod:`~email." -"policy` documentation." +"representation of the message. If *policy* is not set, use " +"the :class:`compat32 ` policy, which maintains " +"backward compatibility with the Python 3.2 version of the email package and " +"provides :class:`~email.message.Message` as the default factory. All other " +"policies provide :class:`~email.message.EmailMessage` as the default " +"*_factory*. For more information on what else *policy* controls, see " +"the :mod:`~email.policy` documentation." msgstr "" msgid "" -"Note: **The policy keyword should always be specified**; The default will " +"Note: **The policy keyword should always be specified**. The default will " "change to :data:`email.policy.default` in a future version of Python." msgstr "" @@ -142,10 +142,10 @@ msgid "" msgstr "" msgid "" -"Works like :class:`BytesFeedParser` except that the input to the :meth:" -"`~BytesFeedParser.feed` method must be a string. This is of limited " -"utility, since the only way for such a message to be valid is for it to " -"contain only ASCII text or, if :attr:`~email.policy.EmailPolicy.utf8` is " +"Works like :class:`BytesFeedParser` except that the input to " +"the :meth:`~BytesFeedParser.feed` method must be a string. This is of " +"limited utility, since the only way for such a message to be valid is for it " +"to contain only ASCII text or, if :attr:`~email.policy.EmailPolicy.utf8` is " "``True``, no binary attachments." msgstr "" @@ -156,13 +156,13 @@ msgid "" "The :class:`BytesParser` class, imported from the :mod:`!email.parser` " "module, provides an API that can be used to parse a message when the " "complete contents of the message are available in a :term:`bytes-like " -"object` or file. The :mod:`!email.parser` module also provides :class:" -"`Parser` for parsing strings, and header-only parsers, :class:" -"`BytesHeaderParser` and :class:`HeaderParser`, which can be used if you're " -"only interested in the headers of the message. :class:`BytesHeaderParser` " -"and :class:`HeaderParser` can be much faster in these situations, since they " -"do not attempt to parse the message body, instead setting the payload to the " -"raw body." +"object` or file. The :mod:`!email.parser` module also " +"provides :class:`Parser` for parsing strings, and header-only " +"parsers, :class:`BytesHeaderParser` and :class:`HeaderParser`, which can be " +"used if you're only interested in the headers of the " +"message. :class:`BytesHeaderParser` and :class:`HeaderParser` can be much " +"faster in these situations, since they do not attempt to parse the message " +"body, instead setting the payload to the raw body." msgstr "" msgid "" @@ -181,8 +181,9 @@ msgstr "" msgid "" "Read all the data from the binary file-like object *fp*, parse the resulting " -"bytes, and return the message object. *fp* must support both the :meth:`~io." -"IOBase.readline` and the :meth:`~io.BufferedIOBase.read` methods." +"bytes, and return the message object. *fp* must support both " +"the :meth:`~io.IOBase.readline` and the :meth:`~io.BufferedIOBase.read` " +"methods." msgstr "" msgid "" @@ -191,8 +192,8 @@ msgid "" "headers and header continuation lines, optionally preceded by an envelope " "header. The header block is terminated either by the end of the data or by " "a blank line. Following the header block is the body of the message (which " -"may contain MIME-encoded subparts, including subparts with a :mailheader:" -"`Content-Transfer-Encoding` of ``8bit``)." +"may contain MIME-encoded subparts, including subparts with " +"a :mailheader:`Content-Transfer-Encoding` of ``8bit``)." msgstr "" msgid "" @@ -203,9 +204,9 @@ msgstr "" msgid "" "Similar to the :meth:`parse` method, except it takes a :term:`bytes-like " -"object` instead of a file-like object. Calling this method on a :term:" -"`bytes-like object` is equivalent to wrapping *bytes* in a :class:`~io." -"BytesIO` instance first and calling :meth:`parse`." +"object` instead of a file-like object. Calling this method on " +"a :term:`bytes-like object` is equivalent to wrapping *bytes* in " +"a :class:`~io.BytesIO` instance first and calling :meth:`parse`." msgstr "" msgid "Optional *headersonly* is as with the :meth:`parse` method." @@ -231,15 +232,15 @@ msgid "" msgstr "" msgid "" -"Other than the text mode requirement, this method operates like :meth:" -"`BytesParser.parse`." +"Other than the text mode requirement, this method operates " +"like :meth:`BytesParser.parse`." msgstr "" msgid "" "Similar to the :meth:`parse` method, except it takes a string object instead " "of a file-like object. Calling this method on a string is equivalent to " -"wrapping *text* in a :class:`~io.StringIO` instance first and calling :meth:" -"`parse`." +"wrapping *text* in a :class:`~io.StringIO` instance first and " +"calling :meth:`parse`." msgstr "" msgid "" @@ -297,34 +298,36 @@ msgstr "" msgid "" "Most non-\\ :mimetype:`multipart` type messages are parsed as a single " "message object with a string payload. These objects will return ``False`` " -"for :meth:`~email.message.EmailMessage.is_multipart`, and :meth:`~email." -"message.EmailMessage.iter_parts` will yield an empty list." +"for :meth:`~email.message.EmailMessage.is_multipart`, " +"and :meth:`~email.message.EmailMessage.iter_parts` will yield an empty list." msgstr "" msgid "" "All :mimetype:`multipart` type messages will be parsed as a container " "message object with a list of sub-message objects for their payload. The " -"outer container message will return ``True`` for :meth:`~email.message." -"EmailMessage.is_multipart`, and :meth:`~email.message.EmailMessage." -"iter_parts` will yield a list of subparts." +"outer container message will return ``True`` " +"for :meth:`~email.message.EmailMessage.is_multipart`, " +"and :meth:`~email.message.EmailMessage.iter_parts` will yield a list of " +"subparts." msgstr "" msgid "" -"Most messages with a content type of :mimetype:`message/\\*` (such as :" -"mimetype:`message/delivery-status` and :mimetype:`message/rfc822`) will also " -"be parsed as container object containing a list payload of length 1. Their :" -"meth:`~email.message.EmailMessage.is_multipart` method will return ``True``. " -"The single element yielded by :meth:`~email.message.EmailMessage.iter_parts` " -"will be a sub-message object." +"Most messages with a content type of :mimetype:`message/\\*` (such " +"as :mimetype:`message/delivery-status` and :mimetype:`message/rfc822`) will " +"also be parsed as container object containing a list payload of length 1. " +"Their :meth:`~email.message.EmailMessage.is_multipart` method will return " +"``True``. The single element yielded " +"by :meth:`~email.message.EmailMessage.iter_parts` will be a sub-message " +"object." msgstr "" msgid "" "Some non-standards-compliant messages may not be internally consistent about " -"their :mimetype:`multipart`\\ -edness. Such messages may have a :mailheader:" -"`Content-Type` header of type :mimetype:`multipart`, but their :meth:`~email." -"message.EmailMessage.is_multipart` method may return ``False``. If such " -"messages were parsed with the :class:`~email.parser.FeedParser`, they will " -"have an instance of the :class:`~email.errors." -"MultipartInvariantViolationDefect` class in their *defects* attribute list. " -"See :mod:`email.errors` for details." +"their :mimetype:`multipart`\\ -edness. Such messages may have " +"a :mailheader:`Content-Type` header of type :mimetype:`multipart`, but " +"their :meth:`~email.message.EmailMessage.is_multipart` method may return " +"``False``. If such messages were parsed with " +"the :class:`~email.parser.FeedParser`, they will have an instance of " +"the :class:`~email.errors.MultipartInvariantViolationDefect` class in their " +"*defects* attribute list. See :mod:`email.errors` for details." msgstr "" diff --git a/library/email.po b/library/email.po index 3213210..64cd81d 100644 --- a/library/email.po +++ b/library/email.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,12 +26,12 @@ msgstr "" msgid "" "The :mod:`!email` package is a library for managing email messages. It is " -"specifically *not* designed to do any sending of email messages to SMTP (:" -"rfc:`2821`), NNTP, or other servers; those are functions of modules such as :" -"mod:`smtplib`. The :mod:`!email` package attempts to be as RFC-compliant as " -"possible, supporting :rfc:`5322` and :rfc:`6532`, as well as such MIME-" -"related RFCs as :rfc:`2045`, :rfc:`2046`, :rfc:`2047`, :rfc:`2183`, and :rfc:" -"`2231`." +"specifically *not* designed to do any sending of email messages to SMTP " +"(:rfc:`2821`), NNTP, or other servers; those are functions of modules such " +"as :mod:`smtplib`. The :mod:`!email` package attempts to be as RFC-" +"compliant as possible, supporting :rfc:`5322` and :rfc:`6532`, as well as " +"such MIME-related RFCs " +"as :rfc:`2045`, :rfc:`2046`, :rfc:`2047`, :rfc:`2183`, and :rfc:`2231`." msgstr "" msgid "" @@ -48,33 +48,33 @@ msgid "" "to construct a new email, or to add or remove email subcomponents that " "themselves use the same object model interface. That is, following the " "nature of email messages and their MIME subcomponents, the email object " -"model is a tree structure of objects that all provide the :class:`~email." -"message.EmailMessage` API." +"model is a tree structure of objects that all provide " +"the :class:`~email.message.EmailMessage` API." msgstr "" msgid "" "The other two major components of the package are the :mod:`~email.parser` " "and the :mod:`~email.generator`. The parser takes the serialized version of " -"an email message (a stream of bytes) and converts it into a tree of :class:" -"`~email.message.EmailMessage` objects. The generator takes an :class:" -"`~email.message.EmailMessage` and turns it back into a serialized byte " -"stream. (The parser and generator also handle streams of text characters, " -"but this usage is discouraged as it is too easy to end up with messages that " -"are not valid in one way or another.)" +"an email message (a stream of bytes) and converts it into a tree " +"of :class:`~email.message.EmailMessage` objects. The generator takes " +"an :class:`~email.message.EmailMessage` and turns it back into a serialized " +"byte stream. (The parser and generator also handle streams of text " +"characters, but this usage is discouraged as it is too easy to end up with " +"messages that are not valid in one way or another.)" msgstr "" msgid "" -"The control component is the :mod:`~email.policy` module. Every :class:" -"`~email.message.EmailMessage`, every :mod:`~email.generator`, and every :mod:" -"`~email.parser` has an associated :mod:`~email.policy` object that controls " -"its behavior. Usually an application only needs to specify the policy when " -"an :class:`~email.message.EmailMessage` is created, either by directly " -"instantiating an :class:`~email.message.EmailMessage` to create a new " -"email, or by parsing an input stream using a :mod:`~email.parser`. But the " -"policy can be changed when the message is serialized using a :mod:`~email." -"generator`. This allows, for example, a generic email message to be parsed " -"from disk, but to serialize it using standard SMTP settings when sending it " -"to an email server." +"The control component is the :mod:`~email.policy` module. " +"Every :class:`~email.message.EmailMessage`, every :mod:`~email.generator`, " +"and every :mod:`~email.parser` has an associated :mod:`~email.policy` object " +"that controls its behavior. Usually an application only needs to specify " +"the policy when an :class:`~email.message.EmailMessage` is created, either " +"by directly instantiating an :class:`~email.message.EmailMessage` to create " +"a new email, or by parsing an input stream using a :mod:`~email.parser`. " +"But the policy can be changed when the message is serialized using " +"a :mod:`~email.generator`. This allows, for example, a generic email message " +"to be parsed from disk, but to serialize it using standard SMTP settings " +"when sending it to an email server." msgstr "" msgid "" @@ -96,21 +96,21 @@ msgstr "" msgid "" "The following sections describe the functionality of the :mod:`!email` " "package. We start with the :mod:`~email.message` object model, which is the " -"primary interface an application will use, and follow that with the :mod:" -"`~email.parser` and :mod:`~email.generator` components. Then we cover the :" -"mod:`~email.policy` controls, which completes the treatment of the main " -"components of the library." +"primary interface an application will use, and follow that with " +"the :mod:`~email.parser` and :mod:`~email.generator` components. Then we " +"cover the :mod:`~email.policy` controls, which completes the treatment of " +"the main components of the library." msgstr "" msgid "" "The next three sections cover the exceptions the package may raise and the " "defects (non-compliance with the RFCs) that the :mod:`~email.parser` may " -"detect. Then we cover the :mod:`~email.headerregistry` and the :mod:`~email." -"contentmanager` sub-components, which provide tools for doing more detailed " -"manipulation of headers and payloads, respectively. Both of these " -"components contain features relevant to consuming and producing non-trivial " -"messages, but also document their extensibility APIs, which will be of " -"interest to advanced applications." +"detect. Then we cover the :mod:`~email.headerregistry` and " +"the :mod:`~email.contentmanager` sub-components, which provide tools for " +"doing more detailed manipulation of headers and payloads, respectively. " +"Both of these components contain features relevant to consuming and " +"producing non-trivial messages, but also document their extensibility APIs, " +"which will be of interest to advanced applications." msgstr "" msgid "" @@ -120,19 +120,21 @@ msgstr "" msgid "" "The foregoing represent the modern (Unicode friendly) API of the email " -"package. The remaining sections, starting with the :class:`~email.message." -"Message` class, cover the legacy :data:`~email.policy.compat32` API that " -"deals much more directly with the details of how email messages are " -"represented. The :data:`~email.policy.compat32` API does *not* hide the " -"details of the RFCs from the application, but for applications that need to " -"operate at that level, they can be useful tools. This documentation is also " -"relevant for applications that are still using the :mod:`~email.policy." -"compat32` API for backward compatibility reasons." +"package. The remaining sections, starting with " +"the :class:`~email.message.Message` class, cover the " +"legacy :data:`~email.policy.compat32` API that deals much more directly with " +"the details of how email messages are represented. " +"The :data:`~email.policy.compat32` API does *not* hide the details of the " +"RFCs from the application, but for applications that need to operate at that " +"level, they can be useful tools. This documentation is also relevant for " +"applications that are still using the :mod:`~email.policy.compat32` API for " +"backward compatibility reasons." msgstr "" msgid "" -"Docs reorganized and rewritten to promote the new :class:`~email.message." -"EmailMessage`/:class:`~email.policy.EmailPolicy` API." +"Docs reorganized and rewritten to promote the " +"new :class:`~email.message.EmailMessage`/:class:`~email.policy.EmailPolicy` " +"API." msgstr "" msgid "Contents of the :mod:`!email` package documentation:" diff --git a/library/email.policy.po b/library/email.policy.po index 20e132f..5597a42 100644 --- a/library/email.policy.po +++ b/library/email.policy.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,37 +49,38 @@ msgstr "" msgid "" "A :class:`Policy` object encapsulates a set of attributes and methods that " -"control the behavior of various components of the email package during use. :" -"class:`Policy` instances can be passed to various classes and methods in the " -"email package to alter the default behavior. The settable values and their " -"defaults are described below." +"control the behavior of various components of the email package during " +"use. :class:`Policy` instances can be passed to various classes and methods " +"in the email package to alter the default behavior. The settable values and " +"their defaults are described below." msgstr "" msgid "" "There is a default policy used by all classes in the email package. For all " "of the :mod:`~email.parser` classes and the related convenience functions, " -"and for the :class:`~email.message.Message` class, this is the :class:" -"`Compat32` policy, via its corresponding pre-defined instance :const:" -"`compat32`. This policy provides for complete backward compatibility (in " -"some cases, including bug compatibility) with the pre-Python3.3 version of " -"the email package." +"and for the :class:`~email.message.Message` class, this is " +"the :class:`Compat32` policy, via its corresponding pre-defined " +"instance :const:`compat32`. This policy provides for complete backward " +"compatibility (in some cases, including bug compatibility) with the pre-" +"Python3.3 version of the email package." msgstr "" msgid "" -"This default value for the *policy* keyword to :class:`~email.message." -"EmailMessage` is the :class:`EmailPolicy` policy, via its pre-defined " -"instance :data:`~default`." +"This default value for the *policy* keyword " +"to :class:`~email.message.EmailMessage` is the :class:`EmailPolicy` policy, " +"via its pre-defined instance :data:`~default`." msgstr "" msgid "" -"When a :class:`~email.message.Message` or :class:`~email.message." -"EmailMessage` object is created, it acquires a policy. If the message is " -"created by a :mod:`~email.parser`, a policy passed to the parser will be the " -"policy used by the message it creates. If the message is created by the " -"program, then the policy can be specified when it is created. When a " -"message is passed to a :mod:`~email.generator`, the generator uses the " -"policy from the message by default, but you can also pass a specific policy " -"to the generator that will override the one stored on the message object." +"When a :class:`~email.message.Message` " +"or :class:`~email.message.EmailMessage` object is created, it acquires a " +"policy. If the message is created by a :mod:`~email.parser`, a policy " +"passed to the parser will be the policy used by the message it creates. If " +"the message is created by the program, then the policy can be specified when " +"it is created. When a message is passed to a :mod:`~email.generator`, the " +"generator uses the policy from the message by default, but you can also pass " +"a specific policy to the generator that will override the one stored on the " +"message object." msgstr "" msgid "" @@ -103,8 +104,8 @@ msgstr "" msgid "" ":class:`Policy` instances are immutable, but they can be cloned, accepting " -"the same keyword arguments as the class constructor and returning a new :" -"class:`Policy` instance that is a copy of the original but with the " +"the same keyword arguments as the class constructor and returning a " +"new :class:`Policy` instance that is a copy of the original but with the " "specified attributes values changed." msgstr "" @@ -243,9 +244,9 @@ msgid "" msgstr "" msgid "" -"If :const:`True`, any defects encountered will be raised as errors. If :" -"const:`False` (the default), defects will be passed to the :meth:" -"`register_defect` method." +"If :const:`True`, any defects encountered will be raised as errors. " +"If :const:`False` (the default), defects will be passed to " +"the :meth:`register_defect` method." msgstr "" msgid "" @@ -256,22 +257,22 @@ msgstr "" msgid "" "A factory function for constructing a new empty message object. Used by the " -"parser when building messages. Defaults to ``None``, in which case :class:" -"`~email.message.Message` is used." +"parser when building messages. Defaults to ``None``, in which " +"case :class:`~email.message.Message` is used." msgstr "" msgid "" -"If ``True`` (the default), the generator will raise :exc:`~email.errors." -"HeaderWriteError` instead of writing a header that is improperly folded or " -"delimited, such that it would be parsed as multiple headers or joined with " -"adjacent data. Such headers can be generated by custom header classes or " -"bugs in the ``email`` module." +"If ``True`` (the default), the generator will " +"raise :exc:`~email.errors.HeaderWriteError` instead of writing a header that " +"is improperly folded or delimited, such that it would be parsed as multiple " +"headers or joined with adjacent data. Such headers can be generated by " +"custom header classes or bugs in the ``email`` module." msgstr "" msgid "" -"As it's a security feature, this defaults to ``True`` even in the :class:" -"`~email.policy.Compat32` policy. For backwards compatible, but unsafe, " -"behavior, it must be set to ``False`` explicitly." +"As it's a security feature, this defaults to ``True`` even in " +"the :class:`~email.policy.Compat32` policy. For backwards compatible, but " +"unsafe, behavior, it must be set to ``False`` explicitly." msgstr "" msgid "" @@ -320,10 +321,11 @@ msgid "Return the maximum allowed number of headers named *name*." msgstr "" msgid "" -"Called when a header is added to an :class:`~email.message.EmailMessage` or :" -"class:`~email.message.Message` object. If the returned value is not ``0`` " -"or ``None``, and there are already a number of headers with the name *name* " -"greater than or equal to the value returned, a :exc:`ValueError` is raised." +"Called when a header is added to an :class:`~email.message.EmailMessage` " +"or :class:`~email.message.Message` object. If the returned value is not " +"``0`` or ``None``, and there are already a number of headers with the name " +"*name* greater than or equal to the value returned, a :exc:`ValueError` is " +"raised." msgstr "" msgid "" @@ -394,9 +396,9 @@ msgid "" "The email package calls this method with the *name* and *value* currently " "stored in the ``Message`` for a given header. The method should return a " "string that represents that header \"folded\" correctly (according to the " -"policy settings) by composing the *name* with the *value* and inserting :" -"attr:`linesep` characters at the appropriate places. See :rfc:`5322` for a " -"discussion of the rules for folding email headers." +"policy settings) by composing the *name* with the *value* and " +"inserting :attr:`linesep` characters at the appropriate places. " +"See :rfc:`5322` for a discussion of the rules for folding email headers." msgstr "" msgid "" @@ -442,22 +444,22 @@ msgstr "" msgid "" "If ``False``, follow :rfc:`5322`, supporting non-ASCII characters in headers " -"by encoding them as :rfc:`2047` \"encoded words\". If ``True``, follow :rfc:" -"`6532` and use ``utf-8`` encoding for headers. Messages formatted in this " -"way may be passed to SMTP servers that support the ``SMTPUTF8`` extension (:" -"rfc:`6531`)." +"by encoding them as :rfc:`2047` \"encoded words\". If ``True``, " +"follow :rfc:`6532` and use ``utf-8`` encoding for headers. Messages " +"formatted in this way may be passed to SMTP servers that support the " +"``SMTPUTF8`` extension (:rfc:`6531`)." msgstr "" msgid "" -"When ``False``, the generator will raise :exc:`~email.errors." -"HeaderWriteError` if any header includes non-ASCII characters in a context " -"where :rfc:`2047` does not permit encoded words. This particularly applies " -"to mailboxes (\"addr-spec\") with non-ASCII characters, which can be created " -"via :class:`~email.headerregistry.Address`. To use a mailbox with a non-" -"ASCII domain name with ``utf8=False``, first encode the domain using the " -"third-party :pypi:`idna` or :pypi:`uts46` module or with :mod:`encodings." -"idna`. It is not possible to use a non-ASCII username (\"local-part\") in a " -"mailbox when ``utf8=False``." +"When ``False``, the generator will " +"raise :exc:`~email.errors.HeaderWriteError` if any header includes non-ASCII " +"characters in a context where :rfc:`2047` does not permit encoded words. " +"This particularly applies to mailboxes (\"addr-spec\") with non-ASCII " +"characters, which can be created via :class:`~email.headerregistry.Address`. " +"To use a mailbox with a non-ASCII domain name with ``utf8=False``, first " +"encode the domain using the third-party :pypi:`idna` or :pypi:`uts46` module " +"or with :mod:`encodings.idna`. It is not possible to use a non-ASCII " +"username (\"local-part\") in a mailbox when ``utf8=False``." msgstr "" msgid "" @@ -467,9 +469,9 @@ msgid "" msgstr "" msgid "" -"If the value for a header in the ``Message`` object originated from a :mod:" -"`~email.parser` (as opposed to being set by a program), this attribute " -"indicates whether or not a generator should refold that value when " +"If the value for a header in the ``Message`` object originated from " +"a :mod:`~email.parser` (as opposed to being set by a program), this " +"attribute indicates whether or not a generator should refold that value when " "transforming the message back into serialized form. The possible values are:" msgstr "" @@ -507,13 +509,14 @@ msgid "" msgstr "" msgid "" -"An object with at least two methods: get_content and set_content. When the :" -"meth:`~email.message.EmailMessage.get_content` or :meth:`~email.message." -"EmailMessage.set_content` method of an :class:`~email.message.EmailMessage` " -"object is called, it calls the corresponding method of this object, passing " -"it the message object as its first argument, and any arguments or keywords " -"that were passed to it as additional arguments. By default " -"``content_manager`` is set to :data:`~email.contentmanager.raw_data_manager`." +"An object with at least two methods: get_content and set_content. When " +"the :meth:`~email.message.EmailMessage.get_content` " +"or :meth:`~email.message.EmailMessage.set_content` method of " +"an :class:`~email.message.EmailMessage` object is called, it calls the " +"corresponding method of this object, passing it the message object as its " +"first argument, and any arguments or keywords that were passed to it as " +"additional arguments. By default ``content_manager`` is set " +"to :data:`~email.contentmanager.raw_data_manager`." msgstr "" msgid "" @@ -578,7 +581,7 @@ msgstr "" msgid "" "If :attr:`~Policy.cte_type` is ``8bit``, non-ASCII binary data is converted " "back into bytes. Headers with binary data are not refolded, regardless of " -"the ``refold_header`` setting, since there is no way to know whether the " +"the ``refold_source`` setting, since there is no way to know whether the " "binary data consists of single byte characters or multibyte characters." msgstr "" @@ -604,8 +607,8 @@ msgid "" "The same as ``SMTP`` except that :attr:`~EmailPolicy.utf8` is ``True``. " "Useful for serializing messages to a message store without using encoded " "words in the headers. Should only be used for SMTP transmission if the " -"sender or recipient addresses have non-ASCII characters (the :meth:`smtplib." -"SMTP.send_message` method handles this automatically)." +"sender or recipient addresses have non-ASCII characters " +"(the :meth:`smtplib.SMTP.send_message` method handles this automatically)." msgstr "" msgid "" @@ -645,8 +648,8 @@ msgid "" msgstr "" msgid "" -"From the application view, this means that any header obtained through the :" -"class:`~email.message.EmailMessage` is a header object with extra " +"From the application view, this means that any header obtained through " +"the :class:`~email.message.EmailMessage` is a header object with extra " "attributes, whose string value is the fully decoded value of the header. " "Likewise, a header may be assigned a new value, or a new header created, " "using a string, and the policy will take care of converting the string into " @@ -654,8 +657,8 @@ msgid "" msgstr "" msgid "" -"The header objects and their attributes are described in :mod:`~email." -"headerregistry`." +"The header objects and their attributes are described " +"in :mod:`~email.headerregistry`." msgstr "" msgid "" @@ -667,8 +670,8 @@ msgid "" msgstr "" msgid "" -"The following attributes have values that are different from the :class:" -"`Policy` default:" +"The following attributes have values that are different from " +"the :class:`Policy` default:" msgstr "" msgid "The default is ``True``." @@ -678,9 +681,9 @@ msgid "The name and value are returned unmodified." msgstr "" msgid "" -"If the value contains binary data, it is converted into a :class:`~email." -"header.Header` object using the ``unknown-8bit`` charset. Otherwise it is " -"returned unmodified." +"If the value contains binary data, it is converted into " +"a :class:`~email.header.Header` object using the ``unknown-8bit`` charset. " +"Otherwise it is returned unmodified." msgstr "" msgid "" @@ -705,9 +708,9 @@ msgid "" msgstr "" msgid "" -"The :const:`compat32` policy should not be used as a policy for :class:" -"`~email.message.EmailMessage` objects, and should only be used to serialize " -"messages that were created using the :const:`compat32` policy." +"The :const:`compat32` policy should not be used as a policy " +"for :class:`~email.message.EmailMessage` objects, and should only be used to " +"serialize messages that were created using the :const:`compat32` policy." msgstr "" msgid "Footnotes" diff --git a/library/email.utils.po b/library/email.utils.po index e2627bd..eedd238 100644 --- a/library/email.utils.po +++ b/library/email.utils.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,23 +35,23 @@ msgstr "" msgid "" "Return local time as an aware datetime object. If called without arguments, " -"return current time. Otherwise *dt* argument should be a :class:`~datetime." -"datetime` instance, and it is converted to the local time zone according to " -"the system time zone database. If *dt* is naive (that is, ``dt.tzinfo`` is " -"``None``), it is assumed to be in local time." +"return the current time. Otherwise the *dt* argument should be " +"a :class:`~datetime.datetime` instance, and it is converted to the local " +"time zone according to the system time zone database. If *dt* is naive " +"(that is, ``dt.tzinfo`` is ``None``), it is assumed to be in local time." msgstr "" msgid "The *isdst* parameter." msgstr "" msgid "" -"Returns a string suitable for an :rfc:`2822`\\ -compliant :mailheader:" -"`Message-ID` header. Optional *idstring* if given, is a string used to " -"strengthen the uniqueness of the message id. Optional *domain* if given " -"provides the portion of the msgid after the '@'. The default is the local " -"hostname. It is not normally necessary to override this default, but may be " -"useful certain cases, such as a constructing distributed system that uses a " -"consistent domain name across multiple hosts." +"Returns a string suitable for an :rfc:`2822`\\ " +"-compliant :mailheader:`Message-ID` header. Optional *idstring*, if given, " +"is a string used to strengthen the uniqueness of the message id. Optional " +"*domain*, if given, provides the portion of the msgid after the '@'. The " +"default is the local hostname. It is normally not necessary to override " +"this default, but may be useful in certain cases, such as constructing a " +"distributed system that uses a consistent domain name across multiple hosts." msgstr "" msgid "Added the *domain* keyword." @@ -90,26 +90,27 @@ msgid "Add *strict* optional parameter and reject malformed inputs by default." msgstr "" msgid "" -"The inverse of :meth:`parseaddr`, this takes a 2-tuple of the form " -"``(realname, email_address)`` and returns the string value suitable for a :" -"mailheader:`To` or :mailheader:`Cc` header. If the first element of *pair* " -"is false, then the second element is returned unmodified." +"The inverse of :func:`parseaddr`, this takes a 2-tuple of the form " +"``(realname, email_address)`` and returns the string value suitable for " +"a :mailheader:`To` or :mailheader:`Cc` header. If the first element of " +"*pair* is false, then the second element is returned unmodified." msgstr "" msgid "" "Optional *charset* is the character set that will be used in the :rfc:`2047` " "encoding of the ``realname`` if the ``realname`` contains non-ASCII " -"characters. Can be an instance of :class:`str` or a :class:`~email.charset." -"Charset`. Defaults to ``utf-8``." +"characters. Can be an instance of :class:`str` or " +"a :class:`~email.charset.Charset`. Defaults to ``utf-8``." msgstr "" msgid "Added the *charset* option." msgstr "" msgid "" -"This method returns a list of 2-tuples of the form returned by " -"``parseaddr()``. *fieldvalues* is a sequence of header field values as might " -"be returned by :meth:`Message.get_all `." +"This function returns a list of 2-tuples of the form returned " +"by :func:`parseaddr`. *fieldvalues* is a sequence of header field values as " +"might be returned by :meth:`Message.get_all() " +"`." msgstr "" msgid "Here's a simple example that gets all the recipients of a message::" @@ -126,13 +127,14 @@ msgid "" msgstr "" msgid "" -"Attempts to parse a date according to the rules in :rfc:`2822`. however, " -"some mailers don't follow that format as specified, so :func:`parsedate` " -"tries to guess correctly in such cases. *date* is a string containing an :" -"rfc:`2822` date, such as ``\"Mon, 20 Nov 1995 19:12:08 -0500\"``. If it " -"succeeds in parsing the date, :func:`parsedate` returns a 9-tuple that can " -"be passed directly to :func:`time.mktime`; otherwise ``None`` will be " -"returned. Note that indexes 6, 7, and 8 of the result tuple are not usable." +"Attempts to parse a date according to the rules in :rfc:`2822#section-3.3`. " +"However, some mailers don't follow that format as specified, " +"so :func:`parsedate` tries to guess correctly in such cases. *date* is a " +"string containing an :rfc:`2822` date, such as ``\"Mon, 20 Nov 1995 19:12:08 " +"-0500\"``. If it succeeds in parsing the date, :func:`parsedate` returns a " +"9-tuple that can be passed directly to :func:`time.mktime`; otherwise " +"``None`` will be returned. Note that indexes 6, 7, and 8 of the result " +"tuple are not usable." msgstr "" msgid "" @@ -146,16 +148,17 @@ msgid "" msgstr "" msgid "" -"The inverse of :func:`format_datetime`. Performs the same function as :func:" -"`parsedate`, but on success returns a :mod:`~datetime.datetime`; otherwise " -"``ValueError`` is raised if *date* contains an invalid value such as an hour " -"greater than 23 or a timezone offset not between -24 and 24 hours. If the " -"input date has a timezone of ``-0000``, the ``datetime`` will be a naive " -"``datetime``, and if the date is conforming to the RFCs it will represent a " -"time in UTC but with no indication of the actual source timezone of the " -"message the date comes from. If the input date has any other valid timezone " -"offset, the ``datetime`` will be an aware ``datetime`` with the " -"corresponding a :class:`~datetime.timezone` :class:`~datetime.tzinfo`." +"The inverse of :func:`format_datetime`. Performs the same function " +"as :func:`parsedate`, but on success returns a :class:`~datetime.datetime`; " +"otherwise :exc:`ValueError` is raised if *date* contains an invalid value " +"such as an hour greater than 23 or a timezone offset not between -24 and 24 " +"hours. If the input date has a timezone of ``-0000``, the ``datetime`` will " +"be a naive ``datetime``, and if the date conforms to the RFCs it will " +"represent a time in UTC but with no indication of the actual source timezone " +"of the message the date comes from. If the input date has any other valid " +"timezone offset, the ``datetime`` will be an aware ``datetime`` whose " +"corresponding :attr:`~datetime.datetime.tzinfo` attribute is " +"a :class:`~datetime.timezone` object." msgstr "" msgid "" @@ -164,41 +167,41 @@ msgid "" "assume local time." msgstr "" -msgid "Returns a date string as per :rfc:`2822`, e.g.::" +msgid "Returns a date string as per :rfc:`2822`, for example::" msgstr "" msgid "Fri, 09 Nov 2001 01:08:47 -0000" msgstr "" msgid "" -"Optional *timeval* if given is a floating-point time value as accepted by :" -"func:`time.gmtime` and :func:`time.localtime`, otherwise the current time is " -"used." +"Optional *timeval*, if given, is a floating-point time value as accepted " +"by :func:`time.gmtime` and :func:`time.localtime`, otherwise the current " +"time is used." msgstr "" msgid "" "Optional *localtime* is a flag that when ``True``, interprets *timeval*, and " "returns a date relative to the local timezone instead of UTC, properly " -"taking daylight savings time into account. The default is ``False`` meaning " +"taking daylight saving time into account. The default is ``False`` meaning " "UTC is used." msgstr "" msgid "" -"Optional *usegmt* is a flag that when ``True``, outputs a date string with " -"the timezone as an ascii string ``GMT``, rather than a numeric ``-0000``. " +"Optional *usegmt* is a flag that when ``True``, outputs a date string with " +"the timezone as an ASCII string ``GMT``, rather than a numeric ``-0000``. " "This is needed for some protocols (such as HTTP). This only applies when " "*localtime* is ``False``. The default is ``False``." msgstr "" msgid "" -"Like ``formatdate``, but the input is a :mod:`datetime` instance. If it is " -"a naive datetime, it is assumed to be \"UTC with no information about the " -"source timezone\", and the conventional ``-0000`` is used for the timezone. " -"If it is an aware ``datetime``, then the numeric timezone offset is used. If " -"it is an aware timezone with offset zero, then *usegmt* may be set to " -"``True``, in which case the string ``GMT`` is used instead of the numeric " -"timezone offset. This provides a way to generate standards conformant HTTP " -"date headers." +"Like :func:`formatdate`, but the input is a :class:`~datetime.datetime` " +"instance. If it is a naive datetime, it is assumed to be \"UTC with no " +"information about the source timezone\", and the conventional ``-0000`` is " +"used for the timezone. If it is an aware ``datetime``, then the numeric " +"timezone offset is used. If it is an aware timezone with offset zero, then " +"*usegmt* may be set to ``True``, in which case the string ``GMT`` is used " +"instead of the numeric timezone offset. This provides a way to generate " +"standards-conformant HTTP date headers." msgstr "" msgid "Decode the string *s* according to :rfc:`2231`." @@ -206,21 +209,21 @@ msgstr "" msgid "" "Encode the string *s* according to :rfc:`2231`. Optional *charset* and " -"*language*, if given is the character set name and language name to use. If " -"neither is given, *s* is returned as-is. If *charset* is given but " +"*language*, if given, are the character set name and language name to use. " +"If neither is given, *s* is returned as-is. If *charset* is given but " "*language* is not, the string is encoded using the empty string for " "*language*." msgstr "" msgid "" -"When a header parameter is encoded in :rfc:`2231` format, :meth:`Message." -"get_param ` may return a 3-tuple containing " -"the character set, language, and value. :func:`collapse_rfc2231_value` " -"turns this into a string. Optional *errors* is passed to the *errors* " -"argument of :class:`str`'s :func:`~str.encode` method; it defaults to " -"``'replace'``. Optional *fallback_charset* specifies the character set to " -"use if the one in the :rfc:`2231` header is not known by Python; it defaults " -"to ``'us-ascii'``." +"When a header parameter is encoded in :rfc:`2231` " +"format, :meth:`Message.get_param() ` may " +"return a 3-tuple containing the character set, language, and " +"value. :func:`collapse_rfc2231_value` turns this into a string. Optional " +"*errors* is passed to the *errors* argument " +"of :class:`str`'s :meth:`~str.encode` method; it defaults to ``'replace'``. " +"Optional *fallback_charset* specifies the character set to use if the one in " +"the :rfc:`2231` header is not known by Python; it defaults to ``'us-ascii'``." msgstr "" msgid "" @@ -237,7 +240,7 @@ msgid "Footnotes" msgstr "" msgid "" -"Note that the sign of the timezone offset is the opposite of the sign of the " -"``time.timezone`` variable for the same timezone; the latter variable " -"follows the POSIX standard while this module follows :rfc:`2822`." +"Note that the sign of the timezone offset is the opposite of the sign of " +"the :data:`time.timezone` variable for the same timezone; the latter " +"variable follows the POSIX standard while this module follows :rfc:`2822`." msgstr "" diff --git a/library/ensurepip.po b/library/ensurepip.po index 4c3784b..8461f0f 100644 --- a/library/ensurepip.po +++ b/library/ensurepip.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -196,8 +197,8 @@ msgid "" msgstr "" msgid "" -"The bootstrapping process has side effects on both ``sys.path`` and ``os." -"environ``. Invoking the command line interface in a subprocess instead " +"The bootstrapping process has side effects on both ``sys.path`` and " +"``os.environ``. Invoking the command line interface in a subprocess instead " "allows these side effects to be avoided." msgstr "" diff --git a/library/enum.po b/library/enum.po index 94c6212..65e1c28 100644 --- a/library/enum.po +++ b/library/enum.po @@ -12,11 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -119,16 +119,16 @@ msgid ":class:`IntEnum`" msgstr "" msgid "" -"Base class for creating enumerated constants that are also subclasses of :" -"class:`int`. (`Notes`_)" +"Base class for creating enumerated constants that are also subclasses " +"of :class:`int`. (`Notes`_)" msgstr "" msgid ":class:`StrEnum`" msgstr "" msgid "" -"Base class for creating enumerated constants that are also subclasses of :" -"class:`str`. (`Notes`_)" +"Base class for creating enumerated constants that are also subclasses " +"of :class:`str`. (`Notes`_)" msgstr "" msgid ":class:`Flag`" @@ -144,8 +144,9 @@ msgstr "" msgid "" "Base class for creating enumerated constants that can be combined using the " -"bitwise operators without losing their :class:`IntFlag` membership. :class:" -"`IntFlag` members are also subclasses of :class:`int`. (`Notes`_)" +"bitwise operators without losing their :class:`IntFlag` " +"membership. :class:`IntFlag` members are also subclasses of :class:`int`. " +"(`Notes`_)" msgstr "" msgid ":class:`ReprEnum`" @@ -184,9 +185,9 @@ msgid ":class:`auto`" msgstr "" msgid "" -"Instances are replaced with an appropriate value for Enum members. :class:" -"`StrEnum` defaults to the lower-cased version of the member name, while " -"other Enums default to 1 and increase from there." +"Instances are replaced with an appropriate value for Enum " +"members. :class:`StrEnum` defaults to the lower-cased version of the member " +"name, while other Enums default to 1 and increase from there." msgstr "" msgid ":deco:`~enum.property`" @@ -270,10 +271,10 @@ msgid "" msgstr "" msgid "" -"``EnumType`` is responsible for setting the correct :meth:`!__repr__`, :meth:" -"`!__str__`, :meth:`!__format__`, and :meth:`!__reduce__` methods on the " -"final *enum*, as well as creating the enum members, properly handling " -"duplicates, providing iteration over the enum class, etc." +"``EnumType`` is responsible for setting the correct :meth:`!" +"__repr__`, :meth:`!__str__`, :meth:`!__format__`, and :meth:`!__reduce__` " +"methods on the final *enum*, as well as creating the enum members, properly " +"handling duplicates, providing iteration over the enum class, etc." msgstr "" msgid "" @@ -373,8 +374,8 @@ msgid "" msgstr "" msgid "" -"Returns the Enum member in *cls* matching *name*, or raises a :exc:" -"`KeyError`::" +"Returns the Enum member in *cls* matching *name*, or raises " +"a :exc:`KeyError`::" msgstr "" msgid "" @@ -487,8 +488,8 @@ msgstr "" msgid "" "``_ignore_`` is a list of names that will not become members, and whose " -"names will also be removed from the completed enumeration. See :ref:" -"`TimePeriod ` for an example." +"names will also be removed from the completed enumeration. " +"See :ref:`TimePeriod ` for an example." msgstr "" msgid "" @@ -538,8 +539,8 @@ msgid "A list of the previous values." msgstr "" msgid "" -"A *staticmethod* that is used to determine the next value returned by :class:" -"`auto`." +"A *staticmethod* that is used to determine the next value returned " +"by :class:`auto`." msgstr "" msgid "" @@ -641,8 +642,8 @@ msgid "" "... cls_name = self.__class__.__name__\n" "... return f'{cls_name}.{self.name}'\n" "...\n" -">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), f\"{OtherStyle." -"ALTERNATE}\"\n" +">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), " +"f\"{OtherStyle.ALTERNATE}\"\n" "(OtherStyle.ALTERNATE, 'OtherStyle.ALTERNATE', 'OtherStyle.ALTERNATE')" msgstr "" @@ -660,8 +661,8 @@ msgid "" "... def __str__(self):\n" "... return f'{self.name}'\n" "...\n" -">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), f\"{OtherStyle." -"ALTERNATE}\"\n" +">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), " +"f\"{OtherStyle.ALTERNATE}\"\n" "(, 'ALTERNATE', 'ALTERNATE')" msgstr "" @@ -679,8 +680,8 @@ msgid "" "... def __format__(self, spec):\n" "... return f'{self.name}'\n" "...\n" -">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), f\"{OtherStyle." -"ALTERNATE}\"\n" +">>> OtherStyle.ALTERNATE, str(OtherStyle.ALTERNATE), " +"f\"{OtherStyle.ALTERNATE}\"\n" "(, 'OtherStyle.ALTERNATE', 'ALTERNATE')" msgstr "" @@ -902,8 +903,8 @@ msgid "the result is a valid *IntFlag*: an *IntFlag* is returned" msgstr "" msgid "" -"the result is not a valid *IntFlag*: the result depends on the :class:" -"`FlagBoundary` setting" +"the result is not a valid *IntFlag*: the result depends on " +"the :class:`FlagBoundary` setting" msgstr "" msgid "The :func:`repr` of unnamed zero-valued flags has changed. It is now::" @@ -943,9 +944,9 @@ msgid ":meth:`!str.__str__` for :class:`StrEnum`" msgstr "" msgid "" -"Inherit from :class:`!ReprEnum` to keep the :class:`str() ` / :func:" -"`format` of the mixed-in data type instead of using the :class:`Enum`-" -"default :meth:`str() `." +"Inherit from :class:`!ReprEnum` to keep the :class:`str() " +"` / :func:`format` of the mixed-in data type instead of using " +"the :class:`Enum`-default :meth:`str() `." msgstr "" msgid "" @@ -1011,8 +1012,8 @@ msgid "" msgstr "" msgid "" -"``FlagBoundary`` controls how out-of-range values are handled in :class:" -"`Flag` and its subclasses." +"``FlagBoundary`` controls how out-of-range values are handled " +"in :class:`Flag` and its subclasses." msgstr "" msgid "" @@ -1036,8 +1037,8 @@ msgid "" msgstr "" msgid "" -"Out-of-range values have invalid values removed, leaving a valid :class:" -"`Flag` value::" +"Out-of-range values have invalid values removed, leaving a " +"valid :class:`Flag` value::" msgstr "" msgid "" @@ -1052,8 +1053,8 @@ msgid "" msgstr "" msgid "" -"Out-of-range values lose their :class:`Flag` membership and revert to :class:" -"`int`." +"Out-of-range values lose their :class:`Flag` membership and revert " +"to :class:`int`." msgstr "" msgid "" @@ -1082,10 +1083,10 @@ msgid "" msgstr "" msgid "" -"Note that only the :class:`~collections.abc.MutableMapping` interface (:meth:" -"`~object.__setitem__` and :meth:`~dict.update`) is overridden. It may be " -"possible to bypass the checks using other :class:`!dict` operations like :" -"meth:`|= `." +"Note that only the :class:`~collections.abc.MutableMapping` interface " +"(:meth:`~object.__setitem__` and :meth:`~dict.update`) is overridden. It may " +"be possible to bypass the checks using other :class:`!dict` operations " +"like :meth:`|= `." msgstr "" msgid "A list of member names." @@ -1101,9 +1102,9 @@ msgstr "" msgid "" ":meth:`~Enum.__new__`, if specified, must create and return the enum " -"members; it is also a very good idea to set the member's :attr:`~Enum." -"_value_` appropriately. Once all the members are created it is no longer " -"used." +"members; it is also a very good idea to set the " +"member's :attr:`~Enum._value_` appropriately. Once all the members are " +"created it is no longer used." msgstr "" msgid "Supported ``_sunder_`` names" @@ -1121,9 +1122,9 @@ msgid "" msgstr "" msgid "" -":attr:`~Enum._ignore_` -- a list of names, either as a :class:`list` or a :" -"class:`str`, that will not be transformed into members, and will be removed " -"from the final class" +":attr:`~Enum._ignore_` -- a list of names, either as a :class:`list` or " +"a :class:`str`, that will not be transformed into members, and will be " +"removed from the final class" msgstr "" msgid "" @@ -1171,10 +1172,10 @@ msgid "" "*auto* can be used in place of a value. If used, the *Enum* machinery will " "call an :class:`Enum`'s :meth:`~Enum._generate_next_value_` to get an " "appropriate value. For :class:`Enum` and :class:`IntEnum` that appropriate " -"value will be the highest value seen plus one; for :class:`Flag` and :class:" -"`IntFlag` it will be the first power-of-two greater than the highest value " -"seen; for :class:`StrEnum` it will be the lower-cased version of the " -"member's name. Care must be taken if mixing *auto()* with manually " +"value will be the highest value seen plus one; for :class:`Flag` " +"and :class:`IntFlag` it will be the first power-of-two greater than the " +"highest value seen; for :class:`StrEnum` it will be the lower-cased version " +"of the member's name. Care must be taken if mixing *auto()* with manually " "specified values." msgstr "" @@ -1246,9 +1247,9 @@ msgid "" msgstr "" msgid "" -"A :keyword:`class` decorator specifically for enumerations. Members from :" -"class:`EnumCheck` are used to specify which constraints should be checked on " -"the decorated enumeration." +"A :keyword:`class` decorator specifically for enumerations. Members " +"from :class:`EnumCheck` are used to specify which constraints should be " +"checked on the decorated enumeration." msgstr "" msgid "A decorator for use in enums: its target will become a member." diff --git a/library/errno.po b/library/errno.po index 82f477f..1482a3a 100644 --- a/library/errno.po +++ b/library/errno.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +39,8 @@ msgid "" msgstr "" msgid "" -"To translate a numeric error code to an error message, use :func:`os." -"strerror`." +"To translate a numeric error code to an error message, " +"use :func:`os.strerror`." msgstr "" msgid "" @@ -50,23 +50,23 @@ msgid "" msgstr "" msgid "" -"Operation not permitted. This error is mapped to the exception :exc:" -"`PermissionError`." +"Operation not permitted. This error is mapped to the " +"exception :exc:`PermissionError`." msgstr "" msgid "" -"No such file or directory. This error is mapped to the exception :exc:" -"`FileNotFoundError`." +"No such file or directory. This error is mapped to the " +"exception :exc:`FileNotFoundError`." msgstr "" msgid "" -"No such process. This error is mapped to the exception :exc:" -"`ProcessLookupError`." +"No such process. This error is mapped to the " +"exception :exc:`ProcessLookupError`." msgstr "" msgid "" -"Interrupted system call. This error is mapped to the exception :exc:" -"`InterruptedError`." +"Interrupted system call. This error is mapped to the " +"exception :exc:`InterruptedError`." msgstr "" msgid "I/O error" @@ -85,8 +85,8 @@ msgid "Bad file number" msgstr "" msgid "" -"No child processes. This error is mapped to the exception :exc:" -"`ChildProcessError`." +"No child processes. This error is mapped to the " +"exception :exc:`ChildProcessError`." msgstr "" msgid "" @@ -97,8 +97,8 @@ msgid "Out of memory" msgstr "" msgid "" -"Permission denied. This error is mapped to the exception :exc:" -"`PermissionError`." +"Permission denied. This error is mapped to the " +"exception :exc:`PermissionError`." msgstr "" msgid "Bad address" @@ -121,13 +121,13 @@ msgid "No such device" msgstr "" msgid "" -"Not a directory. This error is mapped to the exception :exc:" -"`NotADirectoryError`." +"Not a directory. This error is mapped to the " +"exception :exc:`NotADirectoryError`." msgstr "" msgid "" -"Is a directory. This error is mapped to the exception :exc:" -"`IsADirectoryError`." +"Is a directory. This error is mapped to the " +"exception :exc:`IsADirectoryError`." msgstr "" msgid "Invalid argument" @@ -189,8 +189,8 @@ msgid "Too many symbolic links encountered" msgstr "" msgid "" -"Operation would block. This error is mapped to the exception :exc:" -"`BlockingIOError`." +"Operation would block. This error is mapped to the " +"exception :exc:`BlockingIOError`." msgstr "" msgid "No message of desired type" @@ -380,13 +380,13 @@ msgid "Network dropped connection because of reset" msgstr "" msgid "" -"Software caused connection abort. This error is mapped to the exception :exc:" -"`ConnectionAbortedError`." +"Software caused connection abort. This error is mapped to the " +"exception :exc:`ConnectionAbortedError`." msgstr "" msgid "" -"Connection reset by peer. This error is mapped to the exception :exc:" -"`ConnectionResetError`." +"Connection reset by peer. This error is mapped to the " +"exception :exc:`ConnectionResetError`." msgstr "" msgid "No buffer space available" @@ -407,13 +407,13 @@ msgid "Too many references: cannot splice" msgstr "" msgid "" -"Connection timed out. This error is mapped to the exception :exc:" -"`TimeoutError`." +"Connection timed out. This error is mapped to the " +"exception :exc:`TimeoutError`." msgstr "" msgid "" -"Connection refused. This error is mapped to the exception :exc:" -"`ConnectionRefusedError`." +"Connection refused. This error is mapped to the " +"exception :exc:`ConnectionRefusedError`." msgstr "" msgid "Host is down" @@ -426,13 +426,13 @@ msgid "Memory page has hardware error." msgstr "" msgid "" -"Operation already in progress. This error is mapped to the exception :exc:" -"`BlockingIOError`." +"Operation already in progress. This error is mapped to the " +"exception :exc:`BlockingIOError`." msgstr "" msgid "" -"Operation now in progress. This error is mapped to the exception :exc:" -"`BlockingIOError`." +"Operation now in progress. This error is mapped to the " +"exception :exc:`BlockingIOError`." msgstr "" msgid "Stale NFS file handle" @@ -538,8 +538,8 @@ msgid "Shared library version mismatch" msgstr "" msgid "" -"Capabilities insufficient. This error is mapped to the exception :exc:" -"`PermissionError`." +"Capabilities insufficient. This error is mapped to the " +"exception :exc:`PermissionError`." msgstr "" msgid "Availability" diff --git a/library/exceptions.po b/library/exceptions.po deleted file mode 100644 index 72a7c0f..0000000 --- a/library/exceptions.po +++ /dev/null @@ -1,1201 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Built-in Exceptions" -msgstr "" - -msgid "" -"In Python, all exceptions must be instances of a class that derives from :" -"class:`BaseException`. In a :keyword:`try` statement with an :keyword:" -"`except` clause that mentions a particular class, that clause also handles " -"any exception classes derived from that class (but not exception classes " -"from which *it* is derived). Two exception classes that are not related via " -"subclassing are never equivalent, even if they have the same name." -msgstr "" - -msgid "" -"The built-in exceptions listed in this chapter can be generated by the " -"interpreter or built-in functions. Except where mentioned, they have an " -"\"associated value\" indicating the detailed cause of the error. This may " -"be a string or a tuple of several items of information (e.g., an error code " -"and a string explaining the code). The associated value is usually passed " -"as arguments to the exception class's constructor." -msgstr "" - -msgid "" -"User code can raise built-in exceptions. This can be used to test an " -"exception handler or to report an error condition \"just like\" the " -"situation in which the interpreter raises the same exception; but beware " -"that there is nothing to prevent user code from raising an inappropriate " -"error." -msgstr "" - -msgid "" -"The built-in exception classes can be subclassed to define new exceptions; " -"programmers are encouraged to derive new exceptions from the :exc:" -"`Exception` class or one of its subclasses, and not from :exc:" -"`BaseException`. More information on defining exceptions is available in " -"the Python Tutorial under :ref:`tut-userexceptions`." -msgstr "" - -msgid "Exception context" -msgstr "" - -msgid "" -"Three attributes on exception objects provide information about the context " -"in which the exception was raised:" -msgstr "" - -msgid "" -"When raising a new exception while another exception is already being " -"handled, the new exception's :attr:`!__context__` attribute is automatically " -"set to the handled exception. An exception may be handled when an :keyword:" -"`except` or :keyword:`finally` clause, or a :keyword:`with` statement, is " -"used." -msgstr "" - -msgid "" -"This implicit exception context can be supplemented with an explicit cause " -"by using :keyword:`!from` with :keyword:`raise`::" -msgstr "" - -msgid "raise new_exc from original_exc" -msgstr "" - -msgid "" -"The expression following :keyword:`from` must be an exception or " -"``None``. It will be set as :attr:`!__cause__` on the raised exception. " -"Setting :attr:`!__cause__` also implicitly sets the :attr:`!" -"__suppress_context__` attribute to ``True``, so that using ``raise new_exc " -"from None`` effectively replaces the old exception with the new one for " -"display purposes (e.g. converting :exc:`KeyError` to :exc:`AttributeError`), " -"while leaving the old exception available in :attr:`!__context__` for " -"introspection when debugging." -msgstr "" - -msgid "" -"The default traceback display code shows these chained exceptions in " -"addition to the traceback for the exception itself. An explicitly chained " -"exception in :attr:`!__cause__` is always shown when present. An implicitly " -"chained exception in :attr:`!__context__` is shown only if :attr:`!" -"__cause__` is :const:`None` and :attr:`!__suppress_context__` is false." -msgstr "" - -msgid "" -"In either case, the exception itself is always shown after any chained " -"exceptions so that the final line of the traceback always shows the last " -"exception that was raised." -msgstr "" - -msgid "Inheriting from built-in exceptions" -msgstr "" - -msgid "" -"User code can create subclasses that inherit from an exception type. It's " -"recommended to only subclass one exception type at a time to avoid any " -"possible conflicts between how the bases handle the ``args`` attribute, as " -"well as due to possible memory layout incompatibilities." -msgstr "" - -msgid "" -"Most built-in exceptions are implemented in C for efficiency, see: :source:" -"`Objects/exceptions.c`. Some have custom memory layouts which makes it " -"impossible to create a subclass that inherits from multiple exception types. " -"The memory layout of a type is an implementation detail and might change " -"between Python versions, leading to new conflicts in the future. Therefore, " -"it's recommended to avoid subclassing multiple exception types altogether." -msgstr "" - -msgid "Base classes" -msgstr "" - -msgid "" -"The following exceptions are used mostly as base classes for other " -"exceptions." -msgstr "" - -msgid "" -"The base class for all built-in exceptions. It is not meant to be directly " -"inherited by user-defined classes (for that, use :exc:`Exception`). If :" -"func:`str` is called on an instance of this class, the representation of the " -"argument(s) to the instance are returned, or the empty string when there " -"were no arguments." -msgstr "" - -msgid "" -"The tuple of arguments given to the exception constructor. Some built-in " -"exceptions (like :exc:`OSError`) expect a certain number of arguments and " -"assign a special meaning to the elements of this tuple, while others are " -"usually called only with a single string giving an error message." -msgstr "" - -msgid "" -"This method sets *tb* as the new traceback for the exception and returns the " -"exception object. It was more commonly used before the exception chaining " -"features of :pep:`3134` became available. The following example shows how " -"we can convert an instance of ``SomeException`` into an instance of " -"``OtherException`` while preserving the traceback. Once raised, the current " -"frame is pushed onto the traceback of the ``OtherException``, as would have " -"happened to the traceback of the original ``SomeException`` had we allowed " -"it to propagate to the caller. ::" -msgstr "" - -msgid "" -"try:\n" -" ...\n" -"except SomeException:\n" -" tb = sys.exception().__traceback__\n" -" raise OtherException(...).with_traceback(tb)" -msgstr "" - -msgid "" -"A writable field that holds the :ref:`traceback object ` " -"associated with this exception. See also: :ref:`raise`." -msgstr "" - -msgid "" -"Add the string ``note`` to the exception's notes which appear in the " -"standard traceback after the exception string. A :exc:`TypeError` is raised " -"if ``note`` is not a string." -msgstr "" - -msgid "" -"A list of the notes of this exception, which were added with :meth:" -"`add_note`. This attribute is created when :meth:`add_note` is called." -msgstr "" - -msgid "" -"All built-in, non-system-exiting exceptions are derived from this class. " -"All user-defined exceptions should also be derived from this class." -msgstr "" - -msgid "" -"The base class for those built-in exceptions that are raised for various " -"arithmetic errors: :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:" -"`FloatingPointError`." -msgstr "" - -msgid "" -"Raised when a :ref:`buffer ` related operation cannot be " -"performed." -msgstr "" - -msgid "" -"The base class for the exceptions that are raised when a key or index used " -"on a mapping or sequence is invalid: :exc:`IndexError`, :exc:`KeyError`. " -"This can be raised directly by :func:`codecs.lookup`." -msgstr "" - -msgid "Concrete exceptions" -msgstr "" - -msgid "The following exceptions are the exceptions that are usually raised." -msgstr "" - -msgid "Raised when an :keyword:`assert` statement fails." -msgstr "" - -msgid "" -"Raised when an attribute reference (see :ref:`attribute-references`) or " -"assignment fails. (When an object does not support attribute references or " -"attribute assignments at all, :exc:`TypeError` is raised.)" -msgstr "" - -msgid "" -"The optional *name* and *obj* keyword-only arguments set the corresponding " -"attributes:" -msgstr "" - -msgid "The name of the attribute that was attempted to be accessed." -msgstr "" - -msgid "The object that was accessed for the named attribute." -msgstr "" - -msgid "Added the :attr:`name` and :attr:`obj` attributes." -msgstr "" - -msgid "" -"Raised when the :func:`input` function hits an end-of-file condition (EOF) " -"without reading any data. (Note: the :meth:`io.TextIOBase.read` and :meth:" -"`io.IOBase.readline` methods return an empty string when they hit EOF.)" -msgstr "" - -msgid "Not currently used." -msgstr "" - -msgid "" -"Raised when a :term:`generator` or :term:`coroutine` is closed; see :meth:" -"`generator.close` and :meth:`coroutine.close`. It directly inherits from :" -"exc:`BaseException` instead of :exc:`Exception` since it is technically not " -"an error." -msgstr "" - -msgid "" -"Raised when the :keyword:`import` statement has troubles trying to load a " -"module. Also raised when the \"from list\" in ``from ... import`` has a " -"name that cannot be found." -msgstr "" - -msgid "" -"The optional *name* and *path* keyword-only arguments set the corresponding " -"attributes:" -msgstr "" - -msgid "The name of the module that was attempted to be imported." -msgstr "" - -msgid "The path to any file which triggered the exception." -msgstr "" - -msgid "Added the :attr:`name` and :attr:`path` attributes." -msgstr "" - -msgid "" -"A subclass of :exc:`ImportError` which is raised by :keyword:`import` when a " -"module could not be located. It is also raised when ``None`` is found in :" -"data:`sys.modules`." -msgstr "" - -msgid "" -"A subclass of :exc:`ImportError` which is raised when a lazy import fails " -"because it (directly or indirectly) tries to import itself." -msgstr "" - -msgid "" -"Raised when a sequence subscript is out of range. (Slice indices are " -"silently truncated to fall in the allowed range; if an index is not an " -"integer, :exc:`TypeError` is raised.)" -msgstr "" - -msgid "" -"Raised when a mapping (dictionary) key is not found in the set of existing " -"keys." -msgstr "" - -msgid "" -"Raised when the user hits the interrupt key (normally :kbd:`Control-C` or :" -"kbd:`Delete`). During execution, a check for interrupts is made regularly. " -"The exception inherits from :exc:`BaseException` so as to not be " -"accidentally caught by code that catches :exc:`Exception` and thus prevent " -"the interpreter from exiting." -msgstr "" - -msgid "" -"Catching a :exc:`KeyboardInterrupt` requires special consideration. Because " -"it can be raised at unpredictable points, it may, in some circumstances, " -"leave the running program in an inconsistent state. It is generally best to " -"allow :exc:`KeyboardInterrupt` to end the program as quickly as possible or " -"avoid raising it entirely. (See :ref:`handlers-and-exceptions`.)" -msgstr "" - -msgid "" -"Raised when an operation runs out of memory but the situation may still be " -"rescued (by deleting some objects). The associated value is a string " -"indicating what kind of (internal) operation ran out of memory. Note that " -"because of the underlying memory management architecture (C's :c:func:" -"`malloc` function), the interpreter may not always be able to completely " -"recover from this situation; it nevertheless raises an exception so that a " -"stack traceback can be printed, in case a run-away program was the cause." -msgstr "" - -msgid "" -"Raised when a local or global name is not found. This applies only to " -"unqualified names. The associated value is an error message that includes " -"the name that could not be found." -msgstr "" - -msgid "The optional *name* keyword-only argument sets the attribute:" -msgstr "" - -msgid "The name of the variable that was attempted to be accessed." -msgstr "" - -msgid "Added the :attr:`name` attribute." -msgstr "" - -msgid "" -"This exception is derived from :exc:`RuntimeError`. In user defined base " -"classes, abstract methods should raise this exception when they require " -"derived classes to override the method, or while the class is being " -"developed to indicate that the real implementation still needs to be added." -msgstr "" - -msgid "" -"It should not be used to indicate that an operator or method is not meant to " -"be supported at all -- in that case either leave the operator / method " -"undefined or, if a subclass, set it to :data:`None`." -msgstr "" - -msgid "" -":exc:`!NotImplementedError` and :data:`!NotImplemented` are not " -"interchangeable. This exception should only be used as described above; see :" -"data:`NotImplemented` for details on correct usage of the built-in constant." -msgstr "" - -msgid "" -"This exception is raised when a system function returns a system-related " -"error, including I/O failures such as \"file not found\" or \"disk " -"full\" (not for illegal argument types or other incidental errors)." -msgstr "" - -msgid "" -"The second form of the constructor sets the corresponding attributes, " -"described below. The attributes default to :const:`None` if not specified. " -"For backwards compatibility, if three arguments are passed, the :attr:" -"`~BaseException.args` attribute contains only a 2-tuple of the first two " -"constructor arguments." -msgstr "" - -msgid "" -"The constructor often actually returns a subclass of :exc:`OSError`, as " -"described in `OS exceptions`_ below. The particular subclass depends on the " -"final :attr:`.errno` value. This behaviour only occurs when constructing :" -"exc:`OSError` directly or via an alias, and is not inherited when " -"subclassing." -msgstr "" - -msgid "A numeric error code from the C variable :c:data:`errno`." -msgstr "" - -msgid "" -"Under Windows, this gives you the native Windows error code. The :attr:`." -"errno` attribute is then an approximate translation, in POSIX terms, of that " -"native error code." -msgstr "" - -msgid "" -"Under Windows, if the *winerror* constructor argument is an integer, the :" -"attr:`.errno` attribute is determined from the Windows error code, and the " -"*errno* argument is ignored. On other platforms, the *winerror* argument is " -"ignored, and the :attr:`winerror` attribute does not exist." -msgstr "" - -msgid "" -"The corresponding error message, as provided by the operating system. It is " -"formatted by the C functions :c:func:`!perror` under POSIX, and :c:func:`!" -"FormatMessage` under Windows." -msgstr "" - -msgid "" -"For exceptions that involve a file system path (such as :func:`open` or :" -"func:`os.unlink`), :attr:`filename` is the file name passed to the function. " -"For functions that involve two file system paths (such as :func:`os." -"rename`), :attr:`filename2` corresponds to the second file name passed to " -"the function." -msgstr "" - -msgid "" -":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket." -"error`, :exc:`select.error` and :exc:`!mmap.error` have been merged into :" -"exc:`OSError`, and the constructor may return a subclass." -msgstr "" - -msgid "" -"The :attr:`filename` attribute is now the original file name passed to the " -"function, instead of the name encoded to or decoded from the :term:" -"`filesystem encoding and error handler`. Also, the *filename2* constructor " -"argument and attribute was added." -msgstr "" - -msgid "" -"Raised when the result of an arithmetic operation is too large to be " -"represented. This cannot occur for integers (which would rather raise :exc:" -"`MemoryError` than give up). However, for historical reasons, OverflowError " -"is sometimes raised for integers that are outside a required range. " -"Because of the lack of standardization of floating-point exception handling " -"in C, most floating-point operations are not checked." -msgstr "" - -msgid "" -"This exception is derived from :exc:`RuntimeError`. It is raised when an " -"operation is blocked during interpreter shutdown also known as :term:`Python " -"finalization `." -msgstr "" - -msgid "" -"Examples of operations which can be blocked with a :exc:" -"`PythonFinalizationError` during the Python finalization:" -msgstr "" - -msgid "Creating a new Python thread." -msgstr "" - -msgid ":meth:`Joining ` a running daemon thread." -msgstr "" - -msgid ":func:`os.fork`," -msgstr "" - -msgid "" -"acquiring a lock such as :class:`threading.Lock`, when it is known that the " -"operation would otherwise deadlock." -msgstr "" - -msgid "See also the :func:`sys.is_finalizing` function." -msgstr "" - -msgid "Previously, a plain :exc:`RuntimeError` was raised." -msgstr "" - -msgid ":meth:`threading.Thread.join` can now raise this exception." -msgstr "" - -msgid "" -"This exception may be raised when acquiring :meth:`threading.Lock` or :meth:" -"`threading.RLock`." -msgstr "" - -msgid "" -"This exception is derived from :exc:`RuntimeError`. It is raised when the " -"interpreter detects that the maximum recursion depth (see :func:`sys." -"getrecursionlimit`) is exceeded." -msgstr "" - -msgid "" -"This exception is raised when a weak reference proxy, created by the :func:" -"`weakref.proxy` function, is used to access an attribute of the referent " -"after it has been garbage collected. For more information on weak " -"references, see the :mod:`weakref` module." -msgstr "" - -msgid "" -"Raised when an error is detected that doesn't fall in any of the other " -"categories. The associated value is a string indicating what precisely went " -"wrong." -msgstr "" - -msgid "" -"Raised by built-in function :func:`next` and an :term:`iterator`\\'s :meth:" -"`~iterator.__next__` method to signal that there are no further items " -"produced by the iterator." -msgstr "" - -msgid "" -"The exception object has a single attribute :attr:`!value`, which is given " -"as an argument when constructing the exception, and defaults to :const:" -"`None`." -msgstr "" - -msgid "" -"When a :term:`generator` or :term:`coroutine` function returns, a new :exc:" -"`StopIteration` instance is raised, and the value returned by the function " -"is used as the :attr:`value` parameter to the constructor of the exception." -msgstr "" - -msgid "" -"If a generator code directly or indirectly raises :exc:`StopIteration`, it " -"is converted into a :exc:`RuntimeError` (retaining the :exc:`StopIteration` " -"as the new exception's cause)." -msgstr "" - -msgid "" -"Added ``value`` attribute and the ability for generator functions to use it " -"to return a value." -msgstr "" - -msgid "" -"Introduced the RuntimeError transformation via ``from __future__ import " -"generator_stop``, see :pep:`479`." -msgstr "" - -msgid "" -"Enable :pep:`479` for all code by default: a :exc:`StopIteration` error " -"raised in a generator is transformed into a :exc:`RuntimeError`." -msgstr "" - -msgid "" -"Must be raised by :meth:`~object.__anext__` method of an :term:`asynchronous " -"iterator` object to stop the iteration." -msgstr "" - -msgid "" -"Raised when the parser encounters a syntax error. This may occur in an :" -"keyword:`import` statement, in a call to the built-in functions :func:" -"`compile`, :func:`exec`, or :func:`eval`, or when reading the initial script " -"or standard input (also interactively)." -msgstr "" - -msgid "" -"The :func:`str` of the exception instance returns only the error message. " -"Details is a tuple whose members are also available as separate attributes." -msgstr "" - -msgid "The name of the file the syntax error occurred in." -msgstr "" - -msgid "" -"Which line number in the file the error occurred in. This is 1-indexed: the " -"first line in the file has a ``lineno`` of 1." -msgstr "" - -msgid "" -"The column in the line where the error occurred. This is 1-indexed: the " -"first character in the line has an ``offset`` of 1." -msgstr "" - -msgid "The source code text involved in the error." -msgstr "" - -msgid "" -"Which line number in the file the error occurred ends in. This is 1-indexed: " -"the first line in the file has a ``lineno`` of 1." -msgstr "" - -msgid "" -"The column in the end line where the error occurred finishes. This is 1-" -"indexed: the first character in the line has an ``offset`` of 1." -msgstr "" - -msgid "" -"For errors in f-string fields, the message is prefixed by \"f-string: \" and " -"the offsets are offsets in a text constructed from the replacement " -"expression. For example, compiling f'Bad {a b} field' results in this args " -"attribute: ('f-string: ...', ('', 1, 2, '(a b)\\n', 1, 5))." -msgstr "" - -msgid "Added the :attr:`end_lineno` and :attr:`end_offset` attributes." -msgstr "" - -msgid "" -"Base class for syntax errors related to incorrect indentation. This is a " -"subclass of :exc:`SyntaxError`." -msgstr "" - -msgid "" -"Raised when indentation contains an inconsistent use of tabs and spaces. " -"This is a subclass of :exc:`IndentationError`." -msgstr "" - -msgid "" -"Raised when the interpreter finds an internal error, but the situation does " -"not look so serious to cause it to abandon all hope. The associated value is " -"a string indicating what went wrong (in low-level terms). In :term:" -"`CPython`, this could be raised by incorrectly using Python's C API, such as " -"returning a ``NULL`` value without an exception set." -msgstr "" - -msgid "" -"If you're confident that this exception wasn't your fault, or the fault of a " -"package you're using, you should report this to the author or maintainer of " -"your Python interpreter. Be sure to report the version of the Python " -"interpreter (``sys.version``; it is also printed at the start of an " -"interactive Python session), the exact error message (the exception's " -"associated value) and if possible the source of the program that triggered " -"the error." -msgstr "" - -msgid "" -"This exception is raised by the :func:`sys.exit` function. It inherits " -"from :exc:`BaseException` instead of :exc:`Exception` so that it is not " -"accidentally caught by code that catches :exc:`Exception`. This allows the " -"exception to properly propagate up and cause the interpreter to exit. When " -"it is not handled, the Python interpreter exits; no stack traceback is " -"printed. The constructor accepts the same optional argument passed to :func:" -"`sys.exit`. If the value is an integer, it specifies the system exit status " -"(passed to C's :c:func:`!exit` function); if it is ``None``, the exit status " -"is zero; if it has another type (such as a string), the object's value is " -"printed and the exit status is one." -msgstr "" - -msgid "" -"A call to :func:`sys.exit` is translated into an exception so that clean-up " -"handlers (:keyword:`finally` clauses of :keyword:`try` statements) can be " -"executed, and so that a debugger can execute a script without running the " -"risk of losing control. The :func:`os._exit` function can be used if it is " -"absolutely positively necessary to exit immediately (for example, in the " -"child process after a call to :func:`os.fork`)." -msgstr "" - -msgid "" -"The exit status or error message that is passed to the constructor. " -"(Defaults to ``None``.)" -msgstr "" - -msgid "" -"Raised when an operation or function is applied to an object of " -"inappropriate type. The associated value is a string giving details about " -"the type mismatch." -msgstr "" - -msgid "" -"This exception may be raised by user code to indicate that an attempted " -"operation on an object is not supported, and is not meant to be. If an " -"object is meant to support a given operation but has not yet provided an " -"implementation, :exc:`NotImplementedError` is the proper exception to raise." -msgstr "" - -msgid "" -"Passing arguments of the wrong type (e.g. passing a :class:`list` when an :" -"class:`int` is expected) should result in a :exc:`TypeError`, but passing " -"arguments with the wrong value (e.g. a number outside expected boundaries) " -"should result in a :exc:`ValueError`." -msgstr "" - -msgid "" -"Raised when a reference is made to a local variable in a function or method, " -"but no value has been bound to that variable. This is a subclass of :exc:" -"`NameError`." -msgstr "" - -msgid "" -"Raised when a Unicode-related encoding or decoding error occurs. It is a " -"subclass of :exc:`ValueError`." -msgstr "" - -msgid "" -":exc:`UnicodeError` has attributes that describe the encoding or decoding " -"error. For example, ``err.object[err.start:err.end]`` gives the particular " -"invalid input that the codec failed on." -msgstr "" - -msgid "The name of the encoding that raised the error." -msgstr "" - -msgid "A string describing the specific codec error." -msgstr "" - -msgid "The object the codec was attempting to encode or decode." -msgstr "" - -msgid "The first index of invalid data in :attr:`object`." -msgstr "" - -msgid "" -"This value should not be negative as it is interpreted as an absolute offset " -"but this constraint is not enforced at runtime." -msgstr "" - -msgid "The index after the last invalid data in :attr:`object`." -msgstr "" - -msgid "" -"Raised when a Unicode-related error occurs during encoding. It is a " -"subclass of :exc:`UnicodeError`." -msgstr "" - -msgid "" -"Raised when a Unicode-related error occurs during decoding. It is a " -"subclass of :exc:`UnicodeError`." -msgstr "" - -msgid "" -"Raised when a Unicode-related error occurs during translating. It is a " -"subclass of :exc:`UnicodeError`." -msgstr "" - -msgid "" -"Raised when an operation or function receives an argument that has the right " -"type but an inappropriate value, and the situation is not described by a " -"more precise exception such as :exc:`IndexError`." -msgstr "" - -msgid "" -"Raised when the second argument of a division or modulo operation is zero. " -"The associated value is a string indicating the type of the operands and the " -"operation." -msgstr "" - -msgid "" -"The following exceptions are kept for compatibility with previous versions; " -"starting from Python 3.3, they are aliases of :exc:`OSError`." -msgstr "" - -msgid "Only available on Windows." -msgstr "" - -msgid "OS exceptions" -msgstr "" - -msgid "" -"The following exceptions are subclasses of :exc:`OSError`, they get raised " -"depending on the system error code." -msgstr "" - -msgid "" -"Raised when an operation would block on an object (e.g. socket) set for non-" -"blocking operation. Corresponds to :c:data:`errno` :py:const:`~errno." -"EAGAIN`, :py:const:`~errno.EALREADY`, :py:const:`~errno.EWOULDBLOCK` and :py:" -"const:`~errno.EINPROGRESS`." -msgstr "" - -msgid "" -"In addition to those of :exc:`OSError`, :exc:`BlockingIOError` can have one " -"more attribute:" -msgstr "" - -msgid "" -"An integer containing the number of **bytes** written to the stream before " -"it blocked. This attribute is available when using the buffered I/O classes " -"from the :mod:`io` module." -msgstr "" - -msgid "" -"Raised when an operation on a child process failed. Corresponds to :c:data:" -"`errno` :py:const:`~errno.ECHILD`." -msgstr "" - -msgid "A base class for connection-related issues." -msgstr "" - -msgid "" -"Subclasses are :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:" -"`ConnectionRefusedError` and :exc:`ConnectionResetError`." -msgstr "" - -msgid "" -"A subclass of :exc:`ConnectionError`, raised when trying to write on a pipe " -"while the other end has been closed, or trying to write on a socket which " -"has been shutdown for writing. Corresponds to :c:data:`errno` :py:const:" -"`~errno.EPIPE` and :py:const:`~errno.ESHUTDOWN`." -msgstr "" - -msgid "" -"A subclass of :exc:`ConnectionError`, raised when a connection attempt is " -"aborted by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." -"ECONNABORTED`." -msgstr "" - -msgid "" -"A subclass of :exc:`ConnectionError`, raised when a connection attempt is " -"refused by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." -"ECONNREFUSED`." -msgstr "" - -msgid "" -"A subclass of :exc:`ConnectionError`, raised when a connection is reset by " -"the peer. Corresponds to :c:data:`errno` :py:const:`~errno.ECONNRESET`." -msgstr "" - -msgid "" -"Raised when trying to create a file or directory which already exists. " -"Corresponds to :c:data:`errno` :py:const:`~errno.EEXIST`." -msgstr "" - -msgid "" -"Raised when a file or directory is requested but doesn't exist. Corresponds " -"to :c:data:`errno` :py:const:`~errno.ENOENT`." -msgstr "" - -msgid "" -"Raised when a system call is interrupted by an incoming signal. Corresponds " -"to :c:data:`errno` :py:const:`~errno.EINTR`." -msgstr "" - -msgid "" -"Python now retries system calls when a syscall is interrupted by a signal, " -"except if the signal handler raises an exception (see :pep:`475` for the " -"rationale), instead of raising :exc:`InterruptedError`." -msgstr "" - -msgid "" -"Raised when a file operation (such as :func:`os.remove`) is requested on a " -"directory. Corresponds to :c:data:`errno` :py:const:`~errno.EISDIR`." -msgstr "" - -msgid "" -"Raised when a directory operation (such as :func:`os.listdir`) is requested " -"on something which is not a directory. On most POSIX platforms, it may also " -"be raised if an operation attempts to open or traverse a non-directory file " -"as if it were a directory. Corresponds to :c:data:`errno` :py:const:`~errno." -"ENOTDIR`." -msgstr "" - -msgid "" -"Raised when trying to run an operation without the adequate access rights - " -"for example filesystem permissions. Corresponds to :c:data:`errno` :py:const:" -"`~errno.EACCES`, :py:const:`~errno.EPERM`, and :py:const:`~errno." -"ENOTCAPABLE`." -msgstr "" - -msgid "" -"WASI's :py:const:`~errno.ENOTCAPABLE` is now mapped to :exc:" -"`PermissionError`." -msgstr "" - -msgid "" -"Raised when a given process doesn't exist. Corresponds to :c:data:`errno` :" -"py:const:`~errno.ESRCH`." -msgstr "" - -msgid "" -"Raised when a system function timed out at the system level. Corresponds to :" -"c:data:`errno` :py:const:`~errno.ETIMEDOUT`." -msgstr "" - -msgid "All the above :exc:`OSError` subclasses were added." -msgstr "" - -msgid ":pep:`3151` - Reworking the OS and IO exception hierarchy" -msgstr "" - -msgid "Warnings" -msgstr "" - -msgid "" -"The following exceptions are used as warning categories; see the :ref:" -"`warning-categories` documentation for more details." -msgstr "" - -msgid "Base class for warning categories." -msgstr "" - -msgid "Base class for warnings generated by user code." -msgstr "" - -msgid "" -"Base class for warnings about deprecated features when those warnings are " -"intended for other Python developers." -msgstr "" - -msgid "" -"Ignored by the default warning filters, except in the ``__main__`` module (:" -"pep:`565`). Enabling the :ref:`Python Development Mode ` shows this " -"warning." -msgstr "" - -msgid "The deprecation policy is described in :pep:`387`." -msgstr "" - -msgid "" -"Base class for warnings about features which are obsolete and expected to be " -"deprecated in the future, but are not deprecated at the moment." -msgstr "" - -msgid "" -"This class is rarely used as emitting a warning about a possible upcoming " -"deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " -"already active deprecations." -msgstr "" - -msgid "" -"Ignored by the default warning filters. Enabling the :ref:`Python " -"Development Mode ` shows this warning." -msgstr "" - -msgid "Base class for warnings about dubious syntax." -msgstr "" - -msgid "" -"This warning is typically emitted when compiling Python source code, and " -"usually won't be reported when running already compiled code." -msgstr "" - -msgid "Base class for warnings about dubious runtime behavior." -msgstr "" - -msgid "" -"Base class for warnings about deprecated features when those warnings are " -"intended for end users of applications that are written in Python." -msgstr "" - -msgid "Base class for warnings about probable mistakes in module imports." -msgstr "" - -msgid "Base class for warnings related to Unicode." -msgstr "" - -msgid "Base class for warnings related to encodings." -msgstr "" - -msgid "See :ref:`io-encoding-warning` for details." -msgstr "" - -msgid "" -"Base class for warnings related to :class:`bytes` and :class:`bytearray`." -msgstr "" - -msgid "Base class for warnings related to resource usage." -msgstr "" - -msgid "Exception groups" -msgstr "" - -msgid "" -"The following are used when it is necessary to raise multiple unrelated " -"exceptions. They are part of the exception hierarchy so they can be handled " -"with :keyword:`except` like all other exceptions. In addition, they are " -"recognised by :keyword:`except*`, which matches their subgroups " -"based on the types of the contained exceptions." -msgstr "" - -msgid "" -"Both of these exception types wrap the exceptions in the sequence ``excs``. " -"The ``msg`` parameter must be a string. The difference between the two " -"classes is that :exc:`BaseExceptionGroup` extends :exc:`BaseException` and " -"it can wrap any exception, while :exc:`ExceptionGroup` extends :exc:" -"`Exception` and it can only wrap subclasses of :exc:`Exception`. This design " -"is so that ``except Exception`` catches an :exc:`ExceptionGroup` but not :" -"exc:`BaseExceptionGroup`." -msgstr "" - -msgid "" -"The :exc:`BaseExceptionGroup` constructor returns an :exc:`ExceptionGroup` " -"rather than a :exc:`BaseExceptionGroup` if all contained exceptions are :exc:" -"`Exception` instances, so it can be used to make the selection automatic. " -"The :exc:`ExceptionGroup` constructor, on the other hand, raises a :exc:" -"`TypeError` if any contained exception is not an :exc:`Exception` subclass." -msgstr "" - -msgid "" -"Exception groups are :ref:`generic ` over the type of their " -"contained exceptions." -msgstr "" - -msgid "" -"The ``excs`` parameter may be any sequence, but lists and tuples are " -"specifically processed more efficiently here. For optimal performance, pass " -"a tuple as ``excs``." -msgstr "" - -msgid "The ``msg`` argument to the constructor. This is a read-only attribute." -msgstr "" - -msgid "" -"A tuple of the exceptions in the ``excs`` sequence given to the constructor. " -"This is a read-only attribute." -msgstr "" - -msgid "" -"Returns an exception group that contains only the exceptions from the " -"current group that match *condition*, or ``None`` if the result is empty." -msgstr "" - -msgid "" -"The condition can be an exception type or tuple of exception types, in which " -"case each exception is checked for a match using the same check that is used " -"in an ``except`` clause. The condition can also be a callable (other than a " -"type object) that accepts an exception as its single argument and returns " -"true for the exceptions that should be in the subgroup." -msgstr "" - -msgid "" -"The nesting structure of the current exception is preserved in the result, " -"as are the values of its :attr:`message`, :attr:`~BaseException." -"__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException." -"__context__` and :attr:`~BaseException.__notes__` fields. Empty nested " -"groups are omitted from the result." -msgstr "" - -msgid "" -"The condition is checked for all exceptions in the nested exception group, " -"including the top-level and any nested exception groups. If the condition is " -"true for such an exception group, it is included in the result in full." -msgstr "" - -msgid "``condition`` can be any callable which is not a type object." -msgstr "" - -msgid "" -"Like :meth:`subgroup`, but returns the pair ``(match, rest)`` where " -"``match`` is ``subgroup(condition)`` and ``rest`` is the remaining non-" -"matching part." -msgstr "" - -msgid "" -"Returns an exception group with the same :attr:`message`, but which wraps " -"the exceptions in ``excs``." -msgstr "" - -msgid "" -"This method is used by :meth:`subgroup` and :meth:`split`, which are used in " -"various contexts to break up an exception group. A subclass needs to " -"override it in order to make :meth:`subgroup` and :meth:`split` return " -"instances of the subclass rather than :exc:`ExceptionGroup`." -msgstr "" - -msgid "" -":meth:`subgroup` and :meth:`split` copy the :attr:`~BaseException." -"__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException." -"__context__` and :attr:`~BaseException.__notes__` fields from the original " -"exception group to the one returned by :meth:`derive`, so these fields do " -"not need to be updated by :meth:`derive`." -msgstr "" - -msgid "" -">>> class MyGroup(ExceptionGroup):\n" -"... def derive(self, excs):\n" -"... return MyGroup(self.message, excs)\n" -"...\n" -">>> e = MyGroup(\"eg\", [ValueError(1), TypeError(2)])\n" -">>> e.add_note(\"a note\")\n" -">>> e.__context__ = Exception(\"context\")\n" -">>> e.__cause__ = Exception(\"cause\")\n" -">>> try:\n" -"... raise e\n" -"... except Exception as e:\n" -"... exc = e\n" -"...\n" -">>> match, rest = exc.split(ValueError)\n" -">>> exc, exc.__context__, exc.__cause__, exc.__notes__\n" -"(MyGroup('eg', [ValueError(1), TypeError(2)]), Exception('context'), " -"Exception('cause'), ['a note'])\n" -">>> match, match.__context__, match.__cause__, match.__notes__\n" -"(MyGroup('eg', [ValueError(1)]), Exception('context'), Exception('cause'), " -"['a note'])\n" -">>> rest, rest.__context__, rest.__cause__, rest.__notes__\n" -"(MyGroup('eg', [TypeError(2)]), Exception('context'), Exception('cause'), " -"['a note'])\n" -">>> exc.__traceback__ is match.__traceback__ is rest.__traceback__\n" -"True" -msgstr "" - -msgid "" -"Note that :exc:`BaseExceptionGroup` defines :meth:`~object.__new__`, so " -"subclasses that need a different constructor signature need to override that " -"rather than :meth:`~object.__init__`. For example, the following defines an " -"exception group subclass which accepts an exit_code and constructs the " -"group's message from it. ::" -msgstr "" - -msgid "" -"class Errors(ExceptionGroup):\n" -" def __new__(cls, errors, exit_code):\n" -" self = super().__new__(Errors, f\"exit code: {exit_code}\", errors)\n" -" self.exit_code = exit_code\n" -" return self\n" -"\n" -" def derive(self, excs):\n" -" return Errors(excs, self.exit_code)" -msgstr "" - -msgid "" -"Like :exc:`ExceptionGroup`, any subclass of :exc:`BaseExceptionGroup` which " -"is also a subclass of :exc:`Exception` can only wrap instances of :exc:" -"`Exception`." -msgstr "" - -msgid "Exception hierarchy" -msgstr "" - -msgid "The class hierarchy for built-in exceptions is:" -msgstr "" - -msgid "" -"BaseException\n" -" ├── BaseExceptionGroup\n" -" ├── GeneratorExit\n" -" ├── KeyboardInterrupt\n" -" ├── SystemExit\n" -" └── Exception\n" -" ├── ArithmeticError\n" -" │ ├── FloatingPointError\n" -" │ ├── OverflowError\n" -" │ └── ZeroDivisionError\n" -" ├── AssertionError\n" -" ├── AttributeError\n" -" ├── BufferError\n" -" ├── EOFError\n" -" ├── ExceptionGroup [BaseExceptionGroup]\n" -" ├── ImportError\n" -" │ └── ImportCycleError\n" -" │ └── ModuleNotFoundError\n" -" ├── LookupError\n" -" │ ├── IndexError\n" -" │ └── KeyError\n" -" ├── MemoryError\n" -" ├── NameError\n" -" │ └── UnboundLocalError\n" -" ├── OSError\n" -" │ ├── BlockingIOError\n" -" │ ├── ChildProcessError\n" -" │ ├── ConnectionError\n" -" │ │ ├── BrokenPipeError\n" -" │ │ ├── ConnectionAbortedError\n" -" │ │ ├── ConnectionRefusedError\n" -" │ │ └── ConnectionResetError\n" -" │ ├── FileExistsError\n" -" │ ├── FileNotFoundError\n" -" │ ├── InterruptedError\n" -" │ ├── IsADirectoryError\n" -" │ ├── NotADirectoryError\n" -" │ ├── PermissionError\n" -" │ ├── ProcessLookupError\n" -" │ └── TimeoutError\n" -" ├── ReferenceError\n" -" ├── RuntimeError\n" -" │ ├── NotImplementedError\n" -" │ ├── PythonFinalizationError\n" -" │ └── RecursionError\n" -" ├── StopAsyncIteration\n" -" ├── StopIteration\n" -" ├── SyntaxError\n" -" │ └── IndentationError\n" -" │ └── TabError\n" -" ├── SystemError\n" -" ├── TypeError\n" -" ├── ValueError\n" -" │ └── UnicodeError\n" -" │ ├── UnicodeDecodeError\n" -" │ ├── UnicodeEncodeError\n" -" │ └── UnicodeTranslateError\n" -" └── Warning\n" -" ├── BytesWarning\n" -" ├── DeprecationWarning\n" -" ├── EncodingWarning\n" -" ├── FutureWarning\n" -" ├── ImportWarning\n" -" ├── PendingDeprecationWarning\n" -" ├── ResourceWarning\n" -" ├── RuntimeWarning\n" -" ├── SyntaxWarning\n" -" ├── UnicodeWarning\n" -" └── UserWarning\n" -msgstr "" - -msgid "statement" -msgstr "" - -msgid "try" -msgstr "" - -msgid "except" -msgstr "" - -msgid "raise" -msgstr "" - -msgid "exception" -msgstr "" - -msgid "chaining" -msgstr "" - -msgid "__cause__ (exception attribute)" -msgstr "" - -msgid "__context__ (exception attribute)" -msgstr "" - -msgid "__suppress_context__ (exception attribute)" -msgstr "" - -msgid "assert" -msgstr "" - -msgid "module" -msgstr "" - -msgid "errno" -msgstr "" diff --git a/library/faulthandler.po b/library/faulthandler.po index c16156e..832465c 100644 --- a/library/faulthandler.po +++ b/library/faulthandler.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,10 +27,10 @@ msgstr "" msgid "" "This module contains functions to dump Python tracebacks explicitly, on a " -"fault, after a timeout, or on a user signal. Call :func:`faulthandler." -"enable` to install fault handlers for the :const:`~signal.SIGSEGV`, :const:" -"`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS`, and :" -"const:`~signal.SIGILL` signals. You can also enable them at startup by " +"fault, after a timeout, or on a user signal. " +"Call :func:`faulthandler.enable` to install fault handlers for " +"the :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS`, " +"and :const:`~signal.SIGILL` signals. You can also enable them at startup by " "setting the :envvar:`PYTHONFAULTHANDLER` environment variable or by using " "the :option:`-X` ``faulthandler`` command line option." msgstr "" @@ -78,8 +82,8 @@ msgid "" msgstr "" msgid "" -"The :ref:`Python Development Mode ` calls :func:`faulthandler." -"enable` at Python startup." +"The :ref:`Python Development Mode ` " +"calls :func:`faulthandler.enable` at Python startup." msgstr "" msgid "Module :mod:`pdb`" @@ -131,8 +135,8 @@ msgid "C Stack Compatibility" msgstr "" msgid "" -"If the system does not support the C-level :manpage:`backtrace(3)` or :" -"manpage:`dladdr1(3)`, then C stack dumps will not work. An error will be " +"If the system does not support the C-level :manpage:`backtrace(3)` " +"or :manpage:`dladdr1(3)`, then C stack dumps will not work. An error will be " "printed instead of the stack." msgstr "" @@ -152,16 +156,16 @@ msgid "Fault handler state" msgstr "" msgid "" -"Enable the fault handler: install handlers for the :const:`~signal." -"SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal." -"SIGBUS` and :const:`~signal.SIGILL` signals to dump the Python traceback. If " +"Enable the fault handler: install handlers for " +"the :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS` " +"and :const:`~signal.SIGILL` signals to dump the Python traceback. If " "*all_threads* is ``True``, produce tracebacks for every running thread. " "Otherwise, dump only the current thread." msgstr "" msgid "" -"The *file* must be kept open until the fault handler is disabled: see :ref:" -"`issue with file descriptors `." +"The *file* must be kept open until the fault handler is disabled: " +"see :ref:`issue with file descriptors `." msgstr "" msgid "" @@ -191,8 +195,8 @@ msgid "The dump now displays the C stack trace if *c_stack* is true." msgstr "" msgid "" -"Disable the fault handler: uninstall the signal handlers installed by :func:" -"`enable`." +"Disable the fault handler: uninstall the signal handlers installed " +"by :func:`enable`." msgstr "" msgid "Check if the fault handler is enabled." @@ -204,16 +208,16 @@ msgstr "" msgid "" "Dump the tracebacks of all threads, after a timeout of *timeout* seconds, or " "every *timeout* seconds if *repeat* is ``True``. If *exit* is ``True``, " -"call :c:func:`!_exit` with status=1 after dumping the tracebacks. (Note :c:" -"func:`!_exit` exits the process immediately, which means it doesn't do any " -"cleanup like flushing file buffers.) If the function is called twice, the " -"new call replaces previous parameters and resets the timeout. The timer has " -"a sub-second resolution. *max_threads* caps the number of threads dumped." +"call :c:func:`!_exit` with status=1 after dumping the tracebacks. " +"(Note :c:func:`!_exit` exits the process immediately, which means it doesn't " +"do any cleanup like flushing file buffers.) If the function is called twice, " +"the new call replaces previous parameters and resets the timeout. The timer " +"has a sub-second resolution. *max_threads* caps the number of threads dumped." msgstr "" msgid "" -"The *file* must be kept open until the traceback is dumped or :func:" -"`cancel_dump_traceback_later` is called: see :ref:`issue with file " +"The *file* must be kept open until the traceback is dumped " +"or :func:`cancel_dump_traceback_later` is called: see :ref:`issue with file " "descriptors `." msgstr "" @@ -237,8 +241,9 @@ msgid "" msgstr "" msgid "" -"The *file* must be kept open until the signal is unregistered by :func:" -"`unregister`: see :ref:`issue with file descriptors `." +"The *file* must be kept open until the signal is unregistered " +"by :func:`unregister`: see :ref:`issue with file descriptors `." msgstr "" msgid "Not available on Windows." diff --git a/library/fcntl.po b/library/fcntl.po index 1139641..fc13a84 100644 --- a/library/fcntl.po +++ b/library/fcntl.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,8 +28,8 @@ msgstr "" msgid "" "This module performs file and I/O control on file descriptors. It is an " -"interface to the :c:func:`fcntl` and :c:func:`ioctl` Unix routines. See the :" -"manpage:`fcntl(2)` and :manpage:`ioctl(2)` Unix manual pages for full " +"interface to the :c:func:`fcntl` and :c:func:`ioctl` Unix routines. See " +"the :manpage:`fcntl(2)` and :manpage:`ioctl(2)` Unix manual pages for full " "details." msgstr "" @@ -37,10 +38,10 @@ msgstr "" msgid "" "All functions in this module take a file descriptor *fd* as their first " -"argument. This can be an integer file descriptor, such as returned by ``sys." -"stdin.fileno()``, or an :class:`io.IOBase` object, such as ``sys.stdin`` " -"itself, which provides a :meth:`~io.IOBase.fileno` that returns a genuine " -"file descriptor." +"argument. This can be an integer file descriptor, such as returned by " +"``sys.stdin.fileno()``, or an :class:`io.IOBase` object, such as " +"``sys.stdin`` itself, which provides a :meth:`~io.IOBase.fileno` that " +"returns a genuine file descriptor." msgstr "" msgid "" @@ -56,8 +57,8 @@ msgstr "" msgid "" "On macOS, the :mod:`!fcntl` module exposes the ``F_GETPATH`` constant, which " -"obtains the path of a file from a file descriptor. On Linux(>=3.15), the :" -"mod:`!fcntl` module exposes the ``F_OFD_GETLK``, ``F_OFD_SETLK`` and " +"obtains the path of a file from a file descriptor. On Linux(>=3.15), " +"the :mod:`!fcntl` module exposes the ``F_OFD_GETLK``, ``F_OFD_SETLK`` and " "``F_OFD_SETLKW`` constants, which are used when working with open file " "description locks." msgstr "" @@ -114,10 +115,10 @@ msgid "" "a :meth:`~io.IOBase.fileno` method are accepted as well). The values used " "for *cmd* are operating system dependent, and are available as constants in " "the :mod:`!fcntl` module, using the same names as used in the relevant C " -"header files. The argument *arg* can either be an integer value, a :term:" -"`bytes-like object`, or a string. The type and size of *arg* must match the " -"type and size of the argument of the operation as specified in the relevant " -"C documentation." +"header files. The argument *arg* can either be an integer value, " +"a :term:`bytes-like object`, or a string. The type and size of *arg* must " +"match the type and size of the argument of the operation as specified in the " +"relevant C documentation." msgstr "" msgid "" @@ -189,8 +190,8 @@ msgid "" "code is passed back to the calling Python, and the buffer's new contents " "reflect the action of the :c:func:`ioctl`. This is a slight simplification, " "because if the supplied buffer is less than 1024 bytes long it is first " -"copied into a static buffer 1024 bytes long which is then passed to :func:" -"`ioctl` and copied back into the supplied buffer." +"copied into a static buffer 1024 bytes long which is then passed " +"to :func:`ioctl` and copied back into the supplied buffer." msgstr "" msgid "" @@ -246,9 +247,9 @@ msgstr "" msgid "" "This is essentially a wrapper around the :func:`~fcntl.fcntl` locking calls. " -"*fd* is the file descriptor (file objects providing a :meth:`~io.IOBase." -"fileno` method are accepted as well) of the file to lock or unlock, and " -"*cmd* is one of the following values:" +"*fd* is the file descriptor (file objects providing " +"a :meth:`~io.IOBase.fileno` method are accepted as well) of the file to lock " +"or unlock, and *cmd* is one of the following values:" msgstr "" msgid "Release an existing lock." @@ -266,18 +267,18 @@ msgid "" msgstr "" msgid "" -"If :const:`!LOCK_NB` is used and the lock cannot be acquired, an :exc:" -"`OSError` will be raised and the exception will have an *errno* attribute " -"set to :const:`~errno.EACCES` or :const:`~errno.EAGAIN` (depending on the " -"operating system; for portability, check for both values). On at least some " -"systems, :const:`!LOCK_EX` can only be used if the file descriptor refers to " -"a file opened for writing." +"If :const:`!LOCK_NB` is used and the lock cannot be acquired, " +"an :exc:`OSError` will be raised and the exception will have an *errno* " +"attribute set to :const:`~errno.EACCES` or :const:`~errno.EAGAIN` (depending " +"on the operating system; for portability, check for both values). On at " +"least some systems, :const:`!LOCK_EX` can only be used if the file " +"descriptor refers to a file opened for writing." msgstr "" msgid "" "*len* is the number of bytes to lock, *start* is the byte offset at which " -"the lock starts, relative to *whence*, and *whence* is as with :func:`io." -"IOBase.seek`, specifically:" +"the lock starts, relative to *whence*, and *whence* is as " +"with :func:`io.IOBase.seek`, specifically:" msgstr "" msgid "``0`` -- relative to the start of the file (:const:`os.SEEK_SET`)" diff --git a/library/filecmp.po b/library/filecmp.po index dcc7716..9c2ad55 100644 --- a/library/filecmp.po +++ b/library/filecmp.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -75,8 +75,8 @@ msgid "" msgstr "" msgid "" -"The *shallow* parameter has the same meaning and default value as for :func:" -"`filecmp.cmp`." +"The *shallow* parameter has the same meaning and default value as " +"for :func:`filecmp.cmp`." msgstr "" msgid "" @@ -96,9 +96,9 @@ msgstr "" msgid "" "Construct a new directory comparison object, to compare the directories *a* " -"and *b*. *ignore* is a list of names to ignore, and defaults to :const:" -"`filecmp.DEFAULT_IGNORES`. *hide* is a list of names to hide, and defaults " -"to ``[os.curdir, os.pardir]``." +"and *b*. *ignore* is a list of names to ignore, and defaults " +"to :const:`filecmp.DEFAULT_IGNORES`. *hide* is a list of names to hide, and " +"defaults to ``[os.curdir, os.pardir]``." msgstr "" msgid "" diff --git a/library/fileformats.po b/library/fileformats.po index b607ca0..d3772d3 100644 --- a/library/fileformats.po +++ b/library/fileformats.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/fileinput.po b/library/fileinput.po index 19a7873..46e6596 100644 --- a/library/fileinput.po +++ b/library/fileinput.po @@ -4,19 +4,19 @@ # FIRST AUTHOR , YEAR. # # Translators: -# Bhuvansh Kataria, 2026 # Sukhmanpreet kaur, 2026 +# Bhuvansh Kataria, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Sukhmanpreet kaur, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,22 +27,28 @@ msgid ":mod:`!fileinput` --- Iterate over lines from multiple input streams" msgstr ":mod:`!fileinput` --- ਕਈ ਇਨਪੁਟ ਸਟ੍ਰੀਮਾਂ ਤੋਂ ਲਾਈਨਾਂ ਉੱਤੇ ਇਟਰੇਟ ਕਰੋ" msgid "**Source code:** :source:`Lib/fileinput.py`" -msgstr "" +msgstr "**ਸਰੋਤ ਕੋਡ:** :source:`Lib/fileinput.py`" msgid "" "This module implements a helper class and functions to quickly write a loop " "over standard input or a list of files. If you just want to read or write " "one file see :func:`open`." msgstr "" +"ਇਹ ਮੌਡਿਊਲ ਸਟੈਂਡਰਡ ਇਨਪੁੱਟ ਜਾਂ ਫ਼ਾਈਲਾਂ ਦੀ ਸੂਚੀ ਉੱਤੇ ਤੇਜ਼ੀ ਨਾਲ ਲੂਪ ਚਲਾਉਣ ਲਈ ਇੱਕ ਸਹਾਇਕ ਕਲਾਸ ਅਤੇ " +"ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ। ਜੇ ਤੁਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਫ਼ਾਈਲ ਪੜ੍ਹਨਾ ਜਾਂ ਲਿਖਣਾ ਚਾਹੁੰਦੇ ਹੋ, " +"ਤਾਂ :func:`open` ਵੇਖੋ।" msgid "The typical use is::" -msgstr "" +msgstr "ਆਮ ਵਰਤੋਂ ਇਸ ਪ੍ਰਕਾਰ ਹੈ:" msgid "" "import fileinput\n" "for line in fileinput.input(encoding=\"utf-8\"):\n" " process(line)" msgstr "" +"import fileinput\n" +"for line in fileinput.input(encoding=\"utf-8\"):\n" +"process(line)" msgid "" "This iterates over the lines of all files listed in ``sys.argv[1:]``, " @@ -52,33 +58,49 @@ msgid "" "it as the first argument to :func:`.input`. A single file name is also " "allowed." msgstr "" +"ਇਹ ``sys.argv[1:]`` ਵਿੱਚ ਦਿੱਤੀਆਂ ਸਾਰੀਆਂ ਫ਼ਾਈਲਾਂ ਦੀਆਂ ਲਾਈਨਾਂ ਨੂੰ ਦੁਹਰਾਉਂਦਾ ਹੈ, ਅਤੇ ਜੇ ਸੂਚੀ " +"ਖਾਲੀ ਹੋਵੇ ਤਾਂ ``sys.stdin`` ਨੂੰ ਡਿਫਾਲਟ ਵਜੋਂ ਵਰਤਦਾ ਹੈ। ਜੇ ਫ਼ਾਈਲ ਦਾ ਨਾਮ ``'-'`` ਹੈ, ਤਾਂ " +"ਇਸਨੂੰ ਵੀ ``sys.stdin`` ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਵਿਕਲਪਿਕ ਆਰਗੂਮੈਂਟ *mode* ਅਤੇ " +"*openhook* ਨੂੰ ਅਣਡਿੱਠਾ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਵਿਕਲਪਿਕ ਫ਼ਾਈਲ ਨਾਮਾਂ ਦੀ ਸੂਚੀ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ, " +"ਇਸਨੂੰ :func:`.input` ਦੇ ਪਹਿਲੇ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਪਾਸ ਕਰੋ। ਇੱਕ ਸਿੰਗਲ ਫ਼ਾਈਲ ਨਾਮ ਦੀ ਵੀ ਇਜਾਜ਼ਤ ਹੈ।" msgid "" "All files are opened in text mode by default, but you can override this by " -"specifying the *mode* parameter in the call to :func:`.input` or :class:" -"`FileInput`. If an I/O error occurs during opening or reading a file, :exc:" -"`OSError` is raised." +"specifying the *mode* parameter in the call to :func:`.input` " +"or :class:`FileInput`. If an I/O error occurs during opening or reading a " +"file, :exc:`OSError` is raised." msgstr "" +"ਸਾਰੀਆਂ ਫ਼ਾਈਲਾਂ ਮੂਲ ਰੂਪ ਵਿੱਚ ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ ਖੋਲ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਪਰ ਤੁਸੀਂ :func:`.input` " +"ਜਾਂ :class:`FileInput` ਨੂੰ ਕਾਲ ਕਰਦੇ ਸਮੇਂ *mode* ਪੈਰਾਮੀਟਰ ਨਿਰਧਾਰਤ ਕਰਕੇ ਇਸਨੂੰ ਬਦਲ ਸਕਦੇ ਹੋ। " +"ਜੇਕਰ ਕਿਸੇ ਫ਼ਾਈਲ ਨੂੰ ਖੋਲ੍ਹਣ ਜਾਂ ਪੜ੍ਹਨ ਵੇਲੇ I/O ਗਲਤੀ ਹੁੰਦੀ ਹੈ, ਤਾਂ :exc:`OSError` ਉੱਠਾਈ ਜਾਂਦੀ ਹੈ।" msgid ":exc:`IOError` used to be raised; it is now an alias of :exc:`OSError`." msgstr "" +":exc:`IOError` ਪਹਿਲਾਂ ਦਿੱਤੀ ਜਾਂਦੀ ਸੀ; ਹੁਣ ਇਹ :exc:`OSError` ਦਾ ਇੱਕ ਉਪਨਾਮ ਹੈ।" msgid "" "If ``sys.stdin`` is used more than once, the second and further use will " "return no lines, except perhaps for interactive use, or if it has been " "explicitly reset (e.g. using ``sys.stdin.seek(0)``)." msgstr "" +"ਜੇ ``sys.stdin`` ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਵਾਰ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਦੂਜੀ ਅਤੇ ਇਸ ਤੋਂ ਬਾਅਦ ਦੀ ਹਰ ਵਰਤੋਂ ਕੋਈ " +"ਲਾਈਨ ਵਾਪਸ ਨਹੀਂ ਕਰੇਗੀ, ਸਿਵਾਏ ਇੰਟਰਐਕਟਿਵ ਵਰਤੋਂ ਦੇ, ਜਾਂ ਜੇਕਰ ਇਸਨੂੰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਰੀਸੈੱਟ ਕੀਤਾ " +"ਗਿਆ ਹੋਵੇ (ਉਦਾਹਰਨ ਲਈ, ``sys.stdin.seek(0)`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ)।" msgid "" "Empty files are opened and immediately closed; the only time their presence " "in the list of filenames is noticeable at all is when the last file opened " "is empty." msgstr "" +"ਖਾਲੀ ਫਾਈਲਾਂ ਖੋਲ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਤੁਰੰਤ ਬੰਦ ਕਰ ਦਿੱਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ; ਫਾਈਲ ਨਾਮਾਂ ਦੀ ਸੂਚੀ ਵਿੱਚ " +"ਉਨ੍ਹਾਂ ਦੀ ਮੌਜੂਦਗੀ ਦਾ ਪਤਾ ਸਿਰਫ਼ ਉਦੋਂ ਲੱਗਦਾ ਹੈ ਜਦੋਂ ਆਖਰੀ ਖੋਲ੍ਹੀ ਗਈ ਫਾਈਲ ਖਾਲੀ ਹੋਵੇ।" msgid "" "Lines are returned with any newlines intact, which means that the last line " "in a file may not have one." msgstr "" +"ਲਾਈਨਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀਆਂ ਸਾਰੀਆਂ ਨਵੀਆਂ ਲਾਈਨਾਂ ਸਮੇਤ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਫਾਈਲ " +"ਦੀ ਆਖਰੀ ਲਾਈਨ ਦੇ ਅੰਤ ਵਿੱਚ ਨਵੀਂ ਲਾਈਨ ਹੋਣਾ ਜ਼ਰੂਰੀ ਨਹੀਂ ਹੈ।" msgid "" "You can control how files are opened by providing an opening hook via the " @@ -89,9 +111,15 @@ msgid "" "keyword arguments. This module provides a :func:`hook_compressed` to support " "compressed files." msgstr "" +"ਤੁਸੀਂ *openhook* ਪੈਰਾਮੀਟਰ ਰਾਹੀਂ ਇੱਕ ਓਪਨਿੰਗ ਹੁੱਕ ਦੇ ਕੇ ਇਹ ਨਿਯੰਤਰਿਤ ਕਰ ਸਕਦੇ ਹੋ ਕਿ ਫਾਈਲਾਂ ਕਿਵੇਂ " +"ਖੋਲ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਹ ਓਪਨਿੰਗ ਹੁੱਕ :func:`fileinput.input` ਜਾਂ :func:`FileInput` ਨੂੰ " +"ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਹੁੱਕ ਇੱਕ ਅਜਿਹਾ ਫੰਕਸ਼ਨ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਦੋ ਆਰਗੂਮੈਂਟ, *filename* ਅਤੇ " +"*mode*, ਲੈਂਦਾ ਹੋਵੇ ਅਤੇ ਉਸ ਅਨੁਸਾਰ ਖੋਲ੍ਹਿਆ ਗਿਆ ਫਾਈਲ-ਵਰਗਾ ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੋਵੇ। ਜੇ " +"*encoding* ਅਤੇ/ਜਾਂ *errors* ਦਿੱਤੇ ਗਏ ਹਨ, ਤਾਂ ਉਹ ਵਾਧੂ ਕੀਵਰਡ ਆਰਗੂਮੈਂਟਾਂ ਵਜੋਂ ਹੁੱਕ ਨੂੰ ਦਿੱਤੇ " +"ਜਾਣਗੇ। ਇਹ ਮੋਡੀਊਲ ਸੰਕੁਚਿਤ ਫਾਈਲਾਂ ਲਈ :func:`hook_compressed` ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" msgid "The following function is the primary interface of this module:" -msgstr "" +msgstr "ਇਸ ਮੋਡੀਊਲ ਦਾ ਮੁੱਖ ਇੰਟਰਫੇਸ ਹੇਠਾਂ ਦਿੱਤਾ ਫੰਕਸ਼ਨ ਹੈ: " msgid "" "Create an instance of the :class:`FileInput` class. The instance will be " @@ -99,12 +127,18 @@ msgid "" "to use during iteration. The parameters to this function will be passed " "along to the constructor of the :class:`FileInput` class." msgstr "" +":class:`FileInput` ਕਲਾਸ ਦੀ ਇੱਕ ਇੰਸਟੈਂਸ ਬਣਾਓ। ਇਹ ਇੰਸਟੈਂਸ ਇਸ ਮੋਡੀਊਲ ਦੇ ਫੰਕਸ਼ਨਾਂ ਲਈ ਗਲੋਬਲ " +"ਸਟੇਟ ਵਜੋਂ ਵਰਤੀ ਜਾਵੇਗੀ ਅਤੇ ਇਟਰੇਸ਼ਨ ਦੌਰਾਨ ਵਰਤਣ ਲਈ ਵੀ ਵਾਪਸ ਕੀਤੀ ਜਾਵੇਗੀ। ਇਸ ਫੰਕਸ਼ਨ ਦੇ " +"ਪੈਰਾਮੀਟਰਾਂ ਨੂੰ :class:`FileInput` ਕਲਾਸ ਦੇ ਕੰਸਟਰਕਟਰ ਨੂੰ ਪਾਸ ਕੀਤਾ ਜਾਵੇਗਾ।" msgid "" -"The :class:`FileInput` instance can be used as a context manager in the :" -"keyword:`with` statement. In this example, *input* is closed after the :" -"keyword:`!with` statement is exited, even if an exception occurs::" +"The :class:`FileInput` instance can be used as a context manager in " +"the :keyword:`with` statement. In this example, *input* is closed after " +"the :keyword:`!with` statement is exited, even if an exception occurs::" msgstr "" +":class:`FileInput` ਇੰਸਟੈਂਸ ਨੂੰ :keyword:`with` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਇੱਕ ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਰ ਵਜੋਂ ਵਰਤਿਆ " +"ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, :keyword:`!with` with ਸਟੇਟਮੈਂਟ ਤੋਂ ਬਾਹਰ ਨਿਕਲਣ ਤੋਂ ਬਾਅਦ " +"*input* ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ, ਭਾਵੇਂ ਕੋਈ ਐਕਸੈਪਸ਼ਨ ਆ ਜਾਵੇ:" msgid "" "with fileinput.input(files=('spam.txt', 'eggs.txt'), encoding=\"utf-8\") as " @@ -112,52 +146,73 @@ msgid "" " for line in f:\n" " process(line)" msgstr "" +"with fileinput.input(files=('spam.txt', 'eggs.txt'), encoding=\"utf-8\") as " +"f: \n" +" for line in f: \n" +" process(line)" msgid "Can be used as a context manager." -msgstr "" +msgstr "ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਰ ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "The keyword parameters *mode* and *openhook* are now keyword-only." -msgstr "" +msgstr "ਕੀਵਰਡ ਪੈਰਾਮੀਟਰ *mode* ਅਤੇ *openhook* ਹੁਣ ਸਿਰਫ਼ ਕੀਵਰਡ ਵਜੋਂ ਹੀ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ।" msgid "The keyword-only parameter *encoding* and *errors* are added." -msgstr "" +msgstr "ਕੀਵਰਡ-ਓਨਲੀ ਪੈਰਾਮੀਟਰ *encoding* ਅਤੇ *errors* ਸ਼ਾਮਲ ਕੀਤੇ ਗਏ ਹਨ।" msgid "" -"The following functions use the global state created by :func:`fileinput." -"input`; if there is no active state, :exc:`RuntimeError` is raised." +"The following functions use the global state created " +"by :func:`fileinput.input`; if there is no active state, :exc:`RuntimeError` " +"is raised." msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੇ ਫੰਕਸ਼ਨ :func:`fileinput.input` ਦੁਆਰਾ ਬਣਾਈ ਗਈ ਗਲੋਬਲ ਸਟੇਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ; " +"ਜੇਕਰ ਕੋਈ ਐਕਟਿਵ ਸਟੇਟ ਨਹੀਂ ਹੈ, ਤਾਂ :exc:`RuntimeError` ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "" "Return the name of the file currently being read. Before the first line has " "been read, returns ``None``." msgstr "" +"ਵਰਤਮਾਨ ਵਿੱਚ ਪੜ੍ਹੀ ਜਾ ਰਹੀ ਫ਼ਾਈਲ ਦਾ ਨਾਮ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹੇ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ, " +"``None`` ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "Return the integer \"file descriptor\" for the current file. When no file is " "opened (before the first line and between files), returns ``-1``." msgstr "" +"ਮੌਜੂਦਾ ਫਾਈਲ ਲਈ ਪੂਰਨ ਅੰਕ \"ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ\" ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਕੋਈ ਫਾਈਲ ਖੁੱਲ੍ਹੀ ਨਾ ਹੋਵੇ " +"(ਪਹਿਲੀ ਲਾਈਨ ਤੋਂ ਪਹਿਲਾਂ ਅਤੇ ਫਾਈਲਾਂ ਦੇ ਵਿਚਕਾਰ), ਤਾਂ ``-1`` ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "Return the cumulative line number of the line that has just been read. " "Before the first line has been read, returns ``0``. After the last line of " "the last file has been read, returns the line number of that line." msgstr "" +"ਹੁਣੇ ਪੜ੍ਹੀ ਗਈ ਲਾਈਨ ਦਾ ਸੰਚਿਤ ਲਾਈਨ ਨੰਬਰ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ, ``0`` " +"ਵਾਪਸ ਕਰਦਾ ਹੈ। ਆਖਰੀ ਫਾਈਲ ਦੀ ਆਖਰੀ ਲਾਈਨ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ, ਉਸ ਲਾਈਨ ਦਾ ਲਾਈਨ ਨੰਬਰ ਵਾਪਸ " +"ਕਰਦਾ ਹੈ।" msgid "" "Return the line number in the current file. Before the first line has been " "read, returns ``0``. After the last line of the last file has been read, " "returns the line number of that line within the file." msgstr "" +"ਮੌਜੂਦਾ ਫਾਈਲ ਵਿੱਚ ਲਾਈਨ ਨੰਬਰ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ, ``0`` ਵਾਪਸ ਕਰਦਾ " +"ਹੈ। ਆਖਰੀ ਫਾਈਲ ਦੀ ਆਖਰੀ ਲਾਈਨ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ, ਉਸ ਲਾਈਨ ਦਾ ਫਾਈਲ ਦੇ ਅੰਦਰਲਾ ਲਾਈਨ ਨੰਬਰ ਵਾਪਸ " +"ਕਰਦਾ ਹੈ।" msgid "" "Return ``True`` if the line just read is the first line of its file, " "otherwise return ``False``." msgstr "" +"ਜੇ ਹੁਣੇ ਪੜ੍ਹੀ ਗਈ ਲਾਈਨ ਉਸ ਫਾਈਲ ਦੀ ਪਹਿਲੀ ਲਾਈਨ ਹੈ ਤਾਂ ``True`` ਵਾਪਸ ਕਰਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ " +"``False`` ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "Return ``True`` if the last line was read from ``sys.stdin``, otherwise " "return ``False``." msgstr "" +"ਜੇ ਆਖਰੀ ਲਾਈਨ ``sys.stdin`` ਤੋਂ ਪੜ੍ਹੀ ਗਈ ਹੈ ਤਾਂ ``True`` ਵਾਪਸ ਕਰਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ " +"``False`` ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "Close the current file so that the next iteration will read the first line " @@ -168,60 +223,84 @@ msgid "" "file. After the last line of the last file has been read, this function has " "no effect." msgstr "" +"ਮੌਜੂਦਾ ਫਾਈਲ ਨੂੰ ਬੰਦ ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ ਅਗਲੀ ਵਾਰ ਅਗਲੀ ਫਾਈਲ ਦੀ ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹੀ ਜਾਵੇ (ਜੇ ਕੋਈ " +"ਹੋਵੇ); ਫਾਈਲ ਵਿੱਚੋਂ ਨਾ ਪੜ੍ਹੀਆਂ ਗਈਆਂ ਲਾਈਨਾਂ ਕੁੱਲ ਲਾਈਨ ਗਿਣਤੀ ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੋਣਗੀਆਂ। ਫਾਈਲ ਦਾ " +"ਨਾਮ ਅਗਲੀ ਫਾਈਲ ਦੀ ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹੇ ਜਾਣ ਤੱਕ ਨਹੀਂ ਬਦਲਦਾ। ਪਹਿਲੀ ਲਾਈਨ ਪੜ੍ਹੇ ਜਾਣ ਤੋਂ " +"ਪਹਿਲਾਂ, ਇਸ ਫੰਕਸ਼ਨ ਦਾ ਕੋਈ ਅਸਰ ਨਹੀਂ ਹੁੰਦਾ; ਇਸਦੀ ਵਰਤੋਂ ਪਹਿਲੀ ਫਾਈਲ ਨੂੰ ਛੱਡਣ ਲਈ ਨਹੀਂ ਕੀਤੀ ਜਾ " +"ਸਕਦੀ। ਆਖਰੀ ਫਾਈਲ ਦੀ ਆਖਰੀ ਲਾਈਨ ਪੜ੍ਹੇ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਇਸ ਫੰਕਸ਼ਨ ਦਾ ਕੋਈ ਅਸਰ ਨਹੀਂ ਹੁੰਦਾ।" msgid "Close the sequence." -msgstr "" +msgstr "ਕ੍ਰਮ ਨੂੰ ਬੰਦ ਕਰੋ।" msgid "" "The class which implements the sequence behavior provided by the module is " "available for subclassing as well:" msgstr "" +"ਮੋਡੀਊਲ ਵੱਲੋਂ ਦਿੱਤੇ ਗਏ ਕ੍ਰਮ ਦੇ ਵਿਹਾਰ ਨੂੰ ਲਾਗੂ ਕਰਨ ਵਾਲੀ ਕਲਾਸ ਨੂੰ ਸਬਕਲਾਸ ਬਣਾਉਣ ਲਈ ਵੀ ਵਰਤਿਆ " +"ਜਾ ਸਕਦਾ ਹੈ: " msgid "" -"Class :class:`FileInput` is the implementation; its methods :meth:" -"`filename`, :meth:`fileno`, :meth:`lineno`, :meth:`filelineno`, :meth:" -"`isfirstline`, :meth:`isstdin`, :meth:`nextfile` and :meth:`close` " -"correspond to the functions of the same name in the module. In addition it " -"is :term:`iterable` and has a :meth:`~io.TextIOBase.readline` method which " -"returns the next input line. The sequence must be accessed in strictly " -"sequential order; random access and :meth:`~io.TextIOBase.readline` cannot " -"be mixed." +"Class :class:`FileInput` is the implementation; its " +"methods :meth:`filename`, :meth:`fileno`, :meth:`lineno`, :meth:`filelineno`, :meth:`isfirstline`, :meth:`isstdin`, :meth:`nextfile` " +"and :meth:`close` correspond to the functions of the same name in the " +"module. In addition it is :term:`iterable` and has " +"a :meth:`~io.TextIOBase.readline` method which returns the next input line. " +"The sequence must be accessed in strictly sequential order; random access " +"and :meth:`~io.TextIOBase.readline` cannot be mixed." msgstr "" +"ਕਲਾਸ :class:`FileInput` ਇਸਦੀ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਹੈ; ਇਸਦੇ " +"ਢੰਗ :meth:`filename`, :meth:`fileno`, :meth:`lineno`, :meth:`filelineno`, :meth:`isfirstline`, :meth:`isstdin`, :meth:`nextfile` " +"ਅਤੇ :meth:`close` ਮੋਡੀਊਲ ਵਿੱਚ ਇਸੇ ਨਾਮ ਵਾਲੇ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, " +"ਇਹ :term:`iterable` ਹੈ ਅਤੇ ਇਸ ਵਿੱਚ :meth:`~io.TextIOBase.readline` ਢੰਗ ਹੈ ਜੋ ਅਗਲੀ " +"ਇਨਪੁਟ ਲਾਈਨ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਕ੍ਰਮ ਨੂੰ ਸਖ਼ਤ ਕ੍ਰਮਵਾਰ ਢੰਗ ਨਾਲ ਐਕਸੈਸ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ; ਰੈਂਡਮ " +"ਐਕਸੈਸ ਅਤੇ :meth:`~io.TextIOBase.readline` ਨੂੰ ਮਿਲਾ ਕੇ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ।" msgid "" "With *mode* you can specify which file mode will be passed to :func:`open`. " "It must be one of ``'r'`` and ``'rb'``." msgstr "" +"`*mode*` ਨਾਲ ਤੁਸੀਂ ਇਹ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ ਕਿ :func:`open` ਨੂੰ ਕਿਹੜਾ ਫਾਈਲ ਮੋਡ ਦਿੱਤਾ " +"ਜਾਵੇਗਾ। ਇਹ ``'r'`` ਜਾਂ ``'rb'`` ਵਿੱਚੋਂ ਕੋਈ ਇੱਕ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "" "The *openhook*, when given, must be a function that takes two arguments, " "*filename* and *mode*, and returns an accordingly opened file-like object. " "You cannot use *inplace* and *openhook* together." msgstr "" +"`*openhook*`, ਜੇ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਇੱਕ ਅਜਿਹਾ ਫੰਕਸ਼ਨ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਦੋ ਆਰਗੂਮੈਂਟ " +"`*filename*` ਅਤੇ `*mode*` ਲੈਂਦਾ ਹੈ ਅਤੇ ਇਸ ਅਨੁਸਾਰ ਖੋਲ੍ਹੀ ਗਈ ਫਾਈਲ ਵਰਗੀ ਵਸਤੂ ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "You can specify *encoding* and *errors* that is passed to :func:`open` or " "*openhook*." msgstr "" +"ਤੁਸੀਂ `*encoding*` ਅਤੇ `*errors*` ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ ਜੋ :func:`open` ਜਾਂ " +"`*openhook*` ਨੂੰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ। " msgid "" -"A :class:`FileInput` instance can be used as a context manager in the :" -"keyword:`with` statement. In this example, *input* is closed after the :" -"keyword:`!with` statement is exited, even if an exception occurs::" +"A :class:`FileInput` instance can be used as a context manager in " +"the :keyword:`with` statement. In this example, *input* is closed after " +"the :keyword:`!with` statement is exited, even if an exception occurs::" msgstr "" +"ਇੱਕ :class:`FileInput` ਇੰਸਟੈਂਸ ਨੂੰ :keyword:`with` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਕਾਂਟੈਕਸਟ ਮੈਨੇਜਰ ਵਜੋਂ ਵਰਤਿਆ " +"ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, `*input*` ਨੂੰ :keyword:`!with` ਸਟੇਟਮੈਂਟ ਤੋਂ ਬਾਹਰ ਨਿਕਲਣ ਤੋਂ " +"ਬਾਅਦ ਬੰਦ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਭਾਵੇਂ ਕੋਈ ਅਪਵਾਦ ਆ ਜਾਵੇ:" msgid "" "with FileInput(files=('spam.txt', 'eggs.txt')) as input:\n" " process(input)" msgstr "" +"with FileInput(files=('spam.txt', 'eggs.txt')) as input:\n" +" process(input)" msgid "The keyword parameter *mode* and *openhook* are now keyword-only." msgstr "" +"ਕੀਵਰਡ ਪੈਰਾਮੀਟਰ `*mode*` ਅਤੇ `*openhook*` ਹੁਣ ਸਿਰਫ਼ ਕੀਵਰਡ ਵਜੋਂ ਹੀ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ।" msgid "" "The ``'rU'`` and ``'U'`` modes and the :meth:`!__getitem__` method have been " "removed." -msgstr "" +msgstr "``'rU'`` ਅਤੇ ``'U'`` ਮੋਡ ਅਤੇ :meth:`!__getitem__`ਵਿਧੀ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਗਿਆ ਹੈ।" msgid "" "**Optional in-place filtering:** if the keyword argument ``inplace=True`` is " @@ -235,9 +314,18 @@ msgid "" "extension is ``'.bak'`` and it is deleted when the output file is closed. " "In-place filtering is disabled when standard input is read." msgstr "" +"ਵਿਕਲਪਿਕ ਇਨ-ਪਲੇਸ ਫਿਲਟਰਿੰਗ: ਜੇ ਕੀਵਰਡ ਆਰਗੂਮੈਂਟ ``inplace=True`` " +"ਨੂੰ :func:`fileinput.input` ਜਾਂ :class:`FileInput` ਕਨਸਟਰਕਟਰ ਨੂੰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ " +"ਫਾਈਲ ਨੂੰ ਬੈਕਅੱਪ ਫਾਈਲ ਵਿੱਚ ਭੇਜ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਨੂੰ ਇਨਪੁਟ ਫਾਈਲ ਵੱਲ ਭੇਜਿਆ ਜਾਂਦਾ " +"ਹੈ (ਜੇ ਬੈਕਅੱਪ ਫਾਈਲ ਦੇ ਸਮਾਨ ਨਾਮ ਵਾਲੀ ਫਾਈਲ ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ ਹੈ, ਤਾਂ ਉਸਨੂੰ ਚੁੱਪਚਾਪ ਬਦਲ ਦਿੱਤਾ " +"ਜਾਂਦਾ ਹੈ)। ਇਸ ਨਾਲ ਕਿਸੇ ਫਿਲਟਰ ਲਈ ਆਪਣੀ ਇਨਪੁਟ ਫਾਈਲ ਨੂੰ ਉਸੇ ਥਾਂ 'ਤੇ ਮੁੜ ਲਿਖਣਾ ਸੰਭਵ ਹੋ ਜਾਂਦਾ " +"ਹੈ। ਜੇ `*backup*` ਪੈਰਾਮੀਟਰ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ (ਆਮ ਤੌਰ 'ਤੇ ``backup='.'`` " +"ਵਜੋਂ), ਤਾਂ ਇਹ ਬੈਕਅੱਪ ਫਾਈਲ ਲਈ ਐਕਸਟੈਂਸ਼ਨ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਬੈਕਅੱਪ ਫਾਈਲ ਮੌਜੂਦ ਰਹਿੰਦੀ ਹੈ; ਮੂਲ " +"ਰੂਪ ਵਿੱਚ, ਐਕਸਟੈਂਸ਼ਨ ``'.bak'`` ਹੁੰਦੀ ਹੈ ਅਤੇ ਆਉਟਪੁੱਟ ਫਾਈਲ ਬੰਦ ਹੋਣ 'ਤੇ ਇਸਨੂੰ ਮਿਟਾ ਦਿੱਤਾ ਜਾਂਦਾ " +"ਹੈ। ਜਦੋਂ ਮਿਆਰੀ ਇਨਪੁਟ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ ਤਾਂ ਇਨ-ਪਲੇਸ ਫਿਲਟਰਿੰਗ ਅਸਮਰੱਥ ਹੁੰਦੀ ਹੈ।" msgid "The two following opening hooks are provided by this module:" -msgstr "" +msgstr "ਇਸ ਮੋਡੀਊਲ ਵੱਲੋਂ ਹੇਠਾਂ ਦਿੱਤੇ ਦੋ ਓਪਨਿੰਗ ਹੁੱਕ ਪ੍ਰਦਾਨ ਕੀਤੇ ਜਾਂਦੇ ਹਨ:" msgid "" "Transparently opens files compressed with gzip and bzip2 (recognized by the " @@ -245,31 +333,47 @@ msgid "" "modules. If the filename extension is not ``'.gz'`` or ``'.bz2'``, the file " "is opened normally (ie, using :func:`open` without any decompression)." msgstr "" +"gzip ਅਤੇ bzip2 ਨਾਲ ਸੰਕੁਚਿਤ ਫਾਈਲਾਂ ਨੂੰ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਖੋਲ੍ਹਦਾ ਹੈ (ਜਿਨ੍ਹਾਂ ਨੂੰ ``'.gz'`` ਅਤੇ " +"``'.bz2'`` ਐਕਸਟੈਂਸ਼ਨਾਂ ਰਾਹੀਂ ਪਛਾਣਿਆ ਜਾਂਦਾ ਹੈ), :mod:`gzip` ਅਤੇ :mod:`bz2` ਮੋਡੀਊਲਾਂ ਦੀ " +"ਵਰਤੋਂ ਕਰਕੇ। ਜੇ ਫਾਈਲ ਦੀ ਐਕਸਟੈਂਸ਼ਨ ``'.gz'`` ਜਾਂ ``'.bz2'`` ਨਹੀਂ ਹੈ, ਤਾਂ ਫਾਈਲ ਨੂੰ ਆਮ ਤਰੀਕੇ " +"ਨਾਲ ਖੋਲ੍ਹਿਆ ਜਾਂਦਾ ਹੈ (ਅਰਥਾਤ, ਬਿਨਾਂ ਕਿਸੇ ਡੀਕੰਪ੍ਰੈਸ਼ਨ ਦੇ :func:`open` ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ)।" msgid "" "The *encoding* and *errors* values are passed to :class:`io.TextIOWrapper` " "for compressed files and open for normal files." msgstr "" +"ਸੰਕੁਚਿਤ ਫਾਈਲਾਂ ਲਈ ਅਤੇ ਆਮ ਫਾਈਲਾਂ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ *encoding* ਅਤੇ *errors* ਦੇ " +"ਮੁੱਲ :class:`io.TextIOWrapper` ਨੂੰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ।" msgid "" -"Usage example: ``fi = fileinput.FileInput(openhook=fileinput." -"hook_compressed, encoding=\"utf-8\")``" +"Usage example: ``fi = " +"fileinput.FileInput(openhook=fileinput.hook_compressed, encoding=\"utf-8\")``" msgstr "" +"ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ: ``fi = " +"fileinput.FileInput(openhook=fileinput.hook_compressed, encoding=\"utf-8\")``" msgid "" "Returns a hook which opens each file with :func:`open`, using the given " "*encoding* and *errors* to read the file." msgstr "" +"ਇੱਕ ਹੁੱਕ ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੋ ਦਿੱਤੇ ਗਏ *encoding* ਅਤੇ *errors* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹਰ ਫਾਈਲ " +"ਨੂੰ :func:`open` ਨਾਲ ਖੋਲ੍ਹਦਾ ਹੈ ਅਤੇ ਫਾਈਲ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ।" msgid "" -"Usage example: ``fi = fileinput.FileInput(openhook=fileinput." -"hook_encoded(\"utf-8\", \"surrogateescape\"))``" +"Usage example: ``fi = " +"fileinput.FileInput(openhook=fileinput.hook_encoded(\"utf-8\", " +"\"surrogateescape\"))``" msgstr "" +"ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ: ``fi = " +"fileinput.FileInput(openhook=fileinput.hook_encoded(\"utf-8\", " +"\"surrogateescape\"))``" msgid "Added the optional *errors* parameter." -msgstr "" +msgstr "ਵਿਕਲਪਿਕ *errors* ਪੈਰਾਮੀਟਰ ਜੋੜਿਆ ਗਿਆ ਹੈ।" msgid "" -"This function is deprecated since :func:`fileinput.input` and :class:" -"`FileInput` now have *encoding* and *errors* parameters." +"This function is deprecated since :func:`fileinput.input` " +"and :class:`FileInput` now have *encoding* and *errors* parameters." msgstr "" +"ਇਹ ਫੰਕਸ਼ਨ ਪੁਰਾਣਾ ਹੋ ਗਿਆ ਹੈ ਕਿਉਂਕਿ :func:`fileinput.input` ਅਤੇ :class:`FileInput` " +"ਵਿੱਚ ਹੁਣ *encoding* ਅਤੇ *errors* ਪੈਰਾਮੀਟਰ ਮੌਜੂਦ ਹਨ।" diff --git a/library/filesys.po b/library/filesys.po index 2e589e3..865f2d7 100644 --- a/library/filesys.po +++ b/library/filesys.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/fnmatch.po b/library/fnmatch.po index 01cab1d..62c9960 100644 --- a/library/fnmatch.po +++ b/library/fnmatch.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -71,10 +71,10 @@ msgstr "" msgid "" "Note that the filename separator (``'/'`` on Unix) is *not* special to this " -"module. See module :mod:`glob` for pathname expansion (:mod:`glob` uses :" -"func:`.filter` to match pathname segments). Similarly, filenames starting " -"with a period are not special for this module, and are matched by the ``*`` " -"and ``?`` patterns." +"module. See module :mod:`glob` for pathname expansion (:mod:`glob` " +"uses :func:`.filter` to match pathname segments). Similarly, filenames " +"starting with a period are not special for this module, and are matched by " +"the ``*`` and ``?`` patterns." msgstr "" msgid "" @@ -87,15 +87,14 @@ msgstr "" msgid "" "Finally, note that :deco:`functools.lru_cache` with a *maxsize* of 32768 is " "used to cache the (typed) compiled regex patterns in the following " -"functions: :func:`fnmatch`, :func:`fnmatchcase`, :func:`.filter`, :func:`." -"filterfalse`." +"functions: :func:`~fnmatch.fnmatch`, :func:`fnmatchcase`, :func:`.filter`, :func:`.filterfalse`." msgstr "" msgid "" "Test whether the filename string *name* matches the pattern string *pat*, " -"returning ``True`` or ``False``. Both parameters are case-normalized using :" -"func:`os.path.normcase`. :func:`fnmatchcase` can be used to perform a case-" -"sensitive comparison, regardless of whether that's standard for the " +"returning ``True`` or ``False``. Both parameters are case-normalized " +"using :func:`os.path.normcase`. :func:`fnmatchcase` can be used to perform a " +"case-sensitive comparison, regardless of whether that's standard for the " "operating system." msgstr "" @@ -134,8 +133,8 @@ msgstr "" msgid "" "Return the shell-style pattern *pat* converted to a regular expression for " -"using with :func:`re.prefixmatch`. The pattern is expected to be a :class:" -"`str`." +"using with :func:`re.prefixmatch`. The pattern is expected to be " +"a :class:`str`." msgstr "" msgid "Example:" diff --git a/library/fractions.po b/library/fractions.po index 48a7607..bea1e1e 100644 --- a/library/fractions.po +++ b/library/fractions.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,16 +41,16 @@ msgid "" msgstr "" msgid "" -"The second version requires that *number* is an instance of :class:`numbers." -"Rational` or has the :meth:`!as_integer_ratio` method (this includes :class:" -"`float` and :class:`decimal.Decimal`). It returns a :class:`Fraction` " -"instance with exactly the same value. Assumed, that the :meth:`!" -"as_integer_ratio` method returns a pair of coprime integers and last one is " -"positive. Note that due to the usual issues with binary point (see :ref:`tut-" -"fp-issues`), the argument to ``Fraction(1.1)`` is not exactly equal to " -"11/10, and so ``Fraction(1.1)`` does *not* return ``Fraction(11, 10)`` as " -"one might expect. (But see the documentation for the :meth:" -"`limit_denominator` method below.)" +"The second version requires that *number* is an instance " +"of :class:`numbers.Rational` or has the :meth:`!as_integer_ratio` method " +"(this includes :class:`float` and :class:`decimal.Decimal`). It returns " +"a :class:`Fraction` instance with exactly the same value. Assumed, that " +"the :meth:`!as_integer_ratio` method returns a pair of coprime integers and " +"last one is positive. Note that due to the usual issues with binary point " +"(see :ref:`tut-fp-issues`), the argument to ``Fraction(1.1)`` is not exactly " +"equal to 11/10, and so ``Fraction(1.1)`` does *not* return ``Fraction(11, " +"10)`` as one might expect. (But see the documentation for " +"the :meth:`limit_denominator` method below.)" msgstr "" msgid "" @@ -65,10 +65,10 @@ msgid "" "where the optional ``sign`` may be either '+' or '-' and ``numerator`` and " "``denominator`` (if present) are strings of decimal digits (underscores may " "be used to delimit digits as with integral literals in code). In addition, " -"any string that represents a finite value and is accepted by the :class:" -"`float` constructor is also accepted by the :class:`Fraction` constructor. " -"In either form the input string may also have leading and/or trailing " -"whitespace. Here are some examples::" +"any string that represents a finite value and is accepted by " +"the :class:`float` constructor is also accepted by the :class:`Fraction` " +"constructor. In either form the input string may also have leading and/or " +"trailing whitespace. Here are some examples::" msgstr "" msgid "" @@ -99,16 +99,16 @@ msgid "" msgstr "" msgid "" -"The :class:`Fraction` class inherits from the abstract base class :class:" -"`numbers.Rational`, and implements all of the methods and operations from " -"that class. :class:`Fraction` instances are :term:`hashable`, and should be " -"treated as immutable. In addition, :class:`Fraction` has the following " -"properties and methods:" +"The :class:`Fraction` class inherits from the abstract base " +"class :class:`numbers.Rational`, and implements all of the methods and " +"operations from that class. :class:`Fraction` instances " +"are :term:`hashable`, and should be treated as immutable. In " +"addition, :class:`Fraction` has the following properties and methods:" msgstr "" msgid "" -"The :class:`Fraction` constructor now accepts :class:`float` and :class:" -"`decimal.Decimal` instances." +"The :class:`Fraction` constructor now accepts :class:`float` " +"and :class:`decimal.Decimal` instances." msgstr "" msgid "" @@ -123,8 +123,8 @@ msgid "" msgstr "" msgid "" -":class:`Fraction` implements ``__int__`` now to satisfy ``typing." -"SupportsInt`` instance checks." +":class:`Fraction` implements ``__int__`` now to satisfy " +"``typing.SupportsInt`` instance checks." msgstr "" msgid "" @@ -134,7 +134,7 @@ msgstr "" msgid "" ":class:`Fraction` instances now support float-style formatting, with " "presentation types ``\"e\"``, ``\"E\"``, ``\"f\"``, ``\"F\"``, ``\"g\"``, " -"``\"G\"`` and ``\"%\"\"``." +"``\"G\"`` and ``\"%\"``." msgstr "" msgid "" @@ -162,9 +162,9 @@ msgid "Return ``True`` if the Fraction is an integer." msgstr "" msgid "" -"Alternative constructor which only accepts instances of :class:`float` or :" -"class:`numbers.Integral`. Beware that ``Fraction.from_float(0.3)`` is not " -"the same value as ``Fraction(3, 10)``." +"Alternative constructor which only accepts instances of :class:`float` " +"or :class:`numbers.Integral`. Beware that ``Fraction.from_float(0.3)`` is " +"not the same value as ``Fraction(3, 10)``." msgstr "" msgid "" @@ -173,8 +173,8 @@ msgid "" msgstr "" msgid "" -"Alternative constructor which only accepts instances of :class:`decimal." -"Decimal` or :class:`numbers.Integral`." +"Alternative constructor which only accepts instances " +"of :class:`decimal.Decimal` or :class:`numbers.Integral`." msgstr "" msgid "" @@ -183,10 +183,10 @@ msgid "" msgstr "" msgid "" -"Alternative constructor which only accepts instances of :class:`numbers." -"Integral`, :class:`numbers.Rational`, :class:`float` or :class:`decimal." -"Decimal`, and objects with the :meth:`!as_integer_ratio` method, but not " -"strings." +"Alternative constructor which only accepts instances " +"of :class:`numbers.Integral`, :class:`numbers.Rational`, :class:`float` " +"or :class:`decimal.Decimal`, and objects with the :meth:`!as_integer_ratio` " +"method, but not strings." msgstr "" msgid "" @@ -212,14 +212,14 @@ msgid "" "The first version returns the nearest :class:`int` to ``self``, rounding " "half to even. The second version rounds ``self`` to the nearest multiple of " "``Fraction(1, 10**ndigits)`` (logically, if ``ndigits`` is negative), again " -"rounding half toward even. This method can also be accessed through the :" -"func:`round` function." +"rounding half toward even. This method can also be accessed through " +"the :func:`round` function." msgstr "" msgid "" -"Provides support for formatting of :class:`Fraction` instances via the :meth:" -"`str.format` method, the :func:`format` built-in function, or :ref:" -"`Formatted string literals `." +"Provides support for formatting of :class:`Fraction` instances via " +"the :meth:`str.format` method, the :func:`format` built-in function, " +"or :ref:`Formatted string literals `." msgstr "" msgid "" diff --git a/library/frameworks.po b/library/frameworks.po index 8627e8f..dac1a4b 100644 --- a/library/frameworks.po +++ b/library/frameworks.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,18 +23,20 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Program frameworks" -msgstr "" +msgstr "ਪ੍ਰੋਗਰਾਮ ਢਾਂਚੇ" msgid "" "This chapter is no longer maintained, and the modules it contained have been " "moved to their respective topical documentation." msgstr "" +"ਇਹ ਅਧਿਆਇ ਹੁਣ ਬਰਕਰਾਰ ਨਹੀਂ ਰੱਖਿਆ ਜਾਂਦਾ, ਅਤੇ ਇਸ ਵਿੱਚ ਮੌਜੂਦ ਮੋਡੀਊਲਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀ ਸੰਬੰਧਿਤ " +"ਵਿਸ਼ਾਵਾਰ ਦਸਤਾਵੇਜ਼ੀ ਵਿੱਚ ਭੇਜ ਦਿੱਤਾ ਗਿਆ ਹੈ।" msgid ":mod:`cmd` — :doc:`Command Line Interface Libraries <./cmdlinelibs>`" -msgstr "" +msgstr ":mod:`cmd` --- :doc:` ਕਮਾਂਡ ਲਾਈਨ ਇੰਟਰਫੇਸ ਲਾਇਬ੍ਰੇਰੀਆਂ <./cmdlinelibs>`" msgid ":mod:`shlex` — :doc:`Unix Specific Services <./unix>`" -msgstr "" +msgstr ":mod:`shlex` --- :doc:`ਯੂਨਿਕਸ-ਵਿਸ਼ੇਸ਼ ਸੇਵਾਵਾਂ <./unix>`" msgid ":mod:`turtle` — :doc:`Graphical User Interfaces with Tk <./tk>`" -msgstr "" +msgstr ":mod:`turtle` --- :doc:`Tk ਨਾਲ ਗ੍ਰਾਫਿਕਲ ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ <./tk>`" diff --git a/library/ftplib.po b/library/ftplib.po index 1773aa4..2f1daa9 100644 --- a/library/ftplib.po +++ b/library/ftplib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,12 +29,12 @@ msgid "**Source code:** :source:`Lib/ftplib.py`" msgstr "" msgid "" -"This module defines the class :class:`FTP` and a few related items. The :" -"class:`FTP` class implements the client side of the FTP protocol. You can " -"use this to write Python programs that perform a variety of automated FTP " -"jobs, such as mirroring other FTP servers. It is also used by the module :" -"mod:`urllib.request` to handle URLs that use FTP. For more information on " -"FTP (File Transfer Protocol), see internet :rfc:`959`." +"This module defines the class :class:`FTP` and a few related items. " +"The :class:`FTP` class implements the client side of the FTP protocol. You " +"can use this to write Python programs that perform a variety of automated " +"FTP jobs, such as mirroring other FTP servers. It is also used by the " +"module :mod:`urllib.request` to handle URLs that use FTP. For more " +"information on FTP (File Transfer Protocol), see internet :rfc:`959`." msgstr "" msgid "The default encoding is UTF-8, following :rfc:`2640`." @@ -66,7 +66,7 @@ msgid "" "drwxr-xr-x 3 1176 1176 4096 Oct 10 2012 tools\n" "'226 Directory send OK.'\n" ">>> with open('README', 'wb') as fp:\n" -">>> ftp.retrbinary('RETR README', fp.write)\n" +"... ftp.retrbinary('RETR README', fp.write)\n" "'226 Transfer complete.'\n" ">>> ftp.quit()\n" "'221 Goodbye.'" @@ -121,8 +121,8 @@ msgid "*source_address* parameter was added." msgstr "" msgid "" -"If the *timeout* parameter is set to be zero, it will raise a :class:" -"`ValueError` to prevent the creation of a non-blocking socket. The " +"If the *timeout* parameter is set to be zero, it will raise " +"a :class:`ValueError` to prevent the creation of a non-blocking socket. The " "*encoding* parameter was added, and the default was changed from Latin-1 to " "UTF-8 to follow :rfc:`2640`." msgstr "" @@ -263,9 +263,9 @@ msgid "An appropriate ``STOR`` command: :samp:`\"STOR {filename}\"`." msgstr "" msgid "" -"A file object (opened in binary mode) which is read until EOF, using its :" -"meth:`~io.RawIOBase.read` method in blocks of size *blocksize* to provide " -"the data to be stored." +"A file object (opened in binary mode) which is read until EOF, using " +"its :meth:`~io.RawIOBase.read` method in blocks of size *blocksize* to " +"provide the data to be stored." msgstr "" msgid "The read block size. Defaults to ``8192``." @@ -315,14 +315,14 @@ msgid "" msgstr "" msgid "" -"List a directory in a standardized format by using ``MLSD`` command (:rfc:" -"`3659`). If *path* is omitted the current directory is assumed. *facts* is " -"a list of strings representing the type of information desired (e.g. " -"``[\"type\", \"size\", \"perm\"]``). Return a generator object yielding a " -"tuple of two elements for every file found in path. First element is the " -"file name, the second one is a dictionary containing facts about the file " -"name. Content of this dictionary might be limited by the *facts* argument " -"but server is not guaranteed to return all requested facts." +"List a directory in a standardized format by using ``MLSD`` command " +"(:rfc:`3659`). If *path* is omitted the current directory is assumed. " +"*facts* is a list of strings representing the type of information desired " +"(e.g. ``[\"type\", \"size\", \"perm\"]``). Return a generator object " +"yielding a tuple of two elements for every file found in path. First " +"element is the file name, the second one is a dictionary containing facts " +"about the file name. Content of this dictionary might be limited by the " +"*facts* argument but server is not guaranteed to return all requested facts." msgstr "" msgid "" @@ -392,14 +392,14 @@ msgid "FTP_TLS objects" msgstr "" msgid "" -"An :class:`FTP` subclass which adds TLS support to FTP as described in :rfc:" -"`4217`. Connect to port 21 implicitly securing the FTP control connection " -"before authenticating." +"An :class:`FTP` subclass which adds TLS support to FTP as described " +"in :rfc:`4217`. Connect to port 21 implicitly securing the FTP control " +"connection before authenticating." msgstr "" msgid "" -"The user must explicitly secure the data connection by calling the :meth:" -"`prot_p` method." +"The user must explicitly secure the data connection by calling " +"the :meth:`prot_p` method." msgstr "" msgid "" @@ -417,8 +417,9 @@ msgid "Added the *source_address* parameter." msgstr "" msgid "" -"The class now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The class now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "The deprecated *keyfile* and *certfile* parameters have been removed." @@ -452,8 +453,9 @@ msgid "Set up a secure control connection by using TLS." msgstr "" msgid "" -"The method now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The method now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "" diff --git a/library/functional.po b/library/functional.po index 9d0ec3c..3e034ff 100644 --- a/library/functional.po +++ b/library/functional.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/functions.po b/library/functions.po deleted file mode 100644 index 82b8a7d..0000000 --- a/library/functions.po +++ /dev/null @@ -1,2874 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Built-in Functions" -msgstr "" - -msgid "" -"The Python interpreter has a number of functions and types built into it " -"that are always available. They are listed here in alphabetical order." -msgstr "" - -msgid "**A**" -msgstr "" - -msgid ":func:`abs`" -msgstr "" - -msgid ":func:`aiter`" -msgstr "" - -msgid ":func:`all`" -msgstr "" - -msgid ":func:`anext`" -msgstr "" - -msgid ":func:`any`" -msgstr "" - -msgid ":func:`ascii`" -msgstr "" - -msgid "**B**" -msgstr "" - -msgid ":func:`bin`" -msgstr "" - -msgid ":func:`bool`" -msgstr "" - -msgid ":func:`breakpoint`" -msgstr "" - -msgid "|func-bytearray|_" -msgstr "" - -msgid "|func-bytes|_" -msgstr "" - -msgid "**C**" -msgstr "" - -msgid ":func:`callable`" -msgstr "" - -msgid ":func:`chr`" -msgstr "" - -msgid ":func:`classmethod`" -msgstr "" - -msgid ":func:`compile`" -msgstr "" - -msgid ":func:`complex`" -msgstr "" - -msgid "**D**" -msgstr "" - -msgid ":func:`delattr`" -msgstr "" - -msgid "|func-dict|_" -msgstr "" - -msgid ":func:`dir`" -msgstr "" - -msgid ":func:`divmod`" -msgstr "" - -msgid "**E**" -msgstr "" - -msgid ":func:`enumerate`" -msgstr "" - -msgid ":func:`eval`" -msgstr "" - -msgid ":func:`exec`" -msgstr "" - -msgid "**F**" -msgstr "" - -msgid ":func:`filter`" -msgstr "" - -msgid ":func:`float`" -msgstr "" - -msgid ":func:`format`" -msgstr "" - -msgid "|func-frozendict|_" -msgstr "" - -msgid "|func-frozenset|_" -msgstr "" - -msgid "**G**" -msgstr "" - -msgid ":func:`getattr`" -msgstr "" - -msgid ":func:`globals`" -msgstr "" - -msgid "**H**" -msgstr "" - -msgid ":func:`hasattr`" -msgstr "" - -msgid ":func:`hash`" -msgstr "" - -msgid ":func:`help`" -msgstr "" - -msgid ":func:`hex`" -msgstr "" - -msgid "**I**" -msgstr "" - -msgid ":func:`id`" -msgstr "" - -msgid ":func:`input`" -msgstr "" - -msgid ":func:`int`" -msgstr "" - -msgid ":func:`isinstance`" -msgstr "" - -msgid ":func:`issubclass`" -msgstr "" - -msgid ":func:`iter`" -msgstr "" - -msgid "**L**" -msgstr "" - -msgid ":func:`len`" -msgstr "" - -msgid "|func-list|_" -msgstr "" - -msgid ":func:`locals`" -msgstr "" - -msgid "**M**" -msgstr "" - -msgid ":func:`map`" -msgstr "" - -msgid ":func:`max`" -msgstr "" - -msgid "|func-memoryview|_" -msgstr "" - -msgid ":func:`min`" -msgstr "" - -msgid "**N**" -msgstr "" - -msgid ":func:`next`" -msgstr "" - -msgid "**O**" -msgstr "" - -msgid ":func:`object`" -msgstr "" - -msgid ":func:`oct`" -msgstr "" - -msgid ":func:`open`" -msgstr "" - -msgid ":func:`ord`" -msgstr "" - -msgid "**P**" -msgstr "" - -msgid ":func:`pow`" -msgstr "" - -msgid ":func:`print`" -msgstr "" - -msgid ":func:`property`" -msgstr "" - -msgid "**R**" -msgstr "" - -msgid "|func-range|_" -msgstr "" - -msgid ":func:`repr`" -msgstr "" - -msgid ":func:`reversed`" -msgstr "" - -msgid ":func:`round`" -msgstr "" - -msgid "**S**" -msgstr "" - -msgid "|func-set|_" -msgstr "" - -msgid ":func:`setattr`" -msgstr "" - -msgid ":func:`sentinel`" -msgstr "" - -msgid ":func:`slice`" -msgstr "" - -msgid ":func:`sorted`" -msgstr "" - -msgid ":func:`staticmethod`" -msgstr "" - -msgid "|func-str|_" -msgstr "" - -msgid ":func:`sum`" -msgstr "" - -msgid ":func:`super`" -msgstr "" - -msgid "**T**" -msgstr "" - -msgid "|func-tuple|_" -msgstr "" - -msgid ":func:`type`" -msgstr "" - -msgid "**V**" -msgstr "" - -msgid ":func:`vars`" -msgstr "" - -msgid "**Z**" -msgstr "" - -msgid ":func:`zip`" -msgstr "" - -msgid "**_**" -msgstr "" - -msgid ":func:`__import__`" -msgstr "" - -msgid "" -"Return the absolute value of a number. The argument may be an integer, a " -"floating-point number, or an object implementing :meth:`~object.__abs__`. If " -"the argument is a complex number, its magnitude is returned." -msgstr "" - -msgid "" -"Return an :term:`asynchronous iterator` for an :term:`asynchronous " -"iterable`. Equivalent to calling ``x.__aiter__()``." -msgstr "" - -msgid "Note: Unlike :func:`iter`, :func:`aiter` has no 2-argument variant." -msgstr "" - -msgid "" -"Return ``True`` if all elements of the *iterable* are true (or if the " -"iterable is empty). Equivalent to::" -msgstr "" - -msgid "" -"def all(iterable):\n" -" for element in iterable:\n" -" if not element:\n" -" return False\n" -" return True" -msgstr "" - -msgid "" -"When awaited, return the next item from the given :term:`asynchronous " -"iterator`, or *default* if given and the iterator is exhausted." -msgstr "" - -msgid "" -"This is the async variant of the :func:`next` builtin, and behaves similarly." -msgstr "" - -msgid "" -"This calls the :meth:`~object.__anext__` method of *async_iterator*, " -"returning an :term:`awaitable`. Awaiting this returns the next value of the " -"iterator. If *default* is given, it is returned if the iterator is " -"exhausted, otherwise :exc:`StopAsyncIteration` is raised." -msgstr "" - -msgid "" -"Return ``True`` if any element of the *iterable* is true. If the iterable " -"is empty, return ``False``. Equivalent to::" -msgstr "" - -msgid "" -"def any(iterable):\n" -" for element in iterable:\n" -" if element:\n" -" return True\n" -" return False" -msgstr "" - -msgid "" -"As :func:`repr`, return a string containing a printable representation of an " -"object, but escape the non-ASCII characters in the string returned by :func:" -"`repr` using ``\\x``, ``\\u``, or ``\\U`` escapes. This generates a string " -"similar to that returned by :func:`repr` in Python 2." -msgstr "" - -msgid "" -"Convert an integer number to a binary string prefixed with \"0b\". The " -"result is a valid Python expression. If *integer* is not a Python :class:" -"`int` object, it has to define an :meth:`~object.__index__` method that " -"returns an integer. Some examples:" -msgstr "" - -msgid "" -"If the prefix \"0b\" is desired or not, you can use either of the following " -"ways." -msgstr "" - -msgid "" -"See also :func:`enum.bin` to represent negative values as twos-complement." -msgstr "" - -msgid "See also :func:`format` for more information." -msgstr "" - -msgid "" -"Return a Boolean value, i.e. one of ``True`` or ``False``. The argument is " -"converted using the standard :ref:`truth testing procedure `. If the " -"argument is false or omitted, this returns ``False``; otherwise, it returns " -"``True``. The :class:`bool` class is a subclass of :class:`int` (see :ref:" -"`typesnumeric`). It cannot be subclassed further. Its only instances are " -"``False`` and ``True`` (see :ref:`typebool`)." -msgstr "" - -msgid "The parameter is now positional-only." -msgstr "" - -msgid "" -"This function drops you into the debugger at the call site. Specifically, " -"it calls :func:`sys.breakpointhook`, passing ``args`` and ``kws`` straight " -"through. By default, ``sys.breakpointhook()`` calls :func:`pdb.set_trace` " -"expecting no arguments. In this case, it is purely a convenience function " -"so you don't have to explicitly import :mod:`pdb` or type as much code to " -"enter the debugger. However, :func:`sys.breakpointhook` can be set to some " -"other function and :func:`breakpoint` will automatically call that, allowing " -"you to drop into the debugger of choice. If :func:`sys.breakpointhook` is " -"not accessible, this function will raise :exc:`RuntimeError`." -msgstr "" - -msgid "" -"By default, the behavior of :func:`breakpoint` can be changed with the :" -"envvar:`PYTHONBREAKPOINT` environment variable. See :func:`sys." -"breakpointhook` for usage details." -msgstr "" - -msgid "" -"Note that this is not guaranteed if :func:`sys.breakpointhook` has been " -"replaced." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``builtins.breakpoint`` with " -"argument ``breakpointhook``." -msgstr "" - -msgid "" -"Return a new array of bytes. The :class:`bytearray` class is a mutable " -"sequence of integers in the range 0 <= x < 256. It has most of the usual " -"methods of mutable sequences, described in :ref:`typesseq-mutable`, as well " -"as most methods that the :class:`bytes` type has, see :ref:`bytes-methods`." -msgstr "" - -msgid "" -"The optional *source* parameter can be used to initialize the array in a few " -"different ways:" -msgstr "" - -msgid "" -"If it is a *string*, you must also give the *encoding* (and optionally, " -"*errors*) parameters; :func:`bytearray` then converts the string to bytes " -"using :meth:`str.encode`." -msgstr "" - -msgid "" -"If it is an *integer*, the array will have that size and will be initialized " -"with null bytes." -msgstr "" - -msgid "" -"If it is an object conforming to the :ref:`buffer interface " -"`, a read-only buffer of the object will be used to " -"initialize the bytes array." -msgstr "" - -msgid "" -"If it is an *iterable*, it must be an iterable of integers in the range ``0 " -"<= x < 256``, which are used as the initial contents of the array." -msgstr "" - -msgid "Without an argument, an array of size 0 is created." -msgstr "" - -msgid "See also :ref:`binaryseq` and :ref:`typebytearray`." -msgstr "" - -msgid "" -"Return a new \"bytes\" object which is an immutable sequence of integers in " -"the range ``0 <= x < 256``. :class:`bytes` is an immutable version of :" -"class:`bytearray` -- it has the same non-mutating methods and the same " -"indexing and slicing behavior." -msgstr "" - -msgid "" -"Accordingly, constructor arguments are interpreted as for :func:`bytearray`." -msgstr "" - -msgid "Bytes objects can also be created with literals, see :ref:`strings`." -msgstr "" - -msgid "See also :ref:`binaryseq`, :ref:`typebytes`, and :ref:`bytes-methods`." -msgstr "" - -msgid "" -"Return :const:`True` if the *object* argument appears callable, :const:" -"`False` if not. If this returns ``True``, it is still possible that a call " -"fails, but if it is ``False``, calling *object* will never succeed. Note " -"that classes are callable (calling a class returns a new instance); " -"instances are callable if their class has a :meth:`~object.__call__` method." -msgstr "" - -msgid "" -"This function was first removed in Python 3.0 and then brought back in " -"Python 3.2." -msgstr "" - -msgid "" -"Return the string representing a character with the specified Unicode code " -"point. For example, ``chr(97)`` returns the string ``'a'``, while " -"``chr(8364)`` returns the string ``'€'``. This is the inverse of :func:`ord`." -msgstr "" - -msgid "" -"The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in " -"base 16). :exc:`ValueError` will be raised if it is outside that range." -msgstr "" - -msgid "Transform a method into a class method." -msgstr "" - -msgid "" -"A class method receives the class as an implicit first argument, just like " -"an instance method receives the instance. To declare a class method, use " -"this idiom::" -msgstr "" - -msgid "" -"class C:\n" -" @classmethod\n" -" def f(cls, arg1, arg2): ..." -msgstr "" - -msgid "" -"The ``@classmethod`` form is a function :term:`decorator` -- see :ref:" -"`function` for details." -msgstr "" - -msgid "" -"A class method can be called either on the class (such as ``C.f()``) or on " -"an instance (such as ``C().f()``). The instance is ignored except for its " -"class. If a class method is called for a derived class, the derived class " -"object is passed as the implied first argument." -msgstr "" - -msgid "" -"Class methods are different than C++ or Java static methods. If you want " -"those, see :func:`staticmethod` in this section. For more information on " -"class methods, see :ref:`types`." -msgstr "" - -msgid "" -"Class methods can now wrap other :term:`descriptors ` such as :" -"func:`property`." -msgstr "" - -msgid "" -"Class methods now inherit the method attributes (:attr:`~function." -"__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :" -"attr:`~function.__doc__` and :attr:`~function.__annotations__`) and have a " -"new ``__wrapped__`` attribute." -msgstr "" - -msgid "" -"Class methods can no longer wrap other :term:`descriptors ` such " -"as :func:`property`." -msgstr "" - -msgid "" -"Compile the *source* into a code or AST object. Code objects can be " -"executed by :func:`exec` or :func:`eval`. *source* can either be a normal " -"string, a byte string, or an AST object. Refer to the :mod:`ast` module " -"documentation for information on how to work with AST objects." -msgstr "" - -msgid "" -"The *filename* argument should give the file from which the code was read; " -"pass some recognizable value if it wasn't read from a file (``''`` " -"is commonly used)." -msgstr "" - -msgid "" -"The *mode* argument specifies what kind of code must be compiled; it can be " -"``'exec'`` if *source* consists of a sequence of statements, ``'eval'`` if " -"it consists of a single expression, or ``'single'`` if it consists of a " -"single interactive statement (in the latter case, expression statements that " -"evaluate to something other than ``None`` will be printed)." -msgstr "" - -msgid "" -"The optional arguments *flags* and *dont_inherit* control which :ref:" -"`compiler options ` should be activated and which :ref:" -"`future features ` should be allowed. If neither is present (or both " -"are zero) the code is compiled with the same flags that affect the code that " -"is calling :func:`compile`. If the *flags* argument is given and " -"*dont_inherit* is not (or is zero) then the compiler options and the future " -"statements specified by the *flags* argument are used in addition to those " -"that would be used anyway. If *dont_inherit* is a non-zero integer then the " -"*flags* argument is it -- the flags (future features and compiler options) " -"in the surrounding code are ignored." -msgstr "" - -msgid "" -"Compiler options and future statements are specified by bits which can be " -"bitwise ORed together to specify multiple options. The bitfield required to " -"specify a given future feature can be found as the :attr:`~__future__." -"_Feature.compiler_flag` attribute on the :class:`~__future__._Feature` " -"instance in the :mod:`__future__` module. :ref:`Compiler flags ` can be found in :mod:`ast` module, with ``PyCF_`` prefix." -msgstr "" - -msgid "" -"The argument *optimize* specifies the optimization level of the compiler; " -"the default value of ``-1`` selects the optimization level of the " -"interpreter as given by :option:`-O` options. Explicit levels are ``0`` (no " -"optimization; ``__debug__`` is true), ``1`` (asserts are removed, " -"``__debug__`` is false) or ``2`` (docstrings are removed too)." -msgstr "" - -msgid "" -"The optional argument *module* specifies the module name. It is needed to " -"unambiguous :ref:`filter ` syntax warnings by module name." -msgstr "" - -msgid "" -"This function raises :exc:`SyntaxError` or :exc:`ValueError` if the compiled " -"source is invalid." -msgstr "" - -msgid "" -"If you want to parse Python code into its AST representation, see :func:`ast." -"parse`." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``compile`` with arguments " -"``source`` and ``filename``. This event may also be raised by implicit " -"compilation." -msgstr "" - -msgid "" -"When compiling a string with multi-line code in ``'single'`` or ``'eval'`` " -"mode, input must be terminated by at least one newline character. This is " -"to facilitate detection of incomplete and complete statements in the :mod:" -"`code` module." -msgstr "" - -msgid "" -"It is possible to crash the Python interpreter with a sufficiently large/" -"complex string when compiling to an AST object due to stack depth " -"limitations in Python's AST compiler." -msgstr "" - -msgid "" -"Allowed use of Windows and Mac newlines. Also, input in ``'exec'`` mode " -"does not have to end in a newline anymore. Added the *optimize* parameter." -msgstr "" - -msgid "" -"Previously, :exc:`TypeError` was raised when null bytes were encountered in " -"*source*." -msgstr "" - -msgid "" -"``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable " -"support for top-level ``await``, ``async for``, and ``async with``." -msgstr "" - -msgid "Added the *module* parameter." -msgstr "" - -msgid "" -"Convert a single string or number to a complex number, or create a complex " -"number from real and imaginary parts." -msgstr "" - -msgid "Examples:" -msgstr "" - -msgid "" -">>> complex('+1.23')\n" -"(1.23+0j)\n" -">>> complex('-4.5j')\n" -"-4.5j\n" -">>> complex('-1.23+4.5j')\n" -"(-1.23+4.5j)\n" -">>> complex('\\t( -1.23+4.5J )\\n')\n" -"(-1.23+4.5j)\n" -">>> complex('-Infinity+NaNj')\n" -"(-inf+nanj)\n" -">>> complex(1.23)\n" -"(1.23+0j)\n" -">>> complex(imag=-4.5)\n" -"-4.5j\n" -">>> complex(-1.23, 4.5)\n" -"(-1.23+4.5j)" -msgstr "" - -msgid "" -"If the argument is a string, it must contain either a real part (in the same " -"format as for :func:`float`) or an imaginary part (in the same format but " -"with a ``'j'`` or ``'J'`` suffix), or both real and imaginary parts (the " -"sign of the imaginary part is mandatory in this case). The string can " -"optionally be surrounded by whitespaces and the round parentheses ``'('`` " -"and ``')'``, which are ignored. The string must not contain whitespace " -"between ``'+'``, ``'-'``, the ``'j'`` or ``'J'`` suffix, and the decimal " -"number. For example, ``complex('1+2j')`` is fine, but ``complex('1 + 2j')`` " -"raises :exc:`ValueError`. More precisely, the input must conform to the :" -"token:`~float:complexvalue` production rule in the following grammar, after " -"parentheses and leading and trailing whitespace characters are removed:" -msgstr "" - -msgid "" -"If the argument is a number, the constructor serves as a numeric conversion " -"like :class:`int` and :class:`float`. For a general Python object ``x``, " -"``complex(x)`` delegates to ``x.__complex__()``. If :meth:`~object." -"__complex__` is not defined then it falls back to :meth:`~object.__float__`. " -"If :meth:`!__float__` is not defined then it falls back to :meth:`~object." -"__index__`." -msgstr "" - -msgid "" -"If two arguments are provided or keyword arguments are used, each argument " -"may be any numeric type (including complex). If both arguments are real " -"numbers, return a complex number with the real component *real* and the " -"imaginary component *imag*. If both arguments are complex numbers, return a " -"complex number with the real component ``real.real-imag.imag`` and the " -"imaginary component ``real.imag+imag.real``. If one of arguments is a real " -"number, only its real component is used in the above expressions." -msgstr "" - -msgid "" -"See also :meth:`complex.from_number` which only accepts a single numeric " -"argument." -msgstr "" - -msgid "If all arguments are omitted, returns ``0j``." -msgstr "" - -msgid "The complex type is described in :ref:`typesnumeric`." -msgstr "" - -msgid "Grouping digits with underscores as in code literals is allowed." -msgstr "" - -msgid "" -"Falls back to :meth:`~object.__index__` if :meth:`~object.__complex__` and :" -"meth:`~object.__float__` are not defined." -msgstr "" - -msgid "" -"Passing a complex number as the *real* or *imag* argument is now deprecated; " -"it should only be passed as a single positional argument." -msgstr "" - -msgid "" -"This is a relative of :func:`setattr`. The arguments are an object and a " -"string. The string must be the name of one of the object's attributes. The " -"function deletes the named attribute, provided the object allows it. For " -"example, ``delattr(x, 'foobar')`` is equivalent to ``del x.foobar``. *name* " -"need not be a Python identifier (see :func:`setattr`)." -msgstr "" - -msgid "" -"Create a new dictionary. The :class:`dict` object is the dictionary class. " -"See also :ref:`typesmapping` for documentation about this class." -msgstr "" - -msgid "" -"For other containers see the built-in :class:`frozendict`, :class:`list`, :" -"class:`set`, and :class:`tuple` classes, as well as the :mod:`collections` " -"module." -msgstr "" - -msgid "" -"Without arguments, return the list of names in the current local scope. " -"With an argument, attempt to return a list of valid attributes for that " -"object." -msgstr "" - -msgid "" -"If the object has a method named :meth:`~object.__dir__`, this method will " -"be called and must return the list of attributes. This allows objects that " -"implement a custom :func:`~object.__getattr__` or :func:`~object." -"__getattribute__` function to customize the way :func:`dir` reports their " -"attributes." -msgstr "" - -msgid "" -"If the object does not provide :meth:`~object.__dir__`, the function tries " -"its best to gather information from the object's :attr:`~object.__dict__` " -"attribute, if defined, and from its type object. The resulting list is not " -"necessarily complete and may be inaccurate when the object has a custom :" -"func:`~object.__getattr__`." -msgstr "" - -msgid "" -"The default :func:`dir` mechanism behaves differently with different types " -"of objects, as it attempts to produce the most relevant, rather than " -"complete, information:" -msgstr "" - -msgid "" -"If the object is a module object, the list contains the names of the " -"module's attributes." -msgstr "" - -msgid "" -"If the object is a type or class object, the list contains the names of its " -"attributes, and recursively of the attributes of its bases." -msgstr "" - -msgid "" -"Otherwise, the list contains the object's attributes' names, the names of " -"its class's attributes, and recursively of the attributes of its class's " -"base classes." -msgstr "" - -msgid "The resulting list is sorted alphabetically. For example:" -msgstr "" - -msgid "" -"Because :func:`dir` is supplied primarily as a convenience for use at an " -"interactive prompt, it tries to supply an interesting set of names more than " -"it tries to supply a rigorously or consistently defined set of names, and " -"its detailed behavior may change across releases. For example, metaclass " -"attributes are not in the result list when the argument is a class." -msgstr "" - -msgid "" -"Take two (non-complex) numbers as arguments and return a pair of numbers " -"consisting of their quotient and remainder when using integer division. " -"With mixed operand types, the rules for binary arithmetic operators apply. " -"For integers, the result is the same as ``(a // b, a % b)``. For floating-" -"point numbers the result is ``(q, a % b)``, where *q* is usually ``math." -"floor(a / b)`` but may be 1 less than that. In any case ``q * b + a % b`` " -"is very close to *a*, if ``a % b`` is non-zero it has the same sign as *b*, " -"and ``0 <= abs(a % b) < abs(b)``." -msgstr "" - -msgid "" -"Return an enumerate object. *iterable* must be a sequence, an :term:" -"`iterator`, or some other object which supports iteration. The :meth:" -"`~iterator.__next__` method of the iterator returned by :func:`enumerate` " -"returns a tuple containing a count (from *start* which defaults to 0) and " -"the values obtained from iterating over *iterable*." -msgstr "" - -msgid "Equivalent to::" -msgstr "" - -msgid "" -"def enumerate(iterable, start=0):\n" -" n = start\n" -" for elem in iterable:\n" -" yield n, elem\n" -" n += 1" -msgstr "" - -msgid "Parameters" -msgstr "" - -msgid "A Python expression." -msgstr "" - -msgid "The global namespace (default: ``None``)." -msgstr "" - -msgid "The local namespace (default: ``None``)." -msgstr "" - -msgid "Returns" -msgstr "" - -msgid "The result of the evaluated expression." -msgstr "" - -msgid "raises" -msgstr "" - -msgid "Syntax errors are reported as exceptions." -msgstr "" - -msgid "" -"This function executes arbitrary code. Calling it with untrusted user-" -"supplied input will lead to security vulnerabilities." -msgstr "" - -msgid "" -"The *source* argument is parsed and evaluated as a Python expression " -"(technically speaking, an :ref:`expression list `) using the " -"*globals* and *locals* mappings as global and local namespace. If the " -"*globals* dictionary is present and does not contain a value for the key " -"``__builtins__``, a reference to the dictionary of the built-in module :mod:" -"`builtins` is inserted under that key before *source* is parsed. Overriding " -"``__builtins__`` can be used to restrict or change the available names, but " -"this is **not** a security mechanism: the executed code can still access all " -"builtins. If the *locals* mapping is omitted it defaults to the *globals* " -"dictionary. If both mappings are omitted, the source is executed with the " -"*globals* and *locals* in the environment where :func:`eval` is called. " -"Note, *eval()* will only have access to the :term:`nested scopes ` (non-locals) in the enclosing environment if they are already " -"referenced in the scope that is calling :func:`eval` (e.g. via a :keyword:" -"`nonlocal` statement)." -msgstr "" - -msgid "Example:" -msgstr "" - -msgid "" -"This function can also be used to execute arbitrary code objects (such as " -"those created by :func:`compile`). In this case, pass a code object instead " -"of a string. If the code object has been compiled with ``'exec'`` as the " -"*mode* argument, :func:`eval`\\'s return value will be ``None``." -msgstr "" - -msgid "" -"Hints: dynamic execution of statements is supported by the :func:`exec` " -"function. The :func:`globals` and :func:`locals` functions return the " -"current global and local dictionary, respectively, which may be useful to " -"pass around for use by :func:`eval` or :func:`exec`." -msgstr "" - -msgid "" -"If the given source is a string, then leading and trailing spaces and tabs " -"are stripped." -msgstr "" - -msgid "" -"See :func:`ast.literal_eval` for a function to evaluate strings with " -"expressions containing only literals." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``exec`` with the code object as " -"the argument. Code compilation events may also be raised." -msgstr "" - -msgid "The *globals* and *locals* arguments can now be passed as keywords." -msgstr "" - -msgid "" -"The semantics of the default *locals* namespace have been adjusted as " -"described for the :func:`locals` builtin." -msgstr "" - -msgid "*globals* can now be a :class:`frozendict`." -msgstr "" - -msgid "" -"This function supports dynamic execution of Python code. *source* must be " -"either a string or a code object. If it is a string, the string is parsed " -"as a suite of Python statements which is then executed (unless a syntax " -"error occurs). [#]_ If it is a code object, it is simply executed. In all " -"cases, the code that's executed is expected to be valid as file input (see " -"the section :ref:`file-input` in the Reference Manual). Be aware that the :" -"keyword:`nonlocal`, :keyword:`yield`, and :keyword:`return` statements may " -"not be used outside of function definitions even within the context of code " -"passed to the :func:`exec` function. The return value is ``None``." -msgstr "" - -msgid "" -"In all cases, if the optional parts are omitted, the code is executed in the " -"current scope. If only *globals* is provided, it must be a dictionary (and " -"not a subclass of dictionary), which will be used for both the global and " -"the local variables. If *globals* and *locals* are given, they are used for " -"the global and local variables, respectively. If provided, *locals* can be " -"any mapping object. Remember that at the module level, globals and locals " -"are the same dictionary." -msgstr "" - -msgid "" -"When ``exec`` gets two separate objects as *globals* and *locals*, the code " -"will be executed as if it were embedded in a class definition. This means " -"functions and classes defined in the executed code will not be able to " -"access variables assigned at the top level (as the \"top level\" variables " -"are treated as class variables in a class definition)." -msgstr "" - -msgid "" -"If the *globals* dictionary does not contain a value for the key " -"``__builtins__``, a reference to the dictionary of the built-in module :mod:" -"`builtins` is inserted under that key. Overriding ``__builtins__`` can be " -"used to restrict or change the available names, but this is **not** a " -"security mechanism: the executed code can still access all builtins." -msgstr "" - -msgid "" -"The *closure* argument specifies a closure--a tuple of cellvars. It's only " -"valid when the *object* is a code object containing :term:`free (closure) " -"variables `. The length of the tuple must exactly match " -"the length of the code object's :attr:`~codeobject.co_freevars` attribute." -msgstr "" - -msgid "" -"The built-in functions :func:`globals` and :func:`locals` return the current " -"global and local namespace, respectively, which may be useful to pass around " -"for use as the second and third argument to :func:`exec`." -msgstr "" - -msgid "" -"The default *locals* act as described for function :func:`locals` below. " -"Pass an explicit *locals* dictionary if you need to see effects of the code " -"on *locals* after function :func:`exec` returns." -msgstr "" - -msgid "Added the *closure* parameter." -msgstr "" - -msgid "" -"Construct an iterator from those elements of *iterable* for which *function* " -"is true. *iterable* may be either a sequence, a container which supports " -"iteration, or an iterator. If *function* is ``None``, the identity function " -"is assumed, that is, all elements of *iterable* that are false are removed." -msgstr "" - -msgid "" -"Note that ``filter(function, iterable)`` is equivalent to the generator " -"expression ``(item for item in iterable if function(item))`` if function is " -"not ``None`` and ``(item for item in iterable if item)`` if function is " -"``None``." -msgstr "" - -msgid "" -"See :func:`itertools.filterfalse` for the complementary function that " -"returns elements of *iterable* for which *function* is false." -msgstr "" - -msgid "Return a floating-point number constructed from a number or a string." -msgstr "" - -msgid "" -">>> float('+1.23')\n" -"1.23\n" -">>> float(' -12345\\n')\n" -"-12345.0\n" -">>> float('1e-003')\n" -"0.001\n" -">>> float('+1E6')\n" -"1000000.0\n" -">>> float('-Infinity')\n" -"-inf" -msgstr "" - -msgid "" -"If the argument is a string, it should contain a decimal number, optionally " -"preceded by a sign, and optionally embedded in whitespace. The optional " -"sign may be ``'+'`` or ``'-'``; a ``'+'`` sign has no effect on the value " -"produced. The argument may also be a string representing a NaN (not-a-" -"number), or positive or negative infinity. More precisely, the input must " -"conform to the :token:`~float:floatvalue` production rule in the following " -"grammar, after leading and trailing whitespace characters are removed:" -msgstr "" - -msgid "" -"Case is not significant, so, for example, \"inf\", \"Inf\", \"INFINITY\", " -"and \"iNfINity\" are all acceptable spellings for positive infinity." -msgstr "" - -msgid "" -"Otherwise, if the argument is an integer or a floating-point number, a " -"floating-point number with the same value (within Python's floating-point " -"precision) is returned. If the argument is outside the range of a Python " -"float, an :exc:`OverflowError` will be raised." -msgstr "" - -msgid "" -"For a general Python object ``x``, ``float(x)`` delegates to ``x." -"__float__()``. If :meth:`~object.__float__` is not defined then it falls " -"back to :meth:`~object.__index__`." -msgstr "" - -msgid "" -"See also :meth:`float.from_number` which only accepts a numeric argument." -msgstr "" - -msgid "If no argument is given, ``0.0`` is returned." -msgstr "" - -msgid "The float type is described in :ref:`typesnumeric`." -msgstr "" - -msgid "" -"Falls back to :meth:`~object.__index__` if :meth:`~object.__float__` is not " -"defined." -msgstr "" - -msgid "" -"Convert a *value* to a \"formatted\" representation, as controlled by " -"*format_spec*. The interpretation of *format_spec* will depend on the type " -"of the *value* argument; however, there is a standard formatting syntax that " -"is used by most built-in types: :ref:`formatspec`." -msgstr "" - -msgid "" -"The default *format_spec* is an empty string which usually gives the same " -"effect as calling :func:`str(value) `." -msgstr "" - -msgid "" -"A call to ``format(value, format_spec)`` is translated to ``type(value)." -"__format__(value, format_spec)`` which bypasses the instance dictionary when " -"searching for the value's :meth:`~object.__format__` method. A :exc:" -"`TypeError` exception is raised if the method search reaches :mod:`object` " -"and the *format_spec* is non-empty, or if either the *format_spec* or the " -"return value are not strings." -msgstr "" - -msgid "" -"``object().__format__(format_spec)`` raises :exc:`TypeError` if " -"*format_spec* is not an empty string." -msgstr "" - -msgid "" -"Create a new frozen dictionary. The :class:`frozendict` object is a built-" -"in class. See also :ref:`typesmapping` for documentation about this class." -msgstr "" - -msgid "" -"For other containers see the built-in :class:`dict`, :class:`list`, :class:" -"`set`, and :class:`tuple` classes, as well as the :mod:`collections` module." -msgstr "" - -msgid "" -"Return a new :class:`frozenset` object, optionally with elements taken from " -"*iterable*. :class:`frozenset` is a built-in class. See also :ref:`types-" -"set` for documentation about this class." -msgstr "" - -msgid "" -"For other containers see the built-in :class:`set`, :class:`list`, :class:" -"`tuple`, and :class:`dict` classes, as well as the :mod:`collections` module." -msgstr "" - -msgid "" -"Return the value of the named attribute of *object*. *name* must be a " -"string. If the string is the name of one of the object's attributes, the " -"result is the value of that attribute. For example, ``getattr(x, " -"'foobar')`` is equivalent to ``x.foobar``. If the named attribute does not " -"exist, *default* is returned if provided, otherwise :exc:`AttributeError` is " -"raised. *name* need not be a Python identifier (see :func:`setattr`)." -msgstr "" - -msgid "" -"Since :ref:`private name mangling ` happens at " -"compilation time, one must manually mangle a private attribute's (attributes " -"with two leading underscores) name in order to retrieve it with :func:" -"`getattr`." -msgstr "" - -msgid "" -"Return the dictionary implementing the current module namespace. For code " -"within functions, this is set when the function is defined and remains the " -"same regardless of where the function is called." -msgstr "" - -msgid "" -"The arguments are an object and a string. The result is ``True`` if the " -"string is the name of one of the object's attributes, ``False`` if not. " -"(This is implemented by calling ``getattr(object, name)`` and seeing whether " -"it raises an :exc:`AttributeError` or not.)" -msgstr "" - -msgid "" -"Return the hash value of the object (if it has one). Hash values are " -"integers. They are used to quickly compare dictionary keys during a " -"dictionary lookup. Numeric values that compare equal have the same hash " -"value (even if they are of different types, as is the case for 1 and 1.0)." -msgstr "" - -msgid "" -"For objects with custom :meth:`~object.__hash__` methods, note that :func:" -"`hash` truncates the return value based on the bit width of the host machine." -msgstr "" - -msgid "" -"Invoke the built-in help system. (This function is intended for interactive " -"use.) If no argument is given, the interactive help system starts on the " -"interpreter console. If the argument is a string, then the string is looked " -"up as the name of a module, function, class, method, keyword, or " -"documentation topic, and a help page is printed on the console. If the " -"argument is any other kind of object, a help page on the object is generated." -msgstr "" - -msgid "" -"Note that if a slash(/) appears in the parameter list of a function when " -"invoking :func:`help`, it means that the parameters prior to the slash are " -"positional-only. For more info, see :ref:`the FAQ entry on positional-only " -"parameters `." -msgstr "" - -msgid "" -"This function is added to the built-in namespace by the :mod:`site` module." -msgstr "" - -msgid "" -"Changes to :mod:`pydoc` and :mod:`inspect` mean that the reported signatures " -"for callables are now more comprehensive and consistent." -msgstr "" - -msgid "" -"Convert an integer number to a lowercase hexadecimal string prefixed with " -"\"0x\". If *integer* is not a Python :class:`int` object, it has to define " -"an :meth:`~object.__index__` method that returns an integer. Some examples:" -msgstr "" - -msgid "" -"If you want to convert an integer number to an uppercase or lower " -"hexadecimal string with prefix or not, you can use either of the following " -"ways:" -msgstr "" - -msgid "" -"See also :func:`int` for converting a hexadecimal string to an integer using " -"a base of 16." -msgstr "" - -msgid "" -"To obtain a hexadecimal string representation for a float, use the :meth:" -"`float.hex` method." -msgstr "" - -msgid "" -"Return the \"identity\" of an object. This is an integer which is " -"guaranteed to be unique and constant for this object during its lifetime. " -"Two objects with non-overlapping lifetimes may have the same :func:`id` " -"value." -msgstr "" - -msgid "This is the address of the object in memory." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``builtins.id`` with argument " -"``id``." -msgstr "" - -msgid "" -"If the *prompt* argument is present, it is written to standard output " -"without a trailing newline. The function then reads a line from input, " -"converts it to a string (stripping a trailing newline), and returns that. " -"When EOF is read, :exc:`EOFError` is raised. Example::" -msgstr "" - -msgid "" -">>> s = input('--> ')\n" -"--> Monty Python's Flying Circus\n" -">>> s\n" -"\"Monty Python's Flying Circus\"" -msgstr "" - -msgid "" -"If the :mod:`readline` module was loaded, then :func:`input` will use it to " -"provide elaborate line editing and history features." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``builtins.input`` with argument " -"``prompt`` before reading input" -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``builtins.input/result`` with " -"the result after successfully reading input." -msgstr "" - -msgid "" -"Return an integer object constructed from a number or a string, or return " -"``0`` if no arguments are given." -msgstr "" - -msgid "" -">>> int(123.45)\n" -"123\n" -">>> int('123')\n" -"123\n" -">>> int(' -12_345\\n')\n" -"-12345\n" -">>> int('FACE', 16)\n" -"64206\n" -">>> int('0xface', 0)\n" -"64206\n" -">>> int('01110011', base=2)\n" -"115" -msgstr "" - -msgid "" -"If the argument defines :meth:`~object.__int__`, ``int(x)`` returns ``x." -"__int__()``. If the argument defines :meth:`~object.__index__`, it returns " -"``x.__index__()``. For floating-point numbers, this truncates towards zero." -msgstr "" - -msgid "" -"If the argument is not a number or if *base* is given, then it must be a " -"string, :class:`bytes`, or :class:`bytearray` instance representing an " -"integer in radix *base*. Optionally, the string can be preceded by ``+`` or " -"``-`` (with no space in between), have leading zeros, be surrounded by " -"whitespace, and have single underscores interspersed between digits." -msgstr "" - -msgid "" -"A base-n integer string contains digits, each representing a value from 0 to " -"n-1. The values 0--9 can be represented by any Unicode decimal digit. The " -"values 10--35 can be represented by ``a`` to ``z`` (or ``A`` to ``Z``). The " -"default *base* is 10. The allowed bases are 0 and 2--36. Base-2, -8, and -16 " -"strings can be optionally prefixed with ``0b``/``0B``, ``0o``/``0O``, or " -"``0x``/``0X``, as with integer literals in code. For base 0, the string is " -"interpreted in a similar way to an :ref:`integer literal in code " -"`, in that the actual base is 2, 8, 10, or 16 as determined by the " -"prefix. Base 0 also disallows leading zeros: ``int('010', 0)`` is not legal, " -"while ``int('010')`` and ``int('010', 8)`` are." -msgstr "" - -msgid "The integer type is described in :ref:`typesnumeric`." -msgstr "" - -msgid "" -"If *base* is not an instance of :class:`int` and the *base* object has a :" -"meth:`base.__index__ ` method, that method is called to " -"obtain an integer for the base. Previous versions used :meth:`base.__int__ " -"` instead of :meth:`base.__index__ `." -msgstr "" - -msgid "The first parameter is now positional-only." -msgstr "" - -msgid "" -"Falls back to :meth:`~object.__index__` if :meth:`~object.__int__` is not " -"defined." -msgstr "" - -msgid "" -":class:`int` string inputs and string representations can be limited to help " -"avoid denial of service attacks. A :exc:`ValueError` is raised when the " -"limit is exceeded while converting a string to an :class:`int` or when " -"converting an :class:`int` into a string would exceed the limit. See the :" -"ref:`integer string conversion length limitation ` " -"documentation." -msgstr "" - -msgid "" -":func:`int` no longer delegates to the :meth:`~object.__trunc__` method." -msgstr "" - -msgid "" -"Return ``True`` if the *object* argument is an instance of the *classinfo* " -"argument, or of a (direct, indirect, or :term:`virtual `) subclass thereof. If *object* is not an object of the given type, " -"the function always returns ``False``. If *classinfo* is a tuple of type " -"objects (or recursively, other such tuples) or a :ref:`types-union` of " -"multiple types, return ``True`` if *object* is an instance of any of the " -"types. If *classinfo* is not a type or tuple of types and such tuples, a :" -"exc:`TypeError` exception is raised. :exc:`TypeError` may not be raised for " -"an invalid type if an earlier check succeeds." -msgstr "" - -msgid "*classinfo* can be a :ref:`types-union`." -msgstr "" - -msgid "" -"Return ``True`` if *cls* is a subclass (direct, indirect, or :term:`virtual " -"`) of *classinfo*. A class is considered a subclass of " -"itself. *classinfo* may be a tuple of class objects (or recursively, other " -"such tuples) or a :ref:`types-union`, in which case return ``True`` if *cls* " -"is a subclass of any entry in *classinfo*. In any other case, a :exc:" -"`TypeError` exception is raised." -msgstr "" - -msgid "" -"Return an :term:`iterator` object. The first argument is interpreted very " -"differently depending on the presence of the second argument. Without a " -"second argument, the single argument must be a collection object which " -"supports the :term:`iterable` protocol (the :meth:`~object.__iter__` " -"method), or it must support the sequence protocol (the :meth:`~object." -"__getitem__` method with integer arguments starting at ``0``). If it does " -"not support either of those protocols, :exc:`TypeError` is raised. If the " -"second argument, *sentinel*, is given, then the first argument must be a " -"callable object. The iterator created in this case will call *callable* " -"with no arguments for each call to its :meth:`~iterator.__next__` method; if " -"the value returned is equal to *sentinel*, :exc:`StopIteration` will be " -"raised, otherwise the value will be returned." -msgstr "" - -msgid "See also :ref:`typeiter`." -msgstr "" - -msgid "" -"One useful application of the second form of :func:`iter` is to build a " -"block-reader. For example, reading fixed-width blocks from a binary database " -"file until the end of file is reached::" -msgstr "" - -msgid "" -"from functools import partial\n" -"with open('mydata.db', 'rb') as f:\n" -" for block in iter(partial(f.read, 64), b''):\n" -" process_block(block)" -msgstr "" - -msgid "" -"Return the length (the number of items) of an object. The argument may be a " -"sequence (such as a string, bytes, tuple, list, or range) or a collection " -"(such as a dictionary, set, or frozen set)." -msgstr "" - -msgid "" -"``len`` raises :exc:`OverflowError` on lengths larger than :data:`sys." -"maxsize`, such as :class:`range(2 ** 100) `." -msgstr "" - -msgid "" -"Rather than being a function, :class:`list` is actually a mutable sequence " -"type, as documented in :ref:`typesseq-list` and :ref:`typesseq`." -msgstr "" - -msgid "" -"Return a mapping object representing the current local symbol table, with " -"variable names as the keys, and their currently bound references as the " -"values." -msgstr "" - -msgid "" -"At module scope, as well as when using :func:`exec` or :func:`eval` with a " -"single namespace, this function returns the same namespace as :func:" -"`globals`." -msgstr "" - -msgid "" -"At class scope, it returns the namespace that will be passed to the " -"metaclass constructor." -msgstr "" - -msgid "" -"When using ``exec()`` or ``eval()`` with separate local and global " -"arguments, it returns the local namespace passed in to the function call." -msgstr "" - -msgid "" -"In all of the above cases, each call to ``locals()`` in a given frame of " -"execution will return the *same* mapping object. Changes made through the " -"mapping object returned from ``locals()`` will be visible as assigned, " -"reassigned, or deleted local variables, and assigning, reassigning, or " -"deleting local variables will immediately affect the contents of the " -"returned mapping object." -msgstr "" - -msgid "" -"In an :term:`optimized scope` (including functions, generators, and " -"coroutines), each call to ``locals()`` instead returns a fresh dictionary " -"containing the current bindings of the function's local variables and any " -"nonlocal cell references. In this case, name binding changes made via the " -"returned dict are *not* written back to the corresponding local variables or " -"nonlocal cell references, and assigning, reassigning, or deleting local " -"variables and nonlocal cell references does *not* affect the contents of " -"previously returned dictionaries." -msgstr "" - -msgid "" -"Calling ``locals()`` as part of a comprehension in a function, generator, or " -"coroutine is equivalent to calling it in the containing scope, except that " -"the comprehension's initialised iteration variables will be included. In " -"other scopes, it behaves as if the comprehension were running as a nested " -"function." -msgstr "" - -msgid "" -"Calling ``locals()`` as part of a generator expression is equivalent to " -"calling it in a nested generator function." -msgstr "" - -msgid "" -"The behaviour of ``locals()`` in a comprehension has been updated as " -"described in :pep:`709`." -msgstr "" - -msgid "" -"As part of :pep:`667`, the semantics of mutating the mapping objects " -"returned from this function are now defined. The behavior in :term:" -"`optimized scopes ` is now as described above. Aside from " -"being defined, the behaviour in other scopes remains unchanged from previous " -"versions." -msgstr "" - -msgid "" -"Return an iterator that applies *function* to every item of *iterable*, " -"yielding the results. If additional *iterables* arguments are passed, " -"*function* must take that many arguments and is applied to the items from " -"all iterables in parallel. With multiple iterables, the iterator stops when " -"the shortest iterable is exhausted. If *strict* is ``True`` and one of the " -"iterables is exhausted before the others, a :exc:`ValueError` is raised. For " -"cases where the function inputs are already arranged into argument tuples, " -"see :func:`itertools.starmap`." -msgstr "" - -msgid "Added the *strict* parameter." -msgstr "" - -msgid "" -"Return the largest item in an iterable or the largest of two or more " -"arguments." -msgstr "" - -msgid "" -"If one positional argument is provided, it should be an :term:`iterable`. " -"The largest item in the iterable is returned. If two or more positional " -"arguments are provided, the largest of the positional arguments is returned." -msgstr "" - -msgid "" -"There are two optional keyword-only arguments. The *key* argument specifies " -"a one-argument ordering function like that used for :meth:`list.sort`. The " -"*default* argument specifies an object to return if the provided iterable is " -"empty. If the iterable is empty and *default* is not provided, a :exc:" -"`ValueError` is raised." -msgstr "" - -msgid "" -"If multiple items are maximal, the function returns the first one " -"encountered. This is consistent with other sort-stability preserving tools " -"such as ``sorted(iterable, key=keyfunc, reverse=True)[0]`` and ``heapq." -"nlargest(1, iterable, key=keyfunc)``." -msgstr "" - -msgid "Added the *default* keyword-only parameter." -msgstr "" - -msgid "The *key* can be ``None``." -msgstr "" - -msgid "" -"Return a \"memory view\" object created from the given argument. See :ref:" -"`typememoryview` for more information." -msgstr "" - -msgid "" -"Return the smallest item in an iterable or the smallest of two or more " -"arguments." -msgstr "" - -msgid "" -"If one positional argument is provided, it should be an :term:`iterable`. " -"The smallest item in the iterable is returned. If two or more positional " -"arguments are provided, the smallest of the positional arguments is returned." -msgstr "" - -msgid "" -"If multiple items are minimal, the function returns the first one " -"encountered. This is consistent with other sort-stability preserving tools " -"such as ``sorted(iterable, key=keyfunc)[0]`` and ``heapq.nsmallest(1, " -"iterable, key=keyfunc)``." -msgstr "" - -msgid "" -"Retrieve the next item from the :term:`iterator` by calling its :meth:" -"`~iterator.__next__` method. If *default* is given, it is returned if the " -"iterator is exhausted, otherwise :exc:`StopIteration` is raised." -msgstr "" - -msgid "" -"This is the ultimate base class of all other classes. It has methods that " -"are common to all instances of Python classes. When the constructor is " -"called, it returns a new featureless object. The constructor does not accept " -"any arguments." -msgstr "" - -msgid "" -":class:`object` instances do *not* have :attr:`~object.__dict__` attributes, " -"so you can't assign arbitrary attributes to an instance of :class:`object`." -msgstr "" - -msgid "" -"Convert an integer number to an octal string prefixed with \"0o\". The " -"result is a valid Python expression. If *integer* is not a Python :class:" -"`int` object, it has to define an :meth:`~object.__index__` method that " -"returns an integer. For example:" -msgstr "" - -msgid "" -"If you want to convert an integer number to an octal string either with the " -"prefix \"0o\" or not, you can use either of the following ways." -msgstr "" - -msgid "" -"Open *file* and return a corresponding :term:`file object`. If the file " -"cannot be opened, an :exc:`OSError` is raised. See :ref:`tut-files` for more " -"examples of how to use this function." -msgstr "" - -msgid "" -"*file* is a :term:`path-like object` giving the pathname (absolute or " -"relative to the current working directory) of the file to be opened or an " -"integer file descriptor of the file to be wrapped. (If a file descriptor is " -"given, it is closed when the returned I/O object is closed unless *closefd* " -"is set to ``False``.)" -msgstr "" - -msgid "" -"*mode* is an optional string that specifies the mode in which the file is " -"opened. It defaults to ``'r'`` which means open for reading in text mode. " -"Other common values are ``'w'`` for writing (truncating the file if it " -"already exists), ``'x'`` for exclusive creation, and ``'a'`` for appending " -"(which on *some* Unix systems, means that *all* writes append to the end of " -"the file regardless of the current seek position). In text mode, if " -"*encoding* is not specified the encoding used is platform-dependent: :func:" -"`locale.getencoding` is called to get the current locale encoding. (For " -"reading and writing raw bytes use binary mode and leave *encoding* " -"unspecified.) The available modes are:" -msgstr "" - -msgid "Character" -msgstr "" - -msgid "Meaning" -msgstr "" - -msgid "``'r'``" -msgstr "" - -msgid "open for reading (default)" -msgstr "" - -msgid "``'w'``" -msgstr "" - -msgid "open for writing, truncating the file first" -msgstr "" - -msgid "``'x'``" -msgstr "" - -msgid "open for exclusive creation, failing if the file already exists" -msgstr "" - -msgid "``'a'``" -msgstr "" - -msgid "open for writing, appending to the end of file if it exists" -msgstr "" - -msgid "``'b'``" -msgstr "" - -msgid "binary mode" -msgstr "" - -msgid "``'t'``" -msgstr "" - -msgid "text mode (default)" -msgstr "" - -msgid "``'+'``" -msgstr "" - -msgid "open for updating (reading and writing)" -msgstr "" - -msgid "" -"The default mode is ``'r'`` (open for reading text, a synonym of ``'rt'``). " -"Modes ``'w+'`` and ``'w+b'`` open and truncate the file. Modes ``'r+'`` and " -"``'r+b'`` open the file with no truncation." -msgstr "" - -msgid "" -"As mentioned in the :ref:`io-overview`, Python distinguishes between binary " -"and text I/O. Files opened in binary mode (including ``'b'`` in the *mode* " -"argument) return contents as :class:`bytes` objects without any decoding. " -"In text mode (the default, or when ``'t'`` is included in the *mode* " -"argument), the contents of the file are returned as :class:`str`, the bytes " -"having been first decoded using a platform-dependent encoding or using the " -"specified *encoding* if given." -msgstr "" - -msgid "" -"Python doesn't depend on the underlying operating system's notion of text " -"files; all the processing is done by Python itself, and is therefore " -"platform-independent." -msgstr "" - -msgid "" -"*buffering* is an optional integer used to set the buffering policy. Pass 0 " -"to switch buffering off (only allowed in binary mode), 1 to select line " -"buffering (only usable when writing in text mode), and an integer > 1 to " -"indicate the size in bytes of a fixed-size chunk buffer. Note that " -"specifying a buffer size this way applies for binary buffered I/O, but " -"``TextIOWrapper`` (i.e., files opened with ``mode='r+'``) would have another " -"buffering. To disable buffering in ``TextIOWrapper``, consider using the " -"``write_through`` flag for :func:`io.TextIOWrapper.reconfigure`. When no " -"*buffering* argument is given, the default buffering policy works as follows:" -msgstr "" - -msgid "" -"Binary files are buffered in fixed-size chunks; the size of the buffer is " -"``max(min(blocksize, 8 MiB), DEFAULT_BUFFER_SIZE)`` when the device block " -"size is available. On most systems, the buffer will typically be 128 " -"kilobytes long." -msgstr "" - -msgid "" -"\"Interactive\" text files (files for which :meth:`~io.IOBase.isatty` " -"returns ``True``) use line buffering. Other text files use the policy " -"described above for binary files." -msgstr "" - -msgid "" -"*encoding* is the name of the encoding used to decode or encode the file. " -"This should only be used in text mode. The default encoding is platform " -"dependent (whatever :func:`locale.getencoding` returns), but any :term:`text " -"encoding` supported by Python can be used. See the :mod:`codecs` module for " -"the list of supported encodings." -msgstr "" - -msgid "" -"*errors* is an optional string that specifies how encoding and decoding " -"errors are to be handled—this cannot be used in binary mode. A variety of " -"standard error handlers are available, though any error handling name that " -"has been registered with :func:`codecs.register_error` is also valid. The " -"standard names can be found in :ref:`error-handlers`." -msgstr "" - -msgid "" -"*newline* determines how to parse newline characters from the stream. It can " -"be ``None``, ``''``, ``'\\n'``, ``'\\r'``, and ``'\\r\\n'``. It works as " -"follows:" -msgstr "" - -msgid "" -"When reading input from the stream, if *newline* is ``None``, universal " -"newlines mode is enabled. Lines in the input can end in ``'\\n'``, " -"``'\\r'``, or ``'\\r\\n'``, and these are translated into ``'\\n'`` before " -"being returned to the caller. If it is ``''``, universal newlines mode is " -"enabled, but line endings are returned to the caller untranslated. If it " -"has any of the other legal values, input lines are only terminated by the " -"given string, and the line ending is returned to the caller untranslated." -msgstr "" - -msgid "" -"When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " -"characters written are translated to the system default line separator, :" -"data:`os.linesep`. If *newline* is ``''`` or ``'\\n'``, no translation " -"takes place. If *newline* is any of the other legal values, any ``'\\n'`` " -"characters written are translated to the given string." -msgstr "" - -msgid "" -"If *closefd* is ``False`` and a file descriptor rather than a filename was " -"given, the underlying file descriptor will be kept open when the file is " -"closed. If a filename is given *closefd* must be ``True`` (the default); " -"otherwise, an error will be raised." -msgstr "" - -msgid "" -"A custom opener can be used by passing a callable as *opener*. The " -"underlying file descriptor for the file object is then obtained by calling " -"*opener* with (*file*, *flags*). *opener* must return an open file " -"descriptor (passing :mod:`os.open` as *opener* results in functionality " -"similar to passing ``None``)." -msgstr "" - -msgid "The newly created file is :ref:`non-inheritable `." -msgstr "" - -msgid "" -"The following example uses the :ref:`dir_fd ` parameter of the :func:" -"`os.open` function to open a file relative to a given directory::" -msgstr "" - -msgid "" -">>> import os\n" -">>> dir_fd = os.open('somedir', os.O_RDONLY)\n" -">>> def opener(path, flags):\n" -"... return os.open(path, flags, dir_fd=dir_fd)\n" -"...\n" -">>> with open('spamspam.txt', 'w', opener=opener) as f:\n" -"... print('This will be written to somedir/spamspam.txt', file=f)\n" -"...\n" -">>> os.close(dir_fd) # don't leak a file descriptor" -msgstr "" - -msgid "" -"The type of :term:`file object` returned by the :func:`open` function " -"depends on the mode. When :func:`open` is used to open a file in a text " -"mode (``'w'``, ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a subclass of :" -"class:`io.TextIOBase` (specifically :class:`io.TextIOWrapper`). When used " -"to open a file in a binary mode with buffering, the returned class is a " -"subclass of :class:`io.BufferedIOBase`. The exact class varies: in read " -"binary mode, it returns an :class:`io.BufferedReader`; in write binary and " -"append binary modes, it returns an :class:`io.BufferedWriter`, and in read/" -"write mode, it returns an :class:`io.BufferedRandom`. When buffering is " -"disabled, the raw stream, a subclass of :class:`io.RawIOBase`, :class:`io." -"FileIO`, is returned." -msgstr "" - -msgid "" -"See also the file handling modules, such as :mod:`fileinput`, :mod:`io` " -"(where :func:`open` is declared), :mod:`os`, :mod:`os.path`, :mod:" -"`tempfile`, and :mod:`shutil`." -msgstr "" - -msgid "" -"Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " -"``mode``, ``flags``." -msgstr "" - -msgid "" -"The ``mode`` and ``flags`` arguments may have been modified or inferred from " -"the original call." -msgstr "" - -msgid "The *opener* parameter was added." -msgstr "" - -msgid "The ``'x'`` mode was added." -msgstr "" - -msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." -msgstr "" - -msgid "" -":exc:`FileExistsError` is now raised if the file opened in exclusive " -"creation mode (``'x'``) already exists." -msgstr "" - -msgid "The file is now non-inheritable." -msgstr "" - -msgid "" -"If the system call is interrupted and the signal handler does not raise an " -"exception, the function now retries the system call instead of raising an :" -"exc:`InterruptedError` exception (see :pep:`475` for the rationale)." -msgstr "" - -msgid "The ``'namereplace'`` error handler was added." -msgstr "" - -msgid "Support added to accept objects implementing :class:`os.PathLike`." -msgstr "" - -msgid "" -"On Windows, opening a console buffer may return a subclass of :class:`io." -"RawIOBase` other than :class:`io.FileIO`." -msgstr "" - -msgid "The ``'U'`` mode has been removed." -msgstr "" - -msgid "Return the ordinal value of a character." -msgstr "" - -msgid "" -"If the argument is a one-character string, return the Unicode code point of " -"that character. For example, ``ord('a')`` returns the integer ``97`` and " -"``ord('€')`` (Euro sign) returns ``8364``. This is the inverse of :func:" -"`chr`." -msgstr "" - -msgid "" -"If the argument is a :class:`bytes` or :class:`bytearray` object of length " -"1, return its single byte value. For example, ``ord(b'a')`` returns the " -"integer ``97``." -msgstr "" - -msgid "" -"Return *base* to the power *exp*; if *mod* is present, return *base* to the " -"power *exp*, modulo *mod* (computed more efficiently than ``pow(base, exp) % " -"mod``). The two-argument form ``pow(base, exp)`` is equivalent to using the " -"power operator: ``base**exp``." -msgstr "" - -msgid "" -"When arguments are builtin numeric types with mixed operand types, the " -"coercion rules for binary arithmetic operators apply. For :class:`int` " -"operands, the result has the same type as the operands (after coercion) " -"unless the second argument is negative; in that case, all arguments are " -"converted to float and a float result is delivered. For example, ``pow(10, " -"2)`` returns ``100``, but ``pow(10, -2)`` returns ``0.01``. For a negative " -"base of type :class:`int` or :class:`float` and a non-integral exponent, a " -"complex result is delivered. For example, ``pow(-9, 0.5)`` returns a value " -"close to ``3j``. Whereas, for a negative base of type :class:`int` or :class:" -"`float` with an integral exponent, a float result is delivered. For example, " -"``pow(-9, 2.0)`` returns ``81.0``." -msgstr "" - -msgid "" -"For :class:`int` operands *base* and *exp*, if *mod* is present, *mod* must " -"also be of integer type and *mod* must be nonzero. If *mod* is present and " -"*exp* is negative, *base* must be relatively prime to *mod*. In that case, " -"``pow(inv_base, -exp, mod)`` is returned, where *inv_base* is an inverse to " -"*base* modulo *mod*." -msgstr "" - -msgid "Here's an example of computing an inverse for ``38`` modulo ``97``::" -msgstr "" - -msgid "" -">>> pow(38, -1, mod=97)\n" -"23\n" -">>> 23 * 38 % 97 == 1\n" -"True" -msgstr "" - -msgid "" -"For :class:`int` operands, the three-argument form of ``pow`` now allows the " -"second argument to be negative, permitting computation of modular inverses." -msgstr "" - -msgid "" -"Allow keyword arguments. Formerly, only positional arguments were supported." -msgstr "" - -msgid "" -"Print *objects* to the text stream *file*, separated by *sep* and followed " -"by *end*. *sep*, *end*, *file*, and *flush*, if present, must be given as " -"keyword arguments." -msgstr "" - -msgid "" -"All non-keyword arguments are converted to strings like :func:`str` does and " -"written to the stream, separated by *sep* and followed by *end*. Both *sep* " -"and *end* must be strings; they can also be ``None``, which means to use the " -"default values. If no *objects* are given, :func:`print` will just write " -"*end*." -msgstr "" - -msgid "" -"The *file* argument must be an object with a ``write(string)`` method; if it " -"is not present or ``None``, :data:`sys.stdout` will be used. Since printed " -"arguments are converted to text strings, :func:`print` cannot be used with " -"binary mode file objects. For these, use ``file.write(...)`` instead." -msgstr "" - -msgid "" -"Output buffering is usually determined by *file*. However, if *flush* is " -"true, the stream is forcibly flushed." -msgstr "" - -msgid "Added the *flush* keyword argument." -msgstr "" - -msgid "Return a property attribute." -msgstr "" - -msgid "" -"*fget* is a function for getting an attribute value. *fset* is a function " -"for setting an attribute value. *fdel* is a function for deleting an " -"attribute value. And *doc* creates a docstring for the attribute." -msgstr "" - -msgid "A typical use is to define a managed attribute ``x``::" -msgstr "" - -msgid "" -"class C:\n" -" def __init__(self):\n" -" self._x = None\n" -"\n" -" def getx(self):\n" -" return self._x\n" -"\n" -" def setx(self, value):\n" -" self._x = value\n" -"\n" -" def delx(self):\n" -" del self._x\n" -"\n" -" x = property(getx, setx, delx, \"I'm the 'x' property.\")" -msgstr "" - -msgid "" -"If *c* is an instance of *C*, ``c.x`` will invoke the getter, ``c.x = " -"value`` will invoke the setter, and ``del c.x`` the deleter." -msgstr "" - -msgid "" -"If given, *doc* will be the docstring of the property attribute. Otherwise, " -"the property will copy *fget*'s docstring (if it exists). This makes it " -"possible to create read-only properties easily using :deco:`property` as a :" -"term:`decorator`::" -msgstr "" - -msgid "" -"class Parrot:\n" -" def __init__(self):\n" -" self._voltage = 100000\n" -"\n" -" @property\n" -" def voltage(self):\n" -" \"\"\"Get the current voltage.\"\"\"\n" -" return self._voltage" -msgstr "" - -msgid "" -"The ``@property`` decorator turns the :meth:`!voltage` method into a " -"\"getter\" for a read-only attribute with the same name, and it sets the " -"docstring for *voltage* to \"Get the current voltage.\"" -msgstr "" - -msgid "" -"A property object has ``getter``, ``setter``, and ``deleter`` methods usable " -"as decorators that create a copy of the property with the corresponding " -"accessor function set to the decorated function. This is best explained " -"with an example:" -msgstr "" - -msgid "" -"class C:\n" -" def __init__(self):\n" -" self._x = None\n" -"\n" -" @property\n" -" def x(self):\n" -" \"\"\"I'm the 'x' property.\"\"\"\n" -" return self._x\n" -"\n" -" @x.setter\n" -" def x(self, value):\n" -" self._x = value\n" -"\n" -" @x.deleter\n" -" def x(self):\n" -" del self._x" -msgstr "" - -msgid "" -"This code is exactly equivalent to the first example. Be sure to give the " -"additional functions the same name as the original property (``x`` in this " -"case.)" -msgstr "" - -msgid "" -"The returned property object also has the attributes ``fget``, ``fset``, and " -"``fdel`` corresponding to the constructor arguments." -msgstr "" - -msgid "The docstrings of property objects are now writeable." -msgstr "" - -msgid "" -"Attribute holding the name of the property. The name of the property can be " -"changed at runtime." -msgstr "" - -msgid "" -"Rather than being a function, :class:`range` is actually an immutable " -"sequence type, as documented in :ref:`typesseq-range` and :ref:`typesseq`." -msgstr "" - -msgid "" -"Return a string containing a printable representation of an object. For " -"many types, this function makes an attempt to return a string that would " -"yield an object with the same value when passed to :func:`eval`; otherwise, " -"the representation is a string enclosed in angle brackets that contains the " -"name of the type of the object together with additional information often " -"including the name and address of the object. A class can control what this " -"function returns for its instances by defining a :meth:`~object.__repr__` " -"method. If :func:`sys.displayhook` is not accessible, this function will " -"raise :exc:`RuntimeError`." -msgstr "" - -msgid "This class has a custom representation that can be evaluated::" -msgstr "" - -msgid "" -"class Person:\n" -" def __init__(self, name, age):\n" -" self.name = name\n" -" self.age = age\n" -"\n" -" def __repr__(self):\n" -" return f\"Person({self.name!r}, {self.age!r})\"" -msgstr "" - -msgid "" -"Return a reverse :term:`iterator`. The argument must be an object which has " -"a :meth:`~object.__reversed__` method or supports the sequence protocol " -"(the :meth:`~object.__len__` method and the :meth:`~object.__getitem__` " -"method with integer arguments starting at ``0``)." -msgstr "" - -msgid "" -"Return *number* rounded to *ndigits* precision after the decimal point. If " -"*ndigits* is omitted or is ``None``, it returns the nearest integer to its " -"input." -msgstr "" - -msgid "" -"For the built-in types supporting :func:`round`, values are rounded to the " -"closest multiple of 10 to the power minus *ndigits*; if two multiples are " -"equally close, rounding is done toward the even choice (so, for example, " -"both ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is " -"``2``). Any integer value is valid for *ndigits* (positive, zero, or " -"negative). The return value is an integer if *ndigits* is omitted or " -"``None``. Otherwise, the return value has the same type as *number*." -msgstr "" - -msgid "" -"For a general Python object ``number``, ``round`` delegates to ``number." -"__round__``." -msgstr "" - -msgid "" -"The behavior of :func:`round` for floats can be surprising: for example, " -"``round(2.675, 2)`` gives ``2.67`` instead of the expected ``2.68``. This is " -"not a bug: it's a result of the fact that most decimal fractions can't be " -"represented exactly as a float. See :ref:`tut-fp-issues` for more " -"information." -msgstr "" - -msgid "" -"Return a new :class:`set` object, optionally with elements taken from " -"*iterable*. :class:`set` is a built-in class. See also :ref:`types-set` " -"for documentation about this class." -msgstr "" - -msgid "" -"For other containers see the built-in :class:`frozenset`, :class:`list`, :" -"class:`tuple`, and :class:`dict` classes, as well as the :mod:`collections` " -"module." -msgstr "" - -msgid "" -"This is the counterpart of :func:`getattr`. The arguments are an object, a " -"string, and an arbitrary value. The string may name an existing attribute " -"or a new attribute. The function assigns the value to the attribute, " -"provided the object allows it. For example, ``setattr(x, 'foobar', 123)`` " -"is equivalent to ``x.foobar = 123``." -msgstr "" - -msgid "" -"*name* need not be a Python identifier as defined in :ref:`identifiers` " -"unless the object chooses to enforce that, for example in a custom :meth:" -"`~object.__getattribute__` or via :attr:`~object.__slots__`. An attribute " -"whose name is not an identifier will not be accessible using the dot " -"notation, but is accessible through :func:`getattr` etc.." -msgstr "" - -msgid "" -"Since :ref:`private name mangling ` happens at " -"compilation time, one must manually mangle a private attribute's (attributes " -"with two leading underscores) name in order to set it with :func:`setattr`." -msgstr "" - -msgid "" -"Return a new unique sentinel object. *name* must be a :class:`str`, and is " -"used by default as the returned object's representation::" -msgstr "" - -msgid "" -">>> MISSING = sentinel(\"MISSING\")\n" -">>> MISSING\n" -"MISSING" -msgstr "" - -msgid "" -"The optional *repr* argument can be used to specify a different " -"representation::" -msgstr "" - -msgid "" -">>> MISSING = sentinel(\"MISSING\", repr=\"\")\n" -">>> MISSING\n" -"" -msgstr "" - -msgid "" -"Sentinel objects are truthy and compare equal only to themselves. They are " -"intended to be compared with the :keyword:`is` operator." -msgstr "" - -msgid "``sentinel`` does not support subclassing." -msgstr "" - -msgid "Shallow and deep copies of a sentinel object return the object itself." -msgstr "" - -msgid "" -"Sentinels are conventionally assigned to a variable with a matching name. " -"Sentinels defined in this way can be used in :term:`type hints `::" -msgstr "" - -msgid "" -"MISSING = sentinel(\"MISSING\")\n" -"\n" -"def next_value(default: int | MISSING = MISSING):\n" -" ..." -msgstr "" - -msgid "" -"Sentinel objects support the :ref:`| ` operator for use in type " -"expressions." -msgstr "" - -msgid "" -":mod:`Pickling ` is supported for sentinel objects that are placed " -"in the global scope of a module under a name matching the sentinel's name, " -"and for sentinels placed in class scopes with a name matching the :term:" -"`qualified name` of the sentinel. Other sentinels, such as those defined in " -"a function scope, are not picklable. The identity of the sentinel is " -"preserved after pickling::" -msgstr "" - -msgid "" -"import pickle\n" -"\n" -"PICKLABLE = sentinel(\"PICKLABLE\")\n" -"\n" -"assert pickle.loads(pickle.dumps(PICKLABLE)) is PICKLABLE\n" -"\n" -"class Cls:\n" -" PICKLABLE = sentinel(\"Cls.PICKLABLE\")\n" -"\n" -"assert pickle.loads(pickle.dumps(Cls.PICKLABLE)) is Cls.PICKLABLE" -msgstr "" - -msgid "Sentinel objects have the following attributes:" -msgstr "" - -msgid "The sentinel's name." -msgstr "" - -msgid "" -"The name of the module where the sentinel was created. This attribute is " -"writable." -msgstr "" - -msgid "" -"Return a :term:`slice` object representing the set of indices specified by " -"``range(start, stop, step)``. The *start* and *step* arguments default to " -"``None``." -msgstr "" - -msgid "" -"Slice objects are also generated when :ref:`slicing syntax ` is " -"used. For example: ``a[start:stop:step]`` or ``a[start:stop, i]``." -msgstr "" - -msgid "" -"See :func:`itertools.islice` for an alternate version that returns an :term:" -"`iterator`." -msgstr "" - -msgid "" -"These read-only attributes are set to the argument values (or their " -"default). They have no other explicit functionality; however, they are used " -"by NumPy and other third-party packages." -msgstr "" - -msgid "" -"Slice objects are now :term:`hashable` (provided :attr:`~slice.start`, :attr:" -"`~slice.stop`, and :attr:`~slice.step` are hashable)." -msgstr "" - -msgid "Return a new sorted list from the items in *iterable*." -msgstr "" - -msgid "" -"Has two optional arguments which must be specified as keyword arguments." -msgstr "" - -msgid "" -"*key* specifies a function of one argument that is used to extract a " -"comparison key from each element in *iterable* (for example, ``key=str." -"lower``). The default value is ``None`` (compare the elements directly)." -msgstr "" - -msgid "" -"*reverse* is a boolean value. If set to ``True``, then the list elements " -"are sorted as if each comparison were reversed." -msgstr "" - -msgid "" -"Use :func:`functools.cmp_to_key` to convert an old-style *cmp* function to a " -"*key* function." -msgstr "" - -msgid "" -"The built-in :func:`sorted` function is guaranteed to be stable. A sort is " -"stable if it guarantees not to change the relative order of elements that " -"compare equal --- this is helpful for sorting in multiple passes (for " -"example, sort by department, then by salary grade)." -msgstr "" - -msgid "" -"The sort algorithm uses only ``<`` comparisons between items. While " -"defining an :meth:`~object.__lt__` method will suffice for sorting, :PEP:`8` " -"recommends that all six :ref:`rich comparisons ` be " -"implemented. This will help avoid bugs when using the same data with other " -"ordering tools such as :func:`max` that rely on a different underlying " -"method. Implementing all six comparisons also helps avoid confusion for " -"mixed type comparisons which can call the reflected :meth:`~object.__gt__` " -"method." -msgstr "" - -msgid "" -"For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." -msgstr "" - -msgid "Transform a method into a static method." -msgstr "" - -msgid "" -"A static method does not receive an implicit first argument. To declare a " -"static method, use this idiom::" -msgstr "" - -msgid "" -"class C:\n" -" @staticmethod\n" -" def f(arg1, arg2, argN): ..." -msgstr "" - -msgid "" -"The ``@staticmethod`` form is a function :term:`decorator` -- see :ref:" -"`function` for details." -msgstr "" - -msgid "" -"A static method can be called either on the class (such as ``C.f()``) or on " -"an instance (such as ``C().f()``). Moreover, the static method :term:" -"`descriptor` is also callable, so it can be used in the class definition " -"(such as ``f()``)." -msgstr "" - -msgid "" -"Static methods in Python are similar to those found in Java or C++. Also, " -"see :deco:`classmethod` for a variant that is useful for creating alternate " -"class constructors." -msgstr "" - -msgid "" -"Like all decorators, it is also possible to call ``staticmethod`` as a " -"regular function and do something with its result. This is needed in some " -"cases where you need a reference to a function from a class body and you " -"want to avoid the automatic transformation to instance method. For these " -"cases, use this idiom::" -msgstr "" - -msgid "" -"def regular_function():\n" -" ...\n" -"\n" -"class C:\n" -" method = staticmethod(regular_function)" -msgstr "" - -msgid "For more information on static methods, see :ref:`types`." -msgstr "" - -msgid "" -"Static methods now inherit the method attributes (:attr:`~function." -"__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :" -"attr:`~function.__doc__` and :attr:`~function.__annotations__`), have a new " -"``__wrapped__`` attribute, and are now callable as regular functions." -msgstr "" - -msgid "" -"Return a :class:`str` version of *object*. See :func:`str` for details." -msgstr "" - -msgid "" -"``str`` is the built-in string :term:`class`. For general information about " -"strings, see :ref:`textseq`." -msgstr "" - -msgid "" -"Sums *start* and the items of an *iterable* from left to right and returns " -"the total. The *iterable*'s items are normally numbers, and the start value " -"is not allowed to be a string." -msgstr "" - -msgid "" -"For some use cases, there are good alternatives to :func:`sum`. The " -"preferred, fast way to concatenate a sequence of strings is by calling ``''." -"join(sequence)``. To add floating-point values with extended precision, " -"see :func:`math.fsum`\\. To concatenate a series of iterables, consider " -"using :func:`itertools.chain`." -msgstr "" - -msgid "The *start* parameter can be specified as a keyword argument." -msgstr "" - -msgid "" -"Summation of floats switched to an algorithm that gives higher accuracy and " -"better commutativity on most builds." -msgstr "" - -msgid "" -"Added specialization for summation of complexes, using same algorithm as for " -"summation of floats." -msgstr "" - -msgid "" -"Return a proxy object that delegates method calls to a parent or sibling " -"class of *type*. This is useful for accessing inherited methods that have " -"been overridden in a class." -msgstr "" - -msgid "" -"The *object_or_type* determines the :term:`method resolution order` to be " -"searched. The search starts from the class right after the *type*." -msgstr "" - -msgid "" -"For example, if :attr:`~type.__mro__` of *object_or_type* is ``D -> B -> C -" -"> A -> object`` and the value of *type* is ``B``, then :func:`super` " -"searches ``C -> A -> object``." -msgstr "" - -msgid "" -"The :attr:`~type.__mro__` attribute of the class corresponding to " -"*object_or_type* lists the method resolution search order used by both :func:" -"`getattr` and :func:`super`. The attribute is dynamic and can change " -"whenever the inheritance hierarchy is updated." -msgstr "" - -msgid "" -"If the second argument is omitted, the super object returned is unbound. If " -"the second argument is an object, ``isinstance(obj, type)`` must be true. " -"If the second argument is a type, ``issubclass(type2, type)`` must be true " -"(this is useful for classmethods)." -msgstr "" - -msgid "" -"When called directly within an ordinary method of a class, both arguments " -"may be omitted (\"zero-argument :func:`!super`\"). In this case, *type* will " -"be the enclosing class, and *obj* will be the first argument of the " -"immediately enclosing function (typically ``self``). (This means that zero-" -"argument :func:`!super` will not work as expected within nested functions, " -"including generator expressions, which implicitly create nested functions.)" -msgstr "" - -msgid "" -"There are two typical use cases for *super*. In a class hierarchy with " -"single inheritance, *super* can be used to refer to parent classes without " -"naming them explicitly, thus making the code more maintainable. This use " -"closely parallels the use of *super* in other programming languages." -msgstr "" - -msgid "" -"The second use case is to support cooperative multiple inheritance in a " -"dynamic execution environment. This use case is unique to Python and is not " -"found in statically compiled languages or languages that only support single " -"inheritance. This makes it possible to implement \"diamond diagrams\" where " -"multiple base classes implement the same method. Good design dictates that " -"such implementations have the same calling signature in every case (because " -"the order of calls is determined at runtime, because that order adapts to " -"changes in the class hierarchy, and because that order can include sibling " -"classes that are unknown prior to runtime)." -msgstr "" - -msgid "For both use cases, a typical superclass call looks like this::" -msgstr "" - -msgid "" -"class C(B):\n" -" def method(self, arg):\n" -" super().method(arg) # This does the same thing as:\n" -" # super(C, self).method(arg)" -msgstr "" - -msgid "" -"In addition to method lookups, :func:`super` also works for attribute " -"lookups. One possible use case for this is calling :term:`descriptors " -"` in a parent or sibling class." -msgstr "" - -msgid "" -"Note that :func:`super` is implemented as part of the binding process for " -"explicit dotted attribute lookups such as ``super().__getitem__(name)``. It " -"does so by implementing its own :meth:`~object.__getattribute__` method for " -"searching classes in a predictable order that supports cooperative multiple " -"inheritance. Accordingly, :func:`super` is undefined for implicit lookups " -"using statements or operators such as ``super()[name]``." -msgstr "" - -msgid "" -"Also note that, aside from the zero argument form, :func:`super` is not " -"limited to use inside methods. The two argument form specifies the " -"arguments exactly and makes the appropriate references. The zero argument " -"form only works inside a class definition, as the compiler fills in the " -"necessary details to correctly retrieve the class being defined, as well as " -"accessing the current instance for ordinary methods." -msgstr "" - -msgid "" -"For practical suggestions on how to design cooperative classes using :func:" -"`super`, see `guide to using super() `_." -msgstr "" - -msgid "" -":class:`super` objects are now :mod:`pickleable ` and :mod:" -"`copyable `." -msgstr "" - -msgid "" -"Rather than being a function, :class:`tuple` is actually an immutable " -"sequence type, as documented in :ref:`typesseq-tuple` and :ref:`typesseq`." -msgstr "" - -msgid "" -"With one argument, return the type of an *object*. The return value is a " -"type object and generally the same object as returned by :attr:`object." -"__class__`." -msgstr "" - -msgid "" -"The :func:`isinstance` built-in function is recommended for testing the type " -"of an object, because it takes subclasses into account." -msgstr "" - -msgid "" -"With three arguments, return a new type object. This is essentially a " -"dynamic form of the :keyword:`class` statement. The *name* string is the " -"class name and becomes the :attr:`~type.__name__` attribute. The *bases* " -"tuple contains the base classes and becomes the :attr:`~type.__bases__` " -"attribute; if empty, :class:`object`, the ultimate base of all classes, is " -"added. The *dict* dictionary contains attribute and method definitions for " -"the class body; it may be copied or wrapped before becoming the :attr:`~type." -"__dict__` attribute. The following two statements create identical :class:`!" -"type` objects:" -msgstr "" - -msgid "See also:" -msgstr "" - -msgid "" -":ref:`Documentation on attributes and methods on classes `." -msgstr "" - -msgid ":ref:`bltin-type-objects`" -msgstr "" - -msgid "" -"Keyword arguments provided to the three argument form are passed to the " -"appropriate metaclass machinery (usually :meth:`~object.__init_subclass__`) " -"in the same way that keywords in a class definition (besides *metaclass*) " -"would." -msgstr "" - -msgid "" -"Unlike a :keyword:`class` statement, the three argument form does not call " -"the metaclass ``__prepare__`` method (see :ref:`prepare`). Use :func:`types." -"new_class` to dynamically create a class using the appropriate metaclass." -msgstr "" - -msgid "See also :ref:`class-customization`." -msgstr "" - -msgid "" -"Subclasses of :class:`!type` which don't override ``type.__new__`` may no " -"longer use the one-argument form to get the type of an object." -msgstr "" - -msgid "*dict* can now be a :class:`frozendict`." -msgstr "" - -msgid "" -"Return the :attr:`~object.__dict__` attribute for a module, class, instance, " -"or any other object with a :attr:`!__dict__` attribute." -msgstr "" - -msgid "" -"Objects such as modules and instances have an updateable :attr:`~object." -"__dict__` attribute; however, other objects may have write restrictions on " -"their :attr:`!__dict__` attributes (for example, classes use a :class:`types." -"MappingProxyType` to prevent direct dictionary updates)." -msgstr "" - -msgid "Without an argument, :func:`vars` acts like :func:`locals`." -msgstr "" - -msgid "" -"A :exc:`TypeError` exception is raised if an object is specified but it " -"doesn't have a :attr:`~object.__dict__` attribute (for example, if its class " -"defines the :attr:`~object.__slots__` attribute)." -msgstr "" - -msgid "" -"The result of calling this function without an argument has been updated as " -"described for the :func:`locals` builtin." -msgstr "" - -msgid "" -"Iterate over several iterables in parallel, producing tuples with an item " -"from each one." -msgstr "" - -msgid "Example::" -msgstr "" - -msgid "" -">>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):\n" -"... print(item)\n" -"...\n" -"(1, 'sugar')\n" -"(2, 'spice')\n" -"(3, 'everything nice')" -msgstr "" - -msgid "" -"More formally: :func:`zip` returns an iterator of tuples, where the *i*-th " -"tuple contains the *i*-th element from each of the argument iterables." -msgstr "" - -msgid "" -"Another way to think of :func:`zip` is that it turns rows into columns, and " -"columns into rows. This is similar to `transposing a matrix `_." -msgstr "" - -msgid "" -":func:`zip` is lazy: The elements won't be processed until the iterable is " -"iterated on, e.g. by a :keyword:`!for` loop or by wrapping in a :class:" -"`list`." -msgstr "" - -msgid "" -"One thing to consider is that the iterables passed to :func:`zip` could have " -"different lengths; sometimes by design, and sometimes because of a bug in " -"the code that prepared these iterables. Python offers three different " -"approaches to dealing with this issue:" -msgstr "" - -msgid "" -"By default, :func:`zip` stops when the shortest iterable is exhausted. It " -"will ignore the remaining items in the longer iterables, cutting off the " -"result to the length of the shortest iterable::" -msgstr "" - -msgid "" -">>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum']))\n" -"[(0, 'fee'), (1, 'fi'), (2, 'fo')]" -msgstr "" - -msgid "" -":func:`zip` is often used in cases where the iterables are assumed to be of " -"equal length. In such cases, it's recommended to use the ``strict=True`` " -"option. Its output is the same as regular :func:`zip`::" -msgstr "" - -msgid "" -">>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))\n" -"[('a', 1), ('b', 2), ('c', 3)]" -msgstr "" - -msgid "" -"Unlike the default behavior, it raises a :exc:`ValueError` if one iterable " -"is exhausted before the others:" -msgstr "" - -msgid "" -"Without the ``strict=True`` argument, any bug that results in iterables of " -"different lengths will be silenced, possibly manifesting as a hard-to-find " -"bug in another part of the program." -msgstr "" - -msgid "" -"Shorter iterables can be padded with a constant value to make all the " -"iterables have the same length. This is done by :func:`itertools." -"zip_longest`." -msgstr "" - -msgid "" -"Edge cases: With a single iterable argument, :func:`zip` returns an iterator " -"of 1-tuples. With no arguments, it returns an empty iterator." -msgstr "" - -msgid "Tips and tricks:" -msgstr "" - -msgid "" -"The left-to-right evaluation order of the iterables is guaranteed. This " -"makes possible an idiom for clustering a data series into n-length groups " -"using ``zip(*[iter(s)]*n, strict=True)``. This repeats the *same* iterator " -"``n`` times so that each output tuple has the result of ``n`` calls to the " -"iterator. This has the effect of dividing the input into n-length chunks." -msgstr "" - -msgid "" -":func:`zip` in conjunction with the ``*`` operator can be used to unzip a " -"list::" -msgstr "" - -msgid "" -">>> x = [1, 2, 3]\n" -">>> y = [4, 5, 6]\n" -">>> list(zip(x, y))\n" -"[(1, 4), (2, 5), (3, 6)]\n" -">>> x2, y2 = zip(*zip(x, y))\n" -">>> x == list(x2) and y == list(y2)\n" -"True" -msgstr "" - -msgid "Added the ``strict`` argument." -msgstr "" - -msgid "" -"This is an advanced function that is not needed in everyday Python " -"programming, unlike :func:`importlib.import_module`." -msgstr "" - -msgid "" -"This function is invoked by the :keyword:`import` statement. It can be " -"replaced (by importing the :mod:`builtins` module and assigning to " -"``builtins.__import__``) in order to change semantics of the :keyword:`!" -"import` statement, but doing so is **strongly** discouraged as it is usually " -"simpler to use import hooks (see :pep:`302`) to attain the same goals and " -"does not cause issues with code which assumes the default import " -"implementation is in use. Direct use of :func:`__import__` is also " -"discouraged in favor of :func:`importlib.import_module`." -msgstr "" - -msgid "" -"The function imports the module *name*, potentially using the given " -"*globals* and *locals* to determine how to interpret the name in a package " -"context. The *fromlist* gives the names of objects or submodules that should " -"be imported from the module given by *name*. The standard implementation " -"does not use its *locals* argument at all and uses its *globals* only to " -"determine the package context of the :keyword:`import` statement." -msgstr "" - -msgid "" -"*level* specifies whether to use absolute or relative imports. ``0`` (the " -"default) means only perform absolute imports. Positive values for *level* " -"indicate the number of parent directories to search relative to the " -"directory of the module calling :func:`__import__` (see :pep:`328` for the " -"details)." -msgstr "" - -msgid "" -"When the *name* variable is of the form ``package.module``, normally, the " -"top-level package (the name up till the first dot) is returned, *not* the " -"module named by *name*. However, when a non-empty *fromlist* argument is " -"given, the module named by *name* is returned." -msgstr "" - -msgid "" -"For example, the statement ``import spam`` results in bytecode resembling " -"the following code::" -msgstr "" - -msgid "spam = __import__('spam', globals(), locals(), [], 0)" -msgstr "" - -msgid "The statement ``import spam.ham`` results in this call::" -msgstr "" - -msgid "spam = __import__('spam.ham', globals(), locals(), [], 0)" -msgstr "" - -msgid "" -"Note how :func:`__import__` returns the toplevel module here because this is " -"the object that is bound to a name by the :keyword:`import` statement." -msgstr "" - -msgid "" -"On the other hand, the statement ``from spam.ham import eggs, sausage as " -"saus`` results in ::" -msgstr "" - -msgid "" -"_temp = __import__('spam.ham', globals(), locals(), ['eggs', 'sausage'], 0)\n" -"eggs = _temp.eggs\n" -"saus = _temp.sausage" -msgstr "" - -msgid "" -"Here, the ``spam.ham`` module is returned from :func:`__import__`. From " -"this object, the names to import are retrieved and assigned to their " -"respective names." -msgstr "" - -msgid "" -"If you simply want to import a module (potentially within a package) by " -"name, use :func:`importlib.import_module`." -msgstr "" - -msgid "" -"Negative values for *level* are no longer supported (which also changes the " -"default value to 0)." -msgstr "" - -msgid "" -"When the command line options :option:`-E` or :option:`-I` are being used, " -"the environment variable :envvar:`PYTHONCASEOK` is now ignored." -msgstr "" - -msgid "Footnotes" -msgstr "" - -msgid "" -"Note that the parser only accepts the Unix-style end of line convention. If " -"you are reading the code from a file, make sure to use newline conversion " -"mode to convert Windows or Mac-style newlines." -msgstr "" - -msgid "Boolean" -msgstr "" - -msgid "type" -msgstr "" - -msgid "built-in function" -msgstr "" - -msgid "exec" -msgstr "" - -msgid "NaN" -msgstr "" - -msgid "Infinity" -msgstr "" - -msgid "__format__" -msgstr "" - -msgid "string" -msgstr "" - -msgid "format() (built-in function)" -msgstr "" - -msgid "file object" -msgstr "" - -msgid "open() built-in function" -msgstr "" - -msgid "file" -msgstr "" - -msgid "modes" -msgstr "" - -msgid "universal newlines" -msgstr "" - -msgid "line-buffered I/O" -msgstr "" - -msgid "unbuffered I/O" -msgstr "" - -msgid "buffer size, I/O" -msgstr "" - -msgid "I/O control" -msgstr "" - -msgid "buffering" -msgstr "" - -msgid "text mode" -msgstr "" - -msgid "module" -msgstr "" - -msgid "sys" -msgstr "" - -msgid "str() (built-in function)" -msgstr "" - -msgid "object" -msgstr "" - -msgid "statement" -msgstr "" - -msgid "import" -msgstr "" - -msgid "builtins" -msgstr "" diff --git a/library/functools.po b/library/functools.po index 1410931..627becf 100644 --- a/library/functools.po +++ b/library/functools.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-03 16:16+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -107,9 +107,9 @@ msgid "" msgstr "" msgid "" -"The mechanics of :deco:`cached_property` are somewhat different from :deco:" -"`property`. A regular property blocks attribute writes unless a setter is " -"defined. In contrast, a *cached_property* allows writes." +"The mechanics of :deco:`cached_property` are somewhat different " +"from :deco:`property`. A regular property blocks attribute writes unless a " +"setter is defined. In contrast, a *cached_property* allows writes." msgstr "" msgid "" @@ -154,8 +154,8 @@ msgid "" "If a mutable mapping is not available or if space-efficient key sharing is " "desired, an effect similar to :deco:`cached_property` can also be achieved " "by stacking :deco:`property` on top of :deco:`lru_cache`. See :ref:`faq-" -"cache-method-calls` for more details on how this differs from :deco:" -"`cached_property`." +"cache-method-calls` for more details on how this differs " +"from :deco:`cached_property`." msgstr "" msgid "" @@ -168,11 +168,10 @@ msgstr "" msgid "" "Transform an old-style comparison function to a :term:`key function`. Used " -"with tools that accept key functions (such as :func:`sorted`, :func:`min`, :" -"func:`max`, :func:`heapq.nlargest`, :func:`heapq.nsmallest`, :func:" -"`itertools.groupby`). This function is primarily used as a transition tool " -"for programs being converted from Python 2 which supported the use of " -"comparison functions." +"with tools that accept key functions (such " +"as :func:`sorted`, :func:`min`, :func:`max`, :func:`heapq.nlargest`, :func:`heapq.nsmallest`, :func:`itertools.groupby`). " +"This function is primarily used as a transition tool for programs being " +"converted from Python 2 which supported the use of comparison functions." msgstr "" msgid "" @@ -260,9 +259,9 @@ msgid "" msgstr "" msgid "" -"The original underlying function is accessible through the :attr:" -"`__wrapped__` attribute. This is useful for introspection, for bypassing " -"the cache, or for rewrapping the function with a different cache." +"The original underlying function is accessible through " +"the :attr:`__wrapped__` attribute. This is useful for introspection, for " +"bypassing the cache, or for rewrapping the function with a different cache." msgstr "" msgid "" @@ -315,9 +314,10 @@ msgid "" msgstr "" msgid "" -"Example of efficiently computing `Fibonacci numbers `_ using a cache to implement a `dynamic " -"programming `_ technique::" +"Example of efficiently computing `Fibonacci numbers `_ using a cache to implement a " +"`dynamic programming `_ " +"technique::" msgstr "" msgid "" @@ -350,9 +350,10 @@ msgid "" msgstr "" msgid "" -"The class must define one of :meth:`~object.__lt__`, :meth:`~object." -"__le__`, :meth:`~object.__gt__`, or :meth:`~object.__ge__`. In addition, the " -"class should supply an :meth:`~object.__eq__` method." +"The class must define one " +"of :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object.__gt__`, " +"or :meth:`~object.__ge__`. In addition, the class should supply " +"an :meth:`~object.__eq__` method." msgstr "" msgid "" @@ -487,9 +488,9 @@ msgid "Added support for :data:`Placeholder` in positional arguments." msgstr "" msgid "" -"Return a new :class:`partialmethod` descriptor which behaves like :class:" -"`partial` except that it is designed to be used as a method definition " -"rather than being directly callable." +"Return a new :class:`partialmethod` descriptor which behaves " +"like :class:`partial` except that it is designed to be used as a method " +"definition rather than being directly callable." msgstr "" msgid "" @@ -498,19 +499,19 @@ msgid "" msgstr "" msgid "" -"When *func* is a descriptor (such as a normal Python function, :func:" -"`classmethod`, :func:`staticmethod`, :func:`~abc.abstractmethod` or another " -"instance of :class:`partialmethod`), calls to ``__get__`` are delegated to " -"the underlying descriptor, and an appropriate :ref:`partial object` returned as the result." +"When *func* is a descriptor (such as a normal Python " +"function, :func:`classmethod`, :func:`staticmethod`, :func:`~abc.abstractmethod` " +"or another instance of :class:`partialmethod`), calls to ``__get__`` are " +"delegated to the underlying descriptor, and an appropriate :ref:`partial " +"object` returned as the result." msgstr "" msgid "" "When *func* is a non-descriptor callable, an appropriate bound method is " "created dynamically. This behaves like a normal Python function when used as " "a method: the *self* argument will be inserted as the first positional " -"argument, even before the *args* and *keywords* supplied to the :class:" -"`partialmethod` constructor." +"argument, even before the *args* and *keywords* supplied to " +"the :class:`partialmethod` constructor." msgstr "" msgid "" @@ -571,8 +572,8 @@ msgid "*initial* is now supported as a keyword argument." msgstr "" msgid "" -"Transform a function into a :term:`single-dispatch ` :term:" -"`generic function`." +"Transform a function into a :term:`single-dispatch ` :term:`generic function`." msgstr "" msgid "" @@ -727,9 +728,9 @@ msgstr "" msgid "" "Where there is no registered implementation for a specific type, its method " "resolution order is used to find a more generic implementation. The original " -"function decorated with ``@singledispatch`` is registered for the base :" -"class:`object` type, which means it is used if no better implementation is " -"found." +"function decorated with ``@singledispatch`` is registered for the " +"base :class:`object` type, which means it is used if no better " +"implementation is found." msgstr "" msgid "" @@ -785,13 +786,13 @@ msgid "" msgstr "" msgid "" -"The :func:`~singledispatch.register` attribute now supports :class:`typing." -"Union` as a type annotation." +"The :func:`~singledispatch.register` attribute now " +"supports :class:`typing.Union` as a type annotation." msgstr "" msgid "" -"Transform a method into a :term:`single-dispatch ` :term:" -"`generic function`." +"Transform a method into a :term:`single-dispatch ` :term:`generic function`." msgstr "" msgid "" @@ -817,8 +818,8 @@ msgid "" msgstr "" msgid "" -"``@singledispatchmethod`` supports nesting with other decorators such as :" -"deco:`classmethod`. Note that to allow for ``dispatcher.register``, " +"``@singledispatchmethod`` supports nesting with other decorators such " +"as :deco:`classmethod`. Note that to allow for ``dispatcher.register``, " "``singledispatchmethod`` must be the *outer most* decorator. Here is the " "``Negator`` class with the ``neg`` methods bound to the class, rather than " "an instance of the class::" @@ -843,8 +844,8 @@ msgid "" msgstr "" msgid "" -"The same pattern can be used for other similar decorators: :deco:" -"`staticmethod`, :deco:`~abc.abstractmethod`, and others." +"The same pattern can be used for other similar " +"decorators: :deco:`staticmethod`, :deco:`~abc.abstractmethod`, and others." msgstr "" msgid "Added support of non-:term:`descriptor` callables." @@ -857,12 +858,11 @@ msgid "" "function and which attributes of the wrapper function are updated with the " "corresponding attributes from the original function. The default values for " "these arguments are the module level constants ``WRAPPER_ASSIGNMENTS`` " -"(which assigns to the wrapper function's :attr:`~function.__module__`, :attr:" -"`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function." -"__annotations__`, :attr:`~function.__type_params__`, and :attr:`~function." -"__doc__`, the documentation string) and ``WRAPPER_UPDATES`` (which updates " -"the wrapper function's :attr:`~function.__dict__`, i.e. the instance " -"dictionary)." +"(which assigns to the wrapper " +"function's :attr:`~function.__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :attr:`~function.__annotations__`, :attr:`~function.__type_params__`, " +"and :attr:`~function.__doc__`, the documentation string) and " +"``WRAPPER_UPDATES`` (which updates the wrapper " +"function's :attr:`~function.__dict__`, i.e. the instance dictionary)." msgstr "" msgid "" @@ -889,15 +889,15 @@ msgid "" msgstr "" msgid "" -"The ``__wrapped__`` attribute is now automatically added. The :attr:" -"`~function.__annotations__` attribute is now copied by default. Missing " -"attributes no longer trigger an :exc:`AttributeError`." +"The ``__wrapped__`` attribute is now automatically added. " +"The :attr:`~function.__annotations__` attribute is now copied by default. " +"Missing attributes no longer trigger an :exc:`AttributeError`." msgstr "" msgid "" "The ``__wrapped__`` attribute now always refers to the wrapped function, " -"even if that function defined a ``__wrapped__`` attribute. (see :issue:" -"`17482`)" +"even if that function defined a ``__wrapped__`` attribute. " +"(see :issue:`17482`)" msgstr "" msgid "" @@ -966,7 +966,7 @@ msgstr "" msgid "" ":class:`partial` objects are like :ref:`function objects ` in that they are callable, weak referenceable, and can have " -"attributes. There are some important differences. For instance, the :attr:" -"`~definition.__name__` and :attr:`~definition.__doc__` attributes are not " -"created automatically." +"attributes. There are some important differences. For instance, " +"the :attr:`~definition.__name__` and :attr:`~definition.__doc__` attributes " +"are not created automatically." msgstr "" diff --git a/library/gc.po b/library/gc.po index 05968bf..ea8c444 100644 --- a/library/gc.po +++ b/library/gc.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -86,6 +86,13 @@ msgid "" "by the collector that are in that generation." msgstr "" +msgid "" +"Care must be taken when using objects returned by :func:`get_objects` " +"because some of them could still be under construction and hence in a " +"temporarily invalid state. Avoid using :func:`get_objects` for any purpose " +"other than debugging." +msgstr "" + msgid "New *generation* parameter." msgstr "" @@ -206,13 +213,14 @@ msgstr "" msgid "" "Return a list of objects directly referred to by any of the arguments. The " -"referents returned are those objects visited by the arguments' C-level :c:" -"member:`~PyTypeObject.tp_traverse` methods (if any), and may not be all " -"objects actually directly reachable. :c:member:`~PyTypeObject.tp_traverse` " -"methods are supported only by objects that support garbage collection, and " -"are only required to visit objects that may be involved in a cycle. So, for " -"example, if an integer is directly reachable from an argument, that integer " -"object may or may not appear in the result list." +"referents returned are those objects visited by the arguments' C-" +"level :c:member:`~PyTypeObject.tp_traverse` methods (if any), and may not be " +"all objects actually directly " +"reachable. :c:member:`~PyTypeObject.tp_traverse` methods are supported only " +"by objects that support garbage collection, and are only required to visit " +"objects that may be involved in a cycle. So, for example, if an integer is " +"directly reachable from an argument, that integer object may or may not " +"appear in the result list." msgstr "" msgid "" @@ -304,10 +312,10 @@ msgid "" msgstr "" msgid "" -"If this list is non-empty at :term:`interpreter shutdown`, a :exc:" -"`ResourceWarning` is emitted, which is silent by default. If :const:" -"`DEBUG_UNCOLLECTABLE` is set, in addition all uncollectable objects are " -"printed." +"If this list is non-empty at :term:`interpreter shutdown`, " +"a :exc:`ResourceWarning` is emitted, which is silent by default. " +"If :const:`DEBUG_UNCOLLECTABLE` is set, in addition all uncollectable " +"objects are printed." msgstr "" msgid "" diff --git a/library/getopt.po b/library/getopt.po index e3c207a..190cf44 100644 --- a/library/getopt.po +++ b/library/getopt.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgid "" msgstr "" msgid "" -"This module helps scripts to parse the command line arguments in ``sys." -"argv``. It supports the same conventions as the Unix :c:func:`!getopt` " +"This module helps scripts to parse the command line arguments in " +"``sys.argv``. It supports the same conventions as the Unix :c:func:`!getopt` " "function (including the special meanings of arguments of the form '``-``' " "and '``--``'). Long options similar to those supported by GNU software may " "be used as well via an optional third argument." @@ -58,8 +58,8 @@ msgid "" "Typically, this means ``sys.argv[1:]``. *shortopts* is the string of option " "letters that the script wants to recognize, with options that require an " "argument followed by a colon (``':'``) and options that accept an optional " -"argument followed by two colons (``'::'``); i.e., the same format that Unix :" -"c:func:`!getopt` uses." +"argument followed by two colons (``'::'``); i.e., the same format that " +"Unix :c:func:`!getopt` uses." msgstr "" msgid "" @@ -78,8 +78,8 @@ msgid "" "string. Long options on the command line can be recognized so long as they " "provide a prefix of the option name that matches exactly one of the accepted " "options. For example, if *longopts* is ``['foo', 'frob']``, the option ``--" -"fo`` will match as ``--foo``, but ``--f`` will not match uniquely, so :exc:" -"`GetoptError` will be raised." +"fo`` will match as ``--foo``, but ``--f`` will not match uniquely, " +"so :exc:`GetoptError` will be raised." msgstr "" msgid "" @@ -91,9 +91,9 @@ msgid "" "value)`` pairs; the second is the list of program arguments left after the " "option list was stripped (this is a trailing slice of *args*). Each option-" "and-value pair returned has the option as its first element, prefixed with a " -"hyphen for short options (e.g., ``'-x'``) or two hyphens for long options (e." -"g., ``'--long-option'``), and the option argument as its second element, or " -"an empty string if the option has no argument. The options occur in the " +"hyphen for short options (e.g., ``'-x'``) or two hyphens for long options " +"(e.g., ``'--long-option'``), and the option argument as its second element, " +"or an empty string if the option has no argument. The options occur in the " "list in the same order in which they were found, thus allowing multiple " "occurrences. Long and short options may be mixed." msgstr "" @@ -102,10 +102,10 @@ msgid "Optional arguments are supported." msgstr "" msgid "" -"This function works like :func:`getopt`, except that GNU style scanning mode " -"is used by default. This means that option and non-option arguments may be " -"intermixed. The :func:`getopt` function stops processing options as soon as " -"a non-option argument is encountered." +"This function works like :func:`~getopt.getopt`, except that GNU style " +"scanning mode is used by default. This means that option and non-option " +"arguments may be intermixed. The :func:`~getopt.getopt` function stops " +"processing options as soon as a non-option argument is encountered." msgstr "" msgid "" @@ -238,8 +238,8 @@ msgstr "" msgid "" "Note that an equivalent command line interface could be produced with less " -"code and more informative help and error messages by using the :mod:" -"`optparse` module:" +"code and more informative help and error messages by using " +"the :mod:`optparse` module:" msgstr "" msgid "" diff --git a/library/getpass.po b/library/getpass.po index d45e3b4..3df0912 100644 --- a/library/getpass.po +++ b/library/getpass.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -57,14 +57,14 @@ msgid "" msgstr "" msgid "" -"If echo free input is unavailable getpass() falls back to printing a warning " -"message to *stream* and reading from ``sys.stdin`` and issuing a :exc:" -"`GetPassWarning`." +"If echo-free input is unavailable, :func:`~getpass.getpass` falls back to " +"printing a warning message to *stream* and reading from :data:`sys.stdin` " +"and issuing a :exc:`GetPassWarning`." msgstr "" msgid "" -"If you call getpass from within IDLE, the input may be done in the terminal " -"you launched IDLE from rather than the idle window itself." +"If you call :func:`~getpass.getpass` from within IDLE, the input may be done " +"in the terminal you launched IDLE from rather than the idle window itself." msgstr "" msgid "" @@ -116,11 +116,12 @@ msgid "Return the \"login name\" of the user." msgstr "" msgid "" -"This function checks the environment variables :envvar:`LOGNAME`, :envvar:" -"`USER`, :envvar:`!LNAME` and :envvar:`USERNAME`, in order, and returns the " -"value of the first one which is set to a non-empty string. If none are set, " -"the login name from the password database is returned on systems which " -"support the :mod:`pwd` module, otherwise, an :exc:`OSError` is raised." +"This function checks the environment " +"variables :envvar:`LOGNAME`, :envvar:`USER`, :envvar:`!LNAME` " +"and :envvar:`USERNAME`, in order, and returns the value of the first one " +"which is set to a non-empty string. If none are set, the login name from " +"the password database is returned on systems which support the :mod:`pwd` " +"module, otherwise, an :exc:`OSError` is raised." msgstr "" msgid "In general, this function should be preferred over :func:`os.getlogin`." diff --git a/library/gettext.po b/library/gettext.po index 5bd985b..bea8059 100644 --- a/library/gettext.po +++ b/library/gettext.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,12 +56,13 @@ msgid "" msgstr "" msgid "" -"Bind the *domain* to the locale directory *localedir*. More concretely, :" -"mod:`!gettext` will look for binary :file:`.mo` files for the given domain " -"using the path (on Unix): :file:`{localedir}/{language}/LC_MESSAGES/{domain}." -"mo`, where *language* is searched for in the environment variables :envvar:" -"`LANGUAGE`, :envvar:`LC_ALL`, :envvar:`LC_MESSAGES`, and :envvar:`LANG` " -"respectively." +"Bind the *domain* to the locale directory *localedir*. More " +"concretely, :mod:`!gettext` will look for binary :file:`.mo` files for the " +"given domain using the path (on Unix): :file:`{localedir}/{language}/" +"LC_MESSAGES/{domain}.mo`, where *language* is searched for in the " +"environment " +"variables :envvar:`LANGUAGE`, :envvar:`LC_ALL`, :envvar:`LC_MESSAGES`, " +"and :envvar:`LANG` respectively." msgstr "" msgid "" @@ -107,7 +108,7 @@ msgstr "" msgid "" "Similar to the corresponding functions without the ``p`` in the prefix (that " -"is, :func:`gettext`, :func:`dgettext`, :func:`ngettext`, :func:`dngettext`), " +"is, :func:`~gettext.gettext`, :func:`dgettext`, :func:`ngettext`, :func:`dngettext`), " "but the translation is restricted to the given message *context*." msgstr "" @@ -151,11 +152,12 @@ msgstr "" msgid "" "If *localedir* is not given, then the default system locale directory is " "used. [#]_ If *languages* is not given, then the following environment " -"variables are searched: :envvar:`LANGUAGE`, :envvar:`LC_ALL`, :envvar:" -"`LC_MESSAGES`, and :envvar:`LANG`. The first one returning a non-empty " -"value is used for the *languages* variable. The environment variables should " -"contain a colon separated list of languages, which will be split on the " -"colon to produce the expected list of language code strings." +"variables are " +"searched: :envvar:`LANGUAGE`, :envvar:`LC_ALL`, :envvar:`LC_MESSAGES`, " +"and :envvar:`LANG`. The first one returning a non-empty value is used for " +"the *languages* variable. The environment variables should contain a colon " +"separated list of languages, which will be split on the colon to produce the " +"expected list of language code strings." msgstr "" msgid "" @@ -191,8 +193,8 @@ msgstr "" msgid "" "If no :file:`.mo` file is found, this function raises :exc:`OSError` if " -"*fallback* is false (which is the default), and returns a :class:" -"`NullTranslations` instance if *fallback* is true." +"*fallback* is false (which is the default), and returns " +"a :class:`NullTranslations` instance if *fallback* is true." msgstr "" msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." @@ -203,8 +205,8 @@ msgstr "" msgid "" "This installs the function :func:`!_` in Python's builtins namespace, based " -"on *domain* and *localedir* which are passed to the function :func:" -"`translation`." +"on *domain* and *localedir* which are passed to the " +"function :func:`translation`." msgstr "" msgid "" @@ -304,9 +306,9 @@ msgid "" msgstr "" msgid "" -"Note that this is only one way, albeit the most convenient way, to make the :" -"func:`!_` function available to your application. Because it affects the " -"entire application globally, and specifically the built-in namespace, " +"Note that this is only one way, albeit the most convenient way, to make " +"the :func:`!_` function available to your application. Because it affects " +"the entire application globally, and specifically the built-in namespace, " "localized modules should never install :func:`!_`. Instead, they should use " "this code to make :func:`!_` available to their module::" msgstr "" @@ -329,17 +331,17 @@ msgid "The :class:`GNUTranslations` class" msgstr "" msgid "" -"The :mod:`!gettext` module provides one additional class derived from :class:" -"`NullTranslations`: :class:`GNUTranslations`. This class overrides :meth:`!" -"_parse` to enable reading GNU :program:`gettext` format :file:`.mo` files in " -"both big-endian and little-endian format." +"The :mod:`!gettext` module provides one additional class derived " +"from :class:`NullTranslations`: :class:`GNUTranslations`. This class " +"overrides :meth:`!_parse` to enable reading GNU :program:`gettext` " +"format :file:`.mo` files in both big-endian and little-endian format." msgstr "" msgid "" ":class:`GNUTranslations` parses optional metadata out of the translation " "catalog. It is convention with GNU :program:`gettext` to include metadata as " -"the translation for the empty string. This metadata is in :rfc:`822`\\ -" -"style ``key: value`` pairs, and should contain the ``Project-Id-Version`` " +"the translation for the empty string. This metadata is in :rfc:`822`\\ " +"-style ``key: value`` pairs, and should contain the ``Project-Id-Version`` " "key. If the key ``Content-Type`` is found, then the ``charset`` property is " "used to initialize the \"protected\" :attr:`!_charset` instance variable, " "defaulting to ``None`` if not found. If the charset encoding is specified, " @@ -383,9 +385,9 @@ msgstr "" msgid "" "If the message id is not found in the catalog, and a fallback is specified, " -"the request is forwarded to the fallback's :meth:`~NullTranslations." -"ngettext` method. Otherwise, when *n* is 1 *singular* is returned, and " -"*plural* is returned in all other cases." +"the request is forwarded to the " +"fallback's :meth:`~NullTranslations.ngettext` method. Otherwise, when *n* " +"is 1 *singular* is returned, and *plural* is returned in all other cases." msgstr "" msgid "Here is an example::" @@ -487,7 +489,7 @@ msgid "" "In order to prepare your code for I18N, you need to look at all the strings " "in your files. Any string that needs to be translated should be marked by " "wrapping it in ``_('...')`` --- that is, a call to the function :func:`_ " -"`. For example::" +"`. For example::" msgstr "" msgid "" @@ -516,32 +518,33 @@ msgid "" msgstr "" msgid "" -"(Python also includes pure-Python versions of these programs, called :" -"program:`pygettext.py` and :program:`msgfmt.py`; some Python distributions " -"will install them for you. :program:`pygettext.py` is similar to :program:" -"`xgettext`, but only understands Python source code and cannot handle other " -"programming languages such as C or C++. :program:`pygettext.py` supports a " -"command-line interface similar to :program:`xgettext`; for details on its " -"use, run ``pygettext.py --help``. :program:`msgfmt.py` is binary compatible " -"with GNU :program:`msgfmt`. With these two programs, you may not need the " -"GNU :program:`gettext` package to internationalize your Python applications.)" +"(Python also includes pure-Python versions of these programs, " +"called :program:`pygettext.py` and :program:`msgfmt.py`; some Python " +"distributions will install them for you. :program:`pygettext.py` is similar " +"to :program:`xgettext`, but only understands Python source code and cannot " +"handle other programming languages such as C or C++. :program:`pygettext.py` " +"supports a command-line interface similar to :program:`xgettext`; for " +"details on its use, run ``pygettext.py --help``. :program:`msgfmt.py` is " +"binary compatible with GNU :program:`msgfmt`. With these two programs, you " +"may not need the GNU :program:`gettext` package to internationalize your " +"Python applications.)" msgstr "" msgid "" -":program:`xgettext`, :program:`pygettext`, and similar tools generate :file:" -"`.po` files that are message catalogs. They are structured human-readable " -"files that contain every marked string in the source code, along with a " -"placeholder for the translated versions of these strings." +":program:`xgettext`, :program:`pygettext`, and similar tools " +"generate :file:`.po` files that are message catalogs. They are structured " +"human-readable files that contain every marked string in the source code, " +"along with a placeholder for the translated versions of these strings." msgstr "" msgid "" "Copies of these :file:`.po` files are then handed over to the individual " "human translators who write translations for every supported natural " -"language. They send back the completed language-specific versions as a :" -"file:`.po` file that's compiled into a machine-readable :file:" -"`.mo` binary catalog file using the :program:`msgfmt` program. The :file:`." -"mo` files are used by the :mod:`!gettext` module for the actual translation " -"processing at run-time." +"language. They send back the completed language-specific versions as " +"a :file:`.po` file that's compiled into a machine-" +"readable :file:`.mo` binary catalog file using the :program:`msgfmt` " +"program. The :file:`.mo` files are used by the :mod:`!gettext` module for " +"the actual translation processing at run-time." msgstr "" msgid "" @@ -555,8 +558,8 @@ msgstr "" msgid "" "If you are localizing your module, you must take care not to make global " -"changes, e.g. to the built-in namespace. You should not use the GNU :program:" -"`gettext` API but instead the class-based API." +"changes, e.g. to the built-in namespace. You should not use the " +"GNU :program:`gettext` API but instead the class-based API." msgstr "" msgid "" @@ -593,8 +596,8 @@ msgid "" msgstr "" msgid "" -"If you need to set the locale directory, you can pass it into the :func:" -"`install` function::" +"If you need to set the locale directory, you can pass it into " +"the :func:`install` function::" msgstr "" msgid "" diff --git a/library/glob.po b/library/glob.po index 6ba9f60..103fbc9 100644 --- a/library/glob.po +++ b/library/glob.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -43,9 +43,9 @@ msgstr "" msgid "" "By default, files beginning with a dot (``.``) can only be matched by " -"patterns that also start with a dot, unlike :func:`fnmatch.fnmatch` or :func:" -"`pathlib.Path.glob`. For tilde and shell variable expansion, use :func:`os." -"path.expanduser` and :func:`os.path.expandvars`." +"patterns that also start with a dot, unlike :func:`fnmatch.fnmatch` " +"or :func:`pathlib.Path.glob`. For tilde and shell variable expansion, " +"use :func:`os.path.expanduser` and :func:`os.path.expandvars`." msgstr "" msgid "" @@ -59,18 +59,18 @@ msgstr "" msgid "" "Return a possibly empty list of path names that match *pathname*, which must " "be a string containing a path specification. *pathname* can be either " -"absolute (like :file:`/usr/src/Python-1.5/Makefile`) or relative (like :file:" -"`../../Tools/\\*/\\*.gif`), and can contain shell-style wildcards. Broken " -"symlinks are included in the results (as in the shell). Whether or not the " -"results are sorted depends on the file system. If a file that satisfies " -"conditions is removed or added during the call of this function, whether a " -"path name for that file will be included is unspecified." +"absolute (like :file:`/usr/src/Python-1.5/Makefile`) or relative " +"(like :file:`../../Tools/\\*/\\*.gif`), and can contain shell-style " +"wildcards. Broken symlinks are included in the results (as in the shell). " +"Whether or not the results are sorted depends on the file system. If a file " +"that satisfies conditions is removed or added during the call of this " +"function, whether a path name for that file will be included is unspecified." msgstr "" msgid "" "If *root_dir* is not ``None``, it should be a :term:`path-like object` " -"specifying the root directory for searching. It has the same effect on :" -"func:`!glob` as changing the current directory before calling it. If " +"specifying the root directory for searching. It has the same effect " +"on :func:`!glob` as changing the current directory before calling it. If " "*pathname* is relative, the result will contain paths relative to *root_dir*." msgstr "" @@ -127,8 +127,8 @@ msgid "Added the *include_hidden* parameter." msgstr "" msgid "" -"Return an :term:`iterator` which yields the same values as :func:`glob` " -"without actually storing them all simultaneously." +"Return an :term:`iterator` which yields the same values " +"as :func:`~glob.glob` without actually storing them all simultaneously." msgstr "" msgid "" @@ -140,8 +140,8 @@ msgid "" msgstr "" msgid "" -"Convert the given path specification to a regular expression for use with :" -"func:`re.prefixmatch`. The path specification can contain shell-style " +"Convert the given path specification to a regular expression for use " +"with :func:`re.prefixmatch`. The path specification can contain shell-style " "wildcards." msgstr "" @@ -149,9 +149,9 @@ msgid "For example:" msgstr "" msgid "" -"Path separators and segments are meaningful to this function, unlike :func:" -"`fnmatch.translate`. By default wildcards do not match path separators, and " -"``*`` pattern segments match precisely one path segment." +"Path separators and segments are meaningful to this function, " +"unlike :func:`fnmatch.translate`. By default wildcards do not match path " +"separators, and ``*`` pattern segments match precisely one path segment." msgstr "" msgid "" @@ -178,9 +178,10 @@ msgid "Examples" msgstr "" msgid "" -"Consider a directory containing the following files: :file:`1.gif`, :file:`2." -"txt`, :file:`card.gif` and a subdirectory :file:`sub` which contains only " -"the file :file:`3.txt`. :func:`glob` will produce the following results. " +"Consider a directory containing the following " +"files: :file:`1.gif`, :file:`2.txt`, :file:`card.gif` and a " +"subdirectory :file:`sub` which contains only the " +"file :file:`3.txt`. :func:`~glob.glob` will produce the following results. " "Notice how any leading components of the path are preserved. ::" msgstr "" @@ -200,8 +201,8 @@ msgstr "" msgid "" "If the directory contains files starting with ``.`` they won't be matched by " -"default. For example, consider a directory containing :file:`card.gif` and :" -"file:`.card.gif`::" +"default. For example, consider a directory containing :file:`card.gif` " +"and :file:`.card.gif`::" msgstr "" msgid "" diff --git a/library/graphlib.po b/library/graphlib.po index cd5a7bd..9d9bd74 100644 --- a/library/graphlib.po +++ b/library/graphlib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -77,8 +77,8 @@ msgstr "" msgid "" "In case just an immediate sorting of the nodes in the graph is required and " -"no parallelism is involved, the convenience method :meth:`TopologicalSorter." -"static_order` can be used directly:" +"no parallelism is involved, the convenience " +"method :meth:`TopologicalSorter.static_order` can be used directly:" msgstr "" msgid "" @@ -140,16 +140,16 @@ msgstr "" msgid "" "Mark the graph as finished and check for cycles in the graph. If any cycle " -"is detected, :exc:`CycleError` will be raised, but :meth:`~TopologicalSorter." -"get_ready` can still be used to obtain as many nodes as possible until " -"cycles block more progress. After a call to this function, the graph cannot " -"be modified, and therefore no more nodes can be added using :meth:" -"`~TopologicalSorter.add`." +"is detected, :exc:`CycleError` will be raised, " +"but :meth:`~TopologicalSorter.get_ready` can still be used to obtain as many " +"nodes as possible until cycles block more progress. After a call to this " +"function, the graph cannot be modified, and therefore no more nodes can be " +"added using :meth:`~TopologicalSorter.add`." msgstr "" msgid "" -"A :exc:`ValueError` will be raised if the sort has been started by :meth:`~." -"static_order` or :meth:`~.get_ready`." +"A :exc:`ValueError` will be raised if the sort has been started " +"by :meth:`~.static_order` or :meth:`~.get_ready`." msgstr "" msgid "" @@ -160,10 +160,10 @@ msgstr "" msgid "" "Returns ``True`` if more progress can be made and ``False`` otherwise. " "Progress can be made if cycles do not block the resolution and either there " -"are still nodes ready that haven't yet been returned by :meth:" -"`TopologicalSorter.get_ready` or the number of nodes marked :meth:" -"`TopologicalSorter.done` is less than the number that have been returned by :" -"meth:`TopologicalSorter.get_ready`." +"are still nodes ready that haven't yet been returned " +"by :meth:`TopologicalSorter.get_ready` or the number of nodes " +"marked :meth:`TopologicalSorter.done` is less than the number that have been " +"returned by :meth:`TopologicalSorter.get_ready`." msgstr "" msgid "" @@ -185,8 +185,8 @@ msgid "" msgstr "" msgid "" -"Raises :exc:`ValueError` if called without calling :meth:`~TopologicalSorter." -"prepare` previously." +"Raises :exc:`ValueError` if called without " +"calling :meth:`~TopologicalSorter.prepare` previously." msgstr "" msgid "" @@ -198,9 +198,9 @@ msgstr "" msgid "" "Raises :exc:`ValueError` if any node in *nodes* has already been marked as " "processed by a previous call to this method or if a node was not added to " -"the graph by using :meth:`TopologicalSorter.add`, if called without calling :" -"meth:`~TopologicalSorter.prepare` or if node has not yet been returned by :" -"meth:`~TopologicalSorter.get_ready`." +"the graph by using :meth:`TopologicalSorter.add`, if called without " +"calling :meth:`~TopologicalSorter.prepare` or if node has not yet been " +"returned by :meth:`~TopologicalSorter.get_ready`." msgstr "" msgid "" @@ -213,9 +213,9 @@ msgstr "" msgid "" "Returns an iterator object which will iterate over nodes in a topological " -"order. When using this method, :meth:`~TopologicalSorter.prepare` and :meth:" -"`~TopologicalSorter.done` should not be called. This method is equivalent " -"to::" +"order. When using this method, :meth:`~TopologicalSorter.prepare` " +"and :meth:`~TopologicalSorter.done` should not be called. This method is " +"equivalent to::" msgstr "" msgid "" @@ -248,9 +248,9 @@ msgstr "" msgid "" "This is due to the fact that \"0\" and \"2\" are in the same level in the " -"graph (they would have been returned in the same call to :meth:" -"`~TopologicalSorter.get_ready`) and the order between them is determined by " -"the order of insertion." +"graph (they would have been returned in the same call " +"to :meth:`~TopologicalSorter.get_ready`) and the order between them is " +"determined by the order of insertion." msgstr "" msgid "If any cycle is detected, :exc:`CycleError` will be raised." @@ -269,9 +269,10 @@ msgid "" msgstr "" msgid "" -"The detected cycle can be accessed via the second element in the :attr:" -"`~BaseException.args` attribute of the exception instance and consists in a " -"list of nodes, such that each node is, in the graph, an immediate " -"predecessor of the next node in the list. In the reported list, the first " -"and the last node will be the same, to make it clear that it is cyclic." +"The detected cycle can be accessed via the second element in " +"the :attr:`~BaseException.args` attribute of the exception instance and " +"consists in a list of nodes, such that each node is, in the graph, an " +"immediate predecessor of the next node in the list. In the reported list, " +"the first and the last node will be the same, to make it clear that it is " +"cyclic." msgstr "" diff --git a/library/grp.po b/library/grp.po index aaf5016..25bbb41 100644 --- a/library/grp.po +++ b/library/grp.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,16 +90,16 @@ msgid "" "members of the group they are in according to the password database. Check " "both databases to get complete membership information. Also note that a " "``gr_name`` that starts with a ``+`` or ``-`` is likely to be a YP/NIS " -"reference and may not be accessible via :func:`getgrnam` or :func:" -"`getgrgid`.)" +"reference and may not be accessible via :func:`getgrnam` " +"or :func:`getgrgid`.)" msgstr "" msgid "It defines the following items:" msgstr "" msgid "" -"Return the group database entry for the given numeric group ID. :exc:" -"`KeyError` is raised if the entry asked for cannot be found." +"Return the group database entry for the given numeric group " +"ID. :exc:`KeyError` is raised if the entry asked for cannot be found." msgstr "" msgid "" diff --git a/library/gzip.po b/library/gzip.po index f5f3b04..0ddd0a2 100644 --- a/library/gzip.po +++ b/library/gzip.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,15 +46,15 @@ msgstr "" msgid "" "The :mod:`!gzip` module provides the :class:`GzipFile` class, as well as " "the :func:`.open`, :func:`compress` and :func:`decompress` convenience " -"functions. The :class:`GzipFile` class reads and writes :program:`gzip`\\ -" -"format files, automatically compressing or decompressing the data so that it " -"looks like an ordinary :term:`file object`." +"functions. The :class:`GzipFile` class reads and writes :program:`gzip`\\ " +"-format files, automatically compressing or decompressing the data so that " +"it looks like an ordinary :term:`file object`." msgstr "" msgid "" -"Note that additional file formats which can be decompressed by the :program:" -"`gzip` and :program:`gunzip` programs, such as those produced by :program:" -"`compress` and :program:`pack`, are not supported by this module." +"Note that additional file formats which can be decompressed by " +"the :program:`gzip` and :program:`gunzip` programs, such as those produced " +"by :program:`compress` and :program:`pack`, are not supported by this module." msgstr "" msgid "The module defines the following items:" @@ -62,8 +66,9 @@ msgid "" msgstr "" msgid "" -"The *filename* argument can be an actual filename (a :class:`str` or :class:" -"`bytes` object), or an existing file object to read from or write to." +"The *filename* argument can be an actual filename (a :class:`str` " +"or :class:`bytes` object), or an existing file object to read from or write " +"to." msgstr "" msgid "" @@ -73,8 +78,8 @@ msgid "" msgstr "" msgid "" -"The *compresslevel* argument is an integer from 0 to 9, as for the :class:" -"`GzipFile` constructor." +"The *compresslevel* argument is an integer from 0 to 9, as for " +"the :class:`GzipFile` constructor." msgstr "" msgid "" @@ -84,8 +89,8 @@ msgid "" msgstr "" msgid "" -"For text mode, a :class:`GzipFile` object is created, and wrapped in an :" -"class:`io.TextIOWrapper` instance with the specified encoding, error " +"For text mode, a :class:`GzipFile` object is created, and wrapped in " +"an :class:`io.TextIOWrapper` instance with the specified encoding, error " "handling behavior, and line ending(s)." msgstr "" @@ -107,16 +112,16 @@ msgid "" msgstr "" msgid "" -"An exception raised for invalid gzip files. It inherits from :exc:" -"`OSError`. :exc:`EOFError` and :exc:`zlib.error` can also be raised for " -"invalid gzip files." +"An exception raised for invalid gzip files. It inherits " +"from :exc:`OSError`. :exc:`EOFError` and :exc:`zlib.error` can also be " +"raised for invalid gzip files." msgstr "" msgid "" "Constructor for the :class:`GzipFile` class, which simulates most of the " -"methods of a :term:`file object`, with the exception of the :meth:`~io." -"IOBase.truncate` method. At least one of *fileobj* and *filename* must be " -"given a non-trivial value." +"methods of a :term:`file object`, with the exception of " +"the :meth:`~io.IOBase.truncate` method. At least one of *fileobj* and " +"*filename* must be given a non-trivial value." msgstr "" msgid "" @@ -153,7 +158,7 @@ msgid "" "The *compresslevel* argument is an integer from ``0`` to ``9`` controlling " "the level of compression; ``1`` is fastest and produces the least " "compression, and ``9`` is slowest and produces the most compression. ``0`` " -"is no compression. The default is ``9``." +"is no compression. The default is ``6``." msgstr "" msgid "" @@ -175,14 +180,14 @@ msgid "" "Calling a :class:`GzipFile` object's :meth:`!close` method does not close " "*fileobj*, since you might wish to append more material after the compressed " "data. This also allows you to pass an :class:`io.BytesIO` object opened for " -"writing as *fileobj*, and retrieve the resulting memory buffer using the :" -"class:`io.BytesIO` object's :meth:`~io.BytesIO.getvalue` method." +"writing as *fileobj*, and retrieve the resulting memory buffer using " +"the :class:`io.BytesIO` object's :meth:`~io.BytesIO.getvalue` method." msgstr "" msgid "" ":class:`GzipFile` supports the :class:`io.BufferedIOBase` interface, " -"including iteration and the :keyword:`with` statement. Only the :meth:`~io." -"IOBase.truncate` method isn't implemented." +"including iteration and the :keyword:`with` statement. Only " +"the :meth:`~io.IOBase.truncate` method isn't implemented." msgstr "" msgid ":class:`GzipFile` also provides the following method and attribute:" @@ -194,9 +199,10 @@ msgid "" msgstr "" msgid "" -"While calling :meth:`peek` does not change the file position of the :class:" -"`GzipFile`, it may change the position of the underlying file object (e.g. " -"if the :class:`GzipFile` was constructed with the *fileobj* parameter)." +"While calling :meth:`peek` does not change the file position of " +"the :class:`GzipFile`, it may change the position of the underlying file " +"object (e.g. if the :class:`GzipFile` was constructed with the *fileobj* " +"parameter)." msgstr "" msgid "``'rb'`` for reading and ``'wb'`` for writing." @@ -260,10 +266,10 @@ msgstr "" msgid "" "Speed is improved by compressing all data at once instead of in a streamed " -"fashion. Calls with *mtime* set to ``0`` are delegated to :func:`zlib." -"compress` for better speed. In this situation the output may contain a gzip " -"header \"OS\" byte value other than 255 \"unknown\" as supplied by the " -"underlying zlib implementation." +"fashion. Calls with *mtime* set to ``0`` are delegated " +"to :func:`zlib.compress` for better speed. In this situation the output may " +"contain a gzip header \"OS\" byte value other than 255 \"unknown\" as " +"supplied by the underlying zlib implementation." msgstr "" msgid "" diff --git a/library/hashlib.po b/library/hashlib.po index 82f7266..670a04c 100644 --- a/library/hashlib.po +++ b/library/hashlib.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,8 +38,8 @@ msgid "" msgstr "" msgid "" -"If you want the adler32 or crc32 hash functions, they are available in the :" -"mod:`zlib` module." +"If you want the adler32 or crc32 hash functions, they are available in " +"the :mod:`zlib` module." msgstr "" msgid "Hash algorithms" @@ -46,42 +47,41 @@ msgstr "" msgid "" "There is one constructor method named for each type of :dfn:`hash`. All " -"return a hash object with the same simple interface. For example: use :func:" -"`sha256` to create a SHA-256 hash object. You can now feed this object with :" -"term:`bytes-like objects ` (normally :class:`bytes`) " -"using the :meth:`update` method. At any point you can ask it " -"for the :dfn:`digest` of the concatenation of the data fed to it so far " -"using the :meth:`digest()` or :meth:`hexdigest()` methods." +"return a hash object with the same simple interface. For example: " +"use :func:`sha256` to create a SHA-256 hash object. You can now feed this " +"object with :term:`bytes-like objects ` " +"(normally :class:`bytes`) using the :meth:`update` method. At " +"any point you can ask it for the :dfn:`digest` of the concatenation of the " +"data fed to it so far using the :meth:`digest()` " +"or :meth:`hexdigest()` methods." msgstr "" msgid "" "To allow multithreading, the Python :term:`GIL` is released while computing " -"a hash supplied more than 2047 bytes of data at once in its constructor or :" -"meth:`.update` method." +"a hash supplied more than 2047 bytes of data at once in its constructor " +"or :meth:`.update` method." msgstr "" msgid "" -"Constructors for hash algorithms that are always present in this module are :" -"func:`md5`, :func:`sha1`, :func:`sha224`, :func:`sha256`, :func:`sha384`, :" -"func:`sha512`, :func:`sha3_224`, :func:`sha3_256`, :func:`sha3_384`, :func:" -"`sha3_512`, :func:`shake_128`, :func:`shake_256`, :func:`blake2b`, and :func:" -"`blake2s`. These correspond to :data:`algorithms_guaranteed`." +"Constructors for hash algorithms that are always present in this module " +"are :func:`md5`, :func:`sha1`, :func:`sha224`, :func:`sha256`, :func:`sha384`, :func:`sha512`, :func:`sha3_224`, :func:`sha3_256`, :func:`sha3_384`, :func:`sha3_512`, :func:`shake_128`, :func:`shake_256`, :func:`blake2b`, " +"and :func:`blake2s`. These correspond to :data:`algorithms_guaranteed`." msgstr "" msgid "" "Any of these may nonetheless be missing or blocked in unusual environments, " "such as a rare \"FIPS compliant\" build of Python or when OpenSSL's \"FIPS " "mode\" is configured to exclude some algorithms from its default provider. " -"Calling the constructor of an algorithm that is unavailable raises :exc:" -"`ValueError`." +"Calling the constructor of an algorithm that is unavailable " +"raises :exc:`ValueError`." msgstr "" msgid "" -"Additional algorithms may also be available if your Python distribution's :" -"mod:`!hashlib` was linked against a build of OpenSSL that provides others. " -"Others *are not guaranteed available* on all installations and will only be " -"accessible by name via :func:`new`. See :data:`algorithms_available`." +"Additional algorithms may also be available if your Python " +"distribution's :mod:`!hashlib` was linked against a build of OpenSSL that " +"provides others. Others *are not guaranteed available* on all installations " +"and will only be accessible by name via :func:`new`. " +"See :data:`algorithms_available`." msgstr "" msgid "" @@ -91,9 +91,9 @@ msgid "" msgstr "" msgid "" -"SHA3 (Keccak) and SHAKE constructors :func:`sha3_224`, :func:`sha3_256`, :" -"func:`sha3_384`, :func:`sha3_512`, :func:`shake_128`, :func:`shake_256` were " -"added. :func:`blake2b` and :func:`blake2s` were added." +"SHA3 (Keccak) and SHAKE " +"constructors :func:`sha3_224`, :func:`sha3_256`, :func:`sha3_384`, :func:`sha3_512`, :func:`shake_128`, :func:`shake_256` " +"were added. :func:`blake2b` and :func:`blake2s` were added." msgstr "" msgid "" @@ -135,8 +135,7 @@ msgid "" ">>> m.update(b\" the spammish repetition\")\n" ">>> m.digest()\n" "b'\\x03\\x1e\\xdd}Ae\\x15\\x93\\xc5\\xfe\\\\" -"\\x00o\\xa5u+7\\xfd\\xdf\\xf7\\xbcN\\x84:" -"\\xa6\\xaf\\x0c\\x95\\x0fK\\x94\\x06'\n" +"\\x00o\\xa5u+7\\xfd\\xdf\\xf7\\xbcN\\x84:\\xa6\\xaf\\x0c\\x95\\x0fK\\x94\\x06'\n" ">>> m.hexdigest()\n" "'031edd7d41651593c5fe5c006fa5752b37fddff7bc4e843aa6af0c950f4b9406'" msgstr "" @@ -177,8 +176,8 @@ msgstr "" msgid "" "A set containing the names of the hash algorithms that are available in the " -"running Python interpreter. These names will be recognized when passed to :" -"func:`new`. :attr:`algorithms_guaranteed` will always be a subset. The " +"running Python interpreter. These names will be recognized when passed " +"to :func:`new`. :attr:`algorithms_guaranteed` will always be a subset. The " "same algorithm may appear multiple times in this set under different names " "(thanks to OpenSSL)." msgstr "" @@ -278,15 +277,15 @@ msgid "" "*fileobj* must be a file-like object opened for reading in binary mode. It " "accepts file objects from builtin :func:`open`, :class:`~io.BytesIO` " "instances, SocketIO objects from :meth:`socket.socket.makefile`, and " -"similar. *fileobj* must be opened in blocking mode, otherwise a :exc:" -"`BlockingIOError` may be raised." +"similar. *fileobj* must be opened in blocking mode, otherwise " +"a :exc:`BlockingIOError` may be raised." msgstr "" msgid "" -"The function may bypass Python's I/O and use the file descriptor from :meth:" -"`~io.IOBase.fileno` directly. *fileobj* must be assumed to be in an unknown " -"state after this function returns or raises. It is up to the caller to close " -"*fileobj*." +"The function may bypass Python's I/O and use the file descriptor " +"from :meth:`~io.IOBase.fileno` directly. *fileobj* must be assumed to be in " +"an unknown state after this function returns or raises. It is up to the " +"caller to close *fileobj*." msgstr "" msgid "" @@ -544,10 +543,11 @@ msgstr "" msgid "" "To calculate hash of some data, you should first construct a hash object by " -"calling the appropriate constructor function (:func:`blake2b` or :func:" -"`blake2s`), then update it with the data by calling :meth:`~hash.update` on " -"the object, and, finally, get the digest out of the object by calling :meth:" -"`~hash.digest` (or :meth:`~hash.hexdigest` for hex-encoded string)." +"calling the appropriate constructor function (:func:`blake2b` " +"or :func:`blake2s`), then update it with the data by " +"calling :meth:`~hash.update` on the object, and, finally, get the digest out " +"of the object by calling :meth:`~hash.digest` (or :meth:`~hash.hexdigest` " +"for hex-encoded string)." msgstr "" msgid "" @@ -580,9 +580,9 @@ msgstr "" msgid "" "Keyed hashing can be used for authentication as a faster and simpler " -"replacement for `Hash-based message authentication code `_ (HMAC). BLAKE2 can be securely used in prefix-MAC " -"mode thanks to the indifferentiability property inherited from BLAKE." +"replacement for `Hash-based message authentication code `_ (HMAC). BLAKE2 can be securely used in prefix-" +"MAC mode thanks to the indifferentiability property inherited from BLAKE." msgstr "" msgid "" diff --git a/library/heapq.po b/library/heapq.po index d73945d..792e69f 100644 --- a/library/heapq.po +++ b/library/heapq.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -62,8 +62,8 @@ msgid "" "index for a node and the indexes for its children slightly less obvious, but " "is more suitable since Python uses zero-based indexing. (b) Textbooks often " "focus on max-heaps, due to their suitability for in-place sorting. Our " -"implementation favors min-heaps as they better correspond to Python :class:" -"`lists `." +"implementation favors min-heaps as they better correspond to " +"Python :class:`lists `." msgstr "" msgid "" @@ -85,8 +85,8 @@ msgstr "" msgid "" "To create a heap, use a list initialized as ``[]``, or transform an existing " -"list into a min-heap or max-heap using the :func:`heapify` or :func:" -"`heapify_max` functions, respectively." +"list into a min-heap or max-heap using the :func:`heapify` " +"or :func:`heapify_max` functions, respectively." msgstr "" msgid "The following functions are provided for min-heaps:" @@ -113,8 +113,8 @@ msgstr "" msgid "" "Pop and return the smallest item from the *heap*, and also push the new " -"*item*. The heap size doesn't change. If the heap is empty, :exc:" -"`IndexError` is raised." +"*item*. The heap size doesn't change. If the heap is " +"empty, :exc:`IndexError` is raised." msgstr "" msgid "" @@ -150,14 +150,14 @@ msgstr "" msgid "" "Push *item* on the max-heap *heap*, then pop and return the largest item " -"from *heap*. The combined action runs more efficiently than :func:" -"`heappush_max` followed by a separate call to :func:`heappop_max`." +"from *heap*. The combined action runs more efficiently " +"than :func:`heappush_max` followed by a separate call to :func:`heappop_max`." msgstr "" msgid "" "Pop and return the largest item from the max-heap *heap* and also push the " -"new *item*. The max-heap size doesn't change. If the max-heap is empty, :exc:" -"`IndexError` is raised." +"new *item*. The max-heap size doesn't change. If the max-heap is " +"empty, :exc:`IndexError` is raised." msgstr "" msgid "" @@ -212,16 +212,16 @@ msgid "" "Return a list with the *n* smallest elements from the dataset defined by " "*iterable*. *key*, if provided, specifies a function of one argument that " "is used to extract a comparison key from each element in *iterable* (for " -"example, ``key=str.lower``). Equivalent to: ``sorted(iterable, key=key)[:" -"n]``." +"example, ``key=str.lower``). Equivalent to: ``sorted(iterable, key=key)" +"[:n]``." msgstr "" msgid "" "The latter two functions perform best for smaller values of *n*. For larger " "values, it is more efficient to use the :func:`sorted` function. Also, when " -"``n==1``, it is more efficient to use the built-in :func:`min` and :func:" -"`max` functions. If repeated usage of these functions is required, consider " -"turning the iterable into an actual heap." +"``n==1``, it is more efficient to use the built-in :func:`min` " +"and :func:`max` functions. If repeated usage of these functions is " +"required, consider turning the iterable into an actual heap." msgstr "" msgid "Basic Examples" diff --git a/library/hmac.po b/library/hmac.po index a65d7e4..cf85246 100644 --- a/library/hmac.po +++ b/library/hmac.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,8 +58,8 @@ msgid "" "Return digest of *msg* for given secret *key* and *digest*. The function is " "equivalent to ``HMAC(key, msg, digest).digest()``, but uses an optimized C " "or inline implementation, which is faster for messages that fit into memory. " -"The parameters *key*, *msg*, and *digest* have the same meaning as in :func:" -"`~hmac.new`." +"The parameters *key*, *msg*, and *digest* have the same meaning as " +"in :func:`~hmac.new`." msgstr "" msgid "" @@ -69,8 +73,8 @@ msgstr "" msgid "" "Update the hmac object with *msg*. Repeated calls are equivalent to a " -"single call with the concatenation of all the arguments: ``m.update(a); m." -"update(b)`` is equivalent to ``m.update(a + b)``." +"single call with the concatenation of all the arguments: ``m.update(a); " +"m.update(b)`` is equivalent to ``m.update(a + b)``." msgstr "" msgid "Parameter *msg* can be of any type supported by :mod:`hashlib`." @@ -85,9 +89,9 @@ msgstr "" msgid "" "When comparing the output of :meth:`digest` to an externally supplied digest " -"during a verification routine, it is recommended to use the :func:" -"`compare_digest` function instead of the ``==`` operator to reduce the " -"vulnerability to timing attacks." +"during a verification routine, it is recommended to use " +"the :func:`compare_digest` function instead of the ``==`` operator to reduce " +"the vulnerability to timing attacks." msgstr "" msgid "" @@ -98,9 +102,9 @@ msgstr "" msgid "" "When comparing the output of :meth:`hexdigest` to an externally supplied " -"digest during a verification routine, it is recommended to use the :func:" -"`compare_digest` function instead of the ``==`` operator to reduce the " -"vulnerability to timing attacks." +"digest during a verification routine, it is recommended to use " +"the :func:`compare_digest` function instead of the ``==`` operator to reduce " +"the vulnerability to timing attacks." msgstr "" msgid "" @@ -133,8 +137,8 @@ msgid "" "Return ``a == b``. This function uses an approach designed to prevent " "timing analysis by avoiding content-based short circuiting behaviour, making " "it appropriate for cryptography. *a* and *b* must both be of the same type: " -"either :class:`str` (ASCII only, as e.g. returned by :meth:`HMAC." -"hexdigest`), or a :term:`bytes-like object`." +"either :class:`str` (ASCII only, as e.g. returned " +"by :meth:`HMAC.hexdigest`), or a :term:`bytes-like object`." msgstr "" msgid "" diff --git a/library/html.entities.po b/library/html.entities.po index 221a1a1..18de11f 100644 --- a/library/html.entities.po +++ b/library/html.entities.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,8 +29,9 @@ msgid "**Source code:** :source:`Lib/html/entities.py`" msgstr "" msgid "" -"This module defines four dictionaries, :data:`html5`, :data:" -"`name2codepoint`, :data:`codepoint2name`, and :data:`entitydefs`." +"This module defines four " +"dictionaries, :data:`html5`, :data:`name2codepoint`, :data:`codepoint2name`, " +"and :data:`entitydefs`." msgstr "" msgid "" @@ -38,8 +39,8 @@ msgid "" "equivalent Unicode character(s), e.g. ``html5['gt;'] == '>'``. Note that the " "trailing semicolon is included in the name (e.g. ``'gt;'``), however some of " "the names are accepted by the standard even without the semicolon: in this " -"case the name is present with and without the ``';'``. See also :func:`html." -"unescape`." +"case the name is present with and without the ``';'``. See " +"also :func:`html.unescape`." msgstr "" msgid "" diff --git a/library/html.parser.po b/library/html.parser.po index 4d292d1..6a697c6 100644 --- a/library/html.parser.po +++ b/library/html.parser.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -71,9 +71,9 @@ msgid "Example HTML Parser Application" msgstr "" msgid "" -"As a basic example, below is a simple HTML parser that uses the :class:" -"`HTMLParser` class to print out start tags, end tags, and data as they are " -"encountered:" +"As a basic example, below is a simple HTML parser that uses " +"the :class:`HTMLParser` class to print out start tags, end tags, and data as " +"they are encountered:" msgstr "" msgid "" @@ -120,8 +120,8 @@ msgstr "" msgid "" "Feed some text to the parser. It is processed insofar as it consists of " -"complete elements; incomplete data is buffered until more data is fed or :" -"meth:`close` is called. *data* must be :class:`str`." +"complete elements; incomplete data is buffered until more data is fed " +"or :meth:`close` is called. *data* must be :class:`str`." msgstr "" msgid "" @@ -149,8 +149,8 @@ msgstr "" msgid "" "The following methods are called when data or markup elements are " "encountered and they are meant to be overridden in a subclass. The base " -"class implementations do nothing (except for :meth:`~HTMLParser." -"handle_startendtag`):" +"class implementations do nothing (except " +"for :meth:`~HTMLParser.handle_startendtag`):" msgstr "" msgid "" @@ -169,8 +169,8 @@ msgstr "" msgid "" "For instance, for the tag ````, this method " -"would be called as ``handle_starttag('a', [('href', 'https://www.cwi." -"nl/')])``." +"would be called as ``handle_starttag('a', [('href', 'https://" +"www.cwi.nl/')])``." msgstr "" msgid "" @@ -189,8 +189,8 @@ msgid "" "Similar to :meth:`handle_starttag`, but called when the parser encounters an " "XHTML-style empty tag (````). This method may be overridden by " "subclasses which require this particular lexical information; the default " -"implementation simply calls :meth:`handle_starttag` and :meth:" -"`handle_endtag`." +"implementation simply calls :meth:`handle_starttag` " +"and :meth:`handle_endtag`." msgstr "" msgid "" @@ -313,8 +313,8 @@ msgstr "" msgid "" ">>> parser.feed('')\n" -"Decl : DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3." -"org/TR/html4/strict.dtd\"" +"Decl : DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://" +"www.w3.org/TR/html4/strict.dtd\"" msgstr "" msgid "Parsing an element with a few attributes and a title:" @@ -397,8 +397,8 @@ msgid "" msgstr "" msgid "" -"Feeding incomplete chunks to :meth:`~HTMLParser.feed` works, but :meth:" -"`~HTMLParser.handle_data` might be called more than once if " +"Feeding incomplete chunks to :meth:`~HTMLParser.feed` works, " +"but :meth:`~HTMLParser.handle_data` might be called more than once if " "*convert_charrefs* is false:" msgstr "" diff --git a/library/html.po b/library/html.po index a2a5dc0..4e76104 100644 --- a/library/html.po +++ b/library/html.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,11 +38,11 @@ msgid "" msgstr "" msgid "" -"Convert all named and numeric character references (e.g. ``>``, ``>" -"``, ``>``) in the string *s* to the corresponding Unicode characters. " -"This function uses the rules defined by the HTML 5 standard for both valid " -"and invalid character references, and the :data:`list of HTML 5 named " -"character references `." +"Convert all named and numeric character references (e.g. ``>``, " +"``>``, ``>``) in the string *s* to the corresponding Unicode " +"characters. This function uses the rules defined by the HTML 5 standard for " +"both valid and invalid character references, and the :data:`list of HTML 5 " +"named character references `." msgstr "" msgid "Submodules in the ``html`` package are:" diff --git a/library/http.client.po b/library/http.client.po index 7d5b68c..41fbf7b 100644 --- a/library/http.client.po +++ b/library/http.client.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,8 +30,8 @@ msgstr "" msgid "" "This module defines classes that implement the client side of the HTTP and " -"HTTPS protocols. It is normally not used directly --- the module :mod:" -"`urllib.request` uses it to handle URLs that use HTTP and HTTPS." +"HTTPS protocols. It is normally not used directly --- the " +"module :mod:`urllib.request` uses it to handle URLs that use HTTP and HTTPS." msgstr "" msgid "" @@ -111,8 +111,8 @@ msgid "*source_address*, *context* and *check_hostname* were added." msgstr "" msgid "" -"This class now supports HTTPS virtual hosts if possible (that is, if :const:" -"`ssl.HAS_SNI` is true)." +"This class now supports HTTPS virtual hosts if possible (that is, " +"if :const:`ssl.HAS_SNI` is true)." msgstr "" msgid "" @@ -122,8 +122,8 @@ msgstr "" msgid "" "This class now performs all the necessary certificate and hostname checks by " -"default. To revert to the previous, unverified, behavior :func:`!ssl." -"_create_unverified_context` can be passed to the *context* parameter." +"default. To revert to the previous, unverified, behavior :func:`!" +"ssl._create_unverified_context` can be passed to the *context* parameter." msgstr "" msgid "" @@ -134,8 +134,8 @@ msgstr "" msgid "" "This class now sends an ALPN extension with protocol indicator ``http/1.1`` " -"when no *context* is given. Custom *context* should set ALPN protocols with :" -"meth:`~ssl.SSLContext.set_alpn_protocols`." +"when no *context* is given. Custom *context* should set ALPN protocols " +"with :meth:`~ssl.SSLContext.set_alpn_protocols`." msgstr "" msgid "" @@ -164,9 +164,10 @@ msgstr "" msgid "" "This function returns an instance of :class:`http.client.HTTPMessage` that " -"holds the header fields, but no payload (the same as :attr:`HTTPResponse." -"msg` and :attr:`http.server.BaseHTTPRequestHandler.headers`). After " -"returning, the file pointer *fp* is ready to read the HTTP body." +"holds the header fields, but no payload (the same " +"as :attr:`HTTPResponse.msg` " +"and :attr:`http.server.BaseHTTPRequestHandler.headers`). After returning, " +"the file pointer *fp* is ready to read the HTTP body." msgstr "" msgid "" @@ -180,8 +181,8 @@ msgid "The following exceptions are raised as appropriate:" msgstr "" msgid "" -"The base class of the other exceptions in this module. It is a subclass of :" -"exc:`Exception`." +"The base class of the other exceptions in this module. It is a subclass " +"of :exc:`Exception`." msgstr "" msgid "A subclass of :exc:`HTTPException`." @@ -252,16 +253,16 @@ msgstr "" msgid "" "If *body* is specified, the specified data is sent after the headers are " -"finished. It may be a :class:`str`, a :term:`bytes-like object`, an open :" -"term:`file object`, or an iterable of :class:`bytes`. If *body* is a " +"finished. It may be a :class:`str`, a :term:`bytes-like object`, an " +"open :term:`file object`, or an iterable of :class:`bytes`. If *body* is a " "string, it is encoded as ISO-8859-1, the default for HTTP. If it is a bytes-" "like object, the bytes are sent as is. If it is a :term:`file object`, the " "contents of the file is sent; this file object should support at least the " -"``read()`` method. If the file object is an instance of :class:`io." -"TextIOBase`, the data returned by the ``read()`` method will be encoded as " -"ISO-8859-1, otherwise the data returned by ``read()`` is sent as is. If " -"*body* is an iterable, the elements of the iterable are sent as is until the " -"iterable is exhausted." +"``read()`` method. If the file object is an instance " +"of :class:`io.TextIOBase`, the data returned by the ``read()`` method will " +"be encoded as ISO-8859-1, otherwise the data returned by ``read()`` is sent " +"as is. If *body* is an iterable, the elements of the iterable are sent as " +"is until the iterable is :term:`exhausted`." msgstr "" msgid "" @@ -313,9 +314,9 @@ msgid "" msgstr "" msgid "" -"Note that you must have read the whole response or call :meth:`close` if :" -"meth:`getresponse` raised an non-:exc:`ConnectionError` exception before you " -"can send a new request to the server." +"Note that you must have read the whole response or call :meth:`close` " +"if :meth:`getresponse` raised an non-:exc:`ConnectionError` exception before " +"you can send a new request to the server." msgstr "" msgid "*body* can now be an iterable." @@ -334,9 +335,9 @@ msgid "" msgstr "" msgid "" -"If a :exc:`ConnectionError` or subclass is raised, the :class:" -"`HTTPConnection` object will be ready to reconnect when a new request is " -"sent." +"If a :exc:`ConnectionError` or subclass is raised, " +"the :class:`HTTPConnection` object will be ready to reconnect when a new " +"request is sent." msgstr "" msgid "" @@ -365,7 +366,8 @@ msgstr "" msgid "" "The *headers* argument should be a mapping of extra HTTP headers to send " -"with the CONNECT request." +"with the CONNECT request. Non-string header values are converted to strings " +"via :func:`str`." msgstr "" msgid "" @@ -462,11 +464,11 @@ msgid "" "*message_body* will be chunk-encoded as specified in :rfc:`7230`, Section " "3.3.1. How the data is encoded is dependent on the type of *message_body*. " "If *message_body* implements the :ref:`buffer interface ` the " -"encoding will result in a single chunk. If *message_body* is a :class:" -"`collections.abc.Iterable`, each iteration of *message_body* will result in " -"a chunk. If *message_body* is a :term:`file object`, each call to ``." -"read()`` will result in a chunk. The method automatically signals the end of " -"the chunk-encoded data immediately after *message_body*." +"encoding will result in a single chunk. If *message_body* is " +"a :class:`collections.abc.Iterable`, each iteration of *message_body* will " +"result in a chunk. If *message_body* is a :term:`file object`, each call to " +"``.read()`` will result in a chunk. The method automatically signals the end " +"of the chunk-encoded data immediately after *message_body*." msgstr "" msgid "" @@ -480,8 +482,9 @@ msgid "Added chunked encoding support and the *encode_chunked* parameter." msgstr "" msgid "" -"Send data to the server. This should be used directly only after the :meth:" -"`endheaders` method has been called and before :meth:`getresponse` is called." +"Send data to the server. This should be used directly only after " +"the :meth:`endheaders` method has been called and before :meth:`getresponse` " +"is called." msgstr "" msgid "" @@ -526,8 +529,8 @@ msgstr "" msgid "" "A :class:`http.client.HTTPMessage` instance containing the response " -"headers. :class:`http.client.HTTPMessage` is a subclass of :class:`email." -"message.Message`." +"headers. :class:`http.client.HTTPMessage` is a subclass " +"of :class:`email.message.Message`." msgstr "" msgid "" @@ -540,8 +543,8 @@ msgid "" msgstr "" msgid "" -"Headers of the response in the form of an :class:`email.message." -"EmailMessage` instance." +"Headers of the response in the form of " +"an :class:`email.message.EmailMessage` instance." msgstr "" msgid "Status code returned by server." @@ -633,8 +636,8 @@ msgid "" "302 Found\n" ">>> data = response.read()\n" ">>> data\n" -"b'Redirecting to https://bugs." -"python.org/issue12524'\n" +"b'Redirecting to https://" +"bugs.python.org/issue12524'\n" ">>> conn.close()" msgstr "" diff --git a/library/http.cookiejar.po b/library/http.cookiejar.po index c5914f3..917a979 100644 --- a/library/http.cookiejar.po +++ b/library/http.cookiejar.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,11 +37,11 @@ msgid "" msgstr "" msgid "" -"Both the regular Netscape cookie protocol and the protocol defined by :rfc:" -"`2965` are handled. RFC 2965 handling is switched off by default. :rfc:" -"`2109` cookies are parsed as Netscape cookies and subsequently treated " -"either as Netscape or RFC 2965 cookies according to the 'policy' in effect. " -"Note that the great majority of cookies on the internet are Netscape " +"Both the regular Netscape cookie protocol and the protocol defined " +"by :rfc:`2965` are handled. RFC 2965 handling is switched off by " +"default. :rfc:`2109` cookies are parsed as Netscape cookies and subsequently " +"treated either as Netscape or RFC 2965 cookies according to the 'policy' in " +"effect. Note that the great majority of cookies on the internet are Netscape " "cookies. :mod:`!http.cookiejar` attempts to follow the de-facto Netscape " "cookie protocol (which differs substantially from that set out in the " "original Netscape specification), including taking note of the ``max-age`` " @@ -49,11 +49,11 @@ msgid "" msgstr "" msgid "" -"The various named parameters found in :mailheader:`Set-Cookie` and :" -"mailheader:`Set-Cookie2` headers (for example, ``domain`` and ``expires``) " -"are conventionally referred to as :dfn:`attributes`. To distinguish them " -"from Python attributes, the documentation for this module uses the term :dfn:" -"`cookie-attribute` instead." +"The various named parameters found in :mailheader:`Set-Cookie` " +"and :mailheader:`Set-Cookie2` headers (for example, ``domain`` and " +"``expires``) are conventionally referred to as :dfn:`attributes`. To " +"distinguish them from Python attributes, the documentation for this module " +"uses the term :dfn:`cookie-attribute` instead." msgstr "" msgid "The module defines the following exception:" @@ -114,8 +114,8 @@ msgid "" "sequence of the only domains for which we accept and return cookies. " "*secure_protocols* is a sequence of protocols for which secure cookies can " "be added to. By default *https* and *wss* (secure websocket) are considered " -"secure protocols. For all other arguments, see the documentation for :class:" -"`CookiePolicy` and :class:`DefaultCookiePolicy` objects." +"secure protocols. For all other arguments, see the documentation " +"for :class:`CookiePolicy` and :class:`DefaultCookiePolicy` objects." msgstr "" msgid "" @@ -132,9 +132,9 @@ msgstr "" msgid "" "This class represents Netscape, :rfc:`2109` and :rfc:`2965` cookies. It is " -"not expected that users of :mod:`!http.cookiejar` construct their own :class:" -"`Cookie` instances. Instead, if necessary, call :meth:`~CookieJar." -"make_cookies` on a :class:`CookieJar` instance." +"not expected that users of :mod:`!http.cookiejar` construct their " +"own :class:`Cookie` instances. Instead, if necessary, " +"call :meth:`~CookieJar.make_cookies` on a :class:`CookieJar` instance." msgstr "" msgid "Module :mod:`urllib.request`" @@ -199,21 +199,21 @@ msgid "Add correct :mailheader:`Cookie` header to *request*." msgstr "" msgid "" -"If policy allows (that is, the :attr:`~CookiePolicy.rfc2965` and :attr:" -"`~CookiePolicy.hide_cookie2` attributes of the :class:`CookieJar`'s :class:" -"`CookiePolicy` instance are true and false respectively), the :mailheader:" -"`Cookie2` header is also added when appropriate." +"If policy allows (that is, the :attr:`~CookiePolicy.rfc2965` " +"and :attr:`~CookiePolicy.hide_cookie2` attributes of " +"the :class:`CookieJar`'s :class:`CookiePolicy` instance are true and false " +"respectively), the :mailheader:`Cookie2` header is also added when " +"appropriate." msgstr "" msgid "" "The *request* object (usually a :class:`urllib.request.Request` instance) " -"must support the methods :meth:`~urllib.request.Request.get_full_url`, :meth:" -"`~urllib.request.Request.has_header`, :meth:`~urllib.request.Request." -"get_header`, :meth:`~urllib.request.Request.header_items`, :meth:`~urllib." -"request.Request.add_unredirected_header` and the attributes :attr:`~urllib." -"request.Request.host`, :attr:`~urllib.request.Request.type`, :attr:`~urllib." -"request.Request.unverifiable` and :attr:`~urllib.request.Request." -"origin_req_host` as documented by :mod:`urllib.request`." +"must support the " +"methods :meth:`~urllib.request.Request.get_full_url`, :meth:`~urllib.request.Request.has_header`, :meth:`~urllib.request.Request.get_header`, :meth:`~urllib.request.Request.header_items`, :meth:`~urllib.request.Request.add_unredirected_header` " +"and the " +"attributes :attr:`~urllib.request.Request.host`, :attr:`~urllib.request.Request.type`, :attr:`~urllib.request.Request.unverifiable` " +"and :attr:`~urllib.request.Request.origin_req_host` as documented " +"by :mod:`urllib.request`." msgstr "" msgid "" @@ -223,31 +223,32 @@ msgid "" msgstr "" msgid "" -"Extract cookies from HTTP *response* and store them in the :class:" -"`CookieJar`, where allowed by policy." +"Extract cookies from HTTP *response* and store them in " +"the :class:`CookieJar`, where allowed by policy." msgstr "" msgid "" -"The :class:`CookieJar` will look for allowable :mailheader:`Set-Cookie` and :" -"mailheader:`Set-Cookie2` headers in the *response* argument, and store " +"The :class:`CookieJar` will look for allowable :mailheader:`Set-Cookie` " +"and :mailheader:`Set-Cookie2` headers in the *response* argument, and store " "cookies as appropriate (subject to the :meth:`CookiePolicy.set_ok` method's " "approval)." msgstr "" msgid "" -"The *response* object (usually the result of a call to :meth:`urllib.request." -"urlopen`, or similar) should support an :meth:`~http.client.HTTPResponse." -"info` method, which returns an :class:`email.message.Message` instance." +"The *response* object (usually the result of a call " +"to :meth:`urllib.request.urlopen`, or similar) should support " +"an :meth:`~http.client.HTTPResponse.info` method, which returns " +"an :class:`email.message.Message` instance." msgstr "" msgid "" "The *request* object (usually a :class:`urllib.request.Request` instance) " "must support the method :meth:`~urllib.request.Request.get_full_url` and the " -"attributes :attr:`~urllib.request.Request.host`, :attr:`~urllib.request." -"Request.unverifiable` and :attr:`~urllib.request.Request.origin_req_host`, " -"as documented by :mod:`urllib.request`. The request is used to set default " -"values for cookie-attributes as well as for checking that the cookie is " -"allowed to be set." +"attributes :attr:`~urllib.request.Request.host`, :attr:`~urllib.request.Request.unverifiable` " +"and :attr:`~urllib.request.Request.origin_req_host`, as documented " +"by :mod:`urllib.request`. The request is used to set default values for " +"cookie-attributes as well as for checking that the cookie is allowed to be " +"set." msgstr "" msgid "Set the :class:`CookiePolicy` instance to be used." @@ -314,8 +315,9 @@ msgstr "" msgid "" "*filename* is the name of file in which to save cookies. If *filename* is " "not specified, :attr:`self.filename ` is used (whose " -"default is the value passed to the constructor, if any); if :attr:`self." -"filename ` is ``None``, :exc:`ValueError` is raised." +"default is the value passed to the constructor, if any); " +"if :attr:`self.filename ` is " +"``None``, :exc:`ValueError` is raised." msgstr "" msgid "" @@ -325,8 +327,8 @@ msgstr "" msgid "" "The file is overwritten if it already exists, thus wiping all the cookies it " -"contains. Saved cookies can be restored later using the :meth:`load` or :" -"meth:`revert` methods." +"contains. Saved cookies can be restored later using the :meth:`load` " +"or :meth:`revert` methods." msgstr "" msgid "Load cookies from a file." @@ -339,9 +341,9 @@ msgid "Arguments are as for :meth:`save`." msgstr "" msgid "" -"The named file must be in the format understood by the class, or :exc:" -"`LoadError` will be raised. Also, :exc:`OSError` may be raised, for example " -"if the file does not exist." +"The named file must be in the format understood by the class, " +"or :exc:`LoadError` will be raised. Also, :exc:`OSError` may be raised, for " +"example if the file does not exist." msgstr "" msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." @@ -423,8 +425,8 @@ msgstr "" msgid "" "*cookie* is a :class:`Cookie` instance. *request* is an object implementing " -"the interface defined by the documentation for :meth:`CookieJar." -"extract_cookies`." +"the interface defined by the documentation " +"for :meth:`CookieJar.extract_cookies`." msgstr "" msgid "" @@ -433,8 +435,8 @@ msgstr "" msgid "" "*cookie* is a :class:`Cookie` instance. *request* is an object implementing " -"the interface defined by the documentation for :meth:`CookieJar." -"add_cookie_header`." +"the interface defined by the documentation " +"for :meth:`CookieJar.add_cookie_header`." msgstr "" msgid "" @@ -449,12 +451,13 @@ msgid "" msgstr "" msgid "" -"If :meth:`domain_return_ok` returns true for the cookie domain, :meth:" -"`path_return_ok` is called for the cookie path. Otherwise, :meth:" -"`path_return_ok` and :meth:`return_ok` are never called for that cookie " -"domain. If :meth:`path_return_ok` returns true, :meth:`return_ok` is called " -"with the :class:`Cookie` object itself for a full check. Otherwise, :meth:" -"`return_ok` is never called for that cookie path." +"If :meth:`domain_return_ok` returns true for the cookie " +"domain, :meth:`path_return_ok` is called for the cookie path. " +"Otherwise, :meth:`path_return_ok` and :meth:`return_ok` are never called for " +"that cookie domain. If :meth:`path_return_ok` returns " +"true, :meth:`return_ok` is called with the :class:`Cookie` object itself for " +"a full check. Otherwise, :meth:`return_ok` is never called for that cookie " +"path." msgstr "" msgid "" @@ -474,10 +477,10 @@ msgid "See the documentation for :meth:`domain_return_ok`." msgstr "" msgid "" -"In addition to implementing the methods above, implementations of the :class:" -"`CookiePolicy` interface must also supply the following attributes, " -"indicating which protocols should be used, and how. All of these attributes " -"may be assigned to." +"In addition to implementing the methods above, implementations of " +"the :class:`CookiePolicy` interface must also supply the following " +"attributes, indicating which protocols should be used, and how. All of " +"these attributes may be assigned to." msgstr "" msgid "Implement Netscape protocol." @@ -540,10 +543,11 @@ msgid "" "A domain blocklist and allowlist is provided (both off by default). Only " "domains not in the blocklist and present in the allowlist (if the allowlist " "is active) participate in cookie setting and returning. Use the " -"*blocked_domains* constructor argument, and :meth:`~DefaultCookiePolicy." -"blocked_domains` and :meth:`~DefaultCookiePolicy.set_blocked_domains` " -"methods (and the corresponding argument and methods for *allowed_domains*). " -"If you set an allowlist, you can turn it off again by setting it to ``None``." +"*blocked_domains* constructor argument, " +"and :meth:`~DefaultCookiePolicy.blocked_domains` " +"and :meth:`~DefaultCookiePolicy.set_blocked_domains` methods (and the " +"corresponding argument and methods for *allowed_domains*). If you set an " +"allowlist, you can turn it off again by setting it to ``None``." msgstr "" msgid "" @@ -551,11 +555,12 @@ msgid "" "cookie domain to be matched. For example, ``\"example.com\"`` matches a " "blocklist entry of ``\"example.com\"``, but ``\"www.example.com\"`` does " "not. Domains that do start with a dot are matched by more specific domains " -"too. For example, both ``\"www.example.com\"`` and ``\"www.coyote.example." -"com\"`` match ``\".example.com\"`` (but ``\"example.com\"`` itself does " -"not). IP addresses are an exception, and must match exactly. For example, " -"if blocked_domains contains ``\"192.168.1.2\"`` and ``\".168.1.2\"``, " -"192.168.1.2 is blocked, but 193.168.1.2 is not." +"too. For example, both ``\"www.example.com\"`` and " +"``\"www.coyote.example.com\"`` match ``\".example.com\"`` (but " +"``\"example.com\"`` itself does not). IP addresses are an exception, and " +"must match exactly. For example, if blocked_domains contains " +"``\"192.168.1.2\"`` and ``\".168.1.2\"``, 192.168.1.2 is blocked, but " +"193.168.1.2 is not." msgstr "" msgid "" @@ -595,9 +600,9 @@ msgid "" "cookies (that is, cookies received in a :mailheader:`Set-Cookie` header with " "a version cookie-attribute of 1) to Netscape cookies by setting the version " "attribute of the :class:`Cookie` instance to 0. The default value is " -"``None``, in which case RFC 2109 cookies are downgraded if and only if :rfc:" -"`2965` handling is turned off. Therefore, RFC 2109 cookies are downgraded " -"by default." +"``None``, in which case RFC 2109 cookies are downgraded if and only " +"if :rfc:`2965` handling is turned off. Therefore, RFC 2109 cookies are " +"downgraded by default." msgstr "" msgid "General strictness switches:" @@ -721,8 +726,8 @@ msgid "``True`` if cookie should only be returned over a secure connection." msgstr "" msgid "" -"Integer expiry date in seconds since epoch, or ``None``. See also the :meth:" -"`is_expired` method." +"Integer expiry date in seconds since epoch, or ``None``. See also " +"the :meth:`is_expired` method." msgstr "" msgid "``True`` if this is a session cookie." @@ -794,8 +799,8 @@ msgstr "" msgid "" "import http.cookiejar, urllib.request\n" "cj = http.cookiejar.CookieJar()\n" -"opener = urllib.request.build_opener(urllib.request." -"HTTPCookieProcessor(cj))\n" +"opener = " +"urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))\n" "r = opener.open(\"http://example.com/\")" msgstr "" @@ -808,10 +813,10 @@ msgstr "" msgid "" "import os, http.cookiejar, urllib.request\n" "cj = http.cookiejar.MozillaCookieJar()\n" -"cj.load(os.path.join(os.path.expanduser(\"~\"), \".netscape\", \"cookies." -"txt\"))\n" -"opener = urllib.request.build_opener(urllib.request." -"HTTPCookieProcessor(cj))\n" +"cj.load(os.path.join(os.path.expanduser(\"~\"), \".netscape\", " +"\"cookies.txt\"))\n" +"opener = " +"urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))\n" "r = opener.open(\"http://example.com/\")" msgstr "" @@ -826,10 +831,10 @@ msgid "" "import urllib.request\n" "from http.cookiejar import CookieJar, DefaultCookiePolicy\n" "policy = DefaultCookiePolicy(\n" -" rfc2965=True, strict_ns_domain=Policy.DomainStrict,\n" +" rfc2965=True, strict_ns_domain=DefaultCookiePolicy.DomainStrict,\n" " blocked_domains=[\"ads.net\", \".ads.net\"])\n" "cj = CookieJar(policy)\n" -"opener = urllib.request.build_opener(urllib.request." -"HTTPCookieProcessor(cj))\n" +"opener = " +"urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))\n" "r = opener.open(\"http://example.com/\")" msgstr "" diff --git a/library/http.cookies.po b/library/http.cookies.po index 2418631..abe0e98 100644 --- a/library/http.cookies.po +++ b/library/http.cookies.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,12 +36,12 @@ msgid "" msgstr "" msgid "" -"The module formerly strictly applied the parsing rules described in the :rfc:" -"`2109` and :rfc:`2068` specifications. It has since been discovered that " -"MSIE 3.0x didn't follow the character rules outlined in those specs; many " -"current-day browsers and servers have also relaxed parsing rules when it " -"comes to cookie handling. As a result, this module now uses parsing rules " -"that are a bit less strict than they once were." +"The module formerly strictly applied the parsing rules described in " +"the :rfc:`2109` and :rfc:`2068` specifications. It has since been " +"discovered that MSIE 3.0x didn't follow the character rules outlined in " +"those specs; many current-day browsers and servers have also relaxed parsing " +"rules when it comes to cookie handling. As a result, this module now uses " +"parsing rules that are a bit less strict than they once were." msgstr "" msgid "" @@ -71,19 +75,20 @@ msgid "If *input* is given, it is passed to the :meth:`load` method." msgstr "" msgid "" -"This class derives from :class:`BaseCookie` and overrides :meth:`~BaseCookie." -"value_decode` and :meth:`~BaseCookie.value_encode`. :class:`!SimpleCookie` " -"supports strings as cookie values. When setting the value, :class:`!" -"SimpleCookie` calls the builtin :func:`str` to convert the value to a " -"string. Values received from HTTP are kept as strings." +"This class derives from :class:`BaseCookie` and " +"overrides :meth:`~BaseCookie.value_decode` " +"and :meth:`~BaseCookie.value_encode`. :class:`!SimpleCookie` supports " +"strings as cookie values. When setting the value, :class:`!SimpleCookie` " +"calls the builtin :func:`str` to convert the value to a string. Values " +"received from HTTP are kept as strings." msgstr "" msgid "Module :mod:`http.cookiejar`" msgstr "" msgid "" -"HTTP cookie handling for web *clients*. The :mod:`http.cookiejar` and :mod:" -"`!http.cookies` modules do not depend on each other." +"HTTP cookie handling for web *clients*. The :mod:`http.cookiejar` " +"and :mod:`!http.cookies` modules do not depend on each other." msgstr "" msgid ":rfc:`2109` - HTTP State Management Mechanism" @@ -97,8 +102,8 @@ msgstr "" msgid "" "Return a tuple ``(real_value, coded_value)`` from a string representation. " -"``real_value`` can be any type. This method does no decoding in :class:" -"`BaseCookie` --- it exists so it can be overridden." +"``real_value`` can be any type. This method does no decoding " +"in :class:`BaseCookie` --- it exists so it can be overridden." msgstr "" msgid "" @@ -108,8 +113,8 @@ msgid "" msgstr "" msgid "" -"In general, it should be the case that :meth:`value_encode` and :meth:" -"`value_decode` are inverses on the range of *value_decode*." +"In general, it should be the case that :meth:`value_encode` " +"and :meth:`value_decode` are inverses on the range of *value_decode*." msgstr "" msgid "" @@ -129,8 +134,8 @@ msgstr "" msgid "" "This method generates a JavaScript snippet to set cookies in the browser, " -"which is no longer considered a standard or recommended approach. Use :meth:" -"`~http.cookies.BaseCookie.output` instead to generate HTTP headers." +"which is no longer considered a standard or recommended approach. " +"Use :meth:`~http.cookies.BaseCookie.output` instead to generate HTTP headers." msgstr "" msgid "" @@ -193,8 +198,9 @@ msgid "" msgstr "" msgid "" -"Attributes :attr:`~Morsel.key`, :attr:`~Morsel.value` and :attr:`~Morsel." -"coded_value` are read-only. Use :meth:`~Morsel.set` for setting them." +"Attributes :attr:`~Morsel.key`, :attr:`~Morsel.value` " +"and :attr:`~Morsel.coded_value` are read-only. Use :meth:`~Morsel.set` for " +"setting them." msgstr "" msgid "Added support for the :attr:`samesite` attribute." @@ -232,8 +238,8 @@ msgstr "" msgid "" "This method generates a JavaScript snippet to set cookies in the browser, " -"which is no longer considered a standard or recommended approach. Use :meth:" -"`~http.cookies.Morsel.output` instead to generate HTTP headers." +"which is no longer considered a standard or recommended approach. " +"Use :meth:`~http.cookies.Morsel.output` instead to generate HTTP headers." msgstr "" msgid "" diff --git a/library/http.po b/library/http.po index 45b7028..447d7f0 100644 --- a/library/http.po +++ b/library/http.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +39,8 @@ msgid "" msgstr "" msgid "" -":mod:`http.server` contains basic HTTP server classes based on :mod:" -"`socketserver`" +":mod:`http.server` contains basic HTTP server classes based " +"on :mod:`socketserver`" msgstr "" msgid "" @@ -85,8 +85,8 @@ msgstr "" msgid "" "Supported, `IANA-registered status codes `_ available in :class:`http." -"HTTPStatus` are:" +"http-status-codes/http-status-codes.xhtml>`_ available " +"in :class:`http.HTTPStatus` are:" msgstr "" msgid "Code" diff --git a/library/http.server.po b/library/http.server.po index d0af2dc..13e524b 100644 --- a/library/http.server.po +++ b/library/http.server.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,8 +33,8 @@ msgid "This module defines classes for implementing HTTP servers." msgstr "" msgid "" -":mod:`!http.server` is not recommended for production. It only implements :" -"ref:`basic security checks `." +":mod:`!http.server` is not recommended for production. It only " +"implements :ref:`basic security checks `." msgstr "" msgid "Availability" @@ -59,10 +60,10 @@ msgstr "" msgid "" "This class builds on the :class:`~socketserver.TCPServer` class by storing " -"the server address as instance variables named :attr:`server_name` and :attr:" -"`server_port`. The server is accessible by the handler, typically through " -"the handler's :attr:`~socketserver.BaseRequestHandler.server` instance " -"variable." +"the server address as instance variables named :attr:`server_name` " +"and :attr:`server_port`. The server is accessible by the handler, typically " +"through the handler's :attr:`~socketserver.BaseRequestHandler.server` " +"instance variable." msgstr "" msgid "The HTTP server's fully qualified domain name." @@ -159,9 +160,9 @@ msgstr "" msgid "" "Contains the string representation of the HTTP request line. The terminating " -"CRLF is stripped. This attribute should be set by :meth:" -"`handle_one_request`. If no valid request line was processed, it should be " -"set to the empty string." +"CRLF is stripped. This attribute should be set " +"by :meth:`handle_one_request`. If no valid request line was processed, it " +"should be set to the empty string." msgstr "" msgid "Contains the command (request type). For example, ``'GET'``." @@ -209,9 +210,9 @@ msgid "" msgstr "" msgid "" -"Contains the Python system version, in a form usable by the :attr:" -"`version_string` method and the :attr:`server_version` class variable. For " -"example, ``'Python/1.4'``." +"Contains the Python system version, in a form usable by " +"the :attr:`version_string` method and the :attr:`server_version` class " +"variable. For example, ``'Python/1.4'``." msgstr "" msgid "" @@ -238,8 +239,8 @@ msgstr "" msgid "" "Specifies an :class:`email.message.Message`\\ -like class to parse HTTP " -"headers. Typically, this is not overridden, and it defaults to :class:`http." -"client.HTTPMessage`." +"headers. Typically, this is not overridden, and it defaults " +"to :class:`http.client.HTTPMessage`." msgstr "" msgid "" @@ -310,8 +311,8 @@ msgid "" "Adds the HTTP header to an internal buffer which will be written to the " "output stream when either :meth:`end_headers` or :meth:`flush_headers` is " "invoked. *keyword* should specify the header keyword, with *value* " -"specifying its value. Note that, after the send_header calls are done, :meth:" -"`end_headers` MUST BE called in order to complete the operation." +"specifying its value. Note that, after the send_header calls are " +"done, :meth:`end_headers` MUST BE called in order to complete the operation." msgstr "" msgid "This method does not reject input containing CRLF sequences." @@ -358,14 +359,14 @@ msgstr "" msgid "" "Logs an arbitrary message to ``sys.stderr``. This is typically overridden to " "create custom error logging mechanisms. The *format* argument is a standard " -"printf-style format string, where the additional arguments to :meth:" -"`log_message` are applied as inputs to the formatting. The client IP address " -"and current date and time are prefixed to every message logged." +"printf-style format string, where the additional arguments " +"to :meth:`log_message` are applied as inputs to the formatting. The client " +"IP address and current date and time are prefixed to every message logged." msgstr "" msgid "" -"Returns the server software's version string. This is a combination of the :" -"attr:`server_version` and :attr:`sys_version` attributes." +"Returns the server software's version string. This is a combination of " +"the :attr:`server_version` and :attr:`sys_version` attributes." msgstr "" msgid "" @@ -404,14 +405,14 @@ msgid "Added *extra_response_headers* parameter." msgstr "" msgid "" -"A lot of the work, such as parsing the request, is done by the base class :" -"class:`BaseHTTPRequestHandler`. This class implements the :func:`do_GET` " -"and :func:`do_HEAD` functions." +"A lot of the work, such as parsing the request, is done by the base " +"class :class:`BaseHTTPRequestHandler`. This class implements " +"the :func:`do_GET` and :func:`do_HEAD` functions." msgstr "" msgid "" -"The following are defined as class-level attributes of :class:" -"`SimpleHTTPRequestHandler`:" +"The following are defined as class-level attributes " +"of :class:`SimpleHTTPRequestHandler`:" msgstr "" msgid "" @@ -473,8 +474,8 @@ msgid "" "index page as specified by :attr:`index_pages`. If found, the file's " "contents are returned; otherwise a directory listing is generated by calling " "the :meth:`list_directory` method. This method uses :func:`os.listdir` to " -"scan the directory, and returns a ``404`` error response if the :func:`~os." -"listdir` fails." +"scan the directory, and returns a ``404`` error response if " +"the :func:`~os.listdir` fails." msgstr "" msgid "" @@ -504,8 +505,8 @@ msgid "" msgstr "" msgid "" -"For example usage, see the implementation of the ``test`` function in :" -"source:`Lib/http/server.py`." +"For example usage, see the implementation of the ``test`` function " +"in :source:`Lib/http/server.py`." msgstr "" msgid "Support of the ``'If-Modified-Since'`` header." @@ -529,9 +530,9 @@ msgid "" msgstr "" msgid "" -"The default implementation looks the file's extension up in :attr:" -"`extensions_map`, falling back to :func:`mimetypes.guess_file_type` and then " -"to :attr:`default_content_type`." +"The default implementation looks the file's extension up " +"in :attr:`extensions_map`, falling back to :func:`mimetypes.guess_file_type` " +"and then to :attr:`default_content_type`." msgstr "" msgid "Add :func:`mimetypes.guess_file_type` as a fallback." @@ -663,18 +664,18 @@ msgid "" msgstr "" msgid "" -"Methods :meth:`BaseHTTPRequestHandler.send_header` and :meth:" -"`BaseHTTPRequestHandler.send_response_only` assume sanitized input and do " -"not perform input validation such as checking for the presence of CRLF " -"sequences. Untrusted input may result in HTTP header injection attacks." +"Methods :meth:`BaseHTTPRequestHandler.send_header` " +"and :meth:`BaseHTTPRequestHandler.send_response_only` assume sanitized input " +"and do not perform input validation such as checking for the presence of " +"CRLF sequences. Untrusted input may result in HTTP header injection attacks." msgstr "" msgid "" "Earlier versions of Python did not scrub control characters from the log " -"messages emitted to stderr from ``python -m http.server`` or the default :" -"class:`BaseHTTPRequestHandler` ``.log_message`` implementation. This could " -"allow remote clients connecting to your server to send nefarious control " -"codes to your terminal." +"messages emitted to stderr from ``python -m http.server`` or the " +"default :class:`BaseHTTPRequestHandler` ``.log_message`` implementation. " +"This could allow remote clients connecting to your server to send nefarious " +"control codes to your terminal." msgstr "" msgid "Control characters are scrubbed in stderr logs." diff --git a/library/i18n.po b/library/i18n.po index 261804b..8ea049b 100644 --- a/library/i18n.po +++ b/library/i18n.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/idle.po b/library/idle.po index c9e7cbf..d9b00e2 100644 --- a/library/idle.po +++ b/library/idle.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -273,8 +274,9 @@ msgid "Show Completions" msgstr "" msgid "" -"Open a scrollable list allowing selection of existing names. See :ref:" -"`Completions ` in the Editing and Navigation section below." +"Open a scrollable list allowing selection of existing names. " +"See :ref:`Completions ` in the Editing and Navigation section " +"below." msgstr "" msgid "Expand Word" @@ -741,11 +743,11 @@ msgid "" "attributes of classes or functions, or filenames. Each request method " "displays a completion box with existing names. (See tab completions below " "for an exception.) For any box, change the name being completed and the item " -"highlighted in the box by typing and deleting characters; by hitting :kbd:" -"`Up`, :kbd:`Down`, :kbd:`PageUp`, :kbd:`PageDown`, :kbd:`Home`, and :kbd:" -"`End` keys; and by a single click within the box. Close the box with :kbd:" -"`Escape`, :kbd:`Enter`, and double :kbd:`Tab` keys or clicks outside the " -"box. A double click within the box selects and closes." +"highlighted in the box by typing and deleting characters; by " +"hitting :kbd:`Up`, :kbd:`Down`, :kbd:`PageUp`, :kbd:`PageDown`, :kbd:`Home`, " +"and :kbd:`End` keys; and by a single click within the box. Close the box " +"with :kbd:`Escape`, :kbd:`Enter`, and double :kbd:`Tab` keys or clicks " +"outside the box. A double click within the box selects and closes." msgstr "" msgid "" @@ -753,20 +755,20 @@ msgid "" "interval. This defaults to 2 seconds; customize it in the settings dialog. " "(To prevent auto popups, set the delay to a large number of milliseconds, " "such as 100000000.) For imported module names or class or function " -"attributes, type '.'. For filenames in the root directory, type :data:`os." -"sep` or :data:`os.altsep` immediately after an opening quote. (On Windows, " -"one can specify a drive first.) Move into subdirectories by typing a " -"directory name and a separator." +"attributes, type '.'. For filenames in the root directory, " +"type :data:`os.sep` or :data:`os.altsep` immediately after an opening " +"quote. (On Windows, one can specify a drive first.) Move into " +"subdirectories by typing a directory name and a separator." msgstr "" msgid "" "Instead of waiting, or after a box is closed, open a completion box " -"immediately with Show Completions on the Edit menu. The default hot key is :" -"kbd:`C-space`. If one types a prefix for the desired name before opening " -"the box, the first match or near miss is made visible. The result is the " -"same as if one enters a prefix after the box is displayed. Show Completions " -"after a quote completes filenames in the current directory instead of a root " -"directory." +"immediately with Show Completions on the Edit menu. The default hot key " +"is :kbd:`C-space`. If one types a prefix for the desired name before " +"opening the box, the first match or near miss is made visible. The result is " +"the same as if one enters a prefix after the box is displayed. Show " +"Completions after a quote completes filenames in the current directory " +"instead of a root directory." msgstr "" msgid "" @@ -880,9 +882,9 @@ msgstr "" msgid "" "Submit a single-line statement for execution by hitting :kbd:`Return` with " -"the cursor anywhere on the line. If a line is extended with Backslash (:kbd:" -"`\\\\`), the cursor must be on the last physical line. Submit a multi-line " -"compound statement by entering a blank line after the statement." +"the cursor anywhere on the line. If a line is extended with Backslash " +"(:kbd:`\\\\`), the cursor must be on the last physical line. Submit a multi-" +"line compound statement by entering a blank line after the statement." msgstr "" msgid "" @@ -935,11 +937,11 @@ msgid "" msgstr "" msgid "" -"IDLE also highlights the :ref:`soft keywords ` :keyword:" -"`match`, :keyword:`case `, and :keyword:`_ ` in " -"pattern-matching statements. However, this highlighting is not perfect and " -"will be incorrect in some rare cases, including some ``_``-s in ``case`` " -"patterns." +"IDLE also highlights the :ref:`soft keywords ` :keyword:`match`, :keyword:`case `, and :keyword:`_ " +"` in pattern-matching statements. However, this " +"highlighting is not perfect and will be incorrect in some rare cases, " +"including some ``_``-s in ``case`` patterns." msgstr "" msgid "" @@ -954,13 +956,13 @@ msgstr "" msgid "" "Upon startup with the ``-s`` option, IDLE will execute the file referenced " -"by the environment variables :envvar:`IDLESTARTUP` or :envvar:" -"`PYTHONSTARTUP`. IDLE first checks for ``IDLESTARTUP``; if ``IDLESTARTUP`` " -"is present the file referenced is run. If ``IDLESTARTUP`` is not present, " -"IDLE checks for ``PYTHONSTARTUP``. Files referenced by these environment " -"variables are convenient places to store functions that are used frequently " -"from the IDLE shell, or for executing import statements to import common " -"modules." +"by the environment variables :envvar:`IDLESTARTUP` " +"or :envvar:`PYTHONSTARTUP`. IDLE first checks for ``IDLESTARTUP``; if " +"``IDLESTARTUP`` is present the file referenced is run. If ``IDLESTARTUP`` " +"is not present, IDLE checks for ``PYTHONSTARTUP``. Files referenced by " +"these environment variables are convenient places to store functions that " +"are used frequently from the IDLE shell, or for executing import statements " +"to import common modules." msgstr "" msgid "" @@ -1007,8 +1009,9 @@ msgid "Run the specified file in the shell window." msgstr "" msgid "" -"Run the startup file (as defined by the environment variables :envvar:" -"`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`) before opening the shell window." +"Run the startup file (as defined by the environment " +"variables :envvar:`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`) before opening " +"the shell window." msgstr "" msgid "Set the title of the shell window." @@ -1023,10 +1026,10 @@ msgid "If arguments are provided:" msgstr "" msgid "" -"If ``-``, ``-c``, or ``-r`` is used, all arguments are placed in ``sys." -"argv[1:]``, and ``sys.argv[0]`` is set to ``''``, ``'-c'``, or ``'-r'`` " -"respectively. No editor window is opened, even if that is the default set in " -"the *Options* dialog." +"If ``-``, ``-c``, or ``-r`` is used, all arguments are placed in " +"``sys.argv[1:]``, and ``sys.argv[0]`` is set to ``''``, ``'-c'``, or ``'-" +"r'`` respectively. No editor window is opened, even if that is the default " +"set in the *Options* dialog." msgstr "" msgid "" @@ -1088,8 +1091,8 @@ msgid "" msgstr "" msgid "" -"When IDLE first starts, it attempts to read user configuration files in ``~/." -"idlerc/`` (~ is one's home directory). If there is a problem, an error " +"When IDLE first starts, it attempts to read user configuration files in " +"``~/.idlerc/`` (~ is one's home directory). If there is a problem, an error " "message should be displayed. Leaving aside random disk glitches, this can " "be prevented by never editing the files by hand. Instead, use the " "configuration dialog, under Options. Once there is an error in a user " @@ -1128,8 +1131,8 @@ msgid "" "user interface process that runs the shell and editor. In the execution " "process, it replaces ``sys.stdin``, ``sys.stdout``, and ``sys.stderr`` with " "objects that get input from and send output to the Shell window. The " -"original values stored in ``sys.__stdin__``, ``sys.__stdout__``, and ``sys." -"__stderr__`` are not touched, but may be ``None``." +"original values stored in ``sys.__stdin__``, ``sys.__stdout__``, and " +"``sys.__stderr__`` are not touched, but may be ``None``." msgstr "" msgid "" @@ -1146,9 +1149,9 @@ msgstr "" msgid "" "IDLE's standard stream replacements are not inherited by subprocesses " "created in the execution process, whether directly by user code or by " -"modules such as multiprocessing. If such subprocess use ``input`` from sys." -"stdin or ``print`` or ``write`` to sys.stdout or sys.stderr, IDLE should be " -"started in a command line window. (On Windows, use ``python`` or ``py`` " +"modules such as multiprocessing. If such subprocess use ``input`` from " +"sys.stdin or ``print`` or ``write`` to sys.stdout or sys.stderr, IDLE should " +"be started in a command line window. (On Windows, use ``python`` or ``py`` " "rather than ``pythonw`` or ``pyw``.) The secondary subprocess will then be " "attached to that window for input and output." msgstr "" @@ -1183,9 +1186,9 @@ msgstr "" msgid "" "When a program outputs text, the result is determined by the corresponding " -"output device. When IDLE executes user code, ``sys.stdout`` and ``sys." -"stderr`` are connected to the display area of IDLE's Shell. Some of its " -"features are inherited from the underlying Tk Text widget. Others are " +"output device. When IDLE executes user code, ``sys.stdout`` and " +"``sys.stderr`` are connected to the display area of IDLE's Shell. Some of " +"its features are inherited from the underlying Tk Text widget. Others are " "programmed additions. Where it matters, Shell is designed for development " "rather than production runs." msgstr "" @@ -1261,13 +1264,13 @@ msgstr "" msgid "" "IDLE is intentionally different from standard Python in order to facilitate " -"development of tkinter programs. Enter ``import tkinter as tk; root = tk." -"Tk()`` in standard Python and nothing appears. Enter the same in IDLE and a " -"tk window appears. In standard Python, one must also enter ``root." -"update()`` to see the window. IDLE does the equivalent in the background, " -"about 20 times a second, which is about every 50 milliseconds. Next enter " -"``b = tk.Button(root, text='button'); b.pack()``. Again, nothing visibly " -"changes in standard Python until one enters ``root.update()``." +"development of tkinter programs. Enter ``import tkinter as tk; root = " +"tk.Tk()`` in standard Python and nothing appears. Enter the same in IDLE " +"and a tk window appears. In standard Python, one must also enter " +"``root.update()`` to see the window. IDLE does the equivalent in the " +"background, about 20 times a second, which is about every 50 milliseconds. " +"Next enter ``b = tk.Button(root, text='button'); b.pack()``. Again, nothing " +"visibly changes in standard Python until one enters ``root.update()``." msgstr "" msgid "" diff --git a/library/imaplib.po b/library/imaplib.po index 28ea111..f187fba 100644 --- a/library/imaplib.po +++ b/library/imaplib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,11 +29,11 @@ msgid "**Source code:** :source:`Lib/imaplib.py`" msgstr "" msgid "" -"This module defines three classes, :class:`IMAP4`, :class:`IMAP4_SSL` and :" -"class:`IMAP4_stream`, which encapsulate a connection to an IMAP4 server and " -"implement a large subset of the IMAP4rev1 client protocol as defined in :rfc:" -"`3501`. It is backward compatible with IMAP4 (:rfc:`1730`) servers, but note " -"that the ``STATUS`` command is not supported in IMAP4." +"This module defines three classes, :class:`IMAP4`, :class:`IMAP4_SSL` " +"and :class:`IMAP4_stream`, which encapsulate a connection to an IMAP4 server " +"and implement a large subset of the IMAP4rev1 client protocol as defined " +"in :rfc:`3501`. It is backward compatible with IMAP4 (:rfc:`1730`) servers, " +"but note that the ``STATUS`` command is not supported in IMAP4." msgstr "" msgid "Availability" @@ -61,8 +61,8 @@ msgstr "" msgid "" "The :class:`IMAP4` class supports the :keyword:`with` statement. When used " -"like this, the IMAP4 ``LOGOUT`` command is issued automatically when the :" -"keyword:`!with` statement exits. E.g.::" +"like this, the IMAP4 ``LOGOUT`` command is issued automatically when " +"the :keyword:`!with` statement exits. E.g.::" msgstr "" msgid "" @@ -130,8 +130,9 @@ msgid "*ssl_context* parameter was added." msgstr "" msgid "" -"The class now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The class now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "The deprecated *keyfile* and *certfile* parameters have been removed." @@ -142,8 +143,8 @@ msgstr "" msgid "" "This is a subclass derived from :class:`IMAP4` that connects to the ``stdin/" -"stdout`` file descriptors created by passing *command* to ``subprocess." -"Popen()``." +"stdout`` file descriptors created by passing *command* to " +"``subprocess.Popen()``." msgstr "" msgid "The following utility functions are defined:" @@ -151,8 +152,8 @@ msgstr "" msgid "" "Parse a :term:`bytes-like object` containing an IMAP4 ``INTERNALDATE`` " -"response and return the corresponding local time. The return value is a :" -"class:`time.struct_time` tuple or ``None`` if the input has wrong format." +"response and return the corresponding local time. The return value is " +"a :class:`time.struct_time` tuple or ``None`` if the input has wrong format." msgstr "" msgid "" @@ -172,9 +173,9 @@ msgid "" "double-quotes). The *date_time* argument can be a number (int or float) " "representing seconds since epoch (as returned by :func:`time.time`), a 9-" "tuple representing local time an instance of :class:`time.struct_time` (as " -"returned by :func:`time.localtime`), an aware instance of :class:`datetime." -"datetime`, or a double-quoted string. In the last case, it is assumed to " -"already be in the correct format." +"returned by :func:`time.localtime`), an aware instance " +"of :class:`datetime.datetime`, or a double-quoted string. In the last case, " +"it is assumed to already be in the correct format." msgstr "" msgid "" @@ -294,8 +295,8 @@ msgstr "" msgid "" "Enable *capability* (see :rfc:`5161`). Most capabilities do not need to be " -"enabled. Currently only the ``UTF8=ACCEPT`` capability is supported (see :" -"RFC:`6855`)." +"enabled. Currently only the ``UTF8=ACCEPT`` capability is supported " +"(see :RFC:`6855`)." msgstr "" msgid "The :meth:`enable` method itself, and :RFC:`6855` support." @@ -339,9 +340,9 @@ msgid "" msgstr "" msgid "" -"The returned object sends the ``IDLE`` command when activated by the :" -"keyword:`with` statement, produces IMAP untagged responses via the :term:" -"`iterator` protocol, and sends ``DONE`` upon context exit." +"The returned object sends the ``IDLE`` command when activated by " +"the :keyword:`with` statement, produces IMAP untagged responses via " +"the :term:`iterator` protocol, and sends ``DONE`` upon context exit." msgstr "" msgid "" @@ -359,8 +360,8 @@ msgstr "" msgid "" "The *duration* argument sets a maximum duration (in seconds) to keep idling, " -"after which any ongoing iteration will stop. It can be an :class:`int` or :" -"class:`float`, or ``None`` for no time limit. Callers wishing to avoid " +"after which any ongoing iteration will stop. It can be an :class:`int` " +"or :class:`float`, or ``None`` for no time limit. Callers wishing to avoid " "inactivity timeouts on servers that impose them should keep this at most 29 " "minutes (1740 seconds). Requires a socket connection; *duration* must be " "``None`` on :class:`IMAP4_stream` connections." @@ -412,10 +413,10 @@ msgid "" msgstr "" msgid "" -"The iterator returned by :meth:`IMAP4.idle` is usable only within a :keyword:" -"`with` statement. Before or after that context, unsolicited responses are " -"collected internally whenever a command finishes, and can be retrieved with :" -"meth:`IMAP4.response`." +"The iterator returned by :meth:`IMAP4.idle` is usable only within " +"a :keyword:`with` statement. Before or after that context, unsolicited " +"responses are collected internally whenever a command finishes, and can be " +"retrieved with :meth:`IMAP4.response`." msgstr "" msgid "" @@ -470,12 +471,12 @@ msgid "" "Opens socket to *port* at *host*. The optional *timeout* parameter specifies " "a timeout in seconds for the connection attempt. If timeout is not given or " "is ``None``, the global default socket timeout is used. Also note that if " -"the *timeout* parameter is set to be zero, it will raise a :class:" -"`ValueError` to reject creating a non-blocking socket. This method is " -"implicitly called by the :class:`IMAP4` constructor. The connection objects " -"established by this method will be used in the :meth:`IMAP4.read`, :meth:" -"`IMAP4.readline`, :meth:`IMAP4.send`, and :meth:`IMAP4.shutdown` methods. " -"You may override this method." +"the *timeout* parameter is set to be zero, it will raise " +"a :class:`ValueError` to reject creating a non-blocking socket. This method " +"is implicitly called by the :class:`IMAP4` constructor. The connection " +"objects established by this method will be used in " +"the :meth:`IMAP4.read`, :meth:`IMAP4.readline`, :meth:`IMAP4.send`, " +"and :meth:`IMAP4.shutdown` methods. You may override this method." msgstr "" msgid "" @@ -521,8 +522,8 @@ msgid "" "case no ``CHARSET`` will be specified in the request to the server. The " "IMAP protocol requires that at least one criterion be specified; an " "exception will be raised when the server returns an error. *charset* must " -"be ``None`` if the ``UTF8=ACCEPT`` capability was enabled using the :meth:" -"`enable` command." +"be ``None`` if the ``UTF8=ACCEPT`` capability was enabled using " +"the :meth:`enable` command." msgstr "" msgid "Example::" @@ -600,8 +601,9 @@ msgid "" msgstr "" msgid "" -"The method now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The method now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "Request named status conditions for *mailbox*." @@ -685,6 +687,19 @@ msgstr "" msgid "The following attributes are defined on instances of :class:`IMAP4`:" msgstr "" +msgid "A tuple of the capabilities advertised by the server, in upper case." +msgstr "" + +msgid "" +"It is set when the connection is established, and refreshed after a " +"successful :meth:`~IMAP4.login`, :meth:`~IMAP4.authenticate` " +"or :meth:`~IMAP4.starttls`, because the server can advertise different " +"capabilities in different connection states." +msgstr "" + +msgid "Refreshed after :meth:`~IMAP4.login` and :meth:`~IMAP4.authenticate`." +msgstr "" + msgid "" "The most recent supported protocol in the ``CAPABILITY`` response from the " "server." @@ -697,8 +712,9 @@ msgid "" msgstr "" msgid "" -"Boolean value that is normally ``False``, but is set to ``True`` if an :meth:" -"`enable` command is successfully issued for the ``UTF8=ACCEPT`` capability." +"Boolean value that is normally ``False``, but is set to ``True`` if " +"an :meth:`enable` command is successfully issued for the ``UTF8=ACCEPT`` " +"capability." msgstr "" msgid "" @@ -731,9 +747,9 @@ msgid "" msgstr "" msgid "" -"A ``FETCH`` response may contain additional or unsolicited data (see :rfc:" -"`3501`, section 7.4.2), so production code should inspect the whole response " -"rather than rely on ``data[0][1]``." +"A ``FETCH`` response may contain additional or unsolicited data " +"(see :rfc:`3501`, section 7.4.2), so production code should inspect the " +"whole response rather than rely on ``data[0][1]``." msgstr "" msgid "IMAP4" diff --git a/library/imghdr.po b/library/imghdr.po index 6f9da5d..75317e2 100644 --- a/library/imghdr.po +++ b/library/imghdr.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,15 +26,15 @@ msgid ":mod:`!imghdr` --- Determine the type of an image" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" -"Possible replacements are third-party libraries from PyPI: :pypi:" -"`filetype`, :pypi:`puremagic`, or :pypi:`python-magic`. These are not " -"supported or maintained by the Python core team." +"Possible replacements are third-party libraries from " +"PyPI: :pypi:`filetype`, :pypi:`puremagic`, or :pypi:`python-magic`. These " +"are not supported or maintained by the Python core team." msgstr "" msgid "" diff --git a/library/imp.po b/library/imp.po index dad1888..1732d2e 100644 --- a/library/imp.po +++ b/library/imp.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,9 +22,9 @@ msgid ":mod:`!imp` --- Access the import internals" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.12 ` after being deprecated in " -"Python 3.4." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.12 ` after being " +"deprecated in Python 3.4." msgstr "" msgid "" diff --git a/library/importlib.metadata.po b/library/importlib.metadata.po index f57d7e4..14a6723 100644 --- a/library/importlib.metadata.po +++ b/library/importlib.metadata.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,9 +45,9 @@ msgstr "" msgid "" "``importlib.metadata`` operates on third-party *distribution packages* " -"installed into Python's ``site-packages`` directory via tools such as :pypi:" -"`pip`. Specifically, it works with distributions with discoverable ``dist-" -"info`` or ``egg-info`` directories, and metadata defined by the `Core " +"installed into Python's ``site-packages`` directory via tools such " +"as :pypi:`pip`. Specifically, it works with distributions with discoverable " +"``dist-info`` or ``egg-info`` directories, and metadata defined by the `Core " "metadata specifications `_." msgstr "" @@ -53,9 +57,9 @@ msgid "" "level *import package* names that can be imported inside Python code. One " "*distribution package* can contain multiple *import packages* (and single " "modules), and one top-level *import package* may map to multiple " -"*distribution packages* if it is a namespace package. You can use :ref:" -"`packages_distributions() ` to get a mapping between " -"them." +"*distribution packages* if it is a namespace package. You can " +"use :ref:`packages_distributions() ` to get a mapping " +"between them." msgstr "" msgid "" @@ -71,8 +75,8 @@ msgid "" "The documentation for ``importlib_metadata``, which supplies a backport of " "``importlib.metadata``. This includes an `API reference `__ for this module's classes and " -"functions, as well as a `migration guide `__ for existing users of " +"functions, as well as a `migration guide `__ for existing users of " "``pkg_resources``." msgstr "" @@ -105,14 +109,15 @@ msgstr "" msgid "" "You can also get a collection of entry points selectable by properties of " "the EntryPoint (typically 'group' or 'name'), such as ``console_scripts``, " -"``distutils.commands`` and others. Each group contains a collection of :ref:" -"`EntryPoint ` objects." +"``distutils.commands`` and others. Each group contains a collection " +"of :ref:`EntryPoint ` objects." msgstr "" msgid "You can get the :ref:`metadata for a distribution `::" msgstr "" msgid "" +">>> from importlib.metadata import metadata\n" ">>> list(metadata('wheel'))\n" "['Metadata-Version', 'Name', 'Version', 'Summary', 'Home-page', 'Author', " "'Author-email', 'Maintainer', 'Maintainer-email', 'License', 'Project-URL', " @@ -124,9 +129,9 @@ msgid "" msgstr "" msgid "" -"You can also get a :ref:`distribution's version number `, list its :" -"ref:`constituent files `, and get a list of the distribution's :ref:" -"`requirements`." +"You can also get a :ref:`distribution's version number `, list " +"its :ref:`constituent files `, and get a list of the " +"distribution's :ref:`requirements`." msgstr "" msgid "" @@ -159,9 +164,9 @@ msgstr "" msgid "" "Note: to query for entry points based on :attr:`!EntryPoint.dist` attribute, " -"use :meth:`Distribution.entry_points` instead (as different :class:" -"`Distribution` instances do not currently compare equal, even if they have " -"the same attributes)" +"use :meth:`Distribution.entry_points` instead (as " +"different :class:`Distribution` instances do not currently compare equal, " +"even if they have the same attributes)" msgstr "" msgid "Details of a collection of installed entry points." @@ -178,10 +183,10 @@ msgstr "" msgid "" "Each :class:`!EntryPoint` instance has ``.name``, ``.group``, and ``.value`` " -"attributes and a ``.load()`` method to resolve the value. There are also ``." -"module``, ``.attr``, and ``.extras`` attributes for getting the components " -"of the ``.value`` attribute, and ``.dist`` for obtaining information " -"regarding the distribution package that provides the entry point." +"attributes and a ``.load()`` method to resolve the value. There are also " +"``.module``, ``.attr``, and ``.extras`` attributes for getting the " +"components of the ``.value`` attribute, and ``.dist`` for obtaining " +"information regarding the distribution package that provides the entry point." msgstr "" msgid "Query all entry points::" @@ -267,13 +272,13 @@ msgid "" "3.6 and Python 3.10. Prior to those changes, ``entry_points`` accepted no " "parameters and always returned a dictionary of entry points, keyed by group. " "With ``importlib_metadata`` 5.0 and Python 3.12, ``entry_points`` always " -"returns an ``EntryPoints`` object. See :pypi:`backports." -"entry_points_selectable` for compatibility options." +"returns an ``EntryPoints`` object. " +"See :pypi:`backports.entry_points_selectable` for compatibility options." msgstr "" msgid "" -"``EntryPoint`` objects no longer present a tuple-like interface (:meth:" -"`~object.__getitem__`)." +"``EntryPoint`` objects no longer present a tuple-like interface " +"(:meth:`~object.__getitem__`)." msgstr "" msgid "Distribution metadata" @@ -296,8 +301,8 @@ msgstr "" msgid "" "A concrete implementation of the `PackageMetadata protocol `_." +"importlib-metadata.readthedocs.io/en/latest/" +"api.html#importlib_metadata.PackageMetadata>`_." msgstr "" msgid "" @@ -359,9 +364,9 @@ msgid "Distribution versions" msgstr "" msgid "" -"Return the installed distribution package `version `__ for the named " -"distribution package." +"Return the installed distribution package `version `__ for " +"the named distribution package." msgstr "" msgid "" @@ -407,9 +412,9 @@ msgid "" msgstr "" msgid "" -"The :func:`!files` function takes a `Distribution Package `_ name and returns " -"all of the files installed by this distribution. For example::" +"The :func:`!files` function takes a `Distribution Package `_ name " +"and returns all of the files installed by this distribution. For example::" msgstr "" msgid "" @@ -449,12 +454,13 @@ msgid "" msgstr "" msgid "" -"In the case where the metadata file listing files (``RECORD`` or ``SOURCES." -"txt``) is missing, :func:`!files` will return :const:`None`. The caller may " -"wish to wrap calls to :func:`!files` in `always_iterable `_ or otherwise guard against this condition if the target " -"distribution is not known to have the metadata present." +"In the case where the metadata file listing files (``RECORD`` or " +"``SOURCES.txt``) is missing, :func:`!files` will return :const:`None`. The " +"caller may wish to wrap calls to :func:`!files` in `always_iterable `_ or otherwise guard against this " +"condition if the target distribution is not known to have the metadata " +"present." msgstr "" msgid "Distribution requirements" @@ -491,11 +497,11 @@ msgid "" msgstr "" msgid "" -"A convenience method to resolve the `Distribution Package `_ name (or names, " -"in the case of a namespace package) that provide each importable top-level " -"Python module or `Import Package `_::" +"A convenience method to resolve the `Distribution Package `_ name " +"(or names, in the case of a namespace package) that provide each importable " +"top-level Python module or `Import Package `_::" msgstr "" msgid "" @@ -536,8 +542,8 @@ msgid "" msgstr "" msgid "" -"Thus, an alternative way to get e.g. the version number is through the :attr:" -"`Distribution.version` attribute::" +"Thus, an alternative way to get e.g. the version number is through " +"the :attr:`Distribution.version` attribute::" msgstr "" msgid "" @@ -638,10 +644,11 @@ msgstr "" msgid "" "By default, this package provides built-in support for discovery of metadata " -"for file system and zip file `Distribution Package `_\\s. This metadata " -"finder search defaults to ``sys.path``, but varies slightly in how it " -"interprets those values from how other import machinery does. In particular:" +"for file system and zip file `Distribution Package `_\\s. " +"This metadata finder search defaults to ``sys.path``, but varies slightly in " +"how it interprets those values from how other import machinery does. In " +"particular:" msgstr "" msgid "" @@ -664,9 +671,9 @@ msgstr "" msgid "" "A :class:`!Context` gives a custom provider a means to solicit additional " -"details from the callers of distribution discovery functions like :func:" -"`distributions` or :meth:`Distribution.discover` beyond :attr:`!.name` and :" -"attr:`!.path` when searching for distributions." +"details from the callers of distribution discovery functions " +"like :func:`distributions` or :meth:`Distribution.discover` " +"beyond :attr:`!.name` and :attr:`!.path` when searching for distributions." msgstr "" msgid "" @@ -707,9 +714,9 @@ msgid "" msgstr "" msgid "" -"The *kwargs* argument may contain either a keyword argument ``context``, a :" -"class:`DistributionFinder.Context` instance, or pass keyword arguments for " -"constructing a new :class:`!DistributionFinder.Context`. The :class:`!" +"The *kwargs* argument may contain either a keyword argument ``context``, " +"a :class:`DistributionFinder.Context` instance, or pass keyword arguments " +"for constructing a new :class:`!DistributionFinder.Context`. The :class:`!" "DistributionFinder.Context` is used to modify the search for distributions." msgstr "" @@ -726,12 +733,12 @@ msgstr "" msgid "" "Because `Distribution Package `_ metadata is not available through :" -"data:`sys.path` searches, or package loaders directly, the metadata for a " -"distribution is found through import system :ref:`finders `_ metadata is not available " +"through :data:`sys.path` searches, or package loaders directly, the metadata " +"for a distribution is found through import system :ref:`finders `. To find a distribution package's metadata, ``importlib.metadata`` " -"queries the list of :term:`meta path finders ` on :data:" -"`sys.meta_path`." +"queries the list of :term:`meta path finders ` " +"on :data:`sys.meta_path`." msgstr "" msgid "" @@ -741,8 +748,8 @@ msgstr "" msgid "" "The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the " -"interface expected of finders by Python's import system. ``importlib." -"metadata`` extends this protocol by looking for an optional " +"interface expected of finders by Python's import system. " +"``importlib.metadata`` extends this protocol by looking for an optional " "``find_distributions`` callable on the finders from :data:`sys.meta_path` " "and presents this extended interface as the :class:`DistributionFinder` " "abstract base class, which defines this abstract method::" @@ -758,10 +765,11 @@ msgid "" msgstr "" msgid "" -"The :class:`DistributionFinder.Context` object provides :attr:" -"`~DistributionFinder.Context.path` and :attr:`~DistributionFinder.Context." -"name` properties indicating the path to search and name to match and may " -"supply other relevant context sought by the consumer." +"The :class:`DistributionFinder.Context` object " +"provides :attr:`~DistributionFinder.Context.path` " +"and :attr:`~DistributionFinder.Context.name` properties indicating the path " +"to search and name to match and may supply other relevant context sought by " +"the consumer." msgstr "" msgid "" @@ -791,8 +799,8 @@ msgstr "" msgid "" "That importer now presumably provides importable modules from a database, " "but it provides no metadata or entry points. For this custom importer to " -"provide metadata, it would also need to implement :class:" -"`DistributionFinder`::" +"provide metadata, it would also need to " +"implement :class:`DistributionFinder`::" msgstr "" msgid "" diff --git a/library/importlib.po b/library/importlib.po index af16eb8..49f1789 100644 --- a/library/importlib.po +++ b/library/importlib.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -77,8 +78,8 @@ msgstr "" msgid "" "Original specification of packages. Some semantics have changed since the " -"writing of this document (e.g. redirecting based on ``None`` in :data:`sys." -"modules`)." +"writing of this document (e.g. redirecting based on ``None`` " +"in :data:`sys.modules`)." msgstr "" msgid "The :func:`.__import__` function" @@ -186,11 +187,11 @@ msgid "" msgstr "" msgid "" -"The :func:`import_module` function acts as a simplifying wrapper around :" -"func:`importlib.__import__`. This means all semantics of the function are " -"derived from :func:`importlib.__import__`. The most important difference " -"between these two functions is that :func:`import_module` returns the " -"specified package or module (e.g. ``pkg.mod``), while :func:`__import__` " +"The :func:`import_module` function acts as a simplifying wrapper " +"around :func:`importlib.__import__`. This means all semantics of the " +"function are derived from :func:`importlib.__import__`. The most important " +"difference between these two functions is that :func:`import_module` returns " +"the specified package or module (e.g. ``pkg.mod``), while :func:`__import__` " "returns the top-level package or module (e.g. ``pkg``)." msgstr "" @@ -202,8 +203,9 @@ msgid "" msgstr "" msgid "" -"If the module cannot be imported, :func:`import_module` will raise :exc:" -"`ImportError` or an appropriate subclass like :exc:`ModuleNotFoundError`." +"If the module cannot be imported, :func:`import_module` will " +"raise :exc:`ImportError` or an appropriate subclass " +"like :exc:`ModuleNotFoundError`." msgstr "" msgid "Parent packages are automatically imported." @@ -288,11 +290,11 @@ msgid "" msgstr "" msgid "" -"If a module imports objects from another module using :keyword:`from` ... :" -"keyword:`import` ..., calling :func:`reload` for the other module does not " -"redefine the objects imported from it --- one way around this is to re-" -"execute the :keyword:`!from` statement, another is to use :keyword:`!import` " -"and qualified names (*module.name*) instead." +"If a module imports objects from another module " +"using :keyword:`from` ... :keyword:`import` ..., calling :func:`reload` for " +"the other module does not redefine the objects imported from it --- one way " +"around this is to re-execute the :keyword:`!from` statement, another is to " +"use :keyword:`!import` and qualified names (*module.name*) instead." msgstr "" msgid "" @@ -303,14 +305,15 @@ msgid "" msgstr "" msgid "" -":exc:`ModuleNotFoundError` is raised when the module being reloaded lacks a :" -"class:`~importlib.machinery.ModuleSpec`." +":exc:`ModuleNotFoundError` is raised when the module being reloaded lacks " +"a :class:`~importlib.machinery.ModuleSpec`." msgstr "" msgid "" "This function is not thread-safe. Calling it from multiple threads can " -"result in unexpected behavior. It's recommended to use the :class:`threading." -"Lock` or other synchronization primitives for thread-safe module reloading." +"result in unexpected behavior. It's recommended to use " +"the :class:`threading.Lock` or other synchronization primitives for thread-" +"safe module reloading." msgstr "" msgid ":mod:`!importlib.abc` -- Abstract base classes related to import" @@ -394,24 +397,25 @@ msgstr "" msgid "" "An abstract base class representing a :term:`path entry finder`. Though it " "bears some similarities to :class:`MetaPathFinder`, ``PathEntryFinder`` is " -"meant for use only within the path-based import subsystem provided by :class:" -"`importlib.machinery.PathFinder`." +"meant for use only within the path-based import subsystem provided " +"by :class:`importlib.machinery.PathFinder`." msgstr "" msgid "" "An abstract method for finding a :term:`spec ` for the " -"specified module. The finder will search for the module only within the :" -"term:`path entry` to which it is assigned. If a spec cannot be found, " +"specified module. The finder will search for the module only within " +"the :term:`path entry` to which it is assigned. If a spec cannot be found, " "``None`` is returned. When passed in, ``target`` is a module object that " -"the finder may use to make a more educated guess about what spec to return. :" -"func:`importlib.util.spec_from_loader` may be useful for implementing " -"concrete ``PathEntryFinders``." +"the finder may use to make a more educated guess about what spec to " +"return. :func:`importlib.util.spec_from_loader` may be useful for " +"implementing concrete ``PathEntryFinders``." msgstr "" msgid "" "An optional method which, when called, should invalidate any internal cache " -"used by the finder. Used by :meth:`importlib.machinery.PathFinder." -"invalidate_caches` when invalidating the caches of all cached finders." +"used by the finder. Used " +"by :meth:`importlib.machinery.PathFinder.invalidate_caches` when " +"invalidating the caches of all cached finders." msgstr "" msgid "" @@ -426,12 +430,12 @@ msgid "" msgstr "" msgid "" -"Loaders that wish to support resource reading should implement a :meth:" -"`get_resource_reader` method as specified by :class:`importlib.resources.abc." -"ResourceReader`." +"Loaders that wish to support resource reading should implement a :meth:`!" +"get_resource_reader` method as specified " +"by :class:`importlib.resources.abc.ResourceReader`." msgstr "" -msgid "Introduced the optional :meth:`get_resource_reader` method." +msgid "Introduced the optional :meth:`!get_resource_reader` method." msgstr "" msgid "Removed the ``load_module()`` method." @@ -449,8 +453,8 @@ msgstr "" msgid "" "An abstract method that executes the module in its own namespace when a " "module is imported or reloaded. The module should already be initialized " -"when :meth:`exec_module` is called. When this method exists, :meth:" -"`create_module` must be defined." +"when :meth:`exec_module` is called. When this method " +"exists, :meth:`create_module` must be defined." msgstr "" msgid ":meth:`create_module` must also be defined." @@ -460,14 +464,15 @@ msgid "*Superseded by TraversableResources*" msgstr "" msgid "" -"An abstract base class for a :term:`loader` which implements the optional :" -"pep:`302` protocol for loading arbitrary resources from the storage back-end." +"An abstract base class for a :term:`loader` which implements the " +"optional :pep:`302` protocol for loading arbitrary resources from the " +"storage back-end." msgstr "" msgid "" -"This ABC is deprecated in favour of supporting resource loading through :" -"class:`importlib.resources.abc.TraversableResources`. This class exists for " -"backwards compatibility only with other ABCs in this module." +"This ABC is deprecated in favour of supporting resource loading " +"through :class:`importlib.resources.abc.TraversableResources`. This class " +"exists for backwards compatibility only with other ABCs in this module." msgstr "" msgid "" @@ -475,16 +480,17 @@ msgid "" "Loaders that have a file-like storage back-end that allows storing arbitrary " "data can implement this abstract method to give direct access to the data " "stored. :exc:`OSError` is to be raised if the *path* cannot be found. The " -"*path* is expected to be constructed using a module's :attr:`~module." -"__file__` attribute or an item from a package's :attr:`~module.__path__`." +"*path* is expected to be constructed using a " +"module's :attr:`~module.__file__` attribute or an item from a " +"package's :attr:`~module.__path__`." msgstr "" msgid "Raises :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" msgid "" -"An abstract base class for a :term:`loader` which implements the optional :" -"pep:`302` protocol for loaders that inspect modules." +"An abstract base class for a :term:`loader` which implements the " +"optional :pep:`302` protocol for loaders that inspect modules." msgstr "" msgid "" @@ -522,10 +528,10 @@ msgid "Create a code object from Python source." msgstr "" msgid "" -"The *data* argument can be whatever the :func:`compile` function supports (i." -"e. string or bytes). The *path* argument should be the \"path\" to where the " -"source code originated from, which can be an abstract concept (e.g. location " -"in a zip file)." +"The *data* argument can be whatever the :func:`compile` function supports " +"(i.e. string or bytes). The *path* argument should be the \"path\" to where " +"the source code originated from, which can be an abstract concept (e.g. " +"location in a zip file)." msgstr "" msgid "" @@ -565,9 +571,9 @@ msgid "" msgstr "" msgid "" -"An abstract base class which inherits from :class:`ResourceLoader` and :" -"class:`ExecutionLoader`, providing concrete implementations of :meth:" -"`ResourceLoader.get_data` and :meth:`ExecutionLoader.get_filename`." +"An abstract base class which inherits from :class:`ResourceLoader` " +"and :class:`ExecutionLoader`, providing concrete implementations " +"of :meth:`ResourceLoader.get_data` and :meth:`ExecutionLoader.get_filename`." msgstr "" msgid "" @@ -589,8 +595,8 @@ msgstr "" msgid "" "An abstract base class for implementing source (and optionally bytecode) " -"file loading. The class inherits from both :class:`ResourceLoader` and :" -"class:`ExecutionLoader`, requiring the implementation of:" +"file loading. The class inherits from both :class:`ResourceLoader` " +"and :class:`ExecutionLoader`, requiring the implementation of:" msgstr "" msgid ":meth:`ResourceLoader.get_data`" @@ -606,9 +612,9 @@ msgstr "" msgid "" "The abstract methods defined by this class are to add optional bytecode file " -"support. Not implementing these optional methods (or causing them to raise :" -"exc:`NotImplementedError`) causes the loader to only work with source code. " -"Implementing the methods allows the loader to work with source *and* " +"support. Not implementing these optional methods (or causing them to " +"raise :exc:`NotImplementedError`) causes the loader to only work with source " +"code. Implementing the methods allows the loader to work with source *and* " "bytecode files; it does not allow for *sourceless* loading where only " "bytecode is provided. Bytecode files are an optimization to speed up " "loading by removing the parsing step of Python's compiler, and so no " @@ -654,8 +660,9 @@ msgid "" msgstr "" msgid "" -"When writing to the path fails because the path is read-only (:const:`errno." -"EACCES`/:exc:`PermissionError`), do not propagate the exception." +"When writing to the path fails because the path is read-only " +"(:const:`errno.EACCES`/:exc:`PermissionError`), do not propagate the " +"exception." msgstr "" msgid "No longer raises :exc:`NotImplementedError` when called." @@ -672,9 +679,9 @@ msgstr "" msgid "" "Concrete implementation of :meth:`InspectLoader.is_package`. A module is " -"determined to be a package if its file path (as provided by :meth:" -"`ExecutionLoader.get_filename`) is a file named ``__init__`` when the file " -"extension is removed **and** the module name itself does not end in " +"determined to be a package if its file path (as provided " +"by :meth:`ExecutionLoader.get_filename`) is a file named ``__init__`` when " +"the file extension is removed **and** the module name itself does not end in " "``__init__``." msgstr "" @@ -724,14 +731,15 @@ msgid "" "Returns a combined list of strings representing all file suffixes for " "modules recognized by the standard import machinery. This is a helper for " "code which simply needs to know if a filesystem path potentially refers to a " -"module without needing any details on the kind of module (for example, :func:" -"`inspect.getmodulename`)." +"module without needing any details on the kind of module (for " +"example, :func:`inspect.getmodulename`)." msgstr "" msgid "" "An :term:`importer` for built-in modules. All known built-in modules are " -"listed in :data:`sys.builtin_module_names`. This class implements the :class:" -"`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." +"listed in :data:`sys.builtin_module_names`. This class implements " +"the :class:`importlib.abc.MetaPathFinder` " +"and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" msgid "" @@ -740,17 +748,20 @@ msgid "" msgstr "" msgid "" -"As part of :pep:`489`, the builtin importer now implements :meth:`Loader." -"create_module` and :meth:`Loader.exec_module`" +"As part of :pep:`489`, the builtin importer now " +"implements :meth:`Loader.create_module ` " +"and :meth:`Loader.exec_module `" msgstr "" msgid "" -"An :term:`importer` for frozen modules. This class implements the :class:" -"`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." +"An :term:`importer` for frozen modules. This class implements " +"the :class:`importlib.abc.MetaPathFinder` " +"and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" msgid "" -"Gained :meth:`~Loader.create_module` and :meth:`~Loader.exec_module` methods." +"Gained :meth:`~importlib.abc.Loader.create_module` " +"and :meth:`~importlib.abc.Loader.exec_module` methods." msgstr "" msgid "" @@ -772,20 +783,21 @@ msgstr "" msgid "" "Class method that attempts to find a :term:`spec ` for the " "module specified by *fullname* on :data:`sys.path` or, if defined, on " -"*path*. For each path entry that is searched, :data:`sys." -"path_importer_cache` is checked. If a non-false object is found then it is " -"used as the :term:`path entry finder` to look for the module being searched " -"for. If no entry is found in :data:`sys.path_importer_cache`, then :data:" -"`sys.path_hooks` is searched for a finder for the path entry and, if found, " -"is stored in :data:`sys.path_importer_cache` along with being queried about " -"the module. If no finder is ever found then ``None`` is both stored in the " -"cache and returned." +"*path*. For each path entry that is " +"searched, :data:`sys.path_importer_cache` is checked. If a non-false object " +"is found then it is used as the :term:`path entry finder` to look for the " +"module being searched for. If no entry is found " +"in :data:`sys.path_importer_cache`, then :data:`sys.path_hooks` is searched " +"for a finder for the path entry and, if found, is stored " +"in :data:`sys.path_importer_cache` along with being queried about the " +"module. If no finder is ever found then ``None`` is both stored in the cache " +"and returned." msgstr "" msgid "" "If the current working directory -- represented by an empty string -- is no " -"longer valid then ``None`` is returned but no value is cached in :data:`sys." -"path_importer_cache`." +"longer valid then ``None`` is returned but no value is cached " +"in :data:`sys.path_importer_cache`." msgstr "" msgid "" @@ -847,8 +859,8 @@ msgid "" msgstr "" msgid "" -"If the argument to the closure is not an existing directory, :exc:" -"`ImportError` is raised." +"If the argument to the closure is not an existing " +"directory, :exc:`ImportError` is raised." msgstr "" msgid "" @@ -868,8 +880,8 @@ msgstr "" msgid "" "The *path_finder* argument is the callable used to recompute the path value. " -"The callable has the same signature as :meth:`importlib.abc.MetaPathFinder." -"find_spec`." +"The callable has the same signature " +"as :meth:`importlib.abc.MetaPathFinder.find_spec`." msgstr "" msgid "" @@ -878,8 +890,8 @@ msgid "" msgstr "" msgid "" -"If the parent module is missing from :data:`sys.modules`, then :exc:" -"`ModuleNotFoundError` will be raised." +"If the parent module is missing from :data:`sys.modules`, " +"then :exc:`ModuleNotFoundError` will be raised." msgstr "" msgid "For top-level modules, the parent module's path is :data:`sys.path`." @@ -965,8 +977,8 @@ msgid "Path to the extension module." msgstr "" msgid "" -"Creates the module object from the given specification in accordance with :" -"pep:`489`." +"Creates the module object from the given specification in accordance " +"with :pep:`489`." msgstr "" msgid "Initializes the given module object in accordance with :pep:`489`." @@ -1007,13 +1019,13 @@ msgid "" "the *values* are usually equivalent, they can differ since there is no " "synchronization between the two objects. For example, it is possible to " "update the module's :attr:`~module.__file__` at runtime and this will not be " -"automatically reflected in the module's :attr:`__spec__.origin `, and vice versa." +"automatically reflected in the module's :attr:`__spec__.origin " +"`, and vice versa." msgstr "" msgid "" -"The module's fully qualified name (see :attr:`module.__name__`). The :term:" -"`finder` should always set this attribute to a non-empty string." +"The module's fully qualified name (see :attr:`module.__name__`). " +"The :term:`finder` should always set this attribute to a non-empty string." msgstr "" msgid "" @@ -1022,11 +1034,12 @@ msgid "" msgstr "" msgid "" -"The location the :term:`loader` should use to load the module (see :attr:" -"`module.__file__`). For example, for modules loaded from a ``.py`` file this " -"is the filename. The :term:`finder` should always set this attribute to a " -"meaningful value for the :term:`loader` to use. In the uncommon case that " -"there is not one (like for namespace packages), it should be set to ``None``." +"The location the :term:`loader` should use to load the module " +"(see :attr:`module.__file__`). For example, for modules loaded from a " +"``.py`` file this is the filename. The :term:`finder` should always set this " +"attribute to a meaningful value for the :term:`loader` to use. In the " +"uncommon case that there is not one (like for namespace packages), it should " +"be set to ``None``." msgstr "" msgid "" @@ -1084,27 +1097,27 @@ msgid "" "binaries are *not* packaged as ``.so`` files on ``sys.path``, but as " "individual standalone frameworks. To discover those frameworks, this loader " "is registered against the ``.fwork`` file extension, with a ``.fwork`` file " -"acting as a placeholder in the original location of the binary on ``sys." -"path``. The ``.fwork`` file contains the path of the actual binary in the " -"``Frameworks`` folder, relative to the app bundle. To allow for resolving a " -"framework-packaged binary back to the original location, the framework is " -"expected to contain a ``.origin`` file that contains the location of the ``." -"fwork`` file, relative to the app bundle." +"acting as a placeholder in the original location of the binary on " +"``sys.path``. The ``.fwork`` file contains the path of the actual binary in " +"the ``Frameworks`` folder, relative to the app bundle. To allow for " +"resolving a framework-packaged binary back to the original location, the " +"framework is expected to contain a ``.origin`` file that contains the " +"location of the ``.fwork`` file, relative to the app bundle." msgstr "" msgid "" "For example, consider the case of an import ``from foo.bar import _whiz``, " "where ``_whiz`` is implemented with the binary module ``sources/foo/bar/" -"_whiz.abi3.so``, with ``sources`` being the location registered on ``sys." -"path``, relative to the application bundle. This module *must* be " +"_whiz.abi3.so``, with ``sources`` being the location registered on " +"``sys.path``, relative to the application bundle. This module *must* be " "distributed as ``Frameworks/foo.bar._whiz.framework/foo.bar._whiz`` " "(creating the framework name from the full import path of the module), with " "an ``Info.plist`` file in the ``.framework`` directory identifying the " "binary as a framework. The ``foo.bar._whiz`` module would be represented in " "the original location with a ``sources/foo/bar/_whiz.abi3.fwork`` marker " "file, containing the path ``Frameworks/foo.bar._whiz/foo.bar._whiz``. The " -"framework would also contain ``Frameworks/foo.bar._whiz.framework/foo.bar." -"_whiz.origin``, containing the path to the ``.fwork`` file." +"framework would also contain ``Frameworks/foo.bar._whiz.framework/" +"foo.bar._whiz.origin``, containing the path to the ``.fwork`` file." msgstr "" msgid "" @@ -1151,9 +1164,9 @@ msgid "" "Return the :pep:`3147`/:pep:`488` path to the byte-compiled file associated " "with the source *path*. For example, if *path* is ``/foo/bar/baz.py`` the " "return value would be ``/foo/bar/__pycache__/baz.cpython-32.pyc`` for Python " -"3.2. The ``cpython-32`` string comes from the current magic tag (see :func:" -"`get_tag`; if :attr:`sys.implementation.cache_tag` is not defined then :exc:" -"`NotImplementedError` will be raised)." +"3.2. The ``cpython-32`` string comes from the current magic tag " +"(see :attr:`sys.implementation.cache_tag `; if it is not " +"defined then :exc:`NotImplementedError` will be raised)." msgstr "" msgid "" @@ -1163,9 +1176,9 @@ msgid "" "``/foo/bar/__pycache__/baz.cpython-32.pyc``. ``None`` causes the " "interpreter's optimization level to be used. Any other value's string " "representation is used, so ``/foo/bar/baz.py`` with an *optimization* of " -"``2`` will lead to the bytecode path of ``/foo/bar/__pycache__/baz." -"cpython-32.opt-2.pyc``. The string representation of *optimization* can only " -"be alphanumeric, else :exc:`ValueError` is raised." +"``2`` will lead to the bytecode path of ``/foo/bar/__pycache__/" +"baz.cpython-32.opt-2.pyc``. The string representation of *optimization* can " +"only be alphanumeric, else :exc:`ValueError` is raised." msgstr "" msgid "" @@ -1181,17 +1194,18 @@ msgstr "" msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " -"code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." -"cpython-32.pyc`` the returned path would be ``/foo/bar/baz.py``. *path* " +"code file path. For example, if *path* is ``/foo/bar/__pycache__/" +"baz.cpython-32.pyc`` the returned path would be ``/foo/bar/baz.py``. *path* " "need not exist, however if it does not conform to :pep:`3147` or :pep:`488` " -"format, a :exc:`ValueError` is raised. If :attr:`sys.implementation." -"cache_tag` is not defined, :exc:`NotImplementedError` is raised." +"format, a :exc:`ValueError` is raised. " +"If :attr:`sys.implementation.cache_tag ` is not " +"defined, :exc:`NotImplementedError` is raised." msgstr "" msgid "" "Decode the given bytes representing source code and return it as a string " -"with universal newlines (as required by :meth:`importlib.abc.InspectLoader." -"get_source`)." +"with universal newlines (as required " +"by :meth:`importlib.abc.InspectLoader.get_source`)." msgstr "" msgid "Resolve a relative module name to an absolute one." @@ -1199,15 +1213,17 @@ msgstr "" msgid "" "If **name** has no leading dots, then **name** is simply returned. This " -"allows for usage such as ``importlib.util.resolve_name('sys', __spec__." -"parent)`` without doing a check to see if the **package** argument is needed." +"allows for usage such as ``importlib.util.resolve_name('sys', " +"__spec__.parent)`` without doing a check to see if the **package** argument " +"is needed." msgstr "" msgid "" ":exc:`ImportError` is raised if **name** is a relative module name but " -"**package** is a false value (e.g. ``None`` or the empty string). :exc:" -"`ImportError` is also raised if a relative name would escape its containing " -"package (e.g. requesting ``..bacon`` from within the ``spam`` package)." +"**package** is a false value (e.g. ``None`` or the empty " +"string). :exc:`ImportError` is also raised if a relative name would escape " +"its containing package (e.g. requesting ``..bacon`` from within the ``spam`` " +"package)." msgstr "" msgid "" @@ -1229,7 +1245,9 @@ msgid "" "automatically imported." msgstr "" -msgid "**name** and **package** work the same as for :func:`import_module`." +msgid "" +"**name** and **package** work the same as " +"for :func:`importlib.import_module`." msgstr "" msgid "" @@ -1259,9 +1277,10 @@ msgstr "" msgid "" "A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " "instance based on a loader. The parameters have the same meaning as they do " -"for ModuleSpec. The function uses available :term:`loader` APIs, such as :" -"meth:`InspectLoader.is_package`, to fill in any missing information on the " -"spec." +"for ModuleSpec. The function uses available :term:`loader` APIs, such " +"as :meth:`InspectLoader.is_package " +"`, to fill in any missing " +"information on the spec." msgstr "" msgid "" @@ -1308,15 +1327,16 @@ msgid "" msgstr "" msgid "" -"This class **only** works with loaders that define :meth:`~importlib.abc." -"Loader.exec_module` as control over what module type is used for the module " -"is required. For those same reasons, the loader's :meth:`~importlib.abc." -"Loader.create_module` method must return ``None`` or a type for which its " -"``__class__`` attribute can be mutated along with not using :term:`slots " -"<__slots__>`. Finally, modules which substitute the object placed into :data:" -"`sys.modules` will not work as there is no way to properly replace the " -"module references throughout the interpreter safely; :exc:`ValueError` is " -"raised if such a substitution is detected." +"This class **only** works with loaders that " +"define :meth:`~importlib.abc.Loader.exec_module` as control over what module " +"type is used for the module is required. For those same reasons, the " +"loader's :meth:`~importlib.abc.Loader.create_module` method must return " +"``None`` or a type for which its ``__class__`` attribute can be mutated " +"along with not using :term:`slots <__slots__>`. Finally, modules which " +"substitute the object placed into :data:`sys.modules` will not work as there " +"is no way to properly replace the module references throughout the " +"interpreter safely; :exc:`ValueError` is raised if such a substitution is " +"detected." msgstr "" msgid "" @@ -1329,8 +1349,8 @@ msgstr "" msgid "" "Began calling :meth:`~importlib.abc.Loader.create_module`, removing the " -"compatibility warning for :class:`importlib.machinery.BuiltinImporter` and :" -"class:`importlib.machinery.ExtensionFileLoader`." +"compatibility warning for :class:`importlib.machinery.BuiltinImporter` " +"and :class:`importlib.machinery.ExtensionFileLoader`." msgstr "" msgid "" @@ -1371,8 +1391,8 @@ msgid "" msgstr "" msgid "" -"Note that if ``name`` is a submodule (contains a dot), :func:`importlib.util." -"find_spec` will import the parent module. ::" +"Note that if ``name`` is a submodule (contains a " +"dot), :func:`importlib.util.find_spec` will import the parent module. ::" msgstr "" msgid "" @@ -1399,11 +1419,11 @@ msgstr "" msgid "" "This recipe should be used with caution: it is an approximation of an import " -"statement where the file path is specified directly, rather than :data:`sys." -"path` being searched. Alternatives should first be considered first, such as " -"modifying :data:`sys.path` when a proper module is required, or using :func:" -"`runpy.run_path` when the global namespace resulting from running a Python " -"file is appropriate." +"statement where the file path is specified directly, rather " +"than :data:`sys.path` being searched. Alternatives should first be " +"considered first, such as modifying :data:`sys.path` when a proper module is " +"required, or using :func:`runpy.run_path` when the global namespace " +"resulting from running a Python file is appropriate." msgstr "" msgid "" @@ -1462,16 +1482,17 @@ msgid "Setting up an importer" msgstr "" msgid "" -"For deep customizations of import, you typically want to implement an :term:" -"`importer`. This means managing both the :term:`finder` and :term:`loader` " -"side of things. For finders there are two flavours to choose from depending " -"on your needs: a :term:`meta path finder` or a :term:`path entry finder`. " -"The former is what you would put on :data:`sys.meta_path` while the latter " -"is what you create using a :term:`path entry hook` on :data:`sys.path_hooks` " -"which works with :data:`sys.path` entries to potentially create a finder. " -"This example will show you how to register your own importers so that import " -"will use them (for creating an importer for yourself, read the documentation " -"for the appropriate classes defined within this package)::" +"For deep customizations of import, you typically want to implement " +"an :term:`importer`. This means managing both the :term:`finder` " +"and :term:`loader` side of things. For finders there are two flavours to " +"choose from depending on your needs: a :term:`meta path finder` or " +"a :term:`path entry finder`. The former is what you would put " +"on :data:`sys.meta_path` while the latter is what you create using " +"a :term:`path entry hook` on :data:`sys.path_hooks` which works " +"with :data:`sys.path` entries to potentially create a finder. This example " +"will show you how to register your own importers so that import will use " +"them (for creating an importer for yourself, read the documentation for the " +"appropriate classes defined within this package)::" msgstr "" msgid "" diff --git a/library/importlib.resources.abc.po b/library/importlib.resources.abc.po index 94698e9..c6fb0f8 100644 --- a/library/importlib.resources.abc.po +++ b/library/importlib.resources.abc.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,9 +41,9 @@ msgid "" msgstr "" msgid "" -"For any of methods of this class, a *resource* argument is expected to be a :" -"term:`path-like object` which represents conceptually just a file name. This " -"means that no subdirectory paths should be included in the *resource* " +"For any of methods of this class, a *resource* argument is expected to be " +"a :term:`path-like object` which represents conceptually just a file name. " +"This means that no subdirectory paths should be included in the *resource* " "argument. This is because the location of the package the reader is for, " "acts as the \"directory\". Hence the metaphor for directories and file names " "is packages and resources, respectively. This is also why instances of this " @@ -74,13 +74,13 @@ msgid "Returns the file system path to the *resource*." msgstr "" msgid "" -"If the resource does not concretely exist on the file system, raise :exc:" -"`FileNotFoundError`." +"If the resource does not concretely exist on the file system, " +"raise :exc:`FileNotFoundError`." msgstr "" msgid "" -"Returns ``True`` if the named *path* is considered a resource. :exc:" -"`FileNotFoundError` is raised if *path* does not exist." +"Returns ``True`` if the named *path* is considered a " +"resource. :exc:`FileNotFoundError` is raised if *path* does not exist." msgstr "" msgid "The argument *name* was renamed to *path*." @@ -89,8 +89,8 @@ msgstr "" msgid "" "Returns an :term:`iterable` of strings over the contents of the package. Do " "note that it is not required that all names returned by the iterator be " -"actual resources, e.g. it is acceptable to return names for which :meth:" -"`is_resource` would be false." +"actual resources, e.g. it is acceptable to return names for " +"which :meth:`is_resource` would be false." msgstr "" msgid "" @@ -110,8 +110,8 @@ msgid "" msgstr "" msgid "" -"For a representation of the object on the file-system, use :meth:`importlib." -"resources.as_file`." +"For a representation of the object on the file-system, " +"use :meth:`importlib.resources.as_file`." msgstr "" msgid "Abstract. The base name of this object without any parent references." @@ -127,8 +127,8 @@ msgid "Return ``True`` if self is a file." msgstr "" msgid "" -"Traverse directories according to *pathsegments* and return the result as :" -"class:`!Traversable`." +"Traverse directories according to *pathsegments* and return the result " +"as :class:`!Traversable`." msgstr "" msgid "" @@ -167,8 +167,8 @@ msgid "" msgstr "" msgid "" -"When opening as text, accepts encoding parameters such as those accepted by :" -"class:`io.TextIOWrapper`." +"When opening as text, accepts encoding parameters such as those accepted " +"by :class:`io.TextIOWrapper`." msgstr "" msgid "Read contents of self as bytes." @@ -178,11 +178,12 @@ msgid "Read contents of self as text." msgstr "" msgid "" -"An abstract base class for resource readers capable of serving the :meth:" -"`importlib.resources.files` interface. Subclasses :class:`ResourceReader` " -"and provides concrete implementations of the :class:`!ResourceReader`'s " -"abstract methods. Therefore, any loader supplying :class:`!" -"TraversableResources` also supplies :class:`!ResourceReader`." +"An abstract base class for resource readers capable of serving " +"the :meth:`importlib.resources.files` interface. " +"Subclasses :class:`ResourceReader` and provides concrete implementations of " +"the :class:`!ResourceReader`'s abstract methods. Therefore, any loader " +"supplying :class:`!TraversableResources` also supplies :class:`!" +"ResourceReader`." msgstr "" msgid "" diff --git a/library/importlib.resources.po b/library/importlib.resources.po index 2fbbc3a..90e56f7 100644 --- a/library/importlib.resources.po +++ b/library/importlib.resources.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,8 +54,8 @@ msgid "" msgstr "" msgid "" -":mod:`importlib.resources` follows the same security model as the built-in :" -"func:`open` function. Passing untrusted inputs to the functions in this " +":mod:`importlib.resources` follows the same security model as the built-" +"in :func:`open` function. Passing untrusted inputs to the functions in this " "module is unsafe." msgstr "" @@ -73,8 +73,8 @@ msgid "" msgstr "" msgid "" -"Represents an anchor for resources, either a :class:`module object ` or a module name as a string. Defined as ``Union[str, " +"Represents an anchor for resources, either a :class:`module object " +"` or a module name as a string. Defined as ``Union[str, " "ModuleType]``." msgstr "" @@ -136,8 +136,9 @@ msgid "For all the following functions:" msgstr "" msgid "" -"*anchor* is an :class:`~importlib.resources.Anchor`, as in :func:`~importlib." -"resources.files`. Unlike in ``files``, it may not be omitted." +"*anchor* is an :class:`~importlib.resources.Anchor`, as " +"in :func:`~importlib.resources.files`. Unlike in ``files``, it may not be " +"omitted." msgstr "" msgid "" diff --git a/library/index.po b/library/index.po index 12b1b02..c92edf6 100644 --- a/library/index.po +++ b/library/index.po @@ -11,33 +11,38 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pa\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -msgid "The Python Standard Library" +msgid "The Python standard library" msgstr "" msgid "" -"While :ref:`reference-index` describes the exact syntax and semantics of the " -"Python language, this library reference manual describes the standard " -"library that is distributed with Python. It also describes some of the " -"optional components that are commonly included in Python distributions." +"This library reference manual describes the standard library distributed " +"with Python. It also describes some of the optional components that are " +"commonly included in Python distributions." msgstr "" msgid "" -"Python's standard library is very extensive, offering a wide range of " -"facilities as indicated by the long table of contents listed below. The " -"library contains built-in modules (written in C) that provide access to " -"system functionality such as file I/O that would otherwise be inaccessible " -"to Python programmers, as well as modules written in Python that provide " +"Elsewhere, :ref:`reference-index` describes the exact syntax and semantics " +"of the Python language, and :ref:`builtins-index` describes the built-in " +"functions." +msgstr "" + +msgid "" +"Python's standard library is extensive, offering a wide range of facilities " +"as indicated by the long table of contents listed below. The library " +"contains built-in modules (written in C) that provide access to system " +"functionality such as file I/O that would otherwise be inaccessible to " +"Python programmers, as well as modules written in Python that provide " "standardized solutions for many problems that occur in everyday programming. " "Some of these modules are explicitly designed to encourage and enhance the " "portability of Python programs by abstracting away platform-specifics into " diff --git a/library/inspect.po b/library/inspect.po index 13db5c4..c2a36be 100644 --- a/library/inspect.po +++ b/library/inspect.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,10 +50,10 @@ msgstr "" msgid "" "The :func:`getmembers` function retrieves the members of an object such as a " "class or module. The functions whose names begin with \"is\" are mainly " -"provided as convenient choices for the second argument to :func:" -"`getmembers`. They also help you determine when you can expect to find the " -"following special attributes (see :ref:`import-mod-attrs` for module " -"attributes):" +"provided as convenient choices for the second argument " +"to :func:`getmembers`. They also help you determine when you can expect to " +"find the following special attributes (see :ref:`import-mod-attrs` for " +"module attributes):" msgstr "" msgid "Type" @@ -503,7 +504,9 @@ msgstr "" msgid "original name of this function or method" msgstr "" -msgid "instance to which a method is bound, or ``None``" +msgid "" +"instance to which a method is bound, or module object a function was defined " +"in, or ``None``" msgstr "" msgid "Add ``__qualname__`` and ``gi_yieldfrom`` attributes to generators." @@ -666,6 +669,11 @@ msgid "" "wrapped function is a Python generator function." msgstr "" +msgid "" +":term:`Duck-typed ` function-like objects now return ``True`` " +"if their code object has the :data:`CO_GENERATOR` flag." +msgstr "" + msgid "" "Functions wrapped in :func:`functools.partialmethod` now return ``True`` if " "the wrapped function is a Python generator function." @@ -677,8 +685,8 @@ msgstr "" msgid "" "Return ``True`` if the object is a :term:`coroutine function` (a function " "defined with an :keyword:`async def` syntax), a :func:`functools.partial` " -"wrapping a :term:`coroutine function`, or a sync function marked with :func:" -"`markcoroutinefunction`." +"wrapping a :term:`coroutine function`, or a sync function marked " +"with :func:`markcoroutinefunction`." msgstr "" msgid "" @@ -686,6 +694,11 @@ msgid "" "wrapped function is a :term:`coroutine function`." msgstr "" +msgid "" +":term:`Duck-typed ` function-like objects now return ``True`` " +"if their code object has the :data:`CO_COROUTINE` flag." +msgstr "" + msgid "" "Sync functions marked with :func:`markcoroutinefunction` now return ``True``." msgstr "" @@ -707,13 +720,13 @@ msgstr "" msgid "" "When possible, using an :keyword:`async def` function is preferred. Also " -"acceptable is calling the function and testing the return with :func:" -"`iscoroutine`." +"acceptable is calling the function and testing the return " +"with :func:`iscoroutine`." msgstr "" msgid "" -"Return ``True`` if the object is a :term:`coroutine` created by an :keyword:" -"`async def` function." +"Return ``True`` if the object is a :term:`coroutine` created by " +"an :keyword:`async def` function." msgstr "" msgid "" @@ -756,6 +769,11 @@ msgid "" "wrapped function is an :term:`asynchronous generator` function." msgstr "" +msgid "" +":term:`Duck-typed ` function-like objects now return ``True`` " +"if their code object has the :data:`CO_ASYNC_GENERATOR` flag." +msgstr "" + msgid "" "Functions wrapped in :func:`functools.partialmethod` now return ``True`` if " "the wrapped function is a :term:`asynchronous generator` function." @@ -785,8 +803,9 @@ msgid "" msgstr "" msgid "" -"These are instances of :class:`~types.MethodWrapperType`, such as :meth:" -"`~object.__str__`, :meth:`~object.__eq__` and :meth:`~object.__repr__`." +"These are instances of :class:`~types.MethodWrapperType`, such " +"as :meth:`~object.__str__`, :meth:`~object.__eq__` " +"and :meth:`~object.__repr__`." msgstr "" msgid "" @@ -798,8 +817,8 @@ msgid "Return ``True`` if the object is an abstract base class." msgstr "" msgid "" -"Return ``True`` if the object is a method descriptor, but not if :func:" -"`isclass`, :func:`ismethod` or :func:`isfunction` is true." +"Return ``True`` if the object is a method descriptor, but not " +"if :func:`isclass`, :func:`ismethod` or :func:`isfunction` is true." msgstr "" msgid "" @@ -811,76 +830,79 @@ msgid "" msgstr "" msgid "" -"Method descriptors that also pass any of the other tests (:func:`!isclass`, :" -"func:`!ismethod` or :func:`!isfunction`) make this function return " -"``False``, simply because those other tests promise more -- you can, for " -"example, count on having the :attr:`~method.__func__` attribute when an " +"Method descriptors that also pass any of the other tests (:func:`!" +"isclass`, :func:`!ismethod` or :func:`!isfunction`) make this function " +"return ``False``, simply because those other tests promise more -- you can, " +"for example, count on having the :attr:`~method.__func__` attribute when an " "object passes :func:`ismethod`." msgstr "" msgid "" -"This function no longer incorrectly reports objects with :meth:`~object." -"__get__` and :meth:`~object.__delete__`, but not :meth:`~object.__set__`, as " -"being method descriptors (such objects are data descriptors, not method " -"descriptors)." +"This function no longer incorrectly reports objects " +"with :meth:`~object.__get__` and :meth:`~object.__delete__`, but " +"not :meth:`~object.__set__`, as being method descriptors (such objects are " +"data descriptors, not method descriptors)." msgstr "" msgid "" -"Return ``True`` if the object is a data descriptor, but not if :func:" -"`isclass`, :func:`ismethod` or :func:`isfunction` is true." +"Return ``True`` if the object is a data descriptor, but not " +"if :func:`isclass`, :func:`ismethod` or :func:`isfunction` is true." msgstr "" msgid "" -"Data descriptors always have a :meth:`~object.__set__` method and/or a :meth:" -"`~object.__delete__` method. Optionally, they may also have a :meth:" -"`~object.__get__` method." +"Data descriptors always have a :meth:`~object.__set__` method and/or " +"a :meth:`~object.__delete__` method. Optionally, they may also have " +"a :meth:`~object.__get__` method." msgstr "" msgid "" "Examples of data descriptors are :func:`properties `, getsets and " "member descriptors. Note that for the latter two (defined only in C " -"extension modules), more specific tests are available: :func:" -"`isgetsetdescriptor` and :func:`ismemberdescriptor`, respectively." +"extension modules), more specific tests are " +"available: :func:`isgetsetdescriptor` and :func:`ismemberdescriptor`, " +"respectively." msgstr "" msgid "" -"While data descriptors may also have :attr:`~definition.__name__` and :attr:" -"`!__doc__` attributes (as properties, getsets and member descriptors do), " -"this is not necessarily the case in general." +"While data descriptors may also have :attr:`~definition.__name__` " +"and :attr:`!__doc__` attributes (as properties, getsets and member " +"descriptors do), this is not necessarily the case in general." msgstr "" msgid "" "This function now reports objects with only a :meth:`~object.__set__` method " "as being data descriptors (the presence of :meth:`~object.__get__` is no " -"longer required for that). Moreover, objects with :meth:`~object." -"__delete__`, but not :meth:`~object.__set__`, are now properly recognized as " -"data descriptors as well, which was not the case previously." +"longer required for that). Moreover, objects " +"with :meth:`~object.__delete__`, but not :meth:`~object.__set__`, are now " +"properly recognized as data descriptors as well, which was not the case " +"previously." msgstr "" msgid "Return ``True`` if the object is a getset descriptor." msgstr "" msgid "" -"getsets are attributes defined in extension modules via :c:type:" -"`PyGetSetDef` structures. For Python implementations without such types, " -"this method will always return ``False``." +"getsets are attributes defined in extension modules " +"via :c:type:`PyGetSetDef` structures. For Python implementations without " +"such types, this method will always return ``False``." msgstr "" msgid "Return ``True`` if the object is a member descriptor." msgstr "" msgid "" -"Member descriptors are attributes defined in extension modules via :c:type:" -"`PyMemberDef` structures. For Python implementations without such types, " -"this method will always return ``False``." +"Member descriptors are attributes defined in extension modules " +"via :c:type:`PyMemberDef` structures. For Python implementations without " +"such types, this method will always return ``False``." msgstr "" msgid "Retrieving source code" msgstr "" msgid "" -"Get the documentation string for an object, cleaned up with :func:" -"`cleandoc`. If the documentation string for an object is not provided:" +"Get the documentation string for an object, cleaned up " +"with :func:`cleandoc`. If the documentation string for an object is not " +"provided:" msgstr "" msgid "" @@ -935,8 +957,8 @@ msgstr "" msgid "" "Return the name of the Python source file in which an object was defined or " "``None`` if no way can be identified to get the source. An :exc:`OSError` " -"is raised if the source code cannot be retrieved. This will fail with a :exc:" -"`TypeError` if the object is a built-in module, class, or function." +"is raised if the source code cannot be retrieved. This will fail with " +"a :exc:`TypeError` if the object is a built-in module, class, or function." msgstr "" msgid "" @@ -1011,23 +1033,25 @@ msgstr "" msgid "" "If some of the annotations are strings (e.g., because ``from __future__ " "import annotations`` was used), :func:`signature` will attempt to " -"automatically un-stringize the annotations using :func:`annotationlib." -"get_annotations`. The *globals*, *locals*, and *eval_str* parameters are " -"passed into :func:`!annotationlib.get_annotations` when resolving the " -"annotations; see the documentation for :func:`!annotationlib." -"get_annotations` for instructions on how to use these parameters. A member " -"of the :class:`annotationlib.Format` enum can be passed to the " -"*annotation_format* parameter to control the format of the returned " -"annotations. For example, use ``annotation_format=annotationlib.Format." -"STRING`` to return annotations in string format." +"automatically un-stringize the annotations " +"using :func:`annotationlib.get_annotations`. The *globals*, *locals*, and " +"*eval_str* parameters are passed into :func:`!annotationlib.get_annotations` " +"when resolving the annotations; see the documentation for :func:`!" +"annotationlib.get_annotations` for instructions on how to use these " +"parameters. A member of the :class:`annotationlib.Format` enum can be passed " +"to the *annotation_format* parameter to control the format of the returned " +"annotations. For example, use " +"``annotation_format=annotationlib.Format.STRING`` to return annotations in " +"string format." msgstr "" msgid "" -"Raises :exc:`ValueError` if no signature can be provided, and :exc:" -"`TypeError` if that type of object is not supported. Also, if the " +"Raises :exc:`ValueError` if no signature can be provided, " +"and :exc:`TypeError` if that type of object is not supported. Also, if the " "annotations are stringized, and *eval_str* is not false, the ``eval()`` " -"call(s) to un-stringize the annotations in :func:`annotationlib." -"get_annotations` could potentially raise any kind of exception." +"call(s) to un-stringize the annotations " +"in :func:`annotationlib.get_annotations` could potentially raise any kind of " +"exception." msgstr "" msgid "" @@ -1092,9 +1116,9 @@ msgid "A special class-level marker to specify absence of a return annotation." msgstr "" msgid "" -"An ordered mapping of parameters' names to the corresponding :class:" -"`Parameter` objects. Parameters appear in strict definition order, " -"including keyword-only parameters." +"An ordered mapping of parameters' names to the " +"corresponding :class:`Parameter` objects. Parameters appear in strict " +"definition order, including keyword-only parameters." msgstr "" msgid "" @@ -1122,11 +1146,11 @@ msgid "" msgstr "" msgid "" -"Create a new :class:`Signature` instance based on the instance :meth:" -"`replace` was invoked on. It is possible to pass different *parameters* and/" -"or *return_annotation* to override the corresponding properties of the base " -"signature. To remove ``return_annotation`` from the copied :class:`!" -"Signature`, pass in :attr:`Signature.empty`." +"Create a new :class:`Signature` instance based on the " +"instance :meth:`replace` was invoked on. It is possible to pass different " +"*parameters* and/or *return_annotation* to override the corresponding " +"properties of the base signature. To remove ``return_annotation`` from the " +"copied :class:`!Signature`, pass in :attr:`Signature.empty`." msgstr "" msgid "" @@ -1140,8 +1164,8 @@ msgid "" msgstr "" msgid "" -":class:`Signature` objects are also supported by the generic function :func:" -"`copy.replace`." +":class:`Signature` objects are also supported by the generic " +"function :func:`copy.replace`." msgstr "" msgid "Create a string representation of the :class:`Signature` object." @@ -1156,9 +1180,9 @@ msgstr "" msgid "" "If *quote_annotation_strings* is False, :term:`annotations ` in " "the signature are displayed without opening and closing quotation marks if " -"they are strings. This is useful if the signature was created with the :attr:" -"`~annotationlib.Format.STRING` format or if ``from __future__ import " -"annotations`` was used." +"they are strings. This is useful if the signature was created with " +"the :attr:`~annotationlib.Format.STRING` format or if ``from __future__ " +"import annotations`` was used." msgstr "" msgid "The *unquote_annotations* parameter was added." @@ -1184,8 +1208,8 @@ msgstr "" msgid "" ":class:`!Parameter` objects are *immutable*. Instead of modifying a :class:`!" -"Parameter` object, you can use :meth:`Parameter.replace` or :func:`copy." -"replace` to create a modified copy." +"Parameter` object, you can use :meth:`Parameter.replace` " +"or :func:`copy.replace` to create a modified copy." msgstr "" msgid "Parameter objects are now picklable and :term:`hashable`." @@ -1223,8 +1247,9 @@ msgstr "" msgid "" "Describes how argument values are bound to the parameter. The possible " -"values are accessible via :class:`Parameter` (like ``Parameter." -"KEYWORD_ONLY``), and support comparison and ordering, in the following order:" +"values are accessible via :class:`Parameter` (like " +"``Parameter.KEYWORD_ONLY``), and support comparison and ordering, in the " +"following order:" msgstr "" msgid "Name" @@ -1330,8 +1355,8 @@ msgid "" msgstr "" msgid "" -":class:`Parameter` objects are also supported by the generic function :func:" -"`copy.replace`." +":class:`Parameter` objects are also supported by the generic " +"function :func:`copy.replace`." msgstr "" msgid "" @@ -1347,8 +1372,8 @@ msgstr "" msgid "" "A mutable mapping of parameters' names to arguments' values. Contains only " -"explicitly bound arguments. Changes in :attr:`arguments` will reflect in :" -"attr:`args` and :attr:`kwargs`." +"explicitly bound arguments. Changes in :attr:`arguments` will reflect " +"in :attr:`args` and :attr:`kwargs`." msgstr "" msgid "" @@ -1358,24 +1383,24 @@ msgstr "" msgid "" "Arguments for which :meth:`Signature.bind` or :meth:`Signature.bind_partial` " -"relied on a default value are skipped. However, if needed, use :meth:" -"`BoundArguments.apply_defaults` to add them." +"relied on a default value are skipped. However, if needed, " +"use :meth:`BoundArguments.apply_defaults` to add them." msgstr "" msgid "" -":attr:`arguments` is now of type :class:`dict`. Formerly, it was of type :" -"class:`collections.OrderedDict`." +":attr:`arguments` is now of type :class:`dict`. Formerly, it was of " +"type :class:`collections.OrderedDict`." msgstr "" msgid "" -"A tuple of positional arguments values. Dynamically computed from the :attr:" -"`arguments` attribute." +"A tuple of positional arguments values. Dynamically computed from " +"the :attr:`arguments` attribute." msgstr "" msgid "" -"A dict of keyword arguments values. Dynamically computed from the :attr:" -"`arguments` attribute. Arguments that can be passed positionally are " -"included in :attr:`args` instead." +"A dict of keyword arguments values. Dynamically computed from " +"the :attr:`arguments` attribute. Arguments that can be passed positionally " +"are included in :attr:`args` instead." msgstr "" msgid "A reference to the parent :class:`Signature` object." @@ -1434,8 +1459,8 @@ msgid "" msgstr "" msgid "" -"Get the names and default values of a Python function's parameters. A :term:" -"`named tuple` is returned:" +"Get the names and default values of a Python function's parameters. " +"A :term:`named tuple` is returned:" msgstr "" msgid "" @@ -1469,9 +1494,10 @@ msgstr "" msgid "" "A member of the :class:`annotationlib.Format` enum can be passed to the " "*annotation_format* parameter to control the format of the returned " -"annotations. For example, use ``annotation_format=annotationlib.Format." -"STRING`` to return annotations in string format. Note that with the default " -"``VALUE`` format, creation of some argspecs may raise an exception." +"annotations. For example, use " +"``annotation_format=annotationlib.Format.STRING`` to return annotations in " +"string format. Note that with the default ``VALUE`` format, creation of some " +"argspecs may raise an exception." msgstr "" msgid "" @@ -1481,27 +1507,28 @@ msgid "" msgstr "" msgid "" -"This method was previously documented as deprecated in favour of :func:" -"`signature` in Python 3.5, but that decision has been reversed in order to " -"restore a clearly supported standard interface for single-source Python 2/3 " -"code migrating away from the legacy :func:`!getargspec` API." +"This method was previously documented as deprecated in favour " +"of :func:`signature` in Python 3.5, but that decision has been reversed in " +"order to restore a clearly supported standard interface for single-source " +"Python 2/3 code migrating away from the legacy :func:`!getargspec` API." msgstr "" msgid "" -"Get information about arguments passed into a particular frame. A :term:" -"`named tuple` ``ArgInfo(args, varargs, keywords, locals)`` is returned. " -"*args* is a list of the argument names. *varargs* and *keywords* are the " -"names of the ``*`` and ``**`` arguments or ``None``. *locals* is the locals " -"dictionary of the given frame." +"Get information about arguments passed into a particular frame. " +"A :term:`named tuple` ``ArgInfo(args, varargs, keywords, locals)`` is " +"returned. *args* is a list of the argument names. *varargs* and *keywords* " +"are the names of the ``*`` and ``**`` arguments or ``None``. *locals* is " +"the locals dictionary of the given frame." msgstr "" msgid "This function was inadvertently marked as deprecated in Python 3.5." msgstr "" msgid "" -"Format a pretty argument spec from the four values returned by :func:" -"`getargvalues`. The format\\* arguments are the corresponding optional " -"formatting functions that are called to turn names and values into strings." +"Format a pretty argument spec from the four values returned " +"by :func:`getargvalues`. The format\\* arguments are the corresponding " +"optional formatting functions that are called to turn names and values into " +"strings." msgstr "" msgid "" @@ -1558,17 +1585,17 @@ msgid "" msgstr "" msgid "" -"Get the object wrapped by *func*. It follows the chain of :attr:" -"`__wrapped__` attributes returning the last object in the chain." +"Get the object wrapped by *func*. It follows the chain " +"of :attr:`__wrapped__` attributes returning the last object in the chain." msgstr "" msgid "" "*stop* is an optional callback accepting an object in the wrapper chain as " "its sole argument that allows the unwrapping to be terminated early if the " "callback returns a true value. If the callback never returns a true value, " -"the last object in the chain is returned as usual. For example, :func:" -"`signature` uses this to stop unwrapping if any object in the chain has a " -"``__signature__`` attribute defined." +"the last object in the chain is returned as usual. For " +"example, :func:`signature` uses this to stop unwrapping if any object in the " +"chain has a ``__signature__`` attribute defined." msgstr "" msgid ":exc:`ValueError` is raised if a cycle is encountered." @@ -1583,8 +1610,8 @@ msgid "" msgstr "" msgid "" -"This function may execute arbitrary code contained in annotations. See :ref:" -"`annotationlib-security` for more information." +"This function may execute arbitrary code contained in annotations. " +"See :ref:`annotationlib-security` for more information." msgstr "" msgid "" @@ -1688,9 +1715,10 @@ msgstr "" msgid "" "Though the cycle detector will catch these, destruction of the frames (and " -"local variables) can be made deterministic by removing the cycle in a :" -"keyword:`finally` clause. This is also important if the cycle detector was " -"disabled when Python was compiled or using :func:`gc.disable`. For example::" +"local variables) can be made deterministic by removing the cycle in " +"a :keyword:`finally` clause. This is also important if the cycle detector " +"was disabled when Python was compiled or using :func:`gc.disable`. For " +"example::" msgstr "" msgid "" @@ -1773,14 +1801,14 @@ msgstr "" msgid "" "Both :func:`getattr` and :func:`hasattr` can trigger code execution when " "fetching or checking for the existence of attributes. Descriptors, like " -"properties, will be invoked and :meth:`~object.__getattr__` and :meth:" -"`~object.__getattribute__` may be called." +"properties, will be invoked and :meth:`~object.__getattr__` " +"and :meth:`~object.__getattribute__` may be called." msgstr "" msgid "" "For cases where you want passive introspection, like documentation tools, " -"this can be inconvenient. :func:`getattr_static` has a similar signature as :" -"func:`getattr` but avoids executing code when it fetches attributes." +"this can be inconvenient. :func:`getattr_static` has a similar signature " +"as :func:`getattr` but avoids executing code when it fetches attributes." msgstr "" msgid "" @@ -1884,10 +1912,10 @@ msgstr "" msgid "" "Get current state of an asynchronous generator object. The function is " -"intended to be used with asynchronous iterator objects created by :keyword:" -"`async def` functions which use the :keyword:`yield` statement, but will " -"accept any asynchronous generator-like object that has ``ag_running`` and " -"``ag_frame`` attributes." +"intended to be used with asynchronous iterator objects created " +"by :keyword:`async def` functions which use the :keyword:`yield` statement, " +"but will accept any asynchronous generator-like object that has " +"``ag_running`` and ``ag_frame`` attributes." msgstr "" msgid "AGEN_CREATED: Waiting to start execution." @@ -2008,8 +2036,8 @@ msgstr "" msgid "" "This is an :class:`enum.IntFlag` that represents the flags that can be " -"passed to the :meth:`~object.__buffer__` method of objects implementing the :" -"ref:`buffer protocol `." +"passed to the :meth:`~object.__buffer__` method of objects implementing " +"the :ref:`buffer protocol `." msgstr "" msgid "The meaning of the flags is explained at :ref:`buffer-request-types`." diff --git a/library/internet.po b/library/internet.po index d59a55b..087b9cf 100644 --- a/library/internet.po +++ b/library/internet.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,9 +28,9 @@ msgstr "" msgid "" "The modules described in this chapter implement internet protocols and " "support for related technology. They are all implemented in Python. Most of " -"these modules require the presence of the system-dependent module :mod:" -"`socket`, which is currently supported on most popular platforms. Here is " -"an overview:" +"these modules require the presence of the system-dependent " +"module :mod:`socket`, which is currently supported on most popular " +"platforms. Here is an overview:" msgstr "" msgid "WWW" diff --git a/library/intro.po b/library/intro.po index c34929e..613115b 100644 --- a/library/intro.po +++ b/library/intro.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,61 +25,37 @@ msgstr "" msgid "Introduction" msgstr "" -msgid "The \"Python library\" contains several different kinds of components." -msgstr "" - -msgid "" -"It contains data types that would normally be considered part of the " -"\"core\" of a language, such as numbers and lists. For these types, the " -"Python language core defines the form of literals and places some " -"constraints on their semantics, but does not fully define the semantics. " -"(On the other hand, the language core does define syntactic properties like " -"the spelling and priorities of operators.)" -msgstr "" - -msgid "" -"The library also contains built-in functions and exceptions --- objects that " -"can be used by all Python code without the need of an :keyword:`import` " -"statement. Some of these are defined by the core language, but many are not " -"essential for the core semantics and are only described here." -msgstr "" - -msgid "" -"The bulk of the library, however, consists of a collection of modules. There " -"are many ways to dissect this collection. Some modules are written in C and " -"built in to the Python interpreter; others are written in Python and " -"imported in source form. Some modules provide interfaces that are highly " -"specific to Python, like printing a stack trace; some provide interfaces " -"that are specific to particular operating systems, such as access to " -"specific hardware; others provide interfaces that are specific to a " -"particular application domain, like the World Wide Web. Some modules are " -"available in all versions and ports of Python; others are only available " -"when the underlying system supports or requires them; yet others are " -"available only when a particular configuration option was chosen at the time " -"when Python was compiled and installed." -msgstr "" - msgid "" -"This manual is organized \"from the inside out:\" it first describes the " -"built-in functions, data types and exceptions, and finally the modules, " -"grouped in chapters of related modules." +"The Python standard library consists of a collection of modules. There are " +"many ways to dissect this collection. Most modules are written in Python, " +"but some are written in C. All can be imported into your program to add " +"functionality. Some modules provide interfaces that are highly specific to " +"Python, like printing a stack trace; some provide interfaces that are " +"specific to particular operating systems, such as access to specific " +"hardware; others provide interfaces that are specific to a particular " +"application domain, like web development. Some modules are available in all " +"versions and ports of Python; others are only available when the underlying " +"system supports or requires them; yet others are available only when a " +"particular configuration option was chosen at the time when Python was " +"compiled and installed." msgstr "" msgid "" -"This means that if you start reading this manual from the start, and skip to " -"the next chapter when you get bored, you will get a reasonable overview of " -"the available modules and application areas that are supported by the Python " +"If you start reading this manual from the start, and skip to the next " +"chapter when you get bored, you will get a reasonable overview of the " +"available modules and application areas that are supported by the Python " "library. Of course, you don't *have* to read it like a novel --- you can " "also browse the table of contents (in front of the manual), or look for a " "specific function, module or term in the index (in the back). And finally, " -"if you enjoy learning about random subjects, you choose a random page number " -"(see module :mod:`random`) and read a section or two. Regardless of the " -"order in which you read the sections of this manual, it helps to start with " -"chapter :ref:`built-in-funcs`, as the remainder of the manual assumes " -"familiarity with this material." +"if you enjoy learning about random subjects, you choose a random page and " +"read a section or two. Regardless of the order in which you read the " +"sections of this manual, it helps to first read :ref:`built-in-funcs`, as " +"the remainder of this section assumes familiarity with this material." msgstr "" -msgid "Let the show begin!" +msgid "" +"The built-in functions and classes (which can be used without " +"an :keyword:`import` statement) are described in :ref:`builtins-index`." msgstr "" msgid "Notes on availability" @@ -137,10 +113,11 @@ msgstr "" msgid "" "Process-related APIs are not available or always fail with an error. That " -"includes APIs that spawn new processes (:func:`~os.fork`, :func:`~os." -"execve`), wait for processes (:func:`~os.waitpid`), send signals (:func:`~os." -"kill`), or otherwise interact with processes. The :mod:`subprocess` is " -"importable but does not work." +"includes APIs that spawn new processes " +"(:func:`~os.fork`, :func:`~os.execve`), wait for processes " +"(:func:`~os.waitpid`), send signals (:func:`~os.kill`), or otherwise " +"interact with processes. The :mod:`subprocess` is importable but does not " +"work." msgstr "" msgid "" @@ -174,10 +151,10 @@ msgstr "" msgid "" "Mobile platforms can only use Python in \"embedded\" mode. There is no " -"Python REPL, and no ability to use separate executables such as :program:" -"`python` or :program:`pip`. To add Python code to your mobile app, you must " -"use the :ref:`Python embedding API `. For more details, see :ref:" -"`using-android` and :ref:`using-ios`." +"Python REPL, and no ability to use separate executables such " +"as :program:`python` or :program:`pip`. To add Python code to your mobile " +"app, you must use the :ref:`Python embedding API `. For more " +"details, see :ref:`using-android` and :ref:`using-ios`." msgstr "" msgid "Subprocesses:" @@ -186,8 +163,8 @@ msgstr "" msgid "" "On Android, creating subprocesses is possible but `officially unsupported " "`__. In " -"particular, Android does not support any part of the System V IPC API, so :" -"mod:`multiprocessing` is not available." +"particular, Android does not support any part of the System V IPC API, " +"so :mod:`multiprocessing` is not available." msgstr "" msgid "" @@ -211,8 +188,8 @@ msgstr "" msgid "" "On Android, the native ``stdout`` and ``stderr`` are not connected to " "anything, so Python installs its own streams which redirect messages to the " -"system log. These can be seen under the tags ``python.stdout`` and ``python." -"stderr`` respectively." +"system log. These can be seen under the tags ``python.stdout`` and " +"``python.stderr`` respectively." msgstr "" msgid "" @@ -231,6 +208,6 @@ msgid "" msgstr "" msgid "" -"As a result, Python modules that involve console manipulation (such as :mod:" -"`curses` and :mod:`readline`) are not available on mobile platforms." +"As a result, Python modules that involve console manipulation (such " +"as :mod:`curses` and :mod:`readline`) are not available on mobile platforms." msgstr "" diff --git a/library/io.po b/library/io.po index 00ab797..8da4680 100644 --- a/library/io.po +++ b/library/io.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -51,8 +51,8 @@ msgstr "" msgid "" "All streams are careful about the type of data you give to them. For " "example giving a :class:`str` object to the :meth:`!write` method of a " -"binary stream will raise a :exc:`TypeError`. So will giving a :class:" -"`bytes` object to the :meth:`!write` method of a text stream." +"binary stream will raise a :exc:`TypeError`. So will giving " +"a :class:`bytes` object to the :meth:`!write` method of a text stream." msgstr "" msgid "" @@ -92,8 +92,8 @@ msgid "" msgstr "" msgid "" -"The text stream API is described in detail in the documentation of :class:" -"`TextIOBase`." +"The text stream API is described in detail in the documentation " +"of :class:`TextIOBase`." msgstr "" msgid "Binary I/O" @@ -123,8 +123,8 @@ msgid "f = io.BytesIO(b\"some initial binary data: \\x00\\x01\")" msgstr "" msgid "" -"The binary stream API is described in detail in the docs of :class:" -"`BufferedIOBase`." +"The binary stream API is described in detail in the docs " +"of :class:`BufferedIOBase`." msgstr "" msgid "" @@ -158,46 +158,26 @@ msgid "" "implement retry behavior." msgstr "" -msgid "Text Encoding" +msgid "Text encoding" msgstr "" msgid "" -"The default encoding of :class:`TextIOWrapper` and :func:`open` is locale-" -"specific (:func:`locale.getencoding`)." -msgstr "" - -msgid "" -"However, many developers forget to specify the encoding when opening text " -"files encoded in UTF-8 (e.g. JSON, TOML, Markdown, etc...) since most Unix " -"platforms use UTF-8 locale by default. This causes bugs because the locale " -"encoding is not UTF-8 for most Windows users. For example::" -msgstr "" - -msgid "" -"# May not work on Windows when non-ASCII characters in the file.\n" -"with open(\"README.md\") as f:\n" -" long_description = f.read()" -msgstr "" - -msgid "" -"Accordingly, it is highly recommended that you specify the encoding " -"explicitly when opening text files. If you want to use UTF-8, pass " -"``encoding=\"utf-8\"``. To use the current locale encoding, " -"``encoding=\"locale\"`` is supported since Python 3.10." +"The default encoding of :class:`TextIOWrapper` and :func:`open` is UTF-8. " +"If :ref:`Python UTF-8 Mode ` is disabled, the default encoding is " +"locale-specific (:func:`locale.getencoding`)." msgstr "" msgid ":ref:`utf8-mode`" msgstr "" msgid "" -"Python UTF-8 Mode can be used to change the default encoding to UTF-8 from " -"locale-specific encoding." +"Python UTF-8 Mode ignores the locale encoding and forces the use of UTF-8." msgstr "" msgid ":pep:`686`" msgstr "" -msgid "Python 3.15 will make :ref:`utf8-mode` default." +msgid "Python 3.15 made :ref:`utf8-mode` the default." msgstr "" msgid "Opt-in EncodingWarning" @@ -207,27 +187,28 @@ msgid "See :pep:`597` for more details." msgstr "" msgid "" -"To find where the default locale encoding is used, you can enable the :" -"option:`-X warn_default_encoding <-X>` command line option or set the :" -"envvar:`PYTHONWARNDEFAULTENCODING` environment variable, which will emit an :" -"exc:`EncodingWarning` when the default encoding is used." +"To find where the default encoding is used, you can enable the :option:`-X " +"warn_default_encoding <-X>` command line option or set " +"the :envvar:`PYTHONWARNDEFAULTENCODING` environment variable, which will " +"emit an :exc:`EncodingWarning` when the default encoding is used." msgstr "" msgid "" "If you are providing an API that uses :func:`open` or :class:`TextIOWrapper` " -"and passes ``encoding=None`` as a parameter, you can use :func:" -"`text_encoding` so that callers of the API will emit an :exc:" -"`EncodingWarning` if they don't pass an ``encoding``. However, please " -"consider using UTF-8 by default (i.e. ``encoding=\"utf-8\"``) for new APIs." +"and passes ``encoding=None`` as a parameter, you can " +"use :func:`text_encoding` so that callers of the API will emit " +"an :exc:`EncodingWarning` if they don't pass an ``encoding``. However, " +"please consider using UTF-8 by default (i.e. ``encoding=\"utf-8\"``) for new " +"APIs." msgstr "" -msgid "High-level Module Interface" +msgid "High-level module interface" msgstr "" msgid "" "An int containing the default buffer size used by the module's buffered I/O " -"classes. :func:`open` uses the file's blksize (as obtained by :func:`os." -"stat`) if possible." +"classes. :func:`open` uses the file's blksize (as obtained " +"by :func:`os.stat`) if possible." msgstr "" msgid "This is an alias for the builtin :func:`open` function." @@ -248,16 +229,16 @@ msgid "*path* should be a :class:`str` and an absolute path." msgstr "" msgid "" -"The behavior of this function may be overridden by an earlier call to the :c:" -"func:`PyFile_SetOpenCodeHook`. However, assuming that *path* is a :class:" -"`str` and an absolute path, ``open_code(path)`` should always behave the " -"same as ``open(path, 'rb')``. Overriding the behavior is intended for " -"additional validation or preprocessing of the file." +"The behavior of this function may be overridden by an earlier call to " +"the :c:func:`PyFile_SetOpenCodeHook`. However, assuming that *path* is " +"a :class:`str` and an absolute path, ``open_code(path)`` should always " +"behave the same as ``open(path, 'rb')``. Overriding the behavior is intended " +"for additional validation or preprocessing of the file." msgstr "" msgid "" -"This is a helper function for callables that use :func:`open` or :class:" -"`TextIOWrapper` and have an ``encoding=None`` parameter." +"This is a helper function for callables that use :func:`open` " +"or :class:`TextIOWrapper` and have an ``encoding=None`` parameter." msgstr "" msgid "" @@ -267,9 +248,10 @@ msgid "" msgstr "" msgid "" -"This function emits an :class:`EncodingWarning` if :data:`sys.flags." -"warn_default_encoding ` is true and *encoding* is ``None``. " -"*stacklevel* specifies where the warning is emitted. For example::" +"This function emits an :class:`EncodingWarning` " +"if :data:`sys.flags.warn_default_encoding ` is true and " +"*encoding* is ``None``. *stacklevel* specifies where the warning is emitted. " +"For example::" msgstr "" msgid "" @@ -323,8 +305,8 @@ msgstr "" msgid "" "The abstract base classes also provide default implementations of some " "methods in order to help implementation of concrete stream classes. For " -"example, :class:`BufferedIOBase` provides unoptimized implementations of :" -"meth:`!readinto` and :meth:`!readline`." +"example, :class:`BufferedIOBase` provides unoptimized implementations " +"of :meth:`!readinto` and :meth:`!readline`." msgstr "" msgid "" @@ -337,18 +319,20 @@ msgstr "" msgid "" "The :class:`RawIOBase` ABC extends :class:`IOBase`. It deals with the " -"reading and writing of bytes to a stream. :class:`FileIO` subclasses :class:" -"`RawIOBase` to provide an interface to files in the machine's file system." +"reading and writing of bytes to a stream. :class:`FileIO` " +"subclasses :class:`RawIOBase` to provide an interface to files in the " +"machine's file system." msgstr "" msgid "" "The :class:`BufferedIOBase` ABC extends :class:`IOBase`. It deals with " -"buffering on a raw binary stream (:class:`RawIOBase`). Its subclasses, :" -"class:`BufferedWriter`, :class:`BufferedReader`, and :class:`BufferedRWPair` " -"buffer raw binary streams that are writable, readable, and both readable and " -"writable, respectively. :class:`BufferedRandom` provides a buffered " -"interface to seekable streams. Another :class:`BufferedIOBase` subclass, :" -"class:`BytesIO`, is a stream of in-memory bytes." +"buffering on a raw binary stream (:class:`RawIOBase`). Its " +"subclasses, :class:`BufferedWriter`, :class:`BufferedReader`, " +"and :class:`BufferedRWPair` buffer raw binary streams that are writable, " +"readable, and both readable and writable, " +"respectively. :class:`BufferedRandom` provides a buffered interface to " +"seekable streams. Another :class:`BufferedIOBase` " +"subclass, :class:`BytesIO`, is a stream of in-memory bytes." msgstr "" msgid "" @@ -360,8 +344,8 @@ msgid "" msgstr "" msgid "" -"Argument names are not part of the specification, and only the arguments of :" -"func:`open` are intended to be used as keyword arguments." +"Argument names are not part of the specification, and only the arguments " +"of :func:`open` are intended to be used as keyword arguments." msgstr "" msgid "" @@ -420,7 +404,7 @@ msgid "" "Inherited :class:`IOBase` methods, ``encoding``, ``errors``, and ``newlines``" msgstr "" -msgid "I/O Base Classes" +msgid "I/O base classes" msgstr "" msgid "The abstract base class for all I/O classes." @@ -441,9 +425,10 @@ msgid "" msgstr "" msgid "" -"The basic type used for binary data read from or written to a file is :class:" -"`bytes`. Other :term:`bytes-like objects ` are accepted " -"as method arguments too. Text I/O classes work with :class:`str` data." +"The basic type used for binary data read from or written to a file " +"is :class:`bytes`. Other :term:`bytes-like objects ` are " +"accepted as method arguments too. Text I/O classes work with :class:`str` " +"data." msgstr "" msgid "" @@ -460,9 +445,10 @@ msgid "" msgstr "" msgid "" -":class:`IOBase` is also a context manager and therefore supports the :" -"keyword:`with` statement. In this example, *file* is closed after the :" -"keyword:`!with` statement's suite is finished---even if an exception occurs::" +":class:`IOBase` is also a context manager and therefore supports " +"the :keyword:`with` statement. In this example, *file* is closed after " +"the :keyword:`!with` statement's suite is finished---even if an exception " +"occurs::" msgstr "" msgid "" @@ -559,14 +545,15 @@ msgid "The :data:`!SEEK_*` constants." msgstr "" msgid "" -"Some operating systems could support additional values, like :const:`os." -"SEEK_HOLE` or :const:`os.SEEK_DATA`. The valid values for a file could " -"depend on it being open in text or binary mode." +"Some operating systems could support additional values, " +"like :const:`os.SEEK_HOLE` or :const:`os.SEEK_DATA`. The valid values for a " +"file could depend on it being open in text or binary mode." msgstr "" msgid "" -"Return ``True`` if the stream supports random access. If ``False``, :meth:" -"`seek`, :meth:`tell` and :meth:`truncate` will raise :exc:`OSError`." +"Return ``True`` if the stream supports random access. If " +"``False``, :meth:`seek`, :meth:`tell` and :meth:`truncate` will " +"raise :exc:`OSError`." msgstr "" msgid "Return the current stream position." @@ -595,8 +582,8 @@ msgstr "" msgid "" "Prepare for object destruction. :class:`IOBase` provides a default " -"implementation of this method that calls the instance's :meth:`~IOBase." -"close` method." +"implementation of this method that calls the " +"instance's :meth:`~IOBase.close` method." msgstr "" msgid "Base class for raw binary streams. It inherits from :class:`IOBase`." @@ -610,8 +597,8 @@ msgid "" msgstr "" msgid "" -":class:`RawIOBase` provides these methods in addition to those from :class:" -"`IOBase`:" +":class:`RawIOBase` provides these methods in addition to those " +"from :class:`IOBase`:" msgstr "" msgid "" @@ -649,8 +636,8 @@ msgstr "" msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, and " -"return the number of bytes read. For example, *b* might be a :class:" -"`bytearray`." +"return the number of bytes read. For example, *b* might be " +"a :class:`bytearray`." msgstr "" msgid "" @@ -673,8 +660,8 @@ msgid "" "This function does not ensure all bytes are written or an exception is " "thrown. Callers may implement that behavior by checking the return value " "and, if it is less than the length of *b*, looping with additional write " -"calls until all unwritten bytes are written. High-level I/O objects like :" -"ref:`binary-io` and :ref:`text-io` implement retry behavior." +"calls until all unwritten bytes are written. High-level I/O objects " +"like :ref:`binary-io` and :ref:`text-io` implement retry behavior." msgstr "" msgid "" @@ -683,9 +670,10 @@ msgid "" msgstr "" msgid "" -"The main difference with :class:`RawIOBase` is that methods :meth:`read`, :" -"meth:`readinto` and :meth:`write` will try (respectively) to read as much " -"input as requested or to emit all provided data." +"The main difference with :class:`RawIOBase` is that " +"methods :meth:`read`, :meth:`readinto` and :meth:`write` will try " +"(respectively) to read as much input as requested or to emit all provided " +"data." msgstr "" msgid "" @@ -701,9 +689,9 @@ msgid "" msgstr "" msgid "" -"A typical :class:`BufferedIOBase` implementation should not inherit from a :" -"class:`RawIOBase` implementation, but wrap one, like :class:`BufferedWriter` " -"and :class:`BufferedReader` do." +"A typical :class:`BufferedIOBase` implementation should not inherit from " +"a :class:`RawIOBase` implementation, but wrap one, " +"like :class:`BufferedWriter` and :class:`BufferedReader` do." msgstr "" msgid "" @@ -712,9 +700,9 @@ msgid "" msgstr "" msgid "" -"The underlying raw stream (a :class:`RawIOBase` instance) that :class:" -"`BufferedIOBase` deals with. This is not part of the :class:" -"`BufferedIOBase` API and may not exist on some implementations." +"The underlying raw stream (a :class:`RawIOBase` instance) " +"that :class:`BufferedIOBase` deals with. This is not part of " +"the :class:`BufferedIOBase` API and may not exist on some implementations." msgstr "" msgid "Separate the underlying raw stream from the buffer and return it." @@ -737,23 +725,24 @@ msgstr "" msgid "" "Fewer bytes may be returned than requested. An empty :class:`bytes` object " "is returned if the stream is already at EOF. More than one read may be made " -"and calls may be retried if specific errors are encountered, see :meth:`os." -"read` and :pep:`475` for more details. Less than size bytes being returned " -"does not imply that EOF is imminent." +"and calls may be retried if specific errors are encountered, " +"see :meth:`os.read` and :pep:`475` for more details. Less than size bytes " +"being returned does not imply that EOF is imminent." msgstr "" msgid "" -"When reading as much as possible the default implementation will use ``raw." -"readall`` if available (which should implement :meth:`RawIOBase.readall`), " -"otherwise will read in a loop until read returns ``None``, an empty :class:" -"`bytes`, or a non-retryable error. For most streams this is to EOF, but for " -"non-blocking streams more data may become available." +"When reading as much as possible the default implementation will use " +"``raw.readall`` if available (which should " +"implement :meth:`RawIOBase.readall`), otherwise will read in a loop until " +"read returns ``None``, an empty :class:`bytes`, or a non-retryable error. " +"For most streams this is to EOF, but for non-blocking streams more data may " +"become available." msgstr "" msgid "" "When the underlying raw stream is non-blocking, implementations may either " -"raise :exc:`BlockingIOError` or return ``None`` if no data is available. :" -"mod:`!io` implementations return ``None``." +"raise :exc:`BlockingIOError` or return ``None`` if no data is " +"available. :mod:`!io` implementations return ``None``." msgstr "" msgid "" @@ -765,8 +754,8 @@ msgstr "" msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b* and " -"return the number of bytes read. For example, *b* might be a :class:" -"`bytearray`." +"return the number of bytes read. For example, *b* might be " +"a :class:`bytearray`." msgstr "" msgid "" @@ -781,9 +770,9 @@ msgstr "" msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, " -"using at most one call to the underlying raw stream's :meth:`~RawIOBase." -"read` (or :meth:`~RawIOBase.readinto`) method. Return the number of bytes " -"read." +"using at most one call to the underlying raw " +"stream's :meth:`~RawIOBase.read` (or :meth:`~RawIOBase.readinto`) method. " +"Return the number of bytes read." msgstr "" msgid "" @@ -805,7 +794,7 @@ msgid "" "implementation should only access *b* during the method call." msgstr "" -msgid "Raw File I/O" +msgid "Raw file I/O" msgstr "" msgid "" @@ -860,11 +849,11 @@ msgid "" msgstr "" msgid "" -":class:`FileIO` is a low-level I/O object and members, such as :meth:" -"`~RawIOBase.read` and :meth:`~RawIOBase.write`, need to have their return " -"values checked explicitly in a retry loop to implement \"write all\" and " -"\"read at least\" behavior. High-level I/O objects :ref:`binary-io` and :ref:" -"`text-io` implement retry behavior." +":class:`FileIO` is a low-level I/O object and members, such " +"as :meth:`~RawIOBase.read` and :meth:`~RawIOBase.write`, need to have their " +"return values checked explicitly in a retry loop to implement \"write all\" " +"and \"read at least\" behavior. High-level I/O objects :ref:`binary-io` " +"and :ref:`text-io` implement retry behavior." msgstr "" msgid "The *opener* parameter was added. The ``'x'`` mode was added." @@ -874,8 +863,8 @@ msgid "The file is now non-inheritable." msgstr "" msgid "" -":class:`FileIO` provides these data attributes in addition to those from :" -"class:`RawIOBase` and :class:`IOBase`:" +":class:`FileIO` provides these data attributes in addition to those " +"from :class:`RawIOBase` and :class:`IOBase`:" msgstr "" msgid "The mode as given in the constructor." @@ -886,7 +875,7 @@ msgid "" "given in the constructor." msgstr "" -msgid "Buffered Streams" +msgid "Buffered streams" msgstr "" msgid "" @@ -895,9 +884,9 @@ msgid "" msgstr "" msgid "" -"A binary stream using an in-memory bytes buffer. It inherits from :class:" -"`BufferedIOBase`. The buffer is discarded when the :meth:`~IOBase.close` " -"method is called." +"A binary stream using an in-memory bytes buffer. It inherits " +"from :class:`BufferedIOBase`. The buffer is discarded when " +"the :meth:`~IOBase.close` method is called." msgstr "" msgid "" @@ -906,8 +895,8 @@ msgid "" msgstr "" msgid "" -"Methods may be used from multiple threads without external locking in :term:" -"`free-threaded builds `." +"Methods may be used from multiple threads without external locking " +"in :term:`free-threaded builds `." msgstr "" msgid "" @@ -949,8 +938,8 @@ msgstr "" msgid "" "A buffered binary stream providing higher-level access to a readable, non " -"seekable :class:`RawIOBase` raw binary stream. It inherits from :class:" -"`BufferedIOBase`." +"seekable :class:`RawIOBase` raw binary stream. It inherits " +"from :class:`BufferedIOBase`." msgstr "" msgid "" @@ -961,8 +950,8 @@ msgstr "" msgid "" "The constructor creates a :class:`BufferedReader` for the given readable " -"*raw* stream and *buffer_size*. If *buffer_size* is omitted, :data:" -"`DEFAULT_BUFFER_SIZE` is used." +"*raw* stream and *buffer_size*. If *buffer_size* is " +"omitted, :data:`DEFAULT_BUFFER_SIZE` is used." msgstr "" msgid "" @@ -981,14 +970,14 @@ msgid "" msgstr "" msgid "" -"In :class:`BufferedReader` this is the same as :meth:`io.BufferedIOBase." -"read1`" +"In :class:`BufferedReader` this is the same " +"as :meth:`io.BufferedIOBase.read1`" msgstr "" msgid "" "A buffered binary stream providing higher-level access to a writeable, non " -"seekable :class:`RawIOBase` raw binary stream. It inherits from :class:" -"`BufferedIOBase`." +"seekable :class:`RawIOBase` raw binary stream. It inherits " +"from :class:`BufferedIOBase`." msgstr "" msgid "" @@ -1013,8 +1002,8 @@ msgstr "" msgid "" "The constructor creates a :class:`BufferedWriter` for the given writeable " -"*raw* stream. If the *buffer_size* is not given, it defaults to :data:" -"`DEFAULT_BUFFER_SIZE`." +"*raw* stream. If the *buffer_size* is not given, it defaults " +"to :data:`DEFAULT_BUFFER_SIZE`." msgstr "" msgid "" @@ -1023,15 +1012,15 @@ msgid "" msgstr "" msgid "" -"Force bytes held in the buffer into the raw stream. A :exc:" -"`BlockingIOError` should be raised if the raw stream blocks." +"Force bytes held in the buffer into the raw stream. " +"A :exc:`BlockingIOError` should be raised if the raw stream blocks." msgstr "" msgid "" "Write the :term:`bytes-like object`, *b*, and return the number of bytes " -"written. When in non-blocking mode, a :exc:`BlockingIOError` with :attr:" -"`BlockingIOError.characters_written` set is raised if the buffer needs to be " -"written out but the raw stream blocks." +"written. When in non-blocking mode, a :exc:`BlockingIOError` " +"with :attr:`BlockingIOError.characters_written` set is raised if the buffer " +"needs to be written out but the raw stream blocks." msgstr "" msgid "" @@ -1042,32 +1031,32 @@ msgstr "" msgid "" "The constructor creates a reader and writer for a seekable raw stream, given " -"in the first argument. If the *buffer_size* is omitted it defaults to :data:" -"`DEFAULT_BUFFER_SIZE`." +"in the first argument. If the *buffer_size* is omitted it defaults " +"to :data:`DEFAULT_BUFFER_SIZE`." msgstr "" msgid "" -":class:`BufferedRandom` is capable of anything :class:`BufferedReader` or :" -"class:`BufferedWriter` can do. In addition, :meth:`~IOBase.seek` and :meth:" -"`~IOBase.tell` are guaranteed to be implemented." +":class:`BufferedRandom` is capable of anything :class:`BufferedReader` " +"or :class:`BufferedWriter` can do. In addition, :meth:`~IOBase.seek` " +"and :meth:`~IOBase.tell` are guaranteed to be implemented." msgstr "" msgid "" -"A buffered binary stream providing higher-level access to two non seekable :" -"class:`RawIOBase` raw binary streams---one readable, the other writeable. It " -"inherits from :class:`BufferedIOBase`." +"A buffered binary stream providing higher-level access to two non " +"seekable :class:`RawIOBase` raw binary streams---one readable, the other " +"writeable. It inherits from :class:`BufferedIOBase`." msgstr "" msgid "" "*reader* and *writer* are :class:`RawIOBase` objects that are readable and " -"writeable respectively. If the *buffer_size* is omitted it defaults to :" -"data:`DEFAULT_BUFFER_SIZE`." +"writeable respectively. If the *buffer_size* is omitted it defaults " +"to :data:`DEFAULT_BUFFER_SIZE`." msgstr "" msgid "" ":class:`BufferedRWPair` implements all of :class:`BufferedIOBase`\\'s " -"methods except for :meth:`~BufferedIOBase.detach`, which raises :exc:" -"`UnsupportedOperation`." +"methods except for :meth:`~BufferedIOBase.detach`, which " +"raises :exc:`UnsupportedOperation`." msgstr "" msgid "" @@ -1101,9 +1090,10 @@ msgid "" msgstr "" msgid "" -"The underlying binary buffer (a :class:`BufferedIOBase` or :class:" -"`RawIOBase` instance) that :class:`TextIOBase` deals with. This is not part " -"of the :class:`TextIOBase` API and may not exist in some implementations." +"The underlying binary buffer (a :class:`BufferedIOBase` " +"or :class:`RawIOBase` instance) that :class:`TextIOBase` deals with. This is " +"not part of the :class:`TextIOBase` API and may not exist in some " +"implementations." msgstr "" msgid "" @@ -1118,13 +1108,13 @@ msgstr "" msgid "" "Some :class:`TextIOBase` implementations, like :class:`StringIO`, may not " -"have the concept of an underlying buffer and calling this method will raise :" -"exc:`UnsupportedOperation`." +"have the concept of an underlying buffer and calling this method will " +"raise :exc:`UnsupportedOperation`." msgstr "" msgid "" -"Read and return at most *size* characters from the stream as a single :class:" -"`str`. If *size* is negative or ``None``, reads until EOF." +"Read and return at most *size* characters from the stream as a " +"single :class:`str`. If *size* is negative or ``None``, reads until EOF." msgstr "" msgid "" @@ -1170,17 +1160,17 @@ msgid "" msgstr "" msgid "" -"A buffered text stream providing higher-level access to a :class:" -"`BufferedIOBase` buffered binary stream. It inherits from :class:" -"`TextIOBase`." +"A buffered text stream providing higher-level access to " +"a :class:`BufferedIOBase` buffered binary stream. It inherits " +"from :class:`TextIOBase`." msgstr "" msgid "" "*encoding* gives the name of the encoding that the stream will be decoded or " -"encoded with. In :ref:`UTF-8 Mode `, this defaults to UTF-8. " -"Otherwise, it defaults to :func:`locale.getencoding`. " -"``encoding=\"locale\"`` can be used to specify the current locale's encoding " -"explicitly. See :ref:`io-text-encoding` for more information." +"encoded with. This defaults to UTF-8; if :ref:`UTF-8 Mode ` is " +"disabled, it defaults to :func:`locale.getencoding`. ``encoding=\"locale\"`` " +"can be used to specify the current locale's encoding explicitly. " +"See :ref:`io-text-encoding` for more information." msgstr "" msgid "" @@ -1203,10 +1193,10 @@ msgid "" msgstr "" msgid "" -"When reading input from the stream, if *newline* is ``None``, :term:" -"`universal newlines` mode is enabled. Lines in the input can end in " -"``'\\n'``, ``'\\r'``, or ``'\\r\\n'``, and these are translated into " -"``'\\n'`` before being returned to the caller. If *newline* is ``''``, " +"When reading input from the stream, if *newline* is " +"``None``, :term:`universal newlines` mode is enabled. Lines in the input " +"can end in ``'\\n'``, ``'\\r'``, or ``'\\r\\n'``, and these are translated " +"into ``'\\n'`` before being returned to the caller. If *newline* is ``''``, " "universal newlines mode is enabled, but line endings are returned to the " "caller untranslated. If *newline* has any of the other legal values, input " "lines are only terminated by the given string, and the line ending is " @@ -1215,10 +1205,10 @@ msgstr "" msgid "" "When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " -"characters written are translated to the system default line separator, :" -"data:`os.linesep`. If *newline* is ``''`` or ``'\\n'``, no translation " -"takes place. If *newline* is any of the other legal values, any ``'\\n'`` " -"characters written are translated to the given string." +"characters written are translated to the system default line " +"separator, :data:`os.linesep`. If *newline* is ``''`` or ``'\\n'``, no " +"translation takes place. If *newline* is any of the other legal values, any " +"``'\\n'`` characters written are translated to the given string." msgstr "" msgid "" @@ -1228,9 +1218,9 @@ msgstr "" msgid "" "If *write_through* is ``True``, calls to :meth:`~BufferedIOBase.write` are " -"guaranteed not to be buffered: any data written on the :class:" -"`TextIOWrapper` object is immediately handled to its underlying binary " -"*buffer*." +"guaranteed not to be buffered: any data written on " +"the :class:`TextIOWrapper` object is immediately handled to its underlying " +"binary *buffer*." msgstr "" msgid "The *write_through* argument has been added." @@ -1321,8 +1311,8 @@ msgid "" msgstr "" msgid "" -"A text stream using an in-memory text buffer. It inherits from :class:" -"`TextIOBase`." +"A text stream using an in-memory text buffer. It inherits " +"from :class:`TextIOBase`." msgstr "" msgid "" @@ -1331,10 +1321,10 @@ msgstr "" msgid "" "The initial value of the buffer can be set by providing *initial_value*. If " -"newline translation is enabled, newlines will be encoded as if by :meth:" -"`~TextIOBase.write`. The stream is positioned at the start of the buffer " -"which emulates opening an existing file in a ``w+`` mode, making it ready " -"for an immediate write from the beginning or for a write that would " +"newline translation is enabled, newlines will be encoded as if " +"by :meth:`~TextIOBase.write`. The stream is positioned at the start of the " +"buffer which emulates opening an existing file in a ``w+`` mode, making it " +"ready for an immediate write from the beginning or for a write that would " "overwrite the initial value. To emulate opening a file in an ``a+`` mode " "ready for appending, use ``f.seek(0, io.SEEK_END)`` to reposition the stream " "at the end of the buffer." @@ -1347,8 +1337,8 @@ msgid "" msgstr "" msgid "" -":class:`StringIO` provides this method in addition to those from :class:" -"`TextIOBase` and :class:`IOBase`:" +":class:`StringIO` provides this method in addition to those " +"from :class:`TextIOBase` and :class:`IOBase`:" msgstr "" msgid "" @@ -1381,7 +1371,7 @@ msgid "" "inherits from :class:`codecs.IncrementalDecoder`." msgstr "" -msgid "Static Typing" +msgid "Static typing" msgstr "" msgid "" @@ -1456,9 +1446,9 @@ msgid "" "Text I/O over a binary storage (such as a file) is significantly slower than " "binary I/O over the same storage, because it requires conversions between " "unicode and binary data using a character codec. This can become noticeable " -"handling huge amounts of text data like large log files. Also, :meth:" -"`~TextIOBase.tell` and :meth:`~TextIOBase.seek` are both quite slow due to " -"the reconstruction algorithm used." +"handling huge amounts of text data like large log files. " +"Also, :meth:`~TextIOBase.tell` and :meth:`~TextIOBase.seek` are both quite " +"slow due to the reconstruction algorithm used." msgstr "" msgid "" @@ -1476,10 +1466,10 @@ msgid "" msgstr "" msgid "" -"Binary buffered objects (instances of :class:`BufferedReader`, :class:" -"`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) " -"protect their internal structures using a lock; it is therefore safe to call " -"them from multiple threads at once." +"Binary buffered objects (instances " +"of :class:`BufferedReader`, :class:`BufferedWriter`, :class:`BufferedRandom` " +"and :class:`BufferedRWPair`) protect their internal structures using a lock; " +"it is therefore safe to call them from multiple threads at once." msgstr "" msgid ":class:`TextIOWrapper` objects are not thread-safe." @@ -1489,13 +1479,13 @@ msgid "Reentrancy" msgstr "" msgid "" -"Binary buffered objects (instances of :class:`BufferedReader`, :class:" -"`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) are " -"not reentrant. While reentrant calls will not happen in normal situations, " -"they can arise from doing I/O in a :mod:`signal` handler. If a thread tries " -"to re-enter a buffered object which it is already accessing, a :exc:" -"`RuntimeError` is raised. Note this doesn't prohibit a different thread " -"from entering the buffered object." +"Binary buffered objects (instances " +"of :class:`BufferedReader`, :class:`BufferedWriter`, :class:`BufferedRandom` " +"and :class:`BufferedRWPair`) are not reentrant. While reentrant calls will " +"not happen in normal situations, they can arise from doing I/O in " +"a :mod:`signal` handler. If a thread tries to re-enter a buffered object " +"which it is already accessing, a :exc:`RuntimeError` is raised. Note this " +"doesn't prohibit a different thread from entering the buffered object." msgstr "" msgid "" diff --git a/library/ipaddress.po b/library/ipaddress.po index fe29c62..07b8982 100644 --- a/library/ipaddress.po +++ b/library/ipaddress.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Lakshdeep Kashyap, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,8 +42,8 @@ msgid "" msgstr "" msgid "" -"This is the full module API reference—for an overview and introduction, see :" -"ref:`ipaddress-howto`." +"This is the full module API reference—for an overview and introduction, " +"see :ref:`ipaddress-howto`." msgstr "" msgid "Convenience factory functions" @@ -72,9 +76,9 @@ msgid "" "Return an :class:`IPv4Interface` or :class:`IPv6Interface` object depending " "on the IP address passed as argument. *address* is a string or integer " "representing the IP address. Either IPv4 or IPv6 addresses may be supplied; " -"integers less than ``2**32`` will be considered to be IPv4 by default. A :" -"exc:`ValueError` is raised if *address* does not represent a valid IPv4 or " -"IPv6 address." +"integers less than ``2**32`` will be considered to be IPv4 by default. " +"A :exc:`ValueError` is raised if *address* does not represent a valid IPv4 " +"or IPv6 address." msgstr "" msgid "" @@ -253,8 +257,8 @@ msgid "" msgstr "" msgid "" -"``True`` if the address is unspecified. See :RFC:`5735` (for IPv4) or :RFC:" -"`2373` (for IPv6)." +"``True`` if the address is unspecified. See :RFC:`5735` (for IPv4) " +"or :RFC:`2373` (for IPv6)." msgstr "" msgid "" @@ -271,13 +275,13 @@ msgstr "" msgid "" "For IPv6, ``fec0::/10`` a former Site-Local scoped address prefix is " -"currently excluded from that list (see :attr:`~IPv6Address.is_site_local` & :" -"rfc:`3879`)." +"currently excluded from that list (see :attr:`~IPv6Address.is_site_local` " +"& :rfc:`3879`)." msgstr "" msgid "" -"``True`` if this is a loopback address. See :RFC:`3330` (for IPv4) or :RFC:" -"`2373` (for IPv6)." +"``True`` if this is a loopback address. See :RFC:`3330` (for IPv4) " +"or :RFC:`2373` (for IPv6)." msgstr "" msgid "" @@ -285,8 +289,8 @@ msgid "" msgstr "" msgid "" -":class:`IPv4Address` object representing the IPv4-mapped IPv6 address. See :" -"RFC:`4291`." +":class:`IPv6Address` object representing the IPv4-mapped IPv6 address. " +"See :RFC:`4291`." msgstr "" msgid "" @@ -353,15 +357,15 @@ msgstr "" msgid "" "``True`` if the address is reserved for site-local usage. Note that the " -"site-local address space has been deprecated by :RFC:`3879`. Use :attr:" -"`~IPv4Address.is_private` to test if this address is in the space of unique " -"local addresses as defined by :RFC:`4193`." +"site-local address space has been deprecated by :RFC:`3879`. " +"Use :attr:`~IPv4Address.is_private` to test if this address is in the space " +"of unique local addresses as defined by :RFC:`4193`." msgstr "" msgid "" -"For addresses that appear to be IPv4 mapped addresses in the range ``::" -"FFFF:0:0/96`` as defined by :RFC:`4291`, this property reports the embedded " -"IPv4 address. For any other address, this property will be ``None``." +"For addresses that appear to be IPv4 mapped addresses in the range " +"``::FFFF:0:0/96`` as defined by :RFC:`4291`, this property reports the " +"embedded IPv4 address. For any other address, this property will be ``None``." msgstr "" msgid "" @@ -496,10 +500,10 @@ msgstr "" msgid "" "All attributes implemented by address objects are implemented by network " "objects as well. In addition, network objects implement additional " -"attributes. All of these are common between :class:`IPv4Network` and :class:" -"`IPv6Network`, so to avoid duplication they are only documented for :class:" -"`IPv4Network`. Network objects are :term:`hashable`, so they can be used as " -"keys in dictionaries." +"attributes. All of these are common between :class:`IPv4Network` " +"and :class:`IPv6Network`, so to avoid duplication they are only documented " +"for :class:`IPv4Network`. Network objects are :term:`hashable`, so they can " +"be used as keys in dictionaries." msgstr "" msgid "" @@ -548,9 +552,9 @@ msgid "" msgstr "" msgid "" -"If *strict* is ``True`` and host bits are set in the supplied address, then :" -"exc:`ValueError` is raised. Otherwise, the host bits are masked out to " -"determine the appropriate network address." +"If *strict* is ``True`` and host bits are set in the supplied address, " +"then :exc:`ValueError` is raised. Otherwise, the host bits are masked out " +"to determine the appropriate network address." msgstr "" msgid "" @@ -626,8 +630,9 @@ msgstr "" msgid "" "Computes the network definitions resulting from removing the given *network* " -"from this one. Returns an iterator of network objects. Raises :exc:" -"`ValueError` if *network* is not completely contained in this network." +"from this one. Returns an iterator of network objects. " +"Raises :exc:`ValueError` if *network* is not completely contained in this " +"network." msgstr "" msgid "" @@ -676,14 +681,15 @@ msgid "" msgstr "" msgid "" -"Note that currently expanded netmasks are not supported. That means ``2001:" -"db00::0/24`` is a valid argument while ``2001:db00::0/ffff:ff00::`` is not." +"Note that currently expanded netmasks are not supported. That means " +"``2001:db00::0/24`` is a valid argument while ``2001:db00::0/ffff:ff00::`` " +"is not." msgstr "" msgid "" "An integer that fits into 128 bits. This is equivalent to a single-address " -"network, with the network address being *address* and the mask being " -"``/128``." +"network, with the network address being *address* and the mask being ``/" +"128``." msgstr "" msgid "" @@ -869,33 +875,33 @@ msgstr "" msgid "" "Represent an address as 4 packed bytes in network (big-endian) order. " -"*address* is an integer representation of an IPv4 IP address. A :exc:" -"`ValueError` is raised if the integer is negative or too large to be an IPv4 " -"IP address." +"*address* is an integer representation of an IPv4 IP address. " +"A :exc:`ValueError` is raised if the integer is negative or too large to be " +"an IPv4 IP address." msgstr "" msgid "" "Represent an address as 16 packed bytes in network (big-endian) order. " -"*address* is an integer representation of an IPv6 IP address. A :exc:" -"`ValueError` is raised if the integer is negative or too large to be an IPv6 " -"IP address." +"*address* is an integer representation of an IPv6 IP address. " +"A :exc:`ValueError` is raised if the integer is negative or too large to be " +"an IPv6 IP address." msgstr "" msgid "" "Return an iterator of the summarized network range given the first and last " -"IP addresses. *first* is the first :class:`IPv4Address` or :class:" -"`IPv6Address` in the range and *last* is the last :class:`IPv4Address` or :" -"class:`IPv6Address` in the range. A :exc:`TypeError` is raised if *first* " -"or *last* are not IP addresses or are not of the same version. A :exc:" -"`ValueError` is raised if *last* is not greater than *first* or if *first* " -"address version is not 4 or 6." +"IP addresses. *first* is the first :class:`IPv4Address` " +"or :class:`IPv6Address` in the range and *last* is the " +"last :class:`IPv4Address` or :class:`IPv6Address` in the range. " +"A :exc:`TypeError` is raised if *first* or *last* are not IP addresses or " +"are not of the same version. A :exc:`ValueError` is raised if *last* is not " +"greater than *first* or if *first* address version is not 4 or 6." msgstr "" msgid "" -"Return an iterator of the collapsed :class:`IPv4Network` or :class:" -"`IPv6Network` objects. *addresses* is an :term:`iterable` of :class:" -"`IPv4Network` or :class:`IPv6Network` objects. A :exc:`TypeError` is raised " -"if *addresses* contains mixed version objects." +"Return an iterator of the collapsed :class:`IPv4Network` " +"or :class:`IPv6Network` objects. *addresses* is an :term:`iterable` " +"of :class:`IPv4Network` or :class:`IPv6Network` objects. A :exc:`TypeError` " +"is raised if *addresses* contains mixed version objects." msgstr "" msgid "" diff --git a/library/ipc.po b/library/ipc.po index 36a257c..979bab8 100644 --- a/library/ipc.po +++ b/library/ipc.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,9 +27,9 @@ msgid "" msgstr "" msgid "" -"Some modules only work for two processes that are on the same machine, e.g. :" -"mod:`signal` and :mod:`mmap`. Other modules support networking protocols " -"that two or more processes can use to communicate across machines." +"Some modules only work for two processes that are on the same machine, " +"e.g. :mod:`signal` and :mod:`mmap`. Other modules support networking " +"protocols that two or more processes can use to communicate across machines." msgstr "" msgid "The list of modules described in this chapter is:" diff --git a/library/itertools.po b/library/itertools.po index 7d0aa71..676b7be 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -405,8 +406,8 @@ msgstr "" msgid "" "Loops over the input iterable and accumulates data into tuples up to size " "*n*. The input is consumed lazily, just enough to fill a batch. The result " -"is yielded as soon as the batch is full or when the input iterable is " -"exhausted:" +"is yielded as soon as the batch is full or when the input iterable " +"is :term:`exhausted`:" msgstr "" msgid "" @@ -432,10 +433,10 @@ msgid "Added the *strict* option." msgstr "" msgid "" -"Make an iterator that returns elements from the first iterable until it is " -"exhausted, then proceeds to the next iterable, until all of the iterables " -"are exhausted. This combines multiple data sources into a single iterator. " -"Roughly equivalent to::" +"Make an iterator that returns elements from the first iterable until it " +"is :term:`exhausted`, then proceeds to the next iterable, until all of the " +"iterables are exhausted. This combines multiple data sources into a single " +"iterator. Roughly equivalent to::" msgstr "" msgid "" @@ -465,8 +466,9 @@ msgstr "" msgid "" "Note that :ref:`unpacking in comprehensions ` " -"provides similar functionality so that ``list(chain." -"from_iterable(iterables))`` could be written as ``[*s for s in iterables]``." +"provides similar functionality so that " +"``list(chain.from_iterable(iterables))`` could be written as ``[*s for s in " +"iterables]``." msgstr "" msgid "Return *r* length subsequences of elements from the input *iterable*." @@ -474,9 +476,9 @@ msgstr "" msgid "" "The output is a subsequence of :func:`product` keeping only entries that are " -"subsequences of the *iterable*. The length of the output is given by :func:" -"`math.comb` which computes ``n! / r! / (n - r)!`` when ``0 ≤ r ≤ n`` or zero " -"when ``r > n``." +"subsequences of the *iterable*. The length of the output is given " +"by :func:`math.comb` which computes ``n! / r! / (n - r)!`` when ``0 ≤ r ≤ " +"n`` or zero when ``r > n``." msgstr "" msgid "" @@ -563,7 +565,7 @@ msgstr "" msgid "" "Make an iterator that returns elements from *data* where the corresponding " "element in *selectors* is true. Stops when either the *data* or *selectors* " -"iterables have been exhausted. Roughly equivalent to::" +"iterables have been :term:`exhausted`. Roughly equivalent to::" msgstr "" msgid "" @@ -574,8 +576,8 @@ msgstr "" msgid "" "Make an iterator that returns evenly spaced values beginning with *start*. " -"Can be used with :func:`map` to generate consecutive data points or with :" -"func:`zip` to add sequence numbers. Roughly equivalent to::" +"Can be used with :func:`map` to generate consecutive data points or " +"with :func:`zip` to add sequence numbers. Roughly equivalent to::" msgstr "" msgid "" @@ -599,8 +601,8 @@ msgstr "" msgid "" "Make an iterator returning elements from the *iterable* and saving a copy of " -"each. When the iterable is exhausted, return elements from the saved copy. " -"Repeats indefinitely. Roughly equivalent to::" +"each. When the iterable is :term:`exhausted`, return elements from the " +"saved copy. Repeats indefinitely. Roughly equivalent to::" msgstr "" msgid "" @@ -683,9 +685,9 @@ msgstr "" msgid "" "The returned group is itself an iterator that shares the underlying iterable " -"with :func:`groupby`. Because the source is shared, when the :func:" -"`groupby` object is advanced, the previous group is no longer visible. So, " -"if that data is needed later, it should be stored as a list::" +"with :func:`groupby`. Because the source is shared, when " +"the :func:`groupby` object is advanced, the previous group is no longer " +"visible. So, if that data is needed later, it should be stored as a list::" msgstr "" msgid "" @@ -746,8 +748,9 @@ msgid "" msgstr "" msgid "" -"If *stop* is ``None``, iteration continues until the input is exhausted, if " -"at all. Otherwise, it stops at the specified position." +"If *stop* is ``None``, iteration continues until the input " +"is :term:`exhausted`, if at all. Otherwise, it stops at the specified " +"position." msgstr "" msgid "" @@ -805,8 +808,8 @@ msgid "" msgstr "" msgid "" -"Return successive *r* length `permutations of elements `_ from the *iterable*." +"Return successive *r* length `permutations of elements `_ from the *iterable*." msgstr "" msgid "" @@ -816,9 +819,9 @@ msgstr "" msgid "" "The output is a subsequence of :func:`product` where entries with repeated " -"elements have been filtered out. The length of the output is given by :func:" -"`math.perm` which computes ``n! / (n - r)!`` when ``0 ≤ r ≤ n`` or zero when " -"``r > n``." +"elements have been filtered out. The length of the output is given " +"by :func:`math.perm` which computes ``n! / (n - r)!`` when ``0 ≤ r ≤ n`` or " +"zero when ``r > n``." msgstr "" msgid "" @@ -978,9 +981,10 @@ msgid "" "Note, the element that first fails the predicate condition is consumed from " "the input iterator and there is no way to access it. This could be an issue " "if an application wants to further consume the input iterator after " -"*takewhile* has been run to exhaustion. To work around this problem, " -"consider using `more-itertools before_and_after() `_ instead." +"*takewhile* has been run to :term:`exhaustion `. To work around " +"this problem, consider using `more-itertools before_and_after() `__ instead." msgstr "" msgid "Return *n* independent iterators from a single iterable." @@ -1024,9 +1028,9 @@ msgstr "" msgid "" "When the input *iterable* is already a tee iterator object, all members of " "the return tuple are constructed as if they had been produced by the " -"upstream :func:`tee` call. This \"flattening step\" allows nested :func:" -"`tee` calls to share the same underlying data chain and to have a single " -"update step rather than a chain of calls." +"upstream :func:`tee` call. This \"flattening step\" allows " +"nested :func:`tee` calls to share the same underlying data chain and to have " +"a single update step rather than a chain of calls." msgstr "" msgid "The flattening property makes tee iterators efficiently peekable:" @@ -1059,8 +1063,8 @@ msgstr "" msgid "" "This itertool may require significant auxiliary storage (depending on how " "much temporary data needs to be stored). In general, if one iterator uses " -"most or all of the data before another iterator starts, it is faster to use :" -"func:`list` instead of :func:`tee`." +"most or all of the data before another iterator starts, it is faster to " +"use :func:`list` instead of :func:`tee`." msgstr "" msgid "Make an iterator that aggregates elements from each of the *iterables*." @@ -1071,7 +1075,7 @@ msgid "" "*fillvalue*. If not specified, *fillvalue* defaults to ``None``." msgstr "" -msgid "Iteration continues until the longest iterable is exhausted." +msgid "Iteration continues until the longest iterable is :term:`exhausted`." msgstr "" msgid "" @@ -1099,9 +1103,9 @@ msgid "" msgstr "" msgid "" -"If one of the iterables is potentially infinite, then the :func:" -"`zip_longest` function should be wrapped with something that limits the " -"number of calls (for example :func:`islice` or :func:`takewhile`)." +"If one of the iterables is potentially infinite, then " +"the :func:`zip_longest` function should be wrapped with something that " +"limits the number of calls (for example :func:`islice` or :func:`takewhile`)." msgstr "" msgid "Itertools Recipes" @@ -1118,9 +1122,9 @@ msgid "" "``chain.from_iterable`` is related to the concept of flattening. The " "recipes also give ideas about ways that the tools can be combined — for " "example, how ``starmap()`` and ``repeat()`` can work together. The recipes " -"also show patterns for using itertools with the :mod:`operator` and :mod:" -"`collections` modules as well as with the built-in itertools such as " -"``map()``, ``filter()``, ``reversed()``, and ``enumerate()``." +"also show patterns for using itertools with the :mod:`operator` " +"and :mod:`collections` modules as well as with the built-in itertools such " +"as ``map()``, ``filter()``, ``reversed()``, and ``enumerate()``." msgstr "" msgid "" diff --git a/library/json.po b/library/json.po index c328ab6..f3c36c1 100644 --- a/library/json.po +++ b/library/json.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,12 +30,12 @@ msgid "**Source code:** :source:`Lib/json/__init__.py`" msgstr "" msgid "" -"`JSON (JavaScript Object Notation) `_, specified by :rfc:" -"`7159` (which obsoletes :rfc:`4627`) and by `ECMA-404 `_, specified " +"by :rfc:`7159` (which obsoletes :rfc:`4627`) and by `ECMA-404 `_, is a " -"lightweight data interchange format inspired by `JavaScript `_ object literal syntax (although it is not a " -"strict subset of JavaScript [#rfc-errata]_ )." +"lightweight data interchange format inspired by `JavaScript `_ object literal syntax (although it is " +"not a strict subset of JavaScript [#rfc-errata]_ )." msgstr "" msgid "" @@ -50,8 +51,8 @@ msgid "" msgstr "" msgid "" -"This module exposes an API familiar to users of the standard library :mod:" -"`marshal` and :mod:`pickle` modules." +"This module exposes an API familiar to users of the standard " +"library :mod:`marshal` and :mod:`pickle` modules." msgstr "" msgid "Encoding basic Python object hierarchies::" @@ -104,8 +105,8 @@ msgid "" ">>> import json\n" ">>> def custom_json(obj):\n" "... if isinstance(obj, complex):\n" -"... return {'__complex__': True, 'real': obj.real, 'imag': obj." -"imag}\n" +"... return {'__complex__': True, 'real': obj.real, 'imag': " +"obj.imag}\n" "... raise TypeError(f'Cannot serialize object of {type(obj)}')\n" "...\n" ">>> json.dumps(1 + 2j, default=custom_json)\n" @@ -142,7 +143,13 @@ msgid "" "(1+2j)\n" ">>> import decimal\n" ">>> json.loads('1.1', parse_float=decimal.Decimal)\n" -"Decimal('1.1')" +"Decimal('1.1')\n" +">>> json.loads('{\"name\": \"point\", \"coords\": [[1, 2], [3, 4]]}',\n" +"... array_hook=tuple)\n" +"{'name': 'point', 'coords': ((1, 2), (3, 4))}\n" +">>> json.loads('{\"name\": \"point\", \"coords\": [1, 2]}',\n" +"... object_pairs_hook=frozendict, array_hook=tuple)\n" +"frozendict({'name': 'point', 'coords': (1, 2)})" msgstr "" msgid "Extending :class:`JSONEncoder`::" @@ -220,9 +227,9 @@ msgid "" msgstr "" msgid "" -"If ``True``, keys that are not of a basic type (:class:`str`, :class:`int`, :" -"class:`float`, :class:`bool`, ``None``) will be skipped instead of raising " -"a :exc:`TypeError`. Default ``False``." +"If ``True``, keys that are not of a basic type " +"(:class:`str`, :class:`int`, :class:`float`, :class:`bool`, ``None``) will " +"be skipped instead of raising a :exc:`TypeError`. Default ``False``." msgstr "" msgid "" @@ -269,14 +276,24 @@ msgstr "" msgid "" "A function that is called for objects that can't otherwise be serialized. It " -"should return a JSON encodable version of the object or raise a :exc:" -"`TypeError`. If ``None`` (the default), :exc:`!TypeError` is raised." +"should return a JSON encodable version of the object or raise " +"a :exc:`TypeError`. If ``None`` (the default), :exc:`!TypeError` is raised." msgstr "" msgid "" "If ``True``, dictionaries will be outputted sorted by key. Default ``False``." msgstr "" +msgid "" +"Keys in key/value pairs of JSON are always of the type :class:`str`. When a " +"dictionary is converted into JSON, all the keys of the dictionary are " +"converted to strings. As a result of this, if a dictionary is converted into " +"JSON and then back into a dictionary, the dictionary may not equal the " +"original one. That is, ``loads(dumps(x)) != x`` if x has non-string keys. " +"*sort_keys* sorts the keys before they are converted to strings, so numeric " +"keys are sorted by value, not by their string representation." +msgstr "" + msgid "Allow strings for *indent* in addition to integers." msgstr "" @@ -289,16 +306,8 @@ msgstr "" msgid "" "Serialize *obj* to a JSON formatted :class:`str` using this :ref:`conversion " -"table `. The arguments have the same meaning as in :func:" -"`dump`." -msgstr "" - -msgid "" -"Keys in key/value pairs of JSON are always of the type :class:`str`. When a " -"dictionary is converted into JSON, all the keys of the dictionary are " -"coerced to strings. As a result of this, if a dictionary is converted into " -"JSON and then back into a dictionary, the dictionary may not equal the " -"original one. That is, ``loads(dumps(x)) != x`` if x has non-string keys." +"table `. The arguments have the same meaning as " +"in :func:`dump`." msgstr "" msgid "" @@ -313,8 +322,8 @@ msgstr "" msgid "" "If set, a custom JSON decoder. Additional keyword arguments to :func:`!load` " -"will be passed to the constructor of *cls*. If ``None`` (the default), :" -"class:`!JSONDecoder` is used." +"will be passed to the constructor of *cls*. If ``None`` (the " +"default), :class:`!JSONDecoder` is used." msgstr "" msgid "" @@ -335,23 +344,23 @@ msgstr "" msgid "" "If set, a function that is called with the result of any JSON array literal " -"decoded with as a Python list. The return value of this function will be " -"used instead of the :class:`list`. This feature can be used to implement " -"custom decoders. Default ``None``." +"decoded as a Python list. The return value of this function will be used " +"instead of the :class:`list`. This feature can be used to implement custom " +"decoders. Default ``None``." msgstr "" msgid "" "If set, a function that is called with the string of every JSON float to be " "decoded. If ``None`` (the default), it is equivalent to ``float(num_str)``. " -"This can be used to parse JSON floats into custom datatypes, for example :" -"class:`decimal.Decimal`." +"This can be used to parse JSON floats into custom datatypes, for " +"example :class:`decimal.Decimal`." msgstr "" msgid "" "If set, a function that is called with the string of every JSON int to be " "decoded. If ``None`` (the default), it is equivalent to ``int(num_str)``. " -"This can be used to parse JSON integers into custom datatypes, for example :" -"class:`float`." +"This can be used to parse JSON integers into custom datatypes, for " +"example :class:`float`." msgstr "" msgid "" @@ -477,16 +486,16 @@ msgstr "" msgid "" "*object_hook* is an optional function that will be called with the result of " "every JSON object decoded and its return value will be used in place of the " -"given :class:`dict`. This can be used to provide custom deserializations (e." -"g. to support `JSON-RPC `_ class hinting)." +"given :class:`dict`. This can be used to provide custom deserializations " +"(e.g. to support `JSON-RPC `_ class hinting)." msgstr "" msgid "" "*object_pairs_hook* is an optional function that will be called with the " "result of every JSON object decoded with an ordered list of pairs. The " -"return value of *object_pairs_hook* will be used instead of the :class:" -"`dict`. This feature can be used to implement custom decoders. If " -"*object_hook* is also defined, the *object_pairs_hook* takes priority." +"return value of *object_pairs_hook* will be used instead of " +"the :class:`dict`. This feature can be used to implement custom decoders. " +"If *object_hook* is also defined, the *object_pairs_hook* takes priority." msgstr "" msgid "Added support for *object_pairs_hook*." @@ -530,8 +539,8 @@ msgid "" msgstr "" msgid "" -"If the data being deserialized is not a valid JSON document, a :exc:" -"`JSONDecodeError` will be raised." +"If the data being deserialized is not a valid JSON document, " +"a :exc:`JSONDecodeError` will be raised." msgstr "" msgid "All parameters are now :ref:`keyword-only `." @@ -564,6 +573,9 @@ msgstr "" msgid "Supports the following objects and types by default:" msgstr "" +msgid "dict, frozendict" +msgstr "" + msgid "list, tuple" msgstr "" @@ -576,18 +588,21 @@ msgstr "" msgid "Added support for int- and float-derived Enum classes." msgstr "" +msgid "Added support for :class:`frozendict`." +msgstr "" + msgid "" -"To extend this to recognize other objects, subclass and implement a :meth:" -"`~JSONEncoder.default` method with another method that returns a " +"To extend this to recognize other objects, subclass and implement " +"a :meth:`~JSONEncoder.default` method with another method that returns a " "serializable object for ``o`` if possible, otherwise it should call the " "superclass implementation (to raise :exc:`TypeError`)." msgstr "" msgid "" "If *skipkeys* is false (the default), a :exc:`TypeError` will be raised when " -"trying to encode keys that are not :class:`str`, :class:`int`, :class:" -"`float`, :class:`bool` or ``None``. If *skipkeys* is true, such items are " -"simply skipped." +"trying to encode keys that are " +"not :class:`str`, :class:`int`, :class:`float`, :class:`bool` or ``None``. " +"If *skipkeys* is true, such items are simply skipped." msgstr "" msgid "" @@ -637,19 +652,19 @@ msgstr "" msgid "" "If specified, *default* should be a function that gets called for objects " "that can't otherwise be serialized. It should return a JSON encodable " -"version of the object or raise a :exc:`TypeError`. If not specified, :exc:" -"`TypeError` is raised." +"version of the object or raise a :exc:`TypeError`. If not " +"specified, :exc:`TypeError` is raised." msgstr "" msgid "" "Implement this method in a subclass such that it returns a serializable " -"object for *o*, or calls the base implementation (to raise a :exc:" -"`TypeError`)." +"object for *o*, or calls the base implementation (to raise " +"a :exc:`TypeError`)." msgstr "" msgid "" -"For example, to support arbitrary iterators, you could implement :meth:" -"`~JSONEncoder.default` like this::" +"For example, to support arbitrary iterators, you could " +"implement :meth:`~JSONEncoder.default` like this::" msgstr "" msgid "" @@ -769,8 +784,8 @@ msgid "" "The RFC does not explicitly forbid JSON strings which contain byte sequences " "that don't correspond to valid Unicode characters (e.g. unpaired UTF-16 " "surrogates), but it does note that they may cause interoperability problems. " -"By default, this module accepts and outputs (when present in the original :" -"class:`str`) code points for such sequences." +"By default, this module accepts and outputs (when present in the " +"original :class:`str`) code points for such sequences." msgstr "" msgid "Infinite and NaN Number Values" @@ -884,8 +899,9 @@ msgid "" msgstr "" msgid "" -"If the optional ``infile`` and ``outfile`` arguments are not specified, :" -"data:`sys.stdin` and :data:`sys.stdout` will be used respectively:" +"If the optional ``infile`` and ``outfile`` arguments are not " +"specified, :data:`sys.stdin` and :data:`sys.stdout` will be used " +"respectively:" msgstr "" msgid "" diff --git a/library/keyword.po b/library/keyword.po index f9087e8..9e1cf9a 100644 --- a/library/keyword.po +++ b/library/keyword.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,8 +25,8 @@ msgid "**Source code:** :source:`Lib/keyword.py`" msgstr "" msgid "" -"This module allows a Python program to determine if a string is a :ref:" -"`keyword ` or :ref:`soft keyword `." +"This module allows a Python program to determine if a string is " +"a :ref:`keyword ` or :ref:`soft keyword `." msgstr "" msgid "Return ``True`` if *s* is a Python :ref:`keyword `." @@ -34,8 +34,9 @@ msgstr "" msgid "" "Sequence containing all the :ref:`keywords ` defined for the " -"interpreter. If any keywords are defined to only be active when particular :" -"mod:`__future__` statements are in effect, these will be included as well." +"interpreter. If any keywords are defined to only be active when " +"particular :mod:`__future__` statements are in effect, these will be " +"included as well." msgstr "" msgid "Return ``True`` if *s* is a Python :ref:`soft keyword `." diff --git a/library/language.po b/library/language.po index 5d563ec..649d330 100644 --- a/library/language.po +++ b/library/language.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/linecache.po b/library/linecache.po index a4f5120..f8a84c2 100644 --- a/library/linecache.po +++ b/library/linecache.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,9 +31,9 @@ msgstr "" msgid "" "The :mod:`!linecache` module allows one to get any line from a Python source " "file, while attempting to optimize internally, using a cache, the common " -"case where many lines are read from a single file. This is used by the :mod:" -"`traceback` module to retrieve source lines for inclusion in the formatted " -"traceback." +"case where many lines are read from a single file. This is used by " +"the :mod:`traceback` module to retrieve source lines for inclusion in the " +"formatted traceback." msgstr "" msgid "" @@ -58,12 +58,12 @@ msgid "" msgstr "" msgid "" -"If a file named *filename* is not found, the function first checks for a :" -"pep:`302` ``__loader__`` in *module_globals*. If there is such a loader and " -"it defines a ``get_source`` method, then that determines the source lines " -"(if ``get_source()`` returns ``None``, then ``''`` is returned). Finally, if " -"*filename* is a relative filename, it is looked up relative to the entries " -"in the module search path, ``sys.path``." +"If a file named *filename* is not found, the function first checks for " +"a :pep:`302` ``__loader__`` in *module_globals*. If there is such a loader " +"and it defines a ``get_source`` method, then that determines the source " +"lines (if ``get_source()`` returns ``None``, then ``''`` is returned). " +"Finally, if *filename* is a relative filename, it is looked up relative to " +"the entries in the module search path, ``sys.path``." msgstr "" msgid "Support *filename* of frozen modules." diff --git a/library/locale.po b/library/locale.po index 9ad18a4..5ec0ce5 100644 --- a/library/locale.po +++ b/library/locale.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,8 +54,9 @@ msgid "" "setting for the *category*. The available categories are listed in the data " "description below. *locale* may be a :ref:`string `, or a pair, " "language code and encoding. An empty string specifies the user's default " -"settings. If the modification of the locale fails, the exception :exc:" -"`Error` is raised. If successful, the new locale setting is returned." +"settings. If the modification of the locale fails, the " +"exception :exc:`Error` is raised. If successful, the new locale setting is " +"returned." msgstr "" msgid "" @@ -133,9 +134,9 @@ msgstr "" msgid "" "Sequence of numbers specifying which relative positions the " -"``'thousands_sep'`` is expected. If the sequence is terminated with :const:" -"`CHAR_MAX`, no further grouping is performed. If the sequence terminates " -"with a ``0``, the last group size is repeatedly used." +"``'thousands_sep'`` is expected. If the sequence is terminated " +"with :const:`CHAR_MAX`, no further grouping is performed. If the sequence " +"terminates with a ``0``, the last group size is repeatedly used." msgstr "" msgid "``'thousands_sep'``" @@ -390,8 +391,8 @@ msgid "" "the ``E`` modifier in their format strings causes the :func:`time.strftime` " "function to use this information. The format of the returned string is " "specified in *The Open Group Base Specifications Issue 8*, paragraph " -"`7.3.5.2 LC_TIME C-Language Access `_." +"`7.3.5.2 LC_TIME C-Language Access `_." msgstr "" msgid "" @@ -457,9 +458,9 @@ msgstr "" msgid "" "Returns the current setting for the given locale category as a tuple " -"containing the language code and encoding. *category* may be one of the :" -"const:`!LC_\\*` values except :const:`LC_ALL`. It defaults to :const:" -"`LC_CTYPE`." +"containing the language code and encoding. *category* may be one of " +"the :const:`!LC_\\*` values except :const:`LC_ALL`. It defaults " +"to :const:`LC_CTYPE`." msgstr "" msgid "" @@ -499,8 +500,8 @@ msgid "" msgstr "" msgid "" -"The function now always returns ``\"utf-8\"`` on Android or if the :ref:" -"`Python UTF-8 Mode ` is enabled." +"The function now always returns ``\"utf-8\"`` on Android or if " +"the :ref:`Python UTF-8 Mode ` is enabled." msgstr "" msgid "Get the current :term:`locale encoding`:" @@ -592,13 +593,13 @@ msgid "" msgstr "" msgid "" -"Converts a string into a normalized number string, following the :const:" -"`LC_NUMERIC` settings." +"Converts a string into a normalized number string, following " +"the :const:`LC_NUMERIC` settings." msgstr "" msgid "" -"Converts a normalized number string into a formatted string following the :" -"const:`LC_NUMERIC` settings." +"Converts a normalized number string into a formatted string following " +"the :const:`LC_NUMERIC` settings." msgstr "" msgid "" @@ -627,13 +628,13 @@ msgid "" msgstr "" msgid "" -"Locale category for sorting strings. The functions :func:`strcoll` and :" -"func:`strxfrm` of the :mod:`!locale` module are affected." +"Locale category for sorting strings. The functions :func:`strcoll` " +"and :func:`strxfrm` of the :mod:`!locale` module are affected." msgstr "" msgid "" -"Locale category for the formatting of time. The function :func:`time." -"strftime` follows these conventions." +"Locale category for the formatting of time. The " +"function :func:`time.strftime` follows these conventions." msgstr "" msgid "" @@ -654,10 +655,10 @@ msgid "" msgstr "" msgid "" -"Locale category for formatting numbers. The functions :func:" -"`format_string`, :func:`atoi`, :func:`atof` and :func:`.str` of the :mod:`!" -"locale` module are affected by that category. All other numeric formatting " -"operations are not affected." +"Locale category for formatting numbers. The " +"functions :func:`format_string`, :func:`atoi`, :func:`atof` and :func:`.str` " +"of the :mod:`!locale` module are affected by that category. All other " +"numeric formatting operations are not affected." msgstr "" msgid "" @@ -670,8 +671,8 @@ msgid "" msgstr "" msgid "" -"This is a symbolic constant used for different values returned by :func:" -"`localeconv`." +"This is a symbolic constant used for different values returned " +"by :func:`localeconv`." msgstr "" msgid "Background, details, hints, tips and caveats" @@ -686,9 +687,9 @@ msgstr "" msgid "" "Initially, when a program is started, the locale is the ``C`` locale, no " -"matter what the user's preferred locale is. There is one exception: the :" -"data:`LC_CTYPE` category is changed at startup to set the current locale " -"encoding to the user's preferred locale encoding. The program must " +"matter what the user's preferred locale is. There is one exception: " +"the :data:`LC_CTYPE` category is changed at startup to set the current " +"locale encoding to the user's preferred locale encoding. The program must " "explicitly say that it wants the user's preferred locale settings for other " "categories by calling ``setlocale(LC_ALL, '')``." msgstr "" @@ -712,8 +713,8 @@ msgstr "" msgid "" "The only way to perform numeric operations according to the locale is to use " -"the special functions defined by this module: :func:`atof`, :func:`atoi`, :" -"func:`format_string`, :func:`.str`." +"the special functions defined by this " +"module: :func:`atof`, :func:`atoi`, :func:`format_string`, :func:`.str`." msgstr "" msgid "" @@ -773,14 +774,14 @@ msgid "The \"C\" locale is supported on all platforms." msgstr "" msgid "" -"`IEEE Std 1003.1-2024; 8.2 Internationalization Variables `_" +"`IEEE Std 1003.1-2024; 8.2 Internationalization Variables `_" msgstr "" msgid "" -"`UCRT Locale names, Languages, and Country/Region strings `_" +"`UCRT Locale names, Languages, and Country/Region strings `_" msgstr "" msgid "" @@ -802,9 +803,9 @@ msgid "" "When Python code uses the :mod:`!locale` module to change the locale, this " "also affects the embedding application. If the embedding application " "doesn't want this to happen, it should remove the :mod:`!_locale` extension " -"module (which does all the work) from the table of built-in modules in the :" -"file:`config.c` file, and make sure that the :mod:`!_locale` module is not " -"accessible as a shared library." +"module (which does all the work) from the table of built-in modules in " +"the :file:`config.c` file, and make sure that the :mod:`!_locale` module is " +"not accessible as a shared library." msgstr "" msgid "Access to message catalogs" @@ -812,8 +813,8 @@ msgstr "" msgid "" "The locale module exposes the C library's gettext interface on systems that " -"provide this interface. It consists of the functions :func:`gettext`, :func:" -"`dgettext`, :func:`dcgettext`, :func:`textdomain`, :func:`bindtextdomain`, " +"provide this interface. It consists of the " +"functions :func:`~locale.gettext`, :func:`dgettext`, :func:`dcgettext`, :func:`textdomain`, :func:`bindtextdomain`, " "and :func:`bind_textdomain_codeset`. These are similar to the same " "functions in the :mod:`gettext` module, but use the C library's binary " "format for message catalogs, and the C library's search algorithms for " diff --git a/library/logging.config.po b/library/logging.config.po index 2dbb8cf..71f804d 100644 --- a/library/logging.config.po +++ b/library/logging.config.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -61,10 +61,10 @@ msgid "" msgstr "" msgid "" -"If an error is encountered during configuration, this function will raise a :" -"exc:`ValueError`, :exc:`TypeError`, :exc:`AttributeError` or :exc:" -"`ImportError` with a suitably descriptive message. The following is a " -"(possibly incomplete) list of conditions which will raise an error:" +"If an error is encountered during configuration, this function will raise " +"a :exc:`ValueError`, :exc:`TypeError`, :exc:`AttributeError` " +"or :exc:`ImportError` with a suitably descriptive message. The following is " +"a (possibly incomplete) list of conditions which will raise an error:" msgstr "" msgid "" @@ -89,11 +89,11 @@ msgstr "" msgid "" "Parsing is performed by the :class:`DictConfigurator` class, whose " -"constructor is passed the dictionary used for configuration, and has a :meth:" -"`configure` method. The :mod:`!logging.config` module has a callable " -"attribute :attr:`dictConfigClass` which is initially set to :class:" -"`DictConfigurator`. You can replace the value of :attr:`dictConfigClass` " -"with a suitable implementation of your own." +"constructor is passed the dictionary used for configuration, and has " +"a :meth:`configure` method. The :mod:`!logging.config` module has a " +"callable attribute :attr:`dictConfigClass` which is initially set " +"to :class:`DictConfigurator`. You can replace the value " +"of :attr:`dictConfigClass` with a suitable implementation of your own." msgstr "" msgid "" @@ -111,9 +111,9 @@ msgid "" "For example, a subclass of :class:`DictConfigurator` could call " "``DictConfigurator.__init__()`` in its own :meth:`__init__`, then set up " "custom prefixes which would be usable in the subsequent :meth:`configure` " -"call. :attr:`dictConfigClass` would be bound to this new subclass, and then :" -"func:`dictConfig` could be called exactly as in the default, uncustomized " -"state." +"call. :attr:`dictConfigClass` would be bound to this new subclass, and " +"then :func:`dictConfig` could be called exactly as in the default, " +"uncustomized state." msgstr "" msgid "" @@ -126,22 +126,22 @@ msgid "" msgstr "" msgid "" -"It will raise :exc:`FileNotFoundError` if the file doesn't exist and :exc:" -"`RuntimeError` if the file is invalid or empty." +"It will raise :exc:`FileNotFoundError` if the file doesn't exist " +"and :exc:`RuntimeError` if the file is invalid or empty." msgstr "" msgid "Parameters" msgstr "" msgid "" -"A filename, or a file-like object, or an instance derived from :class:" -"`~configparser.RawConfigParser`. If a :class:`!RawConfigParser`-derived " -"instance is passed, it is used as is. Otherwise, a :class:`~configparser." -"ConfigParser` is instantiated, and the configuration read by it from the " -"object passed in ``fname``. If that has a :meth:`readline` method, it is " -"assumed to be a file-like object and read using :meth:`~configparser." -"ConfigParser.read_file`; otherwise, it is assumed to be a filename and " -"passed to :meth:`~configparser.ConfigParser.read`." +"A filename, or a file-like object, or an instance derived " +"from :class:`~configparser.RawConfigParser`. If a :class:`!RawConfigParser`-" +"derived instance is passed, it is used as is. Otherwise, " +"a :class:`~configparser.ConfigParser` is instantiated, and the configuration " +"read by it from the object passed in ``fname``. If that has " +"a :meth:`readline` method, it is assumed to be a file-like object and read " +"using :meth:`~configparser.ConfigParser.read_file`; otherwise, it is assumed " +"to be a filename and passed to :meth:`~configparser.ConfigParser.read`." msgstr "" msgid "" @@ -186,13 +186,13 @@ msgstr "" msgid "" "Starts up a socket server on the specified port, and listens for new " -"configurations. If no port is specified, the module's default :const:" -"`DEFAULT_LOGGING_CONFIG_PORT` is used. Logging configurations will be sent " -"as a file suitable for processing by :func:`dictConfig` or :func:" -"`fileConfig`. Returns a :class:`~threading.Thread` instance on which you can " -"call :meth:`~threading.Thread.start` to start the server, and which you can :" -"meth:`~threading.Thread.join` when appropriate. To stop the server, call :" -"func:`stopListening`." +"configurations. If no port is specified, the module's " +"default :const:`DEFAULT_LOGGING_CONFIG_PORT` is used. Logging configurations " +"will be sent as a file suitable for processing by :func:`dictConfig` " +"or :func:`fileConfig`. Returns a :class:`~threading.Thread` instance on " +"which you can call :meth:`~threading.Thread.start` to start the server, and " +"which you can :meth:`~threading.Thread.join` when appropriate. To stop the " +"server, call :func:`stopListening`." msgstr "" msgid "" @@ -295,8 +295,8 @@ msgid "" "All other keys are optional, but if present they will be interpreted as " "described below. In all cases below where a 'configuring dict' is " "mentioned, it will be checked for the special ``'()'`` key to see if a " -"custom instantiation is required. If so, the mechanism described in :ref:" -"`logging-config-dict-userdef` below is used to create an instance; " +"custom instantiation is required. If so, the mechanism described " +"in :ref:`logging-config-dict-userdef` below is used to create an instance; " "otherwise, the context is used to determine what to instantiate." msgstr "" @@ -329,11 +329,11 @@ msgstr "" msgid "" "An optional ``class`` key indicates the name of the formatter's class (as a " -"dotted module and class name). The instantiation arguments are as for :" -"class:`~logging.Formatter`, thus this key is most useful for instantiating a " -"customised subclass of :class:`~logging.Formatter`. For example, the " -"alternative class might present exception tracebacks in an expanded or " -"condensed format. If your formatter requires different or extra " +"dotted module and class name). The instantiation arguments are as " +"for :class:`~logging.Formatter`, thus this key is most useful for " +"instantiating a customised subclass of :class:`~logging.Formatter`. For " +"example, the alternative class might present exception tracebacks in an " +"expanded or condensed format. If your formatter requires different or extra " "configuration keys, you should use :ref:`logging-config-dict-userdef`." msgstr "" @@ -397,11 +397,11 @@ msgid "" msgstr "" msgid "" -"the handler with id ``console`` is instantiated as a :class:`logging." -"StreamHandler`, using ``sys.stdout`` as the underlying stream. The handler " -"with id ``file`` is instantiated as a :class:`logging.handlers." -"RotatingFileHandler` with the keyword arguments ``filename='logconfig.log', " -"maxBytes=1024, backupCount=3``." +"the handler with id ``console`` is instantiated as " +"a :class:`logging.StreamHandler`, using ``sys.stdout`` as the underlying " +"stream. The handler with id ``file`` is instantiated as " +"a :class:`logging.handlers.RotatingFileHandler` with the keyword arguments " +"``filename='logconfig.log', maxBytes=1024, backupCount=3``." msgstr "" msgid "" @@ -438,8 +438,8 @@ msgid "" "*incremental* - whether the configuration is to be interpreted as " "incremental to the existing configuration. This value defaults to " "``False``, which means that the specified configuration replaces the " -"existing configuration with the same semantics as used by the existing :func:" -"`fileConfig` API." +"existing configuration with the same semantics as used by the " +"existing :func:`fileConfig` API." msgstr "" msgid "" @@ -449,9 +449,9 @@ msgstr "" msgid "" "*disable_existing_loggers* - whether any existing non-root loggers are to be " -"disabled. This setting mirrors the parameter of the same name in :func:" -"`fileConfig`. If absent, this parameter defaults to ``True``. This value is " -"ignored if *incremental* is ``True``." +"disabled. This setting mirrors the parameter of the same name " +"in :func:`fileConfig`. If absent, this parameter defaults to ``True``. This " +"value is ignored if *incremental* is ``True``." msgstr "" msgid "Incremental Configuration" @@ -536,12 +536,12 @@ msgstr "" msgid "" "The ids for loggers are the logger names which would be used " -"programmatically to obtain a reference to those loggers, e.g. ``foo.bar." -"baz``. The ids for Formatters and Filters can be any string value (such as " -"``brief``, ``precise`` above) and they are transient, in that they are only " -"meaningful for processing the configuration dictionary and used to determine " -"connections between objects, and are not persisted anywhere when the " -"configuration call is complete." +"programmatically to obtain a reference to those loggers, e.g. " +"``foo.bar.baz``. The ids for Formatters and Filters can be any string value " +"(such as ``brief``, ``precise`` above) and they are transient, in that they " +"are only meaningful for processing the configuration dictionary and used to " +"determine connections between objects, and are not persisted anywhere when " +"the configuration call is complete." msgstr "" msgid "" @@ -591,9 +591,9 @@ msgid "" "The above YAML snippet defines three formatters. The first, with id " "``brief``, is a standard :class:`logging.Formatter` instance with the " "specified format string. The second, with id ``default``, has a longer " -"format and also defines the time format explicitly, and will result in a :" -"class:`logging.Formatter` initialized with those two format strings. Shown " -"in Python source form, the ``brief`` and ``default`` formatters have " +"format and also defines the time format explicitly, and will result in " +"a :class:`logging.Formatter` initialized with those two format strings. " +"Shown in Python source form, the ``brief`` and ``default`` formatters have " "configuration sub-dictionaries::" msgstr "" @@ -676,7 +676,7 @@ msgid "" " 'bar' : 'baz',\n" " 'spam' : 99.9,\n" " 'answer' : 42,\n" -" '.' {\n" +" '.' : {\n" " 'foo': 'bar',\n" " 'baz': 'bozz'\n" " }\n" @@ -713,9 +713,9 @@ msgid "" "named ``bar``, problems would result, because the configuration of ``bar`` " "would be attempted before that of ``foo``, and ``foo`` would not yet have " "been configured. However, if the dependent handler were named ``foobar``, it " -"would be configured after ``foo``, with the result that ``cfg://handlers." -"foo`` would resolve to configured handler ``foo``, and not its configuration " -"dictionary." +"would be configured after ``foo``, with the result that ``cfg://" +"handlers.foo`` would resolve to configured handler ``foo``, and not its " +"configuration dictionary." msgstr "" msgid "Access to external objects" @@ -729,10 +729,10 @@ msgid "" "text file, there is no standard way to distinguish ``sys.stderr`` from the " "literal string ``'sys.stderr'``. To facilitate this distinction, the " "configuration system looks for certain special prefixes in string values and " -"treat them specially. For example, if the literal string ``'ext://sys." -"stderr'`` is provided as a value in the configuration, then the ``ext://`` " -"will be stripped off and the remainder of the value processed using normal " -"import mechanisms." +"treat them specially. For example, if the literal string ``'ext://" +"sys.stderr'`` is provided as a value in the configuration, then the ``ext://" +"`` will be stripped off and the remainder of the value processed using " +"normal import mechanisms." msgstr "" msgid "" @@ -759,15 +759,16 @@ msgstr "" msgid "" "However, a more generic mechanism is needed for user-defined objects which " -"are not known to the :mod:`logging` module. For example, consider :class:" -"`logging.handlers.MemoryHandler`, which takes a ``target`` argument which is " -"another handler to delegate to. Since the system already knows about this " -"class, then in the configuration, the given ``target`` just needs to be the " -"object id of the relevant target handler, and the system will resolve to the " -"handler from the id. If, however, a user defines a ``my.package.MyHandler`` " -"which has an ``alternate`` handler, the configuration system would not know " -"that the ``alternate`` referred to a handler. To cater for this, a generic " -"resolution system allows the user to specify:" +"are not known to the :mod:`logging` module. For example, " +"consider :class:`logging.handlers.MemoryHandler`, which takes a ``target`` " +"argument which is another handler to delegate to. Since the system already " +"knows about this class, then in the configuration, the given ``target`` just " +"needs to be the object id of the relevant target handler, and the system " +"will resolve to the handler from the id. If, however, a user defines a " +"``my.package.MyHandler`` which has an ``alternate`` handler, the " +"configuration system would not know that the ``alternate`` referred to a " +"handler. To cater for this, a generic resolution system allows the user to " +"specify:" msgstr "" msgid "" @@ -784,8 +785,8 @@ msgid "" "The literal string ``'cfg://handlers.file'`` will be resolved in an " "analogous way to strings with the ``ext://`` prefix, but looking in the " "configuration itself rather than the import namespace. The mechanism allows " -"access by dot or by index, in a similar way to that provided by ``str." -"format``. Thus, given the following snippet:" +"access by dot or by index, in a similar way to that provided by " +"``str.format``. Thus, given the following snippet:" msgstr "" msgid "" @@ -805,15 +806,15 @@ msgid "" "dict with key ``handlers``, the string ``'cfg://handlers.email`` would " "resolve to the dict with key ``email`` in the ``handlers`` dict, and so on. " "The string ``'cfg://handlers.email.toaddrs[1]`` would resolve to " -"``'dev_team@domain.tld'`` and the string ``'cfg://handlers.email." -"toaddrs[0]'`` would resolve to the value ``'support_team@domain.tld'``. The " -"``subject`` value could be accessed using either ``'cfg://handlers.email." -"subject'`` or, equivalently, ``'cfg://handlers.email[subject]'``. The " -"latter form only needs to be used if the key contains spaces or non-" -"alphanumeric characters. Please note that the characters ``[`` and ``]`` are " -"not allowed in the keys. If an index value consists only of decimal digits, " -"access will be attempted using the corresponding integer value, falling back " -"to the string value if needed." +"``'dev_team@domain.tld'`` and the string ``'cfg://" +"handlers.email.toaddrs[0]'`` would resolve to the value " +"``'support_team@domain.tld'``. The ``subject`` value could be accessed using " +"either ``'cfg://handlers.email.subject'`` or, equivalently, ``'cfg://" +"handlers.email[subject]'``. The latter form only needs to be used if the " +"key contains spaces or non-alphanumeric characters. Please note that the " +"characters ``[`` and ``]`` are not allowed in the keys. If an index value " +"consists only of decimal digits, access will be attempted using the " +"corresponding integer value, falling back to the string value if needed." msgstr "" msgid "" @@ -831,12 +832,13 @@ msgstr "" msgid "" "Import resolution, by default, uses the builtin :func:`__import__` function " "to do its importing. You may want to replace this with your own importing " -"mechanism: if so, you can replace the :attr:`importer` attribute of the :" -"class:`DictConfigurator` or its superclass, the :class:`BaseConfigurator` " -"class. However, you need to be careful because of the way functions are " -"accessed from classes via descriptors. If you are using a Python callable to " -"do your imports, and you want to define it at class level rather than " -"instance level, you need to wrap it with :func:`staticmethod`. For example::" +"mechanism: if so, you can replace the :attr:`importer` attribute of " +"the :class:`DictConfigurator` or its superclass, " +"the :class:`BaseConfigurator` class. However, you need to be careful because " +"of the way functions are accessed from classes via descriptors. If you are " +"using a Python callable to do your imports, and you want to define it at " +"class level rather than instance level, you need to wrap it " +"with :func:`staticmethod`. For example::" msgstr "" msgid "" @@ -856,14 +858,14 @@ msgstr "" msgid "" "If you want to configure a :class:`~logging.handlers.QueueHandler`, noting " -"that this is normally used in conjunction with a :class:`~logging.handlers." -"QueueListener`, you can configure both together. After the configuration, " -"the ``QueueListener`` instance will be available as the :attr:`~logging." -"handlers.QueueHandler.listener` attribute of the created handler, and that " -"in turn will be available to you using :func:`~logging.getHandlerByName` and " -"passing the name you have used for the ``QueueHandler`` in your " -"configuration. The dictionary schema for configuring the pair is shown in " -"the example YAML snippet below." +"that this is normally used in conjunction with " +"a :class:`~logging.handlers.QueueListener`, you can configure both together. " +"After the configuration, the ``QueueListener`` instance will be available as " +"the :attr:`~logging.handlers.QueueHandler.listener` attribute of the created " +"handler, and that in turn will be available to you " +"using :func:`~logging.getHandlerByName` and passing the name you have used " +"for the ``QueueHandler`` in your configuration. The dictionary schema for " +"configuring the pair is shown in the example YAML snippet below." msgstr "" msgid "" @@ -900,9 +902,9 @@ msgstr "" msgid "" "A string that resolves to a callable which, when called with no arguments, " -"returns the queue instance to use. That callable could be a :class:`queue." -"Queue` subclass or a function which returns a suitable queue instance, such " -"as ``my.module.queue_factory()``." +"returns the queue instance to use. That callable could be " +"a :class:`queue.Queue` subclass or a function which returns a suitable queue " +"instance, such as ``my.module.queue_factory()``." msgstr "" msgid "" @@ -952,16 +954,17 @@ msgstr "" msgid "" "Any custom queue handler and listener classes will need to be defined with " -"the same initialization signatures as :class:`~logging.handlers." -"QueueHandler` and :class:`~logging.handlers.QueueListener`." +"the same initialization signatures " +"as :class:`~logging.handlers.QueueHandler` " +"and :class:`~logging.handlers.QueueListener`." msgstr "" msgid "Configuration file format" msgstr "" msgid "" -"The configuration file format understood by :func:`fileConfig` is based on :" -"mod:`configparser` functionality. The file must contain sections called " +"The configuration file format understood by :func:`fileConfig` is based " +"on :mod:`configparser` functionality. The file must contain sections called " "``[loggers]``, ``[handlers]`` and ``[formatters]`` which identify by name " "the entities of each type which are defined in the file. For each such " "entity, there is a separate section which identifies how that entity is " @@ -979,12 +982,12 @@ msgid "" "The :func:`fileConfig` API is older than the :func:`dictConfig` API and does " "not provide functionality to cover certain aspects of logging. For example, " "you cannot configure :class:`~logging.Filter` objects, which provide for " -"filtering of messages beyond simple integer levels, using :func:" -"`fileConfig`. If you need to have instances of :class:`~logging.Filter` in " -"your logging configuration, you will need to use :func:`dictConfig`. Note " -"that future enhancements to configuration functionality will be added to :" -"func:`dictConfig`, so it's worth considering transitioning to this newer API " -"when it's convenient to do so." +"filtering of messages beyond simple integer levels, " +"using :func:`fileConfig`. If you need to have instances " +"of :class:`~logging.Filter` in your logging configuration, you will need to " +"use :func:`dictConfig`. Note that future enhancements to configuration " +"functionality will be added to :func:`dictConfig`, so it's worth considering " +"transitioning to this newer API when it's convenient to do so." msgstr "" msgid "Examples of these sections in the file are given below." @@ -1065,9 +1068,9 @@ msgid "" msgstr "" msgid "" -"The ``class`` entry indicates the handler's class (as determined by :func:" -"`eval` in the ``logging`` package's namespace). The ``level`` is interpreted " -"as for loggers, and ``NOTSET`` is taken to mean 'log everything'." +"The ``class`` entry indicates the handler's class (as determined " +"by :func:`eval` in the ``logging`` package's namespace). The ``level`` is " +"interpreted as for loggers, and ``NOTSET`` is taken to mean 'log everything'." msgstr "" msgid "" @@ -1115,8 +1118,8 @@ msgid "" "class=handlers.SysLogHandler\n" "level=ERROR\n" "formatter=form05\n" -"args=(('localhost', handlers.SYSLOG_UDP_PORT), handlers.SysLogHandler." -"LOG_USER)\n" +"args=(('localhost', handlers.SYSLOG_UDP_PORT), " +"handlers.SysLogHandler.LOG_USER)\n" "\n" "[handler_hand06]\n" "class=handlers.NTEventLogHandler\n" @@ -1177,8 +1180,8 @@ msgid "" "Due to the use of :func:`eval` as described above, there are potential " "security risks which result from using the :func:`listen` to send and " "receive configurations via sockets. The risks are limited to where multiple " -"users with no mutual trust run code on the same machine; see the :func:" -"`listen` documentation for more information." +"users with no mutual trust run code on the same machine; see " +"the :func:`listen` documentation for more information." msgstr "" msgid "Module :mod:`logging`" diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 04ae7fe..1714159 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -43,9 +43,9 @@ msgstr "" msgid "" "The following useful handlers are provided in the package. Note that three " -"of the handlers (:class:`StreamHandler`, :class:`FileHandler` and :class:" -"`NullHandler`) are actually defined in the :mod:`logging` module itself, but " -"have been documented here along with the other handlers." +"of the handlers (:class:`StreamHandler`, :class:`FileHandler` " +"and :class:`NullHandler`) are actually defined in the :mod:`logging` module " +"itself, but have been documented here along with the other handlers." msgstr "" msgid "StreamHandler" @@ -54,27 +54,27 @@ msgstr "" msgid "" "The :class:`StreamHandler` class, located in the core :mod:`logging` " "package, sends logging output to streams such as *sys.stdout*, *sys.stderr* " -"or any file-like object (or, more precisely, any object which supports :meth:" -"`write` and :meth:`flush` methods)." +"or any file-like object (or, more precisely, any object which " +"supports :meth:`write` and :meth:`flush` methods)." msgstr "" msgid "" "Returns a new instance of the :class:`StreamHandler` class. If *stream* is " -"specified, the instance will use it for logging output; otherwise, *sys." -"stderr* will be used." +"specified, the instance will use it for logging output; otherwise, " +"*sys.stderr* will be used." msgstr "" msgid "" "If a formatter is specified, it is used to format the record. The record is " "then written to the stream followed by :attr:`terminator`. If exception " -"information is present, it is formatted using :func:`traceback." -"print_exception` and appended to the stream." +"information is present, it is formatted " +"using :func:`traceback.print_exception` and appended to the stream." msgstr "" msgid "" -"Flushes the stream by calling its :meth:`flush` method. Note that the :meth:" -"`close` method is inherited from :class:`~logging.Handler` and so does no " -"output, so an explicit :meth:`flush` call may be needed at times." +"Flushes the stream by calling its :meth:`flush` method. Note that " +"the :meth:`close` method is inherited from :class:`~logging.Handler` and so " +"does no output, so an explicit :meth:`flush` call may be needed at times." msgstr "" msgid "" @@ -166,18 +166,18 @@ msgid "" msgstr "" msgid "" -"See :ref:`library-config` for more information on how to use :class:" -"`NullHandler`." +"See :ref:`library-config` for more information on how to " +"use :class:`NullHandler`." msgstr "" msgid "WatchedFileHandler" msgstr "" msgid "" -"The :class:`WatchedFileHandler` class, located in the :mod:`!logging." -"handlers` module, is a :class:`FileHandler` which watches the file it is " -"logging to. If the file changes, it is closed and reopened using the file " -"name." +"The :class:`WatchedFileHandler` class, located in the :mod:`!" +"logging.handlers` module, is a :class:`FileHandler` which watches the file " +"it is logging to. If the file changes, it is closed and reopened using the " +"file name." msgstr "" msgid "" @@ -222,11 +222,11 @@ msgid "BaseRotatingHandler" msgstr "" msgid "" -"The :class:`BaseRotatingHandler` class, located in the :mod:`!logging." -"handlers` module, is the base class for the rotating file handlers, :class:" -"`RotatingFileHandler` and :class:`TimedRotatingFileHandler`. You should not " -"need to instantiate this class, but it has attributes and methods you may " -"need to override." +"The :class:`BaseRotatingHandler` class, located in the :mod:`!" +"logging.handlers` module, is the base class for the rotating file " +"handlers, :class:`RotatingFileHandler` " +"and :class:`TimedRotatingFileHandler`. You should not need to instantiate " +"this class, but it has attributes and methods you may need to override." msgstr "" msgid "The parameters are as for :class:`FileHandler`. The attributes are:" @@ -255,10 +255,10 @@ msgid "" "determining the oldest files to delete. For this to happen, the filenames " "should be sortable using the date/time portion of the filename, and a namer " "needs to respect this. (If a namer is wanted that doesn't respect this " -"scheme, it will need to be used in a subclass of :class:" -"`TimedRotatingFileHandler` which overrides the :meth:" -"`~TimedRotatingFileHandler.getFilesToDelete` method to fit in with the " -"custom naming scheme.)" +"scheme, it will need to be used in a subclass " +"of :class:`TimedRotatingFileHandler` which overrides " +"the :meth:`~TimedRotatingFileHandler.getFilesToDelete` method to fit in with " +"the custom naming scheme.)" msgstr "" msgid "" @@ -297,17 +297,17 @@ msgid "" msgstr "" msgid "" -"The destination filename. This is normally what the source is rotated to, e." -"g. 'test.log.1'." +"The destination filename. This is normally what the source is rotated to, " +"e.g. 'test.log.1'." msgstr "" msgid "" "The reason the attributes exist is to save you having to subclass - you can " -"use the same callables for instances of :class:`RotatingFileHandler` and :" -"class:`TimedRotatingFileHandler`. If either the namer or rotator callable " -"raises an exception, this will be handled in the same way as any other " -"exception during an :meth:`emit` call, i.e. via the :meth:`handleError` " -"method of the handler." +"use the same callables for instances of :class:`RotatingFileHandler` " +"and :class:`TimedRotatingFileHandler`. If either the namer or rotator " +"callable raises an exception, this will be handled in the same way as any " +"other exception during an :meth:`emit` call, i.e. via " +"the :meth:`handleError` method of the handler." msgstr "" msgid "" @@ -322,8 +322,8 @@ msgid "RotatingFileHandler" msgstr "" msgid "" -"The :class:`RotatingFileHandler` class, located in the :mod:`!logging." -"handlers` module, supports rotation of disk log files." +"The :class:`RotatingFileHandler` class, located in the :mod:`!" +"logging.handlers` module, supports rotation of disk log files." msgstr "" msgid "" @@ -337,20 +337,21 @@ msgid "" msgstr "" msgid "" -"You can use the *maxBytes* and *backupCount* values to allow the file to :" -"dfn:`rollover` at a predetermined size. When the size is about to be " +"You can use the *maxBytes* and *backupCount* values to allow the file " +"to :dfn:`rollover` at a predetermined size. When the size is about to be " "exceeded, the file is closed and a new file is silently opened for output. " "Rollover occurs whenever the current log file is nearly *maxBytes* in " "length; but if either of *maxBytes* or *backupCount* is zero, rollover never " "occurs, so you generally want to set *backupCount* to at least 1, and have a " "non-zero *maxBytes*. When *backupCount* is non-zero, the system will save " "old log files by appending the extensions '.1', '.2' etc., to the filename. " -"For example, with a *backupCount* of 5 and a base file name of :file:`app." -"log`, you would get :file:`app.log`, :file:`app.log.1`, :file:`app.log.2`, " -"up to :file:`app.log.5`. The file being written to is always :file:`app." -"log`. When this file is filled, it is closed and renamed to :file:`app." -"log.1`, and if files :file:`app.log.1`, :file:`app.log.2`, etc. exist, then " -"they are renamed to :file:`app.log.2`, :file:`app.log.3` etc. respectively." +"For example, with a *backupCount* of 5 and a base file name " +"of :file:`app.log`, you would " +"get :file:`app.log`, :file:`app.log.1`, :file:`app.log.2`, up " +"to :file:`app.log.5`. The file being written to is always :file:`app.log`. " +"When this file is filled, it is closed and renamed to :file:`app.log.1`, and " +"if files :file:`app.log.1`, :file:`app.log.2`, etc. exist, then they are " +"renamed to :file:`app.log.2`, :file:`app.log.3` etc. respectively." msgstr "" msgid "Does a rollover, as described above." @@ -370,9 +371,9 @@ msgid "TimedRotatingFileHandler" msgstr "" msgid "" -"The :class:`TimedRotatingFileHandler` class, located in the :mod:`!logging." -"handlers` module, supports rotation of disk log files at certain timed " -"intervals." +"The :class:`TimedRotatingFileHandler` class, located in the :mod:`!" +"logging.handlers` module, supports rotation of disk log files at certain " +"timed intervals." msgstr "" msgid "" @@ -470,8 +471,8 @@ msgid "" msgstr "" msgid "" -"If *delay* is true, then file opening is deferred until the first call to :" -"meth:`emit`." +"If *delay* is true, then file opening is deferred until the first call " +"to :meth:`emit`." msgstr "" msgid "" @@ -547,8 +548,9 @@ msgid "" "Pickles the record's attribute dictionary and writes it to the socket in " "binary format. If there is an error with the socket, silently drops the " "packet. If the connection was previously lost, re-establishes the " -"connection. To unpickle the record at the receiving end into a :class:" -"`~logging.LogRecord`, use the :func:`~logging.makeLogRecord` function." +"connection. To unpickle the record at the receiving end into " +"a :class:`~logging.LogRecord`, use the :func:`~logging.makeLogRecord` " +"function." msgstr "" msgid "" @@ -559,8 +561,8 @@ msgstr "" msgid "" "This is a factory method which allows subclasses to define the precise type " -"of socket they want. The default implementation creates a TCP socket (:const:" -"`socket.SOCK_STREAM`)." +"of socket they want. The default implementation creates a TCP socket " +"(:const:`socket.SOCK_STREAM`)." msgstr "" msgid "" @@ -585,8 +587,8 @@ msgstr "" msgid "" "Send a pickled byte-string *packet* to the socket. The format of the sent " -"byte-string is as described in the documentation for :meth:`~SocketHandler." -"makePickle`." +"byte-string is as described in the documentation " +"for :meth:`~SocketHandler.makePickle`." msgstr "" msgid "" @@ -655,8 +657,9 @@ msgstr "" msgid "" "Pickles the record's attribute dictionary and writes it to the socket in " "binary format. If there is an error with the socket, silently drops the " -"packet. To unpickle the record at the receiving end into a :class:`~logging." -"LogRecord`, use the :func:`~logging.makeLogRecord` function." +"packet. To unpickle the record at the receiving end into " +"a :class:`~logging.LogRecord`, use the :func:`~logging.makeLogRecord` " +"function." msgstr "" msgid "" @@ -684,25 +687,26 @@ msgid "" "``('localhost', 514)`` is used. The address is used to open a socket. An " "alternative to providing a ``(host, port)`` tuple is providing an address as " "a string, for example '/dev/log'. In this case, a Unix domain socket is used " -"to send the message to the syslog. If *facility* is not specified, :const:" -"`LOG_USER` is used. The type of socket opened depends on the *socktype* " -"argument, which defaults to :const:`socket.SOCK_DGRAM` and thus opens a UDP " -"socket. To open a TCP socket (for use with the newer syslog daemons such as " -"rsyslog), specify a value of :const:`socket.SOCK_STREAM`. If *timeout* is " -"specified, it sets a timeout (in seconds) for the socket operations. This " -"can help prevent the program from hanging indefinitely if the syslog server " -"is unreachable. By default, *timeout* is ``None``, meaning no timeout is " -"applied." +"to send the message to the syslog. If *facility* is not " +"specified, :const:`LOG_USER` is used. The type of socket opened depends on " +"the *socktype* argument, which defaults to :const:`socket.SOCK_DGRAM` and " +"thus opens a UDP socket. To open a TCP socket (for use with the newer syslog " +"daemons such as rsyslog), specify a value of :const:`socket.SOCK_STREAM`. If " +"*timeout* is specified, it sets a timeout (in seconds) for the socket " +"operations. This can help prevent the program from hanging indefinitely if " +"the syslog server is unreachable. By default, *timeout* is ``None``, meaning " +"no timeout is applied." msgstr "" msgid "" -"Note that if your server is not listening on UDP port 514, :class:" -"`SysLogHandler` may appear not to work. In that case, check what address you " -"should be using for a domain socket - it's system dependent. For example, on " -"Linux it's usually '/dev/log' but on OS/X it's '/var/run/syslog'. You'll " -"need to check your platform and use the appropriate address (you may need to " -"do this check at runtime if your application needs to run on several " -"platforms). On Windows, you pretty much have to use the UDP option." +"Note that if your server is not listening on UDP port " +"514, :class:`SysLogHandler` may appear not to work. In that case, check what " +"address you should be using for a domain socket - it's system dependent. For " +"example, on Linux it's usually '/dev/log' but on OS/X it's '/var/run/" +"syslog'. You'll need to check your platform and use the appropriate address " +"(you may need to do this check at runtime if your application needs to run " +"on several platforms). On Windows, you pretty much have to use the UDP " +"option." msgstr "" msgid "" @@ -968,10 +972,10 @@ msgid "NTEventLogHandler" msgstr "" msgid "" -"The :class:`NTEventLogHandler` class, located in the :mod:`!logging." -"handlers` module, supports sending logging messages to a local Windows NT, " -"Windows 2000 or Windows XP event log. Before you can use it, you need Mark " -"Hammond's Win32 extensions for Python installed." +"The :class:`NTEventLogHandler` class, located in the :mod:`!" +"logging.handlers` module, supports sending logging messages to a local " +"Windows NT, Windows 2000 or Windows XP event log. Before you can use it, you " +"need Mark Hammond's Win32 extensions for Python installed." msgstr "" msgid "" @@ -979,14 +983,14 @@ msgid "" "*appname* is used to define the application name as it appears in the event " "log. An appropriate registry entry is created using this name. The *dllname* " "should give the fully qualified pathname of a .dll or .exe which contains " -"message definitions to hold in the log (if not specified, ``'win32service." -"pyd'`` is used - this is installed with the Win32 extensions and contains " -"some basic placeholder message definitions. Note that use of these " -"placeholders will make your event logs big, as the entire message source is " -"held in the log. If you want slimmer logs, you have to pass in the name of " -"your own .dll or .exe which contains the message definitions you want to use " -"in the event log). The *logtype* is one of ``'Application'``, ``'System'`` " -"or ``'Security'``, and defaults to ``'Application'``." +"message definitions to hold in the log (if not specified, " +"``'win32service.pyd'`` is used - this is installed with the Win32 extensions " +"and contains some basic placeholder message definitions. Note that use of " +"these placeholders will make your event logs big, as the entire message " +"source is held in the log. If you want slimmer logs, you have to pass in the " +"name of your own .dll or .exe which contains the message definitions you " +"want to use in the event log). The *logtype* is one of ``'Application'``, " +"``'System'`` or ``'Security'``, and defaults to ``'Application'``." msgstr "" msgid "" @@ -1011,10 +1015,11 @@ msgid "" "Returns the event type for the record. Override this if you want to specify " "your own types. This version does a mapping using the handler's typemap " "attribute, which is set up in :meth:`__init__` to a dictionary which " -"contains mappings for :const:`DEBUG`, :const:`INFO`, :const:`WARNING`, :" -"const:`ERROR` and :const:`CRITICAL`. If you are using your own levels, you " -"will either need to override this method or place a suitable dictionary in " -"the handler's *typemap* attribute." +"contains mappings " +"for :const:`DEBUG`, :const:`INFO`, :const:`WARNING`, :const:`ERROR` " +"and :const:`CRITICAL`. If you are using your own levels, you will either " +"need to override this method or place a suitable dictionary in the handler's " +"*typemap* attribute." msgstr "" msgid "" @@ -1048,8 +1053,8 @@ msgid "" "*secure* argument. This will only be used when authentication credentials " "are supplied. The tuple should be either an empty tuple, or a single-value " "tuple with the name of a keyfile, or a 2-value tuple with the names of the " -"keyfile and certificate file. (This tuple is passed to the :meth:`smtplib." -"SMTP.starttls` method.)" +"keyfile and certificate file. (This tuple is passed to " +"the :meth:`smtplib.SMTP.starttls` method.)" msgstr "" msgid "" @@ -1079,11 +1084,11 @@ msgid "" msgstr "" msgid "" -":class:`MemoryHandler` is a subclass of the more general :class:" -"`BufferingHandler`, which is an abstract class. This buffers logging records " -"in memory. Whenever each record is added to the buffer, a check is made by " -"calling :meth:`shouldFlush` to see if the buffer should be flushed. If it " -"should, then :meth:`flush` is expected to do the flushing." +":class:`MemoryHandler` is a subclass of the more " +"general :class:`BufferingHandler`, which is an abstract class. This buffers " +"logging records in memory. Whenever each record is added to the buffer, a " +"check is made by calling :meth:`shouldFlush` to see if the buffer should be " +"flushed. If it should, then :meth:`flush` is expected to do the flushing." msgstr "" msgid "" @@ -1092,8 +1097,8 @@ msgid "" msgstr "" msgid "" -"Append the record to the buffer. If :meth:`shouldFlush` returns true, call :" -"meth:`flush` to process the buffer." +"Append the record to the buffer. If :meth:`shouldFlush` returns true, " +"call :meth:`flush` to process the buffer." msgstr "" msgid "" @@ -1150,13 +1155,13 @@ msgid "" "Returns a new instance of the :class:`HTTPHandler` class. The *host* can be " "of the form ``host:port``, should you need to use a specific port number. " "If no *method* is specified, ``GET`` is used. If *secure* is true, a HTTPS " -"connection will be used. The *context* parameter may be set to a :class:`ssl." -"SSLContext` instance to configure the SSL settings used for the HTTPS " -"connection. If *credentials* is specified, it should be a 2-tuple consisting " -"of userid and password, which will be placed in a HTTP 'Authorization' " -"header using Basic authentication. If you specify credentials, you should " -"also specify secure=True so that your userid and password are not passed in " -"cleartext across the wire." +"connection will be used. The *context* parameter may be set to " +"a :class:`ssl.SSLContext` instance to configure the SSL settings used for " +"the HTTPS connection. If *credentials* is specified, it should be a 2-tuple " +"consisting of userid and password, which will be placed in a HTTP " +"'Authorization' header using Basic authentication. If you specify " +"credentials, you should also specify secure=True so that your userid and " +"password are not passed in cleartext across the wire." msgstr "" msgid "The *context* parameter was added." @@ -1164,16 +1169,16 @@ msgstr "" msgid "" "Provides a dictionary, based on ``record``, which is to be URL-encoded and " -"sent to the web server. The default implementation just returns ``record." -"__dict__``. This method can be overridden if e.g. only a subset of :class:" -"`~logging.LogRecord` is to be sent to the web server, or if more specific " -"customization of what's sent to the server is required." +"sent to the web server. The default implementation just returns " +"``record.__dict__``. This method can be overridden if e.g. only a subset " +"of :class:`~logging.LogRecord` is to be sent to the web server, or if more " +"specific customization of what's sent to the server is required." msgstr "" msgid "" -"Sends the record to the web server as a URL-encoded dictionary. The :meth:" -"`mapLogRecord` method is used to convert the record to the dictionary to be " -"sent." +"Sends the record to the web server as a URL-encoded dictionary. " +"The :meth:`mapLogRecord` method is used to convert the record to the " +"dictionary to be sent." msgstr "" msgid "" @@ -1213,26 +1218,28 @@ msgid "" msgstr "" msgid "" -"If you are using :mod:`multiprocessing`, you should avoid using :class:" -"`~queue.SimpleQueue` and instead use :class:`multiprocessing.Queue`." +"If you are using :mod:`multiprocessing`, you should avoid " +"using :class:`~queue.SimpleQueue` and instead " +"use :class:`multiprocessing.Queue`." msgstr "" msgid "" "The :mod:`multiprocessing` module uses an internal logger created and " -"accessed via :meth:`~multiprocessing.get_logger`. :class:`multiprocessing." -"Queue` will log ``DEBUG`` level messages upon items being queued. If those " -"log messages are processed by a :class:`QueueHandler` using the same :class:" -"`multiprocessing.Queue` instance, it will cause a deadlock or infinite " -"recursion." +"accessed " +"via :meth:`~multiprocessing.get_logger`. :class:`multiprocessing.Queue` will " +"log ``DEBUG`` level messages upon items being queued. If those log messages " +"are processed by a :class:`QueueHandler` using the " +"same :class:`multiprocessing.Queue` instance, it will cause a deadlock or " +"infinite recursion." msgstr "" msgid "" -"Enqueues the result of preparing the LogRecord. Should an exception occur (e." -"g. because a bounded queue has filled up), the :meth:`~logging.Handler." -"handleError` method is called to handle the error. This can result in the " -"record silently being dropped (if :data:`logging.raiseExceptions` is " -"``False``) or a message printed to ``sys.stderr`` (if :data:`logging." -"raiseExceptions` is ``True``)." +"Enqueues the result of preparing the LogRecord. Should an exception occur " +"(e.g. because a bounded queue has filled up), " +"the :meth:`~logging.Handler.handleError` method is called to handle the " +"error. This can result in the record silently being dropped " +"(if :data:`logging.raiseExceptions` is ``False``) or a message printed to " +"``sys.stderr`` (if :data:`logging.raiseExceptions` is ``True``)." msgstr "" msgid "" @@ -1243,10 +1250,11 @@ msgstr "" msgid "" "The base implementation formats the record to merge the message, arguments, " "exception and stack information, if present. It also removes unpickleable " -"items from the record in-place. Specifically, it overwrites the record's :" -"attr:`msg` and :attr:`message` attributes with the merged message (obtained " -"by calling the handler's :meth:`format` method), and sets the :attr:`args`, :" -"attr:`exc_info` and :attr:`exc_text` attributes to ``None``." +"items from the record in-place. Specifically, it overwrites the " +"record's :attr:`msg` and :attr:`message` attributes with the merged message " +"(obtained by calling the handler's :meth:`format` method), and sets " +"the :attr:`args`, :attr:`exc_info` and :attr:`exc_text` attributes to " +"``None``." msgstr "" msgid "" @@ -1259,8 +1267,8 @@ msgid "" "The base implementation formats the message with arguments, sets the " "``message`` and ``msg`` attributes to the formatted message and sets the " "``args`` and ``exc_text`` attributes to ``None`` to allow pickling and to " -"prevent further attempts at formatting. This means that a handler on the :" -"class:`QueueListener` side won't have the information to do custom " +"prevent further attempts at formatting. This means that a handler on " +"the :class:`QueueListener` side won't have the information to do custom " "formatting, e.g. of exceptions. You may wish to subclass ``QueueHandler`` " "and override this method to e.g. avoid setting ``exc_text`` to ``None``. " "Note that the ``message`` / ``msg`` / ``args`` changes are related to " @@ -1290,9 +1298,9 @@ msgid "" "module, supports receiving logging messages from a queue, such as those " "implemented in the :mod:`queue` or :mod:`multiprocessing` modules. The " "messages are received from a queue in an internal thread and passed, on the " -"same thread, to one or more handlers for processing. While :class:" -"`QueueListener` is not itself a handler, it is documented here because it " -"works hand-in-hand with :class:`QueueHandler`." +"same thread, to one or more handlers for processing. " +"While :class:`QueueListener` is not itself a handler, it is documented here " +"because it works hand-in-hand with :class:`QueueHandler`." msgstr "" msgid "" @@ -1310,8 +1318,8 @@ msgid "" "will handle entries placed on the queue. The queue can be any queue-like " "object; it's passed as-is to the :meth:`dequeue` method, which needs to know " "how to get messages from it. The queue is not *required* to have the task " -"tracking API (though it's used if available), which means that you can use :" -"class:`~queue.SimpleQueue` instances for *queue*." +"tracking API (though it's used if available), which means that you can " +"use :class:`~queue.SimpleQueue` instances for *queue*." msgstr "" msgid "" @@ -1325,9 +1333,10 @@ msgid "The ``respect_handler_level`` argument was added." msgstr "" msgid "" -":class:`QueueListener` can now be used as a context manager via :keyword:" -"`with`. When entering the context, the listener is started. When exiting the " -"context, the listener is stopped. :meth:`~contextmanager.__enter__` returns " +":class:`QueueListener` can now be used as a context manager " +"via :keyword:`with`. When entering the context, the listener is started. " +"When exiting the context, the listener is " +"stopped. :meth:`~contextmanager.__enter__` returns " "the :class:`QueueListener` object." msgstr "" @@ -1353,8 +1362,8 @@ msgstr "" msgid "" "This just loops through the handlers offering them the record to handle. The " -"actual object passed to the handlers is that which is returned from :meth:" -"`prepare`." +"actual object passed to the handlers is that which is returned " +"from :meth:`prepare`." msgstr "" msgid "Starts the listener." diff --git a/library/logging.po b/library/logging.po index 3765729..6f9cf48 100644 --- a/library/logging.po +++ b/library/logging.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -157,14 +157,14 @@ msgid "" "are all descendants of ``foo``. In addition, all loggers are descendants of " "the root logger. The logger name hierarchy is analogous to the Python " "package hierarchy, and identical to it if you organise your loggers on a per-" -"module basis using the recommended construction ``logging." -"getLogger(__name__)``. That's because in a module, ``__name__`` is the " -"module's name in the Python package namespace." +"module basis using the recommended construction " +"``logging.getLogger(__name__)``. That's because in a module, ``__name__`` " +"is the module's name in the Python package namespace." msgstr "" msgid "" -"This is the logger's name, and is the value that was passed to :func:" -"`getLogger` to obtain the logger." +"This is the logger's name, and is the value that was passed " +"to :func:`getLogger` to obtain the logger." msgstr "" msgid "This attribute should be treated as read-only." @@ -285,25 +285,27 @@ msgstr "" msgid "" "Indicates if a message of severity *level* would be processed by this " -"logger. This method checks first the module-level level set by ``logging." -"disable(level)`` and then the logger's effective level as determined by :" -"meth:`getEffectiveLevel`." +"logger. This method checks first the module-level level set by " +"``logging.disable(level)`` and then the logger's effective level as " +"determined by :meth:`getEffectiveLevel`." msgstr "" msgid "" -"Indicates the effective level for this logger. If a value other than :const:" -"`NOTSET` has been set using :meth:`setLevel`, it is returned. Otherwise, the " -"hierarchy is traversed towards the root until a value other than :const:" -"`NOTSET` is found, and that value is returned. The value returned is an " -"integer, typically one of :const:`logging.DEBUG`, :const:`logging.INFO` etc." +"Indicates the effective level for this logger. If a value other " +"than :const:`NOTSET` has been set using :meth:`setLevel`, it is returned. " +"Otherwise, the hierarchy is traversed towards the root until a value other " +"than :const:`NOTSET` is found, and that value is returned. The value " +"returned is an integer, typically one " +"of :const:`logging.DEBUG`, :const:`logging.INFO` etc." msgstr "" msgid "" "Returns a logger which is a descendant to this logger, as determined by the " "suffix. Thus, ``logging.getLogger('abc').getChild('def.ghi')`` would return " -"the same logger as would be returned by ``logging.getLogger('abc.def." -"ghi')``. This is a convenience method, useful when the parent logger is " -"named using e.g. ``__name__`` rather than a literal string." +"the same logger as would be returned by " +"``logging.getLogger('abc.def.ghi')``. This is a convenience method, useful " +"when the parent logger is named using e.g. ``__name__`` rather than a " +"literal string." msgstr "" msgid "" @@ -365,18 +367,18 @@ msgstr "" msgid "" "The third optional keyword argument is *stacklevel*, which defaults to " "``1``. If greater than 1, the corresponding number of stack frames are " -"skipped when computing the line number and function name set in the :class:" -"`LogRecord` created for the logging event. This can be used in logging " -"helpers so that the function name, filename and line number recorded are not " -"the information for the helper function/method, but rather its caller. The " -"name of this parameter mirrors the equivalent one in the :mod:`warnings` " -"module." +"skipped when computing the line number and function name set in " +"the :class:`LogRecord` created for the logging event. This can be used in " +"logging helpers so that the function name, filename and line number recorded " +"are not the information for the helper function/method, but rather its " +"caller. The name of this parameter mirrors the equivalent one in " +"the :mod:`warnings` module." msgstr "" msgid "" "The fourth keyword argument is *extra* which can be used to pass a " -"dictionary which is used to populate the :attr:`~object.__dict__` of the :" -"class:`LogRecord` created for the logging event with user-defined " +"dictionary which is used to populate the :attr:`~object.__dict__` of " +"the :class:`LogRecord` created for the logging event with user-defined " "attributes. These custom attributes can then be used as you like. For " "example, they could be incorporated into logged messages. For example::" msgstr "" @@ -405,12 +407,12 @@ msgstr "" msgid "" "If you choose to use these attributes in logged messages, you need to " -"exercise some care. In the above example, for instance, the :class:" -"`Formatter` has been set up with a format string which expects 'clientip' " -"and 'user' in the attribute dictionary of the :class:`LogRecord`. If these " -"are missing, the message will not be logged because a string formatting " -"exception will occur. So in this case, you always need to pass the *extra* " -"dictionary with these keys." +"exercise some care. In the above example, for instance, " +"the :class:`Formatter` has been set up with a format string which expects " +"'clientip' and 'user' in the attribute dictionary of the :class:`LogRecord`. " +"If these are missing, the message will not be logged because a string " +"formatting exception will occur. So in this case, you always need to pass " +"the *extra* dictionary with these keys." msgstr "" msgid "" @@ -514,8 +516,8 @@ msgid "" "Handles a record by passing it to all handlers associated with this logger " "and its ancestors (until a false value of *propagate* is found). This method " "is used for unpickled records received from a socket, as well as those " -"created locally. Logger-level filtering is applied using :meth:`~Logger." -"filter`." +"created locally. Logger-level filtering is applied " +"using :meth:`~Logger.filter`." msgstr "" msgid "" @@ -607,16 +609,16 @@ msgid "Handler Objects" msgstr "" msgid "" -"Handlers have the following attributes and methods. Note that :class:" -"`Handler` is never instantiated directly; this class acts as a base for more " -"useful subclasses. However, the :meth:`!__init__` method in subclasses needs " -"to call :meth:`Handler.__init__`." +"Handlers have the following attributes and methods. Note " +"that :class:`Handler` is never instantiated directly; this class acts as a " +"base for more useful subclasses. However, the :meth:`!__init__` method in " +"subclasses needs to call :meth:`Handler.__init__`." msgstr "" msgid "" "Initializes the :class:`Handler` instance by setting its level, setting the " -"list of filters to the empty list and creating a lock (using :meth:" -"`createLock`) for serializing access to an I/O mechanism." +"list of filters to the empty list and creating a lock " +"(using :meth:`createLock`) for serializing access to an I/O mechanism." msgstr "" msgid "" @@ -642,8 +644,8 @@ msgid "" msgstr "" msgid "" -"Sets the formatter for this handler to *fmt*. The *fmt* argument must be a :" -"class:`Formatter` instance or ``None``." +"Sets the formatter for this handler to *fmt*. The *fmt* argument must be " +"a :class:`Formatter` instance or ``None``." msgstr "" msgid "Adds the specified filter *filter* to this handler." @@ -684,14 +686,15 @@ msgstr "" msgid "" "This method should be called from handlers when an exception is encountered " -"during an :meth:`emit` call. If the module-level attribute :data:" -"`raiseExceptions` is ``False``, exceptions get silently ignored. This is " -"what is mostly wanted for a logging system - most users will not care about " -"errors in the logging system, they are more interested in application " -"errors. You could, however, replace this with a custom handler if you wish. " -"The specified record is the one which was being processed when the exception " -"occurred. (The default value of :data:`raiseExceptions` is ``True``, as that " -"is more useful during development)." +"during an :meth:`emit` call. If the module-level " +"attribute :data:`raiseExceptions` is ``False``, exceptions get silently " +"ignored. This is what is mostly wanted for a logging system - most users " +"will not care about errors in the logging system, they are more interested " +"in application errors. You could, however, replace this with a custom " +"handler if you wish. The specified record is the one which was being " +"processed when the exception occurred. (The default value " +"of :data:`raiseExceptions` is ``True``, as that is more useful during " +"development)." msgstr "" msgid "" @@ -701,8 +704,8 @@ msgstr "" msgid "" "Do whatever it takes to actually log the specified logging record. This " -"version is intended to be implemented by subclasses and so raises a :exc:" -"`NotImplementedError`." +"version is intended to be implemented by subclasses and so raises " +"a :exc:`NotImplementedError`." msgstr "" msgid "" @@ -744,9 +747,9 @@ msgstr "" msgid "" "A format string in the given *style* for the logged output as a whole. The " -"possible mapping keys are drawn from the :class:`LogRecord` object's :ref:" -"`logrecord-attributes`. If not specified, ``'%(message)s'`` is used, which " -"is just the logged message." +"possible mapping keys are drawn from the :class:`LogRecord` " +"object's :ref:`logrecord-attributes`. If not specified, ``'%(message)s'`` is " +"used, which is just the logged message." msgstr "" msgid "" @@ -766,8 +769,8 @@ msgstr "" msgid "" "If ``True`` (the default), incorrect or mismatched *fmt* and *style* will " -"raise a :exc:`ValueError`; for example, ``logging.Formatter('%(asctime)s - " -"%(message)s', style='{')``." +"raise a :exc:`ValueError`; for example, ``logging.Formatter('%(asctime)s - %" +"(message)s', style='{')``." msgstr "" msgid "" @@ -790,11 +793,11 @@ msgid "" "dictionary, a couple of preparatory steps are carried out. The *message* " "attribute of the record is computed using *msg* % *args*. If the formatting " "string contains ``'(asctime)'``, :meth:`formatTime` is called to format the " -"event time. If there is exception information, it is formatted using :meth:" -"`formatException` and appended to the message. Note that the formatted " -"exception information is cached in attribute *exc_text*. This is useful " -"because the exception information can be pickled and sent across the wire, " -"but you should be careful if you have more than one :class:`Formatter` " +"event time. If there is exception information, it is formatted " +"using :meth:`formatException` and appended to the message. Note that the " +"formatted exception information is cached in attribute *exc_text*. This is " +"useful because the exception information can be pickled and sent across the " +"wire, but you should be careful if you have more than one :class:`Formatter` " "subclass which customizes the formatting of exception information. In this " "case, you will have to clear the cached value (by setting the *exc_text* " "attribute to ``None``) after a formatter has done its formatting, so that " @@ -811,12 +814,12 @@ msgid "" "This method should be called from :meth:`format` by a formatter which wants " "to make use of a formatted time. This method can be overridden in formatters " "to provide for any specific requirement, but the basic behavior is as " -"follows: if *datefmt* (a string) is specified, it is used with :func:`time." -"strftime` to format the creation time of the record. Otherwise, the format " -"'%Y-%m-%d %H:%M:%S,uuu' is used, where the uuu part is a millisecond value " -"and the other letters are as per the :func:`time.strftime` documentation. " -"An example time in this format is ``2003-01-23 00:29:50,411``. The " -"resulting string is returned." +"follows: if *datefmt* (a string) is specified, it is used " +"with :func:`time.strftime` to format the creation time of the record. " +"Otherwise, the format '%Y-%m-%d %H:%M:%S,uuu' is used, where the uuu part is " +"a millisecond value and the other letters are as per " +"the :func:`time.strftime` documentation. An example time in this format is " +"``2003-01-23 00:29:50,411``. The resulting string is returned." msgstr "" msgid "" @@ -853,9 +856,9 @@ msgid "" msgstr "" msgid "" -"Formats the specified stack information (a string as returned by :func:" -"`traceback.print_stack`, but with the last newline removed) as a string. " -"This default implementation just returns the input value." +"Formats the specified stack information (a string as returned " +"by :func:`traceback.print_stack`, but with the last newline removed) as a " +"string. This default implementation just returns the input value." msgstr "" msgid "" @@ -930,8 +933,8 @@ msgid "" "You don't need to create specialized ``Filter`` classes, or use other " "classes with a ``filter`` method: you can use a function (or other callable) " "as a filter. The filtering logic will check to see if the filter object has " -"a ``filter`` attribute: if it does, it's assumed to be a ``Filter`` and its :" -"meth:`~Filter.filter` method is called. Otherwise, it's assumed to be a " +"a ``filter`` attribute: if it does, it's assumed to be a ``Filter`` and " +"its :meth:`~Filter.filter` method is called. Otherwise, it's assumed to be a " "callable and called with the record as the single parameter. The returned " "value should conform to that returned by :meth:`~Filter.filter`." msgstr "" @@ -958,10 +961,10 @@ msgid "LogRecord Objects" msgstr "" msgid "" -":class:`LogRecord` instances are created automatically by the :class:" -"`Logger` every time something is logged, and can be created manually via :" -"func:`makeLogRecord` (for example, from a pickled event received over the " -"wire)." +":class:`LogRecord` instances are created automatically by " +"the :class:`Logger` every time something is logged, and can be created " +"manually via :func:`makeLogRecord` (for example, from a pickled event " +"received over the wire)." msgstr "" msgid "Contains all the information pertinent to the event being logged." @@ -982,8 +985,8 @@ msgstr "" msgid "" "The :ref:`numeric level ` of the logging event (such as ``10`` for " "``DEBUG``, ``20`` for ``INFO``, etc). Note that this is converted to *two* " -"attributes of the LogRecord: :attr:`!levelno` for the numeric value and :" -"attr:`!levelname` for the corresponding level name." +"attributes of the LogRecord: :attr:`!levelno` for the numeric value " +"and :attr:`!levelname` for the corresponding level name." msgstr "" msgid "" @@ -1005,8 +1008,9 @@ msgid "" msgstr "" msgid "" -"An exception tuple with the current exception information, as returned by :" -"func:`sys.exc_info`, or ``None`` if no exception information is available." +"An exception tuple with the current exception information, as returned " +"by :func:`sys.exc_info`, or ``None`` if no exception information is " +"available." msgstr "" msgid "" @@ -1034,8 +1038,8 @@ msgid "" msgstr "" msgid "" -"This functionality can be used to inject your own values into a :class:" -"`LogRecord` at creation time. You can use the following pattern::" +"This functionality can be used to inject your own values into " +"a :class:`LogRecord` at creation time. You can use the following pattern::" msgstr "" msgid "" @@ -1070,8 +1074,8 @@ msgstr "" msgid "" "If you are using {}-formatting (:func:`str.format`), you can use ``{attrname}" -"`` as the placeholder in the format string. If you are using $-formatting (:" -"class:`string.Template`), use the form ``${attrname}``. In both cases, of " +"`` as the placeholder in the format string. If you are using $-formatting " +"(:class:`string.Template`), use the form ``${attrname}``. In both cases, of " "course, replace ``attrname`` with the actual attribute name you want to use." msgstr "" @@ -1123,8 +1127,8 @@ msgid "``%(created)f``" msgstr "" msgid "" -"Time when the :class:`LogRecord` was created (as returned by :func:`time." -"time_ns` / 1e9)." +"Time when the :class:`LogRecord` was created (as returned " +"by :func:`time.time_ns` / 1e9)." msgstr "" msgid "exc_info" @@ -1139,8 +1143,9 @@ msgid "exc_text" msgstr "" msgid "" -"Exception information formatted as a string. This is set when :meth:" -"`Formatter.format` is invoked, or ``None`` if no exception has occurred." +"Exception information formatted as a string. This is set " +"when :meth:`Formatter.format` is invoked, or ``None`` if no exception has " +"occurred." msgstr "" msgid "filename" @@ -1179,8 +1184,8 @@ msgid "``%(levelno)s``" msgstr "" msgid "" -"Numeric logging level for the message (:const:`DEBUG`, :const:`INFO`, :const:" -"`WARNING`, :const:`ERROR`, :const:`CRITICAL`)." +"Numeric logging level for the message " +"(:const:`DEBUG`, :const:`INFO`, :const:`WARNING`, :const:`ERROR`, :const:`CRITICAL`)." msgstr "" msgid "lineno" @@ -1199,8 +1204,8 @@ msgid "``%(message)s``" msgstr "" msgid "" -"The logged message, computed as ``msg % args``. This is set when :meth:" -"`Formatter.format` is invoked." +"The logged message, computed as ``msg % args``. This is set " +"when :meth:`Formatter.format` is invoked." msgstr "" msgid "module" @@ -1327,18 +1332,19 @@ msgstr "" msgid "" ":class:`LoggerAdapter` instances are used to conveniently pass contextual " -"information into logging calls. For a usage example, see the section on :ref:" -"`adding contextual information to your logging output `." +"information into logging calls. For a usage example, see the section " +"on :ref:`adding contextual information to your logging output `." msgstr "" msgid "" "Returns an instance of :class:`LoggerAdapter` initialized with an " "underlying :class:`Logger` instance, an optional dict-like object (*extra*), " "and an optional boolean (*merge_extra*) indicating whether or not the " -"*extra* argument of individual log calls should be merged with the :class:" -"`LoggerAdapter` extra. The default behavior is to ignore the *extra* " -"argument of individual log calls and only use the one of the :class:" -"`LoggerAdapter` instance" +"*extra* argument of individual log calls should be merged with " +"the :class:`LoggerAdapter` extra. The default behavior is to ignore the " +"*extra* argument of individual log calls and only use the one of " +"the :class:`LoggerAdapter` instance" msgstr "" msgid "" @@ -1357,19 +1363,17 @@ msgstr "" msgid "" "In addition to the above, :class:`LoggerAdapter` supports the following " -"methods of :class:`Logger`: :meth:`~Logger.debug`, :meth:`~Logger.info`, :" -"meth:`~Logger.warning`, :meth:`~Logger.error`, :meth:`~Logger.exception`, :" -"meth:`~Logger.critical`, :meth:`~Logger.log`, :meth:`~Logger.isEnabledFor`, :" -"meth:`~Logger.getEffectiveLevel`, :meth:`~Logger.setLevel` and :meth:" -"`~Logger.hasHandlers`. These methods have the same signatures as their " -"counterparts in :class:`Logger`, so you can use the two types of instances " -"interchangeably." +"methods " +"of :class:`Logger`: :meth:`~Logger.debug`, :meth:`~Logger.info`, :meth:`~Logger.warning`, :meth:`~Logger.error`, :meth:`~Logger.exception`, :meth:`~Logger.critical`, :meth:`~Logger.log`, :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:`~Logger.setLevel` " +"and :meth:`~Logger.hasHandlers`. These methods have the same signatures as " +"their counterparts in :class:`Logger`, so you can use the two types of " +"instances interchangeably." msgstr "" msgid "" -"The :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:" -"`~Logger.setLevel` and :meth:`~Logger.hasHandlers` methods were added to :" -"class:`LoggerAdapter`. These methods delegate to the underlying logger." +"The :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:`~Logger.setLevel` " +"and :meth:`~Logger.hasHandlers` methods were added " +"to :class:`LoggerAdapter`. These methods delegate to the underlying logger." msgstr "" msgid "" @@ -1458,8 +1462,9 @@ msgid "" msgstr "" msgid "" -"The only difference is that if the root logger has no handlers, then :func:" -"`basicConfig` is called, prior to calling ``debug`` on the root logger." +"The only difference is that if the root logger has no handlers, " +"then :func:`basicConfig` is called, prior to calling ``debug`` on the root " +"logger." msgstr "" msgid "" @@ -1516,10 +1521,10 @@ msgid "" "useful. Its effect is to disable all logging calls of severity *level* and " "below, so that if you call it with a value of INFO, then all INFO and DEBUG " "events would be discarded, whereas those of severity WARNING and above would " -"be processed according to the logger's effective level. If ``logging." -"disable(logging.NOTSET)`` is called, it effectively removes this overriding " -"level, so that logging output again depends on the effective levels of " -"individual loggers." +"be processed according to the logger's effective level. If " +"``logging.disable(logging.NOTSET)`` is called, it effectively removes this " +"overriding level, so that logging output again depends on the effective " +"levels of individual loggers." msgstr "" msgid "" @@ -1530,8 +1535,8 @@ msgid "" msgstr "" msgid "" -"The *level* parameter was defaulted to level ``CRITICAL``. See :issue:" -"`28524` for more information about this change." +"The *level* parameter was defaulted to level ``CRITICAL``. " +"See :issue:`28524` for more information about this change." msgstr "" msgid "" @@ -1544,8 +1549,8 @@ msgid "" msgstr "" msgid "" -"If you are thinking of defining your own levels, please see the section on :" -"ref:`custom-levels`." +"If you are thinking of defining your own levels, please see the section " +"on :ref:`custom-levels`." msgstr "" msgid "" @@ -1558,12 +1563,13 @@ msgid "Returns the textual or numeric representation of logging level *level*." msgstr "" msgid "" -"If *level* is one of the predefined levels :const:`CRITICAL`, :const:" -"`ERROR`, :const:`WARNING`, :const:`INFO` or :const:`DEBUG` then you get the " -"corresponding string. If you have associated levels with names using :func:" -"`addLevelName` then the name you have associated with *level* is returned. " -"If a numeric value corresponding to one of the defined levels is passed in, " -"the corresponding string representation is returned." +"If *level* is one of the predefined " +"levels :const:`CRITICAL`, :const:`ERROR`, :const:`WARNING`, :const:`INFO` " +"or :const:`DEBUG` then you get the corresponding string. If you have " +"associated levels with names using :func:`addLevelName` then the name you " +"have associated with *level* is returned. If a numeric value corresponding " +"to one of the defined levels is passed in, the corresponding string " +"representation is returned." msgstr "" msgid "" @@ -1580,9 +1586,9 @@ msgstr "" msgid "" "Levels are internally integers (as they need to be compared in the logging " "logic). This function is used to convert between an integer level and the " -"level name displayed in the formatted log output by means of the " -"``%(levelname)s`` format specifier (see :ref:`logrecord-attributes`), and " -"vice versa." +"level name displayed in the formatted log output by means of the ``%" +"(levelname)s`` format specifier (see :ref:`logrecord-attributes`), and vice " +"versa." msgstr "" msgid "" @@ -1603,18 +1609,18 @@ msgstr "" msgid "" "Creates and returns a new :class:`LogRecord` instance whose attributes are " -"defined by *attrdict*. This function is useful for taking a pickled :class:" -"`LogRecord` attribute dictionary, sent over a socket, and reconstituting it " -"as a :class:`LogRecord` instance at the receiving end." +"defined by *attrdict*. This function is useful for taking a " +"pickled :class:`LogRecord` attribute dictionary, sent over a socket, and " +"reconstituting it as a :class:`LogRecord` instance at the receiving end." msgstr "" msgid "" -"Does basic configuration for the logging system by either creating a :class:" -"`StreamHandler` with a default :class:`Formatter` or using the given " -"*formatter* instance, and adding it to the root logger. The functions :func:" -"`debug`, :func:`info`, :func:`warning`, :func:`error` and :func:`critical` " -"will call :func:`basicConfig` automatically if no handlers are defined for " -"the root logger." +"Does basic configuration for the logging system by either creating " +"a :class:`StreamHandler` with a default :class:`Formatter` or using the " +"given *formatter* instance, and adding it to the root logger. The " +"functions :func:`debug`, :func:`info`, :func:`warning`, :func:`error` " +"and :func:`critical` will call :func:`basicConfig` automatically if no " +"handlers are defined for the root logger." msgstr "" msgid "" @@ -1725,8 +1731,9 @@ msgid "" "If this keyword argument is specified along with *filename*, its value is " "used when the :class:`FileHandler` is created, and thus used when opening " "the output file. If not specified, the value 'backslashreplace' is used. " -"Note that if ``None`` is specified, it will be passed as such to :func:" -"`open`, which means that it will be treated the same as passing 'errors'." +"Note that if ``None`` is specified, it will be passed as such " +"to :func:`open`, which means that it will be treated the same as passing " +"'errors'." msgstr "" msgid "*formatter*" @@ -1773,8 +1780,8 @@ msgstr "" msgid "" "Tells the logging system to use the class *klass* when instantiating a " "logger. The class should define :meth:`!__init__` such that only a name " -"argument is required, and the :meth:`!__init__` should call :meth:`!Logger." -"__init__`. This function is typically called before any loggers are " +"argument is required, and the :meth:`!__init__` should call :meth:`!" +"Logger.__init__`. This function is typically called before any loggers are " "instantiated by applications which need to use custom logger behavior. After " "this call, as at any other time, do not instantiate loggers directly using " "the subclass: continue to use the :func:`logging.getLogger` API to get your " @@ -1855,13 +1862,13 @@ msgid "Module-Level Attributes" msgstr "" msgid "" -"A \"handler of last resort\" is available through this attribute. This is a :" -"class:`StreamHandler` writing to ``sys.stderr`` with a level of ``WARNING``, " -"and is used to handle logging events in the absence of any logging " -"configuration. The end result is to just print the message to ``sys." -"stderr``. This replaces the earlier error message saying that \"no handlers " -"could be found for logger XYZ\". If you need the earlier behaviour for some " -"reason, ``lastResort`` can be set to ``None``." +"A \"handler of last resort\" is available through this attribute. This is " +"a :class:`StreamHandler` writing to ``sys.stderr`` with a level of " +"``WARNING``, and is used to handle logging events in the absence of any " +"logging configuration. The end result is to just print the message to " +"``sys.stderr``. This replaces the earlier error message saying that \"no " +"handlers could be found for logger XYZ\". If you need the earlier behaviour " +"for some reason, ``lastResort`` can be set to ``None``." msgstr "" msgid "Used to see if exceptions during handling should be propagated." @@ -1893,14 +1900,14 @@ msgid "" "If *capture* is ``True``, warnings issued by the :mod:`warnings` module will " "be redirected to the logging system. Specifically, a warning will be " "formatted using :func:`warnings.formatwarning` and the resulting string " -"logged to a logger named ``'py.warnings'`` with a severity of :const:" -"`WARNING`." +"logged to a logger named ``'py.warnings'`` with a severity " +"of :const:`WARNING`." msgstr "" msgid "" "If *capture* is ``False``, the redirection of warnings to the logging system " -"will stop, and warnings will be redirected to their original destinations (i." -"e. those in effect before ``captureWarnings(True)`` was called)." +"will stop, and warnings will be redirected to their original destinations " +"(i.e. those in effect before ``captureWarnings(True)`` was called)." msgstr "" msgid "Module :mod:`logging.config`" @@ -1924,8 +1931,8 @@ msgid "" msgstr "" msgid "" -"`Original Python logging package `_" +"`Original Python logging package `_" msgstr "" msgid "" diff --git a/library/lzma.po b/library/lzma.po index e9aec79..b747eb3 100644 --- a/library/lzma.po +++ b/library/lzma.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,10 +37,10 @@ msgid "" msgstr "" msgid "" -"The interface provided by this module is very similar to that of the :mod:" -"`bz2` module. Note that :class:`LZMAFile` and :class:`bz2.BZ2File` are *not* " -"thread-safe, so if you need to use a single :class:`LZMAFile` instance from " -"multiple threads, it is necessary to protect it with a lock." +"The interface provided by this module is very similar to that of " +"the :mod:`bz2` module. Note that :class:`LZMAFile` and :class:`bz2.BZ2File` " +"are *not* thread-safe, so if you need to use a single :class:`LZMAFile` " +"instance from multiple threads, it is necessary to protect it with a lock." msgstr "" msgid "" @@ -63,10 +64,10 @@ msgid "" msgstr "" msgid "" -"The *filename* argument can be either an actual file name (given as a :class:" -"`str`, :class:`bytes` or :term:`path-like ` object), in " -"which case the named file is opened, or it can be an existing file object to " -"read from or write to." +"The *filename* argument can be either an actual file name (given as " +"a :class:`str`, :class:`bytes` or :term:`path-like ` " +"object), in which case the named file is opened, or it can be an existing " +"file object to read from or write to." msgstr "" msgid "" @@ -94,8 +95,8 @@ msgid "" msgstr "" msgid "" -"For text mode, a :class:`LZMAFile` object is created, and wrapped in an :" -"class:`io.TextIOWrapper` instance with the specified encoding, error " +"For text mode, a :class:`LZMAFile` object is created, and wrapped in " +"an :class:`io.TextIOWrapper` instance with the specified encoding, error " "handling behavior, and line ending(s)." msgstr "" @@ -111,10 +112,10 @@ msgstr "" msgid "" "An :class:`LZMAFile` can wrap an already-open :term:`file object`, or " "operate directly on a named file. The *filename* argument specifies either " -"the file object to wrap, or the name of the file to open (as a :class:" -"`str`, :class:`bytes` or :term:`path-like ` object). When " -"wrapping an existing file object, the wrapped file will not be closed when " -"the :class:`LZMAFile` is closed." +"the file object to wrap, or the name of the file to open (as " +"a :class:`str`, :class:`bytes` or :term:`path-like ` " +"object). When wrapping an existing file object, the wrapped file will not be " +"closed when the :class:`LZMAFile` is closed." msgstr "" msgid "" @@ -136,9 +137,10 @@ msgid "" msgstr "" msgid "" -":class:`LZMAFile` supports all the members specified by :class:`io." -"BufferedIOBase`, except for :meth:`~io.BufferedIOBase.detach` and :meth:`~io." -"IOBase.truncate`. Iteration and the :keyword:`with` statement are supported." +":class:`LZMAFile` supports all the members specified " +"by :class:`io.BufferedIOBase`, except for :meth:`~io.BufferedIOBase.detach` " +"and :meth:`~io.IOBase.truncate`. Iteration and the :keyword:`with` statement " +"are supported." msgstr "" msgid "The following method and attributes are also provided:" @@ -151,10 +153,10 @@ msgid "" msgstr "" msgid "" -"While calling :meth:`peek` does not change the file position of the :class:" -"`LZMAFile`, it may change the position of the underlying file object (e.g. " -"if the :class:`LZMAFile` was constructed by passing a file object for " -"*filename*)." +"While calling :meth:`peek` does not change the file position of " +"the :class:`LZMAFile`, it may change the position of the underlying file " +"object (e.g. if the :class:`LZMAFile` was constructed by passing a file " +"object for *filename*)." msgstr "" msgid "``'rb'`` for reading and ``'wb'`` for writing." @@ -181,8 +183,8 @@ msgid "" msgstr "" msgid "" -"For a more convenient way of compressing a single chunk of data, see :func:" -"`compress`." +"For a more convenient way of compressing a single chunk of data, " +"see :func:`compress`." msgstr "" msgid "" @@ -194,9 +196,9 @@ msgstr "" msgid "" "The *check* argument specifies the type of integrity check to include in the " "compressed data. This check is used when decompressing, to ensure that the " -"data has not been corrupted. Possible values are :const:`CHECK_NONE`, :const:" -"`CHECK_CRC32`, :const:`CHECK_CRC64` (the default for :const:`FORMAT_XZ`) " -"and :const:`CHECK_SHA256`." +"data has not been corrupted. Possible values " +"are :const:`CHECK_NONE`, :const:`CHECK_CRC32`, :const:`CHECK_CRC64` (the " +"default for :const:`FORMAT_XZ`) and :const:`CHECK_SHA256`." msgstr "" msgid "" @@ -211,18 +213,19 @@ msgstr "" msgid "" "The *preset* argument (if provided) should be an integer between ``0`` and " -"``9`` (inclusive), optionally OR-ed with the constant :const:" -"`PRESET_EXTREME`. If neither *preset* nor *filters* are given, the default " -"behavior is to use :const:`PRESET_DEFAULT` (preset level ``6``). Higher " -"presets produce smaller output, but make the compression process slower." +"``9`` (inclusive), optionally OR-ed with the " +"constant :const:`PRESET_EXTREME`. If neither *preset* nor *filters* are " +"given, the default behavior is to use :const:`PRESET_DEFAULT` (preset level " +"``6``). Higher presets produce smaller output, but make the compression " +"process slower." msgstr "" msgid "" "In addition to being more CPU-intensive, compression with higher presets " "also requires much more memory (and produces output that needs more memory " -"to decompress). With preset ``9`` for example, the overhead for an :class:" -"`LZMACompressor` object can be as high as 800 MiB. For this reason, it is " -"generally best to stick with the default preset." +"to decompress). With preset ``9`` for example, the overhead for " +"an :class:`LZMACompressor` object can be as high as 800 MiB. For this " +"reason, it is generally best to stick with the default preset." msgstr "" msgid "" @@ -233,9 +236,9 @@ msgstr "" msgid "" "Compress *data* (a :class:`bytes` object), returning a :class:`bytes` object " "containing compressed data for at least part of the input. Some of *data* " -"may be buffered internally, for use in later calls to :meth:`compress` and :" -"meth:`flush`. The returned data should be concatenated with the output of " -"any previous calls to :meth:`compress`." +"may be buffered internally, for use in later calls to :meth:`compress` " +"and :meth:`flush`. The returned data should be concatenated with the output " +"of any previous calls to :meth:`compress`." msgstr "" msgid "" @@ -259,8 +262,8 @@ msgstr "" msgid "" "The *format* argument specifies the container format that should be used. " "The default is :const:`FORMAT_AUTO`, which can decompress both ``.xz`` and " -"``.lzma`` files. Other possible values are :const:`FORMAT_XZ`, :const:" -"`FORMAT_ALONE`, and :const:`FORMAT_RAW`." +"``.lzma`` files. Other possible values " +"are :const:`FORMAT_XZ`, :const:`FORMAT_ALONE`, and :const:`FORMAT_RAW`." msgstr "" msgid "" @@ -272,9 +275,9 @@ msgstr "" msgid "" "The *filters* argument specifies the filter chain that was used to create " -"the stream being decompressed. This argument is required if *format* is :" -"const:`FORMAT_RAW`, but should not be used for other formats. See :ref:" -"`filter-chain-specs` for more information about filter chains." +"the stream being decompressed. This argument is required if *format* " +"is :const:`FORMAT_RAW`, but should not be used for other formats. " +"See :ref:`filter-chain-specs` for more information about filter chains." msgstr "" msgid "" @@ -306,18 +309,18 @@ msgid "" msgstr "" msgid "" -"Attempting to decompress data after the end of stream is reached raises an :" -"exc:`EOFError`. Any data found after the end of the stream is ignored and " -"saved in the :attr:`~.unused_data` attribute." +"Attempting to decompress data after the end of stream is reached raises " +"an :exc:`EOFError`. Any data found after the end of the stream is ignored " +"and saved in the :attr:`~.unused_data` attribute." msgstr "" msgid "Added the *max_length* parameter." msgstr "" msgid "" -"The ID of the integrity check used by the input stream. This may be :const:" -"`CHECK_UNKNOWN` until enough of the input has been decoded to determine what " -"integrity check it uses." +"The ID of the integrity check used by the input stream. This may " +"be :const:`CHECK_UNKNOWN` until enough of the input has been decoded to " +"determine what integrity check it uses." msgstr "" msgid "``True`` if the end-of-stream marker has been reached." @@ -367,9 +370,10 @@ msgid "" msgstr "" msgid "" -":const:`CHECK_NONE` and :const:`CHECK_CRC32` are always supported. :const:" -"`CHECK_CRC64` and :const:`CHECK_SHA256` may be unavailable if you are using " -"a version of :program:`liblzma` that was compiled with a limited feature set." +":const:`CHECK_NONE` and :const:`CHECK_CRC32` are always " +"supported. :const:`CHECK_CRC64` and :const:`CHECK_SHA256` may be unavailable " +"if you are using a version of :program:`liblzma` that was compiled with a " +"limited feature set." msgstr "" msgid "Specifying custom filter chains" @@ -389,8 +393,8 @@ msgid ":const:`FILTER_LZMA1` (for use with :const:`FORMAT_ALONE`)" msgstr "" msgid "" -":const:`FILTER_LZMA2` (for use with :const:`FORMAT_XZ` and :const:" -"`FORMAT_RAW`)" +":const:`FILTER_LZMA2` (for use with :const:`FORMAT_XZ` " +"and :const:`FORMAT_RAW`)" msgstr "" msgid "Delta filter:" @@ -461,8 +465,9 @@ msgid "" msgstr "" msgid "" -"``mf``: What match finder to use -- :const:`MF_HC3`, :const:`MF_HC4`, :const:" -"`MF_BT2`, :const:`MF_BT3`, or :const:`MF_BT4`." +"``mf``: What match finder to use " +"-- :const:`MF_HC3`, :const:`MF_HC4`, :const:`MF_BT2`, :const:`MF_BT3`, " +"or :const:`MF_BT4`." msgstr "" msgid "" @@ -502,16 +507,16 @@ msgid "The ``.xz`` container format." msgstr "" msgid "" -"The legacy ``.lzma`` container format. This format is more limited than ``." -"xz`` -- it does not support integrity checks or multiple filters." +"The legacy ``.lzma`` container format. This format is more limited than " +"``.xz`` -- it does not support integrity checks or multiple filters." msgstr "" msgid "" "A raw data stream, not using any container format. This format specifier " "does not support integrity checks, and requires that you always specify a " "custom filter chain (for both compression and decompression). Additionally, " -"data compressed in this manner cannot be decompressed using :const:" -"`FORMAT_AUTO`." +"data compressed in this manner cannot be decompressed " +"using :const:`FORMAT_AUTO`." msgstr "" msgid "" @@ -531,8 +536,8 @@ msgid "A 32-bit Cyclic Redundancy Check." msgstr "" msgid "" -"A 64-bit Cyclic Redundancy Check. This is the default for :const:" -"`FORMAT_XZ`." +"A 64-bit Cyclic Redundancy Check. This is the default " +"for :const:`FORMAT_XZ`." msgstr "" msgid "A 256-bit Secure Hash Algorithm." @@ -563,8 +568,8 @@ msgstr "" msgid "" "The LZMA1 and LZMA2 compression filters. :const:`FILTER_LZMA1` is for use " -"with :const:`FORMAT_ALONE`, while :const:`FILTER_LZMA2` is for use with :" -"const:`FORMAT_XZ` and :const:`FORMAT_RAW`." +"with :const:`FORMAT_ALONE`, while :const:`FILTER_LZMA2` is for use " +"with :const:`FORMAT_XZ` and :const:`FORMAT_RAW`." msgstr "" msgid "The delta filter." diff --git a/library/mailbox.po b/library/mailbox.po index c50b5e6..c5e4188 100644 --- a/library/mailbox.po +++ b/library/mailbox.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,11 +30,19 @@ msgstr "" msgid "" "This module defines two classes, :class:`Mailbox` and :class:`Message`, for " -"accessing and manipulating on-disk mailboxes and the messages they contain. :" -"class:`!Mailbox` offers a dictionary-like mapping from keys to messages. :" -"class:`!Message` extends the :mod:`email.message` module's :class:`~email." -"message.Message` class with format-specific state and behavior. Supported " -"mailbox formats are Maildir, mbox, MH, Babyl, and MMDF." +"accessing and manipulating on-disk mailboxes and the messages they " +"contain. :class:`!Mailbox` offers a dictionary-like mapping from keys to " +"messages. :class:`!Message` extends the :mod:`email.message` " +"module's :class:`~email.message.Message` class with format-specific state " +"and behavior. Supported mailbox formats are Maildir, mbox, MH, Babyl, and " +"MMDF." +msgstr "" + +msgid "" +"The :mod:`!mailbox` module is designed for use in trusted environments, " +"where data from untrusted sources is never passed to the module's API calls " +"and only trusted users have access to the filesystems accessible to the " +"module." msgstr "" msgid "Module :mod:`email`" @@ -51,8 +59,9 @@ msgstr "" msgid "" "The :class:`!Mailbox` class defines an interface and is not intended to be " -"instantiated. Instead, format-specific subclasses should inherit from :" -"class:`!Mailbox` and your code should instantiate a particular subclass." +"instantiated. Instead, format-specific subclasses should inherit " +"from :class:`!Mailbox` and your code should instantiate a particular " +"subclass." msgstr "" msgid "" @@ -94,8 +103,8 @@ msgstr "" msgid "" "Be very cautious when modifying mailboxes that might be simultaneously " "changed by some other process. The safest mailbox format to use for such " -"tasks is :class:`Maildir`; try to avoid using single-file formats such as :" -"class:`mbox` for concurrent writing. If you're modifying a mailbox, you " +"tasks is :class:`Maildir`; try to avoid using single-file formats such " +"as :class:`mbox` for concurrent writing. If you're modifying a mailbox, you " "*must* lock it by calling the :meth:`lock` and :meth:`unlock` methods " "*before* reading any messages in the file or making any changes by adding or " "deleting a message. Failing to lock the mailbox runs the risk of losing " @@ -120,13 +129,13 @@ msgid "" msgstr "" msgid "" -"Parameter *message* may be a :class:`Message` instance, an :class:`email." -"message.Message` instance, a string, a byte string, or a file-like object " -"(which should be open in binary mode). If *message* is an instance of the " -"appropriate format-specific :class:`Message` subclass (e.g., if it's an :" -"class:`mboxMessage` instance and this is an :class:`mbox` instance), its " -"format-specific information is used. Otherwise, reasonable defaults for " -"format-specific information are used." +"Parameter *message* may be a :class:`Message` instance, " +"an :class:`email.message.Message` instance, a string, a byte string, or a " +"file-like object (which should be open in binary mode). If *message* is an " +"instance of the appropriate format-specific :class:`Message` subclass (e.g., " +"if it's an :class:`mboxMessage` instance and this is an :class:`mbox` " +"instance), its format-specific information is used. Otherwise, reasonable " +"defaults for format-specific information are used." msgstr "" msgid "Support for binary input was added." @@ -138,14 +147,14 @@ msgstr "" msgid "" "If no such message exists, a :exc:`KeyError` exception is raised if the " "method was called as :meth:`remove` or :meth:`__delitem__` but no exception " -"is raised if the method was called as :meth:`discard`. The behavior of :meth:" -"`discard` may be preferred if the underlying mailbox format supports " -"concurrent modification by other processes." +"is raised if the method was called as :meth:`discard`. The behavior " +"of :meth:`discard` may be preferred if the underlying mailbox format " +"supports concurrent modification by other processes." msgstr "" msgid "" -"Replace the message corresponding to *key* with *message*. Raise a :exc:" -"`KeyError` exception if no message already corresponds to *key*." +"Replace the message corresponding to *key* with *message*. Raise " +"a :exc:`KeyError` exception if no message already corresponds to *key*." msgstr "" msgid "" @@ -169,9 +178,9 @@ msgstr "" msgid "" "Return an :term:`iterator` over representations of all messages. The " -"messages are represented as instances of the appropriate format-specific :" -"class:`Message` subclass unless a custom message factory was specified when " -"the :class:`!Mailbox` instance was initialized." +"messages are represented as instances of the appropriate format-" +"specific :class:`Message` subclass unless a custom message factory was " +"specified when the :class:`!Mailbox` instance was initialized." msgstr "" msgid "" @@ -199,18 +208,18 @@ msgstr "" msgid "" "Return a representation of the message corresponding to *key*. If no such " -"message exists, *default* is returned if the method was called as :meth:" -"`get` and a :exc:`KeyError` exception is raised if the method was called as :" -"meth:`!__getitem__`. The message is represented as an instance of the " -"appropriate format-specific :class:`Message` subclass unless a custom " +"message exists, *default* is returned if the method was called " +"as :meth:`get` and a :exc:`KeyError` exception is raised if the method was " +"called as :meth:`!__getitem__`. The message is represented as an instance of " +"the appropriate format-specific :class:`Message` subclass unless a custom " "message factory was specified when the :class:`!Mailbox` instance was " "initialized." msgstr "" msgid "" "Return a representation of the message corresponding to *key* as an instance " -"of the appropriate format-specific :class:`Message` subclass, or raise a :" -"exc:`KeyError` exception if no such message exists." +"of the appropriate format-specific :class:`Message` subclass, or raise " +"a :exc:`KeyError` exception if no such message exists." msgstr "" msgid "" @@ -258,18 +267,18 @@ msgstr "" msgid "" "Return a representation of the message corresponding to *key* and delete the " "message. If no such message exists, return *default*. The message is " -"represented as an instance of the appropriate format-specific :class:" -"`Message` subclass unless a custom message factory was specified when the :" -"class:`!Mailbox` instance was initialized." +"represented as an instance of the appropriate format-" +"specific :class:`Message` subclass unless a custom message factory was " +"specified when the :class:`!Mailbox` instance was initialized." msgstr "" msgid "" "Return an arbitrary (*key*, *message*) pair, where *key* is a key and " "*message* is a message representation, and delete the corresponding message. " "If the mailbox is empty, raise a :exc:`KeyError` exception. The message is " -"represented as an instance of the appropriate format-specific :class:" -"`Message` subclass unless a custom message factory was specified when the :" -"class:`!Mailbox` instance was initialized." +"represented as an instance of the appropriate format-" +"specific :class:`Message` subclass unless a custom message factory was " +"specified when the :class:`!Mailbox` instance was initialized." msgstr "" msgid "" @@ -278,8 +287,8 @@ msgid "" "and *message*, the message corresponding to *key* is set to *message* as if " "by using :meth:`__setitem__`. As with :meth:`__setitem__`, each *key* must " "already correspond to a message in the mailbox or else a :exc:`KeyError` " -"exception will be raised, so in general it is incorrect for *arg* to be a :" -"class:`!Mailbox` instance." +"exception will be raised, so in general it is incorrect for *arg* to be " +"a :class:`!Mailbox` instance." msgstr "" msgid "Unlike with dictionaries, keyword arguments are not supported." @@ -339,19 +348,20 @@ msgid "" msgstr "" msgid "" -"Maildir mailboxes contain three subdirectories, namely: :file:`tmp`, :file:" -"`new`, and :file:`cur`. Messages are created momentarily in the :file:`tmp` " -"subdirectory and then moved to the :file:`new` subdirectory to finalize " -"delivery. A mail user agent may subsequently move the message to the :file:" -"`cur` subdirectory and store information about the state of the message in a " -"special \"info\" section appended to its file name." +"Maildir mailboxes contain three subdirectories, " +"namely: :file:`tmp`, :file:`new`, and :file:`cur`. Messages are created " +"momentarily in the :file:`tmp` subdirectory and then moved to " +"the :file:`new` subdirectory to finalize delivery. A mail user agent may " +"subsequently move the message to the :file:`cur` subdirectory and store " +"information about the state of the message in a special \"info\" section " +"appended to its file name." msgstr "" msgid "" "Folders of the style introduced by the Courier mail transfer agent are also " "supported. Any subdirectory of the main mailbox is considered a folder if " -"``'.'`` is the first character in its name. Folder names are represented by :" -"class:`!Maildir` without the leading ``'.'``. Each folder is itself a " +"``'.'`` is the first character in its name. Folder names are represented " +"by :class:`!Maildir` without the leading ``'.'``. Each folder is itself a " "Maildir mailbox but should not contain other folders. Instead, a logical " "nesting is indicated using ``'.'`` to delimit levels, e.g., " "\"Archived.2005.07\"." @@ -415,11 +425,12 @@ msgid "" msgstr "" msgid "" -"If you do have a :class:`MaildirMessage` object, use its :meth:" -"`~MaildirMessage.get_flags` method instead, because changes made by the " -"message's :meth:`~MaildirMessage.set_flags`, :meth:`~MaildirMessage." -"add_flag` and :meth:`~MaildirMessage.remove_flag` methods are not reflected " -"here until the mailbox's :meth:`__setitem__` method is called." +"If you do have a :class:`MaildirMessage` object, use " +"its :meth:`~MaildirMessage.get_flags` method instead, because changes made " +"by the " +"message's :meth:`~MaildirMessage.set_flags`, :meth:`~MaildirMessage.add_flag` " +"and :meth:`~MaildirMessage.remove_flag` methods are not reflected here until " +"the mailbox's :meth:`__setitem__` method is called." msgstr "" msgid "" @@ -438,10 +449,10 @@ msgid "but faster, because it does not open the message file." msgstr "" msgid "" -"If you do have a :class:`MaildirMessage` object, use its :meth:" -"`~MaildirMessage.set_flags` method instead, because changes made with this " -"mailbox method will not be visible to the message object's method, :meth:" -"`~MaildirMessage.get_flags`." +"If you do have a :class:`MaildirMessage` object, use " +"its :meth:`~MaildirMessage.set_flags` method instead, because changes made " +"with this mailbox method will not be visible to the message object's " +"method, :meth:`~MaildirMessage.get_flags`." msgstr "" msgid "" @@ -451,9 +462,9 @@ msgid "" msgstr "" msgid "" -"Considerations for using this method versus the message object's :meth:" -"`~MaildirMessage.add_flag` method are similar to those for :meth:" -"`set_flags`; see the discussion there." +"Considerations for using this method versus the message " +"object's :meth:`~MaildirMessage.add_flag` method are similar to those " +"for :meth:`set_flags`; see the discussion there." msgstr "" msgid "" @@ -463,9 +474,9 @@ msgid "" msgstr "" msgid "" -"Considerations for using this method versus the message object's :meth:" -"`~MaildirMessage.remove_flag` method are similar to those for :meth:" -"`set_flags`; see the discussion there." +"Considerations for using this method versus the message " +"object's :meth:`~MaildirMessage.remove_flag` method are similar to those " +"for :meth:`set_flags`; see the discussion there." msgstr "" msgid "" @@ -476,15 +487,15 @@ msgid "" msgstr "" msgid "" -"If you do have a :class:`MaildirMessage` object, use its :meth:" -"`~MaildirMessage.get_info` method instead, because changes made by the " -"message's :meth:`~MaildirMessage.set_info` method are not reflected here " +"If you do have a :class:`MaildirMessage` object, use " +"its :meth:`~MaildirMessage.get_info` method instead, because changes made by " +"the message's :meth:`~MaildirMessage.set_info` method are not reflected here " "until the mailbox's :meth:`__setitem__` method is called." msgstr "" msgid "" "Set the info of the message corresponding to *key* to *info*. Calling " -"``some_mailbox.set_info(key, flags)`` is similar to ::" +"``some_mailbox.set_info(key, info)`` is similar to ::" msgstr "" msgid "" @@ -494,10 +505,10 @@ msgid "" msgstr "" msgid "" -"If you do have a :class:`MaildirMessage` object, use its :meth:" -"`~MaildirMessage.set_info` method instead, because changes made with this " -"mailbox method will not be visible to the message object's method, :meth:" -"`~MaildirMessage.get_info`." +"If you do have a :class:`MaildirMessage` object, use " +"its :meth:`~MaildirMessage.set_info` method instead, because changes made " +"with this mailbox method will not be visible to the message object's " +"method, :meth:`~MaildirMessage.get_info`." msgstr "" msgid "" @@ -571,8 +582,8 @@ msgstr "" msgid "" "Several variations of the mbox format exist to address perceived " "shortcomings in the original. In the interest of compatibility, :class:`!" -"mbox` implements the original format, which is sometimes referred to as :dfn:" -"`mboxo`. This means that the :mailheader:`Content-Length` header, if " +"mbox` implements the original format, which is sometimes referred to " +"as :dfn:`mboxo`. This means that the :mailheader:`Content-Length` header, if " "present, is ignored and that any occurrences of \"From \" at the beginning " "of a line in a message body are transformed to \">From \" when storing the " "message, although occurrences of \">From \" are not transformed to \"From \" " @@ -591,14 +602,14 @@ msgid "" msgstr "" msgid "" -"Using the file after calling :meth:`~Mailbox.flush` or :meth:`~Mailbox." -"close` on the :class:`!mbox` instance may yield unpredictable results or " -"raise an exception." +"Using the file after calling :meth:`~Mailbox.flush` " +"or :meth:`~Mailbox.close` on the :class:`!mbox` instance may yield " +"unpredictable results or raise an exception." msgstr "" msgid "" -"Three locking mechanisms are used---dot locking and, if available, the :c:" -"func:`!flock` and :c:func:`!lockf` system calls." +"Three locking mechanisms are used---dot locking and, if available, " +"the :c:func:`!flock` and :c:func:`!lockf` system calls." msgstr "" msgid "" @@ -680,8 +691,8 @@ msgstr "" msgid "" "Re-define the sequences that exist in the mailbox based upon *sequences*, a " -"dictionary of names mapped to key lists, like returned by :meth:" -"`get_sequences`." +"dictionary of names mapped to key lists, like returned " +"by :meth:`get_sequences`." msgstr "" msgid "" @@ -705,11 +716,11 @@ msgid "" msgstr "" msgid "" -"Three locking mechanisms are used---dot locking and, if available, the :c:" -"func:`!flock` and :c:func:`!lockf` system calls. For MH mailboxes, locking " -"the mailbox means locking the :file:`.mh_sequences` file and, only for the " -"duration of any operations that affect them, locking individual message " -"files." +"Three locking mechanisms are used---dot locking and, if available, " +"the :c:func:`!flock` and :c:func:`!lockf` system calls. For MH mailboxes, " +"locking the mailbox means locking the :file:`.mh_sequences` file and, only " +"for the duration of any operations that affect them, locking individual " +"message files." msgstr "" msgid "" @@ -731,8 +742,8 @@ msgid "`nmh - Message Handling System `_" msgstr "" msgid "" -"Home page of :program:`nmh`, an updated version of the original :program:" -"`mh`." +"Home page of :program:`nmh`, an updated version of the " +"original :program:`mh`." msgstr "" msgid "" @@ -850,9 +861,9 @@ msgid "" msgstr "" msgid "" -"Using the file after calling :meth:`~Mailbox.flush` or :meth:`~Mailbox." -"close` on the :class:`!MMDF` instance may yield unpredictable results or " -"raise an exception." +"Using the file after calling :meth:`~Mailbox.flush` " +"or :meth:`~Mailbox.close` on the :class:`!MMDF` instance may yield " +"unpredictable results or raise an exception." msgstr "" msgid "" @@ -876,9 +887,9 @@ msgid ":class:`!Message` objects" msgstr "" msgid "" -"A subclass of the :mod:`email.message` module's :class:`~email.message." -"Message`. Subclasses of :class:`!mailbox.Message` add mailbox-format-" -"specific state and behavior." +"A subclass of the :mod:`email.message` " +"module's :class:`~email.message.Message`. Subclasses of :class:`!" +"mailbox.Message` add mailbox-format-specific state and behavior." msgstr "" msgid "" @@ -886,9 +897,9 @@ msgid "" "state. If *message* is an :class:`email.message.Message` instance, its " "contents are copied; furthermore, any format-specific information is " "converted insofar as possible if *message* is a :class:`!Message` instance. " -"If *message* is a string, a byte string, or a file, it should contain an :" -"rfc:`5322`\\ -compliant message, which is read and parsed. Files should be " -"open in binary mode, but text mode files are accepted for backward " +"If *message* is a string, a byte string, or a file, it should contain " +"an :rfc:`5322`\\ -compliant message, which is read and parsed. Files should " +"be open in binary mode, but text mode files are accepted for backward " "compatibility." msgstr "" @@ -922,16 +933,16 @@ msgid "" msgstr "" msgid "" -"Typically, a mail user agent application moves all of the messages in the :" -"file:`new` subdirectory to the :file:`cur` subdirectory after the first time " -"the user opens and closes the mailbox, recording that the messages are old " -"whether or not they've actually been read. Each message in :file:`cur` has " -"an \"info\" section added to its file name to store information about its " -"state. (Some mail readers may also add an \"info\" section to messages in :" -"file:`new`.) The \"info\" section may take one of two forms: it may contain " -"\"2,\" followed by a list of standardized flags (e.g., \"2,FR\") or it may " -"contain \"1,\" followed by so-called experimental information. Standard " -"flags for Maildir messages are as follows:" +"Typically, a mail user agent application moves all of the messages in " +"the :file:`new` subdirectory to the :file:`cur` subdirectory after the first " +"time the user opens and closes the mailbox, recording that the messages are " +"old whether or not they've actually been read. Each message in :file:`cur` " +"has an \"info\" section added to its file name to store information about " +"its state. (Some mail readers may also add an \"info\" section to messages " +"in :file:`new`.) The \"info\" section may take one of two forms: it may " +"contain \"2,\" followed by a list of standardized flags (e.g., \"2,FR\") or " +"it may contain \"1,\" followed by so-called experimental information. " +"Standard flags for Maildir messages are as follows:" msgstr "" msgid "Flag" @@ -1062,10 +1073,10 @@ msgid "Set \"info\" to *info*, which should be a string." msgstr "" msgid "" -"When a :class:`!MaildirMessage` instance is created based upon an :class:" -"`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " -"and :mailheader:`X-Status` headers are omitted and the following conversions " -"take place:" +"When a :class:`!MaildirMessage` instance is created based upon " +"an :class:`mboxMessage` or :class:`MMDFMessage` instance, " +"the :mailheader:`Status` and :mailheader:`X-Status` headers are omitted and " +"the following conversions take place:" msgstr "" msgid "Resulting state" @@ -1099,8 +1110,8 @@ msgid "D flag" msgstr "" msgid "" -"When a :class:`!MaildirMessage` instance is created based upon an :class:" -"`MHMessage` instance, the following conversions take place:" +"When a :class:`!MaildirMessage` instance is created based upon " +"an :class:`MHMessage` instance, the following conversions take place:" msgstr "" msgid ":class:`MHMessage` state" @@ -1122,8 +1133,8 @@ msgid "\"replied\" sequence" msgstr "" msgid "" -"When a :class:`!MaildirMessage` instance is created based upon a :class:" -"`BabylMessage` instance, the following conversions take place:" +"When a :class:`!MaildirMessage` instance is created based upon " +"a :class:`BabylMessage` instance, the following conversions take place:" msgstr "" msgid ":class:`BabylMessage` state" @@ -1206,8 +1217,8 @@ msgid "" "leading \"From \" or trailing newline. For convenience, *time_* may be " "specified and will be formatted appropriately and appended to *from_*. If " "*time_* is specified, it should be a :class:`time.struct_time` instance, a " -"tuple suitable for passing to :func:`time.strftime`, or ``True`` (to use :" -"func:`time.gmtime`)." +"tuple suitable for passing to :func:`time.strftime`, or ``True`` (to " +"use :func:`time.gmtime`)." msgstr "" msgid "" @@ -1236,9 +1247,9 @@ msgid "" msgstr "" msgid "" -"When an :class:`!mboxMessage` instance is created based upon a :class:" -"`MaildirMessage` instance, a \"From \" line is generated based upon the :" -"class:`MaildirMessage` instance's delivery date, and the following " +"When an :class:`!mboxMessage` instance is created based upon " +"a :class:`MaildirMessage` instance, a \"From \" line is generated based upon " +"the :class:`MaildirMessage` instance's delivery date, and the following " "conversions take place:" msgstr "" @@ -1246,22 +1257,22 @@ msgid ":class:`MaildirMessage` state" msgstr "" msgid "" -"When an :class:`!mboxMessage` instance is created based upon an :class:" -"`MHMessage` instance, the following conversions take place:" +"When an :class:`!mboxMessage` instance is created based upon " +"an :class:`MHMessage` instance, the following conversions take place:" msgstr "" msgid "R flag and O flag" msgstr "" msgid "" -"When an :class:`!mboxMessage` instance is created based upon a :class:" -"`BabylMessage` instance, the following conversions take place:" +"When an :class:`!mboxMessage` instance is created based upon " +"a :class:`BabylMessage` instance, the following conversions take place:" msgstr "" msgid "" -"When a :class:`!mboxMessage` instance is created based upon an :class:" -"`MMDFMessage` instance, the \"From \" line is copied and all flags directly " -"correspond:" +"When a :class:`!mboxMessage` instance is created based upon " +"an :class:`MMDFMessage` instance, the \"From \" line is copied and all flags " +"directly correspond:" msgstr "" msgid ":class:`MMDFMessage` state" @@ -1278,9 +1289,9 @@ msgstr "" msgid "" "MH messages do not support marks or flags in the traditional sense, but they " "do support sequences, which are logical groupings of arbitrary messages. " -"Some mail reading programs (although not the standard :program:`mh` and :" -"program:`nmh`) use sequences in much the same way flags are used with other " -"formats, as follows:" +"Some mail reading programs (although not the standard :program:`mh` " +"and :program:`nmh`) use sequences in much the same way flags are used with " +"other formats, as follows:" msgstr "" msgid "Sequence" @@ -1314,26 +1325,26 @@ msgid "Remove *sequence* from the list of sequences that include this message." msgstr "" msgid "" -"When an :class:`!MHMessage` instance is created based upon a :class:" -"`MaildirMessage` instance, the following conversions take place:" +"When an :class:`!MHMessage` instance is created based upon " +"a :class:`MaildirMessage` instance, the following conversions take place:" msgstr "" msgid "no S flag" msgstr "" msgid "" -"When an :class:`!MHMessage` instance is created based upon an :class:" -"`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " -"and :mailheader:`X-Status` headers are omitted and the following conversions " -"take place:" +"When an :class:`!MHMessage` instance is created based upon " +"an :class:`mboxMessage` or :class:`MMDFMessage` instance, " +"the :mailheader:`Status` and :mailheader:`X-Status` headers are omitted and " +"the following conversions take place:" msgstr "" msgid "no R flag" msgstr "" msgid "" -"When an :class:`!MHMessage` instance is created based upon a :class:" -"`BabylMessage` instance, the following conversions take place:" +"When an :class:`!MHMessage` instance is created based upon " +"a :class:`BabylMessage` instance, the following conversions take place:" msgstr "" msgid ":class:`!BabylMessage` objects" @@ -1410,8 +1421,8 @@ msgstr "" msgid "" "Set the message's visible headers to be the same as the headers in " -"*message*. Parameter *visible* should be a :class:`Message` instance, an :" -"class:`email.message.Message` instance, a string, or a file-like object " +"*message*. Parameter *visible* should be a :class:`Message` instance, " +"an :class:`email.message.Message` instance, a string, or a file-like object " "(which should be open in text mode)." msgstr "" @@ -1421,30 +1432,30 @@ msgid "" "updates the visible headers as follows: each visible header with a " "corresponding original header is set to the value of the original header, " "each visible header without a corresponding original header is removed, and " -"any of :mailheader:`Date`, :mailheader:`From`, :mailheader:`Reply-To`, :" -"mailheader:`To`, :mailheader:`CC`, and :mailheader:`Subject` that are " +"any of :mailheader:`Date`, :mailheader:`From`, :mailheader:`Reply-" +"To`, :mailheader:`To`, :mailheader:`CC`, and :mailheader:`Subject` that are " "present in the original headers but not the visible headers are added to the " "visible headers." msgstr "" msgid "" -"When a :class:`!BabylMessage` instance is created based upon a :class:" -"`MaildirMessage` instance, the following conversions take place:" +"When a :class:`!BabylMessage` instance is created based upon " +"a :class:`MaildirMessage` instance, the following conversions take place:" msgstr "" msgid "\"forwarded\" label" msgstr "" msgid "" -"When a :class:`!BabylMessage` instance is created based upon an :class:" -"`mboxMessage` or :class:`MMDFMessage` instance, the :mailheader:`Status` " -"and :mailheader:`X-Status` headers are omitted and the following conversions " -"take place:" +"When a :class:`!BabylMessage` instance is created based upon " +"an :class:`mboxMessage` or :class:`MMDFMessage` instance, " +"the :mailheader:`Status` and :mailheader:`X-Status` headers are omitted and " +"the following conversions take place:" msgstr "" msgid "" -"When a :class:`!BabylMessage` instance is created based upon an :class:" -"`MHMessage` instance, the following conversions take place:" +"When a :class:`!BabylMessage` instance is created based upon " +"an :class:`MHMessage` instance, the following conversions take place:" msgstr "" msgid ":class:`!MMDFMessage` objects" @@ -1473,26 +1484,26 @@ msgid "" msgstr "" msgid "" -"When an :class:`!MMDFMessage` instance is created based upon a :class:" -"`MaildirMessage` instance, a \"From \" line is generated based upon the :" -"class:`MaildirMessage` instance's delivery date, and the following " +"When an :class:`!MMDFMessage` instance is created based upon " +"a :class:`MaildirMessage` instance, a \"From \" line is generated based upon " +"the :class:`MaildirMessage` instance's delivery date, and the following " "conversions take place:" msgstr "" msgid "" -"When an :class:`!MMDFMessage` instance is created based upon an :class:" -"`MHMessage` instance, the following conversions take place:" +"When an :class:`!MMDFMessage` instance is created based upon " +"an :class:`MHMessage` instance, the following conversions take place:" msgstr "" msgid "" -"When an :class:`!MMDFMessage` instance is created based upon a :class:" -"`BabylMessage` instance, the following conversions take place:" +"When an :class:`!MMDFMessage` instance is created based upon " +"a :class:`BabylMessage` instance, the following conversions take place:" msgstr "" msgid "" -"When an :class:`!MMDFMessage` instance is created based upon an :class:" -"`mboxMessage` instance, the \"From \" line is copied and all flags directly " -"correspond:" +"When an :class:`!MMDFMessage` instance is created based upon " +"an :class:`mboxMessage` instance, the \"From \" line is copied and all flags " +"directly correspond:" msgstr "" msgid ":class:`mboxMessage` state" @@ -1606,6 +1617,6 @@ msgid "" " inbox.unlock()\n" " break # Found destination, so stop looking.\n" "\n" -"for box in boxes.itervalues():\n" +"for box in boxes.values():\n" " box.close()" msgstr "" diff --git a/library/mailcap.po b/library/mailcap.po index fee60d5..c956cf4 100644 --- a/library/mailcap.po +++ b/library/mailcap.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!mailcap` --- Mailcap file handling" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/markup.po b/library/markup.po index ed9377b..e21b37e 100644 --- a/library/markup.po +++ b/library/markup.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/marshal.po b/library/marshal.po index 3b070bf..4a9ae4d 100644 --- a/library/marshal.po +++ b/library/marshal.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,15 +38,16 @@ msgid "" "This is not a general \"persistence\" module. For general persistence and " "transfer of Python objects through RPC calls, see the modules :mod:`pickle` " "and :mod:`shelve`. The :mod:`!marshal` module exists mainly to support " -"reading and writing the \"pseudo-compiled\" code for Python modules of :file:" -"`.pyc` files. Therefore, the Python maintainers reserve the right to modify " -"the marshal format in backward incompatible ways should the need arise. The " -"format of code objects is not compatible between Python versions, even if " -"the version of the format is the same. De-serializing a code object in the " -"incorrect Python version has undefined behavior. If you're serializing and " -"de-serializing Python objects, use the :mod:`pickle` module instead -- the " -"performance is comparable, version independence is guaranteed, and pickle " -"supports a substantially wider range of objects than marshal." +"reading and writing the \"pseudo-compiled\" code for Python modules " +"of :file:`.pyc` files. Therefore, the Python maintainers reserve the right " +"to modify the marshal format in backward incompatible ways should the need " +"arise. The format of code objects is not compatible between Python versions, " +"even if the version of the format is the same. De-serializing a code object " +"in the incorrect Python version has undefined behavior. If you're " +"serializing and de-serializing Python objects, use the :mod:`pickle` module " +"instead -- the performance is comparable, version independence is " +"guaranteed, and pickle supports a substantially wider range of objects than " +"marshal." msgstr "" msgid "" @@ -76,8 +77,8 @@ msgid "" msgstr "" msgid "" -"Containers: :class:`tuple`, :class:`list`, :class:`dict`, :class:" -"`frozendict` (since :data:`version` 6), :class:`set`, :class:`frozenset`, " +"Containers: :class:`tuple`, :class:`list`, :class:`dict`, :class:`frozendict` " +"(since :data:`version` 6), :class:`set`, :class:`frozenset`, " "and :class:`slice` (since :data:`version` 5). It should be understood that " "these are supported only if the values contained therein are themselves " "supported. Recursive containers are supported since :data:`version` 3." @@ -88,8 +89,8 @@ msgid "" msgstr "" msgid "" -":class:`code` objects, if *allow_code* is true. See note above about version " -"dependence." +":class:`code ` objects, if *allow_code* is true. See note " +"above about version dependence." msgstr "" msgid "" @@ -117,10 +118,10 @@ msgid "" msgstr "" msgid "" -"If the value has (or contains an object that has) an unsupported type, a :" -"exc:`ValueError` exception is raised --- but garbage data will also be " -"written to the file. The object will not be properly read back by :func:" -"`load`. :ref:`Code objects ` are only supported if " +"If the value has (or contains an object that has) an unsupported type, " +"a :exc:`ValueError` exception is raised --- but garbage data will also be " +"written to the file. The object will not be properly read back " +"by :func:`load`. :ref:`Code objects ` are only supported if " "*allow_code* is true." msgstr "" @@ -140,9 +141,9 @@ msgstr "" msgid "" "Read one value from the open file and return it. If no valid value is read " "(e.g. because the data has a different Python version's incompatible marshal " -"format), raise :exc:`EOFError`, :exc:`ValueError` or :exc:`TypeError`. :ref:" -"`Code objects ` are only supported if *allow_code* is true. " -"The file must be a readable :term:`binary file`." +"format), raise :exc:`EOFError`, :exc:`ValueError` " +"or :exc:`TypeError`. :ref:`Code objects ` are only supported " +"if *allow_code* is true. The file must be a readable :term:`binary file`." msgstr "" msgid "" @@ -151,8 +152,9 @@ msgid "" msgstr "" msgid "" -"If an object containing an unsupported type was marshalled with :func:" -"`dump`, :func:`load` will substitute ``None`` for the unmarshallable type." +"If an object containing an unsupported type was marshalled " +"with :func:`dump`, :func:`load` will substitute ``None`` for the " +"unmarshallable type." msgstr "" msgid "" @@ -175,9 +177,9 @@ msgstr "" msgid "" "Convert the :term:`bytes-like object` to a value. If no valid value is " -"found, raise :exc:`EOFError`, :exc:`ValueError` or :exc:`TypeError`. :ref:" -"`Code objects ` are only supported if *allow_code* is true. " -"Extra bytes in the input are ignored." +"found, raise :exc:`EOFError`, :exc:`ValueError` " +"or :exc:`TypeError`. :ref:`Code objects ` are only supported " +"if *allow_code* is true. Extra bytes in the input are ignored." msgstr "" msgid "" diff --git a/library/math.integer.po b/library/math.integer.po deleted file mode 100644 index 23c82b1..0000000 --- a/library/math.integer.po +++ /dev/null @@ -1,99 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!math.integer` --- integer-specific mathematics functions" -msgstr "" - -msgid "" -"This module provides access to the mathematical functions defined for " -"integer arguments. These functions accept integers and objects that " -"implement the :meth:`~object.__index__` method which is used to convert the " -"object to an integer number." -msgstr "" - -msgid "" -"The following functions are provided by this module. All return values are " -"computed exactly and are integers." -msgstr "" - -msgid "" -"Return the number of ways to choose *k* items from *n* items without " -"repetition and without order." -msgstr "" - -msgid "" -"Evaluates to ``n! / (k! * (n - k)!)`` when ``k <= n`` and evaluates to zero " -"when ``k > n``." -msgstr "" - -msgid "" -"Also called the binomial coefficient because it is equivalent to the " -"coefficient of k-th term in polynomial expansion of ``(1 + x)ⁿ``." -msgstr "" - -msgid "Raises :exc:`ValueError` if either of the arguments are negative." -msgstr "" - -msgid "Return factorial of the nonnegative integer *n*." -msgstr "" - -msgid "" -"Return the greatest common divisor of the specified integer arguments. If " -"any of the arguments is nonzero, then the returned value is the largest " -"positive integer that is a divisor of all arguments. If all arguments are " -"zero, then the returned value is ``0``. ``gcd()`` without arguments returns " -"``0``." -msgstr "" - -msgid "" -"Return the integer square root of the nonnegative integer *n*. This is the " -"floor of the exact square root of *n*, or equivalently the greatest integer " -"*a* such that *a*\\ ² |nbsp| ≤ |nbsp| *n*." -msgstr "" - -msgid "" -"For some applications, it may be more convenient to have the least integer " -"*a* such that *n* |nbsp| ≤ |nbsp| *a*\\ ², or in other words the ceiling of " -"the exact square root of *n*. For positive *n*, this can be computed using " -"``a = 1 + isqrt(n - 1)``." -msgstr "" - -msgid "" -"Return the least common multiple of the specified integer arguments. If all " -"arguments are nonzero, then the returned value is the smallest positive " -"integer that is a multiple of all arguments. If any of the arguments is " -"zero, then the returned value is ``0``. ``lcm()`` without arguments returns " -"``1``." -msgstr "" - -msgid "" -"Return the number of ways to choose *k* items from *n* items without " -"repetition and with order." -msgstr "" - -msgid "" -"Evaluates to ``n! / (n - k)!`` when ``k <= n`` and evaluates to zero when " -"``k > n``." -msgstr "" - -msgid "" -"If *k* is not specified or is ``None``, then *k* defaults to *n* and the " -"function returns ``n!``." -msgstr "" diff --git a/library/math.po b/library/math.po index 6f269f1..18a656c 100644 --- a/library/math.po +++ b/library/math.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -408,8 +408,8 @@ msgid ":func:`lgamma(x) `" msgstr "" msgid "" -"Natural logarithm of the absolute value of the `Gamma function `_ at *x*" +"Natural logarithm of the absolute value of the `Gamma function `_ at *x*" msgstr "" msgid "**Constants**" @@ -450,8 +450,8 @@ msgstr "" msgid "" "Return the ceiling of *x*, the smallest integer greater than or equal to " -"*x*. If *x* is not a float, delegates to :meth:`x.__ceil__ `, which should return an :class:`~numbers.Integral` value." +"*x*. If *x* is not a float, delegates to :meth:`x.__ceil__ " +"`, which should return an :class:`~numbers.Integral` value." msgstr "" msgid "Return the absolute value of *x*." @@ -484,9 +484,9 @@ msgstr "" msgid "" "When both operands are (signed) NaNs or zeroes, return ``nan`` and ``0`` " -"respectively and the sign of the result is implementation-defined, that is, :" -"func:`!fmax` is not required to be sensitive to the sign of such operands " -"(see Annex F of the C11 standard, §F.10.0.3 and §F.10.9.2)." +"respectively and the sign of the result is implementation-defined, that " +"is, :func:`!fmax` is not required to be sensitive to the sign of such " +"operands (see Annex F of the C11 standard, §F.10.0.3 and §F.10.9.2)." msgstr "" msgid "" @@ -495,9 +495,9 @@ msgstr "" msgid "" "When both operands are (signed) NaNs or zeroes, return ``nan`` and ``0`` " -"respectively and the sign of the result is implementation-defined, that is, :" -"func:`!fmin` is not required to be sensitive to the sign of such operands " -"(see Annex F of the C11 standard, §F.10.0.3 and §F.10.9.3)." +"respectively and the sign of the result is implementation-defined, that " +"is, :func:`!fmin` is not required to be sensitive to the sign of such " +"operands (see Annex F of the C11 standard, §F.10.0.3 and §F.10.9.3)." msgstr "" msgid "" @@ -552,8 +552,8 @@ msgid "" "Return *x* with the fractional part removed, leaving the integer part. This " "rounds toward 0: ``trunc()`` is equivalent to :func:`floor` for positive " "*x*, and equivalent to :func:`ceil` for negative *x*. If *x* is not a float, " -"delegates to :meth:`x.__trunc__ `, which should return an :" -"class:`~numbers.Integral` value." +"delegates to :meth:`x.__trunc__ `, which should return " +"an :class:`~numbers.Integral` value." msgstr "" msgid "" @@ -653,8 +653,8 @@ msgid "" msgstr "" msgid "" -"Return ``x * (2**i)``. This is essentially the inverse of function :func:" -"`frexp`." +"Return ``x * (2**i)``. This is essentially the inverse of " +"function :func:`frexp`." msgstr "" msgid "Return the floating-point value *steps* steps after *x* towards *y*." @@ -704,8 +704,8 @@ msgstr "" msgid "" "If *x* is equal to zero, return the smallest positive *denormalized* " -"representable float (smaller than the minimum positive *normalized* float, :" -"data:`sys.float_info.min `)." +"representable float (smaller than the minimum positive *normalized* " +"float, :data:`sys.float_info.min `)." msgstr "" msgid "" @@ -724,8 +724,8 @@ msgid "ULP stands for \"Unit in the Last Place\"." msgstr "" msgid "" -"See also :func:`math.nextafter` and :data:`sys.float_info.epsilon `." +"See also :func:`math.nextafter` and :data:`sys.float_info.epsilon " +"`." msgstr "" msgid "Power, exponential and logarithmic functions" @@ -832,9 +832,9 @@ msgstr "" msgid "" "For further discussion and two alternative approaches, see the `ASPN " -"cookbook recipes for accurate floating-point summation `_\\." +"cookbook recipes for accurate floating-point summation `_\\." msgstr "" msgid "" @@ -917,8 +917,8 @@ msgid "" "``pi``. The vector in the plane from the origin to point ``(x, y)`` makes " "this angle with the positive X axis. The point of :func:`atan2` is that the " "signs of both inputs are known to it, so it can compute the correct quadrant " -"for the angle. For example, ``atan(1)`` and ``atan2(1, 1)`` are both " -"``pi/4``, but ``atan2(-1, -1)`` is ``-3*pi/4``." +"for the angle. For example, ``atan(1)`` and ``atan2(1, 1)`` are both ``pi/" +"4``, but ``atan2(-1, -1)`` is ``-3*pi/4``." msgstr "" msgid "Return the cosine of *x* radians." @@ -967,8 +967,8 @@ msgstr "" msgid "" "The :func:`erf` function can be used to compute traditional statistical " -"functions such as the `cumulative standard normal distribution `_::" +"functions such as the `cumulative standard normal distribution `_::" msgstr "" msgid "" @@ -1058,8 +1058,8 @@ msgid "" msgstr "" msgid "" -"Floats with integral values (like ``5.0``) are no longer accepted in the :" -"func:`factorial` function." +"Floats with integral values (like ``5.0``) are no longer accepted in " +"the :func:`factorial` function." msgstr "" msgid "Use the :mod:`math.integer` functions instead of these aliases." @@ -1083,8 +1083,8 @@ msgid "" msgstr "" msgid "" -"A floating-point positive infinity. (For negative infinity, use ``-math." -"inf``.) Equivalent to the output of ``float('inf')``." +"A floating-point positive infinity. (For negative infinity, use ``-" +"math.inf``.) Equivalent to the output of ``float('inf')``." msgstr "" msgid "" @@ -1102,15 +1102,15 @@ msgstr "" msgid "" "The :mod:`!math` module consists mostly of thin wrappers around the platform " "C math library functions. Behavior in exceptional cases follows Annex F of " -"the C99 standard where appropriate. The current implementation will raise :" -"exc:`ValueError` for invalid operations like ``sqrt(-1.0)`` or ``log(0.0)`` " -"(where C99 Annex F recommends signaling invalid operation or divide-by-" -"zero), and :exc:`OverflowError` for results that overflow (for example, " -"``exp(1000.0)``). A NaN will not be returned from any of the functions " -"above unless one or more of the input arguments was a NaN; in that case, " -"most functions will return a NaN, but (again following C99 Annex F) there " -"are some exceptions to this rule, for example ``pow(float('nan'), 0.0)`` or " -"``hypot(float('nan'), float('inf'))``." +"the C99 standard where appropriate. The current implementation will " +"raise :exc:`ValueError` for invalid operations like ``sqrt(-1.0)`` or " +"``log(0.0)`` (where C99 Annex F recommends signaling invalid operation or " +"divide-by-zero), and :exc:`OverflowError` for results that overflow (for " +"example, ``exp(1000.0)``). A NaN will not be returned from any of the " +"functions above unless one or more of the input arguments was a NaN; in that " +"case, most functions will return a NaN, but (again following C99 Annex F) " +"there are some exceptions to this rule, for example ``pow(float('nan'), " +"0.0)`` or ``hypot(float('nan'), float('inf'))``." msgstr "" msgid "" diff --git a/library/mimetypes.po b/library/mimetypes.po index 01b2b2e..dd69586 100644 --- a/library/mimetypes.po +++ b/library/mimetypes.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -61,8 +62,8 @@ msgstr "" msgid "" "*encoding* is ``None`` for no encoding or the name of the program used to " "encode (e.g. :program:`compress` or :program:`gzip`). The encoding is " -"suitable for use as a :mailheader:`Content-Encoding` header, **not** as a :" -"mailheader:`Content-Transfer-Encoding` header. The mappings are table " +"suitable for use as a :mailheader:`Content-Encoding` header, **not** as " +"a :mailheader:`Content-Transfer-Encoding` header. The mappings are table " "driven. Encoding suffixes are case sensitive; type suffixes are first tried " "case sensitively, then case insensitively." msgstr "" @@ -87,9 +88,9 @@ msgid "" msgstr "" msgid "" -"Guess the type of a file based on its path, given by *path*. Similar to the :" -"func:`guess_type` function, but accepts a path instead of URL. Path can be a " -"string, a bytes object or a :term:`path-like object`." +"Guess the type of a file based on its path, given by *path*. Similar to " +"the :func:`guess_type` function, but accepts a path instead of URL. Path can " +"be a string, a bytes object or a :term:`path-like object`." msgstr "" msgid "" @@ -101,16 +102,16 @@ msgid "" msgstr "" msgid "" -"The optional *strict* argument has the same meaning as with the :func:" -"`guess_type` function." +"The optional *strict* argument has the same meaning as with " +"the :func:`guess_type` function." msgstr "" msgid "" "Guess the extension for a file based on its MIME type, given by *type*. The " "return value is a string giving a filename extension, including the leading " "dot (``'.'``). The extension is not guaranteed to have been associated with " -"any particular data stream, but would be mapped to the MIME type *type* by :" -"func:`guess_type` and :func:`guess_file_type`. If no extension can be " +"any particular data stream, but would be mapped to the MIME type *type* " +"by :func:`guess_type` and :func:`guess_file_type`. If no extension can be " "guessed for *type*, ``None`` is returned." msgstr "" @@ -177,8 +178,9 @@ msgstr "" msgid "" "Dictionary mapping suffixes to suffixes. This is used to allow recognition " "of encoded files for which the encoding and the type are indicated by the " -"same extension. For example, the :file:`.tgz` extension is mapped to :file:" -"`.tar.gz` to allow the encoding and type to be recognized separately." +"same extension. For example, the :file:`.tgz` extension is mapped " +"to :file:`.tar.gz` to allow the encoding and type to be recognized " +"separately." msgstr "" msgid "Dictionary mapping filename extensions to encoding types." @@ -219,11 +221,12 @@ msgstr "" msgid "" "This class represents a MIME-types database. By default, it provides access " -"to the same database as the rest of this module. The initial database is a " -"copy of that provided by the module, and may be extended by loading " -"additional :file:`mime.types`\\ -style files into the database using the :" -"meth:`read` or :meth:`readfp` methods. The mapping dictionaries may also be " -"cleared before loading additional data if the default data is not desired." +"to the same database as the rest of this module. The initial database is " +"created from Python's built-in MIME type tables. It may be extended by " +"loading additional :file:`mime.types`\\ -style files into the database using " +"the :meth:`read` or :meth:`readfp` methods. The mapping dictionaries may " +"also be cleared before loading additional data if the default data is not " +"desired." msgstr "" msgid "" @@ -234,28 +237,30 @@ msgstr "" msgid "" "Dictionary mapping suffixes to suffixes. This is used to allow recognition " "of encoded files for which the encoding and the type are indicated by the " -"same extension. For example, the :file:`.tgz` extension is mapped to :file:" -"`.tar.gz` to allow the encoding and type to be recognized separately. This " -"is initially a copy of the global :data:`suffix_map` defined in the module." +"same extension. For example, the :file:`.tgz` extension is mapped " +"to :file:`.tar.gz` to allow the encoding and type to be recognized " +"separately. This is initialized with some predefined values." msgstr "" msgid "" -"Dictionary mapping filename extensions to encoding types. This is initially " -"a copy of the global :data:`encodings_map` defined in the module." +"Dictionary mapping filename extensions to encoding types. This is " +"initialized with some predefined values." msgstr "" msgid "" "Tuple containing two dictionaries, mapping filename extensions to MIME " "types: the first dictionary is for the non-standards types and the second " -"one is for the standard types. They are initialized by :data:`common_types` " -"and :data:`types_map`." +"one is for the standard types. They are initialized with some predefined " +"values and MIME type information loaded from files specified by the " +"*filenames* argument." msgstr "" msgid "" "Tuple containing two dictionaries, mapping MIME types to a list of filename " "extensions: the first dictionary is for the non-standards types and the " -"second one is for the standard types. They are initialized by :data:" -"`common_types` and :data:`types_map`." +"second one is for the standard types. They are initialized with some " +"predefined values and MIME type information loaded from files specified by " +"the *filenames* argument." msgstr "" msgid "" @@ -279,8 +284,8 @@ msgid "" msgstr "" msgid "" -"Load MIME information from a file named *filename*. This uses :meth:" -"`readfp` to parse the file." +"Load MIME information from a file named *filename*. This " +"uses :meth:`readfp` to parse the file." msgstr "" msgid "" diff --git a/library/mm.po b/library/mm.po index 34357df..6e10ff8 100644 --- a/library/mm.po +++ b/library/mm.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/mmap.po b/library/mmap.po index e6c3ad1..2c4bf2f 100644 --- a/library/mmap.po +++ b/library/mmap.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,14 +34,14 @@ msgid "" msgstr "" msgid "" -"Memory-mapped file objects behave like both :class:`bytearray` and like :" -"term:`file objects `. You can use mmap objects in most places " -"where :class:`bytearray` are expected; for example, you can use the :mod:" -"`re` module to search through a memory-mapped file. You can also change a " -"single byte by doing ``obj[index] = 97``, or change a subsequence by " -"assigning to a slice: ``obj[i1:i2] = b'...'``. You can also read and write " -"data starting at the current file position, and :meth:`seek` through the " -"file to different positions." +"Memory-mapped file objects behave like both :class:`bytearray` and " +"like :term:`file objects `. You can use mmap objects in most " +"places where :class:`bytearray` are expected; for example, you can use " +"the :mod:`re` module to search through a memory-mapped file. You can also " +"change a single byte by doing ``obj[index] = 97``, or change a subsequence " +"by assigning to a slice: ``obj[i1:i2] = b'...'``. You can also read and " +"write data starting at the current file position, " +"and :meth:`~mmap.mmap.seek` through the file to different positions." msgstr "" msgid "" @@ -70,10 +70,10 @@ msgid "" "Unix and Windows. If *access* is not specified, Windows mmap returns a " "write-through mapping. The initial memory values for all three access types " "are taken from the specified file. Assignment to an :const:`ACCESS_READ` " -"memory map raises a :exc:`TypeError` exception. Assignment to an :const:" -"`ACCESS_WRITE` memory map affects both memory and the underlying file. " -"Assignment to an :const:`ACCESS_COPY` memory map affects memory but does not " -"update the underlying file." +"memory map raises a :exc:`TypeError` exception. Assignment to " +"an :const:`ACCESS_WRITE` memory map affects both memory and the underlying " +"file. Assignment to an :const:`ACCESS_COPY` memory map affects memory but " +"does not update the underlying file." msgstr "" msgid "Added :const:`ACCESS_DEFAULT` constant." @@ -106,17 +106,17 @@ msgstr "" msgid "" "*offset* may be specified as a non-negative integer offset. mmap references " "will be relative to the offset from the beginning of the file. *offset* " -"defaults to 0. *offset* must be a multiple of the :const:" -"`ALLOCATIONGRANULARITY`." +"defaults to 0. *offset* must be a multiple of " +"the :const:`ALLOCATIONGRANULARITY`." msgstr "" msgid "" "If *trackfd* is ``False``, the file handle corresponding to *fileno* will " "not be duplicated, and the resulting :class:`!mmap` object will not be " -"associated with the map's underlying file. This means that the :meth:`~mmap." -"mmap.size` and :meth:`~mmap.mmap.resize` methods will fail. This mode is " -"useful to limit the number of open file handles. The original file can be " -"renamed (but not deleted) after closing *fileno*." +"associated with the map's underlying file. This means that " +"the :meth:`~mmap.mmap.size` and :meth:`~mmap.mmap.resize` methods will fail. " +"This mode is useful to limit the number of open file handles. The original " +"file can be renamed (but not deleted) after closing *fileno*." msgstr "" msgid "The *trackfd* parameter was added." @@ -130,8 +130,8 @@ msgstr "" msgid "" "**(Unix version)** Maps *length* bytes from the file specified by the file " "descriptor *fileno*, and returns a mmap object. If *length* is ``0``, the " -"maximum length of the map will be the current size of the file when :class:" -"`~mmap.mmap` is called." +"maximum length of the map will be the current size of the file " +"when :class:`~mmap.mmap` is called." msgstr "" msgid "" @@ -147,8 +147,8 @@ msgstr "" msgid "" "*prot*, if specified, gives the desired memory protection; the two most " "useful values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify " -"that the pages may be read or written. *prot* defaults to :const:`PROT_READ " -"\\| PROT_WRITE`." +"that the pages may be read or written. *prot* defaults " +"to :const:`PROT_READ` \\| :const:`PROT_WRITE`." msgstr "" msgid "" @@ -168,9 +168,9 @@ msgstr "" msgid "" "If *trackfd* is ``False``, the file descriptor specified by *fileno* will " "not be duplicated, and the resulting :class:`!mmap` object will not be " -"associated with the map's underlying file. This means that the :meth:`~mmap." -"mmap.size` and :meth:`~mmap.mmap.resize` methods will fail. This mode is " -"useful to limit the number of open file descriptors." +"associated with the map's underlying file. This means that " +"the :meth:`~mmap.mmap.size` and :meth:`~mmap.mmap.resize` methods will fail. " +"This mode is useful to limit the number of open file descriptors." msgstr "" msgid "" @@ -207,8 +207,8 @@ msgid "" msgstr "" msgid "" -":class:`~mmap.mmap` can also be used as a context manager in a :keyword:" -"`with` statement::" +":class:`~mmap.mmap` can also be used as a context manager in " +"a :keyword:`with` statement::" msgstr "" msgid "" @@ -268,8 +268,8 @@ msgid "" "use of this call there is no guarantee that changes are written back before " "the object is destroyed. If *offset* and *size* are specified, only changes " "to the given range of bytes will be flushed to disk; otherwise, the whole " -"extent of the mapping is flushed. *offset* must be a multiple of the :const:" -"`PAGESIZE` or :const:`ALLOCATIONGRANULARITY`." +"extent of the mapping is flushed. *offset* must be a multiple of " +"the :const:`PAGESIZE` or :const:`ALLOCATIONGRANULARITY`." msgstr "" msgid "" @@ -303,10 +303,11 @@ msgstr "" msgid "" "Send advice *option* to the kernel about the memory region beginning at " -"*start* and extending *length* bytes. *option* must be one of the :ref:" -"`MADV_* constants ` available on the system. If *start* " -"and *length* are omitted, the entire mapping is spanned. On some systems " -"(including Linux), *start* must be a multiple of the :const:`PAGESIZE`." +"*start* and extending *length* bytes. *option* must be one of " +"the :ref:`MADV_* constants ` available on the system. If " +"*start* and *length* are omitted, the entire mapping is spanned. On some " +"systems (including Linux), *start* must be a multiple of " +"the :const:`PAGESIZE`." msgstr "" msgid "Availability: Systems with the ``madvise()`` system call." @@ -343,9 +344,9 @@ msgid "Resizes the map and the underlying file, if any." msgstr "" msgid "" -"Resizing a map created with *access* of :const:`ACCESS_READ` or :const:" -"`ACCESS_COPY`, will raise a :exc:`TypeError` exception. Resizing a map " -"created with *trackfd* set to ``False``, will raise a :exc:`ValueError` " +"Resizing a map created with *access* of :const:`ACCESS_READ` " +"or :const:`ACCESS_COPY`, will raise a :exc:`TypeError` exception. Resizing a " +"map created with *trackfd* set to ``False``, will raise a :exc:`ValueError` " "exception." msgstr "" @@ -374,8 +375,8 @@ msgstr "" msgid "" "Set the file's current position. *whence* argument is optional and defaults " "to ``os.SEEK_SET`` or ``0`` (absolute file positioning); other values are " -"``os.SEEK_CUR`` or ``1`` (seek relative to the current position) and ``os." -"SEEK_END`` or ``2`` (seek relative to the file's end)." +"``os.SEEK_CUR`` or ``1`` (seek relative to the current position) and " +"``os.SEEK_END`` or ``2`` (seek relative to the file's end)." msgstr "" msgid "Return the new absolute position instead of ``None``." @@ -424,7 +425,40 @@ msgid "" "exception." msgstr "" -msgid "MADV_* Constants" +msgid "ACCESS_* constants" +msgstr "" + +msgid "" +"These constants specify the access mode for a memory " +"mapping. :const:`ACCESS_READ` provides read-only " +"access, :const:`ACCESS_WRITE` provides write-through access, " +"and :const:`ACCESS_COPY` provides copy-on-write " +"access. :const:`ACCESS_DEFAULT` defers to the *prot* argument " +"of :class:`~mmap.mmap`." +msgstr "" + +msgid "Page size constants" +msgstr "" + +msgid "" +":const:`PAGESIZE` is the system memory page size in " +"bytes. :const:`ALLOCATIONGRANULARITY` is the minimum alignment in bytes " +"required for the *offset* argument of :class:`~mmap.mmap`. On " +"Unix, :const:`ALLOCATIONGRANULARITY` is equal to :const:`PAGESIZE`." +msgstr "" + +msgid "PROT_* constants" +msgstr "" + +msgid "" +"Memory protection flags accepted by the *prot* argument " +"of :class:`~mmap.mmap`. :const:`PROT_READ` allows pages to be " +"read, :const:`PROT_WRITE` allows pages to be written, and :const:`PROT_EXEC` " +"allows pages to be executed. Values can be combined using the bitwise OR " +"operator. Not every option is present on every system." +msgstr "" + +msgid "MADV_* constants" msgstr "" msgid "" @@ -435,14 +469,14 @@ msgstr "" msgid "Availability: Systems with the madvise() system call." msgstr "" -msgid "MAP_* Constants" +msgid "MAP_* constants" msgstr "" msgid "" -"These are the various flags that can be passed to :meth:`mmap.mmap`. :data:" -"`MAP_ALIGNED_SUPER` is only available at FreeBSD and :data:`MAP_CONCEAL` is " -"only available at OpenBSD. Note that some options might not be present on " -"some systems." +"These are the various flags that can be passed " +"to :meth:`mmap.mmap`. :data:`MAP_ALIGNED_SUPER` is only available at " +"FreeBSD and :data:`MAP_CONCEAL` is only available at OpenBSD. Note that " +"some options might not be present on some systems." msgstr "" msgid "Added :data:`MAP_POPULATE` constant." @@ -455,13 +489,11 @@ msgid "Added :data:`MAP_ALIGNED_SUPER` and :data:`MAP_CONCEAL` constants." msgstr "" msgid "" -"Added :data:`MAP_32BIT`, :data:`MAP_HASSEMAPHORE`, :data:`MAP_JIT`, :data:" -"`MAP_NOCACHE`, :data:`MAP_NOEXTEND`, :data:`MAP_NORESERVE`, :data:" -"`MAP_RESILIENT_CODESIGN`, :data:`MAP_RESILIENT_MEDIA`, :data:`MAP_TPRO`, :" -"data:`MAP_TRANSLATED_ALLOW_EXECUTE`, and :data:`MAP_UNIX03` constants." +"Added :data:`MAP_32BIT`, :data:`MAP_HASSEMAPHORE`, :data:`MAP_JIT`, :data:`MAP_NOCACHE`, :data:`MAP_NOEXTEND`, :data:`MAP_NORESERVE`, :data:`MAP_RESILIENT_CODESIGN`, :data:`MAP_RESILIENT_MEDIA`, :data:`MAP_TPRO`, :data:`MAP_TRANSLATED_ALLOW_EXECUTE`, " +"and :data:`MAP_UNIX03` constants." msgstr "" -msgid "MS_* Constants" +msgid "MS_* constants" msgstr "" msgid "" diff --git a/library/modulefinder.po b/library/modulefinder.po index 31631df..5d051cc 100644 --- a/library/modulefinder.po +++ b/library/modulefinder.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/modules.po b/library/modules.po index aa2bebd..e081ef9 100644 --- a/library/modules.po +++ b/library/modules.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/msilib.po b/library/msilib.po index e161690..6d22c93 100644 --- a/library/msilib.po +++ b/library/msilib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!msilib` --- Read and write Microsoft Installer files" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/msvcrt.po b/library/msvcrt.po index 476f3b6..fe9c137 100644 --- a/library/msvcrt.po +++ b/library/msvcrt.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,7 +32,8 @@ msgid "" "These functions provide access to some useful capabilities on Windows " "platforms. Some higher-level modules use these functions to build the " "Windows implementations of their services. For example, the :mod:`getpass` " -"module uses this in the implementation of the :func:`getpass` function." +"module uses this in the implementation of the :func:`~getpass.getpass` " +"function." msgstr "" msgid "" @@ -89,16 +90,16 @@ msgstr "" msgid "" "Set the line-end translation mode for the file descriptor *fd*. To set it to " -"text mode, *flags* should be :const:`os.O_TEXT`; for binary, it should be :" -"const:`os.O_BINARY`." +"text mode, *flags* should be :const:`os.O_TEXT`; for binary, it should " +"be :const:`os.O_BINARY`." msgstr "" msgid "" "Create a C runtime file descriptor from the file handle *handle*. The " -"*flags* parameter should be a bitwise OR of :const:`os.O_APPEND`, :const:`os." -"O_RDONLY`, :const:`os.O_TEXT` and :const:`os.O_NOINHERIT`. The returned file " -"descriptor may be used as a parameter to :func:`os.fdopen` to create a file " -"object." +"*flags* parameter should be a bitwise OR " +"of :const:`os.O_APPEND`, :const:`os.O_RDONLY`, :const:`os.O_TEXT` " +"and :const:`os.O_NOINHERIT`. The returned file descriptor may be used as a " +"parameter to :func:`os.fdopen` to create a file object." msgstr "" msgid "" @@ -203,8 +204,8 @@ msgid "" "Specifies the destination or destinations for a specific report type " "generated by :c:func:`!_CrtDbgReport` in the MS VC++ runtime. *type* must be " "one of the :const:`!CRT_\\*` constants listed below. *mode* must be one of " -"the :const:`!CRTDBG_\\*` constants listed below. Only available in :ref:" -"`debug build of Python `." +"the :const:`!CRTDBG_\\*` constants listed below. Only available " +"in :ref:`debug build of Python `." msgstr "" msgid "" diff --git a/library/multiprocessing.po b/library/multiprocessing.po index c2109cf..04553d7 100644 --- a/library/multiprocessing.po +++ b/library/multiprocessing.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -50,14 +51,14 @@ msgid "" msgstr "" msgid "" -"The :mod:`!multiprocessing` module also introduces the :class:" -"`~multiprocessing.pool.Pool` object which offers a convenient means of " -"parallelizing the execution of a function across multiple input values, " -"distributing the input data across processes (data parallelism). The " -"following example demonstrates the common practice of defining such " +"The :mod:`!multiprocessing` module also introduces " +"the :class:`~multiprocessing.pool.Pool` object which offers a convenient " +"means of parallelizing the execution of a function across multiple input " +"values, distributing the input data across processes (data parallelism). " +"The following example demonstrates the common practice of defining such " "functions in a module so that child processes can successfully import that " -"module. This basic example of data parallelism using :class:" -"`~multiprocessing.pool.Pool`, ::" +"module. This basic example of data parallelism " +"using :class:`~multiprocessing.pool.Pool`, ::" msgstr "" msgid "" @@ -87,20 +88,20 @@ msgstr "" msgid "" ":class:`concurrent.futures.ProcessPoolExecutor` offers a higher level " "interface to push tasks to a background process without blocking execution " -"of the calling process. Compared to using the :class:`~multiprocessing.pool." -"Pool` interface directly, the :mod:`concurrent.futures` API more readily " -"allows the submission of work to the underlying process pool to be separated " -"from waiting for the results." +"of the calling process. Compared to using " +"the :class:`~multiprocessing.pool.Pool` interface directly, " +"the :mod:`concurrent.futures` API more readily allows the submission of work " +"to the underlying process pool to be separated from waiting for the results." msgstr "" msgid "The :class:`Process` class" msgstr "" msgid "" -"In :mod:`!multiprocessing`, processes are spawned by creating a :class:" -"`Process` object and then calling its :meth:`~Process.start` method. :class:" -"`Process` follows the API of :class:`threading.Thread`. A trivial example " -"of a multiprocess program is ::" +"In :mod:`!multiprocessing`, processes are spawned by creating " +"a :class:`Process` object and then calling its :meth:`~Process.start` " +"method. :class:`Process` follows the API of :class:`threading.Thread`. A " +"trivial example of a multiprocess program is ::" msgstr "" msgid "" @@ -191,15 +192,15 @@ msgstr "" msgid "" "This is no longer the default start method on any platform. Code that " -"requires *fork* must explicitly specify that via :func:`get_context` or :" -"func:`set_start_method`." +"requires *fork* must explicitly specify that via :func:`get_context` " +"or :func:`set_start_method`." msgstr "" msgid "" -"If Python is able to detect that your process has multiple threads, the :" -"func:`os.fork` function that this start method calls internally will raise " -"a :exc:`DeprecationWarning`. Use a different start method. See the :func:`os." -"fork` documentation for further explanation." +"If Python is able to detect that your process has multiple threads, " +"the :func:`os.fork` function that this start method calls internally will " +"raise a :exc:`DeprecationWarning`. Use a different start method. See " +"the :func:`os.fork` documentation for further explanation." msgstr "" msgid "*forkserver*" @@ -216,12 +217,22 @@ msgstr "" msgid "" "Available on POSIX platforms which support passing file descriptors over " -"Unix pipes such as Linux. The default on those." +"Unix pipes such as Linux. The default on those, unless there is no writable " +"temporary directory (see :func:`tempfile.gettempdir`), which the fork server " +"requires; *spawn* is the default in that case." msgstr "" msgid "This became the default start method on POSIX platforms." msgstr "" +msgid "" +"*spawn* is now the default start method when there is no writable temporary " +"directory, for example on a read-only file system. Previously *forkserver* " +"remained the default there and starting a process failed with " +"an :exc:`OSError`. The default is determined when it is first needed rather " +"than when :mod:`!multiprocessing` is imported. See :gh:`155717`." +msgstr "" + msgid "" "*spawn* added on all POSIX platforms, and *forkserver* added for some POSIX " "platforms. Child processes no longer inherit all of the parents inheritable " @@ -243,15 +254,15 @@ msgstr "" msgid "" "On POSIX using the *spawn* or *forkserver* start methods will also start a " "*resource tracker* process which tracks the unlinked named system resources " -"(such as named semaphores or :class:`~multiprocessing.shared_memory." -"SharedMemory` objects) created by processes of the program. When all " -"processes have exited the resource tracker unlinks any remaining tracked " -"object. Usually there should be none, but if a process was killed by a " -"signal there may be some \"leaked\" resources. (Neither leaked semaphores " -"nor shared memory segments will be automatically unlinked until the next " -"reboot. This is problematic for both objects because the system allows only " -"a limited number of named semaphores, and shared memory segments occupy some " -"space in the main memory.)" +"(such as named semaphores " +"or :class:`~multiprocessing.shared_memory.SharedMemory` objects) created by " +"processes of the program. When all processes have exited the resource " +"tracker unlinks any remaining tracked object. Usually there should be none, " +"but if a process was killed by a signal there may be some \"leaked\" " +"resources. (Neither leaked semaphores nor shared memory segments will be " +"automatically unlinked until the next reboot. This is problematic for both " +"objects because the system allows only a limited number of named semaphores, " +"and shared memory segments occupy some space in the main memory.)" msgstr "" msgid "" @@ -307,12 +318,12 @@ msgid "" msgstr "" msgid "" -"Libraries using :mod:`!multiprocessing` or :class:`~concurrent.futures." -"ProcessPoolExecutor` should be designed to allow their users to provide " -"their own multiprocessing context. Using a specific context of your own " -"within a library can lead to incompatibilities with the rest of the library " -"user's application. Always document if your library requires a specific " -"start method." +"Libraries using :mod:`!multiprocessing` " +"or :class:`~concurrent.futures.ProcessPoolExecutor` should be designed to " +"allow their users to provide their own multiprocessing context. Using a " +"specific context of your own within a library can lead to incompatibilities " +"with the rest of the library user's application. Always document if your " +"library requires a specific start method." msgstr "" msgid "" @@ -382,16 +393,17 @@ msgstr "" msgid "" "The two connection objects returned by :func:`Pipe` represent the two ends " -"of the pipe. Each connection object has :meth:`~Connection.send` and :meth:" -"`~Connection.recv` methods (among others). Note that data in a pipe may " -"become corrupted if two processes (or threads) try to read from or write to " -"the *same* end of the pipe at the same time. Of course there is no risk of " -"corruption from processes using different ends of the pipe at the same time." +"of the pipe. Each connection object has :meth:`~Connection.send` " +"and :meth:`~Connection.recv` methods (among others). Note that data in a " +"pipe may become corrupted if two processes (or threads) try to read from or " +"write to the *same* end of the pipe at the same time. Of course there is no " +"risk of corruption from processes using different ends of the pipe at the " +"same time." msgstr "" msgid "" -"The :meth:`~Connection.send` method serializes the object and :meth:" -"`~Connection.recv` re-creates the object." +"The :meth:`~Connection.send` method serializes the object " +"and :meth:`~Connection.recv` re-creates the object." msgstr "" msgid "Synchronization between processes" @@ -443,8 +455,8 @@ msgid "**Shared memory**" msgstr "" msgid "" -"Data can be stored in a shared memory map using :class:`Value` or :class:" -"`Array`. For example, the following code ::" +"Data can be stored in a shared memory map using :class:`Value` " +"or :class:`Array`. For example, the following code ::" msgstr "" msgid "" @@ -483,9 +495,9 @@ msgid "" msgstr "" msgid "" -"For more flexibility in using shared memory one can use the :mod:" -"`multiprocessing.sharedctypes` module which supports the creation of " -"arbitrary ctypes objects allocated from shared memory." +"For more flexibility in using shared memory one can use " +"the :mod:`multiprocessing.sharedctypes` module which supports the creation " +"of arbitrary ctypes objects allocated from shared memory." msgstr "" msgid "**Server process**" @@ -498,11 +510,9 @@ msgid "" msgstr "" msgid "" -"A manager returned by :func:`Manager` will support types :class:`list`, :" -"class:`dict`, :class:`set`, :class:`~managers.Namespace`, :class:`Lock`, :" -"class:`RLock`, :class:`Semaphore`, :class:`BoundedSemaphore`, :class:" -"`Condition`, :class:`Event`, :class:`Barrier`, :class:`Queue`, :class:" -"`Value` and :class:`Array`. For example, ::" +"A manager returned by :func:`Manager` will support " +"types :class:`list`, :class:`dict`, :class:`set`, :class:`~managers.Namespace`, :class:`Lock`, :class:`RLock`, :class:`Semaphore`, :class:`BoundedSemaphore`, :class:`Condition`, :class:`Event`, :class:`Barrier`, :class:`Queue`, :class:`Value` " +"and :class:`Array`. For example, ::" msgstr "" msgid "" @@ -595,8 +605,8 @@ msgid "" " try:\n" " print(res.get(timeout=1))\n" " except TimeoutError:\n" -" print(\"We lacked patience and got a multiprocessing." -"TimeoutError\")\n" +" print(\"We lacked patience and got a " +"multiprocessing.TimeoutError\")\n" "\n" " print(\"For the moment, the pool remains available for more work\")\n" "\n" @@ -649,8 +659,8 @@ msgid "Reference" msgstr "" msgid "" -"The :mod:`!multiprocessing` package mostly replicates the API of the :mod:" -"`threading` module." +"The :mod:`!multiprocessing` package mostly replicates the API of " +"the :mod:`threading` module." msgstr "" msgid "Global start method" @@ -674,22 +684,22 @@ msgid ":class:`Process` and exceptions" msgstr "" msgid "" -"Process objects represent activity that is run in a separate process. The :" -"class:`Process` class has equivalents of all the methods of :class:" -"`threading.Thread`." +"Process objects represent activity that is run in a separate process. " +"The :class:`Process` class has equivalents of all the methods " +"of :class:`threading.Thread`." msgstr "" msgid "" "The constructor should always be called with keyword arguments. *group* " -"should always be ``None``; it exists solely for compatibility with :class:" -"`threading.Thread`. *target* is the callable object to be invoked by the :" -"meth:`run` method. It defaults to ``None``, meaning nothing is called. " -"*name* is the process name (see :attr:`name` for more details). *args* is " -"the argument tuple for the target invocation. *kwargs* is a dictionary of " -"keyword arguments for the target invocation. If provided, the keyword-only " -"*daemon* argument sets the process :attr:`daemon` flag to ``True`` or " -"``False``. If ``None`` (the default), this flag will be inherited from the " -"creating process." +"should always be ``None``; it exists solely for compatibility " +"with :class:`threading.Thread`. *target* is the callable object to be " +"invoked by the :meth:`run` method. It defaults to ``None``, meaning nothing " +"is called. *name* is the process name (see :attr:`name` for more details). " +"*args* is the argument tuple for the target invocation. *kwargs* is a " +"dictionary of keyword arguments for the target invocation. If provided, the " +"keyword-only *daemon* argument sets the process :attr:`daemon` flag to " +"``True`` or ``False``. If ``None`` (the default), this flag will be " +"inherited from the creating process." msgstr "" msgid "" @@ -706,9 +716,9 @@ msgstr "" msgid "" "In general, all arguments to :class:`Process` must be picklable. This is " -"frequently observed when trying to create a :class:`Process` or use a :class:" -"`concurrent.futures.ProcessPoolExecutor` from a REPL with a locally defined " -"*target* function." +"frequently observed when trying to create a :class:`Process` or use " +"a :class:`concurrent.futures.ProcessPoolExecutor` from a REPL with a locally " +"defined *target* function." msgstr "" msgid "" @@ -807,9 +817,9 @@ msgstr "" msgid "" "The initial name is set by the constructor. If no explicit name is provided " -"to the constructor, a name of the form 'Process-N\\ :sub:`1`:N\\ :sub:" -"`2`:...:N\\ :sub:`k`' is constructed, where each N\\ :sub:`k` is the N-th " -"child of its parent." +"to the constructor, a name of the form 'Process-" +"N\\ :sub:`1`:N\\ :sub:`2`:...:N\\ :sub:`k`' is constructed, where each " +"N\\ :sub:`k` is the N-th child of its parent." msgstr "" msgid "Return whether the process is alive." @@ -821,8 +831,8 @@ msgid "" msgstr "" msgid "" -"The process's daemon flag, a Boolean value. This must be set before :meth:" -"`start` is called." +"The process's daemon flag, a Boolean value. This must be set " +"before :meth:`start` is called." msgstr "" msgid "The initial value is inherited from the creating process." @@ -890,9 +900,9 @@ msgid "" msgstr "" msgid "" -"You can use this value if you want to wait on several events at once using :" -"func:`multiprocessing.connection.wait`. Otherwise calling :meth:`join` is " -"simpler." +"You can use this value if you want to wait on several events at once " +"using :func:`multiprocessing.connection.wait`. Otherwise " +"calling :meth:`join` is simpler." msgstr "" msgid "" @@ -907,10 +917,10 @@ msgid "" msgstr "" msgid "" -"By default, this terminates the child process by raising :exc:" -"`KeyboardInterrupt`. This behavior can be altered by setting the respective " -"signal handler in the child process :func:`signal.signal` for :py:const:" -"`~signal.SIGINT`." +"By default, this terminates the child process by " +"raising :exc:`KeyboardInterrupt`. This behavior can be altered by setting " +"the respective signal handler in the child process :func:`signal.signal` " +"for :py:const:`~signal.SIGINT`." msgstr "" msgid "" @@ -920,15 +930,16 @@ msgstr "" msgid "" "Note: the default behavior will also set :attr:`exitcode` to ``1`` as if an " -"uncaught exception was raised in the child process. To have a different :" -"attr:`exitcode` you may simply catch :exc:`KeyboardInterrupt` and call " -"``exit(your_code)``." +"uncaught exception was raised in the child process. To have a " +"different :attr:`exitcode` you may simply catch :exc:`KeyboardInterrupt` and " +"call ``exit(your_code)``." msgstr "" msgid "" -"Terminate the process. On POSIX this is done using the :py:const:`~signal." -"SIGTERM` signal; on Windows :c:func:`!TerminateProcess` is used. Note that " -"exit handlers and finally clauses, etc., will not be executed." +"Terminate the process. On POSIX this is done using " +"the :py:const:`~signal.SIGTERM` signal; on Windows :c:func:`!" +"TerminateProcess` is used. Note that exit handlers and finally clauses, " +"etc., will not be executed." msgstr "" msgid "" @@ -955,9 +966,10 @@ msgid "" msgstr "" msgid "" -"Note that the :meth:`start`, :meth:`join`, :meth:`is_alive`, :meth:" -"`terminate` and :attr:`exitcode` methods should only be called by the " -"process that created the process object." +"Note that " +"the :meth:`start`, :meth:`join`, :meth:`is_alive`, :meth:`terminate` " +"and :attr:`exitcode` methods should only be called by the process that " +"created the process object." msgstr "" msgid "Example usage of some of the methods of :class:`Process`:" @@ -1017,23 +1029,23 @@ msgid "" "The :class:`Queue`, :class:`SimpleQueue` and :class:`JoinableQueue` types " "are multi-producer, multi-consumer :abbr:`FIFO (first-in, first-out)` queues " "modelled on the :class:`queue.Queue` class in the standard library. They " -"differ in that :class:`Queue` lacks the :meth:`~queue.Queue.task_done` and :" -"meth:`~queue.Queue.join` methods introduced into Python 2.5's :class:`queue." -"Queue` class." +"differ in that :class:`Queue` lacks the :meth:`~queue.Queue.task_done` " +"and :meth:`~queue.Queue.join` methods introduced into Python " +"2.5's :class:`queue.Queue` class." msgstr "" msgid "" -"If you use :class:`JoinableQueue` then you **must** call :meth:" -"`JoinableQueue.task_done` for each task removed from the queue or else the " -"semaphore used to count the number of unfinished tasks may eventually " -"overflow, raising an exception." +"If you use :class:`JoinableQueue` then you **must** " +"call :meth:`JoinableQueue.task_done` for each task removed from the queue or " +"else the semaphore used to count the number of unfinished tasks may " +"eventually overflow, raising an exception." msgstr "" msgid "" "One difference from other Python queue implementations, is that :mod:`!" -"multiprocessing` queues serializes all objects that are put into them using :" -"mod:`pickle`. The object returned by the get method is a re-created object " -"that does not share memory with the original object." +"multiprocessing` queues serializes all objects that are put into them " +"using :mod:`pickle`. The object returned by the get method is a re-created " +"object that does not share memory with the original object." msgstr "" msgid "" @@ -1042,9 +1054,10 @@ msgid "" msgstr "" msgid "" -":mod:`!multiprocessing` uses the usual :exc:`queue.Empty` and :exc:`queue." -"Full` exceptions to signal a timeout. They are not available in the :mod:`!" -"multiprocessing` namespace so you need to import them from :mod:`queue`." +":mod:`!multiprocessing` uses the usual :exc:`queue.Empty` " +"and :exc:`queue.Full` exceptions to signal a timeout. They are not " +"available in the :mod:`!multiprocessing` namespace so you need to import " +"them from :mod:`queue`." msgstr "" msgid "" @@ -1077,9 +1090,9 @@ msgstr "" msgid "" "As mentioned above, if a child process has put items on a queue (and it has " -"not used :meth:`JoinableQueue.cancel_join_thread `), then that process will not terminate until all " -"buffered items have been flushed to the pipe." +"not used :meth:`JoinableQueue.cancel_join_thread " +"`), then that process will not " +"terminate until all buffered items have been flushed to the pipe." msgstr "" msgid "" @@ -1091,18 +1104,19 @@ msgid "" msgstr "" msgid "" -"Note that a queue created using a manager does not have this issue. See :" -"ref:`multiprocessing-programming`." +"Note that a queue created using a manager does not have this issue. " +"See :ref:`multiprocessing-programming`." msgstr "" msgid "" -"For an example of the usage of queues for interprocess communication see :" -"ref:`multiprocessing-examples`." +"For an example of the usage of queues for interprocess communication " +"see :ref:`multiprocessing-examples`." msgstr "" msgid "" -"Returns a pair ``(conn1, conn2)`` of :class:`~multiprocessing.connection." -"Connection` objects representing the ends of a pipe." +"Returns a pair ``(conn1, conn2)`` " +"of :class:`~multiprocessing.connection.Connection` objects representing the " +"ends of a pipe." msgstr "" msgid "" @@ -1136,8 +1150,8 @@ msgstr "" msgid "" ":class:`Queue` implements all the methods of :class:`queue.Queue` except " -"for :meth:`~queue.Queue.task_done`, :meth:`~queue.Queue.join`, and :meth:" -"`~queue.Queue.shutdown`." +"for :meth:`~queue.Queue.task_done`, :meth:`~queue.Queue.join`, " +"and :meth:`~queue.Queue.shutdown`." msgstr "" msgid "" @@ -1174,8 +1188,8 @@ msgid "" msgstr "" msgid "" -"If the queue is closed, :exc:`ValueError` is raised instead of :exc:" -"`AssertionError`." +"If the queue is closed, :exc:`ValueError` is raised instead " +"of :exc:`AssertionError`." msgstr "" msgid "Equivalent to ``put(obj, False)``." @@ -1187,30 +1201,31 @@ msgid "" "necessary until an item is available. If *timeout* is a positive number, it " "blocks at most *timeout* seconds and raises the :exc:`queue.Empty` exception " "if no item was available within that time. Otherwise (block is ``False``), " -"return an item if one is immediately available, else raise the :exc:`queue." -"Empty` exception (*timeout* is ignored in that case)." +"return an item if one is immediately available, else raise " +"the :exc:`queue.Empty` exception (*timeout* is ignored in that case)." msgstr "" msgid "" -"If the queue is closed, :exc:`ValueError` is raised instead of :exc:" -"`OSError`." +"If the queue is closed, :exc:`ValueError` is raised instead " +"of :exc:`OSError`." msgstr "" msgid "Equivalent to ``get(False)``." msgstr "" msgid "" -":class:`multiprocessing.Queue` has a few additional methods not found in :" -"class:`queue.Queue`. These methods are usually unnecessary for most code:" +":class:`multiprocessing.Queue` has a few additional methods not found " +"in :class:`queue.Queue`. These methods are usually unnecessary for most " +"code:" msgstr "" msgid "Close the queue: release internal resources." msgstr "" msgid "" -"A queue must not be used anymore after it is closed. For example, :meth:" -"`~Queue.get`, :meth:`~Queue.put` and :meth:`~Queue.empty` methods must no " -"longer be called." +"A queue must not be used anymore after it is closed. For " +"example, :meth:`~Queue.get`, :meth:`~Queue.put` and :meth:`~Queue.empty` " +"methods must no longer be called." msgstr "" msgid "" @@ -1226,8 +1241,8 @@ msgstr "" msgid "" "By default if a process is not the creator of the queue then on exit it will " -"attempt to join the queue's background thread. The process can call :meth:" -"`cancel_join_thread` to make :meth:`join_thread` do nothing." +"attempt to join the queue's background thread. The process can " +"call :meth:`cancel_join_thread` to make :meth:`join_thread` do nothing." msgstr "" msgid "" @@ -1258,8 +1273,9 @@ msgid "" msgstr "" msgid "" -"A queue must not be used anymore after it is closed. For example, :meth:" -"`get`, :meth:`put` and :meth:`empty` methods must no longer be called." +"A queue must not be used anymore after it is closed. For " +"example, :meth:`get`, :meth:`put` and :meth:`empty` methods must no longer " +"be called." msgstr "" msgid "Return ``True`` if the queue is empty, ``False`` otherwise." @@ -1324,8 +1340,8 @@ msgstr "" msgid "" "This number is not equivalent to the number of CPUs the current process can " -"use. The number of usable CPUs can be obtained with :func:`os." -"process_cpu_count` (or ``len(os.sched_getaffinity(0))``)." +"use. The number of usable CPUs can be obtained " +"with :func:`os.process_cpu_count` (or ``len(os.sched_getaffinity(0))``)." msgstr "" msgid "" @@ -1392,8 +1408,8 @@ msgstr "" msgid "" "Returns a list of the supported start methods, the first of which is the " "default. The possible start methods are ``'fork'``, ``'spawn'`` and " -"``'forkserver'``. Not all platforms support all methods. See :ref:" -"`multiprocessing-start-methods`." +"``'forkserver'``. Not all platforms support all methods. " +"See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" @@ -1406,8 +1422,8 @@ msgid "" "the global start method has not been set, this will set it to the system " "default See :ref:`global-start-method` for more details. Otherwise *method* " "should be ``'fork'``, ``'spawn'``, ``'forkserver'``. :exc:`ValueError` is " -"raised if the specified start method is not available. See :ref:" -"`multiprocessing-start-methods`." +"raised if the specified start method is not available. " +"See :ref:`multiprocessing-start-methods`." msgstr "" msgid "Return the name of start method used for starting processes." @@ -1415,8 +1431,8 @@ msgstr "" msgid "" "If the global start method is not set and *allow_none* is ``False``, the " -"global start method is set to the default, and its name is returned. See :" -"ref:`global-start-method` for more details." +"global start method is set to the default, and its name is returned. " +"See :ref:`global-start-method` for more details." msgstr "" msgid "" @@ -1463,15 +1479,15 @@ msgstr "" msgid "" "The *on_error* parameter controls how :exc:`ImportError` exceptions during " "module preloading are handled: ``\"ignore\"`` (default) silently ignores " -"failures, ``\"warn\"`` causes the forkserver subprocess to emit an :exc:" -"`ImportWarning` to stderr, and ``\"fail\"`` causes the forkserver subprocess " -"to exit with the exception traceback on stderr, making subsequent process " -"creation fail with :exc:`EOFError` or :exc:`ConnectionError`." +"failures, ``\"warn\"`` causes the forkserver subprocess to emit " +"an :exc:`ImportWarning` to stderr, and ``\"fail\"`` causes the forkserver " +"subprocess to exit with the exception traceback on stderr, making subsequent " +"process creation fail with :exc:`EOFError` or :exc:`ConnectionError`." msgstr "" msgid "" -"Only meaningful when using the ``'forkserver'`` start method. See :ref:" -"`multiprocessing-start-methods`." +"Only meaningful when using the ``'forkserver'`` start method. " +"See :ref:`multiprocessing-start-methods`." msgstr "" msgid "Added the *on_error* parameter." @@ -1479,11 +1495,11 @@ msgstr "" msgid "" "Set the method which should be used to start child processes. The *method* " -"argument can be ``'fork'``, ``'spawn'`` or ``'forkserver'``. Raises :exc:" -"`RuntimeError` if the start method has already been set and *force* is not " -"``True``. If *method* is ``None`` and *force* is ``True`` then the start " -"method is set to ``None``. If *method* is ``None`` and *force* is ``False`` " -"then the context is set to the default context." +"argument can be ``'fork'``, ``'spawn'`` or ``'forkserver'``. " +"Raises :exc:`RuntimeError` if the start method has already been set and " +"*force* is not ``True``. If *method* is ``None`` and *force* is ``True`` " +"then the start method is set to ``None``. If *method* is ``None`` and " +"*force* is ``False`` then the context is set to the default context." msgstr "" msgid "" @@ -1495,10 +1511,9 @@ msgid "See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" -":mod:`!multiprocessing` contains no analogues of :func:`threading." -"active_count`, :func:`threading.enumerate`, :func:`threading.settrace`, :" -"func:`threading.setprofile`, :class:`threading.Timer`, or :class:`threading." -"local`." +":mod:`!multiprocessing` contains no analogues " +"of :func:`threading.active_count`, :func:`threading.enumerate`, :func:`threading.settrace`, :func:`threading.setprofile`, :class:`threading.Timer`, " +"or :class:`threading.local`." msgstr "" msgid "Connection Objects" @@ -1510,8 +1525,8 @@ msgid "" msgstr "" msgid "" -"Connection objects are usually created using :func:`Pipe ` -- see also :ref:`multiprocessing-listeners-clients`." +"Connection objects are usually created using :func:`Pipe " +"` -- see also :ref:`multiprocessing-listeners-clients`." msgstr "" msgid "" @@ -1525,9 +1540,10 @@ msgid "" msgstr "" msgid "" -"Return an object sent from the other end of the connection using :meth:" -"`send`. Blocks until there is something to receive. Raises :exc:`EOFError` " -"if there is nothing left to receive and the other end was closed." +"Return an object sent from the other end of the connection " +"using :meth:`send`. Blocks until there is something to receive. " +"Raises :exc:`EOFError` if there is nothing left to receive and the other end " +"was closed." msgstr "" msgid "Return the file descriptor or handle used by the connection." @@ -1549,8 +1565,8 @@ msgid "" msgstr "" msgid "" -"Note that multiple connection objects may be polled at once by using :func:" -"`multiprocessing.connection.wait`." +"Note that multiple connection objects may be polled at once by " +"using :func:`multiprocessing.connection.wait`." msgstr "" msgid "Send byte data from a :term:`bytes-like object` as a complete message." @@ -1559,25 +1575,25 @@ msgstr "" msgid "" "If *offset* is given then data is read from that position in *buf*. If " "*size* is given then that many bytes will be read from *buf*. Very large " -"buffers (approximately 32 MiB+, though it depends on the OS) may raise a :" -"exc:`ValueError` exception" +"buffers (approximately 32 MiB+, though it depends on the OS) may raise " +"a :exc:`ValueError` exception" msgstr "" msgid "" "Return a complete message of byte data sent from the other end of the " -"connection as a string. Blocks until there is something to receive. Raises :" -"exc:`EOFError` if there is nothing left to receive and the other end has " -"closed." +"connection as a string. Blocks until there is something to receive. " +"Raises :exc:`EOFError` if there is nothing left to receive and the other end " +"has closed." msgstr "" msgid "" -"If *maxlength* is specified and the message is longer than *maxlength* then :" -"exc:`OSError` is raised and the connection will no longer be readable." +"If *maxlength* is specified and the message is longer than *maxlength* " +"then :exc:`OSError` is raised and the connection will no longer be readable." msgstr "" msgid "" -"This function used to raise :exc:`IOError`, which is now an alias of :exc:" -"`OSError`." +"This function used to raise :exc:`IOError`, which is now an alias " +"of :exc:`OSError`." msgstr "" msgid "" @@ -1605,9 +1621,10 @@ msgid "" msgstr "" msgid "" -"Connection objects also now support the context management protocol -- see :" -"ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the " -"connection object, and :meth:`~contextmanager.__exit__` calls :meth:`close`." +"Connection objects also now support the context management protocol -- " +"see :ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns " +"the connection object, and :meth:`~contextmanager.__exit__` " +"calls :meth:`close`." msgstr "" msgid "For example:" @@ -1641,8 +1658,8 @@ msgstr "" msgid "" "Therefore, unless the connection object was produced using :func:`Pipe` you " "should only use the :meth:`~Connection.recv` and :meth:`~Connection.send` " -"methods after performing some sort of authentication. See :ref:" -"`multiprocessing-auth-keys`." +"methods after performing some sort of authentication. " +"See :ref:`multiprocessing-auth-keys`." msgstr "" msgid "" @@ -1656,8 +1673,8 @@ msgstr "" msgid "" "Generally synchronization primitives are not as necessary in a multiprocess " -"program as they are in a multithreaded program. See the documentation for :" -"mod:`threading` module." +"program as they are in a multithreaded program. See the documentation " +"for :mod:`threading` module." msgstr "" msgid "" @@ -1669,8 +1686,8 @@ msgid "A barrier object: a clone of :class:`threading.Barrier`." msgstr "" msgid "" -"A bounded semaphore object: a close analog of :class:`threading." -"BoundedSemaphore`." +"A bounded semaphore object: a close analog " +"of :class:`threading.BoundedSemaphore`." msgstr "" msgid "" @@ -1704,10 +1721,10 @@ msgid "" "A non-recursive lock object: a close analog of :class:`threading.Lock`. Once " "a process or thread has acquired a lock, subsequent attempts to acquire it " "from any process or thread will block until it is released; any process or " -"thread may release it. The concepts and behaviors of :class:`threading." -"Lock` as it applies to threads are replicated here in :class:" -"`multiprocessing.Lock` as it applies to either processes or threads, except " -"as noted." +"thread may release it. The concepts and behaviors " +"of :class:`threading.Lock` as it applies to threads are replicated here " +"in :class:`multiprocessing.Lock` as it applies to either processes or " +"threads, except as noted." msgstr "" msgid "" @@ -1802,9 +1819,9 @@ msgid "" msgstr "" msgid "" -"Use and behaviors of the *timeout* argument are the same as in :meth:`Lock." -"acquire`. Note that some of these behaviors of *timeout* differ from the " -"implemented behaviors in :meth:`threading.RLock.acquire`." +"Use and behaviors of the *timeout* argument are the same as " +"in :meth:`Lock.acquire`. Note that some of these behaviors of *timeout* " +"differ from the implemented behaviors in :meth:`threading.RLock.acquire`." msgstr "" msgid "" @@ -1817,8 +1834,8 @@ msgid "" msgstr "" msgid "" -"Only call this method when the calling process or thread owns the lock. An :" -"exc:`AssertionError` is raised if this method is called by a process or " +"Only call this method when the calling process or thread owns the lock. " +"An :exc:`AssertionError` is raised if this method is called by a process or " "thread other than the owner or if the lock is in an unlocked (unowned) " "state. Note that the type of exception raised in this situation differs " "from the implemented behavior in :meth:`threading.RLock.release`." @@ -1837,9 +1854,9 @@ msgstr "" msgid "" "Some of this package's functionality requires a functioning shared semaphore " -"implementation on the host operating system. Without one, the :mod:" -"`multiprocessing.synchronize` module will be disabled, and attempts to " -"import it will result in an :exc:`ImportError`. See :issue:`3770` for " +"implementation on the host operating system. Without one, " +"the :mod:`multiprocessing.synchronize` module will be disabled, and attempts " +"to import it will result in an :exc:`ImportError`. See :issue:`3770` for " "additional information." msgstr "" @@ -1859,8 +1876,9 @@ msgstr "" msgid "" "*typecode_or_type* determines the type of the returned object: it is either " -"a ctypes type or a one character typecode of the kind used by the :mod:" -"`array` module. *\\*args* is passed on to the constructor for the type." +"a ctypes type or a one character typecode of the kind used by " +"the :mod:`array` module. *\\*args* is passed on to the constructor for the " +"type." msgstr "" msgid "" @@ -1913,11 +1931,11 @@ msgstr "" msgid "" "If *lock* is ``True`` (the default) then a new lock object is created to " -"synchronize access to the value. If *lock* is a :class:`Lock` or :class:" -"`RLock` object then that will be used to synchronize access to the value. " -"If *lock* is ``False`` then access to the returned object will not be " -"automatically protected by a lock, so it will not necessarily be \"process-" -"safe\"." +"synchronize access to the value. If *lock* is a :class:`Lock` " +"or :class:`RLock` object then that will be used to synchronize access to the " +"value. If *lock* is ``False`` then access to the returned object will not " +"be automatically protected by a lock, so it will not necessarily be " +"\"process-safe\"." msgstr "" msgid "Note that *lock* is a keyword only argument." @@ -1961,18 +1979,18 @@ msgid "" msgstr "" msgid "" -"Note that setting and getting an element is potentially non-atomic -- use :" -"func:`Array` instead to make sure that access is automatically synchronized " -"using a lock." +"Note that setting and getting an element is potentially non-atomic -- " +"use :func:`Array` instead to make sure that access is automatically " +"synchronized using a lock." msgstr "" msgid "Return a ctypes object allocated from shared memory." msgstr "" msgid "" -"Note that setting and getting the value is potentially non-atomic -- use :" -"func:`Value` instead to make sure that access is automatically synchronized " -"using a lock." +"Note that setting and getting the value is potentially non-atomic -- " +"use :func:`Value` instead to make sure that access is automatically " +"synchronized using a lock." msgstr "" msgid "" @@ -1989,11 +2007,11 @@ msgstr "" msgid "" "If *lock* is ``True`` (the default) then a new lock object is created to " -"synchronize access to the value. If *lock* is a :class:`~multiprocessing." -"Lock` or :class:`~multiprocessing.RLock` object then that will be used to " -"synchronize access to the value. If *lock* is ``False`` then access to the " -"returned object will not be automatically protected by a lock, so it will " -"not necessarily be \"process-safe\"." +"synchronize access to the value. If *lock* is " +"a :class:`~multiprocessing.Lock` or :class:`~multiprocessing.RLock` object " +"then that will be used to synchronize access to the value. If *lock* is " +"``False`` then access to the returned object will not be automatically " +"protected by a lock, so it will not necessarily be \"process-safe\"." msgstr "" msgid "" @@ -2018,14 +2036,14 @@ msgstr "" msgid "" "Return a process-safe wrapper object for a ctypes object which uses *lock* " -"to synchronize access. If *lock* is ``None`` (the default) then a :class:" -"`multiprocessing.RLock` object is created automatically." +"to synchronize access. If *lock* is ``None`` (the default) then " +"a :class:`multiprocessing.RLock` object is created automatically." msgstr "" msgid "" "A synchronized wrapper will have two methods in addition to those of the " -"object it wraps: :meth:`get_obj` returns the wrapped object and :meth:" -"`get_lock` returns the lock object used for synchronization." +"object it wraps: :meth:`get_obj` returns the wrapped object " +"and :meth:`get_lock` returns the lock object used for synchronization." msgstr "" msgid "" @@ -2153,17 +2171,17 @@ msgstr "" msgid "" "Manager processes will be shutdown as soon as they are garbage collected or " -"their parent process exits. The manager classes are defined in the :mod:" -"`multiprocessing.managers` module:" +"their parent process exits. The manager classes are defined in " +"the :mod:`multiprocessing.managers` module:" msgstr "" msgid "Create a BaseManager object." msgstr "" msgid "" -"Once created one should call :meth:`start` or ``get_server()." -"serve_forever()`` to ensure that the manager object refers to a started " -"manager process." +"Once created one should call :meth:`start` or " +"``get_server().serve_forever()`` to ensure that the manager object refers to " +"a started manager process." msgstr "" msgid "" @@ -2200,8 +2218,8 @@ msgstr "" msgid "" "Returns a :class:`Server` object which represents the actual server under " -"the control of the Manager. The :class:`Server` object supports the :meth:" -"`serve_forever` method::" +"the control of the Manager. The :class:`Server` object supports " +"the :meth:`serve_forever` method::" msgstr "" msgid "" @@ -2224,8 +2242,8 @@ msgid "" msgstr "" msgid "" -"Stop the process used by the manager. This is only available if :meth:" -"`start` has been used to start the server process." +"Stop the process used by the manager. This is only available " +"if :meth:`start` has been used to start the server process." msgstr "" msgid "This can be called multiple times." @@ -2256,21 +2274,22 @@ msgstr "" msgid "" "*exposed* is used to specify a sequence of method names which proxies for " -"this typeid should be allowed to access using :meth:`BaseProxy." -"_callmethod`. (If *exposed* is ``None`` then :attr:`proxytype._exposed_` is " -"used instead if it exists.) In the case where no exposed list is specified, " -"all \"public methods\" of the shared object will be accessible. (Here a " -"\"public method\" means any attribute which has a :meth:`~object.__call__` " -"method and whose name does not begin with ``'_'``.)" +"this typeid should be allowed to access " +"using :meth:`BaseProxy._callmethod`. (If *exposed* is ``None`` " +"then :attr:`proxytype._exposed_` is used instead if it exists.) In the case " +"where no exposed list is specified, all \"public methods\" of the shared " +"object will be accessible. (Here a \"public method\" means any attribute " +"which has a :meth:`~object.__call__` method and whose name does not begin " +"with ``'_'``.)" msgstr "" msgid "" "*method_to_typeid* is a mapping used to specify the return type of those " "exposed methods which should return a proxy. It maps method names to typeid " -"strings. (If *method_to_typeid* is ``None`` then :attr:`proxytype." -"_method_to_typeid_` is used instead if it exists.) If a method's name is " -"not a key of this mapping or if the mapping is ``None`` then the object " -"returned by the method will be copied by value." +"strings. (If *method_to_typeid* is ``None`` " +"then :attr:`proxytype._method_to_typeid_` is used instead if it exists.) If " +"a method's name is not a key of this mapping or if the mapping is ``None`` " +"then the object returned by the method will be copied by value." msgstr "" msgid "" @@ -2286,9 +2305,9 @@ msgid "The address used by the manager." msgstr "" msgid "" -"Manager objects support the context management protocol -- see :ref:" -"`typecontextmanager`. :meth:`~contextmanager.__enter__` starts the server " -"process (if it has not already started) and then returns the manager " +"Manager objects support the context management protocol -- " +"see :ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` starts the " +"server process (if it has not already started) and then returns the manager " "object. :meth:`~contextmanager.__exit__` calls :meth:`shutdown`." msgstr "" @@ -2299,8 +2318,8 @@ msgstr "" msgid "" "A subclass of :class:`BaseManager` which can be used for the synchronization " -"of processes. Objects of this type are returned by :func:`multiprocessing." -"Manager`." +"of processes. Objects of this type are returned " +"by :func:`multiprocessing.Manager`." msgstr "" msgid "" @@ -2324,8 +2343,8 @@ msgid "" msgstr "" msgid "" -"If *lock* is supplied then it should be a proxy for a :class:`threading." -"Lock` or :class:`threading.RLock` object." +"If *lock* is supplied then it should be a proxy for " +"a :class:`threading.Lock` or :class:`threading.RLock` object." msgstr "" msgid "" @@ -2549,9 +2568,9 @@ msgstr "" msgid "" "An important feature of proxy objects is that they are picklable so they can " -"be passed between processes. As such, a referent can contain :ref:" -"`multiprocessing-proxy_objects`. This permits nesting of these managed " -"lists, dicts, and other :ref:`multiprocessing-proxy_objects`:" +"be passed between processes. As such, a referent can " +"contain :ref:`multiprocessing-proxy_objects`. This permits nesting of these " +"managed lists, dicts, and other :ref:`multiprocessing-proxy_objects`:" msgstr "" msgid "" @@ -2605,9 +2624,9 @@ msgid "" msgstr "" msgid "" -"This approach is perhaps less convenient than employing nested :ref:" -"`multiprocessing-proxy_objects` for most use cases but also demonstrates a " -"level of control over the synchronization." +"This approach is perhaps less convenient than employing " +"nested :ref:`multiprocessing-proxy_objects` for most use cases but also " +"demonstrates a level of control over the synchronization." msgstr "" msgid "" @@ -2653,10 +2672,10 @@ msgid "" msgstr "" msgid "" -"If an exception is raised by the call, then is re-raised by :meth:" -"`_callmethod`. If some other exception is raised in the manager's process " -"then this is converted into a :exc:`RemoteError` exception and is raised by :" -"meth:`_callmethod`." +"If an exception is raised by the call, then is re-raised " +"by :meth:`_callmethod`. If some other exception is raised in the manager's " +"process then this is converted into a :exc:`RemoteError` exception and is " +"raised by :meth:`_callmethod`." msgstr "" msgid "" @@ -2737,11 +2756,12 @@ msgstr "" msgid "" "*context* can be used to specify the context used for starting the worker " -"processes. Usually a pool is created using the function :func:" -"`multiprocessing.Pool` or the :meth:`Pool` method of a context object. In " -"both cases *context* is set appropriately. If ``None``, calling this " -"function will have the side effect of setting the current global start " -"method if it has not been set already. See the :func:`get_context` function." +"processes. Usually a pool is created using the " +"function :func:`multiprocessing.Pool` or the :meth:`Pool` method of a " +"context object. In both cases *context* is set appropriately. If ``None``, " +"calling this function will have the side effect of setting the current " +"global start method if it has not been set already. See " +"the :func:`get_context` function." msgstr "" msgid "" @@ -2750,10 +2770,10 @@ msgid "" msgstr "" msgid "" -":class:`multiprocessing.pool` objects have internal resources that need to " -"be properly managed (like any other resource) by using the pool as a context " -"manager or by calling :meth:`close` and :meth:`terminate` manually. Failure " -"to do this can lead to the process hanging on finalization." +":class:`~multiprocessing.pool.Pool` objects have internal resources that " +"need to be properly managed (like any other resource) by using the pool as a " +"context manager or by calling :meth:`close` and :meth:`terminate` manually. " +"Failure to do this can lead to the process hanging on finalization." msgstr "" msgid "" @@ -2769,8 +2789,8 @@ msgid "Added the *context* parameter." msgstr "" msgid "" -"*processes* uses :func:`os.process_cpu_count` by default, instead of :func:" -"`os.cpu_count`." +"*processes* uses :func:`os.process_cpu_count` by default, instead " +"of :func:`os.cpu_count`." msgstr "" msgid "" @@ -2791,8 +2811,8 @@ msgid "" msgstr "" msgid "" -"A variant of the :meth:`apply` method which returns a :class:" -"`~multiprocessing.pool.AsyncResult` object." +"A variant of the :meth:`apply` method which returns " +"a :class:`~multiprocessing.pool.AsyncResult` object." msgstr "" msgid "" @@ -2832,11 +2852,11 @@ msgid "" msgstr "" msgid "" -"A variant of the :meth:`.map` method which returns a :class:" -"`~multiprocessing.pool.AsyncResult` object." +"A variant of the :meth:`.map` method which returns " +"a :class:`~multiprocessing.pool.AsyncResult` object." msgstr "" -msgid "A lazier version of :meth:`.map`." +msgid "An iterator-based version of :meth:`.map`." msgstr "" msgid "" @@ -2886,26 +2906,27 @@ msgid "" msgstr "" msgid "" -"Wait for the worker processes to exit. One must call :meth:`close` or :meth:" -"`terminate` before using :meth:`join`." +"Wait for the worker processes to exit. One must call :meth:`close` " +"or :meth:`terminate` before using :meth:`join`." msgstr "" msgid "" -"Pool objects now support the context management protocol -- see :ref:" -"`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the pool " -"object, and :meth:`~contextmanager.__exit__` calls :meth:`terminate`." +"Pool objects now support the context management protocol -- " +"see :ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns " +"the pool object, and :meth:`~contextmanager.__exit__` " +"calls :meth:`terminate`." msgstr "" msgid "" -"The class of the result returned by :meth:`Pool.apply_async` and :meth:`Pool." -"map_async`." +"The class of the result returned by :meth:`Pool.apply_async` " +"and :meth:`Pool.map_async`." msgstr "" msgid "" "Return the result when it arrives. If *timeout* is not ``None`` and the " -"result does not arrive within *timeout* seconds then :exc:`multiprocessing." -"TimeoutError` is raised. If the remote call raised an exception then that " -"exception will be reraised by :meth:`get`." +"result does not arrive within *timeout* seconds " +"then :exc:`multiprocessing.TimeoutError` is raised. If the remote call " +"raised an exception then that exception will be reraised by :meth:`get`." msgstr "" msgid "Wait until the result is available or until *timeout* seconds pass." @@ -2915,13 +2936,13 @@ msgid "Return whether the call has completed." msgstr "" msgid "" -"Return whether the call completed without raising an exception. Will raise :" -"exc:`ValueError` if the result is not ready." +"Return whether the call completed without raising an exception. Will " +"raise :exc:`ValueError` if the result is not ready." msgstr "" msgid "" -"If the result is not ready, :exc:`ValueError` is raised instead of :exc:" -"`AssertionError`." +"If the result is not ready, :exc:`ValueError` is raised instead " +"of :exc:`AssertionError`." msgstr "" msgid "The following example demonstrates the use of a pool::" @@ -2950,16 +2971,16 @@ msgid "" "computer is *very* slow\n" "\n" " result = pool.apply_async(time.sleep, (10,))\n" -" print(result.get(timeout=1)) # raises multiprocessing." -"TimeoutError" +" print(result.get(timeout=1)) # raises " +"multiprocessing.TimeoutError" msgstr "" msgid "Listeners and Clients" msgstr "" msgid "" -"Usually message passing between processes is done using queues or by using :" -"class:`~Connection` objects returned by :func:`~multiprocessing.Pipe`." +"Usually message passing between processes is done using queues or by " +"using :class:`~Connection` objects returned by :func:`~multiprocessing.Pipe`." msgstr "" msgid "" @@ -2987,8 +3008,8 @@ msgid "" msgstr "" msgid "" -"If a welcome message is not received, then :exc:`~multiprocessing." -"AuthenticationError` is raised." +"If a welcome message is not received, " +"then :exc:`~multiprocessing.AuthenticationError` is raised." msgstr "" msgid "" @@ -3005,9 +3026,9 @@ msgstr "" msgid "" "If *authkey* is given and not ``None``, it should be a byte string and will " "be used as the secret key for an HMAC-based authentication challenge. No " -"authentication is done if *authkey* is ``None``. :exc:`~multiprocessing." -"AuthenticationError` is raised if authentication fails. See :ref:" -"`multiprocessing-auth-keys`." +"authentication is done if *authkey* is " +"``None``. :exc:`~multiprocessing.AuthenticationError` is raised if " +"authentication fails. See :ref:`multiprocessing-auth-keys`." msgstr "" msgid "" @@ -3069,9 +3090,10 @@ msgid "" msgstr "" msgid "" -"Listener objects now support the context management protocol -- see :ref:" -"`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the " -"listener object, and :meth:`~contextmanager.__exit__` calls :meth:`close`." +"Listener objects now support the context management protocol -- " +"see :ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns " +"the listener object, and :meth:`~contextmanager.__exit__` " +"calls :meth:`close`." msgstr "" msgid "" @@ -3093,8 +3115,8 @@ msgid "a connected and readable :class:`socket.socket` object; or" msgstr "" msgid "" -"the :attr:`~multiprocessing.Process.sentinel` attribute of a :class:" -"`~multiprocessing.Process` object." +"the :attr:`~multiprocessing.Process.sentinel` attribute of " +"a :class:`~multiprocessing.Process` object." msgstr "" msgid "" @@ -3103,17 +3125,18 @@ msgid "" msgstr "" msgid "" -"**POSIX**: ``wait(object_list, timeout)`` almost equivalent ``select." -"select(object_list, [], [], timeout)``. The difference is that, if :func:" -"`select.select` is interrupted by a signal, it can raise :exc:`OSError` with " -"an error number of ``EINTR``, whereas :func:`wait` will not." +"**POSIX**: ``wait(object_list, timeout)`` almost equivalent " +"``select.select(object_list, [], [], timeout)``. The difference is that, " +"if :func:`select.select` is interrupted by a signal, it can " +"raise :exc:`OSError` with an error number of ``EINTR``, whereas :func:`wait` " +"will not." msgstr "" msgid "" "**Windows**: An item in *object_list* must either be an integer handle which " "is waitable (according to the definition used by the documentation of the " -"Win32 function ``WaitForMultipleObjects()``) or it can be an object with a :" -"meth:`~io.IOBase.fileno` method which returns a socket handle or pipe " +"Win32 function ``WaitForMultipleObjects()``) or it can be an object with " +"a :meth:`~io.IOBase.fileno` method which returns a socket handle or pipe " "handle. (Note that pipe handles and socket handles are **not** waitable " "handles.)" msgstr "" @@ -3248,17 +3271,17 @@ msgstr "" msgid "" "If authentication is requested but no authentication key is specified then " -"the return value of ``current_process().authkey`` is used (see :class:" -"`~multiprocessing.Process`). This value will be automatically inherited by " -"any :class:`~multiprocessing.Process` object that the current process " -"creates. This means that (by default) all processes of a multi-process " -"program will share a single authentication key which can be used when " -"setting up connections between themselves." +"the return value of ``current_process().authkey`` is used " +"(see :class:`~multiprocessing.Process`). This value will be automatically " +"inherited by any :class:`~multiprocessing.Process` object that the current " +"process creates. This means that (by default) all processes of a multi-" +"process program will share a single authentication key which can be used " +"when setting up connections between themselves." msgstr "" msgid "" -"Suitable authentication keys can also be generated by using :func:`os." -"urandom`." +"Suitable authentication keys can also be generated by " +"using :func:`os.urandom`." msgstr "" msgid "" @@ -3277,10 +3300,10 @@ msgid "Logging" msgstr "" msgid "" -"Some support for logging is available. Note, however, that the :mod:" -"`logging` package does not use process shared locks so it is possible " -"(depending on the handler type) for messages from different processes to get " -"mixed up." +"Some support for logging is available. Note, however, that " +"the :mod:`logging` package does not use process shared locks so it is " +"possible (depending on the handler type) for messages from different " +"processes to get mixed up." msgstr "" msgid "" @@ -3338,10 +3361,10 @@ msgid "" msgstr "" msgid "" -"In particular, the ``Pool`` function provided by :mod:`!multiprocessing." -"dummy` returns an instance of :class:`ThreadPool`, which is a subclass of :" -"class:`Pool` that supports all the same method calls but uses a pool of " -"worker threads rather than worker processes." +"In particular, the ``Pool`` function provided by :mod:`!" +"multiprocessing.dummy` returns an instance of :class:`ThreadPool`, which is " +"a subclass of :class:`Pool` that supports all the same method calls but uses " +"a pool of worker threads rather than worker processes." msgstr "" msgid "" @@ -3349,8 +3372,8 @@ msgid "" "can be submitted. :class:`ThreadPool` instances are fully interface " "compatible with :class:`Pool` instances, and their resources must also be " "properly managed, either by using the pool as a context manager or by " -"calling :meth:`~multiprocessing.pool.Pool.close` and :meth:`~multiprocessing." -"pool.Pool.terminate` manually." +"calling :meth:`~multiprocessing.pool.Pool.close` " +"and :meth:`~multiprocessing.pool.Pool.terminate` manually." msgstr "" msgid "" @@ -3364,19 +3387,19 @@ msgstr "" msgid "" "A :class:`ThreadPool` shares the same interface as :class:`Pool`, which is " -"designed around a pool of processes and predates the introduction of the :" -"class:`concurrent.futures` module. As such, it inherits some operations " -"that don't make sense for a pool backed by threads, and it has its own type " -"for representing the status of asynchronous jobs, :class:`AsyncResult`, that " -"is not understood by any other libraries." +"designed around a pool of processes and predates the introduction of " +"the :class:`concurrent.futures` module. As such, it inherits some " +"operations that don't make sense for a pool backed by threads, and it has " +"its own type for representing the status of asynchronous " +"jobs, :class:`AsyncResult`, that is not understood by any other libraries." msgstr "" msgid "" -"Users should generally prefer to use :class:`concurrent.futures." -"ThreadPoolExecutor`, which has a simpler interface that was designed around " -"threads from the start, and which returns :class:`concurrent.futures.Future` " -"instances that are compatible with many other libraries, including :mod:" -"`asyncio`." +"Users should generally prefer to " +"use :class:`concurrent.futures.ThreadPoolExecutor`, which has a simpler " +"interface that was designed around threads from the start, and which " +"returns :class:`concurrent.futures.Future` instances that are compatible " +"with many other libraries, including :mod:`asyncio`." msgstr "" msgid "Programming guidelines" @@ -3433,9 +3456,9 @@ msgid "" "zombie. There should never be very many because each time a new process " "starts (or :func:`~multiprocessing.active_children` is called) all completed " "processes which have not yet been joined will be joined. Also calling a " -"finished process's :meth:`Process.is_alive ` will join the process. Even so it is probably good practice to " -"explicitly join all the processes that you start." +"finished process's :meth:`Process.is_alive " +"` will join the process. Even so it is " +"probably good practice to explicitly join all the processes that you start." msgstr "" msgid "Better to inherit than pickle/unpickle" @@ -3461,9 +3484,9 @@ msgid "" msgstr "" msgid "" -"Therefore it is probably best to only consider using :meth:`Process." -"terminate ` on processes which never use " -"any shared resources." +"Therefore it is probably best to only consider " +"using :meth:`Process.terminate ` on " +"processes which never use any shared resources." msgstr "" msgid "Joining processes that use queues" @@ -3472,9 +3495,10 @@ msgstr "" msgid "" "Bear in mind that a process that has put items in a queue will wait before " "terminating until all the buffered items are fed by the \"feeder\" thread to " -"the underlying pipe. (The child process can call the :meth:`Queue." -"cancel_join_thread ` method of the " -"queue to avoid this behaviour.)" +"the underlying pipe. (The child process can call " +"the :meth:`Queue.cancel_join_thread " +"` method of the queue to avoid " +"this behaviour.)" msgstr "" msgid "" @@ -3503,8 +3527,8 @@ msgid "" msgstr "" msgid "" -"A fix here would be to swap the last two lines (or simply remove the ``p." -"join()`` line)." +"A fix here would be to swap the last two lines (or simply remove the " +"``p.join()`` line)." msgstr "" msgid "Explicitly pass resources to child processes" @@ -3578,9 +3602,10 @@ msgid "" "Which solves the fundamental issue of processes colliding with each other " "resulting in a bad file descriptor error, but introduces a potential danger " "to applications which replace :func:`sys.stdin` with a \"file-like object\" " -"with output buffering. This danger is that if multiple processes call :meth:" -"`~io.IOBase.close` on this file-like object, it could result in the same " -"data being flushed to the object multiple times, resulting in corruption." +"with output buffering. This danger is that if multiple processes " +"call :meth:`~io.IOBase.close` on this file-like object, it could result in " +"the same data being flushed to the object multiple times, resulting in " +"corruption." msgstr "" msgid "" @@ -3627,8 +3652,8 @@ msgstr "" msgid "" "Bear in mind that if code run in a child process tries to access a global " "variable, then the value it sees (if any) may not be the same as the value " -"in the parent process at the time that :meth:`Process.start ` was called." +"in the parent process at the time that :meth:`Process.start " +"` was called." msgstr "" msgid "" @@ -3896,8 +3921,8 @@ msgid "" " try:\n" " print(list(pool.imap(f, list(range(10)))))\n" " except ZeroDivisionError:\n" -" print('\\tGot ZeroDivisionError as expected from list(pool." -"imap())')\n" +" print('\\tGot ZeroDivisionError as expected from " +"list(pool.imap())')\n" " else:\n" " raise AssertionError('expected ZeroDivisionError')\n" "\n" @@ -3915,8 +3940,8 @@ msgid "" " raise AssertionError('expected ZeroDivisionError')\n" "\n" " assert i == 9\n" -" print('\\tGot ZeroDivisionError as expected from IMapIterator." -"next()')\n" +" print('\\tGot ZeroDivisionError as expected from " +"IMapIterator.next()')\n" " print()\n" "\n" " #\n" diff --git a/library/multiprocessing.shared_memory.po b/library/multiprocessing.shared_memory.po index 8b67462..e9fafda 100644 --- a/library/multiprocessing.shared_memory.po +++ b/library/multiprocessing.shared_memory.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,9 +35,9 @@ msgid "" "management of shared memory to be accessed by one or more processes on a " "multicore or symmetric multiprocessor (SMP) machine. To assist with the " "life-cycle management of shared memory especially across distinct processes, " -"a :class:`~multiprocessing.managers.BaseManager` subclass, :class:" -"`~multiprocessing.managers.SharedMemoryManager`, is also provided in the :" -"mod:`multiprocessing.managers` module." +"a :class:`~multiprocessing.managers.BaseManager` " +"subclass, :class:`~multiprocessing.managers.SharedMemoryManager`, is also " +"provided in the :mod:`multiprocessing.managers` module." msgstr "" msgid "" @@ -115,19 +115,21 @@ msgid "Added the *track* parameter." msgstr "" msgid "" -"Close the file descriptor/handle to the shared memory from this instance. :" -"meth:`close` should be called once access to the shared memory block from " -"this instance is no longer needed. Depending on operating system, the " -"underlying memory may or may not be freed even if all handles to it have " -"been closed. To ensure proper cleanup, use the :meth:`unlink` method." +"Close the file descriptor/handle to the shared memory from this " +"instance. :meth:`close` should be called once access to the shared memory " +"block from this instance is no longer needed. Depending on operating " +"system, the underlying memory may or may not be freed even if all handles to " +"it have been closed. To ensure proper cleanup, use the :meth:`unlink` " +"method." msgstr "" msgid "" "Delete the underlying shared memory block. This should be called only once " "per shared memory block regardless of the number of handles to it, even in " "other processes. :meth:`unlink` and :meth:`close` can be called in any " -"order, but trying to access data inside a shared memory block after :meth:" -"`unlink` may result in memory access errors, depending on platform." +"order, but trying to access data inside a shared memory block " +"after :meth:`unlink` may result in memory access errors, depending on " +"platform." msgstr "" msgid "" @@ -174,9 +176,9 @@ msgid "" msgstr "" msgid "" -"The following example demonstrates a practical use of the :class:" -"`SharedMemory` class with `NumPy arrays `_, accessing " -"the same :class:`!numpy.ndarray` from two distinct Python shells:" +"The following example demonstrates a practical use of " +"the :class:`SharedMemory` class with `NumPy arrays `_, " +"accessing the same :class:`!numpy.ndarray` from two distinct Python shells:" msgstr "" msgid "" @@ -234,19 +236,22 @@ msgid "" "SharedMemoryManager` instance causes a new process to be started. This new " "process's sole purpose is to manage the life cycle of all shared memory " "blocks created through it. To trigger the release of all shared memory " -"blocks managed by that process, call :meth:`~multiprocessing.managers." -"BaseManager.shutdown` on the instance. This triggers a :meth:" -"`~multiprocessing.shared_memory.SharedMemory.unlink` call on all of the :" -"class:`SharedMemory` objects managed by that process and then stops the " -"process itself. By creating :class:`!SharedMemory` instances through a :" -"class:`!SharedMemoryManager`, we avoid the need to manually track and " -"trigger the freeing of shared memory resources." +"blocks managed by that process, " +"call :meth:`~multiprocessing.managers.BaseManager.shutdown` on the instance. " +"This triggers a :meth:`~multiprocessing.shared_memory.SharedMemory.unlink` " +"call on all of the :class:`~multiprocessing.shared_memory.SharedMemory` " +"objects managed by that process and then stops the process itself. By " +"creating :class:`!SharedMemory` instances through a :class:`!" +"SharedMemoryManager`, we avoid the need to manually track and trigger the " +"freeing of shared memory resources." msgstr "" msgid "" -"This class provides methods for creating and returning :class:`SharedMemory` " -"instances and for creating a list-like object (:class:`ShareableList`) " -"backed by shared memory." +"This class provides methods for creating and " +"returning :class:`~multiprocessing.shared_memory.SharedMemory` instances and " +"for creating a list-like object " +"(:class:`~multiprocessing.shared_memory.ShareableList`) backed by shared " +"memory." msgstr "" msgid "" @@ -257,18 +262,19 @@ msgid "" msgstr "" msgid "" -"Create and return a new :class:`SharedMemory` object with the specified " -"*size* in bytes." +"Create and return a new :class:`~multiprocessing.shared_memory.SharedMemory` " +"object with the specified *size* in bytes." msgstr "" msgid "" -"Create and return a new :class:`ShareableList` object, initialized by the " -"values from the input *sequence*." +"Create and return a " +"new :class:`~multiprocessing.shared_memory.ShareableList` object, " +"initialized by the values from the input *sequence*." msgstr "" msgid "" -"The following example demonstrates the basic mechanisms of a :class:" -"`~multiprocessing.managers.SharedMemoryManager`:" +"The following example demonstrates the basic mechanisms of " +"a :class:`~multiprocessing.managers.SharedMemoryManager`:" msgstr "" msgid "" @@ -307,8 +313,8 @@ msgid "" msgstr "" msgid "" -"When using a :class:`~multiprocessing.managers.SharedMemoryManager` in a :" -"keyword:`with` statement, the shared memory blocks created using that " +"When using a :class:`~multiprocessing.managers.SharedMemoryManager` in " +"a :keyword:`with` statement, the shared memory blocks created using that " "manager are all released when the :keyword:`!with` statement's code block " "finishes execution." msgstr "" @@ -352,16 +358,16 @@ msgstr "" msgid "" "*name* is the unique name for the requested shared memory, as described in " -"the definition for :class:`SharedMemory`. When attaching to an existing :" -"class:`!ShareableList`, specify its shared memory block's unique name while " -"leaving *sequence* set to ``None``." +"the definition for :class:`SharedMemory`. When attaching to an " +"existing :class:`!ShareableList`, specify its shared memory block's unique " +"name while leaving *sequence* set to ``None``." msgstr "" msgid "" "A known issue exists for :class:`bytes` and :class:`str` values. If they end " "with ``\\x00`` nul bytes or characters, those may be *silently stripped* " -"when fetching them by index from the :class:`!ShareableList`. This ``." -"rstrip(b'\\x00')`` behavior is considered a bug and may go away in the " +"when fetching them by index from the :class:`!ShareableList`. This " +"``.rstrip(b'\\x00')`` behavior is considered a bug and may go away in the " "future. See :gh:`106939`." msgstr "" diff --git a/library/netdata.po b/library/netdata.po index 27790d8..990e555 100644 --- a/library/netdata.po +++ b/library/netdata.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/netrc.po b/library/netrc.po index 1bd0ddb..58dd017 100644 --- a/library/netrc.po +++ b/library/netrc.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -53,17 +57,17 @@ msgid "Added the POSIX permission check." msgstr "" msgid "" -":func:`os.path.expanduser` is used to find the location of the :file:`." -"netrc` file when *file* is not passed as argument." +":func:`os.path.expanduser` is used to find the location of " +"the :file:`.netrc` file when *file* is not passed as argument." msgstr "" msgid "" -":class:`netrc` try UTF-8 encoding before using locale specific encoding. The " -"entry in the netrc file no longer needs to contain all tokens. The missing " -"tokens' value default to an empty string. All the tokens and their values " -"now can contain arbitrary characters, like whitespace and non-ASCII " -"characters. If the login name is anonymous, it won't trigger the security " -"check." +":class:`~netrc.netrc` try UTF-8 encoding before using locale specific " +"encoding. The entry in the netrc file no longer needs to contain all " +"tokens. The missing tokens' value default to an empty string. All the " +"tokens and their values now can contain arbitrary characters, like " +"whitespace and non-ASCII characters. If the login name is anonymous, it " +"won't trigger the security check." msgstr "" msgid "" diff --git a/library/nis.po b/library/nis.po index 055ad44..a17252e 100644 --- a/library/nis.po +++ b/library/nis.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!nis` --- Interface to Sun’s NIS (Yellow Pages)" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/nntplib.po b/library/nntplib.po index 4024b7b..068361b 100644 --- a/library/nntplib.po +++ b/library/nntplib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!nntplib` --- NNTP protocol client" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/numbers.po b/library/numbers.po index 09f8721..4d4174f 100644 --- a/library/numbers.po +++ b/library/numbers.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,10 +25,10 @@ msgid "**Source code:** :source:`Lib/numbers.py`" msgstr "" msgid "" -"The :mod:`!numbers` module (:pep:`3141`) defines a hierarchy of numeric :" -"term:`abstract base classes ` which progressively " -"define more operations. None of the types defined in this module are " -"intended to be instantiated." +"The :mod:`!numbers` module (:pep:`3141`) defines a hierarchy of " +"numeric :term:`abstract base classes ` which " +"progressively define more operations. None of the types defined in this " +"module are intended to be instantiated." msgstr "" msgid "" @@ -41,9 +41,9 @@ msgstr "" msgid "" "Subclasses of this type describe complex numbers and include the operations " -"that work on the built-in :class:`complex` type. These are: conversions to :" -"class:`complex` and :class:`bool`, :attr:`.real`, :attr:`.imag`, ``+``, ``-" -"``, ``*``, ``/``, ``**``, :func:`abs`, :meth:`conjugate`, ``==``, and ``!" +"that work on the built-in :class:`complex` type. These are: conversions " +"to :class:`complex` and :class:`bool`, :attr:`.real`, :attr:`.imag`, ``+``, " +"``-``, ``*``, ``/``, ``**``, :func:`abs`, :meth:`conjugate`, ``==``, and ``!" "=``. All except ``-`` and ``!=`` are abstract." msgstr "" @@ -64,26 +64,27 @@ msgid "" msgstr "" msgid "" -"In short, those are: a conversion to :class:`float`, :func:`math.trunc`, :" -"func:`round`, :func:`math.floor`, :func:`math.ceil`, :func:`divmod`, ``//``, " -"``%``, ``<``, ``<=``, ``>``, and ``>=``." +"In short, those are: a conversion " +"to :class:`float`, :func:`math.trunc`, :func:`round`, :func:`math.floor`, :func:`math.ceil`, :func:`divmod`, " +"``//``, ``%``, ``<``, ``<=``, ``>``, and ``>=``." msgstr "" msgid "" -"Real also provides defaults for :func:`complex`, :attr:`~Complex.real`, :" -"attr:`~Complex.imag`, and :meth:`~Complex.conjugate`." +"Real also provides defaults " +"for :func:`complex`, :attr:`~Complex.real`, :attr:`~Complex.imag`, " +"and :meth:`~Complex.conjugate`." msgstr "" msgid "" -"Subtypes :class:`Real` and adds :attr:`~Rational.numerator` and :attr:" -"`~Rational.denominator` properties. It also provides a default for :func:" -"`float`." +"Subtypes :class:`Real` and adds :attr:`~Rational.numerator` " +"and :attr:`~Rational.denominator` properties. It also provides a default " +"for :func:`float`." msgstr "" msgid "" "The :attr:`~Rational.numerator` and :attr:`~Rational.denominator` values " -"should be instances of :class:`Integral` and should be in lowest terms with :" -"attr:`~Rational.denominator` positive." +"should be instances of :class:`Integral` and should be in lowest terms " +"with :attr:`~Rational.denominator` positive." msgstr "" msgid "Abstract. The numerator of this rational number." @@ -94,9 +95,10 @@ msgstr "" msgid "" "Subtypes :class:`Rational` and adds a conversion to :class:`int`. Provides " -"defaults for :func:`float`, :attr:`~Rational.numerator`, and :attr:" -"`~Rational.denominator`. Adds abstract methods for :func:`pow` with modulus " -"and bit-string operations: ``<<``, ``>>``, ``&``, ``^``, ``|``, ``~``." +"defaults for :func:`float`, :attr:`~Rational.numerator`, " +"and :attr:`~Rational.denominator`. Adds abstract methods for :func:`pow` " +"with modulus and bit-string operations: ``<<``, ``>>``, ``&``, ``^``, ``|``, " +"``~``." msgstr "" msgid "Notes for type implementers" @@ -108,7 +110,7 @@ msgid "" "the real numbers. See also :ref:`numeric-hash`." msgstr "" -msgid "Adding More Numeric ABCs" +msgid "Adding more numeric ABCs" msgstr "" msgid "" @@ -129,8 +131,9 @@ msgid "" "We want to implement the arithmetic operations so that mixed-mode operations " "either call an implementation whose author knew about the types of both " "arguments, or convert both to the nearest built in type and do the operation " -"there. For subtypes of :class:`Integral`, this means that :meth:`~object." -"__add__` and :meth:`~object.__radd__` should be defined as::" +"there. For subtypes of :class:`Integral`, this means " +"that :meth:`~object.__add__` and :meth:`~object.__radd__` should be defined " +"as::" msgstr "" msgid "" @@ -160,11 +163,15 @@ msgid "" msgstr "" msgid "" -"There are 5 different cases for a mixed-type operation on subclasses of :" -"class:`Complex`. I'll refer to all of the above code that doesn't refer to " -"``MyIntegral`` and ``OtherTypeIKnowAbout`` as \"boilerplate\". ``a`` will be " -"an instance of ``A``, which is a subtype of :class:`Complex` (``a : A <: " -"Complex``), and ``b : B <: Complex``. I'll consider ``a + b``:" +"There are 5 different cases for a mixed-type operation on subclasses " +"of :class:`Complex`. All of the above code that doesn't refer to " +"``MyIntegral`` and ``OtherTypeIKnowAbout`` is referred to as \"boilerplate\"." +msgstr "" + +msgid "" +"In this description, ``a`` is an instance of ``A`` and ``b`` is an instance " +"of ``B``, where ``A`` and ``B`` are both subtypes of :class:`Complex`. " +"Consider ``a + b``:" msgstr "" msgid "" @@ -174,9 +181,9 @@ msgstr "" msgid "" "If ``A`` falls back to the boilerplate code, and it were to return a value " "from :meth:`~object.__add__`, we'd miss the possibility that ``B`` defines a " -"more intelligent :meth:`~object.__radd__`, so the boilerplate should return :" -"data:`NotImplemented` from :meth:`!__add__`. (Or ``A`` may not implement :" -"meth:`!__add__` at all.)" +"more intelligent :meth:`~object.__radd__`, so the boilerplate should " +"return :data:`NotImplemented` from :meth:`!__add__`. (Or ``A`` may not " +"implement :meth:`!__add__` at all.)" msgstr "" msgid "" @@ -190,23 +197,24 @@ msgid "" msgstr "" msgid "" -"If ``B <: A``, Python tries ``B.__radd__`` before ``A.__add__``. This is ok, " -"because it was implemented with knowledge of ``A``, so it can handle those " -"instances before delegating to :class:`Complex`." +"If ``B`` is a subtype of ``A``, Python tries ``B.__radd__`` before " +"``A.__add__``. This is ok, because it was implemented with knowledge of " +"``A``, so it can handle those instances before delegating " +"to :class:`Complex`." msgstr "" msgid "" -"If ``A <: Complex`` and ``B <: Real`` without sharing any other knowledge, " -"then the appropriate shared operation is the one involving the built in :" -"class:`complex`, and both :meth:`~object.__radd__` s land there, so ``a+b == " -"b+a``." +"If ``A`` is a subtype of :class:`Complex` and ``B`` is a subtype " +"of :class:`Real` without sharing any other knowledge, then the appropriate " +"shared operation is the one involving the built in :class:`complex`, and " +"both :meth:`~object.__radd__` s land there, so ``a+b == b+a``." msgstr "" msgid "" "Because most of the operations on any given type will be very similar, it " "can be useful to define a helper function which generates the forward and " -"reverse instances of any given operator. For example, :class:`fractions." -"Fraction` uses::" +"reverse instances of any given operator. For " +"example, :class:`fractions.Fraction` uses::" msgstr "" msgid "" diff --git a/library/numeric.po b/library/numeric.po index 085f5d9..9423368 100644 --- a/library/numeric.po +++ b/library/numeric.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,8 +29,8 @@ msgid "" "The modules described in this chapter provide numeric and math-related " "functions and data types. The :mod:`numbers` module defines an abstract " "hierarchy of numeric types. The :mod:`math` and :mod:`cmath` modules contain " -"various mathematical functions for floating-point and complex numbers. The :" -"mod:`decimal` module supports exact representations of decimal numbers, " +"various mathematical functions for floating-point and complex numbers. " +"The :mod:`decimal` module supports exact representations of decimal numbers, " "using arbitrary precision arithmetic." msgstr "" diff --git a/library/operator.po b/library/operator.po index 3b3c36f..fdf9378 100644 --- a/library/operator.po +++ b/library/operator.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,12 +30,12 @@ msgstr "" msgid "" "The :mod:`!operator` module exports a set of efficient functions " -"corresponding to the intrinsic operators of Python. For example, ``operator." -"add(x, y)`` is equivalent to the expression ``x+y``. Many function names are " -"those used for special methods, without the double underscores. For " -"backward compatibility, many of these have a variant with the double " -"underscores kept. The variants without the double underscores are preferred " -"for clarity." +"corresponding to the intrinsic operators of Python. For example, " +"``operator.add(x, y)`` is equivalent to the expression ``x+y``. Many " +"function names are those used for special methods, without the double " +"underscores. For backward compatibility, many of these have a variant with " +"the double underscores kept. The variants without the double underscores are " +"preferred for clarity." msgstr "" msgid "" @@ -54,8 +54,8 @@ msgid "" "``eq(a, b)`` is equivalent to ``a == b``, ``ne(a, b)`` is equivalent to ``a !" "= b``, ``gt(a, b)`` is equivalent to ``a > b`` and ``ge(a, b)`` is " "equivalent to ``a >= b``. Note that these functions can return any value, " -"which may or may not be interpretable as a Boolean value. See :ref:" -"`comparisons` for more information about rich comparisons." +"which may or may not be interpretable as a Boolean value. " +"See :ref:`comparisons` for more information about rich comparisons." msgstr "" msgid "" @@ -66,8 +66,8 @@ msgstr "" msgid "" "Return the outcome of :keyword:`not` *obj*. (Note that there is no :meth:`!" "__not__` method for object instances; only the interpreter core defines this " -"operation. The result is affected by the :meth:`~object.__bool__` and :meth:" -"`~object.__len__` methods.)" +"operation. The result is affected by the :meth:`~object.__bool__` " +"and :meth:`~object.__len__` methods.)" msgstr "" msgid "" @@ -206,8 +206,8 @@ msgid "After ``f = attrgetter('name')``, the call ``f(b)`` returns ``b.name``." msgstr "" msgid "" -"After ``f = attrgetter('name', 'date')``, the call ``f(b)`` returns ``(b." -"name, b.date)``." +"After ``f = attrgetter('name', 'date')``, the call ``f(b)`` returns " +"``(b.name, b.date)``." msgstr "" msgid "" @@ -264,9 +264,10 @@ msgid "" msgstr "" msgid "" -"The items can be any type accepted by the operand's :meth:`~object." -"__getitem__` method. Dictionaries accept any :term:`hashable` value. " -"Lists, tuples, and strings accept an index or a slice:" +"The items can be any type accepted by the " +"operand's :meth:`~object.__getitem__` method. Dictionaries accept " +"any :term:`hashable` value. Lists, tuples, and strings accept an index or a " +"slice:" msgstr "" msgid "" diff --git a/library/optparse.po b/library/optparse.po index 8f6f385..40169e0 100644 --- a/library/optparse.po +++ b/library/optparse.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,31 +35,26 @@ msgid "The standard library includes three argument parsing libraries:" msgstr "" msgid "" -":mod:`getopt`: a module that closely mirrors the procedural C ``getopt`` " -"API. Included in the standard library since before the initial Python 1.0 " -"release." +":mod:`getopt`: a module that closely mirrors the procedural C ``getopt`` API." msgstr "" msgid "" ":mod:`!optparse`: a declarative replacement for ``getopt`` that provides " "equivalent functionality without requiring each application to implement its " -"own procedural option parsing logic. Included in the standard library since " -"the Python 2.3 release." +"own procedural option parsing logic." msgstr "" msgid "" ":mod:`argparse`: a more opinionated alternative to ``optparse`` that " "provides more functionality by default, at the expense of reduced " -"application flexibility in controlling exactly how arguments are processed. " -"Included in the standard library since the Python 2.7 and Python 3.2 " -"releases." +"application flexibility in controlling exactly how arguments are processed." msgstr "" msgid "" -"In the absence of more specific argument parsing design constraints, :mod:" -"`argparse` is the recommended choice for implementing command line " -"applications, as it offers the highest level of baseline functionality with " -"the least application level code." +"In the absence of more specific argument parsing design " +"constraints, :mod:`argparse` is the recommended choice for implementing " +"command line applications, as it offers the highest level of baseline " +"functionality with the least application level code." msgstr "" msgid "" @@ -76,8 +71,8 @@ msgstr "" msgid "" "an application is already using :mod:`!optparse` and doesn't want to risk " -"the subtle behavioural changes that may arise when migrating to :mod:" -"`argparse`" +"the subtle behavioural changes that may arise when migrating " +"to :mod:`argparse`" msgstr "" msgid "" @@ -196,12 +191,12 @@ msgstr "" msgid "" ":mod:`!optparse` is a more convenient, flexible, and powerful library for " -"parsing command-line options than the minimalist :mod:`getopt` module. :mod:" -"`!optparse` uses a more declarative style of command-line parsing: you " -"create an instance of :class:`OptionParser`, populate it with options, and " -"parse the command line. :mod:`!optparse` allows users to specify options in " -"the conventional GNU/POSIX syntax, and additionally generates usage and help " -"messages for you." +"parsing command-line options than the minimalist :mod:`getopt` " +"module. :mod:`!optparse` uses a more declarative style of command-line " +"parsing: you create an instance of :class:`OptionParser`, populate it with " +"options, and parse the command line. :mod:`!optparse` allows users to " +"specify options in the conventional GNU/POSIX syntax, and additionally " +"generates usage and help messages for you." msgstr "" msgid "Here's an example of using :mod:`!optparse` in a simple script::" @@ -300,10 +295,10 @@ msgid "" msgstr "" msgid "" -"It is occasionally desirable to substitute an argument list other than ``sys." -"argv[1:]``, so you should read \"argument\" as \"an element of ``sys." -"argv[1:]``, or of some other list provided as a substitute for ``sys." -"argv[1:]``\"." +"It is occasionally desirable to substitute an argument list other than " +"``sys.argv[1:]``, so you should read \"argument\" as \"an element of " +"``sys.argv[1:]``, or of some other list provided as a substitute for " +"``sys.argv[1:]``\"." msgstr "" msgid "option" @@ -312,10 +307,10 @@ msgstr "" msgid "" "an argument used to supply extra information to guide or customize the " "execution of a program. There are many different syntaxes for options; the " -"traditional Unix syntax is a hyphen (\"-\") followed by a single letter, e." -"g. ``-x`` or ``-F``. Also, traditional Unix syntax allows multiple options " -"to be merged into a single argument, e.g. ``-x -F`` is equivalent to ``-" -"xF``. The GNU project introduced ``--`` followed by a series of hyphen-" +"traditional Unix syntax is a hyphen (\"-\") followed by a single letter, " +"e.g. ``-x`` or ``-F``. Also, traditional Unix syntax allows multiple " +"options to be merged into a single argument, e.g. ``-x -F`` is equivalent to " +"``-xF``. The GNU project introduced ``--`` followed by a series of hyphen-" "separated words, e.g. ``--file`` or ``--dry-run``. These are the only two " "option syntaxes provided by :mod:`!optparse`." msgstr "" @@ -552,9 +547,9 @@ msgid "(options, args) = parser.parse_args()" msgstr "" msgid "" -"(If you like, you can pass a custom argument list to :meth:`~OptionParser." -"parse_args`, but that's rarely necessary: by default it uses ``sys." -"argv[1:]``.)" +"(If you like, you can pass a custom argument list " +"to :meth:`~OptionParser.parse_args`, but that's rarely necessary: by default " +"it uses ``sys.argv[1:]``.)" msgstr "" msgid ":meth:`~OptionParser.parse_args` returns two values:" @@ -573,9 +568,9 @@ msgstr "" msgid "" "This tutorial section only covers the four most important option " -"attributes: :attr:`~Option.action`, :attr:`~Option.type`, :attr:`~Option." -"dest` (destination), and :attr:`~Option.help`. Of these, :attr:`~Option." -"action` is the most fundamental." +"attributes: :attr:`~Option.action`, :attr:`~Option.type`, :attr:`~Option.dest` " +"(destination), and :attr:`~Option.help`. Of these, :attr:`~Option.action` is " +"the most fundamental." msgstr "" msgid "Understanding option actions" @@ -584,10 +579,10 @@ msgstr "" msgid "" "Actions tell :mod:`!optparse` what to do when it encounters an option on the " "command line. There is a fixed set of actions hard-coded into :mod:`!" -"optparse`; adding new actions is an advanced topic covered in section :ref:" -"`optparse-extending-optparse`. Most actions tell :mod:`!optparse` to store " -"a value in some variable---for example, take a string from the command line " -"and store it in an attribute of ``options``." +"optparse`; adding new actions is an advanced topic covered in " +"section :ref:`optparse-extending-optparse`. Most actions tell :mod:`!" +"optparse` to store a value in some variable---for example, take a string " +"from the command line and store it in an attribute of ``options``." msgstr "" msgid "" @@ -700,8 +695,8 @@ msgstr "" msgid "" "When :mod:`!optparse` encounters ``-v`` on the command line, it sets " -"``options.verbose`` to ``True``; when it encounters ``-q``, ``options." -"verbose`` is set to ``False``." +"``options.verbose`` to ``True``; when it encounters ``-q``, " +"``options.verbose`` is set to ``False``." msgstr "" msgid "Other actions" @@ -735,8 +730,8 @@ msgid "call a specified function" msgstr "" msgid "" -"These are covered in section :ref:`optparse-reference-guide`, and section :" -"ref:`optparse-option-callbacks`." +"These are covered in section :ref:`optparse-reference-guide`, and " +"section :ref:`optparse-option-callbacks`." msgstr "" msgid "Default values" @@ -791,8 +786,8 @@ msgstr "" msgid "" "A clearer way to specify default values is the :meth:`set_defaults` method " -"of OptionParser, which you can call at any time before calling :meth:" -"`~OptionParser.parse_args`::" +"of OptionParser, which you can call at any time before " +"calling :meth:`~OptionParser.parse_args`::" msgstr "" msgid "" @@ -950,19 +945,20 @@ msgid "description, optional, is a long description of the group" msgstr "" msgid "" -":class:`OptionGroup` inherits from :class:`OptionContainer` (like :class:" -"`OptionParser`) and so the :meth:`add_option` method can be used to add an " -"option to the group." +":class:`OptionGroup` inherits from :class:`OptionContainer` " +"(like :class:`OptionParser`) and so the :meth:`add_option` method can be " +"used to add an option to the group." msgstr "" msgid "" -"Once all the options are declared, using the :class:`OptionParser` method :" -"meth:`add_option_group` the group is added to the previously defined parser." +"Once all the options are declared, using the :class:`OptionParser` " +"method :meth:`add_option_group` the group is added to the previously defined " +"parser." msgstr "" msgid "" -"Continuing with the parser defined in the previous section, adding an :class:" -"`OptionGroup` to a parser is easy::" +"Continuing with the parser defined in the previous section, adding " +"an :class:`OptionGroup` to a parser is easy::" msgstr "" msgid "" @@ -1051,8 +1047,8 @@ msgstr "" msgid "" "Return the :class:`OptionGroup` to which the short or long option string " -"*opt_str* (e.g. ``'-o'`` or ``'--option'``) belongs. If there's no such :" -"class:`OptionGroup`, return ``None``." +"*opt_str* (e.g. ``'-o'`` or ``'--option'``) belongs. If there's no " +"such :class:`OptionGroup`, return ``None``." msgstr "" msgid "Printing a version string" @@ -1108,8 +1104,9 @@ msgid "" "about: programmer errors and user errors. Programmer errors are usually " "erroneous calls to :func:`OptionParser.add_option`, e.g. invalid option " "strings, unknown option attributes, missing option attributes, etc. These " -"are dealt with in the usual way: raise an exception (either :exc:`optparse." -"OptionError` or :exc:`TypeError`) and let the program crash." +"are dealt with in the usual way: raise an exception " +"(either :exc:`optparse.OptionError` or :exc:`TypeError`) and let the program " +"crash." msgstr "" msgid "" @@ -1159,14 +1156,14 @@ msgstr "" msgid "" ":mod:`!optparse`\\ -generated error messages take care always to mention the " -"option involved in the error; be sure to do the same when calling :func:" -"`OptionParser.error` from your application code." +"option involved in the error; be sure to do the same when " +"calling :func:`OptionParser.error` from your application code." msgstr "" msgid "" "If :mod:`!optparse`'s default error-handling behaviour does not suit your " -"needs, you'll need to subclass OptionParser and override its :meth:" -"`~OptionParser.exit` and/or :meth:`~OptionParser.error` methods." +"needs, you'll need to subclass OptionParser and override " +"its :meth:`~OptionParser.exit` and/or :meth:`~OptionParser.error` methods." msgstr "" msgid "Putting it all together" @@ -1308,8 +1305,9 @@ msgstr "" msgid "" "There are several ways to populate the parser with options. The preferred " -"way is by using :meth:`OptionParser.add_option`, as shown in section :ref:" -"`optparse-tutorial`. :meth:`add_option` can be called in one of two ways:" +"way is by using :meth:`OptionParser.add_option`, as shown in " +"section :ref:`optparse-tutorial`. :meth:`add_option` can be called in one " +"of two ways:" msgstr "" msgid "pass it an Option instance (as returned by :func:`make_option`)" @@ -1338,10 +1336,10 @@ msgstr "" msgid "" "(:func:`make_option` is a factory function for creating Option instances; " -"currently it is an alias for the Option constructor. A future version of :" -"mod:`!optparse` may split Option into several classes, and :func:" -"`make_option` will pick the right class to instantiate. Do not instantiate " -"Option directly.)" +"currently it is an alias for the Option constructor. A future version " +"of :mod:`!optparse` may split Option into several classes, " +"and :func:`make_option` will pick the right class to instantiate. Do not " +"instantiate Option directly.)" msgstr "" msgid "Defining options" @@ -1354,8 +1352,8 @@ msgid "" msgstr "" msgid "" -"The canonical way to create an :class:`Option` instance is with the :meth:" -"`add_option` method of :class:`OptionParser`." +"The canonical way to create an :class:`Option` instance is with " +"the :meth:`add_option` method of :class:`OptionParser`." msgstr "" msgid "To define an option with only a short option string::" @@ -1422,16 +1420,17 @@ msgid "" msgstr "" msgid "" -"As you can see, most actions involve storing or updating a value somewhere. :" -"mod:`!optparse` always creates a special object for this, conventionally " -"called ``options``, which is an instance of :class:`optparse.Values`." +"As you can see, most actions involve storing or updating a value " +"somewhere. :mod:`!optparse` always creates a special object for this, " +"conventionally called ``options``, which is an instance " +"of :class:`optparse.Values`." msgstr "" msgid "" "An object holding parsed argument names and values as attributes. Normally " "created by calling when calling :meth:`OptionParser.parse_args`, and can be " -"overridden by a custom subclass passed to the *values* argument of :meth:" -"`OptionParser.parse_args` (as described in :ref:`optparse-parsing-" +"overridden by a custom subclass passed to the *values* argument " +"of :meth:`OptionParser.parse_args` (as described in :ref:`optparse-parsing-" "arguments`)." msgstr "" @@ -1496,9 +1495,9 @@ msgid "" msgstr "" msgid "" -"The following option attributes may be passed as keyword arguments to :meth:" -"`OptionParser.add_option`. If you pass an option attribute that is not " -"relevant to a particular option, or fail to pass a required option " +"The following option attributes may be passed as keyword arguments " +"to :meth:`OptionParser.add_option`. If you pass an option attribute that is " +"not relevant to a particular option, or fail to pass a required option " "attribute, :mod:`!optparse` raises :exc:`OptionError`." msgstr "" @@ -1540,8 +1539,8 @@ msgstr "" msgid "" "How many arguments of type :attr:`~Option.type` should be consumed when this " -"option is seen. If > 1, :mod:`!optparse` will store a tuple of values to :" -"attr:`~Option.dest`." +"option is seen. If > 1, :mod:`!optparse` will store a tuple of values " +"to :attr:`~Option.dest`." msgstr "" msgid "For actions that store a constant value, the constant value to store." @@ -1586,14 +1585,14 @@ msgid "" msgstr "" msgid "" -"``\"store\"`` [relevant: :attr:`~Option.type`, :attr:`~Option.dest`, :attr:" -"`~Option.nargs`, :attr:`~Option.choices`]" +"``\"store\"`` " +"[relevant: :attr:`~Option.type`, :attr:`~Option.dest`, :attr:`~Option.nargs`, :attr:`~Option.choices`]" msgstr "" msgid "" "The option must be followed by an argument, which is converted to a value " -"according to :attr:`~Option.type` and stored in :attr:`~Option.dest`. If :" -"attr:`~Option.nargs` > 1, multiple arguments will be consumed from the " +"according to :attr:`~Option.type` and stored in :attr:`~Option.dest`. " +"If :attr:`~Option.nargs` > 1, multiple arguments will be consumed from the " "command line; all will be converted according to :attr:`~Option.type` and " "stored to :attr:`~Option.dest` as a tuple. See the :ref:`optparse-standard-" "option-types` section." @@ -1639,8 +1638,8 @@ msgid "" msgstr "" msgid "" -"``\"store_const\"`` [required: :attr:`~Option.const`; relevant: :attr:" -"`~Option.dest`]" +"``\"store_const\"`` [required: :attr:`~Option.const`; " +"relevant: :attr:`~Option.dest`]" msgstr "" msgid "The value :attr:`~Option.const` is stored in :attr:`~Option.dest`." @@ -1665,8 +1664,8 @@ msgid "``\"store_true\"`` [relevant: :attr:`~Option.dest`]" msgstr "" msgid "" -"A special case of ``\"store_const\"`` that stores ``True`` to :attr:`~Option." -"dest`." +"A special case of ``\"store_const\"`` that stores ``True`` " +"to :attr:`~Option.dest`." msgstr "" msgid "``\"store_false\"`` [relevant: :attr:`~Option.dest`]" @@ -1681,8 +1680,8 @@ msgid "" msgstr "" msgid "" -"``\"append\"`` [relevant: :attr:`~Option.type`, :attr:`~Option.dest`, :attr:" -"`~Option.nargs`, :attr:`~Option.choices`]" +"``\"append\"`` " +"[relevant: :attr:`~Option.type`, :attr:`~Option.dest`, :attr:`~Option.nargs`, :attr:`~Option.choices`]" msgstr "" msgid "" @@ -1736,8 +1735,8 @@ msgid "" msgstr "" msgid "" -"``\"append_const\"`` [required: :attr:`~Option.const`; relevant: :attr:" -"`~Option.dest`]" +"``\"append_const\"`` [required: :attr:`~Option.const`; " +"relevant: :attr:`~Option.dest`]" msgstr "" msgid "" @@ -1776,9 +1775,8 @@ msgid "options.verbosity += 1" msgstr "" msgid "" -"``\"callback\"`` [required: :attr:`~Option.callback`; relevant: :attr:" -"`~Option.type`, :attr:`~Option.nargs`, :attr:`~Option.callback_args`, :attr:" -"`~Option.callback_kwargs`]" +"``\"callback\"`` [required: :attr:`~Option.callback`; " +"relevant: :attr:`~Option.type`, :attr:`~Option.nargs`, :attr:`~Option.callback_args`, :attr:`~Option.callback_kwargs`]" msgstr "" msgid "" @@ -1852,9 +1850,9 @@ msgid "" "Prints the version number supplied to the OptionParser to stdout and exits. " "The version number is actually formatted and printed by the " "``print_version()`` method of OptionParser. Generally only relevant if the " -"``version`` argument is supplied to the OptionParser constructor. As with :" -"attr:`~Option.help` options, you will rarely create ``version`` options, " -"since :mod:`!optparse` automatically adds them when needed." +"``version`` argument is supplied to the OptionParser constructor. As " +"with :attr:`~Option.help` options, you will rarely create ``version`` " +"options, since :mod:`!optparse` automatically adds them when needed." msgstr "" msgid "Standard option types" @@ -1899,19 +1897,19 @@ msgid "" msgstr "" msgid "" -"``\"choice\"`` options are a subtype of ``\"string\"`` options. The :attr:" -"`~Option.choices` option attribute (a sequence of strings) defines the set " -"of allowed option arguments. :func:`optparse.check_choice` compares user-" -"supplied option arguments against this master list and raises :exc:" -"`OptionValueError` if an invalid string is given." +"``\"choice\"`` options are a subtype of ``\"string\"`` options. " +"The :attr:`~Option.choices` option attribute (a sequence of strings) defines " +"the set of allowed option arguments. :func:`optparse.check_choice` compares " +"user-supplied option arguments against this master list and " +"raises :exc:`OptionValueError` if an invalid string is given." msgstr "" msgid "Parsing arguments" msgstr "" msgid "" -"The whole point of creating and populating an OptionParser is to call its :" -"meth:`~OptionParser.parse_args` method." +"The whole point of creating and populating an OptionParser is to call " +"its :meth:`~OptionParser.parse_args` method." msgstr "" msgid "Parse the command-line options found in *args*." @@ -2063,8 +2061,8 @@ msgid "``\"error\"`` (default)" msgstr "" msgid "" -"assume option conflicts are a programming error and raise :exc:" -"`OptionConflictError`" +"assume option conflicts are a programming error and " +"raise :exc:`OptionConflictError`" msgstr "" msgid "``\"resolve\"``" @@ -2151,8 +2149,8 @@ msgstr "" msgid "" "Print the usage message for the current program (``self.usage``) to *file* " "(default stdout). Any occurrence of the string ``%prog`` in ``self.usage`` " -"is replaced with the name of the current program. Does nothing if ``self." -"usage`` is empty or not defined." +"is replaced with the name of the current program. Does nothing if " +"``self.usage`` is empty or not defined." msgstr "" msgid "" @@ -2161,11 +2159,11 @@ msgid "" msgstr "" msgid "" -"Set default values for several option destinations at once. Using :meth:" -"`set_defaults` is the preferred way to set default values for options, since " -"multiple options can share the same destination. For example, if several " -"\"mode\" options all set the same destination, any one of them can set the " -"default, and the last one wins::" +"Set default values for several option destinations at once. " +"Using :meth:`set_defaults` is the preferred way to set default values for " +"options, since multiple options can share the same destination. For " +"example, if several \"mode\" options all set the same destination, any one " +"of them can set the default, and the last one wins::" msgstr "" msgid "" @@ -2213,10 +2211,10 @@ msgid "Defining a callback option" msgstr "" msgid "" -"As always, the easiest way to define a callback option is by using the :meth:" -"`OptionParser.add_option` method. Apart from :attr:`~Option.action`, the " -"only option attribute you must specify is ``callback``, the function to " -"call::" +"As always, the easiest way to define a callback option is by using " +"the :meth:`OptionParser.add_option` method. Apart " +"from :attr:`~Option.action`, the only option attribute you must specify is " +"``callback``, the function to call::" msgstr "" msgid "parser.add_option(\"-c\", action=\"callback\", callback=my_callback)" @@ -2235,9 +2233,9 @@ msgstr "" msgid "" ":mod:`!optparse` always passes four particular arguments to your callback, " -"and it will only pass additional arguments if you specify them via :attr:" -"`~Option.callback_args` and :attr:`~Option.callback_kwargs`. Thus, the " -"minimal callback function signature is::" +"and it will only pass additional arguments if you specify them " +"via :attr:`~Option.callback_args` and :attr:`~Option.callback_kwargs`. " +"Thus, the minimal callback function signature is::" msgstr "" msgid "def my_callback(option, opt, value, parser):" @@ -2256,9 +2254,9 @@ msgstr "" msgid "" "has its usual meaning: as with the ``\"store\"`` or ``\"append\"`` actions, " -"it instructs :mod:`!optparse` to consume one argument and convert it to :" -"attr:`~Option.type`. Rather than storing the converted value(s) anywhere, " -"though, :mod:`!optparse` passes it to your callback function." +"it instructs :mod:`!optparse` to consume one argument and convert it " +"to :attr:`~Option.type`. Rather than storing the converted value(s) " +"anywhere, though, :mod:`!optparse` passes it to your callback function." msgstr "" msgid ":attr:`~Option.nargs`" @@ -2312,10 +2310,10 @@ msgstr "" msgid "" "is the argument to this option seen on the command-line. :mod:`!optparse` " "will only expect an argument if :attr:`~Option.type` is set; the type of " -"``value`` will be the type implied by the option's type. If :attr:`~Option." -"type` for this option is ``None`` (no argument expected), then ``value`` " -"will be ``None``. If :attr:`~Option.nargs` > 1, ``value`` will be a tuple " -"of values of the appropriate type." +"``value`` will be the type implied by the option's type. " +"If :attr:`~Option.type` for this option is ``None`` (no argument expected), " +"then ``value`` will be ``None``. If :attr:`~Option.nargs` > 1, ``value`` " +"will be a tuple of values of the appropriate type." msgstr "" msgid "``parser``" @@ -2333,8 +2331,8 @@ msgid "" "the current list of leftover arguments, ie. arguments that have been " "consumed but are neither options nor option arguments. Feel free to modify " "``parser.largs``, e.g. by adding more arguments to it. (This list will " -"become ``args``, the second return value of :meth:`~OptionParser." -"parse_args`.)" +"become ``args``, the second return value " +"of :meth:`~OptionParser.parse_args`.)" msgstr "" msgid "``parser.rargs``" @@ -2358,16 +2356,16 @@ msgid "" msgstr "" msgid "" -"is a tuple of arbitrary positional arguments supplied via the :attr:`~Option." -"callback_args` option attribute." +"is a tuple of arbitrary positional arguments supplied via " +"the :attr:`~Option.callback_args` option attribute." msgstr "" msgid "``kwargs``" msgstr "" msgid "" -"is a dictionary of arbitrary keyword arguments supplied via :attr:`~Option." -"callback_kwargs`." +"is a dictionary of arbitrary keyword arguments supplied " +"via :attr:`~Option.callback_kwargs`." msgstr "" msgid "Raising errors in a callback" @@ -2473,8 +2471,9 @@ msgid "" "take a fixed number of arguments. Specifying that a callback option takes " "arguments is similar to defining a ``\"store\"`` or ``\"append\"`` option: " "if you define :attr:`~Option.type`, then the option takes one argument that " -"must be convertible to that type; if you further define :attr:`~Option." -"nargs`, then the option takes :attr:`~Option.nargs` arguments." +"must be convertible to that type; if you further " +"define :attr:`~Option.nargs`, then the option takes :attr:`~Option.nargs` " +"arguments." msgstr "" msgid "" @@ -2578,13 +2577,13 @@ msgstr "" msgid "" "To add new types, you need to define your own subclass of :mod:`!" "optparse`'s :class:`Option` class. This class has a couple of attributes " -"that define :mod:`!optparse`'s types: :attr:`~Option.TYPES` and :attr:" -"`~Option.TYPE_CHECKER`." +"that define :mod:`!optparse`'s types: :attr:`~Option.TYPES` " +"and :attr:`~Option.TYPE_CHECKER`." msgstr "" msgid "" -"A tuple of type names; in your subclass, simply define a new tuple :attr:" -"`TYPES` that builds on the standard one." +"A tuple of type names; in your subclass, simply define a new " +"tuple :attr:`TYPES` that builds on the standard one." msgstr "" msgid "" @@ -2653,8 +2652,8 @@ msgid "" msgstr "" msgid "" -"(If we didn't make a :func:`copy` of :attr:`Option.TYPE_CHECKER`, we would " -"end up modifying the :attr:`~Option.TYPE_CHECKER` attribute of :mod:`!" +"(If we didn't make a :func:`~copy.copy` of :attr:`Option.TYPE_CHECKER`, we " +"would end up modifying the :attr:`~Option.TYPE_CHECKER` attribute of :mod:`!" "optparse`'s Option class. This being Python, nothing stops you from doing " "that except good manners and common sense.)" msgstr "" @@ -2686,8 +2685,8 @@ msgid "Adding new actions" msgstr "" msgid "" -"Adding new actions is a bit trickier, because you have to understand that :" -"mod:`!optparse` has a couple of classifications for actions:" +"Adding new actions is a bit trickier, because you have to understand " +"that :mod:`!optparse` has a couple of classifications for actions:" msgstr "" msgid "\"store\" actions" @@ -2695,8 +2694,8 @@ msgstr "" msgid "" "actions that result in :mod:`!optparse` storing a value to an attribute of " -"the current OptionValues instance; these options require a :attr:`~Option." -"dest` attribute to be supplied to the Option constructor." +"the current OptionValues instance; these options require " +"a :attr:`~Option.dest` attribute to be supplied to the Option constructor." msgstr "" msgid "\"typed\" actions" @@ -2738,8 +2737,9 @@ msgid "" msgstr "" msgid "" -"In order to actually implement your new action, you must override Option's :" -"meth:`take_action` method and add a case that recognizes your action." +"In order to actually implement your new action, you must override " +"Option's :meth:`take_action` method and add a case that recognizes your " +"action." msgstr "" msgid "" @@ -2785,14 +2785,14 @@ msgstr "" msgid "" "``\"extend\"`` both expects a value on the command-line and stores that " -"value somewhere, so it goes in both :attr:`~Option.STORE_ACTIONS` and :attr:" -"`~Option.TYPED_ACTIONS`." +"value somewhere, so it goes in both :attr:`~Option.STORE_ACTIONS` " +"and :attr:`~Option.TYPED_ACTIONS`." msgstr "" msgid "" "to ensure that :mod:`!optparse` assigns the default type of ``\"string\"`` " -"to ``\"extend\"`` actions, we put the ``\"extend\"`` action in :attr:" -"`~Option.ALWAYS_TYPED_ACTIONS` as well." +"to ``\"extend\"`` actions, we put the ``\"extend\"`` action " +"in :attr:`~Option.ALWAYS_TYPED_ACTIONS` as well." msgstr "" msgid "" @@ -2818,8 +2818,8 @@ msgid "" "variable to be of a certain type (a list for the first two, an integer for " "the latter). Using :meth:`ensure_value` means that scripts using your " "action don't have to worry about setting a default value for the option " -"destinations in question; they can just leave the default as ``None`` and :" -"meth:`ensure_value` will take care of getting it right when it's needed." +"destinations in question; they can just leave the default as ``None`` " +"and :meth:`ensure_value` will take care of getting it right when it's needed." msgstr "" msgid "Exceptions" diff --git a/library/os.path.po b/library/os.path.po index 1c79214..0b6237b 100644 --- a/library/os.path.po +++ b/library/os.path.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -55,12 +56,12 @@ msgstr "" msgid "" "Since different operating systems have different path name conventions, " -"there are several versions of this module in the standard library. The :mod:" -"`!os.path` module is always the path module suitable for the operating " -"system Python is running on, and therefore usable for local paths. However, " -"you can also import and use the individual modules if you want to manipulate " -"a path that is *always* in one of the different formats. They all have the " -"same interface:" +"there are several versions of this module in the standard library. " +"The :mod:`!os.path` module is always the path module suitable for the " +"operating system Python is running on, and therefore usable for local " +"paths. However, you can also import and use the individual modules if you " +"want to manipulate a path that is *always* in one of the different formats. " +"They all have the same interface:" msgstr "" msgid ":mod:`!posixpath` for UNIX-style paths" @@ -70,10 +71,9 @@ msgid ":mod:`!ntpath` for Windows paths" msgstr "" msgid "" -":func:`exists`, :func:`lexists`, :func:`isdir`, :func:`isfile`, :func:" -"`islink`, and :func:`ismount` now return ``False`` instead of raising an " -"exception for paths that contain characters or bytes unrepresentable at the " -"OS level." +":func:`exists`, :func:`lexists`, :func:`isdir`, :func:`isfile`, :func:`islink`, " +"and :func:`ismount` now return ``False`` instead of raising an exception for " +"paths that contain characters or bytes unrepresentable at the OS level." msgstr "" msgid "" @@ -82,6 +82,21 @@ msgid "" "path))``." msgstr "" +msgid "" +"On Windows the path is normalized by the operating system, therefore the " +"result can differ from ``normpath(join(os.getcwd(), path))``. A drive-" +"relative path is resolved against the current directory of the specified " +"drive, and the drive letter is capitalized. Trailing dots and spaces are " +"stripped. For example::" +msgstr "" + +msgid "" +">>> os.path.abspath('c:spam')\n" +"'C:\\\\Temp\\\\spam'\n" +">>> os.path.abspath('c:/temp/spam. . .')\n" +"'c:\\\\temp\\\\spam'" +msgstr "" + msgid ":func:`os.path.join` and :func:`os.path.normpath`." msgstr "" @@ -131,9 +146,9 @@ msgid "" msgstr "" msgid "" -"Deprecated in favor of :func:`os.path.commonpath` for path prefixes. The :" -"func:`os.path.commonprefix` function is being deprecated due to having a " -"misleading name and module. The function is not safe to use for path " +"Deprecated in favor of :func:`os.path.commonpath` for path prefixes. " +"The :func:`os.path.commonprefix` function is being deprecated due to having " +"a misleading name and module. The function is not safe to use for path " "prefixes despite being included in a module about path manipulation, meaning " "it is easy to accidentally introduce path traversal vulnerabilities into " "Python programs by using this function." @@ -159,8 +174,8 @@ msgstr "" msgid "" "Return ``True`` if *path* refers to an existing path, including broken " -"symbolic links. Equivalent to :func:`exists` on platforms lacking :func:" -"`os.lstat`." +"symbolic links. Equivalent to :func:`exists` on platforms " +"lacking :func:`os.lstat`." msgstr "" msgid "" @@ -169,10 +184,11 @@ msgid "" msgstr "" msgid "" -"On Unix, an initial ``~`` is replaced by the environment variable :envvar:" -"`HOME` if it is set; otherwise the current user's home directory is looked " -"up in the password directory through the built-in module :mod:`pwd`. An " -"initial ``~user`` is looked up directly in the password directory." +"On Unix, an initial ``~`` is replaced by the environment " +"variable :envvar:`HOME` if it is set; otherwise the current user's home " +"directory is looked up in the password directory through the built-in " +"module :mod:`pwd`. An initial ``~user`` is looked up directly in the " +"password directory." msgstr "" msgid "" @@ -205,9 +221,9 @@ msgstr "" msgid "" "Return the time of last access of *path*. The return value is a floating-" -"point number giving the number of seconds since the epoch (see the :mod:" -"`time` module). Raise :exc:`OSError` if the file does not exist or is " -"inaccessible." +"point number giving the number of seconds since the epoch (see " +"the :mod:`time` module). Raise :exc:`OSError` if the file does not exist " +"or is inaccessible." msgstr "" msgid "" @@ -362,9 +378,9 @@ msgid "" msgstr "" msgid "" -"Note that since there is a current directory for each drive, ``os.path." -"join(\"c:\", \"foo\")`` represents a path relative to the current directory " -"on drive :file:`C:` (:file:`c:foo`), not :file:`c:\\\\foo`." +"Note that since there is a current directory for each drive, " +"``os.path.join(\"c:\", \"foo\")`` represents a path relative to the current " +"directory on drive :file:`C:` (:file:`c:foo`), not :file:`c:\\\\foo`." msgstr "" msgid "Accepts a :term:`path-like object` for *path* and *paths*." @@ -398,7 +414,9 @@ msgid "" "symbolic links encountered in the path (if they are supported by the " "operating system). On Windows, this function will also resolve MS-DOS (also " "called 8.3) style names such as ``C:\\\\PROGRA~1`` to ``C:\\\\Program " -"Files``." +"Files``. The returned path uses the case reported by the operating system, " +"which can differ from the case of *path*, in particular the drive letter is " +"capitalized." msgstr "" msgid "" @@ -426,10 +444,10 @@ msgid "" msgstr "" msgid "" -"If *strict* is :py:data:`os.path.ALLOW_MISSING`, errors other than :exc:" -"`FileNotFoundError` are re-raised (as with ``strict=True``). Thus, the " -"returned path will not contain any symbolic links, but the named file and " -"some of its parent directories may be missing." +"If *strict* is :py:data:`os.path.ALLOW_MISSING`, errors other " +"than :exc:`FileNotFoundError` are re-raised (as with ``strict=True``). Thus, " +"the returned path will not contain any symbolic links, but the named file " +"and some of its parent directories may be missing." msgstr "" msgid "" @@ -487,9 +505,10 @@ msgstr "" msgid "" "Return ``True`` if the stat tuples *stat1* and *stat2* refer to the same " -"file. These structures may have been returned by :func:`os.fstat`, :func:`os." -"lstat`, or :func:`os.stat`. This function implements the underlying " -"comparison used by :func:`samefile` and :func:`sameopenfile`." +"file. These structures may have been returned " +"by :func:`os.fstat`, :func:`os.lstat`, or :func:`os.stat`. This function " +"implements the underlying comparison used by :func:`samefile` " +"and :func:`sameopenfile`." msgstr "" msgid "" @@ -500,8 +519,8 @@ msgid "" "*path* is empty, both *head* and *tail* are empty. Trailing slashes are " "stripped from *head* unless it is the root (one or more slashes only). In " "all cases, ``join(head, tail)`` returns a path to the same location as " -"*path* (but the strings may differ). Also see the functions :func:`join`, :" -"func:`dirname` and :func:`basename`." +"*path* (but the strings may differ). Also see the " +"functions :func:`join`, :func:`dirname` and :func:`basename`." msgstr "" msgid "" diff --git a/library/os.po b/library/os.po index bc74753..caa1c07 100644 --- a/library/os.po +++ b/library/os.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,10 +33,10 @@ msgid "" "This module provides a portable way of using operating system dependent " "functionality. If you just want to read or write a file see :func:`open`, " "if you want to manipulate paths, see the :mod:`os.path` module, and if you " -"want to read all the lines in all the files on the command line see the :mod:" -"`fileinput` module. For creating temporary files and directories see the :" -"mod:`tempfile` module, and for high-level file and directory handling see " -"the :mod:`shutil` module." +"want to read all the lines in all the files on the command line see " +"the :mod:`fileinput` module. For creating temporary files and directories " +"see the :mod:`tempfile` module, and for high-level file and directory " +"handling see the :mod:`shutil` module." msgstr "" msgid "Notes on the availability of these functions:" @@ -67,11 +68,11 @@ msgstr "" msgid "" "On WebAssembly platforms, Android and iOS, large parts of the :mod:`!os` " -"module are not available or behave differently. APIs related to processes (e." -"g. :func:`~os.fork`, :func:`~os.execve`) and resources (e.g. :func:`~os." -"nice`) are not available. Others like :func:`~os.getuid` and :func:`~os." -"getpid` are emulated or stubs. WebAssembly platforms also lack support for " -"signals (e.g. :func:`~os.kill`, :func:`~os.wait`)." +"module are not available or behave differently. APIs related to processes " +"(e.g. :func:`~os.fork`, :func:`~os.execve`) and resources " +"(e.g. :func:`~os.nice`) are not available. Others like :func:`~os.getuid` " +"and :func:`~os.getpid` are emulated or stubs. WebAssembly platforms also " +"lack support for signals (e.g. :func:`~os.kill`, :func:`~os.wait`)." msgstr "" msgid "" @@ -111,9 +112,9 @@ msgstr "" msgid "" "The :term:`filesystem encoding and error handler` are configured at Python " -"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." -"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" -"c:type:`PyConfig`." +"startup by the :c:func:`PyConfig_Read` function: " +"see :c:member:`~PyConfig.filesystem_encoding` " +"and :c:member:`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" msgid "" @@ -127,8 +128,8 @@ msgstr "" msgid "" "The :term:`file system encoding ` " "must guarantee to successfully decode all bytes below 128. If the file " -"system encoding fails to provide this guarantee, API functions can raise :" -"exc:`UnicodeError`." +"system encoding fails to provide this guarantee, API functions can " +"raise :exc:`UnicodeError`." msgstr "" msgid "See also the :term:`locale encoding`." @@ -178,9 +179,9 @@ msgid "" msgstr "" msgid "" -"Note that the standard stream settings in UTF-8 mode can be overridden by :" -"envvar:`PYTHONIOENCODING` (just as they can be in the default locale-aware " -"mode)." +"Note that the standard stream settings in UTF-8 mode can be overridden " +"by :envvar:`PYTHONIOENCODING` (just as they can be in the default locale-" +"aware mode)." msgstr "" msgid "" @@ -205,10 +206,10 @@ msgstr "" msgid "" "The :ref:`Python UTF-8 Mode ` is enabled by default. It can be " -"disabled using the :option:`-X utf8=0 <-X>` command line option or the :" -"envvar:`PYTHONUTF8=0 ` environment variable. The Python UTF-8 " -"Mode can only be disabled at Python startup. Its value can be read from :" -"data:`sys.flags.utf8_mode `." +"disabled using the :option:`-X utf8=0 <-X>` command line option or " +"the :envvar:`PYTHONUTF8=0 ` environment variable. The Python " +"UTF-8 Mode can only be disabled at Python startup. Its value can be read " +"from :data:`sys.flags.utf8_mode `." msgstr "" msgid "" @@ -221,8 +222,8 @@ msgid "" msgstr "" msgid "" -"See also the :ref:`UTF-8 mode on Windows ` and the :term:" -"`filesystem encoding and error handler`." +"See also the :ref:`UTF-8 mode on Windows ` and " +"the :term:`filesystem encoding and error handler`." msgstr "" msgid "Process Parameters" @@ -250,9 +251,9 @@ msgstr "" msgid "" "This mapping is captured the first time the :mod:`!os` module is imported, " "typically during Python startup as part of processing :file:`site.py`. " -"Changes to the environment made after this time are not reflected in :data:" -"`os.environ`, except for changes made by modifying :data:`os.environ` " -"directly." +"Changes to the environment made after this time are not reflected " +"in :data:`os.environ`, except for changes made by " +"modifying :data:`os.environ` directly." msgstr "" msgid "" @@ -284,10 +285,10 @@ msgid "" msgstr "" msgid "" -"You can delete items in this mapping to unset environment variables. :func:" -"`unsetenv` will be called automatically when an item is deleted from :data:" -"`os.environ`, and when one of the :meth:`~dict.pop` or :meth:`~dict.clear` " -"methods is called." +"You can delete items in this mapping to unset environment " +"variables. :func:`unsetenv` will be called automatically when an item is " +"deleted from :data:`os.environ`, and when one of the :meth:`~dict.pop` " +"or :meth:`~dict.clear` methods is called." msgstr "" msgid "" @@ -319,9 +320,9 @@ msgstr "" msgid "" "Bytes version of :data:`environ`: a :term:`mapping` object where both keys " -"and values are :class:`bytes` objects representing the process environment. :" -"data:`environ` and :data:`environb` are synchronized (modifying :data:" -"`environb` updates :data:`environ`, and vice versa)." +"and values are :class:`bytes` objects representing the process " +"environment. :data:`environ` and :data:`environb` are synchronized " +"(modifying :data:`environb` updates :data:`environ`, and vice versa)." msgstr "" msgid "" @@ -340,17 +341,18 @@ msgstr "" msgid "" "This function is not thread-safe. Calling it while the environment is being " -"modified in another thread is an undefined behavior. Reading from :data:`os." -"environ` or :data:`os.environb`, or calling :func:`os.getenv` while " -"reloading, may return an empty result." +"modified in another thread is an undefined behavior. Reading " +"from :data:`os.environ` or :data:`os.environb`, or calling :func:`os.getenv` " +"while reloading, may return an empty result." msgstr "" msgid "These functions are described in :ref:`os-file-dir`." msgstr "" msgid "" -"Encode :term:`path-like ` *filename* to the :term:" -"`filesystem encoding and error handler`; return :class:`bytes` unchanged." +"Encode :term:`path-like ` *filename* to " +"the :term:`filesystem encoding and error handler`; return :class:`bytes` " +"unchanged." msgstr "" msgid ":func:`fsdecode` is the reverse function." @@ -362,8 +364,9 @@ msgid "" msgstr "" msgid "" -"Decode the :term:`path-like ` *filename* from the :term:" -"`filesystem encoding and error handler`; return :class:`str` unchanged." +"Decode the :term:`path-like ` *filename* from " +"the :term:`filesystem encoding and error handler`; return :class:`str` " +"unchanged." msgstr "" msgid ":func:`fsencode` is the reverse function." @@ -394,10 +397,10 @@ msgstr "" msgid "" "Return the value of the environment variable *key* as a string if it exists, " -"or *default* if it doesn't. *key* is a string. Note that since :func:" -"`getenv` uses :data:`os.environ`, the mapping of :func:`getenv` is similarly " -"also captured on import, and the function may not reflect future environment " -"changes." +"or *default* if it doesn't. *key* is a string. Note that " +"since :func:`getenv` uses :data:`os.environ`, the mapping of :func:`getenv` " +"is similarly also captured on import, and the function may not reflect " +"future environment changes." msgstr "" msgid "" @@ -408,10 +411,10 @@ msgstr "" msgid "" "Return the value of the environment variable *key* as bytes if it exists, or " -"*default* if it doesn't. *key* must be bytes. Note that since :func:" -"`getenvb` uses :data:`os.environb`, the mapping of :func:`getenvb` is " -"similarly also captured on import, and the function may not reflect future " -"environment changes." +"*default* if it doesn't. *key* must be bytes. Note that " +"since :func:`getenvb` uses :data:`os.environb`, the mapping " +"of :func:`getenvb` is similarly also captured on import, and the function " +"may not reflect future environment changes." msgstr "" msgid "" @@ -464,17 +467,18 @@ msgid "" "access list for the user associated with the effective user id of the " "process; the group access list may change over the lifetime of the process, " "it is not affected by calls to :func:`setgroups`, and its length is not " -"limited to 16. The deployment target value can be obtained with :func:" -"`sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') `." +"limited to 16. The deployment target value can be obtained " +"with :func:`sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') " +"`." msgstr "" msgid "" "Return the name of the user logged in on the controlling terminal of the " -"process. For most purposes, it is more useful to use :func:`getpass." -"getuser` since the latter checks the environment variables :envvar:`LOGNAME` " -"or :envvar:`USERNAME` to find out who the user is, and falls back to ``pwd." -"getpwuid(os.getuid())[0]`` to get the login name of the current real user id." +"process. For most purposes, it is more useful to " +"use :func:`getpass.getuser` since the latter checks the environment " +"variables :envvar:`LOGNAME` or :envvar:`USERNAME` to find out who the user " +"is, and falls back to ``pwd.getpwuid(os.getuid())[0]`` to get the login name " +"of the current real user id." msgstr "" msgid "" @@ -498,13 +502,13 @@ msgid "Added support for Windows." msgstr "" msgid "" -"Get program scheduling priority. The value *which* is one of :const:" -"`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " -"interpreted relative to *which* (a process identifier for :const:" -"`PRIO_PROCESS`, process group identifier for :const:`PRIO_PGRP`, and a user " -"ID for :const:`PRIO_USER`). A zero value for *who* denotes (respectively) " -"the calling process, the process group of the calling process, or the real " -"user ID of the calling process." +"Get program scheduling priority. The value *which* is one " +"of :const:`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and " +"*who* is interpreted relative to *which* (a process identifier " +"for :const:`PRIO_PROCESS`, process group identifier for :const:`PRIO_PGRP`, " +"and a user ID for :const:`PRIO_USER`). A zero value for *who* denotes " +"(respectively) the calling process, the process group of the calling " +"process, or the real user ID of the calling process." msgstr "" msgid "" @@ -532,17 +536,17 @@ msgstr "" msgid "" "Set the environment variable named *key* to the string *value*. Such " -"changes to the environment affect subprocesses started with :func:`os." -"system`, :func:`popen` or :func:`fork` and :func:`execv`." +"changes to the environment affect subprocesses started " +"with :func:`os.system`, :func:`popen` or :func:`fork` and :func:`execv`." msgstr "" msgid "" "Assignments to items in :data:`os.environ` are automatically translated into " "corresponding calls to :func:`putenv`; however, calls to :func:`putenv` " "don't update :data:`os.environ`, so it is actually preferable to assign to " -"items of :data:`os.environ`. This also applies to :func:`getenv` and :func:" -"`getenvb`, which respectively use :data:`os.environ` and :data:`os.environb` " -"in their implementations." +"items of :data:`os.environ`. This also applies to :func:`getenv` " +"and :func:`getenvb`, which respectively use :data:`os.environ` " +"and :data:`os.environb` in their implementations." msgstr "" msgid "See also the :func:`os.reload_environ` function." @@ -579,14 +583,15 @@ msgstr "" msgid "" "On macOS, the length of *groups* may not exceed the system-defined maximum " -"number of effective group ids, typically 16. See the documentation for :func:" -"`getgroups` for cases where it may not return the same group list set by " -"calling setgroups()." +"number of effective group ids, typically 16. See the documentation " +"for :func:`getgroups` for cases where it may not return the same group list " +"set by calling setgroups()." msgstr "" msgid "" -"Reassociate the current thread with a Linux namespace. See the :manpage:" -"`setns(2)` and :manpage:`namespaces(7)` man pages for more details." +"Reassociate the current thread with a Linux namespace. See " +"the :manpage:`setns(2)` and :manpage:`namespaces(7)` man pages for more " +"details." msgstr "" msgid "" @@ -598,13 +603,14 @@ msgid "" msgstr "" msgid "" -"Since Linux 5.8, *fd* may refer to a PID file descriptor obtained from :func:" -"`~os.pidfd_open`. In this case, ``setns()`` reassociates the calling thread " -"into one or more of the same namespaces as the thread referred to by *fd*. " -"This is subject to any constraints imposed by *nstype*, which is a bit mask " -"combining one or more of the :ref:`CLONE_NEW* constants `, e.g. ``setns(fd, os.CLONE_NEWUTS | os.CLONE_NEWPID)``. The caller's " -"memberships in unspecified namespaces are left unchanged." +"Since Linux 5.8, *fd* may refer to a PID file descriptor obtained " +"from :func:`~os.pidfd_open`. In this case, ``setns()`` reassociates the " +"calling thread into one or more of the same namespaces as the thread " +"referred to by *fd*. This is subject to any constraints imposed by *nstype*, " +"which is a bit mask combining one or more of the :ref:`CLONE_NEW* constants " +"`, e.g. ``setns(fd, os.CLONE_NEWUTS | " +"os.CLONE_NEWPID)``. The caller's memberships in unspecified namespaces are " +"left unchanged." msgstr "" msgid "" @@ -639,15 +645,15 @@ msgid "" msgstr "" msgid "" -"Set program scheduling priority. The value *which* is one of :const:" -"`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and *who* is " -"interpreted relative to *which* (a process identifier for :const:" -"`PRIO_PROCESS`, process group identifier for :const:`PRIO_PGRP`, and a user " -"ID for :const:`PRIO_USER`). A zero value for *who* denotes (respectively) " -"the calling process, the process group of the calling process, or the real " -"user ID of the calling process. *priority* is a value in the range -20 to " -"19. The default priority is 0; lower priorities cause more favorable " -"scheduling." +"Set program scheduling priority. The value *which* is one " +"of :const:`PRIO_PROCESS`, :const:`PRIO_PGRP`, or :const:`PRIO_USER`, and " +"*who* is interpreted relative to *which* (a process identifier " +"for :const:`PRIO_PROCESS`, process group identifier for :const:`PRIO_PGRP`, " +"and a user ID for :const:`PRIO_USER`). A zero value for *who* denotes " +"(respectively) the calling process, the process group of the calling " +"process, or the real user ID of the calling process. *priority* is a value " +"in the range -20 to 19. The default priority is 0; lower priorities cause " +"more favorable scheduling." msgstr "" msgid "Set the current process's real and effective group ids." @@ -696,9 +702,9 @@ msgstr "" msgid "" "On macOS, iOS and Android, this returns the *kernel* name and release (i.e., " -"``'Darwin'`` on macOS and iOS; ``'Linux'`` on Android). :func:`platform." -"uname` can be used to get the user-facing operating system name and release " -"on iOS and Android." +"``'Darwin'`` on macOS and iOS; ``'Linux'`` on " +"Android). :func:`platform.uname` can be used to get the user-facing " +"operating system name and release on iOS and Android." msgstr "" msgid ":data:`sys.platform` which has finer granularity." @@ -716,8 +722,8 @@ msgstr "" msgid "" "For backwards compatibility, this object is also iterable, behaving like a " -"five-tuple containing :attr:`~uname_result.sysname`, :attr:`~uname_result." -"nodename`, :attr:`~uname_result.release`, :attr:`~uname_result.version`, " +"five-tuple " +"containing :attr:`~uname_result.sysname`, :attr:`~uname_result.nodename`, :attr:`~uname_result.release`, :attr:`~uname_result.version`, " "and :attr:`~uname_result.machine` in that order." msgstr "" @@ -725,10 +731,10 @@ msgid "Operating system name." msgstr "" msgid "" -"Name of machine on network. Some systems truncate :attr:`~uname_result." -"nodename` to 8 characters or to the leading component; a better way to get " -"the hostname is :func:`socket.gethostname` or even ``socket." -"gethostbyaddr(socket.gethostname())``." +"Name of machine on network. Some systems " +"truncate :attr:`~uname_result.nodename` to 8 characters or to the leading " +"component; a better way to get the hostname is :func:`socket.gethostname` or " +"even ``socket.gethostbyaddr(socket.gethostname())``." msgstr "" msgid "Operating system release." @@ -742,8 +748,8 @@ msgstr "" msgid "" "Unset (delete) the environment variable named *key*. Such changes to the " -"environment affect subprocesses started with :func:`os.system`, :func:" -"`popen` or :func:`fork` and :func:`execv`." +"environment affect subprocesses started " +"with :func:`os.system`, :func:`popen` or :func:`fork` and :func:`execv`." msgstr "" msgid "" @@ -759,11 +765,11 @@ msgstr "" msgid "" "Disassociate parts of the process execution context, and move them into a " "newly created namespace. See the :manpage:`unshare(2)` man page for more " -"details. The *flags* argument is a bit mask, combining zero or more of the :" -"ref:`CLONE_* constants `, that specifies which parts " -"of the execution context should be unshared from their existing associations " -"and moved to a new namespace. If the *flags* argument is ``0``, no changes " -"are made to the calling process's execution context." +"details. The *flags* argument is a bit mask, combining zero or more of " +"the :ref:`CLONE_* constants `, that specifies which " +"parts of the execution context should be unshared from their existing " +"associations and moved to a new namespace. If the *flags* argument is ``0``, " +"no changes are made to the calling process's execution context." msgstr "" msgid "The :func:`~os.setns` function." @@ -779,8 +785,8 @@ msgid "File Object Creation" msgstr "" msgid "" -"These functions create new :term:`file objects `. (See also :" -"func:`~os.open` for opening file descriptors.)" +"These functions create new :term:`file objects `. (See " +"also :func:`~os.open` for opening file descriptors.)" msgstr "" msgid "" @@ -819,8 +825,8 @@ msgstr "" msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To close a " -"\"file object\" returned by the built-in function :func:`open` or by :func:" -"`popen` or :func:`fdopen`, use its :meth:`~io.IOBase.close` method." +"\"file object\" returned by the built-in function :func:`open` or " +"by :func:`popen` or :func:`fdopen`, use its :meth:`~io.IOBase.close` method." msgstr "" msgid "" @@ -845,8 +851,8 @@ msgstr "" msgid "" "In Linux kernel older than 5.3, the files pointed to by *src* and *dst* must " -"reside in the same filesystem, otherwise an :exc:`OSError` is raised with :" -"attr:`~OSError.errno` set to :const:`errno.EXDEV`." +"reside in the same filesystem, otherwise an :exc:`OSError` is raised " +"with :attr:`~OSError.errno` set to :const:`errno.EXDEV`." msgstr "" msgid "" @@ -889,8 +895,8 @@ msgid "On Unix, the function now implements the Python UTF-8 Mode." msgstr "" msgid "" -"Return a duplicate of file descriptor *fd*. The new file descriptor is :ref:" -"`non-inheritable `." +"Return a duplicate of file descriptor *fd*. The new file descriptor " +"is :ref:`non-inheritable `." msgstr "" msgid "" @@ -935,8 +941,9 @@ msgstr "" msgid "" "Change the owner and group id of the file given by *fd* to the numeric *uid* " -"and *gid*. To leave one of the ids unchanged, set it to -1. See :func:" -"`chown`. As of Python 3.3, this is equivalent to ``os.chown(fd, uid, gid)``." +"and *gid*. To leave one of the ids unchanged, set it to -1. " +"See :func:`chown`. As of Python 3.3, this is equivalent to ``os.chown(fd, " +"uid, gid)``." msgstr "" msgid "" @@ -962,8 +969,8 @@ msgstr "" msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " -"included in ``pathconf_names``, an :exc:`OSError` is raised with :const:" -"`errno.EINVAL` for the error number." +"included in ``pathconf_names``, an :exc:`OSError` is raised " +"with :const:`errno.EINVAL` for the error number." msgstr "" msgid "As of Python 3.3, this is equivalent to ``os.pathconf(fd, name)``." @@ -1000,8 +1007,8 @@ msgstr "" msgid "" "Truncate the file corresponding to file descriptor *fd*, so that it is at " -"most *length* bytes in size. As of Python 3.3, this is equivalent to ``os." -"truncate(fd, length)``." +"most *length* bytes in size. As of Python 3.3, this is equivalent to " +"``os.truncate(fd, length)``." msgstr "" msgid "" @@ -1013,8 +1020,8 @@ msgid "Added support for Windows" msgstr "" msgid "" -"Get the blocking mode of the file descriptor: ``False`` if the :data:" -"`O_NONBLOCK` flag is set, ``True`` if the flag is cleared." +"Get the blocking mode of the file descriptor: ``False`` if " +"the :data:`O_NONBLOCK` flag is set, ``True`` if the flag is cleared." msgstr "" msgid "See also :func:`set_blocking` and :meth:`socket.socket.setblocking`." @@ -1042,8 +1049,8 @@ msgstr "" msgid "" "Apply, test or remove a POSIX lock on an open file descriptor. *fd* is an " -"open file descriptor. *cmd* specifies the command to use - one of :data:" -"`F_LOCK`, :data:`F_TLOCK`, :data:`F_ULOCK` or :data:`F_TEST`. *len* " +"open file descriptor. *cmd* specifies the command to use - one " +"of :data:`F_LOCK`, :data:`F_TLOCK`, :data:`F_ULOCK` or :data:`F_TEST`. *len* " "specifies the section of the file to lock." msgstr "" @@ -1079,11 +1086,11 @@ msgid ":const:`SEEK_END` or ``2`` -- set *pos* relative to the end of the file" msgstr "" msgid "" -":const:`SEEK_HOLE` -- set *pos* to the next data location, relative to *pos*" +":const:`SEEK_DATA` -- set *pos* to the next data location, relative to *pos*" msgstr "" msgid "" -":const:`SEEK_DATA` -- set *pos* to the next data hole, relative to *pos*" +":const:`SEEK_HOLE` -- set *pos* to the next data hole, relative to *pos*" msgstr "" msgid "Add support for :const:`!SEEK_HOLE` and :const:`!SEEK_DATA`." @@ -1151,8 +1158,8 @@ msgstr "" msgid "" "For a description of the flag and mode values, see the C run-time " "documentation; flag constants (like :const:`O_RDONLY` and :const:`O_WRONLY`) " -"are defined in the :mod:`!os` module. In particular, on Windows adding :" -"const:`O_BINARY` is needed to open files in binary mode." +"are defined in the :mod:`!os` module. In particular, on Windows " +"adding :const:`O_BINARY` is needed to open files in binary mode." msgstr "" msgid "" @@ -1167,9 +1174,9 @@ msgstr "" msgid "" "This function is intended for low-level I/O. For normal usage, use the " -"built-in function :func:`open`, which returns a :term:`file object` with :" -"meth:`~io.BufferedIOBase.read` and :meth:`~io.BufferedIOBase.write` methods. " -"To wrap a file descriptor in a file object, use :func:`fdopen`." +"built-in function :func:`open`, which returns a :term:`file object` " +"with :meth:`~io.BufferedIOBase.read` and :meth:`~io.BufferedIOBase.write` " +"methods. To wrap a file descriptor in a file object, use :func:`fdopen`." msgstr "" msgid "Added the *dir_fd* parameter." @@ -1177,20 +1184,20 @@ msgstr "" msgid "" "If the system call is interrupted and the signal handler does not raise an " -"exception, the function now retries the system call instead of raising an :" -"exc:`InterruptedError` exception (see :pep:`475` for the rationale)." +"exception, the function now retries the system call instead of raising " +"an :exc:`InterruptedError` exception (see :pep:`475` for the rationale)." msgstr "" msgid "Accepts a :term:`path-like object`." msgstr "" msgid "" -"The following constants are options for the *flags* parameter to the :func:" -"`~os.open` function. They can be combined using the bitwise OR operator ``|" -"``. Some of them are not available on all platforms. For descriptions of " -"their availability and use, consult the :manpage:`open(2)` manual page on " -"Unix or `the MSDN `_ " -"on Windows." +"The following constants are options for the *flags* parameter to " +"the :func:`~os.open` function. They can be combined using the bitwise OR " +"operator ``|``. Some of them are not available on all platforms. For " +"descriptions of their availability and use, consult the :manpage:`open(2)` " +"manual page on Unix or `the MSDN `_ on Windows." msgstr "" msgid "The above constants are available on Unix and Windows." @@ -1209,8 +1216,8 @@ msgid "The above constants are only available on macOS." msgstr "" msgid "" -"Add :data:`O_EVTONLY`, :data:`O_FSYNC`, :data:`O_SYMLINK` and :data:" -"`O_NOFOLLOW_ANY` constants." +"Add :data:`O_EVTONLY`, :data:`O_FSYNC`, :data:`O_SYMLINK` " +"and :data:`O_NOFOLLOW_ANY` constants." msgstr "" msgid "" @@ -1241,9 +1248,9 @@ msgstr "" msgid "" "Create a pipe with *flags* set atomically. *flags* can be constructed by " -"ORing together one or more of these values: :data:`O_NONBLOCK`, :data:" -"`O_CLOEXEC`. Return a pair of file descriptors ``(r, w)`` usable for reading " -"and writing, respectively." +"ORing together one or more of these " +"values: :data:`O_NONBLOCK`, :data:`O_CLOEXEC`. Return a pair of file " +"descriptors ``(r, w)`` usable for reading and writing, respectively." msgstr "" msgid "" @@ -1255,10 +1262,9 @@ msgid "" "Announces an intention to access data in a specific pattern thus allowing " "the kernel to make optimizations. The advice applies to the region of the " "file specified by *fd* starting at *offset* and continuing for *len* bytes. " -"*advice* is one of :data:`POSIX_FADV_NORMAL`, :data:" -"`POSIX_FADV_SEQUENTIAL`, :data:`POSIX_FADV_RANDOM`, :data:" -"`POSIX_FADV_NOREUSE`, :data:`POSIX_FADV_WILLNEED` or :data:" -"`POSIX_FADV_DONTNEED`." +"*advice* is one " +"of :data:`POSIX_FADV_NORMAL`, :data:`POSIX_FADV_SEQUENTIAL`, :data:`POSIX_FADV_RANDOM`, :data:`POSIX_FADV_NOREUSE`, :data:`POSIX_FADV_WILLNEED` " +"or :data:`POSIX_FADV_DONTNEED`." msgstr "" msgid "" @@ -1292,10 +1298,11 @@ msgid "" msgstr "" msgid "" -"Read from a file descriptor *fd* at a position of *offset* into mutable :" -"term:`bytes-like objects ` *buffers*, leaving the file " -"offset unchanged. Transfer data into each buffer until it is full and then " -"move on to the next buffer in the sequence to hold the rest of the data." +"Read from a file descriptor *fd* at a position of *offset* into " +"mutable :term:`bytes-like objects ` *buffers*, leaving " +"the file offset unchanged. Transfer data into each buffer until it is full " +"and then move on to the next buffer in the sequence to hold the rest of the " +"data." msgstr "" msgid "" @@ -1336,8 +1343,8 @@ msgstr "" msgid "" "If some data was successfully read, it will return the number of bytes read. " -"If no bytes were read, it will return ``-1`` and set errno to :const:`errno." -"EAGAIN`." +"If no bytes were read, it will return ``-1`` and set errno " +"to :const:`errno.EAGAIN`." msgstr "" msgid "" @@ -1379,10 +1386,10 @@ msgstr "" msgid "" "Write the *buffers* contents to file descriptor *fd* at an offset *offset*, " -"leaving the file offset unchanged. *buffers* must be a sequence of :term:" -"`bytes-like objects `. Buffers are processed in array " -"order. Entire contents of the first buffer is written before proceeding to " -"the second, and so on." +"leaving the file offset unchanged. *buffers* must be a sequence " +"of :term:`bytes-like objects `. Buffers are processed in " +"array order. Entire contents of the first buffer is written before " +"proceeding to the second, and so on." msgstr "" msgid ":data:`RWF_DSYNC`" @@ -1455,9 +1462,10 @@ msgstr "" msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`os.pipe`. To read a " -"\"file object\" returned by the built-in function :func:`open`, or :data:" -"`sys.stdin`, use its member functions, for example :meth:`io.BufferedIOBase." -"readinto`, :meth:`io.BufferedIOBase.read`, or :meth:`io.TextIOBase.read`" +"\"file object\" returned by the built-in function :func:`open`, " +"or :data:`sys.stdin`, use its member functions, for " +"example :meth:`io.BufferedIOBase.readinto`, :meth:`io.BufferedIOBase.read`, " +"or :meth:`io.TextIOBase.read`" msgstr "" msgid "" @@ -1467,8 +1475,8 @@ msgid "" msgstr "" msgid "" -"The first function notation is supported by all platforms that define :func:" -"`sendfile`." +"The first function notation is supported by all platforms that " +"define :func:`sendfile`." msgstr "" msgid "" @@ -1499,8 +1507,8 @@ msgid "" msgstr "" msgid "" -"For a higher-level wrapper of :func:`sendfile`, see :meth:`socket.socket." -"sendfile`." +"For a higher-level wrapper of :func:`sendfile`, " +"see :meth:`socket.socket.sendfile`." msgstr "" msgid "Parameters *out* and *in* was renamed to *out_fd* and *in_fd*." @@ -1518,8 +1526,9 @@ msgid "" msgstr "" msgid "" -"Set the blocking mode of the specified file descriptor. Set the :data:" -"`O_NONBLOCK` flag if blocking is ``False``, clear the flag otherwise." +"Set the blocking mode of the specified file descriptor. Set " +"the :data:`O_NONBLOCK` flag if blocking is ``False``, clear the flag " +"otherwise." msgstr "" msgid "See also :func:`get_blocking` and :meth:`socket.socket.setblocking`." @@ -1558,8 +1567,8 @@ msgid "" "is ``None``, then *src* is read from the current position; respectively for " "*offset_dst*. The offset associated to the file descriptor that refers to a " "pipe must be ``None``. The files pointed to by *src* and *dst* must reside " -"in the same filesystem, otherwise an :exc:`OSError` is raised with :attr:" -"`~OSError.errno` set to :const:`errno.EXDEV`." +"in the same filesystem, otherwise an :exc:`OSError` is raised " +"with :attr:`~OSError.errno` set to :const:`errno.EXDEV`." msgstr "" msgid "" @@ -1618,9 +1627,9 @@ msgstr "" msgid "" "This function is intended for low-level I/O and must be applied to a file " "descriptor as returned by :func:`os.open` or :func:`pipe`. To write a " -"\"file object\" returned by the built-in function :func:`open` or by :func:" -"`popen` or :func:`fdopen`, or :data:`sys.stdout` or :data:`sys.stderr`, use " -"its :meth:`~io.TextIOBase.write` method." +"\"file object\" returned by the built-in function :func:`open` or " +"by :func:`popen` or :func:`fdopen`, or :data:`sys.stdout` " +"or :data:`sys.stderr`, use its :meth:`~io.TextIOBase.write` method." msgstr "" msgid "" @@ -1729,8 +1738,8 @@ msgstr "" msgid "" "You can check whether or not *path* can be specified as a file descriptor " "for a particular function on your platform using :data:`os.supports_fd`. If " -"this functionality is unavailable, using it will raise a :exc:" -"`NotImplementedError`." +"this functionality is unavailable, using it will raise " +"a :exc:`NotImplementedError`." msgstr "" msgid "" @@ -1773,10 +1782,10 @@ msgid "" "operations will use the effective uid/gid, therefore this routine can be " "used in a suid/sgid environment to test if the invoking user has the " "specified access to *path*. *mode* should be :const:`F_OK` to test the " -"existence of *path*, or it can be the inclusive OR of one or more of :const:" -"`R_OK`, :const:`W_OK`, and :const:`X_OK` to test permissions. Return :const:" -"`True` if access is allowed, :const:`False` if not. See the Unix man page :" -"manpage:`access(2)` for more information." +"existence of *path*, or it can be the inclusive OR of one or more " +"of :const:`R_OK`, :const:`W_OK`, and :const:`X_OK` to test permissions. " +"Return :const:`True` if access is allowed, :const:`False` if not. See the " +"Unix man page :manpage:`access(2)` for more information." msgstr "" msgid "" @@ -1844,8 +1853,9 @@ msgid "" msgstr "" msgid "" -"This function can raise :exc:`OSError` and subclasses such as :exc:" -"`FileNotFoundError`, :exc:`PermissionError`, and :exc:`NotADirectoryError`." +"This function can raise :exc:`OSError` and subclasses such " +"as :exc:`FileNotFoundError`, :exc:`PermissionError`, " +"and :exc:`NotADirectoryError`." msgstr "" msgid "" @@ -1864,8 +1874,8 @@ msgstr "" msgid "" "Set the flags of *path* to the numeric *flags*. *flags* may take a " -"combination (bitwise OR) of the following values (as defined in the :mod:" -"`stat` module):" +"combination (bitwise OR) of the following values (as defined in " +"the :mod:`stat` module):" msgstr "" msgid ":const:`stat.UF_NODUMP`" @@ -1980,9 +1990,9 @@ msgid ":const:`stat.S_IXOTH`" msgstr "" msgid "" -"This function can support :ref:`specifying a file descriptor `, :" -"ref:`paths relative to directory descriptors ` and :ref:`not " -"following symlinks `." +"This function can support :ref:`specifying a file descriptor " +"`, :ref:`paths relative to directory descriptors ` " +"and :ref:`not following symlinks `." msgstr "" msgid "" @@ -2038,15 +2048,15 @@ msgstr "" msgid "" "Set the flags of *path* to the numeric *flags*, like :func:`chflags`, but do " -"not follow symbolic links. As of Python 3.3, this is equivalent to ``os." -"chflags(path, flags, follow_symlinks=False)``." +"not follow symbolic links. As of Python 3.3, this is equivalent to " +"``os.chflags(path, flags, follow_symlinks=False)``." msgstr "" msgid "" "Change the mode of *path* to the numeric *mode*. If path is a symlink, this " "affects the symlink rather than the target. See the docs for :func:`chmod` " -"for possible values of *mode*. As of Python 3.3, this is equivalent to ``os." -"chmod(path, mode, follow_symlinks=False)``." +"for possible values of *mode*. As of Python 3.3, this is equivalent to " +"``os.chmod(path, mode, follow_symlinks=False)``." msgstr "" msgid "" @@ -2065,8 +2075,8 @@ msgstr "" msgid "" "This function can support specifying *src_dir_fd* and/or *dst_dir_fd* to " -"supply :ref:`paths relative to directory descriptors `, and :ref:" -"`not following symlinks `. The default value of " +"supply :ref:`paths relative to directory descriptors `, " +"and :ref:`not following symlinks `. The default value of " "*follow_symlinks* is ``False`` on Windows." msgstr "" @@ -2151,10 +2161,10 @@ msgid "" msgstr "" msgid "" -"*volume* must be represented as a GUID path, like those returned by :func:" -"`os.listvolumes`. Volumes may be mounted in multiple locations or not at " -"all. In the latter case, the list will be empty. Mount points that are not " -"associated with a volume will not be returned by this function." +"*volume* must be represented as a GUID path, like those returned " +"by :func:`os.listvolumes`. Volumes may be mounted in multiple locations or " +"not at all. In the latter case, the list will be empty. Mount points that " +"are not associated with a volume will not be returned by this function." msgstr "" msgid "" @@ -2193,13 +2203,13 @@ msgstr "" msgid "" "Perform the equivalent of an :c:func:`!lstat` system call on the given path. " -"Similar to :func:`~os.stat`, but does not follow symbolic links. Return a :" -"class:`stat_result` object." +"Similar to :func:`~os.stat`, but does not follow symbolic links. Return " +"a :class:`stat_result` object." msgstr "" msgid "" -"On platforms that do not support symbolic links, this is an alias for :func:" -"`~os.stat`." +"On platforms that do not support symbolic links, this is an alias " +"for :func:`~os.stat`." msgstr "" msgid "" @@ -2218,8 +2228,8 @@ msgstr "" msgid "" "On Windows, now opens reparse points that represent another path (name " "surrogates), including symbolic links and directory junctions. Other kinds " -"of reparse points are resolved by the operating system as for :func:`~os." -"stat`." +"of reparse points are resolved by the operating system as " +"for :func:`~os.stat`." msgstr "" msgid "Create a directory named *path* with numeric mode *mode*." @@ -2296,10 +2306,10 @@ msgid "Added the *exist_ok* parameter." msgstr "" msgid "" -"Before Python 3.4.1, if *exist_ok* was ``True`` and the directory existed, :" -"func:`makedirs` would still raise an error if *mode* did not match the mode " -"of the existing directory. Since this behavior was impossible to implement " -"safely, it was removed in Python 3.4.1. See :issue:`21082`." +"Before Python 3.4.1, if *exist_ok* was ``True`` and the directory " +"existed, :func:`makedirs` would still raise an error if *mode* did not match " +"the mode of the existing directory. Since this behavior was impossible to " +"implement safely, it was removed in Python 3.4.1. See :issue:`21082`." msgstr "" msgid "" @@ -2330,23 +2340,23 @@ msgstr "" msgid "" "Create a filesystem node (file, device special file or named pipe) named " "*path*. *mode* specifies both the permissions to use and the type of node to " -"be created, being combined (bitwise OR) with one of :const:`stat.S_IFREG`, :" -"const:`stat.S_IFCHR`, :const:`stat.S_IFBLK`, and :const:`stat.S_IFIFO`. For :" -"const:`stat.S_IFCHR` and :const:`stat.S_IFBLK`, *device* defines the newly " -"created device special file (probably using :func:`os.makedev`), otherwise " -"it is ignored." +"be created, being combined (bitwise OR) with one " +"of :const:`stat.S_IFREG`, :const:`stat.S_IFCHR`, :const:`stat.S_IFBLK`, " +"and :const:`stat.S_IFIFO`. For :const:`stat.S_IFCHR` " +"and :const:`stat.S_IFBLK`, *device* defines the newly created device special " +"file (probably using :func:`os.makedev`), otherwise it is ignored." msgstr "" msgid "" -"Extract the device major number from a raw device number (usually the :attr:" -"`~stat_result.st_dev` or :attr:`~stat_result.st_rdev` field from :c:struct:" -"`stat`)." +"Extract the device major number from a raw device number (usually " +"the :attr:`~stat_result.st_dev` or :attr:`~stat_result.st_rdev` field " +"from :c:struct:`stat`)." msgstr "" msgid "" -"Extract the device minor number from a raw device number (usually the :attr:" -"`~stat_result.st_dev` or :attr:`~stat_result.st_rdev` field from :c:struct:" -"`stat`)." +"Extract the device minor number from a raw device number (usually " +"the :attr:`~stat_result.st_dev` or :attr:`~stat_result.st_rdev` field " +"from :c:struct:`stat`)." msgstr "" msgid "Compose a raw device number from the major and minor device numbers." @@ -2378,20 +2388,21 @@ msgstr "" msgid "" "Return a string representing the path to which the symbolic link points. " "The result may be either an absolute or relative pathname; if it is " -"relative, it may be converted to an absolute pathname using ``os.path." -"join(os.path.dirname(path), result)``." +"relative, it may be converted to an absolute pathname using " +"``os.path.join(os.path.dirname(path), result)``." msgstr "" msgid "" -"If the *path* is a string object (directly or indirectly through a :class:" -"`PathLike` interface), the result will also be a string object, and the call " -"may raise a UnicodeDecodeError. If the *path* is a bytes object (direct or " -"indirectly), the result will be a bytes object." +"If the *path* is a string object (directly or indirectly through " +"a :class:`PathLike` interface), the result will also be a string object, and " +"the call may raise a UnicodeDecodeError. If the *path* is a bytes object " +"(direct or indirectly), the result will be a bytes object." msgstr "" msgid "" -"When trying to resolve a path that may contain links, use :func:`~os.path." -"realpath` to properly handle recursion and platform differences." +"When trying to resolve a path that may contain links, " +"use :func:`~os.path.realpath` to properly handle recursion and platform " +"differences." msgstr "" msgid "Accepts a :term:`path-like object` on Unix." @@ -2407,9 +2418,9 @@ msgid "" msgstr "" msgid "" -"Remove (delete) the file *path*. If *path* is a directory, an :exc:" -"`OSError` is raised. Use :func:`rmdir` to remove directories. If the file " -"does not exist, a :exc:`FileNotFoundError` is raised." +"Remove (delete) the file *path*. If *path* is a directory, " +"an :exc:`OSError` is raised. Use :func:`rmdir` to remove directories. If " +"the file does not exist, a :exc:`FileNotFoundError` is raised." msgstr "" msgid "" @@ -2450,13 +2461,13 @@ msgstr "" msgid "" "On Windows, if *dst* exists a :exc:`FileExistsError` is always raised. The " -"operation may fail if *src* and *dst* are on different filesystems. Use :" -"func:`shutil.move` to support moves to a different filesystem." +"operation may fail if *src* and *dst* are on different filesystems. " +"Use :func:`shutil.move` to support moves to a different filesystem." msgstr "" msgid "" -"On Unix, if *src* is a file and *dst* is a directory or vice-versa, an :exc:" -"`IsADirectoryError` or a :exc:`NotADirectoryError` will be raised " +"On Unix, if *src* is a file and *dst* is a directory or vice-versa, " +"an :exc:`IsADirectoryError` or a :exc:`NotADirectoryError` will be raised " "respectively. If both are directories and *dst* is empty, *dst* will be " "silently replaced. If *dst* is a non-empty directory, an :exc:`OSError` is " "raised. If both are files, *dst* will be replaced silently if the user has " @@ -2471,8 +2482,8 @@ msgid "" msgstr "" msgid "" -"If you want cross-platform overwriting of the destination, use :func:" -"`replace`." +"If you want cross-platform overwriting of the destination, " +"use :func:`replace`." msgstr "" msgid "" @@ -2510,8 +2521,8 @@ msgstr "" msgid "" "Remove (delete) the directory *path*. If the directory does not exist or is " "not empty, a :exc:`FileNotFoundError` or an :exc:`OSError` is raised " -"respectively. In order to remove whole directory trees, :func:`shutil." -"rmtree` can be used." +"respectively. In order to remove whole directory " +"trees, :func:`shutil.rmtree` can be used." msgstr "" msgid "" @@ -2532,11 +2543,12 @@ msgid "" "Using :func:`scandir` instead of :func:`listdir` can significantly increase " "the performance of code that also needs file type or file attribute " "information, because :class:`os.DirEntry` objects expose this information if " -"the operating system provides it when scanning a directory. All :class:`os." -"DirEntry` methods may perform a system call, but :func:`~os.DirEntry.is_dir` " -"and :func:`~os.DirEntry.is_file` usually only require a system call for " -"symbolic links; :func:`os.DirEntry.stat` always requires a system call on " -"Unix but only requires one for symbolic links on Windows." +"the operating system provides it when scanning a directory. " +"All :class:`os.DirEntry` methods may perform a system call, " +"but :func:`~os.DirEntry.is_dir` and :func:`~os.DirEntry.is_file` usually " +"only require a system call for symbolic links; :func:`os.DirEntry.stat` " +"always requires a system call on Unix but only requires one for symbolic " +"links on Windows." msgstr "" msgid "" @@ -2552,6 +2564,13 @@ msgid "" "``path``." msgstr "" +msgid "" +"Sharing a :func:`scandir` iterator between threads will not corrupt the " +"iterator, but it is subject to :term:`race conditions `: " +"which entries each thread receives is unspecified, and closing the iterator " +"while another thread is iterating ends that iteration early." +msgstr "" + msgid "" "The :func:`scandir` iterator supports the :term:`context manager` protocol " "and has the following method:" @@ -2561,8 +2580,8 @@ msgid "Close the iterator and free acquired resources." msgstr "" msgid "" -"This is called automatically when the iterator is exhausted or garbage " -"collected, or when an error happens during iterating. However it is " +"This is called automatically when the iterator is :term:`exhausted` or " +"garbage collected, or when an error happens during iterating. However it is " "advisable to call it explicitly or use the :keyword:`with` statement." msgstr "" @@ -2585,16 +2604,16 @@ msgid "" "pubs.opengroup.org/onlinepubs/009695399/functions/opendir.html>`_ and " "`readdir() `_ functions. On Windows, it uses the Win32 `FindFirstFileW " -"`_ and `FindNextFileW `_ functions." +"`_ and `FindNextFileW `_ functions." msgstr "" msgid "" -"Added support for the :term:`context manager` protocol and the :func:" -"`~scandir.close` method. If a :func:`scandir` iterator is neither exhausted " -"nor explicitly closed a :exc:`ResourceWarning` will be emitted in its " -"destructor." +"Added support for the :term:`context manager` protocol and " +"the :func:`~scandir.close` method. If a :func:`scandir` iterator is neither " +"exhausted nor explicitly closed a :exc:`ResourceWarning` will be emitted in " +"its destructor." msgstr "" msgid "The function accepts a :term:`path-like object`." @@ -2652,36 +2671,38 @@ msgstr "" msgid "" "The :attr:`name` attribute will be ``bytes`` if the :func:`scandir` *path* " -"argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." -"fsdecode` to decode byte filenames." +"argument is of type ``bytes`` and ``str`` otherwise. " +"Use :func:`~os.fsdecode` to decode byte filenames." msgstr "" msgid "" -"The entry's path name: equivalent to ``os.path.join(scandir_path, entry." -"name)`` where *scandir_path* is the original :func:`scandir` *path* " -"argument. Apart from the filename, the path preserves the original :func:" -"`scandir` argument. If the :func:`scandir` *path* argument was relative, " -"the :attr:`path` attribute is also relative. Changing the current working " -"directory after creating the :func:`scandir` iterator may cause later uses " -"of :attr:`path` to resolve differently. On some platforms, the constructed " -"path may not be valid if the original :func:`scandir` argument was usable " -"for enumeration but not for joining with the entry name. If the :func:" -"`scandir` *path* argument was a :ref:`file descriptor `, the :attr:" -"`path` attribute is the same as the :attr:`name` attribute." +"The entry's path name: equivalent to ``os.path.join(scandir_path, " +"entry.name)`` where *scandir_path* is the original :func:`scandir` *path* " +"argument. Apart from the filename, the path preserves the " +"original :func:`scandir` argument. If the :func:`scandir` *path* argument " +"was relative, the :attr:`path` attribute is also relative. Changing the " +"current working directory after creating the :func:`scandir` iterator may " +"cause later uses of :attr:`path` to resolve differently. On some platforms, " +"the constructed path may not be valid if the original :func:`scandir` " +"argument was usable for enumeration but not for joining with the entry " +"name. If the :func:`scandir` *path* argument was a :ref:`file descriptor " +"`, the :attr:`path` attribute is the same as the :attr:`name` " +"attribute." msgstr "" msgid "" "The :attr:`path` attribute will be ``bytes`` if the :func:`scandir` *path* " -"argument is of type ``bytes`` and ``str`` otherwise. Use :func:`~os." -"fsdecode` to decode byte filenames." +"argument is of type ``bytes`` and ``str`` otherwise. " +"Use :func:`~os.fsdecode` to decode byte filenames." msgstr "" msgid "Return the inode number of the entry." msgstr "" msgid "" -"The result is cached on the ``os.DirEntry`` object. Use ``os.stat(entry." -"path, follow_symlinks=False).st_ino`` to fetch up-to-date information." +"The result is cached on the ``os.DirEntry`` object. Use " +"``os.stat(entry.path, follow_symlinks=False).st_ino`` to fetch up-to-date " +"information." msgstr "" msgid "" @@ -2717,8 +2738,8 @@ msgid "" msgstr "" msgid "" -"This method can raise :exc:`OSError`, such as :exc:`PermissionError`, but :" -"exc:`FileNotFoundError` is caught and not raised." +"This method can raise :exc:`OSError`, such as :exc:`PermissionError`, " +"but :exc:`FileNotFoundError` is caught and not raised." msgstr "" msgid "" @@ -2745,8 +2766,8 @@ msgid "" msgstr "" msgid "" -"The result is cached on the ``os.DirEntry`` object. Call :func:`os.path." -"islink` to fetch up-to-date information." +"The result is cached on the ``os.DirEntry`` object. " +"Call :func:`os.path.islink` to fetch up-to-date information." msgstr "" msgid "" @@ -2763,8 +2784,8 @@ msgid "" msgstr "" msgid "" -"The result is cached on the ``os.DirEntry`` object. Call :func:`os.path." -"isjunction` to fetch up-to-date information." +"The result is cached on the ``os.DirEntry`` object. " +"Call :func:`os.path.isjunction` to fetch up-to-date information." msgstr "" msgid "" @@ -2780,8 +2801,8 @@ msgid "" msgstr "" msgid "" -"On Windows, the ``st_ino``, ``st_dev`` and ``st_nlink`` attributes of the :" -"class:`stat_result` are always set to zero. Call :func:`os.stat` to get " +"On Windows, the ``st_ino``, ``st_dev`` and ``st_nlink`` attributes of " +"the :class:`stat_result` are always set to zero. Call :func:`os.stat` to get " "these attributes." msgstr "" @@ -2799,8 +2820,8 @@ msgid "" msgstr "" msgid "" -"Added support for the :class:`~os.PathLike` interface. Added support for :" -"class:`bytes` paths on Windows." +"Added support for the :class:`~os.PathLike` interface. Added support " +"for :class:`bytes` paths on Windows." msgstr "" msgid "" @@ -2811,11 +2832,11 @@ msgid "" msgstr "" msgid "" -"Get the status of a file or a file descriptor. Perform the equivalent of a :" -"c:func:`stat` system call on the given path. *path* may be specified as " -"either a string or bytes -- directly or indirectly through the :class:" -"`PathLike` interface -- or as an open file descriptor. Return a :class:" -"`stat_result` object." +"Get the status of a file or a file descriptor. Perform the equivalent of " +"a :c:func:`stat` system call on the given path. *path* may be specified as " +"either a string or bytes -- directly or indirectly through " +"the :class:`PathLike` interface -- or as an open file descriptor. Return " +"a :class:`stat_result` object." msgstr "" msgid "" @@ -2824,8 +2845,8 @@ msgid "" msgstr "" msgid "" -"This function can support :ref:`specifying a file descriptor ` and :" -"ref:`not following symlinks `." +"This function can support :ref:`specifying a file descriptor ` " +"and :ref:`not following symlinks `." msgstr "" msgid "" @@ -2835,10 +2856,10 @@ msgid "" "the operating system is unable to follow will be opened directly. When " "following a chain of multiple links, this may result in the original link " "being returned instead of the non-link that prevented full traversal. To " -"obtain stat results for the final path in this case, use the :func:`os.path." -"realpath` function to resolve the path name as far as possible and call :" -"func:`lstat` on the result. This does not apply to dangling symlinks or " -"junction points, which will raise the usual exceptions." +"obtain stat results for the final path in this case, use " +"the :func:`os.path.realpath` function to resolve the path name as far as " +"possible and call :func:`lstat` on the result. This does not apply to " +"dangling symlinks or junction points, which will raise the usual exceptions." msgstr "" msgid "Example::" @@ -2873,9 +2894,9 @@ msgid "" msgstr "" msgid "" -"Object whose attributes correspond roughly to the members of the :c:struct:" -"`stat` structure. It is used for the result of :func:`os.stat`, :func:`os." -"fstat` and :func:`os.lstat`." +"Object whose attributes correspond roughly to the members of " +"the :c:struct:`stat` structure. It is used for the result " +"of :func:`os.stat`, :func:`os.fstat` and :func:`os.lstat`." msgstr "" msgid "Attributes:" @@ -2965,24 +2986,25 @@ msgid "" msgstr "" msgid "" -"The exact meaning and resolution of the :attr:`st_atime`, :attr:`st_mtime`, :" -"attr:`st_ctime` and :attr:`st_birthtime` attributes depend on the operating " -"system and the file system. For example, on Windows systems using the FAT32 " -"file systems, :attr:`st_mtime` has 2-second resolution, and :attr:`st_atime` " -"has only 1-day resolution. See your operating system documentation for " -"details." +"The exact meaning and resolution of " +"the :attr:`st_atime`, :attr:`st_mtime`, :attr:`st_ctime` " +"and :attr:`st_birthtime` attributes depend on the operating system and the " +"file system. For example, on Windows systems using the FAT32 file " +"systems, :attr:`st_mtime` has 2-second resolution, and :attr:`st_atime` has " +"only 1-day resolution. See your operating system documentation for details." msgstr "" msgid "" -"Similarly, although :attr:`st_atime_ns`, :attr:`st_mtime_ns`, :attr:" -"`st_ctime_ns` and :attr:`st_birthtime_ns` are always expressed in " -"nanoseconds, many systems do not provide nanosecond precision. On systems " -"that do provide nanosecond precision, the floating-point object used to " -"store :attr:`st_atime`, :attr:`st_mtime`, :attr:`st_ctime` and :attr:" -"`st_birthtime` cannot preserve all of it, and as such will be slightly " -"inexact. If you need the exact timestamps you should always use :attr:" -"`st_atime_ns`, :attr:`st_mtime_ns`, :attr:`st_ctime_ns` and :attr:" -"`st_birthtime_ns`." +"Similarly, " +"although :attr:`st_atime_ns`, :attr:`st_mtime_ns`, :attr:`st_ctime_ns` " +"and :attr:`st_birthtime_ns` are always expressed in nanoseconds, many " +"systems do not provide nanosecond precision. On systems that do provide " +"nanosecond precision, the floating-point object used to " +"store :attr:`st_atime`, :attr:`st_mtime`, :attr:`st_ctime` " +"and :attr:`st_birthtime` cannot preserve all of it, and as such will be " +"slightly inexact. If you need the exact timestamps you should always " +"use :attr:`st_atime_ns`, :attr:`st_mtime_ns`, :attr:`st_ctime_ns` " +"and :attr:`st_birthtime_ns`." msgstr "" msgid "" @@ -2991,8 +3013,8 @@ msgid "" msgstr "" msgid "" -"Number of 512-byte blocks allocated for file. This may be smaller than :attr:" -"`st_size`/512 when the file has holes." +"Number of 512-byte blocks allocated for file. This may be smaller " +"than :attr:`st_size`/512 when the file has holes." msgstr "" msgid "" @@ -3041,15 +3063,15 @@ msgstr "" msgid "" "Windows file attributes: ``dwFileAttributes`` member of the " "``BY_HANDLE_FILE_INFORMATION`` structure returned by :c:func:`!" -"GetFileInformationByHandle`. See the :const:`!FILE_ATTRIBUTE_* ` constants in the :mod:`stat` module." +"GetFileInformationByHandle`. See the :const:`!FILE_ATTRIBUTE_* " +"` constants in the :mod:`stat` module." msgstr "" msgid "" -"When :attr:`st_file_attributes` has the :const:`~stat." -"FILE_ATTRIBUTE_REPARSE_POINT` set, this field contains the tag identifying " -"the type of reparse point. See the :const:`IO_REPARSE_TAG_* ` constants in the :mod:`stat` module." +"When :attr:`st_file_attributes` has " +"the :const:`~stat.FILE_ATTRIBUTE_REPARSE_POINT` set, this field contains the " +"tag identifying the type of reparse point. See the :const:`IO_REPARSE_TAG_* " +"` constants in the :mod:`stat` module." msgstr "" msgid "" @@ -3061,12 +3083,11 @@ msgstr "" msgid "" "For backward compatibility, a :class:`stat_result` instance is also " "accessible as a tuple of at least 10 integers giving the most important (and " -"portable) members of the :c:struct:`stat` structure, in the order :attr:" -"`st_mode`, :attr:`st_ino`, :attr:`st_dev`, :attr:`st_nlink`, :attr:" -"`st_uid`, :attr:`st_gid`, :attr:`st_size`, :attr:`st_atime`, :attr:" -"`st_mtime`, :attr:`st_ctime`. More items may be added at the end by some " -"implementations. For compatibility with older Python versions, accessing :" -"class:`stat_result` as a tuple always returns integers." +"portable) members of the :c:struct:`stat` structure, in the " +"order :attr:`st_mode`, :attr:`st_ino`, :attr:`st_dev`, :attr:`st_nlink`, :attr:`st_uid`, :attr:`st_gid`, :attr:`st_size`, :attr:`st_atime`, :attr:`st_mtime`, :attr:`st_ctime`. " +"More items may be added at the end by some implementations. For " +"compatibility with older Python versions, accessing :class:`stat_result` as " +"a tuple always returns integers." msgstr "" msgid "Windows now returns the file index as :attr:`st_ino` when available." @@ -3079,9 +3100,9 @@ msgid "Added the :attr:`st_reparse_tag` member on Windows." msgstr "" msgid "" -"On Windows, the :attr:`st_mode` member now identifies special files as :" -"const:`~stat.S_IFCHR`, :const:`~stat.S_IFIFO` or :const:`~stat.S_IFBLK` as " -"appropriate." +"On Windows, the :attr:`st_mode` member now identifies special files " +"as :const:`~stat.S_IFCHR`, :const:`~stat.S_IFIFO` or :const:`~stat.S_IFBLK` " +"as appropriate." msgstr "" msgid "" @@ -3113,16 +3134,16 @@ msgid "" "*path* is a :term:`path-like object` or an open file descriptor. *mask* is a " "combination of the module-level :const:`STATX_* ` constants " "specifying the information to retrieve. *flags* is a combination of the " -"module-level :const:`AT_STATX_* ` constants and/or :" -"const:`AT_NO_AUTOMOUNT`. Returns a :class:`statx_result` object whose :attr:" -"`~os.statx_result.stx_mask` attribute specifies the information actually " -"retrieved (which may differ from *mask*)." +"module-level :const:`AT_STATX_* ` constants and/" +"or :const:`AT_NO_AUTOMOUNT`. Returns a :class:`statx_result` object " +"whose :attr:`~os.statx_result.stx_mask` attribute specifies the information " +"actually retrieved (which may differ from *mask*)." msgstr "" msgid "" -"This function supports :ref:`specifying a file descriptor `, :ref:" -"`paths relative to directory descriptors `, and :ref:`not following " -"symlinks `." +"This function supports :ref:`specifying a file descriptor " +"`, :ref:`paths relative to directory descriptors `, " +"and :ref:`not following symlinks `." msgstr "" msgid "The :manpage:`statx(2)` man page." @@ -3135,16 +3156,16 @@ msgid ":class:`!statx_result` has the following attributes:" msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_ATIME` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_ATIME` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Maximum iovecs for direct I/O with torn-write protection." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_WRITE_ATOMIC` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_WRITE_ATOMIC` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Maximum size for direct I/O with torn-write protection." @@ -3167,29 +3188,29 @@ msgid "" msgstr "" msgid "" -"Number of 512-byte blocks allocated for file. This may be smaller than :attr:" -"`stx_size`/512 when the file has holes." +"Number of 512-byte blocks allocated for file. This may be smaller " +"than :attr:`stx_size`/512 when the file has holes." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_BLOCKS` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_BLOCKS` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Time of file creation expressed in seconds." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_BTIME` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_BTIME` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Time of file creation expressed in nanoseconds as an integer." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_CTIME` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_CTIME` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Major number of the device on which this file resides." @@ -3202,8 +3223,8 @@ msgid "Direct I/O memory buffer alignment requirement." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_DIOALIGN` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_DIOALIGN` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Direct I/O file offset alignment requirement." @@ -3213,21 +3234,21 @@ msgid "Direct I/O file offset alignment requirement for reads." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_DIO_READ_ALIGN` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_DIO_READ_ALIGN` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_GID` is missing from :attr:`~statx_result." -"stx_mask`." +"Equal to ``None`` if :data:`STATX_GID` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Inode number." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_INO` is missing from :attr:`~statx_result." -"stx_mask`." +"Equal to ``None`` if :data:`STATX_INO` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" @@ -3239,8 +3260,8 @@ msgid "Mount identifier." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_MNT_ID` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_MNT_ID` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" @@ -3249,13 +3270,13 @@ msgid "" msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_MTIME` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_MTIME` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_NLINK` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_NLINK` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Major number of the device this file represents." @@ -3265,27 +3286,27 @@ msgid "Minor number of the device this file represents." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_SIZE` is missing from :attr:`~statx_result." -"stx_mask`." +"Equal to ``None`` if :data:`STATX_SIZE` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "Subvolume identifier." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_SUBVOL` is missing from :attr:" -"`~statx_result.stx_mask`." +"Equal to ``None`` if :data:`STATX_SUBVOL` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" -"Equal to ``None`` if :data:`STATX_UID` is missing from :attr:`~statx_result." -"stx_mask`." +"Equal to ``None`` if :data:`STATX_UID` is missing " +"from :attr:`~statx_result.stx_mask`." msgstr "" msgid "" "Bitflags for use in the *mask* parameter to :func:`os.statx`. Some of these " -"flags may be available even when their corresponding members in :class:" -"`statx_result` are not available." +"flags may be available even when their corresponding members " +"in :class:`statx_result` are not available." msgstr "" msgid "" @@ -3301,16 +3322,17 @@ msgstr "" msgid "" "A flag for the :func:`os.statx` function. This flag is defined as ``0``, so " -"it has no effect, but it can be used to explicitly indicate neither :data:" -"`AT_STATX_FORCE_SYNC` nor :data:`AT_STATX_DONT_SYNC` is being passed. In the " -"absence of the other two flags, the kernel will generally return information " -"as fresh as :func:`os.stat` would return." +"it has no effect, but it can be used to explicitly indicate " +"neither :data:`AT_STATX_FORCE_SYNC` nor :data:`AT_STATX_DONT_SYNC` is being " +"passed. In the absence of the other two flags, the kernel will generally " +"return information as fresh as :func:`os.stat` would return." msgstr "" msgid "" "If the final component of a path is an automount point, operate on the " -"automount point instead of performing the automount. On Linux, :func:`os." -"stat`, :func:`os.fstat` and :func:`os.lstat` always behave this way." +"automount point instead of performing the automount. On " +"Linux, :func:`os.stat`, :func:`os.fstat` and :func:`os.lstat` always behave " +"this way." msgstr "" msgid "" @@ -3321,8 +3343,8 @@ msgid "" msgstr "" msgid "" -"Filesystem statistics returned by :func:`os.statvfs` and :func:`os." -"fstatvfs`. See :manpage:`statvfs(3)` for more details." +"Filesystem statistics returned by :func:`os.statvfs` " +"and :func:`os.fstatvfs`. See :manpage:`statvfs(3)` for more details." msgstr "" msgid "Block size." @@ -3352,17 +3374,15 @@ msgid "Number of free file entries for unprivileged users." msgstr "" msgid "" -"Bit-mask of mount flags. The following flags are defined: :data:" -"`ST_RDONLY`, :data:`ST_NOSUID`, :data:`ST_NODEV`, :data:`ST_NOEXEC`, :data:" -"`ST_SYNCHRONOUS`, :data:`ST_MANDLOCK`, :data:`ST_WRITE`, :data:`ST_APPEND`, :" -"data:`ST_IMMUTABLE`, :data:`ST_NOATIME`, :data:`ST_NODIRATIME`, and :data:" -"`ST_RELATIME`." +"Bit-mask of mount flags. The following flags are " +"defined: :data:`ST_RDONLY`, :data:`ST_NOSUID`, :data:`ST_NODEV`, :data:`ST_NOEXEC`, :data:`ST_SYNCHRONOUS`, :data:`ST_MANDLOCK`, :data:`ST_WRITE`, :data:`ST_APPEND`, :data:`ST_IMMUTABLE`, :data:`ST_NOATIME`, :data:`ST_NODIRATIME`, " +"and :data:`ST_RELATIME`." msgstr "" msgid "" -"Filesystem max filename length. OS specific limitations such as :ref:" -"`Windows MAX_PATH ` and those described in Linux :manpage:" -"`pathname(7)` may exist." +"Filesystem max filename length. OS specific limitations such " +"as :ref:`Windows MAX_PATH ` and those described in " +"Linux :manpage:`pathname(7)` may exist." msgstr "" msgid "Filesystem ID." @@ -3437,8 +3457,8 @@ msgid "" "A :class:`set` object indicating whether :func:`os.access` permits " "specifying ``True`` for its *effective_ids* parameter on the local platform. " "(Specifying ``False`` for *effective_ids* is always supported on all " -"platforms.) If the local platform supports it, the collection will contain :" -"func:`os.access`; otherwise it will be empty." +"platforms.) If the local platform supports it, the collection will " +"contain :func:`os.access`; otherwise it will be empty." msgstr "" msgid "" @@ -3465,8 +3485,8 @@ msgstr "" msgid "" "To determine whether a particular function permits specifying an open file " "descriptor for its *path* parameter, use the ``in`` operator on " -"``supports_fd``. As an example, this expression evaluates to ``True`` if :" -"func:`os.chdir` accepts open file descriptors for *path* on your local " +"``supports_fd``. As an example, this expression evaluates to ``True`` " +"if :func:`os.chdir` accepts open file descriptors for *path* on your local " "platform::" msgstr "" @@ -3489,8 +3509,8 @@ msgid "" "To check whether a particular function accepts ``False`` for its " "*follow_symlinks* parameter, use the ``in`` operator on " "``supports_follow_symlinks``. As an example, this expression evaluates to " -"``True`` if you may specify ``follow_symlinks=False`` when calling :func:`os." -"stat` on the local platform::" +"``True`` if you may specify ``follow_symlinks=False`` when " +"calling :func:`os.stat` on the local platform::" msgstr "" msgid "os.stat in os.supports_follow_symlinks" @@ -3584,12 +3604,12 @@ msgid "It is an error to specify tuples for both *times* and *ns*." msgstr "" msgid "" -"Note that the exact times you set here may not be returned by a subsequent :" -"func:`~os.stat` call, depending on the resolution with which your operating " -"system records access and modification times; see :func:`~os.stat`. The best " -"way to preserve exact times is to use the *st_atime_ns* and *st_mtime_ns* " -"fields from the :func:`os.stat` result object with the *ns* parameter to :" -"func:`utime`." +"Note that the exact times you set here may not be returned by a " +"subsequent :func:`~os.stat` call, depending on the resolution with which " +"your operating system records access and modification times; " +"see :func:`~os.stat`. The best way to preserve exact times is to use the " +"*st_atime_ns* and *st_mtime_ns* fields from the :func:`os.stat` result " +"object with the *ns* parameter to :func:`utime`." msgstr "" msgid "" @@ -3805,10 +3825,10 @@ msgstr "" msgid "" "Create and return an event file descriptor. The file descriptors supports " -"raw :func:`read` and :func:`write` with a buffer size of 8, :func:`~select." -"select`, :func:`~select.poll` and similar. See man page :manpage:" -"`eventfd(2)` for more information. By default, the new file descriptor is :" -"ref:`non-inheritable `." +"raw :func:`read` and :func:`write` with a buffer size of " +"8, :func:`~select.select`, :func:`~select.poll` and similar. See man " +"page :manpage:`eventfd(2)` for more information. By default, the new file " +"descriptor is :ref:`non-inheritable `." msgstr "" msgid "" @@ -3824,8 +3844,8 @@ msgid "" msgstr "" msgid "" -"If :const:`EFD_SEMAPHORE` is specified and the event counter is non-zero, :" -"func:`eventfd_read` returns 1 and decrements the counter by one." +"If :const:`EFD_SEMAPHORE` is specified and the event counter is non-" +"zero, :func:`eventfd_read` returns 1 and decrements the counter by one." msgstr "" msgid "" @@ -3835,14 +3855,14 @@ msgid "" msgstr "" msgid "" -"If the event counter is zero and :const:`EFD_NONBLOCK` is not specified, :" -"func:`eventfd_read` blocks." +"If the event counter is zero and :const:`EFD_NONBLOCK` is not " +"specified, :func:`eventfd_read` blocks." msgstr "" msgid "" ":func:`eventfd_write` increments the event counter. Write blocks if the " -"write operation would increment the counter to a value larger than 2\\ :sup:" -"`64`\\ -\\ 2." +"write operation would increment the counter to a value larger than " +"2\\ :sup:`64`\\ -\\ 2." msgstr "" msgid "" @@ -3911,8 +3931,8 @@ msgid "" "The file descriptor's :func:`read` method can be called with a buffer size " "of 8. If the timer has already expired one or more times, :func:`read` " "returns the number of expirations with the host's endianness, which may be " -"converted to an :class:`int` by ``int.from_bytes(x, byteorder=sys." -"byteorder)``." +"converted to an :class:`int` by ``int.from_bytes(x, " +"byteorder=sys.byteorder)``." msgstr "" msgid "" @@ -3936,9 +3956,9 @@ msgstr "" msgid "" "If *clockid* is :const:`time.CLOCK_REALTIME`, a settable system-wide real-" -"time clock is used. If system clock is changed, timer setting need to be " -"updated. To cancel timer when system clock is changed, see :const:" -"`TFD_TIMER_CANCEL_ON_SET`." +"time clock is used. If the system clock is changed, the timer setting needs " +"to be updated. To cancel the timer when the system clock is changed, " +"see :const:`TFD_TIMER_CANCEL_ON_SET`." msgstr "" msgid "" @@ -3948,8 +3968,9 @@ msgid "" msgstr "" msgid "" -"If *clockid* is :const:`time.CLOCK_BOOTTIME`, same as :const:`time." -"CLOCK_MONOTONIC` except it includes any time that the system is suspended." +"If *clockid* is :const:`time.CLOCK_BOOTTIME`, it is the same " +"as :const:`time.CLOCK_MONOTONIC` except it includes any time that the system " +"is suspended." msgstr "" msgid "" @@ -3966,9 +3987,9 @@ msgstr "" msgid "" "If :const:`TFD_NONBLOCK` is not set as a flag, :func:`read` blocks until the " -"timer expires. If it is set as a flag, :func:`read` doesn't block, but If " +"timer expires. If it is set as a flag, :func:`read` doesn't block, but if " "there hasn't been an expiration since the last call to read, :func:`read` " -"raises :class:`OSError` with ``errno`` is set to :const:`errno.EAGAIN`." +"raises :class:`OSError` with ``errno`` set to :const:`errno.EAGAIN`." msgstr "" msgid ":const:`TFD_CLOEXEC` is always set by Python automatically." @@ -4004,14 +4025,12 @@ msgstr "" msgid "" "The timer is disabled by setting *initial* to zero (``0``). If *initial* is " -"equal to or greater than zero, the timer is enabled. If *initial* is less " -"than zero, it raises an :class:`OSError` exception with ``errno`` set to :" -"const:`errno.EINVAL`" +"greater than zero, the timer is enabled. If *initial* is less than zero, it " +"raises an :class:`OSError` exception with ``errno`` set " +"to :const:`errno.EINVAL`." msgstr "" -msgid "" -"By default the timer will fire when *initial* seconds have elapsed. (If " -"*initial* is zero, timer will fire immediately.)" +msgid "By default the timer will fire when *initial* seconds have elapsed." msgstr "" msgid "" @@ -4025,15 +4044,15 @@ msgid "" "zero, the timer only fires once, on the initial expiration. If *interval* is " "greater than zero, the timer fires every time *interval* seconds have " "elapsed since the previous expiration. If *interval* is less than zero, it " -"raises :class:`OSError` with ``errno`` set to :const:`errno.EINVAL`" +"raises :class:`OSError` with ``errno`` set to :const:`errno.EINVAL`." msgstr "" msgid "" -"If the :const:`TFD_TIMER_CANCEL_ON_SET` flag is set along with :const:" -"`TFD_TIMER_ABSTIME` and the clock for this timer is :const:`time." -"CLOCK_REALTIME`, the timer is marked as cancelable if the real-time clock is " -"changed discontinuously. Reading the descriptor is aborted with the error " -"ECANCELED." +"If the :const:`TFD_TIMER_CANCEL_ON_SET` flag is set along " +"with :const:`TFD_TIMER_ABSTIME` and the clock for this timer " +"is :const:`time.CLOCK_REALTIME`, the timer is marked as cancelable if the " +"real-time clock is changed discontinuously. Reading the descriptor is " +"aborted with the error :const:`errno.ECANCELED`." msgstr "" msgid "" @@ -4061,8 +4080,8 @@ msgid "" msgstr "" msgid "" -":manpage:`timerfd_create(2)`, :manpage:`timerfd_settime(2)`, :manpage:" -"`settimeofday(2)`, :manpage:`clock_settime(2)`, and :manpage:`date(1)`." +":manpage:`timerfd_create(2)`, :manpage:`timerfd_settime(2)`, :manpage:`settimeofday(2)`, :manpage:`clock_settime(2)`, " +"and :manpage:`date(1)`." msgstr "" msgid "" @@ -4090,9 +4109,9 @@ msgid "Similar to :func:`timerfd_gettime`, but return time as nanoseconds." msgstr "" msgid "" -"A flag for the :func:`timerfd_create` function, which sets the :const:" -"`O_NONBLOCK` status flag for the new timer file descriptor. If :const:" -"`TFD_NONBLOCK` is not set as a flag, :func:`read` blocks." +"A flag for the :func:`timerfd_create` function, which sets " +"the :const:`O_NONBLOCK` status flag for the new timer file descriptor. " +"If :const:`TFD_NONBLOCK` is not set as a flag, :func:`read` blocks." msgstr "" msgid "" @@ -4121,9 +4140,9 @@ msgstr "" msgid "" "Return the value of the extended filesystem attribute *attribute* for " -"*path*. *attribute* can be bytes or str (directly or indirectly through the :" -"class:`PathLike` interface). If it is str, it is encoded with the filesystem " -"encoding." +"*path*. *attribute* can be bytes or str (directly or indirectly through " +"the :class:`PathLike` interface). If it is str, it is encoded with the " +"filesystem encoding." msgstr "" msgid "" @@ -4153,9 +4172,9 @@ msgstr "" msgid "" "Removes the extended filesystem attribute *attribute* from *path*. " -"*attribute* should be bytes or str (directly or indirectly through the :" -"class:`PathLike` interface). If it is a string, it is encoded with the :term:" -"`filesystem encoding and error handler`." +"*attribute* should be bytes or str (directly or indirectly through " +"the :class:`PathLike` interface). If it is a string, it is encoded with " +"the :term:`filesystem encoding and error handler`." msgstr "" msgid "" @@ -4169,9 +4188,9 @@ msgid "" "indirectly through the :class:`PathLike` interface). If it is a str, it is " "encoded with the :term:`filesystem encoding and error handler`. *flags* may " "be :data:`XATTR_REPLACE` or :data:`XATTR_CREATE`. If :data:`XATTR_REPLACE` " -"is given and the attribute does not exist, ``ENODATA`` will be raised. If :" -"data:`XATTR_CREATE` is given and the attribute already exists, the attribute " -"will not be created and ``EEXISTS`` will be raised." +"is given and the attribute does not exist, ``ENODATA`` will be raised. " +"If :data:`XATTR_CREATE` is given and the attribute already exists, the " +"attribute will not be created and ``EEXISTS`` will be raised." msgstr "" msgid "" @@ -4219,8 +4238,8 @@ msgid "" "Generate a :const:`~signal.SIGABRT` signal to the current process. On Unix, " "the default behavior is to produce a core dump; on Windows, the process " "immediately returns an exit code of ``3``. Be aware that calling this " -"function will not call the Python signal handler registered for :const:" -"`~signal.SIGABRT` with :func:`signal.signal`." +"function will not call the Python signal handler registered " +"for :const:`~signal.SIGABRT` with :func:`signal.signal`." msgstr "" msgid "Add a path to the DLL search path." @@ -4238,9 +4257,9 @@ msgid "" msgstr "" msgid "" -"See the `Microsoft documentation `_ for more information about how " -"DLLs are loaded." +"See the `Microsoft documentation `_ for more information about how DLLs " +"are loaded." msgstr "" msgid "" @@ -4271,8 +4290,8 @@ msgstr "" msgid "" "The current process is replaced immediately. Open file objects and " "descriptors are not flushed, so if there may be data buffered on these open " -"files, you should flush them using :func:`~io.IOBase.flush` or :func:`os." -"fsync` before calling an :func:`exec\\* ` function." +"files, you should flush them using :func:`~io.IOBase.flush` " +"or :func:`os.fsync` before calling an :func:`exec\\* ` function." msgstr "" msgid "" @@ -4288,33 +4307,34 @@ msgid "" msgstr "" msgid "" -"The variants which include a \"p\" near the end (:func:`execlp`, :func:" -"`execlpe`, :func:`execvp`, and :func:`execvpe`) will use the :envvar:`PATH` " -"environment variable to locate the program *file*. When the environment is " -"being replaced (using one of the :func:`exec\\*e ` variants, " -"discussed in the next paragraph), the new environment is used as the source " -"of the :envvar:`PATH` variable. The other variants, :func:`execl`, :func:" -"`execle`, :func:`execv`, and :func:`execve`, will not use the :envvar:`PATH` " -"variable to locate the executable; *path* must contain an appropriate " -"absolute or relative path. Relative paths must include at least one slash, " -"even on Windows, as plain names will not be resolved." +"The variants which include a \"p\" near the end " +"(:func:`execlp`, :func:`execlpe`, :func:`execvp`, and :func:`execvpe`) will " +"use the :envvar:`PATH` environment variable to locate the program *file*. " +"When the environment is being replaced (using one of the :func:`exec\\*e " +"` variants, discussed in the next paragraph), the new environment is " +"used as the source of the :envvar:`PATH` variable. The other " +"variants, :func:`execl`, :func:`execle`, :func:`execv`, and :func:`execve`, " +"will not use the :envvar:`PATH` variable to locate the executable; *path* " +"must contain an appropriate absolute or relative path. Relative paths must " +"include at least one slash, even on Windows, as plain names will not be " +"resolved." msgstr "" msgid "" "For :func:`execle`, :func:`execlpe`, :func:`execve`, and :func:`execvpe` " "(note that these all end in \"e\"), the *env* parameter must be a mapping " "which is used to define the environment variables for the new process (these " -"are used instead of the current process' environment); the functions :func:" -"`execl`, :func:`execlp`, :func:`execv`, and :func:`execvp` all cause the new " -"process to inherit the environment of the current process." +"are used instead of the current process' environment); the " +"functions :func:`execl`, :func:`execlp`, :func:`execv`, and :func:`execvp` " +"all cause the new process to inherit the environment of the current process." msgstr "" msgid "" "For :func:`execve` on some platforms, *path* may also be specified as an " "open file descriptor. This functionality may not be supported on your " -"platform; you can check whether or not it is available using :data:`os." -"supports_fd`. If it is unavailable, using it will raise a :exc:" -"`NotImplementedError`." +"platform; you can check whether or not it is available " +"using :data:`os.supports_fd`. If it is unavailable, using it will raise " +"a :exc:`NotImplementedError`." msgstr "" msgid "" @@ -4323,8 +4343,8 @@ msgid "" msgstr "" msgid "" -"Added support for specifying *path* as an open file descriptor for :func:" -"`execve`." +"Added support for specifying *path* as an open file descriptor " +"for :func:`execve`." msgstr "" msgid "" @@ -4442,13 +4462,13 @@ msgid "" msgstr "" msgid "" -"Calling ``fork()`` in a subinterpreter is no longer supported (:exc:" -"`RuntimeError` is raised)." +"Calling ``fork()`` in a subinterpreter is no longer supported " +"(:exc:`RuntimeError` is raised)." msgstr "" msgid "" -"If Python is able to detect that your process has multiple threads, :func:" -"`os.fork` now raises a :exc:`DeprecationWarning`." +"If Python is able to detect that your process has multiple " +"threads, :func:`os.fork` now raises a :exc:`DeprecationWarning`." msgstr "" msgid "" @@ -4490,14 +4510,14 @@ msgid "" msgstr "" msgid "" -"Calling ``forkpty()`` in a subinterpreter is no longer supported (:exc:" -"`RuntimeError` is raised)." +"Calling ``forkpty()`` in a subinterpreter is no longer supported " +"(:exc:`RuntimeError` is raised)." msgstr "" msgid "" "If Python is able to detect that your process has multiple threads, this now " -"raises a :exc:`DeprecationWarning`. See the longer explanation on :func:`os." -"fork`." +"raises a :exc:`DeprecationWarning`. See the longer explanation " +"on :func:`os.fork`." msgstr "" msgid "The returned file descriptor is now made non-inheritable." @@ -4509,10 +4529,10 @@ msgid "" msgstr "" msgid "" -"Windows: The :const:`signal.CTRL_C_EVENT` and :const:`signal." -"CTRL_BREAK_EVENT` signals are special signals which can only be sent to " -"console processes which share a common console window, e.g., some " -"subprocesses. Any other value for *sig* will cause the process to be " +"Windows: The :const:`signal.CTRL_C_EVENT` " +"and :const:`signal.CTRL_BREAK_EVENT` signals are special signals which can " +"only be sent to console processes which share a common console window, e.g., " +"some subprocesses. Any other value for *sig* will cause the process to be " "unconditionally killed by the TerminateProcess API, and the exit code will " "be set to *sig*." msgstr "" @@ -4562,9 +4582,9 @@ msgid "" "Open a pipe to or from command *cmd*. The return value is an open file " "object connected to the pipe, which can be read or written depending on " "whether *mode* is ``'r'`` (default) or ``'w'``. The *buffering* argument " -"have the same meaning as the corresponding argument to the built-in :func:" -"`open` function. The returned file object reads or writes text strings " -"rather than bytes." +"have the same meaning as the corresponding argument to the built-" +"in :func:`open` function. The returned file object reads or writes text " +"strings rather than bytes." msgstr "" msgid "" @@ -4596,9 +4616,9 @@ msgid "" msgstr "" msgid "" -":func:`popen` is a simple wrapper around :class:`subprocess.Popen`. Use :" -"class:`subprocess.Popen` or :func:`subprocess.run` to control options like " -"encodings." +":func:`popen` is a simple wrapper around :class:`subprocess.Popen`. " +"Use :class:`subprocess.Popen` or :func:`subprocess.run` to control options " +"like encodings." msgstr "" msgid "The :mod:`subprocess` module is recommended instead." @@ -4612,9 +4632,9 @@ msgid "" msgstr "" msgid "" -"The positional-only arguments *path*, *args*, and *env* are similar to :func:" -"`execve`. *env* is allowed to be ``None``, in which case current process' " -"environment is used." +"The positional-only arguments *path*, *args*, and *env* are similar " +"to :func:`execve`. *env* is allowed to be ``None``, in which case current " +"process' environment is used." msgstr "" msgid "" @@ -4660,8 +4680,8 @@ msgid "" "posix_spawn_file_actions_addopen`, :c:func:`!" "posix_spawn_file_actions_addclose`, :c:func:`!" "posix_spawn_file_actions_adddup2`, and :c:func:`!" -"posix_spawn_file_actions_addclosefrom_np` API calls used to prepare for the :" -"c:func:`!posix_spawn` call itself." +"posix_spawn_file_actions_addclosefrom_np` API calls used to prepare for " +"the :c:func:`!posix_spawn` call itself." msgstr "" msgid "" @@ -4684,9 +4704,9 @@ msgstr "" msgid "" "If the *setsid* argument is ``True``, it will create a new session ID for " -"``posix_spawn``. *setsid* requires :c:macro:`!POSIX_SPAWN_SETSID` or :c:" -"macro:`!POSIX_SPAWN_SETSID_NP` flag. Otherwise, :exc:`NotImplementedError` " -"is raised." +"``posix_spawn``. *setsid* requires :c:macro:`!POSIX_SPAWN_SETSID` " +"or :c:macro:`!POSIX_SPAWN_SETSID_NP` flag. " +"Otherwise, :exc:`NotImplementedError` is raised." msgstr "" msgid "" @@ -4735,9 +4755,9 @@ msgid "See :func:`posix_spawn` documentation." msgstr "" msgid "" -"Register callables to be executed when a new child process is forked using :" -"func:`os.fork` or similar process cloning APIs. The parameters are optional " -"and keyword-only. Each specifies a different call point." +"Register callables to be executed when a new child process is forked " +"using :func:`os.fork` or similar process cloning APIs. The parameters are " +"optional and keyword-only. Each specifies a different call point." msgstr "" msgid "*before* is a function called before forking a child process." @@ -4765,8 +4785,9 @@ msgstr "" msgid "" "Note that :c:func:`fork` calls made by third-party C code may not call those " -"functions, unless it explicitly calls :c:func:`PyOS_BeforeFork`, :c:func:" -"`PyOS_AfterFork_Parent` and :c:func:`PyOS_AfterFork_Child`." +"functions, unless it explicitly " +"calls :c:func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` " +"and :c:func:`PyOS_AfterFork_Child`." msgstr "" msgid "There is no way to unregister a function." @@ -4778,8 +4799,8 @@ msgstr "" msgid "" "(Note that the :mod:`subprocess` module provides more powerful facilities " "for spawning new processes and retrieving their results; using that module " -"is preferable to using these functions. Check especially the :ref:" -"`subprocess-replacements` section.)" +"is preferable to using these functions. Check especially " +"the :ref:`subprocess-replacements` section.)" msgstr "" msgid "" @@ -4807,26 +4828,27 @@ msgid "" msgstr "" msgid "" -"The variants which include a second \"p\" near the end (:func:`spawnlp`, :" -"func:`spawnlpe`, :func:`spawnvp`, and :func:`spawnvpe`) will use the :envvar:" -"`PATH` environment variable to locate the program *file*. When the " -"environment is being replaced (using one of the :func:`spawn\\*e ` " -"variants, discussed in the next paragraph), the new environment is used as " -"the source of the :envvar:`PATH` variable. The other variants, :func:" -"`spawnl`, :func:`spawnle`, :func:`spawnv`, and :func:`spawnve`, will not use " -"the :envvar:`PATH` variable to locate the executable; *path* must contain an " -"appropriate absolute or relative path." +"The variants which include a second \"p\" near the end " +"(:func:`spawnlp`, :func:`spawnlpe`, :func:`spawnvp`, and :func:`spawnvpe`) " +"will use the :envvar:`PATH` environment variable to locate the program " +"*file*. When the environment is being replaced (using one of " +"the :func:`spawn\\*e ` variants, discussed in the next paragraph), " +"the new environment is used as the source of the :envvar:`PATH` variable. " +"The other variants, :func:`spawnl`, :func:`spawnle`, :func:`spawnv`, " +"and :func:`spawnve`, will not use the :envvar:`PATH` variable to locate the " +"executable; *path* must contain an appropriate absolute or relative path." msgstr "" msgid "" "For :func:`spawnle`, :func:`spawnlpe`, :func:`spawnve`, and :func:`spawnvpe` " "(note that these all end in \"e\"), the *env* parameter must be a mapping " "which is used to define the environment variables for the new process (they " -"are used instead of the current process' environment); the functions :func:" -"`spawnl`, :func:`spawnlp`, :func:`spawnv`, and :func:`spawnvp` all cause the " -"new process to inherit the environment of the current process. Note that " -"keys and values in the *env* dictionary must be strings; invalid keys or " -"values will cause the function to fail, with a return value of ``127``." +"are used instead of the current process' environment); the " +"functions :func:`spawnl`, :func:`spawnlp`, :func:`spawnv`, " +"and :func:`spawnvp` all cause the new process to inherit the environment of " +"the current process. Note that keys and values in the *env* dictionary must " +"be strings; invalid keys or values will cause the function to fail, with a " +"return value of ``127``." msgstr "" msgid "" @@ -4856,9 +4878,9 @@ msgstr "" msgid "" "Possible values for the *mode* parameter to the :func:`spawn\\* ` " -"family of functions. If either of these values is given, the :func:" -"`spawn\\* ` functions will return as soon as the new process has " -"been created, with the process id as the return value." +"family of functions. If either of these values is given, " +"the :func:`spawn\\* ` functions will return as soon as the new " +"process has been created, with the process id as the return value." msgstr "" msgid "" @@ -4871,11 +4893,11 @@ msgstr "" msgid "" "Possible values for the *mode* parameter to the :func:`spawn\\* ` " -"family of functions. These are less portable than those listed above. :" -"const:`P_DETACH` is similar to :const:`P_NOWAIT`, but the new process is " -"detached from the console of the calling process. If :const:`P_OVERLAY` is " -"used, the current process will be replaced; the :func:`spawn\\* ` " -"function will not return." +"family of functions. These are less portable than those listed " +"above. :const:`P_DETACH` is similar to :const:`P_NOWAIT`, but the new " +"process is detached from the console of the calling process. " +"If :const:`P_OVERLAY` is used, the current process will be replaced; " +"the :func:`spawn\\* ` function will not return." msgstr "" msgid "Start a file with its associated application." @@ -4883,9 +4905,9 @@ msgstr "" msgid "" "When *operation* is not specified, this acts like double-clicking the file " -"in Windows Explorer, or giving the file name as an argument to the :program:" -"`start` command from the interactive command shell: the file is opened with " -"whatever application (if any) its extension is associated." +"in Windows Explorer, or giving the file name as an argument to " +"the :program:`start` command from the interactive command shell: the file is " +"opened with whatever application (if any) its extension is associated." msgstr "" msgid "" @@ -4940,8 +4962,8 @@ msgid "" msgstr "" msgid "" -"Added the *arguments*, *cwd* and *show_cmd* arguments, and the ``os." -"startfile/2`` audit event." +"Added the *arguments*, *cwd* and *show_cmd* arguments, and the " +"``os.startfile/2`` audit event." msgstr "" msgid "" @@ -4961,10 +4983,10 @@ msgstr "" msgid "" "On Windows, the return value is that returned by the system shell after " -"running *command*. The shell is given by the Windows environment variable :" -"envvar:`COMSPEC`: it is usually :program:`cmd.exe`, which returns the exit " -"status of the command run; on systems using a non-native shell, consult your " -"shell documentation." +"running *command*. The shell is given by the Windows environment " +"variable :envvar:`COMSPEC`: it is usually :program:`cmd.exe`, which returns " +"the exit status of the command run; on systems using a non-native shell, " +"consult your shell documentation." msgstr "" msgid "" @@ -5012,8 +5034,8 @@ msgid "" msgstr "" msgid "" -"See the Unix manual page :manpage:`times(2)` and `times(3) `_ manual page on Unix or `the " +"See the Unix manual page :manpage:`times(2)` and `times(3) `_ manual page on Unix or `the " "GetProcessTimes MSDN `_ on Windows. On " "Windows, only :attr:`!user` and :attr:`!system` are known; the other " @@ -5040,28 +5062,28 @@ msgstr "" msgid "" "The other :func:`!wait*` functions documented below can be used to wait for " -"the completion of a specific child process and have more options. :func:" -"`waitpid` is the only one also available on Windows." +"the completion of a specific child process and have more " +"options. :func:`waitpid` is the only one also available on Windows." msgstr "" msgid "Wait for the completion of a child process." msgstr "" msgid "" -"*idtype* can be :data:`P_PID`, :data:`P_PGID`, :data:`P_ALL`, or (on Linux) :" -"data:`P_PIDFD`. The interpretation of *id* depends on it; see their " +"*idtype* can be :data:`P_PID`, :data:`P_PGID`, :data:`P_ALL`, or (on " +"Linux) :data:`P_PIDFD`. The interpretation of *id* depends on it; see their " "individual descriptions." msgstr "" msgid "" -"*options* is an OR combination of flags. At least one of :data:`WEXITED`, :" -"data:`WSTOPPED` or :data:`WCONTINUED` is required; :data:`WNOHANG` and :data:" -"`WNOWAIT` are additional optional flags." +"*options* is an OR combination of flags. At least one " +"of :data:`WEXITED`, :data:`WSTOPPED` or :data:`WCONTINUED` is " +"required; :data:`WNOHANG` and :data:`WNOWAIT` are additional optional flags." msgstr "" msgid "" -"The return value is an object representing the data contained in the :c:type:" -"`siginfo_t` structure with the following attributes:" +"The return value is an object representing the data contained in " +"the :c:type:`siginfo_t` structure with the following attributes:" msgstr "" msgid ":attr:`!si_pid` (process ID)" @@ -5124,9 +5146,9 @@ msgid "" "bits (shifting makes cross-platform use of the function easier). A *pid* " "less than or equal to ``0`` has no special meaning on Windows, and raises an " "exception. The value of integer *options* has no effect. *pid* can refer to " -"any process whose id is known, not necessarily a child process. The :func:" -"`spawn\\* ` functions called with :const:`P_NOWAIT` return suitable " -"process handles." +"any process whose id is known, not necessarily a child process. " +"The :func:`spawn\\* ` functions called with :const:`P_NOWAIT` return " +"suitable process handles." msgstr "" msgid "" @@ -5176,8 +5198,8 @@ msgid "The :data:`!P_PIDFD` constant." msgstr "" msgid "" -"This *options* flag for :func:`waitpid`, :func:`wait3`, :func:`wait4`, and :" -"func:`waitid` causes child processes to be reported if they have been " +"This *options* flag for :func:`waitpid`, :func:`wait3`, :func:`wait4`, " +"and :func:`waitid` causes child processes to be reported if they have been " "continued from a job control stop since they were last reported." msgstr "" @@ -5261,14 +5283,14 @@ msgid "" msgstr "" msgid "" -":func:`WIFEXITED`, :func:`WEXITSTATUS`, :func:`WIFSIGNALED`, :func:" -"`WTERMSIG`, :func:`WIFSTOPPED`, :func:`WSTOPSIG` functions." +":func:`WIFEXITED`, :func:`WEXITSTATUS`, :func:`WIFSIGNALED`, :func:`WTERMSIG`, :func:`WIFSTOPPED`, :func:`WSTOPSIG` " +"functions." msgstr "" msgid "" -"The following functions take a process status code as returned by :func:" -"`system`, :func:`wait`, or :func:`waitpid` as a parameter. They may be used " -"to determine the disposition of a process." +"The following functions take a process status code as returned " +"by :func:`system`, :func:`wait`, or :func:`waitpid` as a parameter. They " +"may be used to determine the disposition of a process." msgstr "" msgid "" @@ -5280,9 +5302,9 @@ msgid "This function should be employed only if :func:`WIFSIGNALED` is true." msgstr "" msgid "" -"Return ``True`` if a stopped child has been resumed by delivery of :const:" -"`~signal.SIGCONT` (if the process has been continued from a job control " -"stop), otherwise return ``False``." +"Return ``True`` if a stopped child has been resumed by delivery " +"of :const:`~signal.SIGCONT` (if the process has been continued from a job " +"control stop), otherwise return ``False``." msgstr "" msgid "See :data:`WCONTINUED` option." @@ -5372,9 +5394,9 @@ msgid "" msgstr "" msgid "" -"This class represents tunable scheduling parameters used in :func:" -"`sched_setparam`, :func:`sched_setscheduler`, and :func:`sched_getparam`. It " -"is immutable." +"This class represents tunable scheduling parameters used " +"in :func:`sched_setparam`, :func:`sched_setscheduler`, " +"and :func:`sched_getparam`. It is immutable." msgstr "" msgid "At the moment, there is only one possible parameter:" @@ -5462,8 +5484,8 @@ msgstr "" msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " -"included in ``confstr_names``, an :exc:`OSError` is raised with :const:" -"`errno.EINVAL` for the error number." +"included in ``confstr_names``, an :exc:`OSError` is raised " +"with :const:`errno.EINVAL` for the error number." msgstr "" msgid "" @@ -5495,8 +5517,8 @@ msgstr "" msgid "" "Get the number of logical CPUs usable by the calling thread of the **current " -"process**. Returns ``None`` if undetermined. It can be less than :func:" -"`cpu_count` depending on the CPU affinity." +"process**. Returns ``None`` if undetermined. It can be less " +"than :func:`cpu_count` depending on the CPU affinity." msgstr "" msgid "" @@ -5541,22 +5563,22 @@ msgstr "" msgid "" "The constant string used by the operating system to refer to the current " -"directory. This is ``'.'`` for Windows and POSIX. Also available via :mod:" -"`os.path`." +"directory. This is ``'.'`` for Windows and POSIX. Also available " +"via :mod:`os.path`." msgstr "" msgid "" "The constant string used by the operating system to refer to the parent " -"directory. This is ``'..'`` for Windows and POSIX. Also available via :mod:" -"`os.path`." +"directory. This is ``'..'`` for Windows and POSIX. Also available " +"via :mod:`os.path`." msgstr "" msgid "" "The character used by the operating system to separate pathname components. " "This is ``'/'`` for POSIX and ``'\\\\'`` for Windows. Note that knowing " -"this is not sufficient to be able to parse or concatenate pathnames --- use :" -"func:`os.path.split` and :func:`os.path.join` --- but it is occasionally " -"useful. Also available via :mod:`os.path`." +"this is not sufficient to be able to parse or concatenate pathnames --- " +"use :func:`os.path.split` and :func:`os.path.join` --- but it is " +"occasionally useful. Also available via :mod:`os.path`." msgstr "" msgid "" @@ -5578,17 +5600,17 @@ msgid "" msgstr "" msgid "" -"The default search path used by :func:`exec\\*p\\* ` and :func:" -"`spawn\\*p\\* ` if the environment doesn't have a ``'PATH'`` key. " -"Also available via :mod:`os.path`." +"The default search path used by :func:`exec\\*p\\* ` " +"and :func:`spawn\\*p\\* ` if the environment doesn't have a " +"``'PATH'`` key. Also available via :mod:`os.path`." msgstr "" msgid "" "The string used to separate (or, rather, terminate) lines on the current " "platform. This may be a single character, such as ``'\\n'`` for POSIX, or " -"multiple characters, for example, ``'\\r\\n'`` for Windows. Do not use *os." -"linesep* as a line terminator when writing files opened in text mode (the " -"default); use a single ``'\\n'`` instead, on all platforms." +"multiple characters, for example, ``'\\r\\n'`` for Windows. Do not use " +"*os.linesep* as a line terminator when writing files opened in text mode " +"(the default); use a single ``'\\n'`` instead, on all platforms." msgstr "" msgid "" @@ -5597,9 +5619,9 @@ msgid "" msgstr "" msgid "" -"Flags for use with the :func:`~sys.setdlopenflags` and :func:`~sys." -"getdlopenflags` functions. See the Unix manual page :manpage:`dlopen(3)` " -"for what the different flags mean." +"Flags for use with the :func:`~sys.setdlopenflags` " +"and :func:`~sys.getdlopenflags` functions. See the Unix manual " +"page :manpage:`dlopen(3)` for what the different flags mean." msgstr "" msgid "Random numbers" @@ -5624,8 +5646,8 @@ msgstr "" msgid "" "The flags argument is a bit mask that can contain zero or more of the " -"following values ORed together: :py:const:`os.GRND_RANDOM` and :py:data:" -"`GRND_NONBLOCK`." +"following values ORed together: :py:const:`os.GRND_RANDOM` " +"and :py:data:`GRND_NONBLOCK`." msgstr "" msgid "" diff --git a/library/ossaudiodev.po b/library/ossaudiodev.po index 88d7a2e..506c536 100644 --- a/library/ossaudiodev.po +++ b/library/ossaudiodev.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!ossaudiodev` --- Access to OSS-compatible audio devices" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/pathlib.po b/library/pathlib.po index 82fb3fb..2420efc 100644 --- a/library/pathlib.po +++ b/library/pathlib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -71,8 +71,8 @@ msgid ":pep:`428`: The pathlib module -- object-oriented filesystem paths." msgstr "" msgid "" -"For low-level path manipulation on strings, you can also use the :mod:`os." -"path` module." +"For low-level path manipulation on strings, you can also use " +"the :mod:`os.path` module." msgstr "" msgid "Basic use" @@ -176,17 +176,19 @@ msgid "" "PurePosixPath('foo/bar')" msgstr "" -msgid "When *pathsegments* is empty, the current directory is assumed::" +msgid "" +"When *pathsegments* is empty or consists only of empty strings, the current " +"directory is assumed::" msgstr "" msgid "" -">>> PurePath()\n" -"PurePosixPath('.')" +">>> PurePath(), PurePath('')\n" +"(PurePosixPath('.'), PurePosixPath('.'))" msgstr "" msgid "" -"If a segment is an absolute path, all previous segments are ignored (like :" -"func:`os.path.join`)::" +"If a segment is an absolute path, all previous segments are ignored " +"(like :func:`os.path.join`)::" msgstr "" msgid "" @@ -197,8 +199,8 @@ msgid "" msgstr "" msgid "" -"On Windows, the drive is not reset when a rooted relative path segment (e." -"g., ``r'\\foo'``) is encountered::" +"On Windows, the drive is not reset when a rooted relative path segment " +"(e.g., ``r'\\foo'``) is encountered::" msgstr "" msgid "" @@ -326,8 +328,8 @@ msgid "" msgstr "" msgid "" -"A path object can be used anywhere an object implementing :class:`os." -"PathLike` is accepted::" +"A path object can be used anywhere an object " +"implementing :class:`os.PathLike` is accepted::" msgstr "" msgid "" @@ -394,6 +396,26 @@ msgstr "" msgid "Methods and properties" msgstr "" +msgid "" +"The :attr:`~PurePath.parent`, :attr:`~PurePath.name`, :attr:`~PurePath.stem`, " +"and :attr:`~PurePath.suffix` properties describe different parts of a path. " +"For example, given::" +msgstr "" + +msgid ">>> p = PurePosixPath('/srv/holy/grail.tar.gz')" +msgstr "" + +msgid "" +"For p = PurePosixPath('/srv/holy/grail.tar.gz'), p.parent is\n" +"PurePosixPath('/srv/holy'), p.name is 'grail.tar.gz',\n" +"p.stem is 'grail.tar', and p.suffix is '.gz'." +msgstr "" + +msgid "" +"The stem excludes only the final suffix: in this example, it includes " +"``.tar``." +msgstr "" + msgid "Pure paths provide the following methods and properties:" msgstr "" @@ -443,8 +465,8 @@ msgid "" msgstr "" msgid "" -"If the path starts with more than two successive slashes, :class:`~pathlib." -"PurePosixPath` collapses them::" +"If the path starts with more than two successive " +"slashes, :class:`~pathlib.PurePosixPath` collapses them::" msgstr "" msgid "" @@ -458,8 +480,8 @@ msgstr "" msgid "" "This behavior conforms to *The Open Group Base Specifications Issue 6*, " -"paragraph `4.11 Pathname Resolution `_:" +"paragraph `4.11 Pathname Resolution `_:" msgstr "" msgid "" @@ -671,12 +693,27 @@ msgid "" "True\n" ">>> PurePath('a/b.py').full_match('*.py')\n" "False\n" -">>> PurePath('/a/b/c.py').full_match('/a/**')\n" -"True\n" ">>> PurePath('/a/b/c.py').full_match('**/*.py')\n" +"True\n" +">>> PurePath('/a/b/c.py').full_match('/a/**')\n" "True" msgstr "" +msgid "" +"Patterns ending in \"``/**``\", as in the example above, may surprise when " +"passed to ``full_match``. Even though \"``**``\" can match 0 segments, " +"\"``.../**``\" requires a separator to match. Hence \"``/a/**``\" does not " +"match path \"``/a``\". Since :class:`PurePath` drops trailing slashes, this " +"pattern also does not match \"``/a/``\"." +msgstr "" + +msgid "" +">>> PurePath('/a').full_match('/a/**')\n" +"False\n" +">>> PurePath('/a/').full_match('/a/**')\n" +"False" +msgstr "" + msgid ":ref:`pathlib-pattern-language` documentation." msgstr "" @@ -744,8 +781,8 @@ msgstr "" msgid "" "When *walk_up* is false (the default), the path must start with *other*. " "When the argument is true, ``..`` entries may be added to form the relative " -"path. In all other cases, such as the paths referencing different drives, :" -"exc:`ValueError` is raised.::" +"path. In all other cases, such as the paths referencing different " +"drives, :exc:`ValueError` is raised.::" msgstr "" msgid "" @@ -898,8 +935,8 @@ msgid "" msgstr "" msgid "" -"Raises :exc:`UnsupportedOperation` on Windows. In previous versions, :exc:" -"`NotImplementedError` was raised instead." +"Raises :exc:`UnsupportedOperation` on Windows. In previous " +"versions, :exc:`NotImplementedError` was raised instead." msgstr "" msgid "" @@ -1036,8 +1073,8 @@ msgstr "" msgid "" "Return a new path with expanded ``~`` and ``~user`` constructs, as returned " -"by :meth:`os.path.expanduser`. If a home directory can't be resolved, :exc:" -"`RuntimeError` is raised." +"by :meth:`os.path.expanduser`. If a home directory can't be " +"resolved, :exc:`RuntimeError` is raised." msgstr "" msgid "" @@ -1047,8 +1084,8 @@ msgid "" msgstr "" msgid "" -"Return a new path object representing the current directory (as returned by :" -"func:`os.getcwd`)::" +"Return a new path object representing the current directory (as returned " +"by :func:`os.getcwd`)::" msgstr "" msgid "" @@ -1110,8 +1147,8 @@ msgid "" msgstr "" msgid "" -"Return the path to which the symbolic link points (as returned by :func:`os." -"readlink`)::" +"Return the path to which the symbolic link points (as returned " +"by :func:`os.readlink`)::" msgstr "" msgid "" @@ -1130,19 +1167,18 @@ msgid "Querying file type and status" msgstr "" msgid "" -":meth:`~Path.exists`, :meth:`~Path.is_dir`, :meth:`~Path.is_file`, :meth:" -"`~Path.is_mount`, :meth:`~Path.is_symlink`, :meth:`~Path.is_block_device`, :" -"meth:`~Path.is_char_device`, :meth:`~Path.is_fifo`, :meth:`~Path.is_socket` " +":meth:`~Path.exists`, :meth:`~Path.is_dir`, :meth:`~Path.is_file`, :meth:`~Path.is_mount`, :meth:`~Path.is_symlink`, :meth:`~Path.is_block_device`, :meth:`~Path.is_char_device`, :meth:`~Path.is_fifo`, :meth:`~Path.is_socket` " "now return ``False`` instead of raising an exception for paths that contain " "characters unrepresentable at the OS level." msgstr "" msgid "" -"The methods given above now return ``False`` instead of raising any :exc:" -"`OSError` exception from the operating system. In previous versions, some " -"kinds of :exc:`OSError` exception are raised, and others suppressed. The new " -"behaviour is consistent with :func:`os.path.exists`, :func:`os.path.isdir`, " -"etc. Use :meth:`~Path.stat` to retrieve the file status without suppressing " +"The methods given above now return ``False`` instead of raising " +"any :exc:`OSError` exception from the operating system. In previous " +"versions, some kinds of :exc:`OSError` exception are raised, and others " +"suppressed. The new behaviour is consistent " +"with :func:`os.path.exists`, :func:`os.path.isdir`, etc. " +"Use :meth:`~Path.stat` to retrieve the file status without suppressing " "exceptions." msgstr "" @@ -1174,8 +1210,8 @@ msgid "" msgstr "" msgid "" -"Return ``True`` if the path points to an existing file or directory. " -"``False`` will be returned if the path is invalid, inaccessible or missing. " +"Return ``True`` if the path points to an existing file or directory and " +"``False`` if the path is invalid, inaccessible or missing. " "Use :meth:`Path.stat` to distinguish between these cases." msgstr "" @@ -1185,6 +1221,8 @@ msgid "" msgstr "" msgid "" +">>> Path('').exists() # The current directory.\n" +"True\n" ">>> Path('.').exists()\n" "True\n" ">>> Path('setup.py').exists()\n" @@ -1222,8 +1260,8 @@ msgstr "" msgid "" "Return ``True`` if the path points to a symbolic link, even if that symlink " "is broken. ``False`` will be returned if the path is invalid, inaccessible " -"or missing, or if it points to something other than a symbolic link. Use :" -"meth:`Path.stat` to distinguish between these cases." +"or missing, or if it points to something other than a symbolic link. " +"Use :meth:`Path.stat` to distinguish between these cases." msgstr "" msgid "" @@ -1274,8 +1312,8 @@ msgstr "" msgid "" "Return whether this path points to the same file as *other_path*, which can " -"be either a Path object, or a string. The semantics are similar to :func:" -"`os.path.samefile` and :func:`os.path.samestat`." +"be either a Path object, or a string. The semantics are similar " +"to :func:`os.path.samefile` and :func:`os.path.samestat`." msgstr "" msgid "" @@ -1321,10 +1359,11 @@ msgid "" msgstr "" msgid "" -"To fetch up-to-date information, it's best to call :meth:`Path.is_dir`, :" -"meth:`~Path.is_file` and :meth:`~Path.is_symlink` rather than methods of " -"this attribute. There is no way to reset the cache; instead you can create a " -"new path object with an empty info cache via ``p = Path(p)``." +"To fetch up-to-date information, it's best to " +"call :meth:`Path.is_dir`, :meth:`~Path.is_file` and :meth:`~Path.is_symlink` " +"rather than methods of this attribute. There is no way to reset the cache; " +"instead you can create a new path object with an empty info cache via ``p = " +"Path(p)``." msgstr "" msgid "Reading and writing files" @@ -1431,8 +1470,8 @@ msgstr "" msgid "" ">>> sorted(Path('.').glob('*.py'))\n" -"[PosixPath('pathlib.py'), PosixPath('setup.py'), PosixPath('test_pathlib." -"py')]\n" +"[PosixPath('pathlib.py'), PosixPath('setup.py'), " +"PosixPath('test_pathlib.py')]\n" ">>> sorted(Path('.').glob('*/*.py'))\n" "[PosixPath('docs/conf.py')]\n" ">>> sorted(Path('.').glob('**/*.py'))\n" @@ -1482,8 +1521,8 @@ msgid "" msgstr "" msgid "" -"Glob the given relative *pattern* recursively. This is like calling :func:" -"`Path.glob` with \"``**/``\" added in front of the *pattern*." +"Glob the given relative *pattern* recursively. This is like " +"calling :func:`Path.glob` with \"``**/``\" added in front of the *pattern*." msgstr "" msgid ":ref:`pathlib-pattern-language` and :meth:`Path.glob` documentation." @@ -1526,14 +1565,15 @@ msgstr "" msgid "" "When *top_down* is true, the caller can modify the *dirnames* list in-place " -"(for example, using :keyword:`del` or slice assignment), and :meth:`Path." -"walk` will only recurse into the subdirectories whose names remain in " -"*dirnames*. This can be used to prune the search, or to impose a specific " -"order of visiting, or even to inform :meth:`Path.walk` about directories the " -"caller creates or renames before it resumes :meth:`Path.walk` again. " -"Modifying *dirnames* when *top_down* is false has no effect on the behavior " -"of :meth:`Path.walk` since the directories in *dirnames* have already been " -"generated by the time *dirnames* is yielded to the caller." +"(for example, using :keyword:`del` or slice assignment), " +"and :meth:`Path.walk` will only recurse into the subdirectories whose names " +"remain in *dirnames*. This can be used to prune the search, or to impose a " +"specific order of visiting, or even to inform :meth:`Path.walk` about " +"directories the caller creates or renames before it " +"resumes :meth:`Path.walk` again. Modifying *dirnames* when *top_down* is " +"false has no effect on the behavior of :meth:`Path.walk` since the " +"directories in *dirnames* have already been generated by the time *dirnames* " +"is yielded to the caller." msgstr "" msgid "" @@ -1554,8 +1594,9 @@ msgstr "" msgid "" "Be aware that setting *follow_symlinks* to true can lead to infinite " -"recursion if a link points to a parent directory of itself. :meth:`Path." -"walk` does not keep track of the directories it has already visited." +"recursion if a link points to a parent directory of " +"itself. :meth:`Path.walk` does not keep track of the directories it has " +"already visited." msgstr "" msgid "" @@ -1578,8 +1619,8 @@ msgstr "" msgid "" "from pathlib import Path\n" -"for root, dirs, files in Path(\"cpython/Lib/concurrent\")." -"walk(on_error=print):\n" +"for root, dirs, files in Path(\"cpython/Lib/" +"concurrent\").walk(on_error=print):\n" " print(\n" " root,\n" " \"consumes\",\n" @@ -1616,13 +1657,13 @@ msgid "" "Create a file at this given path. If *mode* is given, it is combined with " "the process's ``umask`` value to determine the file mode and access flags. " "If the file already exists, the function succeeds when *exist_ok* is true " -"(and its modification time is updated to the current time), otherwise :exc:" -"`FileExistsError` is raised." +"(and its modification time is updated to the current time), " +"otherwise :exc:`FileExistsError` is raised." msgstr "" msgid "" -"The :meth:`~Path.open`, :meth:`~Path.write_text` and :meth:`~Path." -"write_bytes` methods are often used to create files." +"The :meth:`~Path.open`, :meth:`~Path.write_text` " +"and :meth:`~Path.write_bytes` methods are often used to create files." msgstr "" msgid "" @@ -1646,8 +1687,8 @@ msgid "" msgstr "" msgid "" -"If *parents* is false (the default), a missing parent raises :exc:" -"`FileNotFoundError`." +"If *parents* is false (the default), a missing parent " +"raises :exc:`FileNotFoundError`." msgstr "" msgid "" @@ -1714,8 +1755,8 @@ msgid "Copying, moving and deleting" msgstr "" msgid "" -"Copy this file or directory tree to the given *target*, and return a new :" -"class:`!Path` instance pointing to *target*." +"Copy this file or directory tree to the given *target*, and return a " +"new :class:`!Path` instance pointing to *target*." msgstr "" msgid "" @@ -1742,16 +1783,17 @@ msgstr "" msgid "" "Copy this file or directory tree into the given *target_dir*, which should " -"be an existing directory. Other arguments are handled identically to :meth:" -"`Path.copy`. Returns a new :class:`!Path` instance pointing to the copy." +"be an existing directory. Other arguments are handled identically " +"to :meth:`Path.copy`. Returns a new :class:`!Path` instance pointing to the " +"copy." msgstr "" msgid "" -"Rename this file or directory to the given *target*, and return a new :class:" -"`!Path` instance pointing to *target*. On Unix, if *target* exists and is a " -"file, it will be replaced silently if the user has permission. On Windows, " -"if *target* exists, :exc:`FileExistsError` will be raised. *target* can be " -"either a string or another path object::" +"Rename this file or directory to the given *target*, and return a " +"new :class:`!Path` instance pointing to *target*. On Unix, if *target* " +"exists and is a file, it will be replaced silently if the user has " +"permission. On Windows, if *target* exists, :exc:`FileExistsError` will be " +"raised. *target* can be either a string or another path object::" msgstr "" msgid "" @@ -1767,8 +1809,8 @@ msgstr "" msgid "" "The target path may be absolute or relative. Relative paths are interpreted " -"relative to the current working directory, *not* the directory of the :class:" -"`!Path` object." +"relative to the current working directory, *not* the directory of " +"the :class:`!Path` object." msgstr "" msgid "" @@ -1780,14 +1822,14 @@ msgid "Added return value, return the new :class:`!Path` instance." msgstr "" msgid "" -"Rename this file or directory to the given *target*, and return a new :class:" -"`!Path` instance pointing to *target*. If *target* points to an existing " -"file or empty directory, it will be unconditionally replaced." +"Rename this file or directory to the given *target*, and return a " +"new :class:`!Path` instance pointing to *target*. If *target* points to an " +"existing file or empty directory, it will be unconditionally replaced." msgstr "" msgid "" -"Move this file or directory tree to the given *target*, and return a new :" -"class:`!Path` instance pointing to *target*." +"Move this file or directory tree to the given *target*, and return a " +"new :class:`!Path` instance pointing to *target*." msgstr "" msgid "" @@ -1798,9 +1840,9 @@ msgid "" msgstr "" msgid "" -"If both paths are on the same filesystem, the move is performed with :func:" -"`os.replace`. Otherwise, this path is copied (preserving metadata and " -"symlinks) and then deleted." +"If both paths are on the same filesystem, the move is performed " +"with :func:`os.replace`. Otherwise, this path is copied (preserving metadata " +"and symlinks) and then deleted." msgstr "" msgid "" @@ -1810,8 +1852,8 @@ msgid "" msgstr "" msgid "" -"Remove this file or symbolic link. If the path points to a directory, use :" -"func:`Path.rmdir` instead." +"Remove this file or symbolic link. If the path points to a directory, " +"use :func:`Path.rmdir` instead." msgstr "" msgid "" @@ -1890,14 +1932,17 @@ msgid "Pattern language" msgstr "" msgid "" -"The following wildcards are supported in patterns for :meth:`~PurePath." -"full_match`, :meth:`~Path.glob` and :meth:`~Path.rglob`:" +"The following wildcards are supported in patterns " +"for :meth:`~PurePath.full_match`, :meth:`~Path.glob` and :meth:`~Path.rglob`:" msgstr "" msgid "``**`` (entire segment)" msgstr "" -msgid "Matches any number of file or directory segments, including zero." +msgid "" +"Matches any number of file or directory segments, including zero. Note that " +"in :meth:`~PurePath.full_match`, \"``a/**``\" does not match \"``a``\", " +"whereas :meth:`~Path.glob` yields \"``a``\" for that pattern." msgstr "" msgid "``*`` (entire segment)" @@ -1991,16 +2036,16 @@ msgid "" msgstr "" msgid "" -"Globbing with a pattern that ends with a pathname components separator (:" -"data:`~os.sep` or :data:`~os.altsep`) returns only directories." +"Globbing with a pattern that ends with a pathname components separator " +"(:data:`~os.sep` or :data:`~os.altsep`) returns only directories." msgstr "" msgid "Comparison to the :mod:`glob` module" msgstr "" msgid "" -"The patterns accepted and results generated by :meth:`Path.glob` and :meth:" -"`Path.rglob` differ slightly from those by the :mod:`glob` module:" +"The patterns accepted and results generated by :meth:`Path.glob` " +"and :meth:`Path.rglob` differ slightly from those by the :mod:`glob` module:" msgstr "" msgid "" @@ -2026,8 +2071,8 @@ msgstr "" msgid "" "The values returned from pathlib's ``path.glob()`` and ``path.rglob()`` " -"include the *path* as a prefix, unlike the results of ``glob." -"glob(root_dir=path)``." +"include the *path* as a prefix, unlike the results of " +"``glob.glob(root_dir=path)``." msgstr "" msgid "" @@ -2042,22 +2087,22 @@ msgstr "" msgid "" "pathlib implements path operations using :class:`PurePath` and :class:`Path` " -"objects, and so it's said to be *object-oriented*. On the other hand, the :" -"mod:`os` and :mod:`os.path` modules supply functions that work with low-" +"objects, and so it's said to be *object-oriented*. On the other hand, " +"the :mod:`os` and :mod:`os.path` modules supply functions that work with low-" "level ``str`` and ``bytes`` objects, which is a more *procedural* approach. " "Some users consider the object-oriented style to be more readable." msgstr "" msgid "" -"Many functions in :mod:`os` and :mod:`os.path` support ``bytes`` paths and :" -"ref:`paths relative to directory descriptors `. These features " +"Many functions in :mod:`os` and :mod:`os.path` support ``bytes`` paths " +"and :ref:`paths relative to directory descriptors `. These features " "aren't available in pathlib." msgstr "" msgid "" -"Python's ``str`` and ``bytes`` types, and portions of the :mod:`os` and :mod:" -"`os.path` modules, are written in C and are very speedy. pathlib is written " -"in pure Python and is often slower, but rarely slow enough to matter." +"Python's ``str`` and ``bytes`` types, and portions of the :mod:`os` " +"and :mod:`os.path` modules, are written in C and are very speedy. pathlib is " +"written in pure Python and is often slower, but rarely slow enough to matter." msgstr "" msgid "" @@ -2097,8 +2142,8 @@ msgid "Corresponding tools" msgstr "" msgid "" -"Below is a table mapping various :mod:`os` functions to their corresponding :" -"class:`PurePath`/:class:`Path` equivalent." +"Below is a table mapping various :mod:`os` functions to their " +"corresponding :class:`PurePath`/:class:`Path` equivalent." msgstr "" msgid ":mod:`os` and :mod:`os.path`" @@ -2305,14 +2350,14 @@ msgstr "" msgid "" ":func:`os.path.expanduser` returns the path unchanged if the home directory " -"can't be resolved, whereas :meth:`Path.expanduser` raises :exc:" -"`RuntimeError`." +"can't be resolved, whereas :meth:`Path.expanduser` " +"raises :exc:`RuntimeError`." msgstr "" msgid "" ":func:`os.path.abspath` removes \"``..``\" components without resolving " -"symlinks, which may change the meaning of the path, whereas :meth:`Path." -"absolute` leaves any \"``..``\" components in the path." +"symlinks, which may change the meaning of the path, " +"whereas :meth:`Path.absolute` leaves any \"``..``\" components in the path." msgstr "" msgid "" @@ -2329,9 +2374,9 @@ msgid "" msgstr "" msgid "" -"A :class:`typing.Protocol` describing the :attr:`Path.info ` attribute. Implementations may return cached results from their " -"methods." +"A :class:`typing.Protocol` describing the :attr:`Path.info " +"` attribute. Implementations may return cached results " +"from their methods." msgstr "" msgid "" diff --git a/library/pdb.po b/library/pdb.po index 8711f54..373910c 100644 --- a/library/pdb.po +++ b/library/pdb.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,9 +39,10 @@ msgid "" msgstr "" msgid "" -"The debugger is extensible -- it is actually defined as the class :class:" -"`Pdb`. This is currently undocumented but easily understood by reading the " -"source. The extension interface uses the modules :mod:`bdb` and :mod:`cmd`." +"The debugger is extensible -- it is actually defined as the " +"class :class:`Pdb`. This is currently undocumented but easily understood by " +"reading the source. The extension interface uses the modules :mod:`bdb` " +"and :mod:`cmd`." msgstr "" msgid "Module :mod:`faulthandler`" @@ -214,8 +216,8 @@ msgid "" "statement using :pdbcmd:`step` or :pdbcmd:`next` (all these commands are " "explained below). The optional *globals* and *locals* arguments specify the " "environment in which the code is executed; by default the dictionary of the " -"module :mod:`__main__` is used. (See the explanation of the built-in :func:" -"`exec` or :func:`eval` functions.)" +"module :mod:`__main__` is used. (See the explanation of the built-" +"in :func:`exec` or :func:`eval` functions.)" msgstr "" msgid "" @@ -316,15 +318,15 @@ msgstr "" msgid "" "By default, Pdb sets a handler for the SIGINT signal (which is sent when the " -"user presses :kbd:`Ctrl-C` on the console) when you give a :pdbcmd:" -"`continue` command. This allows you to break into the debugger again by " -"pressing :kbd:`Ctrl-C`. If you want Pdb not to touch the SIGINT handler, " -"set *nosigint* to true." +"user presses :kbd:`Ctrl-C` on the console) when you give " +"a :pdbcmd:`continue` command. This allows you to break into the debugger " +"again by pressing :kbd:`Ctrl-C`. If you want Pdb not to touch the SIGINT " +"handler, set *nosigint* to true." msgstr "" msgid "" -"The *readrc* argument defaults to true and controls whether Pdb will load ." -"pdbrc files from the filesystem." +"The *readrc* argument defaults to true and controls whether Pdb will " +"load .pdbrc files from the filesystem." msgstr "" msgid "" @@ -337,9 +339,9 @@ msgstr "" msgid "" "The *backend* argument specifies the backend to use for the debugger. If " -"``None`` is passed, the default backend will be used. See :func:" -"`set_default_backend`. Otherwise the supported backends are ``'settrace'`` " -"and ``'monitoring'``." +"``None`` is passed, the default backend will be used. " +"See :func:`set_default_backend`. Otherwise the supported backends are " +"``'settrace'`` and ``'monitoring'``." msgstr "" msgid "" @@ -477,8 +479,8 @@ msgid "" msgstr "" msgid "" -":file:`.pdbrc` can now contain commands that continue debugging, such as :" -"pdbcmd:`continue` or :pdbcmd:`next`. Previously, these commands had no " +":file:`.pdbrc` can now contain commands that continue debugging, such " +"as :pdbcmd:`continue` or :pdbcmd:`next`. Previously, these commands had no " "effect." msgstr "" @@ -611,13 +613,13 @@ msgid "" msgstr "" msgid "" -"Specifying any command resuming execution (currently :pdbcmd:`continue`, :" -"pdbcmd:`step`, :pdbcmd:`next`, :pdbcmd:`return`, :pdbcmd:`until`, :pdbcmd:" -"`jump`, :pdbcmd:`quit` and their abbreviations) terminates the command list " -"(as if that command was immediately followed by end). This is because any " -"time you resume execution (even with a simple next or step), you may " -"encounter another breakpoint—which could have its own command list, leading " -"to ambiguities about which list to execute." +"Specifying any command resuming execution " +"(currently :pdbcmd:`continue`, :pdbcmd:`step`, :pdbcmd:`next`, :pdbcmd:`return`, :pdbcmd:`until`, :pdbcmd:`jump`, :pdbcmd:`quit` " +"and their abbreviations) terminates the command list (as if that command was " +"immediately followed by end). This is because any time you resume execution " +"(even with a simple next or step), you may encounter another breakpoint—" +"which could have its own command list, leading to ambiguities about which " +"list to execute." msgstr "" msgid "" @@ -672,8 +674,8 @@ msgstr "" msgid "" "It should be noted that not all jumps are allowed -- for instance it is not " -"possible to jump into the middle of a :keyword:`for` loop or out of a :" -"keyword:`finally` clause." +"possible to jump into the middle of a :keyword:`for` loop or out of " +"a :keyword:`finally` clause." msgstr "" msgid "" @@ -829,8 +831,8 @@ msgid "" msgstr "" msgid "" -"As an example, here are two useful aliases (especially when placed in the :" -"file:`.pdbrc` file)::" +"As an example, here are two useful aliases (especially when placed in " +"the :file:`.pdbrc` file)::" msgstr "" msgid "" @@ -855,8 +857,8 @@ msgid "" msgstr "" msgid "" -"To set a global variable, you can prefix the assignment command with a :" -"keyword:`global` statement on the same line, e.g.:" +"To set a global variable, you can prefix the assignment command with " +"a :keyword:`global` statement on the same line, e.g.:" msgstr "" msgid "" @@ -867,8 +869,8 @@ msgstr "" msgid "" "Restart the debugged Python program. If *args* is supplied, it is split " "with :mod:`shlex` and the result is used as the new :data:`sys.argv`. " -"History, breakpoints, actions and debugger options are preserved. :pdbcmd:" -"`restart` is an alias for :pdbcmd:`run`." +"History, breakpoints, actions and debugger options are " +"preserved. :pdbcmd:`restart` is an alias for :pdbcmd:`run`." msgstr "" msgid "" @@ -889,9 +891,9 @@ msgstr "" msgid "" "A confirmation prompt will be shown if the debugger is invoked in " -"``'inline'`` mode. After the confirmation, the debugger will call :func:`sys." -"exit` immediately, instead of raising :exc:`bdb.BdbQuit` in the next trace " -"event." +"``'inline'`` mode. After the confirmation, the debugger will " +"call :func:`sys.exit` immediately, instead of raising :exc:`bdb.BdbQuit` in " +"the next trace event." msgstr "" msgid "" @@ -928,7 +930,7 @@ msgid "" "def inner(x):\n" " 1 / x\n" "\n" -" out()" +"out()" msgstr "" msgid "calling ``pdb.pm()`` will allow to move between exceptions::" diff --git a/library/persistence.po b/library/persistence.po index 0861461..f3f2891 100644 --- a/library/persistence.po +++ b/library/persistence.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/pickle.po b/library/pickle.po index 162b2f6..f9b42d4 100644 --- a/library/pickle.po +++ b/library/pickle.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,9 +33,9 @@ msgid "" "The :mod:`!pickle` module implements binary protocols for serializing and de-" "serializing a Python object structure. *\"Pickling\"* is the process " "whereby a Python object hierarchy is converted into a byte stream, and " -"*\"unpickling\"* is the inverse operation, whereby a byte stream (from a :" -"term:`binary file` or :term:`bytes-like object`) is converted back into an " -"object hierarchy. Pickling (and unpickling) is alternatively known as " +"*\"unpickling\"* is the inverse operation, whereby a byte stream (from " +"a :term:`binary file` or :term:`bytes-like object`) is converted back into " +"an object hierarchy. Pickling (and unpickling) is alternatively known as " "\"serialization\", \"marshalling,\" [#]_ or \"flattening\"; however, to " "avoid confusion, the terms used here are \"pickling\" and \"unpickling\"." msgstr "" @@ -67,8 +68,8 @@ msgstr "" msgid "" "Python has a more primitive serialization module called :mod:`marshal`, but " "in general :mod:`!pickle` should always be the preferred way to serialize " -"Python objects. :mod:`marshal` exists primarily to support Python's :file:`." -"pyc` files." +"Python objects. :mod:`marshal` exists primarily to support " +"Python's :file:`.pyc` files." msgstr "" msgid "" @@ -85,14 +86,14 @@ msgstr "" msgid "" "The :mod:`marshal` serialization format is not guaranteed to be portable " -"across Python versions. Because its primary job in life is to support :file:" -"`.pyc` files, the Python implementers reserve the right to change the " -"serialization format in non-backwards compatible ways should the need arise. " -"The :mod:`!pickle` serialization format is guaranteed to be backwards " -"compatible across Python releases provided a compatible pickle protocol is " -"chosen and pickling and unpickling code deals with Python 2 to Python 3 type " -"differences if your data is crossing that unique breaking change language " -"boundary." +"across Python versions. Because its primary job in life is to " +"support :file:`.pyc` files, the Python implementers reserve the right to " +"change the serialization format in non-backwards compatible ways should the " +"need arise. The :mod:`!pickle` serialization format is guaranteed to be " +"backwards compatible across Python releases provided a compatible pickle " +"protocol is chosen and pickling and unpickling code deals with Python 2 to " +"Python 3 type differences if your data is crossing that unique breaking " +"change language boundary." msgstr "" msgid "Comparison with ``json``" @@ -121,8 +122,8 @@ msgid "" "JSON, by default, can only represent a subset of the Python built-in types, " "and no custom classes; pickle can represent an extremely large number of " "Python types (many of them automatically, by clever usage of Python's " -"introspection facilities; complex cases can be tackled by implementing :ref:" -"`specific object APIs `);" +"introspection facilities; complex cases can be tackled by " +"implementing :ref:`specific object APIs `);" msgstr "" msgid "" @@ -180,16 +181,16 @@ msgid "" msgstr "" msgid "" -"Protocol version 3 was added in Python 3.0. It has explicit support for :" -"class:`bytes` objects and cannot be unpickled by Python 2.x. This was the " -"default protocol in Python 3.0--3.7." +"Protocol version 3 was added in Python 3.0. It has explicit support " +"for :class:`bytes` objects and cannot be unpickled by Python 2.x. This was " +"the default protocol in Python 3.0--3.7." msgstr "" msgid "" "Protocol version 4 was added in Python 3.4. It adds support for very large " "objects, pickling more kinds of objects, and some data format " -"optimizations. This was the default protocol in Python 3.8--3.13. Refer to :" -"pep:`3154` for information about improvements brought by protocol 4." +"optimizations. This was the default protocol in Python 3.8--3.13. Refer " +"to :pep:`3154` for information about improvements brought by protocol 4." msgstr "" msgid "" @@ -217,10 +218,10 @@ msgstr "" msgid "" "To serialize an object hierarchy, you simply call the :func:`dumps` " -"function. Similarly, to de-serialize a data stream, you call the :func:" -"`loads` function. However, if you want more control over serialization and " -"de-serialization, you can create a :class:`Pickler` or an :class:`Unpickler` " -"object, respectively." +"function. Similarly, to de-serialize a data stream, you call " +"the :func:`loads` function. However, if you want more control over " +"serialization and de-serialization, you can create a :class:`Pickler` or " +"an :class:`Unpickler` object, respectively." msgstr "" msgid "The :mod:`!pickle` module provides the following constants:" @@ -228,17 +229,18 @@ msgstr "" msgid "" "An integer, the highest :ref:`protocol version ` " -"available. This value can be passed as a *protocol* value to functions :" -"func:`dump` and :func:`dumps` as well as the :class:`Pickler` constructor." +"available. This value can be passed as a *protocol* value to " +"functions :func:`dump` and :func:`dumps` as well as the :class:`Pickler` " +"constructor." msgstr "" msgid "" "An integer, the default :ref:`protocol version ` used for " "pickling. May be less than :data:`HIGHEST_PROTOCOL`. Currently the default " "protocol is 5, introduced in Python 3.8 and incompatible with previous " -"versions. This version introduces support for out-of-band buffers, where :" -"pep:`3118`-compatible data can be transmitted separately from the main " -"pickle stream." +"versions. This version introduces support for out-of-band buffers, " +"where :pep:`3118`-compatible data can be transmitted separately from the " +"main pickle stream." msgstr "" msgid "The default protocol is 3." @@ -312,8 +314,8 @@ msgid "The :mod:`!pickle` module defines three exceptions:" msgstr "" msgid "" -"Common base class for the other pickling exceptions. It inherits from :exc:" -"`Exception`." +"Common base class for the other pickling exceptions. It inherits " +"from :exc:`Exception`." msgstr "" msgid "" @@ -338,8 +340,8 @@ msgid "" msgstr "" msgid "" -"The :mod:`!pickle` module exports three classes, :class:`Pickler`, :class:" -"`Unpickler` and :class:`PickleBuffer`:" +"The :mod:`!pickle` module exports three " +"classes, :class:`Pickler`, :class:`Unpickler` and :class:`PickleBuffer`:" msgstr "" msgid "This takes a binary file for writing a pickle data stream." @@ -354,8 +356,8 @@ msgstr "" msgid "" "The *file* argument must have a write() method that accepts a single bytes " -"argument. It can thus be an on-disk file opened for binary writing, an :" -"class:`io.BytesIO` instance, or any other custom object that meets this " +"argument. It can thus be an on-disk file opened for binary writing, " +"an :class:`io.BytesIO` instance, or any other custom object that meets this " "interface." msgstr "" @@ -402,8 +404,8 @@ msgid "See :ref:`pickle-persistent` for details and examples of uses." msgstr "" msgid "" -"Add the default implementation of this method in the C implementation of :" -"class:`!Pickler`." +"Add the default implementation of this method in the C implementation " +"of :class:`!Pickler`." msgstr "" msgid "" @@ -416,12 +418,12 @@ msgstr "" msgid "" "By default, a pickler object will not have a :attr:`dispatch_table` " -"attribute, and it will instead use the global dispatch table managed by the :" -"mod:`copyreg` module. However, to customize the pickling for a specific " +"attribute, and it will instead use the global dispatch table managed by " +"the :mod:`copyreg` module. However, to customize the pickling for a specific " "pickler object one can set the :attr:`dispatch_table` attribute to a dict-" -"like object. Alternatively, if a subclass of :class:`Pickler` has a :attr:" -"`dispatch_table` attribute then this will be used as the default dispatch " -"table for instances of that class." +"like object. Alternatively, if a subclass of :class:`Pickler` has " +"a :attr:`dispatch_table` attribute then this will be used as the default " +"dispatch table for instances of that class." msgstr "" msgid "See :ref:`pickle-dispatch` for usage examples." @@ -431,8 +433,8 @@ msgid "" "Special reducer that can be defined in :class:`Pickler` subclasses. This " "method has priority over any reducer in the :attr:`dispatch_table`. It " "should conform to the same interface as a :meth:`~object.__reduce__` method, " -"and can optionally return :data:`NotImplemented` to fallback on :attr:" -"`dispatch_table`-registered reducers to pickle ``obj``." +"and can optionally return :data:`NotImplemented` to fallback " +"on :attr:`dispatch_table`-registered reducers to pickle ``obj``." msgstr "" msgid "For a detailed example, see :ref:`reducer_override`." @@ -468,10 +470,10 @@ msgstr "" msgid "" "The argument *file* must have three methods, a read() method that takes an " "integer argument, a readinto() method that takes a buffer argument and a " -"readline() method that requires no arguments, as in the :class:`io." -"BufferedIOBase` interface. Thus *file* can be an on-disk file opened for " -"binary reading, an :class:`io.BytesIO` object, or any other custom object " -"that meets this interface." +"readline() method that requires no arguments, as in " +"the :class:`io.BufferedIOBase` interface. Thus *file* can be an on-disk " +"file opened for binary reading, an :class:`io.BytesIO` object, or any other " +"custom object that meets this interface." msgstr "" msgid "" @@ -482,9 +484,9 @@ msgid "" "decode 8-bit string instances pickled by Python 2; these default to 'ASCII' " "and 'strict', respectively. The *encoding* can be 'bytes' to read these 8-" "bit string instances as bytes objects. Using ``encoding='latin1'`` is " -"required for unpickling NumPy arrays and instances of :class:`~datetime." -"datetime`, :class:`~datetime.date` and :class:`~datetime.time` pickled by " -"Python 2." +"required for unpickling NumPy arrays and instances " +"of :class:`~datetime.datetime`, :class:`~datetime.date` " +"and :class:`~datetime.time` pickled by Python 2." msgstr "" msgid "" @@ -512,13 +514,13 @@ msgstr "" msgid "" "If defined, :meth:`persistent_load` should return the object specified by " -"the persistent ID *pid*. If an invalid persistent ID is encountered, an :" -"exc:`UnpicklingError` should be raised." +"the persistent ID *pid*. If an invalid persistent ID is encountered, " +"an :exc:`UnpicklingError` should be raised." msgstr "" msgid "" -"Add the default implementation of this method in the C implementation of :" -"class:`!Unpickler`." +"Add the default implementation of this method in the C implementation " +"of :class:`!Unpickler`." msgstr "" msgid "" @@ -530,8 +532,8 @@ msgstr "" msgid "" "Subclasses may override this to gain control over what type of objects and " -"how they can be loaded, potentially reducing security risks. Refer to :ref:" -"`pickle-restrict` for details." +"how they can be loaded, potentially reducing security risks. Refer " +"to :ref:`pickle-restrict` for details." msgstr "" msgid "" @@ -540,15 +542,15 @@ msgid "" msgstr "" msgid "" -"A wrapper for a buffer representing picklable data. *buffer* must be a :ref:" -"`buffer-providing ` object, such as a :term:`bytes-like " -"object` or a N-dimensional array." +"A wrapper for a buffer representing picklable data. *buffer* must be " +"a :ref:`buffer-providing ` object, such as a :term:`bytes-" +"like object` or a N-dimensional array." msgstr "" msgid "" ":class:`PickleBuffer` is itself a buffer provider, therefore it is possible " -"to pass it to other APIs expecting a buffer-providing object, such as :class:" -"`memoryview`." +"to pass it to other APIs expecting a buffer-providing object, such " +"as :class:`memoryview`." msgstr "" msgid "" @@ -574,8 +576,8 @@ msgid "The following types can be pickled:" msgstr "" msgid "" -"built-in constants (``None``, ``True``, ``False``, ``Ellipsis``, and :data:" -"`NotImplemented`);" +"built-in constants (``None``, ``True``, ``False``, ``Ellipsis``, " +"and :data:`NotImplemented`);" msgstr "" msgid "integers, floating-point numbers, complex numbers;" @@ -597,25 +599,26 @@ msgid "classes accessible from the top level of a module;" msgstr "" msgid "" -"instances of such classes for which the result of calling :meth:`~object." -"__getstate__` is picklable (see section :ref:`pickle-inst` for details)." +"instances of such classes for which the result of " +"calling :meth:`~object.__getstate__` is picklable (see section :ref:`pickle-" +"inst` for details)." msgstr "" msgid "" "Attempts to pickle unpicklable objects will raise the :exc:`PicklingError` " "exception; when this happens, an unspecified number of bytes may have " "already been written to the underlying file. Trying to pickle a highly " -"recursive data structure may exceed the maximum recursion depth, a :exc:" -"`RecursionError` will be raised in this case. You can carefully raise this " -"limit with :func:`sys.setrecursionlimit`." +"recursive data structure may exceed the maximum recursion depth, " +"a :exc:`RecursionError` will be raised in this case. You can carefully " +"raise this limit with :func:`sys.setrecursionlimit`." msgstr "" msgid "" -"Note that functions (built-in and user-defined) are pickled by fully :term:" -"`qualified name`, not by value. [#]_ This means that only the function name " -"is pickled, along with the name of the containing module and classes. " -"Neither the function's code, nor any of its function attributes are " -"pickled. Thus the defining module must be importable in the unpickling " +"Note that functions (built-in and user-defined) are pickled by " +"fully :term:`qualified name`, not by value. [#]_ This means that only the " +"function name is pickled, along with the name of the containing module and " +"classes. Neither the function's code, nor any of its function attributes " +"are pickled. Thus the defining module must be importable in the unpickling " "environment, and the module must contain the named object, otherwise an " "exception will be raised. [#]_" msgstr "" @@ -646,8 +649,8 @@ msgid "" "and still load objects that were created with an earlier version of the " "class. If you plan to have long-lived objects that will see many versions " "of a class, it may be worthwhile to put a version number in the objects so " -"that suitable conversions can be made by the class's :meth:`~object." -"__setstate__` method." +"that suitable conversions can be made by the " +"class's :meth:`~object.__setstate__` method." msgstr "" msgid "Pickling Class Instances" @@ -661,10 +664,11 @@ msgstr "" msgid "" "In most cases, no additional code is needed to make instances picklable. By " "default, pickle will retrieve the class and the attributes of an instance " -"via introspection. When a class instance is unpickled, its :meth:`~object." -"__init__` method is usually *not* invoked. The default behaviour first " -"creates an uninitialized instance and then restores the saved attributes. " -"The following code shows an implementation of this behaviour::" +"via introspection. When a class instance is unpickled, " +"its :meth:`~object.__init__` method is usually *not* invoked. The default " +"behaviour first creates an uninitialized instance and then restores the " +"saved attributes. The following code shows an implementation of this " +"behaviour::" msgstr "" msgid "" @@ -683,12 +687,12 @@ msgid "" msgstr "" msgid "" -"In protocols 2 and newer, classes that implement the :meth:" -"`__getnewargs_ex__` method can dictate the values passed to the :meth:" -"`__new__` method upon unpickling. The method must return a pair ``(args, " -"kwargs)`` where *args* is a tuple of positional arguments and *kwargs* a " -"dictionary of named arguments for constructing the object. Those will be " -"passed to the :meth:`__new__` method upon unpickling." +"In protocols 2 and newer, classes that implement " +"the :meth:`__getnewargs_ex__` method can dictate the values passed to " +"the :meth:`__new__` method upon unpickling. The method must return a pair " +"``(args, kwargs)`` where *args* is a tuple of positional arguments and " +"*kwargs* a dictionary of named arguments for constructing the object. Those " +"will be passed to the :meth:`__new__` method upon unpickling." msgstr "" msgid "" @@ -712,8 +716,8 @@ msgid "" msgstr "" msgid "" -"Before Python 3.6, :meth:`__getnewargs__` was called instead of :meth:" -"`__getnewargs_ex__` in protocols 2 and 3." +"Before Python 3.6, :meth:`__getnewargs__` was called instead " +"of :meth:`__getnewargs_ex__` in protocols 2 and 3." msgstr "" msgid "" @@ -724,32 +728,32 @@ msgid "" msgstr "" msgid "" -"For a class that has no instance :attr:`~object.__dict__` and no :attr:" -"`~object.__slots__`, the default state is ``None``." +"For a class that has no instance :attr:`~object.__dict__` and " +"no :attr:`~object.__slots__`, the default state is ``None``." msgstr "" msgid "" -"For a class that has an instance :attr:`~object.__dict__` and no :attr:" -"`~object.__slots__`, the default state is ``self.__dict__``." +"For a class that has an instance :attr:`~object.__dict__` and " +"no :attr:`~object.__slots__`, the default state is ``self.__dict__``." msgstr "" msgid "" -"For a class that has an instance :attr:`~object.__dict__` and :attr:`~object." -"__slots__`, the default state is a tuple consisting of two dictionaries: " -"``self.__dict__``, and a dictionary mapping slot names to slot values. Only " -"slots that have a value are included in the latter." +"For a class that has an instance :attr:`~object.__dict__` " +"and :attr:`~object.__slots__`, the default state is a tuple consisting of " +"two dictionaries: ``self.__dict__``, and a dictionary mapping slot names to " +"slot values. Only slots that have a value are included in the latter." msgstr "" msgid "" -"For a class that has :attr:`~object.__slots__` and no instance :attr:" -"`~object.__dict__`, the default state is a tuple whose first item is " -"``None`` and whose second item is a dictionary mapping slot names to slot " -"values described in the previous bullet." +"For a class that has :attr:`~object.__slots__` and no " +"instance :attr:`~object.__dict__`, the default state is a tuple whose first " +"item is ``None`` and whose second item is a dictionary mapping slot names to " +"slot values described in the previous bullet." msgstr "" msgid "" -"Added the default implementation of the ``__getstate__()`` method in the :" -"class:`object` class." +"Added the default implementation of the ``__getstate__()`` method in " +"the :class:`object` class." msgstr "" msgid "" @@ -760,29 +764,29 @@ msgid "" msgstr "" msgid "" -"If :meth:`__reduce__` returns a state with value ``None`` at pickling, the :" -"meth:`__setstate__` method will not be called upon unpickling." +"If :meth:`__reduce__` returns a state with value ``None`` at pickling, " +"the :meth:`__setstate__` method will not be called upon unpickling." msgstr "" msgid "" "Refer to the section :ref:`pickle-state` for more information about how to " -"use the methods :meth:`~object.__getstate__` and :meth:`~object." -"__setstate__`." +"use the methods :meth:`~object.__getstate__` " +"and :meth:`~object.__setstate__`." msgstr "" msgid "" -"At unpickling time, some methods like :meth:`~object.__getattr__`, :meth:" -"`~object.__getattribute__`, or :meth:`~object.__setattr__` may be called " -"upon the instance. In case those methods rely on some internal invariant " -"being true, the type should implement :meth:`~object.__new__` to establish " -"such an invariant, as :meth:`~object.__init__` is not called when unpickling " -"an instance." +"At unpickling time, some methods " +"like :meth:`~object.__getattr__`, :meth:`~object.__getattribute__`, " +"or :meth:`~object.__setattr__` may be called upon the instance. In case " +"those methods rely on some internal invariant being true, the type should " +"implement :meth:`~object.__new__` to establish such an invariant, " +"as :meth:`~object.__init__` is not called when unpickling an instance." msgstr "" msgid "" "As we shall see, pickle does not use directly the methods described above. " -"In fact, these methods are part of the copy protocol which implements the :" -"meth:`~object.__reduce__` special method. The copy protocol provides a " +"In fact, these methods are part of the copy protocol which implements " +"the :meth:`~object.__reduce__` special method. The copy protocol provides a " "unified interface for retrieving the data necessary for pickling and copying " "objects. [#]_" msgstr "" @@ -790,10 +794,11 @@ msgstr "" msgid "" "Although powerful, implementing :meth:`~object.__reduce__` directly in your " "classes is error prone. For this reason, class designers should use the " -"high-level interface (i.e., :meth:`~object.__getnewargs_ex__`, :meth:" -"`~object.__getstate__` and :meth:`~object.__setstate__`) whenever possible. " -"We will show, however, cases where using :meth:`!__reduce__` is the only " -"option or leads to more efficient pickling or both." +"high-level interface " +"(i.e., :meth:`~object.__getnewargs_ex__`, :meth:`~object.__getstate__` " +"and :meth:`~object.__setstate__`) whenever possible. We will show, however, " +"cases where using :meth:`!__reduce__` is the only option or leads to more " +"efficient pickling or both." msgstr "" msgid "" @@ -829,18 +834,18 @@ msgid "" msgstr "" msgid "" -"Optionally, the object's state, which will be passed to the object's :meth:" -"`__setstate__` method as previously described. If the object has no such " -"method then, the value must be a dictionary and it will be added to the " -"object's :attr:`~object.__dict__` attribute." +"Optionally, the object's state, which will be passed to the " +"object's :meth:`__setstate__` method as previously described. If the object " +"has no such method then, the value must be a dictionary and it will be added " +"to the object's :attr:`~object.__dict__` attribute." msgstr "" msgid "" "Optionally, an iterator (and not a sequence) yielding successive items. " "These items will be appended to the object either using ``obj.append(item)`` " "or, in batch, using ``obj.extend(list_of_items)``. This is primarily used " -"for list subclasses, but may be used by other classes as long as they have :" -"meth:`~sequence.append` and :meth:`~sequence.extend` methods with the " +"for list subclasses, but may be used by other classes as long as they " +"have :meth:`~sequence.append` and :meth:`~sequence.extend` methods with the " "appropriate signature. (Whether :meth:`!append` or :meth:`!extend` is used " "depends on which pickle protocol version is used as well as the number of " "items to append, so both must be supported.)" @@ -857,8 +862,8 @@ msgid "" "Optionally, a callable with a ``(obj, state)`` signature. This callable " "allows the user to programmatically control the state-updating behavior of a " "specific object, instead of using ``obj``'s static :meth:`__setstate__` " -"method. If not ``None``, this callable will have priority over ``obj``'s :" -"meth:`__setstate__`." +"method. If not ``None``, this callable will have priority over " +"``obj``'s :meth:`__setstate__`." msgstr "" msgid "The optional sixth tuple item, ``(obj, state)``, was added." @@ -867,10 +872,11 @@ msgstr "" msgid "" "Alternatively, a :meth:`__reduce_ex__` method may be defined. The only " "difference is this method should take a single integer argument, the " -"protocol version. When defined, pickle will prefer it over the :meth:" -"`__reduce__` method. In addition, :meth:`__reduce__` automatically becomes " -"a synonym for the extended version. The main use for this method is to " -"provide backwards-compatible reduce values for older Python releases." +"protocol version. When defined, pickle will prefer it over " +"the :meth:`__reduce__` method. In addition, :meth:`__reduce__` " +"automatically becomes a synonym for the extended version. The main use for " +"this method is to provide backwards-compatible reduce values for older " +"Python releases." msgstr "" msgid "Persistence of External Objects" @@ -887,8 +893,8 @@ msgstr "" msgid "" "The resolution of such persistent IDs is not defined by the :mod:`!pickle` " "module; it will delegate this resolution to the user-defined methods on the " -"pickler and unpickler, :meth:`~Pickler.persistent_id` and :meth:`~Unpickler." -"persistent_load` respectively." +"pickler and unpickler, :meth:`~Pickler.persistent_id` " +"and :meth:`~Unpickler.persistent_load` respectively." msgstr "" msgid "" @@ -902,9 +908,9 @@ msgid "" msgstr "" msgid "" -"To unpickle external objects, the unpickler must have a custom :meth:" -"`~Unpickler.persistent_load` method that takes a persistent ID object and " -"returns the referenced object." +"To unpickle external objects, the unpickler must have a " +"custom :meth:`~Unpickler.persistent_load` method that takes a persistent ID " +"object and returns the referenced object." msgstr "" msgid "" @@ -974,8 +980,8 @@ msgid "" " # Initialize and populate our database.\n" " conn = sqlite3.connect(\":memory:\")\n" " cursor = conn.cursor()\n" -" cursor.execute(\"CREATE TABLE memos(key INTEGER PRIMARY KEY, task " -"TEXT)\")\n" +" cursor.execute(\"CREATE TABLE memos(key INTEGER PRIMARY KEY, task TEXT)" +"\")\n" " tasks = (\n" " 'give food to fish',\n" " 'prepare group meeting',\n" @@ -1149,17 +1155,17 @@ msgid "" msgstr "" msgid "" -"If both the :attr:`~Pickler.dispatch_table` and :meth:`~Pickler." -"reducer_override` are defined, then :meth:`~Pickler.reducer_override` method " -"takes priority." +"If both the :attr:`~Pickler.dispatch_table` " +"and :meth:`~Pickler.reducer_override` are defined, " +"then :meth:`~Pickler.reducer_override` method takes priority." msgstr "" msgid "" "For performance reasons, :meth:`~Pickler.reducer_override` may not be called " "for the following objects: ``None``, ``True``, ``False``, and exact " -"instances of :class:`int`, :class:`float`, :class:`bytes`, :class:`str`, :" -"class:`dict`, :class:`set`, :class:`frozenset`, :class:`list` and :class:" -"`tuple`." +"instances " +"of :class:`int`, :class:`float`, :class:`bytes`, :class:`str`, :class:`dict`, :class:`set`, :class:`frozenset`, :class:`list` " +"and :class:`tuple`." msgstr "" msgid "" @@ -1220,10 +1226,10 @@ msgid "Provider API" msgstr "" msgid "" -"The large data objects to be pickled must implement a :meth:`~object." -"__reduce_ex__` method specialized for protocol 5 and higher, which returns " -"a :class:`PickleBuffer` instance (instead of e.g. a :class:`bytes` object) " -"for any large data." +"The large data objects to be pickled must implement " +"a :meth:`~object.__reduce_ex__` method specialized for protocol 5 and " +"higher, which returns a :class:`PickleBuffer` instance (instead of e.g. " +"a :class:`bytes` object) for any large data." msgstr "" msgid "" @@ -1238,26 +1244,27 @@ msgid "Consumer API" msgstr "" msgid "" -"A communications system can enable custom handling of the :class:" -"`PickleBuffer` objects generated when serializing an object graph." +"A communications system can enable custom handling of " +"the :class:`PickleBuffer` objects generated when serializing an object graph." msgstr "" msgid "" -"On the sending side, it needs to pass a *buffer_callback* argument to :class:" -"`Pickler` (or to the :func:`dump` or :func:`dumps` function), which will be " -"called with each :class:`PickleBuffer` generated while pickling the object " -"graph. Buffers accumulated by the *buffer_callback* will not see their data " -"copied into the pickle stream, only a cheap marker will be inserted." +"On the sending side, it needs to pass a *buffer_callback* argument " +"to :class:`Pickler` (or to the :func:`dump` or :func:`dumps` function), " +"which will be called with each :class:`PickleBuffer` generated while " +"pickling the object graph. Buffers accumulated by the *buffer_callback* " +"will not see their data copied into the pickle stream, only a cheap marker " +"will be inserted." msgstr "" msgid "" -"On the receiving side, it needs to pass a *buffers* argument to :class:" -"`Unpickler` (or to the :func:`load` or :func:`loads` function), which is an " -"iterable of the buffers which were passed to *buffer_callback*. That " -"iterable should produce buffers in the same order as they were passed to " -"*buffer_callback*. Those buffers will provide the data expected by the " -"reconstructors of the objects whose pickling produced the original :class:" -"`PickleBuffer` objects." +"On the receiving side, it needs to pass a *buffers* argument " +"to :class:`Unpickler` (or to the :func:`load` or :func:`loads` function), " +"which is an iterable of the buffers which were passed to *buffer_callback*. " +"That iterable should produce buffers in the same order as they were passed " +"to *buffer_callback*. Those buffers will provide the data expected by the " +"reconstructors of the objects whose pickling produced the " +"original :class:`PickleBuffer` objects." msgstr "" msgid "" @@ -1368,16 +1375,16 @@ msgid "" msgstr "" msgid "" -"For this reason, you may want to control what gets unpickled by customizing :" -"meth:`Unpickler.find_class`. Unlike its name suggests, :meth:`Unpickler." -"find_class` is called whenever a global (i.e., a class or a function) is " -"requested. Thus it is possible to either completely forbid globals or " -"restrict them to a safe subset." +"For this reason, you may want to control what gets unpickled by " +"customizing :meth:`Unpickler.find_class`. Unlike its name " +"suggests, :meth:`Unpickler.find_class` is called whenever a global (i.e., a " +"class or a function) is requested. Thus it is possible to either completely " +"forbid globals or restrict them to a safe subset." msgstr "" msgid "" -"Here is an example of an unpickler allowing only few safe classes from the :" -"mod:`builtins` module to be loaded::" +"Here is an example of an unpickler allowing only few safe classes from " +"the :mod:`builtins` module to be loaded::" msgstr "" msgid "" @@ -1483,8 +1490,8 @@ msgid "" "The :mod:`!pickle` module can be invoked as a script from the command line, " "it will display contents of the pickle files. However, when the pickle file " "that you want to examine comes from an untrusted source, ``-m pickletools`` " -"is a safer option because it does not execute pickle bytecode, see :ref:" -"`pickletools CLI usage `." +"is a safer option because it does not execute pickle bytecode, " +"see :ref:`pickletools CLI usage `." msgstr "" msgid "python -m pickle pickle_file [pickle_file ...]" @@ -1539,8 +1546,8 @@ msgid "" msgstr "" msgid "" -"The exception raised will likely be an :exc:`ImportError` or an :exc:" -"`AttributeError` but it could be something else." +"The exception raised will likely be an :exc:`ImportError` or " +"an :exc:`AttributeError` but it could be something else." msgstr "" msgid "" diff --git a/library/pickletools.po b/library/pickletools.po index 36d6170..c0153ee 100644 --- a/library/pickletools.po +++ b/library/pickletools.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,9 +32,9 @@ msgid "" "This module contains various constants relating to the intimate details of " "the :mod:`pickle` module, some lengthy comments about the implementation, " "and a few useful functions for analyzing pickled data. The contents of this " -"module are useful for Python core developers who are working on the :mod:" -"`pickle`; ordinary users of the :mod:`pickle` module probably won't find " -"the :mod:`!pickletools` module relevant." +"module are useful for Python core developers who are working on " +"the :mod:`pickle`; ordinary users of the :mod:`pickle` module probably won't " +"find the :mod:`!pickletools` module relevant." msgstr "" msgid "Command-line usage" diff --git a/library/pipes.po b/library/pipes.po index ccccae3..05a68a0 100644 --- a/library/pipes.po +++ b/library/pipes.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!pipes` --- Interface to shell pipelines" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "Applications should use the :mod:`subprocess` module instead." diff --git a/library/pkgutil.po b/library/pkgutil.po index 096170e..126fe50 100644 --- a/library/pkgutil.po +++ b/library/pkgutil.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,19 +48,20 @@ msgstr "" msgid "" "For each directory on :data:`sys.path` that has a subdirectory that matches " -"the package name, add the subdirectory to the package's :attr:`~module." -"__path__`. This is useful if one wants to distribute different parts of a " -"single logical package as multiple directories." +"the package name, add the subdirectory to the " +"package's :attr:`~module.__path__`. This is useful if one wants to " +"distribute different parts of a single logical package as multiple " +"directories." msgstr "" msgid "" "It also looks for :file:`\\*.pkg` files beginning where ``*`` matches the " -"*name* argument. This feature is similar to :file:`\\*.pth` files (see the :" -"mod:`site` module for more information), except that it doesn't special-case " -"lines starting with ``import``. A :file:`\\*.pkg` file is trusted at face " -"value: apart from skipping blank lines and ignoring comments, all entries " -"found in a :file:`\\*.pkg` file are added to the path, regardless of whether " -"they exist on the filesystem (this is a feature)." +"*name* argument. This feature is similar to :file:`\\*.pth` files (see " +"the :mod:`site` module for more information), except that it doesn't special-" +"case lines starting with ``import``. A :file:`\\*.pkg` file is trusted at " +"face value: apart from skipping blank lines and ignoring comments, all " +"entries found in a :file:`\\*.pkg` file are added to the path, regardless of " +"whether they exist on the filesystem (this is a feature)." msgstr "" msgid "" @@ -70,11 +71,11 @@ msgid "" msgstr "" msgid "" -"It is assumed that :data:`sys.path` is a sequence. Items of :data:`sys." -"path` that are not strings referring to existing directories are ignored. " -"Unicode items on :data:`sys.path` that cause errors when used as filenames " -"may cause this function to raise an exception (in line with :func:`os.path." -"isdir` behavior)." +"It is assumed that :data:`sys.path` is a sequence. Items " +"of :data:`sys.path` that are not strings referring to existing directories " +"are ignored. Unicode items on :data:`sys.path` that cause errors when used " +"as filenames may cause this function to raise an exception (in line " +"with :func:`os.path.isdir` behavior)." msgstr "" msgid "Retrieve a :term:`finder` for the given *path_item*." @@ -86,8 +87,8 @@ msgid "" msgstr "" msgid "" -"The cache (or part of it) can be cleared manually if a rescan of :data:`sys." -"path_hooks` is necessary." +"The cache (or part of it) can be cleared manually if a rescan " +"of :data:`sys.path_hooks` is necessary." msgstr "" msgid "" @@ -101,8 +102,8 @@ msgstr "" msgid "" "If *fullname* contains a ``'.'``, the finders will be for the package " "containing *fullname*, otherwise they will be all registered top level " -"finders (i.e. those on both :data:`sys.meta_path` and :data:`sys." -"path_hooks`)." +"finders (i.e. those on both :data:`sys.meta_path` " +"and :data:`sys.path_hooks`)." msgstr "" msgid "" @@ -129,8 +130,8 @@ msgstr "" msgid "" "Only works for a :term:`finder` which defines an ``iter_modules()`` method. " "This interface is non-standard, so the module also provides implementations " -"for :class:`importlib.machinery.FileFinder` and :class:`zipimport." -"zipimporter`." +"for :class:`importlib.machinery.FileFinder` " +"and :class:`zipimport.zipimporter`." msgstr "" msgid "" @@ -147,9 +148,9 @@ msgstr "" msgid "" "*onerror* is a function which gets called with one argument (the name of the " "package which was being imported) if any exception occurs while trying to " -"import a package. If no *onerror* function is supplied, :exc:" -"`ImportError`\\s are caught and ignored, while all other exceptions are " -"propagated, terminating the search." +"import a package. If no *onerror* function is " +"supplied, :exc:`ImportError`\\s are caught and ignored, while all other " +"exceptions are propagated, terminating the search." msgstr "" msgid "Examples::" @@ -167,11 +168,11 @@ msgid "Get a resource from a package." msgstr "" msgid "" -"This is a wrapper for the :term:`loader` :meth:`get_data ` API. The *package* argument should be the name of " -"a package, in standard module format (``foo.bar``). The *resource* argument " -"should be in the form of a relative filename, using ``/`` as the path " -"separator." +"This is a wrapper for the :term:`loader` :meth:`get_data " +"` API. The *package* argument should " +"be the name of a package, in standard module format (``foo.bar``). The " +"*resource* argument should be in the form of a relative filename, using ``/" +"`` as the path separator." msgstr "" msgid "" @@ -180,9 +181,9 @@ msgid "" msgstr "" msgid "" -"This function uses the :term:`loader` method :func:`~importlib.abc." -"FileLoader.get_data` to support modules installed in the filesystem, but " -"also in zip files, databases, or elsewhere." +"This function uses the :term:`loader` " +"method :func:`~importlib.abc.FileLoader.get_data` to support modules " +"installed in the filesystem, but also in zip files, databases, or elsewhere." msgstr "" msgid "" @@ -199,9 +200,9 @@ msgid "" "Like the :func:`open` function, :func:`!get_data` can follow parent " "directories (``../``) and absolute paths (starting with ``/`` or ``C:/``, " "for example). It can open compilation/installation artifacts like ``.py`` " -"and ``.pyc`` files or files with :func:`reserved filenames `. To be compatible with non-filesystem loaders, avoid using " -"these features." +"and ``.pyc`` files or files with :func:`reserved filenames " +"`. To be compatible with non-filesystem loaders, avoid " +"using these features." msgstr "" msgid "" @@ -217,10 +218,11 @@ msgstr "" msgid "" "If the package cannot be located or loaded, or it uses a :term:`loader` " -"which does not support :meth:`get_data `, then ``None`` is returned. In particular, the :term:`loader` " -"for :term:`namespace packages ` does not support :meth:" -"`get_data `." +"which does not support :meth:`get_data " +"`, then ``None`` is returned. In " +"particular, the :term:`loader` for :term:`namespace packages ` does not support :meth:`get_data " +"`." msgstr "" msgid "" @@ -232,9 +234,9 @@ msgid "Resolve a name to an object." msgstr "" msgid "" -"This functionality is used in numerous places in the standard library (see :" -"issue:`12915`) - and equivalent functionality is also in widely used third-" -"party packages such as setuptools, Django and Pyramid." +"This functionality is used in numerous places in the standard library " +"(see :issue:`12915`) - and equivalent functionality is also in widely used " +"third-party packages such as setuptools, Django and Pyramid." msgstr "" msgid "" diff --git a/library/platform.po b/library/platform.po index 2ebf43c..90f9353 100644 --- a/library/platform.po +++ b/library/platform.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -196,16 +197,18 @@ msgstr "" msgid "" "Fairly portable uname interface. Returns a :func:`~collections.namedtuple` " -"containing six attributes: :attr:`system`, :attr:`node`, :attr:`release`, :" -"attr:`version`, :attr:`machine`, and :attr:`processor`." +"containing six " +"attributes: :attr:`system`, :attr:`node`, :attr:`release`, :attr:`version`, :attr:`machine`, " +"and :attr:`processor`." msgstr "" msgid ":attr:`processor` is resolved late, on demand." msgstr "" msgid "" -"Note: the first two attribute names differ from the names presented by :func:" -"`os.uname`, where they are named :attr:`!sysname` and :attr:`!nodename`." +"Note: the first two attribute names differ from the names presented " +"by :func:`os.uname`, where they are named :attr:`!sysname` and :attr:`!" +"nodename`." msgstr "" msgid "Entries which cannot be determined are set to ``''``." @@ -238,8 +241,8 @@ msgid "" "As a hint: *ptype* is ``'Uniprocessor Free'`` on single processor NT " "machines and ``'Multiprocessor Free'`` on multi processor machines. The " "``'Free'`` refers to the OS version being free of debugging code. It could " -"also state ``'Checked'`` which means the OS version uses debugging code, i." -"e. code that checks arguments, ranges, etc." +"also state ``'Checked'`` which means the OS version uses debugging code, " +"i.e. code that checks arguments, ranges, etc." msgstr "" msgid "" @@ -272,8 +275,8 @@ msgid "iOS platform" msgstr "" msgid "" -"Get iOS version information and return it as a :func:`~collections." -"namedtuple` with the following attributes:" +"Get iOS version information and return it as " +"a :func:`~collections.namedtuple` with the following attributes:" msgstr "" msgid "``system`` is the OS name; either ``'iOS'`` or ``'iPadOS'``." @@ -374,8 +377,8 @@ msgstr "" msgid "" "``api_level`` - API level of the running device, as an integer (e.g. ``34`` " -"for Android 14). To get the API level which Python was built against, see :" -"func:`sys.getandroidapilevel`." +"for Android 14). To get the API level which Python was built against, " +"see :func:`sys.getandroidapilevel`." msgstr "" msgid "" @@ -399,8 +402,8 @@ msgid "" msgstr "" msgid "" -"Google maintains a `list of known model and device names `__." +"Google maintains a `list of known model and device names `__." msgstr "" msgid "Command-line usage" @@ -418,8 +421,8 @@ msgid "The following options are accepted:" msgstr "" msgid "" -"Print terse information about the platform. This is equivalent to calling :" -"func:`platform.platform` with the *terse* argument set to ``True``." +"Print terse information about the platform. This is equivalent to " +"calling :func:`platform.platform` with the *terse* argument set to ``True``." msgstr "" msgid "" diff --git a/library/plistlib.po b/library/plistlib.po index 1b9f515..4e9dd7a 100644 --- a/library/plistlib.po +++ b/library/plistlib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,13 +42,13 @@ msgid "" msgstr "" msgid "" -"To write out and to parse a plist file, use the :func:`dump` and :func:" -"`load` functions." +"To write out and to parse a plist file, use the :func:`dump` " +"and :func:`load` functions." msgstr "" msgid "" -"To work with plist data in bytes or string objects, use :func:`dumps` and :" -"func:`loads`." +"To work with plist data in bytes or string objects, use :func:`dumps` " +"and :func:`loads`." msgstr "" msgid "" @@ -172,8 +172,9 @@ msgid "" msgstr "" msgid "" -"Return *value* as a plist-formatted bytes object. See the documentation for :" -"func:`dump` for an explanation of the keyword arguments of this function." +"Return *value* as a plist-formatted bytes object. See the documentation " +"for :func:`dump` for an explanation of the keyword arguments of this " +"function." msgstr "" msgid "The following classes are available:" diff --git a/library/poplib.po b/library/poplib.po index 9a81c21..f1ab194 100644 --- a/library/poplib.po +++ b/library/poplib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,9 +30,9 @@ msgstr "" msgid "" "This module defines a class, :class:`POP3`, which encapsulates a connection " -"to a POP3 server and implements the protocol as defined in :rfc:`1939`. The :" -"class:`POP3` class supports both the minimal and optional command sets from :" -"rfc:`1939`. The :class:`POP3` class also supports the ``STLS`` command " +"to a POP3 server and implements the protocol as defined in :rfc:`1939`. " +"The :class:`POP3` class supports both the minimal and optional command sets " +"from :rfc:`1939`. The :class:`POP3` class also supports the ``STLS`` command " "introduced in :rfc:`2595` to enable encrypted communication on an already " "established connection." msgstr "" @@ -46,8 +46,9 @@ msgstr "" msgid "" "Note that POP3, though widely supported, is obsolescent. The implementation " "quality of POP3 servers varies widely, and too many are quite poor. If your " -"mailserver supports IMAP, you would be better off using the :class:`imaplib." -"IMAP4` class, as IMAP servers tend to be better implemented." +"mailserver supports IMAP, you would be better off using " +"the :class:`imaplib.IMAP4` class, as IMAP servers tend to be better " +"implemented." msgstr "" msgid "Availability" @@ -75,14 +76,14 @@ msgid "" msgstr "" msgid "" -"All commands will raise an :ref:`auditing event ` ``poplib." -"putline`` with arguments ``self`` and ``line``, where ``line`` is the bytes " -"about to be sent to the remote host." +"All commands will raise an :ref:`auditing event ` " +"``poplib.putline`` with arguments ``self`` and ``line``, where ``line`` is " +"the bytes about to be sent to the remote host." msgstr "" msgid "" -"If the *timeout* parameter is set to be zero, it will raise a :class:" -"`ValueError` to prevent the creation of a non-blocking socket." +"If the *timeout* parameter is set to be zero, it will raise " +"a :class:`ValueError` to prevent the creation of a non-blocking socket." msgstr "" msgid "" @@ -99,8 +100,9 @@ msgid "*context* parameter added." msgstr "" msgid "" -"The class now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The class now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "The deprecated *keyfile* and *certfile* parameters have been removed." @@ -243,8 +245,9 @@ msgid "" msgstr "" msgid "" -"This method supports hostname checking via :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"This method supports hostname checking " +"via :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "" diff --git a/library/posix.po b/library/posix.po index 047f010..0bdd2c9 100644 --- a/library/posix.po +++ b/library/posix.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,15 +35,15 @@ msgid "Availability" msgstr "" msgid "" -"**Do not import this module directly.** Instead, import the module :mod:" -"`os`, which provides a *portable* version of this interface. On Unix, the :" -"mod:`os` module provides a superset of the :mod:`!posix` interface. On non-" -"Unix operating systems the :mod:`!posix` module is not available, but a " -"subset is always available through the :mod:`os` interface. Once :mod:`os` " -"is imported, there is *no* performance penalty in using it instead of :mod:`!" -"posix`. In addition, :mod:`os` provides some additional functionality, such " -"as automatically calling :func:`~os.putenv` when an entry in ``os.environ`` " -"is changed." +"**Do not import this module directly.** Instead, import the " +"module :mod:`os`, which provides a *portable* version of this interface. On " +"Unix, the :mod:`os` module provides a superset of the :mod:`!posix` " +"interface. On non-Unix operating systems the :mod:`!posix` module is not " +"available, but a subset is always available through the :mod:`os` " +"interface. Once :mod:`os` is imported, there is *no* performance penalty in " +"using it instead of :mod:`!posix`. In addition, :mod:`os` provides some " +"additional functionality, such as automatically calling :func:`~os.putenv` " +"when an entry in ``os.environ`` is changed." msgstr "" msgid "" @@ -56,10 +56,10 @@ msgstr "" msgid "" "Several operating systems (including AIX and Solaris) provide support for " -"files that are larger than 2 GiB from a C programming model where :c:expr:" -"`int` and :c:expr:`long` are 32-bit values. This is typically accomplished " -"by defining the relevant size and offset types as 64-bit values. Such files " -"are sometimes referred to as :dfn:`large files`." +"files that are larger than 2 GiB from a C programming model " +"where :c:expr:`int` and :c:expr:`long` are 32-bit values. This is typically " +"accomplished by defining the relevant size and offset types as 64-bit " +"values. Such files are sometimes referred to as :dfn:`large files`." msgstr "" msgid "" @@ -103,8 +103,8 @@ msgid "" "Modifying this dictionary does not affect the string environment passed on " "by :func:`~os.execv`, :func:`~os.popen` or :func:`~os.system`; if you need " "to change the environment, pass ``environ`` to :func:`~os.execve` or add " -"variable assignments and export statements to the command string for :func:" -"`~os.system` or :func:`~os.popen`." +"variable assignments and export statements to the command string " +"for :func:`~os.system` or :func:`~os.popen`." msgstr "" msgid "On Unix, keys and values are bytes." @@ -112,10 +112,10 @@ msgstr "" msgid "" "The :mod:`os` module provides an alternate implementation of ``environ`` " -"which updates the environment on modification. Note also that updating :data:" -"`os.environ` will render this dictionary obsolete. Use of the :mod:`os` " -"module version of this is recommended over direct access to the :mod:`!" -"posix` module." +"which updates the environment on modification. Note also that " +"updating :data:`os.environ` will render this dictionary obsolete. Use of " +"the :mod:`os` module version of this is recommended over direct access to " +"the :mod:`!posix` module." msgstr "" msgid "module" diff --git a/library/pprint.po b/library/pprint.po index 2fc6a6c..f0de380 100644 --- a/library/pprint.po +++ b/library/pprint.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,9 +55,9 @@ msgstr "" msgid "" "Prints the formatted representation of *object*, followed by a newline. This " -"function may be used in the interactive interpreter instead of the :func:" -"`print` function for inspecting values. Tip: you can reassign ``print = " -"pprint.pp`` for use within a scope." +"function may be used in the interactive interpreter instead of " +"the :func:`print` function for inspecting values. Tip: you can reassign " +"``print = pprint.pp`` for use within a scope." msgstr "" msgid "Parameters" @@ -66,8 +67,9 @@ msgid "The object to be printed." msgstr "" msgid "" -"A file-like object to which the output will be written by calling its :meth:" -"`!write` method. If ``None`` (the default), :data:`sys.stdout` is used." +"A file-like object to which the output will be written by calling " +"its :meth:`!write` method. If ``None`` (the default), :data:`sys.stdout` is " +"used." msgstr "" msgid "The amount of indentation added for each nesting level." @@ -109,6 +111,15 @@ msgid "" "thousands separator, otherwise underscores are not displayed (the default)." msgstr "" +msgid "Added the *underscore_numbers* parameter." +msgstr "" + +msgid "No longer attempts to write to :data:`!sys.stdout` if it is ``None``." +msgstr "" + +msgid "Added the *expand* parameter." +msgstr "" + msgid "" "Alias for :func:`~pprint.pp` with *sort_dicts* set to ``True`` by default, " "which would automatically sort the dictionaries' keys, you might want to " @@ -136,11 +147,12 @@ msgstr "" msgid "" "Return a string representation of *object*, protected against recursion in " -"some common data structures, namely instances of :class:`dict`, :class:" -"`list` and :class:`tuple` or subclasses whose ``__repr__`` has not been " -"overridden. If the representation of object exposes a recursive entry, the " -"recursive reference will be represented as ````. The representation is not otherwise formatted." +"some common data structures, namely instances " +"of :class:`dict`, :class:`list` and :class:`tuple` or subclasses whose " +"``__repr__`` has not been overridden. If the representation of object " +"exposes a recursive entry, the recursive reference will be represented as " +"````. The representation is not " +"otherwise formatted." msgstr "" msgid "PrettyPrinter Objects" @@ -160,15 +172,6 @@ msgstr "" msgid "Added the *sort_dicts* parameter." msgstr "" -msgid "Added the *underscore_numbers* parameter." -msgstr "" - -msgid "No longer attempts to write to :data:`!sys.stdout` if it is ``None``." -msgstr "" - -msgid "Added the *expand* parameter." -msgstr "" - msgid ":class:`PrettyPrinter` instances have the following methods:" msgstr "" @@ -192,9 +195,9 @@ msgstr "" msgid "" "Determine if the formatted representation of the object is \"readable,\" or " "can be used to reconstruct the value using :func:`eval`. Note that this " -"returns ``False`` for recursive objects. If the *depth* parameter of the :" -"class:`PrettyPrinter` is set and the object is deeper than allowed, this " -"returns ``False``." +"returns ``False`` for recursive objects. If the *depth* parameter of " +"the :class:`PrettyPrinter` is set and the object is deeper than allowed, " +"this returns ``False``." msgstr "" msgid "Determine if the object requires a recursive representation." @@ -228,8 +231,8 @@ msgstr "" msgid "" "To demonstrate several uses of the :func:`~pprint.pp` function and its " -"parameters, let's fetch information about a project from `PyPI `_::" +"parameters, let's fetch information about a project from `PyPI `_::" msgstr "" msgid "" diff --git a/library/profile.po b/library/profile.po index 3e9058e..8e70db9 100644 --- a/library/profile.po +++ b/library/profile.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgid "" "The :mod:`!profile` module provides a pure Python implementation of a " "deterministic profiler. While useful for understanding profiler internals or " "extending profiler behavior through subclassing, its pure Python " -"implementation introduces significant overhead compared to the C-based :mod:" -"`profiling.tracing` module." +"implementation introduces significant overhead compared to the C-" +"based :mod:`profiling.tracing` module." msgstr "" msgid "For most profiling tasks, use:" @@ -65,14 +65,14 @@ msgid "" msgstr "" msgid "" -"For most code, replacing ``import profile`` with ``import profiling." -"tracing`` (and using ``profiling.tracing`` instead of ``profile`` " +"For most code, replacing ``import profile`` with ``import " +"profiling.tracing`` (and using ``profiling.tracing`` instead of ``profile`` " "throughout) provides a straightforward migration path." msgstr "" msgid "" -"The ``cProfile`` module remains available as a backward-compatible alias to :" -"mod:`profiling.tracing`. Existing code using ``import cProfile`` will " +"The ``cProfile`` module remains available as a backward-compatible alias " +"to :mod:`profiling.tracing`. Existing code using ``import cProfile`` will " "continue to work without modification." msgstr "" @@ -227,14 +227,15 @@ msgstr "" msgid "" "**Calibration support.** The :mod:`!profile` module supports calibration to " -"compensate for profiling overhead. This is not needed in :mod:`profiling." -"tracing` because the C implementation has negligible overhead." +"compensate for profiling overhead. This is not needed " +"in :mod:`profiling.tracing` because the C implementation has negligible " +"overhead." msgstr "" msgid "" "**Custom timers.** Both modules support custom timers, but :mod:`!profile` " -"accepts timer functions that return tuples (like :func:`os.times`), while :" -"mod:`profiling.tracing` requires a function returning a single number." +"accepts timer functions that return tuples (like :func:`os.times`), " +"while :mod:`profiling.tracing` requires a function returning a single number." msgstr "" msgid "" @@ -306,15 +307,15 @@ msgstr "" msgid "" "The problem is more important with the deprecated :mod:`!profile` module " -"than with the lower-overhead :mod:`profiling.tracing`. For this reason, :" -"mod:`!profile` provides a means of calibrating itself for a given platform " -"so that this error can be probabilistically (on the average) removed. After " -"the profiler is calibrated, it will be more accurate (in a least square " -"sense), but it will sometimes produce negative numbers (when call counts are " -"exceptionally low, and the gods of probability work against you :-). ) Do " -"*not* be alarmed by negative numbers in the profile. They should *only* " -"appear if you have calibrated your profiler, and the results are actually " -"better than without calibration." +"than with the lower-overhead :mod:`profiling.tracing`. For this " +"reason, :mod:`!profile` provides a means of calibrating itself for a given " +"platform so that this error can be probabilistically (on the average) " +"removed. After the profiler is calibrated, it will be more accurate (in a " +"least square sense), but it will sometimes produce negative numbers (when " +"call counts are exceptionally low, and the gods of probability work against " +"you :-). ) Do *not* be alarmed by negative numbers in the profile. They " +"should *only* appear if you have calibrated your profiler, and the results " +"are actually better than without calibration." msgstr "" msgid "Calibration" @@ -388,8 +389,9 @@ msgstr "" msgid "" "The resulting profiler will then call ``your_time_func``. Depending on " -"whether you are using :class:`profile.Profile` or :class:`profiling.tracing." -"Profile`, ``your_time_func``'s return value will be interpreted differently:" +"whether you are using :class:`profile.Profile` " +"or :class:`profiling.tracing.Profile`, ``your_time_func``'s return value " +"will be interpreted differently:" msgstr "" msgid ":class:`profile.Profile`" @@ -437,8 +439,8 @@ msgstr "" msgid "" "Python 3.3 adds several new functions in :mod:`time` that can be used to " -"make precise measurements of process or wall-clock time. For example, see :" -"func:`time.perf_counter`." +"make precise measurements of process or wall-clock time. For example, " +"see :func:`time.perf_counter`." msgstr "" msgid ":mod:`profiling`" diff --git a/library/profiling.po b/library/profiling.po deleted file mode 100644 index b127d0c..0000000 --- a/library/profiling.po +++ /dev/null @@ -1,395 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!profiling` --- Python profilers" -msgstr "" - -msgid "**Source code:** :source:`Lib/profiling/`" -msgstr "" - -msgid "Introduction to profiling" -msgstr "" - -msgid "" -"A :dfn:`profile` is a set of statistics that describes how often and for how " -"long various parts of a program execute. These statistics help identify " -"performance bottlenecks and guide optimization efforts. Python provides two " -"fundamentally different approaches to collecting this information: " -"statistical sampling and deterministic tracing." -msgstr "" - -msgid "" -"The :mod:`!profiling` package organizes Python's built-in profiling tools " -"under a single namespace. It contains two submodules, each implementing a " -"different profiling methodology:" -msgstr "" - -msgid ":mod:`profiling.sampling`" -msgstr "" - -msgid "" -"A statistical profiler that periodically samples the call stack. Run scripts " -"directly or attach to running processes by PID. Provides multiple output " -"formats (flame graphs, heatmaps, Firefox Profiler), GIL analysis, GC " -"tracking, and multiple profiling modes (wall-clock, CPU, GIL) with virtually " -"no overhead." -msgstr "" - -msgid ":mod:`profiling.tracing`" -msgstr "" - -msgid "" -"A deterministic profiler that traces every function call, return, and " -"exception event. Provides exact call counts and precise timing information, " -"capturing every invocation including very fast functions." -msgstr "" - -msgid "" -"The profiler modules are designed to provide an execution profile for a " -"given program, not for benchmarking purposes. For benchmarking, use the :mod:" -"`timeit` module, which provides reasonably accurate timing measurements. " -"This distinction is particularly important when comparing Python code " -"against C code: deterministic profilers introduce overhead for Python code " -"but not for C-level functions, which can skew comparisons." -msgstr "" - -msgid "Choosing a profiler" -msgstr "" - -msgid "" -"For most performance analysis, use the statistical profiler (:mod:`profiling." -"sampling`). It has minimal overhead, works for both development and " -"production, and provides rich visualization options including flame graphs, " -"heatmaps, GIL analysis, and more." -msgstr "" - -msgid "" -"Use the deterministic profiler (:mod:`profiling.tracing`) when you need " -"**exact call counts** and cannot afford to miss any function calls. Since it " -"instruments every function call and return, it will capture even very fast " -"functions that complete between sampling intervals. The tradeoff is higher " -"overhead." -msgstr "" - -msgid "The following table summarizes the key differences:" -msgstr "" - -msgid "Feature" -msgstr "" - -msgid "Statistical sampling (:mod:`profiling.sampling`)" -msgstr "" - -msgid "Deterministic (:mod:`profiling.tracing`)" -msgstr "" - -msgid "**Overhead**" -msgstr "" - -msgid "Virtually none" -msgstr "" - -msgid "Moderate" -msgstr "" - -msgid "**Accuracy**" -msgstr "" - -msgid "Statistical estimate" -msgstr "" - -msgid "Exact call counts" -msgstr "" - -msgid "**Output formats**" -msgstr "" - -msgid "pstats, flame graph, heatmap, gecko, collapsed" -msgstr "" - -msgid "pstats" -msgstr "" - -msgid "**Profiling modes**" -msgstr "" - -msgid "Wall-clock, CPU, GIL" -msgstr "" - -msgid "Wall-clock" -msgstr "" - -msgid "**Special frames**" -msgstr "" - -msgid "GC, native (C extensions)" -msgstr "" - -msgid "N/A" -msgstr "" - -msgid "**Attach to PID**" -msgstr "" - -msgid "Yes" -msgstr "" - -msgid "No" -msgstr "" - -msgid "When to use statistical sampling" -msgstr "" - -msgid "" -"The statistical profiler (:mod:`profiling.sampling`) is recommended for most " -"performance analysis tasks. Use it the same way you would use :mod:" -"`profiling.tracing`::" -msgstr "" - -msgid "python -m profiling.sampling run script.py" -msgstr "" - -msgid "" -"One of the main strengths of the sampling profiler is its variety of output " -"formats. Beyond traditional pstats tables, it can generate interactive flame " -"graphs that visualize call hierarchies, line-level source heatmaps that show " -"exactly where time is spent in your code, and Firefox Profiler output for " -"timeline-based analysis." -msgstr "" - -msgid "" -"The profiler also provides insight into Python interpreter behavior that " -"deterministic profiling cannot capture. Use ``--mode gil`` to identify GIL " -"contention in multi-threaded code, ``--mode cpu`` to measure actual CPU time " -"excluding I/O waits, or inspect ```` frames to understand garbage " -"collection overhead. The ``--native`` option reveals time spent in C " -"extensions, helping distinguish Python overhead from library performance." -msgstr "" - -msgid "" -"For multi-threaded applications, the ``-a`` option samples all threads " -"simultaneously, showing how work is distributed. And for production " -"debugging, the ``attach`` command connects to any running Python process by " -"PID without requiring a restart or code changes." -msgstr "" - -msgid "When to use deterministic tracing" -msgstr "" - -msgid "" -"The deterministic profiler (:mod:`profiling.tracing`) instruments every " -"function call and return. This approach has higher overhead than sampling, " -"but guarantees complete coverage of program execution." -msgstr "" - -msgid "" -"The primary reason to choose deterministic tracing is when you need exact " -"call counts. Statistical profiling estimates frequency based on sampling, " -"which may undercount short-lived functions that complete between samples. If " -"you need to verify that an optimization actually reduced the number of " -"function calls, or if you want to trace the complete call graph to " -"understand caller-callee relationships, deterministic tracing is the right " -"choice." -msgstr "" - -msgid "" -"Deterministic tracing also excels at capturing functions that execute in " -"microseconds. Such functions may not appear frequently enough in statistical " -"samples, but deterministic tracing records every invocation regardless of " -"duration." -msgstr "" - -msgid "Quick start" -msgstr "" - -msgid "" -"This section provides the minimal steps needed to start profiling. For " -"complete documentation, see the dedicated pages for each profiler." -msgstr "" - -msgid "Statistical profiling" -msgstr "" - -msgid "" -"To profile a script, use the :mod:`profiling.sampling` module with the " -"``run`` command::" -msgstr "" - -msgid "" -"python -m profiling.sampling run script.py\n" -"python -m profiling.sampling run -m mypackage.module" -msgstr "" - -msgid "" -"This runs the script under the profiler and prints a summary of where time " -"was spent. For an interactive flame graph::" -msgstr "" - -msgid "python -m profiling.sampling run --flamegraph script.py" -msgstr "" - -msgid "" -"To profile an already-running process, use the ``attach`` command with the " -"process ID::" -msgstr "" - -msgid "python -m profiling.sampling attach 1234" -msgstr "" - -msgid "" -"For custom settings, specify the sampling interval (in microseconds) and " -"duration (in seconds)::" -msgstr "" - -msgid "python -m profiling.sampling run -i 50 -d 30 script.py" -msgstr "" - -msgid "Deterministic profiling" -msgstr "" - -msgid "To profile a script from the command line::" -msgstr "" - -msgid "python -m profiling.tracing script.py" -msgstr "" - -msgid "To profile a piece of code programmatically:" -msgstr "" - -msgid "" -"import profiling.tracing\n" -"profiling.tracing.run('my_function()')" -msgstr "" - -msgid "" -"This executes the given code under the profiler and prints a summary showing " -"exact function call counts and timing." -msgstr "" - -msgid "Understanding profile output" -msgstr "" - -msgid "" -"Both profilers collect function-level statistics, though they present them " -"in different formats. The sampling profiler offers multiple visualizations " -"(flame graphs, heatmaps, Firefox Profiler, pstats tables), while the " -"deterministic profiler produces pstats-compatible output. Regardless of " -"format, the underlying concepts are the same." -msgstr "" - -msgid "Key profiling concepts:" -msgstr "" - -msgid "**Direct time** (also called *self time* or *tottime*)" -msgstr "" - -msgid "" -"Time spent executing code in the function itself, excluding time spent in " -"functions it called. High direct time indicates the function contains " -"expensive operations." -msgstr "" - -msgid "**Cumulative time** (also called *total time* or *cumtime*)" -msgstr "" - -msgid "" -"Time spent in the function and all functions it called. This measures the " -"total cost of calling a function, including its entire call subtree." -msgstr "" - -msgid "**Call count** (also called *ncalls* or *samples*)" -msgstr "" - -msgid "" -"How many times the function was called (deterministic) or sampled " -"(statistical). In deterministic profiling, this is exact. In statistical " -"profiling, it represents the number of times the function appeared in a " -"stack sample." -msgstr "" - -msgid "**Primitive calls**" -msgstr "" - -msgid "" -"Calls that are not induced by recursion. When a function recurses, the total " -"call count includes recursive invocations, but primitive calls counts only " -"the initial entry. Displayed as ``total/primitive`` (for example, ``3/1`` " -"means three total calls, one primitive)." -msgstr "" - -msgid "**Caller/Callee relationships**" -msgstr "" - -msgid "" -"Which functions called a given function (callers) and which functions it " -"called (callees). Flame graphs visualize this as nested rectangles; pstats " -"can display it via the :meth:`~pstats.Stats.print_callers` and :meth:" -"`~pstats.Stats.print_callees` methods." -msgstr "" - -msgid "Legacy compatibility" -msgstr "" - -msgid "" -"For backward compatibility, the ``cProfile`` module remains available as an " -"alias to :mod:`profiling.tracing`. Existing code using ``import cProfile`` " -"will continue to work without modification in all future Python versions." -msgstr "" - -msgid "" -"The pure Python :mod:`profile` module is deprecated and will be removed in " -"Python 3.17. Use :mod:`profiling.tracing` (or its alias ``cProfile``) " -"instead. See :mod:`profile` for migration guidance." -msgstr "" - -msgid "" -"Statistical sampling profiler with flame graphs, heatmaps, and GIL analysis. " -"Recommended for most users." -msgstr "" - -msgid "Deterministic tracing profiler for exact call counts." -msgstr "" - -msgid ":mod:`pstats`" -msgstr "" - -msgid "Statistics analysis and formatting for profile data." -msgstr "" - -msgid ":mod:`timeit`" -msgstr "" - -msgid "Module for measuring execution time of small code snippets." -msgstr "" - -msgid "Submodules" -msgstr "" - -msgid "statistical profiling" -msgstr "" - -msgid "profiling, statistical" -msgstr "" - -msgid "deterministic profiling" -msgstr "" - -msgid "profiling, deterministic" -msgstr "" diff --git a/library/profiling.sampling.po b/library/profiling.sampling.po deleted file mode 100644 index 4e190b9..0000000 --- a/library/profiling.sampling.po +++ /dev/null @@ -1,2284 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!profiling.sampling` --- Statistical profiler" -msgstr "" - -msgid "**Source code:** :source:`Lib/profiling/sampling/`" -msgstr "" - -msgid "Tachyon logo" -msgstr "" - -msgid "" -"The :mod:`!profiling.sampling` module, named **Tachyon**, provides " -"statistical profiling of Python programs through periodic stack sampling. " -"Tachyon can run scripts directly or attach to any running Python process " -"without requiring code changes or restarts. Because sampling occurs " -"externally to the target process, overhead is virtually zero, making Tachyon " -"suitable for both development and production environments." -msgstr "" - -msgid "What is statistical profiling?" -msgstr "" - -msgid "" -"Statistical profiling builds a picture of program behavior by periodically " -"capturing snapshots of the call stack. Rather than instrumenting every " -"function call and return as deterministic profilers do, Tachyon reads the " -"call stack at regular intervals to record what code is currently running." -msgstr "" - -msgid "" -"This approach rests on a simple principle: functions that consume " -"significant CPU time will appear frequently in the collected samples. By " -"gathering thousands of samples over a profiling session, Tachyon constructs " -"an accurate statistical estimate of where time is spent. The more samples " -"collected, the more precise this estimate becomes." -msgstr "" - -msgid "" -"The following interactive visualization demonstrates how sampling profiling " -"works. Press **Play** to watch a Python program execute, and observe how the " -"profiler periodically captures snapshots of the call stack. Adjust the " -"**sample interval** to see how sampling frequency affects the results." -msgstr "" - -msgid "" -"An interactive visualization of sampling profiling is available in the HTML " -"version of this documentation." -msgstr "" - -msgid "How time is estimated" -msgstr "" - -msgid "" -"The time values shown in Tachyon's output are **estimates derived from " -"sample counts**, not direct measurements. Tachyon counts how many times each " -"function appears in the collected samples, then multiplies by the sampling " -"interval to estimate time." -msgstr "" - -msgid "" -"For example, with a 10 kHz sampling rate over a 10-second profile, Tachyon " -"collects approximately 100,000 samples. If a function appears in 5,000 " -"samples (5% of total), Tachyon estimates it consumed 5% of the 10-second " -"duration, or about 500 milliseconds. This is a statistical estimate, not a " -"precise measurement." -msgstr "" - -msgid "" -"The accuracy of these estimates depends on sample count. With 100,000 " -"samples, a function showing 5% has a margin of error of roughly ±0.5%. With " -"only 1,000 samples, the same 5% measurement could actually represent " -"anywhere from 3% to 7% of real time." -msgstr "" - -msgid "" -"This is why longer profiling durations and shorter sampling intervals " -"produce more reliable results---they collect more samples. For most " -"performance analysis, the default settings provide sufficient accuracy to " -"identify bottlenecks and guide optimization efforts." -msgstr "" - -msgid "" -"Because sampling is statistical, results will vary slightly between runs. A " -"function showing 12% in one run might show 11% or 13% in the next. This is " -"normal and expected. Focus on the overall pattern rather than exact " -"percentages, and don't worry about small variations between runs." -msgstr "" - -msgid "When to use a different approach" -msgstr "" - -msgid "Statistical sampling is not ideal for every situation." -msgstr "" - -msgid "" -"For very short scripts that complete in under one second, the profiler may " -"not collect enough samples for reliable results. Use :mod:`profiling." -"tracing` instead, or run the script in a loop to extend profiling time." -msgstr "" - -msgid "" -"When you need exact call counts, sampling cannot provide them. Sampling " -"estimates frequency from snapshots, so if you need to know precisely how " -"many times a function was called, use :mod:`profiling.tracing`." -msgstr "" - -msgid "" -"When comparing two implementations where the difference might be only 1-2%, " -"sampling noise can obscure real differences. Use :mod:`timeit` for micro-" -"benchmarks or :mod:`profiling.tracing` for precise measurements." -msgstr "" - -msgid "" -"The key difference from :mod:`profiling.tracing` is how measurement happens. " -"A tracing profiler instruments your code, recording every function call and " -"return. This provides exact call counts and precise timing but adds overhead " -"to every function call. A sampling profiler, by contrast, observes the " -"program from outside at fixed intervals without modifying its execution. " -"Think of the difference like this: tracing is like having someone follow you " -"and write down every step you take, while sampling is like taking " -"photographs every second and inferring your path from those snapshots." -msgstr "" - -msgid "" -"This external observation model is what makes sampling profiling practical " -"for production use. The profiled program runs at full speed because there is " -"no instrumentation code running inside it, and the target process is never " -"stopped or paused during sampling---Tachyon reads the call stack directly " -"from the process's memory while it continues to run. You can attach to a " -"live server, collect data, and detach without the application ever knowing " -"it was observed. The trade-off is that very short-lived functions may be " -"missed if they happen to complete between samples." -msgstr "" - -msgid "" -"Statistical profiling excels at answering the question, \"Where is my " -"program spending time?\" It reveals hotspots and bottlenecks in production " -"code where deterministic profiling overhead would be unacceptable. For exact " -"call counts and complete call graphs, use :mod:`profiling.tracing` instead." -msgstr "" - -msgid "Quick examples" -msgstr "" - -msgid "Profile a script and see the results immediately::" -msgstr "" - -msgid "python -m profiling.sampling run script.py" -msgstr "" - -msgid "Profile a module with arguments::" -msgstr "" - -msgid "python -m profiling.sampling run -m mypackage.module arg1 arg2" -msgstr "" - -msgid "Generate an interactive flame graph::" -msgstr "" - -msgid "python -m profiling.sampling run --flamegraph -o profile.html script.py" -msgstr "" - -msgid "Attach to a running process by PID::" -msgstr "" - -msgid "python -m profiling.sampling attach 12345" -msgstr "" - -msgid "Print a single snapshot of a running process's stack::" -msgstr "" - -msgid "python -m profiling.sampling dump 12345" -msgstr "" - -msgid "Use live mode for real-time monitoring (press ``q`` to quit)::" -msgstr "" - -msgid "python -m profiling.sampling run --live script.py" -msgstr "" - -msgid "Profile for 60 seconds with a faster sampling rate::" -msgstr "" - -msgid "python -m profiling.sampling run -d 60 -r 20khz script.py" -msgstr "" - -msgid "Generate a line-by-line heatmap::" -msgstr "" - -msgid "python -m profiling.sampling run --heatmap script.py" -msgstr "" - -msgid "" -"Enable opcode-level profiling to see which bytecode instructions are " -"executing::" -msgstr "" - -msgid "python -m profiling.sampling run --opcodes --flamegraph script.py" -msgstr "" - -msgid "Commands" -msgstr "" - -msgid "" -"Tachyon operates through several subcommands. ``run`` and ``attach`` collect " -"samples over time; ``dump`` captures a single snapshot; ``replay`` converts " -"binary profiles to other formats." -msgstr "" - -msgid "The ``run`` command" -msgstr "" - -msgid "" -"The ``run`` command launches a Python script or module and profiles it from " -"startup::" -msgstr "" - -msgid "" -"python -m profiling.sampling run script.py\n" -"python -m profiling.sampling run -m mypackage.module" -msgstr "" - -msgid "" -"When profiling a script, the profiler starts the target in a subprocess, " -"waits for it to initialize, then begins collecting samples. The ``-m`` flag " -"indicates that the target should be run as a module (equivalent to ``python -" -"m``). Arguments after the target are passed through to the profiled program::" -msgstr "" - -msgid "python -m profiling.sampling run script.py --config settings.yaml" -msgstr "" - -msgid "The ``attach`` command" -msgstr "" - -msgid "" -"The ``attach`` command connects to an already-running Python process by its " -"process ID::" -msgstr "" - -msgid "" -"This command is particularly valuable for investigating performance issues " -"in production systems. The target process requires no modification and need " -"not be restarted. The profiler attaches, collects samples for the specified " -"duration, then detaches and produces output." -msgstr "" - -msgid "" -"python -m profiling.sampling attach --live 12345\n" -"python -m profiling.sampling attach --flamegraph -d 30 -o profile.html 12345" -msgstr "" - -msgid "" -"On most systems, attaching to another process requires appropriate " -"permissions. See :ref:`profiling-permissions` for platform-specific " -"requirements." -msgstr "" - -msgid "The ``dump`` command" -msgstr "" - -msgid "" -"The ``dump`` command prints a single snapshot of a running process's Python " -"stack and exits, similar to a traceback::" -msgstr "" - -msgid "" -"Unlike ``attach``, ``dump`` does not run a sampling loop: it reads the stack " -"once. This is useful for investigating hung or unresponsive processes, or " -"for answering \"what is this process doing right now?\"." -msgstr "" - -msgid "" -"The output mirrors a traceback (most recent call last) and annotates each " -"thread with its current state (main thread, has GIL, on CPU, waiting for " -"GIL, has exception, or idle):" -msgstr "" - -msgid "" -"Stack dump for PID 12345, thread 140735 (main thread, has GIL, on CPU; most " -"recent call last):\n" -" File \"server.py\", line 28, in serve\n" -" await handle_request(req)\n" -" File \"handler.py\", line 91, in handle_request\n" -" result = expensive_call(req)" -msgstr "" - -msgid "" -"When the target's source files are readable, ``dump`` prints the source line " -"for each frame and highlights the executing expression." -msgstr "" - -msgid "" -"Like ``attach``, ``dump`` requires permission to read the target process's " -"memory. See :ref:`profiling-permissions`." -msgstr "" - -msgid "The ``dump`` command supports the following options:" -msgstr "" - -msgid "``-a``, ``--all-threads``" -msgstr "" - -msgid "" -"Dump every thread in the target process. Without this flag only the main " -"thread is shown." -msgstr "" - -msgid "``--native``" -msgstr "" - -msgid "" -"Include synthetic ```` frames marking transitions into C extensions " -"or other non-Python code." -msgstr "" - -msgid "``--no-gc``" -msgstr "" - -msgid "Hide the synthetic ```` frames that mark active garbage collection." -msgstr "" - -msgid "``--opcodes``" -msgstr "" - -msgid "" -"Annotate each frame with the bytecode opcode the thread is currently " -"executing (for example, ``opcode=CALL_KW``). Useful for instruction-level " -"investigation, including identifying specializations chosen by the adaptive " -"interpreter." -msgstr "" - -msgid "``--async-aware``" -msgstr "" - -msgid "" -"Reconstruct stacks across ``await`` boundaries. ``dump`` walks the task " -"graph and emits one section per task, with ```` markers separating " -"coroutines awaiting each other." -msgstr "" - -msgid "``--async-mode {running,all}``" -msgstr "" - -msgid "" -"Controls which tasks are included when ``--async-aware`` is enabled. " -"``running`` shows only the task currently executing on each thread; ``all`` " -"(the default for ``dump``) also includes tasks suspended on a wait. " -"``attach``'s default for this flag is ``running``; ``dump`` defaults to " -"``all`` because a single snapshot is most useful when it shows the full task " -"graph." -msgstr "" - -msgid "``--blocking``" -msgstr "" - -msgid "" -"Pause every thread in the target while reading its stack and resume them " -"after. Guarantees a fully consistent snapshot at the cost of briefly " -"stopping the target. Without it, ``dump`` reads memory while the target " -"keeps running, which is faster but can occasionally produce a torn stack." -msgstr "" - -msgid "The ``replay`` command" -msgstr "" - -msgid "" -"The ``replay`` command converts binary profile files to other output " -"formats::" -msgstr "" - -msgid "" -"python -m profiling.sampling replay profile.bin\n" -"python -m profiling.sampling replay --flamegraph -o profile.html profile.bin" -msgstr "" - -msgid "" -"This command is useful when you have captured profiling data in binary " -"format and want to analyze it later or convert it to a visualization format. " -"Binary profiles can be replayed multiple times to different formats without " -"re-profiling." -msgstr "" - -msgid "" -"# Convert binary to pstats (default, prints to stdout)\n" -"python -m profiling.sampling replay profile.bin\n" -"\n" -"# Convert binary to flame graph\n" -"python -m profiling.sampling replay --flamegraph -o output.html profile.bin\n" -"\n" -"# Convert binary to gecko format for Firefox Profiler\n" -"python -m profiling.sampling replay --gecko -o profile.json profile.bin\n" -"\n" -"# Convert binary to heatmap\n" -"python -m profiling.sampling replay --heatmap -o my_heatmap profile.bin" -msgstr "" - -msgid "Profiling in production" -msgstr "" - -msgid "" -"The sampling profiler is designed for production use. It imposes no " -"measurable overhead on the target process because it reads memory externally " -"rather than instrumenting code. The target application continues running at " -"full speed and is unaware it is being profiled." -msgstr "" - -msgid "When profiling production systems, keep these guidelines in mind:" -msgstr "" - -msgid "" -"Start with shorter durations (10-30 seconds) to get quick results, then " -"extend if you need more statistical accuracy. By default, profiling runs " -"until the target process completes, which is usually sufficient to identify " -"major hotspots." -msgstr "" - -msgid "" -"If possible, profile during representative load rather than peak traffic. " -"Profiles collected during normal operation are easier to interpret than " -"those collected during unusual spikes." -msgstr "" - -msgid "" -"The profiler itself consumes some CPU on the machine where it runs (not on " -"the target process). On the same machine, this is typically negligible. When " -"profiling remote processes, network latency does not affect the target." -msgstr "" - -msgid "" -"Results from production may differ from development due to different data " -"sizes, concurrent load, or caching effects. This is expected and is often " -"exactly what you want to capture." -msgstr "" - -msgid "Platform requirements" -msgstr "" - -msgid "" -"The profiler reads the target process's memory to capture stack traces. This " -"requires elevated permissions on most operating systems." -msgstr "" - -msgid "**Linux**" -msgstr "" - -msgid "" -"On Linux, the profiler uses ``ptrace`` or ``process_vm_readv`` to read the " -"target process's memory. This typically requires one of:" -msgstr "" - -msgid "Running as root" -msgstr "" - -msgid "Having the ``CAP_SYS_PTRACE`` capability" -msgstr "" - -msgid "Adjusting the Yama ptrace scope: ``/proc/sys/kernel/yama/ptrace_scope``" -msgstr "" - -msgid "" -"The default ptrace_scope of 1 restricts ptrace to parent processes only. To " -"allow attaching to any process owned by the same user, set it to 0::" -msgstr "" - -msgid "echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope" -msgstr "" - -msgid "**macOS**" -msgstr "" - -msgid "" -"On macOS, the profiler uses ``task_for_pid()`` to access the target process. " -"This requires one of:" -msgstr "" - -msgid "" -"The profiler binary having the ``com.apple.security.cs.debugger`` entitlement" -msgstr "" - -msgid "System Integrity Protection (SIP) being disabled (not recommended)" -msgstr "" - -msgid "**Windows**" -msgstr "" - -msgid "" -"On Windows, the profiler requires administrative privileges or the " -"``SeDebugPrivilege`` privilege to read another process's memory." -msgstr "" - -msgid "Version compatibility" -msgstr "" - -msgid "" -"The profiler and target process must run the same Python minor version (for " -"example, both Python 3.15). Attaching from Python 3.14 to a Python 3.15 " -"process is not supported." -msgstr "" - -msgid "" -"Additional restrictions apply to pre-release Python versions: if either the " -"profiler or target is running a pre-release (alpha, beta, or release " -"candidate), both must run the exact same version." -msgstr "" - -msgid "" -"On free-threaded Python builds, the profiler cannot attach from a free-" -"threaded build to a standard build, or vice versa." -msgstr "" - -msgid "Sampling configuration" -msgstr "" - -msgid "" -"Before exploring the various output formats and visualization options, it is " -"important to understand how to configure the sampling process itself. The " -"profiler offers several options that control how frequently samples are " -"collected, how long profiling runs, which threads are observed, and what " -"additional context is captured in each sample." -msgstr "" - -msgid "The default configuration works well for most use cases:" -msgstr "" - -msgid "Option" -msgstr "" - -msgid "Default" -msgstr "" - -msgid "Default for ``--sampling-rate`` / ``-r``" -msgstr "" - -msgid "1 kHz" -msgstr "" - -msgid "Default for ``--duration`` / ``-d``" -msgstr "" - -msgid "Run to completion" -msgstr "" - -msgid "Default for ``--all-threads`` / ``-a``" -msgstr "" - -msgid "Main thread only" -msgstr "" - -msgid "Default for ``--native``" -msgstr "" - -msgid "No ```` frames (C code time attributed to caller)" -msgstr "" - -msgid "Default for ``--no-gc``" -msgstr "" - -msgid "```` frames included when garbage collection is active" -msgstr "" - -msgid "Default for ``--mode``" -msgstr "" - -msgid "Wall-clock mode (all samples recorded)" -msgstr "" - -msgid "Default for ``--realtime-stats``" -msgstr "" - -msgid "Disabled" -msgstr "" - -msgid "Default for ``--subprocesses``" -msgstr "" - -msgid "Default for ``--blocking``" -msgstr "" - -msgid "Disabled (non-blocking sampling)" -msgstr "" - -msgid "Sampling rate and duration" -msgstr "" - -msgid "" -"The two most fundamental parameters are the sampling rate and duration. " -"Together, these determine how many samples will be collected during a " -"profiling session." -msgstr "" - -msgid "" -"The :option:`--sampling-rate` option (:option:`-r`) sets how frequently " -"samples are collected. The default is 1 kHz (1,000 samples per second)::" -msgstr "" - -msgid "python -m profiling.sampling run -r 20khz script.py" -msgstr "" - -msgid "" -"Higher rates capture more samples and provide finer-grained data at the cost " -"of slightly higher profiler CPU usage. Lower rates reduce profiler overhead " -"but may miss short-lived functions. For most applications, the default rate " -"provides a good balance between accuracy and overhead." -msgstr "" - -msgid "" -"The :option:`--duration` option (:option:`-d`) sets how long to profile in " -"seconds. By default, profiling continues until the target process exits or " -"is interrupted::" -msgstr "" - -msgid "python -m profiling.sampling run -d 60 script.py" -msgstr "" - -msgid "" -"Specifying a duration is useful when attaching to long-running processes or " -"when you want to limit profiling to a specific time window. When profiling a " -"script, the default behavior of running to completion is usually what you " -"want." -msgstr "" - -msgid "Thread selection" -msgstr "" - -msgid "" -"Python programs often use multiple threads, whether explicitly through the :" -"mod:`threading` module or implicitly through libraries that manage thread " -"pools." -msgstr "" - -msgid "" -"By default, the profiler samples only the main thread. The :option:`--all-" -"threads` option (:option:`-a`) enables sampling of all threads in the " -"process::" -msgstr "" - -msgid "python -m profiling.sampling run -a script.py" -msgstr "" - -msgid "" -"Multi-thread profiling reveals how work is distributed across threads and " -"can identify threads that are blocked or starved. Each thread's samples are " -"combined in the output, with the ability to filter by thread in some " -"formats. This option is particularly useful when investigating concurrency " -"issues or when work is distributed across a thread pool." -msgstr "" - -msgid "Blocking mode" -msgstr "" - -msgid "" -"By default, Tachyon reads the target process's memory without stopping it. " -"This non-blocking approach is ideal for most profiling scenarios because it " -"imposes virtually zero overhead on the target application: the profiled " -"program runs at full speed and is unaware it is being observed." -msgstr "" - -msgid "" -"However, non-blocking sampling can occasionally produce incomplete or " -"inconsistent stack traces in applications with many generators or coroutines " -"that rapidly switch between yield points, or in programs with very fast-" -"changing call stacks where functions enter and exit between the start and " -"end of a single stack read, resulting in reconstructed stacks that mix " -"frames from different execution states or that never actually existed." -msgstr "" - -msgid "" -"For these cases, the :option:`--blocking` option stops the target process " -"during each sample::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --blocking script.py\n" -"python -m profiling.sampling attach --blocking 12345" -msgstr "" - -msgid "" -"When blocking mode is enabled, the profiler suspends the target process, " -"reads its stack, then resumes it. This guarantees that each captured stack " -"represents a real, consistent snapshot of what the process was doing at that " -"instant. The trade-off is that the target process runs slower because it is " -"repeatedly paused." -msgstr "" - -msgid "" -"Do not use very high sample rates (low ``--interval`` values) with blocking " -"mode. Suspending and resuming a process takes time, and if the sampling " -"interval is too short, the target will spend more time stopped than running. " -"For blocking mode, intervals of 1000 microseconds (1 millisecond) or higher " -"are recommended. The default 100 microsecond interval may cause noticeable " -"slowdown in the target application." -msgstr "" - -msgid "" -"Use blocking mode only when you observe inconsistent stacks in your " -"profiles, particularly with generator-heavy or coroutine-heavy code. For " -"most applications, the default non-blocking mode provides accurate results " -"with zero impact on the target process." -msgstr "" - -msgid "Special frames" -msgstr "" - -msgid "" -"The profiler can inject artificial frames into the captured stacks to " -"provide additional context about what the interpreter is doing at the moment " -"each sample is taken. These synthetic frames help distinguish different " -"types of execution that would otherwise be invisible." -msgstr "" - -msgid "" -"The :option:`--native` option adds ```` frames to indicate when " -"Python has called into C code (extension modules, built-in functions, or the " -"interpreter itself)::" -msgstr "" - -msgid "python -m profiling.sampling run --native script.py" -msgstr "" - -msgid "" -"These frames help distinguish time spent in Python code versus time spent in " -"native libraries. Without this option, native code execution appears as time " -"in the Python function that made the call. This is useful when optimizing " -"code that makes heavy use of C extensions like NumPy or database drivers." -msgstr "" - -msgid "" -"By default, the profiler includes ```` frames when garbage collection is " -"active. The :option:`--no-gc` option suppresses these frames::" -msgstr "" - -msgid "python -m profiling.sampling run --no-gc script.py" -msgstr "" - -msgid "" -"GC frames help identify programs where garbage collection consumes " -"significant time, which may indicate memory allocation patterns worth " -"optimizing. If you see substantial time in ```` frames, consider " -"investigating object allocation rates or using object pooling." -msgstr "" - -msgid "Opcode-aware profiling" -msgstr "" - -msgid "" -"The :option:`--opcodes` option enables instruction-level profiling that " -"captures which Python bytecode instructions are executing at each sample::" -msgstr "" - -msgid "" -"This feature provides visibility into Python's bytecode execution, including " -"adaptive specialization optimizations. When a generic instruction like " -"``LOAD_ATTR`` is specialized at runtime into a more efficient variant like " -"``LOAD_ATTR_INSTANCE_VALUE``, the profiler shows both the specialized name " -"and the base instruction." -msgstr "" - -msgid "Opcode information appears in several output formats:" -msgstr "" - -msgid "" -"**Flame graphs**: Hovering over a frame displays a tooltip with a bytecode " -"instruction breakdown, showing which opcodes consumed time in that function" -msgstr "" - -msgid "" -"**Heatmap**: Expandable bytecode panels per source line show instruction " -"breakdown with specialization percentages" -msgstr "" - -msgid "" -"**Live mode**: An opcode panel shows instruction-level statistics for the " -"selected function, accessible via keyboard navigation" -msgstr "" - -msgid "" -"**Gecko format**: Opcode transitions are emitted as interval markers in the " -"Firefox Profiler timeline" -msgstr "" - -msgid "This level of detail is particularly useful for:" -msgstr "" - -msgid "" -"Understanding the performance impact of Python's adaptive specialization" -msgstr "" - -msgid "" -"Identifying hot bytecode instructions that might benefit from optimization" -msgstr "" - -msgid "" -"Analyzing the effectiveness of different code patterns at the instruction " -"level" -msgstr "" - -msgid "Debugging performance issues that occur at the bytecode level" -msgstr "" - -msgid "" -"The :option:`--opcodes` option is compatible with :option:`--live`, :option:" -"`--flamegraph`, :option:`--heatmap`, and :option:`--gecko` formats. It " -"requires additional memory to store opcode information and may slightly " -"reduce sampling performance, but provides unprecedented visibility into " -"Python's execution model." -msgstr "" - -msgid "Real-time statistics" -msgstr "" - -msgid "" -"The :option:`--realtime-stats` option displays sampling rate statistics " -"during profiling::" -msgstr "" - -msgid "python -m profiling.sampling run --realtime-stats script.py" -msgstr "" - -msgid "" -"This shows the actual achieved sampling rate, which may be lower than " -"requested if the profiler cannot keep up. The statistics help verify that " -"profiling is working correctly and that sufficient samples are being " -"collected. See :ref:`sampling-efficiency` for details on interpreting these " -"metrics." -msgstr "" - -msgid "Subprocess profiling" -msgstr "" - -msgid "" -"The :option:`--subprocesses` option enables automatic profiling of " -"subprocesses spawned by the target::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --subprocesses script.py\n" -"python -m profiling.sampling attach --subprocesses 12345" -msgstr "" - -msgid "" -"When enabled, the profiler monitors the target process for child process " -"creation. When a new Python child process is detected, a separate profiler " -"instance is automatically spawned to profile it. This is useful for " -"applications that use :mod:`multiprocessing`, :mod:`subprocess`, :mod:" -"`concurrent.futures` with :class:`~concurrent.futures.ProcessPoolExecutor`, " -"or other process spawning mechanisms." -msgstr "" - -msgid "worker_pool.py" -msgstr "" - -msgid "" -"from concurrent.futures import ProcessPoolExecutor\n" -"import math\n" -"\n" -"def compute_factorial(n):\n" -" total = 0\n" -" for i in range(50):\n" -" total += math.factorial(n)\n" -" return total\n" -"\n" -"if __name__ == \"__main__\":\n" -" numbers = [5000 + i * 100 for i in range(50)]\n" -" with ProcessPoolExecutor(max_workers=4) as executor:\n" -" results = list(executor.map(compute_factorial, numbers))\n" -" print(f\"Computed {len(results)} factorials\")" -msgstr "" - -msgid "" -"python -m profiling.sampling run --subprocesses --flamegraph worker_pool.py" -msgstr "" - -msgid "" -"This produces separate flame graphs for the main process and each worker " -"process: ``flamegraph_.html``, ``flamegraph_.html``, " -"and so on." -msgstr "" - -msgid "" -"Each subprocess receives its own output file. The filename is derived from " -"the specified output path (or the default) with the subprocess's process ID " -"appended:" -msgstr "" - -msgid "" -"If you specify ``-o profile.html``, subprocesses produce ``profile_12345." -"html``, ``profile_12346.html``, and so on" -msgstr "" - -msgid "" -"With default output, subprocesses produce files like ``flamegraph_12345." -"html`` or directories like ``heatmap_12345``" -msgstr "" - -msgid "" -"For pstats format (which defaults to stdout), subprocesses produce files " -"like ``profile_12345.pstats``" -msgstr "" - -msgid "" -"The subprocess profilers inherit most sampling options from the parent " -"(sampling rate, duration, thread selection, native frames, GC frames, async-" -"aware mode, and output format). All Python descendant processes are profiled " -"recursively, including grandchildren and further descendants." -msgstr "" - -msgid "" -"Subprocess detection works by periodically scanning for new descendants of " -"the target process and checking whether each new process is a Python process " -"by probing the process memory for Python runtime structures. Non-Python " -"subprocesses (such as shell commands or external tools) are ignored." -msgstr "" - -msgid "" -"There is a limit of 100 concurrent subprocess profilers to prevent resource " -"exhaustion in programs that spawn many processes. If this limit is reached, " -"additional subprocesses are not profiled and a warning is printed." -msgstr "" - -msgid "" -"The :option:`--subprocesses` option is incompatible with :option:`--live` " -"mode because live mode uses an interactive terminal interface that cannot " -"accommodate multiple concurrent profiler displays." -msgstr "" - -msgid "Sampling efficiency" -msgstr "" - -msgid "" -"Sampling efficiency metrics help assess the quality of the collected data. " -"These metrics appear in the profiler's terminal output and in the flame " -"graph sidebar." -msgstr "" - -msgid "" -"**Sampling efficiency** is the percentage of sample attempts that succeeded. " -"Each sample attempt reads the target process's call stack from memory. An " -"attempt can fail if the process is in an inconsistent state at the moment of " -"reading, such as during a context switch or while the interpreter is " -"updating its internal structures. A low efficiency may indicate that the " -"profiler could not keep up with the requested sampling rate, often due to " -"system load or an overly aggressive interval setting." -msgstr "" - -msgid "" -"**Missed samples** is the percentage of expected samples that were not " -"collected. Based on the configured interval and duration, the profiler " -"expects to collect a certain number of samples. Some samples may be missed " -"if the profiler falls behind schedule, for example when the system is under " -"heavy load. A small percentage of missed samples is normal and does not " -"significantly affect the statistical accuracy of the profile." -msgstr "" - -msgid "" -"Both metrics are informational. Even with some failed attempts or missed " -"samples, the profile remains statistically valid as long as enough samples " -"were collected. The profiler reports the actual number of samples captured, " -"which you can use to judge whether the data is sufficient for your analysis." -msgstr "" - -msgid "Profiling modes" -msgstr "" - -msgid "" -"The sampling profiler supports four modes that control which samples are " -"recorded. The mode determines what the profile measures: total elapsed time, " -"CPU execution time, time spent holding the global interpreter lock, or " -"exception handling." -msgstr "" - -msgid "Wall-clock mode" -msgstr "" - -msgid "" -"Wall-clock mode (:option:`--mode`\\ ``=wall``) captures all samples " -"regardless of what the thread is doing. This is the default mode and " -"provides a complete picture of where time passes during program execution::" -msgstr "" - -msgid "python -m profiling.sampling run --mode=wall script.py" -msgstr "" - -msgid "" -"In wall-clock mode, samples are recorded whether the thread is actively " -"executing Python code, waiting for I/O, blocked on a lock, or sleeping. This " -"makes wall-clock profiling ideal for understanding the overall time " -"distribution in your program, including time spent waiting." -msgstr "" - -msgid "" -"If your program spends significant time in I/O operations, network calls, or " -"sleep, wall-clock mode will show these waits as time attributed to the " -"calling function. This is often exactly what you want when optimizing end-to-" -"end latency." -msgstr "" - -msgid "CPU mode" -msgstr "" - -msgid "" -"CPU mode (:option:`--mode`\\ ``=cpu``) records samples only when the thread " -"is actually executing on a CPU core::" -msgstr "" - -msgid "python -m profiling.sampling run --mode=cpu script.py" -msgstr "" - -msgid "" -"Samples taken while the thread is sleeping, blocked on I/O, or waiting for a " -"lock are discarded. The resulting profile shows where CPU cycles are " -"consumed, filtering out idle time." -msgstr "" - -msgid "" -"CPU mode is useful when you want to focus on computational hotspots without " -"being distracted by I/O waits. If your program alternates between " -"computation and network calls, CPU mode reveals which computational sections " -"are most expensive." -msgstr "" - -msgid "Comparing wall-clock and CPU profiles" -msgstr "" - -msgid "" -"Running both wall-clock and CPU mode profiles can reveal whether a " -"function's time is spent computing or waiting." -msgstr "" - -msgid "" -"If a function appears prominently in both profiles, it is a true " -"computational hotspot---actively using the CPU. Optimization should focus on " -"algorithmic improvements or more efficient code." -msgstr "" - -msgid "" -"If a function is high in wall-clock mode but low or absent in CPU mode, it " -"is I/O-bound or waiting. The function spends most of its time waiting for " -"network, disk, locks, or sleep. CPU optimization won't help here; consider " -"async I/O, connection pooling, or reducing wait time instead." -msgstr "" - -msgid "" -"import time\n" -"\n" -"def do_sleep():\n" -" time.sleep(2)\n" -"\n" -"def do_compute():\n" -" sum(i**2 for i in range(1000000))\n" -"\n" -"if __name__ == \"__main__\":\n" -" do_sleep()\n" -" do_compute()" -msgstr "" - -msgid "" -"python -m profiling.sampling run --mode=wall script.py # do_sleep ~98%, " -"do_compute ~1%\n" -"python -m profiling.sampling run --mode=cpu script.py # do_sleep absent, " -"do_compute dominates" -msgstr "" - -msgid "GIL mode" -msgstr "" - -msgid "" -"GIL mode (:option:`--mode`\\ ``=gil``) records samples only when the thread " -"holds Python's global interpreter lock::" -msgstr "" - -msgid "python -m profiling.sampling run --mode=gil script.py" -msgstr "" - -msgid "" -"The GIL is held only while executing Python bytecode. When Python calls into " -"C extensions, performs I/O operations, or executes native code, the GIL is " -"typically released. This means GIL mode effectively measures time spent " -"running Python code specifically, filtering out time in native libraries." -msgstr "" - -msgid "" -"In multi-threaded programs, GIL mode reveals which code is preventing other " -"threads from running Python bytecode. Since only one thread can hold the GIL " -"at a time, functions that appear frequently in GIL mode profiles are " -"monopolizing the interpreter." -msgstr "" - -msgid "" -"GIL mode helps answer questions like \"which functions are monopolizing the " -"GIL?\" and \"why are my other threads starving?\" It can also be useful in " -"single-threaded programs to distinguish Python execution time from time " -"spent in C extensions or I/O." -msgstr "" - -msgid "" -"import hashlib\n" -"\n" -"def hash_work():\n" -" # C extension - releases GIL during computation\n" -" for _ in range(200):\n" -" hashlib.sha256(b\"data\" * 250000).hexdigest()\n" -"\n" -"def python_work():\n" -" # Pure Python - holds GIL during computation\n" -" for _ in range(3):\n" -" sum(i**2 for i in range(1000000))\n" -"\n" -"if __name__ == \"__main__\":\n" -" hash_work()\n" -" python_work()" -msgstr "" - -msgid "" -"python -m profiling.sampling run --mode=cpu script.py # hash_work ~42%, " -"python_work ~38%\n" -"python -m profiling.sampling run --mode=gil script.py # hash_work ~5%, " -"python_work ~60%" -msgstr "" - -msgid "Exception mode" -msgstr "" - -msgid "" -"Exception mode (``--mode=exception``) records samples only when a thread has " -"an active exception::" -msgstr "" - -msgid "python -m profiling.sampling run --mode=exception script.py" -msgstr "" - -msgid "" -"Samples are recorded in two situations: when an exception is being " -"propagated up the call stack (after ``raise`` but before being caught), or " -"when code is executing inside an ``except`` block where exception " -"information is still present in the thread state." -msgstr "" - -msgid "The following example illustrates which code regions are captured:" -msgstr "" - -msgid "" -"def example():\n" -" try:\n" -" raise ValueError(\"error\") # Captured: exception being raised\n" -" except ValueError:\n" -" process_error() # Captured: inside except block\n" -" finally:\n" -" cleanup() # NOT captured: exception already " -"handled\n" -"\n" -"def example_propagating():\n" -" try:\n" -" try:\n" -" raise ValueError(\"error\")\n" -" finally:\n" -" cleanup() # Captured: exception propagating " -"through\n" -" except ValueError:\n" -" pass\n" -"\n" -"def example_no_exception():\n" -" try:\n" -" do_work()\n" -" finally:\n" -" cleanup() # NOT captured: no exception involved" -msgstr "" - -msgid "" -"Note that ``finally`` blocks are only captured when an exception is actively " -"propagating through them. Once an ``except`` block finishes executing, " -"Python clears the exception information before running any subsequent " -"``finally`` block. Similarly, ``finally`` blocks that run during normal " -"execution (when no exception was raised) are not captured because no " -"exception state is present." -msgstr "" - -msgid "" -"This mode is useful for understanding where your program spends time " -"handling errors. Exception handling can be a significant source of overhead " -"in code that uses exceptions for flow control (such as ``StopIteration`` in " -"iterators) or in applications that process many error conditions (such as " -"network servers handling connection failures)." -msgstr "" - -msgid "" -"Exception mode helps answer questions like \"how much time is spent handling " -"exceptions?\" and \"which exception handlers are the most expensive?\" It " -"can reveal hidden performance costs in code that catches and processes many " -"exceptions, even when those exceptions are handled gracefully. For example, " -"if a parsing library uses exceptions internally to signal format errors, " -"this mode will capture time spent in those handlers even if the calling code " -"never sees the exceptions." -msgstr "" - -msgid "Output formats" -msgstr "" - -msgid "" -"The profiler produces output in several formats, each suited to different " -"analysis workflows. The format is selected with a command-line flag, and " -"output goes to stdout, a file, or a directory depending on the format." -msgstr "" - -msgid "pstats format" -msgstr "" - -msgid "" -"The pstats format (:option:`--pstats`) produces a text table similar to what " -"deterministic profilers generate. This is the default output format::" -msgstr "" - -msgid "" -"python -m profiling.sampling run script.py\n" -"python -m profiling.sampling run --pstats script.py" -msgstr "" - -msgid "Tachyon pstats terminal output" -msgstr "" - -msgid "" -"The pstats format displays profiling results in a color-coded table showing " -"function hotspots, sample counts, and timing estimates." -msgstr "" - -msgid "Output appears on stdout by default::" -msgstr "" - -msgid "" -"Profile Stats (Mode: wall):\n" -" nsamples sample% tottime (ms) cumul% cumtime (ms) filename:" -"lineno(function)\n" -" 234/892 11.7% 234.00 44.6% 892.00 server." -"py:145(handle_request)\n" -" 156/156 7.8% 156.00 7.8% 156.00 :0(socket.recv)\n" -" 98/421 4.9% 98.00 21.1% 421.00 parser." -"py:67(parse_message)" -msgstr "" - -msgid "The columns show sampling counts and estimated times:" -msgstr "" - -msgid "" -"**nsamples**: Displayed as ``direct/cumulative`` (for example, ``10/50``). " -"Direct samples are when the function was at the top of the stack, actively " -"executing. Cumulative samples are when the function appeared anywhere on the " -"stack, including when it was waiting for functions it called. If a function " -"shows ``10/50``, it was directly executing in 10 samples and was on the call " -"stack in 50 samples total." -msgstr "" - -msgid "" -"**sample%** and **cumul%**: Percentages of total samples for direct and " -"cumulative counts respectively." -msgstr "" - -msgid "" -"**tottime** and **cumtime**: Estimated wall-clock time based on sample " -"counts and the profiling duration. Time units are selected automatically " -"based on the magnitude: seconds for large values, milliseconds for moderate " -"values, or microseconds for small values." -msgstr "" - -msgid "" -"The output includes a legend explaining each column and a summary of " -"interesting functions that highlights:" -msgstr "" - -msgid "" -"**Hot spots**: Functions with high direct/cumulative sample ratio (ratio " -"close to 1.0). These functions spend most of their time executing their own " -"code rather than waiting for callees. High ratios indicate where CPU time is " -"actually consumed." -msgstr "" - -msgid "" -"**Indirect calls**: Functions with large differences between cumulative and " -"direct samples. These are orchestration functions that delegate work to " -"other functions. They appear frequently on the stack but rarely at the top." -msgstr "" - -msgid "" -"**Call magnification**: Functions where cumulative samples far exceed direct " -"samples (high cumulative/direct multiplier). These are frequently-nested " -"functions that appear deep in many call chains." -msgstr "" - -msgid "" -"Use :option:`--no-summary` to suppress both the legend and summary sections." -msgstr "" - -msgid "To save pstats output to a binary file instead of stdout::" -msgstr "" - -msgid "python -m profiling.sampling run -o profile.pstats script.py" -msgstr "" - -msgid "" -"The pstats format supports several options for controlling the display. The :" -"option:`--sort` option determines the column used for ordering results::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --sort=tottime script.py\n" -"python -m profiling.sampling run --sort=cumtime script.py\n" -"python -m profiling.sampling run --sort=nsamples script.py" -msgstr "" - -msgid "The :option:`--limit` option restricts output to the top N entries::" -msgstr "" - -msgid "python -m profiling.sampling run --limit=30 script.py" -msgstr "" - -msgid "" -"The :option:`--no-summary` option suppresses the header summary that " -"precedes the statistics table." -msgstr "" - -msgid "Collapsed stacks format" -msgstr "" - -msgid "" -"Collapsed stacks format (:option:`--collapsed`) produces one line per unique " -"call stack, with a count of how many times that stack was sampled::" -msgstr "" - -msgid "python -m profiling.sampling run --collapsed script.py" -msgstr "" - -msgid "The output looks like:" -msgstr "" - -msgid "" -"main;process_data;parse_json;decode_utf8 42\n" -"main;process_data;parse_json 156\n" -"main;handle_request;send_response 89" -msgstr "" - -msgid "" -"Each line contains semicolon-separated function names representing the call " -"stack from bottom to top, followed by a space and the sample count. This " -"format is designed for compatibility with external flame graph tools, " -"particularly Brendan Gregg's ``flamegraph.pl`` script." -msgstr "" - -msgid "To generate a flame graph from collapsed stacks::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --collapsed script.py > stacks.txt\n" -"flamegraph.pl stacks.txt > profile.svg" -msgstr "" - -msgid "" -"The resulting SVG can be viewed in any web browser and provides an " -"interactive visualization where you can click to zoom into specific call " -"paths." -msgstr "" - -msgid "Flame graph format" -msgstr "" - -msgid "" -"Flame graph format (:option:`--flamegraph`) produces a self-contained HTML " -"file with an interactive flame graph visualization::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --flamegraph script.py\n" -"python -m profiling.sampling run --flamegraph -o profile.html script.py" -msgstr "" - -msgid "Tachyon interactive flame graph" -msgstr "" - -msgid "" -"The flame graph visualization shows call stacks as nested rectangles, with " -"width proportional to time spent. The sidebar displays runtime statistics, " -"GIL metrics, and hotspot functions." -msgstr "" - -msgid "" -"`Try the interactive example <../_static/tachyon-example-flamegraph.html>`__!" -msgstr "" - -msgid "" -"If no output file is specified, the profiler generates a filename based on " -"the process ID (for example, ``flamegraph.12345.html``)." -msgstr "" - -msgid "" -"The generated HTML file requires no external dependencies and can be opened " -"directly in a web browser. The visualization displays call stacks as nested " -"rectangles, with width proportional to time spent. Hovering over a rectangle " -"shows details about that function including source code context, and " -"clicking zooms into that portion of the call tree." -msgstr "" - -msgid "The flame graph interface includes:" -msgstr "" - -msgid "" -"A sidebar showing profile summary, thread statistics, sampling efficiency " -"metrics (see :ref:`sampling-efficiency`), and top hotspot functions" -msgstr "" - -msgid "" -"Search functionality supporting both function name matching and ``file." -"py:42`` line patterns" -msgstr "" - -msgid "Per-thread filtering via dropdown" -msgstr "" - -msgid "Dark/light theme toggle (preference saved across sessions)" -msgstr "" - -msgid "SVG export for saving the current view" -msgstr "" - -msgid "The thread statistics section shows runtime behavior metrics:" -msgstr "" - -msgid "" -"**GIL Held**: percentage of samples where a thread held the global " -"interpreter lock (actively running Python code)" -msgstr "" - -msgid "**GIL Released**: percentage of samples where no thread held the GIL" -msgstr "" - -msgid "" -"**Waiting GIL**: percentage of samples where a thread was waiting to acquire " -"the GIL" -msgstr "" - -msgid "**GC**: percentage of samples during garbage collection" -msgstr "" - -msgid "" -"These statistics help identify GIL contention and understand how time is " -"distributed between Python execution, native code, and waiting." -msgstr "" - -msgid "" -"Flame graphs are particularly effective for identifying deep call stacks and " -"understanding the hierarchical structure of time consumption. Wide " -"rectangles at the top indicate functions that consume significant time " -"either directly or through their callees." -msgstr "" - -msgid "Differential flame graphs" -msgstr "" - -msgid "" -"Differential flame graphs compare two profiling runs to highlight where " -"performance changed. This helps identify regressions introduced by code " -"changes and validate that optimizations achieved their intended effect::" -msgstr "" - -msgid "" -"# Capture baseline profile\n" -"python -m profiling.sampling run --binary -o baseline.bin script.py\n" -"\n" -"# After modifying code, generate differential flamegraph\n" -"python -m profiling.sampling run --diff-flamegraph baseline.bin -o diff.html " -"script.py" -msgstr "" - -msgid "" -"The visualization draws the current profile with frame widths showing " -"current time consumption, then applies color to indicate how each function " -"changed relative to the baseline." -msgstr "" - -msgid "**Color coding**:" -msgstr "" - -msgid "" -"**Red**: Functions consuming more time (regressions). Lighter shades " -"indicate modest increases, while darker shades show severe regressions." -msgstr "" - -msgid "" -"**Blue**: Functions consuming less time (improvements). Lighter shades for " -"modest reductions, darker shades for significant speedups." -msgstr "" - -msgid "**Gray**: Minimal or no change." -msgstr "" - -msgid "**Purple**: New functions not present in the baseline." -msgstr "" - -msgid "" -"Frame colors indicate changes in **direct time** (time when the function was " -"at the top of the stack, actively executing), not cumulative time including " -"callees. Hovering over a frame shows comparison details including baseline " -"time, current time, and the percentage change." -msgstr "" - -msgid "" -"Some call paths may disappear entirely between profiles. These are called " -"**elided stacks** and occur when optimizations eliminate code paths or " -"certain branches stop executing. If elided stacks are present, an elided " -"toggle appears allowing you to switch between the main differential view and " -"an elided-only view that shows just the removed paths (colored purple)." -msgstr "" - -msgid "Gecko format" -msgstr "" - -msgid "" -"Gecko format (:option:`--gecko`) produces JSON output compatible with the " -"Firefox Profiler::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --gecko script.py\n" -"python -m profiling.sampling run --gecko -o profile.json script.py" -msgstr "" - -msgid "" -"The `Firefox Profiler `__ is a sophisticated " -"web-based tool originally built for profiling Firefox itself. It provides " -"features beyond basic flame graphs, including a timeline view, call tree " -"exploration, and marker visualization. See the `Firefox Profiler " -"documentation `__ for detailed usage " -"instructions." -msgstr "" - -msgid "" -"To use the output, open the Firefox Profiler in your browser and load the " -"JSON file. The profiler runs entirely client-side, so your profiling data " -"never leaves your machine." -msgstr "" - -msgid "" -"Gecko format automatically collects additional metadata about GIL state and " -"CPU activity, enabling analysis features specific to Python's threading " -"model. The profiler emits interval markers that appear as colored bands in " -"the Firefox Profiler timeline:" -msgstr "" - -msgid "" -"**GIL markers**: show when threads hold or release the global interpreter " -"lock" -msgstr "" - -msgid "**CPU markers**: show when threads are executing on CPU versus idle" -msgstr "" - -msgid "" -"**Code type markers**: distinguish Python code from native (C extension) code" -msgstr "" - -msgid "**GC markers**: indicate garbage collection activity" -msgstr "" - -msgid "" -"For this reason, the :option:`--mode` option is not available with Gecko " -"format; all relevant data is captured automatically." -msgstr "" - -msgid "Firefox Profiler Call Tree view" -msgstr "" - -msgid "" -"The Call Tree view shows the complete call hierarchy with sample counts and " -"percentages. The sidebar displays detailed statistics for the selected " -"function including running time and sample distribution." -msgstr "" - -msgid "Firefox Profiler Flame Graph view" -msgstr "" - -msgid "" -"The Flame Graph visualization shows call stacks as nested rectangles. " -"Functions names are visible in the call hierarchy." -msgstr "" - -msgid "Firefox Profiler Marker Chart with opcodes" -msgstr "" - -msgid "" -"The Marker Chart displays interval markers including CPU state, GIL status, " -"and opcodes. With ``--opcodes`` enabled, bytecode instructions like " -"``BINARY_OP_ADD_FLOAT``, ``CALL_PY_EXACT_ARGS``, and ``CALL_LIST_APPEND`` " -"appear as markers showing execution over time." -msgstr "" - -msgid "Heatmap format" -msgstr "" - -msgid "" -"Heatmap format (:option:`--heatmap`) generates an interactive HTML " -"visualization showing sample counts at the source line level::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --heatmap script.py\n" -"python -m profiling.sampling run --heatmap -o my_heatmap script.py" -msgstr "" - -msgid "Tachyon heatmap visualization" -msgstr "" - -msgid "" -"The heatmap overlays sample counts directly on your source code. Lines are " -"color-coded from cool (few samples) to hot (many samples). Navigation " -"buttons (▲▼) let you jump between callers and callees." -msgstr "" - -msgid "" -"Unlike other formats that produce a single file, heatmap output creates a " -"directory containing HTML files for each profiled source file. If no output " -"path is specified, the directory is named ``heatmap_PID``." -msgstr "" - -msgid "" -"The heatmap visualization displays your source code with a color gradient " -"indicating how many samples were collected at each line. Hot lines (many " -"samples) appear in warm colors, while cold lines (few or no samples) appear " -"in cool colors. This view helps pinpoint exactly which lines of code are " -"responsible for time consumption." -msgstr "" - -msgid "The heatmap interface provides several interactive features:" -msgstr "" - -msgid "" -"**Coloring modes**: toggle between \"Self Time\" (direct execution) and " -"\"Total Time\" (cumulative, including time in called functions)" -msgstr "" - -msgid "**Cold code filtering**: show all lines or only lines with samples" -msgstr "" - -msgid "" -"**Call graph navigation**: each line shows navigation buttons (▲ for " -"callers, ▼ for callees) that let you trace execution paths through your " -"code. When multiple functions called or were called from a line, a menu " -"appears showing all options with their sample counts." -msgstr "" - -msgid "" -"**Scroll minimap**: a vertical overview showing the heat distribution across " -"the entire file" -msgstr "" - -msgid "" -"**Hierarchical index**: files organized by type (stdlib, site-packages, " -"project) with aggregate sample counts per folder" -msgstr "" - -msgid "**Dark/light theme**: toggle with preference saved across sessions" -msgstr "" - -msgid "**Line linking**: click line numbers to create shareable URLs" -msgstr "" - -msgid "" -"When opcode-level profiling is enabled with :option:`--opcodes`, each hot " -"line can be expanded to show which bytecode instructions consumed time:" -msgstr "" - -msgid "Heatmap with expanded bytecode panel" -msgstr "" - -msgid "" -"Expanding a hot line reveals the bytecode instructions executed, including " -"specialized variants. The panel shows sample counts per instruction and the " -"overall specialization percentage for the line." -msgstr "" - -msgid "" -"`Try the interactive example <../_static/tachyon-example-heatmap.html>`__!" -msgstr "" - -msgid "" -"Heatmaps are especially useful when you know which file contains a " -"performance issue but need to identify the specific lines. Many developers " -"prefer this format because it maps directly to their source code, making it " -"easy to read and navigate. For smaller scripts and focused analysis, " -"heatmaps provide an intuitive view that shows exactly where time is spent " -"without requiring interpretation of hierarchical visualizations." -msgstr "" - -msgid "Binary format" -msgstr "" - -msgid "" -"Binary format (:option:`--binary`) produces a compact binary file for " -"efficient storage of profiling data::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --binary -o profile.bin script.py\n" -"python -m profiling.sampling attach --binary -o profile.bin 12345" -msgstr "" - -msgid "The :option:`--compression` option controls data compression:" -msgstr "" - -msgid "" -"``auto`` (default): Use zstd compression if available, otherwise no " -"compression" -msgstr "" - -msgid "" -"``zstd``: Force zstd compression (requires :mod:`compression.zstd` support)" -msgstr "" - -msgid "``none``: Disable compression" -msgstr "" - -msgid "" -"python -m profiling.sampling run --binary --compression=zstd -o profile.bin " -"script.py" -msgstr "" - -msgid "" -"To analyze binary profiles, use the :ref:`replay-command` to convert them to " -"other formats like flame graphs or pstats output." -msgstr "" - -msgid "Record and replay workflow" -msgstr "" - -msgid "" -"The binary format combined with the replay command enables a record-and-" -"replay workflow that separates data capture from analysis. Rather than " -"generating visualizations during profiling, you capture raw data to a " -"compact binary file and convert it to different formats later." -msgstr "" - -msgid "This approach has three main benefits:" -msgstr "" - -msgid "" -"Sampling runs faster because the work of building data structures for " -"visualization is deferred until replay." -msgstr "" - -msgid "" -"A single binary capture can be converted to multiple output formats without " -"re-profiling: pstats for a quick overview, flame graph for visual " -"exploration, heatmap for line-level detail." -msgstr "" - -msgid "" -"Binary files are compact and easy to share with colleagues who can convert " -"them to their preferred format." -msgstr "" - -msgid "A typical workflow::" -msgstr "" - -msgid "" -"# Capture profile in production or during tests\n" -"python -m profiling.sampling attach --binary -o profile.bin 12345\n" -"\n" -"# Later, analyze with different formats\n" -"python -m profiling.sampling replay profile.bin\n" -"python -m profiling.sampling replay --flamegraph -o profile.html profile." -"bin\n" -"python -m profiling.sampling replay --heatmap -o heatmap profile.bin" -msgstr "" - -msgid "Live mode" -msgstr "" - -msgid "" -"Live mode (:option:`--live`) provides a terminal-based real-time view of " -"profiling data, similar to the ``top`` command for system processes::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --live script.py\n" -"python -m profiling.sampling attach --live 12345" -msgstr "" - -msgid "Tachyon live mode showing all threads" -msgstr "" - -msgid "" -"Live mode displays real-time profiling statistics, showing combined data " -"from multiple threads in a multi-threaded application." -msgstr "" - -msgid "" -"The display updates continuously as new samples arrive, showing the current " -"hottest functions. This mode requires the :mod:`curses` module, which is " -"available on Unix-like systems but not on Windows. The terminal must be at " -"least 60 columns wide and 12 lines tall; larger terminals display more " -"columns." -msgstr "" - -msgid "" -"The header displays the top 3 hottest functions, sampling efficiency " -"metrics, and thread status statistics (GIL held percentage, CPU usage, GC " -"time). The main table shows function statistics with the currently sorted " -"column indicated by an arrow (▼)." -msgstr "" - -msgid "" -"When :option:`--opcodes` is enabled, an additional opcode panel appears " -"below the main table, showing instruction-level statistics for the currently " -"selected function. This panel displays which bytecode instructions are " -"executing most frequently, including specialized variants and their base " -"opcodes." -msgstr "" - -msgid "Tachyon live mode with opcode panel" -msgstr "" - -msgid "" -"Live mode with ``--opcodes`` enabled shows an opcode panel with a bytecode " -"instruction breakdown for the selected function." -msgstr "" - -msgid "Keyboard commands" -msgstr "" - -msgid "Within live mode, keyboard commands control the display:" -msgstr "" - -msgid ":kbd:`q`" -msgstr "" - -msgid "Quit the profiler and return to the shell." -msgstr "" - -msgid ":kbd:`s` / :kbd:`S`" -msgstr "" - -msgid "" -"Cycle through sort orders forward/backward (sample count, percentage, total " -"time, cumulative percentage, cumulative time)." -msgstr "" - -msgid ":kbd:`p`" -msgstr "" - -msgid "" -"Pause or resume display updates. Sampling continues in the background while " -"the display is paused, so you can freeze the view to examine results without " -"stopping data collection." -msgstr "" - -msgid ":kbd:`r`" -msgstr "" - -msgid "" -"Reset all statistics and start fresh. This is disabled after profiling " -"finishes to prevent accidental data loss." -msgstr "" - -msgid ":kbd:`/`" -msgstr "" - -msgid "" -"Enter filter mode to search for functions by name. The filter uses case-" -"insensitive substring matching against the filename and function name. Type " -"a pattern and press Enter to apply, or Escape to cancel. Glob patterns and " -"regular expressions are not supported." -msgstr "" - -msgid ":kbd:`c`" -msgstr "" - -msgid "Clear the current filter and show all functions again." -msgstr "" - -msgid ":kbd:`t`" -msgstr "" - -msgid "" -"Toggle between viewing all threads combined or per-thread statistics. In per-" -"thread mode, a thread counter (for example, ``1/4``) appears showing your " -"position among the available threads." -msgstr "" - -msgid ":kbd:`←` :kbd:`→` or :kbd:`↑` :kbd:`↓`" -msgstr "" - -msgid "" -"In per-thread view, navigate between threads. Navigation wraps around from " -"the last thread to the first and vice versa." -msgstr "" - -msgid ":kbd:`+` / :kbd:`-`" -msgstr "" - -msgid "" -"Increase or decrease the display refresh rate. The range is 0.05 seconds (20 " -"Hz, very responsive) to 1.0 second (1 Hz, lower overhead). Faster refresh " -"rates use more CPU. The default is 0.1 seconds (10 Hz)." -msgstr "" - -msgid ":kbd:`x`" -msgstr "" - -msgid "" -"Toggle trend indicators that show whether functions are becoming hotter or " -"cooler over time. When enabled, increasing metrics appear in green and " -"decreasing metrics appear in red, comparing each update to the previous one." -msgstr "" - -msgid ":kbd:`h` or :kbd:`?`" -msgstr "" - -msgid "Show the help screen with all available commands." -msgstr "" - -msgid ":kbd:`j` / :kbd:`k` (or :kbd:`Up` / :kbd:`Down`)" -msgstr "" - -msgid "" -"Navigate through opcode entries in the opcode panel (when ``--opcodes`` is " -"enabled). These keys scroll through the instruction-level statistics for the " -"currently selected function." -msgstr "" - -msgid "" -"When profiling finishes (duration expires or target process exits), the " -"display shows a \"PROFILING COMPLETE\" banner and freezes the final results. " -"You can still navigate, sort, and filter the results before pressing :kbd:" -"`q` to exit." -msgstr "" - -msgid "" -"Live mode is incompatible with output format options (:option:`--" -"collapsed`, :option:`--flamegraph`, and so on) because it uses an " -"interactive terminal interface rather than producing file output." -msgstr "" - -msgid "Async-aware profiling" -msgstr "" - -msgid "" -"For programs using :mod:`asyncio`, the profiler offers async-aware mode (:" -"option:`--async-aware`) that reconstructs call stacks based on the task " -"structure rather than the raw Python frames::" -msgstr "" - -msgid "python -m profiling.sampling run --async-aware async_script.py" -msgstr "" - -msgid "" -"Standard profiling of async code can be confusing because the physical call " -"stack often shows event loop internals rather than the logical flow of your " -"coroutines. Async-aware mode addresses this by tracking which task is " -"running and presenting stacks that reflect the ``await`` chain." -msgstr "" - -msgid "" -"import asyncio\n" -"\n" -"async def fetch(url):\n" -" await asyncio.sleep(0.1)\n" -" return url\n" -"\n" -"async def main():\n" -" for _ in range(50):\n" -" await asyncio.gather(fetch(\"a\"), fetch(\"b\"), fetch(\"c\"))\n" -"\n" -"if __name__ == \"__main__\":\n" -" asyncio.run(main())" -msgstr "" - -msgid "" -"python -m profiling.sampling run --async-aware --flamegraph -o out.html " -"script.py" -msgstr "" - -msgid "" -"Async-aware profiling requires the target process to have the :mod:`asyncio` " -"module loaded. If you profile a script before it imports asyncio, async-" -"aware mode will not be able to capture task information." -msgstr "" - -msgid "Async modes" -msgstr "" - -msgid "" -"The :option:`--async-mode` option controls which tasks appear in the " -"profile::" -msgstr "" - -msgid "" -"python -m profiling.sampling run --async-aware --async-mode=running " -"async_script.py\n" -"python -m profiling.sampling run --async-aware --async-mode=all async_script." -"py" -msgstr "" - -msgid "" -"With :option:`--async-mode`\\ ``=running`` (the default), only the task " -"currently executing on the CPU is profiled. This shows where your program is " -"actively spending time and is the typical choice for performance analysis." -msgstr "" - -msgid "" -"With :option:`--async-mode`\\ ``=all``, tasks that are suspended (awaiting I/" -"O, locks, or other tasks) are also included. This mode is useful for " -"understanding what your program is waiting on, but produces larger profiles " -"since every suspended task appears in each sample." -msgstr "" - -msgid "Task markers and stack reconstruction" -msgstr "" - -msgid "" -"In async-aware profiles, you will see ```` frames that mark boundaries " -"between asyncio tasks. These are synthetic frames inserted by the profiler " -"to show the task structure. The task name appears as the function name in " -"these frames." -msgstr "" - -msgid "" -"When a task awaits another task, the profiler reconstructs the logical call " -"chain by following the ``await`` relationships. Only \"leaf\" tasks (tasks " -"that no other task is currently awaiting) generate their own stack entries. " -"Tasks being awaited by other tasks appear as part of their awaiter's stack " -"instead." -msgstr "" - -msgid "" -"If a task has multiple awaiters (a diamond pattern in the task graph), the " -"profiler deterministically selects one parent and annotates the task marker " -"with the number of parents, for example ``MyTask (2 parents)``. This " -"indicates that alternate execution paths exist but are not shown in this " -"particular stack." -msgstr "" - -msgid "Option restrictions" -msgstr "" - -msgid "" -"Async-aware mode uses a different stack reconstruction mechanism and is " -"incompatible with: :option:`--native`, :option:`--no-gc`, :option:`--all-" -"threads`, and :option:`--mode`\\ ``=cpu`` or :option:`--mode`\\ ``=gil``." -msgstr "" - -msgid "Command-line interface" -msgstr "" - -msgid "The complete command-line interface for reference." -msgstr "" - -msgid "Global options" -msgstr "" - -msgid "Run and profile a Python script or module." -msgstr "" - -msgid "Attach to and profile a running process by PID." -msgstr "" - -msgid "Print a single one-shot snapshot of a running process's Python stack." -msgstr "" - -msgid "Convert a binary profile file to another output format." -msgstr "" - -msgid "Dump options" -msgstr "" - -msgid "The following options apply to the ``dump`` subcommand:" -msgstr "" - -msgid "Dump all threads in the target process instead of just the main thread." -msgstr "" - -msgid "Include ```` frames for non-Python code." -msgstr "" - -msgid "Exclude ```` frames for active garbage collection." -msgstr "" - -msgid "Show bytecode opcode names when available." -msgstr "" - -msgid "" -"Reconstruct the stack across ``await`` boundaries for asyncio applications." -msgstr "" - -msgid "" -"Async stack mode: ``running`` (only the running task) or ``all`` (all tasks " -"including waiting). Defaults to ``all`` for ``dump``. Requires :option:`--" -"async-aware`." -msgstr "" - -msgid "Pause all threads in the target process while reading the stack." -msgstr "" - -msgid "Sampling options" -msgstr "" - -msgid "" -"Sampling rate (for example, ``10000``, ``10khz``, ``10k``). Default: " -"``1khz``." -msgstr "" - -msgid "Profiling duration in seconds. Default: run to completion." -msgstr "" - -msgid "Sample all threads, not just the main thread." -msgstr "" - -msgid "Display sampling statistics during profiling." -msgstr "" - -msgid "Exclude ```` frames for garbage collection." -msgstr "" - -msgid "Enable async-aware profiling for asyncio programs." -msgstr "" - -msgid "" -"Gather bytecode opcode information for instruction-level profiling. Shows " -"which bytecode instructions are executing, including specializations. " -"Compatible with ``--live``, ``--flamegraph``, ``--heatmap``, and ``--gecko`` " -"formats only." -msgstr "" - -msgid "" -"Also profile subprocesses. Each subprocess gets its own profiler instance " -"and output file. Incompatible with ``--live``." -msgstr "" - -msgid "" -"Pause the target process during each sample. This ensures consistent stack " -"traces at the cost of slowing down the target. Use with longer intervals " -"(1000 µs or higher) to minimize impact. See :ref:`blocking-mode` for details." -msgstr "" - -msgid "Mode options" -msgstr "" - -msgid "" -"Sampling mode: ``wall`` (default), ``cpu``, ``gil``, or ``exception``. The " -"``cpu``, ``gil``, and ``exception`` modes are incompatible with ``--async-" -"aware``." -msgstr "" - -msgid "" -"Async profiling mode: ``running`` (default) or ``all``. Requires ``--async-" -"aware``." -msgstr "" - -msgid "Output options" -msgstr "" - -msgid "" -"Generate pstats statistics. This is the default. When written to stdout, the " -"output is a text table; with :option:`-o`, it is a binary pstats file." -msgstr "" - -msgid "Generate collapsed stack format for external flame graph tools." -msgstr "" - -msgid "Generate self-contained HTML flame graph." -msgstr "" - -msgid "" -"Generate differential flamegraph comparing to a baseline binary profile." -msgstr "" - -msgid "Generate Gecko JSON format for Firefox Profiler." -msgstr "" - -msgid "Generate HTML heatmap with line-level sample counts." -msgstr "" - -msgid "" -"Generate high-performance binary format for later conversion with the " -"``replay`` command." -msgstr "" - -msgid "" -"Compression for binary format: ``auto`` (use zstd if available, default), " -"``zstd``, or ``none``." -msgstr "" - -msgid "" -"Output file or directory path. Default behavior varies by format: :option:`--" -"pstats` prints a text table to stdout, while ``-o`` writes a binary pstats " -"file. Other formats generate a file named ``_.`` (for " -"example, ``flamegraph_12345.html``). :option:`--heatmap` creates a directory " -"named ``heatmap_``." -msgstr "" - -msgid "" -"Automatically open HTML output (:option:`--flamegraph` and :option:`--" -"heatmap`) in your default web browser after generation. When profiling with :" -"option:`--subprocesses`, only the main process opens the browser; subprocess " -"outputs are never auto-opened." -msgstr "" - -msgid "pstats display options" -msgstr "" - -msgid "These options apply only to pstats format output." -msgstr "" - -msgid "" -"Sort order: ``nsamples``, ``tottime``, ``cumtime``, ``sample-pct``, ``cumul-" -"pct``, ``nsamples-cumul``, or ``name``. Default: ``nsamples``." -msgstr "" - -msgid "Maximum number of entries to display. Default: 15." -msgstr "" - -msgid "" -"Omit the Legend and Summary of Interesting Functions sections from output." -msgstr "" - -msgid "Run command options" -msgstr "" - -msgid "Treat the target as a module name rather than a script path." -msgstr "" - -msgid "Start interactive terminal interface instead of batch profiling." -msgstr "" - -msgid ":mod:`profiling`" -msgstr "" - -msgid "Overview of Python profiling tools and guidance on choosing a profiler." -msgstr "" - -msgid ":mod:`profiling.tracing`" -msgstr "" - -msgid "Deterministic tracing profiler for exact call counts and timing." -msgstr "" - -msgid ":mod:`pstats`" -msgstr "" - -msgid "Statistics analysis for profile data." -msgstr "" - -msgid "`Firefox Profiler `__" -msgstr "" - -msgid "" -"Web-based profiler that accepts Gecko format output. See the `documentation " -"`__ for usage details." -msgstr "" - -msgid "`FlameGraph `__" -msgstr "" - -msgid "Tools for generating flame graphs from collapsed stack format." -msgstr "" diff --git a/library/profiling.tracing.po b/library/profiling.tracing.po deleted file mode 100644 index 0bc0973..0000000 --- a/library/profiling.tracing.po +++ /dev/null @@ -1,406 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!profiling.tracing` --- Deterministic profiler" -msgstr "" - -msgid "**Source code:** :source:`Lib/profiling/tracing/`" -msgstr "" - -msgid "" -"The :mod:`!profiling.tracing` module provides deterministic profiling of " -"Python programs. It monitors every function call, function return, and " -"exception event, recording precise timing for each. This approach provides " -"exact call counts and complete visibility into program execution, making it " -"ideal for development and testing scenarios." -msgstr "" - -msgid "" -"This module is also available as ``cProfile`` for backward compatibility. " -"The ``cProfile`` name will continue to work in all future Python versions. " -"Use whichever import style suits your codebase::" -msgstr "" - -msgid "" -"# Preferred (new style)\n" -"import profiling.tracing\n" -"profiling.tracing.run('my_function()')\n" -"\n" -"# Also works (backward compatible)\n" -"import cProfile\n" -"cProfile.run('my_function()')" -msgstr "" - -msgid "What is deterministic profiling?" -msgstr "" - -msgid "" -":dfn:`Deterministic profiling` captures every function call, function " -"return, and exception event during program execution. The profiler measures " -"the precise time intervals between these events, providing exact statistics " -"about how the program behaves." -msgstr "" - -msgid "" -"In contrast to :ref:`statistical profiling `, which " -"samples the call stack periodically to estimate where time is spent, " -"deterministic profiling records every event. This means you get exact call " -"counts rather than statistical approximations. The trade-off is that " -"instrumenting every event introduces overhead that can slow down program " -"execution." -msgstr "" - -msgid "" -"Python's interpreted nature makes deterministic profiling practical. The " -"interpreter already dispatches events for function calls and returns, so the " -"profiler can hook into this mechanism without requiring code modification. " -"The overhead tends to be moderate relative to the inherent cost of " -"interpretation, making deterministic profiling suitable for most development " -"workflows." -msgstr "" - -msgid "Deterministic profiling helps answer questions like:" -msgstr "" - -msgid "How many times was this function called?" -msgstr "" - -msgid "What is the complete call graph of my program?" -msgstr "" - -msgid "Which functions are called by a particular function?" -msgstr "" - -msgid "Are there unexpected function calls happening?" -msgstr "" - -msgid "" -"Call count statistics can identify bugs (surprising counts) and inline " -"expansion opportunities (high call counts). Internal time statistics reveal " -"\"hot loops\" that warrant optimization. Cumulative time statistics help " -"identify algorithmic inefficiencies. The handling of cumulative times in " -"this profiler allows direct comparison of recursive and iterative " -"implementations." -msgstr "" - -msgid "Command-line interface" -msgstr "" - -msgid "" -"The :mod:`!profiling.tracing` module can be invoked as a script to profile " -"another script or module:" -msgstr "" - -msgid "" -"python -m profiling.tracing [-o output_file] [-s sort_order] (-m module | " -"script.py)" -msgstr "" - -msgid "" -"This runs the specified script or module under the profiler and prints the " -"results to standard output (or saves them to a file)." -msgstr "" - -msgid "" -"Write the profile results to a file instead of standard output. The output " -"file can be read by the :mod:`pstats` module for later analysis." -msgstr "" - -msgid "" -"Sort the output by the specified key. This accepts any of the sort keys " -"recognized by :meth:`pstats.Stats.sort_stats`, such as ``cumulative``, " -"``time``, ``calls``, or ``name``. This option only applies when :option:`-o " -"` is not specified." -msgstr "" - -msgid "" -"Profile a module instead of a script. The module is located using the " -"standard import mechanism." -msgstr "" - -msgid "The ``-m`` option for ``cProfile``." -msgstr "" - -msgid "The ``-m`` option for :mod:`profile`." -msgstr "" - -msgid "Programmatic usage examples" -msgstr "" - -msgid "" -"For more control over profiling, use the module's functions and classes " -"directly." -msgstr "" - -msgid "Basic profiling" -msgstr "" - -msgid "The simplest approach uses the :func:`!run` function::" -msgstr "" - -msgid "" -"import profiling.tracing\n" -"profiling.tracing.run('my_function()')" -msgstr "" - -msgid "" -"This profiles the given code string and prints a summary to standard output. " -"To save results for later analysis::" -msgstr "" - -msgid "profiling.tracing.run('my_function()', 'output.prof')" -msgstr "" - -msgid "Using the :class:`!Profile` class" -msgstr "" - -msgid "The :class:`!Profile` class provides fine-grained control::" -msgstr "" - -msgid "" -"import profiling.tracing\n" -"import pstats\n" -"from io import StringIO\n" -"\n" -"pr = profiling.tracing.Profile()\n" -"pr.enable()\n" -"# ... code to profile ...\n" -"pr.disable()\n" -"\n" -"# Print results\n" -"s = StringIO()\n" -"ps = pstats.Stats(pr, stream=s).sort_stats(pstats.SortKey.CUMULATIVE)\n" -"ps.print_stats()\n" -"print(s.getvalue())" -msgstr "" - -msgid "The :class:`!Profile` class also works as a context manager::" -msgstr "" - -msgid "" -"import profiling.tracing\n" -"\n" -"with profiling.tracing.Profile() as pr:\n" -" # ... code to profile ...\n" -"\n" -"pr.print_stats()" -msgstr "" - -msgid "Module reference" -msgstr "" - -msgid "Profile execution of a command and print or save the results." -msgstr "" - -msgid "" -"This function executes the *command* string using :func:`exec` in the " -"``__main__`` module's namespace::" -msgstr "" - -msgid "exec(command, __main__.__dict__, __main__.__dict__)" -msgstr "" - -msgid "" -"If *filename* is not provided, the function creates a :class:`pstats.Stats` " -"instance and prints a summary to standard output. If *filename* is provided, " -"the raw profile data is saved to that file for later analysis with :mod:" -"`pstats`." -msgstr "" - -msgid "" -"The *sort* argument specifies the sort order for printed output, accepting " -"any value recognized by :meth:`pstats.Stats.sort_stats`." -msgstr "" - -msgid "Profile execution of a command with explicit namespaces." -msgstr "" - -msgid "" -"Like :func:`run`, but executes the command with the specified *globals* and " -"*locals* mappings instead of using the ``__main__`` module's namespace::" -msgstr "" - -msgid "exec(command, globals, locals)" -msgstr "" - -msgid "A profiler object that collects execution statistics." -msgstr "" - -msgid "" -"The optional *timer* argument specifies a custom timing function. If not " -"provided, the profiler uses a platform-appropriate default timer. When " -"supplying a custom timer, it must return a single number representing the " -"current time. If the timer returns integers, use *timeunit* to specify the " -"duration of one time unit (for example, ``0.001`` for milliseconds)." -msgstr "" - -msgid "" -"The *subcalls* argument controls whether the profiler tracks call " -"relationships between functions. The *builtins* argument controls whether " -"built-in functions are profiled." -msgstr "" - -msgid "Added context manager support." -msgstr "" - -msgid "Start collecting profiling data." -msgstr "" - -msgid "Stop collecting profiling data." -msgstr "" - -msgid "" -"Stop collecting data and record the results internally as the current " -"profile." -msgstr "" - -msgid "" -"Create a :class:`pstats.Stats` object from the current profile and print the " -"results to standard output." -msgstr "" - -msgid "" -"The *sort* argument specifies the sorting order. It accepts a single key or " -"a tuple of keys for multi-level sorting, using the same values as :meth:" -"`pstats.Stats.sort_stats`." -msgstr "" - -msgid "Support for a tuple of sort keys." -msgstr "" - -msgid "" -"Write the current profile data to *filename*. The file can be read by :class:" -"`pstats.Stats` for later analysis." -msgstr "" - -msgid "Profile the command string via :func:`exec`." -msgstr "" - -msgid "" -"Profile the command string via :func:`exec` with the specified namespaces." -msgstr "" - -msgid "Profile a function call. Returns whatever *func* returns::" -msgstr "" - -msgid "result = pr.runcall(my_function, arg1, arg2, keyword=value)" -msgstr "" - -msgid "" -"Profiling requires that the profiled code returns normally. If the " -"interpreter terminates (for example, via :func:`sys.exit`) during profiling, " -"no results will be available." -msgstr "" - -msgid "Using a custom timer" -msgstr "" - -msgid "" -"The :class:`Profile` class accepts a custom timing function, allowing you to " -"measure different aspects of execution such as wall-clock time or CPU time. " -"Pass the timing function to the constructor::" -msgstr "" - -msgid "pr = profiling.tracing.Profile(my_timer_function)" -msgstr "" - -msgid "" -"The timer function must return a single number representing the current " -"time. If it returns integers, also specify *timeunit* to indicate the " -"duration of one unit::" -msgstr "" - -msgid "" -"# Timer returns time in milliseconds\n" -"pr = profiling.tracing.Profile(my_ms_timer, 0.001)" -msgstr "" - -msgid "" -"For best performance, the timer function should be as fast as possible. The " -"profiler calls it frequently, so timer overhead directly affects profiling " -"overhead." -msgstr "" - -msgid "" -"The :mod:`time` module provides several functions suitable for use as custom " -"timers:" -msgstr "" - -msgid ":func:`time.perf_counter` for high-resolution wall-clock time" -msgstr "" - -msgid ":func:`time.process_time` for CPU time (excluding sleep)" -msgstr "" - -msgid ":func:`time.monotonic` for monotonic clock time" -msgstr "" - -msgid "Limitations" -msgstr "" - -msgid "" -"Deterministic profiling has inherent limitations related to timing accuracy." -msgstr "" - -msgid "" -"The underlying timer typically has a resolution of about one millisecond. " -"Measurements cannot be more accurate than this resolution. With enough " -"measurements, timing errors tend to average out, but individual measurements " -"may be imprecise." -msgstr "" - -msgid "" -"There is also latency between when an event occurs and when the profiler " -"captures the timestamp. Similarly, there is latency after reading the " -"timestamp before user code resumes. Functions called frequently accumulate " -"this latency, which can make them appear slower than they actually are. This " -"error is typically less than one clock tick per call but can become " -"significant for functions called many times." -msgstr "" - -msgid "" -"The :mod:`!profiling.tracing` module (and its ``cProfile`` alias) is " -"implemented as a C extension with low overhead, so these timing issues are " -"less pronounced than with the deprecated pure Python :mod:`profile` module." -msgstr "" - -msgid ":mod:`profiling`" -msgstr "" - -msgid "Overview of Python profiling tools and guidance on choosing a profiler." -msgstr "" - -msgid ":mod:`profiling.sampling`" -msgstr "" - -msgid "Statistical sampling profiler for production use." -msgstr "" - -msgid ":mod:`pstats`" -msgstr "" - -msgid "Statistics analysis and formatting for profile data." -msgstr "" - -msgid ":mod:`profile`" -msgstr "" - -msgid "Deprecated pure Python profiler (includes calibration documentation)." -msgstr "" diff --git a/library/pstats.po b/library/pstats.po deleted file mode 100644 index 162dcae..0000000 --- a/library/pstats.po +++ /dev/null @@ -1,523 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!pstats` --- Statistics for profilers" -msgstr "" - -msgid "**Source code:** :source:`Lib/pstats.py`" -msgstr "" - -msgid "" -"The :mod:`!pstats` module provides tools for reading, manipulating, and " -"displaying profiling statistics generated by Python's profilers. It reads " -"output from both :mod:`profiling.tracing` (deterministic profiler) and :mod:" -"`profiling.sampling` (statistical profiler)." -msgstr "" - -msgid "Reading and displaying profile data" -msgstr "" - -msgid "" -"The :class:`Stats` class is the primary interface for working with profile " -"data. It can read statistics from files or directly from a :class:" -"`~profiling.tracing.Profile` object." -msgstr "" - -msgid "Load statistics from a file and print a basic report::" -msgstr "" - -msgid "" -"import pstats\n" -"\n" -"p = pstats.Stats('profile_output.prof')\n" -"p.print_stats()" -msgstr "" - -msgid "" -"The :class:`Stats` object provides methods for sorting and filtering the " -"data before printing. For example, to see the ten functions with the highest " -"cumulative time::" -msgstr "" - -msgid "" -"from pstats import SortKey\n" -"\n" -"p = pstats.Stats('profile_output.prof')\n" -"p.sort_stats(SortKey.CUMULATIVE).print_stats(10)" -msgstr "" - -msgid "Working with statistics" -msgstr "" - -msgid "" -"The :class:`Stats` class supports method chaining, making it convenient to " -"perform multiple operations::" -msgstr "" - -msgid "" -"p = pstats.Stats('restats')\n" -"p.strip_dirs().sort_stats(-1).print_stats()" -msgstr "" - -msgid "" -"The :meth:`~Stats.strip_dirs` method removes directory paths from filenames, " -"making the output more compact. The :meth:`~Stats.sort_stats` method accepts " -"various keys to control the sort order." -msgstr "" - -msgid "Different sort keys highlight different aspects of performance::" -msgstr "" - -msgid "" -"from pstats import SortKey\n" -"\n" -"# Functions that consume the most cumulative time\n" -"p.sort_stats(SortKey.CUMULATIVE).print_stats(10)\n" -"\n" -"# Functions that consume the most time in their own code\n" -"p.sort_stats(SortKey.TIME).print_stats(10)\n" -"\n" -"# Functions sorted by name\n" -"p.sort_stats(SortKey.NAME).print_stats()" -msgstr "" - -msgid "Filtering output" -msgstr "" - -msgid "" -"The :meth:`~Stats.print_stats` method accepts restrictions that filter which " -"functions are displayed. Restrictions can be integers (limiting the count), " -"floats between 0 and 1 (selecting a percentage), or strings (matching " -"function names via regular expression)." -msgstr "" - -msgid "Print only the top 10%::" -msgstr "" - -msgid "p.print_stats(.1)" -msgstr "" - -msgid "Print only functions whose names contain \"init\"::" -msgstr "" - -msgid "p.print_stats('init')" -msgstr "" - -msgid "Combine restrictions (they apply sequentially)::" -msgstr "" - -msgid "" -"# Top 10%, then only those containing \"init\"\n" -"p.print_stats(.1, 'init')\n" -"\n" -"# Functions in files matching \"foo:\", limited to top 50%\n" -"p.sort_stats(SortKey.FILENAME).print_stats('foo:', .5)" -msgstr "" - -msgid "Analyzing call relationships" -msgstr "" - -msgid "" -"The :meth:`~Stats.print_callers` method shows which functions called each " -"displayed function::" -msgstr "" - -msgid "p.print_callers()" -msgstr "" - -msgid "" -"The :meth:`~Stats.print_callees` method shows the opposite relationship, " -"listing which functions each displayed function called::" -msgstr "" - -msgid "p.print_callees()" -msgstr "" - -msgid "" -"Both methods accept the same restriction arguments as :meth:`~Stats." -"print_stats`." -msgstr "" - -msgid "Combining multiple profiles" -msgstr "" - -msgid "" -"Statistics from multiple profiling runs can be combined into a single :class:" -"`Stats` object::" -msgstr "" - -msgid "" -"# Load multiple files at once\n" -"p = pstats.Stats('run1.prof', 'run2.prof', 'run3.prof')\n" -"\n" -"# Or add files incrementally\n" -"p = pstats.Stats('run1.prof')\n" -"p.add('run2.prof')\n" -"p.add('run3.prof')" -msgstr "" - -msgid "" -"When files are combined, statistics for identical functions (same file, " -"line, and name) are accumulated, giving an aggregate view across all " -"profiling runs." -msgstr "" - -msgid "The :class:`!Stats` class" -msgstr "" - -msgid "Create a statistics object from profile data." -msgstr "" - -msgid "" -"The arguments can be filenames (strings or path-like objects) or :class:" -"`~profiling.tracing.Profile` objects. If multiple sources are provided, " -"their statistics are combined." -msgstr "" - -msgid "" -"The *stream* argument specifies where output from :meth:`print_stats` and " -"related methods is written. It defaults to :data:`sys.stdout`." -msgstr "" - -msgid "" -"The profile data format is specific to the Python version that created it. " -"There is no compatibility guarantee between Python versions or between " -"different profilers." -msgstr "" - -msgid "Remove leading path information from all filenames." -msgstr "" - -msgid "" -"This method modifies the object in place and returns it for method chaining. " -"After stripping, the statistics are considered to be in random order." -msgstr "" - -msgid "" -"If stripping causes two functions to become indistinguishable (same " -"filename, line number, and function name), their statistics are combined " -"into a single entry." -msgstr "" - -msgid "Add profiling data from additional files." -msgstr "" - -msgid "" -"The files must have been created by the same profiler type. Statistics for " -"identical functions are accumulated." -msgstr "" - -msgid "Save the current statistics to a file." -msgstr "" - -msgid "" -"The file is created if it does not exist and overwritten if it does. The " -"saved data can be loaded by creating a new :class:`Stats` object." -msgstr "" - -msgid "Sort the statistics according to the specified criteria." -msgstr "" - -msgid "" -"Each key can be a string or a :class:`SortKey` enum member. When multiple " -"keys are provided, later keys break ties in earlier keys." -msgstr "" - -msgid "" -"Using :class:`SortKey` enum members is preferred over strings as it provides " -"better error checking::" -msgstr "" - -msgid "" -"from pstats import SortKey\n" -"p.sort_stats(SortKey.CUMULATIVE)" -msgstr "" - -msgid "Valid sort keys:" -msgstr "" - -msgid "String" -msgstr "" - -msgid "Enum" -msgstr "" - -msgid "Meaning" -msgstr "" - -msgid "``'calls'``" -msgstr "" - -msgid "``SortKey.CALLS``" -msgstr "" - -msgid "call count" -msgstr "" - -msgid "``'cumulative'``" -msgstr "" - -msgid "``SortKey.CUMULATIVE``" -msgstr "" - -msgid "cumulative time" -msgstr "" - -msgid "``'cumtime'``" -msgstr "" - -msgid "N/A" -msgstr "" - -msgid "``'file'``" -msgstr "" - -msgid "file name" -msgstr "" - -msgid "``'filename'``" -msgstr "" - -msgid "``SortKey.FILENAME``" -msgstr "" - -msgid "``'module'``" -msgstr "" - -msgid "``'ncalls'``" -msgstr "" - -msgid "``'pcalls'``" -msgstr "" - -msgid "``SortKey.PCALLS``" -msgstr "" - -msgid "primitive call count" -msgstr "" - -msgid "``'line'``" -msgstr "" - -msgid "``SortKey.LINE``" -msgstr "" - -msgid "line number" -msgstr "" - -msgid "``'name'``" -msgstr "" - -msgid "``SortKey.NAME``" -msgstr "" - -msgid "function name" -msgstr "" - -msgid "``'nfl'``" -msgstr "" - -msgid "``SortKey.NFL``" -msgstr "" - -msgid "name/file/line" -msgstr "" - -msgid "``'stdname'``" -msgstr "" - -msgid "``SortKey.STDNAME``" -msgstr "" - -msgid "standard name" -msgstr "" - -msgid "``'time'``" -msgstr "" - -msgid "``SortKey.TIME``" -msgstr "" - -msgid "internal time" -msgstr "" - -msgid "``'tottime'``" -msgstr "" - -msgid "" -"All sorts on statistics are in descending order (most time consuming first), " -"while name, file, and line number sorts are ascending (alphabetical)." -msgstr "" - -msgid "" -"The difference between ``SortKey.NFL`` and ``SortKey.STDNAME`` is that NFL " -"sorts line numbers numerically while STDNAME sorts them as strings. " -"``sort_stats(SortKey.NFL)`` is equivalent to ``sort_stats(SortKey.NAME, " -"SortKey.FILENAME, SortKey.LINE)``." -msgstr "" - -msgid "" -"For backward compatibility, the numeric arguments ``-1``, ``0``, ``1``, and " -"``2`` are also accepted, meaning ``'stdname'``, ``'calls'``, ``'time'``, and " -"``'cumulative'`` respectively." -msgstr "" - -msgid "The :class:`SortKey` enum." -msgstr "" - -msgid "Reverse the current sort order." -msgstr "" - -msgid "" -"By default, the sort direction is chosen appropriately for the sort key " -"(descending for time-based keys, ascending for name-based keys). This method " -"inverts that choice." -msgstr "" - -msgid "Print a report of the profiling statistics." -msgstr "" - -msgid "" -"The output includes a header line summarizing the data, followed by a table " -"of function statistics sorted according to the last :meth:`sort_stats` call." -msgstr "" - -msgid "Restrictions filter the output. Each restriction is either:" -msgstr "" - -msgid "An integer: limits output to that many entries" -msgstr "" - -msgid "A float between 0.0 and 1.0: selects that fraction of entries" -msgstr "" - -msgid "A string: matches function names via regular expression" -msgstr "" - -msgid "Restrictions are applied sequentially. For example::" -msgstr "" - -msgid "print_stats(.1, 'foo:')" -msgstr "" - -msgid "First limits to the top 10%, then filters to functions matching 'foo:'." -msgstr "" - -msgid "Print the callers of each function in the statistics." -msgstr "" - -msgid "" -"For each function in the filtered results, shows which functions called it " -"and how often." -msgstr "" - -msgid "" -"With :mod:`profiling.tracing` (or ``cProfile``), each caller line shows " -"three numbers: the number of calls from that caller, and the total and " -"cumulative times for those specific calls." -msgstr "" - -msgid "Accepts the same restriction arguments as :meth:`print_stats`." -msgstr "" - -msgid "Print the functions called by each function in the statistics." -msgstr "" - -msgid "" -"This is the inverse of :meth:`print_callers`, showing which functions each " -"listed function called." -msgstr "" - -msgid "Return a ``StatsProfile`` object containing the statistics." -msgstr "" - -msgid "" -"The returned object provides programmatic access to the profile data, with " -"function names mapped to ``FunctionProfile`` objects containing timing and " -"call count information." -msgstr "" - -msgid "An enumeration of valid sort keys for :meth:`Stats.sort_stats`." -msgstr "" - -msgid "Sort by call count." -msgstr "" - -msgid "Sort by cumulative time." -msgstr "" - -msgid "Sort by file name." -msgstr "" - -msgid "Sort by line number." -msgstr "" - -msgid "Sort by function name." -msgstr "" - -msgid "Sort by name, then file, then line number (numeric line sort)." -msgstr "" - -msgid "Sort by primitive (non-recursive) call count." -msgstr "" - -msgid "Sort by standard name (string-based line sort)." -msgstr "" - -msgid "Sort by internal time (time in function excluding subcalls)." -msgstr "" - -msgid "Command-line interface" -msgstr "" - -msgid "" -"The :mod:`!pstats` module can be invoked as a script to interactively browse " -"profile data::" -msgstr "" - -msgid "python -m pstats profile_output.prof" -msgstr "" - -msgid "" -"This opens a line-oriented interface (built on :mod:`cmd`) for examining the " -"statistics. Type ``help`` at the prompt for available commands." -msgstr "" - -msgid ":mod:`profiling`" -msgstr "" - -msgid "Overview of Python profiling tools." -msgstr "" - -msgid ":mod:`profiling.tracing`" -msgstr "" - -msgid "Deterministic tracing profiler." -msgstr "" - -msgid ":mod:`profiling.sampling`" -msgstr "" - -msgid "Statistical sampling profiler." -msgstr "" diff --git a/library/pty.po b/library/pty.po index e15dbdf..4261dbf 100644 --- a/library/pty.po +++ b/library/pty.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/pwd.po b/library/pwd.po index c5db4cd..a53e590 100644 --- a/library/pwd.po +++ b/library/pwd.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/py_compile.po b/library/py_compile.po index 303f23b..5b1f111 100644 --- a/library/py_compile.po +++ b/library/py_compile.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,9 +63,9 @@ msgid "" "The *doraise* and *quiet* arguments determine how errors are handled while " "compiling file. If *quiet* is 0 or 1, and *doraise* is false, the default " "behaviour is enabled: an error string is written to ``sys.stderr``, and the " -"function returns ``None`` instead of a path. If *doraise* is true, a :exc:" -"`PyCompileError` is raised instead. However if *quiet* is 2, no message is " -"written, and *doraise* has no effect." +"function returns ``None`` instead of a path. If *doraise* is true, " +"a :exc:`PyCompileError` is raised instead. However if *quiet* is 2, no " +"message is written, and *doraise* has no effect." msgstr "" msgid "" @@ -78,16 +78,16 @@ msgid "" msgstr "" msgid "" -"*optimize* controls the optimization level and is passed to the built-in :" -"func:`compile` function. The default of ``-1`` selects the optimization " +"*optimize* controls the optimization level and is passed to the built-" +"in :func:`compile` function. The default of ``-1`` selects the optimization " "level of the current interpreter." msgstr "" msgid "" "*invalidation_mode* should be a member of the :class:`PycInvalidationMode` " "enum and controls how the generated bytecode cache is invalidated at " -"runtime. The default is :attr:`PycInvalidationMode.CHECKED_HASH` if the :" -"envvar:`SOURCE_DATE_EPOCH` environment variable is set, otherwise the " +"runtime. The default is :attr:`PycInvalidationMode.CHECKED_HASH` if " +"the :envvar:`SOURCE_DATE_EPOCH` environment variable is set, otherwise the " "default is :attr:`PycInvalidationMode.TIMESTAMP`." msgstr "" @@ -108,8 +108,8 @@ msgstr "" msgid "" "The *invalidation_mode* parameter was added as specified in :pep:`552`. If " "the :envvar:`SOURCE_DATE_EPOCH` environment variable is set, " -"*invalidation_mode* will be forced to :attr:`PycInvalidationMode." -"CHECKED_HASH`." +"*invalidation_mode* will be forced " +"to :attr:`PycInvalidationMode.CHECKED_HASH`." msgstr "" msgid "" diff --git a/library/pyclbr.po b/library/pyclbr.po index 58001d9..9e4b2ec 100644 --- a/library/pyclbr.po +++ b/library/pyclbr.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/pydoc.po b/library/pydoc.po index df877e2..25d78d7 100644 --- a/library/pydoc.po +++ b/library/pydoc.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,8 +41,8 @@ msgid "" "of the object, and recursively of its documentable members. If there is no " "docstring, :mod:`!pydoc` tries to obtain a description from the block of " "comment lines just above the definition of the class, function or method in " -"the source file, or at the top of the module (see :func:`inspect." -"getcomments`)." +"the source file, or at the top of the module " +"(see :func:`inspect.getcomments`)." msgstr "" msgid "" @@ -75,9 +76,10 @@ msgstr "" msgid "" "When printing output to the console, :program:`pydoc` attempts to paginate " -"the output for easier reading. If either the :envvar:`MANPAGER` or the :" -"envvar:`PAGER` environment variable is set, :program:`pydoc` will use its " -"value as a pagination program. When both are set, :envvar:`MANPAGER` is used." +"the output for easier reading. If either the :envvar:`MANPAGER` or " +"the :envvar:`PAGER` environment variable is set, :program:`pydoc` will use " +"its value as a pagination program. When both are set, :envvar:`MANPAGER` is " +"used." msgstr "" msgid "" @@ -95,11 +97,11 @@ msgstr "" msgid "" "You can also use :program:`pydoc` to start an HTTP server on the local " -"machine that will serve documentation to visiting web browsers. :program:" -"`python -m pydoc -p 1234` will start a HTTP server on port 1234, allowing " -"you to browse the documentation at ``http://localhost:1234/`` in your " -"preferred web browser. Specifying ``0`` as the port number will select an " -"arbitrary unused port." +"machine that will serve documentation to visiting web " +"browsers. :program:`python -m pydoc -p 1234` will start a HTTP server on " +"port 1234, allowing you to browse the documentation at ``http://" +"localhost:1234/`` in your preferred web browser. Specifying ``0`` as the " +"port number will select an arbitrary unused port." msgstr "" msgid "" @@ -131,11 +133,11 @@ msgid "" msgstr "" msgid "" -"Module docs for core modules are assumed to reside in ``https://docs.python." -"org/X.Y/library/`` where ``X`` and ``Y`` are the major and minor version " -"numbers of the Python interpreter. This can be overridden by setting the :" -"envvar:`!PYTHONDOCS` environment variable to a different URL or to a local " -"directory containing the Library Reference Manual pages." +"Module docs for core modules are assumed to reside in ``https://" +"docs.python.org/X.Y/library/`` where ``X`` and ``Y`` are the major and minor " +"version numbers of the Python interpreter. This can be overridden by " +"setting the :envvar:`!PYTHONDOCS` environment variable to a different URL or " +"to a local directory containing the Library Reference Manual pages." msgstr "" msgid "Added the ``-b`` option." @@ -145,8 +147,9 @@ msgid "The ``-g`` command line option was removed." msgstr "" msgid "" -":mod:`!pydoc` now uses :func:`inspect.signature` rather than :func:`inspect." -"getfullargspec` to extract signature information from callables." +":mod:`!pydoc` now uses :func:`inspect.signature` rather " +"than :func:`inspect.getfullargspec` to extract signature information from " +"callables." msgstr "" msgid "Added the ``-n`` option." diff --git a/library/pyexpat.po b/library/pyexpat.po index 1d34115..68122bb 100644 --- a/library/pyexpat.po +++ b/library/pyexpat.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,12 +33,12 @@ msgstr "" msgid "" "The :mod:`!xml.parsers.expat` module is a Python interface to the Expat non-" -"validating XML parser. The module provides a single extension type, :class:" -"`xmlparser`, that represents the current state of an XML parser. After an :" -"class:`xmlparser` object has been created, various attributes of the object " -"can be set to handler functions. When an XML document is then fed to the " -"parser, the handler functions are called for the character data and markup " -"in the XML document." +"validating XML parser. The module provides a single extension " +"type, :class:`xmlparser`, that represents the current state of an XML " +"parser. After an :class:`xmlparser` object has been created, various " +"attributes of the object can be set to handler functions. When an XML " +"document is then fed to the parser, the handler functions are called for the " +"character data and markup in the XML document." msgstr "" msgid "" @@ -45,12 +46,14 @@ msgid "" "parser. Direct use of the :mod:`pyexpat` module is deprecated." msgstr "" -msgid "This module provides one exception and one type object:" +msgid "" +"This module provides the following exception, type object and data items:" msgstr "" msgid "" -"The exception raised when Expat reports an error. See section :ref:" -"`expaterror-objects` for more information on interpreting Expat errors." +"The exception raised when Expat reports an error. See " +"section :ref:`expaterror-objects` for more information on interpreting Expat " +"errors." msgstr "" msgid "Alias for :exc:`ExpatError`." @@ -59,6 +62,25 @@ msgstr "" msgid "The type of the return values from the :func:`ParserCreate` function." msgstr "" +msgid "" +"The version string of the Expat library loaded by the interpreter, like " +"``'expat_2.8.4'``." +msgstr "" + +msgid "" +"The version of the Expat library loaded by the interpreter, as a tuple of " +"three integers: major, minor and micro version." +msgstr "" + +msgid "" +"The list of the features with which the loaded Expat library was compiled, " +"as ``(name, value)`` pairs. The value is only meaningful for features which " +"have one, like ``'XML_CONTEXT_BYTES'`` or the default protection limits " +"``'XML_BLAP_ACT_THRES'`` and ``'XML_AT_MAX_AMP'``; for other features, like " +"``'XML_DTD'`` and ``'XML_NS'``, the value is ``0`` and only the presence of " +"the name is significant." +msgstr "" + msgid "The :mod:`!xml.parsers.expat` module contains two functions:" msgstr "" @@ -77,8 +99,8 @@ msgstr "" msgid "" "Parsers created through :func:`!ParserCreate` are called \"root\" parsers, " "in the sense that they do not have any parent parser attached. Non-root " -"parsers are created by :meth:`parser.ExternalEntityParserCreate `." +"parsers are created by :meth:`parser.ExternalEntityParserCreate " +"`." msgstr "" msgid "" @@ -121,10 +143,16 @@ msgid "" msgstr "" msgid "" -"Due to limitations in the ``Expat`` library used by :mod:`pyexpat`, the :" -"class:`xmlparser` instance returned can only be used to parse a single XML " -"document. Call ``ParserCreate`` for each document to provide unique parser " -"instances." +"*intern*, if given, must be a dictionary. It is used to intern the names of " +"elements and attributes, and is available as the :attr:`~xmlparser.intern` " +"attribute. By default a new empty dictionary is created for every parser." +msgstr "" + +msgid "" +"Due to limitations in the ``Expat`` library used by :mod:`pyexpat`, " +"the :class:`xmlparser` instance returned can only be used to parse a single " +"XML document. Call ``ParserCreate`` for each document to provide unique " +"parser instances." msgstr "" msgid "`The Expat XML Parser `_" @@ -140,53 +168,59 @@ msgid ":class:`xmlparser` objects have the following methods:" msgstr "" msgid "" -"Parses the contents of the string *data*, calling the appropriate handler " -"functions to process the parsed data. *isfinal* must be true on the final " -"call to this method; it allows the parsing of a single file in fragments, " -"not the submission of multiple files. *data* can be the empty string at any " -"time." +"Parses the contents of *data*, calling the appropriate handler functions to " +"process the parsed data. *data* can be a :term:`bytes-like object` or a " +"string. If it is a string, the encoding declaration in the XML data is " +"ignored, and the data is parsed as already decoded text. *isfinal* must be " +"true on the final call to this method; it allows the parsing of a single " +"file in fragments, not the submission of multiple files. *data* can be empty " +"at any time." msgstr "" msgid "" -"Parse XML data reading from the object *file*. *file* only needs to provide " -"the ``read(nbytes)`` method, returning the empty string when there's no more " -"data." +"Parse XML data reading from the object *file*. *file* only needs to provide " +"the ``read(nbytes)`` method, which returns bytes, and an empty bytes object " +"when there's no more data. Text files are not supported; use :meth:`Parse` " +"for data which is already decoded." msgstr "" msgid "" "Sets the base to be used for resolving relative URIs in system identifiers " "in declarations. Resolving relative identifiers is left to the application: " -"this value will be passed through as the *base* argument to the :func:" -"`ExternalEntityRefHandler`, :func:`NotationDeclHandler`, and :func:" -"`UnparsedEntityDeclHandler` functions." +"this value will be passed through as the *base* argument to " +"the :func:`ExternalEntityRefHandler`, :func:`NotationDeclHandler`, " +"and :func:`UnparsedEntityDeclHandler` functions." msgstr "" msgid "" -"Returns a string containing the base set by a previous call to :meth:" -"`SetBase`, or ``None`` if :meth:`SetBase` hasn't been called." +"Returns a string containing the base set by a previous call " +"to :meth:`SetBase`, or ``None`` if :meth:`SetBase` hasn't been called." msgstr "" msgid "" -"Returns the input data that generated the current event as a string. The " -"data is in the encoding of the entity which contains the text. When called " -"while an event handler is not active, the return value is ``None``." +"Returns the input data which generated the current event as a :class:`bytes` " +"object. The data is in the encoding of the entity which contains the text. " +"It extends to the end of the currently buffered input, therefore it can " +"contain also the data of the following events, and if the event was " +"generated by a large amount of text, not all of it may be available. When " +"called while an event handler is not active, the return value is ``None``." msgstr "" msgid "" "Create a \"child\" parser which can be used to parse an external parsed " "entity referred to by content parsed by the parent parser. The *context* " -"parameter should be the string passed to the :meth:" -"`ExternalEntityRefHandler` handler function, described below. The child " -"parser is created with the :attr:`ordered_attributes` and :attr:" -"`specified_attributes` set to the values of this parser." +"parameter should be the string passed to " +"the :meth:`ExternalEntityRefHandler` handler function, described below. The " +"child parser is created with the :attr:`ordered_attributes` " +"and :attr:`specified_attributes` set to the values of this parser." msgstr "" msgid "" "Control parsing of parameter entities (including the external DTD subset). " -"Possible *flag* values are :const:`XML_PARAM_ENTITY_PARSING_NEVER`, :const:" -"`XML_PARAM_ENTITY_PARSING_UNLESS_STANDALONE` and :const:" -"`XML_PARAM_ENTITY_PARSING_ALWAYS`. Return true if setting the flag was " -"successful." +"Possible *flag* values " +"are :const:`XML_PARAM_ENTITY_PARSING_NEVER`, :const:`XML_PARAM_ENTITY_PARSING_UNLESS_STANDALONE` " +"and :const:`XML_PARAM_ENTITY_PARSING_ALWAYS`. Return true if setting the " +"flag was successful." msgstr "" msgid "" @@ -194,8 +228,8 @@ msgid "" "call the :attr:`ExternalEntityRefHandler` with :const:`None` for all " "arguments to allow an alternate DTD to be loaded. If the document does not " "contain a document type declaration, the :attr:`ExternalEntityRefHandler` " -"will still be called, but the :attr:`StartDoctypeDeclHandler` and :attr:" -"`EndDoctypeDeclHandler` will not be called." +"will still be called, but the :attr:`StartDoctypeDeclHandler` " +"and :attr:`EndDoctypeDeclHandler` will not be called." msgstr "" msgid "" @@ -232,8 +266,9 @@ msgstr "" msgid "" ":meth:`!SetReparseDeferralEnabled` has been backported to some prior " -"releases of CPython as a security fix. Check for availability using :func:" -"`hasattr` if used in code running across a variety of Python versions." +"releases of CPython as a security fix. Check for availability " +"using :func:`hasattr` if used in code running across a variety of Python " +"versions." msgstr "" msgid "" @@ -263,8 +298,9 @@ msgstr "" msgid "" "An :exc:`ExpatError` is raised if this method is called on a |xml-non-root-" -"parser| parser. The corresponding :attr:`~ExpatError.lineno` and :attr:" -"`~ExpatError.offset` should not be used as they may have no special meaning." +"parser| parser. The corresponding :attr:`~ExpatError.lineno` " +"and :attr:`~ExpatError.offset` should not be used as they may have no " +"special meaning." msgstr "" msgid "" @@ -320,8 +356,8 @@ msgstr "" msgid "" "The maximum amplification factor is only considered if the threshold that " -"can be adjusted by :meth:`." -"SetBillionLaughsAttackProtectionActivationThreshold` is exceeded." +"can be adjusted " +"by :meth:`.SetBillionLaughsAttackProtectionActivationThreshold` is exceeded." msgstr "" msgid "" @@ -336,8 +372,9 @@ msgstr "" msgid "" ":meth:`!SetAllocTrackerActivationThreshold` has been backported to some " -"prior releases of CPython as a security fix. Check for availability using :" -"func:`hasattr` if used in code running across a variety of Python versions." +"prior releases of CPython as a security fix. Check for availability " +"using :func:`hasattr` if used in code running across a variety of Python " +"versions." msgstr "" msgid "" @@ -361,8 +398,9 @@ msgstr "" msgid "" ":meth:`!SetAllocTrackerMaximumAmplification` has been backported to some " -"prior releases of CPython as a security fix. Check for availability using :" -"func:`hasattr` if used in code running across a variety of Python versions." +"prior releases of CPython as a security fix. Check for availability " +"using :func:`hasattr` if used in code running across a variety of Python " +"versions." msgstr "" msgid "" @@ -381,12 +419,12 @@ msgstr "" msgid "" "Setting this to true causes the :class:`xmlparser` object to buffer textual " -"content returned by Expat to avoid multiple calls to the :meth:" -"`CharacterDataHandler` callback whenever possible. This can improve " -"performance substantially since Expat normally breaks character data into " -"chunks at every line ending. This attribute is false by default, and may be " -"changed at any time. Note that when it is false, data that does not contain " -"newlines may be chunked too." +"content returned by Expat to avoid multiple calls to " +"the :meth:`CharacterDataHandler` callback whenever possible. This can " +"improve performance substantially since Expat normally breaks character data " +"into chunks at every line ending. This attribute is false by default, and " +"may be changed at any time. Note that when it is false, data that does not " +"contain newlines may be chunked too." msgstr "" msgid "" @@ -414,20 +452,33 @@ msgid "" "time." msgstr "" +msgid "" +"The dictionary used to intern the names of elements and attributes. It is " +"either the dictionary passed as the *intern* argument " +"of :func:`ParserCreate`, or a new dictionary created for this parser." +msgstr "" + +msgid "" +"If set to a true value, and namespace processing is enabled, the namespace " +"prefix is reported as the third part of the expanded name, separated by the " +"namespace separator. Names which have no prefix are not affected. By " +"default, this attribute is false; it may be changed at any time." +msgstr "" + msgid "" "The following attributes contain values relating to the most recent error " "encountered by an :class:`xmlparser` object, and will only have correct " -"values once a call to :meth:`Parse` or :meth:`ParseFile` has raised an :exc:" -"`xml.parsers.expat.ExpatError` exception." +"values once a call to :meth:`Parse` or :meth:`ParseFile` has raised " +"an :exc:`xml.parsers.expat.ExpatError` exception." msgstr "" msgid "Byte index at which an error occurred." msgstr "" msgid "" -"Numeric code specifying the problem. This value can be passed to the :func:" -"`ErrorString` function, or compared to one of the constants defined in the " -"``errors`` object." +"Numeric code specifying the problem. This value can be passed to " +"the :func:`ErrorString` function, or compared to one of the constants " +"defined in the ``errors`` object." msgstr "" msgid "Column number at which an error occurred." @@ -455,11 +506,11 @@ msgid "Current line number in the parser input." msgstr "" msgid "" -"Here is the list of handlers that can be set. To set a handler on an :class:" -"`xmlparser` object *o*, use ``o.handlername = func``. *handlername* must be " -"taken from the following list, and *func* must be a callable object " -"accepting the correct number of arguments. The arguments are all strings, " -"unless otherwise stated." +"Here is the list of handlers that can be set. To set a handler on " +"an :class:`xmlparser` object *o*, use ``o.handlername = func``. " +"*handlername* must be taken from the following list, and *func* must be a " +"callable object accepting the correct number of arguments. The arguments " +"are all strings, unless otherwise stated." msgstr "" msgid "" @@ -468,8 +519,7 @@ msgid "" "the encoding of the document text, and an optional \"standalone\" " "declaration. *version* and *encoding* will be strings, and *standalone* will " "be ``1`` if the document is declared standalone, ``0`` if it is declared not " -"to be standalone, or ``-1`` if the standalone clause was omitted. This is " -"only available with Expat version 1.95.0 or newer." +"to be standalone, or ``-1`` if the standalone clause was omitted." msgstr "" msgid "" @@ -477,13 +527,10 @@ msgid "" "DOCTYPE ...``). The *doctypeName* is provided exactly as presented. The " "*systemId* and *publicId* parameters give the system and public identifiers " "if specified, or ``None`` if omitted. *has_internal_subset* will be true if " -"the document contains an internal document declaration subset. This requires " -"Expat version 1.2 or newer." +"the document contains an internal document declaration subset." msgstr "" -msgid "" -"Called when Expat is done parsing the document type declaration. This " -"requires Expat version 1.2 or newer." +msgid "Called when Expat is done parsing the document type declaration." msgstr "" msgid "" @@ -496,20 +543,22 @@ msgid "" "list declaration declares three attributes, this handler is called three " "times, once for each attribute. *elname* is the name of the element to " "which the declaration applies and *attname* is the name of the attribute " -"declared. The attribute type is a string passed as *type*; the possible " -"values are ``'CDATA'``, ``'ID'``, ``'IDREF'``, ... *default* gives the " -"default value for the attribute used when the attribute is not specified by " -"the document instance, or ``None`` if there is no default value " -"(``#IMPLIED`` values). If the attribute is required to be given in the " -"document instance, *required* will be true. This requires Expat version " -"1.95.0 or newer." +"declared. The The attribute type is a string passed as *type*: ``'CDATA'``, " +"``'ID'``, ``'IDREF'``, ``'IDREFS'``, ``'ENTITY'``, ``'ENTITIES'``, " +"``'NMTOKEN'`` or ``'NMTOKENS'``, an enumeration like ``'(x|y)'``, or a " +"notation list like ``'NOTATION(n1|n2)'``. *default* gives the default value " +"for the attribute used when the attribute is not specified by the document " +"instance, or ``None`` if there is no default value (``#IMPLIED`` values). " +"If the attribute is required to be given in the document instance, " +"*required* will be true." msgstr "" msgid "" "Called for the start of every element. *name* is a string containing the " -"element name, and *attributes* is the element attributes. If :attr:" -"`ordered_attributes` is true, this is a list (see :attr:`ordered_attributes` " -"for a full description). Otherwise it's a dictionary mapping names to values." +"element name, and *attributes* is the element attributes. " +"If :attr:`ordered_attributes` is true, this is a list " +"(see :attr:`ordered_attributes` for a full description). Otherwise it's a " +"dictionary mapping names to values." msgstr "" msgid "Called for the end of every element." @@ -521,19 +570,19 @@ msgstr "" msgid "" "Called for character data. This will be called for normal character data, " "CDATA marked content, and ignorable whitespace. Applications which must " -"distinguish these cases can use the :attr:`StartCdataSectionHandler`, :attr:" -"`EndCdataSectionHandler`, and :attr:`ElementDeclHandler` callbacks to " -"collect the required information. Note that the character data may be " -"chunked even if it is short and so you may receive more than one call to :" -"meth:`CharacterDataHandler`. Set the :attr:`buffer_text` instance attribute " -"to ``True`` to avoid that." +"distinguish these cases can use " +"the :attr:`StartCdataSectionHandler`, :attr:`EndCdataSectionHandler`, " +"and :attr:`ElementDeclHandler` callbacks to collect the required " +"information. Note that the character data may be chunked even if it is short " +"and so you may receive more than one call to :meth:`CharacterDataHandler`. " +"Set the :attr:`buffer_text` instance attribute to ``True`` to avoid that." msgstr "" msgid "" -"Called for unparsed (NDATA) entity declarations. This is only present for " -"version 1.2 of the Expat library; for more recent versions, use :attr:" -"`EntityDeclHandler` instead. (The underlying function in the Expat library " -"has been declared obsolete.)" +"Called for unparsed (NDATA) entity declarations. If this handler is not set, " +"such declarations are reported by :attr:`EntityDeclHandler`, which is " +"preferred for new code. (The underlying function in the Expat library has " +"been declared obsolete.)" msgstr "" msgid "" @@ -543,8 +592,7 @@ msgid "" "be ``None`` for parsed entities, and the name of the notation for unparsed " "entities. *is_parameter_entity* will be true if the entity is a parameter " "entity or false for general entities (most applications only need to be " -"concerned with general entities). This is only available starting with " -"version 1.95.0 of the Expat library." +"concerned with general entities)." msgstr "" msgid "" @@ -562,10 +610,10 @@ msgstr "" msgid "" "Called when the closing tag is reached for an element that contained a " "namespace declaration. This is called once for each namespace declaration " -"on the element in the reverse of the order for which the :attr:" -"`StartNamespaceDeclHandler` was called to indicate the start of each " -"namespace declaration's scope. Calls to this handler are made after the " -"corresponding :attr:`EndElementHandler` for the end of the element." +"on the element in the reverse of the order for which " +"the :attr:`StartNamespaceDeclHandler` was called to indicate the start of " +"each namespace declaration's scope. Calls to this handler are made after " +"the corresponding :attr:`EndElementHandler` for the end of the element." msgstr "" msgid "" @@ -574,9 +622,9 @@ msgid "" msgstr "" msgid "" -"Called at the start of a CDATA section. This and :attr:" -"`EndCdataSectionHandler` are needed to be able to identify the syntactical " -"start and end for CDATA sections." +"Called at the start of a CDATA section. This " +"and :attr:`EndCdataSectionHandler` are needed to be able to identify the " +"syntactical start and end for CDATA sections." msgstr "" msgid "Called at the end of a CDATA section." @@ -590,7 +638,7 @@ msgid "" msgstr "" msgid "" -"This is the same as the :func:`DefaultHandler`, but doesn't inhibit " +"This is the same as the :attr:`DefaultHandler`, but doesn't inhibit " "expansion of internal entities. The entity reference will not be passed to " "the default handler." msgstr "" @@ -608,8 +656,8 @@ msgid "" "Implementing a handler that accesses local files and/or the network may " "create a vulnerability to `external entity attacks `_ if :class:`xmlparser` is used with user-" -"provided XML content. Please reflect on your `threat model `_ before implementing this handler." +"provided XML content. Please reflect on your `threat model `_ before implementing this handler." msgstr "" msgid "" @@ -625,13 +673,21 @@ msgid "" "responsible for creating the sub-parser using " "``ExternalEntityParserCreate(context)``, initializing it with the " "appropriate callbacks, and parsing the entity. This handler should return " -"an integer; if it returns ``0``, the parser will raise an :const:" -"`XML_ERROR_EXTERNAL_ENTITY_HANDLING` error, otherwise parsing will continue." +"an integer; if it returns ``0``, the parser will raise " +"an :const:`XML_ERROR_EXTERNAL_ENTITY_HANDLING` error, otherwise parsing will " +"continue." msgstr "" msgid "" -"If this handler is not provided, external entities are reported by the :attr:" -"`DefaultHandler` callback, if provided." +"If this handler is not provided, external entities are reported by " +"the :attr:`DefaultHandler` callback, if provided." +msgstr "" + +msgid "" +"Called for entity references which are not expanded, because the parser did " +"not read the declaration of the entity. This happens when the external DTD " +"subset or an external parameter entity is not parsed. *is_parameter_entity* " +"is true for a parameter entity and false for a general entity." msgstr "" msgid "ExpatError Exceptions" @@ -641,9 +697,9 @@ msgid ":exc:`ExpatError` exceptions have a number of interesting attributes:" msgstr "" msgid "" -"Expat's internal error number for the specific error. The :data:`errors." -"messages ` dictionary maps these error " -"numbers to Expat's error messages. For example::" +"Expat's internal error number for the specific error. " +"The :data:`errors.messages ` dictionary " +"maps these error numbers to Expat's error messages. For example::" msgstr "" msgid "" @@ -729,8 +785,8 @@ msgid "" msgstr "" msgid "" -"The values of the first two fields are constants defined in the :mod:`!xml." -"parsers.expat.model` module. These constants can be collected in two " +"The values of the first two fields are constants defined in the :mod:`!" +"xml.parsers.expat.model` module. These constants can be collected in two " "groups: the model type group and the quantifier group." msgstr "" @@ -750,6 +806,15 @@ msgstr "" msgid "Elements which are declared to be ``EMPTY`` have this model type." msgstr "" +msgid "" +"The named element allows character data, optionally interspersed with the " +"named children; this is used for content models such as ``(#PCDATA)`` and " +"``(#PCDATA | A | B)*``." +msgstr "" + +msgid "The model names a single element, as for ``A``." +msgstr "" + msgid "" "Models which represent a series of models which follow one after the other " "are indicated with this model type. This is used for models such as ``(A, " @@ -780,8 +845,8 @@ msgid "" "of the :exc:`ExpatError` exception objects raised when an error has " "occurred. Since for backwards compatibility reasons, the constants' value is " "the error *message* and not the numeric error *code*, you do this by " -"comparing its :attr:`code` attribute with :samp:`errors.codes[errors." -"XML_ERROR_{CONSTANT_NAME}]`." +"comparing its :attr:`code` attribute " +"with :samp:`errors.codes[errors.XML_ERROR_{CONSTANT_NAME}]`." msgstr "" msgid "The ``errors`` module has the following attributes:" @@ -826,7 +891,7 @@ msgstr "" msgid "" "The document contains no elements (XML requires all documents to contain " -"exactly one top-level element).." +"exactly one top-level element)." msgstr "" msgid "Expat was not able to allocate memory internally." @@ -865,8 +930,8 @@ msgstr "" msgid "" "The parser determined that the document was not \"standalone\" though it " -"declared itself to be in the XML declaration, and the :attr:" -"`NotStandaloneHandler` was set and returned ``0``." +"declared itself to be in the XML declaration, and " +"the :attr:`NotStandaloneHandler` was set and returned ``0``." msgstr "" msgid "" @@ -877,8 +942,8 @@ msgstr "" msgid "" "A behavioral change was requested after parsing started that can only be " -"changed before parsing has started. This is (currently) only raised by :" -"meth:`UseForeignDTD`." +"changed before parsing has started. This is (currently) only raised " +"by :meth:`UseForeignDTD`." msgstr "" msgid "An undeclared prefix was found when namespace processing was enabled." @@ -892,7 +957,7 @@ msgstr "" msgid "A parameter entity contained incomplete markup." msgstr "" -msgid "The document contained no document element at all." +msgid "There was an error parsing the XML declaration." msgstr "" msgid "There was an error parsing a text declaration in an external entity." @@ -949,8 +1014,8 @@ msgstr "" msgid "" "The encoding string included in XML output should conform to the appropriate " "standards. For example, \"UTF-8\" is valid, but \"UTF8\" is not. See https://" -"www.w3.org/TR/2006/REC-xml11-20060816/#NT-EncodingDecl and https://www.iana." -"org/assignments/character-sets/character-sets.xhtml." +"www.w3.org/TR/2006/REC-xml11-20060816/#NT-EncodingDecl and https://" +"www.iana.org/assignments/character-sets/character-sets.xhtml." msgstr "" msgid "Expat" diff --git a/library/python.po b/library/python.po index f583ac6..39a3e2e 100644 --- a/library/python.po +++ b/library/python.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/queue.po b/library/queue.po index 6f7ce9a..8e3aa1f 100644 --- a/library/queue.po +++ b/library/queue.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -111,13 +111,15 @@ msgid "" msgstr "" msgid "" -"Exception raised when non-blocking :meth:`~Queue.get` (or :meth:`~Queue." -"get_nowait`) is called on a :class:`Queue` object which is empty." +"Exception raised when non-blocking :meth:`~Queue.get` " +"(or :meth:`~Queue.get_nowait`) is called on a :class:`Queue` object which is " +"empty." msgstr "" msgid "" -"Exception raised when non-blocking :meth:`~Queue.put` (or :meth:`~Queue." -"put_nowait`) is called on a :class:`Queue` object which is full." +"Exception raised when non-blocking :meth:`~Queue.put` " +"(or :meth:`~Queue.put_nowait`) is called on a :class:`Queue` object which is " +"full." msgstr "" msgid "" @@ -129,8 +131,8 @@ msgid "Queue Objects" msgstr "" msgid "" -"Queue objects (:class:`Queue`, :class:`LifoQueue`, or :class:" -"`PriorityQueue`) provide the public methods described below." +"Queue objects (:class:`Queue`, :class:`LifoQueue`, " +"or :class:`PriorityQueue`) provide the public methods described below." msgstr "" msgid "" @@ -183,8 +185,8 @@ msgid "" "Prior to 3.0 on POSIX systems, and for all versions on Windows, if *block* " "is true and *timeout* is ``None``, this operation goes into an " "uninterruptible wait on an underlying lock. This means that no exceptions " -"can occur, and in particular a SIGINT will not trigger a :exc:" -"`KeyboardInterrupt`." +"can occur, and in particular a SIGINT will not trigger " +"a :exc:`KeyboardInterrupt`." msgstr "" msgid "" @@ -202,8 +204,9 @@ msgstr "" msgid "" "Indicate that a formerly enqueued task is complete. Used by queue consumer " -"threads. For each :meth:`get` used to fetch a task, a subsequent call to :" -"meth:`task_done` tells the queue that the processing on the task is complete." +"threads. For each :meth:`get` used to fetch a task, a subsequent call " +"to :meth:`task_done` tells the queue that the processing on the task is " +"complete." msgstr "" msgid "" @@ -222,10 +225,10 @@ msgstr "" msgid "" "The count of unfinished tasks goes up whenever an item is added to the " -"queue. The count goes down whenever a consumer thread calls :meth:" -"`task_done` to indicate that the item was retrieved and all work on it is " -"complete. When the count of unfinished tasks drops to zero, :meth:`join` " -"unblocks." +"queue. The count goes down whenever a consumer thread " +"calls :meth:`task_done` to indicate that the item was retrieved and all work " +"on it is complete. When the count of unfinished tasks drops to " +"zero, :meth:`join` unblocks." msgstr "" msgid "Waiting for task completion" @@ -271,9 +274,9 @@ msgid "Put a :class:`Queue` instance into a shutdown mode." msgstr "" msgid "" -"The queue can no longer grow. Future calls to :meth:`~Queue.put` raise :exc:" -"`ShutDown`. Currently blocked callers of :meth:`~Queue.put` will be " -"unblocked and will raise :exc:`ShutDown` in the formerly blocked thread." +"The queue can no longer grow. Future calls to :meth:`~Queue.put` " +"raise :exc:`ShutDown`. Currently blocked callers of :meth:`~Queue.put` will " +"be unblocked and will raise :exc:`ShutDown` in the formerly blocked thread." msgstr "" msgid "" @@ -287,16 +290,17 @@ msgid "" msgstr "" msgid "" -"Once the queue is empty, future calls to :meth:`~Queue.get` will raise :exc:" -"`ShutDown`." +"Once the queue is empty, future calls to :meth:`~Queue.get` will " +"raise :exc:`ShutDown`." msgstr "" msgid "" "If *immediate* is true, the queue is terminated immediately. The queue is " "drained to be completely empty and the count of unfinished tasks is reduced " -"by the number of tasks drained. If unfinished tasks is zero, callers of :" -"meth:`~Queue.join` are unblocked. Also, blocked callers of :meth:`~Queue." -"get` are unblocked and will raise :exc:`ShutDown` because the queue is empty." +"by the number of tasks drained. If unfinished tasks is zero, callers " +"of :meth:`~Queue.join` are unblocked. Also, blocked callers " +"of :meth:`~Queue.get` are unblocked and will raise :exc:`ShutDown` because " +"the queue is empty." msgstr "" msgid "" @@ -339,8 +343,8 @@ msgid "" msgstr "" msgid "" -"Equivalent to ``put(item, block=False)``, provided for compatibility with :" -"meth:`Queue.put_nowait`." +"Equivalent to ``put(item, block=False)``, provided for compatibility " +"with :meth:`Queue.put_nowait`." msgstr "" msgid "Class :class:`multiprocessing.Queue`" @@ -353,7 +357,7 @@ msgstr "" msgid "" ":class:`collections.deque` is an alternative implementation of unbounded " -"queues with fast atomic :meth:`~collections.deque.append` and :meth:" -"`~collections.deque.popleft` operations that do not require locking and also " -"support indexing." +"queues with fast atomic :meth:`~collections.deque.append` " +"and :meth:`~collections.deque.popleft` operations that do not require " +"locking and also support indexing." msgstr "" diff --git a/library/quopri.po b/library/quopri.po index cff0ec3..a6a2477 100644 --- a/library/quopri.po +++ b/library/quopri.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,13 +45,13 @@ msgstr "" msgid "" "Encode the contents of the *input* file and write the resulting quoted-" -"printable data to the *output* file. *input* and *output* must be :term:" -"`binary file objects `. *quotetabs*, a non-optional flag which " -"controls whether to encode embedded spaces and tabs; when true it encodes " -"such embedded whitespace, and when false it leaves them unencoded. Note that " -"spaces and tabs appearing at the end of lines are always encoded, as per :" -"rfc:`1521`. *header* is a flag which controls if spaces are encoded as " -"underscores as per :rfc:`1522`." +"printable data to the *output* file. *input* and *output* must " +"be :term:`binary file objects `. *quotetabs*, a non-optional " +"flag which controls whether to encode embedded spaces and tabs; when true it " +"encodes such embedded whitespace, and when false it leaves them unencoded. " +"Note that spaces and tabs appearing at the end of lines are always encoded, " +"as per :rfc:`1521`. *header* is a flag which controls if spaces are encoded " +"as underscores as per :rfc:`1522`." msgstr "" msgid "" diff --git a/library/random.po b/library/random.po index fcdb60c..cd13172 100644 --- a/library/random.po +++ b/library/random.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -93,8 +97,8 @@ msgid "" "The global random number generator and instances of :class:`Random` are " "thread-safe. However, in the free-threaded build, concurrent calls to the " "global generator or to the same instance of :class:`Random` may encounter " -"contention and poor performance. Consider using separate instances of :class:" -"`Random` per thread instead." +"contention and poor performance. Consider using separate instances " +"of :class:`Random` per thread instead." msgstr "" msgid "Bookkeeping functions" @@ -114,9 +118,9 @@ msgid "If *a* is an int, its absolute value is used directly." msgstr "" msgid "" -"With version 2 (the default), a :class:`str`, :class:`bytes`, or :class:" -"`bytearray` object gets converted to an :class:`int` and all of its bits are " -"used." +"With version 2 (the default), a :class:`str`, :class:`bytes`, " +"or :class:`bytearray` object gets converted to an :class:`int` and all of " +"its bits are used." msgstr "" msgid "" @@ -130,8 +134,9 @@ msgid "" msgstr "" msgid "" -"The *seed* must be one of the following types: ``None``, :class:`int`, :" -"class:`float`, :class:`str`, :class:`bytes`, or :class:`bytearray`." +"The *seed* must be one of the following types: " +"``None``, :class:`int`, :class:`float`, :class:`str`, :class:`bytes`, " +"or :class:`bytearray`." msgstr "" msgid "" @@ -152,8 +157,8 @@ msgid "Generate *n* random bytes." msgstr "" msgid "" -"This method should not be used for generating security tokens. Use :func:" -"`secrets.token_bytes` instead." +"This method should not be used for generating security tokens. " +"Use :func:`secrets.token_bytes` instead." msgstr "" msgid "Functions for integers" @@ -184,8 +189,8 @@ msgstr "" msgid "" "Automatic conversion of non-integer types is no longer supported. Calls such " -"as ``randrange(10.0)`` and ``randrange(Fraction(10, 1))`` now raise a :exc:" -"`TypeError`." +"as ``randrange(10.0)`` and ``randrange(Fraction(10, 1))`` now raise " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -196,8 +201,9 @@ msgstr "" msgid "" "Returns a non-negative Python integer with *k* random bits. This method is " "supplied with the Mersenne Twister generator and some other generators may " -"also provide it as an optional part of the API. When available, :meth:" -"`getrandbits` enables :meth:`randrange` to handle arbitrarily large ranges." +"also provide it as an optional part of the API. When " +"available, :meth:`getrandbits` enables :meth:`randrange` to handle " +"arbitrarily large ranges." msgstr "" msgid "This method now accepts zero for *k*." @@ -235,19 +241,19 @@ msgstr "" msgid "" "The *weights* or *cum_weights* can use any numeric type that interoperates " -"with the :class:`float` values returned by :func:`random` (that includes " -"integers, floats, and fractions but excludes decimals). Weights are assumed " -"to be non-negative and finite. A :exc:`ValueError` is raised if all weights " -"are zero." +"with the :class:`float` values returned by :func:`~random.random` (that " +"includes integers, floats, and fractions but excludes decimals). Weights " +"are assumed to be non-negative and finite. A :exc:`ValueError` is raised if " +"all weights are zero." msgstr "" msgid "" "For a given seed, the :func:`choices` function with equal weighting " -"typically produces a different sequence than repeated calls to :func:" -"`choice`. The algorithm used by :func:`choices` uses floating-point " -"arithmetic for internal consistency and speed. The algorithm used by :func:" -"`choice` defaults to integer arithmetic with repeated selections to avoid " -"small biases from round-off error." +"typically produces a different sequence than repeated calls " +"to :func:`choice`. The algorithm used by :func:`choices` uses floating-" +"point arithmetic for internal consistency and speed. The algorithm used " +"by :func:`choice` defaults to integer arithmetic with repeated selections to " +"avoid small biases from round-off error." msgstr "" msgid "Raises a :exc:`ValueError` if all weights are zero." @@ -324,9 +330,9 @@ msgid "The following function generates a discrete distribution." msgstr "" msgid "" -"`Binomial distribution `_. Return the number of successes for *n* independent trials with the " -"probability of success in each trial being *p*:" +"`Binomial distribution `_. Return the number of successes for *n* " +"independent trials with the probability of success in each trial being *p*:" msgstr "" msgid "Mathematically equivalent to::" @@ -457,8 +463,8 @@ msgstr "" msgid "" "Formerly the *seed* could be any hashable object. Now it is limited to: " -"``None``, :class:`int`, :class:`float`, :class:`str`, :class:`bytes`, or :" -"class:`bytearray`." +"``None``, :class:`int`, :class:`float`, :class:`str`, :class:`bytes`, " +"or :class:`bytearray`." msgstr "" msgid "" @@ -491,13 +497,13 @@ msgid "" msgstr "" msgid "" -"Override this method in subclasses to customise the :meth:`~random." -"getrandbits` behaviour of :class:`!Random` instances." +"Override this method in subclasses to customise " +"the :meth:`~random.getrandbits` behaviour of :class:`!Random` instances." msgstr "" msgid "" -"Override this method in subclasses to customise the :meth:`~random." -"randbytes` behaviour of :class:`!Random` instances." +"Override this method in subclasses to customise " +"the :meth:`~random.randbytes` behaviour of :class:`!Random` instances." msgstr "" msgid "" @@ -505,8 +511,8 @@ msgid "" "numbers from sources provided by the operating system. Not available on all " "systems. Does not rely on software state, and sequences are not " "reproducible. Accordingly, the :meth:`seed` method has no effect and is " -"ignored. The :meth:`getstate` and :meth:`setstate` methods raise :exc:" -"`NotImplementedError` if called." +"ignored. The :meth:`getstate` and :meth:`setstate` methods " +"raise :exc:`NotImplementedError` if called." msgstr "" msgid "Notes on Reproducibility" @@ -690,11 +696,11 @@ msgid "" msgstr "" msgid "" -"`Economics Simulation `_ a simulation of a marketplace by `Peter Norvig `_ that shows effective use of many of the tools and distributions " -"provided by this module (gauss, uniform, sample, betavariate, choice, " -"triangular, and randrange)." +"`Economics Simulation `_ a simulation of a marketplace by `Peter Norvig `_ that shows effective use of many of the tools and " +"distributions provided by this module (gauss, uniform, sample, betavariate, " +"choice, triangular, and randrange)." msgstr "" msgid "" @@ -737,8 +743,8 @@ msgid "" "def random_combination_with_replacement(iterable, r):\n" " \"Choose r elements with replacement. Order the result to match the " "iterable.\"\n" -" # Result will be in set(itertools." -"combinations_with_replacement(iterable, r)).\n" +" # Result will be in " +"set(itertools.combinations_with_replacement(iterable, r)).\n" " pool = tuple(iterable)\n" " n = len(pool)\n" " indices = sorted(random.choices(range(n), k=r))\n" @@ -816,8 +822,8 @@ msgstr "" msgid "" "`Generating Pseudo-random Floating-Point Values `_ a paper by Allen B. Downey describing " -"ways to generate more fine-grained floats than normally generated by :func:`." -"random`." +"ways to generate more fine-grained floats than normally generated " +"by :func:`.random`." msgstr "" msgid "Command-line usage" @@ -844,8 +850,8 @@ msgid "" msgstr "" msgid "" -"Print a random floating-point number between 0 and N inclusive, using :meth:" -"`uniform`." +"Print a random floating-point number between 0 and N inclusive, " +"using :meth:`uniform`." msgstr "" msgid "If no options are given, the output depends on the input:" diff --git a/library/re.po b/library/re.po index a2672ba..07ed57c 100644 --- a/library/re.po +++ b/library/re.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,12 +34,12 @@ msgid "" msgstr "" msgid "" -"Both patterns and strings to be searched can be Unicode strings (:class:" -"`str`) as well as 8-bit strings (:class:`bytes`). However, Unicode strings " -"and 8-bit strings cannot be mixed: that is, you cannot match a Unicode " -"string with a bytes pattern or vice-versa; similarly, when asking for a " -"substitution, the replacement string must be of the same type as both the " -"pattern and the search string." +"Both patterns and strings to be searched can be Unicode strings " +"(:class:`str`) as well as 8-bit strings (:class:`bytes`). However, Unicode " +"strings and 8-bit strings cannot be mixed: that is, you cannot match a " +"Unicode string with a bytes pattern or vice-versa; similarly, when asking " +"for a substitution, the replacement string must be of the same type as both " +"the pattern and the search string." msgstr "" msgid "" @@ -131,6 +131,9 @@ msgid "" "``'a'`` characters." msgstr "" +msgid "Special characters" +msgstr "" + msgid "The special characters are:" msgstr "" @@ -159,10 +162,10 @@ msgid "" "string, and in :const:`MULTILINE` mode also matches before a newline. " "``foo`` matches both 'foo' and 'foobar', while the regular expression " "``foo$`` matches only 'foo'. More interestingly, searching for ``foo.$`` in " -"``'foo1\\nfoo2\\n'`` matches 'foo2' normally, but 'foo1' in :const:" -"`MULTILINE` mode; searching for a single ``$`` in ``'foo\\n'`` will find two " -"(empty) matches: one just before the newline, and one at the end of the " -"string." +"``'foo1\\nfoo2\\n'`` matches 'foo2' normally, but 'foo1' " +"in :const:`MULTILINE` mode; searching for a single ``$`` in ``'foo\\n'`` " +"will find two (empty) matches: one just before the newline, and one at the " +"end of the string." msgstr "" msgid "``*``" @@ -329,12 +332,12 @@ msgid "" msgstr "" msgid "" -"Characters that are not within a range can be matched by :dfn:" -"`complementing` the set. If the first character of the set is ``'^'``, all " -"the characters that are *not* in the set will be matched. For example, " -"``[^5]`` will match any character except ``'5'``, and ``[^^]`` will match " -"any character except ``'^'``. ``^`` has no special meaning if it's not the " -"first character in the set." +"Characters that are not within a range can be matched " +"by :dfn:`complementing` the set. If the first character of the set is " +"``'^'``, all the characters that are *not* in the set will be matched. For " +"example, ``[^5]`` will match any character except ``'5'``, and ``[^^]`` will " +"match any character except ``'^'``. ``^`` has no special meaning if it's " +"not the first character in the set." msgstr "" msgid "" @@ -481,13 +484,13 @@ msgid "" "Attempts to match ``...`` as if it was a separate regular expression, and if " "successful, continues to match the rest of the pattern following it. If the " "subsequent pattern fails to match, the stack can only be unwound to a point " -"*before* the ``(?>...)`` because once exited, the expression, known as an :" -"dfn:`atomic group`, has thrown away all stack points within itself. Thus, " -"``(?>.*).`` would never match anything because first the ``.*`` would match " -"all characters possible, then, having nothing left to match, the final ``.`` " -"would fail to match. Since there are no stack points saved in the Atomic " -"Group, and there is no stack point before it, the entire expression would " -"thus fail to match." +"*before* the ``(?>...)`` because once exited, the expression, known as " +"an :dfn:`atomic group`, has thrown away all stack points within itself. " +"Thus, ``(?>.*).`` would never match anything because first the ``.*`` would " +"match all characters possible, then, having nothing left to match, the final " +"``.`` would fail to match. Since there are no stack points saved in the " +"Atomic Group, and there is no stack point before it, the entire expression " +"would thus fail to match." msgstr "" msgid "``(?P...)``" @@ -590,8 +593,8 @@ msgid "" "length, meaning that ``abc`` or ``a|b`` are allowed, but ``a*`` and ``a{3,4}" "`` are not. Note that patterns which start with positive lookbehind " "assertions will not match at the beginning of the string being searched; you " -"will most likely want to use the :func:`search` function rather than the :" -"func:`match` function:" +"will most likely want to use the :func:`search` function rather than " +"the :func:`match` function:" msgstr "" msgid "This example looks for a word following a hyphen:" @@ -618,10 +621,10 @@ msgid "" "Will try to match with ``yes-pattern`` if the group with given *id* or " "*name* exists, and with ``no-pattern`` if it doesn't. ``no-pattern`` is " "optional and can be omitted. For example, ``(<)?(\\w+@\\w+(?:\\.\\w+)+)(?" -"(1)>|$)`` is a poor email matching pattern, which matches ``''`` as well as ``'user@host.com'``, but does not match ``''`` in their entirety (:func:`re.search` finds " -"only ``'user@host.com'`` in the former)." +"(1)>|$)`` is a poor email matching pattern, which matches " +"``''`` as well as ``'user@host.com'``, but does not match " +"``''`` in their entirety " +"(:func:`re.search` finds only ``'user@host.com'`` in the former)." msgstr "" msgid "" @@ -629,6 +632,9 @@ msgid "" "*name* can only contain bytes in the ASCII range (``b'\\x00'``-``b'\\x7f'``)." msgstr "" +msgid "Special sequences" +msgstr "" + msgid "" "The special sequences consist of ``'\\'`` and a character from the list " "below. If the ordinary character is not an ASCII digit or an ASCII letter, " @@ -670,9 +676,9 @@ msgstr "" msgid "" "The default word characters in Unicode (str) patterns are Unicode " -"alphanumerics and the underscore, but this can be changed by using the :py:" -"const:`~re.ASCII` flag. Word boundaries are determined by the current locale " -"if the :py:const:`~re.LOCALE` flag is used." +"alphanumerics and the underscore, but this can be changed by using " +"the :py:const:`~re.ASCII` flag. Word boundaries are determined by the " +"current locale if the :py:const:`~re.LOCALE` flag is used." msgstr "" msgid "" @@ -734,10 +740,10 @@ msgid "``\\s``" msgstr "" msgid "" -"Matches Unicode whitespace characters (as defined by :py:meth:`str." -"isspace`). This includes ``[ \\t\\n\\r\\f\\v]``, and also many other " -"characters, for example the non-breaking spaces mandated by typography rules " -"in many languages." +"Matches Unicode whitespace characters (as defined " +"by :py:meth:`str.isspace`). This includes ``[ \\t\\n\\r\\f\\v]``, and also " +"many other characters, for example the non-breaking spaces mandated by " +"typography rules in many languages." msgstr "" msgid "" @@ -785,8 +791,8 @@ msgstr "" msgid "" "Matches any character which is not a word character. This is the opposite of " -"``\\w``. By default, matches non-underscore (``_``) characters for which :py:" -"meth:`str.isalnum` returns ``False``." +"``\\w``. By default, matches non-underscore (``_``) characters for " +"which :py:meth:`str.isalnum` returns ``False``." msgstr "" msgid "Matches ``[^a-zA-Z0-9_]`` if the :py:const:`~re.ASCII` flag is used." @@ -809,6 +815,9 @@ msgstr "" msgid "The same as ``\\z``. For compatibility with old Python versions." msgstr "" +msgid "Standard escapes" +msgstr "" + msgid "" "Most of the :ref:`escape sequences ` supported by Python " "string literals are also accepted by the regular expression parser::" @@ -889,8 +898,9 @@ msgstr "" msgid "" "The :py:const:`~re.U` flag still exists for backward compatibility, but is " "redundant in Python 3 since matches are Unicode by default for ``str`` " -"patterns, and Unicode matching isn't allowed for bytes patterns. :py:const:" -"`~re.UNICODE` and the inline flag ``(?u)`` are similarly redundant." +"patterns, and Unicode matching isn't allowed for bytes " +"patterns. :py:const:`~re.UNICODE` and the inline flag ``(?u)`` are similarly " +"redundant." msgstr "" msgid "Display debug information about compiled expression." @@ -914,8 +924,8 @@ msgid "" "Note that when the Unicode patterns ``[a-z]`` or ``[A-Z]`` are used in " "combination with the :const:`IGNORECASE` flag, they will match the 52 ASCII " "letters and 4 additional non-ASCII letters: 'İ' (U+0130, Latin capital " -"letter I with dot above), 'ı' (U+0131, Latin small letter dotless i), " -"'ſ' (U+017F, Latin small letter long s) and 'K' (U+212A, Kelvin sign). If " +"letter I with dot above), 'ı' (U+0131, Latin small letter dotless i), 'ſ' " +"(U+017F, Latin small letter long s) and 'K' (U+212A, Kelvin sign). If " "the :py:const:`~re.ASCII` flag is used, only letters 'a' to 'z' and 'A' to " "'Z' are matched." msgstr "" @@ -1023,8 +1033,9 @@ msgstr "" msgid "" "Compile a regular expression pattern into a :ref:`regular expression object " -"`, which can be used for matching using its :func:`~Pattern." -"prefixmatch`, :func:`~Pattern.search`, and other methods, described below." +"`, which can be used for matching using " +"its :func:`~Pattern.prefixmatch`, :func:`~Pattern.search`, and other " +"methods, described below." msgstr "" msgid "" @@ -1054,18 +1065,18 @@ msgid "" msgstr "" msgid "" -"The compiled versions of the most recent patterns passed to :func:`re." -"compile` and the module-level matching functions are cached, so programs " -"that use only a few regular expressions at a time needn't worry about " -"compiling regular expressions." +"The compiled versions of the most recent patterns passed " +"to :func:`re.compile` and the module-level matching functions are cached, so " +"programs that use only a few regular expressions at a time needn't worry " +"about compiling regular expressions." msgstr "" msgid "" "Scan through *string* looking for the first location where the regular " -"expression *pattern* produces a match, and return a corresponding :class:" -"`~re.Match`. Return ``None`` if no position in the string matches the " -"pattern; note that this is different from finding a zero-length match at " -"some point in the string." +"expression *pattern* produces a match, and return a " +"corresponding :class:`~re.Match`. Return ``None`` if no position in the " +"string matches the pattern; note that this is different from finding a zero-" +"length match at some point in the string." msgstr "" msgid "" @@ -1086,9 +1097,9 @@ msgid "" msgstr "" msgid "" -"This function now has two names and has long been known as :func:`~re." -"match`. Use that name when you need to retain compatibility with older " -"Python versions." +"This function now has two names and has long been known " +"as :func:`~re.match`. Use that name when you need to retain compatibility " +"with older Python versions." msgstr "" msgid "" @@ -1096,8 +1107,8 @@ msgid "" "alternate :func:`~re.prefixmatch` name of this API which is more explicitly " "descriptive. Use it to better express intent. The norm in other languages " "and regular expression implementations is to use the term *match* to refer " -"to the behavior of what Python has always called :func:`~re.search`. See :" -"ref:`prefixmatch-vs-match`." +"to the behavior of what Python has always called :func:`~re.search`. " +"See :ref:`prefixmatch-vs-match`." msgstr "" msgid "" @@ -1227,8 +1238,8 @@ msgid "" "...\n" ">>> re.sub('-{1,2}', dashrepl, 'pro----gram-files')\n" "'pro--gram files'\n" -">>> re.sub(r'\\sAND\\s', ' & ', 'Baked Beans And Spam', flags=re." -"IGNORECASE)\n" +">>> re.sub(r'\\sAND\\s', ' & ', 'Baked Beans And Spam', " +"flags=re.IGNORECASE)\n" "'Baked Beans & Spam'" msgstr "" @@ -1376,8 +1387,8 @@ msgid "Compiled regular expression object returned by :func:`re.compile`." msgstr "" msgid "" -"Patterns are :ref:`generic ` over the type of string they handle (:" -"class:`str` or :class:`bytes`)." +"Patterns are :ref:`generic ` over the type of string they handle " +"(:class:`str` or :class:`bytes`)." msgstr "" msgid "" @@ -1430,8 +1441,8 @@ msgid "" msgstr "" msgid "" -"The optional *pos* and *endpos* parameters have the same meaning as for the :" -"meth:`~Pattern.search` method. ::" +"The optional *pos* and *endpos* parameters have the same meaning as for " +"the :meth:`~Pattern.search` method. ::" msgstr "" msgid "" @@ -1444,14 +1455,14 @@ msgid "" msgstr "" msgid "" -"If you want to locate a match anywhere in *string*, use :meth:`~Pattern." -"search` instead (see also :ref:`search-vs-match`)." +"If you want to locate a match anywhere in *string*, " +"use :meth:`~Pattern.search` instead (see also :ref:`search-vs-match`)." msgstr "" msgid "" -"This method now has two names and has long been known as :meth:`~Pattern." -"match`. Use that name when you need to retain compatibility with older " -"Python versions." +"This method now has two names and has long been known " +"as :meth:`~Pattern.match`. Use that name when you need to retain " +"compatibility with older Python versions." msgstr "" msgid "" @@ -1459,8 +1470,8 @@ msgid "" "alternate :meth:`~Pattern.prefixmatch` name of this API which is more " "explicitly descriptive. Use it to better express intent. The norm in other " "languages and regular expression implementations is to use the term *match* " -"to refer to the behavior of what Python has always called :meth:`~Pattern." -"search`. See :ref:`prefixmatch-vs-match`." +"to refer to the behavior of what Python has always " +"called :meth:`~Pattern.search`. See :ref:`prefixmatch-vs-match`." msgstr "" msgid "" @@ -1501,9 +1512,10 @@ msgid "Identical to the :func:`subn` function, using the compiled pattern." msgstr "" msgid "" -"The regex matching flags. This is a combination of the flags given to :func:" -"`.compile`, any ``(?...)`` inline flags in the pattern, and implicit flags " -"such as :py:const:`~re.UNICODE` if the pattern is a Unicode string." +"The regex matching flags. This is a combination of the flags given " +"to :func:`.compile`, any ``(?...)`` inline flags in the pattern, and " +"implicit flags such as :py:const:`~re.UNICODE` if the pattern is a Unicode " +"string." msgstr "" msgid "The number of capturing groups in the pattern." @@ -1527,9 +1539,10 @@ msgid "Match objects" msgstr "" msgid "" -"Match objects always have a boolean value of ``True``. Since :meth:`~Pattern." -"match` and :meth:`~Pattern.search` return ``None`` when there is no match, " -"you can test whether there was a match with a simple ``if`` statement::" +"Match objects always have a boolean value of ``True``. " +"Since :meth:`~Pattern.match` and :meth:`~Pattern.search` return ``None`` " +"when there is no match, you can test whether there was a match with a simple " +"``if`` statement::" msgstr "" msgid "" @@ -1589,8 +1602,8 @@ msgstr "" msgid "" "If the regular expression uses the ``(?P...)`` syntax, the *groupN* " "arguments may also be strings identifying groups by their group name. If a " -"string argument is not used as a group name in the pattern, an :exc:" -"`IndexError` exception is raised." +"string argument is not used as a group name in the pattern, " +"an :exc:`IndexError` exception is raised." msgstr "" msgid "A moderately complicated example::" @@ -1707,9 +1720,9 @@ msgstr "" msgid "" "Note that ``m.start(group)`` will equal ``m.end(group)`` if *group* matched " -"a null string. For example, after ``m = re.search('b(c?)', 'cba')``, ``m." -"start(0)`` is 1, ``m.end(0)`` is 2, ``m.start(1)`` and ``m.end(1)`` are both " -"2, and ``m.start(2)`` raises an :exc:`IndexError` exception." +"a null string. For example, after ``m = re.search('b(c?)', 'cba')``, " +"``m.start(0)`` is 1, ``m.end(0)`` is 2, ``m.start(1)`` and ``m.end(1)`` are " +"both 2, and ``m.start(2)`` raises an :exc:`IndexError` exception." msgstr "" msgid "An example that will remove *remove_this* from email addresses::" @@ -1729,15 +1742,16 @@ msgid "" msgstr "" msgid "" -"The value of *pos* which was passed to the :meth:`~Pattern.search` or :meth:" -"`~Pattern.match` method of a :ref:`regex object `. This is the " -"index into the string at which the RE engine started looking for a match." +"The value of *pos* which was passed to the :meth:`~Pattern.search` " +"or :meth:`~Pattern.match` method of a :ref:`regex object `. " +"This is the index into the string at which the RE engine started looking for " +"a match." msgstr "" msgid "" -"The value of *endpos* which was passed to the :meth:`~Pattern.search` or :" -"meth:`~Pattern.match` method of a :ref:`regex object `. This is " -"the index into the string beyond which the RE engine will not go." +"The value of *endpos* which was passed to the :meth:`~Pattern.search` " +"or :meth:`~Pattern.match` method of a :ref:`regex object `. " +"This is the index into the string beyond which the RE engine will not go." msgstr "" msgid "" @@ -1754,8 +1768,9 @@ msgid "" msgstr "" msgid "" -"The :ref:`regular expression object ` whose :meth:`~Pattern." -"match` or :meth:`~Pattern.search` method produced this match instance." +"The :ref:`regular expression object ` " +"whose :meth:`~Pattern.match` or :meth:`~Pattern.search` method produced this " +"match instance." msgstr "" msgid "The string passed to :meth:`~Pattern.match` or :meth:`~Pattern.search`." @@ -1820,8 +1835,8 @@ msgid "" msgstr "" msgid "" -"To find out what card the pair consists of, one could use the :meth:`~Match." -"group` method of the match object in the following manner::" +"To find out what card the pair consists of, one could use " +"the :meth:`~Match.group` method of the match object in the following manner::" msgstr "" msgid "" @@ -1846,9 +1861,9 @@ msgstr "" msgid "" "Python does not currently have an equivalent to :c:func:`!scanf`. Regular " -"expressions are generally more powerful, though also more verbose, than :c:" -"func:`!scanf` format strings. The table below offers some more-or-less " -"equivalent mappings between :c:func:`!scanf` format tokens and regular " +"expressions are generally more powerful, though also more verbose, " +"than :c:func:`!scanf` format strings. The table below offers some more-or-" +"less equivalent mappings between :c:func:`!scanf` format tokens and regular " "expressions." msgstr "" @@ -2340,6 +2355,9 @@ msgstr "" msgid "(?:" msgstr "" +msgid "(?>" +msgstr "" + msgid "(?P<" msgstr "" diff --git a/library/readline.po b/library/readline.po index 1f3d187..8231ced 100644 --- a/library/readline.po +++ b/library/readline.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,8 +32,8 @@ msgid "" "This module can be used directly, or via the :mod:`rlcompleter` module, " "which supports completion of Python identifiers at the interactive prompt. " "Settings made using this module affect the behaviour of both the " -"interpreter's interactive prompt and the prompts offered by the built-in :" -"func:`input` function." +"interpreter's interactive prompt and the prompts offered by the built-" +"in :func:`input` function." msgstr "" msgid "" @@ -67,8 +68,8 @@ msgstr "" msgid "" "The configuration file for ``editline`` is different from that of GNU " -"readline. If you programmatically load configuration strings you can use :" -"data:`backend` to determine which library is being used." +"readline. If you programmatically load configuration strings you can " +"use :data:`backend` to determine which library is being used." msgstr "" msgid "" @@ -101,8 +102,8 @@ msgid "The following functions relate to the init file and user configuration:" msgstr "" msgid "" -"Execute the init line provided in the *string* argument. This calls :c:func:" -"`!rl_parse_and_bind` in the underlying library." +"Execute the init line provided in the *string* argument. This " +"calls :c:func:`!rl_parse_and_bind` in the underlying library." msgstr "" msgid "" @@ -128,8 +129,9 @@ msgid "" msgstr "" msgid "" -"Insert text into the line buffer at the cursor position. This calls :c:func:" -"`!rl_insert_text` in the underlying library, but ignores the return value." +"Insert text into the line buffer at the cursor position. This " +"calls :c:func:`!rl_insert_text` in the underlying library, but ignores the " +"return value." msgstr "" msgid "" @@ -160,17 +162,17 @@ msgstr "" msgid "" "Append the last *nelements* items of history to a file. The default " -"filename is :file:`~/.history`. The file must already exist. This calls :c:" -"func:`!append_history` in the underlying library. This function only exists " -"if Python was compiled for a version of the library that supports it. It " -"raises an :ref:`auditing event ` ``open`` with the file name if " -"given and :code:`\"~/.history\"` otherwise." +"filename is :file:`~/.history`. The file must already exist. This " +"calls :c:func:`!append_history` in the underlying library. This function " +"only exists if Python was compiled for a version of the library that " +"supports it. It raises an :ref:`auditing event ` ``open`` with the " +"file name if given and :code:`\"~/.history\"` otherwise." msgstr "" msgid "" -"Set or return the desired number of lines to save in the history file. The :" -"func:`write_history_file` function uses this value to truncate the history " -"file, by calling :c:func:`!history_truncate_file` in the underlying " +"Set or return the desired number of lines to save in the history file. " +"The :func:`write_history_file` function uses this value to truncate the " +"history file, by calling :c:func:`!history_truncate_file` in the underlying " "library. Negative values imply unlimited history file size." msgstr "" @@ -344,8 +346,8 @@ msgid "" msgstr "" msgid "" -"This code is actually automatically run when Python is run in :ref:" -"`interactive mode ` (see :ref:`rlcompleter-config`)." +"This code is actually automatically run when Python is run " +"in :ref:`interactive mode ` (see :ref:`rlcompleter-config`)." msgstr "" msgid "" @@ -406,6 +408,6 @@ msgstr "" msgid "" "The new :term:`REPL` introduced in version 3.13 doesn't support readline. " -"However, readline can still be used by setting the :envvar:" -"`PYTHON_BASIC_REPL` environment variable." +"However, readline can still be used by setting " +"the :envvar:`PYTHON_BASIC_REPL` environment variable." msgstr "" diff --git a/library/removed.po b/library/removed.po index 4d91ca8..0d19c2b 100644 --- a/library/removed.po +++ b/library/removed.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/reprlib.po b/library/reprlib.po index 7b31f64..989da0e 100644 --- a/library/reprlib.po +++ b/library/reprlib.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -70,9 +71,10 @@ msgid "Allow attributes to be set via keyword arguments." msgstr "" msgid "" -"This is an instance of :class:`Repr` which is used to provide the :func:`." -"repr` function described below. Changing the attributes of this object will " -"affect the size limits used by :func:`.repr` and the Python debugger." +"This is an instance of :class:`Repr` which is used to provide " +"the :func:`.repr` function described below. Changing the attributes of this " +"object will affect the size limits used by :func:`.repr` and the Python " +"debugger." msgstr "" msgid "" @@ -225,18 +227,18 @@ msgstr "" msgid "" "Formatting methods for specific types are implemented as methods with a name " -"based on the type name. In the method name, **TYPE** is replaced by ``'_'." -"join(type(obj).__name__.split())``. Dispatch to these methods is handled by :" -"meth:`repr1`. Type-specific methods which need to recursively format a value " -"should call ``self.repr1(subobj, level - 1)``." +"based on the type name. In the method name, **TYPE** is replaced by " +"``'_'.join(type(obj).__name__.split())``. Dispatch to these methods is " +"handled by :meth:`repr1`. Type-specific methods which need to recursively " +"format a value should call ``self.repr1(subobj, level - 1)``." msgstr "" msgid "Subclassing Repr Objects" msgstr "" msgid "" -"The use of dynamic dispatching by :meth:`Repr.repr1` allows subclasses of :" -"class:`Repr` to add support for additional built-in object types or to " +"The use of dynamic dispatching by :meth:`Repr.repr1` allows subclasses " +"of :class:`Repr` to add support for additional built-in object types or to " "modify the handling of types already supported. This example shows how " "special support for file objects could be added:" msgstr "" diff --git a/library/resource.po b/library/resource.po index 2a40874..85e7fe5 100644 --- a/library/resource.po +++ b/library/resource.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -78,8 +78,8 @@ msgstr "" msgid "" "Constants used to represent the soft and hard limit values if they cannot be " -"represented in the ``rlim_t`` value in C. Can be equal to :data:" -"`RLIM_INFINITY`." +"represented in the ``rlim_t`` value in C. Can be equal " +"to :data:`RLIM_INFINITY`." msgstr "" msgid "" @@ -99,10 +99,10 @@ msgid "" "Raises :exc:`ValueError` if an invalid resource is specified, if the new " "soft limit exceeds the hard limit, or if a process tries to raise its hard " "limit. Specifying a limit of :const:`~resource.RLIM_INFINITY` when the hard " -"or system limit for that resource is not unlimited will result in a :exc:" -"`ValueError`. A process with the effective UID of super-user can request " -"any valid limit value, including unlimited, but :exc:`ValueError` will still " -"be raised if the requested limit exceeds the system imposed limit." +"or system limit for that resource is not unlimited will result in " +"a :exc:`ValueError`. A process with the effective UID of super-user can " +"request any valid limit value, including unlimited, but :exc:`ValueError` " +"will still be raised if the requested limit exceeds the system imposed limit." msgstr "" msgid "" @@ -133,9 +133,9 @@ msgid "" msgstr "" msgid "" -"Raises :exc:`ProcessLookupError` when *pid* can't be found and :exc:" -"`PermissionError` when the user doesn't have ``CAP_SYS_RESOURCE`` for the " -"process." +"Raises :exc:`ProcessLookupError` when *pid* can't be found " +"and :exc:`PermissionError` when the user doesn't have ``CAP_SYS_RESOURCE`` " +"for the process." msgstr "" msgid "" @@ -234,9 +234,9 @@ msgstr "" msgid "" "The maximum size (in bytes) of the swap space that may be reserved or used " "by all of this user id's processes. This limit is enforced only if bit 1 of " -"the vm.overcommit sysctl is set. Please see `tuning(7) `__ for a complete description of " -"this sysctl." +"the vm.overcommit sysctl is set. Please see `tuning(7) `__ for a complete " +"description of this sysctl." msgstr "" msgid "The maximum number of pseudo-terminals created by this user id." @@ -272,8 +272,8 @@ msgstr "" msgid "" "This function returns an object that describes the resources consumed by " "either the current process or its children, as specified by the *who* " -"parameter. The *who* parameter should be specified using one of the :const:" -"`!RUSAGE_\\*` constants described below." +"parameter. The *who* parameter should be specified using one of " +"the :const:`!RUSAGE_\\*` constants described below." msgstr "" msgid "A simple example::" @@ -310,9 +310,9 @@ msgid "" "The fields :attr:`!ru_utime` and :attr:`!ru_stime` of the return value are " "floating-point values representing the amount of time spent executing in " "user mode and the amount of time spent executing in system mode, " -"respectively. The remaining values are integers. Consult the :manpage:" -"`getrusage(2)` man page for detailed information about these values. A brief " -"summary is presented here:" +"respectively. The remaining values are integers. Consult " +"the :manpage:`getrusage(2)` man page for detailed information about these " +"values. A brief summary is presented here:" msgstr "" msgid "Index" @@ -480,9 +480,9 @@ msgid "" msgstr "" msgid "" -"The following :const:`!RUSAGE_\\*` symbols are passed to the :func:" -"`getrusage` function to specify which processes information should be " -"provided for." +"The following :const:`!RUSAGE_\\*` symbols are passed to " +"the :func:`getrusage` function to specify which processes information should " +"be provided for." msgstr "" msgid "" diff --git a/library/rlcompleter.po b/library/rlcompleter.po index 563a751..65dc47d 100644 --- a/library/rlcompleter.po +++ b/library/rlcompleter.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,19 +49,19 @@ msgid "" ">>> import readline\n" ">>> readline.parse_and_bind(\"tab: complete\")\n" ">>> readline. \n" -"readline.__doc__ readline.get_line_buffer( readline." -"read_init_file(\n" -"readline.__file__ readline.insert_text( readline." -"set_completer(\n" +"readline.__doc__ " +"readline.get_line_buffer( readline.read_init_file(\n" +"readline.__file__ " +"readline.insert_text( readline.set_completer(\n" "readline.__name__ readline.parse_and_bind(\n" ">>> readline." msgstr "" msgid "" -"The :mod:`!rlcompleter` module is designed for use with Python's :ref:" -"`interactive mode `. Unless Python is run with the :option:" -"`-S` option, the module is automatically imported and configured (see :ref:" -"`rlcompleter-config`)." +"The :mod:`!rlcompleter` module is designed for use with " +"Python's :ref:`interactive mode `. Unless Python is run " +"with the :option:`-S` option, the module is automatically imported and " +"configured (see :ref:`rlcompleter-config`)." msgstr "" msgid "" @@ -83,8 +83,9 @@ msgstr "" msgid "" "If called for *text* that doesn't include a period character (``'.'``), it " -"will complete from names currently defined in :mod:`__main__`, :mod:" -"`builtins` and keywords (as defined by the :mod:`keyword` module)." +"will complete from names currently defined " +"in :mod:`__main__`, :mod:`builtins` and keywords (as defined by " +"the :mod:`keyword` module)." msgstr "" msgid "" diff --git a/library/runpy.po b/library/runpy.po index 1b1b2ff..1f17c51 100644 --- a/library/runpy.po +++ b/library/runpy.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -69,8 +69,8 @@ msgid "" "The optional dictionary argument *init_globals* may be used to pre-populate " "the module's globals dictionary before the code is executed. *init_globals* " "will not be modified. If any of the special global variables below are " -"defined in *init_globals*, those definitions are overridden by :func:" -"`run_module`." +"defined in *init_globals*, those definitions are overridden " +"by :func:`run_module`." msgstr "" msgid "" @@ -82,15 +82,15 @@ msgid "" msgstr "" msgid "" -"``__name__`` is set to *run_name* if this optional argument is not :const:" -"`None`, to ``mod_name + '.__main__'`` if the named module is a package and " -"to the *mod_name* argument otherwise." +"``__name__`` is set to *run_name* if this optional argument is " +"not :const:`None`, to ``mod_name + '.__main__'`` if the named module is a " +"package and to the *mod_name* argument otherwise." msgstr "" msgid "" "``__spec__`` will be set appropriately for the *actually* imported module " -"(that is, ``__spec__.name`` will always be *mod_name* or ``mod_name + '." -"__main__'``, never *run_name*)." +"(that is, ``__spec__.name`` will always be *mod_name* or ``mod_name + " +"'.__main__'``, never *run_name*)." msgstr "" msgid "" @@ -100,10 +100,10 @@ msgstr "" msgid "" "If the argument *alter_sys* is supplied and evaluates to :const:`True`, then " -"``sys.argv[0]`` is updated with the value of ``__file__`` and ``sys." -"modules[__name__]`` is updated with a temporary module object for the module " -"being executed. Both ``sys.argv[0]`` and ``sys.modules[__name__]`` are " -"restored to their original values before the function returns." +"``sys.argv[0]`` is updated with the value of ``__file__`` and " +"``sys.modules[__name__]`` is updated with a temporary module object for the " +"module being executed. Both ``sys.argv[0]`` and ``sys.modules[__name__]`` " +"are restored to their original values before the function returns." msgstr "" msgid "" @@ -128,8 +128,8 @@ msgstr "" msgid "" "Updated to take advantage of the module spec feature added by :pep:`451`. " "This allows ``__cached__`` to be set correctly for modules run this way, as " -"well as ensuring the real module name is always accessible as ``__spec__." -"name``." +"well as ensuring the real module name is always accessible as " +"``__spec__.name``." msgstr "" msgid "" @@ -137,7 +137,7 @@ msgid "" "deprecated. See :class:`~importlib.machinery.ModuleSpec` for alternatives." msgstr "" -msgid "``__cached__`` is no longer set." +msgid "The global variable ``__cached__`` is no longer set." msgstr "" msgid "" @@ -162,20 +162,20 @@ msgid "" "The optional dictionary argument *init_globals* may be used to pre-populate " "the module's globals dictionary before the code is executed. *init_globals* " "will not be modified. If any of the special global variables below are " -"defined in *init_globals*, those definitions are overridden by :func:" -"`run_path`." +"defined in *init_globals*, those definitions are overridden " +"by :func:`run_path`." msgstr "" msgid "" -"``__name__`` is set to *run_name* if this optional argument is not :const:" -"`None` and to ``''`` otherwise." +"``__name__`` is set to *run_name* if this optional argument is " +"not :const:`None` and to ``''`` otherwise." msgstr "" msgid "" "If *file_path* directly references a script file (whether as source or as " "precompiled byte code), then ``__file__`` will be set to *file_path*, and " -"``__spec__``, ``__loader__`` and ``__package__`` will all be set to :const:" -"`None`." +"``__spec__``, ``__loader__`` and ``__package__`` will all be set " +"to :const:`None`." msgstr "" msgid "" @@ -187,9 +187,9 @@ msgid "" msgstr "" msgid "" -"A number of alterations are also made to the :mod:`sys` module. Firstly, :" -"data:`sys.path` may be altered as described above. ``sys.argv[0]`` is " -"updated with the value of *file_path* and ``sys.modules[__name__]`` is " +"A number of alterations are also made to the :mod:`sys` module. " +"Firstly, :data:`sys.path` may be altered as described above. ``sys.argv[0]`` " +"is updated with the value of *file_path* and ``sys.modules[__name__]`` is " "updated with a temporary module object for the module being executed. All " "modifications to items in :mod:`sys` are reverted before the function " "returns." diff --git a/library/sched.po b/library/sched.po index 02ff8bf..216dc8f 100644 --- a/library/sched.po +++ b/library/sched.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/secrets.po b/library/secrets.po index 6a14ac7..0d3de56 100644 --- a/library/secrets.po +++ b/library/secrets.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -145,8 +145,8 @@ msgstr "" msgid "" "Return ``True`` if strings or :term:`bytes-like objects ` " "*a* and *b* are equal, otherwise ``False``, using a \"constant-time " -"compare\" to reduce the risk of `timing attacks `__. " +"compare\" to reduce the risk of `timing attacks `__. " "See :func:`hmac.compare_digest` for additional details." msgstr "" diff --git a/library/security_warnings.po b/library/security_warnings.po index 1993a00..bfa7859 100644 --- a/library/security_warnings.po +++ b/library/security_warnings.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,8 +25,8 @@ msgid "The following modules have specific security considerations:" msgstr "" msgid "" -":mod:`base64`: :ref:`base64 security considerations ` in :" -"rfc:`4648`" +":mod:`base64`: :ref:`base64 security considerations ` " +"in :rfc:`4648`" msgstr "" msgid "" @@ -87,9 +87,9 @@ msgstr "" msgid "" "The :option:`-I` command line option can be used to run Python in isolated " -"mode. When it cannot be used, the :option:`-P` option or the :envvar:" -"`PYTHONSAFEPATH` environment variable can be used to not prepend a " -"potentially unsafe path to :data:`sys.path` such as the current directory, " +"mode. When it cannot be used, the :option:`-P` option or " +"the :envvar:`PYTHONSAFEPATH` environment variable can be used to not prepend " +"a potentially unsafe path to :data:`sys.path` such as the current directory, " "the script's directory or an empty string." msgstr "" diff --git a/library/select.po b/library/select.po index 15a1ca5..d02469c 100644 --- a/library/select.po +++ b/library/select.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,11 +28,11 @@ msgstr "" msgid "" "This module provides access to the :c:func:`!select` and :c:func:`!poll` " "functions available in most operating systems, :c:func:`!devpoll` available " -"on Solaris and derivatives, :c:func:`!epoll` available on Linux 2.5+ and :c:" -"func:`!kqueue` available on most BSD. Note that on Windows, it only works " -"for sockets; on other operating systems, it also works for other file types " -"(in particular, on Unix, it works on pipes). It cannot be used on regular " -"files to determine whether a file has grown since it was last read." +"on Solaris and derivatives, :c:func:`!epoll` available on Linux 2.5+ " +"and :c:func:`!kqueue` available on most BSD. Note that on Windows, it only " +"works for sockets; on other operating systems, it also works for other file " +"types (in particular, on Unix, it works on pipes). It cannot be used on " +"regular files to determine whether a file has grown since it was last read." msgstr "" msgid "" @@ -66,9 +66,10 @@ msgstr "" msgid "" ":c:func:`!devpoll` objects are linked to the number of file descriptors " -"allowed at the time of instantiation. If your program reduces this value, :c:" -"func:`!devpoll` will fail. If your program increases this value, :c:func:`!" -"devpoll` may return an incomplete list of active file descriptors." +"allowed at the time of instantiation. If your program reduces this " +"value, :c:func:`!devpoll` will fail. If your program increases this " +"value, :c:func:`!devpoll` may return an incomplete list of active file " +"descriptors." msgstr "" msgid "The new file descriptor is :ref:`non-inheritable `." @@ -101,9 +102,9 @@ msgid "" msgstr "" msgid "" -"``epoll`` objects support the context management protocol: when used in a :" -"keyword:`with` statement, the new file descriptor is automatically closed at " -"the end of the block." +"``epoll`` objects support the context management protocol: when used in " +"a :keyword:`with` statement, the new file descriptor is automatically closed " +"at the end of the block." msgstr "" msgid "Added the *flags* parameter." @@ -175,11 +176,11 @@ msgstr "" msgid "" "Among the acceptable object types in the iterables are Python :term:`file " -"objects ` (e.g. ``sys.stdin``, or objects returned by :func:" -"`open` or :func:`os.popen`), socket objects returned by :func:`socket." -"socket`. You may also define a :dfn:`wrapper` class yourself, as long as it " -"has an appropriate :meth:`~io.IOBase.fileno` method (that really returns a " -"file descriptor, not just a random integer)." +"objects ` (e.g. ``sys.stdin``, or objects returned " +"by :func:`open` or :func:`os.popen`), socket objects returned " +"by :func:`socket.socket`. You may also define a :dfn:`wrapper` class " +"yourself, as long as it has an appropriate :meth:`~io.IOBase.fileno` method " +"(that really returns a file descriptor, not just a random integer)." msgstr "" msgid "" @@ -200,9 +201,10 @@ msgstr "" msgid "" "The minimum number of bytes which can be written without blocking to a pipe " -"when the pipe has been reported as ready for writing by :func:`~select." -"select`, :func:`!poll` or another interface in this module. This doesn't " -"apply to other kinds of file-like objects such as sockets." +"when the pipe has been reported as ready for writing " +"by :func:`~select.select`, :func:`!poll` or another interface in this " +"module. This doesn't apply to other kinds of file-like objects such as " +"sockets." msgstr "" msgid "This value is guaranteed by POSIX to be at least 512." @@ -231,18 +233,18 @@ msgid "Return the file descriptor number of the polling object." msgstr "" msgid "" -"Register a file descriptor with the polling object. Future calls to the :" -"meth:`poll` method will then check whether the file descriptor has any " -"pending I/O events. *fd* can be either an integer, or an object with a :" -"meth:`~io.IOBase.fileno` method that returns an integer. File objects " +"Register a file descriptor with the polling object. Future calls to " +"the :meth:`poll` method will then check whether the file descriptor has any " +"pending I/O events. *fd* can be either an integer, or an object with " +"a :meth:`~io.IOBase.fileno` method that returns an integer. File objects " "implement :meth:`!fileno`, so they can also be used as the argument." msgstr "" msgid "" "*eventmask* is an optional bitmask describing the type of events you want to " "check for. The constants are the same as with :c:func:`!poll` object. The " -"default value is a combination of the constants :const:`POLLIN`, :const:" -"`POLLPRI`, and :const:`POLLOUT`." +"default value is a combination of the " +"constants :const:`POLLIN`, :const:`POLLPRI`, and :const:`POLLOUT`." msgstr "" msgid "" @@ -257,9 +259,9 @@ msgid "" msgstr "" msgid "" -"Remove a file descriptor being tracked by a polling object. Just like the :" -"meth:`register` method, *fd* can be an integer or an object with a :meth:" -"`~io.IOBase.fileno` method that returns an integer." +"Remove a file descriptor being tracked by a polling object. Just like " +"the :meth:`register` method, *fd* can be an integer or an object with " +"a :meth:`~io.IOBase.fileno` method that returns an integer." msgstr "" msgid "" @@ -271,13 +273,14 @@ msgid "" "Polls the set of registered file descriptors, and returns a possibly empty " "list containing ``(fd, event)`` 2-tuples for the descriptors that have " "events or errors to report. *fd* is the file descriptor, and *event* is a " -"bitmask with bits set for the reported events for that descriptor --- :const:" -"`POLLIN` for waiting input, :const:`POLLOUT` to indicate that the descriptor " -"can be written to, and so forth. An empty list indicates that the call timed " -"out and no file descriptors had any events to report. If *timeout* is given, " -"it specifies the length of time in milliseconds which the system will wait " -"for events before returning. If *timeout* is omitted, -1, or :const:`None`, " -"the call will block until there is an event for this poll object." +"bitmask with bits set for the reported events for that descriptor " +"--- :const:`POLLIN` for waiting input, :const:`POLLOUT` to indicate that the " +"descriptor can be written to, and so forth. An empty list indicates that the " +"call timed out and no file descriptors had any events to report. If " +"*timeout* is given, it specifies the length of time in milliseconds which " +"the system will wait for events before returning. If *timeout* is omitted, " +"-1, or :const:`None`, the call will block until there is an event for this " +"poll object." msgstr "" msgid "Edge and level trigger polling (epoll) objects" @@ -446,9 +449,10 @@ msgstr "" msgid "" "*eventmask* is an optional bitmask describing the type of events you want to " -"check for, and can be a combination of the constants :const:`POLLIN`, :const:" -"`POLLPRI`, and :const:`POLLOUT`, described in the table below. If not " -"specified, the default value used will check for all 3 types of events." +"check for, and can be a combination of the " +"constants :const:`POLLIN`, :const:`POLLPRI`, and :const:`POLLOUT`, described " +"in the table below. If not specified, the default value used will check for " +"all 3 types of events." msgstr "" msgid ":const:`POLLIN`" @@ -503,26 +507,27 @@ msgstr "" msgid "" "Modifies an already registered fd. This has the same effect as " "``register(fd, eventmask)``. Attempting to modify a file descriptor that " -"was never registered causes an :exc:`OSError` exception with errno :const:" -"`ENOENT` to be raised." +"was never registered causes an :exc:`OSError` exception with " +"errno :const:`ENOENT` to be raised." msgstr "" msgid "" -"Attempting to remove a file descriptor that was never registered causes a :" -"exc:`KeyError` exception to be raised." +"Attempting to remove a file descriptor that was never registered causes " +"a :exc:`KeyError` exception to be raised." msgstr "" msgid "" "Polls the set of registered file descriptors, and returns a possibly empty " "list containing ``(fd, event)`` 2-tuples for the descriptors that have " "events or errors to report. *fd* is the file descriptor, and *event* is a " -"bitmask with bits set for the reported events for that descriptor --- :const:" -"`POLLIN` for waiting input, :const:`POLLOUT` to indicate that the descriptor " -"can be written to, and so forth. An empty list indicates that the call timed " -"out and no file descriptors had any events to report. If *timeout* is given, " -"it specifies the length of time in milliseconds which the system will wait " -"for events before returning. If *timeout* is omitted, negative, or :const:" -"`None`, the call will block until there is an event for this poll object." +"bitmask with bits set for the reported events for that descriptor " +"--- :const:`POLLIN` for waiting input, :const:`POLLOUT` to indicate that the " +"descriptor can be written to, and so forth. An empty list indicates that the " +"call timed out and no file descriptors had any events to report. If " +"*timeout* is given, it specifies the length of time in milliseconds which " +"the system will wait for events before returning. If *timeout* is omitted, " +"negative, or :const:`None`, the call will block until there is an event for " +"this poll object." msgstr "" msgid "" @@ -597,7 +602,7 @@ msgid ":const:`KQ_FILTER_VNODE`" msgstr "" msgid "" -"Returns when one or more of the requested events watched in *fflag* occurs." +"Returns when one or more of the requested events watched in *fflags* occurs." msgstr "" msgid ":const:`KQ_FILTER_PROC`" diff --git a/library/selectors.po b/library/selectors.po index 298c243..e8dc029 100644 --- a/library/selectors.po +++ b/library/selectors.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,10 +39,11 @@ msgstr "" msgid "" "It defines a :class:`BaseSelector` abstract base class, along with several " -"concrete implementations (:class:`KqueueSelector`, :class:" -"`EpollSelector`...), that can be used to wait for I/O readiness notification " -"on multiple file objects. In the following, \"file object\" refers to any " -"object with a :meth:`~io.IOBase.fileno` method, or a raw file descriptor. " +"concrete implementations " +"(:class:`KqueueSelector`, :class:`EpollSelector`...), that can be used to " +"wait for I/O readiness notification on multiple file objects. In the " +"following, \"file object\" refers to any object with " +"a :meth:`~io.IOBase.fileno` method, or a raw file descriptor. " "See :term:`file object`." msgstr "" @@ -131,11 +132,12 @@ msgid "" "A :class:`BaseSelector` is used to wait for I/O event readiness on multiple " "file objects. It supports file stream registration, unregistration, and a " "method to wait for I/O events on those streams, with an optional timeout. " -"It's an abstract base class, so cannot be instantiated. Use :class:" -"`DefaultSelector` instead, or one of :class:`SelectSelector`, :class:" -"`KqueueSelector` etc. if you want to specifically use an implementation, and " -"your platform supports it. :class:`BaseSelector` and its concrete " -"implementations support the :term:`context manager` protocol." +"It's an abstract base class, so cannot be instantiated. " +"Use :class:`DefaultSelector` instead, or one " +"of :class:`SelectSelector`, :class:`KqueueSelector` etc. if you want to " +"specifically use an implementation, and your platform supports " +"it. :class:`BaseSelector` and its concrete implementations support " +"the :term:`context manager` protocol." msgstr "" msgid "Register a file object for selection, monitoring it for I/O events." @@ -148,9 +150,9 @@ msgid "" msgstr "" msgid "" -"This returns a new :class:`SelectorKey` instance, or raises a :exc:" -"`ValueError` in case of invalid event mask or file descriptor, or :exc:" -"`KeyError` if the file object is already registered." +"This returns a new :class:`SelectorKey` instance, or raises " +"a :exc:`ValueError` in case of invalid event mask or file descriptor, " +"or :exc:`KeyError` if the file object is already registered." msgstr "" msgid "" @@ -162,10 +164,10 @@ msgid "*fileobj* must be a file object previously registered." msgstr "" msgid "" -"This returns the associated :class:`SelectorKey` instance, or raises a :exc:" -"`KeyError` if *fileobj* is not registered. It will raise :exc:`ValueError` " -"if *fileobj* is invalid (e.g. it has no ``fileno()`` method or its " -"``fileno()`` method has an invalid return value)." +"This returns the associated :class:`SelectorKey` instance, or raises " +"a :exc:`KeyError` if *fileobj* is not registered. It will " +"raise :exc:`ValueError` if *fileobj* is invalid (e.g. it has no ``fileno()`` " +"method or its ``fileno()`` method has an invalid return value)." msgstr "" msgid "Change a registered file object's monitored events or attached data." @@ -178,9 +180,9 @@ msgid "" msgstr "" msgid "" -"This returns a new :class:`SelectorKey` instance, or raises a :exc:" -"`ValueError` in case of invalid event mask or file descriptor, or :exc:" -"`KeyError` if the file object is not registered." +"This returns a new :class:`SelectorKey` instance, or raises " +"a :exc:`ValueError` in case of invalid event mask or file descriptor, " +"or :exc:`KeyError` if the file object is not registered." msgstr "" msgid "" @@ -265,16 +267,16 @@ msgid ":func:`select.devpoll`-based selector." msgstr "" msgid "" -"This returns the file descriptor used by the underlying :func:`select." -"devpoll` object." +"This returns the file descriptor used by the " +"underlying :func:`select.devpoll` object." msgstr "" msgid ":func:`select.kqueue`-based selector." msgstr "" msgid "" -"This returns the file descriptor used by the underlying :func:`select." -"kqueue` object." +"This returns the file descriptor used by the " +"underlying :func:`select.kqueue` object." msgstr "" msgid "Examples" diff --git a/library/shelve.po b/library/shelve.po index c4be089..a318cd0 100644 --- a/library/shelve.po +++ b/library/shelve.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,8 +43,8 @@ msgid "" "for the underlying database. As a side-effect, an extension may be added to " "the filename and more than one file may be created. By default, the " "underlying database file is opened for reading and writing. The optional " -"*flag* parameter has the same interpretation as the *flag* parameter of :" -"func:`dbm.open`." +"*flag* parameter has the same interpretation as the *flag* parameter " +"of :func:`dbm.open`." msgstr "" msgid "" @@ -57,25 +58,25 @@ msgid "" "dictionary entry is modified. By default modified objects are written " "*only* when assigned to the shelf (see :ref:`shelve-example`). If the " "optional *writeback* parameter is set to ``True``, all entries accessed are " -"also cached in memory, and written back on :meth:`~Shelf.sync` and :meth:" -"`~Shelf.close`; this can make it handier to mutate mutable entries in the " -"persistent dictionary, but, if many entries are accessed, it can consume " -"vast amounts of memory for the cache, and it can make the close operation " -"very slow since all accessed entries are written back (there is no way to " -"determine which accessed entries are mutable, nor which ones were actually " -"mutated)." +"also cached in memory, and written back on :meth:`~Shelf.sync` " +"and :meth:`~Shelf.close`; this can make it handier to mutate mutable entries " +"in the persistent dictionary, but, if many entries are accessed, it can " +"consume vast amounts of memory for the cache, and it can make the close " +"operation very slow since all accessed entries are written back (there is no " +"way to determine which accessed entries are mutable, nor which ones were " +"actually mutated)." msgstr "" msgid "" -"By default, :mod:`!shelve` uses :func:`pickle.dumps` and :func:`pickle." -"loads` for serializing and deserializing. This can be changed by supplying " -"*serializer* and *deserializer*, respectively." +"By default, :mod:`!shelve` uses :func:`pickle.dumps` " +"and :func:`pickle.loads` for serializing and deserializing. This can be " +"changed by supplying *serializer* and *deserializer*, respectively." msgstr "" msgid "" "The *serializer* argument must be a callable which takes an object ``obj`` " -"and the *protocol* as inputs and returns the representation ``obj`` as a :" -"term:`bytes-like object`; the *protocol* value may be ignored by the " +"and the *protocol* as inputs and returns the representation ``obj`` as " +"a :term:`bytes-like object`; the *protocol* value may be ignored by the " "serializer." msgstr "" @@ -97,14 +98,14 @@ msgid "Accepts :term:`path-like object` for filename." msgstr "" msgid "" -"Accepts custom *serializer* and *deserializer* functions in place of :func:" -"`pickle.dumps` and :func:`pickle.loads`." +"Accepts custom *serializer* and *deserializer* functions in place " +"of :func:`pickle.dumps` and :func:`pickle.loads`." msgstr "" msgid "" -"Do not rely on the shelf being closed automatically; always call :meth:" -"`~Shelf.close` explicitly when you don't need it any more, or use :func:" -"`shelve.open` as a context manager::" +"Do not rely on the shelf being closed automatically; always " +"call :meth:`~Shelf.close` explicitly when you don't need it any more, or " +"use :func:`shelve.open` as a context manager::" msgstr "" msgid "" @@ -131,8 +132,8 @@ msgstr "" msgid "" "Write back all entries in the cache if the shelf was opened with *writeback* " "set to :const:`True`. Also empty the cache and synchronize the persistent " -"dictionary on disk, if feasible. This is called automatically when :meth:" -"`reorganize` is called or the shelf is closed with :meth:`close`." +"dictionary on disk, if feasible. This is called automatically " +"when :meth:`reorganize` is called or the shelf is closed with :meth:`close`." msgstr "" msgid "" @@ -231,25 +232,26 @@ msgid "Added the *serializer* and *deserializer* parameters." msgstr "" msgid "" -"A subclass of :class:`Shelf` which exposes :meth:`!first`, :meth:`!next`, :" -"meth:`!previous`, :meth:`!last` and :meth:`!set_location` methods. These are " -"available in the third-party :mod:`!bsddb` module from `pybsddb `_ but not in other database modules. The " -"*dict* object passed to the constructor must support those methods. This is " -"generally accomplished by calling one of :func:`!bsddb.hashopen`, :func:`!" -"bsddb.btopen` or :func:`!bsddb.rnopen`. The optional *protocol*, " -"*writeback*, *keyencoding*, *serializer* and *deserializer* parameters have " -"the same interpretation as in :func:`~shelve.open`." +"A subclass of :class:`Shelf` which exposes :meth:`!first`, :meth:`!" +"next`, :meth:`!previous`, :meth:`!last` and :meth:`!set_location` methods. " +"These are available in the third-party :mod:`!bsddb` module from `pybsddb " +"`_ but not in other database " +"modules. The *dict* object passed to the constructor must support those " +"methods. This is generally accomplished by calling one of :func:`!" +"bsddb.hashopen`, :func:`!bsddb.btopen` or :func:`!bsddb.rnopen`. The " +"optional *protocol*, *writeback*, *keyencoding*, *serializer* and " +"*deserializer* parameters have the same interpretation as " +"in :func:`~shelve.open`." msgstr "" msgid "" "A subclass of :class:`Shelf` which accepts a *filename* instead of a dict-" "like object. The underlying file will be opened using :func:`dbm.open`. By " "default, the file will be created and opened for both read and write. The " -"optional *flag* parameter has the same interpretation as for the :func:`." -"open` function. The optional *protocol*, *writeback*, *serializer* and " -"*deserializer* parameters have the same interpretation as in :func:`~shelve." -"open`." +"optional *flag* parameter has the same interpretation as for " +"the :func:`.open` function. The optional *protocol*, *writeback*, " +"*serializer* and *deserializer* parameters have the same interpretation as " +"in :func:`~shelve.open`." msgstr "" msgid "Example" diff --git a/library/shlex.po b/library/shlex.po index 67b73e0..37c5a62 100644 --- a/library/shlex.po +++ b/library/shlex.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,12 +35,12 @@ msgid "The :mod:`!shlex` module defines the following functions:" msgstr "" msgid "" -"Split the string *s* using shell-like syntax. If *comments* is :const:" -"`False` (the default), the parsing of comments in the given string will be " -"disabled (setting the :attr:`~shlex.commenters` attribute of the :class:" -"`~shlex.shlex` instance to the empty string). This function operates in " -"POSIX mode by default, but uses non-POSIX mode if the *posix* argument is " -"false." +"Split the string *s* using shell-like syntax. If *comments* " +"is :const:`False` (the default), the parsing of comments in the given string " +"will be disabled (setting the :attr:`~shlex.commenters` attribute of " +"the :class:`~shlex.shlex` instance to the empty string). This function " +"operates in POSIX mode by default, but uses non-POSIX mode if the *posix* " +"argument is false." msgstr "" msgid "" @@ -75,8 +75,8 @@ msgid "" msgstr "" msgid "" -"Consider using functions that pass command arguments with lists such as :" -"func:`subprocess.run` with ``shell=False``." +"Consider using functions that pass command arguments with lists such " +"as :func:`subprocess.run` with ``shell=False``." msgstr "" msgid "This idiom would be unsafe:" @@ -94,25 +94,26 @@ msgstr "" msgid "" "A :class:`~shlex.shlex` instance or subclass instance is a lexical analyzer " "object. The initialization argument, if present, specifies where to read " -"characters from. It must be a file-/stream-like object with :meth:`~io." -"TextIOBase.read` and :meth:`~io.TextIOBase.readline` methods, or a string. " -"If no argument is given, input will be taken from ``sys.stdin``. The second " -"optional argument is a filename string, which sets the initial value of the :" -"attr:`~shlex.infile` attribute. If the *instream* argument is omitted or " -"equal to ``sys.stdin``, this second argument defaults to \"stdin\". The " -"*posix* argument defines the operational mode: when *posix* is not true " -"(default), the :class:`~shlex.shlex` instance will operate in compatibility " -"mode. When operating in POSIX mode, :class:`~shlex.shlex` will try to be as " -"close as possible to the POSIX shell parsing rules. The *punctuation_chars* " -"argument provides a way to make the behaviour even closer to how real shells " -"parse. This can take a number of values: the default value, ``False``, " -"preserves the behaviour seen under Python 3.5 and earlier. If set to " -"``True``, then parsing of the characters ``();<>|&`` is changed: any run of " -"these characters (considered punctuation characters) is returned as a single " -"token. If set to a non-empty string of characters, those characters will be " -"used as the punctuation characters. Any characters in the :attr:`wordchars` " -"attribute that appear in *punctuation_chars* will be removed from :attr:" -"`wordchars`. See :ref:`improved-shell-compatibility` for more information. " +"characters from. It must be a file-/stream-like object " +"with :meth:`~io.TextIOBase.read` and :meth:`~io.TextIOBase.readline` " +"methods, or a string. If no argument is given, input will be taken from " +"``sys.stdin``. The second optional argument is a filename string, which sets " +"the initial value of the :attr:`~shlex.infile` attribute. If the *instream* " +"argument is omitted or equal to ``sys.stdin``, this second argument defaults " +"to \"stdin\". The *posix* argument defines the operational mode: when " +"*posix* is not true (default), the :class:`~shlex.shlex` instance will " +"operate in compatibility mode. When operating in POSIX " +"mode, :class:`~shlex.shlex` will try to be as close as possible to the POSIX " +"shell parsing rules. The *punctuation_chars* argument provides a way to " +"make the behaviour even closer to how real shells parse. This can take a " +"number of values: the default value, ``False``, preserves the behaviour seen " +"under Python 3.5 and earlier. If set to ``True``, then parsing of the " +"characters ``();<>|&`` is changed: any run of these characters (considered " +"punctuation characters) is returned as a single token. If set to a non-" +"empty string of characters, those characters will be used as the punctuation " +"characters. Any characters in the :attr:`wordchars` attribute that appear " +"in *punctuation_chars* will be removed from :attr:`wordchars`. " +"See :ref:`improved-shell-compatibility` for more information. " "*punctuation_chars* can be set only upon :class:`~shlex.shlex` instance " "creation and can't be modified later." msgstr "" @@ -175,8 +176,9 @@ msgstr "" msgid "" "This hook is exposed so that you can use it to implement directory search " "paths, addition of file extensions, and other namespace hacks. There is no " -"corresponding 'close' hook, but a shlex instance will call the :meth:`~io." -"IOBase.close` method of the sourced input stream when it returns EOF." +"corresponding 'close' hook, but a shlex instance will call " +"the :meth:`~io.IOBase.close` method of the sourced input stream when it " +"returns EOF." msgstr "" msgid "" @@ -223,10 +225,10 @@ msgstr "" msgid "" "The string of characters that will accumulate into multi-character tokens. " "By default, includes all ASCII alphanumerics and underscore. In POSIX mode, " -"the accented characters in the Latin-1 set are also included. If :attr:" -"`punctuation_chars` is not empty, the characters ``~-./*?=``, which can " -"appear in filename specifications and command line parameters, will also be " -"included in this attribute, and any characters which appear in " +"the accented characters in the Latin-1 set are also included. " +"If :attr:`punctuation_chars` is not empty, the characters ``~-./*?=``, which " +"can appear in filename specifications and command line parameters, will also " +"be included in this attribute, and any characters which appear in " "``punctuation_chars`` will be removed from ``wordchars`` if they are present " "there. If :attr:`whitespace_split` is set to ``True``, this will have no " "effect." @@ -259,14 +261,14 @@ msgstr "" msgid "" "If ``True``, tokens will only be split in whitespaces. This is useful, for " "example, for parsing command lines with :class:`~shlex.shlex`, getting " -"tokens in a similar way to shell arguments. When used in combination with :" -"attr:`punctuation_chars`, tokens will be split on whitespace in addition to " -"those characters." +"tokens in a similar way to shell arguments. When used in combination " +"with :attr:`punctuation_chars`, tokens will be split on whitespace in " +"addition to those characters." msgstr "" msgid "" -"The :attr:`punctuation_chars` attribute was made compatible with the :attr:" -"`whitespace_split` attribute." +"The :attr:`punctuation_chars` attribute was made compatible with " +"the :attr:`whitespace_split` attribute." msgstr "" msgid "" @@ -372,18 +374,19 @@ msgid "" msgstr "" msgid "" -"Enclosing characters in quotes which are not part of :attr:`~shlex." -"escapedquotes` (e.g. ``\"'\"``) preserve the literal value of all characters " -"within the quotes;" +"Enclosing characters in quotes which are not part " +"of :attr:`~shlex.escapedquotes` (e.g. ``\"'\"``) preserve the literal value " +"of all characters within the quotes;" msgstr "" msgid "" -"Enclosing characters in quotes which are part of :attr:`~shlex." -"escapedquotes` (e.g. ``'\"'``) preserves the literal value of all characters " -"within the quotes, with the exception of the characters mentioned in :attr:" -"`~shlex.escape`. The escape characters retain their special meaning only " -"when followed by the quote in use, or the escape character itself. Otherwise " -"the escape character will be considered a normal character." +"Enclosing characters in quotes which are part " +"of :attr:`~shlex.escapedquotes` (e.g. ``'\"'``) preserves the literal value " +"of all characters within the quotes, with the exception of the characters " +"mentioned in :attr:`~shlex.escape`. The escape characters retain their " +"special meaning only when followed by the quote in use, or the escape " +"character itself. Otherwise the escape character will be considered a normal " +"character." msgstr "" msgid "EOF is signaled with a :const:`None` value;" @@ -396,17 +399,17 @@ msgid "Improved Compatibility with Shells" msgstr "" msgid "" -"The :class:`shlex` class provides compatibility with the parsing performed " -"by common Unix shells like ``bash``, ``dash``, and ``sh``. To take " -"advantage of this compatibility, specify the ``punctuation_chars`` argument " -"in the constructor. This defaults to ``False``, which preserves pre-3.6 " -"behaviour. However, if it is set to ``True``, then parsing of the characters " -"``();<>|&`` is changed: any run of these characters is returned as a single " -"token. While this is short of a full parser for shells (which would be out " -"of scope for the standard library, given the multiplicity of shells out " -"there), it does allow you to perform processing of command lines more easily " -"than you could otherwise. To illustrate, you can see the difference in the " -"following snippet:" +"The :class:`~shlex.shlex` class provides compatibility with the parsing " +"performed by common Unix shells like ``bash``, ``dash``, and ``sh``. To " +"take advantage of this compatibility, specify the ``punctuation_chars`` " +"argument in the constructor. This defaults to ``False``, which preserves " +"pre-3.6 behaviour. However, if it is set to ``True``, then parsing of the " +"characters ``();<>|&`` is changed: any run of these characters is returned " +"as a single token. While this is short of a full parser for shells (which " +"would be out of scope for the standard library, given the multiplicity of " +"shells out there), it does allow you to perform processing of command lines " +"more easily than you could otherwise. To illustrate, you can see the " +"difference in the following snippet:" msgstr "" msgid "" @@ -458,13 +461,13 @@ msgstr "" msgid "" "However, to match the shell as closely as possible, it is recommended to " -"always use ``posix`` and :attr:`~shlex.whitespace_split` when using :attr:" -"`~shlex.punctuation_chars`, which will negate :attr:`~shlex.wordchars` " -"entirely." +"always use ``posix`` and :attr:`~shlex.whitespace_split` when " +"using :attr:`~shlex.punctuation_chars`, which will " +"negate :attr:`~shlex.wordchars` entirely." msgstr "" msgid "" "For best effect, ``punctuation_chars`` should be set in conjunction with " -"``posix=True``. (Note that ``posix=False`` is the default for :class:`~shlex." -"shlex`.)" +"``posix=True``. (Note that ``posix=False`` is the default " +"for :class:`~shlex.shlex`.)" msgstr "" diff --git a/library/shutil.po b/library/shutil.po index 34b98e3..340449b 100644 --- a/library/shutil.po +++ b/library/shutil.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,8 +36,8 @@ msgid "" msgstr "" msgid "" -"Even the higher-level file copying functions (:func:`shutil.copy`, :func:" -"`shutil.copy2`) cannot copy all file metadata." +"Even the higher-level file copying functions " +"(:func:`shutil.copy`, :func:`shutil.copy2`) cannot copy all file metadata." msgstr "" msgid "" @@ -66,9 +66,9 @@ msgid "" "been flushed on completion of the copy. If you want to read from the " "destination at the completion of the copy operation (for example, reading " "the contents of a temporary file that has been copied from a HTTP stream), " -"you must ensure that you have called :func:`~io.IOBase.flush` or :func:`~io." -"IOBase.close` on the file-like object before attempting to read the " -"destination file." +"you must ensure that you have called :func:`~io.IOBase.flush` " +"or :func:`~io.IOBase.close` on the file-like object before attempting to " +"read the destination file." msgstr "" msgid "" @@ -133,10 +133,10 @@ msgid "" "like object>` or path names given as strings. If *follow_symlinks* is false, " "and both *src* and *dst* are symbolic links, :func:`copymode` will attempt " "to modify the mode of *dst* itself (rather than the file it points to). " -"This functionality is not available on every platform; please see :func:" -"`copystat` for more information. If :func:`copymode` cannot modify symbolic " -"links on the local platform, and it is asked to do so, it will do nothing " -"and return." +"This functionality is not available on every platform; please " +"see :func:`copystat` for more information. If :func:`copymode` cannot " +"modify symbolic links on the local platform, and it is asked to do so, it " +"will do nothing and return." msgstr "" msgid "" @@ -178,9 +178,9 @@ msgid "" msgstr "" msgid "" -"If ``os.chflags in os.supports_follow_symlinks`` is ``True``, :func:" -"`copystat` can modify the flags of a symbolic link. (``os.chflags`` is not " -"available on all platforms.)" +"If ``os.chflags in os.supports_follow_symlinks`` is " +"``True``, :func:`copystat` can modify the flags of a symbolic link. " +"(``os.chflags`` is not available on all platforms.)" msgstr "" msgid "" @@ -236,14 +236,15 @@ msgid "" "attempts to copy all metadata from the *src* symbolic link to the newly " "created *dst* symbolic link. However, this functionality is not available on " "all platforms. On platforms where some or all of this functionality is " -"unavailable, :func:`copy2` will preserve all the metadata it can; :func:" -"`copy2` never raises an exception because it cannot preserve file metadata." +"unavailable, :func:`copy2` will preserve all the metadata it " +"can; :func:`copy2` never raises an exception because it cannot preserve file " +"metadata." msgstr "" msgid "" -":func:`copy2` uses :func:`copystat` to copy the file metadata. Please see :" -"func:`copystat` for more information about platform support for modifying " -"symbolic link metadata." +":func:`copy2` uses :func:`copystat` to copy the file metadata. Please " +"see :func:`copystat` for more information about platform support for " +"modifying symbolic link metadata." msgstr "" msgid "" @@ -253,9 +254,9 @@ msgid "" msgstr "" msgid "" -"This factory function creates a function that can be used as a callable for :" -"func:`copytree`\\'s *ignore* argument, ignoring files and directories that " -"match one of the glob-style *patterns* provided. See the example below." +"This factory function creates a function that can be used as a callable " +"for :func:`copytree`\\'s *ignore* argument, ignoring files and directories " +"that match one of the glob-style *patterns* provided. See the example below." msgstr "" msgid "" @@ -278,9 +279,9 @@ msgstr "" msgid "" "When *symlinks* is false, if the file pointed to by the symlink doesn't " -"exist, an exception will be added in the list of errors raised in an :exc:" -"`Error` exception at the end of the copy process. You can set the optional " -"*ignore_dangling_symlinks* flag to true if you want to silence this " +"exist, an exception will be added in the list of errors raised in " +"an :exc:`Error` exception at the end of the copy process. You can set the " +"optional *ignore_dangling_symlinks* flag to true if you want to silence this " "exception. Notice that this option has no effect on platforms that don't " "support :func:`os.symlink`." msgstr "" @@ -309,8 +310,8 @@ msgid "" msgstr "" msgid "" -"If *dirs_exist_ok* is false (the default) and *dst* already exists, a :exc:" -"`FileExistsError` is raised. If *dirs_exist_ok* is true, the copying " +"If *dirs_exist_ok* is false (the default) and *dst* already exists, " +"a :exc:`FileExistsError` is raised. If *dirs_exist_ok* is true, the copying " "operation will continue if it encounters existing directories, and files " "within the *dst* tree will be overwritten by corresponding files from the " "*src* tree." @@ -341,6 +342,14 @@ msgid "" "are omitted, exceptions are propagated to the caller." msgstr "" +msgid "" +"If *path* is a symbolic link to a directory followed by a trailing path " +"separator, such as ``'link/'``, the operating system resolves the link, " +"so :func:`!rmtree` deletes the contents of the directory it points to and " +"then fails to remove *path* itself. :class:`pathlib.Path` strips trailing " +"separators, so ``rmtree(Path('link/'))`` refuses the link as usual." +msgstr "" + msgid "" "This function can support :ref:`paths relative to directory descriptors " "`." @@ -402,8 +411,8 @@ msgstr "" msgid "" ":func:`!rmtree` now ignores :exc:`FileNotFoundError` exceptions for all but " -"the top-level path. Exceptions other than :exc:`OSError` and subclasses of :" -"exc:`!OSError` are now always propagated to the caller." +"the top-level path. Exceptions other than :exc:`OSError` and subclasses " +"of :exc:`!OSError` are now always propagated to the caller." msgstr "" msgid "" @@ -445,9 +454,9 @@ msgstr "" msgid "" "If *copy_function* is given, it must be a callable that takes two arguments, " "*src* and the destination, and will be used to copy *src* to the destination " -"if :func:`os.rename` cannot be used. If the source is a directory, :func:" -"`copytree` is called, passing it the *copy_function*. The default " -"*copy_function* is :func:`copy2`. Using :func:`~shutil.copy` as the " +"if :func:`os.rename` cannot be used. If the source is a " +"directory, :func:`copytree` is called, passing it the *copy_function*. The " +"default *copy_function* is :func:`copy2`. Using :func:`~shutil.copy` as the " "*copy_function* allows the move to succeed when it is not possible to also " "copy the metadata, at the expense of not copying any of the metadata." msgstr "" @@ -517,9 +526,9 @@ msgstr "" msgid "" "*path* is a \"``PATH`` string\" specifying the directories to look in, " -"delimited by :data:`os.pathsep`. When no *path* is specified, the :envvar:" -"`PATH` environment variable is read from :data:`os.environ`, falling back " -"to :data:`os.defpath` if it is not set." +"delimited by :data:`os.pathsep`. When no *path* is specified, " +"the :envvar:`PATH` environment variable is read from :data:`os.environ`, " +"falling back to :data:`os.defpath` if it is not set." msgstr "" msgid "" @@ -585,12 +594,12 @@ msgid "Platform-dependent efficient copy operations" msgstr "" msgid "" -"Starting from Python 3.8, all functions involving a file copy (:func:" -"`copyfile`, :func:`~shutil.copy`, :func:`copy2`, :func:`copytree`, and :func:" -"`move`) may use platform-specific \"fast-copy\" syscalls in order to copy " -"the file more efficiently (see :issue:`33671`). \"fast-copy\" means that the " -"copying operation occurs within the kernel, avoiding the use of userspace " -"buffers in Python as in \"``outfd.write(infd.read())``\"." +"Starting from Python 3.8, all functions involving a file copy " +"(:func:`copyfile`, :func:`~shutil.copy`, :func:`copy2`, :func:`copytree`, " +"and :func:`move`) may use platform-specific \"fast-copy\" syscalls in order " +"to copy the file more efficiently (see :issue:`33671`). \"fast-copy\" means " +"that the copying operation occurs within the kernel, avoiding the use of " +"userspace buffers in Python as in \"``outfd.write(infd.read())``\"." msgstr "" msgid "On macOS `fcopyfile`_ is used to copy the file content (not metadata)." @@ -604,24 +613,25 @@ msgstr "" msgid "" "On Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB " -"instead of 64 KiB) and a :func:`memoryview`-based variant of :func:`shutil." -"copyfileobj` is used, which still reads and writes in a loop. :func:`shutil." -"copy2` uses the native ``CopyFile2`` call on Windows, which is the most " -"efficient method, supports copy-on-write, and preserves metadata." +"instead of 64 KiB) and a :func:`memoryview`-based variant " +"of :func:`shutil.copyfileobj` is used, which still reads and writes in a " +"loop. :func:`shutil.copy2` uses the native ``CopyFile2`` call on Windows, " +"which is the most efficient method, supports copy-on-write, and preserves " +"metadata." msgstr "" msgid "" "If the fast-copy operation fails and no data was written in the destination " -"file then shutil will silently fall back to less efficient :func:" -"`copyfileobj` function internally." +"file then shutil will silently fall back to less " +"efficient :func:`copyfileobj` function internally." msgstr "" msgid "Solaris now uses :func:`os.sendfile`." msgstr "" msgid "" -"Copy-on-write or server-side copy may be used internally via :func:`os." -"copy_file_range` on supported Linux filesystems." +"Copy-on-write or server-side copy may be used internally " +"via :func:`os.copy_file_range` on supported Linux filesystems." msgstr "" msgid "copytree example" @@ -699,9 +709,9 @@ msgstr "" msgid "" "*format* is the archive format: one of \"zip\" (if the :mod:`zlib` module is " "available), \"tar\", \"gztar\" (if the :mod:`zlib` module is available), " -"\"bztar\" (if the :mod:`bz2` module is available), \"xztar\" (if the :mod:" -"`lzma` module is available), or \"zstdtar\" (if the :mod:`compression.zstd` " -"module is available)." +"\"bztar\" (if the :mod:`bz2` module is available), \"xztar\" (if " +"the :mod:`lzma` module is available), or \"zstdtar\" (if " +"the :mod:`compression.zstd` module is available)." msgstr "" msgid "" @@ -746,10 +756,10 @@ msgid "" msgstr "" msgid "" -"This function is not thread-safe when custom archivers registered with :func:" -"`register_archive_format` do not support the *root_dir* argument. In this " -"case it temporarily changes the current working directory of the process to " -"*root_dir* to perform archiving." +"This function is not thread-safe when custom archivers registered " +"with :func:`register_archive_format` do not support the *root_dir* " +"argument. In this case it temporarily changes the current working directory " +"of the process to *root_dir* to perform archiving." msgstr "" msgid "" @@ -846,10 +856,11 @@ msgstr "" msgid "" "*format* is the archive format: one of \"zip\", \"tar\", \"gztar\", " -"\"bztar\", \"xztar\", or \"zstdtar\". Or any other format registered with :" -"func:`register_unpack_format`. If not provided, :func:`unpack_archive` will " -"use the archive file name extension and see if an unpacker was registered " -"for that extension. In case none is found, a :exc:`ValueError` is raised." +"\"bztar\", \"xztar\", or \"zstdtar\". Or any other format registered " +"with :func:`register_unpack_format`. If not " +"provided, :func:`unpack_archive` will use the archive file name extension " +"and see if an unpacker was registered for that extension. In case none is " +"found, a :exc:`ValueError` is raised." msgstr "" msgid "" @@ -887,8 +898,8 @@ msgstr "" msgid "" "Registers an unpack format. *name* is the name of the format and " -"*extensions* is a list of extensions corresponding to the format, like ``." -"zip`` for Zip files." +"*extensions* is a list of extensions corresponding to the format, like " +"``.zip`` for Zip files." msgstr "" msgid "" @@ -904,8 +915,8 @@ msgid "" msgstr "" msgid "" -"possibly a *filter* keyword argument, if it was given to :func:" -"`unpack_archive`;" +"possibly a *filter* keyword argument, if it was given " +"to :func:`unpack_archive`;" msgstr "" msgid "" @@ -991,8 +1002,8 @@ msgid "" msgstr "" msgid "" -"In the final archive, :file:`please_add.txt` should be included, but :file:" -"`do_not_add.txt` should not. Therefore we use the following::" +"In the final archive, :file:`please_add.txt` should be included, " +"but :file:`do_not_add.txt` should not. Therefore we use the following::" msgstr "" msgid "" @@ -1031,8 +1042,8 @@ msgstr "" msgid "" "When ``COLUMNS`` or ``LINES`` is not defined, which is the common case, the " -"terminal connected to :data:`sys.__stdout__` is queried by invoking :func:" -"`os.get_terminal_size`." +"terminal connected to :data:`sys.__stdout__` is queried by " +"invoking :func:`os.get_terminal_size`." msgstr "" msgid "" diff --git a/library/signal.po b/library/signal.po index 92c0cb0..a396a0a 100644 --- a/library/signal.po +++ b/library/signal.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,8 +46,8 @@ msgstr "" msgid "" "A handler for a particular signal, once set, remains installed until it is " "explicitly reset (Python emulates the BSD style interface regardless of the " -"underlying implementation), with the exception of the handler for :const:" -"`SIGCHLD`, which follows the underlying implementation." +"underlying implementation), with the exception of the handler " +"for :const:`SIGCHLD`, which follows the underlying implementation." msgstr "" msgid "" @@ -68,12 +68,12 @@ msgid "" msgstr "" msgid "" -"It makes little sense to catch synchronous errors like :const:`SIGFPE` or :" -"const:`SIGSEGV` that are caused by an invalid operation in C code. Python " -"will return from the signal handler to the C code, which is likely to raise " -"the same signal again, causing Python to apparently hang. From Python 3.3 " -"onwards, you can use the :mod:`faulthandler` module to report on synchronous " -"errors." +"It makes little sense to catch synchronous errors like :const:`SIGFPE` " +"or :const:`SIGSEGV` that are caused by an invalid operation in C code. " +"Python will return from the signal handler to the C code, which is likely to " +"raise the same signal again, causing Python to apparently hang. From Python " +"3.3 onwards, you can use the :mod:`faulthandler` module to report on " +"synchronous errors." msgstr "" msgid "" @@ -114,13 +114,13 @@ msgid "Module contents" msgstr "" msgid "" -"signal (SIG*), handler (:const:`SIG_DFL`, :const:`SIG_IGN`) and sigmask (:" -"const:`SIG_BLOCK`, :const:`SIG_UNBLOCK`, :const:`SIG_SETMASK`) related " -"constants listed below were turned into :class:`enums ` (:" -"class:`Signals`, :class:`Handlers` and :class:`Sigmasks` respectively). :" -"func:`getsignal`, :func:`pthread_sigmask`, :func:`sigpending` and :func:" -"`sigwait` functions return human-readable :class:`enums ` as :" -"class:`Signals` objects." +"signal (SIG*), handler (:const:`SIG_DFL`, :const:`SIG_IGN`) and sigmask " +"(:const:`SIG_BLOCK`, :const:`SIG_UNBLOCK`, :const:`SIG_SETMASK`) related " +"constants listed below were turned into :class:`enums ` " +"(:class:`Signals`, :class:`Handlers` and :class:`Sigmasks` " +"respectively). :func:`getsignal`, :func:`pthread_sigmask`, :func:`sigpending` " +"and :func:`sigwait` functions return human-readable :class:`enums " +"` as :class:`Signals` objects." msgstr "" msgid "The signal module defines three enums:" @@ -131,13 +131,13 @@ msgid "" msgstr "" msgid "" -":class:`enum.IntEnum` collection of the constants :const:`SIG_DFL` and :" -"const:`SIG_IGN`." +":class:`enum.IntEnum` collection of the constants :const:`SIG_DFL` " +"and :const:`SIG_IGN`." msgstr "" msgid "" -":class:`enum.IntEnum` collection of the constants :const:`SIG_BLOCK`, :const:" -"`SIG_UNBLOCK` and :const:`SIG_SETMASK`." +":class:`enum.IntEnum` collection of the " +"constants :const:`SIG_BLOCK`, :const:`SIG_UNBLOCK` and :const:`SIG_SETMASK`." msgstr "" msgid "Availability" @@ -235,8 +235,8 @@ msgid "" msgstr "" msgid "" -"On architectures where the signal is available. See the man page :manpage:" -"`signal(7)` for further information." +"On architectures where the signal is available. See the man " +"page :manpage:`signal(7)` for further information." msgstr "" msgid "Termination signal." @@ -262,9 +262,10 @@ msgid "" "signal is defined as :const:`signal.SIGHUP`; the variable names are " "identical to the names used in C programs, as found in ````. The " "Unix man page for '``signal``' lists the existing signals (on some systems " -"this is :manpage:`signal(2)`, on others the list is in :manpage:" -"`signal(7)`). Note that not all systems define the same set of signal names; " -"only those names defined by the system are defined by this module." +"this is :manpage:`signal(2)`, on others the list is " +"in :manpage:`signal(7)`). Note that not all systems define the same set of " +"signal names; only those names defined by the system are defined by this " +"module." msgstr "" msgid "" @@ -278,8 +279,8 @@ msgid "" msgstr "" msgid "" -"One more than the number of the highest signal number. Use :func:" -"`valid_signals` to get valid signal numbers." +"One more than the number of the highest signal number. " +"Use :func:`valid_signals` to get valid signal numbers." msgstr "" msgid "" @@ -318,15 +319,15 @@ msgid "The :mod:`!signal` module defines one exception:" msgstr "" msgid "" -"Raised to signal an error from the underlying :func:`setitimer` or :func:" -"`getitimer` implementation. Expect this error if an invalid interval timer " -"or a negative time is passed to :func:`setitimer`. This error is a subtype " -"of :exc:`OSError`." +"Raised to signal an error from the underlying :func:`setitimer` " +"or :func:`getitimer` implementation. Expect this error if an invalid " +"interval timer or a negative time is passed to :func:`setitimer`. This error " +"is a subtype of :exc:`OSError`." msgstr "" msgid "" -"This error used to be a subtype of :exc:`IOError`, which is now an alias of :" -"exc:`OSError`." +"This error used to be a subtype of :exc:`IOError`, which is now an alias " +"of :exc:`OSError`." msgstr "" msgid "The :mod:`!signal` module defines the following functions:" @@ -347,18 +348,18 @@ msgstr "" msgid "" "Return the current signal handler for the signal *signalnum*. The returned " -"value may be a callable Python object, or one of the special values :const:" -"`signal.SIG_IGN`, :const:`signal.SIG_DFL` or :const:`None`. Here, :const:" -"`signal.SIG_IGN` means that the signal was previously ignored, :const:" -"`signal.SIG_DFL` means that the default way of handling the signal was " -"previously in use, and ``None`` means that the previous signal handler was " -"not installed from Python." +"value may be a callable Python object, or one of the special " +"values :const:`signal.SIG_IGN`, :const:`signal.SIG_DFL` or :const:`None`. " +"Here, :const:`signal.SIG_IGN` means that the signal was previously " +"ignored, :const:`signal.SIG_DFL` means that the default way of handling the " +"signal was previously in use, and ``None`` means that the previous signal " +"handler was not installed from Python." msgstr "" msgid "" -"Returns the description of signal *signalnum*, such as \"Interrupt\" for :" -"const:`SIGINT`. Returns :const:`None` if *signalnum* has no description. " -"Raises :exc:`ValueError` if *signalnum* is invalid." +"Returns the description of signal *signalnum*, such as \"Interrupt\" " +"for :const:`SIGINT`. Returns :const:`None` if *signalnum* has no " +"description. Raises :exc:`ValueError` if *signalnum* is invalid." msgstr "" msgid "" @@ -376,8 +377,8 @@ msgid "See the man page :manpage:`signal(2)` for further information." msgstr "" msgid "" -"See also :func:`sigwait`, :func:`sigwaitinfo`, :func:`sigtimedwait` and :" -"func:`sigpending`." +"See also :func:`sigwait`, :func:`sigwaitinfo`, :func:`sigtimedwait` " +"and :func:`sigpending`." msgstr "" msgid "Sends a signal to the calling process. Returns nothing." @@ -452,9 +453,9 @@ msgid "" msgstr "" msgid "" -"*mask* is a set of signal numbers (e.g. {:const:`signal.SIGINT`, :const:" -"`signal.SIGTERM`}). Use :func:`~signal.valid_signals` for a full mask " -"including all signals." +"*mask* is a set of signal numbers (e.g. " +"{:const:`signal.SIGINT`, :const:`signal.SIGTERM`}). " +"Use :func:`~signal.valid_signals` for a full mask including all signals." msgstr "" msgid "" @@ -469,19 +470,20 @@ msgid "See also :func:`pause`, :func:`sigpending` and :func:`sigwait`." msgstr "" msgid "" -"Sets given interval timer (one of :const:`signal.ITIMER_REAL`, :const:" -"`signal.ITIMER_VIRTUAL` or :const:`signal.ITIMER_PROF`) specified by *which* " -"to fire after *seconds* (rounded up to microseconds, different from :func:" -"`alarm`) and after that every *interval* seconds (if *interval* is non-" -"zero). The interval timer specified by *which* can be cleared by setting " -"*seconds* to zero." +"Sets given interval timer (one " +"of :const:`signal.ITIMER_REAL`, :const:`signal.ITIMER_VIRTUAL` " +"or :const:`signal.ITIMER_PROF`) specified by *which* to fire after *seconds* " +"(rounded up to microseconds, different from :func:`alarm`) and after that " +"every *interval* seconds (if *interval* is non-zero). The interval timer " +"specified by *which* can be cleared by setting *seconds* to zero." msgstr "" msgid "" "When an interval timer fires, a signal is sent to the process. The signal " "sent is dependent on the timer being used; :const:`signal.ITIMER_REAL` will " -"deliver :const:`SIGALRM`, :const:`signal.ITIMER_VIRTUAL` sends :const:" -"`SIGVTALRM`, and :const:`signal.ITIMER_PROF` will deliver :const:`SIGPROF`." +"deliver :const:`SIGALRM`, :const:`signal.ITIMER_VIRTUAL` " +"sends :const:`SIGVTALRM`, and :const:`signal.ITIMER_PROF` will " +"deliver :const:`SIGPROF`." msgstr "" msgid "" @@ -490,8 +492,8 @@ msgid "" msgstr "" msgid "" -"Attempting to pass an invalid interval timer will cause an :exc:" -"`ItimerError`." +"Attempting to pass an invalid interval timer will cause " +"an :exc:`ItimerError`." msgstr "" msgid "" @@ -566,8 +568,8 @@ msgid "See the man page :manpage:`siginterrupt(3)` for further information." msgstr "" msgid "" -"Note that installing a signal handler with :func:`signal` will reset the " -"restart behaviour to interruptible by implicitly calling :c:func:`!" +"Note that installing a signal handler with :func:`~signal.signal` will reset " +"the restart behaviour to interruptible by implicitly calling :c:func:`!" "siginterrupt` with a true *flag* value for the given signal." msgstr "" @@ -575,9 +577,9 @@ msgid "" "Set the handler for signal *signalnum* to the function *handler*. *handler* " "can be a callable Python object taking two arguments (see below), or one of " "the special values :const:`signal.SIG_IGN` or :const:`signal.SIG_DFL`. The " -"previous signal handler will be returned (see the description of :func:" -"`getsignal` above). (See the Unix man page :manpage:`signal(2)` for further " -"information.)" +"previous signal handler will be returned (see the description " +"of :func:`getsignal` above). (See the Unix man page :manpage:`signal(2)` " +"for further information.)" msgstr "" msgid "" @@ -588,10 +590,10 @@ msgid "" msgstr "" msgid "" -"On Windows, :func:`signal` can only be called with :const:`SIGABRT`, :const:" -"`SIGFPE`, :const:`SIGILL`, :const:`SIGINT`, :const:`SIGSEGV`, :const:" -"`SIGTERM`, or :const:`SIGBREAK`. A :exc:`ValueError` will be raised in any " -"other case. Note that not all systems define the same set of signal names; " +"On Windows, :func:`~signal.signal` can only be called " +"with :const:`SIGABRT`, :const:`SIGFPE`, :const:`SIGILL`, :const:`SIGINT`, :const:`SIGSEGV`, :const:`SIGTERM`, " +"or :const:`SIGBREAK`. A :exc:`ValueError` will be raised in any other case. " +"Note that not all systems define the same set of signal names; " "an :exc:`AttributeError` will be raised if a signal name is not defined as " "``SIG*`` module level constant." msgstr "" @@ -619,8 +621,9 @@ msgid "See the man page :manpage:`sigwait(3)` for further information." msgstr "" msgid "" -"See also :func:`pause`, :func:`pthread_sigmask`, :func:`sigpending`, :func:" -"`sigwaitinfo` and :func:`sigtimedwait`." +"See " +"also :func:`pause`, :func:`pthread_sigmask`, :func:`sigpending`, :func:`sigwaitinfo` " +"and :func:`sigtimedwait`." msgstr "" msgid "" @@ -629,8 +632,9 @@ msgid "" "signal and removes it from the pending list of signals. If one of the " "signals in *sigset* is already pending for the calling thread, the function " "will return immediately with information about that signal. The signal " -"handler is not called for the delivered signal. The function raises an :exc:" -"`InterruptedError` if it is interrupted by a signal that is not in *sigset*." +"handler is not called for the delivered signal. The function raises " +"an :exc:`InterruptedError` if it is interrupted by a signal that is not in " +"*sigset*." msgstr "" msgid "" @@ -706,11 +710,11 @@ msgid "Note on SIGPIPE" msgstr "" msgid "" -"Piping output of your program to tools like :manpage:`head(1)` will cause a :" -"const:`SIGPIPE` signal to be sent to your process when the receiver of its " -"standard output closes early. This results in an exception like :code:" -"`BrokenPipeError: [Errno 32] Broken pipe`. To handle this case, wrap your " -"entry point to catch this exception as follows::" +"Piping output of your program to tools like :manpage:`head(1)` will cause " +"a :const:`SIGPIPE` signal to be sent to your process when the receiver of " +"its standard output closes early. This results in an exception " +"like :code:`BrokenPipeError: [Errno 32] Broken pipe`. To handle this case, " +"wrap your entry point to catch this exception as follows::" msgstr "" msgid "" @@ -778,9 +782,9 @@ msgid "" msgstr "" msgid "" -"For many programs, especially those that merely want to exit on :exc:" -"`KeyboardInterrupt`, this is not a problem, but applications that are " -"complex or require high reliability should avoid raising exceptions from " +"For many programs, especially those that merely want to exit " +"on :exc:`KeyboardInterrupt`, this is not a problem, but applications that " +"are complex or require high reliability should avoid raising exceptions from " "signal handlers. They should also avoid catching :exc:`KeyboardInterrupt` as " "a means of gracefully shutting down. Instead, they should install their " "own :const:`SIGINT` handler. Below is an example of an HTTP server that " diff --git a/library/site.po b/library/site.po index c6d11f9..f3f732c 100644 --- a/library/site.po +++ b/library/site.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,8 +46,8 @@ msgid "" msgstr "" msgid "" -"Importing the module used to trigger paths manipulation even when using :" -"option:`-S`." +"Importing the module used to trigger paths manipulation even when " +"using :option:`-S`." msgstr "" msgid "" @@ -72,12 +73,12 @@ msgid "" msgstr "" msgid "" -":mod:`!site` is no longer responsible for updating :data:`sys.prefix` and :" -"data:`sys.exec_prefix` on :ref:`sys-path-init-virtual-environments`. This is " -"now done during the :ref:`path initialization `. As a result, " -"under :ref:`sys-path-init-virtual-environments`, :data:`sys.prefix` and :" -"data:`sys.exec_prefix` no longer depend on the :mod:`!site` initialization, " -"and are therefore unaffected by :option:`-S`." +":mod:`!site` is no longer responsible for updating :data:`sys.prefix` " +"and :data:`sys.exec_prefix` on :ref:`sys-path-init-virtual-environments`. " +"This is now done during the :ref:`path initialization `. As a " +"result, under :ref:`sys-path-init-virtual-environments`, :data:`sys.prefix` " +"and :data:`sys.exec_prefix` no longer depend on the :mod:`!site` " +"initialization, and are therefore unaffected by :option:`-S`." msgstr "" msgid "" @@ -115,8 +116,8 @@ msgid "" msgstr "" msgid "" -"The :file:`.pth` files are now decoded by UTF-8 at first and then by the :" -"term:`locale encoding` if it fails." +"The :file:`.pth` files are now decoded by UTF-8 at first and then by " +"the :term:`locale encoding` if it fails." msgstr "" msgid "" @@ -127,8 +128,8 @@ msgid "" msgstr "" msgid "" -"``import`` lines in :file:`{name}.pth` are silently ignored when a :ref:" -"`matching ` :file:`{name}.start` file exists." +"``import`` lines in :file:`{name}.pth` are silently ignored when " +"a :ref:`matching ` :file:`{name}.start` file exists." msgstr "" msgid "" @@ -153,11 +154,11 @@ msgid "Startup entry points (:file:`.start` files)" msgstr "" msgid "" -"A startup entry point file is a file whose name has the form :file:`{name}." -"start` and exists in one of the site-packages directories described above. " -"Each file specifies entry points to be called during interpreter startup, " -"using the ``pkg.mod:callable`` syntax understood by :func:`pkgutil." -"resolve_name`." +"A startup entry point file is a file whose name has the " +"form :file:`{name}.start` and exists in one of the site-packages directories " +"described above. Each file specifies entry points to be called during " +"interpreter startup, using the ``pkg.mod:callable`` syntax understood " +"by :func:`pkgutil.resolve_name`." msgstr "" msgid "" @@ -198,10 +199,10 @@ msgid "" msgstr "" msgid "" -"Executable lines (``import`` lines in :file:`{name}.pth` files and :file:" -"`{name}.start` file entry points) are always run at Python startup (unless :" -"option:`-S` is given to disable the ``site.py`` module entirely), regardless " -"of whether a particular module is actually going to be used." +"Executable lines (``import`` lines in :file:`{name}.pth` files " +"and :file:`{name}.start` file entry points) are always run at Python startup " +"(unless :option:`-S` is given to disable the ``site.py`` module entirely), " +"regardless of whether a particular module is actually going to be used." msgstr "" msgid "" @@ -213,12 +214,13 @@ msgid "Startup file examples" msgstr "" msgid "" -"For example, suppose ``sys.prefix`` and ``sys.exec_prefix`` are set to :file:" -"`/usr/local`. The Python X.Y library is then installed in :file:`/usr/local/" -"lib/python{X.Y}`. Suppose this has a subdirectory :file:`/usr/local/lib/" -"python{X.Y}/site-packages` with three sub-subdirectories, :file:`foo`, :file:" -"`bar` and :file:`spam`, and two path configuration files, :file:`foo.pth` " -"and :file:`bar.pth`. Assume :file:`foo.pth` contains the following::" +"For example, suppose ``sys.prefix`` and ``sys.exec_prefix`` are set " +"to :file:`/usr/local`. The Python X.Y library is then installed in :file:`/" +"usr/local/lib/python{X.Y}`. Suppose this has a subdirectory :file:`/usr/" +"local/lib/python{X.Y}/site-packages` with three sub-" +"subdirectories, :file:`foo`, :file:`bar` and :file:`spam`, and two path " +"configuration files, :file:`foo.pth` and :file:`bar.pth`. " +"Assume :file:`foo.pth` contains the following::" msgstr "" msgid "" @@ -249,10 +251,11 @@ msgid "" msgstr "" msgid "" -"Note that :file:`bletch` is omitted because it doesn't exist; the :file:" -"`bar` directory precedes the :file:`foo` directory because :file:`bar.pth` " -"comes alphabetically before :file:`foo.pth`; and :file:`spam` is omitted " -"because it is not mentioned in either path configuration file." +"Note that :file:`bletch` is omitted because it doesn't exist; " +"the :file:`bar` directory precedes the :file:`foo` directory " +"because :file:`bar.pth` comes alphabetically before :file:`foo.pth`; " +"and :file:`spam` is omitted because it is not mentioned in either path " +"configuration file." msgstr "" msgid "" @@ -290,8 +293,8 @@ msgstr "" msgid "" "If your package must straddle older Pythons that do not support :pep:`829` " -"and newer Pythons that do, change the ``import`` lines in your :file:`{name}." -"pth` to use the following form:" +"and newer Pythons that do, change the ``import`` lines in " +"your :file:`{name}.pth` to use the following form:" msgstr "" msgid "import pkg.mod; pkg.mod.callable()" @@ -307,16 +310,16 @@ msgid ":mod:`!sitecustomize`" msgstr "" msgid "" -"After these path manipulations, an attempt is made to import a module named :" -"mod:`!sitecustomize`, which can perform arbitrary site-specific " +"After these path manipulations, an attempt is made to import a module " +"named :mod:`!sitecustomize`, which can perform arbitrary site-specific " "customizations. It is typically created by a system administrator in the " "site-packages directory. If this import fails with an :exc:`ImportError` or " "its subclass exception, and the exception's :attr:`~ImportError.name` " "attribute equals ``'sitecustomize'``, it is silently ignored. If Python is " "started without output streams available, as with :file:`pythonw.exe` on " -"Windows (which is used by default to start IDLE), attempted output from :mod:" -"`!sitecustomize` is ignored. Any other exception causes a silent and " -"perhaps mysterious failure of the process." +"Windows (which is used by default to start IDLE), attempted output " +"from :mod:`!sitecustomize` is ignored. Any other exception causes a silent " +"and perhaps mysterious failure of the process." msgstr "" msgid ":mod:`!usercustomize`" @@ -327,16 +330,16 @@ msgid "" "usercustomize`, which can perform arbitrary user-specific customizations, " "if :data:`~site.ENABLE_USER_SITE` is true. This file is intended to be " "created in the user site-packages directory (see below), which is part of " -"``sys.path`` unless disabled by :option:`-s`. If this import fails with an :" -"exc:`ImportError` or its subclass exception, and the exception's :attr:" -"`~ImportError.name` attribute equals ``'usercustomize'``, it is silently " -"ignored." +"``sys.path`` unless disabled by :option:`-s`. If this import fails with " +"an :exc:`ImportError` or its subclass exception, and the " +"exception's :attr:`~ImportError.name` attribute equals ``'usercustomize'``, " +"it is silently ignored." msgstr "" msgid "" "Note that for some non-Unix systems, ``sys.prefix`` and ``sys.exec_prefix`` " -"are empty, and the path manipulations are skipped; however the import of :" -"mod:`sitecustomize` and :mod:`!usercustomize` is still attempted." +"are empty, and the path manipulations are skipped; however the import " +"of :mod:`sitecustomize` and :mod:`!usercustomize` is still attempted." msgstr "" msgid "Readline configuration" @@ -344,13 +347,13 @@ msgstr "" msgid "" "On systems that support :mod:`readline`, this module will also import and " -"configure the :mod:`rlcompleter` module, if Python is started in :ref:" -"`interactive mode ` and without the :option:`-S` option. " -"The default behavior is to enable tab completion and to use :file:`~/." -"python_history` as the history save file. To disable it, delete (or " -"override) the :data:`sys.__interactivehook__` attribute in your :mod:" -"`sitecustomize` or :mod:`usercustomize` module or your :envvar:" -"`PYTHONSTARTUP` file." +"configure the :mod:`rlcompleter` module, if Python is started " +"in :ref:`interactive mode ` and without the :option:`-S` " +"option. The default behavior is to enable tab completion and to " +"use :file:`~/.python_history` as the history save file. To disable it, " +"delete (or override) the :data:`sys.__interactivehook__` attribute in " +"your :mod:`sitecustomize` or :mod:`usercustomize` module or " +"your :envvar:`PYTHONSTARTUP` file." msgstr "" msgid "Activation of rlcompleter and history was made automatic." @@ -365,30 +368,32 @@ msgstr "" msgid "" "Flag showing the status of the user site-packages directory. ``True`` means " "that it is enabled and was added to ``sys.path``. ``False`` means that it " -"was disabled by user request (with :option:`-s` or :envvar:" -"`PYTHONNOUSERSITE`). ``None`` means it was disabled for security reasons " -"(mismatch between user or group id and effective id) or by an administrator." +"was disabled by user request (with :option:`-s` " +"or :envvar:`PYTHONNOUSERSITE`). ``None`` means it was disabled for security " +"reasons (mismatch between user or group id and effective id) or by an " +"administrator." msgstr "" msgid "" -"Path to the user site-packages for the running Python. Can be ``None`` if :" -"func:`getusersitepackages` hasn't been called yet. Default value is :file:" -"`~/.local/lib/python{X.Y}[t]/site-packages` for UNIX and non-framework macOS " -"builds, :file:`~/Library/Python/{X.Y}/lib/python/site-packages` for macOS " -"framework builds, and :file:`{%APPDATA%}\\\\Python\\\\Python{XY}\\\\site-" -"packages` on Windows. The optional \"t\" indicates the free-threaded " -"build. This directory is a site directory, which means that :file:`.pth` " -"files in it will be processed." +"Path to the user site-packages for the running Python. Can be ``None`` " +"if :func:`getusersitepackages` hasn't been called yet. Default value " +"is :file:`~/.local/lib/python{X.Y}[t]/site-packages` for UNIX and non-" +"framework macOS builds, :file:`~/Library/Python/{X.Y}/lib/python/site-" +"packages` for macOS framework builds, and :file:`{%APPDATA%}\\\\Python\\" +"\\Python{XY}\\\\site-packages` on Windows. The optional \"t\" indicates the " +"free-threaded build. This directory is a site directory, which means " +"that :file:`.pth` files in it will be processed." msgstr "" msgid "" -"Path to the base directory for the user site-packages. Can be ``None`` if :" -"func:`getuserbase` hasn't been called yet. Default value is :file:`~/." -"local` for UNIX and macOS non-framework builds, :file:`~/Library/Python/{X.Y}" -"` for macOS framework builds, and :file:`{%APPDATA%}\\\\Python` for " -"Windows. This value is used to compute the installation directories for " -"scripts, data files, Python modules, etc. for the :ref:`user installation " -"scheme `. See also :envvar:`PYTHONUSERBASE`." +"Path to the base directory for the user site-packages. Can be ``None`` " +"if :func:`getuserbase` hasn't been called yet. Default value " +"is :file:`~/.local` for UNIX and macOS non-framework builds, :file:`~/" +"Library/Python/{X.Y}` for macOS framework builds, and :file:`{%APPDATA%}\\" +"\\Python` for Windows. This value is used to compute the installation " +"directories for scripts, data files, Python modules, etc. for the :ref:`user " +"installation scheme `. See " +"also :envvar:`PYTHONUSERBASE`." msgstr "" msgid "" @@ -409,10 +414,10 @@ msgid "" msgstr "" msgid "" -"The second element of the returned tuple is the form used throughout the :" -"mod:`!site` module to compare paths on case-insensitive file systems, and is " -"what populates the ``known_paths`` sets that prevent duplicate :data:`sys." -"path` entries in various APIs within this module." +"The second element of the returned tuple is the form used throughout " +"the :mod:`!site` module to compare paths on case-insensitive file systems, " +"and is what populates the ``known_paths`` sets that prevent " +"duplicate :data:`sys.path` entries in various APIs within this module." msgstr "" msgid "" @@ -425,10 +430,10 @@ msgstr "" msgid "" "The optional *known_paths* argument is a set of case-normalized paths (which " -"can be produced by :func:`makepath`) used to prevent duplicate :data:`sys." -"path` entries. When ``None`` (the default), the set is built from the " -"current :data:`sys.path`. :func:`main` implicitly uses an instance of this " -"class." +"can be produced by :func:`makepath`) used to prevent " +"duplicate :data:`sys.path` entries. When ``None`` (the default), the set is " +"built from the current :data:`sys.path`. :func:`main` implicitly uses an " +"instance of this class." msgstr "" msgid "Typical use:" @@ -450,8 +455,8 @@ msgstr "" msgid "" "Add the per-user site-packages directory, if enabled and if it exists. The " -"directory's startup data is accumulated for later processing by :meth:" -"`process`." +"directory's startup data is accumulated for later processing " +"by :meth:`process`." msgstr "" msgid "" @@ -461,9 +466,9 @@ msgid "" msgstr "" msgid "" -"Apply the accumulated state by first adding the path extensions to :data:" -"`sys.path`, then executing the :file:`.start` file entry points and :file:`." -"pth` file ``import`` lines (:ref:`deprecated `)." +"Apply the accumulated state by first adding the path extensions " +"to :data:`sys.path`, then executing the :file:`.start` file entry points " +"and :file:`.pth` file ``import`` lines (:ref:`deprecated `)." msgstr "" msgid "" @@ -474,8 +479,8 @@ msgstr "" msgid "" "Add a directory to sys.path and parse the :file:`.pth` and :file:`.start` " -"files found in that directory. Typically used in :mod:`sitecustomize` or :" -"mod:`usercustomize` (see above)." +"files found in that directory. Typically used in :mod:`sitecustomize` " +"or :mod:`usercustomize` (see above)." msgstr "" msgid "" @@ -485,11 +490,11 @@ msgid "" msgstr "" msgid "" -"For batched processing across multiple site directories, build a :class:" -"`StartupState` explicitly and call :meth:`StartupState.addsitedir` on it; " -"that defers :file:`.pth` and :file:`.start` processing until a single :meth:" -"`StartupState.process` call, ensuring every :data:`sys.path` extension is " -"visible before any startup code runs." +"For batched processing across multiple site directories, build " +"a :class:`StartupState` explicitly and call :meth:`StartupState.addsitedir` " +"on it; that defers :file:`.pth` and :file:`.start` processing until a " +"single :meth:`StartupState.process` call, ensuring every :data:`sys.path` " +"extension is visible before any startup code runs." msgstr "" msgid "Also processes :file:`.start` files. See :ref:`site-start-files`." @@ -498,17 +503,28 @@ msgstr "" msgid "Return a list containing all global site-packages directories." msgstr "" +msgid "" +"For each directory given in *prefixes* (or :data:`PREFIXES` if *prefixes* is " +"``None``), this function will compute its site-packages subdirectory " +"depending on the system environment, and will return a list of full paths, " +"which are not checked for existence." +msgstr "" + +msgid "Added the optional *prefixes* parameter." +msgstr "" + msgid "" "Return the path of the user base directory, :data:`USER_BASE`. If it is not " -"initialized yet, this function will also set it, respecting :envvar:" -"`PYTHONUSERBASE`." +"initialized yet, this function will also set it, " +"respecting :envvar:`PYTHONUSERBASE`." msgstr "" msgid "" -"Return the path of the user-specific site-packages directory, :data:" -"`USER_SITE`. If it is not initialized yet, this function will also set it, " -"respecting :data:`USER_BASE`. To determine if the user-specific site-" -"packages was added to ``sys.path`` :data:`ENABLE_USER_SITE` should be used." +"Return the path of the user-specific site-packages " +"directory, :data:`USER_SITE`. If it is not initialized yet, this function " +"will also set it, respecting :data:`USER_BASE`. To determine if the user-" +"specific site-packages was added to ``sys.path`` :data:`ENABLE_USER_SITE` " +"should be used." msgstr "" msgid "Command-line interface" @@ -525,10 +541,10 @@ msgid "" msgstr "" msgid "" -"If it is called without arguments, it will print the contents of :data:`sys." -"path` on the standard output, followed by the value of :data:`USER_BASE` and " -"whether the directory exists, then the same thing for :data:`USER_SITE`, and " -"finally the value of :data:`ENABLE_USER_SITE`." +"If it is called without arguments, it will print the contents " +"of :data:`sys.path` on the standard output, followed by the value " +"of :data:`USER_BASE` and whether the directory exists, then the same thing " +"for :data:`USER_SITE`, and finally the value of :data:`ENABLE_USER_SITE`." msgstr "" msgid "Print the path to the user base directory." @@ -553,8 +569,8 @@ msgid ":pep:`370` -- Per user site-packages directory" msgstr "" msgid "" -":pep:`829` -- Startup entry points and the deprecation of import lines in ``." -"pth`` files" +":pep:`829` -- Startup entry points and the deprecation of import lines in " +"``.pth`` files" msgstr "" msgid ":ref:`sys-path-init` -- The initialization of :data:`sys.path`." diff --git a/library/smtpd.po b/library/smtpd.po index 704dee6..7c581e8 100644 --- a/library/smtpd.po +++ b/library/smtpd.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!smtpd` --- SMTP Server" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.12 ` after being deprecated in " -"Python 3.6. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.12 ` after being " +"deprecated in Python 3.6. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/smtplib.po b/library/smtplib.po index 9b4c429..744e527 100644 --- a/library/smtplib.po +++ b/library/smtplib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,29 +56,30 @@ msgstr "" msgid "" "If specified, *local_hostname* is used as the FQDN of the local host in the " -"HELO/EHLO command. Otherwise, the local hostname is found using :func:" -"`socket.getfqdn`. If the :meth:`connect` call returns anything other than a " -"success code, an :exc:`SMTPConnectError` is raised. The optional *timeout* " -"parameter specifies a timeout in seconds for blocking operations like the " -"connection attempt (if not specified, the global default timeout setting " -"will be used). If the timeout expires, :exc:`TimeoutError` is raised. The " -"optional *source_address* parameter allows binding to some specific source " -"address in a machine with multiple network interfaces, and/or to some " -"specific source TCP port. It takes a 2-tuple ``(host, port)``, for the " -"socket to bind to as its source address before connecting. If omitted (or if " -"*host* or *port* are ``''`` and/or ``0`` respectively) the OS default " -"behavior will be used." +"HELO/EHLO command. Otherwise, the local hostname is found " +"using :func:`socket.getfqdn`. If the :meth:`connect` call returns anything " +"other than a success code, an :exc:`SMTPConnectError` is raised. The " +"optional *timeout* parameter specifies a timeout in seconds for blocking " +"operations like the connection attempt (if not specified, the global default " +"timeout setting will be used). If the timeout expires, :exc:`TimeoutError` " +"is raised. The optional *source_address* parameter allows binding to some " +"specific source address in a machine with multiple network interfaces, and/" +"or to some specific source TCP port. It takes a 2-tuple ``(host, port)``, " +"for the socket to bind to as its source address before connecting. If " +"omitted (or if *host* or *port* are ``''`` and/or ``0`` respectively) the OS " +"default behavior will be used." msgstr "" msgid "" -"For normal use, you should only require the initialization/connect, :meth:" -"`sendmail`, and :meth:`SMTP.quit` methods. An example is included below." +"For normal use, you should only require the initialization/" +"connect, :meth:`sendmail`, and :meth:`SMTP.quit` methods. An example is " +"included below." msgstr "" msgid "" "The :class:`SMTP` class supports the :keyword:`with` statement. When used " -"like this, the SMTP ``QUIT`` command is issued automatically when the :" -"keyword:`!with` statement exits. E.g.::" +"like this, the SMTP ``QUIT`` command is issued automatically when " +"the :keyword:`!with` statement exits. E.g.::" msgstr "" msgid "" @@ -91,9 +92,9 @@ msgid "" msgstr "" msgid "" -"All commands will raise an :ref:`auditing event ` ``smtplib.SMTP." -"send`` with arguments ``self`` and ``data``, where ``data`` is the bytes " -"about to be sent to the remote host." +"All commands will raise an :ref:`auditing event ` " +"``smtplib.SMTP.send`` with arguments ``self`` and ``data``, where ``data`` " +"is the bytes about to be sent to the remote host." msgstr "" msgid "The default port used for SMTP connections (25)." @@ -109,15 +110,15 @@ msgid "The SMTPUTF8 extension (:rfc:`6531`) is now supported." msgstr "" msgid "" -"If the *timeout* parameter is set to be zero, it will raise a :class:" -"`ValueError` to prevent the creation of a non-blocking socket." +"If the *timeout* parameter is set to be zero, it will raise " +"a :class:`ValueError` to prevent the creation of a non-blocking socket." msgstr "" msgid "" -"An :class:`SMTP_SSL` instance behaves exactly the same as instances of :" -"class:`SMTP`. :class:`SMTP_SSL` should be used for situations where SSL is " -"required from the beginning of the connection and using :meth:`SMTP." -"starttls` is not appropriate." +"An :class:`SMTP_SSL` instance behaves exactly the same as instances " +"of :class:`SMTP`. :class:`SMTP_SSL` should be used for situations where SSL " +"is required from the beginning of the connection and " +"using :meth:`SMTP.starttls` is not appropriate." msgstr "" msgid "" @@ -144,13 +145,14 @@ msgid "The *source_address* argument was added." msgstr "" msgid "" -"The class now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indication* (see :const:`ssl.HAS_SNI`)." +"The class now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indication* " +"(see :const:`ssl.HAS_SNI`)." msgstr "" msgid "" -"If the *timeout* parameter is set to be zero, it will raise a :class:" -"`ValueError` to prevent the creation of a non-blocking socket" +"If the *timeout* parameter is set to be zero, it will raise " +"a :class:`ValueError` to prevent the creation of a non-blocking socket" msgstr "" msgid "The deprecated *keyfile* and *certfile* parameters have been removed." @@ -158,11 +160,12 @@ msgstr "" msgid "" "The LMTP protocol, which is very similar to ESMTP, is heavily based on the " -"standard SMTP client. It's common to use Unix sockets for LMTP, so our :meth:" -"`~SMTP.connect` method must support that as well as a regular host:port " -"server. The optional arguments *local_hostname* and *source_address* have " -"the same meaning as they do in the :class:`SMTP` class. To specify a Unix " -"socket, you must use an absolute path for *host*, starting with a '/'." +"standard SMTP client. It's common to use Unix sockets for LMTP, so " +"our :meth:`~SMTP.connect` method must support that as well as a regular " +"host:port server. The optional arguments *local_hostname* and " +"*source_address* have the same meaning as they do in the :class:`SMTP` " +"class. To specify a Unix socket, you must use an absolute path for *host*, " +"starting with a '/'." msgstr "" msgid "" @@ -204,9 +207,9 @@ msgid "The error message." msgstr "" msgid "" -"Sender address refused. In addition to the attributes set by on all :exc:" -"`SMTPResponseException` exceptions, this sets 'sender' to the string that " -"the SMTP server refused." +"Sender address refused. In addition to the attributes set by on " +"all :exc:`SMTPResponseException` exceptions, this sets 'sender' to the " +"string that the SMTP server refused." msgstr "" msgid "All recipient addresses refused." @@ -284,8 +287,8 @@ msgid "" msgstr "" msgid "" -"If the connection to the server is lost while waiting for the reply, :exc:" -"`SMTPServerDisconnected` will be raised." +"If the connection to the server is lost while waiting for the " +"reply, :exc:`SMTPServerDisconnected` will be raised." msgstr "" msgid "" @@ -299,8 +302,8 @@ msgid "" msgstr "" msgid "" -"If port is not changed from its default value of 0, the value of the :attr:" -"`default_port` attribute is used." +"If port is not changed from its default value of 0, the value of " +"the :attr:`default_port` attribute is used." msgstr "" msgid "" @@ -327,9 +330,9 @@ msgid "" "response for ESMTP option and store them for use by :meth:`has_extn`. Also " "sets several informational attributes: the message returned by the server is " "stored as the :attr:`ehlo_resp` attribute, :attr:`does_esmtp` is set to " -"``True`` or ``False`` depending on whether the server supports ESMTP, and :" -"attr:`esmtp_features` will be a dictionary containing the names of the SMTP " -"service extensions this server supports, and their parameters (if any)." +"``True`` or ``False`` depending on whether the server supports ESMTP, " +"and :attr:`esmtp_features` will be a dictionary containing the names of the " +"SMTP service extensions this server supports, and their parameters (if any)." msgstr "" msgid "" @@ -448,10 +451,10 @@ msgstr "" msgid "" "The ``SMTP`` class provides ``authobjects`` for the ``CRAM-MD5``, ``PLAIN``, " -"and ``LOGIN`` mechanisms; they are named ``SMTP.auth_cram_md5``, ``SMTP." -"auth_plain``, and ``SMTP.auth_login`` respectively. They all require that " -"the ``user`` and ``password`` properties of the ``SMTP`` instance are set to " -"appropriate values." +"and ``LOGIN`` mechanisms; they are named ``SMTP.auth_cram_md5``, " +"``SMTP.auth_plain``, and ``SMTP.auth_login`` respectively. They all require " +"that the ``user`` and ``password`` properties of the ``SMTP`` instance are " +"set to appropriate values." msgstr "" msgid "" @@ -469,8 +472,8 @@ msgid "" msgstr "" msgid "" -"If *keyfile* and *certfile* are provided, they are used to create an :class:" -"`ssl.SSLContext`." +"If *keyfile* and *certfile* are provided, they are used to create " +"an :class:`ssl.SSLContext`." msgstr "" msgid "" @@ -494,13 +497,15 @@ msgid "SSL/TLS support is not available to your Python interpreter." msgstr "" msgid "" -"The method now supports hostname check with :attr:`ssl.SSLContext." -"check_hostname` and *Server Name Indicator* (see :const:`~ssl.HAS_SNI`)." +"The method now supports hostname check " +"with :attr:`ssl.SSLContext.check_hostname` and *Server Name Indicator* " +"(see :const:`~ssl.HAS_SNI`)." msgstr "" msgid "" -"The error raised for lack of STARTTLS support is now the :exc:" -"`SMTPNotSupportedError` subclass instead of the base :exc:`SMTPException`." +"The error raised for lack of STARTTLS support is now " +"the :exc:`SMTPNotSupportedError` subclass instead of the " +"base :exc:`SMTPException`." msgstr "" msgid "" @@ -511,10 +516,10 @@ msgid "" "commands as *mail_options*. ESMTP options (such as ``DSN`` commands) that " "should be used with all ``RCPT`` commands can be passed as *rcpt_options*. " "Each option should be passed as a string containing the full text of the " -"option, including any potential key (for instance, ``\"NOTIFY=SUCCESS," -"FAILURE\"``). (If you need to use different ESMTP options to different " -"recipients you have to use the low-level methods such as :meth:`!mail`, :" -"meth:`!rcpt` and :meth:`!data` to send the message.)" +"option, including any potential key (for instance, " +"``\"NOTIFY=SUCCESS,FAILURE\"``). (If you need to use different ESMTP options " +"to different recipients you have to use the low-level methods such " +"as :meth:`!mail`, :meth:`!rcpt` and :meth:`!data` to send the message.)" msgstr "" msgid "" @@ -605,27 +610,28 @@ msgid "" "those arguments with addresses extracted from the headers of *msg* as " "specified in :rfc:`5322`\\: *from_addr* is set to the :mailheader:`Sender` " "field if it is present, and otherwise to the :mailheader:`From` field. " -"*to_addrs* combines the values (if any) of the :mailheader:`To`, :mailheader:" -"`Cc`, and :mailheader:`Bcc` fields from *msg*. If exactly one set of :" -"mailheader:`Resent-*` headers appear in the message, the regular headers are " -"ignored and the :mailheader:`Resent-*` headers are used instead. If the " -"message contains more than one set of :mailheader:`Resent-*` headers, a :exc:" -"`ValueError` is raised, since there is no way to unambiguously detect the " -"most recent set of :mailheader:`Resent-` headers." -msgstr "" - -msgid "" -"``send_message`` serializes *msg* using :class:`~email.generator." -"BytesGenerator` with ``\\r\\n`` as the *linesep*, and calls :meth:`sendmail` " -"to transmit the resulting message. Regardless of the values of *from_addr* " -"and *to_addrs*, ``send_message`` does not transmit any :mailheader:`Bcc` or :" -"mailheader:`Resent-Bcc` headers that may appear in *msg*. If any of the " -"addresses in *from_addr* and *to_addrs* contain non-ASCII characters and the " -"server does not advertise ``SMTPUTF8`` support, an :exc:" -"`SMTPNotSupportedError` is raised. Otherwise the ``Message`` is serialized " -"with a clone of its :mod:`~email.policy` with the :attr:`~email.policy." -"EmailPolicy.utf8` attribute set to ``True``, and ``SMTPUTF8`` and " -"``BODY=8BITMIME`` are added to *mail_options*." +"*to_addrs* combines the values (if any) of " +"the :mailheader:`To`, :mailheader:`Cc`, and :mailheader:`Bcc` fields from " +"*msg*. If exactly one set of :mailheader:`Resent-*` headers appear in the " +"message, the regular headers are ignored and the :mailheader:`Resent-*` " +"headers are used instead. If the message contains more than one set " +"of :mailheader:`Resent-*` headers, a :exc:`ValueError` is raised, since " +"there is no way to unambiguously detect the most recent set " +"of :mailheader:`Resent-` headers." +msgstr "" + +msgid "" +"``send_message`` serializes *msg* " +"using :class:`~email.generator.BytesGenerator` with ``\\r\\n`` as the " +"*linesep*, and calls :meth:`sendmail` to transmit the resulting message. " +"Regardless of the values of *from_addr* and *to_addrs*, ``send_message`` " +"does not transmit any :mailheader:`Bcc` or :mailheader:`Resent-Bcc` headers " +"that may appear in *msg*. If any of the addresses in *from_addr* and " +"*to_addrs* contain non-ASCII characters and the server does not advertise " +"``SMTPUTF8`` support, an :exc:`SMTPNotSupportedError` is raised. Otherwise " +"the ``Message`` is serialized with a clone of its :mod:`~email.policy` with " +"the :attr:`~email.policy.EmailPolicy.utf8` attribute set to ``True``, and " +"``SMTPUTF8`` and ``BODY=8BITMIME`` are added to *mail_options*." msgstr "" msgid "Support for internationalized addresses (``SMTPUTF8``)." @@ -653,8 +659,8 @@ msgid "The response to the ``EHLO`` command, see :meth:`ehlo`." msgstr "" msgid "" -"A boolean value indicating whether the server supports ESMTP, see :meth:" -"`ehlo`." +"A boolean value indicating whether the server supports ESMTP, " +"see :meth:`ehlo`." msgstr "" msgid "" @@ -705,8 +711,8 @@ msgstr "" msgid "" "In general, you will want to use the :mod:`email` package's features to " -"construct an email message, which you can then send via :meth:`~smtplib.SMTP." -"send_message`; see :ref:`email-examples`." +"construct an email message, which you can then send " +"via :meth:`~smtplib.SMTP.send_message`; see :ref:`email-examples`." msgstr "" msgid "SMTP" diff --git a/library/sndhdr.po b/library/sndhdr.po index 222cb5b..d8bab67 100644 --- a/library/sndhdr.po +++ b/library/sndhdr.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,15 +27,15 @@ msgid ":mod:`!sndhdr` --- Determine type of sound file" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" -"Possible replacements are third-party modules from PyPI: :pypi:`filetype`, :" -"pypi:`puremagic`, or :pypi:`python-magic`. These are not supported or " -"maintained by the Python core team." +"Possible replacements are third-party modules from " +"PyPI: :pypi:`filetype`, :pypi:`puremagic`, or :pypi:`python-magic`. These " +"are not supported or maintained by the Python core team." msgstr "" msgid "" diff --git a/library/socket.po b/library/socket.po index 9befd5d..adbf19c 100644 --- a/library/socket.po +++ b/library/socket.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,8 +53,8 @@ msgid "" "call and library interface for sockets to Python's object-oriented style: " "the :func:`~socket.socket` function returns a :dfn:`socket object` whose " "methods implement the various socket system calls. Parameter types are " -"somewhat higher-level than in the C interface: as with :meth:`read` and :" -"meth:`write` operations on Python files, buffer allocation on receive " +"somewhat higher-level than in the C interface: as with :meth:`read` " +"and :meth:`write` operations on Python files, buffer allocation on receive " "operations is automatic, and buffer length is implicit on send operations." msgstr "" @@ -111,10 +112,10 @@ msgstr "" msgid "" "For IPv4 addresses, two special forms are accepted instead of a host " "address: ``''`` represents :const:`INADDR_ANY`, which is used to bind to all " -"interfaces, and the string ``''`` represents :const:" -"`INADDR_BROADCAST`. This behavior is not compatible with IPv6, therefore, " -"you may want to avoid these if you intend to support IPv6 with your Python " -"programs." +"interfaces, and the string ``''`` " +"represents :const:`INADDR_BROADCAST`. This behavior is not compatible with " +"IPv6, therefore, you may want to avoid these if you intend to support IPv6 " +"with your Python programs." msgstr "" msgid "" @@ -218,9 +219,9 @@ msgid "" msgstr "" msgid "" -"``bdaddr_type`` is an optional integer specifying the address type; one of :" -"const:`BDADDR_BREDR` (default), :const:`BDADDR_LE_PUBLIC`, :const:" -"`BDADDR_LE_RANDOM`." +"``bdaddr_type`` is an optional integer specifying the address type; one " +"of :const:`BDADDR_BREDR` " +"(default), :const:`BDADDR_LE_PUBLIC`, :const:`BDADDR_LE_RANDOM`." msgstr "" msgid "Added ``cid`` and ``bdaddr_type`` fields." @@ -237,8 +238,8 @@ msgstr "" msgid "" "On Linux it accepts an integer ``device_id`` or a tuple ``(device_id, " "[channel])`` where ``device_id`` specifies the number of the Bluetooth " -"device, and ``channel`` is an optional integer specifying the HCI channel (:" -"const:`HCI_CHANNEL_RAW` by default)." +"device, and ``channel`` is an optional integer specifying the HCI channel " +"(:const:`HCI_CHANNEL_RAW` by default)." msgstr "" msgid "" @@ -420,8 +421,8 @@ msgstr "" msgid "" "Non-blocking mode is supported through :meth:`~socket.setblocking`. A " -"generalization of this based on timeouts is supported through :meth:`~socket." -"settimeout`." +"generalization of this based on timeouts is supported " +"through :meth:`~socket.settimeout`." msgstr "" msgid "Module contents" @@ -441,11 +442,12 @@ msgstr "" msgid "" "A subclass of :exc:`OSError`, this exception is raised for address-related " -"errors, i.e. for functions that use *h_errno* in the POSIX C API, including :" -"func:`gethostbyname_ex` and :func:`gethostbyaddr`. The accompanying value is " -"a pair ``(h_errno, string)`` representing an error returned by a library " -"call. *h_errno* is a numeric value, while *string* represents the " -"description of *h_errno*, as returned by the :c:func:`hstrerror` C function." +"errors, i.e. for functions that use *h_errno* in the POSIX C API, " +"including :func:`gethostbyname_ex` and :func:`gethostbyaddr`. The " +"accompanying value is a pair ``(h_errno, string)`` representing an error " +"returned by a library call. *h_errno* is a numeric value, while *string* " +"represents the description of *h_errno*, as returned by " +"the :c:func:`hstrerror` C function." msgstr "" msgid "This class was made a subclass of :exc:`OSError`." @@ -465,10 +467,10 @@ msgstr "" msgid "" "A subclass of :exc:`OSError`, this exception is raised when a timeout occurs " -"on a socket which has had timeouts enabled via a prior call to :meth:" -"`~socket.settimeout` (or implicitly through :func:`~socket." -"setdefaulttimeout`). The accompanying value is a string whose value is " -"currently always \"timed out\"." +"on a socket which has had timeouts enabled via a prior call " +"to :meth:`~socket.settimeout` (or implicitly " +"through :func:`~socket.setdefaulttimeout`). The accompanying value is a " +"string whose value is currently always \"timed out\"." msgstr "" msgid "This class was made an alias of :exc:`TimeoutError`." @@ -478,8 +480,8 @@ msgid "Constants" msgstr "" msgid "" -"The AF_* and SOCK_* constants are now :class:`AddressFamily` and :class:" -"`SocketKind` :class:`.IntEnum` collections." +"The AF_* and SOCK_* constants are now :class:`AddressFamily` " +"and :class:`SocketKind` :class:`.IntEnum` collections." msgstr "" msgid "" @@ -496,8 +498,8 @@ msgid "" msgstr "" msgid "" -"These constants represent the socket types, used for the second argument to :" -"func:`~socket.socket`. More constants may be available depending on the " +"These constants represent the socket types, used for the second argument " +"to :func:`~socket.socket`. More constants may be available depending on the " "system. (Only :const:`SOCK_STREAM` and :const:`SOCK_DGRAM` appear to be " "generally useful.)" msgstr "" @@ -509,17 +511,17 @@ msgid "" msgstr "" msgid "" -"`Secure File Descriptor Handling `_ for a more thorough explanation." +"`Secure File Descriptor Handling `_ for a more thorough explanation." msgstr "" msgid "" "Many constants of these forms, documented in the Unix documentation on " "sockets and/or the IP protocol, are also defined in the socket module. They " -"are generally used in arguments to the :meth:`~socket.setsockopt` and :meth:" -"`~socket.getsockopt` methods of socket objects. In most cases, only those " -"symbols that are defined in the Unix header files are defined; for a few " -"symbols, default values are provided." +"are generally used in arguments to the :meth:`~socket.setsockopt` " +"and :meth:`~socket.getsockopt` methods of socket objects. In most cases, " +"only those symbols that are defined in the Unix header files are defined; " +"for a few symbols, default values are provided." msgstr "" msgid "" @@ -682,8 +684,8 @@ msgid "" msgstr "" msgid "" -"Used in the level argument to the :meth:`~socket.setsockopt` and :meth:" -"`~socket.getsockopt` methods of Bluetooth socket objects." +"Used in the level argument to the :meth:`~socket.setsockopt` " +"and :meth:`~socket.getsockopt` methods of Bluetooth socket objects." msgstr "" msgid "" @@ -736,8 +738,8 @@ msgid "" msgstr "" msgid "" -"Constant to optimize CPU locality, to be used in conjunction with :data:" -"`SO_REUSEPORT`." +"Constant to optimize CPU locality, to be used in conjunction " +"with :data:`SO_REUSEPORT`." msgstr "" msgid "" @@ -776,8 +778,8 @@ msgid "" "Build a pair of connected socket objects using the given address family, " "socket type, and protocol number. Address family, socket type, and protocol " "number are as for the :func:`~socket.socket` function. The default family " -"is :const:`AF_UNIX` if defined on the platform; otherwise, the default is :" -"const:`AF_INET`." +"is :const:`AF_UNIX` if defined on the platform; otherwise, the default " +"is :const:`AF_INET`." msgstr "" msgid "The newly created sockets are :ref:`non-inheritable `." @@ -837,8 +839,8 @@ msgstr "" msgid "" "*family* should be either :data:`AF_INET` or :data:`AF_INET6`. *backlog* is " "the queue size passed to :meth:`socket.listen`; if not specified , a default " -"reasonable value is chosen. *reuse_port* dictates whether to set the :data:" -"`SO_REUSEPORT` socket option." +"reasonable value is chosen. *reuse_port* dictates whether to set " +"the :data:`SO_REUSEPORT` socket option." msgstr "" msgid "" @@ -878,8 +880,8 @@ msgstr "" msgid "" "Duplicate the file descriptor *fd* (an integer as returned by a file " "object's :meth:`~io.IOBase.fileno` method) and build a socket object from " -"the result. Address family, socket type and protocol number are as for the :" -"func:`~socket.socket` function. The file descriptor should refer to a " +"the result. Address family, socket type and protocol number are as for " +"the :func:`~socket.socket` function. The file descriptor should refer to a " "socket, but this is not checked --- subsequent operations on the object may " "fail if the file descriptor is invalid. This function is rarely needed, but " "can be used to get or set socket options on a socket passed to a program as " @@ -932,9 +934,9 @@ msgstr "" msgid "" "The *flags* argument can be one or several of the ``AI_*`` constants, and " -"will influence how results are computed and returned. For example, :const:" -"`AI_NUMERICHOST` will disable domain name resolution and will raise an error " -"if *host* is a domain name." +"will influence how results are computed and returned. For " +"example, :const:`AI_NUMERICHOST` will disable domain name resolution and " +"will raise an error if *host* is a domain name." msgstr "" msgid "The function returns a list of 5-tuples with the following structure:" @@ -946,11 +948,11 @@ msgstr "" msgid "" "In these tuples, *family*, *type*, *proto* are all integers and are meant to " "be passed to the :func:`~socket.socket` function. *canonname* will be a " -"string representing the canonical name of the *host* if :const:" -"`AI_CANONNAME` is part of the *flags* argument; else *canonname* will be " -"empty. *sockaddr* is a tuple describing a socket address, whose format " -"depends on the returned *family* and flags Python was compiled with, and is " -"meant to be passed to the :meth:`socket.connect` method." +"string representing the canonical name of the *host* " +"if :const:`AI_CANONNAME` is part of the *flags* argument; else *canonname* " +"will be empty. *sockaddr* is a tuple describing a socket address, whose " +"format depends on the returned *family* and flags Python was compiled with, " +"and is meant to be passed to the :meth:`socket.connect` method." msgstr "" msgid "*sockaddr* can be one of the following:" @@ -1080,8 +1082,8 @@ msgid "" "(possibly empty) list of alternative host names for the same address, and " "*ipaddrlist* is a list of IPv4/v6 addresses for the same interface on the " "same host (most likely containing only a single address). To find the fully " -"qualified domain name, use the function :func:`getfqdn`. :func:" -"`gethostbyaddr` supports both IPv4 and IPv6." +"qualified domain name, use the " +"function :func:`getfqdn`. :func:`gethostbyaddr` supports both IPv4 and IPv6." msgstr "" msgid "" @@ -1112,10 +1114,11 @@ msgstr "" msgid "" "Translate an internet protocol name (for example, ``'icmp'``) to a constant " -"suitable for passing as the (optional) third argument to the :func:`~socket." -"socket` function. This is usually only needed for sockets opened in \"raw\" " -"mode (:const:`SOCK_RAW`); for the normal socket modes, the correct protocol " -"is chosen automatically if the protocol is omitted or zero." +"suitable for passing as the (optional) third argument to " +"the :func:`~socket.socket` function. This is usually only needed for " +"sockets opened in \"raw\" mode (:const:`SOCK_RAW`); for the normal socket " +"modes, the correct protocol is chosen automatically if the protocol is " +"omitted or zero." msgstr "" msgid "" @@ -1182,9 +1185,9 @@ msgid "" msgstr "" msgid "" -"If the IPv4 address string passed to this function is invalid, :exc:" -"`OSError` will be raised. Note that exactly what is valid depends on the " -"underlying C implementation of :c:func:`inet_aton`." +"If the IPv4 address string passed to this function is " +"invalid, :exc:`OSError` will be raised. Note that exactly what is valid " +"depends on the underlying C implementation of :c:func:`inet_aton`." msgstr "" msgid "" @@ -1211,16 +1214,16 @@ msgstr "" msgid "" "Convert an IP address from its family-specific string format to a packed, " "binary format. :func:`inet_pton` is useful when a library or network " -"protocol calls for an object of type :c:struct:`in_addr` (similar to :func:" -"`inet_aton`) or :c:struct:`in6_addr`." +"protocol calls for an object of type :c:struct:`in_addr` (similar " +"to :func:`inet_aton`) or :c:struct:`in6_addr`." msgstr "" msgid "" -"Supported values for *address_family* are currently :const:`AF_INET` and :" -"const:`AF_INET6`. If the IP address string *ip_string* is invalid, :exc:" -"`OSError` will be raised. Note that exactly what is valid depends on both " -"the value of *address_family* and the underlying implementation of :c:func:" -"`inet_pton`." +"Supported values for *address_family* are currently :const:`AF_INET` " +"and :const:`AF_INET6`. If the IP address string *ip_string* is " +"invalid, :exc:`OSError` will be raised. Note that exactly what is valid " +"depends on both the value of *address_family* and the underlying " +"implementation of :c:func:`inet_pton`." msgstr "" msgid "Windows support added" @@ -1235,20 +1238,21 @@ msgid "" msgstr "" msgid "" -"Supported values for *address_family* are currently :const:`AF_INET` and :" -"const:`AF_INET6`. If the bytes object *packed_ip* is not the correct length " -"for the specified address family, :exc:`ValueError` will be raised. :exc:" -"`OSError` is raised for errors from the call to :func:`inet_ntop`." +"Supported values for *address_family* are currently :const:`AF_INET` " +"and :const:`AF_INET6`. If the bytes object *packed_ip* is not the correct " +"length for the specified address family, :exc:`ValueError` will be " +"raised. :exc:`OSError` is raised for errors from the call " +"to :func:`inet_ntop`." msgstr "" msgid "" "Return the total length, without trailing padding, of an ancillary data item " "with associated data of the given *length*. This value can often be used as " "the buffer size for :meth:`~socket.recvmsg` to receive a single item of " -"ancillary data, but :rfc:`3542` requires portable applications to use :func:" -"`CMSG_SPACE` and thus include space for padding, even when the item will be " -"the last in the buffer. Raises :exc:`OverflowError` if *length* is outside " -"the permissible range of values." +"ancillary data, but :rfc:`3542` requires portable applications to " +"use :func:`CMSG_SPACE` and thus include space for padding, even when the " +"item will be the last in the buffer. Raises :exc:`OverflowError` if " +"*length* is outside the permissible range of values." msgstr "" msgid "Most Unix platforms." @@ -1281,8 +1285,9 @@ msgstr "" msgid "" "Set the default timeout in seconds (real number) for new socket objects. " -"When the socket module is first imported, the default is ``None``. See :" -"meth:`~socket.settimeout` for possible values and their respective meanings." +"When the socket module is first imported, the default is ``None``. " +"See :meth:`~socket.settimeout` for possible values and their respective " +"meanings." msgstr "" msgid "Accepts any real number, not only integer or float." @@ -1329,22 +1334,22 @@ msgid "" msgstr "" msgid "" -"Return a network interface index number corresponding to an interface name. :" -"exc:`OSError` if no interface with the given name exists." +"Return a network interface index number corresponding to an interface " +"name. :exc:`OSError` if no interface with the given name exists." msgstr "" msgid "\"Interface name\" is a name as documented in :func:`if_nameindex`." msgstr "" msgid "" -"Return a network interface name corresponding to an interface index number. :" -"exc:`OSError` if no interface with the given index exists." +"Return a network interface name corresponding to an interface index " +"number. :exc:`OSError` if no interface with the given index exists." msgstr "" msgid "" "Send the list of file descriptors *fds* over an :const:`AF_UNIX` socket " -"*sock*. The *fds* parameter is a sequence of file descriptors. Consult :meth:" -"`~socket.sendmsg` for the documentation of these parameters." +"*sock*. The *fds* parameter is a sequence of file descriptors. " +"Consult :meth:`~socket.sendmsg` for the documentation of these parameters." msgstr "" msgid "" @@ -1354,8 +1359,8 @@ msgstr "" msgid "" "Receive up to *maxfds* file descriptors from an :const:`AF_UNIX` socket " -"*sock*. Return ``(msg, list(fds), flags, addr)``. Consult :meth:`~socket." -"recvmsg` for the documentation of these parameters." +"*sock*. Return ``(msg, list(fds), flags, addr)``. " +"Consult :meth:`~socket.recvmsg` for the documentation of these parameters." msgstr "" msgid "" @@ -1371,14 +1376,14 @@ msgstr "" msgid "" "Create a new socket using the given address family, socket type and protocol " -"number. The address family should be :const:`AF_INET` (the default), :const:" -"`AF_INET6`, :const:`AF_UNIX`, :const:`AF_CAN`, :const:`AF_PACKET`, or :const:" -"`AF_RDS`. The socket type should be :const:`SOCK_STREAM` (the default), :" -"const:`SOCK_DGRAM`, :const:`SOCK_RAW` or perhaps one of the other ``SOCK_`` " -"constants. The protocol number is usually zero and may be omitted or in the " -"case where the address family is :const:`AF_CAN` the protocol should be one " -"of :const:`CAN_RAW`, :const:`CAN_BCM`, :const:`CAN_ISOTP` or :const:" -"`CAN_J1939`." +"number. The address family should be :const:`AF_INET` (the " +"default), :const:`AF_INET6`, :const:`AF_UNIX`, :const:`AF_CAN`, :const:`AF_PACKET`, " +"or :const:`AF_RDS`. The socket type should be :const:`SOCK_STREAM` (the " +"default), :const:`SOCK_DGRAM`, :const:`SOCK_RAW` or perhaps one of the other " +"``SOCK_`` constants. The protocol number is usually zero and may be omitted " +"or in the case where the address family is :const:`AF_CAN` the protocol " +"should be one of :const:`CAN_RAW`, :const:`CAN_BCM`, :const:`CAN_ISOTP` " +"or :const:`CAN_J1939`." msgstr "" msgid "" @@ -1386,9 +1391,10 @@ msgid "" "auto-detected from the specified file descriptor. Auto-detection can be " "overruled by calling the function with explicit *family*, *type*, or *proto* " "arguments. This only affects how Python represents e.g. the return value " -"of :meth:`socket.getpeername` but not the actual OS resource. Unlike :func:" -"`socket.fromfd`, *fileno* will return the same socket and not a duplicate. " -"This may help close a detached socket using :meth:`socket.close`." +"of :meth:`socket.getpeername` but not the actual OS resource. " +"Unlike :func:`socket.fromfd`, *fileno* will return the same socket and not a " +"duplicate. This may help close a detached socket " +"using :meth:`~socket.socket.close`." msgstr "" msgid "" @@ -1429,13 +1435,14 @@ msgid "The IPPROTO_MPTCP protocol was added." msgstr "" msgid "" -"Socket objects have the following methods. Except for :meth:`~socket." -"makefile`, these correspond to Unix system calls applicable to sockets." +"Socket objects have the following methods. Except " +"for :meth:`~socket.makefile`, these correspond to Unix system calls " +"applicable to sockets." msgstr "" msgid "" "Support for the :term:`context manager` protocol was added. Exiting the " -"context manager is equivalent to calling :meth:`~socket.close`." +"context manager is equivalent to calling :meth:`~socket.socket.close`." msgstr "" msgid "" @@ -1451,8 +1458,8 @@ msgstr "" msgid "" "If the system call is interrupted and the signal handler does not raise an " -"exception, the method now retries the system call instead of raising an :exc:" -"`InterruptedError` exception (see :pep:`475` for the rationale)." +"exception, the method now retries the system call instead of raising " +"an :exc:`InterruptedError` exception (see :pep:`475` for the rationale)." msgstr "" msgid "" @@ -1481,8 +1488,8 @@ msgid "" msgstr "" msgid "" -":exc:`OSError` is now raised if an error occurs when the underlying :c:func:" -"`!close` call is made." +":exc:`OSError` is now raised if an error occurs when the " +"underlying :c:func:`!close` call is made." msgstr "" msgid "" @@ -1500,9 +1507,9 @@ msgid "" "If the connection is interrupted by a signal, the method waits until the " "connection completes, or raises a :exc:`TimeoutError` on timeout, if the " "signal handler doesn't raise an exception and the socket is blocking or has " -"a timeout. For non-blocking sockets, the method raises an :exc:" -"`InterruptedError` exception if the connection is interrupted by a signal " -"(or the exception raised by the signal handler)." +"a timeout. For non-blocking sockets, the method raises " +"an :exc:`InterruptedError` exception if the connection is interrupted by a " +"signal (or the exception raised by the signal handler)." msgstr "" msgid "" @@ -1511,8 +1518,8 @@ msgid "" msgstr "" msgid "" -"The method now waits until the connection completes instead of raising an :" -"exc:`InterruptedError` exception if the connection is interrupted by a " +"The method now waits until the connection completes instead of raising " +"an :exc:`InterruptedError` exception if the connection is interrupted by a " "signal, the signal handler doesn't raise an exception and the socket is " "blocking or has a timeout (see the :pep:`475` for the rationale)." msgstr "" @@ -1555,8 +1562,8 @@ msgstr "" msgid "" "Return the remote address to which the socket is connected. This is useful " "to find out the port number of a remote IPv4/v6 socket, for instance. The " -"format of the address returned depends on the address family --- see :ref:" -"`socket-addresses`. On some systems this function is not supported." +"format of the address returned depends on the address family --- " +"see :ref:`socket-addresses`. On some systems this function is not supported." msgstr "" msgid "" @@ -1566,15 +1573,15 @@ msgid "" msgstr "" msgid "" -"Return the value of the given socket option (see the Unix man page :manpage:" -"`getsockopt(2)`). The needed symbolic constants (:ref:`SO_\\* etc. `) are defined in this module. If *buflen* is absent, an " -"integer option is assumed and its integer value is returned by the " -"function. If *buflen* is present, it specifies the maximum length of the " -"buffer used to receive the option in, and this buffer is returned as a bytes " -"object. It is up to the caller to decode the contents of the buffer (see " -"the optional built-in module :mod:`struct` for a way to decode C structures " -"encoded as byte strings)." +"Return the value of the given socket option (see the Unix man " +"page :manpage:`getsockopt(2)`). The needed symbolic constants (:ref:`SO_\\* " +"etc. `) are defined in this module. If *buflen* is " +"absent, an integer option is assumed and its integer value is returned by " +"the function. If *buflen* is present, it specifies the maximum length of " +"the buffer used to receive the option in, and this buffer is returned as a " +"bytes object. It is up to the caller to decode the contents of the buffer " +"(see the optional built-in module :mod:`struct` for a way to decode C " +"structures encoded as byte strings)." msgstr "" msgid "" @@ -1586,14 +1593,15 @@ msgstr "" msgid "" "Return the timeout in seconds (float) associated with socket operations, or " -"``None`` if no timeout is set. This reflects the last call to :meth:" -"`setblocking` or :meth:`settimeout`." +"``None`` if no timeout is set. This reflects the last call " +"to :meth:`setblocking` or :meth:`settimeout`." msgstr "" msgid "" "The :meth:`ioctl` method is a limited interface to the WSAIoctl system " -"interface. Please refer to the `Win32 documentation `_ for more information." +"interface. Please refer to the `Win32 documentation `_ for more " +"information." msgstr "" msgid "" @@ -1632,8 +1640,8 @@ msgstr "" msgid "" "Closing the file object returned by :meth:`makefile` won't close the " -"original socket unless all other file objects have been closed and :meth:" -"`socket.close` has been called on the socket object." +"original socket unless all other file objects have been closed " +"and :meth:`~socket.socket.close` has been called on the socket object." msgstr "" msgid "" @@ -1646,9 +1654,9 @@ msgid "" "Receive data from the socket. The return value is a bytes object " "representing the data received. The maximum amount of data to be received " "at once is specified by *bufsize*. A returned empty bytes object indicates " -"that the client has disconnected. See the Unix manual page :manpage:" -"`recv(2)` for the meaning of the optional argument *flags*; it defaults to " -"zero." +"that the client has disconnected. See the Unix manual " +"page :manpage:`recv(2)` for the meaning of the optional argument *flags*; it " +"defaults to zero." msgstr "" msgid "" @@ -1662,8 +1670,8 @@ msgstr "" msgid "" "For multicast IPv6 address, first item of *address* does not contain " -"``%scope_id`` part anymore. In order to get full IPv6 address use :func:" -"`getnameinfo`." +"``%scope_id`` part anymore. In order to get full IPv6 address " +"use :func:`getnameinfo`." msgstr "" msgid "" @@ -1695,27 +1703,28 @@ msgid "" "file descriptors between processes over an :const:`AF_UNIX` socket. When " "this facility is used (it is often restricted to :const:`SOCK_STREAM` " "sockets), :meth:`recvmsg` will return, in its ancillary data, items of the " -"form ``(socket.SOL_SOCKET, socket.SCM_RIGHTS, fds)``, where *fds* is a :" -"class:`bytes` object representing the new file descriptors as a binary array " -"of the native C :c:expr:`int` type. If :meth:`recvmsg` raises an exception " -"after the system call returns, it will first attempt to close any file " -"descriptors received via this mechanism." +"form ``(socket.SOL_SOCKET, socket.SCM_RIGHTS, fds)``, where *fds* is " +"a :class:`bytes` object representing the new file descriptors as a binary " +"array of the native C :c:expr:`int` type. If :meth:`recvmsg` raises an " +"exception after the system call returns, it will first attempt to close any " +"file descriptors received via this mechanism." msgstr "" msgid "" "Some systems do not indicate the truncated length of ancillary data items " "which have been only partially received. If an item appears to extend " -"beyond the end of the buffer, :meth:`recvmsg` will issue a :exc:" -"`RuntimeWarning`, and will return the part of it which is inside the buffer " -"provided it has not been truncated before the start of its associated data." +"beyond the end of the buffer, :meth:`recvmsg` will issue " +"a :exc:`RuntimeWarning`, and will return the part of it which is inside the " +"buffer provided it has not been truncated before the start of its associated " +"data." msgstr "" msgid "" "On systems which support the :const:`!SCM_RIGHTS` mechanism, the following " "function will receive up to *maxfds* file descriptors, returning the message " "data and a list containing the descriptors (while ignoring unexpected " -"conditions such as unrelated control messages being received). See also :" -"meth:`sendmsg`. ::" +"conditions such as unrelated control messages being received). See " +"also :meth:`sendmsg`. ::" msgstr "" msgid "" @@ -1726,24 +1735,25 @@ msgid "" " msg, ancdata, flags, addr = sock.recvmsg(msglen, socket.CMSG_LEN(maxfds " "* fds.itemsize))\n" " for cmsg_level, cmsg_type, cmsg_data in ancdata:\n" -" if cmsg_level == socket.SOL_SOCKET and cmsg_type == socket." -"SCM_RIGHTS:\n" +" if cmsg_level == socket.SOL_SOCKET and cmsg_type == " +"socket.SCM_RIGHTS:\n" " # Append data, ignoring any truncated integers at the end.\n" -" fds.frombytes(cmsg_data[:len(cmsg_data) - (len(cmsg_data) % fds." -"itemsize)])\n" +" fds.frombytes(cmsg_data[:len(cmsg_data) - (len(cmsg_data) % " +"fds.itemsize)])\n" " return msg, list(fds)" msgstr "" msgid "" -"Receive normal data and ancillary data from the socket, behaving as :meth:" -"`recvmsg` would, but scatter the non-ancillary data into a series of buffers " -"instead of returning a new bytes object. The *buffers* argument must be an " -"iterable of objects that export writable buffers (e.g. :class:`bytearray` " -"objects); these will be filled with successive chunks of the non-ancillary " -"data until it has all been written or there are no more buffers. The " -"operating system may set a limit (:func:`~os.sysconf` value ``SC_IOV_MAX``) " -"on the number of buffers that can be used. The *ancbufsize* and *flags* " -"arguments have the same meaning as for :meth:`recvmsg`." +"Receive normal data and ancillary data from the socket, behaving " +"as :meth:`recvmsg` would, but scatter the non-ancillary data into a series " +"of buffers instead of returning a new bytes object. The *buffers* argument " +"must be an iterable of objects that export writable buffers " +"(e.g. :class:`bytearray` objects); these will be filled with successive " +"chunks of the non-ancillary data until it has all been written or there are " +"no more buffers. The operating system may set a limit (:func:`~os.sysconf` " +"value ``SC_IOV_MAX``) on the number of buffers that can be used. The " +"*ancbufsize* and *flags* arguments have the same meaning as " +"for :meth:`recvmsg`." msgstr "" msgid "" @@ -1827,9 +1837,9 @@ msgstr "" msgid "" "Send normal and ancillary data to the socket, gathering the non-ancillary " "data from a series of buffers and concatenating it into a single message. " -"The *buffers* argument specifies the non-ancillary data as an iterable of :" -"term:`bytes-like objects ` (e.g. :class:`bytes` objects); " -"the operating system may set a limit (:func:`~os.sysconf` value " +"The *buffers* argument specifies the non-ancillary data as an iterable " +"of :term:`bytes-like objects ` (e.g. :class:`bytes` " +"objects); the operating system may set a limit (:func:`~os.sysconf` value " "``SC_IOV_MAX``) on the number of buffers that can be used. The *ancdata* " "argument specifies the ancillary data (control messages) as an iterable of " "zero or more tuples ``(cmsg_level, cmsg_type, cmsg_data)``, where " @@ -1844,17 +1854,17 @@ msgid "" msgstr "" msgid "" -"The following function sends the list of file descriptors *fds* over an :" -"const:`AF_UNIX` socket, on systems which support the :const:`!SCM_RIGHTS` " -"mechanism. See also :meth:`recvmsg`. ::" +"The following function sends the list of file descriptors *fds* over " +"an :const:`AF_UNIX` socket, on systems which support the :const:`!" +"SCM_RIGHTS` mechanism. See also :meth:`recvmsg`. ::" msgstr "" msgid "" "import socket, array\n" "\n" "def send_fds(sock, msg, fds):\n" -" return sock.sendmsg([msg], [(socket.SOL_SOCKET, socket.SCM_RIGHTS, array." -"array(\"i\", fds))])" +" return sock.sendmsg([msg], [(socket.SOL_SOCKET, socket.SCM_RIGHTS, " +"array.array(\"i\", fds))])" msgstr "" msgid "" @@ -1869,16 +1879,17 @@ msgid "" msgstr "" msgid "" -"Send a file until EOF is reached by using high-performance :mod:`os." -"sendfile` and return the total number of bytes which were sent. *file* must " -"be a regular file object opened in binary mode. If :mod:`os.sendfile` is not " -"available (e.g. Windows) or *file* is not a regular file :meth:`send` will " -"be used instead. *offset* tells from where to start reading the file. If " -"specified, *count* is the total number of bytes to transmit as opposed to " -"sending the file until EOF is reached. File position is updated on return or " -"also in case of error in which case :meth:`file.tell() ` can " -"be used to figure out the number of bytes which were sent. The socket must " -"be of :const:`SOCK_STREAM` type. Non-blocking sockets are not supported." +"Send a file until EOF is reached by using high-" +"performance :mod:`os.sendfile` and return the total number of bytes which " +"were sent. *file* must be a regular file object opened in binary mode. " +"If :mod:`os.sendfile` is not available (e.g. Windows) or *file* is not a " +"regular file :meth:`send` will be used instead. *offset* tells from where to " +"start reading the file. If specified, *count* is the total number of bytes " +"to transmit as opposed to sending the file until EOF is reached. File " +"position is updated on return or also in case of error in which " +"case :meth:`file.tell() ` can be used to figure out the " +"number of bytes which were sent. The socket must be of :const:`SOCK_STREAM` " +"type. Non-blocking sockets are not supported." msgstr "" msgid "" @@ -1902,8 +1913,8 @@ msgid "``sock.setblocking(False)`` is equivalent to ``sock.settimeout(0.0)``" msgstr "" msgid "" -"The method no longer applies :const:`SOCK_NONBLOCK` flag on :attr:`socket." -"type`." +"The method no longer applies :const:`SOCK_NONBLOCK` flag " +"on :attr:`socket.type`." msgstr "" msgid "" @@ -1921,45 +1932,47 @@ msgid "" msgstr "" msgid "" -"The method no longer toggles :const:`SOCK_NONBLOCK` flag on :attr:`socket." -"type`." +"The method no longer toggles :const:`SOCK_NONBLOCK` flag " +"on :attr:`socket.type`." msgstr "" msgid "" -"Set the value of the given socket option (see the Unix manual page :manpage:" -"`setsockopt(2)`). The needed symbolic constants are defined in this module " -"(:ref:`!SO_\\* etc. `). The value can be an integer, " -"``None`` or a :term:`bytes-like object` representing a buffer. In the latter " -"case it is up to the caller to ensure that the bytestring contains the " -"proper bits (see the optional built-in module :mod:`struct` for a way to " -"encode C structures as bytestrings). When *value* is set to ``None``, " -"*optlen* argument is required. It's equivalent to calling :c:func:`!" -"setsockopt` C function with ``optval=NULL`` and ``optlen=optlen``." +"Set the value of the given socket option (see the Unix manual " +"page :manpage:`setsockopt(2)`). The needed symbolic constants are defined " +"in this module (:ref:`!SO_\\* etc. `). The value can " +"be an integer, ``None`` or a :term:`bytes-like object` representing a " +"buffer. In the latter case it is up to the caller to ensure that the " +"bytestring contains the proper bits (see the optional built-in " +"module :mod:`struct` for a way to encode C structures as bytestrings). When " +"*value* is set to ``None``, *optlen* argument is required. It's equivalent " +"to calling :c:func:`!setsockopt` C function with ``optval=NULL`` and " +"``optlen=optlen``." msgstr "" msgid "setsockopt(level, optname, None, optlen: int) form added." msgstr "" msgid "" -"Shut down one or both halves of the connection. If *how* is :const:" -"`SHUT_RD`, further receives are disallowed. If *how* is :const:`SHUT_WR`, " -"further sends are disallowed. If *how* is :const:`SHUT_RDWR`, further sends " -"and receives are disallowed." +"Shut down one or both halves of the connection. If *how* " +"is :const:`SHUT_RD`, further receives are disallowed. If *how* " +"is :const:`SHUT_WR`, further sends are disallowed. If *how* " +"is :const:`SHUT_RDWR`, further sends and receives are disallowed." msgstr "" msgid "" "Duplicate a socket and prepare it for sharing with a target process. The " "target process must be provided with *process_id*. The resulting bytes " "object can then be passed to the target process using some form of " -"interprocess communication and the socket can be recreated there using :func:" -"`fromshare`. Once this method has been called, it is safe to close the " -"socket since the operating system has already duplicated it for the target " -"process." +"interprocess communication and the socket can be recreated there " +"using :func:`fromshare`. Once this method has been called, it is safe to " +"close the socket since the operating system has already duplicated it for " +"the target process." msgstr "" msgid "" -"Note that there are no methods :meth:`!read` or :meth:`!write`; use :meth:" -"`~socket.recv` and :meth:`~socket.send` without *flags* argument instead." +"Note that there are no methods :meth:`!read` or :meth:`!write`; " +"use :meth:`~socket.recv` and :meth:`~socket.send` without *flags* argument " +"instead." msgstr "" msgid "" @@ -2024,19 +2037,19 @@ msgstr "" msgid "" "The :meth:`~socket.connect` operation is also subject to the timeout " "setting, and in general it is recommended to call :meth:`~socket.settimeout` " -"before calling :meth:`~socket.connect` or pass a timeout parameter to :meth:" -"`create_connection`. However, the system network stack may also return a " -"connection timeout error of its own regardless of any Python socket timeout " -"setting." +"before calling :meth:`~socket.connect` or pass a timeout parameter " +"to :meth:`create_connection`. However, the system network stack may also " +"return a connection timeout error of its own regardless of any Python socket " +"timeout setting." msgstr "" msgid "Timeouts and the ``accept`` method" msgstr "" msgid "" -"If :func:`getdefaulttimeout` is not :const:`None`, sockets returned by the :" -"meth:`~socket.accept` method inherit that timeout. Otherwise, the behaviour " -"depends on settings of the listening socket:" +"If :func:`getdefaulttimeout` is not :const:`None`, sockets returned by " +"the :meth:`~socket.accept` method inherit that timeout. Otherwise, the " +"behaviour depends on settings of the listening socket:" msgstr "" msgid "" @@ -2057,13 +2070,14 @@ msgstr "" msgid "" "Here are four minimal example programs using the TCP/IP protocol: a server " "that echoes all data that it receives back (servicing only one client), and " -"a client using it. Note that a server must perform the sequence :func:" -"`~socket.socket`, :meth:`~socket.bind`, :meth:`~socket.listen`, :meth:" -"`~socket.accept` (possibly repeating the :meth:`~socket.accept` to service " -"more than one client), while a client only needs the sequence :func:`~socket." -"socket`, :meth:`~socket.connect`. Also note that the server does not :meth:" -"`~socket.sendall`/:meth:`~socket.recv` on the socket it is listening on but " -"on the new socket returned by :meth:`~socket.accept`." +"a client using it. Note that a server must perform the " +"sequence :func:`~socket.socket`, :meth:`~socket.bind`, :meth:`~socket.listen`, :meth:`~socket.accept` " +"(possibly repeating the :meth:`~socket.accept` to service more than one " +"client), while a client only needs the " +"sequence :func:`~socket.socket`, :meth:`~socket.connect`. Also note that " +"the server does not :meth:`~socket.sendall`/:meth:`~socket.recv` on the " +"socket it is listening on but on the new socket returned " +"by :meth:`~socket.accept`." msgstr "" msgid "The first two examples support IPv4 only. ::" @@ -2153,8 +2167,8 @@ msgid "" "HOST = 'daring.cwi.nl' # The remote host\n" "PORT = 50007 # The same port as used by the server\n" "s = None\n" -"for res in socket.getaddrinfo(HOST, PORT, socket.AF_UNSPEC, socket." -"SOCK_STREAM):\n" +"for res in socket.getaddrinfo(HOST, PORT, socket.AF_UNSPEC, " +"socket.SOCK_STREAM):\n" " af, socktype, proto, canonname, sa = res\n" " try:\n" " s = socket.socket(af, socktype, proto)\n" @@ -2279,8 +2293,8 @@ msgid "" msgstr "" msgid "" -"There is a :mod:`!socket` flag to set, in order to prevent this, :const:" -"`socket.SO_REUSEADDR`::" +"There is a :mod:`!socket` flag to set, in order to prevent " +"this, :const:`socket.SO_REUSEADDR`::" msgstr "" msgid "" diff --git a/library/socketserver.po b/library/socketserver.po index 70e8aac..e509d1e 100644 --- a/library/socketserver.po +++ b/library/socketserver.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -53,8 +53,8 @@ msgid "" msgstr "" msgid "" -"The default queue size is now ``socket.SOMAXCONN`` for :class:`socketserver." -"TCPServer`." +"The default queue size is now ``socket.SOMAXCONN`` " +"for :class:`socketserver.TCPServer`." msgstr "" msgid "" @@ -87,9 +87,9 @@ msgid "" "classes, passing it the server's address and the request handler class. It " "is recommended to use the server in a :keyword:`with` statement. Then call " "the :meth:`~BaseServer.handle_request` or :meth:`~BaseServer.serve_forever` " -"method of the server object to process one or many requests. Finally, call :" -"meth:`~BaseServer.server_close` to close the socket (unless you used a :" -"keyword:`!with` statement)." +"method of the server object to process one or many requests. Finally, " +"call :meth:`~BaseServer.server_close` to close the socket (unless you used " +"a :keyword:`!with` statement)." msgstr "" msgid "" @@ -99,8 +99,8 @@ msgid "" "attribute *daemon_threads*, which indicates whether or not the server should " "wait for thread termination. You should set the flag explicitly if you " "would like threads to behave autonomously; the default is :const:`False`, " -"meaning that Python will not exit until all threads created by :class:" -"`ThreadingMixIn` have exited." +"meaning that Python will not exit until all threads created " +"by :class:`ThreadingMixIn` have exited." msgstr "" msgid "" @@ -150,9 +150,9 @@ msgid "" msgstr "" msgid "" -"The mix-in class comes first, since it overrides a method defined in :class:" -"`UDPServer`. Setting the various attributes also changes the behavior of " -"the underlying server mechanism." +"The mix-in class comes first, since it overrides a method defined " +"in :class:`UDPServer`. Setting the various attributes also changes the " +"behavior of the underlying server mechanism." msgstr "" msgid "" @@ -179,17 +179,17 @@ msgid "" msgstr "" msgid "" -"For :class:`ThreadingMixIn` use daemonic threads by setting :data:" -"`ThreadingMixIn.daemon_threads ` to ``True`` to not wait " -"until threads complete." +"For :class:`ThreadingMixIn` use daemonic threads by " +"setting :data:`ThreadingMixIn.daemon_threads ` to ``True`` " +"to not wait until threads complete." msgstr "" msgid "" -":meth:`ForkingMixIn.server_close ` and :meth:" -"`ThreadingMixIn.server_close ` now waits until all " -"child processes and non-daemonic threads complete. Add a new :attr:" -"`ForkingMixIn.block_on_close ` class attribute to opt-in for " -"the pre-3.7 behaviour." +":meth:`ForkingMixIn.server_close ` " +"and :meth:`ThreadingMixIn.server_close ` now waits " +"until all child processes and non-daemonic threads complete. Add a " +"new :attr:`ForkingMixIn.block_on_close ` class attribute to " +"opt-in for the pre-3.7 behaviour." msgstr "" msgid "These classes are pre-defined using the mix-in classes." @@ -201,13 +201,13 @@ msgid "" msgstr "" msgid "" -"To implement a service, you must derive a class from :class:" -"`BaseRequestHandler` and redefine its :meth:`~BaseRequestHandler.handle` " -"method. You can then run various versions of the service by combining one of " -"the server classes with your request handler class. The request handler " -"class must be different for datagram or stream services. This can be hidden " -"by using the handler subclasses :class:`StreamRequestHandler` or :class:" -"`DatagramRequestHandler`." +"To implement a service, you must derive a class " +"from :class:`BaseRequestHandler` and redefine " +"its :meth:`~BaseRequestHandler.handle` method. You can then run various " +"versions of the service by combining one of the server classes with your " +"request handler class. The request handler class must be different for " +"datagram or stream services. This can be hidden by using the handler " +"subclasses :class:`StreamRequestHandler` or :class:`DatagramRequestHandler`." msgstr "" msgid "" @@ -232,8 +232,8 @@ msgid "" "In some cases, it may be appropriate to process part of a request " "synchronously, but to finish processing in a forked child depending on the " "request data. This can be implemented by using a synchronous server and " -"doing an explicit fork in the request handler class :meth:" -"`~BaseRequestHandler.handle` method." +"doing an explicit fork in the request handler " +"class :meth:`~BaseRequestHandler.handle` method." msgstr "" msgid "" @@ -253,8 +253,8 @@ msgstr "" msgid "" "This is the superclass of all Server objects in the module. It defines the " "interface, given below, but does not implement most of the methods, which is " -"done in subclasses. The two parameters are stored in the respective :attr:" -"`server_address` and :attr:`RequestHandlerClass` attributes." +"done in subclasses. The two parameters are stored in the " +"respective :attr:`server_address` and :attr:`RequestHandlerClass` attributes." msgstr "" msgid "" @@ -265,12 +265,13 @@ msgstr "" msgid "" "Process a single request. This function calls the following methods in " -"order: :meth:`get_request`, :meth:`verify_request`, and :meth:" -"`process_request`. If the user-provided :meth:`~BaseRequestHandler.handle` " -"method of the handler class raises an exception, the server's :meth:" -"`handle_error` method will be called. If no request is received within :" -"attr:`timeout` seconds, :meth:`handle_timeout` will be called and :meth:" -"`handle_request` will return." +"order: :meth:`get_request`, :meth:`verify_request`, " +"and :meth:`process_request`. If the user-" +"provided :meth:`~BaseRequestHandler.handle` method of the handler class " +"raises an exception, the server's :meth:`handle_error` method will be " +"called. If no request is received within :attr:`timeout` " +"seconds, :meth:`handle_timeout` will be called and :meth:`handle_request` " +"will return." msgstr "" msgid "" @@ -292,9 +293,9 @@ msgid "" msgstr "" msgid "" -"Tell the :meth:`serve_forever` loop to stop and wait until it does. :meth:" -"`shutdown` must be called while :meth:`serve_forever` is running in a " -"different thread otherwise it will deadlock." +"Tell the :meth:`serve_forever` loop to stop and wait until it " +"does. :meth:`shutdown` must be called while :meth:`serve_forever` is running " +"in a different thread otherwise it will deadlock." msgstr "" msgid "Clean up the server. May be overridden." @@ -302,10 +303,10 @@ msgstr "" msgid "" "The family of protocols to which the server's socket belongs. Common " -"examples are :const:`socket.AF_INET`, :const:`socket.AF_INET6`, and :const:" -"`socket.AF_UNIX`. Subclass the TCP or UDP server classes in this module " -"with class attribute ``address_family = AF_INET6`` set if you want IPv6 " -"server classes." +"examples are :const:`socket.AF_INET`, :const:`socket.AF_INET6`, " +"and :const:`socket.AF_UNIX`. Subclass the TCP or UDP server classes in this " +"module with class attribute ``address_family = AF_INET6`` set if you want " +"IPv6 server classes." msgstr "" msgid "" @@ -315,9 +316,9 @@ msgstr "" msgid "" "The address on which the server is listening. The format of addresses " -"varies depending on the protocol family; see the documentation for the :mod:" -"`socket` module for details. For internet protocols, this is a tuple " -"containing a string giving the address, and an integer port number: " +"varies depending on the protocol family; see the documentation for " +"the :mod:`socket` module for details. For internet protocols, this is a " +"tuple containing a string giving the address, and an integer port number: " "``('127.0.0.1', 80)``, for example." msgstr "" @@ -329,8 +330,8 @@ msgid "The server classes support the following class variables:" msgstr "" msgid "" -"Whether the server will allow the reuse of an address. This defaults to :" -"const:`False`, and can be set in subclasses to change the policy." +"Whether the server will allow the reuse of an address. This defaults " +"to :const:`False`, and can be set in subclasses to change the policy." msgstr "" msgid "" @@ -342,8 +343,8 @@ msgid "" msgstr "" msgid "" -"The type of socket used by the server; :const:`socket.SOCK_STREAM` and :" -"const:`socket.SOCK_DGRAM` are two common values." +"The type of socket used by the server; :const:`socket.SOCK_STREAM` " +"and :const:`socket.SOCK_DGRAM` are two common values." msgstr "" msgid "" @@ -388,10 +389,10 @@ msgid "" msgstr "" msgid "" -"Calls :meth:`finish_request` to create an instance of the :attr:" -"`RequestHandlerClass`. If desired, this function can create a new process " -"or thread to handle the request; the :class:`ForkingMixIn` and :class:" -"`ThreadingMixIn` classes do this." +"Calls :meth:`finish_request` to create an instance of " +"the :attr:`RequestHandlerClass`. If desired, this function can create a new " +"process or thread to handle the request; the :class:`ForkingMixIn` " +"and :class:`ThreadingMixIn` classes do this." msgstr "" msgid "" @@ -436,8 +437,8 @@ msgid "" "This function must do all the work required to service a request. The " "default implementation does nothing. Several instance attributes are " "available to it; the request is available as :attr:`request`; the client " -"address as :attr:`client_address`; and the server instance as :attr:" -"`server`, in case it needs access to per-server information." +"address as :attr:`client_address`; and the server instance " +"as :attr:`server`, in case it needs access to per-server information." msgstr "" msgid "" @@ -464,19 +465,19 @@ msgid ":class:`BaseServer` object used for handling the request." msgstr "" msgid "" -"These :class:`BaseRequestHandler` subclasses override the :meth:" -"`~BaseRequestHandler.setup` and :meth:`~BaseRequestHandler.finish` methods, " -"and provide :attr:`rfile` and :attr:`wfile` attributes." +"These :class:`BaseRequestHandler` subclasses override " +"the :meth:`~BaseRequestHandler.setup` and :meth:`~BaseRequestHandler.finish` " +"methods, and provide :attr:`rfile` and :attr:`wfile` attributes." msgstr "" msgid "" -"A file object from which receives the request is read. Support the :class:" -"`io.BufferedIOBase` readable interface." +"A file object from which receives the request is read. Support " +"the :class:`io.BufferedIOBase` readable interface." msgstr "" msgid "" -"A file object to which the reply is written. Support the :class:`io." -"BufferedIOBase` writable interface" +"A file object to which the reply is written. Support " +"the :class:`io.BufferedIOBase` writable interface" msgstr "" msgid "" @@ -666,8 +667,8 @@ msgid "Asynchronous Mixins" msgstr "" msgid "" -"To build asynchronous handlers, use the :class:`ThreadingMixIn` and :class:" -"`ForkingMixIn` classes." +"To build asynchronous handlers, use the :class:`ThreadingMixIn` " +"and :class:`ForkingMixIn` classes." msgstr "" msgid "An example for the :class:`ThreadingMixIn` class::" @@ -686,8 +687,8 @@ msgid "" " response = bytes(\"{}: {}\".format(cur_thread.name, data), 'ascii')\n" " self.request.sendall(response)\n" "\n" -"class ThreadedTCPServer(socketserver.ThreadingMixIn, socketserver." -"TCPServer):\n" +"class ThreadedTCPServer(socketserver.ThreadingMixIn, " +"socketserver.TCPServer):\n" " pass\n" "\n" "def client(ip, port, message):\n" diff --git a/library/spwd.po b/library/spwd.po index 7f07fbc..d282120 100644 --- a/library/spwd.po +++ b/library/spwd.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +27,9 @@ msgid ":mod:`!spwd` --- The shadow password database" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/sqlite3.po b/library/sqlite3.po index 4ce4bb8..7fb9288 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -39,8 +40,9 @@ msgstr "" msgid "" "The :mod:`!sqlite3` module was written by Gerhard Häring. It provides an " -"SQL interface compliant with the DB-API 2.0 specification described by :pep:" -"`249`, and requires the third-party `SQLite `_ library." +"SQL interface compliant with the DB-API 2.0 specification described " +"by :pep:`249`, and requires the third-party `SQLite `_ " +"library." msgstr "" msgid "" @@ -117,8 +119,8 @@ msgstr "" msgid "" "In order to execute SQL statements and fetch results from SQL queries, we " -"will need to use a database cursor. Call :meth:`con.cursor() ` to create the :class:`Cursor`:" +"will need to use a database cursor. Call :meth:`con.cursor() " +"` to create the :class:`Cursor`:" msgstr "" msgid "cur = con.cursor()" @@ -129,8 +131,8 @@ msgid "" "database table ``movie`` with columns for title, release year, and review " "score. For simplicity, we can just use column names in the table declaration " "-- thanks to the `flexible typing`_ feature of SQLite, specifying the data " -"types is optional. Execute the ``CREATE TABLE`` statement by calling :meth:" -"`cur.execute(...) `:" +"types is optional. Execute the ``CREATE TABLE`` statement by " +"calling :meth:`cur.execute(...) `:" msgstr "" msgid "cur.execute(\"CREATE TABLE movie(title, year, score)\")" @@ -140,9 +142,9 @@ msgid "" "We can verify that the new table has been created by querying the " "``sqlite_master`` table built-in to SQLite, which should now contain an " "entry for the ``movie`` table definition (see `The Schema Table`_ for " -"details). Execute that query by calling :meth:`cur.execute(...) `, assign the result to ``res``, and call :meth:`res.fetchone() " -"` to fetch the resulting row:" +"details). Execute that query by calling :meth:`cur.execute(...) " +"`, assign the result to ``res``, and " +"call :meth:`res.fetchone() ` to fetch the resulting row:" msgstr "" msgid "" @@ -152,9 +154,10 @@ msgid "" msgstr "" msgid "" -"We can see that the table has been created, as the query returns a :class:" -"`tuple` containing the table's name. If we query ``sqlite_master`` for a non-" -"existent table ``spam``, :meth:`!res.fetchone` will return ``None``:" +"We can see that the table has been created, as the query returns " +"a :class:`tuple` containing the table's name. If we query ``sqlite_master`` " +"for a non-existent table ``spam``, :meth:`!res.fetchone` will return " +"``None``:" msgstr "" msgid "" @@ -165,8 +168,8 @@ msgstr "" msgid "" "Now, add two rows of data supplied as SQL literals by executing an " -"``INSERT`` statement, once again by calling :meth:`cur.execute(...) `:" +"``INSERT`` statement, once again by calling :meth:`cur.execute(...) " +"`:" msgstr "" msgid "" @@ -180,8 +183,8 @@ msgstr "" msgid "" "The ``INSERT`` statement implicitly opens a transaction, which needs to be " "committed before changes are saved in the database (see :ref:`sqlite3-" -"controlling-transactions` for details). Call :meth:`con.commit() ` on the connection object to commit the transaction:" +"controlling-transactions` for details). Call :meth:`con.commit() " +"` on the connection object to commit the transaction:" msgstr "" msgid "con.commit()" @@ -190,8 +193,8 @@ msgstr "" msgid "" "We can verify that the data was inserted correctly by executing a ``SELECT`` " "query. Use the now-familiar :meth:`cur.execute(...) ` to " -"assign the result to ``res``, and call :meth:`res.fetchall() ` to return all resulting rows:" +"assign the result to ``res``, and call :meth:`res.fetchall() " +"` to return all resulting rows:" msgstr "" msgid "" @@ -206,8 +209,8 @@ msgid "" msgstr "" msgid "" -"Now, insert three more rows by calling :meth:`cur.executemany(...) `:" +"Now, insert three more rows by calling :meth:`cur.executemany(...) " +"`:" msgstr "" msgid "" @@ -249,9 +252,10 @@ msgid "" msgstr "" msgid "" -"Finally, verify that the database has been written to disk by calling :meth:" -"`con.close() ` to close the existing connection, opening a " -"new one, creating a new cursor, then querying the database:" +"Finally, verify that the database has been written to disk by " +"calling :meth:`con.close() ` to close the existing " +"connection, opening a new one, creating a new cursor, then querying the " +"database:" msgstr "" msgid "" @@ -314,9 +318,9 @@ msgid "" msgstr "" msgid "" -"How many seconds the connection should wait before raising an :exc:" -"`OperationalError` when a table is locked. If another connection opens a " -"transaction to modify a table, that table will be locked until the " +"How many seconds the connection should wait before raising " +"an :exc:`OperationalError` when a table is locked. If another connection " +"opens a transaction to modify a table, that table will be locked until the " "transaction is committed. Default five seconds." msgstr "" @@ -324,18 +328,19 @@ msgid "" "Control whether and how data types not :ref:`natively supported by SQLite " "` are looked up to be converted to Python types, using the " "converters registered with :func:`register_converter`. Set it to any " -"combination (using ``|``, bitwise or) of :const:`PARSE_DECLTYPES` and :const:" -"`PARSE_COLNAMES` to enable this. Column names take precedence over declared " -"types if both flags are set. By default (``0``), type detection is disabled." +"combination (using ``|``, bitwise or) of :const:`PARSE_DECLTYPES` " +"and :const:`PARSE_COLNAMES` to enable this. Column names take precedence " +"over declared types if both flags are set. By default (``0``), type " +"detection is disabled." msgstr "" msgid "" -"Control legacy transaction handling behaviour. See :attr:`Connection." -"isolation_level` and :ref:`sqlite3-transaction-control-isolation-level` for " -"more information. Can be ``\"DEFERRED\"`` (default), ``\"EXCLUSIVE\"`` or " -"``\"IMMEDIATE\"``; or ``None`` to disable opening transactions implicitly. " -"Has no effect unless :attr:`Connection.autocommit` is set to :const:" -"`~sqlite3.LEGACY_TRANSACTION_CONTROL` (the default)." +"Control legacy transaction handling behaviour. " +"See :attr:`Connection.isolation_level` and :ref:`sqlite3-transaction-control-" +"isolation-level` for more information. Can be ``\"DEFERRED\"`` (default), " +"``\"EXCLUSIVE\"`` or ``\"IMMEDIATE\"``; or ``None`` to disable opening " +"transactions implicitly. Has no effect unless :attr:`Connection.autocommit` " +"is set to :const:`~sqlite3.LEGACY_TRANSACTION_CONTROL` (the default)." msgstr "" msgid "" @@ -365,11 +370,11 @@ msgid "" msgstr "" msgid "" -"Control :pep:`249` transaction handling behaviour. See :attr:`Connection." -"autocommit` and :ref:`sqlite3-transaction-control-autocommit` for more " -"information. *autocommit* currently defaults to :const:`~sqlite3." -"LEGACY_TRANSACTION_CONTROL`. The default will change to ``False`` in a " -"future Python release." +"Control :pep:`249` transaction handling behaviour. " +"See :attr:`Connection.autocommit` and :ref:`sqlite3-transaction-control-" +"autocommit` for more information. *autocommit* currently defaults " +"to :const:`~sqlite3.LEGACY_TRANSACTION_CONTROL`. The default will change to " +"``False`` in a future Python release." msgstr "" msgid "Return type" @@ -495,8 +500,8 @@ msgid "" msgstr "" msgid "" -"Generated fields (for example ``MAX(p)``) are returned as :class:`str`. Use :" -"const:`!PARSE_COLNAMES` to enforce types for such queries." +"Generated fields (for example ``MAX(p)``) are returned as :class:`str`. " +"Use :const:`!PARSE_COLNAMES` to enforce types for such queries." msgstr "" msgid "" @@ -551,8 +556,8 @@ msgid "" msgstr "" msgid "" -"Version number of the runtime SQLite library as a :class:`tuple` of :class:" -"`integers `." +"Version number of the runtime SQLite library as a :class:`tuple` " +"of :class:`integers `." msgstr "" msgid "A :class:`tuple` containing all SQLite keywords." @@ -637,8 +642,8 @@ msgid "Set *threadsafety* dynamically instead of hard-coding it to ``1``." msgstr "" msgid "" -"These constants are used for the :meth:`Connection.setconfig` and :meth:" -"`~Connection.getconfig` methods." +"These constants are used for the :meth:`Connection.setconfig` " +"and :meth:`~Connection.getconfig` methods." msgstr "" msgid "" @@ -660,16 +665,17 @@ msgstr "" msgid "" "Each open SQLite database is represented by a ``Connection`` object, which " -"is created using :func:`sqlite3.connect`. Their main purpose is creating :" -"class:`Cursor` objects, and :ref:`sqlite3-controlling-transactions`." +"is created using :func:`sqlite3.connect`. Their main purpose is " +"creating :class:`Cursor` objects, and :ref:`sqlite3-controlling-" +"transactions`." msgstr "" msgid ":ref:`sqlite3-connection-shortcuts`" msgstr "" msgid "" -"A :exc:`ResourceWarning` is emitted if :meth:`close` is not called before a :" -"class:`!Connection` object is deleted." +"A :exc:`ResourceWarning` is emitted if :meth:`close` is not called before " +"a :class:`!Connection` object is deleted." msgstr "" msgid "An SQLite database connection has the following attributes and methods:" @@ -677,8 +683,9 @@ msgstr "" msgid "" "Create and return a :class:`Cursor` object. The cursor method accepts a " -"single optional parameter *factory*. If supplied, this must be a :term:" -"`callable` returning an instance of :class:`Cursor` or its subclasses." +"single optional parameter *factory*. If supplied, this must be " +"a :term:`callable` returning an instance of :class:`Cursor` or its " +"subclasses." msgstr "" msgid "" @@ -717,16 +724,16 @@ msgstr "" msgid "" "Commit any pending transaction to the database. If :attr:`autocommit` is " -"``True``, or there is no open transaction, this method does nothing. If :" -"attr:`!autocommit` is ``False``, a new transaction is implicitly opened if a " -"pending transaction was committed by this method." +"``True``, or there is no open transaction, this method does nothing. " +"If :attr:`!autocommit` is ``False``, a new transaction is implicitly opened " +"if a pending transaction was committed by this method." msgstr "" msgid "" "Roll back to the start of any pending transaction. If :attr:`autocommit` is " -"``True``, or there is no open transaction, this method does nothing. If :" -"attr:`!autocommit` is ``False``, a new transaction is implicitly opened if a " -"pending transaction was rolled back by this method." +"``True``, or there is no open transaction, this method does nothing. " +"If :attr:`!autocommit` is ``False``, a new transaction is implicitly opened " +"if a pending transaction was rolled back by this method." msgstr "" msgid "" @@ -1001,16 +1008,16 @@ msgstr "" msgid "" "Call this method from a different thread to abort any queries that might be " -"executing on the connection. Aborted queries will raise an :exc:" -"`OperationalError`." +"executing on the connection. Aborted queries will raise " +"an :exc:`OperationalError`." msgstr "" msgid "" "Register :term:`callable` *authorizer_callback* to be invoked for each " "attempt to access a column of a table in the database. The callback should " -"return one of :const:`SQLITE_OK`, :const:`SQLITE_DENY`, or :const:" -"`SQLITE_IGNORE` to signal how access to the column should be handled by the " -"underlying SQLite library." +"return one of :const:`SQLITE_OK`, :const:`SQLITE_DENY`, " +"or :const:`SQLITE_IGNORE` to signal how access to the column should be " +"handled by the underlying SQLite library." msgstr "" msgid "" @@ -1067,10 +1074,11 @@ msgstr "" msgid "" "The only argument passed to the callback is the statement (as :class:`str`) " "that is being executed. The return value of the callback is ignored. Note " -"that the backend does not only run statements passed to the :meth:`Cursor." -"execute` methods. Other sources include the :ref:`transaction management " -"` of the :mod:`!sqlite3` module and the " -"execution of triggers defined in the current database." +"that the backend does not only run statements passed to " +"the :meth:`Cursor.execute` methods. Other sources include " +"the :ref:`transaction management ` of " +"the :mod:`!sqlite3` module and the execution of triggers defined in the " +"current database." msgstr "" msgid "Passing ``None`` as *trace_callback* will disable the trace callback." @@ -1094,8 +1102,8 @@ msgid "" "The :mod:`!sqlite3` module is not built with loadable extension support by " "default, because some platforms (notably macOS) have SQLite libraries which " "are compiled without this feature. To get loadable extension support, you " -"must pass the :option:`--enable-loadable-sqlite-extensions` option to :" -"program:`configure`." +"must pass the :option:`--enable-loadable-sqlite-extensions` option " +"to :program:`configure`." msgstr "" msgid "" @@ -1162,8 +1170,8 @@ msgstr "" msgid "" "Return an :term:`iterator` to dump the database as SQL source code. Useful " -"when saving an in-memory database for later restoration. Similar to the ``." -"dump`` command in the :program:`sqlite3` shell." +"when saving an in-memory database for later restoration. Similar to the " +"``.dump`` command in the :program:`sqlite3` shell." msgstr "" msgid "" @@ -1257,8 +1265,8 @@ msgid "If *category* is not recognised by the underlying SQLite library." msgstr "" msgid "" -"Example, query the maximum length of an SQL statement for :class:" -"`Connection` ``con`` (the default is 1000000000):" +"Example, query the maximum length of an SQL statement " +"for :class:`Connection` ``con`` (the default is 1000000000):" msgstr "" msgid "" @@ -1323,10 +1331,10 @@ msgid "" msgstr "" msgid "" -"Deserialize a :meth:`serialized ` database into a :class:" -"`Connection`. This method causes the database connection to disconnect from " -"database *name*, and reopen *name* as an in-memory database based on the " -"serialization contained in *data*." +"Deserialize a :meth:`serialized ` database into " +"a :class:`Connection`. This method causes the database connection to " +"disconnect from database *name*, and reopen *name* as an in-memory database " +"based on the serialization contained in *data*." msgstr "" msgid "A serialized database." @@ -1357,17 +1365,17 @@ msgid "" msgstr "" msgid "" -"``False``: Select :pep:`249`-compliant transaction behaviour, implying that :" -"mod:`!sqlite3` ensures a transaction is always open. Use :meth:`commit` and :" -"meth:`rollback` to close transactions." +"``False``: Select :pep:`249`-compliant transaction behaviour, implying " +"that :mod:`!sqlite3` ensures a transaction is always open. " +"Use :meth:`commit` and :meth:`rollback` to close transactions." msgstr "" msgid "This is the recommended value of :attr:`!autocommit`." msgstr "" msgid "" -"``True``: Use SQLite's `autocommit mode`_. :meth:`commit` and :meth:" -"`rollback` have no effect in this mode." +"``True``: Use SQLite's `autocommit mode`_. :meth:`commit` " +"and :meth:`rollback` have no effect in this mode." msgstr "" msgid "" @@ -1387,8 +1395,8 @@ msgid "See :ref:`sqlite3-transaction-control-autocommit` for more details." msgstr "" msgid "" -"The :attr:`isolation_level` attribute has no effect unless :attr:" -"`autocommit` is :data:`LEGACY_TRANSACTION_CONTROL`." +"The :attr:`isolation_level` attribute has no effect " +"unless :attr:`autocommit` is :data:`LEGACY_TRANSACTION_CONTROL`." msgstr "" msgid "" @@ -1424,10 +1432,10 @@ msgstr "" msgid "" "The initial :attr:`~Cursor.row_factory` for :class:`Cursor` objects created " -"from this connection. Assigning to this attribute does not affect the :attr:" -"`!row_factory` of existing cursors belonging to this connection, only new " -"ones. Is ``None`` by default, meaning each row is returned as a :class:" -"`tuple`." +"from this connection. Assigning to this attribute does not affect " +"the :attr:`!row_factory` of existing cursors belonging to this connection, " +"only new ones. Is ``None`` by default, meaning each row is returned as " +"a :class:`tuple`." msgstr "" msgid "See :ref:`sqlite3-howto-row-factory` for more details." @@ -1459,14 +1467,14 @@ msgstr "" msgid "" "A ``Cursor`` object represents a `database cursor`_ which is used to execute " "SQL statements, and manage the context of a fetch operation. Cursors are " -"created using :meth:`Connection.cursor`, or by using any of the :ref:" -"`connection shortcut methods `." +"created using :meth:`Connection.cursor`, or by using any of " +"the :ref:`connection shortcut methods `." msgstr "" msgid "" -"Cursor objects are :term:`iterators `, meaning that if you :meth:" -"`~Cursor.execute` a ``SELECT`` query, you can simply iterate over the cursor " -"to fetch the resulting rows:" +"Cursor objects are :term:`iterators `, meaning that if " +"you :meth:`~Cursor.execute` a ``SELECT`` query, you can simply iterate over " +"the cursor to fetch the resulting rows:" msgstr "" msgid "" @@ -1478,8 +1486,8 @@ msgid "A :class:`Cursor` instance has the following attributes and methods." msgstr "" msgid "" -"Execute a single SQL statement, optionally binding Python values using :ref:" -"`placeholders `." +"Execute a single SQL statement, optionally binding Python values " +"using :ref:`placeholders `." msgstr "" msgid "A single SQL statement." @@ -1498,16 +1506,17 @@ msgid "" msgstr "" msgid "" -"If :attr:`~Connection.autocommit` is :data:`LEGACY_TRANSACTION_CONTROL`, :" -"attr:`~Connection.isolation_level` is not ``None``, *sql* is an ``INSERT``, " -"``UPDATE``, ``DELETE``, or ``REPLACE`` statement, and there is no open " -"transaction, a transaction is implicitly opened before executing *sql*." +"If :attr:`~Connection.autocommit` " +"is :data:`LEGACY_TRANSACTION_CONTROL`, :attr:`~Connection.isolation_level` " +"is not ``None``, *sql* is an ``INSERT``, ``UPDATE``, ``DELETE``, or " +"``REPLACE`` statement, and there is no open transaction, a transaction is " +"implicitly opened before executing *sql*." msgstr "" msgid "" ":exc:`ProgrammingError` is emitted if :ref:`named placeholders ` are used and *parameters* is a sequence instead of a :class:" -"`dict`." +"placeholders>` are used and *parameters* is a sequence instead of " +"a :class:`dict`." msgstr "" msgid "Use :meth:`executescript` to execute multiple SQL statements." @@ -1557,11 +1566,11 @@ msgid "" msgstr "" msgid "" -"Execute the SQL statements in *sql_script*. If the :attr:`~Connection." -"autocommit` is :data:`LEGACY_TRANSACTION_CONTROL` and there is a pending " -"transaction, an implicit ``COMMIT`` statement is executed first. No other " -"implicit transaction control is performed; any transaction control must be " -"added to *sql_script*." +"Execute the SQL statements in *sql_script*. If " +"the :attr:`~Connection.autocommit` is :data:`LEGACY_TRANSACTION_CONTROL` and " +"there is a pending transaction, an implicit ``COMMIT`` statement is executed " +"first. No other implicit transaction control is performed; any transaction " +"control must be added to *sql_script*." msgstr "" msgid "*sql_script* must be a :class:`string `." @@ -1616,18 +1625,18 @@ msgid "Close the cursor now (rather than whenever ``__del__`` is called)." msgstr "" msgid "" -"The cursor will be unusable from this point forward; a :exc:" -"`ProgrammingError` exception will be raised if any operation is attempted " -"with the cursor." +"The cursor will be unusable from this point forward; " +"a :exc:`ProgrammingError` exception will be raised if any operation is " +"attempted with the cursor." msgstr "" msgid "Required by the DB-API. Does nothing in :mod:`!sqlite3`." msgstr "" msgid "" -"Read/write attribute that controls the number of rows returned by :meth:" -"`fetchmany`. The default value is 1 which means a single row would be " -"fetched per call." +"Read/write attribute that controls the number of rows returned " +"by :meth:`fetchmany`. The default value is 1 which means a single row would " +"be fetched per call." msgstr "" msgid "Negative values are rejected by raising :exc:`ValueError`." @@ -1635,9 +1644,9 @@ msgstr "" msgid "" "Read-only attribute that provides the SQLite database :class:`Connection` " -"belonging to the cursor. A :class:`Cursor` object created by calling :meth:" -"`con.cursor() ` will have a :attr:`connection` attribute " -"that refers to *con*:" +"belonging to the cursor. A :class:`Cursor` object created by " +"calling :meth:`con.cursor() ` will have " +"a :attr:`connection` attribute that refers to *con*:" msgstr "" msgid "" @@ -1691,18 +1700,18 @@ msgstr "" msgid "" "Defaults to what :attr:`Connection.row_factory` was set to when the :class:`!" -"Cursor` was created. Assigning to this attribute does not affect :attr:" -"`Connection.row_factory` of the parent connection." +"Cursor` was created. Assigning to this attribute does not " +"affect :attr:`Connection.row_factory` of the parent connection." msgstr "" msgid "Row objects" msgstr "" msgid "" -"A :class:`!Row` instance serves as a highly optimized :attr:`~Connection." -"row_factory` for :class:`Connection` objects. It supports iteration, " -"equality testing, :func:`len`, and :term:`mapping` access by column name and " -"index." +"A :class:`!Row` instance serves as a highly " +"optimized :attr:`~Connection.row_factory` for :class:`Connection` objects. " +"It supports iteration, equality testing, :func:`len`, and :term:`mapping` " +"access by column name and index." msgstr "" msgid "" @@ -1712,8 +1721,8 @@ msgstr "" msgid "" "Return a :class:`list` of column names as :class:`strings `. " -"Immediately after a query, it is the first member of each tuple in :attr:" -"`Cursor.description`." +"Immediately after a query, it is the first member of each tuple " +"in :attr:`Cursor.description`." msgstr "" msgid "Added support of slicing." @@ -1724,9 +1733,9 @@ msgstr "" msgid "" "A :class:`Blob` instance is a :term:`file-like object` that can read and " -"write data in an SQLite :abbr:`BLOB (Binary Large OBject)`. Call :func:" -"`len(blob) ` to get the size (number of bytes) of the blob. Use indices " -"and :term:`slices ` for direct access to the blob data." +"write data in an SQLite :abbr:`BLOB (Binary Large OBject)`. " +"Call :func:`len(blob) ` to get the size (number of bytes) of the blob. " +"Use indices and :term:`slices ` for direct access to the blob data." msgstr "" msgid "" @@ -1759,22 +1768,22 @@ msgid "Close the blob." msgstr "" msgid "" -"The blob will be unusable from this point onward. An :class:`~sqlite3." -"Error` (or subclass) exception will be raised if any further operation is " -"attempted with the blob." +"The blob will be unusable from this point onward. " +"An :class:`~sqlite3.Error` (or subclass) exception will be raised if any " +"further operation is attempted with the blob." msgstr "" msgid "" "Read *length* bytes of data from the blob at the current offset position. If " "the end of the blob is reached, the data up to :abbr:`EOF (End of File)` " -"will be returned. When *length* is not specified, or is negative, :meth:" -"`~Blob.read` will read until the end of the blob." +"will be returned. When *length* is not specified, or is " +"negative, :meth:`~Blob.read` will read until the end of the blob." msgstr "" msgid "" "Write *data* to the blob at the current offset. This function cannot change " -"the blob length. Writing beyond the end of the blob will raise :exc:" -"`ValueError`." +"the blob length. Writing beyond the end of the blob will " +"raise :exc:`ValueError`." msgstr "" msgid "Return the current access position of the blob." @@ -1821,8 +1830,8 @@ msgid "" msgstr "" msgid "" -"The numeric error code from the `SQLite API `_" +"The numeric error code from the `SQLite API `_" msgstr "" msgid "" @@ -1870,8 +1879,8 @@ msgstr "" msgid "" "Exception raised for :mod:`!sqlite3` API programming errors, for example " "supplying the wrong number of bindings to a query, or trying to operate on a " -"closed :class:`Connection`. ``ProgrammingError`` is a subclass of :exc:" -"`DatabaseError`." +"closed :class:`Connection`. ``ProgrammingError`` is a subclass " +"of :exc:`DatabaseError`." msgstr "" msgid "" @@ -1967,8 +1976,8 @@ msgid "" msgstr "" msgid "" -"A converter for :ref:`declared ` \"date\" types to :" -"class:`datetime.date` objects." +"A converter for :ref:`declared ` \"date\" types " +"to :class:`datetime.date` objects." msgstr "" msgid "" @@ -2187,8 +2196,8 @@ msgid "Explicit: set *detect_types* to :const:`PARSE_COLNAMES`" msgstr "" msgid "" -"Both: set *detect_types* to ``sqlite3.PARSE_DECLTYPES | sqlite3." -"PARSE_COLNAMES``. Column names take precedence over declared types." +"Both: set *detect_types* to ``sqlite3.PARSE_DECLTYPES | " +"sqlite3.PARSE_COLNAMES``. Column names take precedence over declared types." msgstr "" msgid "The following example illustrates the implicit and explicit approaches:" @@ -2282,14 +2291,14 @@ msgid "How to use connection shortcut methods" msgstr "" msgid "" -"Using the :meth:`~Connection.execute`, :meth:`~Connection.executemany`, and :" -"meth:`~Connection.executescript` methods of the :class:`Connection` class, " -"your code can be written more concisely because you don't have to create the " -"(often superfluous) :class:`Cursor` objects explicitly. Instead, the :class:" -"`Cursor` objects are created implicitly and these shortcut methods return " -"the cursor objects. This way, you can execute a ``SELECT`` statement and " -"iterate over it directly using only a single call on the :class:`Connection` " -"object." +"Using the :meth:`~Connection.execute`, :meth:`~Connection.executemany`, " +"and :meth:`~Connection.executescript` methods of the :class:`Connection` " +"class, your code can be written more concisely because you don't have to " +"create the (often superfluous) :class:`Cursor` objects explicitly. Instead, " +"the :class:`Cursor` objects are created implicitly and these shortcut " +"methods return the cursor objects. This way, you can execute a ``SELECT`` " +"statement and iterate over it directly using only a single call on " +"the :class:`Connection` object." msgstr "" msgid "" @@ -2337,14 +2346,14 @@ msgstr "" msgid "" "The context manager neither implicitly opens a new transaction nor closes " -"the connection. If you need a closing context manager, consider using :meth:" -"`contextlib.closing`." +"the connection. If you need a closing context manager, consider " +"using :meth:`contextlib.closing`." msgstr "" msgid "" "con = sqlite3.connect(\":memory:\")\n" -"con.execute(\"CREATE TABLE lang(id INTEGER PRIMARY KEY, name VARCHAR " -"UNIQUE)\")\n" +"con.execute(\"CREATE TABLE lang(id INTEGER PRIMARY KEY, name VARCHAR UNIQUE)" +"\")\n" "\n" "# Successful, con.commit() is called automatically afterwards\n" "with con:\n" @@ -2418,16 +2427,16 @@ msgid "How to create and use row factories" msgstr "" msgid "" -"By default, :mod:`!sqlite3` represents each row as a :class:`tuple`. If a :" -"class:`!tuple` does not suit your needs, you can use the :class:`sqlite3." -"Row` class or a custom :attr:`~Cursor.row_factory`." +"By default, :mod:`!sqlite3` represents each row as a :class:`tuple`. If " +"a :class:`!tuple` does not suit your needs, you can use " +"the :class:`sqlite3.Row` class or a custom :attr:`~Cursor.row_factory`." msgstr "" msgid "" -"While :attr:`!row_factory` exists as an attribute both on the :class:" -"`Cursor` and the :class:`Connection`, it is recommended to set :class:" -"`Connection.row_factory`, so all cursors created from the connection will " -"use the same row factory." +"While :attr:`!row_factory` exists as an attribute both on " +"the :class:`Cursor` and the :class:`Connection`, it is recommended to " +"set :class:`Connection.row_factory`, so all cursors created from the " +"connection will use the same row factory." msgstr "" msgid "" @@ -2520,9 +2529,9 @@ msgid "" msgstr "" msgid "" -"With some adjustments, the above recipe can be adapted to use a :class:" -"`~dataclasses.dataclass`, or any other custom class, instead of a :class:" -"`~collections.namedtuple`." +"With some adjustments, the above recipe can be adapted to use " +"a :class:`~dataclasses.dataclass`, or any other custom class, instead of " +"a :class:`~collections.namedtuple`." msgstr "" msgid "How to handle non-UTF-8 text encodings" @@ -2531,8 +2540,8 @@ msgstr "" msgid "" "By default, :mod:`!sqlite3` uses :class:`str` to adapt SQLite values with " "the ``TEXT`` data type. This works well for UTF-8 encoded text, but it might " -"fail for other encodings and invalid UTF-8. You can use a custom :attr:" -"`~Connection.text_factory` to handle such cases." +"fail for other encodings and invalid UTF-8. You can use a " +"custom :attr:`~Connection.text_factory` to handle such cases." msgstr "" msgid "" @@ -2540,9 +2549,9 @@ msgid "" "table columns with the ``TEXT`` data type containing non-UTF-8 encodings, or " "even arbitrary data. To demonstrate, let's assume we have a database with " "ISO-8859-2 (Latin-2) encoded text, for example a table of Czech-English " -"dictionary entries. Assuming we now have a :class:`Connection` instance :py:" -"data:`!con` connected to this database, we can decode the Latin-2 encoded " -"text using this :attr:`~Connection.text_factory`:" +"dictionary entries. Assuming we now have a :class:`Connection` " +"instance :py:data:`!con` connected to this database, we can decode the " +"Latin-2 encoded text using this :attr:`~Connection.text_factory`:" msgstr "" msgid "con.text_factory = lambda data: str(data, encoding=\"latin2\")" @@ -2581,9 +2590,9 @@ msgid "Transaction control via the ``autocommit`` attribute" msgstr "" msgid "" -"The recommended way of controlling transaction behaviour is through the :" -"attr:`Connection.autocommit` attribute, which should preferably be set using " -"the *autocommit* parameter of :func:`connect`." +"The recommended way of controlling transaction behaviour is through " +"the :attr:`Connection.autocommit` attribute, which should preferably be set " +"using the *autocommit* parameter of :func:`connect`." msgstr "" msgid "" @@ -2592,11 +2601,11 @@ msgid "" msgstr "" msgid "" -":mod:`!sqlite3` ensures that a transaction is always open, so :func:" -"`connect`, :meth:`Connection.commit`, and :meth:`Connection.rollback` will " -"implicitly open a new transaction (immediately after closing the pending " -"one, for the latter two). :mod:`!sqlite3` uses ``BEGIN DEFERRED`` statements " -"when opening transactions." +":mod:`!sqlite3` ensures that a transaction is always open, " +"so :func:`connect`, :meth:`Connection.commit`, " +"and :meth:`Connection.rollback` will implicitly open a new transaction " +"(immediately after closing the pending one, for the latter two). :mod:`!" +"sqlite3` uses ``BEGIN DEFERRED`` statements when opening transactions." msgstr "" msgid "Transactions should be committed explicitly using :meth:`!commit`." @@ -2606,51 +2615,52 @@ msgid "Transactions should be rolled back explicitly using :meth:`!rollback`." msgstr "" msgid "" -"An implicit rollback is performed if the database is :meth:`~Connection." -"close`-ed with pending changes." +"An implicit rollback is performed if the database " +"is :meth:`~Connection.close`-ed with pending changes." msgstr "" msgid "" "Set *autocommit* to ``True`` to enable SQLite's `autocommit mode`_. In this " "mode, :meth:`Connection.commit` and :meth:`Connection.rollback` have no " "effect. Note that SQLite's autocommit mode is distinct from the :pep:`249`-" -"compliant :attr:`Connection.autocommit` attribute; use :attr:`Connection." -"in_transaction` to query the low-level SQLite autocommit mode." +"compliant :attr:`Connection.autocommit` attribute; " +"use :attr:`Connection.in_transaction` to query the low-level SQLite " +"autocommit mode." msgstr "" msgid "" "Set *autocommit* to :data:`LEGACY_TRANSACTION_CONTROL` to leave transaction " -"control behaviour to the :attr:`Connection.isolation_level` attribute. See :" -"ref:`sqlite3-transaction-control-isolation-level` for more information." +"control behaviour to the :attr:`Connection.isolation_level` attribute. " +"See :ref:`sqlite3-transaction-control-isolation-level` for more information." msgstr "" msgid "Transaction control via the ``isolation_level`` attribute" msgstr "" msgid "" -"The recommended way of controlling transactions is via the :attr:" -"`~Connection.autocommit` attribute. See :ref:`sqlite3-transaction-control-" -"autocommit`." +"The recommended way of controlling transactions is via " +"the :attr:`~Connection.autocommit` attribute. See :ref:`sqlite3-transaction-" +"control-autocommit`." msgstr "" msgid "" -"If :attr:`Connection.autocommit` is set to :data:" -"`LEGACY_TRANSACTION_CONTROL` (the default), transaction behaviour is " -"controlled using the :attr:`Connection.isolation_level` attribute. " +"If :attr:`Connection.autocommit` is set " +"to :data:`LEGACY_TRANSACTION_CONTROL` (the default), transaction behaviour " +"is controlled using the :attr:`Connection.isolation_level` attribute. " "Otherwise, :attr:`!isolation_level` has no effect." msgstr "" msgid "" "If the connection attribute :attr:`~Connection.isolation_level` is not " -"``None``, new transactions are implicitly opened before :meth:`~Cursor." -"execute` and :meth:`~Cursor.executemany` executes ``INSERT``, ``UPDATE``, " -"``DELETE``, or ``REPLACE`` statements; for other statements, no implicit " -"transaction handling is performed. Use the :meth:`~Connection.commit` and :" -"meth:`~Connection.rollback` methods to respectively commit and roll back " -"pending transactions. You can choose the underlying `SQLite transaction " -"behaviour`_ — that is, whether and what type of ``BEGIN`` statements :mod:`!" -"sqlite3` implicitly executes – via the :attr:`~Connection.isolation_level` " -"attribute." +"``None``, new transactions are implicitly opened " +"before :meth:`~Cursor.execute` and :meth:`~Cursor.executemany` executes " +"``INSERT``, ``UPDATE``, ``DELETE``, or ``REPLACE`` statements; for other " +"statements, no implicit transaction handling is performed. Use " +"the :meth:`~Connection.commit` and :meth:`~Connection.rollback` methods to " +"respectively commit and roll back pending transactions. You can choose the " +"underlying `SQLite transaction behaviour`_ — that is, whether and what type " +"of ``BEGIN`` statements :mod:`!sqlite3` implicitly executes – via " +"the :attr:`~Connection.isolation_level` attribute." msgstr "" msgid "" @@ -2658,8 +2668,8 @@ msgid "" "are implicitly opened at all. This leaves the underlying SQLite library in " "`autocommit mode`_, but also allows the user to perform their own " "transaction handling using explicit SQL statements. The underlying SQLite " -"library autocommit mode can be queried using the :attr:`~Connection." -"in_transaction` attribute." +"library autocommit mode can be queried using " +"the :attr:`~Connection.in_transaction` attribute." msgstr "" msgid "" @@ -2674,8 +2684,8 @@ msgid "" msgstr "" msgid "" -"The recommended way of controlling transactions is now via the :attr:" -"`~Connection.autocommit` attribute." +"The recommended way of controlling transactions is now via " +"the :attr:`~Connection.autocommit` attribute." msgstr "" msgid "? (question mark)" diff --git a/library/ssl.po b/library/ssl.po index 5082e1b..e793ab1 100644 --- a/library/ssl.po +++ b/library/ssl.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -75,8 +76,8 @@ msgid "" "also encrypts and decrypts the data going over the socket with SSL. It " "supports additional methods such as :meth:`getpeercert`, which retrieves the " "certificate of the other side of the connection, :meth:`cipher`, which " -"retrieves the cipher being used for the secure connection or :meth:" -"`get_verified_chain`, :meth:`get_unverified_chain` which retrieves " +"retrieves the cipher being used for the secure connection " +"or :meth:`get_verified_chain`, :meth:`get_unverified_chain` which retrieves " "certificate chain." msgstr "" @@ -110,9 +111,10 @@ msgid "Socket creation" msgstr "" msgid "" -"Instances of :class:`SSLSocket` must be created using the :meth:`SSLContext." -"wrap_socket` method. The helper function :func:`create_default_context` " -"returns a new context with secure default settings." +"Instances of :class:`SSLSocket` must be created using " +"the :meth:`SSLContext.wrap_socket` method. The helper " +"function :func:`create_default_context` returns a new context with secure " +"default settings." msgstr "" msgid "Client socket example with default context and IPv4/IPv6 dual stack::" @@ -182,13 +184,13 @@ msgid "" msgstr "" msgid "" -"The settings are: :data:`PROTOCOL_TLS_CLIENT` or :data:" -"`PROTOCOL_TLS_SERVER`, :data:`OP_NO_SSLv2`, and :data:`OP_NO_SSLv3` with " -"high encryption cipher suites without RC4 and without unauthenticated cipher " -"suites. Passing :const:`~Purpose.SERVER_AUTH` as *purpose* sets :data:" -"`~SSLContext.verify_mode` to :data:`CERT_REQUIRED` and either loads CA " -"certificates (when at least one of *cafile*, *capath* or *cadata* is given) " -"or uses :meth:`SSLContext.load_default_certs` to load default CA " +"The settings are: :data:`PROTOCOL_TLS_CLIENT` " +"or :data:`PROTOCOL_TLS_SERVER`, :data:`OP_NO_SSLv2`, and :data:`OP_NO_SSLv3` " +"with high encryption cipher suites without RC4 and without unauthenticated " +"cipher suites. Passing :const:`~Purpose.SERVER_AUTH` as *purpose* " +"sets :data:`~SSLContext.verify_mode` to :data:`CERT_REQUIRED` and either " +"loads CA certificates (when at least one of *cafile*, *capath* or *cadata* " +"is given) or uses :meth:`SSLContext.load_default_certs` to load default CA " "certificates." msgstr "" @@ -199,10 +201,10 @@ msgid "" msgstr "" msgid "" -"The default settings for this context include :data:" -"`VERIFY_X509_PARTIAL_CHAIN` and :data:`VERIFY_X509_STRICT`. These make the " -"underlying OpenSSL implementation behave more like a conforming " -"implementation of :rfc:`5280`, in exchange for a small amount of " +"The default settings for this context " +"include :data:`VERIFY_X509_PARTIAL_CHAIN` and :data:`VERIFY_X509_STRICT`. " +"These make the underlying OpenSSL implementation behave more like a " +"conforming implementation of :rfc:`5280`, in exchange for a small amount of " "incompatibility with older X.509 certificates." msgstr "" @@ -213,8 +215,8 @@ msgid "" msgstr "" msgid "" -"If your application needs specific settings, you should create a :class:" -"`SSLContext` and apply the settings yourself." +"If your application needs specific settings, you should create " +"a :class:`SSLContext` and apply the settings yourself." msgstr "" msgid "" @@ -222,9 +224,9 @@ msgid "" "with a :class:`SSLContext` created by this function that they get an error " "stating \"Protocol or cipher suite mismatch\", it may be that they only " "support SSL3.0 which this function excludes using the :data:`OP_NO_SSLv3`. " -"SSL3.0 is widely considered to be `completely broken `_. If you still wish to continue to use this function but " -"still allow SSL 3.0 connections you can re-enable them using::" +"SSL3.0 is widely considered to be `completely broken `_. If you still wish to continue to use this " +"function but still allow SSL 3.0 connections you can re-enable them using::" msgstr "" msgid "" @@ -257,13 +259,14 @@ msgid "Support for key logging to :envvar:`SSLKEYLOGFILE` was added." msgstr "" msgid "" -"The context now uses :data:`PROTOCOL_TLS_CLIENT` or :data:" -"`PROTOCOL_TLS_SERVER` protocol instead of generic :data:`PROTOCOL_TLS`." +"The context now uses :data:`PROTOCOL_TLS_CLIENT` " +"or :data:`PROTOCOL_TLS_SERVER` protocol instead of " +"generic :data:`PROTOCOL_TLS`." msgstr "" msgid "" -"The context now uses :data:`VERIFY_X509_PARTIAL_CHAIN` and :data:" -"`VERIFY_X509_STRICT` in its default verify flags." +"The context now uses :data:`VERIFY_X509_PARTIAL_CHAIN` " +"and :data:`VERIFY_X509_STRICT` in its default verify flags." msgstr "" msgid "Signature algorithms" @@ -281,9 +284,9 @@ msgid "" msgstr "" msgid "" -"These names can be used when building string values to pass to the :meth:" -"`SSLContext.set_client_sigalgs` and :meth:`SSLContext.set_server_sigalgs` " -"methods." +"These names can be used when building string values to pass to " +"the :meth:`SSLContext.set_client_sigalgs` " +"and :meth:`SSLContext.set_server_sigalgs` methods." msgstr "" msgid "Exceptions" @@ -363,11 +366,11 @@ msgid "Random generation" msgstr "" msgid "" -"Return *num* cryptographically strong pseudo-random bytes. Raises an :class:" -"`SSLError` if the PRNG has not been seeded with enough data or if the " -"operation is not supported by the current RAND method. :func:`RAND_status` " -"can be used to check the status of the PRNG and :func:`RAND_add` can be used " -"to seed the PRNG." +"Return *num* cryptographically strong pseudo-random bytes. Raises " +"an :class:`SSLError` if the PRNG has not been seeded with enough data or if " +"the operation is not supported by the current RAND " +"method. :func:`RAND_status` can be used to check the status of the PRNG " +"and :func:`RAND_add` can be used to seed the PRNG." msgstr "" msgid "For almost all applications :func:`os.urandom` is preferable." @@ -433,19 +436,19 @@ msgid "" "PEM-encoded string. If ``ssl_version`` is specified, uses that version of " "the SSL protocol to attempt to connect to the server. If *ca_certs* is " "specified, it should be a file containing a list of root certificates, the " -"same format as used for the *cafile* parameter in :meth:`SSLContext." -"load_verify_locations`. The call will attempt to validate the server " -"certificate against that set of root certificates, and will fail if the " -"validation attempt fails. A timeout can be specified with the ``timeout`` " -"parameter." +"same format as used for the *cafile* parameter " +"in :meth:`SSLContext.load_verify_locations`. The call will attempt to " +"validate the server certificate against that set of root certificates, and " +"will fail if the validation attempt fails. A timeout can be specified with " +"the ``timeout`` parameter." msgstr "" msgid "This function is now IPv6-compatible." msgstr "" msgid "" -"The default *ssl_version* is changed from :data:`PROTOCOL_SSLv3` to :data:" -"`PROTOCOL_TLS` for maximum compatibility with modern servers." +"The default *ssl_version* is changed from :data:`PROTOCOL_SSLv3` " +"to :data:`PROTOCOL_TLS` for maximum compatibility with modern servers." msgstr "" msgid "The *timeout* parameter was added." @@ -501,8 +504,8 @@ msgstr "" msgid "" "The function returns a list of (cert_bytes, encoding_type, trust) tuples. " -"The encoding_type specifies the encoding of cert_bytes. It is either :const:" -"`x509_asn` for X.509 ASN.1 data or :const:`pkcs_7_asn` for PKCS#7 ASN.1 " +"The encoding_type specifies the encoding of cert_bytes. It is either " +"``'x509_asn'`` for X.509 ASN.1 data or ``'pkcs_7_asn'`` for PKCS#7 ASN.1 " "data. Trust specifies the purpose of the certificate as a set of OIDS or " "exactly ``True`` if the certificate is trustworthy for all purposes." msgstr "" @@ -522,9 +525,10 @@ msgid "" msgstr "" msgid "" -"The function returns a list of (cert_bytes, encoding_type, trust) tuples. " -"The encoding_type specifies the encoding of cert_bytes. It is either :const:" -"`x509_asn` for X.509 ASN.1 data or :const:`pkcs_7_asn` for PKCS#7 ASN.1 data." +"The function returns a list of (cert_bytes, encoding_type) tuples. The " +"encoding_type specifies the encoding of cert_bytes. It is either " +"``'x509_asn'`` for X.509 ASN.1 data or ``'pkcs_7_asn'`` for PKCS#7 ASN.1 " +"data." msgstr "" msgid "Constants" @@ -536,10 +540,11 @@ msgid "" msgstr "" msgid "" -"Possible value for :attr:`SSLContext.verify_mode`. Except for :const:" -"`PROTOCOL_TLS_CLIENT`, it is the default mode. With client-side sockets, " -"just about any cert is accepted. Validation errors, such as untrusted or " -"expired cert, are ignored and do not abort the TLS/SSL handshake." +"Possible value for :attr:`SSLContext.verify_mode`. Except " +"for :const:`PROTOCOL_TLS_CLIENT`, it is the default mode. With client-side " +"sockets, just about any cert is accepted. Validation errors, such as " +"untrusted or expired cert, are ignored and do not abort the TLS/SSL " +"handshake." msgstr "" msgid "" @@ -551,9 +556,10 @@ msgid "See the discussion of :ref:`ssl-security` below." msgstr "" msgid "" -"Possible value for :attr:`SSLContext.verify_mode`. In client mode, :const:" -"`CERT_OPTIONAL` has the same meaning as :const:`CERT_REQUIRED`. It is " -"recommended to use :const:`CERT_REQUIRED` for client-side sockets instead." +"Possible value for :attr:`SSLContext.verify_mode`. In client " +"mode, :const:`CERT_OPTIONAL` has the same meaning as :const:`CERT_REQUIRED`. " +"It is recommended to use :const:`CERT_REQUIRED` for client-side sockets " +"instead." msgstr "" msgid "" @@ -565,19 +571,20 @@ msgid "" msgstr "" msgid "" -"Use of this setting requires a valid set of CA certificates to be passed to :" -"meth:`SSLContext.load_verify_locations`." +"Use of this setting requires a valid set of CA certificates to be passed " +"to :meth:`SSLContext.load_verify_locations`." msgstr "" msgid "" "Possible value for :attr:`SSLContext.verify_mode`. In this mode, " -"certificates are required from the other side of the socket connection; an :" -"class:`SSLError` will be raised if no certificate is provided, or if its " +"certificates are required from the other side of the socket connection; " +"an :class:`SSLError` will be raised if no certificate is provided, or if its " "validation fails. This mode is **not** sufficient to verify a certificate in " -"client mode as it does not match hostnames. :attr:`~SSLContext." -"check_hostname` must be enabled as well to verify the authenticity of a " -"cert. :const:`PROTOCOL_TLS_CLIENT` uses :const:`CERT_REQUIRED` and enables :" -"attr:`~SSLContext.check_hostname` by default." +"client mode as it does not match " +"hostnames. :attr:`~SSLContext.check_hostname` must be enabled as well to " +"verify the authenticity of a cert. :const:`PROTOCOL_TLS_CLIENT` " +"uses :const:`CERT_REQUIRED` and enables :attr:`~SSLContext.check_hostname` " +"by default." msgstr "" msgid "" @@ -599,8 +606,8 @@ msgid "" "Possible value for :attr:`SSLContext.verify_flags`. In this mode, only the " "peer cert is checked but none of the intermediate CA certificates. The mode " "requires a valid CRL that is signed by the peer cert's issuer (its direct " -"ancestor CA). If no proper CRL has been loaded with :attr:`SSLContext." -"load_verify_locations`, validation will fail." +"ancestor CA). If no proper CRL has been loaded " +"with :attr:`SSLContext.load_verify_locations`, validation will fail." msgstr "" msgid "" @@ -643,8 +650,8 @@ msgstr "" msgid "" "TLS clients and servers require different default settings for secure " -"communication. The generic TLS protocol constant is deprecated in favor of :" -"data:`PROTOCOL_TLS_CLIENT` and :data:`PROTOCOL_TLS_SERVER`." +"communication. The generic TLS protocol constant is deprecated in favor " +"of :data:`PROTOCOL_TLS_CLIENT` and :data:`PROTOCOL_TLS_SERVER`." msgstr "" msgid "" @@ -678,9 +685,9 @@ msgstr "" msgid "" "OpenSSL has deprecated all version specific protocols. Use the default " -"protocol :data:`PROTOCOL_TLS_SERVER` or :data:`PROTOCOL_TLS_CLIENT` with :" -"attr:`SSLContext.minimum_version` and :attr:`SSLContext.maximum_version` " -"instead." +"protocol :data:`PROTOCOL_TLS_SERVER` or :data:`PROTOCOL_TLS_CLIENT` " +"with :attr:`SSLContext.minimum_version` " +"and :attr:`SSLContext.maximum_version` instead." msgstr "" msgid "Selects TLS version 1.0 as the channel encryption protocol." @@ -730,8 +737,9 @@ msgid "" msgstr "" msgid "" -"The option is deprecated since OpenSSL 1.1.0, use the new :attr:`SSLContext." -"minimum_version` and :attr:`SSLContext.maximum_version` instead." +"The option is deprecated since OpenSSL 1.1.0, use the " +"new :attr:`SSLContext.minimum_version` " +"and :attr:`SSLContext.maximum_version` instead." msgstr "" msgid "" @@ -936,33 +944,34 @@ msgid "" msgstr "" msgid "" -"Used as the return value of the callback function in :meth:`SSLContext." -"set_servername_callback`." +"Used as the return value of the callback function " +"in :meth:`SSLContext.set_servername_callback`." msgstr "" msgid ":class:`enum.IntEnum` collection of ALERT_DESCRIPTION_* constants." msgstr "" msgid "" -"Option for :func:`create_default_context` and :meth:`SSLContext." -"load_default_certs`. This value indicates that the context may be used to " -"authenticate web servers (therefore, it will be used to create client-side " -"sockets)." +"Option for :func:`create_default_context` " +"and :meth:`SSLContext.load_default_certs`. This value indicates that the " +"context may be used to authenticate web servers (therefore, it will be used " +"to create client-side sockets)." msgstr "" msgid "" -"Option for :func:`create_default_context` and :meth:`SSLContext." -"load_default_certs`. This value indicates that the context may be used to " -"authenticate web clients (therefore, it will be used to create server-side " -"sockets)." +"Option for :func:`create_default_context` " +"and :meth:`SSLContext.load_default_certs`. This value indicates that the " +"context may be used to authenticate web clients (therefore, it will be used " +"to create server-side sockets)." msgstr "" msgid ":class:`enum.IntEnum` collection of SSL_ERROR_* constants." msgstr "" msgid "" -":class:`enum.IntEnum` collection of SSL and TLS versions for :attr:" -"`SSLContext.maximum_version` and :attr:`SSLContext.minimum_version`." +":class:`enum.IntEnum` collection of SSL and TLS versions " +"for :attr:`SSLContext.maximum_version` " +"and :attr:`SSLContext.minimum_version`." msgstr "" msgid "" @@ -975,8 +984,8 @@ msgid "SSL 3.0 to TLS 1.3." msgstr "" msgid "" -"All :class:`TLSVersion` members except :attr:`TLSVersion.TLSv1_2` and :attr:" -"`TLSVersion.TLSv1_3` are deprecated." +"All :class:`TLSVersion` members except :attr:`TLSVersion.TLSv1_2` " +"and :attr:`TLSVersion.TLSv1_3` are deprecated." msgstr "" msgid "SSL sockets" @@ -1009,9 +1018,7 @@ msgstr "" msgid ":meth:`~socket.socket.getsockopt`, :meth:`~socket.socket.setsockopt`" msgstr "" -msgid "" -":meth:`~socket.socket.gettimeout`, :meth:`~socket.socket.settimeout`, :meth:" -"`~socket.socket.setblocking`" +msgid ":meth:`~socket.socket.gettimeout`, :meth:`~socket.socket.settimeout`, :meth:`~socket.socket.setblocking`" msgstr "" msgid ":meth:`~socket.socket.listen`" @@ -1047,8 +1054,8 @@ msgid "" msgstr "" msgid "" -"Instances of :class:`SSLSocket` must be created using the :meth:`SSLContext." -"wrap_socket` method." +"Instances of :class:`SSLSocket` must be created using " +"the :meth:`SSLContext.wrap_socket` method." msgstr "" msgid "The :meth:`sendfile` method was added." @@ -1061,14 +1068,15 @@ msgid "" msgstr "" msgid "" -"It is deprecated to create a :class:`SSLSocket` instance directly, use :meth:" -"`SSLContext.wrap_socket` to wrap a socket." +"It is deprecated to create a :class:`SSLSocket` instance directly, " +"use :meth:`SSLContext.wrap_socket` to wrap a socket." msgstr "" msgid "" -":class:`SSLSocket` instances must be created with :meth:`~SSLContext." -"wrap_socket`. In earlier versions, it was possible to create instances " -"directly. This was never documented or officially supported." +":class:`SSLSocket` instances must be created " +"with :meth:`~SSLContext.wrap_socket`. In earlier versions, it was possible " +"to create instances directly. This was never documented or officially " +"supported." msgstr "" msgid "" @@ -1093,8 +1101,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is :" -"ref:`non-blocking ` and the read would block." +"Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket " +"is :ref:`non-blocking ` and the read would block." msgstr "" msgid "" @@ -1117,8 +1125,8 @@ msgid "" msgstr "" msgid "" -"Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is :" -"ref:`non-blocking ` and the write would block." +"Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket " +"is :ref:`non-blocking ` and the write would block." msgstr "" msgid "" @@ -1138,28 +1146,29 @@ msgid "" "The :meth:`~SSLSocket.read` and :meth:`~SSLSocket.write` methods are the low-" "level methods that read and write unencrypted, application-level data and " "decrypt/encrypt it to encrypted, wire-level data. These methods require an " -"active SSL connection, i.e. the handshake was completed and :meth:`SSLSocket." -"unwrap` was not called." +"active SSL connection, i.e. the handshake was completed " +"and :meth:`SSLSocket.unwrap` was not called." msgstr "" msgid "" -"Normally you should use the socket API methods like :meth:`~socket.socket." -"recv` and :meth:`~socket.socket.send` instead of these methods." +"Normally you should use the socket API methods " +"like :meth:`~socket.socket.recv` and :meth:`~socket.socket.send` instead of " +"these methods." msgstr "" msgid "Perform the SSL setup handshake." msgstr "" msgid "" -"If *block* is true and the timeout obtained by :meth:`~socket.socket." -"gettimeout` is zero, the socket is set in blocking mode until the handshake " -"is performed." +"If *block* is true and the timeout obtained " +"by :meth:`~socket.socket.gettimeout` is zero, the socket is set in blocking " +"mode until the handshake is performed." msgstr "" msgid "" -"The handshake method also performs :func:`!match_hostname` when the :attr:" -"`~SSLContext.check_hostname` attribute of the socket's :attr:`~SSLSocket." -"context` is true." +"The handshake method also performs :func:`!match_hostname` when " +"the :attr:`~SSLContext.check_hostname` attribute of the " +"socket's :attr:`~SSLSocket.context` is true." msgstr "" msgid "" @@ -1168,16 +1177,16 @@ msgid "" msgstr "" msgid "" -"Hostname or IP address is matched by OpenSSL during handshake. The function :" -"func:`!match_hostname` is no longer used. In case OpenSSL refuses a hostname " -"or IP address, the handshake is aborted early and a TLS alert message is " -"sent to the peer." +"Hostname or IP address is matched by OpenSSL during handshake. The " +"function :func:`!match_hostname` is no longer used. In case OpenSSL refuses " +"a hostname or IP address, the handshake is aborted early and a TLS alert " +"message is sent to the peer." msgstr "" msgid "" "If there is no certificate for the peer on the other end of the connection, " -"return ``None``. If the SSL handshake hasn't been done yet, raise :exc:" -"`ValueError`." +"return ``None``. If the SSL handshake hasn't been done yet, " +"raise :exc:`ValueError`." msgstr "" msgid "" @@ -1235,9 +1244,9 @@ msgstr "" msgid "" "for a server SSL socket, the client will only provide a certificate when " -"requested by the server; therefore :meth:`getpeercert` will return :const:" -"`None` if you used :const:`CERT_NONE` (rather than :const:`CERT_OPTIONAL` " -"or :const:`CERT_REQUIRED`)." +"requested by the server; therefore :meth:`getpeercert` will " +"return :const:`None` if you used :const:`CERT_NONE` (rather " +"than :const:`CERT_OPTIONAL` or :const:`CERT_REQUIRED`)." msgstr "" msgid "See also :attr:`SSLContext.check_hostname`." @@ -1263,11 +1272,23 @@ msgid "" "disabled method acts the same as :meth:`~SSLSocket.get_unverified_chain`." msgstr "" +msgid "" +"The verified chain is not stored with a session, so the list is empty when " +"the session is resumed (see :attr:`~SSLSocket.session_reused`)." +msgstr "" + msgid "" "Returns raw certificate chain provided by the other end of the SSL channel " "as a list of DER-encoded bytes." msgstr "" +msgid "" +"No certificates are exchanged when a session is resumed " +"(see :attr:`~SSLSocket.session_reused`); the list then holds what was stored " +"with the session, which for a session resumed from a ticket on the server " +"side is the peer's own certificate only." +msgstr "" + msgid "" "Returns a three-value tuple containing the name of the cipher being used, " "the version of the SSL protocol that defines its use, and the number of " @@ -1319,16 +1340,17 @@ msgstr "" msgid "" "The *cb_type* parameter allow selection of the desired channel binding type. " "Valid channel binding types are listed in the :data:`CHANNEL_BINDING_TYPES` " -"list. Currently only the 'tls-unique' channel binding, defined by :rfc:" -"`5929`, is supported. :exc:`ValueError` will be raised if an unsupported " -"channel binding type is requested." +"list. Currently only the 'tls-unique' channel binding, defined " +"by :rfc:`5929`, is supported. :exc:`ValueError` will be raised if an " +"unsupported channel binding type is requested." msgstr "" msgid "" -"Return the protocol that was selected during the TLS handshake. If :meth:" -"`SSLContext.set_alpn_protocols` was not called, if the other party does not " -"support ALPN, if this socket does not support any of the client's proposed " -"protocols, or if the handshake has not happened yet, ``None`` is returned." +"Return the protocol that was selected during the TLS handshake. " +"If :meth:`SSLContext.set_alpn_protocols` was not called, if the other party " +"does not support ALPN, if this socket does not support any of the client's " +"proposed protocols, or if the handshake has not happened yet, ``None`` is " +"returned." msgstr "" msgid "" @@ -1352,8 +1374,8 @@ msgstr "" msgid "" "Requests post-handshake authentication (PHA) from a TLS 1.3 client. PHA can " "only be initiated for a TLS 1.3 connection from a server-side socket, after " -"the initial TLS handshake and with PHA enabled on both sides, see :attr:" -"`SSLContext.post_handshake_auth`." +"the initial TLS handshake and with PHA enabled on both sides, " +"see :attr:`SSLContext.post_handshake_auth`." msgstr "" msgid "" @@ -1363,8 +1385,8 @@ msgid "" msgstr "" msgid "" -"If any precondition isn't met (e.g. not TLS 1.3, PHA not enabled), an :exc:" -"`SSLError` is raised." +"If any precondition isn't met (e.g. not TLS 1.3, PHA not enabled), " +"an :exc:`SSLError` is raised." msgstr "" msgid "" @@ -1401,15 +1423,15 @@ msgstr "" msgid "" "The attribute is now always ASCII text. When ``server_hostname`` is an " "internationalized domain name (IDN), this attribute now stores the A-label " -"form (``\"xn--pythn-mua.org\"``), rather than the U-label form (``\"pythön." -"org\"``)." +"form (``\"xn--pythn-mua.org\"``), rather than the U-label form " +"(``\"pythön.org\"``)." msgstr "" msgid "" "The :class:`SSLSession` for this SSL connection. The session is available " "for client and server side sockets after the TLS handshake has been " -"performed. For client sockets the session can be set before :meth:" -"`~SSLSocket.do_handshake` has been called to reuse a session." +"performed. For client sockets the session can be set " +"before :meth:`~SSLSocket.do_handshake` has been called to reuse a session." msgstr "" msgid "SSL contexts" @@ -1508,26 +1530,25 @@ msgid "" msgstr "" msgid "" -"The context is created with secure default values. The options :data:" -"`OP_NO_COMPRESSION`, :data:`OP_CIPHER_SERVER_PREFERENCE`, :data:" -"`OP_SINGLE_DH_USE`, :data:`OP_SINGLE_ECDH_USE`, :data:`OP_NO_SSLv2`, and :" -"data:`OP_NO_SSLv3` (except for :data:`PROTOCOL_SSLv3`) are set by default. " -"The initial cipher suite list contains only ``HIGH`` ciphers, no ``NULL`` " -"ciphers and no ``MD5`` ciphers." +"The context is created with secure default values. The " +"options :data:`OP_NO_COMPRESSION`, :data:`OP_CIPHER_SERVER_PREFERENCE`, :data:`OP_SINGLE_DH_USE`, :data:`OP_SINGLE_ECDH_USE`, :data:`OP_NO_SSLv2`, " +"and :data:`OP_NO_SSLv3` (except for :data:`PROTOCOL_SSLv3`) are set by " +"default. The initial cipher suite list contains only ``HIGH`` ciphers, no " +"``NULL`` ciphers and no ``MD5`` ciphers." msgstr "" msgid "" ":class:`SSLContext` without protocol argument is deprecated. The context " -"class will either require :data:`PROTOCOL_TLS_CLIENT` or :data:" -"`PROTOCOL_TLS_SERVER` protocol in the future." +"class will either require :data:`PROTOCOL_TLS_CLIENT` " +"or :data:`PROTOCOL_TLS_SERVER` protocol in the future." msgstr "" msgid "" "The default cipher suites now include only secure AES and ChaCha20 ciphers " "with forward secrecy and security level 2. RSA and DH keys with less than " -"2048 bits and ECC keys with less than 224 bits are prohibited. :data:" -"`PROTOCOL_TLS`, :data:`PROTOCOL_TLS_CLIENT`, and :data:`PROTOCOL_TLS_SERVER` " -"use TLS 1.2 as minimum TLS version." +"2048 bits and ECC keys with less than 224 bits are " +"prohibited. :data:`PROTOCOL_TLS`, :data:`PROTOCOL_TLS_CLIENT`, " +"and :data:`PROTOCOL_TLS_SERVER` use TLS 1.2 as minimum TLS version." msgstr "" msgid "" @@ -1598,9 +1619,9 @@ msgstr "" msgid "" "Load a set of default \"certification authority\" (CA) certificates from " "default locations. On Windows it loads CA certs from the ``CA`` and ``ROOT`` " -"system stores. On all systems it calls :meth:`SSLContext." -"set_default_verify_paths`. In the future the method may load CA certificates " -"from other locations, too." +"system stores. On all systems it " +"calls :meth:`SSLContext.set_default_verify_paths`. In the future the method " +"may load CA certificates from other locations, too." msgstr "" msgid "" @@ -1613,8 +1634,9 @@ msgstr "" msgid "" "Load a set of \"certification authority\" (CA) certificates used to validate " -"other peers' certificates when :data:`verify_mode` is other than :data:" -"`CERT_NONE`. At least one of *cafile* or *capath* must be specified." +"other peers' certificates when :data:`verify_mode` is other " +"than :data:`CERT_NONE`. At least one of *cafile* or *capath* must be " +"specified." msgstr "" msgid "" @@ -1660,8 +1682,8 @@ msgid "" msgstr "" msgid "" -"Get a list of enabled ciphers. The list is in order of cipher priority. See :" -"meth:`SSLContext.set_ciphers`." +"Get a list of enabled ciphers. The list is in order of cipher priority. " +"See :meth:`SSLContext.set_ciphers`." msgstr "" msgid "" @@ -1696,8 +1718,8 @@ msgstr "" msgid "" "Get a list of groups implemented for key agreement, taking into account the " -"current TLS :attr:`~SSLContext.minimum_version` and :attr:`~SSLContext." -"maximum_version` values. For example::" +"current TLS :attr:`~SSLContext.minimum_version` " +"and :attr:`~SSLContext.maximum_version` values. For example::" msgstr "" msgid "" @@ -1710,9 +1732,9 @@ msgstr "" msgid "" "By default, this method returns only the preferred IANA names for the " -"available groups. However, if the ``include_aliases`` parameter is set to :" -"const:`True` this method will also return any associated aliases such as the " -"ECDH curve names supported in older versions of OpenSSL." +"available groups. However, if the ``include_aliases`` parameter is set " +"to :const:`True` this method will also return any associated aliases such as " +"the ECDH curve names supported in older versions of OpenSSL." msgstr "" msgid "" @@ -1728,14 +1750,14 @@ msgid "" "Set the allowed ciphers for sockets created with this context when " "connecting using TLS 1.2 and earlier. The *ciphers* argument should be a " "string in the `OpenSSL cipher list format `_. To set allowed TLS 1.3 ciphers, use :meth:`SSLContext." -"set_ciphersuites`." +"man1/ciphers/>`_. To set allowed TLS 1.3 ciphers, " +"use :meth:`SSLContext.set_ciphersuites`." msgstr "" msgid "" "If no cipher can be selected (because compile-time options or other " -"configuration forbids use of all the specified ciphers), an :class:" -"`SSLError` will be raised." +"configuration forbids use of all the specified ciphers), " +"an :class:`SSLError` will be raised." msgstr "" msgid "" @@ -1789,9 +1811,9 @@ msgstr "" msgid "" "Specify which protocols the socket should advertise during the SSL/TLS " -"handshake. It should be a list of ASCII strings, like ``['http/1.1', " -"'spdy/2']``, ordered by preference. The selection of a protocol will happen " -"during the handshake, and will play out according to :rfc:`7301`. After a " +"handshake. It should be a list of ASCII strings, like ``['http/1.1', 'spdy/" +"2']``, ordered by preference. The selection of a protocol will happen during " +"the handshake, and will play out according to :rfc:`7301`. After a " "successful handshake, the :meth:`SSLSocket.selected_alpn_protocol` method " "will return the agreed-upon protocol." msgstr "" @@ -1807,9 +1829,9 @@ msgid "" "ordered by preference. The selection of a protocol will happen during the " "handshake, and will play out according to the `Application Layer Protocol " "Negotiation `_. After a successful handshake, the :meth:" -"`SSLSocket.selected_npn_protocol` method will return the agreed-upon " -"protocol." +"Layer_Protocol_Negotiation>`_. After a successful handshake, " +"the :meth:`SSLSocket.selected_npn_protocol` method will return the agreed-" +"upon protocol." msgstr "" msgid "" @@ -1841,34 +1863,41 @@ msgid "" msgstr "" msgid "" -"A typical use of this callback is to change the :class:`ssl.SSLSocket`'s :" -"attr:`SSLSocket.context` attribute to a new object of type :class:" -"`SSLContext` representing a certificate chain that matches the server name." +"A typical use of this callback is to change " +"the :class:`ssl.SSLSocket`'s :attr:`SSLSocket.context` attribute to a new " +"object of type :class:`SSLContext` representing a certificate chain that " +"matches the server name." +msgstr "" + +msgid "" +"If the callback assigns a new context to :attr:`SSLSocket.context`, any " +"further ClientHello message on the same connection (for example after a TLS " +"1.3 HelloRetryRequest) is dispatched to the new context's *sni_callback*, if " +"it has one; the original callback is not called again for that connection." msgstr "" msgid "" "Due to the early negotiation phase of the TLS connection, only limited " -"methods and attributes are usable like :meth:`SSLSocket." -"selected_alpn_protocol` and :attr:`SSLSocket.context`. The :meth:`SSLSocket." -"getpeercert`, :meth:`SSLSocket.get_verified_chain`, :meth:`SSLSocket." -"get_unverified_chain` :meth:`SSLSocket.cipher` and :meth:`SSLSocket." -"compression` methods require that the TLS connection has progressed beyond " -"the TLS Client Hello and therefore will not return meaningful values nor can " -"they be called safely." +"methods and attributes are usable " +"like :meth:`SSLSocket.selected_alpn_protocol` and :attr:`SSLSocket.context`. " +"The :meth:`SSLSocket.getpeercert`, :meth:`SSLSocket.get_verified_chain`, :meth:`SSLSocket.get_unverified_chain` :meth:`SSLSocket.cipher` " +"and :meth:`SSLSocket.compression` methods require that the TLS connection " +"has progressed beyond the TLS Client Hello and therefore will not return " +"meaningful values nor can they be called safely." msgstr "" msgid "" "The *sni_callback* function must return ``None`` to allow the TLS " -"negotiation to continue. If a TLS failure is required, a constant :const:" -"`ALERT_DESCRIPTION_* ` can be returned. " -"Other return values will result in a TLS fatal error with :const:" -"`ALERT_DESCRIPTION_INTERNAL_ERROR`." +"negotiation to continue. If a TLS failure is required, a " +"constant :const:`ALERT_DESCRIPTION_* ` can " +"be returned. Other return values will result in a TLS fatal error " +"with :const:`ALERT_DESCRIPTION_INTERNAL_ERROR`." msgstr "" msgid "" "If an exception is raised from the *sni_callback* function the TLS " -"connection will terminate with a fatal TLS alert message :const:" -"`ALERT_DESCRIPTION_HANDSHAKE_FAILURE`." +"connection will terminate with a fatal TLS alert " +"message :const:`ALERT_DESCRIPTION_HANDSHAKE_FAILURE`." msgstr "" msgid "" @@ -1876,6 +1905,12 @@ msgid "" "OPENSSL_NO_TLSEXT defined when it was built." msgstr "" +msgid "" +"After the callback assigns a new :attr:`SSLSocket.context`, later " +"ClientHello messages on the connection are dispatched to the new context's " +"*sni_callback*." +msgstr "" + msgid "" "This is a legacy API retained for backwards compatibility. When possible, " "you should use :attr:`sni_callback` instead. The given " @@ -1899,8 +1934,8 @@ msgid "" msgstr "" msgid "" -"This setting doesn't apply to client sockets. You can also use the :data:" -"`OP_SINGLE_DH_USE` option to further improve security." +"This setting doesn't apply to client sockets. You can also use " +"the :data:`OP_SINGLE_DH_USE` option to further improve security." msgstr "" msgid "" @@ -1912,8 +1947,8 @@ msgid "" msgstr "" msgid "" -"This setting doesn't apply to client sockets. You can also use the :data:" -"`OP_SINGLE_ECDH_USE` option to further improve security." +"This setting doesn't apply to client sockets. You can also use " +"the :data:`OP_SINGLE_ECDH_USE` option to further improve security." msgstr "" msgid "This method is not available if :data:`HAS_ECDH` is ``False``." @@ -1928,10 +1963,11 @@ msgid "Vincent Bernat." msgstr "" msgid "" -"Wrap an existing Python socket *sock* and return an instance of :attr:" -"`SSLContext.sslsocket_class` (default :class:`SSLSocket`). The returned SSL " -"socket is tied to the context, its settings and certificates. *sock* must be " -"a :const:`~socket.SOCK_STREAM` socket; other socket types are unsupported." +"Wrap an existing Python socket *sock* and return an instance " +"of :attr:`SSLContext.sslsocket_class` (default :class:`SSLSocket`). The " +"returned SSL socket is tied to the context, its settings and certificates. " +"*sock* must be a :const:`~socket.SOCK_STREAM` socket; other socket types are " +"unsupported." msgstr "" msgid "" @@ -1945,8 +1981,8 @@ msgid "" "after :meth:`connect` is called on the socket. For server-side sockets, if " "the socket has no remote peer, it is assumed to be a listening socket, and " "the server-side SSL wrapping is automatically performed on client " -"connections accepted via the :meth:`accept` method. The method may raise :" -"exc:`SSLError`." +"connections accepted via the :meth:`accept` method. The method may " +"raise :exc:`SSLError`." msgstr "" msgid "" @@ -1960,27 +1996,27 @@ msgstr "" msgid "" "The parameter ``do_handshake_on_connect`` specifies whether to do the SSL " "handshake automatically after doing a :meth:`socket.connect`, or whether the " -"application program will call it explicitly, by invoking the :meth:" -"`SSLSocket.do_handshake` method. Calling :meth:`SSLSocket.do_handshake` " -"explicitly gives the program control over the blocking behavior of the " -"socket I/O involved in the handshake." +"application program will call it explicitly, by invoking " +"the :meth:`SSLSocket.do_handshake` method. " +"Calling :meth:`SSLSocket.do_handshake` explicitly gives the program control " +"over the blocking behavior of the socket I/O involved in the handshake." msgstr "" msgid "" -"The parameter ``suppress_ragged_eofs`` specifies how the :meth:`SSLSocket." -"recv` method should signal unexpected EOF from the other end of the " -"connection. If specified as :const:`True` (the default), it returns a " -"normal EOF (an empty bytes object) in response to unexpected EOF errors " -"raised from the underlying socket; if :const:`False`, it will raise the " -"exceptions back to the caller." +"The parameter ``suppress_ragged_eofs`` specifies how " +"the :meth:`SSLSocket.recv` method should signal unexpected EOF from the " +"other end of the connection. If specified as :const:`True` (the default), " +"it returns a normal EOF (an empty bytes object) in response to unexpected " +"EOF errors raised from the underlying socket; if :const:`False`, it will " +"raise the exceptions back to the caller." msgstr "" msgid "*session*, see :attr:`~SSLSocket.session`." msgstr "" msgid "" -"To wrap an :class:`SSLSocket` in another :class:`SSLSocket`, use :meth:" -"`SSLContext.wrap_bio`." +"To wrap an :class:`SSLSocket` in another :class:`SSLSocket`, " +"use :meth:`SSLContext.wrap_bio`." msgstr "" msgid "" @@ -1997,21 +2033,26 @@ msgid "" msgstr "" msgid "" -"The return type of :meth:`SSLContext.wrap_socket`, defaults to :class:" -"`SSLSocket`. The attribute can be assigned to on instances of :class:" -"`SSLContext` in order to return a custom subclass of :class:`SSLSocket`." +"The return type of :meth:`SSLContext.wrap_socket`, defaults " +"to :class:`SSLSocket`. The attribute can be assigned to on instances " +"of :class:`SSLContext` in order to return a custom subclass " +"of :class:`SSLSocket`." msgstr "" msgid "" -"Wrap the BIO objects *incoming* and *outgoing* and return an instance of :" -"attr:`SSLContext.sslobject_class` (default :class:`SSLObject`). The SSL " +"Wrap the BIO objects *incoming* and *outgoing* and return an instance " +"of :attr:`SSLContext.sslobject_class` (default :class:`SSLObject`). The SSL " "routines will read input data from the incoming BIO and write data to the " "outgoing BIO." msgstr "" msgid "" "The *server_side*, *server_hostname* and *session* parameters have the same " -"meaning as in :meth:`SSLContext.wrap_socket`." +"meaning as in :meth:`SSLContext.wrap_socket`, and are validated in the same " +"way: in particular a :exc:`ValueError` is raised " +"when :attr:`~SSLContext.check_hostname` is enabled but no *server_hostname* " +"is given, since there would be no name to match the peer's certificate " +"against." msgstr "" msgid "" @@ -2020,9 +2061,17 @@ msgid "" msgstr "" msgid "" -"The return type of :meth:`SSLContext.wrap_bio`, defaults to :class:" -"`SSLObject`. The attribute can be overridden on instance of class in order " -"to return a custom subclass of :class:`SSLObject`." +"The *server_side*, *server_hostname* and *session* parameters are now " +"validated as :meth:`SSLContext.wrap_socket` validates them. Previously a " +"context with :attr:`~SSLContext.check_hostname` enabled and no " +"*server_hostname* was accepted, and verified the certificate chain but never " +"the peer's identity." +msgstr "" + +msgid "" +"The return type of :meth:`SSLContext.wrap_bio`, defaults " +"to :class:`SSLObject`. The attribute can be overridden on instance of class " +"in order to return a custom subclass of :class:`SSLObject`." msgstr "" msgid "" @@ -2041,14 +2090,15 @@ msgstr "" msgid "" "Whether to match the peer cert's hostname in :meth:`SSLSocket.do_handshake`. " -"The context's :attr:`~SSLContext.verify_mode` must be set to :data:" -"`CERT_OPTIONAL` or :data:`CERT_REQUIRED`, and you must pass " +"The context's :attr:`~SSLContext.verify_mode` must be set " +"to :data:`CERT_OPTIONAL` or :data:`CERT_REQUIRED`, and you must pass " "*server_hostname* to :meth:`~SSLContext.wrap_socket` in order to match the " -"hostname. Enabling hostname checking automatically sets :attr:`~SSLContext." -"verify_mode` from :data:`CERT_NONE` to :data:`CERT_REQUIRED`. It cannot be " -"set back to :data:`CERT_NONE` as long as hostname checking is enabled. The :" -"data:`PROTOCOL_TLS_CLIENT` protocol enables hostname checking by default. " -"With other protocols, hostname checking must be enabled explicitly." +"hostname. Enabling hostname checking automatically " +"sets :attr:`~SSLContext.verify_mode` from :data:`CERT_NONE` " +"to :data:`CERT_REQUIRED`. It cannot be set back to :data:`CERT_NONE` as " +"long as hostname checking is enabled. The :data:`PROTOCOL_TLS_CLIENT` " +"protocol enables hostname checking by default. With other protocols, " +"hostname checking must be enabled explicitly." msgstr "" msgid "" @@ -2065,10 +2115,10 @@ msgid "" msgstr "" msgid "" -":attr:`~SSLContext.verify_mode` is now automatically changed to :data:" -"`CERT_REQUIRED` when hostname checking is enabled and :attr:`~SSLContext." -"verify_mode` is :data:`CERT_NONE`. Previously the same operation would have " -"failed with a :exc:`ValueError`." +":attr:`~SSLContext.verify_mode` is now automatically changed " +"to :data:`CERT_REQUIRED` when hostname checking is enabled " +"and :attr:`~SSLContext.verify_mode` is :data:`CERT_NONE`. Previously the " +"same operation would have failed with a :exc:`ValueError`." msgstr "" msgid "" @@ -2082,17 +2132,20 @@ msgstr "" msgid "" "A :class:`TLSVersion` enum member representing the highest supported TLS " "version. The value defaults to :attr:`TLSVersion.MAXIMUM_SUPPORTED`. The " -"attribute is read-only for protocols other than :const:`PROTOCOL_TLS`, :" -"const:`PROTOCOL_TLS_CLIENT`, and :const:`PROTOCOL_TLS_SERVER`." +"attribute is read-only for protocols other " +"than :const:`PROTOCOL_TLS`, :const:`PROTOCOL_TLS_CLIENT`, " +"and :const:`PROTOCOL_TLS_SERVER`." msgstr "" msgid "" -"The attributes :attr:`~SSLContext.maximum_version`, :attr:`~SSLContext." -"minimum_version` and :attr:`SSLContext.options` all affect the supported SSL " -"and TLS versions of the context. The implementation does not prevent invalid " -"combinations. For example a context with :attr:`OP_NO_TLSv1_2` in :attr:" -"`~SSLContext.options` and :attr:`~SSLContext.maximum_version` set to :attr:" -"`TLSVersion.TLSv1_2` will not be able to establish a TLS 1.2 connection." +"The " +"attributes :attr:`~SSLContext.maximum_version`, :attr:`~SSLContext.minimum_version` " +"and :attr:`SSLContext.options` all affect the supported SSL and TLS versions " +"of the context. The implementation does not prevent invalid combinations. " +"For example a context with :attr:`OP_NO_TLSv1_2` " +"in :attr:`~SSLContext.options` and :attr:`~SSLContext.maximum_version` set " +"to :attr:`TLSVersion.TLSv1_2` will not be able to establish a TLS 1.2 " +"connection." msgstr "" msgid "" @@ -2101,15 +2154,15 @@ msgid "" msgstr "" msgid "" -"Control the number of TLS 1.3 session tickets of a :const:" -"`PROTOCOL_TLS_SERVER` context. The setting has no impact on TLS 1.0 to 1.2 " -"connections." +"Control the number of TLS 1.3 session tickets of " +"a :const:`PROTOCOL_TLS_SERVER` context. The setting has no impact on TLS 1.0 " +"to 1.2 connections." msgstr "" msgid "" "An integer representing the set of SSL options enabled on this context. The " -"default value is :data:`OP_ALL`, but you can specify other options such as :" -"data:`OP_NO_SSLv2` by ORing them together." +"default value is :data:`OP_ALL`, but you can specify other options such " +"as :data:`OP_NO_SSLv2` by ORing them together." msgstr "" msgid ":attr:`SSLContext.options` returns :class:`Options` flags:" @@ -2117,8 +2170,8 @@ msgstr "" msgid "" "All ``OP_NO_SSL*`` and ``OP_NO_TLS*`` options have been deprecated since " -"Python 3.7. Use :attr:`SSLContext.minimum_version` and :attr:`SSLContext." -"maximum_version` instead." +"Python 3.7. Use :attr:`SSLContext.minimum_version` " +"and :attr:`SSLContext.maximum_version` instead." msgstr "" msgid "" @@ -2136,8 +2189,9 @@ msgstr "" msgid "" "When enabled on server-side sockets, :attr:`SSLContext.verify_mode` must be " "set to :data:`CERT_OPTIONAL` or :data:`CERT_REQUIRED`, too. The actual " -"client cert exchange is delayed until :meth:`SSLSocket." -"verify_client_post_handshake` is called and some I/O is performed." +"client cert exchange is delayed " +"until :meth:`SSLSocket.verify_client_post_handshake` is called and some I/O " +"is performed." msgstr "" msgid "" @@ -2163,9 +2217,9 @@ msgid "" msgstr "" msgid "" -"The flags for certificate verification operations. You can set flags like :" -"data:`VERIFY_CRL_CHECK_LEAF` by ORing them together. By default OpenSSL does " -"neither require nor verify certificate revocation lists (CRLs)." +"The flags for certificate verification operations. You can set flags " +"like :data:`VERIFY_CRL_CHECK_LEAF` by ORing them together. By default " +"OpenSSL does neither require nor verify certificate revocation lists (CRLs)." msgstr "" msgid ":attr:`SSLContext.verify_flags` returns :class:`VerifyFlags` flags:" @@ -2173,8 +2227,8 @@ msgstr "" msgid "" "Whether to try to verify other peers' certificates and how to behave if " -"verification fails. This attribute must be one of :data:`CERT_NONE`, :data:" -"`CERT_OPTIONAL` or :data:`CERT_REQUIRED`." +"verification fails. This attribute must be one " +"of :data:`CERT_NONE`, :data:`CERT_OPTIONAL` or :data:`CERT_REQUIRED`." msgstr "" msgid ":attr:`SSLContext.verify_mode` returns :class:`VerifyMode` enum:" @@ -2197,7 +2251,8 @@ msgid "" "optional string which may be used by the server to select a corresponding " "PSK for the client. The string must be less than or equal to ``256`` octets " "when UTF-8 encoded. PSK is a :term:`bytes-like object` representing the pre-" -"shared key. Return a zero length PSK to reject the connection." +"shared key. With TLS 1.2 and earlier, return a zero length PSK to reject the " +"connection." msgstr "" msgid "Setting ``callback`` to :const:`None` removes any existing callback." @@ -2212,13 +2267,32 @@ msgstr "" msgid "client-identity must be a non-empty string." msgstr "" +msgid "" +"the PSK is only offered to the server, which may decline it and authenticate " +"with a certificate instead. That certificate is checked according " +"to :attr:`~SSLContext.verify_mode`, so a client relying on the PSK to " +"authenticate the server should not set it to :const:`CERT_NONE`, or should " +"check :attr:`SSLSocket.session_reused`, which is true if the PSK was used. " +"A PSK handshake does not need any CA certificates to be loaded when " +"using :const:`CERT_REQUIRED`." +msgstr "" + +msgid "" +"a zero length PSK does not reject the connection, it only means that no PSK " +"is offered. An exception raised by the callback has the same effect." +msgstr "" + +msgid "" +"the PSK is used with the SHA-256 handshake digest, so a server can only " +"accept it with a cipher suite that uses SHA-256." +msgstr "" + msgid "Example usage::" msgstr "" msgid "" "context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)\n" "context.check_hostname = False\n" -"context.verify_mode = ssl.CERT_NONE\n" "context.maximum_version = ssl.TLSVersion.TLSv1_2\n" "context.set_ciphers('PSK')\n" "\n" @@ -2249,8 +2323,8 @@ msgid "" "callback(identity: str | None) -> bytes``. The ``identity`` parameter is an " "optional identity sent by the client which can be used to select a " "corresponding PSK. The return value is a :term:`bytes-like object` " -"representing the pre-shared key. Return a zero length PSK to reject the " -"connection." +"representing the pre-shared key. With TLS 1.2 and earlier, return a zero " +"length PSK to reject the connection." msgstr "" msgid "" @@ -2259,8 +2333,22 @@ msgid "" "UTF-8 encoded." msgstr "" +msgid "the ``identity_hint`` parameter is not sent to the client." +msgstr "" + msgid "" -"When using TLS 1.3 the ``identity_hint`` parameter is not sent to the client." +"a zero length PSK, or an exception raised by the callback, only declines the " +"client's PSK. If a certificate was loaded " +"with :meth:`~SSLContext.load_cert_chain`, the handshake continues with " +"certificate authentication instead of failing, so a server relying on the " +"PSK to authenticate clients should not load one, or should " +"check :attr:`SSLSocket.session_reused`, which is true if the PSK was used." +msgstr "" + +msgid "" +"the PSK can only be accepted with a cipher suite that uses SHA-256. When a " +"certificate is loaded, OpenSSL's default TLS 1.3 cipher suite order selects " +"a SHA-384 suite instead, so the PSK is declined even if it matches." msgstr "" msgid "" @@ -2370,9 +2458,9 @@ msgid "" "certificate chains for each issuer you are willing to trust. Again, this " "file just contains these chains concatenated together. For validation, " "Python will use the first chain it finds in the file which matches. The " -"platform's certificates file can be used by calling :meth:`SSLContext." -"load_default_certs`, this is done automatically with :func:`." -"create_default_context`." +"platform's certificates file can be used by " +"calling :meth:`SSLContext.load_default_certs`, this is done automatically " +"with :func:`.create_default_context`." msgstr "" msgid "Combined key and certificate" @@ -2492,8 +2580,8 @@ msgid "" msgstr "" msgid "" -"When you use the context to connect to a server, :const:`CERT_REQUIRED` and :" -"attr:`~SSLContext.check_hostname` validate the server certificate: it " +"When you use the context to connect to a server, :const:`CERT_REQUIRED` " +"and :attr:`~SSLContext.check_hostname` validate the server certificate: it " "ensures that the server certificate was signed with one of the CA " "certificates, checks the signature for correctness, and verifies other " "properties like validity and identity of the hostname::" @@ -2521,10 +2609,10 @@ msgid "" "{'OCSP': ('http://ocsp.digicert.com',),\n" " 'caIssuers': ('http://cacerts.digicert.com/" "DigiCertSHA2ExtendedValidationServerCA.crt',),\n" -" 'crlDistributionPoints': ('http://crl3.digicert.com/sha2-ev-server-g1." -"crl',\n" -" 'http://crl4.digicert.com/sha2-ev-server-g1." -"crl'),\n" +" 'crlDistributionPoints': ('http://crl3.digicert.com/sha2-ev-server-" +"g1.crl',\n" +" 'http://crl4.digicert.com/sha2-ev-server-" +"g1.crl'),\n" " 'issuer': ((('countryName', 'US'),),\n" " (('organizationName', 'DigiCert Inc'),),\n" " (('organizationalUnitName', 'www.digicert.com'),),\n" @@ -2613,8 +2701,9 @@ msgstr "" msgid "" "When a client connects, you'll call :meth:`accept` on the socket to get the " -"new socket from the other end, and use the context's :meth:`SSLContext." -"wrap_socket` method to create a server-side SSL socket for the connection::" +"new socket from the other end, and use the " +"context's :meth:`SSLContext.wrap_socket` method to create a server-side SSL " +"socket for the connection::" msgstr "" msgid "" @@ -2666,10 +2755,10 @@ msgid "" "Most :class:`SSLSocket` methods will raise either :exc:`SSLWantWriteError` " "or :exc:`SSLWantReadError` instead of :exc:`BlockingIOError` if an I/O " "operation would block. :exc:`SSLWantReadError` will be raised if a read " -"operation on the underlying socket is necessary, and :exc:" -"`SSLWantWriteError` for a write operation on the underlying socket. Note " -"that attempts to *write* to an SSL socket may require *reading* from the " -"underlying socket first, and attempts to *read* from the SSL socket may " +"operation on the underlying socket is necessary, " +"and :exc:`SSLWantWriteError` for a write operation on the underlying socket. " +"Note that attempts to *write* to an SSL socket may require *reading* from " +"the underlying socket first, and attempts to *read* from the SSL socket may " "require a prior *write* to the underlying socket." msgstr "" @@ -2683,8 +2772,8 @@ msgid "" "read from (or written to), but it does not imply that there is sufficient " "data at the upper SSL layer. For example, only part of an SSL frame might " "have arrived. Therefore, you must be ready to handle :meth:`SSLSocket.recv` " -"and :meth:`SSLSocket.send` failures, and retry after another call to :func:" -"`~select.select`." +"and :meth:`SSLSocket.send` failures, and retry after another call " +"to :func:`~select.select`." msgstr "" msgid "" @@ -2696,15 +2785,15 @@ msgid "" msgstr "" msgid "" -"(of course, similar provisions apply when using other primitives such as :" -"func:`~select.poll`, or those in the :mod:`selectors` module)" +"(of course, similar provisions apply when using other primitives such " +"as :func:`~select.poll`, or those in the :mod:`selectors` module)" msgstr "" msgid "" -"The SSL handshake itself will be non-blocking: the :meth:`SSLSocket." -"do_handshake` method has to be retried until it returns successfully. Here " -"is a synopsis using :func:`~select.select` to wait for the socket's " -"readiness::" +"The SSL handshake itself will be non-blocking: " +"the :meth:`SSLSocket.do_handshake` method has to be retried until it returns " +"successfully. Here is a synopsis using :func:`~select.select` to wait for " +"the socket's readiness::" msgstr "" msgid "" @@ -2722,17 +2811,17 @@ msgid "" "The :mod:`asyncio` module supports :ref:`non-blocking SSL sockets ` and provides a higher level :ref:`Streams API `. It polls for events using the :mod:`selectors` module and " -"handles :exc:`SSLWantWriteError`, :exc:`SSLWantReadError` and :exc:" -"`BlockingIOError` exceptions. It runs the SSL handshake asynchronously as " -"well." +"handles :exc:`SSLWantWriteError`, :exc:`SSLWantReadError` " +"and :exc:`BlockingIOError` exceptions. It runs the SSL handshake " +"asynchronously as well." msgstr "" msgid "Memory BIO support" msgstr "" msgid "" -"Ever since the SSL module was introduced in Python 2.6, the :class:" -"`SSLSocket` class has provided two related but distinct areas of " +"Ever since the SSL module was introduced in Python 2.6, " +"the :class:`SSLSocket` class has provided two related but distinct areas of " "functionality:" msgstr "" @@ -2753,11 +2842,11 @@ msgid "" "Combining SSL protocol handling and network IO usually works well, but there " "are some cases where it doesn't. An example is async IO frameworks that want " "to use a different IO multiplexing model than the \"select/poll on a file " -"descriptor\" (readiness based) model that is assumed by :class:`socket." -"socket` and by the internal OpenSSL socket IO routines. This is mostly " -"relevant for platforms like Windows where this model is not efficient. For " -"this purpose, a reduced scope variant of :class:`SSLSocket` called :class:" -"`SSLObject` is provided." +"descriptor\" (readiness based) model that is assumed " +"by :class:`socket.socket` and by the internal OpenSSL socket IO routines. " +"This is mostly relevant for platforms like Windows where this model is not " +"efficient. For this purpose, a reduced scope variant of :class:`SSLSocket` " +"called :class:`SSLObject` is provided." msgstr "" msgid "" @@ -2865,8 +2954,8 @@ msgstr "" msgid "" "There is no handling of *suppress_ragged_eofs*. All end-of-file conditions " -"that are in violation of the protocol are reported via the :exc:" -"`SSLEOFError` exception." +"that are in violation of the protocol are reported via " +"the :exc:`SSLEOFError` exception." msgstr "" msgid "" @@ -2875,9 +2964,9 @@ msgid "" msgstr "" msgid "" -"The *server_name_callback* callback passed to :meth:`SSLContext." -"set_servername_callback` will get an :class:`SSLObject` instance instead of " -"a :class:`SSLSocket` instance as its first parameter." +"The *server_name_callback* callback passed " +"to :meth:`SSLContext.set_servername_callback` will get an :class:`SSLObject` " +"instance instead of a :class:`SSLSocket` instance as its first parameter." msgstr "" msgid "Some notes related to the use of :class:`SSLObject`:" @@ -2885,14 +2974,15 @@ msgstr "" msgid "" "All IO on an :class:`SSLObject` is :ref:`non-blocking `. " -"This means that for example :meth:`~SSLSocket.read` will raise an :exc:" -"`SSLWantReadError` if it needs more data than the incoming BIO has available." +"This means that for example :meth:`~SSLSocket.read` will raise " +"an :exc:`SSLWantReadError` if it needs more data than the incoming BIO has " +"available." msgstr "" msgid "" -":class:`SSLObject` instances must be created with :meth:`~SSLContext." -"wrap_bio`. In earlier versions, it was possible to create instances " -"directly. This was never documented or officially supported." +":class:`SSLObject` instances must be created " +"with :meth:`~SSLContext.wrap_bio`. In earlier versions, it was possible to " +"create instances directly. This was never documented or officially supported." msgstr "" msgid "" @@ -2949,11 +3039,11 @@ msgstr "" msgid "" "For **client use**, if you don't have any special requirements for your " -"security policy, it is highly recommended that you use the :func:" -"`create_default_context` function to create your SSL context. It will load " -"the system's trusted CA certificates, enable certificate validation and " -"hostname checking, and try to choose reasonably secure protocol and cipher " -"settings." +"security policy, it is highly recommended that you use " +"the :func:`create_default_context` function to create your SSL context. It " +"will load the system's trusted CA certificates, enable certificate " +"validation and hostname checking, and try to choose reasonably secure " +"protocol and cipher settings." msgstr "" msgid "" @@ -2970,15 +3060,15 @@ msgid "" msgstr "" msgid "" -"If a client certificate is needed for the connection, it can be added with :" -"meth:`SSLContext.load_cert_chain`." +"If a client certificate is needed for the connection, it can be added " +"with :meth:`SSLContext.load_cert_chain`." msgstr "" msgid "" -"By contrast, if you create the SSL context by calling the :class:" -"`SSLContext` constructor yourself, it will not have certificate validation " -"nor hostname checking enabled by default. If you do so, please read the " -"paragraphs below to achieve a good security level." +"By contrast, if you create the SSL context by calling " +"the :class:`SSLContext` constructor yourself, it will not have certificate " +"validation nor hostname checking enabled by default. If you do so, please " +"read the paragraphs below to achieve a good security level." msgstr "" msgid "Manual settings" @@ -2988,22 +3078,22 @@ msgid "Verifying certificates" msgstr "" msgid "" -"When calling the :class:`SSLContext` constructor directly, :const:" -"`CERT_NONE` is the default. Since it does not authenticate the other peer, " -"it can be insecure, especially in client mode where most of the time you " -"would like to ensure the authenticity of the server you're talking to. " -"Therefore, when in client mode, it is highly recommended to use :const:" -"`CERT_REQUIRED`. However, it is in itself not sufficient; you also have to " -"check that the server certificate, which can be obtained by calling :meth:" -"`SSLSocket.getpeercert`, matches the desired service. For many protocols " -"and applications, the service can be identified by the hostname. This common " -"check is automatically performed when :attr:`SSLContext.check_hostname` is " -"enabled." +"When calling the :class:`SSLContext` constructor " +"directly, :const:`CERT_NONE` is the default. Since it does not authenticate " +"the other peer, it can be insecure, especially in client mode where most of " +"the time you would like to ensure the authenticity of the server you're " +"talking to. Therefore, when in client mode, it is highly recommended to " +"use :const:`CERT_REQUIRED`. However, it is in itself not sufficient; you " +"also have to check that the server certificate, which can be obtained by " +"calling :meth:`SSLSocket.getpeercert`, matches the desired service. For " +"many protocols and applications, the service can be identified by the " +"hostname. This common check is automatically performed " +"when :attr:`SSLContext.check_hostname` is enabled." msgstr "" msgid "" -"Hostname matchings is now performed by OpenSSL. Python no longer uses :func:" -"`!match_hostname`." +"Hostname matchings is now performed by OpenSSL. Python no longer " +"uses :func:`!match_hostname`." msgstr "" msgid "" @@ -3019,9 +3109,9 @@ msgstr "" msgid "" "SSL versions 2 and 3 are considered insecure and are therefore dangerous to " "use. If you want maximum compatibility between clients and servers, it is " -"recommended to use :const:`PROTOCOL_TLS_CLIENT` or :const:" -"`PROTOCOL_TLS_SERVER` as the protocol version. SSLv2 and SSLv3 are disabled " -"by default." +"recommended to use :const:`PROTOCOL_TLS_CLIENT` " +"or :const:`PROTOCOL_TLS_SERVER` as the protocol version. SSLv2 and SSLv3 are " +"disabled by default." msgstr "" msgid "" @@ -3032,9 +3122,9 @@ msgstr "" msgid "" "The SSL client context created above will only allow TLSv1.2 and TLSv1.3 (if " -"supported by your system) connections to a server. :const:" -"`PROTOCOL_TLS_CLIENT` implies certificate validation and hostname checks by " -"default. You have to load certificates into the context." +"supported by your system) connections to a " +"server. :const:`PROTOCOL_TLS_CLIENT` implies certificate validation and " +"hostname checks by default. You have to load certificates into the context." msgstr "" msgid "Cipher selection" @@ -3042,14 +3132,14 @@ msgstr "" msgid "" "If you have advanced security requirements, fine-tuning of the ciphers " -"enabled when negotiating a SSL session is possible through the :meth:" -"`SSLContext.set_ciphers` method. Starting from Python 3.2.3, the ssl module " -"disables certain weak ciphers by default, but you may want to further " -"restrict the cipher choice. Be sure to read OpenSSL's documentation about " -"the `cipher list format `_. If you want to check which ciphers are enabled by a given " -"cipher list, use :meth:`SSLContext.get_ciphers` or the ``openssl ciphers`` " -"command on your system." +"enabled when negotiating a SSL session is possible through " +"the :meth:`SSLContext.set_ciphers` method. Starting from Python 3.2.3, the " +"ssl module disables certain weak ciphers by default, but you may want to " +"further restrict the cipher choice. Be sure to read OpenSSL's documentation " +"about the `cipher list format `_. If you want to check which ciphers are enabled by a " +"given cipher list, use :meth:`SSLContext.get_ciphers` or the ``openssl " +"ciphers`` command on your system." msgstr "" msgid "Multi-processing" diff --git a/library/stat.po b/library/stat.po index dcf1374..7724055 100644 --- a/library/stat.po +++ b/library/stat.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -184,11 +184,12 @@ msgid "" "The interpretation of \"file size\" changes according to the file type. For " "plain files this is the size of the file in bytes. For FIFOs and sockets " "under most flavors of Unix (including Linux in particular), the \"size\" is " -"the number of bytes waiting to be read at the time of the call to :func:`os." -"stat`, :func:`os.fstat`, or :func:`os.lstat`; this can sometimes be useful, " -"especially for polling one of these special files after a non-blocking " -"open. The meaning of the size field for other character and block devices " -"varies more, depending on the implementation of the underlying system call." +"the number of bytes waiting to be read at the time of the call " +"to :func:`os.stat`, :func:`os.fstat`, or :func:`os.lstat`; this can " +"sometimes be useful, especially for polling one of these special files after " +"a non-blocking open. The meaning of the size field for other character and " +"block devices varies more, depending on the implementation of the underlying " +"system call." msgstr "" msgid "The variables below define the flags used in the :data:`ST_MODE` field." @@ -235,8 +236,8 @@ msgid "" msgstr "" msgid "" -"The following flags can also be used in the *mode* argument of :func:`os." -"chmod`:" +"The following flags can also be used in the *mode* argument " +"of :func:`os.chmod`:" msgstr "" msgid "Set UID bit." @@ -295,9 +296,9 @@ msgid "Others have execute permission." msgstr "" msgid "" -"System V file locking enforcement. This flag is shared with :data:" -"`S_ISGID`: file/record locking is enforced on files that do not have the " -"group execution bit (:data:`S_IXGRP`) set." +"System V file locking enforcement. This flag is shared " +"with :data:`S_ISGID`: file/record locking is enforced on files that do not " +"have the group execution bit (:data:`S_IXGRP`) set." msgstr "" msgid "Unix V7 synonym for :data:`S_IRUSR`." @@ -310,8 +311,8 @@ msgid "Unix V7 synonym for :data:`S_IXUSR`." msgstr "" msgid "" -"The following flags can be used in the *flags* argument of :func:`os." -"chflags`:" +"The following flags can be used in the *flags* argument " +"of :func:`os.chflags`:" msgstr "" msgid "All user settable flags." @@ -378,10 +379,10 @@ msgstr "" msgid "" "On Windows, the following file attribute constants are available for use " -"when testing bits in the ``st_file_attributes`` member returned by :func:`os." -"stat`. See the `Windows API documentation `_ for more detail on the meaning of " -"these constants." +"when testing bits in the ``st_file_attributes`` member returned " +"by :func:`os.stat`. See the `Windows API documentation `_ for more " +"detail on the meaning of these constants." msgstr "" msgid "" @@ -392,8 +393,8 @@ msgstr "" msgid "" "On Linux, the following file attribute constants are available for use when " -"testing bits in the :attr:`~os.statx_result.stx_attributes` and :attr:`~os." -"statx_result.stx_attributes_mask` members returned by :func:`os.statx`. See " -"the :manpage:`statx(2)` man page for more detail on the meaning of these " -"constants." +"testing bits in the :attr:`~os.statx_result.stx_attributes` " +"and :attr:`~os.statx_result.stx_attributes_mask` members returned " +"by :func:`os.statx`. See the :manpage:`statx(2)` man page for more detail " +"on the meaning of these constants." msgstr "" diff --git a/library/statistics.po b/library/statistics.po index ae31870..f422ee8 100644 --- a/library/statistics.po +++ b/library/statistics.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,13 +42,13 @@ msgid "" msgstr "" msgid "" -"Unless explicitly noted, these functions support :class:`int`, :class:" -"`float`, :class:`~decimal.Decimal` and :class:`~fractions.Fraction`. " -"Behaviour with other types (whether in the numeric tower or not) is " -"currently unsupported. Collections with a mix of types are also undefined " -"and implementation-dependent. If your input data consists of mixed types, " -"you may be able to use :func:`map` to ensure a consistent result, for " -"example: ``map(float, input_data)``." +"Unless explicitly noted, these functions " +"support :class:`int`, :class:`float`, :class:`~decimal.Decimal` " +"and :class:`~fractions.Fraction`. Behaviour with other types (whether in the " +"numeric tower or not) is currently unsupported. Collections with a mix of " +"types are also undefined and implementation-dependent. If your input data " +"consists of mixed types, you may be able to use :func:`map` to ensure a " +"consistent result, for example: ``map(float, input_data)``." msgstr "" msgid "" @@ -286,8 +286,8 @@ msgid "Convert *data* to floats and compute the arithmetic mean." msgstr "" msgid "" -"This runs faster than the :func:`mean` function and it always returns a :" -"class:`float`. The *data* may be a sequence or iterable. If the input " +"This runs faster than the :func:`mean` function and it always returns " +"a :class:`float`. The *data* may be a sequence or iterable. If the input " "dataset is empty, raises a :exc:`StatisticsError`." msgstr "" @@ -310,8 +310,8 @@ msgid "" msgstr "" msgid "" -"If *weights* is supplied, it must be the same length as the *data* or a :exc:" -"`ValueError` will be raised." +"If *weights* is supplied, it must be the same length as the *data* or " +"a :exc:`ValueError` will be raised." msgstr "" msgid "Added support for *weights*." @@ -401,9 +401,9 @@ msgid "" msgstr "" msgid "" -"The basic idea is to smooth the data using `a kernel function `_. to help draw inferences about a " -"population from a sample." +"The basic idea is to smooth the data using `a kernel function `_. to help draw inferences about " +"a population from a sample." msgstr "" msgid "" @@ -513,8 +513,9 @@ msgid "" msgstr "" msgid "" -"Return the low median of numeric data. If *data* is empty, :exc:" -"`StatisticsError` is raised. *data* can be a sequence or iterable." +"Return the low median of numeric data. If *data* is " +"empty, :exc:`StatisticsError` is raised. *data* can be a sequence or " +"iterable." msgstr "" msgid "" @@ -840,9 +841,9 @@ msgid "" msgstr "" msgid "" -"If you somehow know the actual population mean μ you should pass it to the :" -"func:`pvariance` function as the *mu* parameter to get the variance of a " -"sample." +"If you somehow know the actual population mean μ you should pass it to " +"the :func:`pvariance` function as the *mu* parameter to get the variance of " +"a sample." msgstr "" msgid "" @@ -918,8 +919,8 @@ msgid "" msgstr "" msgid "" -"Both inputs must be of the same length (no less than two), otherwise :exc:" -"`StatisticsError` is raised." +"Both inputs must be of the same length (no less than two), " +"otherwise :exc:`StatisticsError` is raised." msgstr "" msgid "" @@ -993,8 +994,8 @@ msgid "Added support for Spearman's rank correlation coefficient." msgstr "" msgid "" -"Return the slope and intercept of `simple linear regression `_ parameters estimated using " +"Return the slope and intercept of `simple linear regression `_ parameters estimated using " "ordinary least squares. Simple linear regression describes the relationship " "between an independent variable *x* and a dependent variable *y* in terms of " "this linear function:" @@ -1012,8 +1013,8 @@ msgstr "" msgid "" "Both inputs must be sequences of the same length (no less than two), and the " -"independent variable *x* cannot be constant; otherwise a :exc:" -"`StatisticsError` is raised." +"independent variable *x* cannot be constant; otherwise " +"a :exc:`StatisticsError` is raised." msgstr "" msgid "" @@ -1079,14 +1080,14 @@ msgstr "" msgid "" ":class:`NormalDist` is a tool for creating and manipulating normal " -"distributions of a `random variable `_. It is a class that treats the mean and " -"standard deviation of data measurements as a single entity." +"distributions of a `random variable `_. It is a class that treats the mean and standard " +"deviation of data measurements as a single entity." msgstr "" msgid "" -"Normal distributions arise from the `Central Limit Theorem `_ and have a wide range of " +"Normal distributions arise from the `Central Limit Theorem `_ and have a wide range of " "applications in statistics." msgstr "" @@ -1178,8 +1179,8 @@ msgstr "" msgid "" "Compute the inverse cumulative distribution function, also known as the " "`quantile function `_ or " -"the `percent-point `_ " +"the `percent-point `_ " "function. Mathematically, it is written ``x : P(X <= x) = p``." msgstr "" @@ -1234,8 +1235,8 @@ msgid "" "Since normal distributions arise from additive effects of independent " "variables, it is possible to `add and subtract two independent normally " "distributed random variables `_ represented as instances of :" -"class:`NormalDist`. For example:" +"Sum_of_normally_distributed_random_variables>`_ represented as instances " +"of :class:`NormalDist`. For example:" msgstr "" msgid "" @@ -1352,8 +1353,8 @@ msgid "Normal distributions commonly arise in machine learning problems." msgstr "" msgid "" -"Wikipedia has a `nice example of a Naive Bayesian Classifier `_. The " +"Wikipedia has a `nice example of a Naive Bayesian Classifier `_. The " "challenge is to predict a person's gender from measurements of normally " "distributed features including height, weight, and foot size." msgstr "" diff --git a/library/string.po b/library/string.po index 27f94e0..20b388b 100644 --- a/library/string.po +++ b/library/string.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,9 +41,9 @@ msgid "The constants defined in this module are:" msgstr "" msgid "" -"The concatenation of the :const:`ascii_lowercase` and :const:" -"`ascii_uppercase` constants described below. This value is not locale-" -"dependent." +"The concatenation of the :const:`ascii_lowercase` " +"and :const:`ascii_uppercase` constants described below. This value is not " +"locale-dependent." msgstr "" msgid "" @@ -72,14 +72,15 @@ msgstr "" msgid "" "String of ASCII characters which are considered printable by Python. This is " -"a combination of :const:`digits`, :const:`ascii_letters`, :const:" -"`punctuation`, and :const:`whitespace`." +"a combination " +"of :const:`digits`, :const:`ascii_letters`, :const:`punctuation`, " +"and :const:`whitespace`." msgstr "" msgid "" -"By design, :meth:`string.printable.isprintable() ` returns :" -"const:`False`. In particular, ``string.printable`` is not printable in the " -"POSIX sense (see :manpage:`LC_CTYPE `)." +"By design, :meth:`string.printable.isprintable() ` " +"returns :const:`False`. In particular, ``string.printable`` is not printable " +"in the POSIX sense (see :manpage:`LC_CTYPE `)." msgstr "" msgid "" @@ -105,8 +106,8 @@ msgstr "" msgid "" "The primary API method. It takes a format string and an arbitrary set of " -"positional and keyword arguments. It is just a wrapper that calls :meth:" -"`vformat`." +"positional and keyword arguments. It is just a wrapper that " +"calls :meth:`vformat`." msgstr "" msgid "" @@ -118,9 +119,10 @@ msgid "" "This function does the actual work of formatting. It is exposed as a " "separate function for cases where you want to pass in a predefined " "dictionary of arguments, rather than unpacking and repacking the dictionary " -"as individual arguments using the ``*args`` and ``**kwargs`` syntax. :meth:" -"`vformat` does the work of breaking up the format string into character data " -"and replacement fields. It calls the various methods described below." +"as individual arguments using the ``*args`` and ``**kwargs`` " +"syntax. :meth:`vformat` does the work of breaking up the format string into " +"character data and replacement fields. It calls the various methods " +"described below." msgstr "" msgid "" @@ -149,9 +151,9 @@ msgid "" "Given *field_name*, convert it to an object to be formatted. Auto-numbering " "of *field_name* returned from :meth:`parse` is done by :meth:`vformat` " "before calling this method. Returns a tuple (obj, used_key). The default " -"version takes strings of the form defined in :pep:`3101`, such as " -"\"0[name]\" or \"label.title\". *args* and *kwargs* are as passed in to :" -"meth:`vformat`. The return value *used_key* has the same meaning as the " +"version takes strings of the form defined in :pep:`3101`, such as \"0[name]" +"\" or \"label.title\". *args* and *kwargs* are as passed in " +"to :meth:`vformat`. The return value *used_key* has the same meaning as the " "*key* parameter to :meth:`get_value`." msgstr "" @@ -163,9 +165,9 @@ msgid "" msgstr "" msgid "" -"The *args* parameter is set to the list of positional arguments to :meth:" -"`vformat`, and the *kwargs* parameter is set to the dictionary of keyword " -"arguments." +"The *args* parameter is set to the list of positional arguments " +"to :meth:`vformat`, and the *kwargs* parameter is set to the dictionary of " +"keyword arguments." msgstr "" msgid "" @@ -177,13 +179,13 @@ msgstr "" msgid "" "So for example, the field expression '0.name' would cause :meth:`get_value` " "to be called with a *key* argument of 0. The ``name`` attribute will be " -"looked up after :meth:`get_value` returns by calling the built-in :func:" -"`getattr` function." +"looked up after :meth:`get_value` returns by calling the built-" +"in :func:`getattr` function." msgstr "" msgid "" -"If the index or keyword refers to an item that does not exist, then an :exc:" -"`IndexError` or :exc:`KeyError` should be raised." +"If the index or keyword refers to an item that does not exist, then " +"an :exc:`IndexError` or :exc:`KeyError` should be raised." msgstr "" msgid "" @@ -191,8 +193,9 @@ msgid "" "function is the set of all argument keys that were actually referred to in " "the format string (integers for positional arguments, and strings for named " "arguments), and a reference to the *args* and *kwargs* that was passed to " -"vformat. The set of unused args can be calculated from these parameters. :" -"meth:`check_unused_args` is assumed to raise an exception if the check fails." +"vformat. The set of unused args can be calculated from these " +"parameters. :meth:`check_unused_args` is assumed to raise an exception if " +"the check fails." msgstr "" msgid "" @@ -213,9 +216,10 @@ msgid "" "The :meth:`str.format` method and the :class:`Formatter` class share the " "same syntax for format strings (although in the case of :class:`Formatter`, " "subclasses can define their own format string syntax). The syntax is " -"related to that of :ref:`formatted string literals ` and :ref:" -"`template string literals `, but it is less sophisticated and, in " -"particular, does not support arbitrary expressions in interpolations." +"related to that of :ref:`formatted string literals ` " +"and :ref:`template string literals `, but it is less " +"sophisticated and, in particular, does not support arbitrary expressions in " +"interpolations." msgstr "" msgid "" @@ -252,9 +256,9 @@ msgid "" "not quote-delimited, it is not possible to specify arbitrary dictionary keys " "(e.g., the strings ``'10'`` or ``':-]'``) within a format string. The " "*arg_name* can be followed by any number of index or attribute expressions. " -"An expression of the form ``'.name'`` selects the named attribute using :" -"func:`getattr`, while an expression of the form ``'[index]'`` does an index " -"lookup using :meth:`~object.__getitem__`." +"An expression of the form ``'.name'`` selects the named attribute " +"using :func:`getattr`, while an expression of the form ``'[index]'`` does an " +"index lookup using :meth:`~object.__getitem__`." msgstr "" msgid "" @@ -286,14 +290,14 @@ msgid "" "the job of formatting a value is done by the :meth:`~object.__format__` " "method of the value itself. However, in some cases it is desirable to force " "a type to be formatted as a string, overriding its own definition of " -"formatting. By converting the value to a string before calling :meth:" -"`~object.__format__`, the normal formatting logic is bypassed." +"formatting. By converting the value to a string before " +"calling :meth:`~object.__format__`, the normal formatting logic is bypassed." msgstr "" msgid "" -"Three conversion flags are currently supported: ``'!s'`` which calls :func:" -"`str` on the value, ``'!r'`` which calls :func:`repr` and ``'!a'`` which " -"calls :func:`ascii`." +"Three conversion flags are currently supported: ``'!s'`` which " +"calls :func:`str` on the value, ``'!r'`` which calls :func:`repr` and ``'!" +"a'`` which calls :func:`ascii`." msgstr "" msgid "Some examples::" @@ -334,9 +338,9 @@ msgstr "" msgid "" "\"Format specifications\" are used within replacement fields contained " -"within a format string to define how individual values are presented (see :" -"ref:`formatstrings`, :ref:`f-strings`, and :ref:`t-strings`). They can also " -"be passed directly to the built-in :func:`format` function. Each " +"within a format string to define how individual values are presented " +"(see :ref:`formatstrings`, :ref:`f-strings`, and :ref:`t-strings`). They can " +"also be passed directly to the built-in :func:`format` function. Each " "formattable type may define how the format specification is to be " "interpreted." msgstr "" @@ -397,9 +401,9 @@ msgstr "" msgid "" "Forces the padding to be placed after the sign (if any) but before the " "digits. This is used for printing fields in the form '+000000120'. This " -"alignment option is only valid for numeric types, excluding :class:" -"`complex`. It becomes the default for numbers when '0' immediately precedes " -"the field width." +"alignment option is only valid for numeric types, " +"excluding :class:`complex`. It becomes the default for numbers when '0' " +"immediately precedes the field width." msgstr "" msgid "``'^'``" @@ -623,8 +627,8 @@ msgid "" msgstr "" msgid "" -"The available presentation types for :class:`float` and :class:`~decimal." -"Decimal` values are:" +"The available presentation types for :class:`float` " +"and :class:`~decimal.Decimal` values are:" msgstr "" msgid "``'e'``" @@ -636,9 +640,9 @@ msgid "" "exponent. The coefficient has one digit before and ``p`` digits after the " "decimal point, for a total of ``p + 1`` significant digits. With no " "precision given, uses a precision of ``6`` digits after the decimal point " -"for :class:`float`, and shows all coefficient digits for :class:`~decimal." -"Decimal`. If ``p=0``, the decimal point is omitted unless the ``#`` option " -"is used." +"for :class:`float`, and shows all coefficient digits " +"for :class:`~decimal.Decimal`. If ``p=0``, the decimal point is omitted " +"unless the ``#`` option is used." msgstr "" msgid "" @@ -697,12 +701,12 @@ msgid "" msgstr "" msgid "" -"With no precision given, uses a precision of ``6`` significant digits for :" -"class:`float`. For :class:`~decimal.Decimal`, the coefficient of the result " -"is formed from the coefficient digits of the value; scientific notation is " -"used for values smaller than ``1e-6`` in absolute value and values where the " -"place value of the least significant digit is larger than 1, and fixed-point " -"notation is used otherwise." +"With no precision given, uses a precision of ``6`` significant digits " +"for :class:`float`. For :class:`~decimal.Decimal`, the coefficient of the " +"result is formed from the coefficient digits of the value; scientific " +"notation is used for values smaller than ``1e-6`` in absolute value and " +"values where the place value of the least significant digit is larger than " +"1, and fixed-point notation is used otherwise." msgstr "" msgid "" @@ -879,8 +883,8 @@ msgid "" "'+3.140000; -3.140000'\n" ">>> '{: f}; {: f}'.format(3.14, -3.14) # show a space for positive numbers\n" "' 3.140000; -3.140000'\n" -">>> '{:-f}; {:-f}'.format(3.14, -3.14) # show only the minus -- same as '{:" -"f}; {:f}'\n" +">>> '{:-f}; {:-f}'.format(3.14, -3.14) # show only the minus -- same as " +"'{:f}; {:f}'\n" "'3.140000; -3.140000'" msgstr "" @@ -975,24 +979,26 @@ msgstr "" msgid "" "The feature described here was introduced in Python 2.4; a simple templating " -"method based upon regular expressions. It predates :meth:`str.format`, :ref:" -"`formatted string literals `, and :ref:`template string literals " -"`." +"method based upon regular expressions. It " +"predates :meth:`str.format`, :ref:`formatted string literals `, " +"and :ref:`template string literals `." msgstr "" msgid "" "It is unrelated to template string literals (t-strings), which were " -"introduced in Python 3.14. These evaluate to :class:`string.templatelib." -"Template` objects, found in the :mod:`string.templatelib` module." +"introduced in Python 3.14. These evaluate " +"to :class:`string.templatelib.Template` objects, found in " +"the :mod:`string.templatelib` module." msgstr "" msgid "" -"Template strings provide simpler string substitutions as described in :pep:" -"`292`. A primary use case for template strings is for internationalization " -"(i18n) since in that context, the simpler syntax and functionality makes it " -"easier to translate than other built-in string formatting facilities in " -"Python. As an example of a library built on template strings for i18n, see " -"the `flufl.i18n `_ package." +"Template strings provide simpler string substitutions as described " +"in :pep:`292`. A primary use case for template strings is for " +"internationalization (i18n) since in that context, the simpler syntax and " +"functionality makes it easier to translate than other built-in string " +"formatting facilities in Python. As an example of a library built on " +"template strings for i18n, see the `flufl.i18n `_ package." msgstr "" msgid "" @@ -1019,8 +1025,8 @@ msgid "" msgstr "" msgid "" -"Any other appearance of ``$`` in the string will result in a :exc:" -"`ValueError` being raised." +"Any other appearance of ``$`` in the string will result in " +"a :exc:`ValueError` being raised." msgstr "" msgid "" @@ -1057,8 +1063,8 @@ msgid "" msgstr "" msgid "" -"Returns ``False`` if the template has invalid placeholders that will cause :" -"meth:`substitute` to raise :exc:`ValueError`." +"Returns ``False`` if the template has invalid placeholders that will " +"cause :meth:`substitute` to raise :exc:`ValueError`." msgstr "" msgid "" @@ -1105,10 +1111,10 @@ msgstr "" msgid "" "*delimiter* -- This is the literal string describing a placeholder " "introducing delimiter. The default value is ``$``. Note that this should " -"*not* be a regular expression, as the implementation will call :meth:`re." -"escape` on this string as needed. Note further that you cannot change the " -"delimiter after class creation (i.e. a different delimiter must be set in " -"the subclass's class namespace)." +"*not* be a regular expression, as the implementation will " +"call :meth:`re.escape` on this string as needed. Note further that you " +"cannot change the delimiter after class creation (i.e. a different delimiter " +"must be set in the subclass's class namespace)." msgstr "" msgid "" @@ -1182,11 +1188,11 @@ msgstr "" msgid "" "Split the argument into words using :meth:`str.split`, capitalize each word " -"using :meth:`str.capitalize`, and join the capitalized words using :meth:" -"`str.join`. If the optional second argument *sep* is absent or ``None``, " -"runs of whitespace characters are replaced by a single space and leading and " -"trailing whitespace are removed, otherwise *sep* is used to split and join " -"the words." +"using :meth:`str.capitalize`, and join the capitalized words " +"using :meth:`str.join`. If the optional second argument *sep* is absent or " +"``None``, runs of whitespace characters are replaced by a single space and " +"leading and trailing whitespace are removed, otherwise *sep* is used to " +"split and join the words." msgstr "" msgid "{} (curly brackets)" diff --git a/library/string.templatelib.po b/library/string.templatelib.po deleted file mode 100644 index 6f0952e..0000000 --- a/library/string.templatelib.po +++ /dev/null @@ -1,278 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid ":mod:`!string.templatelib` --- Support for template string literals" -msgstr "" - -msgid "**Source code:** :source:`Lib/string/templatelib.py`" -msgstr "" - -msgid ":ref:`Format strings `" -msgstr "" - -msgid ":ref:`Template string literal (t-string) syntax `" -msgstr "" - -msgid ":pep:`750`" -msgstr "" - -msgid "Template strings" -msgstr "" - -msgid "" -"Template strings are a mechanism for custom string processing. They have the " -"full flexibility of Python's :ref:`f-strings`, but return a :class:" -"`Template` instance that gives access to the static and interpolated (in " -"curly brackets) parts of a string *before* they are combined." -msgstr "" - -msgid "" -"To write a t-string, use a ``'t'`` prefix instead of an ``'f'``, like so:" -msgstr "" - -msgid "" -">>> pi = 3.14\n" -">>> t't-strings are new in Python {pi!s}!'\n" -"Template(\n" -" strings=('t-strings are new in Python ', '!'),\n" -" interpolations=(Interpolation(3.14, 'pi', 's', ''),)\n" -")" -msgstr "" - -msgid "Types" -msgstr "" - -msgid "" -"The :class:`!Template` class describes the contents of a template string. It " -"is immutable, meaning that attributes of a template cannot be reassigned." -msgstr "" - -msgid "" -"The most common way to create a :class:`!Template` instance is to use the :" -"ref:`template string literal syntax `. This syntax is identical " -"to that of :ref:`f-strings `, except that it uses a ``t`` prefix " -"in place of an ``f``:" -msgstr "" - -msgid "" -"Templates are stored as sequences of literal :attr:`~Template.strings` and " -"dynamic :attr:`~Template.interpolations`. A :attr:`~Template.values` " -"attribute holds the values of the interpolations:" -msgstr "" - -msgid "" -"The :attr:`!strings` tuple has one more element than :attr:`!interpolations` " -"and :attr:`!values`; the interpolations “belong” between the strings. This " -"may be easier to understand when tuples are aligned" -msgstr "" - -msgid "" -"template.strings: ('Ah! We do have ', '.')\n" -"template.values: ( 'Camembert', )" -msgstr "" - -msgid "Attributes" -msgstr "" - -msgid "A :class:`tuple` of the static strings in the template." -msgstr "" - -msgid "Empty strings *are* included in the tuple:" -msgstr "" - -msgid "" -"The ``strings`` tuple is never empty, and always contains one more string " -"than the ``interpolations`` and ``values`` tuples:" -msgstr "" - -msgid "A :class:`tuple` of the interpolations in the template." -msgstr "" - -msgid "" -"The ``interpolations`` tuple may be empty and always contains one fewer " -"values than the ``strings`` tuple:" -msgstr "" - -msgid "A tuple of all interpolated values in the template." -msgstr "" - -msgid "" -"The ``values`` tuple always has the same length as the ``interpolations`` " -"tuple. It is always equivalent to ``tuple(i.value for i in template." -"interpolations)``." -msgstr "" - -msgid "Methods" -msgstr "" - -msgid "" -"While literal syntax is the most common way to create a :class:`!Template`, " -"it is also possible to create them directly using the constructor:" -msgstr "" - -msgid "" -"If multiple strings are passed consecutively, they will be concatenated into " -"a single value in the :attr:`~Template.strings` attribute. For example, the " -"following code creates a :class:`Template` with a single final string:" -msgstr "" - -msgid "" -"If multiple interpolations are passed consecutively, they will be treated as " -"separate interpolations and an empty string will be inserted between them. " -"For example, the following code creates a template with empty placeholders " -"in the :attr:`~Template.strings` attribute:" -msgstr "" - -msgid "" -"Iterate over the template, yielding each non-empty string and :class:" -"`Interpolation` in the correct order:" -msgstr "" - -msgid "Empty strings are **not** included in the iteration:" -msgstr "" - -msgid "" -"Concatenate this template with another, returning a new :class:`!Template` " -"instance:" -msgstr "" - -msgid "" -"Concatenating a :class:`!Template` and a ``str`` is **not** supported. This " -"is because it is unclear whether the string should be treated as a static " -"string or an interpolation. If you want to concatenate a :class:`!Template` " -"with a string, you should either wrap the string directly in a :class:`!" -"Template` (to treat it as a static string) or use an :class:`!Interpolation` " -"(to treat it as dynamic):" -msgstr "" - -msgid "" -"The :class:`!Interpolation` type represents an expression inside a template " -"string. It is immutable, meaning that attributes of an interpolation cannot " -"be reassigned." -msgstr "" - -msgid "" -"Interpolations support pattern matching, allowing you to match against their " -"attributes with the :ref:`match statement `:" -msgstr "" - -msgid "" -"Interpolations are :ref:`generic ` over the types of their values." -msgstr "" - -msgid "The evaluated value of the interpolation." -msgstr "" - -msgid "" -"For interpolations created by t-string literals, :attr:`!expression` is the " -"expression text found inside the curly brackets (``{`` & ``}``), including " -"any whitespace, excluding the curly brackets themselves, and ending before " -"the first ``!``, ``:``, or ``=`` if any is present. For manually created " -"interpolations, :attr:`!expression` is the arbitrary string provided when " -"constructing the interpolation instance." -msgstr "" - -msgid "" -"We recommend using valid Python expressions or the empty string for the " -"``expression`` field of manually created :class:`!Interpolation` instances, " -"although this is not enforced at runtime." -msgstr "" - -msgid "The conversion to apply to the value, or ``None``." -msgstr "" - -msgid "" -"The :attr:`!conversion` is the optional conversion to apply to the value:" -msgstr "" - -msgid "" -"Unlike f-strings, where conversions are applied automatically, the expected " -"behavior with t-strings is that code that *processes* the :class:`!Template` " -"will decide how to interpret and whether to apply the :attr:`!conversion`. " -"For convenience, the :func:`convert` function can be used to mimic f-string " -"conversion semantics." -msgstr "" - -msgid "The format specification to apply to the value." -msgstr "" - -msgid "" -"The :attr:`!format_spec` is an optional, arbitrary string used as the format " -"specification to present the value:" -msgstr "" - -msgid "" -"Unlike f-strings, where format specifications are applied automatically via " -"the :func:`format` protocol, the expected behavior with t-strings is that " -"code that *processes* the interpolation will decide how to interpret and " -"whether to apply the format specification. As a result, :attr:`!format_spec` " -"values in interpolations can be arbitrary strings, including those that do " -"not conform to the :func:`format` protocol." -msgstr "" - -msgid "Create a new :class:`!Interpolation` object from component parts." -msgstr "" - -msgid "Parameters" -msgstr "" - -msgid "The evaluated, in-scope result of the interpolation." -msgstr "" - -msgid "The text of a valid Python expression, or an empty string." -msgstr "" - -msgid "" -"The :ref:`conversion ` to be used, one of ``None``, ``'a'``, " -"``'r'``, or ``'s'``." -msgstr "" - -msgid "" -"An optional, arbitrary string used as the :ref:`format specification " -"` to present the value." -msgstr "" - -msgid "Helper functions" -msgstr "" - -msgid "" -"Applies formatted string literal :ref:`conversion ` semantics to the given object *obj*. This is frequently useful " -"for custom template string processing logic." -msgstr "" - -msgid "Three conversion flags are currently supported:" -msgstr "" - -msgid "``'s'`` which calls :func:`str` on the value (like ``!s``)," -msgstr "" - -msgid "``'r'`` which calls :func:`repr` (like ``!r``), and" -msgstr "" - -msgid "``'a'`` which calls :func:`ascii` (like ``!a``)." -msgstr "" - -msgid "If the conversion flag is ``None``, *obj* is returned unchanged." -msgstr "" diff --git a/library/stringprep.po b/library/stringprep.po index 37ff647..fd1c9aa 100644 --- a/library/stringprep.po +++ b/library/stringprep.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -53,11 +53,11 @@ msgstr "" msgid "" "As a result, these tables are exposed as functions, not as data structures. " -"There are two kinds of tables in the RFC: sets and mappings. For a set, :mod:" -"`!stringprep` provides the \"characteristic function\", i.e. a function that " -"returns ``True`` if the parameter is part of the set. For mappings, it " -"provides the mapping function: given the key, it returns the associated " -"value. Below is a list of all functions available in the module." +"There are two kinds of tables in the RFC: sets and mappings. For a " +"set, :mod:`!stringprep` provides the \"characteristic function\", i.e. a " +"function that returns ``True`` if the parameter is part of the set. For " +"mappings, it provides the mapping function: given the key, it returns the " +"associated value. Below is a list of all functions available in the module." msgstr "" msgid "" diff --git a/library/struct.po b/library/struct.po index e788d34..b70fde4 100644 --- a/library/struct.po +++ b/library/struct.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -51,12 +51,12 @@ msgstr "" msgid "" "Several :mod:`!struct` functions (and methods of :class:`Struct`) take a " -"*buffer* argument. This refers to objects that implement the :ref:" -"`bufferobjects` and provide either a readable or read-writable buffer. The " -"most common types used for that purpose are :class:`bytes` and :class:" -"`bytearray`, but many other types that can be viewed as an array of bytes " -"implement the buffer protocol, so that they can be read/filled without " -"additional copying from a :class:`bytes` object." +"*buffer* argument. This refers to objects that implement " +"the :ref:`bufferobjects` and provide either a readable or read-writable " +"buffer. The most common types used for that purpose are :class:`bytes` " +"and :class:`bytearray`, but many other types that can be viewed as an array " +"of bytes implement the buffer protocol, so that they can be read/filled " +"without additional copying from a :class:`bytes` object." msgstr "" msgid "Functions and Exceptions" @@ -210,8 +210,8 @@ msgstr "" msgid "" "Native byte order is big-endian or little-endian, depending on the host " "system. For example, Intel x86, AMD64 (x86-64), and Apple M1 are little-" -"endian; IBM z and many legacy architectures are big-endian. Use :data:`sys." -"byteorder` to check the endianness of your system." +"endian; IBM z and many legacy architectures are big-endian. " +"Use :data:`sys.byteorder` to check the endianness of your system." msgstr "" msgid "" @@ -220,8 +220,8 @@ msgid "" msgstr "" msgid "" -"Standard size depends only on the format character; see the table in the :" -"ref:`format-characters` section." +"Standard size depends only on the format character; see the table in " +"the :ref:`format-characters` section." msgstr "" msgid "" @@ -585,8 +585,8 @@ msgid "" "appropriate to make it fit. For unpacking, the resulting :class:`!bytes` " "object always has exactly the specified number of bytes. As a special case, " "``'0s'`` means a single, empty byte string (while ``'0c'`` means 0 " -"characters). When packing, arguments of types :class:`bytes` and :class:" -"`bytearray` are accepted." +"characters). When packing, arguments of types :class:`bytes` " +"and :class:`bytearray` are accepted." msgstr "" msgid "" @@ -613,8 +613,8 @@ msgstr "" msgid "" "When packing a value ``x`` using one of the integer formats (``'b'``, " "``'B'``, ``'h'``, ``'H'``, ``'i'``, ``'I'``, ``'l'``, ``'L'``, ``'q'``, " -"``'Q'``), if ``x`` is outside the valid range for that format then :exc:" -"`struct.error` is raised." +"``'Q'``), if ``x`` is outside the valid range for that format " +"then :exc:`struct.error` is raised." msgstr "" msgid "" @@ -879,8 +879,8 @@ msgstr "" msgid "" "Identical to the :func:`unpack_from` function, using the compiled format. " -"The buffer's size in bytes, starting at position *offset*, must be at least :" -"attr:`size`." +"The buffer's size in bytes, starting at position *offset*, must be at " +"least :attr:`size`." msgstr "" msgid "" diff --git a/library/subprocess.po b/library/subprocess.po index 936e3a6..29b6aba 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -83,33 +83,35 @@ msgid "" "the internal :class:`Popen` object is automatically created with *stdout* " "and *stderr* both set to :data:`~subprocess.PIPE`. The *stdout* and *stderr* " "arguments may not be supplied at the same time as *capture_output*. If you " -"wish to capture and combine both streams into one, set *stdout* to :data:" -"`~subprocess.PIPE` and *stderr* to :data:`~subprocess.STDOUT`, instead of " -"using *capture_output*." +"wish to capture and combine both streams into one, set *stdout* " +"to :data:`~subprocess.PIPE` and *stderr* to :data:`~subprocess.STDOUT`, " +"instead of using *capture_output*." msgstr "" msgid "" -"A *timeout* may be specified in seconds, it is internally passed on to :meth:" -"`Popen.communicate`. If the timeout expires, the child process will be " -"killed and waited for. The :exc:`TimeoutExpired` exception will be re-raised " -"after the child process has terminated. The initial process creation itself " -"cannot be interrupted on many platform APIs so you are not guaranteed to see " -"a timeout exception until at least after however long process creation takes." +"A *timeout* may be specified in seconds, it is internally passed on " +"to :meth:`Popen.communicate`. If the timeout expires, the child process will " +"be killed and waited for. The :exc:`TimeoutExpired` exception will be re-" +"raised after the child process has terminated. The initial process creation " +"itself cannot be interrupted on many platform APIs so you are not guaranteed " +"to see a timeout exception until at least after however long process " +"creation takes." msgstr "" msgid "" "The *input* argument is passed to :meth:`Popen.communicate` and thus to the " "subprocess's stdin. If used it must be a byte sequence, or a string if " "*encoding* or *errors* is specified or *text* is true. When used, the " -"internal :class:`Popen` object is automatically created with *stdin* set to :" -"data:`~subprocess.PIPE`, and the *stdin* argument may not be used as well." +"internal :class:`Popen` object is automatically created with *stdin* set " +"to :data:`~subprocess.PIPE`, and the *stdin* argument may not be used as " +"well." msgstr "" msgid "" -"If *check* is true, and the process exits with a non-zero exit code, a :exc:" -"`CalledProcessError` exception will be raised. Attributes of that exception " -"hold the arguments, the exit code, and stdout and stderr if they were " -"captured." +"If *check* is true, and the process exits with a non-zero exit code, " +"a :exc:`CalledProcessError` exception will be raised. Attributes of that " +"exception hold the arguments, the exit code, and stdout and stderr if they " +"were captured." msgstr "" msgid "" @@ -125,8 +127,8 @@ msgid "" "variables for the new process; these are used instead of the default " "behavior of inheriting the current process' environment. It is passed " "directly to :class:`Popen`. This mapping can be str to str on any platform " -"or bytes to bytes on POSIX platforms much like :data:`os.environ` or :data:" -"`os.environb`." +"or bytes to bytes on POSIX platforms much like :data:`os.environ` " +"or :data:`os.environb`." msgstr "" msgid "Examples::" @@ -158,8 +160,8 @@ msgstr "" msgid "" "Changed Windows shell search order for ``shell=True``. The current directory " "and ``%PATH%`` are replaced with ``%COMSPEC%`` and ``%SystemRoot%" -"\\System32\\cmd.exe``. As a result, dropping a malicious program named ``cmd." -"exe`` into a current directory no longer works." +"\\System32\\cmd.exe``. As a result, dropping a malicious program named " +"``cmd.exe`` into a current directory no longer works." msgstr "" msgid "" @@ -181,9 +183,9 @@ msgid "" msgstr "" msgid "" -"Captured stdout from the child process. A bytes sequence, or a string if :" -"func:`run` was called with an encoding, errors, or text=True. ``None`` if " -"stdout was not captured." +"Captured stdout from the child process. A bytes sequence, or a string " +"if :func:`run` was called with an encoding, errors, or text=True. ``None`` " +"if stdout was not captured." msgstr "" msgid "" @@ -192,9 +194,9 @@ msgid "" msgstr "" msgid "" -"Captured stderr from the child process. A bytes sequence, or a string if :" -"func:`run` was called with an encoding, errors, or text=True. ``None`` if " -"stderr was not captured." +"Captured stderr from the child process. A bytes sequence, or a string " +"if :func:`run` was called with an encoding, errors, or text=True. ``None`` " +"if stderr was not captured." msgstr "" msgid "If :attr:`returncode` is non-zero, raise a :exc:`CalledProcessError`." @@ -233,10 +235,11 @@ msgid "Timeout in seconds." msgstr "" msgid "" -"Output of the child process if it was captured by :func:`run` or :func:" -"`check_output`. Otherwise, ``None``. This is always :class:`bytes` when " -"any output was captured regardless of the ``text=True`` setting. It may " -"remain ``None`` instead of ``b''`` when no output was observed." +"Output of the child process if it was captured by :func:`run` " +"or :func:`check_output`. Otherwise, ``None``. This is " +"always :class:`bytes` when any output was captured regardless of the " +"``text=True`` setting. It may remain ``None`` instead of ``b''`` when no " +"output was observed." msgstr "" msgid "Alias for output, for symmetry with :attr:`stderr`." @@ -253,19 +256,19 @@ msgid "*stdout* and *stderr* attributes added" msgstr "" msgid "" -"Subclass of :exc:`SubprocessError`, raised when a process run by :func:" -"`check_call`, :func:`check_output`, or :func:`run` (with ``check=True``) " -"returns a non-zero exit status." +"Subclass of :exc:`SubprocessError`, raised when a process run " +"by :func:`check_call`, :func:`check_output`, or :func:`run` (with " +"``check=True``) returns a non-zero exit status." msgstr "" msgid "" -"Exit status of the child process. If the process exited due to a signal, " -"this will be the negative signal number." +"Exit status of the child process, an integer. If the process exited due to " +"a signal, this will be the negative signal number." msgstr "" msgid "" -"Output of the child process if it was captured by :func:`run` or :func:" -"`check_output`. Otherwise, ``None``." +"Output of the child process if it was captured by :func:`run` " +"or :func:`check_output`. Otherwise, ``None``." msgstr "" msgid "" @@ -299,10 +302,10 @@ msgid "" "descriptor (a positive integer), and an existing :term:`file object` with a " "valid file descriptor. With the default settings of ``None``, no " "redirection will occur. :data:`PIPE` indicates that a new pipe to the child " -"should be created. :data:`DEVNULL` indicates that the special file :data:" -"`os.devnull` will be used. Additionally, *stderr* can be :data:`STDOUT`, " -"which indicates that the stderr data from the child process should be " -"captured into the same file handle as for *stdout*." +"should be created. :data:`DEVNULL` indicates that the special " +"file :data:`os.devnull` will be used. Additionally, *stderr* can " +"be :data:`STDOUT`, which indicates that the stderr data from the child " +"process should be captured into the same file handle as for *stdout*." msgstr "" msgid "" @@ -332,9 +335,9 @@ msgid "Added the *text* parameter as an alias for *universal_newlines*." msgstr "" msgid "" -"The newlines attribute of the file objects :attr:`Popen.stdin`, :attr:`Popen." -"stdout` and :attr:`Popen.stderr` are not updated by the :meth:`Popen." -"communicate` method." +"The newlines attribute of the file " +"objects :attr:`Popen.stdin`, :attr:`Popen.stdout` and :attr:`Popen.stderr` " +"are not updated by the :meth:`Popen.communicate` method." msgstr "" msgid "" @@ -344,16 +347,17 @@ msgid "" "convenient access to other shell features such as shell pipes, filename " "wildcards, environment variable expansion, and expansion of ``~`` to a " "user's home directory. However, note that Python itself offers " -"implementations of many shell-like features (in particular, :mod:`glob`, :" -"mod:`fnmatch`, :func:`os.walk`, :func:`os.path.expandvars`, :func:`os.path." -"expanduser`, and :mod:`shutil`)." +"implementations of many shell-like features (in " +"particular, :mod:`glob`, :mod:`fnmatch`, :func:`os.walk`, :func:`os.path.expandvars`, :func:`os.path.expanduser`, " +"and :mod:`shutil`)." msgstr "" msgid "" -"When *universal_newlines* is ``True``, the class uses the encoding :func:" -"`locale.getpreferredencoding(False) ` instead " -"of ``locale.getpreferredencoding()``. See the :class:`io.TextIOWrapper` " -"class for more information on this change." +"When *universal_newlines* is ``True``, the class uses the " +"encoding :func:`locale.getpreferredencoding(False) " +"` instead of " +"``locale.getpreferredencoding()``. See the :class:`io.TextIOWrapper` class " +"for more information on this change." msgstr "" msgid "" @@ -376,15 +380,15 @@ msgid "" msgstr "" msgid "" -"Execute a child program in a new process. On POSIX, the class uses :meth:" -"`os.execvpe`-like behavior to execute the child program. On Windows, the " -"class uses the Windows ``CreateProcess()`` function. The arguments to :" -"class:`Popen` are as follows." +"Execute a child program in a new process. On POSIX, the class " +"uses :meth:`os.execvpe`-like behavior to execute the child program. On " +"Windows, the class uses the Windows ``CreateProcess()`` function. The " +"arguments to :class:`Popen` are as follows." msgstr "" msgid "" -"*args* should be a sequence of program arguments or else a single string or :" -"term:`path-like object`. By default, the program to execute is the first " +"*args* should be a sequence of program arguments or else a single string " +"or :term:`path-like object`. By default, the program to execute is the first " "item in *args* if *args* is a sequence. If *args* is a string, the " "interpretation is platform-dependent and described below. See the *shell* " "and *executable* arguments for additional differences from the default " @@ -482,8 +486,8 @@ msgid "" "when typed at the shell prompt. This includes, for example, quoting or " "backslash escaping filenames with spaces in them. If *args* is a sequence, " "the first item specifies the command string, and any additional items will " -"be treated as additional arguments to the shell itself. That is to say, :" -"class:`Popen` does the equivalent of::" +"be treated as additional arguments to the shell itself. That is to " +"say, :class:`Popen` does the equivalent of::" msgstr "" msgid "Popen(['/bin/sh', '-c', args[0], args[1], ...])" @@ -516,8 +520,8 @@ msgid "any other positive value means use a buffer of approximately that size" msgstr "" msgid "" -"negative bufsize (the default) means the system default of io." -"DEFAULT_BUFFER_SIZE will be used." +"negative bufsize (the default) means the system default of " +"io.DEFAULT_BUFFER_SIZE will be used." msgstr "" msgid "" @@ -555,10 +559,10 @@ msgid "" "descriptor (a positive integer), and an existing :term:`file object` with a " "valid file descriptor. With the default settings of ``None``, no " "redirection will occur. :data:`PIPE` indicates that a new pipe to the child " -"should be created. :data:`DEVNULL` indicates that the special file :data:" -"`os.devnull` will be used. Additionally, *stderr* can be :data:`STDOUT`, " -"which indicates that the stderr data from the applications should be " -"captured into the same file handle as for *stdout*." +"should be created. :data:`DEVNULL` indicates that the special " +"file :data:`os.devnull` will be used. Additionally, *stderr* can " +"be :data:`STDOUT`, which indicates that the stderr data from the " +"applications should be captured into the same file handle as for *stdout*." msgstr "" msgid "" @@ -594,8 +598,8 @@ msgstr "" msgid "" "On Windows, if *close_fds* is true then no handles will be inherited by the " -"child process unless explicitly passed in the ``handle_list`` element of :" -"attr:`STARTUPINFO.lpAttributeList`, or by standard handle redirection." +"child process unless explicitly passed in the ``handle_list`` element " +"of :attr:`STARTUPINFO.lpAttributeList`, or by standard handle redirection." msgstr "" msgid "" @@ -604,15 +608,15 @@ msgid "" msgstr "" msgid "" -"On Windows the default for *close_fds* was changed from :const:`False` to :" -"const:`True` when redirecting the standard handles. It's now possible to set " -"*close_fds* to :const:`True` when redirecting the standard handles." +"On Windows the default for *close_fds* was changed from :const:`False` " +"to :const:`True` when redirecting the standard handles. It's now possible to " +"set *close_fds* to :const:`True` when redirecting the standard handles." msgstr "" msgid "" "*pass_fds* is an optional sequence of file descriptors to keep open between " -"the parent and child. Providing any *pass_fds* forces *close_fds* to be :" -"const:`True`. (POSIX only)" +"the parent and child. Providing any *pass_fds* forces *close_fds* to " +"be :const:`True`. (POSIX only)" msgstr "" msgid "The *pass_fds* parameter was added." @@ -620,10 +624,10 @@ msgstr "" msgid "" "If *cwd* is not ``None``, the function changes the working directory to " -"*cwd* before executing the child. *cwd* can be a string, bytes or :term:" -"`path-like ` object. On POSIX, the function looks for " -"*executable* (or for the first item in *args*) relative to *cwd* if the " -"executable path is a relative path." +"*cwd* before executing the child. *cwd* can be a string, bytes " +"or :term:`path-like ` object. On POSIX, the function " +"looks for *executable* (or for the first item in *args*) relative to *cwd* " +"if the executable path is a relative path." msgstr "" msgid "*cwd* parameter accepts a :term:`path-like object` on POSIX." @@ -700,8 +704,8 @@ msgid "" "If *env* is not ``None``, it must be a mapping that defines the environment " "variables for the new process; these are used instead of the default " "behavior of inheriting the current process' environment. This mapping can be " -"str to str on any platform or bytes to bytes on POSIX platforms much like :" -"data:`os.environ` or :data:`os.environb`." +"str to str on any platform or bytes to bytes on POSIX platforms much " +"like :data:`os.environ` or :data:`os.environb`." msgstr "" msgid "" @@ -791,8 +795,8 @@ msgid "" msgstr "" msgid "" -"Popen and the other functions in this module that use it raise an :ref:" -"`auditing event ` ``subprocess.Popen`` with arguments " +"Popen and the other functions in this module that use it raise " +"an :ref:`auditing event ` ``subprocess.Popen`` with arguments " "``executable``, ``args``, ``cwd``, and ``env``. The value for ``args`` may " "be a single string or a list of strings, depending on platform." msgstr "" @@ -809,8 +813,8 @@ msgid "" "Popen can use :func:`os.posix_spawn` in some cases for better performance. " "On Windows Subsystem for Linux and QEMU User Emulation, Popen constructor " "using :func:`os.posix_spawn` no longer raise an exception on errors like " -"missing program, but the child process fails with a non-zero :attr:`~Popen." -"returncode`." +"missing program, but the child process fails with a non-" +"zero :attr:`~Popen.returncode`." msgstr "" msgid "Exceptions" @@ -824,11 +828,11 @@ msgstr "" msgid "" "The most common exception raised is :exc:`OSError`. This occurs, for " "example, when trying to execute a non-existent file. Applications should " -"prepare for :exc:`OSError` exceptions. Note that, when ``shell=True``, :exc:" -"`OSError` will be raised by the child only if the selected shell itself was " -"not found. To determine if the shell failed to find the requested " -"application, it is necessary to check the return code or output from the " -"subprocess." +"prepare for :exc:`OSError` exceptions. Note that, when " +"``shell=True``, :exc:`OSError` will be raised by the child only if the " +"selected shell itself was not found. To determine if the shell failed to " +"find the requested application, it is necessary to check the return code or " +"output from the subprocess." msgstr "" msgid "" @@ -837,14 +841,15 @@ msgid "" msgstr "" msgid "" -":func:`check_call` and :func:`check_output` will raise :exc:" -"`CalledProcessError` if the called process returns a non-zero return code." +":func:`check_call` and :func:`check_output` will " +"raise :exc:`CalledProcessError` if the called process returns a non-zero " +"return code." msgstr "" msgid "" -"All of the functions and methods that accept a *timeout* parameter, such as :" -"func:`run` and :meth:`Popen.communicate` will raise :exc:`TimeoutExpired` if " -"the timeout expires before the process exits." +"All of the functions and methods that accept a *timeout* parameter, such " +"as :func:`run` and :meth:`Popen.communicate` will " +"raise :exc:`TimeoutExpired` if the timeout expires before the process exits." msgstr "" msgid "" @@ -875,8 +880,8 @@ msgid "" "this library. This could result in arguments being parsed according to shell " "rules, but without any escaping added by Python. If you are intentionally " "launching a batch file with arguments from untrusted sources, consider " -"passing ``shell=True`` to allow Python to escape special characters. See :gh:" -"`114539` for additional discussion." +"passing ``shell=True`` to allow Python to escape special characters. " +"See :gh:`114539` for additional discussion." msgstr "" msgid "Popen Objects" @@ -886,19 +891,19 @@ msgid "Instances of the :class:`Popen` class have the following methods:" msgstr "" msgid "" -"Check if child process has terminated. Set and return :attr:`~Popen." -"returncode` attribute. Otherwise, returns ``None``." +"Check if child process has terminated. Set and " +"return :attr:`~Popen.returncode` attribute. Otherwise, returns ``None``." msgstr "" msgid "" -"Wait for child process to terminate. Set and return :attr:`~Popen." -"returncode` attribute." +"Wait for child process to terminate. Set and " +"return :attr:`~Popen.returncode` attribute." msgstr "" msgid "" -"If the process does not terminate after *timeout* seconds, raise a :exc:" -"`TimeoutExpired` exception. It is safe to catch this exception and retry " -"the wait." +"If the process does not terminate after *timeout* seconds, raise " +"a :exc:`TimeoutExpired` exception. It is safe to catch this exception and " +"retry the wait." msgstr "" msgid "" @@ -930,8 +935,8 @@ msgid "" msgstr "" msgid "" -"Use the :mod:`asyncio` module for an asynchronous wait: see :class:`asyncio." -"create_subprocess_exec`." +"Use the :mod:`asyncio` module for an asynchronous wait: " +"see :class:`asyncio.create_subprocess_exec`." msgstr "" msgid "*timeout* was added." @@ -964,9 +969,9 @@ msgid "" msgstr "" msgid "" -"If the process does not terminate after *timeout* seconds, a :exc:" -"`TimeoutExpired` exception will be raised. Catching this exception and " -"retrying communication will not lose any output. Supplying *input* to a " +"If the process does not terminate after *timeout* seconds, " +"a :exc:`TimeoutExpired` exception will be raised. Catching this exception " +"and retrying communication will not lose any output. Supplying *input* to a " "subsequent post-timeout :meth:`communicate` call is in undefined behavior " "and may become an error in the future." msgstr "" @@ -1058,10 +1063,10 @@ msgid "" msgstr "" msgid "" -"Use :meth:`~Popen.communicate` rather than :attr:`.stdin.write `, :attr:`.stdout.read ` or :attr:`.stderr.read ` to avoid deadlocks due to any of the other OS pipe buffers filling " -"up and blocking the child process." +"Use :meth:`~Popen.communicate` rather than :attr:`.stdin.write " +"`, :attr:`.stdout.read ` or :attr:`.stderr.read " +"` to avoid deadlocks due to any of the other OS pipe buffers " +"filling up and blocking the child process." msgstr "" msgid "The process ID of the child process." @@ -1115,8 +1120,8 @@ msgstr "" msgid "" "si = subprocess.STARTUPINFO()\n" -"si.dwFlags = subprocess.STARTF_USESTDHANDLES | subprocess." -"STARTF_USESHOWWINDOW" +"si.dwFlags = subprocess.STARTF_USESTDHANDLES | " +"subprocess.STARTF_USESHOWWINDOW" msgstr "" msgid "" @@ -1146,14 +1151,14 @@ msgid "" msgstr "" msgid "" -":data:`SW_HIDE` is provided for this attribute. It is used when :class:" -"`Popen` is called with ``shell=True``." +":data:`SW_HIDE` is provided for this attribute. It is used " +"when :class:`Popen` is called with ``shell=True``." msgstr "" msgid "" "A dictionary of additional attributes for process creation as given in " -"``STARTUPINFOEX``, see `UpdateProcThreadAttribute `__." +"``STARTUPINFOEX``, see `UpdateProcThreadAttribute `__." msgstr "" msgid "Supported attributes:" @@ -1168,18 +1173,18 @@ msgid "" msgstr "" msgid "" -"The handles must be temporarily made inheritable by :func:`os." -"set_handle_inheritable` when passed to the :class:`Popen` constructor, else :" -"class:`OSError` will be raised with Windows error " +"The handles must be temporarily made inheritable " +"by :func:`os.set_handle_inheritable` when passed to the :class:`Popen` " +"constructor, else :class:`OSError` will be raised with Windows error " "``ERROR_INVALID_PARAMETER`` (87)." msgstr "" msgid "" "In a multithreaded process, use caution to avoid leaking handles that are " "marked inheritable when combining this feature with concurrent calls to " -"other process creation functions that inherit all handles such as :func:`os." -"system`. This also applies to standard handle redirection, which " -"temporarily creates inheritable handles." +"other process creation functions that inherit all handles such " +"as :func:`os.system`. This also applies to standard handle redirection, " +"which temporarily creates inheritable handles." msgstr "" msgid "Windows Constants" @@ -1207,9 +1212,9 @@ msgid "Hides the window. Another window will be activated." msgstr "" msgid "" -"Specifies that the :attr:`STARTUPINFO.hStdInput`, :attr:`STARTUPINFO." -"hStdOutput`, and :attr:`STARTUPINFO.hStdError` attributes contain additional " -"information." +"Specifies that " +"the :attr:`STARTUPINFO.hStdInput`, :attr:`STARTUPINFO.hStdOutput`, " +"and :attr:`STARTUPINFO.hStdError` attributes contain additional information." msgstr "" msgid "" @@ -1338,10 +1343,11 @@ msgstr "" msgid "" "Run command with arguments. Wait for command to complete. If the return " -"code was zero then return, otherwise raise :exc:`CalledProcessError`. The :" -"exc:`CalledProcessError` object will have the return code in the :attr:" -"`~CalledProcessError.returncode` attribute. If :func:`check_call` was unable " -"to start the process it will propagate the exception that was raised." +"code was zero then return, otherwise raise :exc:`CalledProcessError`. " +"The :exc:`CalledProcessError` object will have the return code in " +"the :attr:`~CalledProcessError.returncode` attribute. If :func:`check_call` " +"was unable to start the process it will propagate the exception that was " +"raised." msgstr "" msgid "run(..., check=True)" @@ -1351,10 +1357,10 @@ msgid "Run command with arguments and return its output." msgstr "" msgid "" -"If the return code was non-zero it raises a :exc:`CalledProcessError`. The :" -"exc:`CalledProcessError` object will have the return code in the :attr:" -"`~CalledProcessError.returncode` attribute and any output in the :attr:" -"`~CalledProcessError.output` attribute." +"If the return code was non-zero it raises a :exc:`CalledProcessError`. " +"The :exc:`CalledProcessError` object will have the return code in " +"the :attr:`~CalledProcessError.returncode` attribute and any output in " +"the :attr:`~CalledProcessError.output` attribute." msgstr "" msgid "This is equivalent to::" @@ -1366,10 +1372,10 @@ msgstr "" msgid "" "The arguments shown above are merely some common ones. The full function " "signature is largely the same as that of :func:`run` - most arguments are " -"passed directly through to that interface. One API deviation from :func:" -"`run` behavior exists: passing ``input=None`` will behave the same as " -"``input=b''`` (or ``input=''``, depending on other arguments) rather than " -"using the parent's standard input file handle." +"passed directly through to that interface. One API deviation " +"from :func:`run` behavior exists: passing ``input=None`` will behave the " +"same as ``input=b''`` (or ``input=''``, depending on other arguments) rather " +"than using the parent's standard input file handle." msgstr "" msgid "" @@ -1385,8 +1391,8 @@ msgid "" msgstr "" msgid "" -"To also capture standard error in the result, use ``stderr=subprocess." -"STDOUT``::" +"To also capture standard error in the result, use " +"``stderr=subprocess.STDOUT``::" msgstr "" msgid "" @@ -1413,15 +1419,15 @@ msgstr "" msgid "" "All \"a\" functions in this section fail (more or less) silently if the " -"executed program cannot be found; the \"b\" replacements raise :exc:" -"`OSError` instead." +"executed program cannot be found; the \"b\" replacements " +"raise :exc:`OSError` instead." msgstr "" msgid "" -"In addition, the replacements using :func:`check_output` will fail with a :" -"exc:`CalledProcessError` if the requested operation produces a non-zero " -"return code. The output is still available as the :attr:`~CalledProcessError." -"output` attribute of the raised exception." +"In addition, the replacements using :func:`check_output` will fail with " +"a :exc:`CalledProcessError` if the requested operation produces a non-zero " +"return code. The output is still available as " +"the :attr:`~CalledProcessError.output` attribute of the raised exception." msgstr "" msgid "" @@ -1483,14 +1489,14 @@ msgid "Calling the program through the shell is usually not required." msgstr "" msgid "" -"The :func:`call` return value is encoded differently to that of :func:`os." -"system`." +"The :func:`call` return value is encoded differently to that " +"of :func:`os.system`." msgstr "" msgid "" "The :func:`os.system` function ignores SIGINT and SIGQUIT signals while the " -"command is running, but the caller must do this separately when using the :" -"mod:`!subprocess` module." +"command is running, but the caller must do this separately when using " +"the :mod:`!subprocess` module." msgstr "" msgid "A more realistic example would look like this::" @@ -1500,8 +1506,8 @@ msgid "" "try:\n" " retcode = call(\"mycmd\" + \" myarg\", shell=True)\n" " if retcode < 0:\n" -" print(\"Child was terminated by signal\", -retcode, file=sys." -"stderr)\n" +" print(\"Child was terminated by signal\", -retcode, " +"file=sys.stderr)\n" " else:\n" " print(\"Child returned\", retcode, file=sys.stderr)\n" "except OSError as e:\n" @@ -1607,8 +1613,8 @@ msgstr "" msgid "" "The function now returns (exitcode, output) instead of (status, output) as " -"it did in Python 3.3.3 and earlier. exitcode has the same value as :attr:" -"`~Popen.returncode`." +"it did in Python 3.3.3 and earlier. exitcode has the same value " +"as :attr:`~Popen.returncode`." msgstr "" msgid "Return output (stdout and stderr) of executing *cmd* in a shell." @@ -1634,9 +1640,9 @@ msgid "Timeout Behavior" msgstr "" msgid "" -"When using the ``timeout`` parameter in functions like :func:`run`, :meth:" -"`Popen.wait`, or :meth:`Popen.communicate`, users should be aware of the " -"following behaviors:" +"When using the ``timeout`` parameter in functions " +"like :func:`run`, :meth:`Popen.wait`, or :meth:`Popen.communicate`, users " +"should be aware of the following behaviors:" msgstr "" msgid "" diff --git a/library/sunau.po b/library/sunau.po index b3b8773..a80d3c7 100644 --- a/library/sunau.po +++ b/library/sunau.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!sunau` --- Read and write Sun AU files" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/superseded.po b/library/superseded.po index 1735c90..39e7220 100644 --- a/library/superseded.po +++ b/library/superseded.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,8 +38,8 @@ msgstr "" msgid "" "Alternatively, modules may appear in this chapter because they are " -"deprecated outright, and awaiting removal in a future release, or they are :" -"term:`soft deprecated` and their use is actively discouraged in new " +"deprecated outright, and awaiting removal in a future release, or they " +"are :term:`soft deprecated` and their use is actively discouraged in new " "projects. With the removal of various obsolete modules through :pep:`594`, " "there are currently no modules in this latter category." msgstr "" diff --git a/library/symtable.po b/library/symtable.po index a4a13a6..626d5a1 100644 --- a/library/symtable.po +++ b/library/symtable.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -92,8 +92,8 @@ msgid "A namespace table for a block. The constructor is not public." msgstr "" msgid "" -"Return the type of the symbol table. Possible values are members of the :" -"class:`SymbolTableType` enumeration." +"Return the type of the symbol table. Possible values are members of " +"the :class:`SymbolTableType` enumeration." msgstr "" msgid "" @@ -119,8 +119,8 @@ msgid "" "``'top'`` if the table is global (:meth:`get_type` returns ``'module'``). " "For type parameter scopes (which are used for generic classes, functions, " "and type aliases), it is the name of the underlying class, function, or type " -"alias. For type alias scopes, it is the name of the type alias. For :class:" -"`~typing.TypeVar` bound scopes, it is the name of the ``TypeVar``." +"alias. For type alias scopes, it is the name of the type alias. " +"For :class:`~typing.TypeVar` bound scopes, it is the name of the ``TypeVar``." msgstr "" msgid "Return the number of the first line in the block this table represents." @@ -138,8 +138,8 @@ msgid "" msgstr "" msgid "" -"Return a view object containing the names of symbols in the table. See the :" -"ref:`documentation of view objects `." +"Return a view object containing the names of symbols in the table. See " +"the :ref:`documentation of view objects `." msgstr "" msgid "Lookup *name* in the table and return a :class:`Symbol` instance." @@ -152,8 +152,8 @@ msgid "Return a list of the nested symbol tables." msgstr "" msgid "" -"A namespace for a function or method. This class inherits from :class:" -"`SymbolTable`." +"A namespace for a function or method. This class inherits " +"from :class:`SymbolTable`." msgstr "" msgid "Return a tuple containing names of parameters to this function." diff --git a/library/sys.monitoring.po b/library/sys.monitoring.po index 013aafb..01eed8d 100644 --- a/library/sys.monitoring.po +++ b/library/sys.monitoring.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,9 +23,9 @@ msgstr "" msgid "" ":mod:`!sys.monitoring` is a namespace within the :mod:`sys` module, not an " -"independent module, and ``import sys.monitoring`` would fail with a :exc:" -"`ModuleNotFoundError`. Instead, simply ``import sys`` and then use ``sys." -"monitoring``." +"independent module, and ``import sys.monitoring`` would fail with " +"a :exc:`ModuleNotFoundError`. Instead, simply ``import sys`` and then use " +"``sys.monitoring``." msgstr "" msgid "" @@ -79,8 +79,14 @@ msgid "Unregister all events and callback functions associated with *tool_id*." msgstr "" msgid "" -"Should be called once a tool no longer requires *tool_id*. Will call :func:" -"`clear_tool_id` before releasing *tool_id*." +"Should be called once a tool no longer requires *tool_id*. Will " +"call :func:`clear_tool_id` before releasing *tool_id*." +msgstr "" + +msgid "" +"Now calls :func:`clear_tool_id` before releasing *tool_id*. Previously, it " +"would not disable global or local events associated with *tool_id*, nor " +"unregister any callback functions." msgstr "" msgid "" @@ -175,8 +181,8 @@ msgid "" msgstr "" msgid "" -"An exception is raised, except those that cause a :monitoring-event:" -"`STOP_ITERATION` event." +"An exception is raised, except those that cause a :monitoring-" +"event:`STOP_ITERATION` event." msgstr "" msgid "" @@ -260,9 +266,9 @@ msgid "``BRANCH``" msgstr "" msgid "" -"The ``BRANCH`` event is deprecated in 3.14. Using :monitoring-event:" -"`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT` events will give much " -"better performance as they can be disabled independently." +"The ``BRANCH`` event is deprecated in 3.14. Using :monitoring-" +"event:`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT` events will give " +"much better performance as they can be disabled independently." msgstr "" msgid "Ancillary events" @@ -281,9 +287,9 @@ msgstr "" msgid "" "The :monitoring-event:`C_RETURN` and :monitoring-event:`C_RAISE` events are " -"controlled by the :monitoring-event:`CALL` event. :monitoring-event:" -"`C_RETURN` and :monitoring-event:`C_RAISE` events will only be seen if the " -"corresponding :monitoring-event:`CALL` event is being monitored." +"controlled by the :monitoring-event:`CALL` event. :monitoring-" +"event:`C_RETURN` and :monitoring-event:`C_RAISE` events will only be seen if " +"the corresponding :monitoring-event:`CALL` event is being monitored." msgstr "" msgid "Other events" @@ -322,8 +328,8 @@ msgid "The STOP_ITERATION event" msgstr "" msgid "" -":pep:`PEP 380 <380#use-of-stopiteration-to-return-values>` specifies that a :" -"exc:`StopIteration` exception is raised when returning a value from a " +":pep:`PEP 380 <380#use-of-stopiteration-to-return-values>` specifies that " +"a :exc:`StopIteration` exception is raised when returning a value from a " "generator or coroutine. However, this is a very inefficient way to return a " "value, so some Python implementations, notably CPython 3.12+, do not raise " "an exception unless it would be visible to other code." @@ -365,8 +371,8 @@ msgid "Returns the ``int`` representing all the active events." msgstr "" msgid "" -"Activates all events which are set in *event_set*. Raises a :exc:" -"`ValueError` if *tool_id* is not in use." +"Activates all events which are set in *event_set*. Raises " +"a :exc:`ValueError` if *tool_id* is not in use." msgstr "" msgid "No events are active by default." @@ -438,13 +444,13 @@ msgid "" msgstr "" msgid "" -"Raises an :ref:`auditing event ` ``sys.monitoring." -"register_callback`` with argument ``func``." +"Raises an :ref:`auditing event ` " +"``sys.monitoring.register_callback`` with argument ``func``." msgstr "" msgid "" -"Functions can be unregistered by calling ``sys.monitoring." -"register_callback(tool_id, event, None)``." +"Functions can be unregistered by calling " +"``sys.monitoring.register_callback(tool_id, event, None)``." msgstr "" msgid "Callback functions can be registered and unregistered at any time." @@ -485,8 +491,8 @@ msgid "func(code: CodeType, instruction_offset: int, retval: object) -> object" msgstr "" msgid "" -":monitoring-event:`CALL`, :monitoring-event:`C_RAISE` and :monitoring-event:" -"`C_RETURN` (*arg0* can be :data:`MISSING` specifically)::" +":monitoring-event:`CALL`, :monitoring-event:`C_RAISE` and :monitoring-" +"event:`C_RETURN` (*arg0* can be :data:`MISSING` specifically)::" msgstr "" msgid "" @@ -497,8 +503,8 @@ msgstr "" msgid "" "*code* represents the code object where the call is being made, while " "*callable* is the object that is about to be called (and thus triggered the " -"event). If there are no arguments, *arg0* is set to :data:`sys.monitoring." -"MISSING`." +"event). If there are no arguments, *arg0* is set " +"to :data:`sys.monitoring.MISSING`." msgstr "" msgid "" @@ -508,9 +514,9 @@ msgid "" msgstr "" msgid "" -":monitoring-event:`RAISE`, :monitoring-event:`RERAISE`, :monitoring-event:" -"`EXCEPTION_HANDLED`, :monitoring-event:`PY_UNWIND`, :monitoring-event:" -"`PY_THROW` and :monitoring-event:`STOP_ITERATION`::" +":monitoring-event:`RAISE`, :monitoring-event:`RERAISE`, :monitoring-" +"event:`EXCEPTION_HANDLED`, :monitoring-event:`PY_UNWIND`, :monitoring-" +"event:`PY_THROW` and :monitoring-event:`STOP_ITERATION`::" msgstr "" msgid "" @@ -525,8 +531,8 @@ msgid "func(code: CodeType, line_number: int) -> object" msgstr "" msgid "" -":monitoring-event:`BRANCH_LEFT`, :monitoring-event:`BRANCH_RIGHT` and :" -"monitoring-event:`JUMP`::" +":monitoring-event:`BRANCH_LEFT`, :monitoring-event:`BRANCH_RIGHT` " +"and :monitoring-event:`JUMP`::" msgstr "" msgid "" diff --git a/library/sys.po b/library/sys.po index a6b34aa..9d7de31 100644 --- a/library/sys.po +++ b/library/sys.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -104,8 +104,8 @@ msgid "" "particular, malicious code can trivially disable or bypass hooks added using " "this function. At a minimum, any security-sensitive hooks must be added " "using the C API :c:func:`PySys_AddAuditHook` before initialising the " -"runtime, and any modules allowing arbitrary memory modification (such as :" -"mod:`ctypes`) should be completely removed or closely monitored." +"runtime, and any modules allowing arbitrary memory modification (such " +"as :mod:`ctypes`) should be completely removed or closely monitored." msgstr "" msgid "" @@ -179,8 +179,8 @@ msgid "" msgstr "" msgid "" -"Hooks are added using the :func:`sys.addaudithook` or :c:func:" -"`PySys_AddAuditHook` functions." +"Hooks are added using the :func:`sys.addaudithook` " +"or :c:func:`PySys_AddAuditHook` functions." msgstr "" msgid "" @@ -199,11 +199,11 @@ msgid "" msgstr "" msgid "" -"When running under :ref:`sys-path-init-virtual-environments`, :data:" -"`exec_prefix` gets overwritten to the virtual environment prefix. :data:" -"`base_exec_prefix`, conversely, does not change, and always points to the " -"base Python installation. Refer to :ref:`sys-path-init-virtual-environments` " -"for more information." +"When running under :ref:`sys-path-init-virtual-" +"environments`, :data:`exec_prefix` gets overwritten to the virtual " +"environment prefix. :data:`base_exec_prefix`, conversely, does not change, " +"and always points to the base Python installation. Refer to :ref:`sys-path-" +"init-virtual-environments` for more information." msgstr "" msgid "" @@ -240,9 +240,10 @@ msgid "" msgstr "" msgid "" -"Tracing is suspended while calling a tracing function set by :func:" -"`settrace` or :func:`setprofile` to avoid infinite recursion. :func:`!" -"call_tracing` enables explicit recursion of the tracing function." +"Tracing is suspended while calling a tracing function set " +"by :func:`settrace` or :func:`setprofile` to avoid infinite " +"recursion. :func:`!call_tracing` enables explicit recursion of the tracing " +"function." msgstr "" msgid "A string containing the copyright pertaining to the Python interpreter." @@ -322,27 +323,28 @@ msgid "" msgstr "" msgid "" -"The default implementation first consults the environment variable :envvar:" -"`PYTHONBREAKPOINT`. If that is set to ``\"0\"`` then this function returns " -"immediately; i.e. it is a no-op. If the environment variable is not set, or " -"is set to the empty string, ``pdb.set_trace()`` is called. Otherwise this " -"variable should name a function to run, using Python's dotted-import " -"nomenclature, e.g. ``package.subpackage.module.function``. In this case, " +"The default implementation first consults the environment " +"variable :envvar:`PYTHONBREAKPOINT`. If that is set to ``\"0\"`` then this " +"function returns immediately; i.e. it is a no-op. If the environment " +"variable is not set, or is set to the empty string, ``pdb.set_trace()`` is " +"called. Otherwise this variable should name a function to run, using " +"Python's dotted-import nomenclature, e.g. " +"``package.subpackage.module.function``. In this case, " "``package.subpackage.module`` would be imported and the resulting module " "must have a callable named ``function()``. This is run, passing in " -"``*args`` and ``**kws``, and whatever ``function()`` returns, ``sys." -"breakpointhook()`` returns to the built-in :func:`breakpoint` function." +"``*args`` and ``**kws``, and whatever ``function()`` returns, " +"``sys.breakpointhook()`` returns to the built-in :func:`breakpoint` function." msgstr "" msgid "" -"Note that if anything goes wrong while importing the callable named by :" -"envvar:`PYTHONBREAKPOINT`, a :exc:`RuntimeWarning` is reported and the " +"Note that if anything goes wrong while importing the callable named " +"by :envvar:`PYTHONBREAKPOINT`, a :exc:`RuntimeWarning` is reported and the " "breakpoint is ignored." msgstr "" msgid "" -"Also note that if ``sys.breakpointhook()`` is overridden programmatically, :" -"envvar:`PYTHONBREAKPOINT` is *not* consulted." +"Also note that if ``sys.breakpointhook()`` is overridden " +"programmatically, :envvar:`PYTHONBREAKPOINT` is *not* consulted." msgstr "" msgid "" @@ -365,18 +367,18 @@ msgid "Integer specifying the handle of the Python DLL." msgstr "" msgid "" -"If *value* is not ``None``, this function prints ``repr(value)`` to ``sys." -"stdout``, and saves *value* in ``builtins._``. If ``repr(value)`` is not " -"encodable to ``sys.stdout.encoding`` with ``sys.stdout.errors`` error " -"handler (which is probably ``'strict'``), encode it to ``sys.stdout." -"encoding`` with ``'backslashreplace'`` error handler." +"If *value* is not ``None``, this function prints ``repr(value)`` to " +"``sys.stdout``, and saves *value* in ``builtins._``. If ``repr(value)`` is " +"not encodable to ``sys.stdout.encoding`` with ``sys.stdout.errors`` error " +"handler (which is probably ``'strict'``), encode it to " +"``sys.stdout.encoding`` with ``'backslashreplace'`` error handler." msgstr "" msgid "" -"``sys.displayhook`` is called on the result of evaluating an :term:" -"`expression` entered in an interactive Python session. The display of these " -"values can be customized by assigning another one-argument function to ``sys." -"displayhook``." +"``sys.displayhook`` is called on the result of evaluating " +"an :term:`expression` entered in an interactive Python session. The display " +"of these values can be customized by assigning another one-argument function " +"to ``sys.displayhook``." msgstr "" msgid "Pseudo-code::" @@ -408,9 +410,9 @@ msgstr "" msgid "" "If this is true, Python won't try to write ``.pyc`` files on the import of " "source modules. This value is initially set to ``True`` or ``False`` " -"depending on the :option:`-B` command line option and the :envvar:" -"`PYTHONDONTWRITEBYTECODE` environment variable, but you can set it yourself " -"to control bytecode file generation." +"depending on the :option:`-B` command line option and " +"the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable, but you can set " +"it yourself to control bytecode file generation." msgstr "" msgid "" @@ -451,9 +453,9 @@ msgstr "" msgid "" "This value is initially set based on the value of the :option:`-X` " -"``pycache_prefix=PATH`` command-line option or the :envvar:" -"`PYTHONPYCACHEPREFIX` environment variable (command-line takes precedence). " -"If neither are set, it is ``None``." +"``pycache_prefix=PATH`` command-line option or " +"the :envvar:`PYTHONPYCACHEPREFIX` environment variable (command-line takes " +"precedence). If neither are set, it is ``None``." msgstr "" msgid "" @@ -475,14 +477,14 @@ msgid "" "``type``, ``value``, ``traceback`` when an uncaught exception occurs. If no " "hook has been set, ``hook`` may be ``None``. If any hook raises an exception " "derived from :class:`RuntimeError` the call to the hook will be suppressed. " -"Otherwise, the audit hook exception will be reported as unraisable and ``sys." -"excepthook`` will be called." +"Otherwise, the audit hook exception will be reported as unraisable and " +"``sys.excepthook`` will be called." msgstr "" msgid "" "The :func:`sys.unraisablehook` function handles unraisable exceptions and " -"the :func:`threading.excepthook` function handles exception raised by :func:" -"`threading.Thread.run`." +"the :func:`threading.excepthook` function handles exception raised " +"by :func:`threading.Thread.run`." msgstr "" msgid "" @@ -512,11 +514,11 @@ msgstr "" msgid "" "This function returns the old-style representation of the handled exception. " "If an exception ``e`` is currently handled (so :func:`exception` would " -"return ``e``), :func:`exc_info` returns the tuple ``(type(e), e, e." -"__traceback__)``. That is, a tuple containing the type of the exception (a " -"subclass of :exc:`BaseException`), the exception itself, and a :ref:" -"`traceback object ` which typically encapsulates the call " -"stack at the point where the exception last occurred." +"return ``e``), :func:`exc_info` returns the tuple ``(type(e), e, " +"e.__traceback__)``. That is, a tuple containing the type of the exception (a " +"subclass of :exc:`BaseException`), the exception itself, and " +"a :ref:`traceback object ` which typically encapsulates " +"the call stack at the point where the exception last occurred." msgstr "" msgid "" @@ -527,8 +529,8 @@ msgstr "" msgid "" "The ``type`` and ``traceback`` fields are now derived from the ``value`` " "(the exception instance), so when an exception is modified while it is being " -"handled, the changes are reflected in the results of subsequent calls to :" -"func:`exc_info`." +"handled, the changes are reflected in the results of subsequent calls " +"to :func:`exc_info`." msgstr "" msgid "" @@ -536,17 +538,18 @@ msgid "" "dependent Python files are installed; by default, this is also ``'/usr/" "local'``. This can be set at build time with the ``--exec-prefix`` argument " "to the :program:`configure` script. Specifically, all configuration files " -"(e.g. the :file:`pyconfig.h` header file) are installed in the directory :" -"file:`{exec_prefix}/lib/python{X.Y}/config`, and shared library modules are " -"installed in :file:`{exec_prefix}/lib/python{X.Y}/lib-dynload`, where *X.Y* " -"is the version number of Python, for example ``3.2``." +"(e.g. the :file:`pyconfig.h` header file) are installed in the " +"directory :file:`{exec_prefix}/lib/python{X.Y}/config`, and shared library " +"modules are installed in :file:`{exec_prefix}/lib/python{X.Y}/lib-dynload`, " +"where *X.Y* is the version number of Python, for example ``3.2``." msgstr "" msgid "" -"If a :ref:`virtual environment ` is in effect, this :data:" -"`exec_prefix` will point to the virtual environment. The value for the " -"Python installation will still be available, via :data:`base_exec_prefix`. " -"Refer to :ref:`sys-path-init-virtual-environments` for more information." +"If a :ref:`virtual environment ` is in effect, " +"this :data:`exec_prefix` will point to the virtual environment. The value " +"for the Python installation will still be available, " +"via :data:`base_exec_prefix`. Refer to :ref:`sys-path-init-virtual-" +"environments` for more information." msgstr "" msgid "" @@ -585,17 +588,17 @@ msgid "" msgstr "" msgid "" -"Since :func:`exit` ultimately \"only\" raises an exception, it will only " -"exit the process when called from the main thread, and the exception is not " -"intercepted. Cleanup actions specified by :keyword:`finally` clauses of :" -"keyword:`try` statements are honored, and it is possible to intercept the " -"exit attempt at an outer level." +"Since :func:`~sys.exit` ultimately \"only\" raises an exception, it will " +"only exit the process when called from the main thread, and the exception is " +"not intercepted. Cleanup actions specified by :keyword:`finally` clauses " +"of :keyword:`try` statements are honored, and it is possible to intercept " +"the exit attempt at an outer level." msgstr "" msgid "" -"If an error occurs in the cleanup after the Python interpreter has caught :" -"exc:`SystemExit` (such as an error flushing buffered data in the standard " -"streams), the exit status is changed to 120." +"If an error occurs in the cleanup after the Python interpreter has " +"caught :exc:`SystemExit` (such as an error flushing buffered data in the " +"standard streams), the exit status is changed to 120." msgstr "" msgid "" @@ -661,13 +664,18 @@ msgid ":option:`-X gil <-X>` and :envvar:`PYTHON_GIL`" msgstr "" msgid "" -":option:`-X thread_inherit_context <-X>` and :envvar:" -"`PYTHON_THREAD_INHERIT_CONTEXT`" +":option:`-X thread_inherit_context <-X>` " +"and :envvar:`PYTHON_THREAD_INHERIT_CONTEXT`" msgstr "" msgid "" -":option:`-X context_aware_warnings <-X>` and :envvar:" -"`PYTHON_CONTEXT_AWARE_WARNINGS`" +":option:`-X context_aware_warnings <-X>` " +"and :envvar:`PYTHON_CONTEXT_AWARE_WARNINGS`" +msgstr "" + +msgid "" +":option:`-X lazy_imports <-X>` and :envvar:`PYTHON_LAZY_IMPORTS` (``1`` for " +"``all``, ``-1`` otherwise; not changed by :func:`set_lazy_imports`)" msgstr "" msgid "Added ``quiet`` attribute for the new :option:`-q` flag." @@ -708,6 +716,9 @@ msgstr "" msgid "Added the ``context_aware_warnings`` attribute." msgstr "" +msgid "Added the ``lazy_imports`` attribute." +msgstr "" + msgid "" "A :term:`named tuple` holding information about the float type. It contains " "low level information about the precision and internal representation. The " @@ -839,8 +850,8 @@ msgstr "" msgid "" "The attribute :attr:`sys.float_info.dig` needs further explanation. If " -"``s`` is any string representing a decimal number with at most :attr:`!sys." -"float_info.dig` significant digits, then converting ``s`` to a float and " +"``s`` is any string representing a decimal number with at most :attr:`!" +"sys.float_info.dig` significant digits, then converting ``s`` to a float and " "back again will recover a string representing the same decimal value::" msgstr "" @@ -877,9 +888,9 @@ msgid "" "Return the number of memory blocks currently allocated by the interpreter, " "regardless of their size. This function is mainly useful for tracking and " "debugging memory leaks. Because of the interpreter's internal caches, the " -"result can vary from call to call; you may have to call :func:" -"`_clear_internal_caches` and :func:`gc.collect` to get more predictable " -"results." +"result can vary from call to call; you may have to " +"call :func:`_clear_internal_caches` and :func:`gc.collect` to get more " +"predictable results." msgstr "" msgid "" @@ -911,8 +922,8 @@ msgid "" "Get the :term:`filesystem encoding `: " "the encoding used with the :term:`filesystem error handler ` to convert between Unicode filenames and bytes " -"filenames. The filesystem error handler is returned from :func:" -"`getfilesystemencodeerrors`." +"filenames. The filesystem error handler is returned " +"from :func:`getfilesystemencodeerrors`." msgstr "" msgid "" @@ -929,17 +940,17 @@ msgstr "" msgid "" "The :term:`filesystem encoding and error handler` are configured at Python " -"startup by the :c:func:`PyConfig_Read` function: see :c:member:`~PyConfig." -"filesystem_encoding` and :c:member:`~PyConfig.filesystem_errors` members of :" -"c:type:`PyConfig`." +"startup by the :c:func:`PyConfig_Read` function: " +"see :c:member:`~PyConfig.filesystem_encoding` " +"and :c:member:`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" msgid ":func:`getfilesystemencoding` result cannot be ``None`` anymore." msgstr "" msgid "" -"Windows is no longer guaranteed to return ``'mbcs'``. See :pep:`529` and :" -"func:`_enablelegacywindowsfsencoding` for more information." +"Windows is no longer guaranteed to return ``'mbcs'``. See :pep:`529` " +"and :func:`_enablelegacywindowsfsencoding` for more information." msgstr "" msgid "" @@ -950,8 +961,8 @@ msgid "" "Get the :term:`filesystem error handler `: the error handler used with the :term:`filesystem encoding " "` to convert between Unicode " -"filenames and bytes filenames. The filesystem encoding is returned from :" -"func:`getfilesystemencoding`." +"filenames and bytes filenames. The filesystem encoding is returned " +"from :func:`getfilesystemencoding`." msgstr "" msgid "" @@ -992,10 +1003,10 @@ msgstr "" msgid "" "Note that the returned value may not actually reflect how many references to " -"the object are actually held. For example, some objects are :term:" -"`immortal` and have a very high refcount that does not reflect the actual " -"number of references. Consequently, do not rely on the returned value to be " -"accurate, other than a value of 0 or 1." +"the object are actually held. For example, some objects " +"are :term:`immortal` and have a very high refcount that does not reflect the " +"actual number of references. Consequently, do not rely on the returned " +"value to be accurate, other than a value of 0 or 1." msgstr "" msgid "" @@ -1011,8 +1022,8 @@ msgstr "" msgid "" "Return the current value of the recursion limit, the maximum depth of the " "Python interpreter stack. This limit prevents infinite recursion from " -"causing an overflow of the C stack and crashing Python. It can be set by :" -"func:`setrecursionlimit`." +"causing an overflow of the C stack and crashing Python. It can be set " +"by :func:`setrecursionlimit`." msgstr "" msgid "" @@ -1045,8 +1056,8 @@ msgid "" msgstr "" msgid "" -"Return the interpreter's \"thread switch interval\" in seconds; see :func:" -"`setswitchinterval`." +"Return the interpreter's \"thread switch interval\" in seconds; " +"see :func:`setswitchinterval`." msgstr "" msgid "" @@ -1094,10 +1105,11 @@ msgstr "" msgid "" "Objects from the list are not safe to use. Specifically, the result will " "include objects from all interpreters that share their object allocator " -"state (that is, ones created with :c:member:`PyInterpreterConfig." -"use_main_obmalloc` set to 1 or using :c:func:`Py_NewInterpreter`, and the :" -"ref:`main interpreter `). Mixing objects from " -"different interpreters may lead to crashes or other unexpected behavior." +"state (that is, ones created " +"with :c:member:`PyInterpreterConfig.use_main_obmalloc` set to 1 or " +"using :c:func:`Py_NewInterpreter`, and the :ref:`main interpreter `). Mixing objects from different interpreters may lead " +"to crashes or other unexpected behavior." msgstr "" msgid "" @@ -1127,9 +1139,9 @@ msgid "" "*service_pack_minor*, *service_pack_major*, *suite_mask*, *product_type* and " "*platform_version*. *service_pack* contains a string, *platform_version* a 3-" "tuple and all other values are integers. The components can also be accessed " -"by name, so ``sys.getwindowsversion()[0]`` is equivalent to ``sys." -"getwindowsversion().major``. For compatibility with prior versions, only the " -"first 5 elements are retrievable by indexing." +"by name, so ``sys.getwindowsversion()[0]`` is equivalent to " +"``sys.getwindowsversion().major``. For compatibility with prior versions, " +"only the first 5 elements are retrievable by indexing." msgstr "" msgid "*platform* will be ``2`` (VER_PLATFORM_WIN32_NT)." @@ -1190,12 +1202,12 @@ msgid "Added *platform_version*" msgstr "" msgid "" -"Returns an *asyncgen_hooks* object, which is similar to a :class:" -"`~collections.namedtuple` of the form ``(firstiter, finalizer)``, where " -"*firstiter* and *finalizer* are expected to be either ``None`` or functions " -"which take an :term:`asynchronous generator iterator` as an argument, and " -"are used to schedule finalization of an asynchronous generator by an event " -"loop." +"Returns an *asyncgen_hooks* object, which is similar to " +"a :class:`~collections.namedtuple` of the form ``(firstiter, finalizer)``, " +"where *firstiter* and *finalizer* are expected to be either ``None`` or " +"functions which take an :term:`asynchronous generator iterator` as an " +"argument, and are used to schedule finalization of an asynchronous generator " +"by an event loop." msgstr "" msgid "See :pep:`525` for more details." @@ -1207,8 +1219,8 @@ msgid "" msgstr "" msgid "" -"Get the current coroutine origin tracking depth, as set by :func:" -"`set_coroutine_origin_tracking_depth`." +"Get the current coroutine origin tracking depth, as set " +"by :func:`set_coroutine_origin_tracking_depth`." msgstr "" msgid "" @@ -1301,8 +1313,8 @@ msgid "" msgstr "" msgid "" -"*hexversion* is the implementation version in hexadecimal format, like :data:" -"`sys.hexversion`." +"*hexversion* is the implementation version in hexadecimal format, " +"like :data:`sys.hexversion`." msgstr "" msgid "" @@ -1326,10 +1338,10 @@ msgstr "" msgid "" ":data:`sys.implementation` may contain additional attributes specific to the " "Python implementation. These non-standard attributes must start with an " -"underscore, and are not described here. Regardless of its contents, :data:" -"`sys.implementation` will not change during a run of the interpreter, nor " -"between implementation versions. (It may change between Python language " -"versions, however.) See :pep:`421` for more information." +"underscore, and are not described here. Regardless of its " +"contents, :data:`sys.implementation` will not change during a run of the " +"interpreter, nor between implementation versions. (It may change between " +"Python language versions, however.) See :pep:`421` for more information." msgstr "" msgid "Added ``supports_isolated_interpreters`` field." @@ -1359,13 +1371,14 @@ msgid "" msgstr "" msgid "" -"The minimum non-zero value for :func:`sys.set_int_max_str_digits`, :envvar:" -"`PYTHONINTMAXSTRDIGITS`, or :option:`-X int_max_str_digits <-X>`." +"The minimum non-zero value " +"for :func:`sys.set_int_max_str_digits`, :envvar:`PYTHONINTMAXSTRDIGITS`, " +"or :option:`-X int_max_str_digits <-X>`." msgstr "" msgid "" -"Added :attr:`~int_info.default_max_str_digits` and :attr:`~int_info." -"str_digits_check_threshold`." +"Added :attr:`~int_info.default_max_str_digits` " +"and :attr:`~int_info.str_digits_check_threshold`." msgstr "" msgid "" @@ -1417,8 +1430,8 @@ msgid "Utilities for observing just-in-time compilation." msgstr "" msgid "" -"JIT compilation is an *experimental implementation detail* of CPython. ``sys." -"_jit`` is not guaranteed to exist or behave the same way in all Python " +"JIT compilation is an *experimental implementation detail* of CPython. " +"``sys._jit`` is not guaranteed to exist or behave the same way in all Python " "implementations, versions, or build configurations." msgstr "" @@ -1432,9 +1445,9 @@ msgstr "" msgid "" "Return ``True`` if JIT compilation is enabled for the current Python process " "(implies :func:`sys._jit.is_available`), and ``False`` otherwise. If JIT " -"compilation is available, this can be controlled by setting the :envvar:" -"`PYTHON_JIT` environment variable to ``0`` (disabled) or ``1`` (enabled) at " -"interpreter startup." +"compilation is available, this can be controlled by setting " +"the :envvar:`PYTHON_JIT` environment variable to ``0`` (disabled) or ``1`` " +"(enabled) at interpreter startup." msgstr "" msgid "" @@ -1496,18 +1509,36 @@ msgstr "" msgid "" "These three variables are deprecated; use :data:`sys.last_exc` instead. They " -"hold the legacy representation of ``sys.last_exc``, as returned from :func:" -"`exc_info` above." +"hold the legacy representation of ``sys.last_exc``, as returned " +"from :func:`exc_info` above." msgstr "" msgid "" "A :class:`set` of fully qualified module name strings that have been lazily " -"imported in the current interpreter but not yet loaded. When a lazily " -"imported module is accessed for the first time, its name is removed from " -"this set." +"imported in the current interpreter but not yet loaded. When a lazily " +"imported module is accessed for the first time, its name is typically " +"removed from this set." +msgstr "" + +msgid "" +"The set may contain some additional strings. It is intended for debugging " +"and introspection, and consumers are expected to verify each entry's status." msgstr "" -msgid "This attribute is intended for debugging and introspection." +msgid "Currently, :data:`!lazy_modules` may also contain:" +msgstr "" + +msgid "" +"names of *attributes* (non-modules), such as ``\"pathlib.Path\"`` after " +"running ``lazy from pathlib import Path``, and" +msgstr "" + +msgid "names of items than have already been accessed." +msgstr "" + +msgid "" +"In future versions of Python, these may be removed, and/or additional extras " +"may be added." msgstr "" msgid "" @@ -1528,23 +1559,24 @@ msgid "" msgstr "" msgid "" -"A list of :term:`meta path finder` objects that have their :meth:`~importlib." -"abc.MetaPathFinder.find_spec` methods called to see if one of the objects " -"can find the module to be imported. By default, it holds entries that " -"implement Python's default import semantics. The :meth:`~importlib.abc." -"MetaPathFinder.find_spec` method is called with at least the absolute name " -"of the module being imported. If the module to be imported is contained in a " -"package, then the parent package's :attr:`~module.__path__` attribute is " -"passed in as a second argument. The method returns a :term:`module spec`, or " -"``None`` if the module cannot be found." +"A list of :term:`meta path finder` objects that have " +"their :meth:`~importlib.abc.MetaPathFinder.find_spec` methods called to see " +"if one of the objects can find the module to be imported. By default, it " +"holds entries that implement Python's default import semantics. " +"The :meth:`~importlib.abc.MetaPathFinder.find_spec` method is called with at " +"least the absolute name of the module being imported. If the module to be " +"imported is contained in a package, then the parent " +"package's :attr:`~module.__path__` attribute is passed in as a second " +"argument. The method returns a :term:`module spec`, or ``None`` if the " +"module cannot be found." msgstr "" msgid ":class:`importlib.abc.MetaPathFinder`" msgstr "" msgid "" -"The abstract base class defining the interface of finder objects on :data:" -"`meta_path`." +"The abstract base class defining the interface of finder objects " +"on :data:`meta_path`." msgstr "" msgid ":class:`importlib.machinery.ModuleSpec`" @@ -1556,14 +1588,14 @@ msgid "" msgstr "" msgid "" -":term:`Module specs ` were introduced in Python 3.4, by :pep:" -"`451`." +":term:`Module specs ` were introduced in Python 3.4, " +"by :pep:`451`." msgstr "" msgid "" -"Removed the fallback that looked for a :meth:`!find_module` method if a :" -"data:`meta_path` entry didn't have a :meth:`~importlib.abc.MetaPathFinder." -"find_spec` method." +"Removed the fallback that looked for a :meth:`!find_module` method if " +"a :data:`meta_path` entry didn't have " +"a :meth:`~importlib.abc.MetaPathFinder.find_spec` method." msgstr "" msgid "" @@ -1627,14 +1659,14 @@ msgid "" msgstr "" msgid "" -"Module :mod:`site` This describes how to use .pth files to extend :data:`sys." -"path`." +"Module :mod:`site` This describes how to use .pth files to " +"extend :data:`sys.path`." msgstr "" msgid "" -"A list of callables that take a path argument to try to create a :term:" -"`finder` for the path. If a finder can be created, it is to be returned by " -"the callable, else raise :exc:`ImportError`." +"A list of callables that take a path argument to try to create " +"a :term:`finder` for the path. If a finder can be created, it is to be " +"returned by the callable, else raise :exc:`ImportError`." msgstr "" msgid "Originally specified in :pep:`302`." @@ -1766,8 +1798,8 @@ msgstr "" msgid "" "It is equal to ``\"lib\"`` on most platforms. On Fedora and SuSE, it is " -"equal to ``\"lib64\"`` on 64-bit platforms which gives the following ``sys." -"path`` paths (where ``X.Y`` is the Python ``major.minor`` version):" +"equal to ``\"lib64\"`` on 64-bit platforms which gives the following " +"``sys.path`` paths (where ``X.Y`` is the Python ``major.minor`` version):" msgstr "" msgid "" @@ -1782,8 +1814,8 @@ msgid "" msgstr "" msgid "" -"``/usr/lib/pythonX.Y/site-packages/`` (always use ``lib``, not :data:`sys." -"platlibdir`): Third-party modules" +"``/usr/lib/pythonX.Y/site-packages/`` (always use ``lib``, " +"not :data:`sys.platlibdir`): Third-party modules" msgstr "" msgid "" @@ -1821,14 +1853,14 @@ msgid "" "enable a lazy resolving of symbols when importing a module, if called as " "``sys.setdlopenflags(0)``. To share symbols across extension modules, call " "as ``sys.setdlopenflags(os.RTLD_GLOBAL)``. Symbolic names for the flag " -"values can be found in the :mod:`os` module (:samp:`RTLD_{xxx}` constants, e." -"g. :const:`os.RTLD_LAZY`)." +"values can be found in the :mod:`os` module (:samp:`RTLD_{xxx}` constants, " +"e.g. :const:`os.RTLD_LAZY`)." msgstr "" msgid "" "Set the :ref:`integer string conversion length limitation " -"` used by this interpreter. See also :func:" -"`get_int_max_str_digits`." +"` used by this interpreter. See " +"also :func:`get_int_max_str_digits`." msgstr "" msgid "" @@ -1912,9 +1944,9 @@ msgid "" msgstr "" msgid "" -"The same tracing mechanism is used for :func:`!setprofile` as :func:" -"`settrace`. To trace calls with :func:`!setprofile` inside a tracing " -"function (e.g. in a debugger breakpoint), see :func:`call_tracing`." +"The same tracing mechanism is used for :func:`!setprofile` " +"as :func:`settrace`. To trace calls with :func:`!setprofile` inside a " +"tracing function (e.g. in a debugger breakpoint), see :func:`call_tracing`." msgstr "" msgid "" @@ -1983,8 +2015,8 @@ msgid "" msgstr "" msgid "" -"If the new limit is too low at the current recursion depth, a :exc:" -"`RecursionError` exception is raised." +"If the new limit is too low at the current recursion depth, " +"a :exc:`RecursionError` exception is raised." msgstr "" msgid "" @@ -2006,8 +2038,8 @@ msgid "" "Set the system's trace function, which allows you to implement a Python " "source code debugger in Python. The function is thread-specific; for a " "debugger to support multiple threads, it must register a trace function " -"using :func:`settrace` for each thread being debugged or use :func:" -"`threading.settrace`." +"using :func:`settrace` for each thread being debugged or " +"use :func:`threading.settrace`." msgstr "" msgid "" @@ -2051,10 +2083,11 @@ msgstr "" msgid "" "The interpreter is about to execute a new line of code or re-execute the " "condition of a loop. The local trace function is called; *arg* is ``None``; " -"the return value specifies the new local trace function. See :source:" -"`InternalDocs/code_objects.md` for a detailed explanation of how this works. " -"Per-line events may be disabled for a frame by setting :attr:`~frame." -"f_trace_lines` to :const:`False` on that :ref:`frame `." +"the return value specifies the new local trace function. " +"See :source:`InternalDocs/code_objects.md` for a detailed explanation of how " +"this works. Per-line events may be disabled for a frame by " +"setting :attr:`~frame.f_trace_lines` to :const:`False` on that :ref:`frame " +"`." msgstr "" msgid "" @@ -2080,9 +2113,9 @@ msgid "" "The interpreter is about to execute a new opcode (see :mod:`dis` for opcode " "details). The local trace function is called; *arg* is ``None``; the return " "value specifies the new local trace function. Per-opcode events are not " -"emitted by default: they must be explicitly requested by setting :attr:" -"`~frame.f_trace_opcodes` to :const:`True` on the :ref:`frame `." +"emitted by default: they must be explicitly requested by " +"setting :attr:`~frame.f_trace_opcodes` to :const:`True` on the :ref:`frame " +"`." msgstr "" msgid "" @@ -2096,11 +2129,11 @@ msgid "" "it being set indirectly via the return value from an already installed trace " "function. This is also required for activating the trace function on the " "current frame, which :func:`settrace` doesn't do. Note that in order for " -"this to work, a global tracing function must have been installed with :func:" -"`settrace` in order to enable the runtime tracing machinery, but it doesn't " -"need to be the same tracing function (e.g. it could be a low overhead " -"tracing function that simply returns ``None`` to disable itself immediately " -"on each frame)." +"this to work, a global tracing function must have been installed " +"with :func:`settrace` in order to enable the runtime tracing machinery, but " +"it doesn't need to be the same tracing function (e.g. it could be a low " +"overhead tracing function that simply returns ``None`` to disable itself " +"immediately on each frame)." msgstr "" msgid "For more information on code and frame objects, refer to :ref:`types`." @@ -2119,26 +2152,26 @@ msgid "" msgstr "" msgid "" -"``'opcode'`` event type added; :attr:`~frame.f_trace_lines` and :attr:" -"`~frame.f_trace_opcodes` attributes added to frames" +"``'opcode'`` event type added; :attr:`~frame.f_trace_lines` " +"and :attr:`~frame.f_trace_opcodes` attributes added to frames" msgstr "" msgid "" -"Accepts two optional keyword arguments which are callables that accept an :" -"term:`asynchronous generator iterator` as an argument. The *firstiter* " +"Accepts two optional keyword arguments which are callables that accept " +"an :term:`asynchronous generator iterator` as an argument. The *firstiter* " "callable will be called when an asynchronous generator is iterated for the " "first time. The *finalizer* will be called when an asynchronous generator is " "about to be garbage collected." msgstr "" msgid "" -"Raises an :ref:`auditing event ` ``sys." -"set_asyncgen_hooks_firstiter`` with no arguments." +"Raises an :ref:`auditing event ` " +"``sys.set_asyncgen_hooks_firstiter`` with no arguments." msgstr "" msgid "" -"Raises an :ref:`auditing event ` ``sys." -"set_asyncgen_hooks_finalizer`` with no arguments." +"Raises an :ref:`auditing event ` " +"``sys.set_asyncgen_hooks_finalizer`` with no arguments." msgstr "" msgid "" @@ -2148,8 +2181,8 @@ msgstr "" msgid "" "See :pep:`525` for more details, and for a reference example of a " -"*finalizer* method see the implementation of ``asyncio.Loop." -"shutdown_asyncgens`` in :source:`Lib/asyncio/base_events.py`" +"*finalizer* method see the implementation of " +"``asyncio.Loop.shutdown_asyncgens`` in :source:`Lib/asyncio/base_events.py`" msgstr "" msgid "" @@ -2220,8 +2253,8 @@ msgstr "" msgid "" "When the code is executed in the remote process, an :ref:`auditing event " "` ``sys.remote_exec`` is raised with the *pid* and the path to the " -"script file. This event is raised in the process that called :func:`sys." -"remote_exec`." +"script file. This event is raised in the process that " +"called :func:`sys.remote_exec`." msgstr "" msgid "" @@ -2245,8 +2278,8 @@ msgid "" msgstr "" msgid "" -"See also :func:`sys.getfilesystemencoding` and :func:`sys." -"getfilesystemencodeerrors`." +"See also :func:`sys.getfilesystemencoding` " +"and :func:`sys.getfilesystemencodeerrors`." msgstr "" msgid "" @@ -2267,8 +2300,8 @@ msgid "" msgstr "" msgid "" -"``stdin`` is used for all interactive input (including calls to :func:" -"`input`);" +"``stdin`` is used for all interactive input (including calls " +"to :func:`input`);" msgstr "" msgid "" @@ -2285,8 +2318,9 @@ msgid "" msgstr "" msgid "" -"The encoding and error handling are initialized from :c:member:`PyConfig." -"stdio_encoding` and :c:member:`PyConfig.stdio_errors`." +"The encoding and error handling are initialized " +"from :c:member:`PyConfig.stdio_encoding` " +"and :c:member:`PyConfig.stdio_errors`." msgstr "" msgid "" @@ -2306,19 +2340,20 @@ msgid "" msgstr "" msgid "" -"Under all platforms, you can override the character encoding by setting the :" -"envvar:`PYTHONIOENCODING` environment variable before starting Python or by " -"using the new :option:`-X` ``utf8`` command line option and :envvar:" -"`PYTHONUTF8` environment variable. However, for the Windows console, this " -"only applies when :envvar:`PYTHONLEGACYWINDOWSSTDIO` is also set." +"Under all platforms, you can override the character encoding by setting " +"the :envvar:`PYTHONIOENCODING` environment variable before starting Python " +"or by using the new :option:`-X` ``utf8`` command line option " +"and :envvar:`PYTHONUTF8` environment variable. However, for the Windows " +"console, this only applies when :envvar:`PYTHONLEGACYWINDOWSSTDIO` is also " +"set." msgstr "" msgid "" "When interactive, the ``stdout`` stream is line-buffered. Otherwise, it is " "block-buffered like regular text files. The ``stderr`` stream is line-" "buffered in both cases. You can make both streams unbuffered by passing " -"the :option:`-u` command-line option or setting the :envvar:" -"`PYTHONUNBUFFERED` environment variable." +"the :option:`-u` command-line option or setting " +"the :envvar:`PYTHONUNBUFFERED` environment variable." msgstr "" msgid "" @@ -2462,10 +2497,10 @@ msgstr "" msgid "" "The default hook formats :attr:`!err_msg` and :attr:`!object` as: " -"``f'{err_msg}: {object!r}'``; use \"Exception ignored in\" error message if :" -"attr:`!err_msg` is ``None``. Similar to the :mod:`traceback` module, this " -"adds color to exceptions by default. This can be disabled using :ref:" -"`environment variables `." +"``f'{err_msg}: {object!r}'``; use \"Exception ignored in\" error message " +"if :attr:`!err_msg` is ``None``. Similar to the :mod:`traceback` module, " +"this adds color to exceptions by default. This can be disabled " +"using :ref:`environment variables `." msgstr "" msgid "" @@ -2522,8 +2557,8 @@ msgid "" "*releaselevel* are integers; the release level is ``'alpha'``, ``'beta'``, " "``'candidate'``, or ``'final'``. The ``version_info`` value corresponding " "to the Python version 2.0 is ``(2, 0, 0, 'final', 0)``. The components can " -"also be accessed by name, so ``sys.version_info[0]`` is equivalent to ``sys." -"version_info.major`` and so on." +"also be accessed by name, so ``sys.version_info[0]`` is equivalent to " +"``sys.version_info.major`` and so on." msgstr "" msgid "Added named component attributes." diff --git a/library/sys_path_init.po b/library/sys_path_init.po index dfcbd3a..b7f5f99 100644 --- a/library/sys_path_init.po +++ b/library/sys_path_init.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,8 +29,8 @@ msgstr "" msgid "" "The first entry in the module search path is the directory that contains the " "input script, if there is one. Otherwise, the first entry is the current " -"directory, which is the case when executing the interactive shell, a :option:" -"`-c` command, or :option:`-m` module." +"directory, which is the case when executing the interactive shell, " +"a :option:`-c` command, or :option:`-m` module." msgstr "" msgid "" @@ -66,43 +66,44 @@ msgstr "" msgid "" "Once ``home`` is determined, the ``prefix`` directory is found by first " -"looking for :file:`python{majorversion}{minorversion}.zip` (``python311." -"zip``). On Windows the zip archive is searched for in ``home`` and on Unix " -"the archive is expected to be in :file:`lib`. Note that the expected zip " -"archive location is added to the module search path even if the archive does " -"not exist. If no archive was found, Python on Windows will continue the " -"search for ``prefix`` by looking for :file:`Lib\\\\os.py`. Python on Unix " -"will look for :file:`lib/python{majorversion}.{minorversion}/os.py` (``lib/" -"python3.11/os.py``). On Windows ``prefix`` and ``exec_prefix`` are the same, " -"however on other platforms :file:`lib/python{majorversion}.{minorversion}/" -"lib-dynload` (``lib/python3.11/lib-dynload``) is searched for and used as an " -"anchor for ``exec_prefix``. On some platforms :file:`lib` may be :file:" -"`lib64` or another value, see :data:`sys.platlibdir` and :envvar:" -"`PYTHONPLATLIBDIR`." +"looking for :file:`python{majorversion}{minorversion}.zip` " +"(``python311.zip``). On Windows the zip archive is searched for in ``home`` " +"and on Unix the archive is expected to be in :file:`lib`. Note that the " +"expected zip archive location is added to the module search path even if the " +"archive does not exist. If no archive was found, Python on Windows will " +"continue the search for ``prefix`` by looking for :file:`Lib\\\\os.py`. " +"Python on Unix will look for :file:`lib/python{majorversion}.{minorversion}/" +"os.py` (``lib/python3.11/os.py``). On Windows ``prefix`` and ``exec_prefix`` " +"are the same, however on other platforms :file:`lib/python{majorversion}." +"{minorversion}/lib-dynload` (``lib/python3.11/lib-dynload``) is searched for " +"and used as an anchor for ``exec_prefix``. On some platforms :file:`lib` may " +"be :file:`lib64` or another value, see :data:`sys.platlibdir` " +"and :envvar:`PYTHONPLATLIBDIR`." msgstr "" msgid "" -"Once found, ``prefix`` and ``exec_prefix`` are available at :data:`sys." -"base_prefix` and :data:`sys.base_exec_prefix` respectively." +"Once found, ``prefix`` and ``exec_prefix`` are available " +"at :data:`sys.base_prefix` and :data:`sys.base_exec_prefix` respectively." msgstr "" msgid "" "If :envvar:`PYTHONHOME` is not set, and a ``pyvenv.cfg`` file is found " -"alongside the main executable, or in its parent directory, :data:`sys." -"prefix` and :data:`sys.exec_prefix` get set to the directory containing " -"``pyvenv.cfg``, otherwise they are set to the same value as :data:`sys." -"base_prefix` and :data:`sys.base_exec_prefix`, respectively. This is used " -"by :ref:`sys-path-init-virtual-environments`." +"alongside the main executable, or in its parent " +"directory, :data:`sys.prefix` and :data:`sys.exec_prefix` get set to the " +"directory containing ``pyvenv.cfg``, otherwise they are set to the same " +"value as :data:`sys.base_prefix` and :data:`sys.base_exec_prefix`, " +"respectively. This is used by :ref:`sys-path-init-virtual-environments`." msgstr "" msgid "" "Finally, the :mod:`site` module is processed and :file:`site-packages` " -"directories are added to the module search path. The :envvar:" -"`PYTHONUSERBASE` environment variable controls where is searched for user " -"site-packages and the :envvar:`PYTHONNOUSERSITE` environment variable " -"prevents searching for user site-packages all together. A common way to " -"customize the search path is to create :mod:`sitecustomize` or :mod:" -"`usercustomize` modules as described in the :mod:`site` module documentation." +"directories are added to the module search path. " +"The :envvar:`PYTHONUSERBASE` environment variable controls where is searched " +"for user site-packages and the :envvar:`PYTHONNOUSERSITE` environment " +"variable prevents searching for user site-packages all together. A common " +"way to customize the search path is to create :mod:`sitecustomize` " +"or :mod:`usercustomize` modules as described in the :mod:`site` module " +"documentation." msgstr "" msgid "" @@ -112,9 +113,9 @@ msgid "" msgstr "" msgid "" -":data:`sys.prefix` and :data:`sys.exec_prefix` are now set to the ``pyvenv." -"cfg`` directory during the path initialization. This was previously done by :" -"mod:`site`, therefore affected by :option:`-S`." +":data:`sys.prefix` and :data:`sys.exec_prefix` are now set to the " +"``pyvenv.cfg`` directory during the path initialization. This was previously " +"done by :mod:`site`, therefore affected by :option:`-S`." msgstr "" msgid "Virtual Environments" @@ -132,9 +133,9 @@ msgid "" msgstr "" msgid "" -"As well as being used as a marker to identify virtual environments, ``pyvenv." -"cfg`` may also be used to configure the :mod:`site` initialization. Please " -"refer to :mod:`site`'s :ref:`virtual environments documentation `." msgstr "" @@ -179,10 +180,10 @@ msgid "Embedded Python" msgstr "" msgid "" -"If Python is embedded within another application :c:func:" -"`Py_InitializeFromConfig` and the :c:type:`PyConfig` structure can be used " -"to initialize Python. The path specific details are described at :ref:`init-" -"path-config`." +"If Python is embedded within another " +"application :c:func:`Py_InitializeFromConfig` and the :c:type:`PyConfig` " +"structure can be used to initialize Python. The path specific details are " +"described at :ref:`init-path-config`." msgstr "" msgid ":ref:`windows_finding_modules` for detailed Windows notes." diff --git a/library/sysconfig.po b/library/sysconfig.po index 7205fb4..bcf228e 100644 --- a/library/sysconfig.po +++ b/library/sysconfig.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,9 +92,9 @@ msgstr "" msgid "" "Python uses an installation scheme that differs depending on the platform " "and on the installation options. These schemes are stored in :mod:`!" -"sysconfig` under unique identifiers based on the value returned by :const:" -"`os.name`. The schemes are used by package installers to determine where to " -"copy files to." +"sysconfig` under unique identifiers based on the value returned " +"by :const:`os.name`. The schemes are used by package installers to determine " +"where to copy files to." msgstr "" msgid "Python currently supports nine schemes:" @@ -108,8 +112,8 @@ msgstr "" msgid "" "*posix_user*: scheme for POSIX platforms, when the *user* option is used. " -"This scheme defines paths located under the user's home directory (:const:" -"`site.USER_BASE`)." +"This scheme defines paths located under the user's home directory " +"(:const:`site.USER_BASE`)." msgstr "" msgid "" @@ -189,8 +193,8 @@ msgstr "" msgid "" "Files will be installed into subdirectories of :const:`site.USER_BASE` " "(written as :file:`{userbase}` hereafter). This scheme installs pure Python " -"modules and extension modules in the same location (also known as :const:" -"`site.USER_SITE`)." +"modules and extension modules in the same location (also known " +"as :const:`site.USER_SITE`)." msgstr "" msgid "``posix_user``" @@ -269,8 +273,8 @@ msgid "" "The idea behind the \"home scheme\" is that you build and maintain a " "personal stash of Python modules. This scheme's name is derived from the " "idea of a \"home\" directory on Unix, since it's not unusual for a Unix user " -"to make their home directory have a layout similar to :file:`/usr/` or :file:" -"`/usr/local/`. This scheme can be used by anyone, regardless of the " +"to make their home directory have a layout similar to :file:`/usr/` " +"or :file:`/usr/local/`. This scheme can be used by anyone, regardless of the " "operating system they are installing for." msgstr "" @@ -409,8 +413,8 @@ msgid "" msgstr "" msgid "" -"End users should not use this function, but :func:`get_default_scheme` and :" -"func:`get_preferred_scheme` instead." +"End users should not use this function, but :func:`get_default_scheme` " +"and :func:`get_preferred_scheme` instead." msgstr "" msgid "" @@ -440,9 +444,9 @@ msgid "" msgstr "" msgid "" -"If *scheme* is provided, it must be a value from the list returned by :func:" -"`get_scheme_names`. Otherwise, the default scheme for the current platform " -"is used." +"If *scheme* is provided, it must be a value from the list returned " +"by :func:`get_scheme_names`. Otherwise, the default scheme for the current " +"platform is used." msgstr "" msgid "" @@ -477,8 +481,8 @@ msgid "If *expand* is set to false, the paths will not be expanded." msgstr "" msgid "" -"If *scheme* is not an existing scheme, :func:`get_paths` will raise a :exc:" -"`KeyError`." +"If *scheme* is not an existing scheme, :func:`get_paths` will raise " +"a :exc:`KeyError`." msgstr "" msgid "Other functions" @@ -596,9 +600,9 @@ msgid "" msgstr "" msgid "" -"This call will print in the standard output the information returned by :" -"func:`get_platform`, :func:`get_python_version`, :func:`get_path` and :func:" -"`get_config_vars`." +"This call will print in the standard output the information returned " +"by :func:`get_platform`, :func:`get_python_version`, :func:`get_path` " +"and :func:`get_config_vars`." msgstr "" msgid "configuration information" diff --git a/library/syslog.po b/library/syslog.po index f99b133..c39d6f0 100644 --- a/library/syslog.po +++ b/library/syslog.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,8 +36,9 @@ msgstr "" msgid "" "This module wraps the system ``syslog`` family of routines. A pure Python " -"library that can speak to a syslog server is available in the :mod:`logging." -"handlers` module as :class:`~logging.handlers.SysLogHandler`." +"library that can speak to a syslog server is available in " +"the :mod:`logging.handlers` module " +"as :class:`~logging.handlers.SysLogHandler`." msgstr "" msgid "The module defines the following functions:" @@ -53,8 +54,8 @@ msgid "" msgstr "" msgid "" -"If :func:`openlog` has not been called prior to the call to :func:`syslog`, :" -"func:`openlog` will be called with no arguments." +"If :func:`openlog` has not been called prior to the call " +"to :func:`~syslog.syslog`, :func:`openlog` will be called with no arguments." msgstr "" msgid "" @@ -64,22 +65,22 @@ msgstr "" msgid "" "In previous versions, :func:`openlog` would not be called automatically if " -"it wasn't called prior to the call to :func:`syslog`, deferring to the " -"syslog implementation to call ``openlog()``." +"it wasn't called prior to the call to :func:`~syslog.syslog`, deferring to " +"the syslog implementation to call ``openlog()``." msgstr "" msgid "" "This function is restricted in subinterpreters. (Only code that runs in " "multiple interpreters is affected and the restriction is not relevant for " -"most users.) :func:`openlog` must be called in the main interpreter before :" -"func:`syslog` may be used in a subinterpreter. Otherwise it will raise :exc:" -"`RuntimeError`." +"most users.) :func:`openlog` must be called in the main interpreter " +"before :func:`~syslog.syslog` may be used in a subinterpreter. Otherwise it " +"will raise :exc:`RuntimeError`." msgstr "" msgid "" -"Logging options of subsequent :func:`syslog` calls can be set by calling :" -"func:`openlog`. :func:`syslog` will call :func:`openlog` with no arguments " -"if the log is not currently open." +"Logging options of subsequent :func:`~syslog.syslog` calls can be set by " +"calling :func:`openlog`. :func:`~syslog.syslog` will call :func:`openlog` " +"with no arguments if the log is not currently open." msgstr "" msgid "" @@ -104,8 +105,8 @@ msgstr "" msgid "" "This function is restricted in subinterpreters. (Only code that runs in " "multiple interpreters is affected and the restriction is not relevant for " -"most users.) This may only be called in the main interpreter. It will raise :" -"exc:`RuntimeError` if called in a subinterpreter." +"most users.) This may only be called in the main interpreter. It will " +"raise :exc:`RuntimeError` if called in a subinterpreter." msgstr "" msgid "" @@ -114,9 +115,9 @@ msgstr "" msgid "" "This causes the module to behave as it does when initially imported. For " -"example, :func:`openlog` will be called on the first :func:`syslog` call " -"(if :func:`openlog` hasn't already been called), and *ident* and other :func:" -"`openlog` parameters are reset to defaults." +"example, :func:`openlog` will be called on the first :func:`~syslog.syslog` " +"call (if :func:`openlog` hasn't already been called), and *ident* and " +"other :func:`openlog` parameters are reset to defaults." msgstr "" msgid "" @@ -126,8 +127,8 @@ msgstr "" msgid "" "Set the priority mask to *maskpri* and return the previous mask value. " -"Calls to :func:`syslog` with a priority level not set in *maskpri* are " -"ignored. The default is to log all priorities. The function " +"Calls to :func:`~syslog.syslog` with a priority level not set in *maskpri* " +"are ignored. The default is to log all priorities. The function " "``LOG_MASK(pri)`` calculates the mask for the individual priority *pri*. " "The function ``LOG_UPTO(pri)`` calculates the mask for all priorities up to " "and including *pri*." @@ -145,19 +146,19 @@ msgid "Priority levels (high to low)." msgstr "" msgid "" -"Facilities, depending on availability in ```` for :const:" -"`LOG_AUTHPRIV`, :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:" -"`LOG_REMOTEAUTH`, :const:`LOG_INSTALL` and :const:`LOG_RAS`." +"Facilities, depending on availability in ```` " +"for :const:`LOG_AUTHPRIV`, :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:`LOG_REMOTEAUTH`, :const:`LOG_INSTALL` " +"and :const:`LOG_RAS`." msgstr "" msgid "" -"Added :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:`LOG_REMOTEAUTH`, :" -"const:`LOG_INSTALL`, :const:`LOG_RAS`, and :const:`LOG_LAUNCHD`." +"Added :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:`LOG_REMOTEAUTH`, :const:`LOG_INSTALL`, :const:`LOG_RAS`, " +"and :const:`LOG_LAUNCHD`." msgstr "" msgid "" -"Log options, depending on availability in ```` for :const:" -"`LOG_ODELAY`, :const:`LOG_NOWAIT` and :const:`LOG_PERROR`." +"Log options, depending on availability in ```` " +"for :const:`LOG_ODELAY`, :const:`LOG_NOWAIT` and :const:`LOG_PERROR`." msgstr "" msgid "Examples" diff --git a/library/tabnanny.po b/library/tabnanny.po index 9d942b3..195595b 100644 --- a/library/tabnanny.po +++ b/library/tabnanny.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -60,8 +64,8 @@ msgid "" msgstr "" msgid "" -"This function is used by :func:`check` to process tokens generated by the :" -"mod:`tokenize` module." +"This function is used by :func:`check` to process tokens generated by " +"the :mod:`tokenize` module." msgstr "" msgid "Module :mod:`tokenize`" diff --git a/library/tarfile.po b/library/tarfile.po index 0805729..d087d6e 100644 --- a/library/tarfile.po +++ b/library/tarfile.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,15 +39,15 @@ msgid "Some facts and figures:" msgstr "" msgid "" -"reads and writes :mod:`gzip`, :mod:`bz2`, :mod:`compression.zstd`, and :mod:" -"`lzma` compressed archives if the respective modules are available." +"reads and writes :mod:`gzip`, :mod:`bz2`, :mod:`compression.zstd`, " +"and :mod:`lzma` compressed archives if the respective modules are available." msgstr "" msgid "" "If any of these :term:`optional modules ` are missing from " "your copy of CPython, look for documentation from your distributor (that is, " -"whoever provided Python to you). If you are the distributor, see :ref:" -"`optional-module-requirements`." +"whoever provided Python to you). If you are the distributor, " +"see :ref:`optional-module-requirements`." msgstr "" msgid "read/write support for the POSIX.1-1988 (ustar) format." @@ -140,8 +144,8 @@ msgid "``'x'`` or ``'x:'``" msgstr "" msgid "" -"Create a tarfile exclusively without compression. Raise a :exc:" -"`FileExistsError` exception if it already exists." +"Create a tarfile exclusively without compression. Raise " +"a :exc:`FileExistsError` exception if it already exists." msgstr "" msgid "``'x:gz'``" @@ -216,9 +220,9 @@ msgstr "" msgid "" "Note that ``'a:gz'``, ``'a:bz2'`` or ``'a:xz'`` is not possible. If *mode* " -"is not suitable to open a certain (compressed) file for reading, :exc:" -"`ReadError` is raised. Use *mode* ``'r'`` to avoid this. If a compression " -"method is not supported, :exc:`CompressionError` is raised." +"is not suitable to open a certain (compressed) file for " +"reading, :exc:`ReadError` is raised. Use *mode* ``'r'`` to avoid this. If a " +"compression method is not supported, :exc:`CompressionError` is raised." msgstr "" msgid "" @@ -242,10 +246,11 @@ msgid "" "For modes ``'w:zst'``, ``'x:zst'`` and ``'w|zst'``, :func:`tarfile.open` " "accepts the keyword argument *level* to specify the compression level of the " "file. The keyword argument *options* may also be passed, providing advanced " -"Zstandard compression parameters described by :class:`~compression.zstd." -"CompressionParameter`. The keyword argument *zstd_dict* can be passed to " -"provide a :class:`~compression.zstd.ZstdDict`, a Zstandard dictionary used " -"to improve compression of smaller amounts of data." +"Zstandard compression parameters described " +"by :class:`~compression.zstd.CompressionParameter`. The keyword argument " +"*zstd_dict* can be passed to provide a :class:`~compression.zstd.ZstdDict`, " +"a Zstandard dictionary used to improve compression of smaller amounts of " +"data." msgstr "" msgid "" @@ -260,13 +265,14 @@ msgid "" "For special purposes, there is a second format for *mode*: ``'filemode|" "[compression]'``. :func:`tarfile.open` will return a :class:`TarFile` " "object that processes its data as a stream of blocks. No random seeking " -"will be done on the file. If given, *fileobj* may be any object that has a :" -"meth:`~io.RawIOBase.read` or :meth:`~io.RawIOBase.write` method (depending " -"on the *mode*) that works with bytes. *bufsize* specifies the blocksize and " -"defaults to ``20 * 512`` bytes. Use this variant in combination with e.g. " -"``sys.stdin.buffer``, a socket :term:`file object` or a tape device. " -"However, such a :class:`TarFile` object is limited in that it does not allow " -"random access, see :ref:`tar-examples`. The currently possible modes:" +"will be done on the file. If given, *fileobj* may be any object that has " +"a :meth:`~io.RawIOBase.read` or :meth:`~io.RawIOBase.write` method " +"(depending on the *mode*) that works with bytes. *bufsize* specifies the " +"blocksize and defaults to ``20 * 512`` bytes. Use this variant in " +"combination with e.g. ``sys.stdin.buffer``, a socket :term:`file object` or " +"a tape device. However, such a :class:`TarFile` object is limited in that it " +"does not allow random access, see :ref:`tar-examples`. The currently " +"possible modes:" msgstr "" msgid "Mode" @@ -390,8 +396,8 @@ msgid "" msgstr "" msgid "" -"Is raised for the limitations that are typical for stream-like :class:" -"`TarFile` objects." +"Is raised for the limitations that are typical for stream-" +"like :class:`TarFile` objects." msgstr "" msgid "" @@ -407,8 +413,8 @@ msgid "" msgstr "" msgid "" -"Information about the member that the filter refused to extract, as :ref:" -"`TarInfo `." +"Information about the member that the filter refused to extract, " +"as :ref:`TarInfo `." msgstr "" msgid "Raised to refuse extracting a member with an absolute path." @@ -492,13 +498,13 @@ msgid "POSIX.1-2001 (pax) format." msgstr "" msgid "" -"The default format for creating archives. This is currently :const:" -"`PAX_FORMAT`." +"The default format for creating archives. This is " +"currently :const:`PAX_FORMAT`." msgstr "" msgid "" -"The default format for new archives was changed to :const:`PAX_FORMAT` from :" -"const:`GNU_FORMAT`." +"The default format for new archives was changed to :const:`PAX_FORMAT` " +"from :const:`GNU_FORMAT`." msgstr "" msgid "Module :mod:`zipfile`" @@ -530,16 +536,16 @@ msgid "" "The :class:`TarFile` object provides an interface to a tar archive. A tar " "archive is a sequence of blocks. An archive member (a stored file) is made " "up of a header block followed by data blocks. It is possible to store a file " -"in a tar archive several times. Each archive member is represented by a :" -"class:`TarInfo` object, see :ref:`tarinfo-objects` for details." +"in a tar archive several times. Each archive member is represented by " +"a :class:`TarInfo` object, see :ref:`tarinfo-objects` for details." msgstr "" msgid "" -"A :class:`TarFile` object can be used as a context manager in a :keyword:" -"`with` statement. It will automatically be closed when the block is " -"completed. Please note that in the event of an exception an archive opened " -"for writing will not be finalized; only the internally used file object will " -"be closed. See the :ref:`tar-examples` section for a use case." +"A :class:`TarFile` object can be used as a context manager in " +"a :keyword:`with` statement. It will automatically be closed when the block " +"is completed. Please note that in the event of an exception an archive " +"opened for writing will not be finalized; only the internally used file " +"object will be closed. See the :ref:`tar-examples` section for a use case." msgstr "" msgid "Added support for the context management protocol." @@ -610,8 +616,8 @@ msgstr "" msgid "" "The *encoding* and *errors* arguments define the character encoding to be " "used for reading or writing the archive and how conversion errors are going " -"to be handled. The default settings will work for most users. See section :" -"ref:`tar-unicode` for in-depth information." +"to be handled. The default settings will work for most users. See " +"section :ref:`tar-unicode` for in-depth information." msgstr "" msgid "" @@ -666,9 +672,9 @@ msgid "Added the *members* parameter." msgstr "" msgid "" -"Return the next member of the archive as a :class:`TarInfo` object, when :" -"class:`TarFile` is opened for reading. Return :const:`None` if there is no " -"more available." +"Return the next member of the archive as a :class:`TarInfo` object, " +"when :class:`TarFile` is opened for reading. Return :const:`None` if there " +"is no more available." msgstr "" msgid "" @@ -727,8 +733,8 @@ msgid "" msgstr "" msgid "" -"The *numeric_owner* and *filter* arguments are the same as for :meth:" -"`extractall`." +"The *numeric_owner* and *filter* arguments are the same as " +"for :meth:`extractall`." msgstr "" msgid "" @@ -761,12 +767,12 @@ msgid "" msgstr "" msgid "" -"If *errorlevel* is ``0``, errors are ignored when using :meth:`TarFile." -"extract` and :meth:`TarFile.extractall`. Nevertheless, they appear as error " -"messages in the debug output when *debug* is greater than 0. If ``1`` (the " -"default), all *fatal* errors are raised as :exc:`OSError` or :exc:" -"`FilterError` exceptions. If ``2``, all *non-fatal* errors are raised as :" -"exc:`TarError` exceptions as well." +"If *errorlevel* is ``0``, errors are ignored when " +"using :meth:`TarFile.extract` and :meth:`TarFile.extractall`. Nevertheless, " +"they appear as error messages in the debug output when *debug* is greater " +"than 0. If ``1`` (the default), all *fatal* errors are raised " +"as :exc:`OSError` or :exc:`FilterError` exceptions. If ``2``, all *non-" +"fatal* errors are raised as :exc:`TarError` exceptions as well." msgstr "" msgid "" @@ -775,9 +781,9 @@ msgid "" msgstr "" msgid "" -"Custom :ref:`extraction filters ` should raise :" -"exc:`FilterError` for *fatal* errors and :exc:`ExtractError` for *non-fatal* " -"ones." +"Custom :ref:`extraction filters ` should " +"raise :exc:`FilterError` for *fatal* errors and :exc:`ExtractError` for *non-" +"fatal* ones." msgstr "" msgid "" @@ -787,8 +793,8 @@ msgstr "" msgid "" "The :ref:`extraction filter ` used as a default " -"for the *filter* argument of :meth:`~TarFile.extract` and :meth:`~TarFile." -"extractall`." +"for the *filter* argument of :meth:`~TarFile.extract` " +"and :meth:`~TarFile.extractall`." msgstr "" msgid "" @@ -813,20 +819,20 @@ msgstr "" msgid "" "The default filter is set to :func:`data `, which disallows " "some dangerous features such as links to absolute paths or paths outside of " -"the destination. Previously, the default was equivalent to :func:" -"`fully_trusted `." +"the destination. Previously, the default was equivalent " +"to :func:`fully_trusted `." msgstr "" msgid "" "Add the file *name* to the archive. *name* may be any type of file " "(directory, fifo, symbolic link, etc.). If given, *arcname* specifies an " "alternative name for the file in the archive. Directories are added " -"recursively by default. This can be avoided by setting *recursive* to :const:" -"`False`. Recursion adds entries in sorted order. If *filter* is given, it " -"should be a function that takes a :class:`TarInfo` object argument and " -"returns the changed :class:`TarInfo` object. If it instead returns :const:" -"`None` the :class:`TarInfo` object will be excluded from the archive. See :" -"ref:`tar-examples` for an example." +"recursively by default. This can be avoided by setting *recursive* " +"to :const:`False`. Recursion adds entries in sorted order. If *filter* is " +"given, it should be a function that takes a :class:`TarInfo` object argument " +"and returns the changed :class:`TarInfo` object. If it instead " +"returns :const:`None` the :class:`TarInfo` object will be excluded from the " +"archive. See :ref:`tar-examples` for an example." msgstr "" msgid "Recursion adds entries in sorted order." @@ -834,10 +840,10 @@ msgstr "" msgid "" "Add the :class:`TarInfo` object *tarinfo* to the archive. If *tarinfo* " -"represents a non zero-size regular file, the *fileobj* argument should be a :" -"term:`binary file`, and ``tarinfo.size`` bytes are read from it and added to " -"the archive. You can create :class:`TarInfo` objects directly, or by using :" -"meth:`gettarinfo`." +"represents a non zero-size regular file, the *fileobj* argument should be " +"a :term:`binary file`, and ``tarinfo.size`` bytes are read from it and added " +"to the archive. You can create :class:`TarInfo` objects directly, or by " +"using :meth:`gettarinfo`." msgstr "" msgid "*fileobj* must be given for non-zero-sized regular files." @@ -856,10 +862,10 @@ msgstr "" msgid "" "You can modify some of the :class:`TarInfo`’s attributes before you add it " "using :meth:`addfile`. If the file object is not an ordinary file object " -"positioned at the beginning of the file, attributes such as :attr:`~TarInfo." -"size` may need modifying. This is the case for objects such as :class:" -"`~gzip.GzipFile`. The :attr:`~TarInfo.name` may also be modified, in which " -"case *arcname* could be a dummy string." +"positioned at the beginning of the file, attributes such " +"as :attr:`~TarInfo.size` may need modifying. This is the case for objects " +"such as :class:`~gzip.GzipFile`. The :attr:`~TarInfo.name` may also be " +"modified, in which case *arcname* could be a dummy string." msgstr "" msgid "" @@ -881,17 +887,17 @@ msgid "" msgstr "" msgid "" -":class:`TarInfo` objects are returned by :class:`TarFile`'s methods :meth:" -"`~TarFile.getmember`, :meth:`~TarFile.getmembers` and :meth:`~TarFile." -"gettarinfo`." +":class:`TarInfo` objects are returned by :class:`TarFile`'s " +"methods :meth:`~TarFile.getmember`, :meth:`~TarFile.getmembers` " +"and :meth:`~TarFile.gettarinfo`." msgstr "" msgid "" -"Modifying the objects returned by :meth:`~TarFile.getmember` or :meth:" -"`~TarFile.getmembers` will affect all subsequent operations on the archive. " -"For cases where this is unwanted, you can use :mod:`copy.copy() ` or " -"call the :meth:`~TarInfo.replace` method to create a modified copy in one " -"step." +"Modifying the objects returned by :meth:`~TarFile.getmember` " +"or :meth:`~TarFile.getmembers` will affect all subsequent operations on the " +"archive. For cases where this is unwanted, you can use :mod:`copy.copy() " +"` or call the :meth:`~TarInfo.replace` method to create a modified " +"copy in one step." msgstr "" msgid "" @@ -940,24 +946,24 @@ msgid "Size in bytes." msgstr "" msgid "" -"Time of last modification in seconds since the :ref:`epoch `, as in :" -"attr:`os.stat_result.st_mtime`." +"Time of last modification in seconds since the :ref:`epoch `, as " +"in :attr:`os.stat_result.st_mtime`." msgstr "" msgid "" -"Can be set to ``None`` for :meth:`~TarFile.extract` and :meth:`~TarFile." -"extractall`, causing extraction to skip applying this attribute." +"Can be set to ``None`` for :meth:`~TarFile.extract` " +"and :meth:`~TarFile.extractall`, causing extraction to skip applying this " +"attribute." msgstr "" msgid "Permission bits, as for :func:`os.chmod`." msgstr "" msgid "" -"File type. *type* is usually one of these constants: :const:`REGTYPE`, :" -"const:`AREGTYPE`, :const:`LNKTYPE`, :const:`SYMTYPE`, :const:`DIRTYPE`, :" -"const:`FIFOTYPE`, :const:`CONTTYPE`, :const:`CHRTYPE`, :const:`BLKTYPE`, :" -"const:`GNUTYPE_SPARSE`. To determine the type of a :class:`TarInfo` object " -"more conveniently, use the ``is*()`` methods below." +"File type. *type* is usually one of these " +"constants: :const:`REGTYPE`, :const:`AREGTYPE`, :const:`LNKTYPE`, :const:`SYMTYPE`, :const:`DIRTYPE`, :const:`FIFOTYPE`, :const:`CONTTYPE`, :const:`CHRTYPE`, :const:`BLKTYPE`, :const:`GNUTYPE_SPARSE`. " +"To determine the type of a :class:`TarInfo` object more conveniently, use " +"the ``is*()`` methods below." msgstr "" msgid "" @@ -1015,8 +1021,8 @@ msgid "new_tarinfo = old_tarinfo.replace(gname='staff')" msgstr "" msgid "" -"By default, a deep copy is made. If *deep* is false, the copy is shallow, i." -"e. ``pax_headers`` and any custom attributes are shared with the original " +"By default, a deep copy is made. If *deep* is false, the copy is shallow, " +"i.e. ``pax_headers`` and any custom attributes are shared with the original " "``TarInfo`` object." msgstr "" @@ -1071,8 +1077,8 @@ msgstr "" msgid "" "None of the available filters blocks *all* dangerous archive features. Never " -"extract archives from untrusted sources without prior inspection. See also :" -"ref:`tarfile-further-verification`." +"extract archives from untrusted sources without prior inspection. See " +"also :ref:`tarfile-further-verification`." msgstr "" msgid ":pep:`706`" @@ -1082,8 +1088,8 @@ msgid "Contains further motivation and rationale behind the design." msgstr "" msgid "" -"The *filter* argument to :meth:`TarFile.extract` or :meth:`~TarFile." -"extractall` can be:" +"The *filter* argument to :meth:`TarFile.extract` " +"or :meth:`~TarFile.extractall` can be:" msgstr "" msgid "" @@ -1100,8 +1106,8 @@ msgstr "" msgid "" "the string ``'data'``: Ignore or block most features specific to UNIX-like " -"filesystems. Intended for extracting cross-platform data archives. See :func:" -"`data_filter` for details." +"filesystems. Intended for extracting cross-platform data archives. " +"See :func:`data_filter` for details." msgstr "" msgid "``None`` (default): Use :attr:`TarFile.extraction_filter`." @@ -1117,9 +1123,9 @@ msgid "" msgstr "" msgid "" -"A callable which will be called for each extracted member with a :ref:" -"`TarInfo ` describing the member and the destination path " -"to where the archive is extracted (i.e. the same path is used for all " +"A callable which will be called for each extracted member with " +"a :ref:`TarInfo ` describing the member and the destination " +"path to where the archive is extracted (i.e. the same path is used for all " "members)::" msgstr "" @@ -1140,10 +1146,10 @@ msgid "return ``None``, in which case the member will be skipped, or" msgstr "" msgid "" -"raise an exception to abort the operation or skip the member, depending on :" -"attr:`~TarFile.errorlevel`. Note that when extraction is aborted, :meth:" -"`~TarFile.extractall` may leave the archive partially extracted. It does not " -"attempt to clean up." +"raise an exception to abort the operation or skip the member, depending " +"on :attr:`~TarFile.errorlevel`. Note that when extraction is " +"aborted, :meth:`~TarFile.extractall` may leave the archive partially " +"extracted. It does not attempt to clean up." msgstr "" msgid "Default named filters" @@ -1172,6 +1178,13 @@ msgid "" "foo`` on Windows). This raises :class:`~tarfile.AbsolutePathError`." msgstr "" +msgid "" +"Normalize filenames (:attr:`TarInfo.name`) that contain ``..`` components " +"using :func:`os.path.normpath`. Note that this removes internal ``..`` " +"components, which may change the meaning of the name if it traverses " +"symbolic links." +msgstr "" + msgid "" ":ref:`Refuse ` to extract files whose absolute " "path (after following symlinks) would end up outside the destination. This " @@ -1179,22 +1192,32 @@ msgid "" msgstr "" msgid "" -"Clear high mode bits (setuid, setgid, sticky) and group/other write bits (:" -"const:`~stat.S_IWGRP` | :const:`~stat.S_IWOTH`)." +":ref:`Refuse ` to extract links (hard or soft) " +"whose name refers to the destination directory itself. This " +"raises :class:`~tarfile.OutsideDestinationError`. Note that such files are " +"refused even on platforms that do not support symbolic links." +msgstr "" + +msgid "" +"Clear high mode bits (setuid, setgid, sticky) and group/other write bits " +"(:const:`~stat.S_IWGRP` | :const:`~stat.S_IWOTH`)." msgstr "" msgid "Return the modified ``TarInfo`` member." msgstr "" +msgid "Filenames containing ``..`` components are now normalized." +msgstr "" + msgid "" "Implements the ``'data'`` filter. In addition to what ``tar_filter`` does:" msgstr "" msgid "" -"Normalize link targets (:attr:`TarInfo.linkname`) using :func:`os.path." -"normpath`. Note that this removes internal ``..`` components, which may " -"change the meaning of the link if the path in :attr:`!TarInfo.linkname` " -"traverses symbolic links." +"Normalize link targets (:attr:`TarInfo.linkname`) " +"using :func:`os.path.normpath`. Note that this removes internal ``..`` " +"components, which may change the meaning of the link if the path in :attr:`!" +"TarInfo.linkname` traverses symbolic links." msgstr "" msgid "" @@ -1203,8 +1226,8 @@ msgid "" msgstr "" msgid "" -"This raises :class:`~tarfile.AbsoluteLinkError` or :class:`~tarfile." -"LinkOutsideDestinationError`." +"This raises :class:`~tarfile.AbsoluteLinkError` " +"or :class:`~tarfile.LinkOutsideDestinationError`." msgstr "" msgid "" @@ -1221,13 +1244,14 @@ msgid "For regular files, including hard links:" msgstr "" msgid "" -"Set the owner read and write permissions (:const:`~stat.S_IRUSR` | :const:" -"`~stat.S_IWUSR`)." +"Set the owner read and write permissions (:const:`~stat.S_IRUSR` " +"| :const:`~stat.S_IWUSR`)." msgstr "" msgid "" -"Remove the group & other executable permission (:const:`~stat.S_IXGRP` | :" -"const:`~stat.S_IXOTH`) if the owner doesn’t have it (:const:`~stat.S_IXUSR`)." +"Remove the group & other executable permission (:const:`~stat.S_IXGRP` " +"| :const:`~stat.S_IXOTH`) if the owner doesn’t have it " +"(:const:`~stat.S_IXUSR`)." msgstr "" msgid "" @@ -1241,8 +1265,8 @@ msgid "" msgstr "" msgid "" -"Note that this filter does not block *all* dangerous archive features. See :" -"ref:`tarfile-further-verification` for details." +"Note that this filter does not block *all* dangerous archive features. " +"See :ref:`tarfile-further-verification` for details." msgstr "" msgid "Link targets are now normalized." @@ -1273,9 +1297,9 @@ msgid "Here is an incomplete list of things to consider:" msgstr "" msgid "" -"Extract to a :func:`new temporary directory ` to prevent e." -"g. exploiting pre-existing links, and to make it easier to clean up after a " -"failed extraction." +"Extract to a :func:`new temporary directory ` to prevent " +"e.g. exploiting pre-existing links, and to make it easier to clean up after " +"a failed extraction." msgstr "" msgid "Disallow symbolic links if you do not need the functionality." @@ -1423,8 +1447,9 @@ msgid "" msgstr "" msgid "" -"If you want to create a new tar archive, specify its name after the :option:" -"`-c` option and then list the filename(s) that should be included:" +"If you want to create a new tar archive, specify its name after " +"the :option:`-c` option and then list the filename(s) that should be " +"included:" msgstr "" msgid "$ python -m tarfile -c monty.tar spam.txt eggs.txt" @@ -1437,8 +1462,8 @@ msgid "$ python -m tarfile -c monty.tar life-of-brian_1979/" msgstr "" msgid "" -"If you want to extract a tar archive into the current directory, use the :" -"option:`-e` option:" +"If you want to extract a tar archive into the current directory, use " +"the :option:`-e` option:" msgstr "" msgid "$ python -m tarfile -e monty.tar" diff --git a/library/telnetlib.po b/library/telnetlib.po index c2744fd..9bf9eaa 100644 --- a/library/telnetlib.po +++ b/library/telnetlib.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,15 +27,15 @@ msgid ":mod:`!telnetlib` --- Telnet client" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" -"Possible replacements are third-party libraries from PyPI: :pypi:" -"`telnetlib3` or :pypi:`Exscript`. These are not supported or maintained by " -"the Python core team." +"Possible replacements are third-party libraries from " +"PyPI: :pypi:`telnetlib3` or :pypi:`Exscript`. These are not supported or " +"maintained by the Python core team." msgstr "" msgid "" diff --git a/library/tempfile.po b/library/tempfile.po index 0398f2b..d367c56 100644 --- a/library/tempfile.po +++ b/library/tempfile.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,11 +30,12 @@ msgstr "" msgid "" "This module creates temporary files and directories. It works on all " -"supported platforms. :class:`TemporaryFile`, :class:`NamedTemporaryFile`, :" -"class:`TemporaryDirectory`, and :class:`SpooledTemporaryFile` are high-level " -"interfaces which provide automatic cleanup and can be used as :term:`context " -"managers `. :func:`mkstemp` and :func:`mkdtemp` are lower-" -"level functions which require manual cleanup." +"supported " +"platforms. :class:`TemporaryFile`, :class:`NamedTemporaryFile`, :class:`TemporaryDirectory`, " +"and :class:`SpooledTemporaryFile` are high-level interfaces which provide " +"automatic cleanup and can be used as :term:`context managers `. :func:`mkstemp` and :func:`mkdtemp` are lower-level functions " +"which require manual cleanup." msgstr "" msgid "" @@ -62,9 +63,9 @@ msgid "" msgstr "" msgid "" -"The resulting object can be used as a :term:`context manager` (see :ref:" -"`tempfile-examples`). On completion of the context or destruction of the " -"file object the temporary file will be removed from the filesystem." +"The resulting object can be used as a :term:`context manager` " +"(see :ref:`tempfile-examples`). On completion of the context or destruction " +"of the file object the temporary file will be removed from the filesystem." msgstr "" msgid "" @@ -174,10 +175,10 @@ msgstr "" msgid "" "*delete* is true but *delete_on_close* is false. Note, that in this case the " -"additional opens that do not share delete access (e.g. created via builtin :" -"func:`open`) must be closed before exiting the context manager, else the :" -"func:`os.unlink` call on context manager exit will fail with a :exc:" -"`PermissionError`." +"additional opens that do not share delete access (e.g. created via " +"builtin :func:`open`) must be closed before exiting the context manager, " +"else the :func:`os.unlink` call on context manager exit will fail with " +"a :exc:`PermissionError`." msgstr "" msgid "" @@ -201,8 +202,8 @@ msgid "" "This class operates exactly as :func:`TemporaryFile` does, except that data " "is spooled in memory until the file size exceeds *max_size*, or until the " "file's :func:`~io.IOBase.fileno` method is called, at which point the " -"contents are written to disk and operation proceeds as with :func:" -"`TemporaryFile`." +"contents are written to disk and operation proceeds as " +"with :func:`TemporaryFile`." msgstr "" msgid "" @@ -228,8 +229,8 @@ msgid "" msgstr "" msgid "" -"This class securely creates a temporary directory using the same rules as :" -"func:`mkdtemp`. The resulting object can be used as a :term:`context " +"This class securely creates a temporary directory using the same rules " +"as :func:`mkdtemp`. The resulting object can be used as a :term:`context " "manager` (see :ref:`tempfile-examples`). On completion of the context or " "destruction of the temporary directory object, the newly created temporary " "directory and all its contents are removed from the filesystem." @@ -261,6 +262,17 @@ msgid "" "based on other logic." msgstr "" +msgid "" +"Cleanup is not robust against the tree being modified while it is removed. " +"Files outside of the tree may have their permissions and file flags reset." +msgstr "" + +msgid "" +"On systems where :data:`shutil.rmtree.avoids_symlink_attacks` is false, " +"manipulating symbolic links during cleanup may cause files outside of the " +"tree to be removed." +msgstr "" + msgid "" "Raises an :ref:`auditing event ` ``tempfile.mkdtemp`` with " "argument ``fullpath``." @@ -301,8 +313,8 @@ msgstr "" msgid "" "If *prefix* is not ``None``, the file name will begin with that prefix; " -"otherwise, a default prefix is used. The default is the return value of :" -"func:`gettempprefix` or :func:`gettempprefixb`, as appropriate." +"otherwise, a default prefix is used. The default is the return value " +"of :func:`gettempprefix` or :func:`gettempprefixb`, as appropriate." msgstr "" msgid "" @@ -355,8 +367,8 @@ msgid "" msgstr "" msgid "" -"The *prefix*, *suffix*, and *dir* arguments are the same as for :func:" -"`mkstemp`." +"The *prefix*, *suffix*, and *dir* arguments are the same as " +"for :func:`mkstemp`." msgstr "" msgid ":func:`mkdtemp` returns the absolute pathname of the new directory." @@ -390,13 +402,14 @@ msgid "A platform-specific location:" msgstr "" msgid "" -"On Windows, the directories :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" -"\\TEMP`, and :file:`\\\\TMP`, in that order." +"On Windows, the directories :file:`%USERPROFILE%\\\\AppData\\\\Local\\" +"\\Temp`, :file:`%SYSTEMROOT%\\\\Temp`, :file:`C:\\\\TEMP`, :file:`C:\\" +"\\TMP`, :file:`\\\\TEMP`, and :file:`\\\\TMP`, in that order." msgstr "" msgid "" -"On all other platforms, the directories :file:`/tmp`, :file:`/var/tmp`, and :" -"file:`/usr/tmp`, in that order." +"On all other platforms, the directories :file:`/tmp`, :file:`/var/tmp`, " +"and :file:`/usr/tmp`, in that order." msgstr "" msgid "As a last resort, the current working directory." @@ -446,11 +459,11 @@ msgstr "" msgid "" "Beware that if you set ``tempdir`` to a bytes value, there is a nasty side " -"effect: The global default return type of :func:`mkstemp` and :func:" -"`mkdtemp` changes to bytes when no explicit ``prefix``, ``suffix``, or " -"``dir`` arguments of type str are supplied. Please do not write code " -"expecting or depending on this. This awkward behavior is maintained for " -"compatibility with the historical implementation." +"effect: The global default return type of :func:`mkstemp` " +"and :func:`mkdtemp` changes to bytes when no explicit ``prefix``, " +"``suffix``, or ``dir`` arguments of type str are supplied. Please do not " +"write code expecting or depending on this. This awkward behavior is " +"maintained for compatibility with the historical implementation." msgstr "" msgid "Examples" diff --git a/library/termios.po b/library/termios.po index e602882..246c00c 100644 --- a/library/termios.po +++ b/library/termios.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,8 +38,9 @@ msgstr "" msgid "" "All functions in this module take a file descriptor *fd* as their first " -"argument. This can be an integer file descriptor, such as returned by ``sys." -"stdin.fileno()``, or a :term:`file object`, such as ``sys.stdin`` itself." +"argument. This can be an integer file descriptor, such as returned by " +"``sys.stdin.fileno()``, or a :term:`file object`, such as ``sys.stdin`` " +"itself." msgstr "" msgid "" @@ -61,6 +63,12 @@ msgid "" "constants defined in the :mod:`!termios` module." msgstr "" +msgid "" +"Indices into the *cc* array controlling a non-canonical read: the minimum " +"number of characters to read and the timeout in tenths of a second, " +"respectively." +msgstr "" + msgid "" "Set the tty attributes for file descriptor *fd* from the *attributes*, which " "is a list like the one returned by :func:`tcgetattr`. The *when* argument " @@ -93,24 +101,44 @@ msgid "" "the output queue, or :const:`TCIOFLUSH` for both queues." msgstr "" +msgid "" +"Values for the *queue* selector: the input queue, the output queue, or both " +"queues, respectively." +msgstr "" + msgid "" "Suspend or resume input or output on file descriptor *fd*. The *action* " "argument can be :const:`TCOOFF` to suspend output, :const:`TCOON` to restart " "output, :const:`TCIOFF` to suspend input, or :const:`TCION` to restart input." msgstr "" +msgid "" +"Values for the *action* argument: suspend output, restart output, suspend " +"input, or restart input, respectively." +msgstr "" + msgid "" "Return a tuple ``(ws_row, ws_col)`` containing the tty window size for file " -"descriptor *fd*. Requires :const:`termios.TIOCGWINSZ` or :const:`termios." -"TIOCGSIZE`." +"descriptor *fd*. Requires :const:`termios.TIOCGWINSZ` " +"or :const:`termios.TIOCGSIZE`." +msgstr "" + +msgid "" +"``ioctl()`` requests for querying the tty window size. Not defined on all " +"platforms; :func:`tcgetwinsize` requires at least one of them." msgstr "" msgid "" "Set the tty window size for file descriptor *fd* from *winsize*, which is a " -"two-item tuple ``(ws_row, ws_col)`` like the one returned by :func:" -"`tcgetwinsize`. Requires at least one of the pairs (:const:`termios." -"TIOCGWINSZ`, :const:`termios.TIOCSWINSZ`); (:const:`termios.TIOCGSIZE`, :" -"const:`termios.TIOCSSIZE`) to be defined." +"two-item tuple ``(ws_row, ws_col)`` like the one returned " +"by :func:`tcgetwinsize`. Requires at least one of the pairs " +"(:const:`termios.TIOCGWINSZ`, :const:`termios.TIOCSWINSZ`); " +"(:const:`termios.TIOCGSIZE`, :const:`termios.TIOCSSIZE`) to be defined." +msgstr "" + +msgid "" +"``ioctl()`` requests for setting the tty window size. Not defined on all " +"platforms; see :func:`tcsetwinsize` for the required pairs." msgstr "" msgid "Module :mod:`tty`" @@ -124,9 +152,9 @@ msgstr "" msgid "" "Here's a function that prompts for a password with echoing turned off. Note " -"the technique using a separate :func:`tcgetattr` call and a :keyword:" -"`try` ... :keyword:`finally` statement to ensure that the old tty attributes " -"are restored exactly no matter what happens::" +"the technique using a separate :func:`tcgetattr` call and " +"a :keyword:`try` ... :keyword:`finally` statement to ensure that the old tty " +"attributes are restored exactly no matter what happens::" msgstr "" msgid "" diff --git a/library/test.po b/library/test.po index 1889793..9ab970a 100644 --- a/library/test.po +++ b/library/test.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,9 +35,9 @@ msgstr "" msgid "" "The :mod:`!test` package contains all regression tests for Python as well as " -"the modules :mod:`test.support` and :mod:`test.regrtest`. :mod:`test." -"support` is used to enhance your tests while :mod:`test.regrtest` drives the " -"testing suite." +"the modules :mod:`test.support` " +"and :mod:`test.regrtest`. :mod:`test.support` is used to enhance your tests " +"while :mod:`test.regrtest` drives the testing suite." msgstr "" msgid "" @@ -113,9 +113,9 @@ msgid "" msgstr "" msgid "" -"This code pattern allows the testing suite to be run by :mod:`test." -"regrtest`, on its own as a script that supports the :mod:`unittest` CLI, or " -"via the ``python -m unittest`` CLI." +"This code pattern allows the testing suite to be run " +"by :mod:`test.regrtest`, on its own as a script that supports " +"the :mod:`unittest` CLI, or via the ``python -m unittest`` CLI." msgstr "" msgid "" @@ -194,11 +194,11 @@ msgid "" msgstr "" msgid "" -"When using this pattern, remember that all classes that inherit from :class:" -"`unittest.TestCase` are run as tests. The :class:`!" +"When using this pattern, remember that all classes that inherit " +"from :class:`unittest.TestCase` are run as tests. The :class:`!" "TestFuncAcceptsSequencesMixin` class in the example above does not have any " -"data and so can't be run by itself, thus it does not inherit from :class:" -"`unittest.TestCase`." +"data and so can't be run by itself, thus it does not inherit " +"from :class:`unittest.TestCase`." msgstr "" msgid "Test Driven Development" @@ -215,14 +215,16 @@ msgid "" "test suite, thanks to the :option:`-m` option: :program:`python -m test`. " "Under the hood, it uses :mod:`!test.regrtest`; the call :program:`python -m " "test.regrtest` used in previous Python versions still works. Running the " -"script by itself automatically starts running all regression tests in the :" -"mod:`!test` package. It does this by finding all modules in the package " -"whose name starts with ``test_``, importing them, and executing the " -"function :func:`test_main` if present or loading the tests via unittest." -"TestLoader.loadTestsFromModule if ``test_main`` does not exist. The names " -"of tests to execute may also be passed to the script. Specifying a single " -"regression test (:program:`python -m test test_spam`) will minimize output " -"and only print whether the test passed or failed." +"script by itself automatically starts running all regression tests in " +"the :mod:`!test` package. It does this by finding modules and packages whose " +"names start with ``test_``, importing each one, and loading its tests " +"with :meth:`unittest.TestLoader.loadTestsFromModule`. See " +"the :ref:`load_tests protocol ` for how a module or " +"package can customize what is loaded. Defining a module-level " +"``test_main()`` function is not supported and causes the test to fail. The " +"names of tests to execute may also be passed to the script. Specifying a " +"single regression test (:program:`python -m test test_spam`) will minimize " +"output and only print whether the test passed or failed." msgstr "" msgid "" @@ -240,9 +242,9 @@ msgstr "" msgid "" "Some other ways to execute the regression tests depend on what platform the " "tests are being executed on. On Unix, you can run :program:`make test` at " -"the top-level directory where Python was built. On Windows, executing :" -"program:`rt.bat` from your :file:`PCbuild` directory will run all regression " -"tests." +"the top-level directory where Python was built. On Windows, " +"executing :program:`rt.bat` from your :file:`PCbuild` directory will run all " +"regression tests." msgstr "" msgid "" @@ -268,8 +270,8 @@ msgid "This module defines the following exceptions:" msgstr "" msgid "" -"Exception to be raised when a test fails. This is deprecated in favor of :" -"mod:`unittest`\\ -based tests and :class:`unittest.TestCase`'s assertion " +"Exception to be raised when a test fails. This is deprecated in favor " +"of :mod:`unittest`\\ -based tests and :class:`unittest.TestCase`'s assertion " "methods." msgstr "" @@ -284,8 +286,8 @@ msgstr "" msgid "" "``True`` when verbose output is enabled. Should be checked when more " -"detailed information is desired about a running test. *verbose* is set by :" -"mod:`test.regrtest`." +"detailed information is desired about a running test. *verbose* is set " +"by :mod:`test.regrtest`." msgstr "" msgid "``True`` if the running interpreter is Jython." @@ -323,9 +325,9 @@ msgid "" msgstr "" msgid "" -"The timeout should be long enough for :meth:`~socket.socket.connect`, :meth:" -"`~socket.socket.recv` and :meth:`~socket.socket.send` methods of :class:" -"`socket.socket`." +"The timeout should be long enough " +"for :meth:`~socket.socket.connect`, :meth:`~socket.socket.recv` " +"and :meth:`~socket.socket.send` methods of :class:`socket.socket`." msgstr "" msgid "Its default value is 10 seconds." @@ -344,8 +346,8 @@ msgstr "" msgid "" "Usually, a timeout using :data:`INTERNET_TIMEOUT` should not mark a test as " -"failed, but skip the test instead: see :func:`~test.support.socket_helper." -"transient_internet`." +"failed, but skip the test instead: " +"see :func:`~test.support.socket_helper.transient_internet`." msgstr "" msgid "Its default value is 1 minute." @@ -384,8 +386,8 @@ msgid "Its default value is 5 minutes." msgstr "" msgid "" -"See also :data:`LOOPBACK_TIMEOUT`, :data:`INTERNET_TIMEOUT` and :data:" -"`SHORT_TIMEOUT`." +"See also :data:`LOOPBACK_TIMEOUT`, :data:`INTERNET_TIMEOUT` " +"and :data:`SHORT_TIMEOUT`." msgstr "" msgid "Set when tests can be skipped when they are not useful for PGO." @@ -429,18 +431,18 @@ msgid "" msgstr "" msgid "" -"Set to ``True`` if Python is built without docstrings (the :c:macro:" -"`WITH_DOC_STRINGS` macro is not defined). See the :option:`configure --" -"without-doc-strings <--without-doc-strings>` option." +"Set to ``True`` if Python is built without docstrings " +"(the :c:macro:`WITH_DOC_STRINGS` macro is not defined). See " +"the :option:`configure --without-doc-strings <--without-doc-strings>` option." msgstr "" msgid "See also the :data:`HAVE_DOCSTRINGS` variable." msgstr "" msgid "" -"Set to ``True`` if function docstrings are available. See the :option:" -"`python -OO <-O>` option, which strips docstrings of functions implemented " -"in Python." +"Set to ``True`` if function docstrings are available. See " +"the :option:`python -OO <-O>` option, which strips docstrings of functions " +"implemented in Python." msgstr "" msgid "See also the :data:`MISSING_C_DOCSTRINGS` variable." @@ -541,7 +543,9 @@ msgstr "" msgid "Return ``True`` if Python was not built with ``-O0`` or ``-Og``." msgstr "" -msgid "Return :const:`_testcapi.WITH_PYMALLOC`." +msgid "" +"Return ``True`` if Python was built with :ref:`pymalloc ` enabled " +"and is not a :term:`free-threaded build`." msgstr "" msgid "" @@ -596,8 +600,8 @@ msgid "" msgstr "" msgid "" -"Return the original stdout set by :func:`record_original_stdout` or ``sys." -"stdout`` if it's not set." +"Return the original stdout set by :func:`record_original_stdout` or " +"``sys.stdout`` if it's not set." msgstr "" msgid "" @@ -611,8 +615,8 @@ msgid "" msgstr "" msgid "" -"A context managers that temporarily replaces the named stream with :class:" -"`io.StringIO` object." +"A context managers that temporarily replaces the named stream " +"with :class:`io.StringIO` object." msgstr "" msgid "Example use with output streams::" @@ -690,9 +694,9 @@ msgid "" msgstr "" msgid "" -"Call the ``flush()`` method on :data:`sys.stdout` and then on :data:`sys." -"stderr`. It can be used to make sure that the logs order is consistent " -"before writing into stderr." +"Call the ``flush()`` method on :data:`sys.stdout` and then " +"on :data:`sys.stderr`. It can be used to make sure that the logs order is " +"consistent before writing into stderr." msgstr "" msgid "" @@ -735,9 +739,9 @@ msgid "" msgstr "" msgid "" -"A decorator to conditionally mark tests with :deco:`unittest." -"expectedFailure`. Any use of this decorator should have an associated " -"comment identifying the relevant tracker issue." +"A decorator to conditionally mark tests " +"with :deco:`unittest.expectedFailure`. Any use of this decorator should have " +"an associated comment identifying the relevant tracker issue." msgstr "" msgid "" @@ -867,9 +871,11 @@ msgid "Open *url*. If open fails, raises :exc:`TestFailed`." msgstr "" msgid "" -"Use this at the end of ``test_main`` whenever sub-processes are started. " -"This will help ensure that no extra children (zombies) stick around to hog " -"resources and create problems when looking for refleaks." +"Call this " +"from :meth:`~unittest.TestCase.setUp`, :meth:`~unittest.TestCase.tearDown`, " +"or ``tearDownModule()`` in tests that start subprocesses. This will help " +"ensure that no extra children (zombies) stick around to hog resources and " +"create problems when looking for refleaks." msgstr "" msgid "" @@ -878,8 +884,8 @@ msgid "" msgstr "" msgid "" -"Context manager catching unraisable exception using :func:`sys." -"unraisablehook`." +"Context manager catching unraisable exception " +"using :func:`sys.unraisablehook`." msgstr "" msgid "" @@ -940,57 +946,70 @@ msgid "" msgstr "" msgid "" -"Run *code* in subinterpreter. Raise :exc:`unittest.SkipTest` if :mod:" -"`tracemalloc` is enabled." +"Run *code* in subinterpreter. Raise :exc:`unittest.SkipTest` " +"if :mod:`tracemalloc` is enabled." msgstr "" msgid "" "Decorator that runs the decorated test in a fresh interpreter subprocess, in " "isolation, so that it does not share global or interpreter state with the " -"rest of the test run. It can decorate a test method or a whole :class:" -"`~unittest.TestCase` subclass. Decorated methods must take no extra " -"arguments. A failure, error or skip in the subprocess is reported for the " -"corresponding test, and individual :meth:`subtests ` that fail or are skipped are reported individually. A reported " -"failure or error shows the original subprocess traceback as the cause of the " -"exception." +"rest of the test run. It can decorate a test method or a " +"whole :class:`~unittest.TestCase` subclass. Decorated methods must take no " +"extra arguments. A failure, error or skip in the subprocess is reported for " +"the corresponding test, and individual :meth:`subtests " +"` that fail or are skipped are reported " +"individually. A reported failure or error shows the original subprocess " +"traceback as the cause of the exception." msgstr "" msgid "" "When a **method** is decorated, only that method runs in a subprocess; all " -"fixtures (:meth:`~unittest.TestCase.setUp` / :meth:`~unittest.TestCase." -"tearDown`, :meth:`~unittest.TestCase.setUpClass` / :meth:`~unittest.TestCase." -"tearDownClass` and ``setUpModule()`` / ``tearDownModule()``) run both in the " -"parent process (as usual) and in the subprocess around the method." +"fixtures " +"(:meth:`~unittest.TestCase.setUp` / :meth:`~unittest.TestCase.tearDown`, :meth:`~unittest.TestCase.setUpClass` / :meth:`~unittest.TestCase.tearDownClass` " +"and ``setUpModule()`` / ``tearDownModule()``) run both in the parent process " +"(as usual) and in the subprocess around the method." msgstr "" msgid "" "When a **class** is decorated, the whole class runs in a single subprocess, " -"and :meth:`~unittest.TestCase.setUpClass`, :meth:`~unittest.TestCase." -"tearDownClass`, :meth:`~unittest.TestCase.setUp` and :meth:`~unittest." -"TestCase.tearDown` run once each in the subprocess and are skipped in the " -"parent process. A failure or skip of :meth:`~unittest.TestCase.setUpClass` " -"in the subprocess is reported for the whole class. ``setUpModule()`` cannot " -"be controlled by a class decorator, so it still runs in the parent process " -"too; test it with :data:`runningInSubprocess` if needed." +"and :meth:`~unittest.TestCase.setUpClass`, :meth:`~unittest.TestCase.tearDownClass`, :meth:`~unittest.TestCase.setUp` " +"and :meth:`~unittest.TestCase.tearDown` run once each in the subprocess and " +"are skipped in the parent process. A failure or skip " +"of :meth:`~unittest.TestCase.setUpClass` in the subprocess is reported for " +"the whole class. ``setUpModule()`` cannot be controlled by a class " +"decorator, so it still runs in the parent process too; test it " +"with :data:`runningInSubprocess` if needed." msgstr "" msgid "" "The subprocess inherits the enabled resources (``-u``), memory limit (``-" -"M``) and verbosity (``-v``) of the parent test run, so that :func:`~test." -"support.requires_resource`, :func:`~test.support.requires`, :func:`~test." -"support.bigmemtest` and the like behave consistently in both processes." +"M``) and verbosity (``-v``) of the parent test run, so " +"that :func:`~test.support.requires_resource`, :func:`~test.support.requires`, :func:`~test.support.bigmemtest` " +"and the like behave consistently in both processes." +msgstr "" + +msgid "" +"*options* is a sequence of interpreter command line options to run the " +"subprocess with, and *env* is a mapping of environment variables to set in " +"it, on top of the inherited environment. A value of ``None`` in *env* unsets " +"the variable. Note that :option:`-E` and :option:`-I` make the subprocess " +"ignore the ``PYTHON*`` environment variables, including :envvar:`PYTHONPATH`." +msgstr "" + +msgid "" +"*timeout* is the number of seconds to wait for the subprocess; the test is " +"reported as an error if it does not complete in time. By default there is no " +"timeout, and a hung test is left to the timeout of the test runner." msgstr "" msgid "The test is skipped on platforms without subprocess support." msgstr "" msgid "" -"``True`` while the code runs in the isolated subprocess spawned by :func:" -"`runInSubprocess`, and ``False`` otherwise (including in the parent process " -"and in a normal, non-isolated test run). Fixtures such as :meth:`~unittest." -"TestCase.setUp`, :meth:`~unittest.TestCase.tearDown`, :meth:`~unittest." -"TestCase.setUpClass`, :meth:`~unittest.TestCase.tearDownClass`, " +"``True`` while the code runs in the isolated subprocess spawned " +"by :func:`runInSubprocess`, and ``False`` otherwise (including in the parent " +"process and in a normal, non-isolated test run). Fixtures such " +"as :meth:`~unittest.TestCase.setUp`, :meth:`~unittest.TestCase.tearDown`, :meth:`~unittest.TestCase.setUpClass`, :meth:`~unittest.TestCase.tearDownClass`, " "``setUpModule()`` and ``tearDownModule()`` can test it to choose which code " "to run in the subprocess." msgstr "" @@ -1022,9 +1041,9 @@ msgstr "" msgid "" "The *extra* argument can be a set of names that wouldn't otherwise be " -"automatically detected as \"public\", like objects without a proper :attr:" -"`~definition.__module__` attribute. If provided, it will be added to the " -"automatically detected ones." +"automatically detected as \"public\", like objects without a " +"proper :attr:`~definition.__module__` attribute. If provided, it will be " +"added to the automatically detected ones." msgstr "" msgid "" @@ -1055,7 +1074,7 @@ msgid "" msgstr "" msgid "" -"Skip tests if the :mod:`multiprocessing.synchronize` module is missing, if " +"Skip tests if the :mod:`!multiprocessing.synchronize` module is missing, if " "there is no available semaphore implementation, or if creating a lock raises " "an :exc:`OSError`." msgstr "" @@ -1064,10 +1083,10 @@ msgid "Assert that type *tp* cannot be instantiated using *args* and *kwds*." msgstr "" msgid "" -"This function returns a context manager that will change the global :func:" -"`sys.set_int_max_str_digits` setting for the duration of the context to " -"allow execution of test code that needs a different limit on the number of " -"digits when converting between an integer and string." +"This function returns a context manager that will change the " +"global :func:`sys.set_int_max_str_digits` setting for the duration of the " +"context to allow execution of test code that needs a different limit on the " +"number of digits when converting between an integer and string." msgstr "" msgid "The :mod:`!test.support` module defines the following classes:" @@ -1084,8 +1103,9 @@ msgid "" msgstr "" msgid "" -"On UNIX, :func:`resource.setrlimit` is used to set :const:`resource." -"RLIMIT_CORE`'s soft limit to 0 to prevent coredump file creation." +"On UNIX, :func:`resource.setrlimit` is used to " +"set :const:`resource.RLIMIT_CORE`'s soft limit to 0 to prevent coredump file " +"creation." msgstr "" msgid "" @@ -1126,11 +1146,11 @@ msgstr "" msgid "" "Returns an unused port that should be suitable for binding. This is " "achieved by creating a temporary socket with the same family and type as the " -"``sock`` parameter (default is :const:`~socket.AF_INET`, :const:`~socket." -"SOCK_STREAM`), and binding it to the specified host address (defaults to " -"``0.0.0.0``) with the port set to 0, eliciting an unused ephemeral port from " -"the OS. The temporary socket is then closed and deleted, and the ephemeral " -"port is returned." +"``sock`` parameter (default " +"is :const:`~socket.AF_INET`, :const:`~socket.SOCK_STREAM`), and binding it " +"to the specified host address (defaults to ``0.0.0.0``) with the port set to " +"0, eliciting an unused ephemeral port from the OS. The temporary socket is " +"then closed and deleted, and the ephemeral port is returned." msgstr "" msgid "" @@ -1139,22 +1159,23 @@ msgid "" "test. Which one to use depends on whether the calling code is creating a " "Python socket, or if an unused port needs to be provided in a constructor or " "passed to an external program (i.e. the ``-accept`` argument to openssl's " -"s_server mode). Always prefer :func:`bind_port` over :func:" -"`find_unused_port` where possible. Using a hard coded port is discouraged " -"since it can make multiple instances of the test impossible to run " -"simultaneously, which is a problem for buildbots." +"s_server mode). Always prefer :func:`bind_port` " +"over :func:`find_unused_port` where possible. Using a hard coded port is " +"discouraged since it can make multiple instances of the test impossible to " +"run simultaneously, which is a problem for buildbots." msgstr "" msgid "" "Bind the socket to a free port and return the port number. Relies on " "ephemeral ports in order to ensure we are using an unbound port. This is " "important as many tests may be running simultaneously, especially in a " -"buildbot environment. This method raises an exception if the ``sock." -"family`` is :const:`~socket.AF_INET` and ``sock.type`` is :const:`~socket." -"SOCK_STREAM`, and the socket has :const:`~socket.SO_REUSEADDR` or :const:" -"`~socket.SO_REUSEPORT` set on it. Tests should never set these socket " -"options for TCP/IP sockets. The only case for setting these options is " -"testing multicasting via multiple UDP sockets." +"buildbot environment. This method raises an exception if the " +"``sock.family`` is :const:`~socket.AF_INET` and ``sock.type`` " +"is :const:`~socket.SOCK_STREAM`, and the socket " +"has :const:`~socket.SO_REUSEADDR` or :const:`~socket.SO_REUSEPORT` set on " +"it. Tests should never set these socket options for TCP/IP sockets. The only " +"case for setting these options is testing multicasting via multiple UDP " +"sockets." msgstr "" msgid "" @@ -1165,8 +1186,8 @@ msgid "" msgstr "" msgid "" -"Bind a Unix socket, raising :exc:`unittest.SkipTest` if :exc:" -"`PermissionError` is raised." +"Bind a Unix socket, raising :exc:`unittest.SkipTest` " +"if :exc:`PermissionError` is raised." msgstr "" msgid "" @@ -1209,7 +1230,7 @@ msgstr "" msgid "" "Setting :envvar:`PYTHONHOME` is one way to get most of the testsuite to run " -"in that situation. :envvar:`PYTHONPATH` or :envvar:`PYTHONUSERSITE` are " +"in that situation. :envvar:`PYTHONPATH` or :envvar:`PYTHONNOUSERSITE` are " "other common environment variables that might impact whether or not the " "interpreter can start." msgstr "" @@ -1252,8 +1273,8 @@ msgid "Run a Python subprocess with the given arguments." msgstr "" msgid "" -"*kw* is extra keyword args to pass to :func:`subprocess.Popen`. Returns a :" -"class:`subprocess.Popen` object." +"*kw* is extra keyword args to pass to :func:`subprocess.Popen`. Returns " +"a :class:`subprocess.Popen` object." msgstr "" msgid "" @@ -1349,8 +1370,8 @@ msgid "" msgstr "" msgid "" -"Context manager catching :class:`threading.Thread` exception using :func:" -"`threading.excepthook`." +"Context manager catching :class:`threading.Thread` exception " +"using :func:`threading.excepthook`." msgstr "" msgid "Attributes set when an exception is caught:" @@ -1445,9 +1466,10 @@ msgid "Added dictionary interface." msgstr "" msgid "" -"Simple :term:`path-like object`. It implements the :meth:`~os.PathLike." -"__fspath__` method which just returns the *path* argument. If *path* is an " -"exception, it will be raised in :meth:`!__fspath__`." +"Simple :term:`path-like object`. It implements " +"the :meth:`~os.PathLike.__fspath__` method which just returns the *path* " +"argument. If *path* is an exception, it will be raised in :meth:`!" +"__fspath__`." msgstr "" msgid "" @@ -1500,10 +1522,10 @@ msgid "" msgstr "" msgid "" -"Call :func:`shutil.rmtree` on *path* or call :func:`os.lstat` and :func:`os." -"rmdir` to remove a path and its contents. As with :func:`rmdir`, on Windows " -"platforms this is wrapped with a wait loop that checks for the existence of " -"the files." +"Call :func:`shutil.rmtree` on *path* or call :func:`os.lstat` " +"and :func:`os.rmdir` to remove a path and its contents. As " +"with :func:`rmdir`, on Windows platforms this is wrapped with a wait loop " +"that checks for the existence of the files." msgstr "" msgid "A decorator for running tests that require support for symbolic links." @@ -1520,8 +1542,8 @@ msgstr "" msgid "" "The context manager creates a temporary directory in the current directory " "with name *name* before temporarily changing the current working directory. " -"If *name* is ``None``, the temporary directory is created using :func:" -"`tempfile.mkdtemp`." +"If *name* is ``None``, the temporary directory is created " +"using :func:`tempfile.mkdtemp`." msgstr "" msgid "" @@ -1536,10 +1558,10 @@ msgid "" msgstr "" msgid "" -"If *path* is ``None``, the temporary directory is created using :func:" -"`tempfile.mkdtemp`. If *quiet* is ``False``, the context manager raises an " -"exception on error. Otherwise, if *path* is specified and cannot be " -"created, only a warning is issued." +"If *path* is ``None``, the temporary directory is created " +"using :func:`tempfile.mkdtemp`. If *quiet* is ``False``, the context " +"manager raises an exception on error. Otherwise, if *path* is specified and " +"cannot be created, only a warning is issued." msgstr "" msgid "A context manager that temporarily sets the process umask." @@ -1562,9 +1584,10 @@ msgid "" msgstr "" msgid "" -"Metaclass wrapping all test methods of the class with :func:" -"`with_source_date_epoch` if the *source_date_epoch* keyword class argument " -"is true, or with :func:`without_source_date_epoch` otherwise. For example::" +"Metaclass wrapping all test methods of the class " +"with :func:`with_source_date_epoch` if the *source_date_epoch* keyword class " +"argument is true, or with :func:`without_source_date_epoch` otherwise. For " +"example::" msgstr "" msgid "" @@ -1590,8 +1613,8 @@ msgstr "" msgid "" "This function imports and returns a fresh copy of the named Python module by " "removing the named module from ``sys.modules`` before doing the import. Note " -"that unlike :func:`reload`, the original module is not affected by this " -"operation." +"that unlike :func:`importlib.reload`, the original module is not affected by " +"this operation." msgstr "" msgid "" @@ -1663,8 +1686,8 @@ msgstr "" msgid "" "A context manager to force import to return a new module reference. This is " -"useful for testing module-level behaviors, such as the emission of a :exc:" -"`DeprecationWarning` on import. Example usage::" +"useful for testing module-level behaviors, such as the emission of " +"a :exc:`DeprecationWarning` on import. Example usage::" msgstr "" msgid "" @@ -1696,10 +1719,11 @@ msgid "" msgstr "" msgid "" -"Suppress warnings that are instances of *category*, which must be :exc:" -"`Warning` or a subclass. Roughly equivalent to :func:`warnings." -"catch_warnings` with :meth:`warnings.simplefilter('ignore', " -"category=category) `. For example::" +"Suppress warnings that are instances of *category*, which must " +"be :exc:`Warning` or a subclass. Roughly equivalent " +"to :func:`warnings.catch_warnings` " +"with :meth:`warnings.simplefilter('ignore', category=category) " +"`. For example::" msgstr "" msgid "" @@ -1719,17 +1743,17 @@ msgid "" "Test also that the :exc:`SyntaxWarning` is emitted only once, and that it " "will be converted to a :exc:`SyntaxError` when turned into error. *testcase* " "is the :mod:`unittest` instance for the test. *errtext* is the regular " -"expression which should match the string representation of the emitted :exc:" -"`SyntaxWarning` and raised :exc:`SyntaxError`. If *lineno* is not ``None``, " -"compares to the line of the warning and exception. If *offset* is not " -"``None``, compares to the offset of the exception." +"expression which should match the string representation of the " +"emitted :exc:`SyntaxWarning` and raised :exc:`SyntaxError`. If *lineno* is " +"not ``None``, compares to the line of the warning and exception. If *offset* " +"is not ``None``, compares to the offset of the exception." msgstr "" msgid "" "A convenience wrapper for :func:`warnings.catch_warnings` that makes it " "easier to test that a warning was correctly raised. It is approximately " -"equivalent to calling ``warnings.catch_warnings(record=True)`` with :meth:" -"`warnings.simplefilter` set to ``always`` and with the option to " +"equivalent to calling ``warnings.catch_warnings(record=True)`` " +"with :meth:`warnings.simplefilter` set to ``always`` and with the option to " "automatically validate the results that are recorded." msgstr "" @@ -1754,19 +1778,11 @@ msgid "In this case all warnings are caught and no errors are raised." msgstr "" msgid "" -"On entry to the context manager, a :class:`WarningRecorder` instance is " -"returned. The underlying warnings list from :func:`~warnings.catch_warnings` " -"is available via the recorder object's :attr:`warnings` attribute. As a " -"convenience, the attributes of the object representing the most recent " -"warning can also be accessed directly through the recorder object (see " -"example below). If no warning has been raised, then any of the attributes " -"that would otherwise be expected on an object representing a warning will " -"return ``None``." -msgstr "" - -msgid "" -"The recorder object also has a :meth:`reset` method, which clears the " -"warnings list." +"On entry to the context manager, a :class:`WarningsRecorder` instance is " +"returned. The recorded warnings are available via " +"its :attr:`~WarningsRecorder.warnings` attribute, and " +"its :meth:`~WarningsRecorder.reset` method discards previously recorded " +"warnings." msgstr "" msgid "The context manager is designed to be used like this::" @@ -1792,11 +1808,11 @@ msgstr "" msgid "" "with check_warnings(quiet=True) as w:\n" " warnings.warn(\"foo\")\n" -" assert str(w.args[0]) == \"foo\"\n" +" assert str(w.message) == \"foo\"\n" " warnings.warn(\"bar\")\n" -" assert str(w.args[0]) == \"bar\"\n" -" assert str(w.warnings[0].args[0]) == \"foo\"\n" -" assert str(w.warnings[1].args[0]) == \"bar\"\n" +" assert str(w.message) == \"bar\"\n" +" assert str(w.warnings[0].message) == \"foo\"\n" +" assert str(w.warnings[1].message) == \"bar\"\n" " w.reset()\n" " assert len(w.warnings) == 0" msgstr "" @@ -1810,6 +1826,23 @@ msgid "New optional arguments *filters* and *quiet*." msgstr "" msgid "" -"Class used to record warnings for unit tests. See documentation of :func:" -"`check_warnings` above for more details." +"Class used to record warnings for unit tests. Wraps the warnings list " +"returned by :func:`warnings.catch_warnings` when recording is " +"enabled. :func:`check_warnings` returns an instance of this class." +msgstr "" + +msgid "" +"As a convenience, the attributes of the object representing the most recent " +"warning can also be accessed directly through the recorder object. If no " +"warning has been raised since the recorder was created or last reset, these " +"attributes return ``None``." +msgstr "" + +msgid "" +"A list of warnings recorded since the recorder was created or last reset." +msgstr "" + +msgid "" +"Discard previously recorded warnings from the recorder's view. The " +"underlying warnings list is not modified." msgstr "" diff --git a/library/text.po b/library/text.po index 39a9bc5..6268fb5 100644 --- a/library/text.po +++ b/library/text.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/textwrap.po b/library/textwrap.po index 159de56..c6d22c6 100644 --- a/library/textwrap.po +++ b/library/textwrap.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,11 +30,11 @@ msgid "**Source code:** :source:`Lib/textwrap.py`" msgstr "" msgid "" -"The :mod:`!textwrap` module provides some convenience functions, as well as :" -"class:`TextWrapper`, the class that does all the work. If you're just " +"The :mod:`!textwrap` module provides some convenience functions, as well " +"as :class:`TextWrapper`, the class that does all the work. If you're just " "wrapping or filling one or two text strings, the convenience functions " -"should be good enough; otherwise, you should use an instance of :class:" -"`TextWrapper` for efficiency." +"should be good enough; otherwise, you should use an instance " +"of :class:`TextWrapper` for efficiency." msgstr "" msgid "" @@ -43,13 +44,13 @@ msgid "" msgstr "" msgid "" -"Optional keyword arguments correspond to the instance attributes of :class:" -"`TextWrapper`, documented below." +"Optional keyword arguments correspond to the instance attributes " +"of :class:`TextWrapper`, documented below." msgstr "" msgid "" -"See the :meth:`TextWrapper.wrap` method for additional details on how :func:" -"`wrap` behaves." +"See the :meth:`TextWrapper.wrap` method for additional details on " +"how :func:`wrap` behaves." msgstr "" msgid "" @@ -61,8 +62,8 @@ msgid "\"\\n\".join(wrap(text, ...))" msgstr "" msgid "" -"In particular, :func:`fill` accepts exactly the same keyword arguments as :" -"func:`wrap`." +"In particular, :func:`fill` accepts exactly the same keyword arguments " +"as :func:`wrap`." msgstr "" msgid "Collapse and truncate the given *text* to fit in the given *width*." @@ -85,11 +86,12 @@ msgid "" msgstr "" msgid "" -"Optional keyword arguments correspond to the instance attributes of :class:" -"`TextWrapper`, documented below. Note that the whitespace is collapsed " -"before the text is passed to the :class:`TextWrapper` :meth:`fill` function, " -"so changing the value of :attr:`.tabsize`, :attr:`.expand_tabs`, :attr:`." -"drop_whitespace`, and :attr:`.replace_whitespace` will have no effect." +"Optional keyword arguments correspond to the instance attributes " +"of :class:`TextWrapper`, documented below. Note that the whitespace is " +"collapsed before the text is passed to the :class:`TextWrapper` :meth:`fill` " +"function, so changing the value " +"of :attr:`.tabsize`, :attr:`.expand_tabs`, :attr:`.drop_whitespace`, " +"and :attr:`.replace_whitespace` will have no effect." msgstr "" msgid "Remove any common leading whitespace from every line in *text*." @@ -163,17 +165,17 @@ msgid "" msgstr "" msgid "" -":func:`wrap`, :func:`fill` and :func:`shorten` work by creating a :class:" -"`TextWrapper` instance and calling a single method on it. That instance is " -"not reused, so for applications that process many text strings using :func:" -"`wrap` and/or :func:`fill`, it may be more efficient to create your own :" -"class:`TextWrapper` object." +":func:`wrap`, :func:`fill` and :func:`shorten` work by creating " +"a :class:`TextWrapper` instance and calling a single method on it. That " +"instance is not reused, so for applications that process many text strings " +"using :func:`wrap` and/or :func:`fill`, it may be more efficient to create " +"your own :class:`TextWrapper` object." msgstr "" msgid "" "Text is preferably wrapped on whitespaces and right after the hyphens in " -"hyphenated words; only then will long words be broken if necessary, unless :" -"attr:`TextWrapper.break_long_words` is set to false." +"hyphenated words; only then will long words be broken if necessary, " +"unless :attr:`TextWrapper.break_long_words` is set to false." msgstr "" msgid "" @@ -206,9 +208,9 @@ msgstr "" msgid "" "(default: ``70``) The maximum length of wrapped lines. As long as there are " -"no individual words in the input text longer than :attr:`width`, :class:" -"`TextWrapper` guarantees that no output line will be longer than :attr:" -"`width` characters." +"no individual words in the input text longer " +"than :attr:`width`, :class:`TextWrapper` guarantees that no output line will " +"be longer than :attr:`width` characters." msgstr "" msgid "" @@ -223,8 +225,8 @@ msgid "" msgstr "" msgid "" -"(default: ``True``) If true, after tab expansion but before wrapping, the :" -"meth:`wrap` method will replace each whitespace character with a single " +"(default: ``True``) If true, after tab expansion but before wrapping, " +"the :meth:`wrap` method will replace each whitespace character with a single " "space. The whitespace characters replaced are as follows: tab, newline, " "vertical tab, formfeed, and carriage return (``'\\t\\n\\v\\f\\r'``)." msgstr "" @@ -325,11 +327,11 @@ msgid "" msgstr "" msgid "" -"Wraps the single paragraph in *text* (a string) so every line is at most :" -"attr:`width` characters long. All wrapping options are taken from instance " -"attributes of the :class:`TextWrapper` instance. Returns a list of output " -"lines, without final newlines. If the wrapped output has no content, the " -"returned list is empty." +"Wraps the single paragraph in *text* (a string) so every line is at " +"most :attr:`width` characters long. All wrapping options are taken from " +"instance attributes of the :class:`TextWrapper` instance. Returns a list of " +"output lines, without final newlines. If the wrapped output has no content, " +"the returned list is empty." msgstr "" msgid "" diff --git a/library/threading.po b/library/threading.po index 0d9fcca..a3fee9e 100644 --- a/library/threading.po +++ b/library/threading.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -123,9 +123,10 @@ msgid "" "lock>`, only one thread can execute Python code at once (even though certain " "performance-oriented libraries might overcome this limitation). If you want " "your application to make better use of the computational resources of multi-" -"core machines, you are advised to use :mod:`multiprocessing` or :class:" -"`concurrent.futures.ProcessPoolExecutor`. However, threading is still an " -"appropriate model if you want to run multiple I/O-bound tasks simultaneously." +"core machines, you are advised to use :mod:`multiprocessing` " +"or :class:`concurrent.futures.ProcessPoolExecutor`. However, threading is " +"still an appropriate model if you want to run multiple I/O-bound tasks " +"simultaneously." msgstr "" msgid "GIL and performance considerations" @@ -248,10 +249,10 @@ msgstr "" msgid "" "Return a list of all :class:`Thread` objects currently active. The list " -"includes daemonic threads and dummy thread objects created by :func:" -"`current_thread`. It excludes terminated threads and threads that have not " -"yet been started. However, the main thread is always part of the result, " -"even when terminated." +"includes daemonic threads and dummy thread objects created " +"by :func:`current_thread`. It excludes terminated threads and threads that " +"have not yet been started. However, the main thread is always part of the " +"result, even when terminated." msgstr "" msgid "" @@ -302,9 +303,9 @@ msgid "" "*size* argument specifies the stack size to be used for subsequently created " "threads, and must be 0 (use platform or configured default) or a positive " "integer value of at least 32,768 (32 KiB). If *size* is not specified, 0 is " -"used. If changing the thread stack size is unsupported, a :exc:" -"`RuntimeError` is raised. If the specified stack size is invalid, a :exc:" -"`ValueError` is raised and the stack size is unmodified. 32 KiB is " +"used. If changing the thread stack size is unsupported, " +"a :exc:`RuntimeError` is raised. If the specified stack size is invalid, " +"a :exc:`ValueError` is raised and the stack size is unmodified. 32 KiB is " "currently the minimum supported stack size value to guarantee sufficient " "stack space for the interpreter itself. Note that some platforms may have " "particular restrictions on values for the stack size, such as requiring a " @@ -324,8 +325,8 @@ msgstr "" msgid "" "The maximum value allowed for the *timeout* parameter of blocking functions " "(:meth:`Lock.acquire`, :meth:`RLock.acquire`, :meth:`Condition.wait`, etc.). " -"Specifying a timeout greater than this value will raise an :exc:" -"`OverflowError`." +"Specifying a timeout greater than this value will raise " +"an :exc:`OverflowError`." msgstr "" msgid "" @@ -404,16 +405,16 @@ msgid "" msgstr "" msgid "" -"Of course, values you get from a :class:`local` object, including their :" -"attr:`~object.__dict__` attribute, are for whatever thread was current at " -"the time the attribute was read. For that reason, you generally don't want " -"to save these values across threads, as they apply only to the thread they " -"came from." +"Of course, values you get from a :class:`local` object, including " +"their :attr:`~object.__dict__` attribute, are for whatever thread was " +"current at the time the attribute was read. For that reason, you generally " +"don't want to save these values across threads, as they apply only to the " +"thread they came from." msgstr "" msgid "" -"You can create custom :class:`local` objects by subclassing the :class:" -"`local` class::" +"You can create custom :class:`local` objects by subclassing " +"the :class:`local` class::" msgstr "" msgid "" @@ -542,8 +543,8 @@ msgstr "" msgid "" "Once the thread's activity is started, the thread is considered 'alive'. It " "stops being alive when its :meth:`~Thread.run` method terminates -- either " -"normally, or by raising an unhandled exception. The :meth:`~Thread." -"is_alive` method tests whether the thread is alive." +"normally, or by raising an unhandled exception. " +"The :meth:`~Thread.is_alive` method tests whether the thread is alive." msgstr "" msgid "" @@ -558,9 +559,9 @@ msgid "" msgstr "" msgid "" -"If the :meth:`~Thread.run` method raises an exception, :func:`threading." -"excepthook` is called to handle it. By default, :func:`threading.excepthook` " -"ignores silently :exc:`SystemExit`." +"If the :meth:`~Thread.run` method raises an " +"exception, :func:`threading.excepthook` is called to handle it. By " +"default, :func:`threading.excepthook` ignores silently :exc:`SystemExit`." msgstr "" msgid "" @@ -599,8 +600,8 @@ msgid "" msgstr "" msgid "" -"*group* must be ``None`` as it is reserved for future extension when a :" -"class:`!ThreadGroup` class is implemented." +"*group* must be ``None`` as it is reserved for future extension when " +"a :class:`!ThreadGroup` class is implemented." msgstr "" msgid "" @@ -633,14 +634,14 @@ msgstr "" msgid "" "*context* is the :class:`~contextvars.Context` value to use when starting " -"the thread. The default value is ``None`` which indicates that the :data:" -"`sys.flags.thread_inherit_context` flag controls the behaviour. If the flag " -"is true, threads will start with a copy of the context of the caller of :" -"meth:`~Thread.start`. If false, they will start with an empty context. To " -"explicitly start with an empty context, pass a new instance of :class:" -"`~contextvars.Context()`. To explicitly start with a copy of the current " -"context, pass the value from :func:`~contextvars.copy_context`. The flag " -"defaults true on free-threaded builds and false otherwise." +"the thread. The default value is ``None`` which indicates that " +"the :data:`sys.flags.thread_inherit_context` flag controls the behaviour. " +"If the flag is true, threads will start with a copy of the context of the " +"caller of :meth:`~Thread.start`. If false, they will start with an empty " +"context. To explicitly start with an empty context, pass a new instance " +"of :class:`~contextvars.Context()`. To explicitly start with a copy of the " +"current context, pass the value from :func:`~contextvars.copy_context`. The " +"flag defaults true on free-threaded builds and false otherwise." msgstr "" msgid "" @@ -673,9 +674,9 @@ msgid "" msgstr "" msgid "" -"If supported, set the operating system thread name to :attr:`threading." -"Thread.name`. The name can be truncated depending on the operating system " -"thread name limits." +"If supported, set the operating system thread name " +"to :attr:`threading.Thread.name`. The name can be truncated depending on the " +"operating system thread name limits." msgstr "" msgid "Set the operating system thread name." @@ -692,8 +693,8 @@ msgid "" msgstr "" msgid "" -"Using list or tuple as the *args* argument which passed to the :class:" -"`Thread` could achieve the same effect." +"Using list or tuple as the *args* argument which passed to " +"the :class:`Thread` could achieve the same effect." msgstr "" msgid "Example::" @@ -719,8 +720,8 @@ msgstr "" msgid "" "When the *timeout* argument is present and not ``None``, it should be a real " "number specifying a timeout for the operation in seconds (or fractions " -"thereof). As :meth:`~Thread.join` always returns ``None``, you must call :" -"meth:`~Thread.is_alive` after :meth:`~Thread.join` to decide whether a " +"thereof). As :meth:`~Thread.join` always returns ``None``, you must " +"call :meth:`~Thread.is_alive` after :meth:`~Thread.join` to decide whether a " "timeout happened -- if the thread is still alive, the :meth:`~Thread.join` " "call timed out." msgstr "" @@ -741,9 +742,9 @@ msgid "" msgstr "" msgid "" -"If an attempt is made to join a running daemonic thread in late stages of :" -"term:`Python finalization ` :meth:`!join` raises a :" -"exc:`PythonFinalizationError`." +"If an attempt is made to join a running daemonic thread in late stages " +"of :term:`Python finalization ` :meth:`!join` raises " +"a :exc:`PythonFinalizationError`." msgstr "" msgid "May raise :exc:`PythonFinalizationError`." @@ -812,8 +813,8 @@ msgid "" "or not (``False``). This must be set before :meth:`~Thread.start` is " "called, otherwise :exc:`RuntimeError` is raised. Its initial value is " "inherited from the creating thread; the main thread is not a daemon thread " -"and therefore all threads created in the main thread default to :attr:" -"`~Thread.daemon` = ``False``." +"and therefore all threads created in the main thread default " +"to :attr:`~Thread.daemon` = ``False``." msgstr "" msgid "" @@ -831,21 +832,21 @@ msgstr "" msgid "" "A primitive lock is a synchronization primitive that is not owned by a " "particular thread when locked. In Python, it is currently the lowest level " -"synchronization primitive available, implemented directly by the :mod:" -"`_thread` extension module." +"synchronization primitive available, implemented directly by " +"the :mod:`_thread` extension module." msgstr "" msgid "" "A primitive lock is in one of two states, \"locked\" or \"unlocked\". It is " -"created in the unlocked state. It has two basic methods, :meth:`~Lock." -"acquire` and :meth:`~Lock.release`. When the state is unlocked, :meth:" -"`~Lock.acquire` changes the state to locked and returns immediately. When " -"the state is locked, :meth:`~Lock.acquire` blocks until a call to :meth:" -"`~Lock.release` in another thread changes it to unlocked, then the :meth:" -"`~Lock.acquire` call resets it to locked and returns. The :meth:`~Lock." -"release` method should only be called in the locked state; it changes the " -"state to unlocked and returns immediately. If an attempt is made to release " -"an unlocked lock, a :exc:`RuntimeError` will be raised." +"created in the unlocked state. It has two basic " +"methods, :meth:`~Lock.acquire` and :meth:`~Lock.release`. When the state is " +"unlocked, :meth:`~Lock.acquire` changes the state to locked and returns " +"immediately. When the state is locked, :meth:`~Lock.acquire` blocks until a " +"call to :meth:`~Lock.release` in another thread changes it to unlocked, then " +"the :meth:`~Lock.acquire` call resets it to locked and returns. " +"The :meth:`~Lock.release` method should only be called in the locked state; " +"it changes the state to unlocked and returns immediately. If an attempt is " +"made to release an unlocked lock, a :exc:`RuntimeError` will be raised." msgstr "" msgid "Locks also support the :ref:`context management protocol `." @@ -853,9 +854,9 @@ msgstr "" msgid "" "When more than one thread is blocked in :meth:`~Lock.acquire` waiting for " -"the state to turn to unlocked, only one thread proceeds when a :meth:`~Lock." -"release` call resets the state to unlocked; which one of the waiting threads " -"proceeds is not defined, and may vary across implementations." +"the state to turn to unlocked, only one thread proceeds when " +"a :meth:`~Lock.release` call resets the state to unlocked; which one of the " +"waiting threads proceeds is not defined, and may vary across implementations." msgstr "" msgid "All methods are executed atomically." @@ -941,15 +942,15 @@ msgid "" msgstr "" msgid "" -"Threads call a lock's :meth:`~RLock.acquire` method to lock it, and its :" -"meth:`~Lock.release` method to unlock it." +"Threads call a lock's :meth:`~RLock.acquire` method to lock it, and " +"its :meth:`~Lock.release` method to unlock it." msgstr "" msgid "" "Reentrant locks support the :ref:`context management protocol `, " -"so it is recommended to use :keyword:`with` instead of manually calling :" -"meth:`~RLock.acquire` and :meth:`~RLock.release` to handle acquiring and " -"releasing the lock for a block of code." +"so it is recommended to use :keyword:`with` instead of manually " +"calling :meth:`~RLock.acquire` and :meth:`~RLock.release` to handle " +"acquiring and releasing the lock for a block of code." msgstr "" msgid "" @@ -1039,9 +1040,9 @@ msgid "" msgstr "" msgid "" -"Only call this method when the calling thread owns the lock. A :exc:" -"`RuntimeError` is raised if this method is called when the lock is not " -"acquired." +"Only call this method when the calling thread owns the lock. " +"A :exc:`RuntimeError` is raised if this method is called when the lock is " +"not acquired." msgstr "" msgid "Return a boolean indicating whether this object is locked right now." @@ -1060,23 +1061,24 @@ msgstr "" msgid "" "A condition variable obeys the :ref:`context management protocol `: using the ``with`` statement acquires the associated lock for the " -"duration of the enclosed block. The :meth:`~Condition.acquire` and :meth:" -"`~Condition.release` methods also call the corresponding methods of the " -"associated lock." +"duration of the enclosed block. The :meth:`~Condition.acquire` " +"and :meth:`~Condition.release` methods also call the corresponding methods " +"of the associated lock." msgstr "" msgid "" -"Other methods must be called with the associated lock held. The :meth:" -"`~Condition.wait` method releases the lock, and then blocks until another " -"thread awakens it by calling :meth:`~Condition.notify` or :meth:`~Condition." -"notify_all`. Once awakened, :meth:`~Condition.wait` re-acquires the lock " -"and returns. It is also possible to specify a timeout." +"Other methods must be called with the associated lock held. " +"The :meth:`~Condition.wait` method releases the lock, and then blocks until " +"another thread awakens it by calling :meth:`~Condition.notify` " +"or :meth:`~Condition.notify_all`. Once awakened, :meth:`~Condition.wait` re-" +"acquires the lock and returns. It is also possible to specify a timeout." msgstr "" msgid "" "The :meth:`~Condition.notify` method wakes up one of the threads waiting for " -"the condition variable, if any are waiting. The :meth:`~Condition." -"notify_all` method wakes up all threads waiting for the condition variable." +"the condition variable, if any are waiting. " +"The :meth:`~Condition.notify_all` method wakes up all threads waiting for " +"the condition variable." msgstr "" msgid "" @@ -1091,11 +1093,11 @@ msgid "" "The typical programming style using condition variables uses the lock to " "synchronize access to some shared state; threads that are interested in a " "particular change of state call :meth:`~Condition.wait` repeatedly until " -"they see the desired state, while threads that modify the state call :meth:" -"`~Condition.notify` or :meth:`~Condition.notify_all` when they change the " -"state in such a way that it could possibly be a desired state for one of the " -"waiters. For example, the following code is a generic producer-consumer " -"situation with unlimited buffer capacity::" +"they see the desired state, while threads that modify the state " +"call :meth:`~Condition.notify` or :meth:`~Condition.notify_all` when they " +"change the state in such a way that it could possibly be a desired state for " +"one of the waiters. For example, the following code is a generic producer-" +"consumer situation with unlimited buffer capacity::" msgstr "" msgid "" @@ -1115,8 +1117,8 @@ msgid "" "The ``while`` loop checking for the application's condition is necessary " "because :meth:`~Condition.wait` can return after an arbitrary long time, and " "the condition which prompted the :meth:`~Condition.notify` call may no " -"longer hold true. This is inherent to multi-threaded programming. The :" -"meth:`~Condition.wait_for` method can be used to automate the condition " +"longer hold true. This is inherent to multi-threaded programming. " +"The :meth:`~Condition.wait_for` method can be used to automate the condition " "checking, and eases the computation of timeouts::" msgstr "" @@ -1128,11 +1130,11 @@ msgid "" msgstr "" msgid "" -"To choose between :meth:`~Condition.notify` and :meth:`~Condition." -"notify_all`, consider whether one state change can be interesting for only " -"one or several waiting threads. E.g. in a typical producer-consumer " -"situation, adding one item to the buffer only needs to wake up one consumer " -"thread." +"To choose between :meth:`~Condition.notify` " +"and :meth:`~Condition.notify_all`, consider whether one state change can be " +"interesting for only one or several waiting threads. E.g. in a typical " +"producer-consumer situation, adding one item to the buffer only needs to " +"wake up one consumer thread." msgstr "" msgid "" @@ -1179,12 +1181,12 @@ msgid "" msgstr "" msgid "" -"When the underlying lock is an :class:`RLock`, it is not released using its :" -"meth:`release` method, since this may not actually unlock the lock when it " -"was acquired multiple times recursively. Instead, an internal interface of " -"the :class:`RLock` class is used, which really unlocks it even when it has " -"been recursively acquired several times. Another internal interface is then " -"used to restore the recursion level when the lock is reacquired." +"When the underlying lock is an :class:`RLock`, it is not released using " +"its :meth:`release` method, since this may not actually unlock the lock when " +"it was acquired multiple times recursively. Instead, an internal interface " +"of the :class:`RLock` class is used, which really unlocks it even when it " +"has been recursively acquired several times. Another internal interface is " +"then used to restore the recursion level when the lock is reacquired." msgstr "" msgid "" @@ -1226,8 +1228,8 @@ msgstr "" msgid "" "By default, wake up one thread waiting on this condition, if any. If the " -"calling thread has not acquired the lock when this method is called, a :exc:" -"`RuntimeError` is raised." +"calling thread has not acquired the lock when this method is called, " +"a :exc:`RuntimeError` is raised." msgstr "" msgid "" @@ -1249,10 +1251,10 @@ msgid "" msgstr "" msgid "" -"Wake up all threads waiting on this condition. This method acts like :meth:" -"`notify`, but wakes up all waiting threads instead of one. If the calling " -"thread has not acquired the lock when this method is called, a :exc:" -"`RuntimeError` is raised." +"Wake up all threads waiting on this condition. This method acts " +"like :meth:`notify`, but wakes up all waiting threads instead of one. If the " +"calling thread has not acquired the lock when this method is called, " +"a :exc:`RuntimeError` is raised." msgstr "" msgid "The method ``notifyAll`` is a deprecated alias for this method." @@ -1264,16 +1266,16 @@ msgstr "" msgid "" "This is one of the oldest synchronization primitives in the history of " "computer science, invented by the early Dutch computer scientist Edsger W. " -"Dijkstra (he used the names ``P()`` and ``V()`` instead of :meth:`~Semaphore." -"acquire` and :meth:`~Semaphore.release`)." +"Dijkstra (he used the names ``P()`` and ``V()`` instead " +"of :meth:`~Semaphore.acquire` and :meth:`~Semaphore.release`)." msgstr "" msgid "" -"A semaphore manages an internal counter which is decremented by each :meth:" -"`~Semaphore.acquire` call and incremented by each :meth:`~Semaphore.release` " -"call. The counter can never go below zero; when :meth:`~Semaphore.acquire` " -"finds that it is zero, it blocks, waiting until some other thread calls :" -"meth:`~Semaphore.release`." +"A semaphore manages an internal counter which is decremented by " +"each :meth:`~Semaphore.acquire` call and incremented by " +"each :meth:`~Semaphore.release` call. The counter can never go below zero; " +"when :meth:`~Semaphore.acquire` finds that it is zero, it blocks, waiting " +"until some other thread calls :meth:`~Semaphore.release`." msgstr "" msgid "" @@ -1306,10 +1308,10 @@ msgid "" msgstr "" msgid "" -"If the internal counter is zero on entry, block until awoken by a call to :" -"meth:`~Semaphore.release`. Once awoken (and the counter is greater than 0), " -"decrement the counter by 1 and return ``True``. Exactly one thread will be " -"awoken by each call to :meth:`~Semaphore.release`. The order in which " +"If the internal counter is zero on entry, block until awoken by a call " +"to :meth:`~Semaphore.release`. Once awoken (and the counter is greater than " +"0), decrement the counter by 1 and return ``True``. Exactly one thread will " +"be awoken by each call to :meth:`~Semaphore.release`. The order in which " "threads are awoken should not be relied on." msgstr "" @@ -1336,10 +1338,10 @@ msgstr "" msgid "" "Class implementing bounded semaphore objects. A bounded semaphore checks to " -"make sure its current value doesn't exceed its initial value. If it does, :" -"exc:`ValueError` is raised. In most situations semaphores are used to guard " -"resources with limited capacity. If the semaphore is released too many " -"times it's a sign of a bug. If not given, *value* defaults to 1." +"make sure its current value doesn't exceed its initial value. If it " +"does, :exc:`ValueError` is raised. In most situations semaphores are used to " +"guard resources with limited capacity. If the semaphore is released too " +"many times it's a sign of a bug. If not given, *value* defaults to 1." msgstr "" msgid ":class:`Semaphore` example" @@ -1387,16 +1389,17 @@ msgid "" msgstr "" msgid "" -"An event object manages an internal flag that can be set to true with the :" -"meth:`~Event.set` method and reset to false with the :meth:`~Event.clear` " -"method. The :meth:`~Event.wait` method blocks until the flag is true." +"An event object manages an internal flag that can be set to true with " +"the :meth:`~Event.set` method and reset to false with " +"the :meth:`~Event.clear` method. The :meth:`~Event.wait` method blocks " +"until the flag is true." msgstr "" msgid "" "Class implementing event objects. An event manages a flag that can be set " -"to true with the :meth:`~Event.set` method and reset to false with the :meth:" -"`clear` method. The :meth:`wait` method blocks until the flag is true. The " -"flag is initially false." +"to true with the :meth:`~Event.set` method and reset to false with " +"the :meth:`clear` method. The :meth:`wait` method blocks until the flag is " +"true. The flag is initially false." msgstr "" msgid "Return ``True`` if and only if the internal flag is true." @@ -1436,9 +1439,9 @@ msgstr "" msgid "" "This class represents an action that should be run only after a certain " -"amount of time has passed --- a timer. :class:`Timer` is a subclass of :" -"class:`Thread` and as such also functions as an example of creating custom " -"threads." +"amount of time has passed --- a timer. :class:`Timer` is a subclass " +"of :class:`Thread` and as such also functions as an example of creating " +"custom threads." msgstr "" msgid "" @@ -1583,8 +1586,8 @@ msgid "A boolean that is ``True`` if the barrier is in the broken state." msgstr "" msgid "" -"This exception, a subclass of :exc:`RuntimeError`, is raised when the :class:" -"`Barrier` object is reset or broken." +"This exception, a subclass of :exc:`RuntimeError`, is raised when " +"the :class:`Barrier` object is reset or broken." msgstr "" msgid "" @@ -1616,9 +1619,9 @@ msgid "" msgstr "" msgid "" -"Currently, :class:`Lock`, :class:`RLock`, :class:`Condition`, :class:" -"`Semaphore`, and :class:`BoundedSemaphore` objects may be used as :keyword:" -"`with` statement context managers." +"Currently, :class:`Lock`, :class:`RLock`, :class:`Condition`, :class:`Semaphore`, " +"and :class:`BoundedSemaphore` objects may be used as :keyword:`with` " +"statement context managers." msgstr "" msgid "Iterator synchronization" @@ -1648,14 +1651,14 @@ msgid "" msgstr "" msgid "" -"Return an iterator wrapper that serializes concurrent calls to :meth:" -"`~iterator.__next__` using a lock." +"Return an iterator wrapper that serializes concurrent calls " +"to :meth:`~iterator.__next__` using a lock." msgstr "" msgid "" -"If the wrapped iterator also defines :meth:`~generator.send`, :meth:" -"`~generator.throw`, or :meth:`~generator.close`, those calls are serialized " -"as well." +"If the wrapped iterator also " +"defines :meth:`~generator.send`, :meth:`~generator.throw`, " +"or :meth:`~generator.close`, those calls are serialized as well." msgstr "" msgid "" @@ -1762,8 +1765,8 @@ msgid "" msgstr "" msgid "" -"If *n* is ``0``, return an empty tuple. If *n* is negative, raise :exc:" -"`ValueError`." +"If *n* is ``0``, return an empty tuple. If *n* is negative, " +"raise :exc:`ValueError`." msgstr "" msgid "" diff --git a/library/threadsafety.po b/library/threadsafety.po deleted file mode 100644 index 3f5863b..0000000 --- a/library/threadsafety.po +++ /dev/null @@ -1,702 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 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.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" -"PO-Revision-Date: 2026-02-27 14:38+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "Thread Safety Guarantees" -msgstr "" - -msgid "" -"This page documents thread-safety guarantees for built-in types in Python's " -"free-threaded build. The guarantees described here apply when using Python " -"with the :term:`GIL` disabled (free-threaded mode). When the GIL is enabled, " -"most operations are implicitly serialized." -msgstr "" - -msgid "" -"For general guidance on writing thread-safe code in free-threaded Python, " -"see :ref:`freethreading-python-howto`." -msgstr "" - -msgid "Thread safety levels" -msgstr "" - -msgid "" -"The C API documentation uses the following levels to describe the thread " -"safety guarantees of each function. The levels are listed from least to most " -"safe." -msgstr "" - -msgid "Incompatible" -msgstr "" - -msgid "" -"A function or operation that cannot be made safe for concurrent use even " -"with external synchronization. Incompatible code typically accesses global " -"state in an unsynchronized way and must only be called from a single thread " -"throughout the program's lifetime." -msgstr "" - -msgid "" -"Example: a function that modifies process-wide state such as signal handlers " -"or environment variables, where concurrent calls from any threads, even with " -"external locking, can conflict with the runtime or other libraries." -msgstr "" - -msgid "Compatible" -msgstr "" - -msgid "" -"A function or operation that is safe to call from multiple threads " -"*provided* the caller supplies appropriate external synchronization, for " -"example by holding a :term:`lock` for the duration of each call. Without " -"such synchronization, concurrent calls may produce :term:`race conditions " -"` or :term:`data races `." -msgstr "" - -msgid "" -"Example: a function that reads from or writes to an object whose internal " -"state is not protected by a lock. Callers must ensure that no two threads " -"access the same object at the same time." -msgstr "" - -msgid "Safe on distinct objects" -msgstr "" - -msgid "" -"A function or operation that is safe to call from multiple threads without " -"external synchronization, as long as each thread operates on a **different** " -"object. Two threads may call the function at the same time, but they must " -"not pass the same object (or objects that share underlying state) as " -"arguments." -msgstr "" - -msgid "" -"Example: a function that modifies fields of a struct using non-atomic " -"writes. Two threads can each call the function on their own struct instance " -"safely, but concurrent calls on the *same* instance require external " -"synchronization." -msgstr "" - -msgid "Safe on shared objects" -msgstr "" - -msgid "" -"A function or operation that is safe for concurrent use on the **same** " -"object. The implementation uses internal synchronization (such as :term:`per-" -"object locks ` or :ref:`critical sections `) to protect shared mutable state, so callers do not need to " -"supply their own locking." -msgstr "" - -msgid "" -"Example: :c:func:`PyList_GetItemRef` can be called from multiple threads on " -"the same :c:type:`PyListObject` - it uses internal synchronization to " -"serialize access." -msgstr "" - -msgid "Atomic" -msgstr "" - -msgid "" -"A function or operation that appears :term:`atomic ` with " -"respect to other threads - it executes instantaneously from the perspective " -"of other threads. This is the strongest form of thread safety." -msgstr "" - -msgid "" -"Example: :c:func:`PyMutex_IsLocked` performs an atomic read of the mutex " -"state and can be called from any thread at any time." -msgstr "" - -msgid "Thread safety for list objects" -msgstr "" - -msgid "" -"Reading a single element from a :class:`list` is :term:`atomic `:" -msgstr "" - -msgid "lst[i] # list.__getitem__" -msgstr "" - -msgid "" -"The following methods traverse the list and use :term:`atomic ` reads of each item to perform their function. That means that " -"they may return results affected by concurrent modifications:" -msgstr "" - -msgid "" -"item in lst\n" -"lst.index(item)\n" -"lst.count(item)" -msgstr "" - -msgid "" -"All of the above operations avoid acquiring :term:`per-object locks `. They do not block concurrent modifications. Other operations " -"that hold a lock will not block these from observing intermediate states." -msgstr "" - -msgid "" -"All other operations from here on block using the :term:`per-object lock`." -msgstr "" - -msgid "" -"Writing a single item via ``lst[i] = x`` is safe to call from multiple " -"threads and will not corrupt the list." -msgstr "" - -msgid "" -"The following operations return new objects and appear :term:`atomic ` to other threads:" -msgstr "" - -msgid "" -"lst1 + lst2 # concatenates two lists into a new list\n" -"x * lst # repeats lst x times into a new list\n" -"lst.copy() # returns a shallow copy of the list" -msgstr "" - -msgid "" -"The following methods that only operate on a single element with no shifting " -"required are :term:`atomic `:" -msgstr "" - -msgid "" -"lst.append(x) # append to the end of the list, no shifting required\n" -"lst.pop() # pop element from the end of the list, no shifting required" -msgstr "" - -msgid "" -"The :meth:`~list.clear` method is also :term:`atomic `. " -"Other threads cannot observe elements being removed." -msgstr "" - -msgid "" -"The :meth:`~list.sort` method is not :term:`atomic `. " -"Other threads cannot observe intermediate states during sorting, but the " -"list appears empty for the duration of the sort." -msgstr "" - -msgid "" -"The following operations may allow :term:`lock-free` operations to observe " -"intermediate states since they modify multiple elements in place:" -msgstr "" - -msgid "" -"lst.insert(idx, item) # shifts elements\n" -"lst.pop(idx) # idx not at the end of the list, shifts elements\n" -"lst *= x # copies elements in place" -msgstr "" - -msgid "" -"The :meth:`~list.remove` method may allow concurrent modifications since " -"element comparison may execute arbitrary Python code (via :meth:`~object." -"__eq__`)." -msgstr "" - -msgid "" -":meth:`~list.extend` is safe to call from multiple threads. However, its " -"guarantees depend on the iterable passed to it. If it is a :class:`list`, a :" -"class:`tuple`, a :class:`set`, a :class:`frozenset`, a :class:`dict` or a :" -"ref:`dictionary view object ` (but not their subclasses), the " -"``extend`` operation is safe from concurrent modifications to the iterable. " -"Otherwise, an iterator is created which can be concurrently modified by " -"another thread. The same applies to inplace concatenation of a list with " -"other iterables when using ``lst += iterable``." -msgstr "" - -msgid "" -"Similarly, assigning to a list slice with ``lst[i:j] = iterable`` is safe to " -"call from multiple threads, but ``iterable`` is only locked when it is also " -"a :class:`list` (but not its subclasses)." -msgstr "" - -msgid "" -"Operations that involve multiple accesses, as well as iteration, are never " -"atomic. For example:" -msgstr "" - -msgid "" -"# NOT atomic: read-modify-write\n" -"lst[i] = lst[i] + 1\n" -"\n" -"# NOT atomic: check-then-act\n" -"if lst:\n" -" item = lst.pop()\n" -"\n" -"# NOT thread-safe: iteration while modifying\n" -"for item in lst:\n" -" process(item) # another thread may modify lst" -msgstr "" - -msgid "" -"Consider external synchronization when sharing :class:`list` instances " -"across threads." -msgstr "" - -msgid "Thread safety for dict objects" -msgstr "" - -msgid "" -"Creating a dictionary with the :class:`dict` constructor is atomic when the " -"argument to it is a :class:`dict` or a :class:`tuple`. When using the :meth:" -"`dict.fromkeys` method, dictionary creation is atomic when the argument is " -"a :class:`dict`, :class:`tuple`, :class:`set` or :class:`frozenset`." -msgstr "" - -msgid "" -"The following operations and functions are :term:`lock-free` and :term:" -"`atomic `." -msgstr "" - -msgid "" -"d[key] # dict.__getitem__\n" -"d.get(key) # dict.get\n" -"key in d # dict.__contains__\n" -"len(d) # dict.__len__" -msgstr "" - -msgid "All other operations from here on hold the :term:`per-object lock`." -msgstr "" - -msgid "" -"Writing or removing a single item is safe to call from multiple threads and " -"will not corrupt the dictionary:" -msgstr "" - -msgid "" -"d[key] = value # write\n" -"del d[key] # delete\n" -"d.pop(key) # remove and return\n" -"d.popitem() # remove and return last item\n" -"d.setdefault(key, v) # insert if missing" -msgstr "" - -msgid "" -"These operations may compare keys using :meth:`~object.__eq__`, which can " -"execute arbitrary Python code. During such comparisons, the dictionary may " -"be modified by another thread. For built-in types like :class:`str`, :class:" -"`int`, and :class:`float`, that implement :meth:`~object.__eq__` in C, the " -"underlying lock is not released during comparisons and this is not a concern." -msgstr "" - -msgid "" -"The following operations return new objects and hold the :term:`per-object " -"lock` for the duration of the operation:" -msgstr "" - -msgid "" -"d.copy() # returns a shallow copy of the dictionary\n" -"d | other # merges two dicts into a new dict\n" -"d.keys() # returns a new dict_keys view object\n" -"d.values() # returns a new dict_values view object\n" -"d.items() # returns a new dict_items view object" -msgstr "" - -msgid "" -"The :meth:`~dict.clear` method holds the lock for its duration. Other " -"threads cannot observe elements being removed." -msgstr "" - -msgid "" -"The following operations lock both dictionaries. For :meth:`~dict.update` " -"and ``|=``, this applies only when the other operand is a :class:`dict` that " -"uses the standard dict iterator (but not subclasses that override " -"iteration). For equality comparison, this applies to :class:`dict` and its " -"subclasses:" -msgstr "" - -msgid "" -"d.update(other_dict) # both locked when other_dict is a dict\n" -"d |= other_dict # both locked when other_dict is a dict\n" -"d == other_dict # both locked for dict and subclasses" -msgstr "" - -msgid "" -"All comparison operations also compare values using :meth:`~object.__eq__`, " -"so for non-built-in types the lock may be released during comparison." -msgstr "" - -msgid "" -":meth:`~dict.fromkeys` locks both the new dictionary and the iterable when " -"the iterable is exactly a :class:`dict`, :class:`set`, or :class:`frozenset` " -"(not subclasses):" -msgstr "" - -msgid "" -"dict.fromkeys(a_dict) # locks both\n" -"dict.fromkeys(a_set) # locks both\n" -"dict.fromkeys(a_frozenset) # locks both" -msgstr "" - -msgid "" -"When updating from a non-dict iterable, only the target dictionary is " -"locked. The iterable may be concurrently modified by another thread:" -msgstr "" - -msgid "" -"d.update(iterable) # iterable is not a dict: only d locked\n" -"d |= iterable # iterable is not a dict: only d locked\n" -"dict.fromkeys(iterable) # iterable is not a dict/set/frozenset: only " -"result locked" -msgstr "" - -msgid "" -"Operations that involve multiple accesses, as well as iteration, are never " -"atomic:" -msgstr "" - -msgid "" -"# NOT atomic: read-modify-write\n" -"d[key] = d[key] + 1\n" -"\n" -"# NOT atomic: check-then-act (TOCTOU)\n" -"if key in d:\n" -" del d[key]\n" -"\n" -"# NOT thread-safe: iteration while modifying\n" -"for key, value in d.items():\n" -" process(key) # another thread may modify d" -msgstr "" - -msgid "" -"To avoid time-of-check to time-of-use (TOCTOU) issues, use atomic operations " -"or handle exceptions:" -msgstr "" - -msgid "" -"# Use pop() with default instead of check-then-delete\n" -"d.pop(key, None)\n" -"\n" -"# Or handle the exception\n" -"try:\n" -" del d[key]\n" -"except KeyError:\n" -" pass" -msgstr "" - -msgid "" -"To safely iterate over a dictionary that may be modified by another thread, " -"iterate over a copy:" -msgstr "" - -msgid "" -"# Make a copy to iterate safely\n" -"for key, value in d.copy().items():\n" -" process(key)" -msgstr "" - -msgid "" -"Consider external synchronization when sharing :class:`dict` instances " -"across threads." -msgstr "" - -msgid "Thread safety for set objects" -msgstr "" - -msgid "" -"The :func:`len` function is lock-free and :term:`atomic `." -msgstr "" - -msgid "" -"The following read operation is lock-free. It does not block concurrent " -"modifications and may observe intermediate states from operations that hold " -"the per-object lock:" -msgstr "" - -msgid "elem in s # set.__contains__" -msgstr "" - -msgid "" -"This operation may compare elements using :meth:`~object.__eq__`, which can " -"execute arbitrary Python code. During such comparisons, the set may be " -"modified by another thread. For built-in types like :class:`str`, :class:" -"`int`, and :class:`float`, :meth:`!__eq__` does not release the underlying " -"lock during comparisons and this is not a concern." -msgstr "" - -msgid "All other operations from here on hold the per-object lock." -msgstr "" - -msgid "" -"Adding or removing a single element is safe to call from multiple threads " -"and will not corrupt the set:" -msgstr "" - -msgid "" -"s.add(elem) # add element\n" -"s.remove(elem) # remove element, raise if missing\n" -"s.discard(elem) # remove element if present\n" -"s.pop() # remove and return arbitrary element" -msgstr "" - -msgid "" -"These operations also compare elements, so the same :meth:`~object.__eq__` " -"considerations as above apply." -msgstr "" - -msgid "" -"The :meth:`~set.copy` method returns a new object and holds the per-object " -"lock for the duration so that it is always atomic." -msgstr "" - -msgid "" -"The :meth:`~set.clear` method holds the lock for its duration. Other threads " -"cannot observe elements being removed." -msgstr "" - -msgid "" -"The following operations only accept :class:`set` or :class:`frozenset` as " -"operands and always lock both objects:" -msgstr "" - -msgid "" -"s |= other # other must be set/frozenset\n" -"s &= other # other must be set/frozenset\n" -"s -= other # other must be set/frozenset\n" -"s ^= other # other must be set/frozenset\n" -"s & other # other must be set/frozenset\n" -"s | other # other must be set/frozenset\n" -"s - other # other must be set/frozenset\n" -"s ^ other # other must be set/frozenset" -msgstr "" - -msgid "" -":meth:`set.update`, :meth:`set.union`, :meth:`set.intersection` and :meth:" -"`set.difference` can take multiple iterables as arguments. They all iterate " -"through all the passed iterables and do the following:" -msgstr "" - -msgid ":meth:`set.update` and :meth:`set.union` lock both objects only when" -msgstr "" - -msgid "" -"the other operand is a :class:`set`, :class:`frozenset`, or :class:`dict`." -msgstr "" - -msgid ":meth:`set.intersection` and :meth:`set.difference` always try to lock" -msgstr "" - -msgid "all objects." -msgstr "" - -msgid ":meth:`set.symmetric_difference` tries to lock both objects." -msgstr "" - -msgid "" -"The update variants of the above methods also have some differences between " -"them:" -msgstr "" - -msgid ":meth:`set.difference_update` and :meth:`set.intersection_update` try" -msgstr "" - -msgid "to lock all objects one-by-one." -msgstr "" - -msgid "" -":meth:`set.symmetric_difference_update` only locks the arguments if it is" -msgstr "" - -msgid "of type :class:`set`, :class:`frozenset`, or :class:`dict`." -msgstr "" - -msgid "The following methods always try to lock both objects:" -msgstr "" - -msgid "" -"s.isdisjoint(other) # both locked\n" -"s.issubset(other) # both locked\n" -"s.issuperset(other) # both locked" -msgstr "" - -msgid "" -"# NOT atomic: check-then-act\n" -"if elem in s:\n" -" s.remove(elem)\n" -"\n" -"# NOT thread-safe: iteration while modifying\n" -"for elem in s:\n" -" process(elem) # another thread may modify s" -msgstr "" - -msgid "" -"Consider external synchronization when sharing :class:`set` instances across " -"threads. See :ref:`freethreading-python-howto` for more information." -msgstr "" - -msgid "Thread safety for bytearray objects" -msgstr "" - -msgid "" -"Concatenation and comparisons use the buffer protocol, which prevents " -"resizing but does not hold the per-object lock. These operations may observe " -"intermediate states from concurrent modifications:" -msgstr "" - -msgid "" -"ba + other # may observe concurrent writes\n" -"ba == other # may observe concurrent writes\n" -"ba < other # may observe concurrent writes" -msgstr "" - -msgid "" -"Reading a single element or slice is safe to call from multiple threads:" -msgstr "" - -msgid "" -"ba[i] # bytearray.__getitem__\n" -"ba[i:j] # slice" -msgstr "" - -msgid "" -"The following operations are safe to call from multiple threads and will not " -"corrupt the bytearray:" -msgstr "" - -msgid "" -"ba[i] = x # write single byte\n" -"ba[i:j] = values # write slice\n" -"ba.append(x) # append single byte\n" -"ba.extend(other) # extend with iterable\n" -"ba.insert(i, x) # insert single byte\n" -"ba.pop() # remove and return last byte\n" -"ba.pop(i) # remove and return byte at index\n" -"ba.remove(x) # remove first occurrence\n" -"ba.reverse() # reverse in place\n" -"ba.clear() # remove all bytes" -msgstr "" - -msgid "" -"Slice assignment locks both objects when *values* is a :class:`bytearray`:" -msgstr "" - -msgid "ba[i:j] = other_bytearray # both locked" -msgstr "" - -msgid "" -"The following operations return new objects and hold the per-object lock for " -"the duration:" -msgstr "" - -msgid "" -"ba.copy() # returns a shallow copy\n" -"ba * n # repeat into new bytearray" -msgstr "" - -msgid "The membership test holds the lock for its duration:" -msgstr "" - -msgid "x in ba # bytearray.__contains__" -msgstr "" - -msgid "" -"All other bytearray methods (such as :meth:`~bytearray.find`, :meth:" -"`~bytearray.replace`, :meth:`~bytearray.split`, :meth:`~bytearray.decode`, " -"etc.) hold the per-object lock for their duration." -msgstr "" - -msgid "" -"# NOT atomic: check-then-act\n" -"if x in ba:\n" -" ba.remove(x)\n" -"\n" -"# NOT thread-safe: iteration while modifying\n" -"for byte in ba:\n" -" process(byte) # another thread may modify ba" -msgstr "" - -msgid "" -"To safely iterate over a bytearray that may be modified by another thread, " -"iterate over a copy:" -msgstr "" - -msgid "" -"# Make a copy to iterate safely\n" -"for byte in ba.copy():\n" -" process(byte)" -msgstr "" - -msgid "" -"Consider external synchronization when sharing :class:`bytearray` instances " -"across threads. See :ref:`freethreading-python-howto` for more information." -msgstr "" - -msgid "Thread safety for memoryview objects" -msgstr "" - -msgid "" -":class:`memoryview` objects provide access to the internal data of an " -"underlying object without copying. Thread safety depends on both the " -"memoryview itself and the underlying buffer exporter." -msgstr "" - -msgid "" -"The memoryview implementation uses atomic operations to track its own " -"exports in the :term:`free-threaded build`. Creating and releasing a " -"memoryview are thread-safe. Attribute access (e.g., :attr:`~memoryview." -"shape`, :attr:`~memoryview.format`) reads fields that are immutable for the " -"lifetime of the memoryview, so concurrent reads are safe as long as the " -"memoryview has not been released." -msgstr "" - -msgid "" -"However, the actual data accessed through the memoryview is owned by the " -"underlying object. Concurrent access to this data is only safe if the " -"underlying object supports it:" -msgstr "" - -msgid "" -"For immutable objects like :class:`bytes`, concurrent reads through multiple " -"memoryviews are safe." -msgstr "" - -msgid "" -"For mutable objects like :class:`bytearray`, reading and writing the same " -"memory region from multiple threads without external synchronization is not " -"safe and may result in data corruption. Note that even read-only memoryviews " -"of mutable objects do not prevent data races if the underlying object is " -"modified from another thread." -msgstr "" - -msgid "" -"# NOT safe: concurrent writes to the same buffer\n" -"data = bytearray(1000)\n" -"view = memoryview(data)\n" -"# Thread 1: view[0:500] = b'x' * 500\n" -"# Thread 2: view[0:500] = b'y' * 500" -msgstr "" - -msgid "" -"# Safe: use a lock for concurrent access\n" -"import threading\n" -"lock = threading.Lock()\n" -"data = bytearray(1000)\n" -"view = memoryview(data)\n" -"\n" -"with lock:\n" -" view[0:500] = b'x' * 500" -msgstr "" - -msgid "" -"Resizing or reallocating the underlying object (such as calling :meth:" -"`bytearray.resize`) while a memoryview is exported raises :exc:" -"`BufferError`. This is enforced regardless of threading." -msgstr "" diff --git a/library/time.po b/library/time.po index ebe7e69..56c1dcf 100644 --- a/library/time.po +++ b/library/time.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,32 +89,32 @@ msgstr "" msgid "" "On the other hand, the precision of :func:`.time` and :func:`sleep` is " "better than their Unix equivalents: times are expressed as floating-point " -"numbers, :func:`.time` returns the most accurate time available (using Unix :" -"c:func:`!gettimeofday` where available), and :func:`sleep` will accept a " -"time with a nonzero fraction (Unix :c:func:`!select` is used to implement " +"numbers, :func:`.time` returns the most accurate time available (using " +"Unix :c:func:`!gettimeofday` where available), and :func:`sleep` will accept " +"a time with a nonzero fraction (Unix :c:func:`!select` is used to implement " "this, where available)." msgstr "" msgid "" -"The time value as returned by :func:`gmtime`, :func:`localtime`, and :func:" -"`strptime`, and accepted by :func:`asctime`, :func:`mktime` and :func:" -"`strftime`, is a sequence of 9 integers. The return values of :func:" -"`gmtime`, :func:`localtime`, and :func:`strptime` also offer attribute names " -"for individual fields." +"The time value as returned by :func:`gmtime`, :func:`localtime`, " +"and :func:`strptime`, and accepted by :func:`asctime`, :func:`mktime` " +"and :func:`strftime`, is a sequence of 9 integers. The return values " +"of :func:`gmtime`, :func:`localtime`, and :func:`strptime` also offer " +"attribute names for individual fields." msgstr "" msgid "See :class:`struct_time` for a description of these objects." msgstr "" msgid "" -"The :class:`struct_time` type was extended to provide the :attr:" -"`~struct_time.tm_gmtoff` and :attr:`~struct_time.tm_zone` attributes when " -"platform supports corresponding ``struct tm`` members." +"The :class:`struct_time` type was extended to provide " +"the :attr:`~struct_time.tm_gmtoff` and :attr:`~struct_time.tm_zone` " +"attributes when platform supports corresponding ``struct tm`` members." msgstr "" msgid "" -"The :class:`struct_time` attributes :attr:`~struct_time.tm_gmtoff` and :attr:" -"`~struct_time.tm_zone` are now available on all platforms." +"The :class:`struct_time` attributes :attr:`~struct_time.tm_gmtoff` " +"and :attr:`~struct_time.tm_zone` are now available on all platforms." msgstr "" msgid "Use the following functions to convert between time representations:" @@ -154,15 +154,17 @@ msgid "Functions" msgstr "" msgid "" -"Convert a tuple or :class:`struct_time` representing a time as returned by :" -"func:`gmtime` or :func:`localtime` to a string of the following form: ``'Sun " -"Jun 20 23:21:05 1993'``. The day field is two characters long and is space " -"padded if the day is a single digit, e.g.: ``'Wed Jun 9 04:26:40 1993'``." +"Convert a tuple or :class:`struct_time` representing a time as returned " +"by :func:`gmtime` or :func:`localtime` to a string of the following form: " +"``'Sun Jun 20 23:21:05 1993'``. The day field is two characters long and is " +"space padded if the day is a single digit, for example: ``'Wed Jun 9 " +"04:26:40 1993'``." msgstr "" msgid "" -"If *t* is not provided, the current time as returned by :func:`localtime` is " -"used. Locale information is not used by :func:`asctime`." +"If *time_tuple* is not provided, the current time as returned " +"by :func:`localtime` is used. Locale information is not used " +"by :func:`asctime`." msgstr "" msgid "" @@ -205,21 +207,21 @@ msgid "" msgstr "" msgid "" -"Use :func:`clock_gettime_ns` to avoid the precision loss caused by the :" -"class:`float` type." +"Use :func:`clock_gettime_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "Similar to :func:`clock_gettime` but return time as nanoseconds." msgstr "" msgid "" -"Set the time of the specified clock *clk_id*. Currently, :data:" -"`CLOCK_REALTIME` is the only accepted value for *clk_id*." +"Set the time of the specified clock *clk_id*. " +"Currently, :data:`CLOCK_REALTIME` is the only accepted value for *clk_id*." msgstr "" msgid "" -"Use :func:`clock_settime_ns` to avoid the precision loss caused by the :" -"class:`float` type." +"Use :func:`clock_settime_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "Accepts any real number as *time*, not only integer or float." @@ -231,15 +233,15 @@ msgstr "" msgid "" "Convert a time expressed in seconds since the epoch_ to a string of a form: " "``'Sun Jun 20 23:21:05 1993'`` representing local time. The day field is two " -"characters long and is space padded if the day is a single digit, e.g.: " -"``'Wed Jun 9 04:26:40 1993'``." +"characters long and is space padded if the day is a single digit, for " +"example: ``'Wed Jun 9 04:26:40 1993'``." msgstr "" msgid "" -"If *secs* is not provided or :const:`None`, the current time as returned by :" -"func:`.time` is used. ``ctime(secs)`` is equivalent to " -"``asctime(localtime(secs))``. Locale information is not used by :func:" -"`ctime`." +"If *seconds* is not provided or :const:`None`, the current time as returned " +"by :func:`.time` is used. ``ctime(seconds)`` is equivalent to " +"``asctime(localtime(seconds))``. Locale information is not used " +"by :func:`ctime`." msgstr "" msgid "Accepts any real number, not only integer or float." @@ -286,35 +288,35 @@ msgid "*resolution*: The resolution of the clock in seconds (:class:`float`)" msgstr "" msgid "" -"Convert a time expressed in seconds since the epoch_ to a :class:" -"`struct_time` in UTC in which the dst flag is always zero. If *secs* is not " -"provided or :const:`None`, the current time as returned by :func:`.time` is " -"used. Fractions of a second are ignored. See above for a description of " -"the :class:`struct_time` object. See :func:`calendar.timegm` for the inverse " -"of this function." +"Convert a time expressed in seconds since the epoch_ to " +"a :class:`struct_time` in UTC in which the dst flag is always zero. If " +"*seconds* is not provided or :const:`None`, the current time as returned " +"by :func:`.time` is used. Fractions of a second are ignored. See above for " +"a description of the :class:`struct_time` object. " +"See :func:`calendar.timegm` for the inverse of this function." msgstr "" msgid "" -"Like :func:`gmtime` but converts to local time. If *secs* is not provided " -"or :const:`None`, the current time as returned by :func:`.time` is used. " -"The dst flag is set to ``1`` when DST applies to the given time." +"Like :func:`gmtime` but converts to local time. If *seconds* is not provided " +"or :const:`None`, the current time as returned by :func:`.time` is used. The " +"dst flag is set to ``1`` when DST applies to the given time." msgstr "" msgid "" ":func:`localtime` may raise :exc:`OverflowError`, if the timestamp is " "outside the range of values supported by the platform C :c:func:`localtime` " -"or :c:func:`gmtime` functions, and :exc:`OSError` on :c:func:`localtime` or :" -"c:func:`gmtime` failure. It's common for this to be restricted to years " +"or :c:func:`gmtime` functions, and :exc:`OSError` on :c:func:`localtime` " +"or :c:func:`gmtime` failure. It's common for this to be restricted to years " "between 1970 and 2038." msgstr "" msgid "" -"This is the inverse function of :func:`localtime`. Its argument is the :" -"class:`struct_time` or full 9-tuple (since the dst flag is needed; use " +"This is the inverse function of :func:`localtime`. Its argument is " +"the :class:`struct_time` or full 9-tuple (since the dst flag is needed; use " "``-1`` as the dst flag if it is unknown) which expresses the time in *local* " -"time, not UTC. It returns a floating-point number, for compatibility with :" -"func:`.time`. If the input value cannot be represented as a valid time, " -"either :exc:`OverflowError` or :exc:`ValueError` will be raised (which " +"time, not UTC. It returns a floating-point number, for compatibility " +"with :func:`.time`. If the input value cannot be represented as a valid " +"time, either :exc:`OverflowError` or :exc:`ValueError` will be raised (which " "depends on whether the invalid value is caught by Python or the underlying C " "libraries). The earliest date for which it can generate a time is platform-" "dependent." @@ -348,8 +350,8 @@ msgid "Otherwise, call ``clock_gettime(CLOCK_MONOTONIC)``." msgstr "" msgid "" -"Use :func:`monotonic_ns` to avoid the precision loss caused by the :class:" -"`float` type." +"Use :func:`monotonic_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "" @@ -377,8 +379,8 @@ msgid "" msgstr "" msgid "" -"Use :func:`perf_counter_ns` to avoid the precision loss caused by the :class:" -"`float` type." +"Use :func:`perf_counter_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "On Windows, the clock is now the same for all processes." @@ -399,8 +401,8 @@ msgid "" msgstr "" msgid "" -"Use :func:`process_time_ns` to avoid the precision loss caused by the :class:" -"`float` type." +"Use :func:`process_time_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "Similar to :func:`process_time` but return time as nanoseconds." @@ -425,13 +427,13 @@ msgid "Windows implementation" msgstr "" msgid "" -"On Windows, if *secs* is zero, the thread relinquishes the remainder of its " -"time slice to any other thread that is ready to run. If there are no other " -"threads ready to run, the function returns immediately, and the thread " -"continues execution. On Windows 10 and newer the implementation uses a " -"`high-resolution timer `_ which provides resolution of " -"100 nanoseconds. If *secs* is zero, ``Sleep(0)`` is used." +"On Windows, if *seconds* is zero, the thread relinquishes the remainder of " +"its time slice to any other thread that is ready to run. If there are no " +"other threads ready to run, the function returns immediately, and the thread " +"continues execution. On Windows 10 and newer the implementation uses a `high-" +"resolution timer `_ which provides resolution of 100 " +"nanoseconds. If *seconds* is zero, ``Sleep(0)`` is used." msgstr "" msgid "Unix implementation" @@ -457,13 +459,13 @@ msgstr "" msgid "" "Raises an :ref:`auditing event ` ``time.sleep`` with argument " -"``secs``." +"``seconds``." msgstr "" msgid "" -"The function now sleeps at least *secs* even if the sleep is interrupted by " -"a signal, except if the signal handler raises an exception (see :pep:`475` " -"for the rationale)." +"The function now sleeps at least *seconds* even if the sleep is interrupted " +"by a signal, except if the signal handler raises an exception " +"(see :pep:`475` for the rationale)." msgstr "" msgid "" @@ -475,11 +477,12 @@ msgid "Raises an auditing event." msgstr "" msgid "" -"Convert a tuple or :class:`struct_time` representing a time as returned by :" -"func:`gmtime` or :func:`localtime` to a string as specified by the *format* " -"argument. If *t* is not provided, the current time as returned by :func:" -"`localtime` is used. *format* must be a string. :exc:`ValueError` is " -"raised if any field in *t* is outside of the allowed range." +"Convert a tuple or :class:`struct_time` representing a time as returned " +"by :func:`gmtime` or :func:`localtime` to a string as specified by the " +"*format* argument. If *time_tuple* is not provided, the current time as " +"returned by :func:`localtime` is used. *format* must be a " +"string. :exc:`ValueError` is raised if any field in *time_tuple* is outside " +"of the allowed range." msgstr "" msgid "" @@ -541,10 +544,7 @@ msgstr "" msgid "``%f``" msgstr "" -msgid "Microseconds as a decimal number" -msgstr "" - -msgid "[000000,999999]." +msgid "Microseconds as a decimal number [000000,999999]." msgstr "" msgid "\\(1)" @@ -698,10 +698,10 @@ msgid "Notes:" msgstr "" msgid "" -"The ``%f`` format directive only applies to :func:`strptime`, not to :func:" -"`strftime`. However, see also :meth:`datetime.datetime.strptime` and :meth:" -"`datetime.datetime.strftime` where the ``%f`` format directive :ref:`applies " -"to microseconds `." +"The ``%f`` format directive only applies to :func:`strptime`, not " +"to :func:`strftime`. However, see also :meth:`datetime.datetime.strptime` " +"and :meth:`datetime.datetime.strftime` where the ``%f`` format " +"directive :ref:`applies to microseconds `." msgstr "" msgid "" @@ -735,8 +735,8 @@ msgstr "" msgid "" "Additional directives may be supported on certain platforms, but only the " "ones listed here have a meaning standardized by ANSI C. To see the full set " -"of format codes supported on your platform, consult the :manpage:" -"`strftime(3)` documentation." +"of format codes supported on your platform, consult " +"the :manpage:`strftime(3)` documentation." msgstr "" msgid "" @@ -752,13 +752,13 @@ msgid "" msgstr "" msgid "" -"The *format* parameter uses the same directives as those used by :func:" -"`strftime`; it defaults to ``\"%a %b %d %H:%M:%S %Y\"`` which matches the " -"formatting returned by :func:`ctime`. If *string* cannot be parsed according " -"to *format*, or if it has excess data after parsing, :exc:`ValueError` is " -"raised. The default values used to fill in any missing data when more " -"accurate values cannot be inferred are ``(1900, 1, 1, 0, 0, 0, 0, 1, -1)``. " -"Both *string* and *format* must be strings." +"The *format* parameter uses the same directives as those used " +"by :func:`strftime`; it defaults to ``\"%a %b %d %H:%M:%S %Y\"`` which " +"matches the formatting returned by :func:`ctime`. If *string* cannot be " +"parsed according to *format*, or if it has excess data after " +"parsing, :exc:`ValueError` is raised. The default values used to fill in any " +"missing data when more accurate values cannot be inferred are ``(1900, 1, 1, " +"0, 0, 0, 0, 1, -1)``. Both *string* and *format* must be strings." msgstr "" msgid "For example:" @@ -780,10 +780,10 @@ msgid "" msgstr "" msgid "" -"The type of the time value sequence returned by :func:`gmtime`, :func:" -"`localtime`, and :func:`strptime`. It is an object with a :term:`named " -"tuple` interface: values can be accessed by index and by attribute name. " -"The following values are present:" +"The type of the time value sequence returned " +"by :func:`gmtime`, :func:`localtime`, and :func:`strptime`. It is an object " +"with a :term:`named tuple` interface: values can be accessed by index and by " +"attribute name. The following values are present:" msgstr "" msgid "Index" @@ -871,17 +871,17 @@ msgid "" msgstr "" msgid "" -"When a tuple with an incorrect length is passed to a function expecting a :" -"class:`struct_time`, or having elements of the wrong type, a :exc:" -"`TypeError` is raised." +"When a tuple with an incorrect length is passed to a function expecting " +"a :class:`struct_time`, or having elements of the wrong type, " +"a :exc:`TypeError` is raised." msgstr "" msgid "" "Return the time in seconds since the epoch_ as a floating-point number. The " "handling of `leap seconds`_ is platform dependent. On Windows and most Unix " "systems, the leap seconds are not counted towards the time in seconds since " -"the epoch_. This is commonly referred to as `Unix time `_." +"the epoch_. This is commonly referred to as `Unix time `_." msgstr "" msgid "" @@ -894,11 +894,11 @@ msgstr "" msgid "" "The number returned by :func:`.time` may be converted into a more common " -"time format (i.e. year, month, day, hour, etc...) in UTC by passing it to :" -"func:`gmtime` function or in local time by passing it to the :func:" -"`localtime` function. In both cases a :class:`struct_time` object is " -"returned, from which the components of the calendar date may be accessed as " -"attributes." +"time format (i.e. year, month, day, hour, etc...) in UTC by passing it " +"to :func:`gmtime` function or in local time by passing it to " +"the :func:`localtime` function. In both cases a :class:`struct_time` object " +"is returned, from which the components of the calendar date may be accessed " +"as attributes." msgstr "" msgid "On Windows, call ``GetSystemTimePreciseAsFileTime()``." @@ -934,8 +934,8 @@ msgid "" msgstr "" msgid "" -"Use :func:`thread_time_ns` to avoid the precision loss caused by the :class:" -"`float` type." +"Use :func:`thread_time_ns` to avoid the precision loss caused by " +"the :class:`float` type." msgstr "" msgid "Unix systems supporting ``CLOCK_THREAD_CPUTIME_ID``." @@ -956,8 +956,8 @@ msgstr "" msgid "" "Although in many cases, changing the :envvar:`TZ` environment variable may " -"affect the output of functions like :func:`localtime` without calling :func:" -"`tzset`, this behavior should not be relied on." +"affect the output of functions like :func:`localtime` without " +"calling :func:`tzset`, this behavior should not be relied on." msgstr "" msgid "The :envvar:`TZ` environment variable should contain no whitespace." @@ -1067,8 +1067,8 @@ msgid "Clock ID Constants" msgstr "" msgid "" -"These constants are used as parameters for :func:`clock_getres` and :func:" -"`clock_gettime`." +"These constants are used as parameters for :func:`clock_getres` " +"and :func:`clock_gettime`." msgstr "" msgid "" @@ -1137,8 +1137,8 @@ msgid "" msgstr "" msgid "" -"The following constant is the only parameter that can be sent to :func:" -"`clock_settime`." +"The following constant is the only parameter that can be sent " +"to :func:`clock_settime`." msgstr "" msgid "" @@ -1172,12 +1172,13 @@ msgid "" msgstr "" msgid "" -"For the above Timezone constants (:data:`altzone`, :data:`daylight`, :data:" -"`timezone`, and :data:`tzname`), the value is determined by the timezone " -"rules in effect at module load time or the last time :func:`tzset` is called " -"and may be incorrect for times in the past. It is recommended to use the :" -"attr:`~struct_time.tm_gmtoff` and :attr:`~struct_time.tm_zone` results from :" -"func:`localtime` to obtain timezone information." +"For the above Timezone constants " +"(:data:`altzone`, :data:`daylight`, :data:`timezone`, and :data:`tzname`), " +"the value is determined by the timezone rules in effect at module load time " +"or the last time :func:`tzset` is called and may be incorrect for times in " +"the past. It is recommended to use the :attr:`~struct_time.tm_gmtoff` " +"and :attr:`~struct_time.tm_zone` results from :func:`localtime` to obtain " +"timezone information." msgstr "" msgid "Module :mod:`datetime`" @@ -1191,8 +1192,8 @@ msgstr "" msgid "" "Internationalization services. The locale setting affects the " -"interpretation of many format specifiers in :func:`strftime` and :func:" -"`strptime`." +"interpretation of many format specifiers in :func:`strftime` " +"and :func:`strptime`." msgstr "" msgid "Module :mod:`calendar`" diff --git a/library/timeit.po b/library/timeit.po index 097ed6e..4b5caad 100644 --- a/library/timeit.po +++ b/library/timeit.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -72,8 +76,8 @@ msgstr "" msgid "" "Note however that :func:`.timeit` will automatically determine the number of " -"repetitions only when the command-line interface is used. In the :ref:" -"`timeit-examples` section you can find more advanced examples." +"repetitions only when the command-line interface is used. In " +"the :ref:`timeit-examples` section you can find more advanced examples." msgstr "" msgid "Python interface" @@ -124,9 +128,9 @@ msgid "" msgstr "" msgid "" -"To measure the execution time of the first statement, use the :meth:`." -"timeit` method. The :meth:`.repeat` and :meth:`.autorange` methods are " -"convenience methods to call :meth:`.timeit` multiple times." +"To measure the execution time of the first statement, use " +"the :meth:`.timeit` method. The :meth:`.repeat` and :meth:`.autorange` " +"methods are convenience methods to call :meth:`.timeit` multiple times." msgstr "" msgid "" @@ -168,9 +172,9 @@ msgstr "" msgid "" "This is a convenience function that calls :meth:`.timeit` repeatedly so that " "the total time >= *Timer.target_time* seconds, returning the eventual " -"(number of loops, time taken for that number of loops). It calls :meth:`." -"timeit` with increasing numbers from the sequence 1, 2, 5, 10, 20, 50, ... " -"until the time taken is at least *target_time* seconds." +"(number of loops, time taken for that number of loops). It " +"calls :meth:`.timeit` with increasing numbers from the sequence 1, 2, 5, 10, " +"20, 50, ... until the time taken is at least *target_time* seconds." msgstr "" msgid "" @@ -282,8 +286,8 @@ msgstr "" msgid "" ":func:`default_timer` measurements can be affected by other programs running " "on the same machine, so the best thing to do when accurate timing is " -"necessary is to repeat the timing a few times and use the best time. The :" -"option:`-r` option is good for this; the default of 5 repetitions is " +"necessary is to repeat the timing a few times and use the best time. " +"The :option:`-r` option is good for this; the default of 5 repetitions is " "probably enough in most cases. You can use :func:`time.process_time` to " "measure CPU time." msgstr "" @@ -312,8 +316,8 @@ msgid "" "$ python -m timeit -s \"text = 'sample string'; char = 'g'\" \"char in " "text\"\n" "5000000 loops, best of 5: 0.0877 usec per loop\n" -"$ python -m timeit -s \"text = 'sample string'; char = 'g'\" \"text." -"find(char)\"\n" +"$ python -m timeit -s \"text = 'sample string'; char = 'g'\" " +"\"text.find(char)\"\n" "1000000 loops, best of 5: 0.342 usec per loop" msgstr "" @@ -352,8 +356,9 @@ msgstr "" msgid "" "The following examples show how to time expressions that contain multiple " -"lines. Here we compare the cost of using :func:`hasattr` vs. :keyword:`try`/:" -"keyword:`except` to test for missing and present object attributes:" +"lines. Here we compare the cost of using :func:`hasattr` " +"vs. :keyword:`try`/:keyword:`except` to test for missing and present object " +"attributes:" msgstr "" msgid "" diff --git a/library/tk.po b/library/tk.po index 106b7ba..4bb0db7 100644 --- a/library/tk.po +++ b/library/tk.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,19 +28,19 @@ msgstr "" msgid "" "Tk/Tcl has long been an integral part of Python. It provides a robust and " "platform independent windowing toolkit, that is available to Python " -"programmers using the :mod:`tkinter` package, and its extension, the :mod:" -"`tkinter.ttk` module." +"programmers using the :mod:`tkinter` package, and its extension, " +"the :mod:`tkinter.ttk` module." msgstr "" "Tk/Tcl ਲੰਬੇ ਸਮੇਂ ਤੋਂ ਪਾਈਥਨ ਦਾ ਇੱਕ ਅਟੁੱਟ ਹਿੱਸਾ ਰਿਹਾ ਹੈ। ਇਹ ਇੱਕ ਮਜ਼ਬੂਤ ਅਤੇ ਪਲੇਟਫਾਰਮ-ਸੁਤੰਤਰ ਵਿੰਡੋਇੰਗ " -"ਟੂਲਕਿੱਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ ਪਾਈਥਨ ਪ੍ਰੋਗਰਾਮਰਾਂ ਲਈ :mod:`tkinter` ਪੈਕੇਜ ਅਤੇ ਇਸਦੇ ਵਿਸਤਾਰ :" -"mod:`tkinter.ttk` ਮੋਡੀਊਲ ਰਾਹੀਂ ਉਪਲਬਧ ਹੈ।" +"ਟੂਲਕਿੱਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ ਪਾਈਥਨ ਪ੍ਰੋਗਰਾਮਰਾਂ ਲਈ :mod:`tkinter` ਪੈਕੇਜ ਅਤੇ ਇਸਦੇ " +"ਵਿਸਤਾਰ :mod:`tkinter.ttk` ਮੋਡੀਊਲ ਰਾਹੀਂ ਉਪਲਬਧ ਹੈ।" msgid "" "The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. " "To use :mod:`tkinter`, you don't need to write Tcl code, but you will need " -"to consult the Tk documentation, and occasionally the Tcl documentation. :" -"mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python " -"classes." +"to consult the Tk documentation, and occasionally the Tcl " +"documentation. :mod:`tkinter` is a set of wrappers that implement the Tk " +"widgets as Python classes." msgstr "" ":mod:`tkinter` ਪੈਕੇਜ Tcl/Tk ਦੇ ਉੱਪਰ ਇੱਕ ਹਲਕੀ ਆਬਜੈਕਟ-ਓਰੀਐਂਟਡ ਪਰਤ ਹੈ। :mod:`tkinter` " "ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਤੁਹਾਨੂੰ Tcl ਕੋਡ ਲਿਖਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ, ਪਰ ਤੁਹਾਨੂੰ Tk ਦੇ ਦਸਤਾਵੇਜ਼ਾਂ ਅਤੇ ਕਦੇ-ਕਦੇ " diff --git a/library/tkinter.colorchooser.po b/library/tkinter.colorchooser.po index 03f8c57..0f655c3 100644 --- a/library/tkinter.colorchooser.po +++ b/library/tkinter.colorchooser.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,8 +27,8 @@ msgstr "" msgid "" "The :mod:`!tkinter.colorchooser` module provides the :class:`Chooser` class " "as an interface to the native color picker dialog. ``Chooser`` implements a " -"modal color choosing dialog window. The ``Chooser`` class inherits from the :" -"class:`~tkinter.commondialog.Dialog` class." +"modal color choosing dialog window. The ``Chooser`` class inherits from " +"the :class:`~tkinter.commondialog.Dialog` class." msgstr "" msgid "" diff --git a/library/tkinter.dnd.po b/library/tkinter.dnd.po index f03337a..72ce817 100644 --- a/library/tkinter.dnd.po +++ b/library/tkinter.dnd.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,9 +89,9 @@ msgid "Signal end of drag when the release pattern is triggered." msgstr "" msgid "" -"Factory function for the drag-and-drop process. Return the :class:" -"`DndHandler` instance managing the drag, or ``None`` if a drag could not be " -"started." +"Factory function for the drag-and-drop process. Return " +"the :class:`DndHandler` instance managing the drag, or ``None`` if a drag " +"could not be started." msgstr "" msgid ":ref:`Bindings-and-Events`" diff --git a/library/tkinter.font.po b/library/tkinter.font.po index 2bb24da..0c5ff61 100644 --- a/library/tkinter.font.po +++ b/library/tkinter.font.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -125,19 +125,19 @@ msgid "" "metric's value as an integer. Options include:" msgstr "" -msgid "*ascent* - distance between baseline and highest point that a" -msgstr "" - -msgid "character of the font can occupy" -msgstr "" - -msgid "*descent* - distance between baseline and lowest point that a" +msgid "" +"*ascent* - distance between baseline and highest point that a character of " +"the font can occupy" msgstr "" -msgid "*linespace* - minimum vertical separation necessary between any two" +msgid "" +"*descent* - distance between baseline and lowest point that a character of " +"the font can occupy" msgstr "" -msgid "characters of the font that ensures no vertical overlap between lines." +msgid "" +"*linespace* - minimum vertical separation necessary between any two " +"characters of the font that ensures no vertical overlap between lines." msgstr "" msgid "*fixed* - 1 if font is fixed-width else 0" diff --git a/library/tkinter.messagebox.po b/library/tkinter.messagebox.po index 977b3b1..2fc94fd 100644 --- a/library/tkinter.messagebox.po +++ b/library/tkinter.messagebox.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,10 +28,10 @@ msgid "" "The :mod:`!tkinter.messagebox` module provides a template base class as well " "as a variety of convenience methods for commonly used configurations. The " "message boxes are modal: each blocks until the user responds, then returns a " -"value that depends on the function. The ``show*`` functions and :meth:" -"`Message.show` return the symbolic name of the button the user pressed, as a " -"string (such as :data:`OK` or :data:`YES`). Common message box styles and " -"layouts include but are not limited to:" +"value that depends on the function. The ``show*`` functions " +"and :meth:`Message.show` return the symbolic name of the button the user " +"pressed, as a string (such as :data:`OK` or :data:`YES`). Common message box " +"styles and layouts include but are not limited to:" msgstr "" msgid "" @@ -151,13 +151,15 @@ msgid "" msgstr "" msgid "" -"Ask if operation should proceed. Shows buttons :data:`OK` and :data:" -"`CANCEL`. Returns ``True`` if the answer is ok and ``False`` otherwise." +"Ask if operation should proceed. Shows buttons :data:`OK` " +"and :data:`CANCEL`. Returns ``True`` if the answer is ok and ``False`` " +"otherwise." msgstr "" msgid "" -"Ask if operation should be retried. Shows buttons :data:`RETRY` and :data:" -"`CANCEL`. Return ``True`` if the answer is retry and ``False`` otherwise." +"Ask if operation should be retried. Shows buttons :data:`RETRY` " +"and :data:`CANCEL`. Return ``True`` if the answer is retry and ``False`` " +"otherwise." msgstr "" msgid "" @@ -190,8 +192,8 @@ msgid "" msgstr "" msgid "" -"Displays two buttons whose symbolic names are :data:`RETRY` and :data:" -"`CANCEL`." +"Displays two buttons whose symbolic names are :data:`RETRY` " +"and :data:`CANCEL`." msgstr "" msgid "" @@ -199,8 +201,8 @@ msgid "" msgstr "" msgid "" -"Displays three buttons whose symbolic names are :data:`YES`, :data:`NO` and :" -"data:`CANCEL`." +"Displays three buttons whose symbolic names are :data:`YES`, :data:`NO` " +"and :data:`CANCEL`." msgstr "" msgid "Icon images:" diff --git a/library/tkinter.po b/library/tkinter.po index e89f842..403130d 100644 --- a/library/tkinter.po +++ b/library/tkinter.po @@ -5,17 +5,19 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Lakshdeep Kashyap, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,8 +48,8 @@ msgstr "" msgid "" "Tkinter supports a range of Tcl/Tk versions, built either with or without " "thread support. Tcl/Tk 8.5.12 is the minimum supported version; the official " -"Python binary release bundles Tcl/Tk 9.0. See the source code for the :mod:" -"`_tkinter` module for more information about supported versions." +"Python binary release bundles Tcl/Tk 9.0. See the source code for " +"the :mod:`_tkinter` module for more information about supported versions." msgstr "" msgid "Support for Tcl/Tk versions older than 8.5.12 was removed." @@ -173,10 +175,11 @@ msgstr "" msgid "" "Tk is a `Tcl package `_ implemented in C " -"that adds custom commands to create and manipulate GUI widgets. Each :class:" -"`Tk` object embeds its own Tcl interpreter instance with Tk loaded into it. " -"Tk's widgets are very customizable, though at the cost of a dated " -"appearance. Tk uses Tcl's event queue to generate and process GUI events." +"that adds custom commands to create and manipulate GUI widgets. " +"Each :class:`Tk` object embeds its own Tcl interpreter instance with Tk " +"loaded into it. Tk's widgets are very customizable, though at the cost of a " +"dated appearance. Tk uses Tcl's event queue to generate and process GUI " +"events." msgstr "" msgid "Ttk" @@ -294,8 +297,8 @@ msgid ":mod:`idlelib`" msgstr "" msgid "" -"Python's Integrated Development and Learning Environment (IDLE). Based on :" -"mod:`!tkinter`." +"Python's Integrated Development and Learning Environment (IDLE). Based " +"on :mod:`!tkinter`." msgstr "" msgid ":mod:`!tkinter.constants`" @@ -373,9 +376,10 @@ msgid "" msgstr "" msgid "" -"The next line creates a label widget holding a static text string. The :meth:" -"`~Grid.grid` method is used to specify the relative layout (position) of the " -"label within its containing frame widget, similar to how tables in HTML work." +"The next line creates a label widget holding a static text string. " +"The :meth:`~Grid.grid` method is used to specify the relative layout " +"(position) of the label within its containing frame widget, similar to how " +"tables in HTML work." msgstr "" msgid "" @@ -399,8 +403,8 @@ msgstr "" msgid "" "A Tkinter user interface is made up of individual *widgets*. Each widget is " -"represented as a Python object, instantiated from classes like :class:`ttk." -"Frame`, :class:`ttk.Label`, and :class:`ttk.Button`." +"represented as a Python object, instantiated from classes " +"like :class:`ttk.Frame`, :class:`ttk.Label`, and :class:`ttk.Button`." msgstr "" msgid "widget hierarchy" @@ -466,8 +470,8 @@ msgid "" "ttk::frame .frm -padding 10\n" "grid .frm\n" "grid [ttk::label .frm.lbl -text \"Hello World!\"] -column 0 -row 0\n" -"grid [ttk::button .frm.btn -text \"Quit\" -command \"destroy .\"] -column 1 -" -"row 0" +"grid [ttk::button .frm.btn -text \"Quit\" -command \"destroy .\"] -column 1 " +"-row 0" msgstr "" msgid "" @@ -618,17 +622,17 @@ msgstr "" msgid "" "You'll also find that many Tkinter methods have compound names, for " -"example, :meth:`~Misc.winfo_x`, :meth:`~Misc.winfo_height`, :meth:`~Misc." -"winfo_viewable`. You'd find documentation for all of these in the `winfo " -"`_ man page." +"example, :meth:`~Misc.winfo_x`, :meth:`~Misc.winfo_height`, :meth:`~Misc.winfo_viewable`. " +"You'd find documentation for all of these in the `winfo `_ man page." msgstr "" msgid "" "Somewhat confusingly, there are also methods on all Tkinter widgets that " "don't actually operate on the widget, but operate at a global scope, " "independent of any widget. Examples are methods for accessing the clipboard " -"or the system bell. (They happen to be implemented as methods in the base :" -"class:`Widget` class that all Tkinter widgets inherit from)." +"or the system bell. (They happen to be implemented as methods in the " +"base :class:`Widget` class that all Tkinter widgets inherit from)." msgstr "" msgid "Threading model" @@ -659,10 +663,10 @@ msgstr "" msgid "" "Tcl/Tk applications are normally event-driven, meaning that after " -"initialization, the interpreter runs an event loop (that is, :meth:`Tk." -"mainloop `) and responds to events. Because it is single-" -"threaded, event handlers must respond quickly, otherwise they will block " -"other events from being processed. To avoid this, any long-running " +"initialization, the interpreter runs an event loop (that " +"is, :meth:`Tk.mainloop `) and responds to events. Because it " +"is single-threaded, event handlers must respond quickly, otherwise they will " +"block other events from being processed. To avoid this, any long-running " "computations should not run in an event handler, but are either broken into " "smaller pieces using timers, or run in another thread. This is different " "from many GUI toolkits where the GUI runs in a completely separate thread " @@ -688,9 +692,9 @@ msgid "" msgstr "" msgid "" -"While :mod:`!tkinter` allows you to create more than one instance of a :" -"class:`Tk` object (with its own interpreter), all interpreters that are part " -"of the same thread share a common event queue, which gets ugly fast. In " +"While :mod:`!tkinter` allows you to create more than one instance of " +"a :class:`Tk` object (with its own interpreter), all interpreters that are " +"part of the same thread share a common event queue, which gets ugly fast. In " "practice, don't create more than one instance of :class:`Tk` at a time. " "Otherwise, it's best to create them in separate threads and ensure you're " "running a thread-aware Tcl/Tk build." @@ -745,9 +749,9 @@ msgid "" "The ``fg`` and ``bg`` options used here, and other options that control a " "widget's appearance, belong to the classic :mod:`!tkinter` widgets. The " "themed :mod:`tkinter.ttk` widgets recommended in the introduction do not " -"accept them; style a themed widget through the :class:`ttk.Style ` class instead. The three ways of setting an option shown above " -"apply to both widget sets." +"accept them; style a themed widget through the :class:`ttk.Style " +"` class instead. The three ways of setting an option " +"shown above apply to both widget sets." msgstr "" msgid "" @@ -759,8 +763,8 @@ msgid "" "Note that the man pages list \"STANDARD OPTIONS\" and \"WIDGET SPECIFIC " "OPTIONS\" for each widget. The former is a list of options that are common " "to many widgets, the latter are the options that are idiosyncratic to that " -"particular widget. The Standard Options are documented on the :manpage:" -"`options(3)` man page." +"particular widget. The Standard Options are documented on " +"the :manpage:`options(3)` man page." msgstr "" msgid "" @@ -929,9 +933,11 @@ msgstr "" msgid "" "The full set of options accepted by each manager, with their values and " -"defaults, is documented under :meth:`Grid.grid_configure`, :meth:`Pack." -"pack_configure` and :meth:`Place.place_configure`; see also the :manpage:" -"`grid(3tk)`, :manpage:`pack(3tk)` and :manpage:`place(3tk)` man pages." +"defaults, is documented " +"under :meth:`Grid.grid_configure`, :meth:`Pack.pack_configure` " +"and :meth:`Place.place_configure`; see also " +"the :manpage:`grid(3tk)`, :manpage:`pack(3tk)` and :manpage:`place(3tk)` man " +"pages." msgstr "" msgid "Coupling widget variables" @@ -956,11 +962,12 @@ msgid "" msgstr "" msgid "" -"Ready-made subclasses cover the common types: :class:`StringVar`, :class:" -"`IntVar`, :class:`DoubleVar` and :class:`BooleanVar`. Pass one as a widget's " -"``textvariable`` (or ``variable``) option, then read and update it with :" -"meth:`~Variable.get` and :meth:`~Variable.set`; the widget tracks it with no " -"further work on your part." +"Ready-made subclasses cover the common " +"types: :class:`StringVar`, :class:`IntVar`, :class:`DoubleVar` " +"and :class:`BooleanVar`. Pass one as a widget's ``textvariable`` (or " +"``variable``) option, then read and update it with :meth:`~Variable.get` " +"and :meth:`~Variable.set`; the widget tracks it with no further work on your " +"part." msgstr "" msgid "" @@ -1012,15 +1019,15 @@ msgid "" "through the :class:`Wm` mixin, which is inherited by the :class:`Tk` root " "window and by every :class:`Toplevel`. You therefore call the window-manager " "methods directly on a top-level window. Each has a short name and an " -"equivalent ``wm_``-prefixed name, for example :meth:`~Wm.title` and :meth:" -"`~Wm.wm_title`." +"equivalent ``wm_``-prefixed name, for example :meth:`~Wm.title` " +"and :meth:`~Wm.wm_title`." msgstr "" msgid "" "These methods act on the top-level window whether its content is built from " "the classic widgets or the themed :mod:`tkinter.ttk` widgets. To reach the " -"top-level window containing an arbitrary widget, call its :meth:`~Misc." -"winfo_toplevel` method." +"top-level window containing an arbitrary widget, call " +"its :meth:`~Misc.winfo_toplevel` method." msgstr "" msgid "" @@ -1045,7 +1052,8 @@ msgstr "" msgid "" "Many widget options documented in the reference accept values of a small " -"number of common types, described here." +"number of common types, described here. The standard options and their types " +"are described in the :manpage:`options(3tk)` manual page." msgstr "" msgid "anchor" @@ -1054,7 +1062,11 @@ msgstr "" msgid "" "Legal values are points of the compass: ``\"n\"``, ``\"ne\"``, ``\"e\"``, " "``\"se\"``, ``\"s\"``, ``\"sw\"``, ``\"w\"``, ``\"nw\"``, and also " -"``\"center\"``." +"``\"center\"``. The *labelanchor* option of :class:`LabelFrame` " +"and :class:`ttk.LabelFrame ` accepts also " +"``\"en\"``, ``\"es\"``, ``\"wn\"`` and ``\"ws\"``. The *sticky* option of " +"the grid geometry manager accepts a combination of the compass directions, " +"such as ``\"nsew\"``, or an empty string." msgstr "" msgid "bitmap" @@ -1063,21 +1075,30 @@ msgstr "" msgid "" "There are ten built-in, named bitmaps: ``'error'``, ``'gray12'``, " "``'gray25'``, ``'gray50'``, ``'gray75'``, ``'hourglass'``, ``'info'``, " -"``'questhead'``, ``'question'``, ``'warning'``. To specify an X bitmap " -"filename, give the full path to the file, preceded with an ``@``, as in " -"``\"@/usr/contrib/bitmap/gumby.bit\"``." +"``'questhead'``, ``'question'``, ``'warning'``. On macOS the following " +"bitmaps are available as well: ``'application'``, ``'accessory'``, " +"``'folder'``, ``'pfolder'``, ``'trash'``, ``'floppy'``, ``'ramdisk'``, " +"``'cdrom'``, ``'preferences'``, ``'querydoc'``, ``'stop'``, ``'note'`` and " +"``'caution'``. To specify an X bitmap file, give the full path to the file, " +"preceded with an ``@``, as in ``\"@/usr/contrib/bitmap/gumby.bit\"``." msgstr "" msgid "boolean" msgstr "" -msgid "You can pass integers 0 or 1 or the strings ``\"yes\"`` or ``\"no\"``." +msgid "" +"You can pass the integers 0 or 1, ``True`` or ``False``, or the strings " +"``\"0\"``, ``\"1\"``, ``\"yes\"``, ``\"no\"``, ``\"true\"``, ``\"false\"``, " +"``\"on\"`` or ``\"off\"``. The strings are matched ignoring case, and an " +"unambiguous prefix, such as ``\"t\"``, is enough. Any non-zero integer means " +"true." msgstr "" msgid "callback" msgstr "" -msgid "This is any Python function that takes no arguments. For example::" +msgid "" +"This is any callable object. Most callbacks take no arguments. For example::" msgstr "" msgid "" @@ -1086,15 +1107,40 @@ msgid "" "fred[\"command\"] = print_it" msgstr "" +msgid "" +"Some options call it with arguments, such as the *command* option " +"of :class:`Scale`, which is called with the new value." +msgstr "" + msgid "color" msgstr "" msgid "" -"Colors can be given as the names of X colors in the rgb.txt file, or as " -"strings representing RGB values in 4 bit: ``\"#RGB\"``, 8 bit: " -"``\"#RRGGBB\"``, 12 bit: ``\"#RRRGGGBBB\"``, or 16 bit: " +"Colors can be given as symbolic names, such as ``\"red\"`` or ``\"light " +"blue\"``, or as strings representing RGB values in 4 bit: ``\"#RGB\"``, 8 " +"bit: ``\"#RRGGBB\"``, 12 bit: ``\"#RRRGGGBBB\"``, or 16 bit: " "``\"#RRRRGGGGBBBB\"`` ranges, where R,G,B here represent any legal hex " -"digit. See the :manpage:`colors(3tk)` man page for the list of named colors." +"digit. Tk provides a portable set of symbolic names available on all " +"platforms; they are matched ignoring case and spaces, so ``\"light blue\"``, " +"``\"Light Blue\"`` and ``\"lightblue\"`` are the same color. The full list " +"of names, including the platform-specific names of the current system colors " +"(for example ``\"systemButtonFace\"`` on Windows or ``\"systemWindowBody\"`` " +"on macOS), is given in the :manpage:`colors(3tk)` manual " +"page. :meth:`~tkinter.Misc.winfo_rgb` returns the red, green and blue " +"components of a color." +msgstr "" + +msgid "compound" +msgstr "" + +msgid "" +"Determines how to combine an image and a text displayed in a widget. Legal " +"values are ``\"none\"`` (display the image if there is one, otherwise the " +"text), ``\"text\"``, ``\"image\"``, ``\"center\"`` (display the text in the " +"center of the image) and ``\"top\"``, ``\"bottom\"``, ``\"left\"``, " +"``\"right\"`` (display the image above, below, to the left of or to the " +"right of the text). The themed widgets accept all these values, the classic " +"widgets accept all except ``\"text\"`` and ``\"image\"``." msgstr "" msgid "cursor" @@ -1108,9 +1154,9 @@ msgid "" "also be used, without the ``XC_`` prefix (so ``XC_hand2`` becomes " "``\"hand2\"``). The full list of names, including the platform-specific " "ones, is given in the :manpage:`cursors(3tk)` manual page. You can also " -"specify a bitmap and mask file of your own. On Windows a cursor file (:file:" -"`.cur` or :file:`.ani`) may be used directly, giving its path preceded with " -"an ``@``, as in ``\"@C:/cursors/bart.ani\"``." +"specify a bitmap and mask file of your own. On Windows a cursor file " +"(:file:`.cur` or :file:`.ani`) may be used directly, giving its path " +"preceded with an ``@``, as in ``\"@C:/cursors/bart.ani\"``." msgstr "" msgid "distance" @@ -1132,33 +1178,45 @@ msgid "" "this is most naturally passed as a tuple of ``(family, size, *styles)`` (or " "as the equivalent string ``\"Courier 10 bold\"``). Font sizes with positive " "numbers are measured in points; sizes with negative numbers are measured in " -"pixels." +"pixels. The name of a named font, such as ``\"TkDefaultFont\"``, " +"a :class:`tkinter.font.Font` instance, or, on X11, an XLFD font name can be " +"used as well." msgstr "" -msgid "geometry" +msgid "justify" msgstr "" msgid "" -"This is a string of the form ``widthxheight``, where width and height are " -"measured in pixels for most widgets (in characters for widgets displaying " -"text). For example: ``fred[\"geometry\"] = \"200x100\"``." +"Legal values are the strings: ``\"left\"``, ``\"center\"``, and " +"``\"right\"``." msgstr "" -msgid "justify" +msgid "orient" +msgstr "" + +msgid "Legal values are ``\"horizontal\"`` and ``\"vertical\"``." +msgstr "" + +msgid "padding" msgstr "" msgid "" -"Legal values are the strings: ``\"left\"``, ``\"center\"``, and " -"``\"right\"``." +"This is a legal distance (see above), applied on all sides, or a sequence of " +"up to four distances specifying the left, top, right and bottom padding. If " +"fewer than four are specified, the bottom padding defaults to the top one, " +"the right one to the left one, and the top one to the left one. It is only " +"supported by the themed widgets." msgstr "" msgid "region" msgstr "" msgid "" -"This is a string with four space-delimited elements, each of which is a " -"legal distance (see above). For example: ``\"2 3 4 5\"`` and ``\"3i 2i 4.5i " -"2i\"`` and ``\"3c 2c 4c 10.43c\"`` are all legal regions." +"Used for the *scrollregion* option of :class:`Canvas`. This is a string with " +"four space-delimited elements, each of which is a legal distance (see " +"above), or a sequence of four such elements. For example: ``\"2 3 4 5\"``, " +"``(2, 3, 4, 5)``, ``\"3i 2i 4.5i 2i\"`` and ``\"3c 2c 4c 10.43c\"`` are all " +"legal regions." msgstr "" msgid "relief" @@ -1178,10 +1236,25 @@ msgid "" "can be any widget method that takes a single argument." msgstr "" +msgid "state" +msgstr "" + +msgid "" +"Legal values are ``\"normal\"``, ``\"disabled\"`` and, depending on the " +"widget, also ``\"active\"``, ``\"hidden\"`` (for :class:`Canvas` items) or " +"``\"readonly\"`` (for :class:`Entry`, :class:`Spinbox` and the themed " +"widgets). The themed widgets have in addition a more general set of states, " +"which is manipulated with :meth:`ttk.Widget.state " +"`." +msgstr "" + msgid "wrap" msgstr "" -msgid "Must be one of: ``\"none\"``, ``\"char\"``, or ``\"word\"``." +msgid "" +"Must be one of ``\"none\"``, ``\"char\"`` or ``\"word\"`` for " +"the :class:`Text` widget and its tags; for a tag an empty string means to " +"use the widget's value." msgstr "" msgid "Bindings and events" @@ -1286,9 +1359,6 @@ msgstr "" msgid "%s" msgstr "" -msgid "state" -msgstr "" - msgid "%N" msgstr "" @@ -1503,8 +1573,8 @@ msgstr "" msgid "" "Added the :class:`!PhotoImage` method :meth:`!copy_replace` to copy a region " "from one image to other image, possibly with pixel zooming and/or " -"subsampling. Add *from_coords* parameter to :class:`!PhotoImage` methods :" -"meth:`!copy`, :meth:`!zoom` and :meth:`!subsample`. Add *zoom* and " +"subsampling. Add *from_coords* parameter to :class:`!PhotoImage` " +"methods :meth:`!copy`, :meth:`!zoom` and :meth:`!subsample`. Add *zoom* and " "*subsample* parameters to :class:`!PhotoImage` method :meth:`!copy`." msgstr "" @@ -1525,8 +1595,8 @@ msgid "Reference" msgstr "" msgid "" -"This section documents the classes, methods, functions and constants of the :" -"mod:`!tkinter` module. Most of them wrap Tcl/Tk commands; consult the " +"This section documents the classes, methods, functions and constants of " +"the :mod:`!tkinter` module. Most of them wrap Tcl/Tk commands; consult the " "official Tcl/Tk manual pages for the full list of widget options and further " "details." msgstr "" @@ -1540,14 +1610,15 @@ msgid "Base and mixin classes" msgstr "" msgid "" -"The :class:`!Misc` class is a mix-in inherited by :class:`Tk` and, through :" -"class:`BaseWidget`, by every widget. It provides the large set of methods " -"common to all Tk objects: querying window information, managing event " -"bindings and the event loop, controlling the keyboard focus and pointer " -"grabs, accessing the selection, clipboard and option database, and assorted " -"utility and introspection services. Because they are inherited, these " -"methods are available on every widget and on the :class:`Tk` application " -"object, and are documented here once rather than repeated for each widget." +"The :class:`!Misc` class is a mix-in inherited by :class:`Tk` and, " +"through :class:`BaseWidget`, by every widget. It provides the large set of " +"methods common to all Tk objects: querying window information, managing " +"event bindings and the event loop, controlling the keyboard focus and " +"pointer grabs, accessing the selection, clipboard and option database, and " +"assorted utility and introspection services. Because they are inherited, " +"these methods are available on every widget and on the :class:`Tk` " +"application object, and are documented here once rather than repeated for " +"each widget." msgstr "" msgid "" @@ -1574,15 +1645,15 @@ msgid "Return a list of the names of all configuration options of this widget." msgstr "" msgid "" -"Interpret the string *s* as a Tcl boolean and return the corresponding :" -"class:`bool`. Tcl accepts values such as ``'1'``, ``'0'``, ``'yes'``, " -"``'no'``, ``'true'`` and ``'false'``. Raise :exc:`ValueError` if *s* is not " -"a valid boolean." +"Interpret the string *s* as a Tcl boolean and return the " +"corresponding :class:`bool`. Tcl accepts values such as ``'1'``, ``'0'``, " +"``'yes'``, ``'no'``, ``'true'``, ``'false'``, ``'on'`` and ``'off'``. " +"Raise :exc:`ValueError` if *s* is not a valid boolean." msgstr "" msgid "" -"Interpret the string *s* as a Tcl floating-point number and return it as a :" -"class:`float`. Raise :exc:`ValueError` if *s* is not a valid number." +"Interpret the string *s* as a Tcl floating-point number and return it as " +"a :class:`float`. Raise :exc:`ValueError` if *s* is not a valid number." msgstr "" msgid "" @@ -1616,8 +1687,8 @@ msgid "The arguments passed to *func* are no longer converted to strings." msgstr "" msgid "" -"Delete the Tcl command named *name*, such as one previously returned by :" -"meth:`register`." +"Delete the Tcl command named *name*, such as one previously returned " +"by :meth:`register`." msgstr "" msgid "Return the widget instance corresponding to the Tk pathname *name*." @@ -1650,8 +1721,8 @@ msgid "" msgstr "" msgid "" -":meth:`tkraise`/:meth:`lift` and :meth:`lower` are overridden by the :class:" -"`Canvas` widget, where they restack canvas items instead." +":meth:`tkraise`/:meth:`lift` and :meth:`lower` are overridden by " +"the :class:`Canvas` widget, where they restack canvas items instead." msgstr "" msgid "" @@ -1687,10 +1758,10 @@ msgid "" msgstr "" msgid "" -":meth:`bbox` is an alias of :meth:`!grid_bbox`, except on :class:`Canvas`, :" -"class:`Listbox`, :class:`Spinbox`, :class:`Text`, :class:`ttk.Entry ` and :class:`ttk.Treeview `, which provide " -"their own :meth:`!bbox` method." +":meth:`bbox` is an alias of :meth:`!grid_bbox`, except " +"on :class:`Canvas`, :class:`Listbox`, :class:`Spinbox`, :class:`Text`, :class:`ttk.Entry " +"` and :class:`ttk.Treeview `, which " +"provide their own :meth:`!bbox` method." msgstr "" msgid "" @@ -1742,9 +1813,10 @@ msgstr "" msgid "" "Query or set the properties of the row (or rows) *index* of the grid managed " -"by this container. *index* is interpreted as for :meth:" -"`grid_columnconfigure`, and the supported options (*minsize*, *weight*, " -"*uniform* and *pad*) are the same, applied to a row instead of a column." +"by this container. *index* is interpreted as " +"for :meth:`grid_columnconfigure`, and the supported options (*minsize*, " +"*weight*, *uniform* and *pad*) are the same, applied to a row instead of a " +"column." msgstr "" msgid ":meth:`rowconfigure` is an alias of :meth:`!grid_rowconfigure`." @@ -1771,8 +1843,8 @@ msgid "" msgstr "" msgid "" -":meth:`size` is an alias of :meth:`!grid_size`, except on the :class:" -"`Listbox` widget, which provides its own :meth:`!size` method." +":meth:`size` is an alias of :meth:`!grid_size`, except on " +"the :class:`Listbox` widget, which provides its own :meth:`!size` method." msgstr "" msgid "" @@ -1864,8 +1936,8 @@ msgid "" "than to a single widget, so that the binding applies to every widget having " "that tag. *className* is usually the name of a widget class, such as " "``'Button'``, in which case the binding affects all widgets of that class. " -"The set of binding tags for a widget can be inspected and changed with :meth:" -"`bindtags`." +"The set of binding tags for a widget can be inspected and changed " +"with :meth:`bindtags`." msgstr "" msgid "The remaining arguments and the return value are as for :meth:`bind`." @@ -1976,10 +2048,11 @@ msgid "Keyword arguments are now passed to *func*." msgstr "" msgid "" -"Cancel a callback previously scheduled with :meth:`after` or :meth:" -"`after_idle`. *id* must be an identifier returned by one of those methods; " -"passing a value that is not such an identifier raises :exc:`ValueError`. If " -"the callback has already run or been cancelled, this has no effect." +"Cancel a callback previously scheduled with :meth:`after` " +"or :meth:`after_idle`. *id* must be an identifier returned by one of those " +"methods; passing a value that is not such an identifier " +"raises :exc:`ValueError`. If the callback has already run or been cancelled, " +"this has no effect." msgstr "" msgid "" @@ -1989,8 +2062,8 @@ msgstr "" msgid "" "Schedule the callable *func* to be called, with *args* and *kw* passed to " "it, when the Tk main loop next becomes idle, that is, when it has no other " -"events to process. Return an identifier that can be passed to :meth:" -"`after_cancel` to cancel the call." +"events to process. Return an identifier that can be passed " +"to :meth:`after_cancel` to cancel the call." msgstr "" msgid "" @@ -2030,8 +2103,8 @@ msgstr "" msgid "" "Wait until the Tcl variable *name* is modified, continuing to process events " "in the meantime so that the application stays responsive. *name* is usually " -"a :class:`Variable` instance, such as an :class:`IntVar` or :class:" -"`StringVar`." +"a :class:`Variable` instance, such as an :class:`IntVar` " +"or :class:`StringVar`." msgstr "" msgid ":meth:`waitvar` is an alias of :meth:`!wait_variable`." @@ -2059,8 +2132,9 @@ msgid "" "display, the widget is remembered as the focus window for its top level, and " "the focus will be redirected to it the next time the window manager gives " "the focus to the top level. :meth:`focus` is an alias of :meth:`!focus_set`, " -"except on the :class:`Canvas` and :class:`ttk.Treeview ` widgets, which provide their own :meth:`!focus` method." +"except on the :class:`Canvas` and :class:`ttk.Treeview " +"` widgets, which provide their own :meth:`!focus` " +"method." msgstr "" msgid "" @@ -2072,8 +2146,8 @@ msgstr "" msgid "" "Return the widget that currently has the keyboard focus in the application, " -"or ``None`` if no widget in the application has the focus. Use :meth:" -"`focus_displayof` to work correctly with several displays." +"or ``None`` if no widget in the application has the focus. " +"Use :meth:`focus_displayof` to work correctly with several displays." msgstr "" msgid "" @@ -2101,8 +2175,8 @@ msgid "" "``None`` if there is none. The traversal order goes first to the next child, " "then recursively to the children of that child, and then to the next sibling " "higher in the stacking order. A widget is skipped if its ``takefocus`` " -"option is set to ``0``. This method is used in the default bindings for the :" -"kbd:`Tab` key." +"option is set to ``0``. This method is used in the default bindings for " +"the :kbd:`Tab` key." msgstr "" msgid "" @@ -2165,9 +2239,9 @@ msgid "" msgstr "" msgid "" -"This is overridden by the :class:`Entry`, :class:`Listbox` and :class:" -"`Spinbox` widgets, where :meth:`!selection_clear` clears the widget's own " -"selection instead." +"This is overridden by the :class:`Entry`, :class:`Listbox` " +"and :class:`Spinbox` widgets, where :meth:`!selection_clear` clears the " +"widget's own selection instead." msgstr "" msgid "" @@ -2271,8 +2345,8 @@ msgstr "" msgid "" "Read the file named *fileName*, which should have the standard format for an " "X resource database such as :file:`.Xdefaults`, and add all the options it " -"specifies to the Tk option database. *priority* is interpreted as for :meth:" -"`option_add` and defaults to ``interactive``." +"specifies to the Tk option database. *priority* is interpreted as " +"for :meth:`option_add` and defaults to ``interactive``." msgstr "" msgid "" @@ -2315,9 +2389,10 @@ msgstr "" msgid "" "Make this widget appear busy. A transparent window is placed in front of the " "widget, so that it and all of its descendants in the widget hierarchy are " -"blocked from pointer events and display a busy cursor. Normally :meth:" -"`update` should be called immediately afterwards to ensure that the hold " -"operation is in effect before the application starts its processing." +"blocked from pointer events and display a busy cursor. " +"Normally :meth:`update` should be called immediately afterwards to ensure " +"that the hold operation is in effect before the application starts its " +"processing." msgstr "" msgid "" @@ -2442,14 +2517,15 @@ msgstr "" msgid "" "Return a floating-point value giving the number of pixels in the widget " "corresponding to the screen distance *number* (for example, ``\"2.0c\"`` or " -"``\"1i\"``). The result may be fractional; for a rounded integer value use :" -"meth:`winfo_pixels`." +"``\"1i\"``). The result may be fractional; for a rounded integer value " +"use :meth:`winfo_pixels`." msgstr "" msgid "" "Return the geometry of the widget, in the form ``widthxheight+x+y``. All " -"dimensions are in pixels. An offset can be negative; see :meth:`~Wm." -"geometry`." +"dimensions are in pixels. The position is relative to the parent widget; " +"use :meth:`winfo_rootx` and :meth:`winfo_rooty` for the position on the " +"screen. An offset can be negative; see :meth:`~Wm.geometry`." msgstr "" msgid "" @@ -2496,8 +2572,8 @@ msgstr "" msgid "" "Return the number of pixels in the widget corresponding to the screen " "distance *number* (for example, ``\"2.0c\"`` or ``\"1i\"``). The result is " -"rounded to the nearest integer; for a fractional result use :meth:" -"`winfo_fpixels`." +"rounded to the nearest integer; for a fractional result " +"use :meth:`winfo_fpixels`." msgstr "" msgid "" @@ -2634,8 +2710,8 @@ msgstr "" msgid "" "Return the width of the widget in pixels. When a window is first created its " -"width is 1 pixel; it is eventually changed by a geometry manager. See also :" -"meth:`winfo_reqwidth`." +"width is 1 pixel; it is eventually changed by a geometry manager. See " +"also :meth:`winfo_reqwidth`." msgstr "" msgid "" @@ -2649,8 +2725,8 @@ msgid "" msgstr "" msgid "" -"Return the Tcl/Tk patch level as a named tuple with the same five fields as :" -"data:`sys.version_info`: *major*, *minor*, *micro*, *releaselevel* and " +"Return the Tcl/Tk patch level as a named tuple with the same five fields " +"as :data:`sys.version_info`: *major*, *minor*, *micro*, *releaselevel* and " "*serial*. *releaselevel* is ``'alpha'``, ``'beta'`` or ``'final'``. " "Converting it to a string gives the version in the usual Tcl/Tk notation, " "for example ``'9.0.3'`` for a final release or ``'9.1b2'`` for a pre-release." @@ -2672,8 +2748,8 @@ msgid "" "all four arguments are given, the window manager keeps the ratio between " "``minNumer/minDenom`` and ``maxNumer/maxDenom``; passing empty strings " "removes any existing restriction. With no arguments, return a tuple of the " -"four current values, or ``None`` if no aspect restriction is in effect. :" -"meth:`wm_aspect` is an alias of :meth:`!aspect`." +"four current values, or ``None`` if no aspect restriction is in " +"effect. :meth:`wm_aspect` is an alias of :meth:`!aspect`." msgstr "" msgid "" @@ -2820,8 +2896,8 @@ msgstr "" msgid "" "On X11 changes are applied asynchronously, so a queried value may not yet " -"reflect the most recent request. :meth:`wm_attributes` is an alias of :meth:" -"`!attributes`." +"reflect the most recent request. :meth:`wm_attributes` is an alias " +"of :meth:`!attributes`." msgstr "" msgid "" @@ -2849,8 +2925,8 @@ msgid "" "manager about windows that have private colormaps. If *wlist* is given, " "overwrite the property with those windows (their order is a priority order " "for installing colormaps). With no arguments, return the list of windows " -"currently named in the property. :meth:`wm_colormapwindows` is an alias of :" -"meth:`!colormapwindows`." +"currently named in the property. :meth:`wm_colormapwindows` is an alias " +"of :meth:`!colormapwindows`." msgstr "" msgid "" @@ -2864,8 +2940,8 @@ msgstr "" msgid "" "Display the window in normal (non-iconified) form by mapping it. If the " "window has never been mapped, this ensures it appears de-iconified when it " -"is first mapped. On Windows the window is also raised and given the focus. :" -"meth:`wm_deiconify` is an alias of :meth:`!deiconify`." +"is first mapped. On Windows the window is also raised and given the " +"focus. :meth:`wm_deiconify` is an alias of :meth:`!deiconify`." msgstr "" msgid "" @@ -2891,8 +2967,8 @@ msgstr "" msgid "" "Return the platform-specific window identifier for the outermost decorative " "frame containing the window, if the window manager has reparented it into " -"such a frame; otherwise return the identifier of the window itself. :meth:" -"`wm_frame` is an alias of :meth:`!frame`." +"such a frame; otherwise return the identifier of the window " +"itself. :meth:`wm_frame` is an alias of :meth:`!frame`." msgstr "" msgid "" @@ -2915,8 +2991,8 @@ msgid "" "units for the window's internally requested size, and *widthInc* and " "*heightInc* are the pixel sizes of a horizontal and vertical grid unit. " "Empty strings turn off gridded management. With no arguments, return a tuple " -"of the four current values, or ``None`` if the window is not gridded. :meth:" -"`wm_grid` is an alias of :meth:`!grid`." +"of the four current values, or ``None`` if the window is not " +"gridded. :meth:`wm_grid` is an alias of :meth:`!grid`." msgstr "" msgid "Not to be confused with the grid geometry manager :meth:`Grid.grid`." @@ -2948,12 +3024,12 @@ msgid "" msgstr "" msgid "" -"Set or query the bitmap used as a mask for the icon (see :meth:" -"`iconbitmap`). Where the mask is zero no icon is displayed; where it is one, " -"the corresponding bits of the icon bitmap are shown. An empty string cancels " -"the current mask. With no argument, return the name of the current icon " -"mask, or an empty string. :meth:`wm_iconmask` is an alias of :meth:`!" -"iconmask`." +"Set or query the bitmap used as a mask for the icon " +"(see :meth:`iconbitmap`). Where the mask is zero no icon is displayed; where " +"it is one, the corresponding bits of the icon bitmap are shown. An empty " +"string cancels the current mask. With no argument, return the name of the " +"current icon mask, or an empty string. :meth:`wm_iconmask` is an alias " +"of :meth:`!iconmask`." msgstr "" msgid "" @@ -2970,8 +3046,8 @@ msgid "" "appropriate one. The image data is taken as a snapshot at the time of the " "call; later changes to the images are not reflected. If *default* is true, " "the icon is also applied to all top-level windows created in the future. On " -"macOS only the first image is used. :meth:`wm_iconphoto` is an alias of :" -"meth:`!iconphoto`." +"macOS only the first image is used. :meth:`wm_iconphoto` is an alias " +"of :meth:`!iconphoto`." msgstr "" msgid "" @@ -2987,16 +3063,16 @@ msgid "" "it is de-iconified. An empty string cancels the association. With no " "argument, return the path name of the current icon window, or an empty " "string. Not all window managers support icon windows, and the concept is " -"meaningless on non-X11 platforms. :meth:`wm_iconwindow` is an alias of :meth:" -"`!iconwindow`." +"meaningless on non-X11 platforms. :meth:`wm_iconwindow` is an alias " +"of :meth:`!iconwindow`." msgstr "" msgid "" "Make *widget* a stand-alone top-level window, decorated by the window " "manager with a title bar and so on. Only :class:`Frame`, :class:`LabelFrame` " "and :class:`Toplevel` widgets may be used (the :mod:`tkinter.ttk` versions " -"are **not** accepted); passing any other widget type raises an error. :meth:" -"`wm_manage` is an alias of :meth:`!manage`." +"are **not** accepted); passing any other widget type raises an " +"error. :meth:`wm_manage` is an alias of :meth:`!manage`." msgstr "" msgid "" @@ -3031,9 +3107,9 @@ msgid "" "``'program'`` or ``'user'`` and indicates whether the position was requested " "by the program or by the user; an empty string cancels the current source. " "With no argument, return the current source, or an empty string if none has " -"been set. Tk automatically sets the source to ``'user'`` when :meth:" -"`geometry` is called, unless it has been set explicitly to ``'program'``. :" -"meth:`wm_positionfrom` is an alias of :meth:`!positionfrom`." +"been set. Tk automatically sets the source to ``'user'`` " +"when :meth:`geometry` is called, unless it has been set explicitly to " +"``'program'``. :meth:`wm_positionfrom` is an alias of :meth:`!positionfrom`." msgstr "" msgid "" @@ -3045,8 +3121,8 @@ msgid "" "is an empty string, the handler is removed. With only *name*, return the " "name of its registered handler command, or an empty string if none is set " "(the default ``WM_DELETE_WINDOW`` handler is not reported); with no " -"arguments, return a tuple of the protocols that currently have handlers. :" -"meth:`wm_protocol` is an alias of :meth:`!protocol`." +"arguments, return a tuple of the protocols that currently have " +"handlers. :meth:`wm_protocol` is an alias of :meth:`!protocol`." msgstr "" msgid "" @@ -3092,8 +3168,8 @@ msgid "" "empty string clears the transient status. With no argument, return the path " "name of the current master, or an empty string. A transient window mirrors " "state changes in its master and may be decorated differently by the window " -"manager; it is an error to make a window a transient of itself. :meth:" -"`wm_transient` is an alias of :meth:`!transient`." +"manager; it is an error to make a window a transient of " +"itself. :meth:`wm_transient` is an alias of :meth:`!transient`." msgstr "" msgid "" @@ -3101,8 +3177,8 @@ msgid "" "manager to forget about it. If the window has never been mapped, it is " "instead mapped in the withdrawn state. It is sometimes necessary to withdraw " "a window and then re-map it (for example with :meth:`deiconify`) to make " -"some window managers notice changes to window attributes. :meth:" -"`wm_withdraw` is an alias of :meth:`!withdraw`." +"some window managers notice changes to window " +"attributes. :meth:`wm_withdraw` is an alias of :meth:`!withdraw`." msgstr "" msgid "" @@ -3115,12 +3191,12 @@ msgstr "" msgid "" ":class:`Pack`, :class:`Place` and :class:`Grid` all define the short method " -"names :meth:`!forget`, :meth:`!info`, :meth:`!slaves`, :meth:`!content` and :" -"meth:`!propagate`. On a widget the bare names resolve to the *pack* " -"manager's versions, since :class:`Pack` and :class:`Misc` precede :class:" -"`Place` and :class:`Grid` in the method resolution order, whatever manager " -"actually manages the widget; and :meth:`!configure`/:meth:`!config` " -"configure the widget's options, not its geometry. Use the explicit " +"names :meth:`!forget`, :meth:`!info`, :meth:`!slaves`, :meth:`!content` " +"and :meth:`!propagate`. On a widget the bare names resolve to the *pack* " +"manager's versions, since :class:`Pack` and :class:`Misc` " +"precede :class:`Place` and :class:`Grid` in the method resolution order, " +"whatever manager actually manages the widget; and :meth:`!configure`/:meth:`!" +"config` configure the widget's options, not its geometry. Use the explicit " "``pack_*``, ``grid_*`` and ``place_*`` methods (and ``pack``, ``grid``, " "``place`` for geometry configuration) to act on a specific geometry manager." msgstr "" @@ -3209,11 +3285,11 @@ msgstr "" msgid "" "Unmap the widget and remove it from the packing order, forgetting its " -"packing options. It can be packed again later with :meth:`pack_configure`. :" -"meth:`forget` is an alias of :meth:`!pack_forget`, except on :class:" -"`PanedWindow`, :class:`ttk.Notebook ` and :class:`ttk." -"PanedWindow `, which provide their own :meth:`!" -"forget` method." +"packing options. It can be packed again later " +"with :meth:`pack_configure`. :meth:`forget` is an alias of :meth:`!" +"pack_forget`, except on :class:`PanedWindow`, :class:`ttk.Notebook " +"` and :class:`ttk.PanedWindow " +"`, which provide their own :meth:`!forget` method." msgstr "" msgid "Not to be confused with :meth:`Wm.forget`." @@ -3226,8 +3302,8 @@ msgstr "" msgid "" "Same as :meth:`Misc.pack_propagate`, treating this widget as a container: " -"enable or disable geometry propagation. :meth:`propagate` is an alias of :" -"meth:`!pack_propagate`." +"enable or disable geometry propagation. :meth:`propagate` is an alias " +"of :meth:`!pack_propagate`." msgstr "" msgid "" @@ -3394,16 +3470,16 @@ msgstr "" msgid "" "Same as :meth:`Misc.grid_bbox`. :meth:`bbox` is an alias of :meth:`!" -"grid_bbox`, except on :class:`Canvas`, :class:`Listbox`, :class:`Spinbox`, :" -"class:`Text`, :class:`ttk.Entry ` and :class:`ttk." -"Treeview `, which provide their own :meth:`!bbox` " -"method." +"grid_bbox`, except " +"on :class:`Canvas`, :class:`Listbox`, :class:`Spinbox`, :class:`Text`, :class:`ttk.Entry " +"` and :class:`ttk.Treeview `, which " +"provide their own :meth:`!bbox` method." msgstr "" msgid "" "Same as :meth:`Misc.grid_columnconfigure`: query or set the options (such as " -"*weight*, *minsize*, *pad* and *uniform*) of a grid column. :meth:" -"`columnconfigure` is an alias of :meth:`!grid_columnconfigure`." +"*weight*, *minsize*, *pad* and *uniform*) of a grid " +"column. :meth:`columnconfigure` is an alias of :meth:`!grid_columnconfigure`." msgstr "" msgid "" @@ -3436,8 +3512,8 @@ msgstr "" msgid "" "Mix-in providing the horizontal-scrolling interface shared by widgets such " -"as :class:`Entry`, :class:`Canvas`, :class:`Listbox`, :class:`Text` and :" -"class:`Spinbox`. A widget's :meth:`xview` method is registered as the " +"as :class:`Entry`, :class:`Canvas`, :class:`Listbox`, :class:`Text` " +"and :class:`Spinbox`. A widget's :meth:`xview` method is registered as the " "*command* of a horizontal :class:`Scrollbar`." msgstr "" @@ -3458,13 +3534,15 @@ msgstr "" msgid "" "Shift the view left or right by *number* units. *what* is either ``'units'`` " "or ``'pages'``; a negative *number* scrolls left and a positive one scrolls " -"right." +"right. The :class:`Text` widget accepts also ``'pixels'``, and then *number* " +"can be a screen distance, such as ``'1i'``." msgstr "" msgid "" -"Mix-in providing the vertical-scrolling interface shared by widgets such as :" -"class:`Canvas`, :class:`Listbox` and :class:`Text`. A widget's :meth:`yview` " -"method is registered as the *command* of a vertical :class:`Scrollbar`." +"Mix-in providing the vertical-scrolling interface shared by widgets such " +"as :class:`Canvas`, :class:`Listbox` and :class:`Text`. A " +"widget's :meth:`yview` method is registered as the *command* of a " +"vertical :class:`Scrollbar`." msgstr "" msgid "" @@ -3483,7 +3561,9 @@ msgstr "" msgid "" "Shift the view up or down by *number* units. *what* is either ``'units'`` or " -"``'pages'``; a negative *number* scrolls up and a positive one scrolls down." +"``'pages'``; a negative *number* scrolls up and a positive one scrolls down. " +"The :class:`Text` widget accepts also ``'pixels'``, and then *number* can be " +"a screen distance, such as ``'1i'``." msgstr "" msgid "" @@ -3499,11 +3579,12 @@ msgid "" msgstr "" msgid "" -"Internal base class for the standard widgets. It combines :class:" -"`BaseWidget` with the geometry-manager mix-ins :class:`Pack`, :class:`Place` " -"and :class:`Grid`, so that every widget can be managed by any of the three " -"geometry managers. The concrete widget classes (:class:`Button`, :class:" -"`Label`, and so on) derive from :class:`!Widget`." +"Internal base class for the standard widgets. It " +"combines :class:`BaseWidget` with the geometry-manager mix-" +"ins :class:`Pack`, :class:`Place` and :class:`Grid`, so that every widget " +"can be managed by any of the three geometry managers. The concrete widget " +"classes (:class:`Button`, :class:`Label`, and so on) derive from :class:`!" +"Widget`." msgstr "" msgid "Toplevel widgets" @@ -3517,8 +3598,8 @@ msgid "" msgstr "" msgid "" -"To create a Tcl interpreter without initializing the Tk subsystem, use the :" -"func:`Tcl` factory function instead." +"To create a Tcl interpreter without initializing the Tk subsystem, use " +"the :func:`Tcl` factory function instead." msgstr "" msgid "" @@ -3573,8 +3654,8 @@ msgid "" "Specifies the *id* of the window in which to embed the application, instead " "of it being created as an independent toplevel window. *id* must be " "specified in the same way as the value for the -use option for toplevel " -"widgets (that is, it has a form like that returned by :meth:`~Misc." -"winfo_id`)." +"widgets (that is, it has a form like that returned " +"by :meth:`~Misc.winfo_id`)." msgstr "" msgid "" @@ -3583,19 +3664,19 @@ msgid "" msgstr "" msgid "" -":class:`Tk` reads and interprets profile files, named :file:`.{className}." -"tcl` and :file:`.{baseName}.tcl`, into the Tcl interpreter and calls :func:" -"`exec` on the contents of :file:`.{className}.py` and :file:`.{baseName}." -"py`. The path for the profile files is the :envvar:`HOME` environment " -"variable or, if that isn't defined, then :data:`os.curdir`." +":class:`Tk` reads and interprets profile files, named :file:`." +"{className}.tcl` and :file:`.{baseName}.tcl`, into the Tcl interpreter and " +"calls :func:`exec` on the contents of :file:`.{className}.py` and :file:`." +"{baseName}.py`. The path for the profile files is the :envvar:`HOME` " +"environment variable or, if that isn't defined, then :data:`os.curdir`." msgstr "" msgid "" "On Windows, creating a Tcl interpreter (by instantiating :class:`Tk` or " "calling :func:`Tcl`) sets the :envvar:`HOME` environment variable for the " -"process, if it is not already set, to ``%HOMEDRIVE%%HOMEPATH%`` (or :envvar:" -"`USERPROFILE`, or ``c:\\``). This is done by Tcl and can affect other code " -"that reads :envvar:`HOME`." +"process, if it is not already set, to ``%HOMEDRIVE%%HOMEPATH%`` " +"(or :envvar:`USERPROFILE`, or ``c:\\``). This is done by Tcl and can affect " +"other code that reads :envvar:`HOME`." msgstr "" msgid "" @@ -3631,10 +3712,11 @@ msgid "" msgstr "" msgid "" -"Read and source the user's profile files :file:`.{className}.tcl` and :file:" -"`.{baseName}.tcl` into the Tcl interpreter, and execute the corresponding :" -"file:`.{className}.py` and :file:`.{baseName}.py` files. This is called " -"during initialization; see the description of the constructor above." +"Read and source the user's profile files :file:`.{className}.tcl` " +"and :file:`.{baseName}.tcl` into the Tcl interpreter, and execute the " +"corresponding :file:`.{className}.py` and :file:`.{baseName}.py` files. This " +"is called during initialization; see the description of the constructor " +"above." msgstr "" msgid "" @@ -3647,15 +3729,15 @@ msgid "" msgstr "" msgid "" -"A :class:`!Toplevel` widget is a top-level window, similar to a :class:" -"`Frame` except that its X parent is the root window of a screen rather than " -"its logical parent. Its primary purpose is to serve as a container for " -"dialog boxes and other collections of widgets; its only visible features are " -"its background and an optional 3-D border. Notable options include *menu*, " -"which installs a :class:`Menu` as the window's menubar. Inherits from :class:" -"`BaseWidget` and :class:`Wm`, so a toplevel is managed by the window " -"manager. Refer to the Tk ``toplevel`` manual page for the full list of " -"options." +"A :class:`!Toplevel` widget is a top-level window, similar to " +"a :class:`Frame` except that its X parent is the root window of a screen " +"rather than its logical parent. Its primary purpose is to serve as a " +"container for dialog boxes and other collections of widgets; its only " +"visible features are its background and an optional 3-D border. Notable " +"options include *menu*, which installs a :class:`Menu` as the window's " +"menubar. Inherits from :class:`BaseWidget` and :class:`Wm`, so a toplevel is " +"managed by the window manager. Refer to the Tk ``toplevel`` manual page for " +"the full list of options." msgstr "" msgid "Widget classes" @@ -3688,10 +3770,10 @@ msgid "" "A :class:`!Canvas` widget implements structured graphics. It displays any " "number of *items*, such as arcs, lines, ovals, polygons, rectangles, text, " "bitmaps, images and embedded windows, which may be drawn, moved, re-colored " -"and bound to events. Inherits from :class:`Widget`, :class:`XView` and :" -"class:`YView`, so the view can be scrolled horizontally and vertically with :" -"meth:`~XView.xview` and :meth:`~YView.yview`. Refer to the Tk ``canvas`` " -"manual page for the full list of widget and item options." +"and bound to events. Inherits from :class:`Widget`, :class:`XView` " +"and :class:`YView`, so the view can be scrolled horizontally and vertically " +"with :meth:`~XView.xview` and :meth:`~YView.yview`. Refer to the Tk " +"``canvas`` manual page for the full list of widget and item options." msgstr "" msgid "" @@ -3712,8 +3794,8 @@ msgstr "" msgid "" "The items are kept in a *display list* that determines drawing order: items " "later in the list are drawn on top of earlier ones. A newly created item is " -"placed at the top of the list; the order can be changed with :meth:" -"`tag_raise` and :meth:`tag_lower`." +"placed at the top of the list; the order can be changed " +"with :meth:`tag_raise` and :meth:`tag_lower`." msgstr "" msgid "" @@ -4032,9 +4114,7 @@ msgid "" "only the standard item options." msgstr "" -msgid "" -"Tk 8.6 added the *angle* option and Tk 9.0 added the *underline* option for " -"``text`` items." +msgid "Tk 8.6 added the *angle* option for ``text`` items." msgstr "" msgid "" @@ -4104,8 +4184,8 @@ msgid "" "items rather than to the canvas as a whole. With no options, it returns a " "dictionary describing the current options of the first matching item; " "otherwise it sets the given options on every matching item. The legal " -"options are those accepted by the corresponding ``create_*`` method. :meth:" -"`itemconfig` is an alias of :meth:`!itemconfigure`." +"options are those accepted by the corresponding ``create_*`` " +"method. :meth:`itemconfig` is an alias of :meth:`!itemconfigure`." msgstr "" msgid "" @@ -4170,9 +4250,9 @@ msgstr "" msgid "" "Return a tuple of the ids of all items selected by the search specification " "*searchSpec* (and any further *args*), in stacking order with the lowest " -"item first. The search specification has any of the forms accepted by :meth:" -"`addtag`. The ``find_*`` methods below are more convenient wrappers around " -"it." +"item first. The search specification has any of the forms accepted " +"by :meth:`addtag`. The ``find_*`` methods below are more convenient wrappers " +"around it." msgstr "" msgid "" @@ -4212,8 +4292,8 @@ msgid "" "above the item given by *aboveThis*, or to the top of the display list if " "*aboveThis* is omitted. When several items are moved their relative order is " "preserved. This has no effect on embedded window items, whose stacking order " -"is controlled by :meth:`Misc.tkraise` and :meth:`Misc.lower` instead. :meth:" -"`lift` and :meth:`tkraise` are aliases of :meth:`!tag_raise`." +"is controlled by :meth:`Misc.tkraise` and :meth:`Misc.lower` " +"instead. :meth:`lift` and :meth:`tkraise` are aliases of :meth:`!tag_raise`." msgstr "" msgid "" @@ -4245,8 +4325,8 @@ msgstr "" msgid "" "Remove for all items given by *tagOrId* the binding for the event " -"*sequence*. If *funcid* is given, only that callback (as returned by :meth:" -"`tag_bind`) is unbound and deregistered." +"*sequence*. If *funcid* is given, only that callback (as returned " +"by :meth:`tag_bind`) is unbound and deregistered." msgstr "" msgid "If *funcid* is given, only that callback is unbound." @@ -4309,9 +4389,9 @@ msgstr "" msgid "" "Adjust the end of the selection in *tagOrId* nearest to *index* so that it " -"is at *index*, and make the other end the anchor point for future :meth:" -"`select_to` calls. If the selection is not currently in *tagOrId*, this " -"behaves like :meth:`select_to`." +"is at *index*, and make the other end the anchor point for " +"future :meth:`select_to` calls. If the selection is not currently in " +"*tagOrId*, this behaves like :meth:`select_to`." msgstr "" msgid "Clear the selection if it is in this canvas; otherwise do nothing." @@ -4352,11 +4432,11 @@ msgid "" "of part or all of the canvas. If the *file* or *channel* option is given, " "the PostScript is written there and an empty string is returned; otherwise " "it is returned as a string. By default only the area currently visible in " -"the window is generated, so it is usually necessary either to call :meth:" -"`~Misc.update` first or to use the *width* and *height* options. Supported " -"options include *colormap*, *colormode*, *file*, *fontmap*, *height*, " -"*pageanchor*, *pageheight*, *pagewidth*, *pagex*, *pagey*, *rotate*, " -"*width*, *x* and *y*." +"the window is generated, so it is usually necessary either to " +"call :meth:`~Misc.update` first or to use the *width* and *height* options. " +"Supported options include *colormap*, *colormode*, *file*, *fontmap*, " +"*height*, *pageanchor*, *pageheight*, *pagewidth*, *pagex*, *pagey*, " +"*rotate*, *width*, *x* and *y*." msgstr "" msgid "" @@ -4421,10 +4501,10 @@ msgid "" "in the entry's string. As described in the Tk ``entry`` manual page, *index* " "may be a number (counting from 0), ``'insert'`` (the character just after " "the insertion cursor), ``'end'`` (just after the last character), " -"``'anchor'`` (the selection anchor point), ``'sel.first'`` and ``'sel." -"last'`` (the ends of the selection), or ``@x`` (the character covering pixel " -"x-coordinate *x* in the window). Out-of-range indices are rounded to the " -"nearest legal value." +"``'anchor'`` (the selection anchor point), ``'sel.first'`` and " +"``'sel.last'`` (the ends of the selection), or ``@x`` (the character " +"covering pixel x-coordinate *x* in the window). Out-of-range indices are " +"rounded to the nearest legal value." msgstr "" msgid "" @@ -4469,8 +4549,8 @@ msgstr "" msgid "" "Set the selection anchor point to just before the character given by " -"*index*, without changing the selection. :meth:`select_from` is an alias of :" -"meth:`!selection_from`." +"*index*, without changing the selection. :meth:`select_from` is an alias " +"of :meth:`!selection_from`." msgstr "" msgid "" @@ -4481,8 +4561,8 @@ msgstr "" msgid "" "Set the selection to include the characters starting with the one indexed by " "*start* and ending with the one just before *end*. If *end* refers to the " -"same character as *start* or an earlier one, the selection is cleared. :meth:" -"`select_range` is an alias of :meth:`!selection_range`." +"same character as *start* or an earlier one, the selection is " +"cleared. :meth:`select_range` is an alias of :meth:`!selection_range`." msgstr "" msgid "" @@ -4496,16 +4576,16 @@ msgid "" msgstr "" msgid "" -"Record *x* and the current view in the entry window, for use with later :" -"meth:`scan_dragto` calls. Typically associated with a mouse button press in " -"the widget." +"Record *x* and the current view in the entry window, for use with " +"later :meth:`scan_dragto` calls. Typically associated with a mouse button " +"press in the widget." msgstr "" msgid "" -"Compute the difference between *x* and the *x* given to the last :meth:" -"`scan_mark` call, and adjust the view left or right by 10 times that " -"difference. Typically associated with mouse motion events, to produce the " -"effect of dragging the entry at high speed through the window." +"Compute the difference between *x* and the *x* given to the " +"last :meth:`scan_mark` call, and adjust the view left or right by 10 times " +"that difference. Typically associated with mouse motion events, to produce " +"the effect of dragging the entry at high speed through the window." msgstr "" msgid "" @@ -4521,14 +4601,14 @@ msgid "" "or image. The displayed text is set with the *text* option or linked to a " "variable through *textvariable*, and an image can be shown using the *image* " "option. Text must all be in a single font but may occupy multiple lines, and " -"one character may be underlined with the *underline* option. Inherits from :" -"class:`Widget`. Refer to the Tk ``label`` manual page for the full list of " -"options." +"one character may be underlined with the *underline* option. Inherits " +"from :class:`Widget`. Refer to the Tk ``label`` manual page for the full " +"list of options." msgstr "" msgid "" -"A :class:`!LabelFrame` widget is a container that has the features of a :" -"class:`Frame` plus the ability to display a label. The label text is set " +"A :class:`!LabelFrame` widget is a container that has the features of " +"a :class:`Frame` plus the ability to display a label. The label text is set " "with the *text* option and positioned with *labelanchor*, or an arbitrary " "widget may be used as the label by giving it as the *labelwidget* option. " "Inherits from :class:`Widget`. Refer to the Tk ``labelframe`` manual page " @@ -4542,10 +4622,11 @@ msgid "" "(the default; at most one item, which may be dragged with the mouse), " "``single`` (at most one item), ``multiple`` (any number of items, toggled " "individually), or ``extended`` (any number of items, including discontiguous " -"ranges, selected by clicking and dragging). Inherits from :class:`Widget`, :" -"class:`XView` and :class:`YView`, so the view can be scrolled horizontally " -"and vertically with :meth:`~XView.xview` and :meth:`~YView.yview`. Refer to " -"the Tk ``listbox`` manual page for the full list of options." +"ranges, selected by clicking and dragging). Inherits " +"from :class:`Widget`, :class:`XView` and :class:`YView`, so the view can be " +"scrolled horizontally and vertically with :meth:`~XView.xview` " +"and :meth:`~YView.yview`. Refer to the Tk ``listbox`` manual page for the " +"full list of options." msgstr "" msgid "" @@ -4553,10 +4634,10 @@ msgid "" "As described in the Tk ``listbox`` manual page, *index* may be a numeric " "index (counting from 0 at the top), ``'active'`` (the item with the location " "cursor, set with :meth:`activate`), ``'anchor'`` (the selection anchor, set " -"with :meth:`selection_anchor`), ``'end'`` (the last item, or for :meth:" -"`index` and :meth:`insert` the position just after it), or ``@x,y`` (the " -"item covering pixel coordinates *x*, *y* in the listbox window). Arguments " -"named *first* and *last* are indices of the same forms." +"with :meth:`selection_anchor`), ``'end'`` (the last item, or " +"for :meth:`index` and :meth:`insert` the position just after it), or " +"``@x,y`` (the item covering pixel coordinates *x*, *y* in the listbox " +"window). Arguments named *first* and *last* are indices of the same forms." msgstr "" msgid "" @@ -4628,8 +4709,8 @@ msgid "" "Set the selection anchor to the item given by *index*. If *index* refers to " "a non-existent item, the closest item is used. The selection anchor is the " "end of the selection that is fixed while dragging out a selection with the " -"mouse, and may afterwards be referred to with the ``'anchor'`` index. :meth:" -"`select_anchor` is an alias of :meth:`!selection_anchor`." +"mouse, and may afterwards be referred to with the ``'anchor'`` " +"index. :meth:`select_anchor` is an alias of :meth:`!selection_anchor`." msgstr "" msgid "" @@ -4651,8 +4732,8 @@ msgstr "" msgid "" "Select all of the items in the range from *first* to *last* inclusive, " -"without affecting the selection state of items outside that range. :meth:" -"`select_set` is an alias of :meth:`!selection_set`." +"without affecting the selection state of items outside that " +"range. :meth:`select_set` is an alias of :meth:`!selection_set`." msgstr "" msgid "" @@ -4699,9 +4780,10 @@ msgid "" "Add a new entry to the bottom of the menu. *itemType* is one of " "``'command'``, ``'cascade'``, ``'checkbutton'``, ``'radiobutton'`` or " "``'separator'`` and determines the type of the new entry; the remaining " -"options configure it. The :meth:`!add_command`, :meth:`!add_cascade`, :meth:" -"`!add_checkbutton`, :meth:`!add_radiobutton` and :meth:`!add_separator` " -"convenience methods call this method with the corresponding *itemType*." +"options configure it. The :meth:`!add_command`, :meth:`!" +"add_cascade`, :meth:`!add_checkbutton`, :meth:`!add_radiobutton` and :meth:`!" +"add_separator` convenience methods call this method with the corresponding " +"*itemType*." msgstr "" msgid "" @@ -4873,28 +4955,28 @@ msgid "" msgstr "" msgid "" -"Insert a new cascade entry before the entry given by *index* (see :meth:" -"`add_cascade`)." +"Insert a new cascade entry before the entry given by *index* " +"(see :meth:`add_cascade`)." msgstr "" msgid "" -"Insert a new checkbutton entry before the entry given by *index* (see :meth:" -"`add_checkbutton`)." +"Insert a new checkbutton entry before the entry given by *index* " +"(see :meth:`add_checkbutton`)." msgstr "" msgid "" -"Insert a new command entry before the entry given by *index* (see :meth:" -"`add_command`)." +"Insert a new command entry before the entry given by *index* " +"(see :meth:`add_command`)." msgstr "" msgid "" -"Insert a new radiobutton entry before the entry given by *index* (see :meth:" -"`add_radiobutton`)." +"Insert a new radiobutton entry before the entry given by *index* " +"(see :meth:`add_radiobutton`)." msgstr "" msgid "" -"Insert a separator before the entry given by *index* (see :meth:" -"`add_separator`)." +"Insert a separator before the entry given by *index* " +"(see :meth:`add_separator`)." msgstr "" msgid "" @@ -4914,9 +4996,9 @@ msgid "" "This mirrors :meth:`~Misc.configure`, except that it applies to an " "individual entry rather than to the menu as a whole. With no options, it " "returns a dictionary describing the current options of the entry; otherwise " -"it sets the given options. The supported options are those accepted by :meth:" -"`add` for the entry's type. :meth:`entryconfig` is an alias of :meth:`!" -"entryconfigure`." +"it sets the given options. The supported options are those accepted " +"by :meth:`add` for the entry's type. :meth:`entryconfig` is an alias " +"of :meth:`!entryconfigure`." msgstr "" msgid "" @@ -4987,9 +5069,9 @@ msgid "" "by the *text* option or linked to a variable through *textvariable*. Unlike " "a :class:`Label`, it breaks the string into multiple lines in order to " "produce a given aspect ratio, choosing line breaks at word boundaries, and " -"it can justify the text left, centered or right. Inherits from :class:" -"`Widget`. Refer to the Tk ``message`` manual page for the full list of " -"options." +"it can justify the text left, centered or right. Inherits " +"from :class:`Widget`. Refer to the Tk ``message`` manual page for the full " +"list of options." msgstr "" msgid "" @@ -5031,10 +5113,10 @@ msgstr "" msgid "" "Remove the pane containing *child* from the panedwindow. All geometry " -"management options for *child* are forgotten. :meth:`forget` is an alias of :" -"meth:`!remove`. This shadows the inherited geometry-manager :meth:`!forget`; " -"use :meth:`~Pack.pack_forget`, :meth:`~Grid.grid_forget` or :meth:`~Place." -"place_forget` to remove the widget itself from its manager." +"management options for *child* are forgotten. :meth:`forget` is an alias " +"of :meth:`!remove`. This shadows the inherited geometry-manager :meth:`!" +"forget`; use :meth:`~Pack.pack_forget`, :meth:`~Grid.grid_forget` " +"or :meth:`~Place.place_forget` to remove the widget itself from its manager." msgstr "" msgid "" @@ -5044,8 +5126,8 @@ msgstr "" msgid "" "Return the current value of the management option *option* for the pane " -"containing *child*. *option* may be any value allowed by :meth:" -"`paneconfigure`." +"containing *child*. *option* may be any value allowed " +"by :meth:`paneconfigure`." msgstr "" msgid "" @@ -5076,9 +5158,9 @@ msgstr "" msgid "" "Query or change the position of the sashes in the panedwindow. This is a " -"thin wrapper around the Tk ``sash`` subcommand; the convenience methods :" -"meth:`sash_coord`, :meth:`sash_mark` and :meth:`sash_place` should normally " -"be used instead." +"thin wrapper around the Tk ``sash`` subcommand; the convenience " +"methods :meth:`sash_coord`, :meth:`sash_mark` and :meth:`sash_place` should " +"normally be used instead." msgstr "" msgid "" @@ -5099,9 +5181,9 @@ msgstr "" msgid "" "Query or change the position of the sash proxy, the \"ghost\" sash shown " "while a sash is being dragged with non-opaque resizing. This is a thin " -"wrapper around the Tk ``proxy`` subcommand; the convenience methods :meth:" -"`proxy_coord`, :meth:`proxy_forget` and :meth:`proxy_place` should normally " -"be used instead." +"wrapper around the Tk ``proxy`` subcommand; the convenience " +"methods :meth:`proxy_coord`, :meth:`proxy_forget` and :meth:`proxy_place` " +"should normally be used instead." msgstr "" msgid "" @@ -5156,8 +5238,8 @@ msgstr "" msgid "" "A :class:`!Scale` widget lets the user select a numerical value by moving a " "slider along a trough. It can be oriented vertically or horizontally and can " -"optionally display a label and the current value. Inherits from :class:" -"`Widget`." +"optionally display a label and the current value. Inherits " +"from :class:`Widget`." msgstr "" msgid "" @@ -5199,12 +5281,12 @@ msgstr "" msgid "" "A :class:`!Scrollbar` widget displays a slider and two arrows that let the " -"user scroll an associated widget, such as a :class:`Listbox`, :class:" -"`Text`, :class:`Canvas` or :class:`Entry`. It is connected to the scrolled " -"widget by setting that widget's *xscrollcommand* or *yscrollcommand* option " -"to the scrollbar's :meth:`set` method, and the scrollbar's *command* option " -"to the scrolled widget's :meth:`~XView.xview` or :meth:`~YView.yview` " -"method. Inherits from :class:`Widget`." +"user scroll an associated widget, such as " +"a :class:`Listbox`, :class:`Text`, :class:`Canvas` or :class:`Entry`. It is " +"connected to the scrolled widget by setting that widget's *xscrollcommand* " +"or *yscrollcommand* option to the scrollbar's :meth:`set` method, and the " +"scrollbar's *command* option to the scrolled widget's :meth:`~XView.xview` " +"or :meth:`~YView.yview` method. Inherits from :class:`Widget`." msgstr "" msgid "" @@ -5256,10 +5338,11 @@ msgid "" "range given by the *from_*, *to* and *increment* options, or an explicit " "list of strings given by the *values* option (which takes precedence over " "the range). Each time an arrow is invoked the *command* callback, if any, is " -"called; the *wrap* option controls whether stepping past either end of the " -"range wraps around to the other end; the *format* option specifies how " -"numeric values are formatted; and the *validate* option enables validation " -"of the entered text. Inherits from :class:`Widget` and :class:`XView`." +"called; the boolean *wrap* option controls whether stepping past either end " +"of the range wraps around to the other end; the *format* option specifies " +"how numeric values are formatted; and the *validate* option enables " +"validation of the entered text. Inherits from :class:`Widget` " +"and :class:`XView`." msgstr "" msgid "" @@ -5272,9 +5355,9 @@ msgid "" "spinbox's string. As described in the Tk ``spinbox`` manual page, *index* " "may be a numeric index (counting from 0), ``'anchor'`` (the selection anchor " "point), ``'end'`` (just after the last character), ``'insert'`` (the " -"character just after the insertion cursor), ``'sel.first'`` or ``'sel." -"last'`` (the ends of the selection), or ``@x`` (the character covering pixel " -"x-coordinate *x* in the window)." +"character just after the insertion cursor), ``'sel.first'`` or " +"``'sel.last'`` (the ends of the selection), or ``@x`` (the character " +"covering pixel x-coordinate *x* in the window)." msgstr "" msgid "Return the spinbox's string." @@ -5316,14 +5399,14 @@ msgstr "" msgid "" "A thin wrapper around the Tk ``scan`` widget subcommand, used to implement " "fast dragging of the view: ``scan('mark', x)`` records *x* and the current " -"view, and ``scan('dragto', x)`` adjusts the view relative to that mark. The :" -"meth:`scan_mark` and :meth:`scan_dragto` methods wrap the two forms." +"view, and ``scan('dragto', x)`` adjusts the view relative to that mark. " +"The :meth:`scan_mark` and :meth:`scan_dragto` methods wrap the two forms." msgstr "" msgid "" -"Record *x* and the current view in the spinbox window, for use with a later :" -"meth:`scan_dragto` call. This is typically associated with a mouse button " -"press in the widget." +"Record *x* and the current view in the spinbox window, for use with a " +"later :meth:`scan_dragto` call. This is typically associated with a mouse " +"button press in the widget." msgstr "" msgid "" @@ -5339,19 +5422,18 @@ msgid "" "first argument, such as ``selection('adjust', index)``, " "``selection('clear')``, ``selection('element', ?elem?)``, " "``selection('from', index)``, ``selection('present')``, ``selection('range', " -"start, end)`` and ``selection('to', index)``. The :meth:`selection_adjust`, :" -"meth:`selection_clear`, :meth:`selection_element`, :meth:`selection_from`, :" -"meth:`selection_present`, :meth:`selection_range` and :meth:`selection_to` " -"methods wrap these forms." +"start, end)`` and ``selection('to', index)``. " +"The :meth:`selection_adjust`, :meth:`selection_clear`, :meth:`selection_element`, :meth:`selection_from`, :meth:`selection_present`, :meth:`selection_range` " +"and :meth:`selection_to` methods wrap these forms." msgstr "" msgid "" "Locate the end of the selection nearest to the character given by *index* " "and adjust that end of the selection to be at *index* (including but not " -"going beyond *index*). The other end becomes the anchor point for future :" -"meth:`selection_to` calls. If the selection is not currently in the spinbox, " -"a new selection is created to include the characters between *index* and the " -"most recent anchor point, inclusive." +"going beyond *index*). The other end becomes the anchor point for " +"future :meth:`selection_to` calls. If the selection is not currently in the " +"spinbox, a new selection is created to include the characters between " +"*index* and the most recent anchor point, inclusive." msgstr "" msgid "" @@ -5392,9 +5474,9 @@ msgid "" "the anchor point, the selection runs from *index* up to but not including " "the anchor point; if it is after, the selection runs from the anchor point " "up to but not including *index*; if it is the same, nothing happens. The " -"anchor point is the one set by the most recent :meth:`selection_from` or :" -"meth:`selection_adjust` call. If the selection is not in this widget, a new " -"selection is created using the most recent anchor point." +"anchor point is the one set by the most recent :meth:`selection_from` " +"or :meth:`selection_adjust` call. If the selection is not in this widget, a " +"new selection is created using the most recent anchor point." msgstr "" msgid "" @@ -5402,11 +5484,11 @@ msgid "" "text may be styled with **tags**, particular positions may be annotated with " "floating **marks**, and arbitrary images and other widgets may be embedded " "in the text. The widget also provides an unlimited undo/redo mechanism and " -"supports peer widgets that share the same underlying data. Inherits from :" -"class:`Widget`, :class:`XView` and :class:`YView`, so the view can be " -"scrolled horizontally and vertically with :meth:`~XView.xview` and :meth:" -"`~YView.yview`. Refer to the Tk ``text`` manual page for the full list of " -"options." +"supports peer widgets that share the same underlying data. Inherits " +"from :class:`Widget`, :class:`XView` and :class:`YView`, so the view can be " +"scrolled horizontally and vertically with :meth:`~XView.xview` " +"and :meth:`~YView.yview`. Refer to the Tk ``text`` manual page for the full " +"list of options." msgstr "" msgid "" @@ -5414,16 +5496,16 @@ msgid "" "position within the text. As described in the Tk ``text`` manual page, an " "index is a string consisting of a base, optionally followed by one or more " "modifiers. The base may be ``'line.char'`` (line *line*, character *char*, " -"where lines are counted from 1 and characters within a line from 0; ``'line." -"end'`` refers to the newline ending the line), ``'end'`` (the position just " -"after the last newline), the name of a mark, ``'tag.first'`` or ``'tag." -"last'`` (the first character tagged with *tag*, or the position just after " -"the last such character), the name of an embedded image or window, or ``@x," -"y`` (the character covering pixel coordinates *x*, *y* in the widget). A " -"modifier such as ``'+5 chars'``, ``'-3 lines'``, ``'linestart'``, " -"``'lineend'``, ``'wordstart'`` or ``'wordend'`` adjusts the index relative " -"to its base; several modifiers may be combined and are applied from left to " -"right, for example ``'insert wordstart - 1 c'``." +"where lines are counted from 1 and characters within a line from 0; " +"``'line.end'`` refers to the newline ending the line), ``'end'`` (the " +"position just after the last newline), the name of a mark, ``'tag.first'`` " +"or ``'tag.last'`` (the first character tagged with *tag*, or the position " +"just after the last such character), the name of an embedded image or " +"window, or ``@x,y`` (the character covering pixel coordinates *x*, *y* in " +"the widget). A modifier such as ``'+5 chars'``, ``'-3 lines'``, " +"``'linestart'``, ``'lineend'``, ``'wordstart'`` or ``'wordend'`` adjusts the " +"index relative to its base; several modifiers may be combined and are " +"applied from left to right, for example ``'insert wordstart - 1 c'``." msgstr "" msgid "" @@ -5455,8 +5537,8 @@ msgid "" msgstr "" msgid "" -"Return the position corresponding to *index* in the canonical ``'line." -"char'`` form." +"Return the position corresponding to *index* in the canonical " +"``'line.char'`` form." msgstr "" msgid "" @@ -5611,7 +5693,7 @@ msgid "" "baseline, for superscripts and subscripts." msgstr "" -msgid "Whether to underline the text." +msgid "Whether to underline the text (a boolean)." msgstr "" msgid "*underlinefg*" @@ -5757,14 +5839,14 @@ msgid "" "Bind the event *sequence* on characters tagged with *tagName* to the " "callback *func*, so that *func* is invoked when that event occurs over such " "a character. If *add* is true the binding is added alongside any existing " -"bindings for *sequence*, otherwise it replaces them. Works like :meth:`~Misc." -"bind` and returns the identifier of the new binding." +"bindings for *sequence*, otherwise it replaces them. Works " +"like :meth:`~Misc.bind` and returns the identifier of the new binding." msgstr "" msgid "" "Remove the bindings of the event *sequence* on characters tagged with " -"*tagName*. If *funcid* is given, only that binding (as returned by :meth:" -"`tag_bind`) is removed and its callback is unregistered." +"*tagName*. If *funcid* is given, only that binding (as returned " +"by :meth:`tag_bind`) is removed and its callback is unregistered." msgstr "" msgid "" @@ -5790,15 +5872,16 @@ msgstr "" msgid "" "This shadows the inherited :meth:`Misc.image_names`, which returns the names " -"of all images in the Tcl interpreter; that method is not available on a :" -"class:`Text`." +"of all images in the Tcl interpreter; that method is not available on " +"a :class:`Text`." msgstr "" msgid "" "Embed a window (any widget) at *index*. The options, given in *cnf* and " "*kw*, include *window* (the widget to embed), *create* (a callback that " -"creates the widget on demand), *align*, *stretch*, *padx* and *pady*. The " -"embedded widget must be a descendant of the text widget's parent." +"creates the widget on demand), *align*, the boolean *stretch* (whether the " +"widget is stretched vertically to the height of the line), *padx* and " +"*pady*. The embedded widget must be a descendant of the text widget's parent." msgstr "" msgid "" @@ -5947,9 +6030,9 @@ msgid "" msgstr "" msgid "" -"In most cases you should use one of the typed subclasses below -- :class:" -"`StringVar`, :class:`IntVar`, :class:`DoubleVar` or :class:`BooleanVar` -- " -"rather than :class:`!Variable` directly." +"In most cases you should use one of the typed subclasses below " +"-- :class:`StringVar`, :class:`IntVar`, :class:`DoubleVar` " +"or :class:`BooleanVar` -- rather than :class:`!Variable` directly." msgstr "" msgid "" @@ -5991,8 +6074,8 @@ msgid "" msgstr "" msgid "" -"Return the internal name of the registered callback, which can be passed to :" -"meth:`trace_remove`." +"Return the internal name of the registered callback, which can be passed " +"to :meth:`trace_remove`." msgstr "" msgid "" @@ -6010,8 +6093,8 @@ msgstr "" msgid "" "Register *callback* to be called when the variable is accessed according to " "*mode*. *mode* is one of the strings ``'r'``, ``'w'`` or ``'u'``, for read, " -"write or unset. Return the internal name of the registered callback. :meth:" -"`trace` is an alias of :meth:`!trace_variable`." +"write or unset. Return the internal name of the registered " +"callback. :meth:`trace` is an alias of :meth:`!trace_variable`." msgstr "" msgid "" @@ -6020,8 +6103,8 @@ msgid "" msgstr "" msgid "" -"Remove the trace callback named *cbname* registered for *mode* with :meth:" -"`trace_variable`." +"Remove the trace callback named *cbname* registered for *mode* " +"with :meth:`trace_variable`." msgstr "" msgid "" @@ -6078,8 +6161,8 @@ msgid "" msgstr "" msgid "" -"Return the value of the variable as a :class:`bool`. Raise a :exc:" -"`ValueError` if the value cannot be interpreted as a boolean." +"Return the value of the variable as a :class:`bool`. Raise " +"a :exc:`ValueError` if the value cannot be interpreted as a boolean." msgstr "" msgid "" @@ -6094,8 +6177,9 @@ msgid "" "Base class for Tk images. *imgtype* is the Tk image type, one of ``'photo'`` " "or ``'bitmap'``. An image is a named object that can be displayed by widgets " "through their *image* option; deleting all references to the :class:`!Image` " -"object deletes the underlying Tk image. Usually you create a :class:" -"`PhotoImage` or :class:`BitmapImage` rather than an :class:`!Image` directly." +"object deletes the underlying Tk image. Usually you create " +"a :class:`PhotoImage` or :class:`BitmapImage` rather than an :class:`!Image` " +"directly." msgstr "" msgid "" @@ -6106,8 +6190,8 @@ msgstr "" msgid "" "Modify one or more configuration options of the image. The valid options " -"depend on the image type; see :class:`PhotoImage` and :class:`BitmapImage`. :" -"meth:`config` is an alias of :meth:`!configure`." +"depend on the image type; see :class:`PhotoImage` " +"and :class:`BitmapImage`. :meth:`config` is an alias of :meth:`!configure`." msgstr "" msgid "Return the height of the image, in pixels." @@ -6158,9 +6242,9 @@ msgid "" msgstr "" msgid "" -"If *zoom* or *subsample* are specified, the image is transformed as in the :" -"meth:`zoom` or :meth:`subsample` methods. The value must be a single integer " -"or a pair of integers." +"If *zoom* or *subsample* are specified, the image is transformed as in " +"the :meth:`zoom` or :meth:`subsample` methods. The value must be a single " +"integer or a pair of integers." msgstr "" msgid "Added the *from_coords*, *zoom* and *subsample* parameters." @@ -6342,19 +6426,20 @@ msgid "" msgstr "" msgid "" -":class:`!BitmapImage` has no methods of its own beyond those inherited from :" -"class:`Image`." +":class:`!BitmapImage` has no methods of its own beyond those inherited " +"from :class:`Image`." msgstr "" msgid "Other classes" msgstr "" msgid "" -"A container for the attributes of an event passed to a callback bound with :" -"meth:`Misc.bind`. An :class:`!Event` instance has the following attributes, " -"each corresponding to a field of the underlying Tk event; depending on the " -"event type, some attributes may be set to the string ``'??'`` to indicate " -"that they are not meaningful. See :ref:`bindings-and-events`." +"A container for the attributes of an event passed to a callback bound " +"with :meth:`Misc.bind`. An :class:`!Event` instance has the following " +"attributes, each corresponding to a field of the underlying Tk event; " +"depending on the event type, some attributes may be set to the string " +"``'??'`` to indicate that they are not meaningful. See :ref:`bindings-and-" +"events`." msgstr "" msgid "The serial number of the event." @@ -6412,8 +6497,8 @@ msgid "The amount the mouse wheel was rotated (for ``MouseWheel`` events)." msgstr "" msgid "" -"The data string of a virtual event, as passed to the *data* option of :meth:" -"`Misc.event_generate`. It is ``'??'`` for non-virtual events." +"The data string of a virtual event, as passed to the *data* option " +"of :meth:`Misc.event_generate`. It is ``'??'`` for non-virtual events." msgstr "" msgid "" @@ -6448,8 +6533,8 @@ msgid "" "interpreter in an environment where one doesn't want to create extraneous " "toplevel windows, or where one cannot (such as Unix/Linux systems without an " "X server). An object created by the :func:`Tcl` object can have a Toplevel " -"window created (and the Tk subsystem initialized) by calling its :meth:`~Tk." -"loadtk` method." +"window created (and the Tk subsystem initialized) by calling " +"its :meth:`~Tk.loadtk` method." msgstr "" msgid "" @@ -6467,8 +6552,8 @@ msgstr "" msgid "" "Convert the Tcl boolean string *s* (one of ``'1'``, ``'true'``, ``'yes'``, " -"``'on'`` and similar, or their false counterparts) to a Python :class:" -"`bool`. Raise :exc:`TclError` for an invalid value." +"``'on'`` and similar, or their false counterparts) to a " +"Python :class:`bool`. Raise :exc:`ValueError` for an invalid value." msgstr "" msgid "" @@ -6510,12 +6595,12 @@ msgstr "" msgid "" "Since you don't know how many bytes are available for reading, you may not " -"want to use the :class:`~io.BufferedIOBase` or :class:`~io.TextIOBase` :meth:" -"`~io.BufferedIOBase.read` or :meth:`~io.IOBase.readline` methods, since " -"these will insist on reading a predefined number of bytes. For sockets, the :" -"meth:`~socket.socket.recv` or :meth:`~socket.socket.recvfrom` methods will " -"work fine; for other files, use raw reads or ``os.read(file.fileno(), " -"maxbytecount)``." +"want to use the :class:`~io.BufferedIOBase` " +"or :class:`~io.TextIOBase` :meth:`~io.BufferedIOBase.read` " +"or :meth:`~io.IOBase.readline` methods, since these will insist on reading a " +"predefined number of bytes. For sockets, the :meth:`~socket.socket.recv` " +"or :meth:`~socket.socket.recvfrom` methods will work fine; for other files, " +"use raw reads or ``os.read(file.fileno(), maxbytecount)``." msgstr "" msgid "" @@ -6568,8 +6653,8 @@ msgid "Values for the *relief* option, which controls a widget's 3-D border." msgstr "" msgid "" -"Values for the *orient* option of widgets such as :class:`Scale`, :class:" -"`Scrollbar` and :class:`PanedWindow`." +"Values for the *orient* option of widgets such " +"as :class:`Scale`, :class:`Scrollbar` and :class:`PanedWindow`." msgstr "" msgid "" @@ -6581,8 +6666,8 @@ msgid "The text-alignment value ``'baseline'``." msgstr "" msgid "" -"Values for the *bordermode* option of the placer (see :meth:`Place." -"place_configure`)." +"Values for the *bordermode* option of the placer " +"(see :meth:`Place.place_configure`)." msgstr "" msgid "" @@ -6601,8 +6686,8 @@ msgid "Values for the *state* option of various widgets and items." msgstr "" msgid "" -"Menu entry types, used as the *itemType* argument of :meth:`Menu.add` and :" -"meth:`Menu.insert`." +"Menu entry types, used as the *itemType* argument of :meth:`Menu.add` " +"and :meth:`Menu.insert`." msgstr "" msgid "Values for the *selectmode* option of the :class:`Listbox` widget." @@ -6613,8 +6698,8 @@ msgstr "" msgid "" "Values for the *capstyle* (``'butt'``, ``'projecting'``, ``'round'``) and " -"*joinstyle* (``'round'``, ``'bevel'``, ``'miter'``) options of :class:" -"`Canvas` line items." +"*joinstyle* (``'round'``, ``'bevel'``, ``'miter'``) options " +"of :class:`Canvas` line items." msgstr "" msgid "" @@ -6628,8 +6713,8 @@ msgid "" msgstr "" msgid "" -"Values for the *what* argument of :meth:`XView.xview_scroll` and :meth:" -"`YView.yview_scroll`." +"Values for the *what* argument of :meth:`XView.xview_scroll` " +"and :meth:`YView.yview_scroll`." msgstr "" msgid "Other option values: ``'underline'``, ``'numeric'`` and ``'dotbox'``." diff --git a/library/tkinter.scrolledtext.po b/library/tkinter.scrolledtext.po index 8eec923..8a597bb 100644 --- a/library/tkinter.scrolledtext.po +++ b/library/tkinter.scrolledtext.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,11 +36,13 @@ msgid "" msgstr "" msgid "" -"The text widget and scrollbar are packed together in a :class:`~tkinter." -"Frame`, and the methods of the :class:`~tkinter.Pack`, :class:`~tkinter." -"Grid` and :class:`~tkinter.Place` geometry managers are acquired from the :" -"class:`~tkinter.Frame` object. This allows the :class:`ScrolledText` widget " -"to be used directly to achieve most normal geometry management behavior." +"The text widget and scrollbar are packed together in " +"a :class:`~tkinter.Frame`, and the methods of " +"the :class:`~tkinter.Pack`, :class:`~tkinter.Grid` " +"and :class:`~tkinter.Place` geometry managers are acquired from " +"the :class:`~tkinter.Frame` object. This allows the :class:`ScrolledText` " +"widget to be used directly to achieve most normal geometry management " +"behavior." msgstr "" msgid "" diff --git a/library/tkinter.ttk.po b/library/tkinter.ttk.po index fbe7b3f..0579ff5 100644 --- a/library/tkinter.ttk.po +++ b/library/tkinter.ttk.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -44,8 +44,8 @@ msgstr "" msgid "" "Ttk widgets are used just like the classic :mod:`tkinter` widgets and share " "the same machinery: the widget hierarchy, the geometry managers, variable " -"coupling and event binding. Those foundational concepts are covered in the :" -"mod:`tkinter` documentation and are not repeated here." +"coupling and event binding. Those foundational concepts are covered in " +"the :mod:`tkinter` documentation and are not repeated here." msgstr "" msgid "" @@ -76,11 +76,9 @@ msgid "" msgstr "" msgid "" -"That code causes several :mod:`!tkinter.ttk` widgets (:class:`Button`, :" -"class:`Checkbutton`, :class:`Entry`, :class:`Frame`, :class:`Label`, :class:" -"`LabelFrame`, :class:`Menubutton`, :class:`OptionMenu`, :class:" -"`PanedWindow`, :class:`Radiobutton`, :class:`Scale`, :class:`Scrollbar` and :" -"class:`Spinbox`) to automatically replace the Tk widgets." +"That code causes several :mod:`!tkinter.ttk` widgets " +"(:class:`Button`, :class:`Checkbutton`, :class:`Entry`, :class:`Frame`, :class:`Label`, :class:`LabelFrame`, :class:`Menubutton`, :class:`OptionMenu`, :class:`PanedWindow`, :class:`Radiobutton`, :class:`Scale`, :class:`Scrollbar` " +"and :class:`Spinbox`) to automatically replace the Tk widgets." msgstr "" msgid "" @@ -103,13 +101,11 @@ msgid "Ttk widgets" msgstr "" msgid "" -"Ttk comes with 18 widgets, twelve of which already existed in tkinter: :" -"class:`Button`, :class:`Checkbutton`, :class:`Entry`, :class:`Frame`, :class:" -"`Label`, :class:`LabelFrame`, :class:`Menubutton`, :class:`PanedWindow`, :" -"class:`Radiobutton`, :class:`Scale`, :class:`Scrollbar`, and :class:" -"`Spinbox`. The other six are new: :class:`Combobox`, :class:`Notebook`, :" -"class:`Progressbar`, :class:`Separator`, :class:`Sizegrip` and :class:" -"`Treeview`. All of them are subclasses of :class:`Widget`." +"Ttk comes with 18 widgets, twelve of which already existed in " +"tkinter: :class:`Button`, :class:`Checkbutton`, :class:`Entry`, :class:`Frame`, :class:`Label`, :class:`LabelFrame`, :class:`Menubutton`, :class:`PanedWindow`, :class:`Radiobutton`, :class:`Scale`, :class:`Scrollbar`, " +"and :class:`Spinbox`. The other six are " +"new: :class:`Combobox`, :class:`Notebook`, :class:`Progressbar`, :class:`Separator`, :class:`Sizegrip` " +"and :class:`Treeview`. All of them are subclasses of :class:`Widget`." msgstr "" msgid "" @@ -218,9 +214,9 @@ msgid "" msgstr "" msgid "" -"Usually this option consists of the method :meth:`Scrollbar.set ` of some scrollbar. This will cause the scrollbar to be " -"updated whenever the view in the window changes." +"Usually this option consists of the method :meth:`Scrollbar.set " +"` of some scrollbar. This will cause the scrollbar to " +"be updated whenever the view in the window changes." msgstr "" msgid "yscrollcommand" @@ -395,8 +391,8 @@ msgstr "" msgid "" "Besides the methods described below, the :class:`ttk.Widget ` " -"supports the methods :meth:`tkinter.Widget.cget ` and :" -"meth:`tkinter.Widget.configure `." +"supports the methods :meth:`tkinter.Widget.cget ` " +"and :meth:`tkinter.Widget.configure `." msgstr "" msgid "" @@ -435,14 +431,12 @@ msgid "" msgstr "" msgid "" -"Besides the methods inherited from :class:`Widget`: :meth:`~tkinter.Misc." -"cget`, :meth:`~tkinter.Misc.configure`, :meth:`~Widget.identify`, :meth:" -"`~Widget.instate` and :meth:`~Widget.state`, and the following inherited " -"from :class:`Entry`: :meth:`~Entry.bbox`, :meth:`~tkinter.Entry.delete`, :" -"meth:`~tkinter.Entry.icursor`, :meth:`~tkinter.Entry.index`, :meth:`~tkinter." -"Entry.insert`, :meth:`selection* `, :meth:" -"`xview* `, it has some other methods, described at :" -"class:`ttk.Combobox `." +"Besides the methods inherited " +"from :class:`Widget`: :meth:`~tkinter.Misc.cget`, :meth:`~tkinter.Misc.configure`, :meth:`~Widget.identify`, :meth:`~Widget.instate` " +"and :meth:`~Widget.state`, and the following inherited " +"from :class:`Entry`: :meth:`~Entry.bbox`, :meth:`~tkinter.Entry.delete`, :meth:`~tkinter.Entry.icursor`, :meth:`~tkinter.Entry.index`, :meth:`~tkinter.Entry.insert`, :meth:`selection* " +"`, :meth:`xview* `, it " +"has some other methods, described at :class:`ttk.Combobox `." msgstr "" msgid "Options" @@ -540,13 +534,12 @@ msgid "" "The :class:`ttk.Spinbox ` widget is a :class:`ttk.Entry ` " "enhanced with increment and decrement arrows. It can be used for numbers or " "lists of string values. This widget is a subclass of :class:`Entry`. Besides " -"the methods inherited from :class:`Widget`: :meth:`~tkinter.Misc.cget`, :" -"meth:`~tkinter.Misc.configure`, :meth:`~Widget.identify`, :meth:`~Widget." -"instate` and :meth:`~Widget.state`, and the following inherited from :class:" -"`Entry`: :meth:`~Entry.bbox`, :meth:`~tkinter.Entry.delete`, :meth:`~tkinter." -"Entry.icursor`, :meth:`~tkinter.Entry.index`, :meth:`~tkinter.Entry." -"insert`, :meth:`xview* `, it has some other methods, " -"described at :class:`ttk.Spinbox `." +"the methods inherited " +"from :class:`Widget`: :meth:`~tkinter.Misc.cget`, :meth:`~tkinter.Misc.configure`, :meth:`~Widget.identify`, :meth:`~Widget.instate` " +"and :meth:`~Widget.state`, and the following inherited " +"from :class:`Entry`: :meth:`~Entry.bbox`, :meth:`~tkinter.Entry.delete`, :meth:`~tkinter.Entry.icursor`, :meth:`~tkinter.Entry.index`, :meth:`~tkinter.Entry.insert`, :meth:`xview* " +"`, it has some other methods, described " +"at :class:`ttk.Spinbox `." msgstr "" msgid "from" @@ -688,8 +681,8 @@ msgid "Specifies a text to be displayed in the tab." msgstr "" msgid "" -"Specifies an image to display in the tab. See the option image described in :" -"class:`Widget`." +"Specifies an image to display in the tab. See the option image described " +"in :class:`Widget`." msgstr "" msgid "" @@ -699,8 +692,8 @@ msgstr "" msgid "" "Specifies the index (0-based) of a character to underline in the text " -"string. The underlined character is used for mnemonic activation if :meth:" -"`Notebook.enable_traversal` is called." +"string. The underlined character is used for mnemonic activation " +"if :meth:`Notebook.enable_traversal` is called." msgstr "" msgid "Tab identifiers" @@ -755,9 +748,10 @@ msgid "" msgstr "" msgid "" -"This shadows the inherited geometry-manager :meth:`!forget`; use :meth:" -"`~tkinter.Pack.pack_forget`, :meth:`~tkinter.Grid.grid_forget` or :meth:" -"`~tkinter.Place.place_forget` to remove the widget itself from its manager." +"This shadows the inherited geometry-manager :meth:`!forget`; " +"use :meth:`~tkinter.Pack.pack_forget`, :meth:`~tkinter.Grid.grid_forget` " +"or :meth:`~tkinter.Place.place_forget` to remove the widget itself from its " +"manager." msgstr "" msgid "Hides the tab specified by *tab_id*." @@ -910,9 +904,9 @@ msgid "ttk.Progressbar" msgstr "" msgid "" -"Begin autoincrement mode: schedules a recurring timer event that calls :meth:" -"`Progressbar.step` every *interval* milliseconds. If omitted, *interval* " -"defaults to 50 milliseconds." +"Begin autoincrement mode: schedules a recurring timer event that " +"calls :meth:`Progressbar.step` every *interval* milliseconds. If omitted, " +"*interval* defaults to 50 milliseconds." msgstr "" msgid "Increments the progress bar's value by *amount*." @@ -922,8 +916,8 @@ msgid "*amount* defaults to 1.0 if omitted." msgstr "" msgid "" -"Stop autoincrement mode: cancels any recurring timer event initiated by :" -"meth:`Progressbar.start` for this progress bar." +"Stop autoincrement mode: cancels any recurring timer event initiated " +"by :meth:`Progressbar.start` for this progress bar." msgstr "" msgid "Separator" @@ -1013,8 +1007,8 @@ msgstr "" msgid "" "The Treeview widget supports horizontal and vertical scrolling, according to " -"the options described in `Scrollable Widget Options`_ and the methods :meth:" -"`Treeview.xview` and :meth:`Treeview.yview`." +"the options described in `Scrollable Widget Options`_ and the " +"methods :meth:`Treeview.xview` and :meth:`Treeview.yview`." msgstr "" msgid "columns" @@ -1235,8 +1229,8 @@ msgid "" msgstr "" msgid "" -"This shadows the inherited :meth:`!Misc.bbox`; use :meth:`~tkinter.Misc." -"grid_bbox` for the grid bounding box." +"This shadows the inherited :meth:`!Misc.bbox`; " +"use :meth:`~tkinter.Misc.grid_bbox` for the grid bounding box." msgstr "" msgid "Returns a tuple of children belonging to *item*." @@ -1343,8 +1337,8 @@ msgid "" msgstr "" msgid "" -"This shadows the inherited :meth:`!Misc.focus`; use :meth:`~tkinter.Misc." -"focus_set` to focus the widget itself." +"This shadows the inherited :meth:`!Misc.focus`; " +"use :meth:`~tkinter.Misc.focus_set` to focus the widget itself." msgstr "" msgid "Query or modify the heading options for the specified *column*." @@ -1577,9 +1571,9 @@ msgid "" "elements making up the widget and how they are arranged, along with dynamic " "and default settings for element options. By default the style name is the " "same as the widget's class name, but it may be overridden by the widget's " -"style option. If you don't know the class name of a widget, use the method :" -"meth:`Misc.winfo_class ` (somewidget." -"winfo_class())." +"style option. If you don't know the class name of a widget, use the " +"method :meth:`Misc.winfo_class ` " +"(somewidget.winfo_class())." msgstr "" msgid "" @@ -1591,8 +1585,8 @@ msgid "The ``ttk::intro`` man page explains how the theme engine works." msgstr "" msgid "" -"`The Tile Widget Set `_" +"`The Tile Widget Set `_" msgstr "" msgid "" @@ -1895,9 +1889,9 @@ msgstr "" msgid "" "Each key in *settings* is a style and each value may contain the keys " "'configure', 'map', 'layout' and 'element create' and they are expected to " -"have the same format as specified by the methods :meth:`Style.configure`, :" -"meth:`Style.map`, :meth:`Style.layout` and :meth:`Style.element_create` " -"respectively." +"have the same format as specified by the " +"methods :meth:`Style.configure`, :meth:`Style.map`, :meth:`Style.layout` " +"and :meth:`Style.element_create` respectively." msgstr "" msgid "As an example, let's change the Combobox for the default theme a bit::" @@ -1990,8 +1984,9 @@ msgstr "" msgid "" "Ttk :class:`Button` widget, displays a textual label and/or image, and " -"evaluates a command when pressed. It is the themed counterpart of :class:" -"`tkinter.Button` and inherits the common widget methods from :class:`Widget`." +"evaluates a command when pressed. It is the themed counterpart " +"of :class:`tkinter.Button` and inherits the common widget methods " +"from :class:`Widget`." msgstr "" msgid "Invoke the command associated with the button and return its result." @@ -1999,8 +1994,9 @@ msgstr "" msgid "" "Ttk :class:`Checkbutton` widget, used to control a boolean variable that is " -"toggled on and off. It is the themed counterpart of :class:`tkinter." -"Checkbutton` and inherits the common widget methods from :class:`Widget`." +"toggled on and off. It is the themed counterpart " +"of :class:`tkinter.Checkbutton` and inherits the common widget methods " +"from :class:`Widget`." msgstr "" msgid "" @@ -2044,14 +2040,16 @@ msgstr "" msgid "" "Ttk :class:`Labelframe` widget, a container that draws a border and a title " -"label around its contents. It is the themed counterpart of :class:`tkinter." -"LabelFrame` and inherits the common widget methods from :class:`Widget`." +"label around its contents. It is the themed counterpart " +"of :class:`tkinter.LabelFrame` and inherits the common widget methods " +"from :class:`Widget`." msgstr "" msgid "" "Ttk :class:`Menubutton` widget, displays a textual label and/or image, and " -"pops up a menu when pressed. It is the themed counterpart of :class:`tkinter." -"Menubutton` and inherits the common widget methods from :class:`Widget`." +"pops up a menu when pressed. It is the themed counterpart " +"of :class:`tkinter.Menubutton` and inherits the common widget methods " +"from :class:`Widget`." msgstr "" msgid "" @@ -2135,14 +2133,15 @@ msgid "" msgstr "" msgid "" -"Modify or query the widget options, like :meth:`Widget.configure `. In addition, this method clips the ``from`` and ``to`` " -"values so that the current value stays within the range defined by them." +"Modify or query the widget options, like :meth:`Widget.configure " +"`. In addition, this method clips the ``from`` and " +"``to`` values so that the current value stays within the range defined by " +"them." msgstr "" msgid "" -"Now returns the configuration value, like :meth:`Widget.configure `." +"Now returns the configuration value, like :meth:`Widget.configure " +"`." msgstr "" msgid "" @@ -2152,10 +2151,11 @@ msgstr "" msgid "" "Ttk :class:`Scrollbar` widget, controls the viewport of an associated " -"scrollable widget such as a :class:`Treeview`, :class:`Entry` or :class:" -"`tkinter.Text`. It is the themed counterpart of :class:`tkinter.Scrollbar` " -"and inherits the common widget methods from :class:`Widget`, as well as the :" -"meth:`!set` and :meth:`!get` methods from :class:`tkinter.Scrollbar`." +"scrollable widget such as a :class:`Treeview`, :class:`Entry` " +"or :class:`tkinter.Text`. It is the themed counterpart " +"of :class:`tkinter.Scrollbar` and inherits the common widget methods " +"from :class:`Widget`, as well as the :meth:`!set` and :meth:`!get` methods " +"from :class:`tkinter.Scrollbar`." msgstr "" msgid "" @@ -2167,8 +2167,9 @@ msgstr "" msgid "" "Ttk :class:`Sizegrip` widget, displays a grip that allows the user to resize " "the containing toplevel window by pressing and dragging the grip, typically " -"placed in the bottom-right corner. It has no direct counterpart in :mod:" -"`tkinter` and inherits the common widget methods from :class:`Widget`." +"placed in the bottom-right corner. It has no direct counterpart " +"in :mod:`tkinter` and inherits the common widget methods " +"from :class:`Widget`." msgstr "" msgid "" @@ -2184,13 +2185,13 @@ msgid "" msgstr "" msgid "" -"Alias of :class:`Labelframe`, kept for naming compatibility with :class:" -"`tkinter.LabelFrame`." +"Alias of :class:`Labelframe`, kept for naming compatibility " +"with :class:`tkinter.LabelFrame`." msgstr "" msgid "" -"Alias of :class:`Panedwindow`, kept for naming compatibility with :class:" -"`tkinter.PanedWindow`." +"Alias of :class:`Panedwindow`, kept for naming compatibility " +"with :class:`tkinter.PanedWindow`." msgstr "" msgid "ttk" diff --git a/library/token.po b/library/token.po index 1d1747a..3754282 100644 --- a/library/token.po +++ b/library/token.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -81,8 +82,8 @@ msgid "" msgstr "" msgid "" -"A generic token value that indicates an :ref:`operator ` or :ref:" -"`delimiter `." +"A generic token value that indicates an :ref:`operator ` " +"or :ref:`delimiter `." msgstr "" msgid "" @@ -132,8 +133,9 @@ msgstr "" msgid "" "Replacement fields (that is, the non-literal parts of f-strings) use the " -"same tokens as other expressions, and are delimited by :data:`LBRACE`, :data:" -"`RBRACE`, :data:`EXCLAMATION` and :data:`COLON` tokens." +"same tokens as other expressions, and are delimited " +"by :data:`LBRACE`, :data:`RBRACE`, :data:`EXCLAMATION` and :data:`COLON` " +"tokens." msgstr "" msgid "Token value used to indicate the end of a :ref:`f-string `." @@ -153,8 +155,9 @@ msgstr "" msgid "" "Replacement fields (that is, the non-literal parts of t-strings) use the " -"same tokens as other expressions, and are delimited by :data:`LBRACE`, :data:" -"`RBRACE`, :data:`EXCLAMATION` and :data:`COLON` tokens." +"same tokens as other expressions, and are delimited " +"by :data:`LBRACE`, :data:`RBRACE`, :data:`EXCLAMATION` and :data:`COLON` " +"tokens." msgstr "" msgid "Token value used to indicate the end of a template string literal." @@ -172,8 +175,8 @@ msgid "" msgstr "" msgid "" -"This token type isn't used by the C tokenizer but is needed for the :mod:" -"`tokenize` module." +"This token type isn't used by the C tokenizer but is needed for " +"the :mod:`tokenize` module." msgstr "" msgid "" @@ -183,14 +186,14 @@ msgstr "" msgid "" "Token value indicating that a ``type: ignore`` comment was recognized. Such " -"tokens are produced instead of regular :data:`COMMENT` tokens only with the :" -"data:`~ast.PyCF_TYPE_COMMENTS` flag." +"tokens are produced instead of regular :data:`COMMENT` tokens only with " +"the :data:`~ast.PyCF_TYPE_COMMENTS` flag." msgstr "" msgid "" "Token value indicating that a type comment was recognized. Such tokens are " -"produced instead of regular :data:`COMMENT` tokens only with the :data:`~ast." -"PyCF_TYPE_COMMENTS` flag." +"produced instead of regular :data:`COMMENT` tokens only with " +"the :data:`~ast.PyCF_TYPE_COMMENTS` flag." msgstr "" msgid "Token value indicating a :ref:`soft keyword `." @@ -211,10 +214,10 @@ msgid "" msgstr "" msgid "" -"The remaining tokens represent specific :ref:`operators ` and :" -"ref:`delimiters `. (The :mod:`tokenize` module reports these as :" -"data:`OP`; see ``exact_type`` in the :mod:`tokenize` documentation for " -"details.)" +"The remaining tokens represent specific :ref:`operators ` " +"and :ref:`delimiters `. (The :mod:`tokenize` module reports " +"these as :data:`OP`; see ``exact_type`` in the :mod:`tokenize` documentation " +"for details.)" msgstr "" msgid "Token" @@ -390,10 +393,10 @@ msgid "" msgstr "" msgid "" -"Added :data:`TYPE_COMMENT`, :data:`TYPE_IGNORE`, :data:`COLONEQUAL`. Added :" -"data:`!AWAIT` and :data:`!ASYNC` tokens back (they're needed to support " -"parsing older Python versions for :func:`ast.parse` with ``feature_version`` " -"set to 6 or lower)." +"Added :data:`TYPE_COMMENT`, :data:`TYPE_IGNORE`, :data:`COLONEQUAL`. " +"Added :data:`!AWAIT` and :data:`!ASYNC` tokens back (they're needed to " +"support parsing older Python versions for :func:`ast.parse` with " +"``feature_version`` set to 6 or lower)." msgstr "" msgid "Added :data:`EXCLAMATION`." diff --git a/library/tokenize.po b/library/tokenize.po index 1b9cb90..c9169ac 100644 --- a/library/tokenize.po +++ b/library/tokenize.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,17 +36,16 @@ msgid "" msgstr "" msgid "" -"To simplify token stream handling, all :ref:`operator ` and :ref:" -"`delimiter ` tokens and :data:`Ellipsis` are returned using the " -"generic :data:`~token.OP` token type. The exact type can be determined by " -"checking the ``exact_type`` property on the :term:`named tuple` returned " -"from :func:`tokenize.tokenize`." +"To simplify token stream handling, all :ref:`operator ` " +"and :ref:`delimiter ` tokens and :data:`Ellipsis` are returned " +"using the generic :data:`~token.OP` token type. " +"The :attr:`TokenInfo.exact_type` property gives the exact token type." msgstr "" msgid "" "Note that the functions in this module are only designed to parse " -"syntactically valid Python code (code that does not raise when parsed using :" -"func:`ast.parse`). The behavior of the functions in this module is " +"syntactically valid Python code (code that does not raise when parsed " +"using :func:`ast.parse`). The behavior of the functions in this module is " "**undefined** when providing invalid Python code and it can change at any " "point." msgstr "" @@ -55,32 +58,15 @@ msgstr "" msgid "" "The :func:`.tokenize` generator requires one argument, *readline*, which " -"must be a callable object which provides the same interface as the :meth:`io." -"IOBase.readline` method of file objects. Each call to the function should " -"return one line of input as bytes." -msgstr "" - -msgid "" -"The generator produces 5-tuples with these members: the token type; the " -"token string; a 2-tuple ``(srow, scol)`` of ints specifying the row and " -"column where the token begins in the source; a 2-tuple ``(erow, ecol)`` of " -"ints specifying the row and column where the token ends in the source; and " -"the line on which the token was found. The line passed (the last tuple item) " -"is the *physical* line. The 5 tuple is returned as a :term:`named tuple` " -"with the field names: ``type string start end line``." -msgstr "" - -msgid "" -"The returned :term:`named tuple` has an additional property named " -"``exact_type`` that contains the exact operator type for :data:`~token.OP` " -"tokens. For all other token types ``exact_type`` equals the named tuple " -"``type`` field." +"must be a callable object which provides the same interface as " +"the :meth:`io.IOBase.readline` method of file objects. Each call to the " +"function should return one line of input as bytes." msgstr "" -msgid "Added support for named tuples." +msgid "The generator produces :class:`TokenInfo` objects." msgstr "" -msgid "Added support for ``exact_type``." +msgid "Changed to yield :class:`TokenInfo` objects instead of plain tuples." msgstr "" msgid "" @@ -98,8 +84,76 @@ msgid "" msgstr "" msgid "" -"The result is an iterator yielding named tuples, exactly like :func:`." -"tokenize`. It does not yield an :data:`~token.ENCODING` token." +"The result is an iterator yielding :class:`TokenInfo` objects, exactly " +"like :func:`.tokenize`. It does not yield an :data:`~token.ENCODING` token." +msgstr "" + +msgid "" +"A :term:`named tuple` describing a token. It has five fields and an " +"additional :attr:`exact_type` property." +msgstr "" + +msgid "" +"An integer identifying the token type, as defined by the constants " +"in :mod:`token`, such as :data:`~token.NAME` and :data:`~token.STRING`. " +"Operators and delimiters have type :data:`~token.OP`; use :attr:`exact_type` " +"for their specific token type." +msgstr "" + +msgid "" +"The token text as a :class:`str`. For :data:`~token.STRING` tokens, this " +"includes the quotes, any prefix, and escape sequences, without evaluating " +"them." +msgstr "" + +msgid "" +"For an :data:`~token.ENCODING` token, this is the encoding name. Tokens " +"inserted without corresponding source text can have an empty string. " +"In :data:`~token.FSTRING_MIDDLE` and :data:`~token.TSTRING_MIDDLE` tokens, " +"doubled braces are replaced by single braces." +msgstr "" + +msgid "" +"A 2-tuple ``(srow, scol)`` of ints specifying the inclusive start position " +"of the token in the source. Rows are numbered from 1 and columns from 0. " +"Columns count Unicode code points; a tab counts as one column, without " +"expanding it to a tab stop." +msgstr "" + +msgid "For an :data:`~token.ENCODING` token, this is ``(0, 0)``." +msgstr "" + +msgid "" +"A 2-tuple ``(erow, ecol)`` of ints specifying the exclusive end position of " +"the token. Rows are numbered from 1 and columns from 0. For a token spanning " +"multiple lines, *erow* is the final row and *ecol* is the column on that row." +msgstr "" + +msgid "" +"For example, the name ``spam`` at the beginning of the first line " +"has :attr:`start` equal to ``(1, 0)`` and :attr:`end` equal to ``(1, 4)``." +msgstr "" + +msgid "" +"For an :data:`~token.ENCODING` token, this is ``(0, 0)``. " +"A :data:`~token.NEWLINE` or :data:`~token.NL` token inserted at the end of " +"input without a final newline can have an end column one beyond the source " +"text." +msgstr "" + +msgid "" +"A :class:`str` containing the full source line on which the token was found, " +"including surrounding text and the line terminator if present. For a token " +"spanning multiple lines, this can contain several source lines. It is empty " +"for :data:`~token.ENCODING` and :data:`~token.ENDMARKER` tokens." +msgstr "" + +msgid "" +"An integer identifying the specific operator type for :data:`~token.OP` " +"tokens, as defined by the constants in :mod:`token`. For all other token " +"types, this equals :attr:`type`. For example, a ``+`` token has :attr:`type` " +"equal to :data:`~token.OP` and :attr:`exact_type` equal " +"to :data:`~token.PLUS`." msgstr "" msgid "" @@ -161,13 +215,13 @@ msgid "" msgstr "" msgid "" -"Use :func:`.open` to open Python source files: it uses :func:" -"`detect_encoding` to detect the file encoding." +"Use :func:`.open` to open Python source files: it " +"uses :func:`detect_encoding` to detect the file encoding." msgstr "" msgid "" -"Open a file in read only mode using the encoding detected by :func:" -"`detect_encoding`." +"Open a file in read only mode using the encoding detected " +"by :func:`detect_encoding`." msgstr "" msgid "" diff --git a/library/tomllib.po b/library/tomllib.po index a1e0f60..2c29fcd 100644 --- a/library/tomllib.po +++ b/library/tomllib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -65,16 +65,16 @@ msgstr "" msgid "" "Read a TOML file. The first argument should be a readable and binary file " -"object. Return a :class:`dict`. Convert TOML types to Python using this :ref:" -"`conversion table `." +"object. Return a :class:`dict`. Convert TOML types to Python using " +"this :ref:`conversion table `." msgstr "" msgid "" "*parse_float* will be called with the string of every TOML float to be " "decoded. By default, this is equivalent to ``float(num_str)``. This can be " -"used to use another datatype or parser for TOML floats (e.g. :class:`decimal." -"Decimal`). The callable must not return a :class:`dict` or a :class:`list`, " -"else a :exc:`ValueError` is raised." +"used to use another datatype or parser for TOML floats " +"(e.g. :class:`decimal.Decimal`). The callable must not return " +"a :class:`dict` or a :class:`list`, else a :exc:`ValueError` is raised." msgstr "" msgid "A :exc:`TOMLDecodeError` will be raised on an invalid TOML document." @@ -108,8 +108,9 @@ msgid "The column corresponding to *pos*." msgstr "" msgid "" -"Added the *msg*, *doc* and *pos* parameters. Added the :attr:`msg`, :attr:" -"`doc`, :attr:`pos`, :attr:`lineno` and :attr:`colno` attributes." +"Added the *msg*, *doc* and *pos* parameters. Added " +"the :attr:`msg`, :attr:`doc`, :attr:`pos`, :attr:`lineno` and :attr:`colno` " +"attributes." msgstr "" msgid "Passing free-form positional arguments is deprecated." @@ -185,8 +186,8 @@ msgid "offset date-time" msgstr "" msgid "" -"datetime.datetime (``tzinfo`` attribute set to an instance of ``datetime." -"timezone``)" +"datetime.datetime (``tzinfo`` attribute set to an instance of " +"``datetime.timezone``)" msgstr "" msgid "local date-time" @@ -224,3 +225,72 @@ msgstr "" msgid "list of dicts" msgstr "" + +msgid "Limits and interoperability considerations" +msgstr "" + +msgid "" +":mod:`!tomllib` places some limits on the documents it can handle, and it " +"preserves details that other TOML parsers are allowed to ignore. When " +"writing portable TOML files, only use features that are guaranteed or " +"recommended by the standard." +msgstr "" + +msgid "" +"The implementation details listed here may change in future versions of " +"Python." +msgstr "" + +msgid "Tables/dicts" +msgstr "" + +msgid "" +"The TOML spec does not guarantee key/value pairs in TOML documents and " +"tables to be in any specific order." +msgstr "" + +msgid "" +":mod:`!tomllib` loads dictionary entries in the order they appear in the " +"source." +msgstr "" + +msgid "Integers" +msgstr "" + +msgid "TOML recommends supporting integers in ``range(−2**63, 2**63)``." +msgstr "" + +msgid "" +":mod:`!tomllib` uses :ref:`Python's limit on integer string conversion " +"` (4300 digits by default)." +msgstr "" + +msgid "Floats" +msgstr "" + +msgid "" +"TOML recommends supporting at least IEEE 754 binary64 values, which means " +"that numbers with more than 15 significant decimal digits are likely to be " +"rounded." +msgstr "" + +msgid "" +":mod:`!tomllib` uses Python :class:`float` by default; on many common " +"platforms this is the recommended binary64. See :data:`sys.float_info` for " +"details." +msgstr "" + +msgid "Nesting limit" +msgstr "" + +msgid "" +"TOML 1.1.0 does not recommend a limit on how deeply arrays and tables may be " +"nested inside one another. (A limit of 100 has been proposed for a future " +"version of TOML.)" +msgstr "" + +msgid "" +"In :mod:`!tomllib`, the nesting level is mainly limited by " +"Python's :func:`recursion limit `. Note that code " +"that calls :mod:`!tomllib` may contribute to the limit." +msgstr "" diff --git a/library/trace.po b/library/trace.po index 875336f..341aca7 100644 --- a/library/trace.po +++ b/library/trace.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -71,9 +71,9 @@ msgstr "" msgid "" "At least one of the following options must be specified when invoking :mod:`!" "trace`. The :option:`--listfuncs <-l>` option is mutually exclusive with " -"the :option:`--trace <-t>` and :option:`--count <-c>` options. When :option:" -"`--listfuncs <-l>` is provided, neither :option:`--count <-c>` nor :option:" -"`--trace <-t>` are accepted, and vice versa." +"the :option:`--trace <-t>` and :option:`--count <-c>` options. " +"When :option:`--listfuncs <-l>` is provided, neither :option:`--count <-c>` " +"nor :option:`--trace <-t>` are accepted, and vice versa." msgstr "" msgid "" @@ -89,9 +89,9 @@ msgid "Display the functions executed by running the program." msgstr "" msgid "" -"Produce an annotated list from an earlier program run that used the :option:" -"`--count <-c>` and :option:`--file <-f>` option. This does not execute any " -"code." +"Produce an annotated list from an earlier program run that used " +"the :option:`--count <-c>` and :option:`--file <-f>` option. This does not " +"execute any code." msgstr "" msgid "Display the calling relationships exposed by running the program." @@ -106,8 +106,8 @@ msgid "" msgstr "" msgid "" -"Directory where the report files go. The coverage report for ``package." -"module`` is written to file :file:`{dir}/{package}/{module}.cover`." +"Directory where the report files go. The coverage report for " +"``package.module`` is written to file :file:`{dir}/{package}/{module}.cover`." msgstr "" msgid "" @@ -204,8 +204,8 @@ msgstr "" msgid "" "If *ignore_missing_files* is ``True``, coverage counts for files that no " -"longer exist are silently ignored. Otherwise, a missing file will raise a :" -"exc:`FileNotFoundError`." +"longer exist are silently ignored. Otherwise, a missing file will raise " +"a :exc:`FileNotFoundError`." msgstr "" msgid "Added *ignore_missing_files* parameter." diff --git a/library/traceback.po b/library/traceback.po index 40f6d8c..8a9bc72 100644 --- a/library/traceback.po +++ b/library/traceback.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,8 +42,8 @@ msgstr "" msgid "" "The module uses :ref:`traceback objects ` --- these are " -"objects of type :class:`types.TracebackType`, which are assigned to the :" -"attr:`~BaseException.__traceback__` field of :class:`BaseException` " +"objects of type :class:`types.TracebackType`, which are assigned to " +"the :attr:`~BaseException.__traceback__` field of :class:`BaseException` " "instances." msgstr "" @@ -69,16 +70,11 @@ msgid "" msgstr "" msgid "" -":class:`TracebackException` class and its helper classes :class:" -"`StackSummary` and :class:`FrameSummary`. These offer both more flexibility " -"in the output generated and the ability to store the information necessary " -"for later formatting without holding references to actual exception and " -"traceback objects." -msgstr "" - -msgid "" -"Output is colorized by default and can be :ref:`controlled using environment " -"variables `." +":class:`TracebackException` class and its helper " +"classes :class:`StackSummary` and :class:`FrameSummary`. These offer both " +"more flexibility in the output generated and the ability to store the " +"information necessary for later formatting without holding references to " +"actual exception and traceback objects." msgstr "" msgid "Module-Level Functions" @@ -95,10 +91,10 @@ msgid "" msgstr "" msgid "" -"The meaning of the *limit* parameter is different than the meaning of :const:" -"`sys.tracebacklimit`. A negative *limit* value corresponds to a positive " -"value of :const:`!sys.tracebacklimit`, whereas the behaviour of a positive " -"*limit* value cannot be achieved with :const:`!sys.tracebacklimit`." +"The meaning of the *limit* parameter is different than the meaning " +"of :const:`sys.tracebacklimit`. A negative *limit* value corresponds to a " +"positive value of :const:`!sys.tracebacklimit`, whereas the behaviour of a " +"positive *limit* value cannot be achieved with :const:`!sys.tracebacklimit`." msgstr "" msgid "Added negative *limit* support." @@ -106,8 +102,8 @@ msgstr "" msgid "" "Print exception information and stack trace entries from :ref:`traceback " -"object ` *tb* to *file*. This differs from :func:" -"`print_tb` in the following ways:" +"object ` *tb* to *file*. This differs " +"from :func:`print_tb` in the following ways:" msgstr "" msgid "" @@ -132,10 +128,10 @@ msgstr "" msgid "" "The optional *limit* argument has the same meaning as for :func:`print_tb`. " -"If *chain* is true (the default), then chained exceptions (the :attr:" -"`~BaseException.__cause__` or :attr:`~BaseException.__context__` attributes " -"of the exception) will be printed as well, like the interpreter itself does " -"when printing an unhandled exception." +"If *chain* is true (the default), then chained exceptions " +"(the :attr:`~BaseException.__cause__` or :attr:`~BaseException.__context__` " +"attributes of the exception) will be printed as well, like the interpreter " +"itself does when printing an unhandled exception." msgstr "" msgid "The *etype* argument is ignored and inferred from the type of *value*." @@ -169,32 +165,32 @@ msgid "" "Return a :class:`StackSummary` object representing a list of \"pre-" "processed\" stack trace entries extracted from the :ref:`traceback object " "` *tb*. It is useful for alternate formatting of stack " -"traces. The optional *limit* argument has the same meaning as for :func:" -"`print_tb`. A \"pre-processed\" stack trace entry is a :class:" -"`FrameSummary` object with attributes representing the information that is " -"usually printed for a stack trace." +"traces. The optional *limit* argument has the same meaning as " +"for :func:`print_tb`. A \"pre-processed\" stack trace entry is " +"a :class:`FrameSummary` object with attributes representing the information " +"that is usually printed for a stack trace." msgstr "" msgid "" "Extract the raw traceback from the current :ref:`stack frame `. The return value has the same format as for :func:`extract_tb`. " -"The optional *f* and *limit* arguments have the same meaning as for :func:" -"`print_stack`." +"The optional *f* and *limit* arguments have the same meaning as " +"for :func:`print_stack`." msgstr "" msgid "" -"Print the list of tuples as returned by :func:`extract_tb` or :func:" -"`extract_stack` as a formatted stack trace to the given file. If *file* is " -"``None``, the output is written to :data:`sys.stderr`." +"Print the list of tuples as returned by :func:`extract_tb` " +"or :func:`extract_stack` as a formatted stack trace to the given file. If " +"*file* is ``None``, the output is written to :data:`sys.stderr`." msgstr "" msgid "" -"Given a list of tuples or :class:`FrameSummary` objects as returned by :func:" -"`extract_tb` or :func:`extract_stack`, return a list of strings ready for " -"printing. Each string in the resulting list corresponds to the item with " -"the same index in the argument list. Each string ends in a newline; the " -"strings may contain internal newlines as well, for those items whose source " -"text line is not ``None``." +"Given a list of tuples or :class:`FrameSummary` objects as returned " +"by :func:`extract_tb` or :func:`extract_stack`, return a list of strings " +"ready for printing. Each string in the resulting list corresponds to the " +"item with the same index in the argument list. Each string ends in a " +"newline; the strings may contain internal newlines as well, for those items " +"whose source text line is not ``None``." msgstr "" msgid "" @@ -214,8 +210,8 @@ msgid "" msgstr "" msgid "" -"When *show_group* is ``True``, and the exception is an instance of :exc:" -"`BaseExceptionGroup`, the nested exceptions are included as well, " +"When *show_group* is ``True``, and the exception is an instance " +"of :exc:`BaseExceptionGroup`, the nested exceptions are included as well, " "recursively, with indentation relative to their nesting depth." msgstr "" @@ -236,8 +232,8 @@ msgid "" msgstr "" msgid "" -"This function's behavior and signature were modified to match :func:" -"`print_exception`." +"This function's behavior and signature were modified to " +"match :func:`print_exception`." msgstr "" msgid "" @@ -271,8 +267,8 @@ msgstr "" msgid "" "Walk a traceback following :attr:`~traceback.tb_next` yielding the frame and " -"line number for each frame. This helper is used with :meth:`StackSummary." -"extract`." +"line number for each frame. This helper is used " +"with :meth:`StackSummary.extract`." msgstr "" msgid ":class:`!TracebackException` Objects" @@ -281,10 +277,10 @@ msgstr "" msgid "" ":class:`!TracebackException` objects are created from actual exceptions to " "capture data for later printing. They offer a more lightweight method of " -"storing this information by avoiding holding references to :ref:" -"`traceback` and :ref:`frame` objects. In " -"addition, they expose more options to configure the output compared to the " -"module-level functions described above." +"storing this information by avoiding holding references " +"to :ref:`traceback` and :ref:`frame` " +"objects. In addition, they expose more options to configure the output " +"compared to the module-level functions described above." msgstr "" msgid "" @@ -319,19 +315,19 @@ msgid "Added the *max_group_width* and *max_group_depth* parameters." msgstr "" msgid "" -"A :class:`!TracebackException` of the original :attr:`~BaseException." -"__cause__`." +"A :class:`!TracebackException` of the " +"original :attr:`~BaseException.__cause__`." msgstr "" msgid "" -"A :class:`!TracebackException` of the original :attr:`~BaseException." -"__context__`." +"A :class:`!TracebackException` of the " +"original :attr:`~BaseException.__context__`." msgstr "" msgid "" -"If ``self`` represents an :exc:`ExceptionGroup`, this field holds a list of :" -"class:`!TracebackException` instances representing the nested exceptions. " -"Otherwise it is ``None``." +"If ``self`` represents an :exc:`ExceptionGroup`, this field holds a list " +"of :class:`!TracebackException` instances representing the nested " +"exceptions. Otherwise it is ``None``." msgstr "" msgid "" @@ -442,8 +438,8 @@ msgid "" "*lookup_lines* is ``False``, the returned :class:`FrameSummary` objects will " "not have read their lines in yet, making the cost of creating the :class:`!" "StackSummary` cheaper (which may be valuable if it may not actually get " -"formatted). If *capture_locals* is ``True`` the local variables in each :" -"class:`!FrameSummary` are captured as object representations." +"formatted). If *capture_locals* is ``True`` the local variables in " +"each :class:`!FrameSummary` are captured as object representations." msgstr "" msgid "" @@ -452,9 +448,10 @@ msgid "" msgstr "" msgid "" -"Construct a :class:`!StackSummary` object from a supplied list of :class:" -"`FrameSummary` objects or old-style list of tuples. Each tuple should be a " -"4-tuple with *filename*, *lineno*, *name*, *line* as the elements." +"Construct a :class:`!StackSummary` object from a supplied list " +"of :class:`FrameSummary` objects or old-style list of tuples. Each tuple " +"should be a 4-tuple with *filename*, *lineno*, *name*, *line* as the " +"elements." msgstr "" msgid "" @@ -492,30 +489,30 @@ msgid "" "Represents a single :ref:`frame ` in the :ref:`traceback " "` or stack that is being formatted or printed. It may " "optionally have a stringified version of the frame's locals included in it. " -"If *lookup_line* is ``False``, the source code is not looked up until the :" -"class:`!FrameSummary` has the :attr:`~FrameSummary.line` attribute accessed " -"(which also happens when casting it to a :class:`tuple`). :attr:" -"`~FrameSummary.line` may be directly provided, and will prevent line lookups " -"happening at all. *locals* is an optional local variable mapping, and if " -"supplied the variable representations are stored in the summary for later " -"display." +"If *lookup_line* is ``False``, the source code is not looked up until " +"the :class:`!FrameSummary` has the :attr:`~FrameSummary.line` attribute " +"accessed (which also happens when casting it to " +"a :class:`tuple`). :attr:`~FrameSummary.line` may be directly provided, and " +"will prevent line lookups happening at all. *locals* is an optional local " +"variable mapping, and if supplied the variable representations are stored in " +"the summary for later display." msgstr "" msgid ":class:`!FrameSummary` instances have the following attributes:" msgstr "" msgid "" -"The filename of the source code for this frame. Equivalent to accessing :" -"attr:`f.f_code.co_filename ` on a :ref:`frame object " -"` *f*." +"The filename of the source code for this frame. Equivalent to " +"accessing :attr:`f.f_code.co_filename ` on " +"a :ref:`frame object ` *f*." msgstr "" msgid "The line number of the source code for this frame." msgstr "" msgid "" -"Equivalent to accessing :attr:`f.f_code.co_name ` on a :" -"ref:`frame object ` *f*." +"Equivalent to accessing :attr:`f.f_code.co_name ` on " +"a :ref:`frame object ` *f*." msgstr "" msgid "" @@ -547,8 +544,8 @@ msgstr "" msgid "" "This simple example implements a basic read-eval-print loop, similar to (but " "less useful than) the standard Python interactive interpreter loop. For a " -"more complete implementation of the interpreter loop, refer to the :mod:" -"`code` module. ::" +"more complete implementation of the interpreter loop, refer to " +"the :mod:`code` module. ::" msgstr "" msgid "" @@ -636,8 +633,8 @@ msgid "" "IndexError: tuple index out of range\n" "*** format_exception:\n" "['Traceback (most recent call last):\\n',\n" -" ' File \"\", line 10, in \\n " -"lumberjack()\\n ~~~~~~~~~~^^\\n',\n" +" ' File \"\", line 10, in \\n lumberjack()" +"\\n ~~~~~~~~~~^^\\n',\n" " ' File \"\", line 4, in lumberjack\\n " "bright_side_of_life()\\n ~~~~~~~~~~~~~~~~~~~^^\\n',\n" " ' File \"\", line 7, in bright_side_of_life\\n " @@ -648,8 +645,8 @@ msgid "" " , line 4 in lumberjack>,\n" " , line 7 in bright_side_of_life>]\n" "*** format_tb:\n" -"[' File \"\", line 10, in \\n " -"lumberjack()\\n ~~~~~~~~~~^^\\n',\n" +"[' File \"\", line 10, in \\n lumberjack()" +"\\n ~~~~~~~~~~^^\\n',\n" " ' File \"\", line 4, in lumberjack\\n " "bright_side_of_life()\\n ~~~~~~~~~~~~~~~~~~~^^\\n',\n" " ' File \"\", line 7, in bright_side_of_life\\n " @@ -683,10 +680,10 @@ msgid "" " ('', 3, 'another_function', 'lumberstack()'),\n" " ('', 7, 'lumberstack', 'print(repr(traceback.extract_stack()))')]\n" "[' File \"\", line 10, in \\n another_function()\\n',\n" -" ' File \"\", line 3, in another_function\\n " -"lumberstack()\\n',\n" -" ' File \"\", line 8, in lumberstack\\n print(repr(traceback." -"format_stack()))\\n']" +" ' File \"\", line 3, in another_function\\n lumberstack()" +"\\n',\n" +" ' File \"\", line 8, in lumberstack\\n " +"print(repr(traceback.format_stack()))\\n']" msgstr "" msgid "This last example demonstrates the final few formatting functions:" @@ -745,8 +742,8 @@ msgid "" "IndexError: tuple index out of range\n" "\n" ">>> # capture_locals adds local variables in frames\n" -">>> TracebackException.from_exception(exc, limit=-2, capture_locals=True)." -"print()\n" +">>> TracebackException.from_exception(exc, limit=-2, " +"capture_locals=True).print()\n" "Traceback (most recent call last):\n" " File \"\", line 6, in lumberjack\n" " bright_side_of_life()\n" diff --git a/library/tracemalloc.po b/library/tracemalloc.po index c950b47..e1b4579 100644 --- a/library/tracemalloc.po +++ b/library/tracemalloc.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,9 +54,9 @@ msgstr "" msgid "" "By default, a trace of an allocated memory block only stores the most recent " -"frame (1 frame). To store 25 frames at startup: set the :envvar:" -"`PYTHONTRACEMALLOC` environment variable to ``25``, or use the :option:`-X` " -"``tracemalloc=25`` command line option." +"frame (1 frame). To store 25 frames at startup: set " +"the :envvar:`PYTHONTRACEMALLOC` environment variable to ``25``, or use " +"the :option:`-X` ``tracemalloc=25`` command line option." msgstr "" msgid "Examples" @@ -166,9 +166,9 @@ msgstr "" msgid "" "We can see that Python has loaded ``8173 KiB`` of module data (bytecode and " "constants), and that this is ``4428 KiB`` more than had been loaded before " -"the tests, when the previous snapshot was taken. Similarly, the :mod:" -"`linecache` module has cached ``940 KiB`` of Python source code to format " -"tracebacks, all of it since the previous snapshot." +"the tests, when the previous snapshot was taken. Similarly, " +"the :mod:`linecache` module has cached ``940 KiB`` of Python source code to " +"format tracebacks, all of it since the previous snapshot." msgstr "" msgid "" @@ -383,9 +383,10 @@ msgid "See also :func:`stop`." msgstr "" msgid "" -"Get the traceback where the Python object *obj* was allocated. Return a :" -"class:`Traceback` instance, or ``None`` if the :mod:`!tracemalloc` module is " -"not tracing memory allocations or did not trace the allocation of the object." +"Get the traceback where the Python object *obj* was allocated. Return " +"a :class:`Traceback` instance, or ``None`` if the :mod:`!tracemalloc` module " +"is not tracing memory allocations or did not trace the allocation of the " +"object." msgstr "" msgid "See also :func:`gc.get_referrers` and :func:`sys.getsizeof` functions." @@ -419,9 +420,9 @@ msgstr "" msgid "" "This function only modifies the recorded peak size, and does not modify or " -"clear any traces, unlike :func:`clear_traces`. Snapshots taken with :func:" -"`take_snapshot` before a call to :func:`reset_peak` can be meaningfully " -"compared to snapshots taken after the call." +"clear any traces, unlike :func:`clear_traces`. Snapshots taken " +"with :func:`take_snapshot` before a call to :func:`reset_peak` can be " +"meaningfully compared to snapshots taken after the call." msgstr "" msgid "See also :func:`get_traced_memory`." @@ -454,8 +455,8 @@ msgstr "" msgid "" "Storing more than ``1`` frame is only useful to compute statistics grouped " -"by ``'traceback'`` or to compute cumulative statistics: see the :meth:" -"`Snapshot.compare_to` and :meth:`Snapshot.statistics` methods." +"by ``'traceback'`` or to compute cumulative statistics: see " +"the :meth:`Snapshot.compare_to` and :meth:`Snapshot.statistics` methods." msgstr "" msgid "" @@ -548,8 +549,8 @@ msgid "Examples:" msgstr "" msgid "" -"``Filter(True, subprocess.__file__)`` only includes traces of the :mod:" -"`subprocess` module" +"``Filter(True, subprocess.__file__)`` only includes traces of " +"the :mod:`subprocess` module" msgstr "" msgid "" @@ -576,14 +577,14 @@ msgstr "" msgid "" "If *inclusive* is ``True`` (include), only match memory blocks allocated in " -"a file with a name matching :attr:`filename_pattern` at line number :attr:" -"`lineno`." +"a file with a name matching :attr:`filename_pattern` at line " +"number :attr:`lineno`." msgstr "" msgid "" "If *inclusive* is ``False`` (exclude), ignore memory blocks allocated in a " -"file with a name matching :attr:`filename_pattern` at line number :attr:" -"`lineno`." +"file with a name matching :attr:`filename_pattern` at line " +"number :attr:`lineno`." msgstr "" msgid "" @@ -600,9 +601,9 @@ msgid "" msgstr "" msgid "" -"This attribute has no effect if the traceback limit is ``1``. See the :func:" -"`get_traceback_limit` function and :attr:`Snapshot.traceback_limit` " -"attribute." +"This attribute has no effect if the traceback limit is ``1``. See " +"the :func:`get_traceback_limit` function " +"and :attr:`Snapshot.traceback_limit` attribute." msgstr "" msgid "Frame" @@ -640,10 +641,10 @@ msgid "" msgstr "" msgid "" -"The result is sorted from the biggest to the smallest by: absolute value of :" -"attr:`StatisticDiff.size_diff`, :attr:`StatisticDiff.size`, absolute value " -"of :attr:`StatisticDiff.count_diff`, :attr:`Statistic.count` and then by :" -"attr:`StatisticDiff.traceback`." +"The result is sorted from the biggest to the smallest by: absolute value " +"of :attr:`StatisticDiff.size_diff`, :attr:`StatisticDiff.size`, absolute " +"value of :attr:`StatisticDiff.count_diff`, :attr:`Statistic.count` and then " +"by :attr:`StatisticDiff.traceback`." msgstr "" msgid "Write the snapshot into a file." @@ -711,8 +712,9 @@ msgid "" msgstr "" msgid "" -"The result is sorted from the biggest to the smallest by: :attr:`Statistic." -"size`, :attr:`Statistic.count` and then by :attr:`Statistic.traceback`." +"The result is sorted from the biggest to the smallest " +"by: :attr:`Statistic.size`, :attr:`Statistic.count` and then " +"by :attr:`Statistic.traceback`." msgstr "" msgid "" @@ -757,8 +759,8 @@ msgid "StatisticDiff" msgstr "" msgid "" -"Statistic difference on memory allocations between an old and a new :class:" -"`Snapshot` instance." +"Statistic difference on memory allocations between an old and a " +"new :class:`Snapshot` instance." msgstr "" msgid "" @@ -773,8 +775,7 @@ msgstr "" msgid "" "Difference of number of memory blocks between the old and the new snapshots " -"(``int``): ``0`` if the memory blocks have been allocated in the new " -"snapshot." +"(``int``)." msgstr "" msgid "" @@ -784,8 +785,7 @@ msgstr "" msgid "" "Difference of total size of memory blocks in bytes between the old and the " -"new snapshots (``int``): ``0`` if the memory blocks have been allocated in " -"the new snapshot." +"new snapshots (``int``)." msgstr "" msgid "" @@ -822,11 +822,11 @@ msgid "" msgstr "" msgid "" -"When a snapshot is taken, tracebacks of traces are limited to :func:" -"`get_traceback_limit` frames. See the :func:`take_snapshot` function. The " -"original number of frames of the traceback is stored in the :attr:`Traceback." -"total_nframe` attribute. That allows one to know if a traceback has been " -"truncated by the traceback limit." +"When a snapshot is taken, tracebacks of traces are limited " +"to :func:`get_traceback_limit` frames. See the :func:`take_snapshot` " +"function. The original number of frames of the traceback is stored in " +"the :attr:`Traceback.total_nframe` attribute. That allows one to know if a " +"traceback has been truncated by the traceback limit." msgstr "" msgid "The :attr:`Trace.traceback` attribute is a :class:`Traceback` instance." @@ -855,8 +855,8 @@ msgid "" msgstr "" msgid "" -"Similar to the :func:`traceback.format_tb` function, except that :meth:`." -"format` does not include newlines." +"Similar to the :func:`traceback.format_tb` function, except " +"that :meth:`.format` does not include newlines." msgstr "" msgid "Example::" diff --git a/library/tty.po b/library/tty.po index 2dba641..ba0eb21 100644 --- a/library/tty.po +++ b/library/tty.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -65,9 +65,9 @@ msgstr "" msgid "" "Change the mode of the file descriptor *fd* to raw. If *when* is omitted, it " -"defaults to :const:`termios.TCSAFLUSH`, and is passed to :func:`termios." -"tcsetattr`. The return value of :func:`termios.tcgetattr` is saved before " -"setting *fd* to raw mode; this value is returned." +"defaults to :const:`termios.TCSAFLUSH`, and is passed " +"to :func:`termios.tcsetattr`. The return value of :func:`termios.tcgetattr` " +"is saved before setting *fd* to raw mode; this value is returned." msgstr "" msgid "" @@ -76,9 +76,9 @@ msgstr "" msgid "" "Change the mode of file descriptor *fd* to cbreak. If *when* is omitted, it " -"defaults to :const:`termios.TCSAFLUSH`, and is passed to :func:`termios." -"tcsetattr`. The return value of :func:`termios.tcgetattr` is saved before " -"setting *fd* to cbreak mode; this value is returned." +"defaults to :const:`termios.TCSAFLUSH`, and is passed " +"to :func:`termios.tcsetattr`. The return value of :func:`termios.tcgetattr` " +"is saved before setting *fd* to cbreak mode; this value is returned." msgstr "" msgid "" diff --git a/library/turtle.po b/library/turtle.po index 69684d7..41822e6 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: DARSHAN RAJPUT, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,54 +29,56 @@ msgstr "" msgid "**Source code:** :source:`Lib/turtle.py`" msgstr "" -msgid "Introduction" -msgstr "" - msgid "" -"Turtle graphics is an implementation of `the popular geometric drawing tools " -"introduced in Logo `_, " -"developed by Wally Feurzeig, Seymour Papert and Cynthia Solomon in 1967." -msgstr "" - -msgid "" -"This is an :term:`optional module`. If it is missing from your copy of " -"CPython, look for documentation from your distributor (that is, whoever " -"provided Python to you). If you are the distributor, see :ref:`optional-" -"module-requirements`." +"Turtle can draw intricate shapes using programs that repeat simple moves." msgstr "" -msgid "Get started" +msgid "A yellow starburst of thin spikes with a red outline, drawn by turtle." msgstr "" msgid "" -"Imagine a robotic turtle starting at (0, 0) in the x-y plane. After an " +"Imagine a robotic turtle starting at (0, 0) in the x-y plane. After an " "``import turtle``, give it the command ``turtle.forward(15)``, and it moves " "(on-screen!) 15 pixels in the direction it is facing, drawing a line as it " -"moves. Give it the command ``turtle.right(25)``, and it rotates in-place 25 " +"moves. Give it the command ``turtle.right(25)``, and it rotates in-place 25 " "degrees clockwise." msgstr "" msgid "" -"Turtle can draw intricate shapes using programs that repeat simple moves." +"Turtle graphics is an implementation of `the drawing tools introduced in " +"Logo `__ in 1967. It was " +"created as an educational tool, and its instant, visible feedback makes it " +"an effective way for learners to encounter programming concepts. It is also " +"a convenient way to produce simple graphical output without bringing in " +"external libraries." +msgstr "" + +msgid "This document includes four main sections:" +msgstr "" + +msgid ":ref:`turtle-tutorial` teaches the basics of turtle drawing." msgstr "" msgid "" -"In Python, turtle graphics provides a representation of a physical " -"\"turtle\" (a little robot with a pen) that draws on a sheet of paper on the " -"floor." +":ref:`turtle-reference` describes the functions, methods and classes this " +"module defines." +msgstr "" + +msgid ":ref:`turtle-howtos` detail how to handle specific tasks." msgstr "" msgid "" -"It's an effective and well-proven way for learners to encounter programming " -"concepts and interaction with software, as it provides instant, visible " -"feedback. It also provides convenient access to graphical output in general." +":ref:`turtle-explanation` provides background on the object-oriented " +"interface." msgstr "" msgid "" -"Turtle drawing was originally created as an educational tool, to be used by " -"teachers in the classroom. For the programmer who needs to produce some " -"graphical output it can be a way to do that without the overhead of " -"introducing more complex or external libraries into their work." +"Turtle graphics requires the :mod:`tkinter` :term:`optional module`. The " +"python.org installers for Windows and macOS include it, but some Linux " +"distributions and other platforms may package it separately. If ``import " +"turtle`` fails with an error mentioning ``_tkinter``, look for documentation " +"from your distributor (that is, whoever provided Python to you). Check this " +"in advance if you're planning to use turtle graphics with a learner." msgstr "" msgid "Tutorial" @@ -101,6 +104,18 @@ msgid "" "your system." msgstr "" +msgid "" +"Nothing appears yet. To open the turtle window, make the turtle visible::" +msgstr "" + +msgid "showturtle()" +msgstr "" + +msgid "" +"A new window opens, with the turtle in the middle, shown as an arrow heading " +"East." +msgstr "" + msgid "Basic drawing" msgstr "" @@ -111,9 +126,8 @@ msgid "forward(100)" msgstr "" msgid "" -"You should see (most likely, in a new window on your display) a line drawn " -"by the turtle, heading East. Change the direction of the turtle, so that it " -"turns 120 degrees left (anti-clockwise)::" +"You should see a line drawn by the turtle, heading East. Change the " +"direction of the turtle, so that it turns 120 degrees left (anti-clockwise)::" msgstr "" msgid "left(120)" @@ -134,7 +148,9 @@ msgid "" msgstr "" msgid "" -"Experiment with those commands, and also with ``backward()`` and ``right()``." +"Experiment with those commands, and also with ``backward()`` and " +"``right()``. Many commands also have shorter aliases, such as ``fd()`` " +"for :func:`forward`." msgstr "" msgid "Pen control" @@ -241,532 +257,13 @@ msgstr "" msgid "" "(Note that filling only actually takes place when you give the " -"``end_fill()`` command.)" -msgstr "" - -msgid "How to..." -msgstr "" - -msgid "This section covers some typical turtle use-cases and approaches." -msgstr "" - -msgid "Get started as quickly as possible" -msgstr "" - -msgid "" -"One of the joys of turtle graphics is the immediate, visual feedback that's " -"available from simple commands - it's an excellent way to introduce children " -"to programming ideas, with a minimum of overhead (not just children, of " -"course)." -msgstr "" - -msgid "" -"The turtle module makes this possible by exposing all its basic " -"functionality as functions, available with ``from turtle import *``. The :" -"ref:`turtle graphics tutorial ` covers this approach." -msgstr "" - -msgid "" -"It's worth noting that many of the turtle commands also have even more terse " -"equivalents, such as ``fd()`` for :func:`forward`. These are especially " -"useful when working with learners for whom typing is not a skill." -msgstr "" - -msgid "" -"You'll need to have the :mod:`Tk interface package ` installed on " -"your system for turtle graphics to work. Be warned that this is not always " -"straightforward, so check this in advance if you're planning to use turtle " -"graphics with a learner." -msgstr "" - -msgid "Automatically begin and end filling" -msgstr "" - -msgid "" -"Starting with Python 3.14, you can use the :func:`fill` :term:`context " -"manager` instead of :func:`begin_fill` and :func:`end_fill` to automatically " -"begin and end fill. Here is an example::" -msgstr "" - -msgid "" -"with fill():\n" -" for i in range(4):\n" -" forward(100)\n" -" right(90)\n" -"\n" -"forward(200)" -msgstr "" - -msgid "The code above is equivalent to::" -msgstr "" - -msgid "" -"begin_fill()\n" -"for i in range(4):\n" -" forward(100)\n" -" right(90)\n" -"end_fill()\n" -"\n" -"forward(200)" -msgstr "" - -msgid "Use the ``turtle`` module namespace" -msgstr "" - -msgid "" -"Using ``from turtle import *`` is convenient - but be warned that it imports " -"a rather large collection of objects, and if you're doing anything but " -"turtle graphics you run the risk of a name conflict (this becomes even more " -"an issue if you're using turtle graphics in a script where other modules " -"might be imported)." -msgstr "" - -msgid "" -"The solution is to use ``import turtle`` - ``fd()`` becomes ``turtle.fd()``, " -"``width()`` becomes ``turtle.width()`` and so on. (If typing \"turtle\" over " -"and over again becomes tedious, use for example ``import turtle as t`` " -"instead.)" -msgstr "" - -msgid "Use turtle graphics in a script" -msgstr "" - -msgid "" -"It's recommended to use the ``turtle`` module namespace as described " -"immediately above, for example::" -msgstr "" - -msgid "" -"import turtle as t\n" -"from random import random\n" -"\n" -"for i in range(100):\n" -" steps = int(random() * 100)\n" -" angle = int(random() * 360)\n" -" t.right(angle)\n" -" t.fd(steps)" -msgstr "" - -msgid "" -"Another step is also required though - as soon as the script ends, Python " -"will also close the turtle's window. Add::" -msgstr "" - -msgid "t.mainloop()" -msgstr "" - -msgid "" -"to the end of the script. The script will now wait to be dismissed and will " -"not exit until it is terminated, for example by closing the turtle graphics " -"window." -msgstr "" - -msgid "Use object-oriented turtle graphics" -msgstr "" - -msgid "" -":ref:`Explanation of the object-oriented interface `" -msgstr "" - -msgid "" -"Other than for very basic introductory purposes, or for trying things out as " -"quickly as possible, it's more usual and much more powerful to use the " -"object-oriented approach to turtle graphics. For example, this allows " -"multiple turtles on screen at once." -msgstr "" - -msgid "" -"In this approach, the various turtle commands are methods of objects (mostly " -"of ``Turtle`` objects). You *can* use the object-oriented approach in the " -"shell, but it would be more typical in a Python script." -msgstr "" - -msgid "The example above then becomes::" -msgstr "" - -msgid "" -"from turtle import Turtle\n" -"from random import random\n" -"\n" -"t = Turtle()\n" -"for i in range(100):\n" -" steps = int(random() * 100)\n" -" angle = int(random() * 360)\n" -" t.right(angle)\n" -" t.fd(steps)\n" -"\n" -"t.screen.mainloop()" -msgstr "" - -msgid "" -"Note the last line. ``t.screen`` is an instance of the :class:`Screen` that " -"a Turtle instance exists on; it's created automatically along with the " -"turtle." -msgstr "" - -msgid "The turtle's screen can be customised, for example::" -msgstr "" - -msgid "" -"t.screen.title('Object-oriented turtle demo')\n" -"t.screen.bgcolor(\"orange\")" -msgstr "" - -msgid "Turtle graphics reference" -msgstr "" - -msgid "" -"In the following documentation the argument list for functions is given. " -"Methods, of course, have the additional first argument *self* which is " -"omitted here." -msgstr "" - -msgid "Turtle methods" -msgstr "" - -msgid "Turtle motion" -msgstr "" - -msgid "Move and draw" -msgstr "" - -msgid ":func:`forward` | :func:`fd`" -msgstr "" - -msgid ":func:`backward` | :func:`bk` | :func:`back`" -msgstr "" - -msgid ":func:`right` | :func:`rt`" -msgstr "" - -msgid ":func:`left` | :func:`lt`" -msgstr "" - -msgid ":func:`goto` | :func:`setpos` | :func:`setposition`" -msgstr "" - -msgid ":func:`teleport`" -msgstr "" - -msgid ":func:`setx`" -msgstr "" - -msgid ":func:`sety`" -msgstr "" - -msgid ":func:`setheading` | :func:`seth`" -msgstr "" - -msgid ":func:`home`" -msgstr "" - -msgid ":func:`circle`" -msgstr "" - -msgid ":func:`dot`" -msgstr "" - -msgid ":func:`stamp`" -msgstr "" - -msgid ":func:`clearstamp`" -msgstr "" - -msgid ":func:`clearstamps`" -msgstr "" - -msgid ":func:`undo`" -msgstr "" - -msgid ":func:`speed`" -msgstr "" - -msgid "Tell Turtle's state" -msgstr "" - -msgid ":func:`position` | :func:`pos`" -msgstr "" - -msgid ":func:`towards`" -msgstr "" - -msgid ":func:`xcor`" -msgstr "" - -msgid ":func:`ycor`" -msgstr "" - -msgid ":func:`heading`" -msgstr "" - -msgid ":func:`distance`" -msgstr "" - -msgid "Setting and measurement" -msgstr "" - -msgid ":func:`degrees`" -msgstr "" - -msgid ":func:`radians`" -msgstr "" - -msgid "Drawing state" -msgstr "" - -msgid ":func:`pendown` | :func:`pd` | :func:`down`" -msgstr "" - -msgid ":func:`penup` | :func:`pu` | :func:`up`" -msgstr "" - -msgid ":func:`pensize` | :func:`width`" -msgstr "" - -msgid ":func:`pen`" -msgstr "" - -msgid ":func:`isdown`" -msgstr "" - -msgid "Color control" -msgstr "" - -msgid ":func:`color`" -msgstr "" - -msgid ":func:`pencolor`" -msgstr "" - -msgid ":func:`fillcolor`" -msgstr "" - -msgid "Filling" -msgstr "" - -msgid ":func:`filling`" -msgstr "" - -msgid ":func:`fill`" -msgstr "" - -msgid ":func:`begin_fill`" -msgstr "" - -msgid ":func:`end_fill`" -msgstr "" - -msgid "More drawing control" -msgstr "" - -msgid ":func:`reset`" -msgstr "" - -msgid ":func:`clear`" -msgstr "" - -msgid ":func:`write`" -msgstr "" - -msgid "Turtle state" -msgstr "" - -msgid "Visibility" -msgstr "" - -msgid ":func:`showturtle` | :func:`st`" -msgstr "" - -msgid ":func:`hideturtle` | :func:`ht`" -msgstr "" - -msgid ":func:`isvisible`" -msgstr "" - -msgid "Appearance" -msgstr "" - -msgid ":func:`shape`" -msgstr "" - -msgid ":func:`resizemode`" -msgstr "" - -msgid ":func:`shapesize` | :func:`turtlesize`" -msgstr "" - -msgid ":func:`shearfactor`" -msgstr "" - -msgid ":func:`tiltangle`" -msgstr "" - -msgid ":func:`tilt`" -msgstr "" - -msgid ":func:`shapetransform`" -msgstr "" - -msgid ":func:`get_shapepoly`" -msgstr "" - -msgid "Using events" -msgstr "" - -msgid ":func:`onclick`" -msgstr "" - -msgid ":func:`onrelease`" -msgstr "" - -msgid ":func:`ondrag`" -msgstr "" - -msgid "Special Turtle methods" -msgstr "" - -msgid ":func:`poly`" -msgstr "" - -msgid ":func:`begin_poly`" -msgstr "" - -msgid ":func:`end_poly`" -msgstr "" - -msgid ":func:`get_poly`" -msgstr "" - -msgid ":func:`clone`" -msgstr "" - -msgid ":func:`getturtle` | :func:`getpen`" -msgstr "" - -msgid ":func:`getscreen`" -msgstr "" - -msgid ":func:`setundobuffer`" -msgstr "" - -msgid ":func:`undobufferentries`" -msgstr "" - -msgid "Methods of TurtleScreen/Screen" -msgstr "" - -msgid "Window control" -msgstr "" - -msgid ":func:`bgcolor`" -msgstr "" - -msgid ":func:`bgpic`" -msgstr "" - -msgid ":func:`clearscreen`" -msgstr "" - -msgid ":func:`resetscreen`" -msgstr "" - -msgid ":func:`screensize`" -msgstr "" - -msgid ":func:`setworldcoordinates`" -msgstr "" - -msgid "Animation control" -msgstr "" - -msgid ":func:`no_animation`" -msgstr "" - -msgid ":func:`delay`" -msgstr "" - -msgid ":func:`tracer`" -msgstr "" - -msgid ":func:`update`" -msgstr "" - -msgid "Using screen events" -msgstr "" - -msgid ":func:`listen`" -msgstr "" - -msgid ":func:`onkey` | :func:`onkeyrelease`" -msgstr "" - -msgid ":func:`onkeypress`" -msgstr "" - -msgid ":func:`onclick` | :func:`onscreenclick`" -msgstr "" - -msgid ":func:`ontimer`" -msgstr "" - -msgid ":func:`mainloop` | :func:`done`" -msgstr "" - -msgid "Settings and special methods" -msgstr "" - -msgid ":func:`mode`" -msgstr "" - -msgid ":func:`colormode`" -msgstr "" - -msgid ":func:`getcanvas`" -msgstr "" - -msgid ":func:`getshapes`" -msgstr "" - -msgid ":func:`register_shape` | :func:`addshape`" -msgstr "" - -msgid ":func:`turtles`" -msgstr "" - -msgid ":func:`window_height`" -msgstr "" - -msgid ":func:`window_width`" -msgstr "" - -msgid "Input methods" -msgstr "" - -msgid ":func:`textinput`" -msgstr "" - -msgid ":func:`numinput`" -msgstr "" - -msgid "Methods specific to Screen" -msgstr "" - -msgid ":func:`bye`" -msgstr "" - -msgid ":func:`exitonclick`" -msgstr "" - -msgid ":func:`save`" -msgstr "" - -msgid ":func:`setup`" +"``end_fill()`` command.)" msgstr "" -msgid ":func:`title`" +msgid "Reference" msgstr "" -msgid "Methods of RawTurtle/Turtle and corresponding functions" +msgid "Turtle methods and functions" msgstr "" msgid "" @@ -774,10 +271,13 @@ msgid "" "``turtle``." msgstr "" +msgid "Move and draw" +msgstr "" + msgid "Parameters" msgstr "" -msgid "a number (integer or float)" +msgid "a number" msgstr "" msgid "" @@ -796,12 +296,9 @@ msgid "" "(-50.00,0.00)" msgstr "" -msgid "a number" -msgstr "" - msgid "" "Move the turtle backward by *distance*, opposite to the direction the turtle " -"is headed. Do not change the turtle's heading." +"is headed. The turtle's heading does not change." msgstr "" msgid "" @@ -813,9 +310,10 @@ msgid "" msgstr "" msgid "" -"Turn turtle right by *angle* units. (Units are by default degrees, but can " -"be set via the :func:`degrees` and :func:`radians` functions.) Angle " -"orientation depends on the turtle mode, see :func:`mode`." +"Turn the turtle right by the specified *angle*. The angle is measured in " +"degrees by default; the unit can be changed with :func:`degrees` " +"or :func:`radians`. How the heading is measured depends on the turtle mode, " +"see :func:`mode`." msgstr "" msgid "" @@ -827,9 +325,10 @@ msgid "" msgstr "" msgid "" -"Turn turtle left by *angle* units. (Units are by default degrees, but can " -"be set via the :func:`degrees` and :func:`radians` functions.) Angle " -"orientation depends on the turtle mode, see :func:`mode`." +"Turn the turtle left by the specified *angle*. The angle is measured in " +"degrees by default; the unit can be changed with :func:`degrees` " +"or :func:`radians`. How the heading is measured depends on the turtle mode, " +"see :func:`mode`." msgstr "" msgid "" @@ -847,26 +346,23 @@ msgid "a number or ``None``" msgstr "" msgid "" -"If *y* is ``None``, *x* must be a pair of coordinates or a :class:`Vec2D` (e." -"g. as returned by :func:`pos`)." -msgstr "" - -msgid "" -"Move turtle to an absolute position. If the pen is down, draw line. Do not " -"change the turtle's orientation." +"Move the turtle to an absolute position. If *y* is ``None``, *x* must be a " +"pair of coordinates or a :class:`Vec2D`, for example as returned " +"by :func:`pos`. If the pen is down, a line is drawn. The turtle's heading " +"does not change." msgstr "" msgid "" ">>> tp = turtle.pos()\n" ">>> tp\n" "(0.00,0.00)\n" -">>> turtle.setpos(60,30)\n" +">>> turtle.goto(60,30)\n" ">>> turtle.pos()\n" "(60.00,30.00)\n" -">>> turtle.setpos((20,80))\n" +">>> turtle.goto((20,80))\n" ">>> turtle.pos()\n" "(20.00,80.00)\n" -">>> turtle.setpos(tp)\n" +">>> turtle.goto(tp)\n" ">>> turtle.pos()\n" "(0.00,0.00)" msgstr "" @@ -875,12 +371,16 @@ msgid "a boolean" msgstr "" msgid "" -"Move turtle to an absolute position. Unlike goto(x, y), a line will not be " -"drawn. The turtle's orientation does not change. If currently filling, the " -"polygon(s) teleported from will be filled after leaving, and filling will " -"begin again after teleporting. This can be disabled with fill_gap=True, " -"which makes the imaginary line traveled during teleporting act as a fill " -"barrier like in goto(x, y)." +"Teleport, or instantly move, the turtle to an absolute position. " +"Unlike :func:`goto`, no line is drawn. If *x* or *y* is not given, that " +"coordinate is kept as it is. The turtle's heading does not change." +msgstr "" + +msgid "" +"If the turtle is filling a shape, the shape drawn so far is finished and " +"filled before teleporting, and filling starts again at the new position. " +"Pass ``fill_gap=True`` to keep filling one shape instead. The teleport then " +"counts as an edge of the shape, as it would with :func:`goto`." msgstr "" msgid "" @@ -898,8 +398,7 @@ msgid "" "(20.00,30.00)" msgstr "" -msgid "" -"Set the turtle's first coordinate to *x*, leave second coordinate unchanged." +msgid "Set the turtle's x coordinate to *x*. The y coordinate is unchanged." msgstr "" msgid "" @@ -910,8 +409,7 @@ msgid "" "(10.00,240.00)" msgstr "" -msgid "" -"Set the turtle's second coordinate to *y*, leave first coordinate unchanged." +msgid "Set the turtle's y coordinate to *y*. The x coordinate is unchanged." msgstr "" msgid "" @@ -923,8 +421,8 @@ msgid "" msgstr "" msgid "" -"Set the orientation of the turtle to *to_angle*. Here are some common " -"directions in degrees:" +"Set the turtle's heading to *to_angle*. Here are some common directions in " +"degrees:" msgstr "" msgid "standard mode" @@ -964,8 +462,9 @@ msgid "" msgstr "" msgid "" -"Move turtle to the origin -- coordinates (0,0) -- and set its heading to its " -"start-orientation (which depends on the mode, see :func:`mode`)." +"Move the turtle to the origin, coordinates (0,0). The turtle's heading is " +"set to its start orientation, which depends on the turtle mode, " +"see :func:`mode`." msgstr "" msgid "" @@ -980,26 +479,22 @@ msgid "" "0.0" msgstr "" -msgid "a number (or ``None``)" -msgstr "" - -msgid "an integer (or ``None``)" +msgid "an integer or ``None``" msgstr "" msgid "" -"Draw a circle with given *radius*. The center is *radius* units left of the " -"turtle; *extent* -- an angle -- determines which part of the circle is " -"drawn. If *extent* is not given, draw the entire circle. If *extent* is " -"not a full circle, one endpoint of the arc is the current pen position. " -"Draw the arc in counterclockwise direction if *radius* is positive, " -"otherwise in clockwise direction. Finally the direction of the turtle is " -"changed by the amount of *extent*." +"Draw a circle with the given *radius*. The center is *radius* units left of " +"the turtle; *extent*, an angle, determines which part of the circle is " +"drawn. If *extent* is not given, draw the entire circle. If *extent* is not " +"a full circle, one endpoint of the arc is the current pen position. Draw the " +"arc in counterclockwise direction if *radius* is positive, otherwise in " +"clockwise direction. Finally, the turtle's heading is changed by *extent*." msgstr "" msgid "" "As the circle is approximated by an inscribed regular polygon, *steps* " -"determines the number of steps to use. If not given, it will be calculated " -"automatically. May be used to draw regular polygons." +"determines the number of steps to use. If not given, it will be calculated " +"automatically. May be used to draw regular polygons." msgstr "" msgid "" @@ -1020,15 +515,16 @@ msgid "" "180.0" msgstr "" -msgid "an integer >= 1 (if given)" +msgid "a positive integer or ``None``" msgstr "" msgid "a colorstring or a numeric color tuple" msgstr "" msgid "" -"Draw a circular dot with diameter *size*, using *color*. If *size* is not " -"given, the maximum of ``pensize+4`` and ``2*pensize`` is used." +"Draw a circular dot with diameter *size*, using *color*. If *size* is not " +"given, the larger of ``pensize + 4`` and ``2 * pensize`` is used. If *color* " +"is not given, the current pencolor is used." msgstr "" msgid "" @@ -1072,6 +568,9 @@ msgid "" "(200.00,-0.00)" msgstr "" +msgid "an integer (or ``None``)" +msgstr "" + msgid "" "Delete all or first/last *n* of turtle's stamps. If *n* is ``None``, delete " "all stamps, if *n* > 0 delete first *n* stamps, else if *n* < 0 delete last " @@ -1100,42 +599,36 @@ msgid "" "... turtle.undo()" msgstr "" -msgid "an integer in the range 0..10 or a speedstring (see below)" -msgstr "" - -msgid "" -"Set the turtle's speed to an integer value in the range 0..10. If no " -"argument is given, return current speed." +msgid "an integer, a string or ``None``" msgstr "" msgid "" -"If input is a number greater than 10 or smaller than 0.5, speed is set to " -"0. Speedstrings are mapped to speedvalues as follows:" -msgstr "" - -msgid "\"fastest\": 0" +"Return or set the turtle's speed. If *speed* is not given, return the " +"current speed. Otherwise set the turtle's speed to an integer from 0 to 10. " +"If *speed* is a number greater than 10 or smaller than 0.5, the speed is set " +"to 0. You can also use these names instead of numbers:" msgstr "" -msgid "\"fast\": 10" +msgid "\"fastest\": 0" msgstr "" -msgid "\"normal\": 6" +msgid "\"fast\": 10" msgstr "" -msgid "\"slow\": 3" +msgid "\"normal\": 6" msgstr "" -msgid "\"slowest\": 1" +msgid "\"slow\": 3" msgstr "" -msgid "" -"Speeds from 1 to 10 enforce increasingly faster animation of line drawing " -"and turtle turning." +msgid "\"slowest\": 1" msgstr "" msgid "" -"Attention: *speed* = 0 means that *no* animation takes place. forward/back " -"makes turtle jump and likewise left/right make the turtle turn instantly." +"Speeds from 1 to 10 give increasingly faster animation of line drawing and " +"turtle turning. A speed of 0 means that no animation takes " +"place: :func:`forward` and :func:`back` make the turtle jump, and " +"likewise :func:`left` and :func:`right` make the turtle turn instantly." msgstr "" msgid "" @@ -1149,8 +642,10 @@ msgid "" "9" msgstr "" -msgid "" -"Return the turtle's current location (x,y) (as a :class:`Vec2D` vector)." +msgid "Tell Turtle's state" +msgstr "" + +msgid "Return the turtle's current location (x,y) as a :class:`Vec2D` vector." msgstr "" msgid "" @@ -1165,10 +660,11 @@ msgid "a number if *x* is a number, else ``None``" msgstr "" msgid "" -"Return the angle between the line from turtle position to position specified " -"by (x,y), the vector or the other turtle. This depends on the turtle's " -"start orientation which depends on the mode - \"standard\"/\"world\" or " -"\"logo\"." +"Return the angle of the line from the turtle's position to (x,y). If *y* is " +"``None``, *x* must be a pair of coordinates, a :class:`Vec2D`, for example " +"as returned by :func:`pos`, or another turtle. The angle is measured from " +"the turtle's start orientation, which depends on the turtle mode, " +"see :func:`mode`." msgstr "" msgid "" @@ -1204,8 +700,8 @@ msgid "" msgstr "" msgid "" -"Return the turtle's current heading (value depends on the turtle mode, see :" -"func:`mode`)." +"Return the turtle's current heading. The value depends on the turtle mode, " +"see :func:`mode`." msgstr "" msgid "" @@ -1216,8 +712,9 @@ msgid "" msgstr "" msgid "" -"Return the distance from the turtle to (x,y), the given vector, or the given " -"other turtle, in turtle step units." +"Return the distance from the turtle to (x,y) in turtle step units. If *y* is " +"``None``, *x* must be a pair of coordinates, a :class:`Vec2D`, for example " +"as returned by :func:`pos`, or another turtle." msgstr "" msgid "" @@ -1236,8 +733,8 @@ msgid "Settings for measurement" msgstr "" msgid "" -"Set angle measurement units, i.e. set number of \"degrees\" for a full " -"circle. Default value is 360 degrees." +"Set the angle measurement units to degrees. The number of degrees in a full " +"circle is set to *fullcircle*, which defaults to 360." msgstr "" msgid "" @@ -1257,8 +754,8 @@ msgid "" msgstr "" msgid "" -"Set the angle measurement units to radians. Equivalent to ``degrees(2*math." -"pi)``." +"Set the angle measurement units to radians. Equivalent to ``degrees(2 * " +"math.pi)``." msgstr "" msgid "" @@ -1271,19 +768,22 @@ msgid "" "1.5707963267948966" msgstr "" -msgid "Pull the pen down -- drawing when moving." +msgid "Drawing state" +msgstr "" + +msgid "Lower the pen. The turtle draws a line when it moves." msgstr "" -msgid "Pull the pen up -- no drawing when moving." +msgid "Lift the pen. The turtle does not draw when it moves." msgstr "" -msgid "a positive number" +msgid "a positive number or ``None``" msgstr "" msgid "" -"Set the line thickness to *width* or return it. If resizemode is set to " -"\"auto\" and turtleshape is a polygon, that polygon is drawn with the same " -"line thickness. If no argument is given, the current pensize is returned." +"Return or set the line thickness. If *width* is not given, return the " +"current pensize. If resizemode is set to \"auto\" and the turtle shape is a " +"polygon, that polygon is drawn with the same line thickness." msgstr "" msgid "" @@ -1357,7 +857,7 @@ msgid "" "[('fillcolor', 'green'), ('outline', 1), ('pencolor', 'red')]" msgstr "" -msgid "Return ``True`` if pen is down, ``False`` if it's up." +msgid "Return ``True`` if the pen is down, ``False`` if it's up." msgstr "" msgid "" @@ -1369,6 +869,9 @@ msgid "" "True" msgstr "" +msgid "Color control" +msgstr "" + msgid "Return or set the pencolor." msgstr "" @@ -1380,15 +883,16 @@ msgstr "" msgid "" "Return the current pencolor as color specification string or as a tuple (see " -"example). May be used as input to another color/pencolor/fillcolor/bgcolor " -"call." +"example). May be used as input to " +"another :func:`color`, :func:`pencolor`, :func:`fillcolor` " +"or :func:`bgcolor` call." msgstr "" msgid "``pencolor(colorstring)``" msgstr "" msgid "" -"Set pencolor to *colorstring*, which is a Tk color specification string, " +"Set the pencolor to *colorstring*, which is a Tk color specification string, " "such as ``\"red\"``, ``\"yellow\"``, or ``\"#33cc8c\"``." msgstr "" @@ -1396,8 +900,8 @@ msgid "``pencolor((r, g, b))``" msgstr "" msgid "" -"Set pencolor to the RGB color represented by the tuple of *r*, *g*, and " -"*b*. Each of *r*, *g*, and *b* must be in the range 0..colormode, where " +"Set the pencolor to the RGB color represented by the tuple of *r*, *g*, and " +"*b*. Each of *r*, *g*, and *b* must be between 0 and colormode, where " "colormode is either 1.0 or 255 (see :func:`colormode`)." msgstr "" @@ -1405,13 +909,13 @@ msgid "``pencolor(r, g, b)``" msgstr "" msgid "" -"Set pencolor to the RGB color represented by *r*, *g*, and *b*. Each of " -"*r*, *g*, and *b* must be in the range 0..colormode." +"Set the pencolor to the RGB color represented by *r*, *g*, and *b*. Each of " +"*r*, *g*, and *b* must be between 0 and colormode." msgstr "" msgid "" -"If turtleshape is a polygon, the outline of that polygon is drawn with the " -"newly set pencolor." +"If the turtle shape is a polygon, the outline of that polygon is drawn with " +"the newly set pencolor." msgstr "" msgid "" @@ -1442,24 +946,25 @@ msgstr "" msgid "" "Return the current fillcolor as color specification string, possibly in " -"tuple format (see example). May be used as input to another color/pencolor/" -"fillcolor/bgcolor call." +"tuple format (see example). May be used as input to " +"another :func:`color`, :func:`pencolor`, :func:`fillcolor` " +"or :func:`bgcolor` call." msgstr "" msgid "``fillcolor(colorstring)``" msgstr "" msgid "" -"Set fillcolor to *colorstring*, which is a Tk color specification string, " -"such as ``\"red\"``, ``\"yellow\"``, or ``\"#33cc8c\"``." +"Set the fillcolor to *colorstring*, which is a Tk color specification " +"string, such as ``\"red\"``, ``\"yellow\"``, or ``\"#33cc8c\"``." msgstr "" msgid "``fillcolor((r, g, b))``" msgstr "" msgid "" -"Set fillcolor to the RGB color represented by the tuple of *r*, *g*, and " -"*b*. Each of *r*, *g*, and *b* must be in the range 0..colormode, where " +"Set the fillcolor to the RGB color represented by the tuple of *r*, *g*, and " +"*b*. Each of *r*, *g*, and *b* must be between 0 and colormode, where " "colormode is either 1.0 or 255 (see :func:`colormode`)." msgstr "" @@ -1467,13 +972,13 @@ msgid "``fillcolor(r, g, b)``" msgstr "" msgid "" -"Set fillcolor to the RGB color represented by *r*, *g*, and *b*. Each of " -"*r*, *g*, and *b* must be in the range 0..colormode." +"Set the fillcolor to the RGB color represented by *r*, *g*, and *b*. Each of " +"*r*, *g*, and *b* must be between 0 and colormode." msgstr "" msgid "" -"If turtleshape is a polygon, the interior of that polygon is drawn with the " -"newly set fillcolor." +"If the turtle shape is a polygon, the interior of that polygon is drawn with " +"the newly set fillcolor." msgstr "" msgid "" @@ -1490,11 +995,11 @@ msgid "" "(255.0, 255.0, 255.0)" msgstr "" -msgid "Return or set pencolor and fillcolor." +msgid "Return or set the pencolor and fillcolor." msgstr "" msgid "" -"Several input formats are allowed. They use 0 to 3 arguments as follows:" +"Several input formats are allowed. They use 0 to 3 arguments as follows:" msgstr "" msgid "``color()``" @@ -1502,16 +1007,16 @@ msgstr "" msgid "" "Return the current pencolor and the current fillcolor as a pair of color " -"specification strings or tuples as returned by :func:`pencolor` and :func:" -"`fillcolor`." +"specification strings or tuples as returned by :func:`pencolor` " +"and :func:`fillcolor`." msgstr "" msgid "``color(colorstring)``, ``color((r,g,b))``, ``color(r,g,b)``" msgstr "" msgid "" -"Inputs as in :func:`pencolor`, set both, fillcolor and pencolor, to the " -"given value." +"Inputs as in :func:`pencolor`. Set both the pencolor and the fillcolor to " +"the given value." msgstr "" msgid "" @@ -1524,8 +1029,8 @@ msgid "" msgstr "" msgid "" -"If turtleshape is a polygon, outline and interior of that polygon is drawn " -"with the newly set colors." +"If the turtle shape is a polygon, the outline and interior of that polygon " +"are drawn with the newly set colors." msgstr "" msgid "" @@ -1540,7 +1045,10 @@ msgstr "" msgid "See also: Screen method :func:`colormode`." msgstr "" -msgid "Return fillstate (``True`` if filling, ``False`` else)." +msgid "Filling" +msgstr "" + +msgid "Return ``True`` if the turtle is filling, ``False`` otherwise." msgstr "" msgid "" @@ -1585,9 +1093,12 @@ msgid "" "all yellow or have some white regions." msgstr "" +msgid "More drawing control" +msgstr "" + msgid "" -"Delete the turtle's drawings from the screen, re-center the turtle and set " -"variables to the default values." +"Delete the turtle's drawings and re-center the turtle. The turtle's settings " +"are restored to their default values." msgstr "" msgid "" @@ -1605,9 +1116,8 @@ msgid "" msgstr "" msgid "" -"Delete the turtle's drawings from the screen. Do not move turtle. State " -"and position of the turtle as well as drawings of other turtles are not " -"affected." +"Delete the turtle's drawings from the screen. The state and position of the " +"turtle as well as the drawings of other turtles are not affected." msgstr "" msgid "object to be written to the TurtleScreen" @@ -1630,33 +1140,47 @@ msgid "" msgstr "" msgid "" -"Make the turtle invisible. It's a good idea to do this while you're in the " -"middle of doing some complex drawing, because hiding the turtle speeds up " -"the drawing observably." +">>> turtle.write(\"Home = \", True, align=\"center\")\n" +">>> turtle.write((0,0), True)" +msgstr "" + +msgid "Turtle state" +msgstr "" + +msgid "Visibility" msgstr "" -msgid ">>> turtle.hideturtle()" +msgid "Make the turtle invisible. If the pen is down, movement still draws." msgstr "" msgid "Make the turtle visible." msgstr "" -msgid ">>> turtle.showturtle()" +msgid "Return ``True`` if the turtle is visible, ``False`` if it's hidden." +msgstr "" + +msgid "" +">>> turtle.hideturtle()\n" +">>> turtle.isvisible()\n" +"False\n" +">>> turtle.showturtle()\n" +">>> turtle.isvisible()\n" +"True" msgstr "" -msgid "Return ``True`` if the Turtle is shown, ``False`` if it's hidden." +msgid "Appearance" msgstr "" -msgid "a string which is a valid shapename" +msgid "a string or ``None``" msgstr "" msgid "" -"Set turtle shape to shape with given *name* or, if name is not given, return " -"name of current shape. Shape with *name* must exist in the TurtleScreen's " -"shape dictionary. Initially there are the following polygon shapes: " -"\"arrow\", \"turtle\", \"circle\", \"square\", \"triangle\", \"classic\". " -"To learn about how to deal with shapes see Screen method :func:" -"`register_shape`." +"Set the turtle shape to the named shape. If *name* is not given, return the " +"name of the current shape. The shape must exist in " +"the :class:`TurtleScreen`'s shape dictionary. Initially there are the " +"following shapes: \"arrow\", \"turtle\", \"circle\", \"square\", " +"\"triangle\" and \"classic\". To add shapes, see the :class:`Screen` " +"method :func:`register_shape`." msgstr "" msgid "" @@ -1667,26 +1191,22 @@ msgid "" "'turtle'" msgstr "" -msgid "one of the strings \"auto\", \"user\", \"noresize\"" -msgstr "" - msgid "" -"Set resizemode to one of the values: \"auto\", \"user\", \"noresize\". If " -"*rmode* is not given, return current resizemode. Different resizemodes have " -"the following effects:" +"Set the resizemode to \"auto\", \"user\" or \"noresize\". If *rmode* is not " +"given, return the current resizemode. The different resizemodes have the " +"following effects:" msgstr "" msgid "" -"\"auto\": adapts the appearance of the turtle corresponding to the value of " -"pensize." +"\"auto\": the turtle is resized according to the value of :func:`pensize`." msgstr "" msgid "" -"\"user\": adapts the appearance of the turtle according to the values of " -"stretchfactor and outlinewidth (outline), which are set by :func:`shapesize`." +"\"user\": the turtle is resized according to the stretch factors and outline " +"width, which are set by :func:`shapesize`." msgstr "" -msgid "\"noresize\": no adaption of the turtle's appearance takes place." +msgid "\"noresize\": the turtle is not resized." msgstr "" msgid "" @@ -1702,16 +1222,27 @@ msgid "" "'auto'" msgstr "" -msgid "positive number" +msgid "" +"Return or set the turtle's stretch factors and outline width. If no " +"arguments are given, return the current values. Otherwise set resizemode to " +"\"user\", so that the turtle is displayed stretched according to its stretch " +"factors:" +msgstr "" + +msgid "*stretch_wid*: the stretch factor perpendicular to the turtle's heading" msgstr "" msgid "" -"Return or set the pen's attributes x/y-stretchfactors and/or outline. Set " -"resizemode to \"user\". If and only if resizemode is set to \"user\", the " -"turtle will be displayed stretched according to its stretchfactors: " -"*stretch_wid* is stretchfactor perpendicular to its orientation, " -"*stretch_len* is stretchfactor in direction of its orientation, *outline* " -"determines the width of the shape's outline." +"*stretch_len*: the stretch factor in the direction of the turtle's heading" +msgstr "" + +msgid "*outline*: the width of the shape's outline" +msgstr "" + +msgid "" +"For example, ``shapesize(2, 1)`` makes the turtle twice as wide without " +"changing its length. If only *stretch_wid* is given, *stretch_len* is set to " +"the same value." msgstr "" msgid "" @@ -1814,23 +1345,25 @@ msgid "" "((50, -20), (30, 20), (-50, 20), (-30, -20))" msgstr "" -msgid "" -"a function with two arguments which will be called with the coordinates of " -"the clicked point on the canvas" +msgid "Using events" msgstr "" -msgid "number of the mouse-button, defaults to 1 (left mouse button)" +msgid "a function with two arguments or ``None``" msgstr "" -msgid "" -"``True`` or ``False`` -- if ``True``, a new binding will be added, otherwise " -"it will replace a former binding" +msgid "an integer" +msgstr "" + +msgid "a boolean or ``None``" msgstr "" msgid "" -"Bind *fun* to mouse-click events on this turtle. If *fun* is ``None``, " -"existing bindings are removed. Example for the anonymous turtle, i.e. the " -"procedural way:" +"Bind *fun* to mouse-click events on this turtle. *fun* is called with the " +"coordinates of the clicked point on the canvas. If *fun* is ``None``, " +"existing bindings are removed. *btn* is the number of the mouse button and " +"defaults to 1, the left mouse button. If *add* is ``True``, a new binding is " +"added, otherwise it replaces a former binding. Example for the anonymous " +"turtle, that is, the procedural way:" msgstr "" msgid "" @@ -1841,6 +1374,19 @@ msgid "" ">>> onclick(None) # event-binding will be removed" msgstr "" +msgid "" +"a function with two arguments which will be called with the coordinates of " +"the clicked point on the canvas" +msgstr "" + +msgid "number of the mouse-button, defaults to 1 (left mouse button)" +msgstr "" + +msgid "" +"``True`` or ``False`` -- if ``True``, a new binding will be added, otherwise " +"it will replace a former binding" +msgstr "" + msgid "" "Bind *fun* to mouse-button-release events on this turtle. If *fun* is " "``None``, existing bindings are removed." @@ -1877,6 +1423,9 @@ msgid "" "screen thereby producing handdrawings (if pen is down)." msgstr "" +msgid "Special Turtle methods" +msgstr "" + msgid "" "Record the vertices of a polygon drawn in the ``with turtle.poly():`` block. " "The first and last vertices will be connected." @@ -1890,13 +1439,13 @@ msgid "" msgstr "" msgid "" -"Start recording the vertices of a polygon. Current turtle position is first " -"vertex of polygon." +"Start recording the vertices of a polygon. The current turtle position is " +"the first vertex of the polygon." msgstr "" msgid "" -"Stop recording the vertices of a polygon. Current turtle position is last " -"vertex of polygon. This will be connected with the first vertex." +"Stop recording the vertices of a polygon. The current turtle position is the " +"last vertex of the polygon. This will be connected with the first vertex." msgstr "" msgid "Return the last recorded polygon." @@ -1916,18 +1465,21 @@ msgid "" msgstr "" msgid "" -"Create and return a clone of the turtle with same position, heading and " -"turtle properties." +"Create and return a clone of the turtle. The clone has the same position, " +"heading and turtle properties." msgstr "" msgid "" -">>> mick = Turtle()\n" -">>> joe = mick.clone()" +">>> leonel = Turtle()\n" +">>> marco = leonel.clone()" +msgstr "" + +msgid "Return the Turtle object itself." msgstr "" msgid "" -"Return the Turtle object itself. Only reasonable use: as a function to " -"return the \"anonymous turtle\":" +"Call ``getturtle()`` to get the turtle used by functions such " +"as :func:`forward` and :func:`left`:" msgstr "" msgid "" @@ -1949,20 +1501,17 @@ msgid "" ">>> ts.bgcolor(\"pink\")" msgstr "" -msgid "an integer or ``None``" -msgstr "" - msgid "" -"Set or disable undobuffer. If *size* is an integer, an empty undobuffer of " -"given size is installed. *size* gives the maximum number of turtle actions " -"that can be undone by the :func:`undo` method/function. If *size* is " -"``None``, the undobuffer is disabled." +"Set or disable the undo buffer. If *size* is an integer, an empty undo " +"buffer of the given size is installed. *size* is the maximum number of " +"turtle actions that can be undone by :func:`undo`. If *size* is ``None``, " +"the undo buffer is disabled." msgstr "" msgid ">>> turtle.setundobuffer(42)" msgstr "" -msgid "Return number of entries in the undobuffer." +msgid "Return the number of entries in the undo buffer." msgstr "" msgid "" @@ -1970,49 +1519,7 @@ msgid "" "... undo()" msgstr "" -msgid "Compound shapes" -msgstr "" - -msgid "" -"To use compound turtle shapes, which consist of several polygons of " -"different color, you must use the helper class :class:`Shape` explicitly as " -"described below:" -msgstr "" - -msgid "Create an empty Shape object of type \"compound\"." -msgstr "" - -msgid "" -"Add as many components to this object as desired, using the :meth:`~Shape." -"addcomponent` method." -msgstr "" - -msgid "For example:" -msgstr "" - -msgid "" -">>> s = Shape(\"compound\")\n" -">>> poly1 = ((0,0),(10,-5),(0,10),(-10,-5))\n" -">>> s.addcomponent(poly1, \"red\", \"blue\")\n" -">>> poly2 = ((0,0),(10,-5),(-10,-5))\n" -">>> s.addcomponent(poly2, \"blue\", \"red\")" -msgstr "" - -msgid "Now add the Shape to the Screen's shapelist and use it:" -msgstr "" - -msgid "" -">>> register_shape(\"myshape\", s)\n" -">>> shape(\"myshape\")" -msgstr "" - -msgid "" -"The :class:`Shape` class is used internally by the :func:`register_shape` " -"method in different ways. The application programmer has to deal with the " -"Shape class *only* when using compound shapes like shown above!" -msgstr "" - -msgid "Methods of TurtleScreen/Screen and corresponding functions" +msgid "Screen methods and functions" msgstr "" msgid "" @@ -2020,6 +1527,9 @@ msgid "" "``screen``." msgstr "" +msgid "Window control" +msgstr "" + msgid "Return or set the background color of the TurtleScreen." msgstr "" @@ -2027,9 +1537,10 @@ msgid "``bgcolor()``" msgstr "" msgid "" -"Return the current background color as color specification string or as a " -"tuple (see example). May be used as input to another color/pencolor/" -"fillcolor/bgcolor call." +"Return the current background color as a color specification string or as a " +"tuple (see example). May be used as input to " +"another :func:`color`, :func:`pencolor`, :func:`fillcolor` " +"or :func:`bgcolor` call." msgstr "" msgid "``bgcolor(colorstring)``" @@ -2045,7 +1556,7 @@ msgstr "" msgid "" "Set the background color to the RGB color represented by the tuple of *r*, " -"*g*, and *b*. Each of *r*, *g*, and *b* must be in the range 0..colormode, " +"*g*, and *b*. Each of *r*, *g*, and *b* must be between 0 and colormode, " "where colormode is either 1.0 or 255 (see :func:`colormode`)." msgstr "" @@ -2053,8 +1564,8 @@ msgid "``bgcolor(r, g, b)``" msgstr "" msgid "" -"Set the background color to the RGB color represented by *r*, *g*, and *b*. " -"Each of *r*, *g*, and *b* must be in the range 0..colormode." +"Set the background color to the RGB color represented by *r*, *g*, and *b*. " +"Each of *r*, *g*, and *b* must be between 0 and colormode." msgstr "" msgid "" @@ -2104,7 +1615,7 @@ msgid "" "from the Turtle method ``reset``." msgstr "" -msgid "Reset all Turtles on the Screen to their initial state." +msgid "Reset all turtles on the screen to their initial state." msgstr "" msgid "positive integer, new width of canvas in pixels" @@ -2124,30 +1635,24 @@ msgid "" "outside the canvas before." msgstr "" -msgid "e.g. to search for an erroneously escaped turtle ;-)" -msgstr "" - -msgid "a number, x-coordinate of lower left corner of canvas" -msgstr "" - -msgid "a number, y-coordinate of lower left corner of canvas" -msgstr "" - -msgid "a number, x-coordinate of upper right corner of canvas" -msgstr "" - -msgid "a number, y-coordinate of upper right corner of canvas" +msgid "" +">>> screen.screensize()\n" +"(400, 300)\n" +">>> screen.screensize(2000,1500)\n" +">>> screen.screensize()\n" +"(2000, 1500)" msgstr "" -msgid "" -"Set up user-defined coordinate system and switch to mode \"world\" if " -"necessary. This performs a ``screen.reset()``. If mode \"world\" is " -"already active, all drawings are redrawn according to the new coordinates." +msgid "e.g. to search for an erroneously escaped turtle ;-)" msgstr "" msgid "" -"**ATTENTION**: in user-defined coordinate systems angles may appear " -"distorted." +"Set up a user-defined coordinate system. *llx* and *lly* are the x and y " +"coordinates of the lower left corner of the canvas. *urx* and *ury* are the " +"x and y coordinates of the upper right corner. Switch to mode \"world\" if " +"necessary, which performs a reset. If mode \"world\" is already active, all " +"drawings are redrawn according to the new coordinates. In user-defined " +"coordinate systems, angles may appear distorted, see :func:`mode`." msgstr "" msgid "" @@ -2160,10 +1665,14 @@ msgid "" "... left(45); fd(2) # a regular octagon" msgstr "" +msgid "Animation control" +msgstr "" + msgid "" -"Temporarily disable turtle animation. The code written inside the " -"``no_animation`` block will not be animated; once the code block is exited, " -"the drawing will appear." +"Temporarily turn off turtle animation. The code inside the :keyword:`with` " +"block is not animated. Once the block is exited, the drawing appears. This " +"is useful for drawing complex shapes where even the fastest speed setting is " +"too slow." msgstr "" msgid "" @@ -2173,16 +1682,13 @@ msgid "" "... rt(90)" msgstr "" -msgid "positive integer" +msgid "a nonnegative integer or ``None``" msgstr "" msgid "" -"Set or return the drawing *delay* in milliseconds. (This is approximately " -"the time interval between two consecutive canvas updates.) The longer the " -"drawing delay, the slower the animation." -msgstr "" - -msgid "Optional argument:" +"Return or set the drawing delay in milliseconds. This is approximately the " +"time interval between two consecutive canvas updates. The longer the drawing " +"delay, the slower the animation." msgstr "" msgid "" @@ -2193,15 +1699,13 @@ msgid "" "5" msgstr "" -msgid "nonnegative integer" -msgstr "" - msgid "" -"Turn turtle animation on/off and set delay for update drawings. If *n* is " -"given, only each n-th regular screen update is really performed. (Can be " -"used to accelerate the drawing of complex graphics.) When called without " -"arguments, returns the currently stored value of n. Second argument sets " -"delay value (see :func:`delay`)." +"Turn turtle animation on or off and set the drawing delay. If *n* is given, " +"only every n-th regular screen update is performed, which can be used to " +"speed up the drawing of complex graphics. If *n* is 0, animation is turned " +"off and the screen is only updated by calling :func:`update`. If *delay* is " +"given, it sets the drawing delay, see :func:`delay`. When called without " +"arguments, return the current value of *n*." msgstr "" msgid "" @@ -2219,6 +1723,9 @@ msgstr "" msgid "See also the RawTurtle/Turtle method :func:`speed`." msgstr "" +msgid "Using screen events" +msgstr "" + msgid "" "Set focus on TurtleScreen (in order to collect key-events). Dummy arguments " "are provided in order to be able to pass :func:`listen` to the onclick " @@ -2261,8 +1768,11 @@ msgid "" msgstr "" msgid "" -"Bind *fun* to mouse-click events on this screen. If *fun* is ``None``, " -"existing bindings are removed." +"Bind *fun* to mouse-click events on this screen. *fun* is called with the " +"coordinates of the clicked point on the canvas. If *fun* is ``None``, " +"existing bindings are removed. *btn* is the number of the mouse button and " +"defaults to 1, the left mouse button. If *add* is ``True``, a new binding is " +"added, otherwise it replaces a former binding." msgstr "" msgid "" @@ -2305,36 +1815,35 @@ msgid "" msgstr "" msgid "" -"Starts event loop - calling Tkinter's mainloop function. Must be the last " -"statement in a turtle graphics program. Must *not* be used if a script is " -"run from within IDLE in -n mode (No subprocess) - for interactive use of " -"turtle graphics. ::" +"Start the event loop by calling Tkinter's :meth:`~tkinter.Misc.mainloop` " +"method. Must be the last statement in a turtle graphics program. Must *not* " +"be used if a script is run from within IDLE in -n mode (see :ref:`idle-no-" +"subprocess`)." msgstr "" -msgid ">>> screen.mainloop()" +msgid "Input methods" msgstr "" -msgid "string" +msgid "a string" msgstr "" msgid "" -"Pop up a dialog window for input of a string. Parameter title is the title " -"of the dialog window, prompt is a text mostly describing what information to " -"input. Return the string input. If the dialog is canceled, return " -"``None``. ::" +"Pop up a dialog window for input of a string. *title* is the title of the " +"dialog window and *prompt* is a text describing what information to input. " +"Return the string entered. If the dialog is canceled, return ``None``. ::" msgstr "" msgid ">>> screen.textinput(\"NIM\", \"Name of first player:\")" msgstr "" msgid "" -"Pop up a dialog window for input of a number. title is the title of the " -"dialog window, prompt is a text mostly describing what numerical information " -"to input. default: default value, minval: minimum value for input, maxval: " -"maximum value for input. The number input must be in the range minval .. " -"maxval if these are given. If not, a hint is issued and the dialog remains " -"open for correction. Return the number input. If the dialog is canceled, " -"return ``None``. ::" +"Pop up a dialog window for input of a number. *title* is the title of the " +"dialog window and *prompt* is a text describing what numerical information " +"to input. *default* is the default value, *minval* and *maxval* are the " +"minimum and maximum values for input. If these are given, the number entered " +"must be between *minval* and *maxval*. If not, a hint is issued and the " +"dialog remains open for correction. Return the number entered. If the dialog " +"is canceled, return ``None``. ::" msgstr "" msgid "" @@ -2342,19 +1851,20 @@ msgid "" "maxval=10000)" msgstr "" -msgid "one of the strings \"standard\", \"logo\" or \"world\"" +msgid "Settings and special methods" msgstr "" msgid "" -"Set turtle mode (\"standard\", \"logo\" or \"world\") and perform reset. If " -"mode is not given, current mode is returned." +"Set the turtle mode and perform a reset. *mode* is one of the strings " +"\"standard\", \"logo\" or \"world\". If *mode* is not given, return the " +"current mode." msgstr "" msgid "" -"Mode \"standard\" is compatible with old :mod:`!turtle`. Mode \"logo\" is " -"compatible with most Logo turtle graphics. Mode \"world\" uses user-defined " -"\"world coordinates\". **Attention**: in this mode angles appear distorted " -"if ``x/y`` unit-ratio doesn't equal 1." +"Mode \"standard\" is compatible with the old :mod:`!turtle` module. Mode " +"\"logo\" is compatible with most Logo turtle graphics. Mode \"world\" uses " +"user-defined world coordinates, see :func:`setworldcoordinates`. In this " +"mode, angles appear distorted if the x and y units are not of equal length." msgstr "" msgid "Mode" @@ -2385,17 +1895,14 @@ msgid "clockwise" msgstr "" msgid "" -">>> mode(\"logo\") # resets turtle heading to north\n" +">>> mode(\"logo\") # resets turtle heading to north\n" ">>> mode()\n" "'logo'" msgstr "" -msgid "one of the values 1.0 or 255" -msgstr "" - msgid "" -"Return the colormode or set it to 1.0 or 255. Subsequently *r*, *g*, *b* " -"values of color triples have to be in the range 0..*cmode*." +"Return the colormode or set it to 1.0 or 255. After setting it, the *r*, *g* " +"and *b* values of color triples have to be between 0 and *cmode*." msgstr "" msgid "" @@ -2431,7 +1938,13 @@ msgid "" "['arrow', 'blank', 'circle', ..., 'turtle']" msgstr "" -msgid "There are four different ways to call this function:" +msgid "" +"a string, a tuple of pairs of numbers, a :class:`Shape` object or ``None``" +msgstr "" + +msgid "" +"Add a turtle shape to the TurtleScreen's shape list. It can be called in " +"four different ways:" msgstr "" msgid "" @@ -2442,11 +1955,6 @@ msgstr "" msgid ">>> screen.register_shape(\"turtle.gif\")" msgstr "" -msgid "" -"Image shapes *do not* rotate when turning the turtle, so they do not display " -"the heading of the turtle!" -msgstr "" - msgid "" "*name* is an arbitrary string and *shape* is the name of an image file (PNG, " "GIF, PGM, and PPM): Install the corresponding image shape. ::" @@ -2469,8 +1977,9 @@ msgid "" msgstr "" msgid "" -"Add a turtle shape to TurtleScreen's shapelist. Only thusly registered " -"shapes can be used by issuing the command ``shape(shapename)``." +"Image shapes do not rotate when turning the turtle, so they do not display " +"the heading of the turtle. To use a registered shape, call :func:`shape` " +"with its name." msgstr "" msgid "" @@ -2502,10 +2011,10 @@ msgid "" "640" msgstr "" -msgid "Methods specific to Screen, not inherited from TurtleScreen" +msgid "Screen-only methods" msgstr "" -msgid "Shut the turtlegraphics window." +msgid "Close the turtle graphics window." msgstr "" msgid "Bind ``bye()`` method to mouse clicks on the Screen." @@ -2514,239 +2023,373 @@ msgstr "" msgid "" "If the value \"using_IDLE\" in the configuration dictionary is ``False`` " "(default value), also enter mainloop. Remark: If IDLE with the ``-n`` " -"switch (no subprocess) is used, this value should be set to ``True`` in :" -"file:`turtle.cfg`. In this case IDLE's own mainloop is active also for the " -"client script." +"switch (no subprocess) is used, this value should be set to ``True`` " +"in :file:`turtle.cfg`. In this case IDLE's own mainloop is active also for " +"the client script." msgstr "" msgid "Save the current turtle drawing (and turtles) as a PostScript file." msgstr "" -msgid "the path of the saved PostScript file" +msgid "the path of the saved PostScript file" +msgstr "" + +msgid "" +"if ``False`` and there already exists a file with the given filename, then " +"the function will raise a ``FileExistsError``. If it is ``True``, the file " +"will be overwritten." +msgstr "" + +msgid "" +">>> screen.save(\"my_drawing.ps\")\n" +">>> screen.save(\"my_drawing.ps\", overwrite=True)" +msgstr "" + +msgid "" +"Set the size and position of the main window. Default values of arguments " +"are stored in the configuration dictionary and can be changed via " +"a :file:`turtle.cfg` file." +msgstr "" + +msgid "" +"if an integer, a size in pixels, if a float, a fraction of the screen; " +"default is 50% of screen" +msgstr "" + +msgid "" +"if an integer, the height in pixels, if a float, a fraction of the screen; " +"default is 75% of screen" +msgstr "" + +msgid "" +"if positive, starting position in pixels from the left edge of the screen, " +"if negative from the right edge, if ``None``, center window horizontally" +msgstr "" + +msgid "" +"if positive, starting position in pixels from the top edge of the screen, if " +"negative from the bottom edge, if ``None``, center window vertically" +msgstr "" + +msgid "" +">>> screen.setup (width=200, height=200, startx=0, starty=0)\n" +">>> # sets window to 200x200 pixels, in upper left of screen\n" +">>> screen.setup(width=.75, height=0.5, startx=None, starty=None)\n" +">>> # sets window to 75% of screen by 50% of screen and centers" +msgstr "" + +msgid "" +"Set the title of the turtle window to *titlestring*. The title is shown in " +"the title bar of the turtle graphics window." +msgstr "" + +msgid ">>> screen.title(\"Welcome to the turtle zoo!\")" +msgstr "" + +msgid "Public classes" +msgstr "" + +msgid "" +"a :class:`!tkinter.Canvas`, a :class:`ScrolledCanvas` or " +"a :class:`TurtleScreen`" +msgstr "" + +msgid "" +"Create a turtle. The turtle has all methods described above as \"methods of " +"Turtle/RawTurtle\"." +msgstr "" + +msgid "" +"Subclass of RawTurtle, has the same interface but draws on a " +"default :class:`Screen` object created automatically when needed for the " +"first time." +msgstr "" + +msgid "a :class:`!tkinter.Canvas`" +msgstr "" + +msgid "" +"Provides screen oriented methods like :func:`bgcolor` etc. that are " +"described above." +msgstr "" + +msgid "" +"Subclass of :class:`TurtleScreen`, with :ref:`four methods added " +"`. Calling ``Screen()`` returns the single screen object. If " +"it does not exist yet, it is created. Otherwise the existing one is returned." +msgstr "" + +msgid "" +"some Tkinter widget to contain the ScrolledCanvas, i.e. a Tkinter-canvas " +"with scrollbars added" +msgstr "" + +msgid "" +"Used by class Screen, which thus automatically provides a ScrolledCanvas as " +"playground for the turtles." +msgstr "" + +msgid "depends on *type_*" msgstr "" msgid "" -"if ``False`` and there already exists a file with the given filename, then " -"the function will raise a ``FileExistsError``. If it is ``True``, the file " -"will be overwritten." +"Data structure modeling shapes. *type_* is one of the strings \"polygon\", " +"\"image\" or \"compound\". What *data* must be depends on *type_*: for " +"\"polygon\" a tuple of pairs of coordinates, for \"image\" an image (only " +"used internally), and for \"compound\" ``None``, as a compound shape is " +"built up using the :meth:`addcomponent` method." msgstr "" -msgid "" -">>> screen.save(\"my_drawing.ps\")\n" -">>> screen.save(\"my_drawing.ps\", overwrite=True)" +msgid "a tuple of pairs of numbers" msgstr "" -msgid "" -"Set the size and position of the main window. Default values of arguments " -"are stored in the configuration dictionary and can be changed via a :file:" -"`turtle.cfg` file." +msgid "a color" msgstr "" -msgid "" -"if an integer, a size in pixels, if a float, a fraction of the screen; " -"default is 50% of screen" +msgid "a color or ``None``" msgstr "" msgid "" -"if an integer, the height in pixels, if a float, a fraction of the screen; " -"default is 75% of screen" +"Add a component to a shape of type \"compound\". *poly* is a polygon, a " +"tuple of pairs of numbers. *fill* is the color the polygon is filled with " +"and *outline* is the color of its outline. If *outline* is not given, *fill* " +"is used for it as well." msgstr "" -msgid "" -"if positive, starting position in pixels from the left edge of the screen, " -"if negative from the right edge, if ``None``, center window horizontally" +msgid "Example:" msgstr "" msgid "" -"if positive, starting position in pixels from the top edge of the screen, if " -"negative from the bottom edge, if ``None``, center window vertically" +">>> poly = ((0,0), (10,-5), (0,10), (-10,-5))\n" +">>> s = Shape(\"compound\")\n" +">>> s.addcomponent(poly, \"red\", \"blue\")\n" +">>> # ... add more components and then use register_shape()" msgstr "" -msgid "" -">>> screen.setup (width=200, height=200, startx=0, starty=0)\n" -">>> # sets window to 200x200 pixels, in upper left of screen\n" -">>> screen.setup(width=.75, height=0.5, startx=None, starty=None)\n" -">>> # sets window to 75% of screen by 50% of screen and centers" +msgid "See :ref:`compoundshapes`." msgstr "" -msgid "a string that is shown in the titlebar of the turtle graphics window" +msgid "" +"A two-dimensional vector class, used as a helper class for implementing " +"turtle graphics. May be useful for turtle graphics programs too. Derived " +"from tuple, so a vector is a tuple!" msgstr "" -msgid "Set title of turtle window to *titlestring*." +msgid "Provides (for *a*, *b* vectors, *k* number):" msgstr "" -msgid ">>> screen.title(\"Welcome to the turtle zoo!\")" +msgid "``a + b`` vector addition" msgstr "" -msgid "Public classes" +msgid "``a - b`` vector subtraction" msgstr "" -msgid "" -"a :class:`!tkinter.Canvas`, a :class:`ScrolledCanvas` or a :class:" -"`TurtleScreen`" +msgid "``a * b`` inner product" msgstr "" -msgid "" -"Create a turtle. The turtle has all methods described above as \"methods of " -"Turtle/RawTurtle\"." +msgid "``k * a`` and ``a * k`` multiplication with scalar" msgstr "" -msgid "" -"Subclass of RawTurtle, has the same interface but draws on a default :class:" -"`Screen` object created automatically when needed for the first time." +msgid "``abs(a)`` absolute value of a" msgstr "" -msgid "a :class:`!tkinter.Canvas`" +msgid "``a.rotate(angle)`` rotation" msgstr "" -msgid "" -"Provides screen oriented methods like :func:`bgcolor` etc. that are " -"described above." +msgid "Exceptions" msgstr "" -msgid "" -"Subclass of TurtleScreen, with :ref:`four methods added `." +msgid "The :mod:`!turtle` module defines the following exception:" msgstr "" msgid "" -"some Tkinter widget to contain the ScrolledCanvas, i.e. a Tkinter-canvas " -"with scrollbars added" +"Raised for invalid arguments or operations. For example, a malformed color " +"string:" msgstr "" msgid "" -"Used by class Screen, which thus automatically provides a ScrolledCanvas as " -"playground for the turtles." +">>> turtle.color(\"blau\")\n" +"Traceback (most recent call last):\n" +" ...\n" +"turtle.TurtleGraphicsError: bad color string: blau" msgstr "" -msgid "one of the strings \"polygon\", \"image\", \"compound\"" +msgid "How-to guides" msgstr "" -msgid "" -"Data structure modeling shapes. The pair ``(type_, data)`` must follow this " -"specification:" +msgid "This section covers some typical turtle use-cases and approaches." msgstr "" -msgid "*type_*" +msgid "How to automatically begin and end filling" msgstr "" -msgid "*data*" +msgid "" +"Starting with Python 3.14, you can use the :func:`fill` :term:`context " +"manager` instead of :func:`begin_fill` and :func:`end_fill` to automatically " +"begin and end fill. Here is an example::" msgstr "" -msgid "\"polygon\"" +msgid "" +"with fill():\n" +" for i in range(4):\n" +" forward(100)\n" +" right(90)\n" +"\n" +"forward(200)" msgstr "" -msgid "a polygon-tuple, i.e. a tuple of pairs of coordinates" +msgid "The code above is equivalent to::" msgstr "" -msgid "\"image\"" +msgid "" +"begin_fill()\n" +"for i in range(4):\n" +" forward(100)\n" +" right(90)\n" +"end_fill()\n" +"\n" +"forward(200)" msgstr "" -msgid "an image (in this form only used internally!)" +msgid "How to use compound shapes" msgstr "" -msgid "\"compound\"" +msgid "" +"To use compound turtle shapes, which consist of several polygons of " +"different color, you must use the helper class :class:`Shape` explicitly as " +"described below:" msgstr "" -msgid "" -"``None`` (a compound shape has to be constructed using the :meth:" -"`addcomponent` method)" +msgid "Create an empty :class:`Shape` object of type \"compound\"." msgstr "" -msgid "a polygon, i.e. a tuple of pairs of numbers" +msgid "" +"Add as many components to this object as desired, using " +"the :meth:`~Shape.addcomponent` method." msgstr "" -msgid "a color the *poly* will be filled with" +msgid "For example:" msgstr "" -msgid "a color for the poly's outline (if given)" +msgid "" +">>> s = Shape(\"compound\")\n" +">>> poly1 = ((0,0), (10,-5), (0,10), (-10,-5))\n" +">>> s.addcomponent(poly1, \"red\", \"blue\")\n" +">>> poly2 = ((0,0), (10,-5), (-10,-5))\n" +">>> s.addcomponent(poly2, \"blue\", \"red\")" msgstr "" -msgid "Example:" +msgid "Now add the Shape to the Screen's shapelist and use it:" msgstr "" msgid "" -">>> poly = ((0,0),(10,-5),(0,10),(-10,-5))\n" -">>> s = Shape(\"compound\")\n" -">>> s.addcomponent(poly, \"red\", \"blue\")\n" -">>> # ... add more components and then use register_shape()" +">>> register_shape(\"myshape\", s)\n" +">>> shape(\"myshape\")" msgstr "" -msgid "See :ref:`compoundshapes`." +msgid "How to use the ``turtle`` module namespace" msgstr "" msgid "" -"A two-dimensional vector class, used as a helper class for implementing " -"turtle graphics. May be useful for turtle graphics programs too. Derived " -"from tuple, so a vector is a tuple!" +"Using ``from turtle import *`` is convenient - but be warned that it imports " +"a rather large collection of objects, and if you're doing anything but " +"turtle graphics you run the risk of a name conflict (this becomes even more " +"an issue if you're using turtle graphics in a script where other modules " +"might be imported)." msgstr "" -msgid "Provides (for *a*, *b* vectors, *k* number):" +msgid "" +"The solution is to use ``import turtle`` - ``fd()`` becomes ``turtle.fd()``, " +"``width()`` becomes ``turtle.width()`` and so on. (If typing \"turtle\" over " +"and over again becomes tedious, use for example ``import turtle as t`` " +"instead.)" msgstr "" -msgid "``a + b`` vector addition" +msgid "How to use turtle graphics in a script" msgstr "" -msgid "``a - b`` vector subtraction" +msgid "" +"It's recommended to use the ``turtle`` module namespace as described " +"immediately above, for example::" msgstr "" -msgid "``a * b`` inner product" +msgid "" +"import turtle as t\n" +"from random import random\n" +"\n" +"for i in range(100):\n" +" steps = int(random() * 100)\n" +" angle = int(random() * 360)\n" +" t.right(angle)\n" +" t.fd(steps)" msgstr "" -msgid "``k * a`` and ``a * k`` multiplication with scalar" +msgid "" +"Another step is also required though - as soon as the script ends, Python " +"will also close the turtle's window. Add::" msgstr "" -msgid "``abs(a)`` absolute value of a" +msgid "t.mainloop()" msgstr "" -msgid "``a.rotate(angle)`` rotation" +msgid "" +"to the end of the script. The script will now wait to be dismissed and will " +"not exit until it is terminated, for example by closing the turtle graphics " +"window." msgstr "" -msgid "Explanation" +msgid "How to use object-oriented turtle graphics" msgstr "" msgid "" -"A turtle object draws on a screen object, and there a number of key classes " -"in the turtle object-oriented interface that can be used to create them and " -"relate them to each other." +":ref:`Explanation of the object-oriented interface `" msgstr "" msgid "" -"A :class:`Turtle` instance will automatically create a :class:`Screen` " -"instance if one is not already present." +"Other than for very basic introductory purposes, or for trying things out as " +"quickly as possible, it's more usual and much more powerful to use the " +"object-oriented approach to turtle graphics. For example, this allows " +"multiple turtles on screen at once." msgstr "" msgid "" -"``Turtle`` is a subclass of :class:`RawTurtle`, which *doesn't* " -"automatically create a drawing surface - a *canvas* will need to be provided " -"or created for it. The *canvas* can be a :class:`!tkinter.Canvas`, :class:" -"`ScrolledCanvas` or :class:`TurtleScreen`." +"In this approach, the various turtle commands are methods of objects (mostly " +"of ``Turtle`` objects). You *can* use the object-oriented approach in the " +"shell, but it would be more typical in a Python script." msgstr "" -msgid "" -":class:`TurtleScreen` is the basic drawing surface for a turtle. :class:" -"`Screen` is a subclass of ``TurtleScreen``, and includes :ref:`some " -"additional methods ` for managing its appearance (including " -"size and title) and behaviour. ``TurtleScreen``'s constructor needs a :class:" -"`!tkinter.Canvas` or a :class:`ScrolledCanvas` as an argument." +msgid "The example above then becomes::" msgstr "" msgid "" -"The functional interface for turtle graphics uses the various methods of " -"``Turtle`` and ``TurtleScreen``/``Screen``. Behind the scenes, a screen " -"object is automatically created whenever a function derived from a " -"``Screen`` method is called. Similarly, a turtle object is automatically " -"created whenever any of the functions derived from a Turtle method is called." +"from turtle import Turtle\n" +"from random import random\n" +"\n" +"t = Turtle()\n" +"for i in range(100):\n" +" steps = int(random() * 100)\n" +" angle = int(random() * 360)\n" +" t.right(angle)\n" +" t.fd(steps)\n" +"\n" +"t.screen.mainloop()" msgstr "" msgid "" -"To use multiple turtles on a screen, the object-oriented interface must be " -"used." +"Note the last line. ``t.screen`` is an instance of the :class:`Screen` that " +"a Turtle instance exists on; it's created automatically along with the " +"turtle." +msgstr "" + +msgid "The turtle's screen can be customised, for example::" msgstr "" -msgid "Help and configuration" +msgid "" +"t.screen.title('Object-oriented turtle demo')\n" +"t.screen.bgcolor(\"orange\")" msgstr "" -msgid "How to use help" +msgid "How to use :func:`!help`" msgstr "" msgid "" @@ -2926,8 +2569,8 @@ msgid "" msgstr "" msgid "" -"Line 5 and 6 correspond to the arguments of the method :func:`Screen." -"screensize `." +"Line 5 and 6 correspond to the arguments of the " +"method :func:`Screen.screensize `." msgstr "" msgid "" @@ -2947,9 +2590,10 @@ msgid "" msgstr "" msgid "" -"If you set e.g. ``language = italian`` the docstringdict :file:" -"`turtle_docstringdict_italian.py` will be loaded at import time (if present " -"on the import path, e.g. in the same directory as :mod:`!turtle`)." +"If you set e.g. ``language = italian`` the " +"docstringdict :file:`turtle_docstringdict_italian.py` will be loaded at " +"import time (if present on the import path, e.g. in the same directory " +"as :mod:`!turtle`)." msgstr "" msgid "" @@ -2977,6 +2621,49 @@ msgid "" "(preferably not from within the demo-viewer)." msgstr "" +msgid "Explanation" +msgstr "" + +msgid "" +"A turtle object draws on a screen object, and there a number of key classes " +"in the turtle object-oriented interface that can be used to create them and " +"relate them to each other." +msgstr "" + +msgid "" +"A :class:`Turtle` instance will automatically create a :class:`Screen` " +"instance if one is not already present." +msgstr "" + +msgid "" +"``Turtle`` is a subclass of :class:`RawTurtle`, which *doesn't* " +"automatically create a drawing surface - a *canvas* will need to be provided " +"or created for it. The *canvas* can be a :class:`!" +"tkinter.Canvas`, :class:`ScrolledCanvas` or :class:`TurtleScreen`." +msgstr "" + +msgid "" +":class:`TurtleScreen` is the basic drawing surface for a " +"turtle. :class:`Screen` is a subclass of ``TurtleScreen``, and " +"includes :ref:`some additional methods ` for managing its " +"appearance (including size and title) and behaviour. ``TurtleScreen``'s " +"constructor needs a :class:`!tkinter.Canvas` or a :class:`ScrolledCanvas` as " +"an argument." +msgstr "" + +msgid "" +"The functional interface for turtle graphics uses the various methods of " +"``Turtle`` and ``TurtleScreen``/``Screen``. Behind the scenes, a screen " +"object is automatically created whenever a function derived from a " +"``Screen`` method is called. Similarly, a turtle object is automatically " +"created whenever any of the functions derived from a Turtle method is called." +msgstr "" + +msgid "" +"To use multiple turtles on a screen, the object-oriented interface must be " +"used." +msgstr "" + msgid ":mod:`!turtledemo` --- Demo scripts" msgstr "" @@ -3061,6 +2748,9 @@ msgstr "" msgid "experiment with r, g, b" msgstr "" +msgid ":func:`ondrag`" +msgstr "" + msgid "``forest``" msgstr "" @@ -3113,6 +2803,9 @@ msgstr "" msgid "super minimalistic drawing program" msgstr "" +msgid ":func:`onclick`" +msgstr "" + msgid "``peace``" msgstr "" @@ -3128,6 +2821,9 @@ msgstr "" msgid "aperiodic tiling with kites and darts" msgstr "" +msgid ":func:`stamp`" +msgstr "" + msgid "``planet_and_moon``" msgstr "" @@ -3153,8 +2849,8 @@ msgid "dancing turtles rotating pairwise in opposite direction" msgstr "" msgid "" -"compound shapes, :func:`clone` :func:`shapesize`, :func:`tilt`, :func:" -"`get_shapepoly`, :func:`update`" +"compound " +"shapes, :func:`clone` :func:`shapesize`, :func:`tilt`, :func:`get_shapepoly`, :func:`update`" msgstr "" msgid "``sorting_animate``" @@ -3172,6 +2868,9 @@ msgstr "" msgid "a (graphical) breadth first tree (using generators)" msgstr "" +msgid ":func:`clone`" +msgstr "" + msgid "``two_canvases``" msgstr "" @@ -3187,60 +2886,8 @@ msgstr "" msgid "another elementary example" msgstr "" -msgid "Have fun!" -msgstr "" - -msgid "Changes since Python 2.6" -msgstr "" - -msgid "" -"The methods :func:`Turtle.tracer `, :func:`Turtle.window_width " -"` and :func:`Turtle.window_height ` have been " -"eliminated. Methods with these names and functionality are now available " -"only as methods of :class:`Screen`. The functions derived from these remain " -"available. (In fact already in Python 2.6 these methods were merely " -"duplications of the corresponding :class:`TurtleScreen`/:class:`Screen` " -"methods.)" -msgstr "" - -msgid "" -"The method :func:`!Turtle.fill` has been eliminated. The behaviour of :func:" -"`begin_fill` and :func:`end_fill` have changed slightly: now every filling " -"process must be completed with an ``end_fill()`` call." -msgstr "" - -msgid "" -"A method :func:`Turtle.filling ` has been added. It returns a " -"boolean value: ``True`` if a filling process is under way, ``False`` " -"otherwise. This behaviour corresponds to a ``fill()`` call without arguments " -"in Python 2.6." -msgstr "" - -msgid "Changes since Python 3.0" -msgstr "" - -msgid "" -"The :class:`Turtle` methods :func:`shearfactor`, :func:`shapetransform` and :" -"func:`get_shapepoly` have been added. Thus the full range of regular linear " -"transforms is now available for transforming turtle shapes. :func:" -"`tiltangle` has been enhanced in functionality: it now can be used to get or " -"set the tilt angle." -msgstr "" - -msgid "" -"The :class:`Screen` method :func:`onkeypress` has been added as a complement " -"to :func:`onkey`. As the latter binds actions to the key release event, an " -"alias: :func:`onkeyrelease` was also added for it." -msgstr "" - -msgid "" -"The method :func:`Screen.mainloop ` has been added, so there is no " -"longer a need to use the standalone :func:`mainloop` function when working " -"with :class:`Screen` and :class:`Turtle` objects." +msgid ":func:`circle`" msgstr "" -msgid "" -"Two input methods have been added: :func:`Screen.textinput ` and :" -"func:`Screen.numinput `. These pop up input dialogs and return " -"strings and numbers respectively." +msgid "Have fun!" msgstr "" diff --git a/library/types.po b/library/types.po index 873713c..57fbbb8 100644 --- a/library/types.po +++ b/library/types.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,8 +35,8 @@ msgstr "" msgid "" "It also defines names for some object types that are used by the standard " -"Python interpreter, but not exposed as builtins like :class:`int` or :class:" -"`str` are." +"Python interpreter, but not exposed as builtins like :class:`int` " +"or :class:`str` are." msgstr "" msgid "" @@ -105,12 +105,12 @@ msgid "Resolve MRO entries dynamically as specified by :pep:`560`." msgstr "" msgid "" -"This function looks for items in *bases* that are not instances of :class:" -"`type`, and returns a tuple where each such object that has an :meth:" -"`~object.__mro_entries__` method is replaced with an unpacked result of " -"calling this method. If a *bases* item is an instance of :class:`type`, or " -"it doesn't have an :meth:`!__mro_entries__` method, then it is included in " -"the return tuple unchanged." +"This function looks for items in *bases* that are not instances " +"of :class:`type`, and returns a tuple where each such object that has " +"an :meth:`~object.__mro_entries__` method is replaced with an unpacked " +"result of calling this method. If a *bases* item is an instance " +"of :class:`type`, or it doesn't have an :meth:`!__mro_entries__` method, " +"then it is included in the return tuple unchanged." msgstr "" msgid "" @@ -186,8 +186,8 @@ msgid "The type of :data:`None`." msgstr "" msgid "" -"The type of user-defined functions and functions created by :keyword:" -"`lambda` expressions." +"The type of user-defined functions and functions created " +"by :keyword:`lambda` expressions." msgstr "" msgid "" @@ -216,8 +216,8 @@ msgid "" msgstr "" msgid "" -"The type of :ref:`code objects ` such as returned by :func:" -"`compile`." +"The type of :ref:`code objects ` such as returned " +"by :func:`compile`." msgstr "" msgid "" @@ -247,8 +247,8 @@ msgid "" msgstr "" msgid "" -"The type of methods of some built-in data types and base classes such as :" -"meth:`object.__init__` or :meth:`object.__lt__`." +"The type of methods of some built-in data types and base classes such " +"as :meth:`object.__init__` or :meth:`object.__lt__`." msgstr "" msgid "" @@ -337,8 +337,8 @@ msgid "This is now an alias for :class:`typing.Union`." msgstr "" msgid "" -"The type of traceback objects such as found in ``sys.exception()." -"__traceback__``." +"The type of traceback objects such as found in " +"``sys.exception().__traceback__``." msgstr "" msgid "" @@ -348,13 +348,13 @@ msgid "" msgstr "" msgid "" -"The type of :ref:`frame objects ` such as found in :attr:`tb." -"tb_frame ` if ``tb`` is a traceback object." +"The type of :ref:`frame objects ` such as found " +"in :attr:`tb.tb_frame ` if ``tb`` is a traceback object." msgstr "" msgid "" -"The type of frame locals proxy objects, as found on the :attr:`frame." -"f_locals` attribute." +"The type of frame locals proxy objects, as found on " +"the :attr:`frame.f_locals` attribute." msgstr "" msgid ":pep:`667`" @@ -370,6 +370,9 @@ msgstr "" msgid ":pep:`810`" msgstr "" +msgid "Reify the lazy import and return the \"real\" object being imported." +msgstr "" + msgid "" "The type of objects defined in extension modules with ``PyGetSetDef``, such " "as :attr:`FrameType.f_locals ` or ``array.array.typecode``. " @@ -420,8 +423,8 @@ msgid "" msgstr "" msgid "" -"Return the item of the underlying mapping with key *key*. Raises a :exc:" -"`KeyError` if *key* is not in the underlying mapping." +"Return the item of the underlying mapping with key *key*. Raises " +"a :exc:`KeyError` if *key* is not in the underlying mapping." msgstr "" msgid "" @@ -474,13 +477,14 @@ msgid "" msgstr "" msgid "" -":py:class:`SimpleNamespace` objects may be initialized in the same way as :" -"class:`dict`: either with keyword arguments, with a single positional " +":py:class:`SimpleNamespace` objects may be initialized in the same way " +"as :class:`dict`: either with keyword arguments, with a single positional " "argument, or with both. When initialized with keyword arguments, those are " "directly added to the underlying namespace. Alternatively, when initialized " "with a positional argument, the underlying namespace will be updated with " -"key-value pairs from that argument (either a mapping object or an :term:" -"`iterable` object producing key-value pairs). All such keys must be strings." +"key-value pairs from that argument (either a mapping object or " +"an :term:`iterable` object producing key-value pairs). All such keys must be " +"strings." msgstr "" msgid "The type is roughly equivalent to the following code::" @@ -541,8 +545,8 @@ msgid "Coroutine Utility Functions" msgstr "" msgid "" -"This function transforms a :term:`generator` function into a :term:" -"`coroutine function` which returns a generator-based coroutine. The " +"This function transforms a :term:`generator` function into " +"a :term:`coroutine function` which returns a generator-based coroutine. The " "generator-based coroutine is still a :term:`generator iterator`, but is also " "considered to be a :term:`coroutine` object and is :term:`awaitable`. " "However, it may not necessarily implement the :meth:`~object.__await__` " diff --git a/library/typing.po b/library/typing.po index d40ae70..936fc06 100644 --- a/library/typing.po +++ b/library/typing.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,8 +48,8 @@ msgstr "" msgid "" "The function ``surface_area_of_cube`` takes an argument expected to be an " "instance of :class:`float`, as indicated by the :term:`type hint` " -"``edge_length: float``. The function is expected to return an instance of :" -"class:`str`, as indicated by the ``-> str`` hint." +"``edge_length: float``. The function is expected to return an instance " +"of :class:`str`, as indicated by the ``-> str`` hint." msgstr "" msgid "" @@ -59,14 +59,14 @@ msgid "" msgstr "" msgid "" -"New features are frequently added to the ``typing`` module. The :pypi:" -"`typing_extensions` package provides backports of these new features to " -"older versions of Python." +"New features are frequently added to the ``typing`` module. " +"The :pypi:`typing_extensions` package provides backports of these new " +"features to older versions of Python." msgstr "" msgid "" -"`Typing cheat sheet `_" +"`Typing cheat sheet `_" msgstr "" msgid "A quick overview of type hints (hosted at the mypy docs)" @@ -96,8 +96,8 @@ msgstr "" msgid "" "The canonical, up-to-date specification of the Python type system can be " -"found at `Specification for the Python type system `_." +"found at `Specification for the Python type system `_." msgstr "" msgid "Type aliases" @@ -278,10 +278,11 @@ msgid "Annotating callable objects" msgstr "" msgid "" -"Functions -- or other :term:`callable` objects -- can be annotated using :" -"class:`collections.abc.Callable` or deprecated :data:`typing.Callable`. " -"``Callable[[int], str]`` signifies a function that takes a single parameter " -"of type :class:`int` and returns a :class:`str`." +"Functions -- or other :term:`callable` objects -- can be annotated " +"using :class:`collections.abc.Callable` or " +"deprecated :data:`typing.Callable`. ``Callable[[int], str]`` signifies a " +"function that takes a single parameter of type :class:`int` and returns " +"a :class:`str`." msgstr "" msgid "For example:" @@ -328,8 +329,8 @@ msgid "" "``Callable`` cannot express complex signatures such as functions that take a " "variadic number of arguments, :ref:`overloaded functions `, or " "functions that have keyword-only parameters. However, these signatures can " -"be expressed by defining a :class:`Protocol` class with a :meth:`~object." -"__call__` method:" +"be expressed by defining a :class:`Protocol` class with " +"a :meth:`~object.__call__` method:" msgstr "" msgid "" @@ -366,8 +367,8 @@ msgid "" msgstr "" msgid "" -"``Callable`` now supports :class:`ParamSpec` and :data:`Concatenate`. See :" -"pep:`612` for more details." +"``Callable`` now supports :class:`ParamSpec` and :data:`Concatenate`. " +"See :pep:`612` for more details." msgstr "" msgid "" @@ -451,16 +452,17 @@ msgstr "" msgid "" ":class:`list` only accepts one type argument, so a type checker would emit " -"an error on the ``y`` assignment above. Similarly, :class:`~collections.abc." -"Mapping` only accepts two type arguments: the first indicates the type of " -"the keys, and the second indicates the type of the values." +"an error on the ``y`` assignment above. " +"Similarly, :class:`~collections.abc.Mapping` only accepts two type " +"arguments: the first indicates the type of the keys, and the second " +"indicates the type of the values." msgstr "" msgid "" "Unlike most other Python containers, however, it is common in idiomatic " "Python code for tuples to have elements which are not all of the same type. " -"For this reason, tuples are special-cased in Python's typing system. :class:" -"`tuple` accepts *any number* of type arguments::" +"For this reason, tuples are special-cased in Python's typing " +"system. :class:`tuple` accepts *any number* of type arguments::" msgstr "" msgid "" @@ -508,9 +510,10 @@ msgstr "" msgid "" "A variable annotated with ``C`` may accept a value of type ``C``. In " -"contrast, a variable annotated with ``type[C]`` (or deprecated :class:" -"`typing.Type[C] `) may accept values that are classes themselves -- " -"specifically, it will accept the *class object* of ``C``. For example::" +"contrast, a variable annotated with ``type[C]`` (or " +"deprecated :class:`typing.Type[C] `) may accept values that are " +"classes themselves -- specifically, it will accept the *class object* of " +"``C``. For example::" msgstr "" msgid "" @@ -541,8 +544,9 @@ msgid "" msgstr "" msgid "" -"The only legal parameters for :class:`type` are classes, :data:`Any`, :ref:" -"`type variables `, and unions of any of these types. For example::" +"The only legal parameters for :class:`type` are " +"classes, :data:`Any`, :ref:`type variables `, and unions of any of " +"these types. For example::" msgstr "" msgid "" @@ -556,17 +560,17 @@ msgid "" msgstr "" msgid "" -"``type[Any]`` is equivalent to :class:`type`, which is the root of Python's :" -"ref:`metaclass hierarchy `." +"``type[Any]`` is equivalent to :class:`type`, which is the root of " +"Python's :ref:`metaclass hierarchy `." msgstr "" msgid "Annotating generators and coroutines" msgstr "" msgid "" -"A generator can be annotated using the generic type :class:" -"`Generator[YieldType, SendType, ReturnType] `. " -"For example::" +"A generator can be annotated using the generic " +"type :class:`Generator[YieldType, SendType, ReturnType] " +"`. For example::" msgstr "" msgid "" @@ -606,8 +610,9 @@ msgstr "" msgid "" "Simple generators that only ever yield values can also be annotated as " -"having a return type of either :class:`Iterable[YieldType] ` or :class:`Iterator[YieldType] `::" +"having a return type of either :class:`Iterable[YieldType] " +"` or :class:`Iterator[YieldType] " +"`::" msgstr "" msgid "" @@ -620,8 +625,8 @@ msgstr "" msgid "" "Async generators are handled in a similar fashion, but don't expect a " "``ReturnType`` type argument (:class:`AsyncGenerator[YieldType, SendType] " -"`). The ``SendType`` argument defaults to :" -"const:`!None`, so the following definitions are equivalent::" +"`). The ``SendType`` argument defaults " +"to :const:`!None`, so the following definitions are equivalent::" msgstr "" msgid "" @@ -637,9 +642,9 @@ msgid "" msgstr "" msgid "" -"As in the synchronous case, :class:`AsyncIterable[YieldType] ` and :class:`AsyncIterator[YieldType] ` are available as well::" +"As in the synchronous case, :class:`AsyncIterable[YieldType] " +"` and :class:`AsyncIterator[YieldType] " +"` are available as well::" msgstr "" msgid "" @@ -698,8 +703,8 @@ msgstr "" msgid "" "Generic classes implicitly inherit from :class:`Generic`. For compatibility " -"with Python 3.11 and lower, it is also possible to inherit explicitly from :" -"class:`Generic` to indicate a generic class::" +"with Python 3.11 and lower, it is also possible to inherit explicitly " +"from :class:`Generic` to indicate a generic class::" msgstr "" msgid "" @@ -725,8 +730,8 @@ msgid "" msgstr "" msgid "" -"A generic type can have any number of type variables. All varieties of :" -"class:`TypeVar` are permissible as parameters for a generic type::" +"A generic type can have any number of type variables. All varieties " +"of :class:`TypeVar` are permissible as parameters for a generic type::" msgstr "" msgid "" @@ -893,8 +898,8 @@ msgid "" msgstr "" msgid "" -":class:`Generic` can now be parameterized over parameter expressions. See :" -"class:`ParamSpec` and :pep:`612` for more details." +":class:`Generic` can now be parameterized over parameter expressions. " +"See :class:`ParamSpec` and :pep:`612` for more details." msgstr "" msgid "" @@ -936,11 +941,11 @@ msgid "" msgstr "" msgid "" -"Notice that no type checking is performed when assigning a value of type :" -"data:`Any` to a more precise type. For example, the static type checker did " -"not report an error when assigning ``a`` to ``s`` even though ``s`` was " -"declared to be of type :class:`str` and receives an :class:`int` value at " -"runtime!" +"Notice that no type checking is performed when assigning a value of " +"type :data:`Any` to a more precise type. For example, the static type " +"checker did not report an error when assigning ``a`` to ``s`` even though " +"``s`` was declared to be of type :class:`str` and receives an :class:`int` " +"value at runtime!" msgstr "" msgid "" @@ -1014,11 +1019,11 @@ msgid "" msgstr "" msgid "" -"This requirement previously also applied to abstract base classes, such as :" -"class:`~collections.abc.Iterable`. The problem with this approach is that a " -"class had to be explicitly marked to support them, which is unpythonic and " -"unlike what one would normally do in idiomatic dynamically typed Python " -"code. For example, this conforms to :pep:`484`::" +"This requirement previously also applied to abstract base classes, such " +"as :class:`~collections.abc.Iterable`. The problem with this approach is " +"that a class had to be explicitly marked to support them, which is " +"unpythonic and unlike what one would normally do in idiomatic dynamically " +"typed Python code. For example, this conforms to :pep:`484`::" msgstr "" msgid "" @@ -1117,9 +1122,10 @@ msgid "" msgstr "" msgid "" -"Note that, despite its name, ``AnyStr`` has nothing to do with the :class:" -"`Any` type, nor does it mean \"any string\". In particular, ``AnyStr`` and " -"``str | bytes`` are different from each other and have different use cases::" +"Note that, despite its name, ``AnyStr`` has nothing to do with " +"the :class:`Any` type, nor does it mean \"any string\". In particular, " +"``AnyStr`` and ``str | bytes`` are different from each other and have " +"different use cases::" msgstr "" msgid "" @@ -1136,8 +1142,8 @@ msgstr "" msgid "" "Deprecated in favor of the new :ref:`type parameter syntax `. " -"Use ``class A[T: (str, bytes)]: ...`` instead of importing ``AnyStr``. See :" -"pep:`695` for more details." +"Use ``class A[T: (str, bytes)]: ...`` instead of importing ``AnyStr``. " +"See :pep:`695` for more details." msgstr "" msgid "" @@ -1185,13 +1191,13 @@ msgid "See :pep:`675` for more details." msgstr "" msgid "" -":data:`!Never` and :data:`!NoReturn` represent the `bottom type `_, a type that has no members." +":data:`!Never` and :data:`!NoReturn` represent the `bottom type `_, a type that has no members." msgstr "" msgid "" -"They can be used to indicate that a function never returns, such as :func:" -"`sys.exit`::" +"They can be used to indicate that a function never returns, such " +"as :func:`sys.exit`::" msgstr "" msgid "" @@ -1344,11 +1350,11 @@ msgstr "" msgid "" ":data:`TypeAlias` is deprecated in favor of the :keyword:`type` statement, " "which creates instances of :class:`TypeAliasType` and which natively " -"supports forward references. Note that while :data:`TypeAlias` and :class:" -"`TypeAliasType` serve similar purposes and have similar names, they are " -"distinct and the latter is not the type of the former. Removal of :data:" -"`TypeAlias` is not currently planned, but users are encouraged to migrate " -"to :keyword:`type` statements." +"supports forward references. Note that while :data:`TypeAlias` " +"and :class:`TypeAliasType` serve similar purposes and have similar names, " +"they are distinct and the latter is not the type of the former. Removal " +"of :data:`TypeAlias` is not currently planned, but users are encouraged to " +"migrate to :keyword:`type` statements." msgstr "" msgid "Special forms" @@ -1468,19 +1474,19 @@ msgid "" "adds, removes, or transforms parameters of another callable. Usage is in " "the form ``Concatenate[Arg1Type, Arg2Type, ..., ParamSpecVariable]``. " "``Concatenate`` is valid when used in :ref:`Callable ` " -"type hints and when instantiating user-defined generic classes with :class:" -"`ParamSpec` parameters. The last parameter to ``Concatenate`` must be a :" -"class:`ParamSpec` or ellipsis (``...``)." +"type hints and when instantiating user-defined generic classes " +"with :class:`ParamSpec` parameters. The last parameter to ``Concatenate`` " +"must be a :class:`ParamSpec` or ellipsis (``...``)." msgstr "" msgid "" -"For example, to annotate a decorator ``with_lock`` which provides a :class:" -"`threading.Lock` to the decorated function, ``Concatenate`` can be used to " -"indicate that ``with_lock`` expects a callable which takes in a ``Lock`` as " -"the first argument, and returns a callable with a different type signature. " -"In this case, the :class:`ParamSpec` indicates that the returned callable's " -"parameter types are dependent on the parameter types of the callable being " -"passed in::" +"For example, to annotate a decorator ``with_lock`` which provides " +"a :class:`threading.Lock` to the decorated function, ``Concatenate`` can be " +"used to indicate that ``with_lock`` expects a callable which takes in a " +"``Lock`` as the first argument, and returns a callable with a different type " +"signature. In this case, the :class:`ParamSpec` indicates that the returned " +"callable's parameter types are dependent on the parameter types of the " +"callable being passed in::" msgstr "" msgid "" @@ -1610,10 +1616,10 @@ msgid ":data:`ClassVar` accepts only types and cannot be further subscribed." msgstr "" msgid "" -":data:`ClassVar` is not a class itself, and cannot be used with :func:" -"`isinstance` or :func:`issubclass`. :data:`ClassVar` does not change Python " -"runtime behavior, but it can be used by static type checkers. For example, a " -"type checker might flag the following code as an error::" +":data:`ClassVar` is not a class itself, and cannot be used " +"with :func:`isinstance` or :func:`issubclass`. :data:`ClassVar` does not " +"change Python runtime behavior, but it can be used by static type checkers. " +"For example, a type checker might flag the following code as an error::" msgstr "" msgid "" @@ -1775,8 +1781,8 @@ msgstr "" msgid "" "However, this does not apply to ``Annotated`` types referenced through a " -"type alias, to avoid forcing evaluation of the underlying :class:" -"`TypeAliasType`::" +"type alias, to avoid forcing evaluation of the " +"underlying :class:`TypeAliasType`::" msgstr "" msgid "" @@ -1854,8 +1860,8 @@ msgid "" msgstr "" msgid "" -"If you want to retrieve the original type wrapped by ``Annotated``, use the :" -"attr:`!__origin__` attribute:" +"If you want to retrieve the original type wrapped by ``Annotated``, use " +"the :attr:`!__origin__` attribute:" msgstr "" msgid "" @@ -1948,9 +1954,9 @@ msgstr "" msgid "" "Sometimes it would be convenient to use a user-defined boolean function as a " -"type predicate. Such a function should use ``TypeIs[...]`` or :data:" -"`TypeGuard` as its return type to alert static type checkers to this " -"intention. ``TypeIs`` usually has more intuitive behavior than " +"type predicate. Such a function should use ``TypeIs[...]`` " +"or :data:`TypeGuard` as its return type to alert static type checkers to " +"this intention. ``TypeIs`` usually has more intuitive behavior than " "``TypeGuard``, but it cannot be used when the input and output types are " "incompatible (e.g., ``list[object]`` to ``list[int]``) or when the function " "does not return ``True`` for all instances of the narrowed type." @@ -2018,8 +2024,8 @@ msgid "" msgstr "" msgid "" -"``TypeIs`` also works with type variables. For more information, see :pep:" -"`742` (Narrowing types with ``TypeIs``)." +"``TypeIs`` also works with type variables. For more information, " +"see :pep:`742` (Narrowing types with ``TypeIs``)." msgstr "" msgid "" @@ -2361,11 +2367,11 @@ msgstr "" msgid "" "An :term:`evaluate function` corresponding to the :attr:`~TypeVar.__bound__` " -"attribute. When called directly, this method supports only the :attr:" -"`~annotationlib.Format.VALUE` format, which is equivalent to accessing the :" -"attr:`~TypeVar.__bound__` attribute directly, but the method object can be " -"passed to :func:`annotationlib.call_evaluate_function` to evaluate the value " -"in a different format." +"attribute. When called directly, this method supports only " +"the :attr:`~annotationlib.Format.VALUE` format, which is equivalent to " +"accessing the :attr:`~TypeVar.__bound__` attribute directly, but the method " +"object can be passed to :func:`annotationlib.call_evaluate_function` to " +"evaluate the value in a different format." msgstr "" msgid "A tuple containing the constraints of the type variable, if any." @@ -2378,12 +2384,13 @@ msgid "" msgstr "" msgid "" -"An :term:`evaluate function` corresponding to the :attr:`~TypeVar." -"__constraints__` attribute. When called directly, this method supports only " -"the :attr:`~annotationlib.Format.VALUE` format, which is equivalent to " -"accessing the :attr:`~TypeVar.__constraints__` attribute directly, but the " -"method object can be passed to :func:`annotationlib.call_evaluate_function` " -"to evaluate the value in a different format." +"An :term:`evaluate function` corresponding to " +"the :attr:`~TypeVar.__constraints__` attribute. When called directly, this " +"method supports only the :attr:`~annotationlib.Format.VALUE` format, which " +"is equivalent to accessing the :attr:`~TypeVar.__constraints__` attribute " +"directly, but the method object can be passed " +"to :func:`annotationlib.call_evaluate_function` to evaluate the value in a " +"different format." msgstr "" msgid "" @@ -2392,19 +2399,20 @@ msgid "" msgstr "" msgid "" -"An :term:`evaluate function` corresponding to the :attr:`~TypeVar." -"__default__` attribute. When called directly, this method supports only the :" -"attr:`~annotationlib.Format.VALUE` format, which is equivalent to accessing " -"the :attr:`~TypeVar.__default__` attribute directly, but the method object " -"can be passed to :func:`annotationlib.call_evaluate_function` to evaluate " -"the value in a different format." +"An :term:`evaluate function` corresponding to " +"the :attr:`~TypeVar.__default__` attribute. When called directly, this " +"method supports only the :attr:`~annotationlib.Format.VALUE` format, which " +"is equivalent to accessing the :attr:`~TypeVar.__default__` attribute " +"directly, but the method object can be passed " +"to :func:`annotationlib.call_evaluate_function` to evaluate the value in a " +"different format." msgstr "" msgid "" "Return whether or not the type variable has a default value. This is " -"equivalent to checking whether :attr:`__default__` is not the :data:`typing." -"NoDefault` singleton, except that it does not force evaluation of the :ref:" -"`lazily evaluated ` default value." +"equivalent to checking whether :attr:`__default__` is not " +"the :data:`typing.NoDefault` singleton, except that it does not force " +"evaluation of the :ref:`lazily evaluated ` default value." msgstr "" msgid "" @@ -2577,26 +2585,27 @@ msgid "" msgstr "" msgid "" -"An :term:`evaluate function` corresponding to the :attr:`~TypeVarTuple." -"__default__` attribute. When called directly, this method supports only the :" -"attr:`~annotationlib.Format.VALUE` format, which is equivalent to accessing " -"the :attr:`~TypeVarTuple.__default__` attribute directly, but the method " -"object can be passed to :func:`annotationlib.call_evaluate_function` to " -"evaluate the value in a different format." +"An :term:`evaluate function` corresponding to " +"the :attr:`~TypeVarTuple.__default__` attribute. When called directly, this " +"method supports only the :attr:`~annotationlib.Format.VALUE` format, which " +"is equivalent to accessing the :attr:`~TypeVarTuple.__default__` attribute " +"directly, but the method object can be passed " +"to :func:`annotationlib.call_evaluate_function` to evaluate the value in a " +"different format." msgstr "" msgid "" "Return whether or not the type variable tuple has a default value. This is " -"equivalent to checking whether :attr:`__default__` is not the :data:`typing." -"NoDefault` singleton, except that it does not force evaluation of the :ref:" -"`lazily evaluated ` default value." +"equivalent to checking whether :attr:`__default__` is not " +"the :data:`typing.NoDefault` singleton, except that it does not force " +"evaluation of the :ref:`lazily evaluated ` default value." msgstr "" msgid "" "Type variable tuples created with ``covariant=True`` or " "``contravariant=True`` can be used to declare covariant or contravariant " -"generic types. The ``bound`` argument is also accepted, similar to :class:" -"`TypeVar`, but its actual semantics are yet to be decided." +"generic types. The ``bound`` argument is also accepted, similar " +"to :class:`TypeVar`, but its actual semantics are yet to be decided." msgstr "" msgid "" @@ -2681,15 +2690,15 @@ msgid "" msgstr "" msgid "" -"Since ``ParamSpec`` captures both positional and keyword parameters, ``P." -"args`` and ``P.kwargs`` can be used to split a ``ParamSpec`` into its " +"Since ``ParamSpec`` captures both positional and keyword parameters, " +"``P.args`` and ``P.kwargs`` can be used to split a ``ParamSpec`` into its " "components. ``P.args`` represents the tuple of positional parameters in a " "given call and should only be used to annotate ``*args``. ``P.kwargs`` " "represents the mapping of keyword parameters to their values in a given " "call, and should be only be used to annotate ``**kwargs``. Both attributes " "require the annotated parameter to be in scope. At runtime, ``P.args`` and " -"``P.kwargs`` are instances respectively of :class:`ParamSpecArgs` and :class:" -"`ParamSpecKwargs`." +"``P.kwargs`` are instances respectively of :class:`ParamSpecArgs` " +"and :class:`ParamSpecKwargs`." msgstr "" msgid "The name of the parameter specification." @@ -2710,32 +2719,33 @@ msgid "" msgstr "" msgid "" -"The default value of the parameter specification, or :data:`typing." -"NoDefault` if it has no default." +"The default value of the parameter specification, " +"or :data:`typing.NoDefault` if it has no default." msgstr "" msgid "" -"An :term:`evaluate function` corresponding to the :attr:`~ParamSpec." -"__default__` attribute. When called directly, this method supports only the :" -"attr:`~annotationlib.Format.VALUE` format, which is equivalent to accessing " -"the :attr:`~ParamSpec.__default__` attribute directly, but the method object " -"can be passed to :func:`annotationlib.call_evaluate_function` to evaluate " -"the value in a different format." +"An :term:`evaluate function` corresponding to " +"the :attr:`~ParamSpec.__default__` attribute. When called directly, this " +"method supports only the :attr:`~annotationlib.Format.VALUE` format, which " +"is equivalent to accessing the :attr:`~ParamSpec.__default__` attribute " +"directly, but the method object can be passed " +"to :func:`annotationlib.call_evaluate_function` to evaluate the value in a " +"different format." msgstr "" msgid "" "Return whether or not the parameter specification has a default value. This " -"is equivalent to checking whether :attr:`__default__` is not the :data:" -"`typing.NoDefault` singleton, except that it does not force evaluation of " -"the :ref:`lazily evaluated ` default value." +"is equivalent to checking whether :attr:`__default__` is not " +"the :data:`typing.NoDefault` singleton, except that it does not force " +"evaluation of the :ref:`lazily evaluated ` default value." msgstr "" msgid "" "Parameter specification variables created with ``covariant=True`` or " "``contravariant=True`` can be used to declare covariant or contravariant " -"generic types. The ``bound`` argument is also accepted, similar to :class:" -"`TypeVar`. However the actual semantics of these keywords are yet to be " -"decided." +"generic types. The ``bound`` argument is also accepted, similar " +"to :class:`TypeVar`. However the actual semantics of these keywords are yet " +"to be decided." msgstr "" msgid "" @@ -2752,10 +2762,11 @@ msgid ":data:`Concatenate`" msgstr "" msgid "" -"Arguments and keyword arguments attributes of a :class:`ParamSpec`. The ``P." -"args`` attribute of a ``ParamSpec`` is an instance of ``ParamSpecArgs``, and " -"``P.kwargs`` is an instance of ``ParamSpecKwargs``. They are intended for " -"runtime introspection and have no special meaning to static type checkers." +"Arguments and keyword arguments attributes of a :class:`ParamSpec`. The " +"``P.args`` attribute of a ``ParamSpec`` is an instance of ``ParamSpecArgs``, " +"and ``P.kwargs`` is an instance of ``ParamSpecKwargs``. They are intended " +"for runtime introspection and have no special meaning to static type " +"checkers." msgstr "" msgid "" @@ -2851,11 +2862,11 @@ msgstr "" msgid "" "An :term:`evaluate function` corresponding to the :attr:`__value__` " -"attribute. When called directly, this method supports only the :attr:" -"`~annotationlib.Format.VALUE` format, which is equivalent to accessing the :" -"attr:`__value__` attribute directly, but the method object can be passed to :" -"func:`annotationlib.call_evaluate_function` to evaluate the value in a " -"different format:" +"attribute. When called directly, this method supports only " +"the :attr:`~annotationlib.Format.VALUE` format, which is equivalent to " +"accessing the :attr:`__value__` attribute directly, but the method object " +"can be passed to :func:`annotationlib.call_evaluate_function` to evaluate " +"the value in a different format:" msgstr "" msgid "" @@ -2933,11 +2944,11 @@ msgid "" msgstr "" msgid "" -"The types for each field name can be retrieved by calling :func:" -"`annotationlib.get_annotations` on the resulting class. (The field names are " -"in the ``_fields`` attribute and the default values are in the " -"``_field_defaults`` attribute, both of which are part of the :func:" -"`~collections.namedtuple` API.)" +"The types for each field name can be retrieved by " +"calling :func:`annotationlib.get_annotations` on the resulting class. (The " +"field names are in the ``_fields`` attribute and the default values are in " +"the ``_field_defaults`` attribute, both of which are part of " +"the :func:`~collections.namedtuple` API.)" msgstr "" msgid "``NamedTuple`` subclasses can also have docstrings and methods::" @@ -3003,8 +3014,8 @@ msgstr "" msgid "" "Using :func:`super` (and the ``__class__`` :term:`closure variable`) in " -"methods of ``NamedTuple`` subclasses is unsupported and causes a :class:" -"`TypeError`." +"methods of ``NamedTuple`` subclasses is unsupported and causes " +"a :class:`TypeError`." msgstr "" msgid "Helper class to create low-overhead :ref:`distinct types `." @@ -3062,11 +3073,11 @@ msgid "" msgstr "" msgid "" -"See :pep:`544` for more details. Protocol classes decorated with :deco:" -"`runtime_checkable` (described later) act as simple-minded runtime protocols " -"that check only the presence of given attributes, ignoring their type " -"signatures. Protocol classes without this decorator cannot be used as the " -"second argument to :func:`isinstance` or :func:`issubclass`." +"See :pep:`544` for more details. Protocol classes decorated " +"with :deco:`runtime_checkable` (described later) act as simple-minded " +"runtime protocols that check only the presence of given attributes, ignoring " +"their type signatures. Protocol classes without this decorator cannot be " +"used as the second argument to :func:`isinstance` or :func:`issubclass`." msgstr "" msgid "Protocol classes can be generic, for example::" @@ -3104,8 +3115,8 @@ msgstr "" msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " "This allows a simple-minded structural check, very similar to \"one-trick " -"ponies\" in :mod:`collections.abc` such as :class:`~collections.abc." -"Iterable`. For example::" +"ponies\" in :mod:`collections.abc` such " +"as :class:`~collections.abc.Iterable`. For example::" msgstr "" msgid "" @@ -3147,12 +3158,12 @@ msgstr "" msgid "" ":deco:`!runtime_checkable` will check only the presence of the required " -"methods or attributes, not their type signatures or types. For example, :" -"class:`ssl.SSLObject` is a class, therefore it passes an :func:`issubclass` " -"check against :ref:`Callable `. However, the ``ssl." -"SSLObject.__init__`` method exists only to raise a :exc:`TypeError` with a " -"more informative message, therefore making it impossible to call " -"(instantiate) :class:`ssl.SSLObject`." +"methods or attributes, not their type signatures or types. For " +"example, :class:`ssl.SSLObject` is a class, therefore it passes " +"an :func:`issubclass` check against :ref:`Callable `. " +"However, the ``ssl.SSLObject.__init__`` method exists only to raise " +"a :exc:`TypeError` with a more informative message, therefore making it " +"impossible to call (instantiate) :class:`ssl.SSLObject`." msgstr "" msgid "" @@ -3175,8 +3186,9 @@ msgid "" "The members of a runtime-checkable protocol are now considered \"frozen\" at " "runtime as soon as the class has been created. Monkey-patching attributes " "onto a runtime-checkable protocol will still work, but will have no impact " -"on :func:`isinstance` checks comparing objects to the protocol. See :ref:" -"`What's new in Python 3.12 ` for more details." +"on :func:`isinstance` checks comparing objects to the protocol. " +"See :ref:`What's new in Python 3.12 ` for more " +"details." msgstr "" msgid "" @@ -3212,10 +3224,10 @@ msgid "Point2D = TypedDict('Point2D', {'x': int, 'y': int, 'label': str})" msgstr "" msgid "" -"This functional syntax allows defining keys which are not valid :ref:" -"`identifiers `, for example because they are keywords or " -"contain hyphens, or when key names must not be :ref:`mangled ` like regular private names::" +"This functional syntax allows defining keys which are not " +"valid :ref:`identifiers `, for example because they are " +"keywords or contain hyphens, or when key names must not be :ref:`mangled " +"` like regular private names::" msgstr "" msgid "" @@ -3399,9 +3411,9 @@ msgid "" msgstr "" msgid "" -"A ``TypedDict`` can be introspected via :func:`annotationlib." -"get_annotations` (see :ref:`annotations-howto` for more information on " -"annotations best practices) and the following attributes:" +"A ``TypedDict`` can be introspected " +"via :func:`annotationlib.get_annotations` (see :ref:`annotations-howto` for " +"more information on annotations best practices) and the following attributes:" msgstr "" msgid "" @@ -3432,8 +3444,8 @@ msgid "" msgstr "" msgid "" -"``Point2D.__required_keys__`` and ``Point2D.__optional_keys__`` return :" -"class:`frozenset` objects containing required and non-required keys, " +"``Point2D.__required_keys__`` and ``Point2D.__optional_keys__`` " +"return :class:`frozenset` objects containing required and non-required keys, " "respectively." msgstr "" @@ -3484,19 +3496,19 @@ msgid "" msgstr "" msgid "" -"The value of the *closed* class argument. It can be ``True``, ``False``, or :" -"data:`None`." +"The value of the *closed* class argument. It can be ``True``, ``False``, " +"or :data:`None`." msgstr "" msgid "" -"The value of the *extra_items* class argument. It can be a valid type or :" -"data:`NoExtraItems`." +"The value of the *extra_items* class argument. It can be a valid type " +"or :data:`NoExtraItems`." msgstr "" msgid "" -"See the `TypedDict `_ section in the typing documentation for more examples and " -"detailed rules." +"See the `TypedDict `_ section in the typing documentation for more " +"examples and detailed rules." msgstr "" msgid "" @@ -3505,8 +3517,8 @@ msgid "" msgstr "" msgid "" -"Added support for marking individual keys as :data:`Required` or :data:" -"`NotRequired`. See :pep:`655`." +"Added support for marking individual keys as :data:`Required` " +"or :data:`NotRequired`. See :pep:`655`." msgstr "" msgid "Added support for generic ``TypedDict``\\ s." @@ -3521,8 +3533,8 @@ msgid "Support for the :data:`ReadOnly` qualifier was added. See :pep:`705`." msgstr "" msgid "" -"Support for the *closed* and *extra_items* class arguments was added. See :" -"pep:`728`." +"Support for the *closed* and *extra_items* class arguments was added. " +"See :pep:`728`." msgstr "" msgid "Protocols" @@ -3696,9 +3708,9 @@ msgid "" msgstr "" msgid "" -"At runtime, this function prints the runtime type of its argument to :data:" -"`sys.stderr` and returns the argument unchanged (allowing the call to be " -"used within an expression)::" +"At runtime, this function prints the runtime type of its argument " +"to :data:`sys.stderr` and returns the argument unchanged (allowing the call " +"to be used within an expression)::" msgstr "" msgid "" @@ -3719,8 +3731,8 @@ msgid "" msgstr "" msgid "" -"Decorator to mark an object as providing :func:`dataclass `-like behavior." +"Decorator to mark an object as providing :func:`dataclass " +"`-like behavior." msgstr "" msgid "" @@ -3921,8 +3933,8 @@ msgid "" "only, since they will be overwritten by the non-``@overload``-decorated " "definition. The non-``@overload``-decorated definition, meanwhile, will be " "used at runtime but should be ignored by a type checker. At runtime, " -"calling an ``@overload``-decorated function directly will raise :exc:" -"`NotImplementedError`." +"calling an ``@overload``-decorated function directly will " +"raise :exc:`NotImplementedError`." msgstr "" msgid "" @@ -3949,8 +3961,8 @@ msgid "" msgstr "" msgid "" -"Overloaded functions can now be introspected at runtime using :func:" -"`get_overloads`." +"Overloaded functions can now be introspected at runtime " +"using :func:`get_overloads`." msgstr "" msgid "Return a sequence of :deco:`overload`-decorated definitions for *func*." @@ -4171,17 +4183,17 @@ msgid "" msgstr "" msgid "" -"This function may execute arbitrary code contained in annotations. See :ref:" -"`annotationlib-security` for more information." +"This function may execute arbitrary code contained in annotations. " +"See :ref:`annotationlib-security` for more information." msgstr "" msgid "" "If :attr:`Format.VALUE ` is used and any forward " -"references in the annotations of *obj* are not resolvable, a :exc:" -"`NameError` exception is raised. For example, this can happen with names " -"imported under :data:`if TYPE_CHECKING `. More generally, any " -"kind of exception can be raised if an annotation contains invalid Python " -"code." +"references in the annotations of *obj* are not resolvable, " +"a :exc:`NameError` exception is raised. For example, this can happen with " +"names imported under :data:`if TYPE_CHECKING `. More " +"generally, any kind of exception can be raised if an annotation contains " +"invalid Python code." msgstr "" msgid "" @@ -4202,8 +4214,8 @@ msgid "" msgstr "" msgid "" -"Added the ``format`` parameter. See the documentation on :func:" -"`annotationlib.get_annotations` for more information." +"Added the ``format`` parameter. See the documentation " +"on :func:`annotationlib.get_annotations` for more information." msgstr "" msgid "" @@ -4219,9 +4231,9 @@ msgstr "" msgid "" "If ``X`` is a typing-module alias for a builtin or :mod:`collections` class, " -"it will be normalized to the original class. If ``X`` is an instance of :" -"class:`ParamSpecArgs` or :class:`ParamSpecKwargs`, return the underlying :" -"class:`ParamSpec`. Return ``None`` for unsupported objects." +"it will be normalized to the original class. If ``X`` is an instance " +"of :class:`ParamSpecArgs` or :class:`ParamSpecKwargs`, return the " +"underlying :class:`ParamSpec`. Return ``None`` for unsupported objects." msgstr "" msgid "Examples:" @@ -4283,8 +4295,8 @@ msgid "" msgstr "" msgid "" -"This function only returns true for ``Protocol`` classes, not for :ref:" -"`generic aliases ` of them:" +"This function only returns true for ``Protocol`` classes, not " +"for :ref:`generic aliases ` of them:" msgstr "" msgid "" @@ -4312,8 +4324,8 @@ msgid "" msgstr "" msgid "" -"This function only returns true for ``TypedDict`` classes, not for :ref:" -"`generic aliases ` of them:" +"This function only returns true for ``TypedDict`` classes, not " +"for :ref:`generic aliases ` of them:" msgstr "" msgid "" @@ -4420,9 +4432,9 @@ msgstr "" msgid "" "If you occasionally need to examine type annotations at runtime which may " "contain undefined symbols, use :meth:`annotationlib.get_annotations` with a " -"``format`` parameter of :attr:`annotationlib.Format.STRING` or :attr:" -"`annotationlib.Format.FORWARDREF` to safely retrieve the annotations without " -"raising :exc:`NameError`." +"``format`` parameter of :attr:`annotationlib.Format.STRING` " +"or :attr:`annotationlib.Format.FORWARDREF` to safely retrieve the " +"annotations without raising :exc:`NameError`." msgstr "" msgid "Deprecated aliases" @@ -4446,8 +4458,9 @@ msgstr "" msgid "" "If at some point it is decided to remove these deprecated aliases, a " "deprecation warning will be issued by the interpreter for at least two " -"releases prior to removal. The aliases are guaranteed to remain in the :mod:" -"`!typing` module without deprecation warnings until at least Python 3.14." +"releases prior to removal. The aliases are guaranteed to remain in " +"the :mod:`!typing` module without deprecation warnings until at least Python " +"3.14." msgstr "" msgid "" @@ -4468,8 +4481,8 @@ msgid "" msgstr "" msgid "" -":class:`builtins.dict ` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`builtins.dict ` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`list`." @@ -4477,14 +4490,14 @@ msgstr "" msgid "" "Note that to annotate arguments, it is preferred to use an abstract " -"collection type such as :class:`~collections.abc.Sequence` or :class:" -"`~collections.abc.Iterable` rather than to use :class:`list` or :class:`!" -"typing.List`." +"collection type such as :class:`~collections.abc.Sequence` " +"or :class:`~collections.abc.Iterable` rather than to use :class:`list` " +"or :class:`!typing.List`." msgstr "" msgid "" -":class:`builtins.list ` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`builtins.list ` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`builtins.set `." @@ -4492,13 +4505,13 @@ msgstr "" msgid "" "Note that to annotate arguments, it is preferred to use an abstract " -"collection type such as :class:`collections.abc.Set` rather than to use :" -"class:`set` or :class:`typing.Set`." +"collection type such as :class:`collections.abc.Set` rather than to " +"use :class:`set` or :class:`typing.Set`." msgstr "" msgid "" -":class:`builtins.set ` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`builtins.set ` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`builtins.frozenset `." @@ -4513,13 +4526,13 @@ msgid "Deprecated alias for :class:`tuple`." msgstr "" msgid "" -":class:`tuple` and ``Tuple`` are special-cased in the type system; see :ref:" -"`annotating-tuples` for more details." +":class:`tuple` and ``Tuple`` are special-cased in the type system; " +"see :ref:`annotating-tuples` for more details." msgstr "" msgid "" -":class:`builtins.tuple ` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`builtins.tuple ` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`type`." @@ -4531,8 +4544,8 @@ msgid "" msgstr "" msgid "" -":class:`builtins.type ` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`builtins.type ` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Aliases to types in :mod:`collections`" @@ -4542,40 +4555,40 @@ msgid "Deprecated alias to :class:`collections.defaultdict`." msgstr "" msgid "" -":class:`collections.defaultdict` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.defaultdict` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.OrderedDict`." msgstr "" msgid "" -":class:`collections.OrderedDict` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.OrderedDict` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.ChainMap`." msgstr "" msgid "" -":class:`collections.ChainMap` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`collections.ChainMap` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.Counter`." msgstr "" msgid "" -":class:`collections.Counter` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`collections.Counter` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.deque`." msgstr "" msgid "" -":class:`collections.deque` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`collections.deque` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Aliases to other concrete types" @@ -4587,15 +4600,15 @@ msgid "" msgstr "" msgid "" -"These types (and the corresponding functions) are generic over :data:" -"`AnyStr`. ``Pattern`` can be specialised as ``Pattern[str]`` or " +"These types (and the corresponding functions) are generic " +"over :data:`AnyStr`. ``Pattern`` can be specialised as ``Pattern[str]`` or " "``Pattern[bytes]``; ``Match`` can be specialised as ``Match[str]`` or " "``Match[bytes]``." msgstr "" msgid "" -"Classes ``Pattern`` and ``Match`` from :mod:`re` now support ``[]``. See :" -"pep:`585` and :ref:`types-genericalias`." +"Classes ``Pattern`` and ``Match`` from :mod:`re` now support ``[]``. " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias for :class:`str`." @@ -4629,8 +4642,8 @@ msgid "Deprecated alias to :class:`collections.abc.Set`." msgstr "" msgid "" -":class:`collections.abc.Set` now supports subscripting (``[]``). See :pep:" -"`585` and :ref:`types-genericalias`." +":class:`collections.abc.Set` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.ByteString`." @@ -4661,40 +4674,40 @@ msgid "Deprecated alias to :class:`collections.abc.Collection`." msgstr "" msgid "" -":class:`collections.abc.Collection` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Collection` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Container`." msgstr "" msgid "" -":class:`collections.abc.Container` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Container` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.ItemsView`." msgstr "" msgid "" -":class:`collections.abc.ItemsView` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.ItemsView` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.KeysView`." msgstr "" msgid "" -":class:`collections.abc.KeysView` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.KeysView` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Mapping`." msgstr "" msgid "" -":class:`collections.abc.Mapping` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Mapping` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.MappingView`." @@ -4725,24 +4738,24 @@ msgid "Deprecated alias to :class:`collections.abc.MutableSet`." msgstr "" msgid "" -":class:`collections.abc.MutableSet` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.MutableSet` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Sequence`." msgstr "" msgid "" -":class:`collections.abc.Sequence` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Sequence` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.ValuesView`." msgstr "" msgid "" -":class:`collections.abc.ValuesView` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.ValuesView` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Aliases to asynchronous ABCs in :mod:`collections.abc`" @@ -4752,22 +4765,23 @@ msgid "Deprecated alias to :class:`collections.abc.Coroutine`." msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`collections.abc.Coroutine` and ``typing.Coroutine`` in type annotations." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`collections.abc.Coroutine` and ``typing.Coroutine`` in type " +"annotations." msgstr "" msgid "" -":class:`collections.abc.Coroutine` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Coroutine` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.AsyncGenerator`." msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`collections.abc.AsyncGenerator` and ``typing.AsyncGenerator`` in type " -"annotations." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`collections.abc.AsyncGenerator` and ``typing.AsyncGenerator`` " +"in type annotations." msgstr "" msgid "" @@ -4798,8 +4812,8 @@ msgid "Deprecated alias to :class:`collections.abc.Awaitable`." msgstr "" msgid "" -":class:`collections.abc.Awaitable` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Awaitable` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Aliases to other ABCs in :mod:`collections.abc`" @@ -4809,42 +4823,44 @@ msgid "Deprecated alias to :class:`collections.abc.Iterable`." msgstr "" msgid "" -":class:`collections.abc.Iterable` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Iterable` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Iterator`." msgstr "" msgid "" -":class:`collections.abc.Iterator` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Iterator` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Callable`." msgstr "" msgid "" -"See :ref:`annotating-callables` for details on how to use :class:" -"`collections.abc.Callable` and ``typing.Callable`` in type annotations." +"See :ref:`annotating-callables` for details on how to " +"use :class:`collections.abc.Callable` and ``typing.Callable`` in type " +"annotations." msgstr "" msgid "" -":class:`collections.abc.Callable` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Callable` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Generator`." msgstr "" msgid "" -"See :ref:`annotating-generators-and-coroutines` for details on using :class:" -"`collections.abc.Generator` and ``typing.Generator`` in type annotations." +"See :ref:`annotating-generators-and-coroutines` for details on " +"using :class:`collections.abc.Generator` and ``typing.Generator`` in type " +"annotations." msgstr "" msgid "" -":class:`collections.abc.Generator` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Generator` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Default values for the send and return types were added." @@ -4860,8 +4876,8 @@ msgid "Deprecated alias to :class:`collections.abc.Reversible`." msgstr "" msgid "" -":class:`collections.abc.Reversible` now supports subscripting (``[]``). See :" -"pep:`585` and :ref:`types-genericalias`." +":class:`collections.abc.Reversible` now supports subscripting (``[]``). " +"See :pep:`585` and :ref:`types-genericalias`." msgstr "" msgid "Deprecated alias to :class:`collections.abc.Sized`." @@ -4877,8 +4893,8 @@ msgid "Deprecated alias to :class:`contextlib.AbstractContextManager`." msgstr "" msgid "" -"The first type parameter, ``T_co``, represents the type returned by the :" -"meth:`~object.__enter__` method. The optional second type parameter, " +"The first type parameter, ``T_co``, represents the type returned by " +"the :meth:`~object.__enter__` method. The optional second type parameter, " "``ExitT_co``, which defaults to ``bool | None``, represents the type " "returned by the :meth:`~object.__exit__` method." msgstr "" @@ -4895,8 +4911,8 @@ msgid "Deprecated alias to :class:`contextlib.AbstractAsyncContextManager`." msgstr "" msgid "" -"The first type parameter, ``T_co``, represents the type returned by the :" -"meth:`~object.__aenter__` method. The optional second type parameter, " +"The first type parameter, ``T_co``, represents the type returned by " +"the :meth:`~object.__aenter__` method. The optional second type parameter, " "``AExitT_co``, which defaults to ``bool | None``, represents the type " "returned by the :meth:`~object.__aexit__` method." msgstr "" diff --git a/library/unicodedata.po b/library/unicodedata.po index f5b352d..51ee983 100644 --- a/library/unicodedata.po +++ b/library/unicodedata.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,8 +28,8 @@ msgstr "" msgid "" "This module provides access to the Unicode Character Database (UCD) which " "defines character properties for all Unicode characters. The data contained " -"in this database is compiled from the `UCD version 17.0.0 `_." +"in this database is compiled from the `UCD version 17.0.0 `_." msgstr "" msgid "" @@ -61,7 +61,7 @@ msgstr "" msgid "**Numeric values**" msgstr "" -msgid ":func:`decimal(chr) `" +msgid ":func:`decimal(chr) `" msgstr "" msgid "Decimal value of a character" @@ -217,8 +217,8 @@ msgstr "" msgid "" "Returns the decimal value assigned to the character *chr* as integer. If no " -"such value is defined, *default* is returned, or, if not given, :exc:" -"`ValueError` is raised. For example::" +"such value is defined, *default* is returned, or, if not " +"given, :exc:`ValueError` is raised. For example::" msgstr "" msgid "" @@ -230,8 +230,8 @@ msgstr "" msgid "" "Returns the digit value assigned to the character *chr* as integer. If no " -"such value is defined, *default* is returned, or, if not given, :exc:" -"`ValueError` is raised::" +"such value is defined, *default* is returned, or, if not " +"given, :exc:`ValueError` is raised::" msgstr "" msgid "" @@ -241,8 +241,8 @@ msgstr "" msgid "" "Returns the numeric value assigned to the character *chr* as float. If no " -"such value is defined, *default* is returned, or, if not given, :exc:" -"`ValueError` is raised::" +"such value is defined, *default* is returned, or, if not " +"given, :exc:`ValueError` is raised::" msgstr "" msgid "" @@ -253,9 +253,9 @@ msgstr "" msgid "" "Returns the general category assigned to the character *chr* as string. " "General category names consist of two letters. See the `General Category " -"Values section of the Unicode Character Database documentation `_ for a list of category " -"codes. For example::" +"Values section of the Unicode Character Database documentation `_ for a list of " +"category codes. For example::" msgstr "" msgid "" diff --git a/library/unittest.mock-examples.po b/library/unittest.mock-examples.po index 2dfd0a8..c741aff 100644 --- a/library/unittest.mock-examples.po +++ b/library/unittest.mock-examples.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,8 +87,8 @@ msgstr "" msgid "" "We don't have to do any work to provide the 'close' method on our mock. " "Accessing close creates it. So, if 'close' hasn't already been called then " -"accessing it in the test will create it, but :meth:`~Mock." -"assert_called_with` will raise a failure exception." +"accessing it in the test will create it, " +"but :meth:`~Mock.assert_called_with` will raise a failure exception." msgstr "" msgid "Mocking classes" @@ -105,8 +105,8 @@ msgid "" "In the example below we have a function ``some_function`` that instantiates " "``Foo`` and calls a method on it. The call to :func:`patch` replaces the " "class ``Foo`` with a mock. The ``Foo`` instance is the result of calling the " -"mock, so it is configured by modifying the mock :attr:`~Mock." -"return_value`. ::" +"mock, so it is configured by modifying the " +"mock :attr:`~Mock.return_value`. ::" msgstr "" msgid "" @@ -134,9 +134,9 @@ msgid "Tracking all calls" msgstr "" msgid "" -"Often you want to track more than a single call to a method. The :attr:" -"`~Mock.mock_calls` attribute records all calls to child attributes of the " -"mock - and also to their children." +"Often you want to track more than a single call to a method. " +"The :attr:`~Mock.mock_calls` attribute records all calls to child attributes " +"of the mock - and also to their children." msgstr "" msgid "" @@ -219,20 +219,20 @@ msgid "Mocking asynchronous iterators" msgstr "" msgid "" -"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to mock :ref:" -"`async-iterators` through ``__aiter__``. The :attr:`~Mock.return_value` " -"attribute of ``__aiter__`` can be used to set the return values to be used " -"for iteration." +"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to " +"mock :ref:`async-iterators` through ``__aiter__``. " +"The :attr:`~Mock.return_value` attribute of ``__aiter__`` can be used to set " +"the return values to be used for iteration." msgstr "" msgid "Mocking asynchronous context manager" msgstr "" msgid "" -"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to mock :ref:" -"`async-context-managers` through ``__aenter__`` and ``__aexit__``. By " -"default, ``__aenter__`` and ``__aexit__`` are ``AsyncMock`` instances that " -"return an async function." +"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to " +"mock :ref:`async-context-managers` through ``__aenter__`` and ``__aexit__``. " +"By default, ``__aenter__`` and ``__aexit__`` are ``AsyncMock`` instances " +"that return an async function." msgstr "" msgid "Creating a mock from an existing object" @@ -286,9 +286,10 @@ msgid "Using side_effect to return per file content" msgstr "" msgid "" -":func:`mock_open` is used to patch :func:`open` method. :attr:`~Mock." -"side_effect` can be used to return a new Mock object per call. This can be " -"used to return different contents per file stored in a dictionary::" +":func:`mock_open` is used to patch :func:`open` " +"method. :attr:`~Mock.side_effect` can be used to return a new Mock object " +"per call. This can be used to return different contents per file stored in a " +"dictionary::" msgstr "" msgid "" @@ -328,13 +329,13 @@ msgid "" msgstr "" msgid "" -"mock provides three convenient decorators for this: :func:`patch`, :func:" -"`patch.object` and :func:`patch.dict`. ``patch`` takes a single string, of " -"the form ``package.module.Class.attribute`` to specify the attribute you are " -"patching. It also optionally takes a value that you want the attribute (or " -"class or whatever) to be replaced with. 'patch.object' takes an object and " -"the name of the attribute you would like patched, plus optionally the value " -"to patch it with." +"mock provides three convenient decorators for " +"this: :func:`patch`, :func:`patch.object` and :func:`patch.dict`. ``patch`` " +"takes a single string, of the form ``package.module.Class.attribute`` to " +"specify the attribute you are patching. It also optionally takes a value " +"that you want the attribute (or class or whatever) to be replaced with. " +"'patch.object' takes an object and the name of the attribute you would like " +"patched, plus optionally the value to patch it with." msgstr "" msgid "``patch.object``::" @@ -358,8 +359,8 @@ msgid "" msgstr "" msgid "" -"If you are patching a module (including :mod:`builtins`) then use :func:" -"`patch` instead of :func:`patch.object`:" +"If you are patching a module (including :mod:`builtins`) then " +"use :func:`patch` instead of :func:`patch.object`:" msgstr "" msgid "" @@ -479,21 +480,23 @@ msgid "" msgstr "" msgid "" -"mock_backend.get_endpoint.return_value.create_call.return_value.start_call." -"return_value = mock_response" +"mock_backend.get_endpoint.return_value.create_call.return_value.start_call.return_value " +"= mock_response" msgstr "" msgid "" -"We can do that in a slightly nicer way using the :meth:`~Mock." -"configure_mock` method to directly set the return value for us::" +"We can do that in a slightly nicer way using " +"the :meth:`~Mock.configure_mock` method to directly set the return value for " +"us::" msgstr "" msgid "" ">>> something = Something()\n" ">>> mock_response = Mock(spec=open)\n" ">>> mock_backend = Mock()\n" -">>> config = {'get_endpoint.return_value.create_call.return_value.start_call." -"return_value': mock_response}\n" +">>> config = " +"{'get_endpoint.return_value.create_call.return_value.start_call.return_value': " +"mock_response}\n" ">>> mock_backend.configure_mock(**config)" msgstr "" @@ -515,8 +518,8 @@ msgid "" msgstr "" msgid "" -">>> chained = call.get_endpoint('foobar').create_call('spam', 'eggs')." -"start_call()\n" +">>> chained = call.get_endpoint('foobar').create_call('spam', " +"'eggs').start_call()\n" ">>> call_list = chained.call_list()\n" ">>> assert mock_backend.mock_calls == call_list" msgstr "" @@ -525,11 +528,11 @@ msgid "Partial mocking" msgstr "" msgid "" -"For some tests, you may want to mock out a call to :meth:`datetime.date." -"today` to return a known date, but don't want to prevent the code under test " -"from creating new date objects. Unfortunately :class:`datetime.date` is " -"written in C, so you cannot just monkey-patch out the static :meth:`datetime." -"date.today` method." +"For some tests, you may want to mock out a call " +"to :meth:`datetime.date.today` to return a known date, but don't want to " +"prevent the code under test from creating new date objects. " +"Unfortunately :class:`datetime.date` is written in C, so you cannot just " +"monkey-patch out the static :meth:`datetime.date.today` method." msgstr "" msgid "" @@ -590,8 +593,8 @@ msgstr "" msgid "" "A generator method / function is called to return the generator object. It " "is the generator object that is then iterated over. The protocol method for " -"iteration is :meth:`~container.__iter__`, so we can mock this using a :class:" -"`MagicMock`." +"iteration is :meth:`~container.__iter__`, so we can mock this using " +"a :class:`MagicMock`." msgstr "" msgid "" @@ -608,11 +611,11 @@ msgid "" msgstr "" msgid "" -"There are also generator expressions and more `advanced uses `_ of generators, but we aren't concerned " -"about them here. A very good introduction to generators and how powerful " -"they are is: `Generator Tricks for Systems Programmers `_." +"There are also generator expressions and more `advanced uses `_ of generators, but we aren't " +"concerned about them here. A very good introduction to generators and how " +"powerful they are is: `Generator Tricks for Systems Programmers `_." msgstr "" msgid "Applying the same patch to every test method" @@ -670,8 +673,8 @@ msgstr "" msgid "" "If you use this technique you must ensure that the patching is \"undone\" by " "calling ``stop``. This can be fiddlier than you might think, because if an " -"exception is raised in the setUp then tearDown is not called. :meth:" -"`unittest.TestCase.addCleanup` makes this easier::" +"exception is raised in the setUp then tearDown is not " +"called. :meth:`unittest.TestCase.addCleanup` makes this easier::" msgstr "" msgid "" @@ -728,16 +731,16 @@ msgid "" msgstr "" msgid "" -"If your mock is only being called once you can use the :meth:`~Mock." -"assert_called_once_with` method that also asserts that the :attr:`~Mock." -"call_count` is one." +"If your mock is only being called once you can use " +"the :meth:`~Mock.assert_called_once_with` method that also asserts that " +"the :attr:`~Mock.call_count` is one." msgstr "" msgid "" "Both ``assert_called_with`` and ``assert_called_once_with`` make assertions " "about the *most recent* call. If your mock is going to be called several " -"times, and you want to make assertions about *all* those calls you can use :" -"attr:`~Mock.call_args_list`:" +"times, and you want to make assertions about *all* those calls you can " +"use :attr:`~Mock.call_args_list`:" msgstr "" msgid "" @@ -844,9 +847,9 @@ msgid "" msgstr "" msgid "" -"An alternative approach is to create a subclass of :class:`Mock` or :class:" -"`MagicMock` that copies (using :func:`copy.deepcopy`) the arguments. Here's " -"an example implementation:" +"An alternative approach is to create a subclass of :class:`Mock` " +"or :class:`MagicMock` that copies (using :func:`copy.deepcopy`) the " +"arguments. Here's an example implementation:" msgstr "" msgid "" @@ -933,8 +936,9 @@ msgid "" msgstr "" msgid "" -"After the ``MagicMock`` has been used we can use attributes like :data:" -"`~Mock.call_args_list` to assert about how the dictionary was used:" +"After the ``MagicMock`` has been used we can use attributes " +"like :data:`~Mock.call_args_list` to assert about how the dictionary was " +"used:" msgstr "" msgid "" @@ -977,10 +981,11 @@ msgid "" msgstr "" msgid "" -"Sometimes this is inconvenient. For example, `one user `_ is subclassing mock to created a `Twisted " -"adaptor `_. Having this applied to attributes too actually causes errors." +"Sometimes this is inconvenient. For example, `one user `_ is subclassing mock to created " +"a `Twisted adaptor `_. Having this applied to attributes too " +"actually causes errors." msgstr "" msgid "" @@ -1093,10 +1098,10 @@ msgstr "" msgid "" "If many calls have been made, but you're only interested in a particular " -"sequence of them then an alternative is to use the :meth:`~Mock." -"assert_has_calls` method. This takes a list of calls (constructed with the :" -"data:`call` object). If that sequence of calls are in :attr:`~Mock." -"mock_calls` then the assert succeeds." +"sequence of them then an alternative is to use " +"the :meth:`~Mock.assert_has_calls` method. This takes a list of calls " +"(constructed with the :data:`call` object). If that sequence of calls are " +"in :attr:`~Mock.mock_calls` then the assert succeeds." msgstr "" msgid "" @@ -1155,14 +1160,15 @@ msgid "" msgstr "" msgid "" -"With a bit of tweaking you could have the comparison function raise the :exc:" -"`AssertionError` directly and provide a more useful failure message." +"With a bit of tweaking you could have the comparison function raise " +"the :exc:`AssertionError` directly and provide a more useful failure message." msgstr "" msgid "" "As of version 1.5, the Python testing library `PyHamcrest `_ provides similar functionality, that may be " -"useful here, in the form of its equality matcher (`hamcrest.library." -"integration.match_equality `_)." +"useful here, in the form of its equality matcher " +"(`hamcrest.library.integration.match_equality `_)." msgstr "" diff --git a/library/unittest.mock.po b/library/unittest.mock.po index af9fa63..2df2d74 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -44,10 +44,10 @@ msgstr "" msgid "" "Additionally, mock provides a :func:`patch` decorator that handles patching " -"module and class level attributes within the scope of a test, along with :" -"const:`sentinel` for creating unique objects. See the `quick guide`_ for " -"some examples of how to use :class:`Mock`, :class:`MagicMock` and :func:" -"`patch`." +"module and class level attributes within the scope of a test, along " +"with :const:`sentinel` for creating unique objects. See the `quick guide`_ " +"for some examples of how to use :class:`Mock`, :class:`MagicMock` " +"and :func:`patch`." msgstr "" msgid "" @@ -182,8 +182,8 @@ msgstr "" msgid "" ":class:`MagicMock` is a subclass of :class:`Mock` with all the magic methods " "pre-created and ready to use. There are also non-callable variants, useful " -"when you are mocking out objects that aren't callable: :class:" -"`NonCallableMock` and :class:`NonCallableMagicMock`" +"when you are mocking out objects that aren't " +"callable: :class:`NonCallableMock` and :class:`NonCallableMagicMock`" msgstr "" msgid "" @@ -207,9 +207,9 @@ msgid "" msgstr "" msgid "" -"If *spec* is an object (rather than a list of strings) then :attr:`~object." -"__class__` returns the class of the spec object. This allows mocks to pass :" -"func:`isinstance` tests." +"If *spec* is an object (rather than a list of strings) " +"then :attr:`~object.__class__` returns the class of the spec object. This " +"allows mocks to pass :func:`isinstance` tests." msgstr "" msgid "" @@ -219,8 +219,8 @@ msgid "" msgstr "" msgid "" -"*side_effect*: A function to be called whenever the Mock is called. See the :" -"attr:`~Mock.side_effect` attribute. Useful for raising exceptions or " +"*side_effect*: A function to be called whenever the Mock is called. See " +"the :attr:`~Mock.side_effect` attribute. Useful for raising exceptions or " "dynamically changing return values. The function is called with the same " "arguments as the mock, and unless it returns :data:`DEFAULT`, the return " "value of this function is used as the return value." @@ -247,8 +247,8 @@ msgstr "" msgid "" "*unsafe*: By default, accessing any attribute whose name starts with " -"*assert*, *assret*, *asert*, *aseert* or *assrt* will raise an :exc:" -"`AttributeError`. Passing ``unsafe=True`` will allow access to these " +"*assert*, *assret*, *asert*, *aseert* or *assrt* will raise " +"an :exc:`AttributeError`. Passing ``unsafe=True`` will allow access to these " "attributes." msgstr "" @@ -257,8 +257,8 @@ msgid "" "calling the Mock will pass the call through to the wrapped object (returning " "the real result). Attribute access on the mock will return a Mock object " "that wraps the corresponding attribute of the wrapped object (so attempting " -"to access an attribute that doesn't exist will raise an :exc:" -"`AttributeError`)." +"to access an attribute that doesn't exist will raise " +"an :exc:`AttributeError`)." msgstr "" msgid "" @@ -273,8 +273,8 @@ msgstr "" msgid "" "Mocks can also be called with arbitrary keyword arguments. These will be " -"used to set attributes on the mock after it is created. See the :meth:" -"`configure_mock` method for details." +"used to set attributes on the mock after it is created. See " +"the :meth:`configure_mock` method for details." msgstr "" msgid "Assert that the mock was called at least once." @@ -297,15 +297,15 @@ msgid "Assert the mock has been called with the specified arguments." msgstr "" msgid "" -"The assert passes if the mock has *ever* been called, unlike :meth:" -"`assert_called_with` and :meth:`assert_called_once_with` that only pass if " -"the call is the most recent one, and in the case of :meth:" -"`assert_called_once_with` it must also be the only call." +"The assert passes if the mock has *ever* been called, " +"unlike :meth:`assert_called_with` and :meth:`assert_called_once_with` that " +"only pass if the call is the most recent one, and in the case " +"of :meth:`assert_called_once_with` it must also be the only call." msgstr "" msgid "" -"Assert the mock has been called with the specified calls. The :attr:" -"`mock_calls` list is checked for the calls." +"Assert the mock has been called with the specified calls. " +"The :attr:`mock_calls` list is checked for the calls." msgstr "" msgid "" @@ -368,9 +368,9 @@ msgid "" msgstr "" msgid "" -"Note that :meth:`reset_mock` *doesn't* clear the :attr:`return_value`, :attr:" -"`side_effect` or any child attributes you have set using normal assignment " -"by default." +"Note that :meth:`reset_mock` *doesn't* clear " +"the :attr:`return_value`, :attr:`side_effect` or any child attributes you " +"have set using normal assignment by default." msgstr "" msgid "Child mocks are reset as well." @@ -389,8 +389,8 @@ msgstr "" msgid "" "Attach a mock as an attribute of this one, replacing its name and parent. " -"Calls to the attached mock will be recorded in the :attr:`method_calls` and :" -"attr:`mock_calls` attributes of this one." +"Calls to the attached mock will be recorded in the :attr:`method_calls` " +"and :attr:`mock_calls` attributes of this one." msgstr "" msgid "Set attributes on the mock through keyword arguments." @@ -464,8 +464,8 @@ msgstr "" msgid "" "If you pass in an iterable, it is used to retrieve an iterator which must " "yield a value on every call. This value can either be an exception instance " -"to be raised, or a value to be returned from the call to the mock (:data:" -"`DEFAULT` handling is identical to the function case)." +"to be raised, or a value to be returned from the call to the mock " +"(:data:`DEFAULT` handling is identical to the function case)." msgstr "" msgid "" @@ -497,10 +497,11 @@ msgid "" msgstr "" msgid "" -":attr:`call_args`, along with members of the lists :attr:`call_args_list`, :" -"attr:`method_calls` and :attr:`mock_calls` are :data:`call` objects. These " -"are tuples, so they can be unpacked to get at the individual arguments and " -"make more complex assertions. See :ref:`calls as tuples `." +":attr:`call_args`, along with members of the " +"lists :attr:`call_args_list`, :attr:`method_calls` and :attr:`mock_calls` " +"are :data:`call` objects. These are tuples, so they can be unpacked to get " +"at the individual arguments and make more complex assertions. " +"See :ref:`calls as tuples `." msgstr "" msgid "Added ``args`` and ``kwargs`` properties." @@ -510,8 +511,8 @@ msgid "" "This is a list of all the calls made to the mock object in sequence (so the " "length of the list is the number of times it has been called). Before any " "calls have been made it is an empty list. The :data:`call` object can be " -"used for conveniently constructing lists of calls to compare with :attr:" -"`call_args_list`." +"used for conveniently constructing lists of calls to compare " +"with :attr:`call_args_list`." msgstr "" msgid "" @@ -556,8 +557,8 @@ msgid "" msgstr "" msgid "" -":attr:`!__class__` is assignable to, this allows a mock to pass an :func:" -"`isinstance` check without forcing you to use a spec:" +":attr:`!__class__` is assignable to, this allows a mock to pass " +"an :func:`isinstance` check without forcing you to use a spec:" msgstr "" msgid "" @@ -572,8 +573,8 @@ msgid "" msgstr "" msgid "" -"The :class:`Mock` classes have support for mocking magic methods. See :ref:" -"`magic methods ` for the full details." +"The :class:`Mock` classes have support for mocking magic methods. " +"See :ref:`magic methods ` for the full details." msgstr "" msgid "" @@ -607,20 +608,20 @@ msgid "" msgstr "" msgid "" -"This applies to :meth:`~Mock.assert_called_with`, :meth:`~Mock." -"assert_called_once_with`, :meth:`~Mock.assert_has_calls` and :meth:`~Mock." -"assert_any_call`. When :ref:`auto-speccing`, it will also apply to method " -"calls on the mock object." +"This applies " +"to :meth:`~Mock.assert_called_with`, :meth:`~Mock.assert_called_once_with`, :meth:`~Mock.assert_has_calls` " +"and :meth:`~Mock.assert_any_call`. When :ref:`auto-speccing`, it will also " +"apply to method calls on the mock object." msgstr "" msgid "Added signature introspection on specced and autospecced mock objects." msgstr "" msgid "" -"A mock intended to be used as a :class:`property`, or other :term:" -"`descriptor`, on a class. :class:`PropertyMock` provides :meth:`~object." -"__get__` and :meth:`~object.__set__` methods so you can specify a return " -"value when it is fetched." +"A mock intended to be used as a :class:`property`, or " +"other :term:`descriptor`, on a class. :class:`PropertyMock` " +"provides :meth:`~object.__get__` and :meth:`~object.__set__` methods so you " +"can specify a return value when it is fetched." msgstr "" msgid "" @@ -649,9 +650,9 @@ msgid "" msgstr "" msgid "" -"Because of the way mock attributes are stored you can't directly attach a :" -"class:`PropertyMock` to a mock object. Instead you can attach it to the mock " -"type object::" +"Because of the way mock attributes are stored you can't directly attach " +"a :class:`PropertyMock` to a mock object. Instead you can attach it to the " +"mock type object::" msgstr "" msgid "" @@ -703,8 +704,8 @@ msgstr "" msgid "" "if ``side_effect`` is an iterable, the async function will return the next " -"value of the iterable, however, if the sequence of result is exhausted, " -"``StopAsyncIteration`` is raised immediately," +"value of the iterable, however, if the sequence of result " +"is :term:`exhausted`, ``StopAsyncIteration`` is raised immediately," msgstr "" msgid "" @@ -719,12 +720,12 @@ msgid "" msgstr "" msgid "" -"Setting the *spec* of a :class:`Mock`, :class:`MagicMock`, or :class:" -"`AsyncMock` to a class with asynchronous and synchronous functions will " -"automatically detect the synchronous functions and set them as :class:" -"`MagicMock` (if the parent mock is :class:`AsyncMock` or :class:`MagicMock`) " -"or :class:`Mock` (if the parent mock is :class:`Mock`). All asynchronous " -"functions will be :class:`AsyncMock`." +"Setting the *spec* of a :class:`Mock`, :class:`MagicMock`, " +"or :class:`AsyncMock` to a class with asynchronous and synchronous functions " +"will automatically detect the synchronous functions and set them " +"as :class:`MagicMock` (if the parent mock is :class:`AsyncMock` " +"or :class:`MagicMock`) or :class:`Mock` (if the parent mock " +"is :class:`Mock`). All asynchronous functions will be :class:`AsyncMock`." msgstr "" msgid "" @@ -747,8 +748,8 @@ msgid "Assert the mock has ever been awaited with the specified arguments." msgstr "" msgid "" -"Assert the mock has been awaited with the specified calls. The :attr:" -"`await_args_list` list is checked for the awaits." +"Assert the mock has been awaited with the specified calls. " +"The :attr:`await_args_list` list is checked for the awaits." msgstr "" msgid "" @@ -765,8 +766,8 @@ msgid "Assert that the mock was never awaited." msgstr "" msgid "" -"See :func:`Mock.reset_mock`. Also sets :attr:`await_count` to 0, :attr:" -"`await_args` to None, and clears the :attr:`await_args_list`." +"See :func:`Mock.reset_mock`. Also sets :attr:`await_count` to " +"0, :attr:`await_args` to None, and clears the :attr:`await_args_list`." msgstr "" msgid "" @@ -775,8 +776,8 @@ msgstr "" msgid "" "This is either ``None`` (if the mock hasn’t been awaited), or the arguments " -"that the mock was last awaited with. Functions the same as :attr:`Mock." -"call_args`." +"that the mock was last awaited with. Functions the same " +"as :attr:`Mock.call_args`." msgstr "" msgid "" @@ -786,9 +787,9 @@ msgid "" msgstr "" msgid "" -"A version of :class:`MagicMock` for multithreading tests. The :class:" -"`ThreadingMock` object provides extra methods to wait for a call to be " -"invoked, rather than assert on it immediately." +"A version of :class:`MagicMock` for multithreading tests. " +"The :class:`ThreadingMock` object provides extra methods to wait for a call " +"to be invoked, rather than assert on it immediately." msgstr "" msgid "" @@ -798,8 +799,8 @@ msgid "" msgstr "" msgid "" -"You can configure the global default timeout by setting :attr:`ThreadingMock." -"DEFAULT_TIMEOUT`." +"You can configure the global default timeout by " +"setting :attr:`ThreadingMock.DEFAULT_TIMEOUT`." msgstr "" msgid "Waits until the mock is called." @@ -815,29 +816,29 @@ msgid "Waits until the mock is called with the specified arguments." msgstr "" msgid "" -"If a timeout was passed at the creation of the mock the function raises an :" -"exc:`AssertionError` if the call is not performed in time." +"If a timeout was passed at the creation of the mock the function raises " +"an :exc:`AssertionError` if the call is not performed in time." msgstr "" msgid "" -"Global default timeout in seconds to create instances of :class:" -"`ThreadingMock`." +"Global default timeout in seconds to create instances " +"of :class:`ThreadingMock`." msgstr "" msgid "Calling" msgstr "" msgid "" -"Mock objects are callable. The call will return the value set as the :attr:" -"`~Mock.return_value` attribute. The default return value is a new Mock " -"object; it is created the first time the return value is accessed (either " -"explicitly or by calling the Mock) - but it is stored and the same one " -"returned each time." +"Mock objects are callable. The call will return the value set as " +"the :attr:`~Mock.return_value` attribute. The default return value is a new " +"Mock object; it is created the first time the return value is accessed " +"(either explicitly or by calling the Mock) - but it is stored and the same " +"one returned each time." msgstr "" msgid "" -"Calls made to the object will be recorded in the attributes like :attr:" -"`~Mock.call_args` and :attr:`~Mock.call_args_list`." +"Calls made to the object will be recorded in the attributes " +"like :attr:`~Mock.call_args` and :attr:`~Mock.call_args_list`." msgstr "" msgid "" @@ -847,8 +848,8 @@ msgid "" msgstr "" msgid "" -"The simplest way to make a mock raise an exception when called is to make :" -"attr:`~Mock.side_effect` an exception class or instance:" +"The simplest way to make a mock raise an exception when called is to " +"make :attr:`~Mock.side_effect` an exception class or instance:" msgstr "" msgid "" @@ -873,7 +874,7 @@ msgstr "" msgid "" "The :attr:`~Mock.side_effect` can also be any iterable object. Repeated " "calls to the mock will return values from the iterable (until the iterable " -"is exhausted and a :exc:`StopIteration` is raised):" +"is :term:`exhausted` and a :exc:`StopIteration` is raised):" msgstr "" msgid "" @@ -920,8 +921,8 @@ msgstr "" msgid "" "Since \"name\" is an argument to the :class:`Mock` constructor, if you want " "your mock object to have a \"name\" attribute you can't just pass it in at " -"creation time. There are two alternatives. One option is to use :meth:`~Mock." -"configure_mock`::" +"creation time. There are two alternatives. One option is to " +"use :meth:`~Mock.configure_mock`::" msgstr "" msgid "" @@ -961,8 +962,8 @@ msgstr "" msgid "" "Mocks created for you by :func:`patch` are automatically given names. To " -"attach mocks that have names to a parent you use the :meth:`~Mock." -"attach_mock` method::" +"attach mocks that have names to a parent you use " +"the :meth:`~Mock.attach_mock` method::" msgstr "" msgid "" @@ -1032,8 +1033,8 @@ msgid "" msgstr "" msgid "" -"The *spec* and *spec_set* keyword arguments are passed to the :class:" -"`MagicMock` if patch is creating one for you." +"The *spec* and *spec_set* keyword arguments are passed to " +"the :class:`MagicMock` if patch is creating one for you." msgstr "" msgid "" @@ -1043,8 +1044,9 @@ msgstr "" msgid "" "*new_callable* allows you to specify a different class, or callable object, " -"that will be called to create the *new* object. By default :class:" -"`AsyncMock` is used for async functions and :class:`MagicMock` for the rest." +"that will be called to create the *new* object. By " +"default :class:`AsyncMock` is used for async functions " +"and :class:`MagicMock` for the rest." msgstr "" msgid "" @@ -1054,8 +1056,8 @@ msgid "" "attribute of the object being replaced. Methods and functions being mocked " "will have their arguments checked and will raise a :exc:`TypeError` if they " "are called with the wrong signature. For mocks replacing a class, their " -"return value (the 'instance') will have the same spec as the class. See the :" -"func:`create_autospec` function and :ref:`auto-speccing`." +"return value (the 'instance') will have the same spec as the class. See " +"the :func:`create_autospec` function and :ref:`auto-speccing`." msgstr "" msgid "" @@ -1082,10 +1084,10 @@ msgid "" "Patch can be used as a :class:`~unittest.TestCase` class decorator. It works " "by decorating each test method in the class. This reduces the boilerplate " "code when your test methods share a common patchings set. :func:`patch` " -"finds tests by looking for method names that start with ``patch." -"TEST_PREFIX``. By default this is ``'test'``, which matches the way :mod:" -"`unittest` finds tests. You can specify an alternative prefix by setting " -"``patch.TEST_PREFIX``." +"finds tests by looking for method names that start with " +"``patch.TEST_PREFIX``. By default this is ``'test'``, which matches the " +"way :mod:`unittest` finds tests. You can specify an alternative prefix by " +"setting ``patch.TEST_PREFIX``." msgstr "" msgid "" @@ -1096,9 +1098,9 @@ msgid "" msgstr "" msgid "" -":func:`patch` takes arbitrary keyword arguments. These will be passed to :" -"class:`AsyncMock` if the patched object is asynchronous, to :class:" -"`MagicMock` otherwise or to *new_callable* if specified." +":func:`patch` takes arbitrary keyword arguments. These will be passed " +"to :class:`AsyncMock` if the patched object is asynchronous, " +"to :class:`MagicMock` otherwise or to *new_callable* if specified." msgstr "" msgid "" @@ -1122,14 +1124,14 @@ msgstr "" msgid "" "Patching a class replaces the class with a :class:`MagicMock` *instance*. If " -"the class is instantiated in the code under test then it will be the :attr:" -"`~Mock.return_value` of the mock that will be used." +"the class is instantiated in the code under test then it will be " +"the :attr:`~Mock.return_value` of the mock that will be used." msgstr "" msgid "" -"If the class is instantiated multiple times you could use :attr:`~Mock." -"side_effect` to return a new mock each time. Alternatively you can set the " -"*return_value* to be anything you want." +"If the class is instantiated multiple times you could " +"use :attr:`~Mock.side_effect` to return a new mock each time. Alternatively " +"you can set the *return_value* to be anything you want." msgstr "" msgid "" @@ -1217,11 +1219,11 @@ msgid "" msgstr "" msgid "" -"As well as attributes on the created mock attributes, like the :attr:`~Mock." -"return_value` and :attr:`~Mock.side_effect`, of child mocks can also be " -"configured. These aren't syntactically valid to pass in directly as keyword " -"arguments, but a dictionary with these as keys can still be expanded into a :" -"func:`patch` call using ``**``::" +"As well as attributes on the created mock attributes, like " +"the :attr:`~Mock.return_value` and :attr:`~Mock.side_effect`, of child mocks " +"can also be configured. These aren't syntactically valid to pass in directly " +"as keyword arguments, but a dictionary with these as keys can still be " +"expanded into a :func:`patch` call using ``**``::" msgstr "" msgid "" @@ -1238,8 +1240,8 @@ msgstr "" msgid "" "By default, attempting to patch a function in a module (or a method or an " -"attribute in a class) that does not exist will fail with :exc:" -"`AttributeError`::" +"attribute in a class) that does not exist will fail " +"with :exc:`AttributeError`::" msgstr "" msgid "" @@ -1283,14 +1285,14 @@ msgstr "" msgid "" ":func:`patch.object` can be used as a decorator, class decorator or a " "context manager. Arguments *new*, *spec*, *create*, *spec_set*, *autospec* " -"and *new_callable* have the same meaning as for :func:`patch`. Like :func:" -"`patch`, :func:`patch.object` takes arbitrary keyword arguments for " -"configuring the mock object it creates." +"and *new_callable* have the same meaning as for :func:`patch`. " +"Like :func:`patch`, :func:`patch.object` takes arbitrary keyword arguments " +"for configuring the mock object it creates." msgstr "" msgid "" -"When used as a class decorator :func:`patch.object` honours ``patch." -"TEST_PREFIX`` for choosing which methods to wrap." +"When used as a class decorator :func:`patch.object` honours " +"``patch.TEST_PREFIX`` for choosing which methods to wrap." msgstr "" msgid "" @@ -1356,8 +1358,9 @@ msgid "" msgstr "" msgid "" -"When used as a class decorator :func:`patch.dict` honours ``patch." -"TEST_PREFIX`` (default to ``'test'``) for choosing which methods to wrap:" +"When used as a class decorator :func:`patch.dict` honours " +"``patch.TEST_PREFIX`` (default to ``'test'``) for choosing which methods to " +"wrap:" msgstr "" msgid "" @@ -1381,9 +1384,9 @@ msgid "" ":func:`patch.dict` can be used with dictionary like objects that aren't " "actually dictionaries. At the very minimum they must support item getting, " "setting, deleting and either iteration or membership test. This corresponds " -"to the magic methods :meth:`~object.__getitem__`, :meth:`~object." -"__setitem__`, :meth:`~object.__delitem__` and either :meth:`~container." -"__iter__` or :meth:`~object.__contains__`." +"to the magic " +"methods :meth:`~object.__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__delitem__` " +"and either :meth:`~container.__iter__` or :meth:`~object.__contains__`." msgstr "" msgid "patch.multiple" @@ -1403,8 +1406,8 @@ msgstr "" msgid "" "Use :data:`DEFAULT` as the value if you want :func:`patch.multiple` to " "create mocks for you. In this case the created mocks are passed into a " -"decorated function by keyword, and a dictionary is returned when :func:" -"`patch.multiple` is used as a context manager." +"decorated function by keyword, and a dictionary is returned " +"when :func:`patch.multiple` is used as a context manager." msgstr "" msgid "" @@ -1415,8 +1418,8 @@ msgid "" msgstr "" msgid "" -"When used as a class decorator :func:`patch.multiple` honours ``patch." -"TEST_PREFIX`` for choosing which methods to wrap." +"When used as a class decorator :func:`patch.multiple` honours " +"``patch.TEST_PREFIX`` for choosing which methods to wrap." msgstr "" msgid "" @@ -1531,8 +1534,8 @@ msgstr "" msgid "" "If you use this technique you must ensure that the patching is \"undone\" by " "calling ``stop``. This can be fiddlier than you might think, because if an " -"exception is raised in the ``setUp`` then ``tearDown`` is not called. :meth:" -"`unittest.TestCase.addCleanup` makes this easier::" +"exception is raised in the ``setUp`` then ``tearDown`` is not " +"called. :meth:`unittest.TestCase.addCleanup` makes this easier::" msgstr "" msgid "" @@ -1553,8 +1556,8 @@ msgid "" msgstr "" msgid "" -"It is also possible to stop all patches which have been started by using :" -"func:`patch.stopall`." +"It is also possible to stop all patches which have been started by " +"using :func:`patch.stopall`." msgstr "" msgid "Stop all active patches. Only stops patches started with ``start``." @@ -1590,8 +1593,8 @@ msgstr "" msgid "" "It is possible that you want to use a different prefix for your tests. You " -"can inform the patchers of the different prefix by setting ``patch." -"TEST_PREFIX``::" +"can inform the patchers of the different prefix by setting " +"``patch.TEST_PREFIX``::" msgstr "" msgid "" @@ -1663,10 +1666,10 @@ msgstr "" msgid "" "Now we want to test ``some_function`` but we want to mock out ``SomeClass`` " "using :func:`patch`. The problem is that when we import module b, which we " -"will have to do when it imports ``SomeClass`` from module a. If we use :func:" -"`patch` to mock out ``a.SomeClass`` then it will have no effect on our test; " -"module b already has a reference to the *real* ``SomeClass`` and it looks " -"like our patching had no effect." +"will have to do when it imports ``SomeClass`` from module a. If we " +"use :func:`patch` to mock out ``a.SomeClass`` then it will have no effect on " +"our test; module b already has a reference to the *real* ``SomeClass`` and " +"it looks like our patching had no effect." msgstr "" msgid "" @@ -1681,10 +1684,10 @@ msgstr "" msgid "" "However, consider the alternative scenario where instead of ``from a import " -"SomeClass`` module b does ``import a`` and ``some_function`` uses ``a." -"SomeClass``. Both of these import forms are common. In this case the class " -"we want to patch is being looked up in the module and so we have to patch " -"``a.SomeClass`` instead::" +"SomeClass`` module b does ``import a`` and ``some_function`` uses " +"``a.SomeClass``. Both of these import forms are common. In this case the " +"class we want to patch is being looked up in the module and so we have to " +"patch ``a.SomeClass`` instead::" msgstr "" msgid "@patch('a.SomeClass')" @@ -1697,8 +1700,8 @@ msgid "" "Both patch_ and patch.object_ correctly patch and restore descriptors: class " "methods, static methods and properties. You should patch these on the " "*class* rather than an instance. They also work with *some* objects that " -"proxy attribute access, like the `django settings object `_." msgstr "" @@ -1709,9 +1712,9 @@ msgid "Mocking Magic Methods" msgstr "" msgid "" -":class:`Mock` supports mocking the Python protocol methods, also known as :" -"term:`\"magic methods\" `. This allows mock objects to replace " -"containers or other objects that implement Python protocols." +":class:`Mock` supports mocking the Python protocol methods, also known " +"as :term:`\"magic methods\" `. This allows mock objects to " +"replace containers or other objects that implement Python protocols." msgstr "" msgid "" @@ -1728,8 +1731,8 @@ msgid "" msgstr "" msgid "" -"One use case for this is for mocking objects used as context managers in a :" -"keyword:`with` statement:" +"One use case for this is for mocking objects used as context managers in " +"a :keyword:`with` statement:" msgstr "" msgid "" @@ -1739,8 +1742,8 @@ msgstr "" msgid "" "If you use the *spec* keyword argument to create a mock then attempting to " -"set a magic method that isn't in the spec will raise an :exc:" -"`AttributeError`." +"set a magic method that isn't in the spec will raise " +"an :exc:`AttributeError`." msgstr "" msgid "The full list of supported magic methods is:" @@ -1824,8 +1827,8 @@ msgid "Magic Mock" msgstr "" msgid "" -"There are two ``MagicMock`` variants: :class:`MagicMock` and :class:" -"`NonCallableMagicMock`." +"There are two ``MagicMock`` variants: :class:`MagicMock` " +"and :class:`NonCallableMagicMock`." msgstr "" msgid "" @@ -1923,9 +1926,9 @@ msgstr "" msgid "" "The two equality methods, :meth:`!__eq__` and :meth:`!__ne__`, are special. " -"They do the default equality comparison on identity, using the :attr:`~Mock." -"side_effect` attribute, unless you change their return value to return " -"something else::" +"They do the default equality comparison on identity, using " +"the :attr:`~Mock.side_effect` attribute, unless you change their return " +"value to return something else::" msgstr "" msgid "" @@ -2012,8 +2015,8 @@ msgid "" msgstr "" msgid "" -"The ``sentinel`` attributes now preserve their identity when they are :mod:" -"`copied ` or :mod:`pickled `." +"The ``sentinel`` attributes now preserve their identity when they " +"are :mod:`copied ` or :mod:`pickled `." msgstr "" msgid "" @@ -2024,17 +2027,17 @@ msgid "" msgstr "" msgid "" -"In this example we monkey patch ``method`` to return ``sentinel." -"some_object``:" +"In this example we monkey patch ``method`` to return " +"``sentinel.some_object``:" msgstr "" msgid "DEFAULT" msgstr "" msgid "" -"The :data:`DEFAULT` object is a pre-created sentinel (actually ``sentinel." -"DEFAULT``). It can be used by :attr:`~Mock.side_effect` functions to " -"indicate that the normal return value should be used." +"The :data:`DEFAULT` object is a pre-created sentinel (actually " +"``sentinel.DEFAULT``). It can be used by :attr:`~Mock.side_effect` functions " +"to indicate that the normal return value should be used." msgstr "" msgid "call" @@ -2042,8 +2045,8 @@ msgstr "" msgid "" ":func:`call` is a helper object for making simpler assertions, for comparing " -"with :attr:`~Mock.call_args`, :attr:`~Mock.call_args_list`, :attr:`~Mock." -"mock_calls` and :attr:`~Mock.method_calls`. :func:`call` can also be used " +"with :attr:`~Mock.call_args`, :attr:`~Mock.call_args_list`, :attr:`~Mock.mock_calls` " +"and :attr:`~Mock.method_calls`. :func:`call` can also be used " "with :meth:`~Mock.assert_has_calls`." msgstr "" @@ -2068,17 +2071,18 @@ msgid "" "A ``call`` object is either a tuple of (positional args, keyword args) or " "(name, positional args, keyword args) depending on how it was constructed. " "When you construct them yourself this isn't particularly interesting, but " -"the ``call`` objects that are in the :attr:`Mock.call_args`, :attr:`Mock." -"call_args_list` and :attr:`Mock.mock_calls` attributes can be introspected " -"to get at the individual arguments they contain." +"the ``call`` objects that are in " +"the :attr:`Mock.call_args`, :attr:`Mock.call_args_list` " +"and :attr:`Mock.mock_calls` attributes can be introspected to get at the " +"individual arguments they contain." msgstr "" msgid "" -"The ``call`` objects in :attr:`Mock.call_args` and :attr:`Mock." -"call_args_list` are two-tuples of (positional args, keyword args) whereas " -"the ``call`` objects in :attr:`Mock.mock_calls`, along with ones you " -"construct yourself, are three-tuples of (name, positional args, keyword " -"args)." +"The ``call`` objects in :attr:`Mock.call_args` " +"and :attr:`Mock.call_args_list` are two-tuples of (positional args, keyword " +"args) whereas the ``call`` objects in :attr:`Mock.mock_calls`, along with " +"ones you construct yourself, are three-tuples of (name, positional args, " +"keyword args)." msgstr "" msgid "" @@ -2119,8 +2123,8 @@ msgid "" msgstr "" msgid "" -"See :ref:`auto-speccing` for examples of how to use auto-speccing with :func:" -"`create_autospec` and the *autospec* argument to :func:`patch`." +"See :ref:`auto-speccing` for examples of how to use auto-speccing " +"with :func:`create_autospec` and the *autospec* argument to :func:`patch`." msgstr "" msgid "" @@ -2140,13 +2144,14 @@ msgstr "" msgid "" "To ignore certain arguments you can pass in objects that compare equal to " -"*everything*. Calls to :meth:`~Mock.assert_called_with` and :meth:`~Mock." -"assert_called_once_with` will then succeed no matter what was passed in." +"*everything*. Calls to :meth:`~Mock.assert_called_with` " +"and :meth:`~Mock.assert_called_once_with` will then succeed no matter what " +"was passed in." msgstr "" msgid "" -":data:`ANY` can also be used in comparisons with call lists like :attr:" -"`~Mock.mock_calls`:" +":data:`ANY` can also be used in comparisons with call lists " +"like :attr:`~Mock.mock_calls`:" msgstr "" msgid "" @@ -2169,8 +2174,8 @@ msgid "" ":data:`FILTER_DIR` is a module level variable that controls the way mock " "objects respond to :func:`dir`. The default is ``True``, which uses the " "filtering described below, to only show useful members. If you dislike this " -"filtering, or need to switch it off for diagnostic purposes, then set ``mock." -"FILTER_DIR = False``." +"filtering, or need to switch it off for diagnostic purposes, then set " +"``mock.FILTER_DIR = False``." msgstr "" msgid "" @@ -2244,15 +2249,16 @@ msgid "" msgstr "" msgid "" -"*read_data* is a string for the :meth:`~io.RawIOBase.read`, :meth:`~io." -"IOBase.readline`, and :meth:`~io.IOBase.readlines` methods of the file " -"handle to return. Calls to those methods will take data from *read_data* " -"until it is depleted. The mock of these methods is pretty simplistic: every " -"time the *mock* is called, the *read_data* is rewound to the start. If you " -"need more control over the data that you are feeding to the tested code you " -"will need to customize this mock for yourself. When that is insufficient, " -"one of the in-memory filesystem packages on `PyPI `_ can " -"offer a realistic filesystem for testing." +"*read_data* is a string for " +"the :meth:`~io.RawIOBase.read`, :meth:`~io.IOBase.readline`, " +"and :meth:`~io.IOBase.readlines` methods of the file handle to return. " +"Calls to those methods will take data from *read_data* until it is " +"depleted. The mock of these methods is pretty simplistic: every time the " +"*mock* is called, the *read_data* is rewound to the start. If you need more " +"control over the data that you are feeding to the tested code you will need " +"to customize this mock for yourself. When that is insufficient, one of the " +"in-memory filesystem packages on `PyPI `_ can offer a " +"realistic filesystem for testing." msgstr "" msgid "" @@ -2281,8 +2287,8 @@ msgstr "" msgid "" "The issue is that even if you mock out the call to :func:`open` it is the " -"*returned object* that is used as a context manager (and has :meth:`~object." -"__enter__` and :meth:`~object.__exit__` called)." +"*returned object* that is used as a context manager (and " +"has :meth:`~object.__enter__` and :meth:`~object.__exit__` called)." msgstr "" msgid "" @@ -2326,8 +2332,8 @@ msgid "" "limits the api of mocks to the api of an original object (the spec), but it " "is recursive (implemented lazily) so that attributes of mocks only have the " "same api as the attributes of the spec. In addition mocked functions / " -"methods have the same call signature as the original so they raise a :exc:" -"`TypeError` if they are called incorrectly." +"methods have the same call signature as the original so they raise " +"a :exc:`TypeError` if they are called incorrectly." msgstr "" msgid "Before I explain how auto-speccing works, here's why it is needed." @@ -2372,8 +2378,8 @@ msgid "" msgstr "" msgid "" -"Auto-speccing solves this problem. You can either pass ``autospec=True`` to :" -"func:`patch` / :func:`patch.object` or use the :func:`create_autospec` " +"Auto-speccing solves this problem. You can either pass ``autospec=True`` " +"to :func:`patch` / :func:`patch.object` or use the :func:`create_autospec` " "function to create a mock with a spec. If you use the ``autospec=True`` " "argument to :func:`patch` then the object that is being replaced will be " "used as the spec object. Because the speccing is done \"lazily\" (the spec " @@ -2396,9 +2402,9 @@ msgid "" msgstr "" msgid "" -"You can see that :class:`!request.Request` has a spec. :class:`!request." -"Request` takes two arguments in the constructor (one of which is *self*). " -"Here's what happens if we try to call it incorrectly::" +"You can see that :class:`!request.Request` has a spec. :class:`!" +"request.Request` takes two arguments in the constructor (one of which is " +"*self*). Here's what happens if we try to call it incorrectly::" msgstr "" msgid "" @@ -2443,8 +2449,8 @@ msgid "" msgstr "" msgid "" -"As well as using *autospec* through :func:`patch` there is a :func:" -"`create_autospec` for creating autospecced mocks directly:" +"As well as using *autospec* through :func:`patch` there is " +"a :func:`create_autospec` for creating autospecced mocks directly:" msgstr "" msgid "" @@ -2597,18 +2603,18 @@ msgid "*wraps*" msgstr "" msgid "" -"If all three are set, mock will return the value from :attr:`~Mock." -"side_effect`, ignoring :attr:`~Mock.return_value` and the wrapped object " -"altogether. If any two are set, the one with the higher precedence will " -"return the value. Regardless of the order of which was set first, the order " -"of precedence remains unchanged." +"If all three are set, mock will return the value " +"from :attr:`~Mock.side_effect`, ignoring :attr:`~Mock.return_value` and the " +"wrapped object altogether. If any two are set, the one with the higher " +"precedence will return the value. Regardless of the order of which was set " +"first, the order of precedence remains unchanged." msgstr "" msgid "" "As ``None`` is the default value of :attr:`~Mock.side_effect`, if you " "reassign its value back to ``None``, the order of precedence will be checked " -"between :attr:`~Mock.return_value` and the wrapped object, ignoring :attr:" -"`~Mock.side_effect`." +"between :attr:`~Mock.return_value` and the wrapped object, " +"ignoring :attr:`~Mock.side_effect`." msgstr "" msgid "" @@ -2618,8 +2624,8 @@ msgid "" msgstr "" msgid "" -"When :class:`Mock` wraps an object, the default value of :attr:`~Mock." -"return_value` will be :data:`DEFAULT`." +"When :class:`Mock` wraps an object, the default value " +"of :attr:`~Mock.return_value` will be :data:`DEFAULT`." msgstr "" msgid "" @@ -2645,7 +2651,7 @@ msgid "" msgstr "" msgid "" -"If :attr:`~Mock.side_effect` is exhausted, the order of precedence will not " -"cause a value to be obtained from the successors. Instead, ``StopIteration`` " -"exception is raised." +"If :attr:`~Mock.side_effect` is :term:`exhausted`, the order of precedence " +"will not cause a value to be obtained from the successors. Instead, " +"``StopIteration`` exception is raised." msgstr "" diff --git a/library/unittest.po b/library/unittest.po index c171e2e..0066fa4 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,8 +91,8 @@ msgid "Another test-support module with a very different flavor." msgstr "" msgid "" -"`Simple Smalltalk Testing: With Patterns `_" +"`Simple Smalltalk Testing: With Patterns `_" msgstr "" msgid "" @@ -181,11 +182,11 @@ msgstr "" msgid "" "The crux of each test is a call to :meth:`~TestCase.assertEqual` to check " -"for an expected result; :meth:`~TestCase.assertTrue` or :meth:`~TestCase." -"assertFalse` to verify a condition; or :meth:`~TestCase.assertRaises` to " -"verify that a specific exception gets raised. These methods are used " -"instead of the :keyword:`assert` statement so the test runner can accumulate " -"all test results and produce a report." +"for an expected result; :meth:`~TestCase.assertTrue` " +"or :meth:`~TestCase.assertFalse` to verify a condition; " +"or :meth:`~TestCase.assertRaises` to verify that a specific exception gets " +"raised. These methods are used instead of the :keyword:`assert` statement " +"so the test runner can accumulate all test results and produce a report." msgstr "" msgid "" @@ -210,9 +211,9 @@ msgid "" msgstr "" msgid "" -"Passing the ``-v`` option to your test script will instruct :func:`unittest." -"main` to enable a higher level of verbosity, and produce the following " -"output::" +"Passing the ``-v`` option to your test script will " +"instruct :func:`unittest.main` to enable a higher level of verbosity, and " +"produce the following output::" msgstr "" msgid "" @@ -345,8 +346,8 @@ msgstr "" msgid "" "For example, ``-k foo`` matches ``foo_tests.SomeTest.test_something``, " -"``bar_tests.SomeTest.test_foo``, but not ``bar_tests.FooTest." -"test_something``." +"``bar_tests.SomeTest.test_foo``, but not " +"``bar_tests.FooTest.test_something``." msgstr "" msgid "Show local variables in tracebacks." @@ -377,9 +378,9 @@ msgstr "" msgid "" "Unittest supports simple test discovery. In order to be compatible with test " -"discovery, all of the test files must be :ref:`modules ` or :" -"ref:`packages ` importable from the top-level directory of the " -"project (this means that their filenames must be valid :ref:`identifiers " +"discovery, all of the test files must be :ref:`modules ` " +"or :ref:`packages ` importable from the top-level directory of " +"the project (this means that their filenames must be valid :ref:`identifiers " "`)." msgstr "" @@ -462,8 +463,8 @@ msgstr "" msgid "" "Test discovery dropped the :term:`namespace packages ` " "support. It has been broken since Python 3.7. Start directory and its " -"subdirectories containing tests must be regular package that have ``__init__." -"py`` file." +"subdirectories containing tests must be regular package that have " +"``__init__.py`` file." msgstr "" msgid "" @@ -484,8 +485,8 @@ msgid "" "The basic building blocks of unit testing are :dfn:`test cases` --- single " "scenarios that must be set up and checked for correctness. In :mod:`!" "unittest`, test cases are represented by :class:`unittest.TestCase` " -"instances. To make your own test cases you must write subclasses of :class:" -"`TestCase` or use :class:`FunctionTestCase`." +"instances. To make your own test cases you must write subclasses " +"of :class:`TestCase` or use :class:`FunctionTestCase`." msgstr "" msgid "" @@ -519,9 +520,9 @@ msgstr "" msgid "" "Tests can be numerous, and their set-up can be repetitive. Luckily, we can " -"factor out set-up code by implementing a method called :meth:`~TestCase." -"setUp`, which the testing framework will automatically call for every single " -"test we run::" +"factor out set-up code by implementing a method " +"called :meth:`~TestCase.setUp`, which the testing framework will " +"automatically call for every single test we run::" msgstr "" msgid "" @@ -576,18 +577,18 @@ msgstr "" msgid "" "Such a working environment for the testing code is called a :dfn:`test " "fixture`. A new TestCase instance is created as a unique test fixture used " -"to execute each individual test method. Thus :meth:`~TestCase.setUp`, :meth:" -"`~TestCase.tearDown`, and :meth:`!TestCase.__init__` will be called once per " -"test." +"to execute each individual test method. " +"Thus :meth:`~TestCase.setUp`, :meth:`~TestCase.tearDown`, and :meth:`!" +"TestCase.__init__` will be called once per test." msgstr "" msgid "" "It is recommended that you use TestCase implementations to group tests " "together according to the features they test. :mod:`!unittest` provides a " "mechanism for this: the :dfn:`test suite`, represented by :mod:`!" -"unittest`'s :class:`TestSuite` class. In most cases, calling :func:" -"`unittest.main` will do the right thing and collect all the module's test " -"cases for you and execute them." +"unittest`'s :class:`TestSuite` class. In most cases, " +"calling :func:`unittest.main` will do the right thing and collect all the " +"module's test cases for you and execute them." msgstr "" msgid "" @@ -685,10 +686,11 @@ msgid "" msgstr "" msgid "" -"In some cases, the existing tests may have been written using the :mod:" -"`doctest` module. If so, :mod:`doctest` provides a :class:`~doctest." -"DocTestSuite` class that can automatically build :class:`unittest.TestSuite` " -"instances from the existing :mod:`doctest`\\ -based tests." +"In some cases, the existing tests may have been written using " +"the :mod:`doctest` module. If so, :mod:`doctest` provides " +"a :class:`~doctest.DocTestSuite` class that can automatically " +"build :class:`unittest.TestSuite` instances from the " +"existing :mod:`doctest`\\ -based tests." msgstr "" msgid "Skipping tests and expected failures" @@ -702,10 +704,10 @@ msgid "" msgstr "" msgid "" -"Skipping a test is simply a matter of using the :deco:`skip` :term:" -"`decorator` or one of its conditional variants, calling :meth:`TestCase." -"skipTest` within a :meth:`~TestCase.setUp` or test method, or raising :exc:" -"`SkipTest` directly." +"Skipping a test is simply a matter of using " +"the :deco:`skip` :term:`decorator` or one of its conditional variants, " +"calling :meth:`TestCase.skipTest` within a :meth:`~TestCase.setUp` or test " +"method, or raising :exc:`SkipTest` directly." msgstr "" msgid "Basic skipping looks like this::" @@ -826,10 +828,11 @@ msgid "" msgstr "" msgid "" -"Skipped tests will not have :meth:`~TestCase.setUp` or :meth:`~TestCase." -"tearDown` run around them. Skipped classes will not have :meth:`~TestCase." -"setUpClass` or :meth:`~TestCase.tearDownClass` run. Skipped modules will not " -"have :func:`setUpModule` or :func:`tearDownModule` run." +"Skipped tests will not have :meth:`~TestCase.setUp` " +"or :meth:`~TestCase.tearDown` run around them. Skipped classes will not " +"have :meth:`~TestCase.setUpClass` or :meth:`~TestCase.tearDownClass` run. " +"Skipped modules will not have :func:`setUpModule` or :func:`tearDownModule` " +"run." msgstr "" msgid "Distinguishing test iterations using subtests" @@ -949,17 +952,17 @@ msgstr "" msgid "" "Method called to prepare the test fixture. This is called immediately " -"before calling the test method; other than :exc:`AssertionError` or :exc:" -"`SkipTest`, any exception raised by this method will be considered an error " -"rather than a test failure. The default implementation does nothing." +"before calling the test method; other than :exc:`AssertionError` " +"or :exc:`SkipTest`, any exception raised by this method will be considered " +"an error rather than a test failure. The default implementation does nothing." msgstr "" msgid "" "Method called immediately after the test method has been called and the " "result recorded. This is called even if the test method raised an " "exception, so the implementation in subclasses may need to be particularly " -"careful about checking internal state. Any exception, other than :exc:" -"`AssertionError` or :exc:`SkipTest`, raised by this method will be " +"careful about checking internal state. Any exception, other " +"than :exc:`AssertionError` or :exc:`SkipTest`, raised by this method will be " "considered an additional error rather than a test failure (thus increasing " "the total number of reported errors). This method will only be called if " "the :meth:`setUp` succeeds, regardless of the outcome of the test method. " @@ -1145,9 +1148,9 @@ msgstr "" msgid "" "All the assert methods accept a *msg* argument that, if specified, is used " "as the error message on failure (see also :data:`longMessage`). Note that " -"the *msg* keyword argument can be passed to :meth:`assertRaises`, :meth:" -"`assertRaisesRegex`, :meth:`assertWarns`, :meth:`assertWarnsRegex` only when " -"they are used as a context manager." +"the *msg* keyword argument can be passed " +"to :meth:`assertRaises`, :meth:`assertRaisesRegex`, :meth:`assertWarns`, :meth:`assertWarnsRegex` " +"only when they are used as a context manager." msgstr "" msgid "" @@ -1221,8 +1224,8 @@ msgid "``fun(*args, **kwds)`` raises *exc*" msgstr "" msgid "" -":meth:`assertRaisesRegex(exc, r, fun, *args, **kwds) `" +":meth:`assertRaisesRegex(exc, r, fun, *args, **kwds) " +"`" msgstr "" msgid "``fun(*args, **kwds)`` raises *exc* and the message matches regex *r*" @@ -1235,8 +1238,8 @@ msgid "``fun(*args, **kwds)`` raises *warn*" msgstr "" msgid "" -":meth:`assertWarnsRegex(warn, r, fun, *args, **kwds) `" +":meth:`assertWarnsRegex(warn, r, fun, *args, **kwds) " +"`" msgstr "" msgid "``fun(*args, **kwds)`` raises *warn* and the message matches regex *r*" @@ -1254,10 +1257,7 @@ msgstr "" msgid ":meth:`assertNoLogs(logger, level) `" msgstr "" -msgid "The ``with`` block does not log on" -msgstr "" - -msgid "*logger* with minimum *level*" +msgid "The ``with`` block does not log on *logger* with minimum *level*" msgstr "" msgid "3.10" @@ -1265,11 +1265,11 @@ msgstr "" msgid "" "Test that an exception is raised when *callable* is called with any " -"positional or keyword arguments that are also passed to :meth:" -"`assertRaises`. The test passes if *exception* is raised, is an error if " -"another exception is raised, or fails if no exception is raised. To catch " -"any of a group of exceptions, a tuple containing the exception classes may " -"be passed as *exception*." +"positional or keyword arguments that are also passed " +"to :meth:`assertRaises`. The test passes if *exception* is raised, is an " +"error if another exception is raised, or fails if no exception is raised. To " +"catch any of a group of exceptions, a tuple containing the exception classes " +"may be passed as *exception*." msgstr "" msgid "" @@ -1314,8 +1314,8 @@ msgstr "" msgid "" "Like :meth:`assertRaises` but also tests that *regex* matches on the string " "representation of the raised exception. *regex* may be a regular expression " -"object or a string containing a regular expression suitable for use by :func:" -"`re.search`. Examples::" +"object or a string containing a regular expression suitable for use " +"by :func:`re.search`. Examples::" msgstr "" msgid "" @@ -1339,10 +1339,10 @@ msgstr "" msgid "" "Test that a warning is triggered when *callable* is called with any " -"positional or keyword arguments that are also passed to :meth:" -"`assertWarns`. The test passes if *warning* is triggered and fails if it " -"isn't. Any exception is an error. To catch any of a group of warnings, a " -"tuple containing the warning classes may be passed as *warnings*." +"positional or keyword arguments that are also passed " +"to :meth:`assertWarns`. The test passes if *warning* is triggered and fails " +"if it isn't. Any exception is an error. To catch any of a group of " +"warnings, a tuple containing the warning classes may be passed as *warnings*." msgstr "" msgid "" @@ -1363,9 +1363,9 @@ msgstr "" msgid "" "The context manager will store the caught warning object in its :attr:`!" -"warning` attribute, and the source line which triggered the warnings in the :" -"attr:`!filename` and :attr:`!lineno` attributes. This can be useful if the " -"intention is to perform additional checks on the warning caught::" +"warning` attribute, and the source line which triggered the warnings in " +"the :attr:`!filename` and :attr:`!lineno` attributes. This can be useful if " +"the intention is to perform additional checks on the warning caught::" msgstr "" msgid "" @@ -1400,8 +1400,8 @@ msgstr "" msgid "" "Like :meth:`assertWarns` but also tests that *regex* matches on the message " "of the triggered warning. *regex* may be a regular expression object or a " -"string containing a regular expression suitable for use by :func:`re." -"search`. Example::" +"string containing a regular expression suitable for use " +"by :func:`re.search`. Example::" msgstr "" msgid "" @@ -1432,9 +1432,9 @@ msgid "" msgstr "" msgid "" -"If given, *logger* should be a :class:`logging.Logger` object or a :class:" -"`str` giving the name of a logger. The default is the root logger, which " -"will catch all messages that were not blocked by a non-propagating " +"If given, *logger* should be a :class:`logging.Logger` object or " +"a :class:`str` giving the name of a logger. The default is the root logger, " +"which will catch all messages that were not blocked by a non-propagating " "descendent logger." msgstr "" @@ -1446,8 +1446,8 @@ msgstr "" msgid "" "If given, *formatter* should be a :class:`logging.Formatter` object. The " -"default is a formatter with format string ``\"%(levelname)s:%(name)s:" -"%(message)s\"``" +"default is a formatter with format string ``\"%(levelname)s:%(name)s:%" +"(message)s\"``" msgstr "" msgid "" @@ -1489,9 +1489,9 @@ msgid "" msgstr "" msgid "" -"If given, *logger* should be a :class:`logging.Logger` object or a :class:" -"`str` giving the name of a logger. The default is the root logger, which " -"will catch all messages." +"If given, *logger* should be a :class:`logging.Logger` object or " +"a :class:`str` giving the name of a logger. The default is the root logger, " +"which will catch all messages." msgstr "" msgid "" @@ -1596,8 +1596,8 @@ msgid "" "Test that *first* and *second* are approximately (or not approximately) " "equal by computing the difference, rounding to the given number of decimal " "*places* (default 7), and comparing to zero. Note that these methods round " -"the values to the given number of *decimal places* (i.e. like the :func:" -"`round` function) and not *significant digits*." +"the values to the given number of *decimal places* (i.e. like " +"the :func:`round` function) and not *significant digits*." msgstr "" msgid "" @@ -1636,8 +1636,8 @@ msgid "Added under the name ``assertRegexpMatches``." msgstr "" msgid "" -"The method ``assertRegexpMatches()`` has been renamed to :meth:`." -"assertRegex`." +"The method ``assertRegexpMatches()`` has been renamed " +"to :meth:`.assertRegex`." msgstr "" msgid ":meth:`.assertNotRegex`." @@ -1680,16 +1680,16 @@ msgid "" "Registers a type-specific method called by :meth:`assertEqual` to check if " "two objects of exactly the same *typeobj* (not subclasses) compare equal. " "*function* must take two positional arguments and a third msg=None keyword " -"argument just as :meth:`assertEqual` does. It must raise :data:`self." -"failureException(msg) ` when inequality between the first " -"two parameters is detected -- possibly providing useful information and " -"explaining the inequalities in details in the error message." +"argument just as :meth:`assertEqual` does. It must " +"raise :data:`self.failureException(msg) ` when inequality " +"between the first two parameters is detected -- possibly providing useful " +"information and explaining the inequalities in details in the error message." msgstr "" msgid "" -"The list of type-specific methods automatically used by :meth:`~TestCase." -"assertEqual` are summarized in the following table. Note that it's usually " -"not necessary to invoke these methods directly." +"The list of type-specific methods automatically used " +"by :meth:`~TestCase.assertEqual` are summarized in the following table. " +"Note that it's usually not necessary to invoke these methods directly." msgstr "" msgid "Used to compare" @@ -1764,8 +1764,8 @@ msgid "" msgstr "" msgid "" -"Fails if either of *first* or *second* does not have a :meth:`~frozenset." -"difference` method." +"Fails if either of *first* or *second* does not have " +"a :meth:`~frozenset.difference` method." msgstr "" msgid "" @@ -1787,8 +1787,8 @@ msgid "" "This class attribute gives the exception raised by the test method. If a " "test framework needs to use a specialized exception, possibly to carry " "additional information, it must subclass this exception in order to \"play " -"fair\" with the framework. The initial value of this attribute is :exc:" -"`AssertionError`." +"fair\" with the framework. The initial value of this attribute " +"is :exc:`AssertionError`." msgstr "" msgid "" @@ -1812,8 +1812,8 @@ msgid "" "This attribute controls the maximum length of diffs output by assert methods " "that report diffs on failure. It defaults to 80*8 characters. Assert methods " "affected by this attribute are :meth:`assertSequenceEqual` (including all " -"the sequence comparison methods that delegate to it), :meth:" -"`assertDictEqual` and :meth:`assertMultiLineEqual`." +"the sequence comparison methods that delegate to " +"it), :meth:`assertDictEqual` and :meth:`assertMultiLineEqual`." msgstr "" msgid "" @@ -1827,8 +1827,8 @@ msgid "" msgstr "" msgid "" -"Return the number of tests represented by this test object. For :class:" -"`TestCase` instances, this will always be ``1``." +"Return the number of tests represented by this test object. " +"For :class:`TestCase` instances, this will always be ``1``." msgstr "" msgid "" @@ -1838,9 +1838,9 @@ msgid "" msgstr "" msgid "" -"For :class:`TestCase` instances, this will always be an instance of :class:" -"`TestResult`; subclasses of :class:`TestCase` should override this as " -"necessary." +"For :class:`TestCase` instances, this will always be an instance " +"of :class:`TestResult`; subclasses of :class:`TestCase` should override this " +"as necessary." msgstr "" msgid "" @@ -1857,8 +1857,8 @@ msgstr "" msgid "" "In 3.1 this was changed to add the test name to the short description even " "in the presence of a docstring. This caused compatibility issues with " -"unittest extensions and adding the test name was moved to the :class:" -"`TextTestResult` in Python 3.2." +"unittest extensions and adding the test name was moved to " +"the :class:`TextTestResult` in Python 3.2." msgstr "" msgid "" @@ -1875,20 +1875,21 @@ msgid "" msgstr "" msgid "" -"Enter the supplied :term:`context manager`. If successful, also add its :" -"meth:`~object.__exit__` method as a cleanup function by :meth:`addCleanup` " -"and return the result of the :meth:`~object.__enter__` method." +"Enter the supplied :term:`context manager`. If successful, also add " +"its :meth:`~object.__exit__` method as a cleanup function " +"by :meth:`addCleanup` and return the result of the :meth:`~object.__enter__` " +"method." msgstr "" msgid "" -"This method is called unconditionally after :meth:`tearDown`, or after :meth:" -"`setUp` if :meth:`setUp` raises an exception." +"This method is called unconditionally after :meth:`tearDown`, or " +"after :meth:`setUp` if :meth:`setUp` raises an exception." msgstr "" msgid "" -"It is responsible for calling all the cleanup functions added by :meth:" -"`addCleanup`. If you need cleanup functions to be called *prior* to :meth:" -"`tearDown` then you can call :meth:`doCleanups` yourself." +"It is responsible for calling all the cleanup functions added " +"by :meth:`addCleanup`. If you need cleanup functions to be called *prior* " +"to :meth:`tearDown` then you can call :meth:`doCleanups` yourself." msgstr "" msgid "" @@ -1910,21 +1911,22 @@ msgid "" msgstr "" msgid "" -"Enter the supplied :term:`context manager`. If successful, also add its :" -"meth:`~object.__exit__` method as a cleanup function by :meth:" -"`addClassCleanup` and return the result of the :meth:`~object.__enter__` " -"method." +"Enter the supplied :term:`context manager`. If successful, also add " +"its :meth:`~object.__exit__` method as a cleanup function " +"by :meth:`addClassCleanup` and return the result of " +"the :meth:`~object.__enter__` method." msgstr "" msgid "" -"This method is called unconditionally after :meth:`tearDownClass`, or after :" -"meth:`setUpClass` if :meth:`setUpClass` raises an exception." +"This method is called unconditionally after :meth:`tearDownClass`, or " +"after :meth:`setUpClass` if :meth:`setUpClass` raises an exception." msgstr "" msgid "" -"It is responsible for calling all the cleanup functions added by :meth:" -"`addClassCleanup`. If you need cleanup functions to be called *prior* to :" -"meth:`tearDownClass` then you can call :meth:`doClassCleanups` yourself." +"It is responsible for calling all the cleanup functions added " +"by :meth:`addClassCleanup`. If you need cleanup functions to be called " +"*prior* to :meth:`tearDownClass` then you can call :meth:`doClassCleanups` " +"yourself." msgstr "" msgid "" @@ -1943,11 +1945,11 @@ msgid "" msgstr "" msgid "" -"Method called to prepare the test fixture. This is called after :meth:" -"`TestCase.setUp`. This is called immediately before calling the test method; " -"other than :exc:`AssertionError` or :exc:`SkipTest`, any exception raised by " -"this method will be considered an error rather than a test failure. The " -"default implementation does nothing." +"Method called to prepare the test fixture. This is called " +"after :meth:`TestCase.setUp`. This is called immediately before calling the " +"test method; other than :exc:`AssertionError` or :exc:`SkipTest`, any " +"exception raised by this method will be considered an error rather than a " +"test failure. The default implementation does nothing." msgstr "" msgid "" @@ -1967,17 +1969,17 @@ msgstr "" msgid "" "Enter the supplied :term:`asynchronous context manager`. If successful, " -"also add its :meth:`~object.__aexit__` method as a cleanup function by :meth:" -"`addAsyncCleanup` and return the result of the :meth:`~object.__aenter__` " -"method." +"also add its :meth:`~object.__aexit__` method as a cleanup function " +"by :meth:`addAsyncCleanup` and return the result of " +"the :meth:`~object.__aenter__` method." msgstr "" msgid "" -"Sets up a new event loop to run the test, collecting the result into the :" -"class:`TestResult` object passed as *result*. If *result* is omitted or " -"``None``, a temporary result object is created (by calling the :meth:" -"`~TestCase.defaultTestResult` method) and used. The result object is " -"returned to :meth:`run`'s caller. At the end of the test all the tasks in " +"Sets up a new event loop to run the test, collecting the result into " +"the :class:`TestResult` object passed as *result*. If *result* is omitted " +"or ``None``, a temporary result object is created (by calling " +"the :meth:`~TestCase.defaultTestResult` method) and used. The result object " +"is returned to :meth:`run`'s caller. At the end of the test all the tasks in " "the event loop are cancelled." msgstr "" @@ -2002,8 +2004,8 @@ msgid "" "\n" " async def test_response(self):\n" " events.append(\"test_response\")\n" -" response = await self._async_connection.get(\"https://example." -"com\")\n" +" response = await self._async_connection.get(\"https://" +"example.com\")\n" " self.assertEqual(response.status_code, 200)\n" " self.addAsyncCleanup(self.on_cleanup)\n" "\n" @@ -2031,8 +2033,8 @@ msgid "" "This class implements the portion of the :class:`TestCase` interface which " "allows the test runner to drive the test, but does not provide the methods " "which test code can use to check and report errors. This is used to create " -"test cases using legacy test code, allowing it to be integrated into a :mod:" -"`!unittest`-based test framework." +"test cases using legacy test code, allowing it to be integrated into " +"a :mod:`!unittest`-based test framework." msgstr "" msgid "Grouping tests" @@ -2063,8 +2065,8 @@ msgid "Add a :class:`TestCase` or :class:`TestSuite` to the suite." msgstr "" msgid "" -"Add all the tests from an iterable of :class:`TestCase` and :class:" -"`TestSuite` instances to this test suite." +"Add all the tests from an iterable of :class:`TestCase` " +"and :class:`TestSuite` instances to this test suite." msgstr "" msgid "" @@ -2077,8 +2079,9 @@ msgstr "" msgid "" "Run the tests associated with this suite, collecting the result into the " -"test result object passed as *result*. Note that unlike :meth:`TestCase." -"run`, :meth:`TestSuite.run` requires the result object to be passed in." +"test result object passed as *result*. Note that " +"unlike :meth:`TestCase.run`, :meth:`TestSuite.run` requires the result " +"object to be passed in." msgstr "" msgid "" @@ -2110,9 +2113,9 @@ msgid "" msgstr "" msgid "" -"In earlier versions the :class:`TestSuite` held references to each :class:" -"`TestCase` after :meth:`TestSuite.run`. Subclasses can restore that behavior " -"by overriding :meth:`!TestSuite._removeTestAtIndex`." +"In earlier versions the :class:`TestSuite` held references to " +"each :class:`TestCase` after :meth:`TestSuite.run`. Subclasses can restore " +"that behavior by overriding :meth:`!TestSuite._removeTestAtIndex`." msgstr "" msgid "" @@ -2127,9 +2130,9 @@ msgstr "" msgid "" "The :class:`TestLoader` class is used to create test suites from classes and " "modules. Normally, there is no need to create an instance of this class; " -"the :mod:`!unittest` module provides an instance that can be shared as :data:" -"`unittest.defaultTestLoader`. Using a subclass or instance, however, allows " -"customization of some configurable properties." +"the :mod:`!unittest` module provides an instance that can be shared " +"as :data:`unittest.defaultTestLoader`. Using a subclass or instance, " +"however, allows customization of some configurable properties." msgstr "" msgid ":class:`TestLoader` objects have the following attributes:" @@ -2146,16 +2149,16 @@ msgid ":class:`TestLoader` objects have the following methods:" msgstr "" msgid "" -"Return a suite of all test cases contained in the :class:`TestCase`\\ -" -"derived :class:`!testCaseClass`." +"Return a suite of all test cases contained in the :class:`TestCase`\\ " +"-derived :class:`!testCaseClass`." msgstr "" msgid "" -"A test case instance is created for each method named by :meth:" -"`getTestCaseNames`. By default these are the method names beginning with " -"``test``. If :meth:`getTestCaseNames` returns no methods, but the :meth:`!" -"runTest` method is implemented, a single test case is created for that " -"method instead." +"A test case instance is created for each method named " +"by :meth:`getTestCaseNames`. By default these are the method names beginning " +"with ``test``. If :meth:`getTestCaseNames` returns no methods, but " +"the :meth:`!runTest` method is implemented, a single test case is created " +"for that method instead." msgstr "" msgid "" @@ -2194,24 +2197,24 @@ msgstr "" msgid "" "The specifier *name* is a \"dotted name\" that may resolve either to a " -"module, a test case class, a test method within a test case class, a :class:" -"`TestSuite` instance, or a callable object which returns a :class:`TestCase` " -"or :class:`TestSuite` instance. These checks are applied in the order " -"listed here; that is, a method on a possible test case class will be picked " -"up as \"a test method within a test case class\", rather than \"a callable " -"object\"." +"module, a test case class, a test method within a test case class, " +"a :class:`TestSuite` instance, or a callable object which returns " +"a :class:`TestCase` or :class:`TestSuite` instance. These checks are " +"applied in the order listed here; that is, a method on a possible test case " +"class will be picked up as \"a test method within a test case class\", " +"rather than \"a callable object\"." msgstr "" msgid "" -"For example, if you have a module :mod:`!SampleTests` containing a :class:" -"`TestCase`\\ -derived class :class:`!SampleTestCase` with three test methods " -"(:meth:`!test_one`, :meth:`!test_two`, and :meth:`!test_three`), the " -"specifier ``'SampleTests.SampleTestCase'`` would cause this method to return " -"a suite which will run all three test methods. Using the specifier " -"``'SampleTests.SampleTestCase.test_two'`` would cause it to return a test " -"suite which will run only the :meth:`!test_two` test method. The specifier " -"can refer to modules and packages which have not been imported; they will be " -"imported as a side-effect." +"For example, if you have a module :mod:`!SampleTests` containing " +"a :class:`TestCase`\\ -derived class :class:`!SampleTestCase` with three " +"test methods (:meth:`!test_one`, :meth:`!test_two`, and :meth:`!" +"test_three`), the specifier ``'SampleTests.SampleTestCase'`` would cause " +"this method to return a suite which will run all three test methods. Using " +"the specifier ``'SampleTests.SampleTestCase.test_two'`` would cause it to " +"return a test suite which will run only the :meth:`!test_two` test method. " +"The specifier can refer to modules and packages which have not been " +"imported; they will be imported as a side-effect." msgstr "" msgid "The method optionally resolves *name* relative to the given *module*." @@ -2328,14 +2331,14 @@ msgid "" msgstr "" msgid "" -"Function to be used to compare method names when sorting them in :meth:" -"`getTestCaseNames` and all the ``loadTestsFrom*`` methods." +"Function to be used to compare method names when sorting them " +"in :meth:`getTestCaseNames` and all the ``loadTestsFrom*`` methods." msgstr "" msgid "" "Callable object that constructs a test suite from a list of tests. No " -"methods on the resulting object are needed. The default value is the :class:" -"`TestSuite` class." +"methods on the resulting object are needed. The default value is " +"the :class:`TestSuite` class." msgstr "" msgid "This affects all the ``loadTestsFrom*`` methods." @@ -2360,17 +2363,17 @@ msgid "" msgstr "" msgid "" -"A :class:`TestResult` object stores the results of a set of tests. The :" -"class:`TestCase` and :class:`TestSuite` classes ensure that results are " +"A :class:`TestResult` object stores the results of a set of tests. " +"The :class:`TestCase` and :class:`TestSuite` classes ensure that results are " "properly recorded; test authors do not need to worry about recording the " "outcome of tests." msgstr "" msgid "" -"Testing frameworks built on top of :mod:`!unittest` may want access to the :" -"class:`TestResult` object generated by running a set of tests for reporting " -"purposes; a :class:`TestResult` instance is returned by the :meth:`!" -"TestRunner.run` method for this purpose." +"Testing frameworks built on top of :mod:`!unittest` may want access to " +"the :class:`TestResult` object generated by running a set of tests for " +"reporting purposes; a :class:`TestResult` instance is returned by " +"the :meth:`!TestRunner.run` method for this purpose." msgstr "" msgid "" @@ -2519,8 +2522,8 @@ msgid "" msgstr "" msgid "" -"Called when the test case *test* fails or errors, but was marked with the :" -"deco:`expectedFailure` decorator." +"Called when the test case *test* fails or errors, but was marked with " +"the :deco:`expectedFailure` decorator." msgstr "" msgid "" @@ -2535,8 +2538,8 @@ msgid "" msgstr "" msgid "" -"The default implementation appends the test to the instance's :attr:" -"`unexpectedSuccesses` attribute." +"The default implementation appends the test to the " +"instance's :attr:`unexpectedSuccesses` attribute." msgstr "" msgid "" @@ -2547,8 +2550,8 @@ msgstr "" msgid "" "If *outcome* is :const:`None`, the subtest succeeded. Otherwise, it failed " -"with an exception where *outcome* is a tuple of the form returned by :func:" -"`sys.exc_info`: ``(type, value, traceback)``." +"with an exception where *outcome* is a tuple of the form returned " +"by :func:`sys.exc_info`: ``(type, value, traceback)``." msgstr "" msgid "" @@ -2562,8 +2565,8 @@ msgid "" msgstr "" msgid "" -"A concrete implementation of :class:`TestResult` used by the :class:" -"`TextTestRunner`. Subclasses should accept ``**kwargs`` to ensure " +"A concrete implementation of :class:`TestResult` used by " +"the :class:`TextTestRunner`. Subclasses should accept ``**kwargs`` to ensure " "compatibility as the interface changes." msgstr "" @@ -2587,12 +2590,12 @@ msgid "" msgstr "" msgid "" -"By default this runner shows :exc:`DeprecationWarning`, :exc:" -"`PendingDeprecationWarning`, :exc:`ResourceWarning` and :exc:`ImportWarning` " -"even if they are :ref:`ignored by default `. This behavior " -"can be overridden using Python's :option:`!-Wd` or :option:`!-Wa` options " -"(see :ref:`Warning control `) and leaving *warnings* to " -"``None``." +"By default this runner " +"shows :exc:`DeprecationWarning`, :exc:`PendingDeprecationWarning`, :exc:`ResourceWarning` " +"and :exc:`ImportWarning` even if they are :ref:`ignored by default `. This behavior can be overridden using Python's :option:`!-Wd` " +"or :option:`!-Wa` options (see :ref:`Warning control `) " +"and leaving *warnings* to ``None``." msgstr "" msgid "Added the *warnings* parameter." @@ -2627,9 +2630,9 @@ msgstr "" msgid "" "This method is the main public interface to the ``TextTestRunner``. This " -"method takes a :class:`TestSuite` or :class:`TestCase` instance. A :class:" -"`TestResult` is created by calling :func:`_makeResult` and the test(s) are " -"run and the results printed to stdout." +"method takes a :class:`TestSuite` or :class:`TestCase` instance. " +"A :class:`TestResult` is created by calling :func:`_makeResult` and the " +"test(s) are run and the results printed to stdout." msgstr "" msgid "" @@ -2731,8 +2734,8 @@ msgid "" msgstr "" msgid "" -"If a test module defines ``load_tests`` it will be called by :meth:" -"`TestLoader.loadTestsFromModule` with the following arguments::" +"If a test module defines ``load_tests`` it will be called " +"by :meth:`TestLoader.loadTestsFromModule` with the following arguments::" msgstr "" msgid "load_tests(loader, standard_tests, pattern)" @@ -2755,8 +2758,8 @@ msgid "" msgstr "" msgid "" -"A typical ``load_tests`` function that loads tests from a specific set of :" -"class:`TestCase` classes may look like::" +"A typical ``load_tests`` function that loads tests from a specific set " +"of :class:`TestCase` classes may look like::" msgstr "" msgid "" @@ -2772,17 +2775,18 @@ msgstr "" msgid "" "If discovery is started in a directory containing a package, either from the " -"command line or by calling :meth:`TestLoader.discover`, then the package :" -"file:`__init__.py` will be checked for ``load_tests``. If that function " -"does not exist, discovery will recurse into the package as though it were " -"just another directory. Otherwise, discovery of the package's tests will be " -"left up to ``load_tests`` which is called with the following arguments::" +"command line or by calling :meth:`TestLoader.discover`, then the " +"package :file:`__init__.py` will be checked for ``load_tests``. If that " +"function does not exist, discovery will recurse into the package as though " +"it were just another directory. Otherwise, discovery of the package's tests " +"will be left up to ``load_tests`` which is called with the following " +"arguments::" msgstr "" msgid "" "This should return a :class:`TestSuite` representing all the tests from the " -"package. (``standard_tests`` will only contain tests collected from :file:" -"`__init__.py`.)" +"package. (``standard_tests`` will only contain tests collected " +"from :file:`__init__.py`.)" msgstr "" msgid "" @@ -2810,9 +2814,9 @@ msgstr "" msgid "" "Class and module level fixtures are implemented in :class:`TestSuite`. When " -"the test suite encounters a test from a new class then :meth:`~TestCase." -"tearDownClass` from the previous class (if there is one) is called, followed " -"by :meth:`~TestCase.setUpClass` from the new class." +"the test suite encounters a test from a new class " +"then :meth:`~TestCase.tearDownClass` from the previous class (if there is " +"one) is called, followed by :meth:`~TestCase.setUpClass` from the new class." msgstr "" msgid "" @@ -2877,16 +2881,16 @@ msgstr "" msgid "" "If you want the ``setUpClass`` and ``tearDownClass`` on base classes called " -"then you must call up to them yourself. The implementations in :class:" -"`TestCase` are empty." +"then you must call up to them yourself. The implementations " +"in :class:`TestCase` are empty." msgstr "" msgid "" "If an exception is raised during a ``setUpClass`` then the tests in the " "class are not run and the ``tearDownClass`` is not run. Skipped classes will " -"not have ``setUpClass`` or ``tearDownClass`` run. If the exception is a :exc:" -"`SkipTest` exception then the class will be reported as having been skipped " -"instead of as an error." +"not have ``setUpClass`` or ``tearDownClass`` run. If the exception is " +"a :exc:`SkipTest` exception then the class will be reported as having been " +"skipped instead of as an error." msgstr "" msgid "setUpModule and tearDownModule" @@ -2919,8 +2923,8 @@ msgid "" "Add a function to be called after :func:`tearDownModule` to cleanup " "resources used during the test class. Functions will be called in reverse " "order to the order they are added (:abbr:`LIFO (last-in, first-out)`). They " -"are called with any arguments and keyword arguments passed into :meth:" -"`addModuleCleanup` when they are added." +"are called with any arguments and keyword arguments passed " +"into :meth:`addModuleCleanup` when they are added." msgstr "" msgid "" @@ -2929,10 +2933,10 @@ msgid "" msgstr "" msgid "" -"Enter the supplied :term:`context manager`. If successful, also add its :" -"meth:`~object.__exit__` method as a cleanup function by :func:" -"`addModuleCleanup` and return the result of the :meth:`~object.__enter__` " -"method." +"Enter the supplied :term:`context manager`. If successful, also add " +"its :meth:`~object.__exit__` method as a cleanup function " +"by :func:`addModuleCleanup` and return the result of " +"the :meth:`~object.__enter__` method." msgstr "" msgid "" @@ -2941,9 +2945,10 @@ msgid "" msgstr "" msgid "" -"It is responsible for calling all the cleanup functions added by :func:" -"`addModuleCleanup`. If you need cleanup functions to be called *prior* to :" -"func:`tearDownModule` then you can call :func:`doModuleCleanups` yourself." +"It is responsible for calling all the cleanup functions added " +"by :func:`addModuleCleanup`. If you need cleanup functions to be called " +"*prior* to :func:`tearDownModule` then you can call :func:`doModuleCleanups` " +"yourself." msgstr "" msgid "" @@ -2966,12 +2971,12 @@ msgstr "" msgid "" "The control-c handling signal handler attempts to remain compatible with " "code or tests that install their own :const:`signal.SIGINT` handler. If the " -"``unittest`` handler is called but *isn't* the installed :const:`signal." -"SIGINT` handler, i.e. it has been replaced by the system under test and " -"delegated to, then it calls the default handler. This will normally be the " -"expected behavior by code that replaces an installed handler and delegates " -"to it. For individual tests that need ``unittest`` control-c handling " -"disabled the :func:`removeHandler` decorator can be used." +"``unittest`` handler is called but *isn't* the " +"installed :const:`signal.SIGINT` handler, i.e. it has been replaced by the " +"system under test and delegated to, then it calls the default handler. This " +"will normally be the expected behavior by code that replaces an installed " +"handler and delegates to it. For individual tests that need ``unittest`` " +"control-c handling disabled the :func:`removeHandler` decorator can be used." msgstr "" msgid "" @@ -2998,9 +3003,9 @@ msgid "" msgstr "" msgid "" -"Remove a registered result. Once a result has been removed then :meth:" -"`~TestResult.stop` will no longer be called on that result object in " -"response to a control-c." +"Remove a registered result. Once a result has been removed " +"then :meth:`~TestResult.stop` will no longer be called on that result object " +"in response to a control-c." msgstr "" msgid "" diff --git a/library/unix.po b/library/unix.po index cd2cf52..6519a56 100644 --- a/library/unix.po +++ b/library/unix.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/urllib.error.po b/library/urllib.error.po index ef55bd7..9ec87c7 100644 --- a/library/urllib.error.po +++ b/library/urllib.error.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,8 +26,8 @@ msgstr "" msgid "" "The :mod:`!urllib.error` module defines the exception classes for exceptions " -"raised by :mod:`urllib.request`. The base exception class is :exc:" -"`URLError`." +"raised by :mod:`urllib.request`. The base exception class " +"is :exc:`URLError`." msgstr "" msgid "" @@ -50,10 +50,11 @@ msgid "" msgstr "" msgid "" -"Though being an exception (a subclass of :exc:`URLError`), an :exc:" -"`HTTPError` can also function as a non-exceptional file-like return value " -"(the same thing that :func:`~urllib.request.urlopen` returns). This is " -"useful when handling exotic HTTP errors, such as requests for authentication." +"Though being an exception (a subclass of :exc:`URLError`), " +"an :exc:`HTTPError` can also function as a non-exceptional file-like return " +"value (the same thing that :func:`~urllib.request.urlopen` returns). This " +"is useful when handling exotic HTTP errors, such as requests for " +"authentication." msgstr "" msgid "Contains the request URL. An alias for *filename* attribute." @@ -61,8 +62,8 @@ msgstr "" msgid "" "An HTTP status code as defined in :rfc:`2616`. This numeric value " -"corresponds to a value found in the dictionary of codes as found in :attr:" -"`http.server.BaseHTTPRequestHandler.responses`." +"corresponds to a value found in the dictionary of codes as found " +"in :attr:`http.server.BaseHTTPRequestHandler.responses`." msgstr "" msgid "" @@ -71,8 +72,8 @@ msgid "" msgstr "" msgid "" -"The HTTP response headers for the HTTP request that caused the :exc:" -"`HTTPError`. An alias for *hdrs* attribute." +"The HTTP response headers for the HTTP request that caused " +"the :exc:`HTTPError`. An alias for *hdrs* attribute." msgstr "" msgid "A file-like object where the HTTP error body can be read from." diff --git a/library/urllib.parse.po b/library/urllib.parse.po index 985188c..6faf162 100644 --- a/library/urllib.parse.po +++ b/library/urllib.parse.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -74,14 +74,14 @@ msgid "" msgstr "" msgid "" -"Parse a URL into five components, returning a 5-item :term:`named tuple` :" -"class:`SplitResult` or :class:`SplitResultBytes`. This corresponds to the " -"general structure of a URL: ``scheme://netloc/path?query#fragment``. Each " -"tuple item is a string, possibly empty, or ``None`` if *missing_as_none* is " -"true. Not defined component are represented an empty string (by default) or " -"``None`` if *missing_as_none* is true. The delimiters as shown above are not " -"part of the result, except for a leading slash in the *path* component, " -"which is retained if present." +"Parse a URL into five components, returning a 5-item :term:`named " +"tuple` :class:`SplitResult` or :class:`SplitResultBytes`. This corresponds " +"to the general structure of a URL: ``scheme://netloc/path?query#fragment``. " +"Each tuple item is a string, possibly empty, or ``None`` if " +"*missing_as_none* is true. Not defined component are represented an empty " +"string (by default) or ``None`` if *missing_as_none* is true. The delimiters " +"as shown above are not part of the result, except for a leading slash in the " +"*path* component, which is retained if present." msgstr "" msgid "" @@ -135,8 +135,8 @@ msgstr "" msgid "" ">>> from urllib.parse import urlsplit\n" ">>> urlsplit('//www.cwi.nl:80/%7Eguido/Python.html')\n" -"SplitResult(scheme='', netloc='www.cwi.nl:80', path='/%7Eguido/Python." -"html',\n" +"SplitResult(scheme='', netloc='www.cwi.nl:80', path='/%7Eguido/" +"Python.html',\n" " query='', fragment='')\n" ">>> urlsplit('www.cwi.nl/%7Eguido/Python.html')\n" "SplitResult(scheme='', netloc='', path='www.cwi.nl/%7Eguido/Python.html',\n" @@ -271,8 +271,8 @@ msgid "" msgstr "" msgid "" -"Unmatched square brackets in the :attr:`netloc` attribute will raise a :exc:" -"`ValueError`." +"Unmatched square brackets in the :attr:`netloc` attribute will raise " +"a :exc:`ValueError`." msgstr "" msgid "" @@ -290,21 +290,21 @@ msgstr "" msgid "" "As is the case with all named tuples, the subclass has a few additional " -"methods and attributes that are particularly useful. One such method is :" -"meth:`_replace`. The :meth:`_replace` method will return a new :class:" -"`SplitResult` object replacing specified fields with new values." +"methods and attributes that are particularly useful. One such method " +"is :meth:`_replace`. The :meth:`_replace` method will return a " +"new :class:`SplitResult` object replacing specified fields with new values." msgstr "" msgid "" ">>> from urllib.parse import urlsplit\n" ">>> u = urlsplit('//www.cwi.nl:80/%7Eguido/Python.html')\n" ">>> u\n" -"SplitResult(scheme='', netloc='www.cwi.nl:80', path='/%7Eguido/Python." -"html',\n" +"SplitResult(scheme='', netloc='www.cwi.nl:80', path='/%7Eguido/" +"Python.html',\n" " query='', fragment='')\n" ">>> u._replace(scheme='http')\n" -"SplitResult(scheme='http', netloc='www.cwi.nl:80', path='/%7Eguido/Python." -"html',\n" +"SplitResult(scheme='http', netloc='www.cwi.nl:80', path='/%7Eguido/" +"Python.html',\n" " query='', fragment='')" msgstr "" @@ -343,10 +343,10 @@ msgid "Added the *missing_as_none* parameter." msgstr "" msgid "" -"Parse a query string given as a string argument (data of type :mimetype:" -"`application/x-www-form-urlencoded`). Data are returned as a dictionary. " -"The dictionary keys are the unique query variable names and the values are " -"lists of values for each name." +"Parse a query string given as a string argument (data of " +"type :mimetype:`application/x-www-form-urlencoded`). Data are returned as a " +"dictionary. The dictionary keys are the unique query variable names and the " +"values are lists of values for each name." msgstr "" msgid "" @@ -365,8 +365,8 @@ msgstr "" msgid "" "The optional *encoding* and *errors* parameters specify how to decode " -"percent-encoded sequences into Unicode characters, as accepted by the :meth:" -"`bytes.decode` method." +"percent-encoded sequences into Unicode characters, as accepted by " +"the :meth:`bytes.decode` method." msgstr "" msgid "" @@ -404,9 +404,9 @@ msgid "" msgstr "" msgid "" -"Parse a query string given as a string argument (data of type :mimetype:" -"`application/x-www-form-urlencoded`). Data are returned as a list of name, " -"value pairs." +"Parse a query string given as a string argument (data of " +"type :mimetype:`application/x-www-form-urlencoded`). Data are returned as a " +"list of name, value pairs." msgstr "" msgid "" @@ -438,19 +438,19 @@ msgstr "" msgid "" "This is similar to :func:`urlsplit`, but additionally splits the *path* " -"component on *path* and *params*. This function returns a 6-item :term:" -"`named tuple` :class:`ParseResult` or :class:`ParseResultBytes`. Its items " -"are the same as for the :func:`!urlsplit` result, except that *params* is " -"inserted at index 3, between *path* and *query*." +"component on *path* and *params*. This function returns a 6-" +"item :term:`named tuple` :class:`ParseResult` or :class:`ParseResultBytes`. " +"Its items are the same as for the :func:`!urlsplit` result, except that " +"*params* is inserted at index 3, between *path* and *query*." msgstr "" msgid "" "This function is based on obsoleted :rfc:`1738` and :rfc:`1808`, which " "listed *params* as the main URL component. The more recent URL syntax allows " "parameters to be applied to each segment of the *path* portion of the URL " -"(see :rfc:`3986`). :func:`urlsplit` should generally be used instead of :" -"func:`urlparse`. A separate function is needed to separate the path segments " -"and parameters." +"(see :rfc:`3986`). :func:`urlsplit` should generally be used instead " +"of :func:`urlparse`. A separate function is needed to separate the path " +"segments and parameters." msgstr "" msgid "" @@ -474,8 +474,8 @@ msgid "" msgstr "" msgid "" -"The *allow_fragments* argument has the same meaning and default as for :func:" -"`urlsplit`." +"The *allow_fragments* argument has the same meaning and default as " +"for :func:`urlsplit`." msgstr "" msgid "" @@ -537,10 +537,10 @@ msgid "Result is a structured object rather than a simple 2-tuple." msgstr "" msgid "" -"Extract the url from a wrapped URL (that is, a string formatted as ````, ````, ``URL:scheme://host/path`` " -"or ``scheme://host/path``). If *url* is not a wrapped URL, it is returned " -"without changes." +"Extract the url from a wrapped URL (that is, a string formatted as " +"````, ````, ``URL:scheme://host/" +"path`` or ``scheme://host/path``). If *url* is not a wrapped URL, it is " +"returned without changes." msgstr "" msgid "URL parsing security" @@ -587,33 +587,34 @@ msgid "" "The URL parsing functions were originally designed to operate on character " "strings only. In practice, it is useful to be able to manipulate properly " "quoted and encoded URLs as sequences of ASCII bytes. Accordingly, the URL " -"parsing functions in this module all operate on :class:`bytes` and :class:" -"`bytearray` objects in addition to :class:`str` objects." +"parsing functions in this module all operate on :class:`bytes` " +"and :class:`bytearray` objects in addition to :class:`str` objects." msgstr "" msgid "" -"If :class:`str` data is passed in, the result will also contain only :class:" -"`str` data. If :class:`bytes` or :class:`bytearray` data is passed in, the " -"result will contain only :class:`bytes` data." +"If :class:`str` data is passed in, the result will also contain " +"only :class:`str` data. If :class:`bytes` or :class:`bytearray` data is " +"passed in, the result will contain only :class:`bytes` data." msgstr "" msgid "" -"Attempting to mix :class:`str` data with :class:`bytes` or :class:" -"`bytearray` in a single function call will result in a :exc:`TypeError` " -"being raised, while attempting to pass in non-ASCII byte values will " -"trigger :exc:`UnicodeDecodeError`." +"Attempting to mix :class:`str` data with :class:`bytes` " +"or :class:`bytearray` in a single function call will result in " +"a :exc:`TypeError` being raised, while attempting to pass in non-ASCII byte " +"values will trigger :exc:`UnicodeDecodeError`." msgstr "" msgid "" -"To support easier conversion of result objects between :class:`str` and :" -"class:`bytes`, all return values from URL parsing functions provide either " -"an :meth:`encode` method (when the result contains :class:`str` data) or a :" -"meth:`decode` method (when the result contains :class:`bytes` data). The " -"signatures of these methods match those of the corresponding :class:`str` " -"and :class:`bytes` methods (except that the default encoding is ``'ascii'`` " -"rather than ``'utf-8'``). Each produces a value of a corresponding type that " -"contains either :class:`bytes` data (for :meth:`encode` methods) or :class:" -"`str` data (for :meth:`decode` methods)." +"To support easier conversion of result objects between :class:`str` " +"and :class:`bytes`, all return values from URL parsing functions provide " +"either an :meth:`encode` method (when the result contains :class:`str` data) " +"or a :meth:`decode` method (when the result contains :class:`bytes` data). " +"The signatures of these methods match those of the " +"corresponding :class:`str` and :class:`bytes` methods (except that the " +"default encoding is ``'ascii'`` rather than ``'utf-8'``). Each produces a " +"value of a corresponding type that contains either :class:`bytes` data " +"(for :meth:`encode` methods) or :class:`str` data (for :meth:`decode` " +"methods)." msgstr "" msgid "" @@ -636,9 +637,9 @@ msgid "Structured Parse Results" msgstr "" msgid "" -"The result objects from the :func:`urlsplit`, :func:`urlparse` and :func:" -"`urldefrag` functions are subclasses of the :class:`tuple` type. These " -"subclasses add the attributes listed in the documentation for those " +"The result objects from the :func:`urlsplit`, :func:`urlparse` " +"and :func:`urldefrag` functions are subclasses of the :class:`tuple` type. " +"These subclasses add the attributes listed in the documentation for those " "functions, the encoding and decoding support described in the previous " "section, as well as an additional method:" msgstr "" @@ -758,8 +759,8 @@ msgid "Example: ``quote_plus('/El Niño/')`` yields ``'%2FEl+Ni%C3%B1o%2F'``." msgstr "" msgid "" -"Like :func:`quote`, but accepts a :class:`bytes` object rather than a :class:" -"`str`, and does not perform string-to-bytes encoding." +"Like :func:`quote`, but accepts a :class:`bytes` object rather than " +"a :class:`str`, and does not perform string-to-bytes encoding." msgstr "" msgid "Example: ``quote_from_bytes(b'a&\\xef')`` yields ``'a%26%EF'``." @@ -768,8 +769,8 @@ msgstr "" msgid "" "Replace :samp:`%{xx}` escapes with their single-character equivalent. The " "optional *encoding* and *errors* parameters specify how to decode percent-" -"encoded sequences into Unicode characters, as accepted by the :meth:`bytes." -"decode` method." +"encoded sequences into Unicode characters, as accepted by " +"the :meth:`bytes.decode` method." msgstr "" msgid "" @@ -850,9 +851,9 @@ msgid "" msgstr "" msgid "" -"Refer to :ref:`urllib examples ` to find out how the :func:" -"`urllib.parse.urlencode` method can be used for generating the query string " -"of a URL or data for a POST request." +"Refer to :ref:`urllib examples ` to find out how " +"the :func:`urllib.parse.urlencode` method can be used for generating the " +"query string of a URL or data for a POST request." msgstr "" msgid "*query* supports bytes and string objects." diff --git a/library/urllib.po b/library/urllib.po index 929b135..7662d6b 100644 --- a/library/urllib.po +++ b/library/urllib.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/urllib.request.po b/library/urllib.request.po index 07159ad..7161e34 100644 --- a/library/urllib.request.po +++ b/library/urllib.request.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -82,66 +82,78 @@ msgstr "" msgid "" "If *context* is specified, it must be a :class:`ssl.SSLContext` instance " -"describing the various SSL options. See :class:`~http.client." -"HTTPSConnection` for more details." +"describing the various SSL options. " +"See :class:`~http.client.HTTPSConnection` for more details." msgstr "" msgid "" "This function always returns an object which can work as a :term:`context " -"manager` and has the properties *url*, *headers*, and *status*. See :class:" -"`urllib.response.addinfourl` for more detail on these properties." +"manager` and has the properties *url*, *headers*, and *status*. " +"See :class:`urllib.response.addinfourl` for more detail on these properties." msgstr "" msgid "" -"For HTTP and HTTPS URLs, this function returns a :class:`http.client." -"HTTPResponse` object slightly modified. In addition to the three new methods " -"above, the msg attribute contains the same information as the :attr:`~http." -"client.HTTPResponse.reason` attribute --- the reason phrase returned by " -"server --- instead of the response headers as it is specified in the " -"documentation for :class:`~http.client.HTTPResponse`." +"For HTTP and HTTPS URLs, this function returns " +"a :class:`http.client.HTTPResponse` object slightly modified. In addition to " +"the three new methods above, the msg attribute contains the same information " +"as the :attr:`~http.client.HTTPResponse.reason` attribute --- the reason " +"phrase returned by server --- instead of the response headers as it is " +"specified in the documentation for :class:`~http.client.HTTPResponse`." msgstr "" msgid "" -"For FTP, file, and data URLs, this function returns a :class:`urllib." -"response.addinfourl` object." +"For FTP, file, and data URLs, this function returns " +"a :class:`urllib.response.addinfourl` object." msgstr "" msgid "Raises :exc:`~urllib.error.URLError` on protocol errors." msgstr "" +msgid "" +"Exceptions raised while reading or parsing an HTTP response are not wrapped " +"in :exc:`~urllib.error.URLError` and propagate unchanged. These include " +"subclasses of :exc:`http.client.HTTPException`, such " +"as :exc:`~http.client.BadStatusLine` for a malformed status line, and " +"subclasses of :exc:`OSError`, such as :exc:`TimeoutError` if the server does " +"not respond within *timeout* seconds, " +"or :exc:`~http.client.RemoteDisconnected` if the server closes the " +"connection without sending a response. :exc:`ValueError` is raised if *url* " +"is not a valid URL." +msgstr "" + msgid "" "Note that ``None`` may be returned if no handler handles the request (though " -"the default installed global :class:`OpenerDirector` uses :class:" -"`UnknownHandler` to ensure this never happens)." +"the default installed global :class:`OpenerDirector` " +"uses :class:`UnknownHandler` to ensure this never happens)." msgstr "" msgid "" "In addition, if proxy settings are detected (for example, when a ``*_proxy`` " -"environment variable like :envvar:`!http_proxy` is set), :class:" -"`ProxyHandler` is default installed and makes sure the requests are handled " -"through the proxy." +"environment variable like :envvar:`!http_proxy` is " +"set), :class:`ProxyHandler` is default installed and makes sure the requests " +"are handled through the proxy." msgstr "" msgid "" "The legacy ``urllib.urlopen`` function from Python 2.6 and earlier has been " "discontinued; :func:`urllib.request.urlopen` corresponds to the old " "``urllib2.urlopen``. Proxy handling, which was done by passing a dictionary " -"parameter to ``urllib.urlopen``, can be obtained by using :class:" -"`ProxyHandler` objects." +"parameter to ``urllib.urlopen``, can be obtained by " +"using :class:`ProxyHandler` objects." msgstr "" msgid "" -"The default opener raises an :ref:`auditing event ` ``urllib." -"Request`` with arguments ``fullurl``, ``data``, ``headers``, ``method`` " -"taken from the request object." +"The default opener raises an :ref:`auditing event ` " +"``urllib.Request`` with arguments ``fullurl``, ``data``, ``headers``, " +"``method`` taken from the request object." msgstr "" msgid "*cafile* and *capath* were added." msgstr "" msgid "" -"HTTPS virtual hosts are now supported if possible (that is, if :const:`ssl." -"HAS_SNI` is true)." +"HTTPS virtual hosts are now supported if possible (that is, " +"if :const:`ssl.HAS_SNI` is true)." msgstr "" msgid "*data* can be an iterable object." @@ -154,9 +166,9 @@ msgid "*context* was added." msgstr "" msgid "" -"HTTPS connection now send an ALPN extension with protocol indicator " -"``http/1.1`` when no *context* is given. Custom *context* should set ALPN " -"protocols with :meth:`~ssl.SSLContext.set_alpn_protocols`." +"HTTPS connection now send an ALPN extension with protocol indicator ``http/" +"1.1`` when no *context* is given. Custom *context* should set ALPN protocols " +"with :meth:`~ssl.SSLContext.set_alpn_protocols`." msgstr "" msgid "" @@ -167,9 +179,10 @@ msgstr "" msgid "" "Install an :class:`OpenerDirector` instance as the default global opener. " "Installing an opener is only necessary if you want urlopen to use that " -"opener; otherwise, simply call :meth:`OpenerDirector.open` instead of :func:" -"`~urllib.request.urlopen`. The code does not check for a real :class:" -"`OpenerDirector`, and any class with the appropriate interface will work." +"opener; otherwise, simply call :meth:`OpenerDirector.open` instead " +"of :func:`~urllib.request.urlopen`. The code does not check for a " +"real :class:`OpenerDirector`, and any class with the appropriate interface " +"will work." msgstr "" msgid "" @@ -179,10 +192,8 @@ msgid "" "call the constructor without any parameters). Instances of the following " "classes will be in front of the *handler*\\s, unless the *handler*\\s " "contain them, instances of them or subclasses of them: :class:`ProxyHandler` " -"(if proxy settings are detected), :class:`UnknownHandler`, :class:" -"`HTTPHandler`, :class:`HTTPDefaultErrorHandler`, :class:" -"`HTTPRedirectHandler`, :class:`FTPHandler`, :class:`FileHandler`, :class:" -"`HTTPErrorProcessor`." +"(if proxy settings are " +"detected), :class:`UnknownHandler`, :class:`HTTPHandler`, :class:`HTTPDefaultErrorHandler`, :class:`HTTPRedirectHandler`, :class:`FTPHandler`, :class:`FileHandler`, :class:`HTTPErrorProcessor`." msgstr "" msgid "" @@ -196,8 +207,8 @@ msgid "" msgstr "" msgid "" -"Convert the given local path to a ``file:`` URL. This function uses :func:" -"`~urllib.parse.quote` function to encode the path." +"Convert the given local path to a ``file:`` URL. This function " +"uses :func:`~urllib.parse.quote` function to encode the path." msgstr "" msgid "" @@ -231,8 +242,8 @@ msgid "The *add_scheme* parameter was added." msgstr "" msgid "" -"Convert the given ``file:`` URL to a local path. This function uses :func:" -"`~urllib.parse.unquote` to decode the URL." +"Convert the given ``file:`` URL to a local path. This function " +"uses :func:`~urllib.parse.unquote` to decode the URL." msgstr "" msgid "" @@ -312,18 +323,18 @@ msgid "" msgstr "" msgid "" -"For an HTTP POST request method, *data* should be a buffer in the standard :" -"mimetype:`application/x-www-form-urlencoded` format. The :func:`urllib." -"parse.urlencode` function takes a mapping or sequence of 2-tuples and " -"returns an ASCII string in this format. It should be encoded to bytes before " -"being used as the *data* parameter." +"For an HTTP POST request method, *data* should be a buffer in the " +"standard :mimetype:`application/x-www-form-urlencoded` format. " +"The :func:`urllib.parse.urlencode` function takes a mapping or sequence of 2-" +"tuples and returns an ASCII string in this format. It should be encoded to " +"bytes before being used as the *data* parameter." msgstr "" msgid "" -"*headers* should be a dictionary, and will be treated as if :meth:" -"`add_header` was called with each key and value as arguments. This is often " -"used to \"spoof\" the ``User-Agent`` header value, which is used by a " -"browser to identify itself -- some HTTP servers only allow requests coming " +"*headers* should be a dictionary, and will be treated as " +"if :meth:`add_header` was called with each key and value as arguments. This " +"is often used to \"spoof\" the ``User-Agent`` header value, which is used by " +"a browser to identify itself -- some HTTP servers only allow requests coming " "from common browsers as opposed to scripts. For example, Mozilla Firefox may " "identify itself as ``\"Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 " "Firefox/2.0.0.11\"``, while :mod:`urllib`'s default user agent string is " @@ -345,11 +356,11 @@ msgstr "" msgid "" "*origin_req_host* should be the request-host of the origin transaction, as " -"defined by :rfc:`2965`. It defaults to ``http.cookiejar." -"request_host(self)``. This is the host name or IP address of the original " -"request that was initiated by the user. For example, if the request is for " -"an image in an HTML document, this should be the request-host of the request " -"for the page containing the image." +"defined by :rfc:`2965`. It defaults to " +"``http.cookiejar.request_host(self)``. This is the host name or IP address " +"of the original request that was initiated by the user. For example, if the " +"request is for an image in an HTML document, this should be the request-host " +"of the request for the page containing the image." msgstr "" msgid "" @@ -362,11 +373,11 @@ msgstr "" msgid "" "*method* should be a string that indicates the HTTP request method that will " -"be used (e.g. ``'HEAD'``). If provided, its value is stored in the :attr:" -"`~Request.method` attribute and is used by :meth:`get_method`. The default " -"is ``'GET'`` if *data* is ``None`` or ``'POST'`` otherwise. Subclasses may " -"indicate a different default method by setting the :attr:`~Request.method` " -"attribute in the class itself." +"be used (e.g. ``'HEAD'``). If provided, its value is stored in " +"the :attr:`~Request.method` attribute and is used by :meth:`get_method`. The " +"default is ``'GET'`` if *data* is ``None`` or ``'POST'`` otherwise. " +"Subclasses may indicate a different default method by setting " +"the :attr:`~Request.method` attribute in the class itself." msgstr "" msgid "" @@ -456,9 +467,9 @@ msgstr "" msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " -"that is compatible with :class:`HTTPPasswordMgr`; refer to section :ref:" -"`http-password-mgr` for information on the interface that must be " -"supported. If *passwd_mgr* also provides ``is_authenticated`` and " +"that is compatible with :class:`HTTPPasswordMgr`; refer to " +"section :ref:`http-password-mgr` for information on the interface that must " +"be supported. If *passwd_mgr* also provides ``is_authenticated`` and " "``update_authenticated`` methods (see :ref:`http-password-mgr-with-prior-" "auth`), then the handler will use the ``is_authenticated`` result for a " "given URI to determine whether or not to send authentication credentials " @@ -492,8 +503,9 @@ msgstr "" msgid "" "This is a mixin class that helps with HTTP authentication, both to the " "remote host and to a proxy. *password_mgr*, if given, should be something " -"that is compatible with :class:`HTTPPasswordMgr`; refer to section :ref:" -"`http-password-mgr` for information on the interface that must be supported." +"that is compatible with :class:`HTTPPasswordMgr`; refer to " +"section :ref:`http-password-mgr` for information on the interface that must " +"be supported." msgstr "" msgid "Added support for HTTP digest authentication algorithm ``SHA-256``." @@ -557,9 +569,9 @@ msgid "The original URL passed to the constructor." msgstr "" msgid "" -"Request.full_url is a property with setter, getter and a deleter. Getting :" -"attr:`~Request.full_url` returns the original request URL with the fragment, " -"if it was present." +"Request.full_url is a property with setter, getter and a deleter. " +"Getting :attr:`~Request.full_url` returns the original request URL with the " +"fragment, if it was present." msgstr "" msgid "The URI scheme." @@ -587,8 +599,8 @@ msgid "" msgstr "" msgid "" -"boolean, indicates whether the request is unverifiable as defined by :rfc:" -"`2965`." +"boolean, indicates whether the request is unverifiable as defined " +"by :rfc:`2965`." msgstr "" msgid "" @@ -607,10 +619,10 @@ msgid "" msgstr "" msgid "" -"Return a string indicating the HTTP request method. If :attr:`Request." -"method` is not ``None``, return its value, otherwise return ``'GET'`` if :" -"attr:`Request.data` is ``None``, or ``'POST'`` if it's not. This is only " -"meaningful for HTTP requests." +"Return a string indicating the HTTP request method. " +"If :attr:`Request.method` is not ``None``, return its value, otherwise " +"return ``'GET'`` if :attr:`Request.data` is ``None``, or ``'POST'`` if it's " +"not. This is only meaningful for HTTP requests." msgstr "" msgid "get_method now looks at the value of :attr:`Request.method`." @@ -677,10 +689,10 @@ msgid "" "*handler* should be an instance of :class:`BaseHandler`. The following " "methods are searched, and added to the possible chains (note that HTTP " "errors are a special case). Note that, in the following, *protocol* should " -"be replaced with the actual protocol to handle, for example :meth:" -"`http_response` would be the HTTP protocol response handler. Also *type* " -"should be replaced with the actual HTTP code, for example :meth:" -"`http_error_404` would handle HTTP 404 errors." +"be replaced with the actual protocol to handle, for " +"example :meth:`http_response` would be the HTTP protocol response handler. " +"Also *type* should be replaced with the actual HTTP code, for " +"example :meth:`http_error_404` would handle HTTP 404 errors." msgstr "" msgid "" @@ -758,23 +770,25 @@ msgstr "" msgid "" "Handlers with a method named like :meth:`!_open` are called to " -"handle the request. This stage ends when a handler either returns a non-\\ :" -"const:`None` value (ie. a response), or raises an exception (usually :exc:" -"`~urllib.error.URLError`). Exceptions are allowed to propagate." +"handle the request. This stage ends when a handler either returns a non-" +"\\ :const:`None` value (ie. a response), or raises an exception " +"(usually :exc:`~urllib.error.URLError`). Exceptions are allowed to " +"propagate." msgstr "" msgid "" -"In fact, the above algorithm is first tried for methods named :meth:" -"`~BaseHandler.default_open`. If all such methods return :const:`None`, the " -"algorithm is repeated for methods named like :meth:`!_open`. If " -"all such methods return :const:`None`, the algorithm is repeated for methods " +"In fact, the above algorithm is first tried for methods " +"named :meth:`~BaseHandler.default_open`. If all such methods " +"return :const:`None`, the algorithm is repeated for methods named " +"like :meth:`!_open`. If all such methods return :const:`None`, " +"the algorithm is repeated for methods " "named :meth:`~BaseHandler.unknown_open`." msgstr "" msgid "" "Note that the implementation of these methods may involve calls of the " -"parent :class:`OpenerDirector` instance's :meth:`~OpenerDirector.open` and :" -"meth:`~OpenerDirector.error` methods." +"parent :class:`OpenerDirector` instance's :meth:`~OpenerDirector.open` " +"and :meth:`~OpenerDirector.error` methods." msgstr "" msgid "" @@ -804,8 +818,8 @@ msgstr "" msgid "" "The convention has been adopted that subclasses defining :meth:`!" -"_request` or :meth:`!_response` methods are named :class:" -"`!\\*Processor`; all others are named :class:`!\\*Handler`." +"_request` or :meth:`!_response` methods are " +"named :class:`!\\*Processor`; all others are named :class:`!\\*Handler`." msgstr "" msgid "" @@ -819,12 +833,13 @@ msgid "" msgstr "" msgid "" -"This method, if implemented, will be called by the parent :class:" -"`OpenerDirector`. It should return a file-like object as described in the " -"return value of the :meth:`~OpenerDirector.open` method of :class:" -"`OpenerDirector`, or ``None``. It should raise :exc:`~urllib.error." -"URLError`, unless a truly exceptional thing happens (for example, :exc:" -"`MemoryError` should not be mapped to :exc:`~urllib.error.URLError`)." +"This method, if implemented, will be called by the " +"parent :class:`OpenerDirector`. It should return a file-like object as " +"described in the return value of the :meth:`~OpenerDirector.open` method " +"of :class:`OpenerDirector`, or ``None``. It should " +"raise :exc:`~urllib.error.URLError`, unless a truly exceptional thing " +"happens (for example, :exc:`MemoryError` should not be mapped " +"to :exc:`~urllib.error.URLError`)." msgstr "" msgid "This method will be called before any protocol-specific open method." @@ -836,9 +851,9 @@ msgid "" msgstr "" msgid "" -"This method, if defined, will be called by the parent :class:" -"`OpenerDirector`. Return values should be the same as for :meth:" -"`~BaseHandler.default_open`." +"This method, if defined, will be called by the " +"parent :class:`OpenerDirector`. Return values should be the same as " +"for :meth:`~BaseHandler.default_open`." msgstr "" msgid "" @@ -848,17 +863,17 @@ msgid "" msgstr "" msgid "" -"This method, if implemented, will be called by the :attr:`parent` :class:" -"`OpenerDirector`. Return values should be the same as for :meth:" -"`default_open`." +"This method, if implemented, will be called by " +"the :attr:`parent` :class:`OpenerDirector`. Return values should be the " +"same as for :meth:`default_open`." msgstr "" msgid "" "This method is *not* defined in :class:`BaseHandler`, but subclasses should " "override it if they intend to provide a catch-all for otherwise unhandled " -"HTTP errors. It will be called automatically by the :class:" -"`OpenerDirector` getting the error, and should not normally be called in " -"other circumstances." +"HTTP errors. It will be called automatically by " +"the :class:`OpenerDirector` getting the error, and should not normally be " +"called in other circumstances." msgstr "" msgid "" @@ -881,8 +896,8 @@ msgid "the headers of the error, as a mapping object." msgstr "" msgid "" -"Return values and exceptions raised should be the same as those of :func:" -"`urlopen`." +"Return values and exceptions raised should be the same as those " +"of :func:`urlopen`." msgstr "" msgid "" @@ -895,8 +910,8 @@ msgid "Subclasses should override this method to handle specific HTTP errors." msgstr "" msgid "" -"Arguments, return values and exceptions raised should be the same as for :" -"meth:`~BaseHandler.http_error_default`." +"Arguments, return values and exceptions raised should be the same as " +"for :meth:`~BaseHandler.http_error_default`." msgstr "" msgid "" @@ -905,9 +920,9 @@ msgid "" msgstr "" msgid "" -"This method, if defined, will be called by the parent :class:" -"`OpenerDirector`. *req* will be a :class:`Request` object. The return value " -"should be a :class:`Request` object." +"This method, if defined, will be called by the " +"parent :class:`OpenerDirector`. *req* will be a :class:`Request` object. The " +"return value should be a :class:`Request` object." msgstr "" msgid "" @@ -916,11 +931,11 @@ msgid "" msgstr "" msgid "" -"This method, if defined, will be called by the parent :class:" -"`OpenerDirector`. *req* will be a :class:`Request` object. *response* will " -"be an object implementing the same interface as the return value of :func:" -"`urlopen`. The return value should implement the same interface as the " -"return value of :func:`urlopen`." +"This method, if defined, will be called by the " +"parent :class:`OpenerDirector`. *req* will be a :class:`Request` object. " +"*response* will be an object implementing the same interface as the return " +"value of :func:`urlopen`. The return value should implement the same " +"interface as the return value of :func:`urlopen`." msgstr "" msgid "HTTPRedirectHandler Objects" @@ -943,17 +958,18 @@ msgid "" "called by the default implementations of the :meth:`!http_error_30\\*` " "methods when a redirection is received from the server. If a redirection " "should take place, return a new :class:`Request` to allow :meth:`!" -"http_error_30\\*` to perform the redirect to *newurl*. Otherwise, raise :" -"exc:`~urllib.error.HTTPError` if no other handler should try to handle this " -"URL, or return ``None`` if you can't but another handler might." +"http_error_30\\*` to perform the redirect to *newurl*. Otherwise, " +"raise :exc:`~urllib.error.HTTPError` if no other handler should try to " +"handle this URL, or return ``None`` if you can't but another handler might." msgstr "" msgid "" -"The default implementation of this method does not strictly follow :rfc:" -"`2616`, which says that 301 and 302 responses to ``POST`` requests must not " -"be automatically redirected without confirmation by the user. In reality, " -"browsers do allow automatic redirection of these responses, changing the " -"POST to a ``GET``, and the default implementation reproduces this behavior." +"The default implementation of this method does not strictly " +"follow :rfc:`2616`, which says that 301 and 302 responses to ``POST`` " +"requests must not be automatically redirected without confirmation by the " +"user. In reality, browsers do allow automatic redirection of these " +"responses, changing the POST to a ``GET``, and the default implementation " +"reproduces this behavior." msgstr "" msgid "" @@ -1006,15 +1022,22 @@ msgid "HTTPPasswordMgr Objects" msgstr "" msgid "" -"These methods are available on :class:`HTTPPasswordMgr` and :class:" -"`HTTPPasswordMgrWithDefaultRealm` objects." +"These methods are available on :class:`HTTPPasswordMgr` " +"and :class:`HTTPPasswordMgrWithDefaultRealm` objects." msgstr "" msgid "" "*uri* can be either a single URI, or a sequence of URIs. *realm*, *user* and " "*passwd* must be strings. This causes ``(user, passwd)`` to be used as " "authentication tokens when authentication for *realm* and a super-URI of any " -"of the given URIs is given." +"of the given URIs is given. If a URI includes a scheme, its credentials only " +"match authentication URIs with the same scheme or no scheme. A URI without a " +"scheme matches authentication URIs with any scheme." +msgstr "" + +msgid "" +"Authentication credentials for URIs with a scheme are now scoped by that " +"scheme." msgstr "" msgid "" @@ -1037,10 +1060,10 @@ msgid "" msgstr "" msgid "" -"*realm*, *uri*, *user*, *passwd* are as for :meth:`HTTPPasswordMgr." -"add_password`. *is_authenticated* sets the initial value of the " -"``is_authenticated`` flag for the given URI or list of URIs. If " -"*is_authenticated* is specified as ``True``, *realm* is ignored." +"*realm*, *uri*, *user*, *passwd* are as " +"for :meth:`HTTPPasswordMgr.add_password`. *is_authenticated* sets the " +"initial value of the ``is_authenticated`` flag for the given URI or list of " +"URIs. If *is_authenticated* is specified as ``True``, *realm* is ignored." msgstr "" msgid "Same as for :class:`HTTPPasswordMgrWithDefaultRealm` objects" @@ -1061,8 +1084,14 @@ msgid "" "Handle an authentication request by getting a user/password pair, and re-" "trying the request. *authreq* should be the name of the header where the " "information about the realm is included in the request, *host* specifies the " -"URL and path to authenticate for, *req* should be the (failed) :class:" -"`Request` object, and *headers* should be the error headers." +"URL and path to authenticate for, *req* should be the " +"(failed) :class:`Request` object, and *headers* should be the error headers." +msgstr "" + +msgid "" +"*headers* must be a mapping-like object with case-insensitive lookup that " +"implements the ``get_all()`` method, such as :class:`email.message.Message` " +"or :class:`wsgiref.headers.Headers`." msgstr "" msgid "" @@ -1091,6 +1120,11 @@ msgid "" "should be the error headers." msgstr "" +msgid "" +"*headers* must be a mapping-like object with case-insensitive lookup, such " +"as :class:`email.message.Message` or :class:`wsgiref.headers.Headers`." +msgstr "" + msgid "HTTPDigestAuthHandler Objects" msgstr "" @@ -1101,16 +1135,16 @@ msgid "HTTPHandler Objects" msgstr "" msgid "" -"Send an HTTP request, which can be either GET or POST, depending on ``req." -"data``." +"Send an HTTP request, which can be either GET or POST, depending on " +"``req.data``." msgstr "" msgid "HTTPSHandler Objects" msgstr "" msgid "" -"Send an HTTPS request, which can be either GET or POST, depending on ``req." -"data``." +"Send an HTTPS request, which can be either GET or POST, depending on " +"``req.data``." msgstr "" msgid "FileHandler Objects" @@ -1175,8 +1209,8 @@ msgstr "" msgid "" "For non-200 error codes, this simply passes the job on to the :meth:`!" "http_error_\\` handler methods, via :meth:`OpenerDirector.error`. " -"Eventually, :class:`HTTPDefaultErrorHandler` will raise an :exc:`~urllib." -"error.HTTPError` if no other handler handles the error." +"Eventually, :class:`HTTPDefaultErrorHandler` will raise " +"an :exc:`~urllib.error.HTTPError` if no other handler handles the error." msgstr "" msgid "Process HTTPS error responses." @@ -1247,8 +1281,8 @@ msgid "" msgstr "" msgid "" -"It is also possible to achieve the same result without using the :term:" -"`context manager` approach::" +"It is also possible to achieve the same result without using " +"the :term:`context manager` approach::" msgstr "" msgid "" @@ -1324,11 +1358,11 @@ msgid "" msgstr "" msgid "" -":func:`build_opener` provides many handlers by default, including a :class:" -"`ProxyHandler`. By default, :class:`ProxyHandler` uses the environment " -"variables named ``_proxy``, where ```` is the URL scheme " -"involved. For example, the :envvar:`!http_proxy` environment variable is " -"read to obtain the HTTP proxy's URL." +":func:`build_opener` provides many handlers by default, including " +"a :class:`ProxyHandler`. By default, :class:`ProxyHandler` uses the " +"environment variables named ``_proxy``, where ```` is the " +"URL scheme involved. For example, the :envvar:`!http_proxy` environment " +"variable is read to obtain the HTTP proxy's URL." msgstr "" msgid "" @@ -1338,8 +1372,8 @@ msgid "" msgstr "" msgid "" -"proxy_handler = urllib.request.ProxyHandler({'http': 'http://www.example." -"com:3128/'})\n" +"proxy_handler = urllib.request.ProxyHandler({'http': 'http://" +"www.example.com:3128/'})\n" "proxy_auth_handler = urllib.request.ProxyBasicAuthHandler()\n" "proxy_auth_handler.add_password('realm', 'host', 'username', 'password')\n" "\n" @@ -1379,9 +1413,10 @@ msgid "" msgstr "" msgid "" -"Also, remember that a few standard headers (:mailheader:`Content-Length`, :" -"mailheader:`Content-Type` and :mailheader:`Host`) are added when the :class:" -"`Request` is passed to :func:`urlopen` (or :meth:`OpenerDirector.open`)." +"Also, remember that a few standard headers (:mailheader:`Content-" +"Length`, :mailheader:`Content-Type` and :mailheader:`Host`) are added when " +"the :class:`Request` is passed to :func:`urlopen` " +"(or :meth:`OpenerDirector.open`)." msgstr "" msgid "" @@ -1423,8 +1458,8 @@ msgstr "" msgid "" ">>> import urllib.request\n" ">>> proxies = {'http': 'http://proxy.example.com:8080/'}\n" -">>> opener = urllib.request.build_opener(urllib.request." -"ProxyHandler(proxies))\n" +">>> opener = " +"urllib.request.build_opener(urllib.request.ProxyHandler(proxies))\n" ">>> with opener.open(\"https://www.python.org\") as f:\n" "... f.read().decode('utf-8')\n" "..." @@ -1456,9 +1491,9 @@ msgid "" "Copy a network object denoted by a URL to a local file. If the URL points to " "a local file, the object will not be copied unless filename is supplied. " "Return a tuple ``(filename, headers)`` where *filename* is the local file " -"name under which the object can be found, and *headers* is whatever the :" -"meth:`!info` method of the object returned by :func:`urlopen` returned (for " -"a remote object). Exceptions are the same as for :func:`urlopen`." +"name under which the object can be found, and *headers* is whatever " +"the :meth:`!info` method of the object returned by :func:`urlopen` returned " +"(for a remote object). Exceptions are the same as for :func:`urlopen`." msgstr "" msgid "" @@ -1477,8 +1512,8 @@ msgstr "" msgid "" ">>> import urllib.request\n" -">>> local_filename, headers = urllib.request.urlretrieve('https://python." -"org/')\n" +">>> local_filename, headers = urllib.request.urlretrieve('https://" +"python.org/')\n" ">>> html = open(local_filename)\n" ">>> html.close()" msgstr "" @@ -1486,9 +1521,9 @@ msgstr "" msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " -"type is ``GET``). The *data* argument must be a bytes object in standard :" -"mimetype:`application/x-www-form-urlencoded` format; see the :func:`urllib." -"parse.urlencode` function." +"type is ``GET``). The *data* argument must be a bytes object in " +"standard :mimetype:`application/x-www-form-urlencoded` format; see " +"the :func:`urllib.parse.urlencode` function." msgstr "" msgid "" @@ -1558,9 +1593,9 @@ msgid "" "The data returned by :func:`urlopen` or :func:`urlretrieve` is the raw data " "returned by the server. This may be binary data (such as an image), plain " "text or (for example) HTML. The HTTP protocol provides type information in " -"the reply header, which can be inspected by looking at the :mailheader:" -"`Content-Type` header. If the returned data is HTML, you can use the " -"module :mod:`html.parser` to parse it." +"the reply header, which can be inspected by looking at " +"the :mailheader:`Content-Type` header. If the returned data is HTML, you " +"can use the module :mod:`html.parser` to parse it." msgstr "" msgid "" @@ -1585,9 +1620,9 @@ msgstr "" msgid "" "The :mod:`!urllib.response` module defines functions and classes which " "define a minimal file-like interface, including ``read()`` and " -"``readline()``. Functions defined by this module are used internally by the :" -"mod:`!urllib.request` module. The typical response object is a :class:" -"`urllib.response.addinfourl` instance:" +"``readline()``. Functions defined by this module are used internally by " +"the :mod:`!urllib.request` module. The typical response object is " +"a :class:`urllib.response.addinfourl` instance:" msgstr "" msgid "" @@ -1596,8 +1631,8 @@ msgid "" msgstr "" msgid "" -"Returns the headers of the response in the form of an :class:`~email.message." -"EmailMessage` instance." +"Returns the headers of the response in the form of " +"an :class:`~email.message.EmailMessage` instance." msgstr "" msgid "Status code returned by server." diff --git a/library/urllib.robotparser.po b/library/urllib.robotparser.po index 9143efb..69342cc 100644 --- a/library/urllib.robotparser.po +++ b/library/urllib.robotparser.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,8 +32,8 @@ msgid "" msgstr "" msgid "" -"This class provides methods to read, parse and answer questions about the :" -"file:`robots.txt` file at *url*." +"This class provides methods to read, parse and answer questions about " +"the :file:`robots.txt` file at *url*." msgstr "" msgid "Sets the URL referring to a :file:`robots.txt` file." diff --git a/library/uu.po b/library/uu.po index 65e5988..a895445 100644 --- a/library/uu.po +++ b/library/uu.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,15 +26,15 @@ msgid ":mod:`!uu` --- Encode and decode uuencode files" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" -"Encoding and decoding in the uu format can instead be achieved using :func:" -"`codecs.encode` and :func:`codecs.decode`, specifying ``\"uu\"`` as the " -"encoding." +"Encoding and decoding in the uu format can instead be achieved " +"using :func:`codecs.encode` and :func:`codecs.decode`, specifying ``\"uu\"`` " +"as the encoding." msgstr "" msgid "" diff --git a/library/uuid.po b/library/uuid.po index 4677bf8..6c0dbe6 100644 --- a/library/uuid.po +++ b/library/uuid.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,14 +33,14 @@ msgid "" "This module provides immutable :class:`UUID` objects (the :class:`UUID` " "class) and :ref:`functions ` for generating UUIDs " "corresponding to a specific UUID version as specified in :rfc:`9562` (which " -"supersedes :rfc:`4122`), for example, :func:`uuid1` for UUID version 1, :" -"func:`uuid3` for UUID version 3, and so on. Note that UUID version 2 is " +"supersedes :rfc:`4122`), for example, :func:`uuid1` for UUID version " +"1, :func:`uuid3` for UUID version 3, and so on. Note that UUID version 2 is " "deliberately omitted as it is outside the scope of the RFC." msgstr "" msgid "" -"If all you want is a unique ID, you should probably call :func:`uuid1` or :" -"func:`uuid4`. Note that :func:`uuid1` may compromise privacy since it " +"If all you want is a unique ID, you should probably call :func:`uuid1` " +"or :func:`uuid4`. Note that :func:`uuid1` may compromise privacy since it " "creates a UUID containing the computer's network address. :func:`uuid4` " "creates a random UUID." msgstr "" @@ -65,14 +66,15 @@ msgid "" msgstr "" msgid "" -"Create a UUID from either a string of 32 hexadecimal digits, a string of 16 " -"bytes in big-endian order as the *bytes* argument, a string of 16 bytes in " -"little-endian order as the *bytes_le* argument, a tuple of six integers (32-" -"bit *time_low*, 16-bit *time_mid*, 16-bit *time_hi_version*, 8-bit " -"*clock_seq_hi_variant*, 8-bit *clock_seq_low*, 48-bit *node*) as the " -"*fields* argument, or a single 128-bit integer as the *int* argument. When a " -"string of hex digits is given, curly braces, hyphens, and a URN prefix are " -"all optional. For example, these expressions all yield the same UUID::" +"Create a UUID from either a string of 32 hexadecimal digits, a 16-" +"byte :class:`bytes` object in big-endian order as the *bytes* argument, a 16-" +"byte :class:`bytes` object in little-endian order as the *bytes_le* " +"argument, a tuple of six integers (32-bit *time_low*, 16-bit *time_mid*, 16-" +"bit *time_hi_version*, 8-bit *clock_seq_hi_variant*, 8-bit *clock_seq_low*, " +"48-bit *node*) as the *fields* argument, or a single 128-bit integer as the " +"*int* argument. When a string of hex digits is given, curly braces, hyphens, " +"and a URN prefix are all optional. For example, these expressions all yield " +"the same UUID::" msgstr "" msgid "" @@ -94,9 +96,9 @@ msgid "" msgstr "" msgid "" -"Comparison of UUID objects are made by way of comparing their :attr:`UUID." -"int` attributes. Comparison with a non-UUID object raises a :exc:" -"`TypeError`." +"Comparison of UUID objects are made by way of comparing " +"their :attr:`UUID.int` attributes. Comparison with a non-UUID object raises " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -109,13 +111,13 @@ msgid ":class:`UUID` instances have these read-only attributes:" msgstr "" msgid "" -"The UUID as a 16-byte string (containing the six integer fields in big-" -"endian byte order)." +"The UUID as a 16-byte :class:`bytes` object (containing the six integer " +"fields in big-endian byte order)." msgstr "" msgid "" -"The UUID as a 16-byte string (with *time_low*, *time_mid*, and " -"*time_hi_version* in little-endian byte order)." +"The UUID as a 16-byte :class:`bytes` object (with *time_low*, *time_mid*, " +"and *time_hi_version* in little-endian byte order)." msgstr "" msgid "" @@ -161,13 +163,14 @@ msgstr "" msgid "" "The UUID variant, which determines the internal layout of the UUID. This " -"will be one of the constants :const:`RESERVED_NCS`, :const:`RFC_4122`, :" -"const:`RESERVED_MICROSOFT`, or :const:`RESERVED_FUTURE`." +"will be one of the " +"constants :const:`RESERVED_NCS`, :const:`RFC_4122`, :const:`RESERVED_MICROSOFT`, " +"or :const:`RESERVED_FUTURE`." msgstr "" msgid "" -"The UUID version number (1 through 8, meaningful only when the variant is :" -"const:`RFC_4122`)." +"The UUID version number (1 through 8, meaningful only when the variant " +"is :const:`RFC_4122`)." msgstr "" msgid "Added UUID versions 6, 7 and 8." @@ -222,8 +225,8 @@ msgid "" msgstr "" msgid "" -"Generate a random UUID in a cryptographically-secure method according to :" -"rfc:`RFC 9562, §5.4 <9562#section-5.4>`." +"Generate a random UUID in a cryptographically-secure method according " +"to :rfc:`RFC 9562, §5.4 <9562#section-5.4>`." msgstr "" msgid "" @@ -234,8 +237,8 @@ msgid "" msgstr "" msgid "" -"Generate a UUID from a sequence number and the current time according to :" -"rfc:`RFC 9562, §5.6 <9562#section-5.6>`." +"Generate a UUID from a sequence number and the current time according " +"to :rfc:`RFC 9562, §5.6 <9562#section-5.6>`." msgstr "" msgid "This is an alternative to :func:`uuid1` to improve database locality." @@ -301,8 +304,8 @@ msgstr "" msgid "" "Specifies the UUID layout given in :rfc:`4122`. This constant is kept for " -"backward compatibility even though :rfc:`4122` has been superseded by :rfc:" -"`9562`." +"backward compatibility even though :rfc:`4122` has been superseded " +"by :rfc:`9562`." msgstr "" msgid "Reserved for Microsoft compatibility." @@ -351,8 +354,8 @@ msgid "Show the help message and exit." msgstr "" msgid "" -"Specify the function name to use to generate the uuid. By default :func:" -"`uuid4` is used." +"Specify the function name to use to generate the uuid. By " +"default :func:`uuid4` is used." msgstr "" msgid "Allow generating UUID versions 6, 7 and 8." @@ -366,8 +369,8 @@ msgid "" msgstr "" msgid "" -"The name used as part of generating the uuid. Only required for :func:" -"`uuid3` / :func:`uuid5` functions." +"The name used as part of generating the uuid. Only required " +"for :func:`uuid3` / :func:`uuid5` functions." msgstr "" msgid "Generate *num* fresh UUIDs." @@ -409,7 +412,7 @@ msgid "" ">>> x.bytes\n" "b'\\x00\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f'\n" "\n" -">>> # make a UUID from a 16-byte string\n" +">>> # make a UUID from a 16-byte bytes object\n" ">>> uuid.UUID(bytes=x.bytes)\n" "UUID('00010203-0405-0607-0809-0a0b0c0d0e0f')\n" "\n" diff --git a/library/venv.po b/library/venv.po index c7aba73..34493cb 100644 --- a/library/venv.po +++ b/library/venv.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -106,9 +106,9 @@ msgstr "" msgid "" "This creates the target directory (including parent directories as needed) " "and places a :file:`pyvenv.cfg` file in it with a ``home`` key pointing to " -"the Python installation from which the command was run. It also creates a :" -"file:`bin` (or :file:`Scripts` on Windows) subdirectory containing a copy or " -"symlink of the Python executable (as appropriate for the platform or " +"the Python installation from which the command was run. It also creates " +"a :file:`bin` (or :file:`Scripts` on Windows) subdirectory containing a copy " +"or symlink of the Python executable (as appropriate for the platform or " "arguments used at environment creation time). It also creates a :file:`lib/" "pythonX.Y/site-packages` subdirectory (on Windows, this is :file:`Lib\\" "\\site-packages`). If an existing directory is specified, it will be re-used." @@ -254,12 +254,13 @@ msgid "How venvs work" msgstr "" msgid "" -"When a Python interpreter is running from a virtual environment, :data:`sys." -"prefix` and :data:`sys.exec_prefix` point to the directories of the virtual " -"environment, whereas :data:`sys.base_prefix` and :data:`sys." -"base_exec_prefix` point to those of the base Python used to create the " -"environment. It is sufficient to check ``sys.prefix != sys.base_prefix`` to " -"determine if the current interpreter is running from a virtual environment." +"When a Python interpreter is running from a virtual " +"environment, :data:`sys.prefix` and :data:`sys.exec_prefix` point to the " +"directories of the virtual environment, whereas :data:`sys.base_prefix` " +"and :data:`sys.base_exec_prefix` point to those of the base Python used to " +"create the environment. It is sufficient to check ``sys.prefix != " +"sys.base_prefix`` to determine if the current interpreter is running from a " +"virtual environment." msgstr "" msgid "" @@ -340,13 +341,14 @@ msgstr "" msgid "" "In order to achieve this, scripts installed into virtual environments have a " -"\"shebang\" line which points to the environment's Python interpreter, :samp:" -"`#!/{}/bin/python`. This means that the script will run with " -"that interpreter regardless of the value of :envvar:`PATH`. On Windows, " -"\"shebang\" line processing is supported if you have the :ref:`launcher` " -"installed. Thus, double-clicking an installed script in a Windows Explorer " -"window should run it with the correct interpreter without the environment " -"needing to be activated or on the :envvar:`PATH`." +"\"shebang\" line which points to the environment's Python " +"interpreter, :samp:`#!/{}/bin/python`. This means that the " +"script will run with that interpreter regardless of the value " +"of :envvar:`PATH`. On Windows, \"shebang\" line processing is supported if " +"you have the :ref:`launcher` installed. Thus, double-clicking an installed " +"script in a Windows Explorer window should run it with the correct " +"interpreter without the environment needing to be activated or on " +"the :envvar:`PATH`." msgstr "" msgid "" @@ -384,8 +386,8 @@ msgstr "" msgid "" "The high-level method described above makes use of a simple API which " "provides mechanisms for third-party virtual environment creators to " -"customize environment creation according to their needs, the :class:" -"`EnvBuilder` class." +"customize environment creation according to their needs, " +"the :class:`EnvBuilder` class." msgstr "" msgid "" @@ -479,9 +481,9 @@ msgid "" msgstr "" msgid "" -"Each of the methods :meth:`ensure_directories`, :meth:" -"`create_configuration`, :meth:`setup_python`, :meth:`setup_scripts` and :" -"meth:`post_setup` can be overridden." +"Each of the " +"methods :meth:`ensure_directories`, :meth:`create_configuration`, :meth:`setup_python`, :meth:`setup_scripts` " +"and :meth:`post_setup` can be overridden." msgstr "" msgid "" @@ -539,8 +541,8 @@ msgstr "" msgid "" "``env_exe`` - The name of the Python interpreter in the virtual environment. " -"Used for ``__VENV_PYTHON__`` in activation scripts (see :meth:" -"`install_scripts`)." +"Used for ``__VENV_PYTHON__`` in activation scripts " +"(see :meth:`install_scripts`)." msgstr "" msgid "" @@ -744,8 +746,8 @@ msgid "" " \"\"\"\n" " Read lines from a subprocess' output stream and either pass to a " "progress\n" -" callable (if specified) or write progress information to sys." -"stderr.\n" +" callable (if specified) or write progress information to " +"sys.stderr.\n" " \"\"\"\n" " progress = self.progress\n" " while True:\n" @@ -806,8 +808,8 @@ msgid "" " url = \"https://bootstrap.pypa.io/ez_setup.py\"\n" " self.install_script(context, 'setuptools', url)\n" " # clear up the setuptools archive which gets downloaded\n" -" pred = lambda o: o.startswith('setuptools-') and o.endswith('.tar." -"gz')\n" +" pred = lambda o: o.startswith('setuptools-') and " +"o.endswith('.tar.gz')\n" " files = filter(pred, os.listdir(context.bin_path))\n" " for f in files:\n" " f = os.path.join(context.bin_path, f)\n" diff --git a/library/warnings.po b/library/warnings.po index ca4e36a..d446765 100644 --- a/library/warnings.po +++ b/library/warnings.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -38,15 +38,15 @@ msgstr "" msgid "" "Python programmers issue warnings by calling the :func:`warn` function " -"defined in this module. (C programmers use :c:func:`PyErr_WarnEx`; see :ref:" -"`exceptionhandling` for details)." +"defined in this module. (C programmers use :c:func:`PyErr_WarnEx`; " +"see :ref:`exceptionhandling` for details)." msgstr "" msgid "" "Warning messages are normally written to :data:`sys.stderr`, but their " "disposition can be changed flexibly, from ignoring all warnings to turning " -"them into exceptions. The disposition of warnings can vary based on the :" -"ref:`warning category `, the text of the warning " +"them into exceptions. The disposition of warnings can vary based on " +"the :ref:`warning category `, the text of the warning " "message, and the source location where it is issued. Repetitions of a " "particular warning for the same source location are typically suppressed." msgstr "" @@ -59,11 +59,11 @@ msgid "" msgstr "" msgid "" -"The determination whether to issue a warning message is controlled by the :" -"ref:`warning filter `, which is a sequence of matching rules " -"and actions. Rules can be added to the filter by calling :func:" -"`filterwarnings` and reset to its default state by calling :func:" -"`resetwarnings`." +"The determination whether to issue a warning message is controlled by " +"the :ref:`warning filter `, which is a sequence of matching " +"rules and actions. Rules can be added to the filter by " +"calling :func:`filterwarnings` and reset to its default state by " +"calling :func:`resetwarnings`." msgstr "" msgid "" @@ -111,82 +111,90 @@ msgid ":exc:`Warning`" msgstr "" msgid "" -"This is the base class of all warning category classes. It is a subclass " -"of :exc:`Exception`." +"Base class for warning categories. It is a subclass of :exc:`Exception`." msgstr "" msgid ":exc:`UserWarning`" msgstr "" -msgid "The default category for :func:`warn`." +msgid "" +"Base class for warnings generated by user code. The default category " +"for :func:`warn`." msgstr "" msgid ":exc:`DeprecationWarning`" msgstr "" msgid "" -"Base category for warnings about deprecated features when those warnings are " +"Base class for warnings about deprecated features when those warnings are " "intended for other Python developers (ignored by default, unless triggered " "by code in ``__main__``)." msgstr "" +msgid ":exc:`PendingDeprecationWarning`" +msgstr "" + +msgid "" +"Base class for warnings about features that will be deprecated in the future " +"(ignored by default)." +msgstr "" + msgid ":exc:`SyntaxWarning`" msgstr "" msgid "" -"Base category for warnings about dubious syntactic features (typically " -"emitted when compiling Python source code, and hence may not be suppressed " -"by runtime filters)" +"Base class for warnings about dubious syntax (typically emitted when " +"compiling Python source code, and hence may not be suppressed by runtime " +"filters)." msgstr "" msgid ":exc:`RuntimeWarning`" msgstr "" -msgid "Base category for warnings about dubious runtime features." +msgid "Base class for warnings about dubious runtime behavior." msgstr "" msgid ":exc:`FutureWarning`" msgstr "" msgid "" -"Base category for warnings about deprecated features when those warnings are " +"Base class for warnings about deprecated features when those warnings are " "intended for end users of applications that are written in Python." msgstr "" -msgid ":exc:`PendingDeprecationWarning`" +msgid ":exc:`ImportWarning`" msgstr "" msgid "" -"Base category for warnings about features that will be deprecated in the " -"future (ignored by default)." +"Base class for warnings triggered during the process of importing a module " +"(ignored by default)." msgstr "" -msgid ":exc:`ImportWarning`" +msgid ":exc:`UnicodeWarning`" msgstr "" -msgid "" -"Base category for warnings triggered during the process of importing a " -"module (ignored by default)." +msgid "Base class for warnings related to Unicode." msgstr "" -msgid ":exc:`UnicodeWarning`" +msgid ":exc:`EncodingWarning`" msgstr "" -msgid "Base category for warnings related to Unicode." +msgid "" +"Base class for warnings related to encodings. See :ref:`io-encoding-warning` " +"for details." msgstr "" msgid ":exc:`BytesWarning`" msgstr "" msgid "" -"Base category for warnings related to :class:`bytes` and :class:`bytearray`." +"Base class for warnings related to :class:`bytes` and :class:`bytearray`." msgstr "" msgid ":exc:`ResourceWarning`" msgstr "" -msgid "" -"Base category for warnings related to resource usage (ignored by default)." +msgid "Base class for warnings related to resource usage (ignored by default)." msgstr "" msgid "" @@ -270,11 +278,11 @@ msgstr "" msgid "" "*message* is a string containing a regular expression that the start of the " -"warning message must match, case-insensitively. In :option:`-W` and :envvar:" -"`PYTHONWARNINGS`, if *message* starts and ends with a forward slash (``/``), " -"it specifies a regular expression as above; otherwise it is a literal string " -"that the start of the warning message must match (case-insensitively), " -"ignoring any whitespace at the start or end of *message*." +"warning message must match, case-insensitively. In :option:`-W` " +"and :envvar:`PYTHONWARNINGS`, if *message* starts and ends with a forward " +"slash (``/``), it specifies a regular expression as above; otherwise it is a " +"literal string that the start of the warning message must match (case-" +"insensitively), ignoring any whitespace at the start or end of *message*." msgstr "" msgid "" @@ -351,11 +359,11 @@ msgstr "" msgid "" "The meaning of each of these fields is as described in :ref:`warning-" -"filter`. When listing multiple filters on a single line (as for :envvar:" -"`PYTHONWARNINGS`), the individual filters are separated by commas and the " -"filters listed later take precedence over those listed before them (as " -"they're applied left-to-right, and the most recently applied filters take " -"precedence over earlier ones)." +"filter`. When listing multiple filters on a single line (as " +"for :envvar:`PYTHONWARNINGS`), the individual filters are separated by " +"commas and the filters listed later take precedence over those listed before " +"them (as they're applied left-to-right, and the most recently applied " +"filters take precedence over earlier ones)." msgstr "" msgid "" @@ -404,8 +412,8 @@ msgid "" msgstr "" msgid "" -":exc:`DeprecationWarning` is now ignored by default in addition to :exc:" -"`PendingDeprecationWarning`." +":exc:`DeprecationWarning` is now ignored by default in addition " +"to :exc:`PendingDeprecationWarning`." msgstr "" msgid "" @@ -425,10 +433,10 @@ msgstr "" msgid "" "Developers of applications written in Python may wish to hide *all* Python " "level warnings from their users by default, and only display them when " -"running tests or otherwise working on the application. The :data:`sys." -"warnoptions` attribute used to pass filter configurations to the interpreter " -"can be used as a marker to indicate whether or not warnings should be " -"disabled::" +"running tests or otherwise working on the application. " +"The :data:`sys.warnoptions` attribute used to pass filter configurations to " +"the interpreter can be used as a marker to indicate whether or not warnings " +"should be disabled::" msgstr "" msgid "" @@ -646,8 +654,8 @@ msgid "" msgstr "" msgid "" -"*source*, if supplied, is the destroyed object which emitted a :exc:" -"`ResourceWarning`." +"*source*, if supplied, is the destroyed object which emitted " +"a :exc:`ResourceWarning`." msgstr "" msgid "Added *source* parameter." @@ -701,18 +709,18 @@ msgid "" "Write a warning to a file. The default implementation calls " "``formatwarning(message, category, filename, lineno, line)`` and writes the " "resulting string to *file*, which defaults to :data:`sys.stderr`. You may " -"replace this function with any callable by assigning to ``warnings." -"showwarning``. *line* is a line of source code to be included in the warning " -"message; if *line* is not supplied, :func:`showwarning` will try to read the " -"line specified by *filename* and *lineno*." +"replace this function with any callable by assigning to " +"``warnings.showwarning``. *line* is a line of source code to be included in " +"the warning message; if *line* is not supplied, :func:`showwarning` will try " +"to read the line specified by *filename* and *lineno*." msgstr "" msgid "" "Format a warning the standard way. This returns a string which may contain " "embedded newlines and ends in a newline. *line* is a line of source code to " -"be included in the warning message; if *line* is not supplied, :func:" -"`formatwarning` will try to read the line specified by *filename* and " -"*lineno*." +"be included in the warning message; if *line* is not " +"supplied, :func:`formatwarning` will try to read the line specified by " +"*filename* and *lineno*." msgstr "" msgid "" @@ -728,10 +736,10 @@ msgstr "" msgid "" "Insert a simple entry into the list of :ref:`warnings filter specifications " -"`. The meaning of the function parameters is as for :func:" -"`filterwarnings`, but regular expressions are not needed as the filter " -"inserted always matches any message in any module as long as the category " -"and line number match." +"`. The meaning of the function parameters is as " +"for :func:`filterwarnings`, but regular expressions are not needed as the " +"filter inserted always matches any message in any module as long as the " +"category and line number match." msgstr "" msgid "" @@ -787,8 +795,8 @@ msgid "" "The deprecation message passed to the decorator is saved in the " "``__deprecated__`` attribute on the decorated object. If applied to an " "overload, the decorator must be after the :deco:`~typing.overload` decorator " -"for the attribute to exist on the overload as returned by :func:`typing." -"get_overloads`." +"for the attribute to exist on the overload as returned " +"by :func:`typing.get_overloads`." msgstr "" msgid "See :pep:`702`." @@ -799,12 +807,12 @@ msgstr "" msgid "" "A context manager that copies and, upon exit, restores the warnings filter " -"and the :func:`showwarning` function. If the *record* argument is :const:" -"`False` (the default) the context manager returns :class:`None` on entry. If " -"*record* is :const:`True`, a list is returned that is progressively " -"populated with objects as seen by a custom :func:`showwarning` function " -"(which also suppresses output to ``sys.stderr``). Each object in the list is " -"guaranteed to have the following attributes:" +"and the :func:`showwarning` function. If the *record* argument " +"is :const:`False` (the default) the context manager returns :class:`None` on " +"entry. If *record* is :const:`True`, a list is returned that is " +"progressively populated with objects as seen by a custom :func:`showwarning` " +"function (which also suppresses output to ``sys.stderr``). Each object in " +"the list is guaranteed to have the following attributes:" msgstr "" msgid "``message``: the warning message (an instance of :exc:`Warning`)" @@ -871,22 +879,22 @@ msgid "Concurrent safety of Context Managers" msgstr "" msgid "" -"The behavior of :class:`catch_warnings` context manager depends on the :data:" -"`sys.flags.context_aware_warnings` flag. If the flag is true, the context " -"manager behaves in a concurrent-safe fashion and otherwise not. Concurrent-" -"safe means that it is both thread-safe and safe to use within :ref:`asyncio " -"coroutines ` and tasks. Being thread-safe means that behavior is " -"predictable in a multi-threaded program. The flag defaults to true for free-" -"threaded builds and false otherwise." +"The behavior of :class:`catch_warnings` context manager depends on " +"the :data:`sys.flags.context_aware_warnings` flag. If the flag is true, the " +"context manager behaves in a concurrent-safe fashion and otherwise not. " +"Concurrent-safe means that it is both thread-safe and safe to use " +"within :ref:`asyncio coroutines ` and tasks. Being thread-safe " +"means that behavior is predictable in a multi-threaded program. The flag " +"defaults to true for free-threaded builds and false otherwise." msgstr "" msgid "" -"If the :data:`~sys.flags.context_aware_warnings` flag is false, then :class:" -"`catch_warnings` will modify the global attributes of the :mod:`!warnings` " -"module. This is not safe if used within a concurrent program (using " -"multiple threads or using asyncio coroutines). For example, if two or more " -"threads use the :class:`catch_warnings` class at the same time, the behavior " -"is undefined." +"If the :data:`~sys.flags.context_aware_warnings` flag is false, " +"then :class:`catch_warnings` will modify the global attributes of the :mod:`!" +"warnings` module. This is not safe if used within a concurrent program " +"(using multiple threads or using asyncio coroutines). For example, if two " +"or more threads use the :class:`catch_warnings` class at the same time, the " +"behavior is undefined." msgstr "" msgid "" @@ -913,20 +921,20 @@ msgstr "" msgid "" "The :data:`~sys.flags.context_aware_warnings` flag can be set the :option:`-" -"X context_aware_warnings<-X>` command-line option or by the :envvar:" -"`PYTHON_CONTEXT_AWARE_WARNINGS` environment variable." +"X context_aware_warnings<-X>` command-line option or by " +"the :envvar:`PYTHON_CONTEXT_AWARE_WARNINGS` environment variable." msgstr "" msgid "" "It is likely that most programs that desire thread-safe behaviour of the " -"warnings module will also want to set the :data:`~sys.flags." -"thread_inherit_context` flag to true. That flag causes threads created by :" -"class:`threading.Thread` to start with a copy of the context variables from " -"the thread starting it. When true, the context established by :class:" -"`catch_warnings` in one thread will also apply to new threads started by " -"it. If false, new threads will start with an empty warnings context " -"variable, meaning that any filtering that was established by a :class:" -"`catch_warnings` context manager will no longer be active." +"warnings module will also want to set " +"the :data:`~sys.flags.thread_inherit_context` flag to true. That flag " +"causes threads created by :class:`threading.Thread` to start with a copy of " +"the context variables from the thread starting it. When true, the context " +"established by :class:`catch_warnings` in one thread will also apply to new " +"threads started by it. If false, new threads will start with an empty " +"warnings context variable, meaning that any filtering that was established " +"by a :class:`catch_warnings` context manager will no longer be active." msgstr "" msgid "" diff --git a/library/wave.po b/library/wave.po index 4fbe325..9e36153 100644 --- a/library/wave.po +++ b/library/wave.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -81,16 +81,16 @@ msgstr "" msgid "" "The :func:`.open` function may be used in a :keyword:`with` statement. When " -"the :keyword:`!with` block completes, the :meth:`Wave_read.close` or :meth:" -"`Wave_write.close` method is called." +"the :keyword:`!with` block completes, the :meth:`Wave_read.close` " +"or :meth:`Wave_write.close` method is called." msgstr "" msgid "Added support for unseekable files." msgstr "" msgid "" -"Added support for :term:`path-like objects ` and :term:" -"`bytes-like objects `." +"Added support for :term:`path-like objects ` " +"and :term:`bytes-like objects `." msgstr "" msgid "" @@ -138,8 +138,8 @@ msgid "Returns the frame format code." msgstr "" msgid "" -"This is one of :data:`WAVE_FORMAT_PCM`, :data:`WAVE_FORMAT_IEEE_FLOAT`, or :" -"data:`WAVE_FORMAT_EXTENSIBLE`." +"This is one of :data:`WAVE_FORMAT_PCM`, :data:`WAVE_FORMAT_IEEE_FLOAT`, " +"or :data:`WAVE_FORMAT_EXTENSIBLE`." msgstr "" msgid "Returns compression type (``'NONE'`` is the only supported type)." @@ -187,23 +187,23 @@ msgid "" "For seekable output streams, the ``wave`` header will automatically be " "updated to reflect the number of frames actually written. For unseekable " "streams, the *nframes* value must be accurate when the first frame data is " -"written. An accurate *nframes* value can be achieved either by calling :" -"meth:`setnframes` or :meth:`setparams` with the number of frames that will " -"be written before :meth:`close` is called and then using :meth:" -"`writeframesraw` to write the frame data, or by calling :meth:`writeframes` " -"with all of the frame data to be written. In the latter case :meth:" -"`writeframes` will calculate the number of frames in the data and set " -"*nframes* accordingly before writing the frame data." +"written. An accurate *nframes* value can be achieved either by " +"calling :meth:`setnframes` or :meth:`setparams` with the number of frames " +"that will be written before :meth:`close` is called and then " +"using :meth:`writeframesraw` to write the frame data, or by " +"calling :meth:`writeframes` with all of the frame data to be written. In " +"the latter case :meth:`writeframes` will calculate the number of frames in " +"the data and set *nframes* accordingly before writing the frame data." msgstr "" msgid "Wave_write objects have the following methods:" msgstr "" msgid "" -"Make sure *nframes* is correct, and close the file if it was opened by :mod:" -"`!wave`. This method is called upon object collection. It will raise an " -"exception if the output stream is not seekable and *nframes* does not match " -"the number of frames actually written." +"Make sure *nframes* is correct, and close the file if it was opened " +"by :mod:`!wave`. This method is called upon object collection. It will " +"raise an exception if the output stream is not seekable and *nframes* does " +"not match the number of frames actually written." msgstr "" msgid "Set the number of channels." @@ -256,8 +256,8 @@ msgid "Set the frame format code." msgstr "" msgid "" -"Supported values are :data:`WAVE_FORMAT_PCM` and :data:" -"`WAVE_FORMAT_IEEE_FLOAT`." +"Supported values are :data:`WAVE_FORMAT_PCM` " +"and :data:`WAVE_FORMAT_IEEE_FLOAT`." msgstr "" msgid "" @@ -282,14 +282,17 @@ msgstr "" msgid "For ``format=WAVE_FORMAT_IEEE_FLOAT``, *sampwidth* must be 4 or 8." msgstr "" +msgid "Added optional item *format* to the *tuple*." +msgstr "" + msgid "" "Return a :func:`~collections.namedtuple` ``(nchannels, sampwidth, framerate, " "nframes, comptype, compname)`` containing the current output parameters." msgstr "" msgid "" -"Return current position in the file, with the same disclaimer for the :meth:" -"`Wave_read.tell` and :meth:`Wave_read.setpos` methods." +"Return current position in the file, with the same disclaimer for " +"the :meth:`Wave_read.tell` and :meth:`Wave_read.setpos` methods." msgstr "" msgid "Write audio frames, without correcting *nframes*." @@ -306,9 +309,9 @@ msgid "" msgstr "" msgid "" -"Note that it is invalid to set any parameters after calling :meth:" -"`writeframes` or :meth:`writeframesraw`, and any attempt to do so will " -"raise :exc:`wave.Error`." +"Note that it is invalid to set any parameters after " +"calling :meth:`writeframes` or :meth:`writeframesraw`, and any attempt to do " +"so will raise :exc:`wave.Error`." msgstr "" msgid "" diff --git a/library/weakref.po b/library/weakref.po index 83d77a1..6ebb895 100644 --- a/library/weakref.po +++ b/library/weakref.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,11 +40,11 @@ msgstr "" msgid "" "A weak reference to an object is not enough to keep the object alive: when " -"the only remaining references to a referent are weak references, :term:" -"`garbage collection` is free to destroy the referent and reuse its memory " -"for something else. However, until the object is actually destroyed the " -"weak reference may return the object even if there are no strong references " -"to it." +"the only remaining references to a referent are weak " +"references, :term:`garbage collection` is free to destroy the referent and " +"reuse its memory for something else. However, until the object is actually " +"destroyed the weak reference may return the object even if there are no " +"strong references to it." msgstr "" msgid "" @@ -53,24 +57,24 @@ msgid "" "For example, if you have a number of large binary image objects, you may " "wish to associate a name with each. If you used a Python dictionary to map " "names to images, or images to names, the image objects would remain alive " -"just because they appeared as values or keys in the dictionaries. The :" -"class:`WeakKeyDictionary` and :class:`WeakValueDictionary` classes supplied " -"by the :mod:`!weakref` module are an alternative, using weak references to " -"construct mappings that don't keep objects alive solely because they appear " -"in the mapping objects. If, for example, an image object is a value in a :" -"class:`WeakValueDictionary`, then when the last remaining references to that " -"image object are the weak references held by weak mappings, garbage " -"collection can reclaim the object, and its corresponding entries in weak " -"mappings are simply deleted." +"just because they appeared as values or keys in the dictionaries. " +"The :class:`WeakKeyDictionary` and :class:`WeakValueDictionary` classes " +"supplied by the :mod:`!weakref` module are an alternative, using weak " +"references to construct mappings that don't keep objects alive solely " +"because they appear in the mapping objects. If, for example, an image " +"object is a value in a :class:`WeakValueDictionary`, then when the last " +"remaining references to that image object are the weak references held by " +"weak mappings, garbage collection can reclaim the object, and its " +"corresponding entries in weak mappings are simply deleted." msgstr "" msgid "" ":class:`WeakKeyDictionary` and :class:`WeakValueDictionary` use weak " "references in their implementation, setting up callback functions on the " "weak references that notify the weak dictionaries when a key or value has " -"been reclaimed by garbage collection. :class:`WeakSet` implements the :" -"class:`set` interface, but keeps weak references to its elements, just like " -"a :class:`WeakKeyDictionary` does." +"been reclaimed by garbage collection. :class:`WeakSet` implements " +"the :class:`set` interface, but keeps weak references to its elements, just " +"like a :class:`WeakKeyDictionary` does." msgstr "" msgid "" @@ -82,10 +86,10 @@ msgid "" msgstr "" msgid "" -"Most programs should find that using one of these weak container types or :" -"class:`finalize` is all they need -- it's not usually necessary to create " -"your own weak references directly. The low-level machinery is exposed by " -"the :mod:`!weakref` module for the benefit of advanced uses." +"Most programs should find that using one of these weak container types " +"or :class:`finalize` is all they need -- it's not usually necessary to " +"create your own weak references directly. The low-level machinery is " +"exposed by the :mod:`!weakref` module for the benefit of advanced uses." msgstr "" msgid "" @@ -117,8 +121,8 @@ msgid "" msgstr "" msgid "" -"Extension types can easily be made to support weak references; see :ref:" -"`weakref-support`." +"Extension types can easily be made to support weak references; " +"see :ref:`weakref-support`." msgstr "" msgid "" @@ -131,12 +135,12 @@ msgstr "" msgid "" "Return a weak reference to *object*. The original object can be retrieved " "by calling the reference object if the referent is still alive; if the " -"referent is no longer alive, calling the reference object will cause :const:" -"`None` to be returned. If *callback* is provided and not :const:`None`, and " -"the returned weakref object is still alive, the callback will be called when " -"the object is about to be finalized; the weak reference object will be " -"passed as the only parameter to the callback; the referent will no longer be " -"available." +"referent is no longer alive, calling the reference object will " +"cause :const:`None` to be returned. If *callback* is provided and " +"not :const:`None`, and the returned weakref object is still alive, the " +"callback will be called when the object is about to be finalized; the weak " +"reference object will be passed as the only parameter to the callback; the " +"referent will no longer be available." msgstr "" msgid "" @@ -153,9 +157,9 @@ msgstr "" msgid "" "Weak references are :term:`hashable` if the *object* is hashable. They will " -"maintain their hash value even after the *object* was deleted. If :func:" -"`hash` is called the first time only after the *object* was deleted, the " -"call will raise :exc:`TypeError`." +"maintain their hash value even after the *object* was deleted. " +"If :func:`hash` is called the first time only after the *object* was " +"deleted, the call will raise :exc:`TypeError`." msgstr "" msgid "" @@ -191,8 +195,8 @@ msgid "" "whether *object* is callable. Proxy objects are not :term:`hashable` " "regardless of the referent; this avoids a number of problems related to " "their fundamentally mutable nature, and prevents their use as dictionary " -"keys. *callback* is the same as the parameter of the same name to the :func:" -"`ref` function." +"keys. *callback* is the same as the parameter of the same name to " +"the :func:`ref` function." msgstr "" msgid "" @@ -337,19 +341,19 @@ msgstr "" msgid "" "Exceptions raised by finalizer callbacks during garbage collection will be " "shown on the standard error output, but cannot be propagated. They are " -"handled in the same way as exceptions raised from an object's :meth:`~object." -"__del__` method or a weak reference's callback." +"handled in the same way as exceptions raised from an " +"object's :meth:`~object.__del__` method or a weak reference's callback." msgstr "" msgid "" -"When the program exits, each remaining live finalizer is called unless its :" -"attr:`atexit` attribute has been set to false. They are called in reverse " -"order of creation." +"When the program exits (or more generally, at :term:`interpreter shutdown`), " +"each remaining live finalizer is called unless its :attr:`atexit` attribute " +"has been set to false. They are called in reverse order of creation." msgstr "" msgid "" -"A finalizer will never invoke its callback during the later part of the :" -"term:`interpreter shutdown` when module globals are liable to have been " +"A finalizer will never invoke its callback during the later part of " +"the :term:`interpreter shutdown` when module globals are liable to have been " "replaced by :const:`None`." msgstr "" @@ -372,9 +376,9 @@ msgid "Property which is true if the finalizer is alive, false otherwise." msgstr "" msgid "" -"A writable boolean property which by default is true. When the program " -"exits, it calls all remaining live finalizers for which :attr:`.atexit` is " -"true. They are called in reverse order of creation." +"A writable boolean property which by default is true. At :term:`interpreter " +"shutdown`, all remaining live finalizers for which :attr:`.atexit` is true " +"are called in reverse order of creation." msgstr "" msgid "" @@ -411,14 +415,14 @@ msgid "Weak Reference Objects" msgstr "" msgid "" -"Weak reference objects have no methods and no attributes besides :attr:`ref." -"__callback__`. A weak reference object allows the referent to be obtained, " -"if it still exists, by calling it:" +"Weak reference objects have no methods and no attributes " +"besides :attr:`ref.__callback__`. A weak reference object allows the " +"referent to be obtained, if it still exists, by calling it:" msgstr "" msgid "" -"If the referent no longer exists, calling the reference object returns :" -"const:`None`:" +"If the referent no longer exists, calling the reference object " +"returns :const:`None`:" msgstr "" msgid "" @@ -447,11 +451,11 @@ msgstr "" msgid "" "Specialized versions of :class:`ref` objects can be created through " -"subclassing. This is used in the implementation of the :class:" -"`WeakValueDictionary` to reduce the memory overhead for each entry in the " -"mapping. This may be most useful to associate additional information with a " -"reference, but could also be used to insert additional processing on calls " -"to retrieve the referent." +"subclassing. This is used in the implementation of " +"the :class:`WeakValueDictionary` to reduce the memory overhead for each " +"entry in the mapping. This may be most useful to associate additional " +"information with a reference, but could also be used to insert additional " +"processing on calls to retrieve the referent." msgstr "" msgid "" diff --git a/library/webbrowser.po b/library/webbrowser.po index 7459f0b..6e0b067 100644 --- a/library/webbrowser.po +++ b/library/webbrowser.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -149,18 +150,18 @@ msgid "" msgstr "" msgid "" -"Register the browser type *name*. Once a browser type is registered, the :" -"func:`get` function can return a controller for that browser type. If " +"Register the browser type *name*. Once a browser type is registered, " +"the :func:`get` function can return a controller for that browser type. If " "*instance* is not provided, or is ``None``, *constructor* will be called " "without parameters to create an instance when needed. If *instance* is " "provided, *constructor* will never be called, and may be ``None``." msgstr "" msgid "" -"Setting *preferred* to ``True`` makes this browser a preferred result for a :" -"func:`get` call with no argument. Otherwise, this entry point is only " -"useful if you plan to either set the :envvar:`BROWSER` variable or call :" -"func:`get` with a nonempty argument matching the name of a handler you " +"Setting *preferred* to ``True`` makes this browser a preferred result for " +"a :func:`get` call with no argument. Otherwise, this entry point is only " +"useful if you plan to either set the :envvar:`BROWSER` variable or " +"call :func:`get` with a nonempty argument matching the name of a handler you " "declare." msgstr "" @@ -309,9 +310,9 @@ msgid "" "\"Konqueror\" is the file manager for the KDE desktop environment for Unix, " "and only makes sense to use if KDE is running. Some way of reliably " "detecting KDE would be nice; the :envvar:`!KDEDIR` variable is not " -"sufficient. Note also that the name \"kfm\" is used even when using the :" -"program:`konqueror` command with KDE 2 --- the implementation selects the " -"best strategy for running Konqueror." +"sufficient. Note also that the name \"kfm\" is used even when using " +"the :program:`konqueror` command with KDE 2 --- the implementation selects " +"the best strategy for running Konqueror." msgstr "" msgid "Only on Windows platforms." @@ -343,14 +344,14 @@ msgstr "" msgid "" ":class:`!MacOS` has been added as a replacement for :class:`!" -"MacOSXOSAScript`, opening browsers via :program:`/usr/bin/open` instead of :" -"program:`osascript`." +"MacOSXOSAScript`, opening browsers via :program:`/usr/bin/open` instead " +"of :program:`osascript`." msgstr "" msgid "" -":class:`!MacOSXOSAScript` is deprecated in favour of :class:`!MacOS`. Using :" -"program:`/usr/bin/open` instead of :program:`osascript` is a security and " -"usability improvement: :program:`osascript` may be blocked on managed " +":class:`!MacOSXOSAScript` is deprecated in favour of :class:`!MacOS`. " +"Using :program:`/usr/bin/open` instead of :program:`osascript` is a security " +"and usability improvement: :program:`osascript` may be blocked on managed " "systems due to its abuse potential as a general-purpose scripting " "interpreter." msgstr "" @@ -387,8 +388,8 @@ msgstr "" msgid "" "Open *url* in a new window of the browser handled by this controller, if " -"possible, otherwise, open *url* in the only browser window. Alias :func:" -"`open_new`." +"possible, otherwise, open *url* in the only browser window. " +"Alias :func:`open_new`." msgstr "" msgid "" diff --git a/library/windows.po b/library/windows.po index 9b26271..f03e8e2 100644 --- a/library/windows.po +++ b/library/windows.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/winreg.po b/library/winreg.po index 1ef9d92..07ec62e 100644 --- a/library/winreg.po +++ b/library/winreg.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -73,8 +73,8 @@ msgid "*key* is the predefined handle to connect to." msgstr "" msgid "" -"The return value is the handle of the opened key. If the function fails, an :" -"exc:`OSError` exception is raised." +"The return value is the handle of the opened key. If the function fails, " +"an :exc:`OSError` exception is raised." msgstr "" msgid "" @@ -122,8 +122,8 @@ msgstr "" msgid "" "*access* is an integer that specifies an access mask that describes the " -"desired security access for the key. Default is :const:`KEY_WRITE`. See :" -"ref:`Access Rights ` for other allowed values." +"desired security access for the key. Default is :const:`KEY_WRITE`. " +"See :ref:`Access Rights ` for other allowed values." msgstr "" msgid "Deletes the specified key." @@ -260,8 +260,8 @@ msgid "" msgstr "" msgid "" -"Expands environment variable placeholders ``%NAME%`` in strings like :const:" -"`REG_EXPAND_SZ`::" +"Expands environment variable placeholders ``%NAME%`` in strings " +"like :const:`REG_EXPAND_SZ`::" msgstr "" msgid "" @@ -270,8 +270,8 @@ msgid "" msgstr "" msgid "" -"Raises an :ref:`auditing event ` ``winreg." -"ExpandEnvironmentStrings`` with argument ``str``." +"Raises an :ref:`auditing event ` " +"``winreg.ExpandEnvironmentStrings`` with argument ``str``." msgstr "" msgid "Writes all the attributes of a key to the registry." @@ -280,11 +280,11 @@ msgstr "" msgid "" "It is not necessary to call :func:`FlushKey` to change a key. Registry " "changes are flushed to disk by the registry using its lazy flusher. " -"Registry changes are also flushed to disk at system shutdown. Unlike :func:" -"`CloseKey`, the :func:`FlushKey` method returns only when all the data has " -"been written to the registry. An application should only call :func:" -"`FlushKey` if it requires absolute certainty that registry changes are on " -"disk." +"Registry changes are also flushed to disk at system shutdown. " +"Unlike :func:`CloseKey`, the :func:`FlushKey` method returns only when all " +"the data has been written to the registry. An application should only " +"call :func:`FlushKey` if it requires absolute certainty that registry " +"changes are on disk." msgstr "" msgid "" @@ -312,10 +312,11 @@ msgid "" msgstr "" msgid "" -"A call to :func:`LoadKey` fails if the calling process does not have the :c:" -"data:`!SE_RESTORE_PRIVILEGE` privilege. Note that privileges are different " -"from permissions -- see the `RegLoadKey documentation `__ for more details." +"A call to :func:`LoadKey` fails if the calling process does not have " +"the :c:data:`!SE_RESTORE_PRIVILEGE` privilege. Note that privileges are " +"different from permissions -- see the `RegLoadKey documentation `__ for more " +"details." msgstr "" msgid "" @@ -341,8 +342,8 @@ msgstr "" msgid "" "*access* is an integer that specifies an access mask that describes the " -"desired security access for the key. Default is :const:`KEY_READ`. See :" -"ref:`Access Rights ` for other allowed values." +"desired security access for the key. Default is :const:`KEY_READ`. " +"See :ref:`Access Rights ` for other allowed values." msgstr "" msgid "The result is a new handle to the specified key." @@ -391,8 +392,8 @@ msgstr "" msgid "" "Values in the registry have name, type, and data components. This method " "retrieves the data for a key's first value that has a ``NULL`` name. But the " -"underlying API call doesn't return the type, so always use :func:" -"`QueryValueEx` if possible." +"underlying API call doesn't return the type, so always " +"use :func:`QueryValueEx` if possible." msgstr "" msgid "" @@ -415,8 +416,8 @@ msgid "The value of the registry item." msgstr "" msgid "" -"An integer giving the registry type for this value (see table in docs for :" -"meth:`SetValueEx`)" +"An integer giving the registry type for this value (see table in docs " +"for :meth:`SetValueEx`)" msgstr "" msgid "Saves the specified key, and all its subkeys to the specified file." @@ -456,8 +457,8 @@ msgstr "" msgid "" "*type* is an integer that specifies the type of the data. Currently this " -"must be :const:`REG_SZ`, meaning only strings are supported. Use the :func:" -"`SetValueEx` function for support for other data types." +"must be :const:`REG_SZ`, meaning only strings are supported. Use " +"the :func:`SetValueEx` function for support for other data types." msgstr "" msgid "*value* is a string that specifies the new value." @@ -475,8 +476,8 @@ msgid "" msgstr "" msgid "" -"The key identified by the *key* parameter must have been opened with :const:" -"`KEY_SET_VALUE` access." +"The key identified by the *key* parameter must have been opened " +"with :const:`KEY_SET_VALUE` access." msgstr "" msgid "" @@ -606,25 +607,25 @@ msgid "Access Rights" msgstr "" msgid "" -"For more information, see `Registry Key Security and Access `__." +"For more information, see `Registry Key Security and Access `__." msgstr "" msgid "" -"Combines the STANDARD_RIGHTS_REQUIRED, :const:`KEY_QUERY_VALUE`, :const:" -"`KEY_SET_VALUE`, :const:`KEY_CREATE_SUB_KEY`, :const:" -"`KEY_ENUMERATE_SUB_KEYS`, :const:`KEY_NOTIFY`, and :const:`KEY_CREATE_LINK` " -"access rights." +"Combines the " +"STANDARD_RIGHTS_REQUIRED, :const:`KEY_QUERY_VALUE`, :const:`KEY_SET_VALUE`, :const:`KEY_CREATE_SUB_KEY`, :const:`KEY_ENUMERATE_SUB_KEYS`, :const:`KEY_NOTIFY`, " +"and :const:`KEY_CREATE_LINK` access rights." msgstr "" msgid "" -"Combines the STANDARD_RIGHTS_WRITE, :const:`KEY_SET_VALUE`, and :const:" -"`KEY_CREATE_SUB_KEY` access rights." +"Combines the STANDARD_RIGHTS_WRITE, :const:`KEY_SET_VALUE`, " +"and :const:`KEY_CREATE_SUB_KEY` access rights." msgstr "" msgid "" -"Combines the STANDARD_RIGHTS_READ, :const:`KEY_QUERY_VALUE`, :const:" -"`KEY_ENUMERATE_SUB_KEYS`, and :const:`KEY_NOTIFY` values." +"Combines the " +"STANDARD_RIGHTS_READ, :const:`KEY_QUERY_VALUE`, :const:`KEY_ENUMERATE_SUB_KEYS`, " +"and :const:`KEY_NOTIFY` values." msgstr "" msgid "Equivalent to :const:`KEY_READ`." @@ -729,8 +730,9 @@ msgstr "" msgid "" "This object wraps a Windows HKEY object, automatically closing it when the " -"object is destroyed. To guarantee cleanup, you can call either the :meth:" -"`~PyHKEY.Close` method on the object, or the :func:`CloseKey` function." +"object is destroyed. To guarantee cleanup, you can call either " +"the :meth:`~PyHKEY.Close` method on the object, or the :func:`CloseKey` " +"function." msgstr "" msgid "All registry functions in this module return one of these objects." @@ -763,10 +765,10 @@ msgid "" msgstr "" msgid "" -"Handle objects can be converted to an integer (e.g., using the built-in :" -"func:`int` function), in which case the underlying Windows handle value is " -"returned. You can also use the :meth:`~PyHKEY.Detach` method to return the " -"integer handle, and also disconnect the Windows handle from the handle " +"Handle objects can be converted to an integer (e.g., using the built-" +"in :func:`int` function), in which case the underlying Windows handle value " +"is returned. You can also use the :meth:`~PyHKEY.Detach` method to return " +"the integer handle, and also disconnect the Windows handle from the handle " "object." msgstr "" @@ -797,9 +799,9 @@ msgid "" msgstr "" msgid "" -"The HKEY object implements :meth:`~object.__enter__` and :meth:`~object." -"__exit__` and thus supports the context protocol for the :keyword:`with` " -"statement::" +"The HKEY object implements :meth:`~object.__enter__` " +"and :meth:`~object.__exit__` and thus supports the context protocol for " +"the :keyword:`with` statement::" msgstr "" msgid "" diff --git a/library/winsound.po b/library/winsound.po index 2a6ea01..8587fae 100644 --- a/library/winsound.po +++ b/library/winsound.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,8 +54,8 @@ msgid "" "a :term:`bytes-like object`, or ``None``. Its interpretation depends on the " "value of *flags*, which can be a bitwise ORed combination of the constants " "described below. If the *sound* parameter is ``None``, any currently playing " -"waveform sound is stopped. If the system indicates an error, :exc:" -"`RuntimeError` is raised." +"waveform sound is stopped. If the system indicates an " +"error, :exc:`RuntimeError` is raised." msgstr "" msgid "" @@ -73,15 +73,15 @@ msgid "Constants" msgstr "" msgid "" -"The *sound* parameter is the name of a WAV file. Do not use with :const:" -"`SND_ALIAS`." +"The *sound* parameter is the name of a WAV file. Do not use " +"with :const:`SND_ALIAS`." msgstr "" msgid "" "The *sound* parameter is a sound association name from the registry. If the " -"registry contains no such name, play the system default sound unless :const:" -"`SND_NODEFAULT` is also specified. If no default sound is registered, raise :" -"exc:`RuntimeError`. Do not use with :const:`SND_FILENAME`." +"registry contains no such name, play the system default sound " +"unless :const:`SND_NODEFAULT` is also specified. If no default sound is " +"registered, raise :exc:`RuntimeError`. Do not use with :const:`SND_FILENAME`." msgstr "" msgid "" @@ -150,8 +150,8 @@ msgstr "" msgid "" "This module does not support playing from a memory image asynchronously, so " -"a combination of this flag and :const:`SND_ASYNC` will raise :exc:" -"`RuntimeError`." +"a combination of this flag and :const:`SND_ASYNC` will " +"raise :exc:`RuntimeError`." msgstr "" msgid "Stop playing all instances of the specified sound." diff --git a/library/wsgiref.po b/library/wsgiref.po index 7fcdb0f..3e3ecf9 100644 --- a/library/wsgiref.po +++ b/library/wsgiref.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -66,8 +66,9 @@ msgid "" "environments. A WSGI environment is a dictionary containing HTTP request " "variables as described in :pep:`3333`. All of the functions taking an " "*environ* parameter expect a WSGI-compliant dictionary to be supplied; " -"please see :pep:`3333` for a detailed specification and :data:`~wsgiref." -"types.WSGIEnvironment` for a type alias that can be used in type annotations." +"please see :pep:`3333` for a detailed specification " +"and :data:`~wsgiref.types.WSGIEnvironment` for a type alias that can be used " +"in type annotations." msgstr "" msgid "" @@ -114,11 +115,11 @@ msgid "" "routine modifies the passed-in environment to make it suitable for invoking " "another WSGI application that is located at the target URI. For example, if " "there is a WSGI application at ``/foo``, and the request URI path is ``/foo/" -"bar/baz``, and the WSGI application at ``/foo`` calls :func:" -"`shift_path_info`, it will receive the string \"bar\", and the environment " -"will be updated to be suitable for passing to a WSGI application at ``/foo/" -"bar``. That is, ``SCRIPT_NAME`` will change from ``/foo`` to ``/foo/bar``, " -"and ``PATH_INFO`` will change from ``/bar/baz`` to ``/baz``." +"bar/baz``, and the WSGI application at ``/foo`` " +"calls :func:`shift_path_info`, it will receive the string \"bar\", and the " +"environment will be updated to be suitable for passing to a WSGI application " +"at ``/foo/bar``. That is, ``SCRIPT_NAME`` will change from ``/foo`` to ``/" +"foo/bar``, and ``PATH_INFO`` will change from ``/bar/baz`` to ``/baz``." msgstr "" msgid "" @@ -136,9 +137,9 @@ msgstr "" msgid "" "This routine adds various parameters required for WSGI, including " "``HTTP_HOST``, ``SERVER_NAME``, ``SERVER_PORT``, ``REQUEST_METHOD``, " -"``SCRIPT_NAME``, ``PATH_INFO``, and all of the :pep:`3333`\\ -defined ``wsgi." -"*`` variables. It only supplies default values, and does not replace any " -"existing settings for these variables." +"``SCRIPT_NAME``, ``PATH_INFO``, and all of the :pep:`3333`\\ -defined " +"``wsgi.*`` variables. It only supplies default values, and does not replace " +"any existing settings for these variables." msgstr "" msgid "" @@ -190,14 +191,15 @@ msgid "" "used to convert a file-like object to an :term:`iterator`. The resulting " "objects are :term:`iterable`\\ s. As the object is iterated over, the " "optional *blksize* parameter will be repeatedly passed to the *filelike* " -"object's :meth:`read` method to obtain bytestrings to yield. When :meth:" -"`read` returns an empty bytestring, iteration is ended and is not resumable." +"object's :meth:`read` method to obtain bytestrings to yield. " +"When :meth:`read` returns an empty bytestring, iteration is ended and is not " +"resumable." msgstr "" msgid "" "If *filelike* has a :meth:`close` method, the returned object will also have " -"a :meth:`close` method, and it will invoke the *filelike* object's :meth:" -"`close` method when called." +"a :meth:`close` method, and it will invoke the *filelike* " +"object's :meth:`close` method when called." msgstr "" msgid "Example usage::" @@ -233,15 +235,14 @@ msgid "" msgstr "" msgid "" -":class:`Headers` objects support typical mapping operations including :meth:" -"`~object.__getitem__`, :meth:`~dict.get`, :meth:`~object.__setitem__`, :meth:" -"`~dict.setdefault`, :meth:`~object.__delitem__` and :meth:`~object." -"__contains__`. For each of these methods, the key is the header name " -"(treated case-insensitively), and the value is the first value associated " -"with that header name. Setting a header deletes any existing values for " -"that header, then adds a new value at the end of the wrapped header list. " -"Headers' existing order is generally maintained, with new headers added to " -"the end of the wrapped list." +":class:`Headers` objects support typical mapping operations " +"including :meth:`~object.__getitem__`, :meth:`~dict.get`, :meth:`~object.__setitem__`, :meth:`~dict.setdefault`, :meth:`~object.__delitem__` " +"and :meth:`~object.__contains__`. For each of these methods, the key is the " +"header name (treated case-insensitively), and the value is the first value " +"associated with that header name. Setting a header deletes any existing " +"values for that header, then adds a new value at the end of the wrapped " +"header list. Headers' existing order is generally maintained, with new " +"headers added to the end of the wrapped list." msgstr "" msgid "" @@ -252,13 +253,13 @@ msgid "" msgstr "" msgid "" -":class:`Headers` objects also support :meth:`keys`, :meth:`values`, and :" -"meth:`items` methods. The lists returned by :meth:`keys` and :meth:`items` " -"can include the same key more than once if there is a multi-valued header. " -"The ``len()`` of a :class:`Headers` object is the same as the length of its :" -"meth:`items`, which is the same as the length of the wrapped header list. " -"In fact, the :meth:`items` method just returns a copy of the wrapped header " -"list." +":class:`Headers` objects also support :meth:`keys`, :meth:`values`, " +"and :meth:`items` methods. The lists returned by :meth:`keys` " +"and :meth:`items` can include the same key more than once if there is a " +"multi-valued header. The ``len()`` of a :class:`Headers` object is the same " +"as the length of its :meth:`items`, which is the same as the length of the " +"wrapped header list. In fact, the :meth:`items` method just returns a copy " +"of the wrapped header list." msgstr "" msgid "" @@ -270,9 +271,10 @@ msgid "" msgstr "" msgid "" -"In addition to their mapping interface and formatting features, :class:" -"`Headers` objects also have the following methods for querying and adding " -"multi-valued headers, and for adding headers with MIME parameters:" +"In addition to their mapping interface and formatting " +"features, :class:`Headers` objects also have the following methods for " +"querying and adding multi-valued headers, and for adding headers with MIME " +"parameters:" msgstr "" msgid "Return a list of all the values for the named header." @@ -322,16 +324,16 @@ msgid "" "application on a given host and port. If you want to serve multiple " "applications on a single host and port, you should create a WSGI application " "that parses ``PATH_INFO`` to select which application to invoke for each " -"request. (E.g., using the :func:`shift_path_info` function from :mod:" -"`wsgiref.util`.)" +"request. (E.g., using the :func:`shift_path_info` function " +"from :mod:`wsgiref.util`.)" msgstr "" msgid "" "Create a new WSGI server listening on *host* and *port*, accepting " "connections for *app*. The return value is an instance of the supplied " "*server_class*, and will process requests using the specified " -"*handler_class*. *app* must be a WSGI application object, as defined by :" -"pep:`3333`." +"*handler_class*. *app* must be a WSGI application object, as defined " +"by :pep:`3333`." msgstr "" msgid "" @@ -361,14 +363,15 @@ msgid "" msgstr "" msgid "" -"Create a :class:`WSGIServer` instance. *server_address* should be a ``(host," -"port)`` tuple, and *RequestHandlerClass* should be the subclass of :class:" -"`http.server.BaseHTTPRequestHandler` that will be used to process requests." +"Create a :class:`WSGIServer` instance. *server_address* should be a " +"``(host,port)`` tuple, and *RequestHandlerClass* should be the subclass " +"of :class:`http.server.BaseHTTPRequestHandler` that will be used to process " +"requests." msgstr "" msgid "" -"You do not normally need to call this constructor, as the :func:" -"`make_server` function can handle all the details for you." +"You do not normally need to call this constructor, as " +"the :func:`make_server` function can handle all the details for you." msgstr "" msgid "" @@ -386,23 +389,24 @@ msgid "Returns the currently set application callable." msgstr "" msgid "" -"Normally, however, you do not need to use these additional methods, as :meth:" -"`set_app` is normally called by :func:`make_server`, and the :meth:`get_app` " -"exists mainly for the benefit of request handler instances." +"Normally, however, you do not need to use these additional methods, " +"as :meth:`set_app` is normally called by :func:`make_server`, and " +"the :meth:`get_app` exists mainly for the benefit of request handler " +"instances." msgstr "" msgid "" "Create an HTTP handler for the given *request* (i.e. a socket), " -"*client_address* (a ``(host,port)`` tuple), and *server* (:class:" -"`WSGIServer` instance)." +"*client_address* (a ``(host,port)`` tuple), and *server* " +"(:class:`WSGIServer` instance)." msgstr "" msgid "" "You do not need to create instances of this class directly; they are " "automatically created as needed by :class:`WSGIServer` objects. You can, " -"however, subclass this class and supply it as a *handler_class* to the :func:" -"`make_server` function. Some possibly relevant methods for overriding in " -"subclasses:" +"however, subclass this class and supply it as a *handler_class* to " +"the :func:`make_server` function. Some possibly relevant methods for " +"overriding in subclasses:" msgstr "" msgid "" @@ -430,11 +434,11 @@ msgstr "" msgid "" "When creating new WSGI application objects, frameworks, servers, or " -"middleware, it can be useful to validate the new code's conformance using :" -"mod:`!wsgiref.validate`. This module provides a function that creates WSGI " -"application objects that validate communications between a WSGI server or " -"gateway and a WSGI application object, to check both sides for protocol " -"conformance." +"middleware, it can be useful to validate the new code's conformance " +"using :mod:`!wsgiref.validate`. This module provides a function that " +"creates WSGI application objects that validate communications between a WSGI " +"server or gateway and a WSGI application object, to check both sides for " +"protocol conformance." msgstr "" msgid "" @@ -517,10 +521,10 @@ msgid "" msgstr "" msgid "" -"This class is a subclass of :class:`BaseCGIHandler` that sets ``wsgi." -"run_once`` to true, ``wsgi.multithread`` to false, and ``wsgi.multiprocess`` " -"to true, and always uses :mod:`sys` and :mod:`os` to obtain the necessary " -"CGI streams and environment." +"This class is a subclass of :class:`BaseCGIHandler` that sets " +"``wsgi.run_once`` to true, ``wsgi.multithread`` to false, and " +"``wsgi.multiprocess`` to true, and always uses :mod:`sys` and :mod:`os` to " +"obtain the necessary CGI streams and environment." msgstr "" msgid "" @@ -547,17 +551,17 @@ msgstr "" msgid "" "There is no way for CGI code to tell whether the option was set, so a " -"separate handler class is provided. It is used in the same way as :class:" -"`CGIHandler`, i.e., by calling ``IISCGIHandler().run(app)``, where ``app`` " -"is the WSGI application object you wish to invoke." +"separate handler class is provided. It is used in the same way " +"as :class:`CGIHandler`, i.e., by calling ``IISCGIHandler().run(app)``, where " +"``app`` is the WSGI application object you wish to invoke." msgstr "" msgid "" -"Similar to :class:`CGIHandler`, but instead of using the :mod:`sys` and :mod:" -"`os` modules, the CGI environment and I/O streams are specified explicitly. " -"The *multithread* and *multiprocess* values are used to set the ``wsgi." -"multithread`` and ``wsgi.multiprocess`` flags for any applications run by " -"the handler instance." +"Similar to :class:`CGIHandler`, but instead of using the :mod:`sys` " +"and :mod:`os` modules, the CGI environment and I/O streams are specified " +"explicitly. The *multithread* and *multiprocess* values are used to set the " +"``wsgi.multithread`` and ``wsgi.multiprocess`` flags for any applications " +"run by the handler instance." msgstr "" msgid "" @@ -576,12 +580,11 @@ msgstr "" msgid "" "This class is a subclass of :class:`BaseHandler`. It overrides the :meth:`!" -"__init__`, :meth:`~BaseHandler.get_stdin`, :meth:`~BaseHandler.get_stderr`, :" -"meth:`~BaseHandler.add_cgi_vars`, :meth:`~BaseHandler._write`, and :meth:" -"`~BaseHandler._flush` methods to support explicitly setting the environment " -"and streams via the constructor. The supplied environment and streams are " -"stored in the :attr:`stdin`, :attr:`stdout`, :attr:`stderr`, and :attr:" -"`environ` attributes." +"__init__`, :meth:`~BaseHandler.get_stdin`, :meth:`~BaseHandler.get_stderr`, :meth:`~BaseHandler.add_cgi_vars`, :meth:`~BaseHandler._write`, " +"and :meth:`~BaseHandler._flush` methods to support explicitly setting the " +"environment and streams via the constructor. The supplied environment and " +"streams are stored in the :attr:`stdin`, :attr:`stdout`, :attr:`stderr`, " +"and :attr:`environ` attributes." msgstr "" msgid "" @@ -645,8 +648,8 @@ msgid "" "Here are some other methods and attributes you may wish to override. This " "list is only a summary, however, and does not include every method that can " "be overridden. You should consult the docstrings and source code for " -"additional information before attempting to create a customized :class:" -"`BaseHandler` subclass." +"additional information before attempting to create a " +"customized :class:`BaseHandler` subclass." msgstr "" msgid "Attributes and methods for customizing the WSGI environment:" @@ -672,10 +675,10 @@ msgstr "" msgid "" "The default environment variables to be included in every request's WSGI " -"environment. By default, this is a copy of ``os.environ`` at the time that :" -"mod:`!wsgiref.handlers` was imported, but subclasses can either create their " -"own at the class or instance level. Note that the dictionary should be " -"considered read-only, since the default value is shared between multiple " +"environment. By default, this is a copy of ``os.environ`` at the time " +"that :mod:`!wsgiref.handlers` was imported, but subclasses can either create " +"their own at the class or instance level. Note that the dictionary should " +"be considered read-only, since the default value is shared between multiple " "classes and instances." msgstr "" @@ -694,9 +697,9 @@ msgstr "" msgid "" "Return the URL scheme being used for the current request. The default " -"implementation uses the :func:`guess_scheme` function from :mod:`wsgiref." -"util` to guess whether the scheme should be \"http\" or \"https\", based on " -"the current request's :attr:`environ` variables." +"implementation uses the :func:`guess_scheme` function " +"from :mod:`wsgiref.util` to guess whether the scheme should be \"http\" or " +"\"https\", based on the current request's :attr:`environ` variables." msgstr "" msgid "" @@ -721,8 +724,8 @@ msgid "" msgstr "" msgid "" -"The maximum number of frames to include in tracebacks output by the default :" -"meth:`log_exception` method. If ``None``, all frames are included." +"The maximum number of frames to include in tracebacks output by the " +"default :meth:`log_exception` method. If ``None``, all frames are included." msgstr "" msgid "" @@ -739,9 +742,10 @@ msgid "" msgstr "" msgid "" -"The default implementation just uses the :attr:`error_status`, :attr:" -"`error_headers`, and :attr:`error_body` attributes to generate an output " -"page. Subclasses can override this to produce more dynamic error output." +"The default implementation just uses " +"the :attr:`error_status`, :attr:`error_headers`, and :attr:`error_body` " +"attributes to generate an output page. Subclasses can override this to " +"produce more dynamic error output." msgstr "" msgid "" @@ -774,9 +778,9 @@ msgid "" msgstr "" msgid "" -"A ``wsgi.file_wrapper`` factory, compatible with :class:`wsgiref.types." -"FileWrapper`, or ``None``. The default value of this attribute is the :" -"class:`wsgiref.util.FileWrapper` class." +"A ``wsgi.file_wrapper`` factory, compatible " +"with :class:`wsgiref.types.FileWrapper`, or ``None``. The default value of " +"this attribute is the :class:`wsgiref.util.FileWrapper` class." msgstr "" msgid "" @@ -810,8 +814,8 @@ msgstr "" msgid "" "Transcode CGI variables from ``os.environ`` to :pep:`3333` \"bytes in " -"unicode\" strings, returning a new dictionary. This function is used by :" -"class:`CGIHandler` and :class:`IISCGIHandler` in place of directly using " +"unicode\" strings, returning a new dictionary. This function is used " +"by :class:`CGIHandler` and :class:`IISCGIHandler` in place of directly using " "``os.environ``, which is not necessarily WSGI-compliant on all platforms and " "web servers using Python 3 -- specifically, ones where the OS's actual " "environment is Unicode (i.e. Windows), or ones where the environment is " @@ -829,8 +833,8 @@ msgid ":mod:`!wsgiref.types` -- WSGI types for static type checking" msgstr "" msgid "" -"This module provides various types for static type checking as described in :" -"pep:`3333`." +"This module provides various types for static type checking as described " +"in :pep:`3333`." msgstr "" msgid "" diff --git a/library/xdrlib.po b/library/xdrlib.po index 6f2a448..21b5985 100644 --- a/library/xdrlib.po +++ b/library/xdrlib.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,9 +26,9 @@ msgid ":mod:`!xdrlib` --- Encode and decode XDR data" msgstr "" msgid "" -"This module is no longer part of the Python standard library. It was :ref:" -"`removed in Python 3.13 ` after being deprecated in " -"Python 3.11. The removal was decided in :pep:`594`." +"This module is no longer part of the Python standard library. It " +"was :ref:`removed in Python 3.13 ` after being " +"deprecated in Python 3.11. The removal was decided in :pep:`594`." msgstr "" msgid "" diff --git a/library/xml.dom.minidom.po b/library/xml.dom.minidom.po index 1f6cd7e..10a61fa 100644 --- a/library/xml.dom.minidom.po +++ b/library/xml.dom.minidom.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,8 +32,8 @@ msgid "" ":mod:`!xml.dom.minidom` is a minimal implementation of the Document Object " "Model interface, with an API similar to that in other languages. It is " "intended to be simpler than the full DOM and also significantly smaller. " -"Users who are not already proficient with the DOM should consider using the :" -"mod:`xml.etree.ElementTree` module for their XML processing instead." +"Users who are not already proficient with the DOM should consider using " +"the :mod:`xml.etree.ElementTree` module for their XML processing instead." msgstr "" msgid "" @@ -42,8 +42,8 @@ msgid "" msgstr "" msgid "" -"DOM applications typically start by parsing some XML into a DOM. With :mod:" -"`!xml.dom.minidom`, this is done through the parse functions::" +"DOM applications typically start by parsing some XML into a DOM. " +"With :mod:`!xml.dom.minidom`, this is done through the parse functions::" msgstr "" msgid "" @@ -76,8 +76,8 @@ msgstr "" msgid "" "Return a :class:`Document` that represents the *string*. This method creates " -"an :class:`io.StringIO` object for the string and passes that on to :func:" -"`parse`." +"an :class:`io.StringIO` object for the string and passes that on " +"to :func:`parse`." msgstr "" msgid "" @@ -97,10 +97,10 @@ msgstr "" msgid "" "You can also create a :class:`Document` by calling a method on a \"DOM " -"Implementation\" object. You can get this object either by calling the :" -"func:`getDOMImplementation` function in the :mod:`xml.dom` package or the :" -"mod:`!xml.dom.minidom` module. Once you have a :class:`Document`, you can " -"add child nodes to it to populate the DOM::" +"Implementation\" object. You can get this object either by calling " +"the :func:`getDOMImplementation` function in the :mod:`xml.dom` package or " +"the :mod:`!xml.dom.minidom` module. Once you have a :class:`Document`, you " +"can add child nodes to it to populate the DOM::" msgstr "" msgid "" @@ -117,9 +117,9 @@ msgstr "" msgid "" "Once you have a DOM document object, you can access the parts of your XML " "document through its properties and methods. These properties are defined " -"in the DOM specification. The main property of the document object is the :" -"attr:`documentElement` property. It gives you the main element in the XML " -"document: the one that holds all others. Here is an example program::" +"in the DOM specification. The main property of the document object is " +"the :attr:`documentElement` property. It gives you the main element in the " +"XML document: the one that holds all others. Here is an example program::" msgstr "" msgid "" @@ -128,12 +128,12 @@ msgid "" msgstr "" msgid "" -"When you are finished with a DOM tree, you may optionally call the :meth:" -"`unlink` method to encourage early cleanup of the now-unneeded objects. :" -"meth:`unlink` is an :mod:`!xml.dom.minidom`\\ -specific extension to the DOM " -"API that renders the node and its descendants essentially useless. " -"Otherwise, Python's garbage collector will eventually take care of the " -"objects in the tree." +"When you are finished with a DOM tree, you may optionally call " +"the :meth:`unlink` method to encourage early cleanup of the now-unneeded " +"objects. :meth:`unlink` is an :mod:`!xml.dom.minidom`\\ -specific extension " +"to the DOM API that renders the node and its descendants essentially " +"useless. Otherwise, Python's garbage collector will eventually take care of " +"the objects in the tree." msgstr "" msgid "" @@ -149,9 +149,9 @@ msgid "DOM Objects" msgstr "" msgid "" -"The definition of the DOM API for Python is given as part of the :mod:`xml." -"dom` module documentation. This section lists the differences between the " -"API and :mod:`!xml.dom.minidom`." +"The definition of the DOM API for Python is given as part of " +"the :mod:`xml.dom` module documentation. This section lists the differences " +"between the API and :mod:`!xml.dom.minidom`." msgstr "" msgid "" @@ -165,8 +165,8 @@ msgstr "" msgid "" "You can avoid calling this method explicitly by using the :keyword:`with` " -"statement. The following code will automatically unlink *dom* when the :" -"keyword:`!with` block is exited::" +"statement. The following code will automatically unlink *dom* when " +"the :keyword:`!with` block is exited::" msgstr "" msgid "" @@ -232,8 +232,8 @@ msgid "" msgstr "" msgid "" -"The *encoding* argument behaves like the corresponding argument of :meth:" -"`toxml`." +"The *encoding* argument behaves like the corresponding argument " +"of :meth:`toxml`." msgstr "" msgid "" @@ -371,16 +371,42 @@ msgstr "" msgid "" "``DOMException`` is currently not supported in :mod:`!xml.dom.minidom`. " -"Instead, :mod:`!xml.dom.minidom` uses standard Python exceptions such as :" -"exc:`TypeError` and :exc:`AttributeError`." +"Instead, :mod:`!xml.dom.minidom` uses standard Python exceptions such " +"as :exc:`TypeError` and :exc:`AttributeError`." msgstr "" msgid "" -":class:`NodeList` objects are implemented using Python's built-in list type. " -"These objects provide the interface defined in the DOM specification, but " -"with earlier versions of Python they do not support the official API. They " -"are, however, much more \"Pythonic\" than the interface defined in the W3C " -"recommendations." +"Each of the :class:`~xml.dom.NodeList` and :class:`~xml.dom.NamedNodeMap` " +"interfaces has two implementations, which provide additional methods and " +"operations." +msgstr "" + +msgid "" +":attr:`~xml.dom.Node.childNodes` is a subclass of :class:`list`, or, for " +"nodes which cannot have children, a subclass of :class:`tuple`. It supports " +"iteration, concatenation, indexing and slicing." +msgstr "" + +msgid "" +":attr:`~xml.dom.Node.attributes` supports ``len()``, the :keyword:`in` " +"operator, subscription by a name or by a ``(namespaceURI, localName)`` " +"tuple, assignment and deletion, and the methods :meth:`!get`, :meth:`!" +"keys`, :meth:`!keysNS`, :meth:`!values`, :meth:`!items` and :meth:`!" +"itemsNS`. :attr:`~xml.dom.DocumentType.entities` " +"and :attr:`~xml.dom.DocumentType.notations` are read-only and support only " +"``len()`` and subscription by a name." +msgstr "" + +msgid "" +":attr:`~xml.dom.Document.strictErrorChecking` " +"and :attr:`~xml.dom.Attr.specified` are always ``False``." +msgstr "" + +msgid "" +":meth:`~xml.dom.Element.removeAttribute` " +"and :meth:`~xml.dom.Element.removeAttributeNS` " +"raise :exc:`~xml.dom.NotFoundErr` if there is no matching attribute, while " +"the DOM specifies that this has no effect." msgstr "" msgid "" diff --git a/library/xml.dom.po b/library/xml.dom.po index 38f8b14..71504c8 100644 --- a/library/xml.dom.po +++ b/library/xml.dom.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-13 19:59+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,8 +89,8 @@ msgid "" msgstr "" msgid "" -"`Document Object Model (DOM) Level 2 Specification `_" +"`Document Object Model (DOM) Level 2 Specification `_" msgstr "" msgid "The W3C recommendation upon which the Python DOM API is based." @@ -131,15 +131,17 @@ msgid "" "module name of a DOM implementation, or ``None``. If it is not ``None``, " "imports the corresponding module and returns a :class:`DOMImplementation` " "object if the import succeeds. If no name is given, and if the environment " -"variable :envvar:`PYTHON_DOM` is set, this variable is used to find the " -"implementation." +"variable :envvar:`!PYTHON_DOM` is set, this variable is used to find the " +"implementation. The only well-known name in the standard library is " +"``'minidom'``, for :mod:`xml.dom.minidom`." msgstr "" msgid "" "If name is not given, this examines the available implementations to find " "one with the required feature set. If no implementation can be found, raise " "an :exc:`ImportError`. The features list must be a sequence of ``(feature, " -"version)`` pairs which are passed to the :meth:`hasFeature` method on " +"version)`` pairs which are passed to " +"the :meth:`~DOMImplementation.hasFeature` method on " "available :class:`DOMImplementation` objects." msgstr "" @@ -148,8 +150,9 @@ msgstr "" msgid "" "The value used to indicate that no namespace is associated with a node in " -"the DOM. This is typically found as the :attr:`namespaceURI` of a node, or " -"used as the *namespaceURI* parameter to a namespaces-specific method." +"the DOM. This is typically found as the :attr:`~Node.namespaceURI` of a " +"node, or used as the *namespaceURI* parameter to a namespaces-specific " +"method." msgstr "" msgid "" @@ -173,10 +176,10 @@ msgid "" "exception classes. The :class:`Node` class provided by this module does not " "implement any of the methods or attributes defined by the DOM specification; " "concrete DOM implementations must provide those. The :class:`Node` class " -"provided as part of this module does provide the constants used for the :" -"attr:`nodeType` attribute on concrete :class:`Node` objects; they are " -"located within the class rather than at the module level to conform with the " -"DOM specifications." +"provided as part of this module does provide the constants used for " +"the :attr:`~Node.nodeType` attribute on concrete :class:`Node` objects; they " +"are located within the class rather than at the module level to conform with " +"the DOM specifications." msgstr "" msgid "Objects in the DOM" @@ -187,6 +190,13 @@ msgid "" "W3C." msgstr "" +msgid "" +"The names documented in this section are DOM interfaces. With the exception " +"of :class:`Node` and the exception classes, they are not provided by " +"the :mod:`!xml.dom` module itself, but by concrete DOM implementations, such " +"as :mod:`xml.dom.minidom`." +msgstr "" + msgid "" "Note that DOM attributes may also be manipulated as nodes instead of as " "simple strings. It is fairly rare that you must do this, however, so this " @@ -303,8 +313,9 @@ msgstr "" msgid "" "The :class:`DOMImplementation` interface provides a way for applications to " "determine the availability of particular features in the DOM they are using. " -"DOM Level 2 added the ability to create new :class:`Document` and :class:" -"`DocumentType` objects using the :class:`DOMImplementation` as well." +"DOM Level 2 added the ability to create new :class:`Document` " +"and :class:`DocumentType` objects using the :class:`DOMImplementation` as " +"well." msgstr "" msgid "" @@ -313,12 +324,12 @@ msgid "" msgstr "" msgid "" -"Return a new :class:`Document` object (the root of the DOM), with a child :" -"class:`Element` object having the given *namespaceUri* and *qualifiedName*. " -"The *doctype* must be a :class:`DocumentType` object created by :meth:" -"`createDocumentType`, or ``None``. In the Python DOM API, the first two " -"arguments can also be ``None`` in order to indicate that no :class:`Element` " -"child is to be created." +"Return a new :class:`Document` object (the root of the DOM), with a " +"child :class:`Element` object having the given *namespaceUri* and " +"*qualifiedName*. The *doctype* must be a :class:`DocumentType` object " +"created by :meth:`createDocumentType`, or ``None``. In the Python DOM API, " +"the first two arguments can also be ``None`` in order to indicate that " +"no :class:`Element` child is to be created." msgstr "" msgid "" @@ -334,13 +345,38 @@ msgid "" "All of the components of an XML document are subclasses of :class:`Node`." msgstr "" +msgid "" +"Only nodes of the following types can have children, and only children of " +"the listed types:" +msgstr "" + +msgid "" +"at most one :class:`Element`, at most " +"one :class:`DocumentType`, :class:`ProcessingInstruction` " +"and :class:`Comment`" +msgstr "" + +msgid ":class:`DocumentFragment` and :class:`Element`" +msgstr "" + +msgid "" +":class:`Element`, :class:`Text`, :class:`CDATASection`, :class:`ProcessingInstruction` " +"and :class:`Comment`" +msgstr "" + +msgid "" +"Nodes of other types cannot have children. Inserting a child of a not " +"allowed type raises :exc:`HierarchyRequestErr`." +msgstr "" + msgid "" "An integer representing the node type. Symbolic constants for the types are " -"on the :class:`Node` object: :const:`ELEMENT_NODE`, :const:" -"`ATTRIBUTE_NODE`, :const:`TEXT_NODE`, :const:`CDATA_SECTION_NODE`, :const:" -"`ENTITY_NODE`, :const:`PROCESSING_INSTRUCTION_NODE`, :const:`COMMENT_NODE`, :" -"const:`DOCUMENT_NODE`, :const:`DOCUMENT_TYPE_NODE`, :const:`NOTATION_NODE`. " -"This is a read-only attribute." +"on the :class:`Node` object. This is a read-only attribute." +msgstr "" + +msgid "" +"Integer constants for the possible values of the :attr:`~Node.nodeType` " +"attribute." msgstr "" msgid "" @@ -367,13 +403,14 @@ msgid "" msgstr "" msgid "" -"The node that immediately follows this one with the same parent. See also :" -"attr:`previousSibling`. If this is the last child of the parent, this " +"The node that immediately follows this one with the same parent. See " +"also :attr:`previousSibling`. If this is the last child of the parent, this " "attribute will be ``None``. This is a read-only attribute." msgstr "" msgid "" -"A list of nodes contained within this node. This is a read-only attribute." +"A :class:`NodeList` of the children of this node. If the node has no " +"children, the list is empty. This is a read-only attribute." msgstr "" msgid "" @@ -387,13 +424,13 @@ msgid "" msgstr "" msgid "" -"The part of the :attr:`tagName` following the colon if there is one, else " -"the entire :attr:`tagName`. The value is a string." +"The part of the :attr:`~Element.tagName` following the colon if there is " +"one, else the entire :attr:`~Element.tagName`. The value is a string." msgstr "" msgid "" -"The part of the :attr:`tagName` preceding the colon if there is one, else " -"the empty string. The value is a string, or ``None``." +"The part of the :attr:`~Element.tagName` preceding the colon if there is " +"one, else the empty string. The value is a string, or ``None``." msgstr "" msgid "" @@ -402,20 +439,110 @@ msgid "" msgstr "" msgid "" -"This has a different meaning for each node type; see the DOM specification " -"for details. You can always get the information you would get here from " -"another property such as the :attr:`tagName` property for elements or the :" -"attr:`name` property for attributes. For all node types, the value of this " -"attribute will be either a string or ``None``. This is a read-only " -"attribute." +"The :class:`Document` object to which this node belongs, or ``None`` for a " +"document itself. This is a read-only attribute." +msgstr "" + +msgid "" +"Return whether the DOM implementation supports a particular *feature*, " +"as :meth:`DOMImplementation.hasFeature` does." +msgstr "" + +msgid "" +"Associate *data* with *key* on this node and return the data previously " +"associated with *key*, or ``None``. If *data* is ``None``, the association " +"is removed. *handler* is called when the node is cloned, imported, renamed " +"or deleted; pass ``None`` if no notification is needed." +msgstr "" + +msgid "" +"Return the data associated with *key* on this node " +"by :meth:`~Node.setUserData`, or ``None``." msgstr "" msgid "" -"This has a different meaning for each node type; see the DOM specification " -"for details. The situation is similar to that with :attr:`nodeName`. The " +"The name of this node, depending on its type; see the table below. You can " +"always get the information you would get here from another property such as " +"the :attr:`~Element.tagName` property for elements or the :attr:`~Attr.name` " +"property for attributes. This is a read-only attribute." +msgstr "" + +msgid "" +"The value of this node, depending on its type; see the table below. The " "value is a string or ``None``." msgstr "" +msgid "" +"The values of :attr:`~Node.nodeName` and :attr:`~Node.nodeValue` for each " +"node type are:" +msgstr "" + +msgid "Node type" +msgstr "" + +msgid "nodeName" +msgstr "" + +msgid "nodeValue" +msgstr "" + +msgid ":attr:`~Attr.name`" +msgstr "" + +msgid ":attr:`~Attr.value`" +msgstr "" + +msgid ":class:`CDATASection`" +msgstr "" + +msgid "``'#cdata-section'``" +msgstr "" + +msgid "the content" +msgstr "" + +msgid "``'#comment'``" +msgstr "" + +msgid "``'#document'``" +msgstr "" + +msgid "``None``" +msgstr "" + +msgid ":class:`DocumentFragment`" +msgstr "" + +msgid "``'#document-fragment'``" +msgstr "" + +msgid ":attr:`~DocumentType.name`" +msgstr "" + +msgid ":attr:`~Element.tagName`" +msgstr "" + +msgid ":class:`Entity`" +msgstr "" + +msgid "the name of the entity" +msgstr "" + +msgid ":class:`Notation`" +msgstr "" + +msgid "the name of the notation" +msgstr "" + +msgid ":attr:`~ProcessingInstruction.target`" +msgstr "" + +msgid ":attr:`~ProcessingInstruction.data`" +msgstr "" + +msgid "``'#text'``" +msgstr "" + msgid "Return ``True`` if the node has any attributes." msgstr "" @@ -443,26 +570,27 @@ msgstr "" msgid "" "Insert a new child node before an existing child. It must be the case that " -"*refChild* is a child of this node; if not, :exc:`ValueError` is raised. " +"*refChild* is a child of this node; if not, :exc:`NotFoundErr` is raised. " "*newChild* is returned. If *refChild* is ``None``, it inserts *newChild* at " "the end of the children's list." msgstr "" msgid "" -"Remove a child node. *oldChild* must be a child of this node; if not, :exc:" -"`ValueError` is raised. *oldChild* is returned on success. If *oldChild* " -"will not be used further, its :meth:`unlink` method should be called." +"Remove a child node. *oldChild* must be a child of this node; if " +"not, :exc:`NotFoundErr` is raised. *oldChild* is returned on success. If " +"*oldChild* will not be used further, " +"its :meth:`~xml.dom.minidom.Node.unlink` method should be called." msgstr "" msgid "" "Replace an existing node with a new node. It must be the case that " -"*oldChild* is a child of this node; if not, :exc:`ValueError` is raised." +"*oldChild* is a child of this node; if not, :exc:`NotFoundErr` is raised." msgstr "" msgid "" -"Join adjacent text nodes so that all stretches of text are stored as single :" -"class:`Text` instances. This simplifies processing text from a DOM tree for " -"many applications." +"Join adjacent text nodes so that all stretches of text are stored as " +"single :class:`Text` instances. This simplifies processing text from a DOM " +"tree for many applications." msgstr "" msgid "" @@ -476,9 +604,13 @@ msgstr "" msgid "" "A :class:`NodeList` represents a sequence of nodes. These objects are used " "in two ways in the DOM Core recommendation: an :class:`Element` object " -"provides one as its list of child nodes, and the :meth:" -"`getElementsByTagName` and :meth:`getElementsByTagNameNS` methods of :class:" -"`Node` return objects with this interface to represent query results." +"provides one as its list of child nodes, and " +"the :meth:`~Element.getElementsByTagName` " +"and :meth:`~Element.getElementsByTagNameNS` methods of :class:`Node` return " +"objects with this interface to represent query results." +msgstr "" + +msgid ":class:`NodeList` does *not* inherit from :class:`Node`." msgstr "" msgid "" @@ -487,9 +619,8 @@ msgid "" msgstr "" msgid "" -"Return the *i*'th item from the sequence, if there is one, or ``None``. The " -"index *i* is not allowed to be less than zero or greater than or equal to " -"the length of the sequence." +"Return the *i*'th item from the sequence, or ``None`` if *i* is out of " +"range. Negative indices are not supported." msgstr "" msgid "The number of nodes in the sequence." @@ -498,16 +629,16 @@ msgstr "" msgid "" "In addition, the Python DOM interface requires that some additional support " "is provided to allow :class:`NodeList` objects to be used as Python " -"sequences. All :class:`NodeList` implementations must include support for :" -"meth:`~object.__len__` and :meth:`~object.__getitem__`; this allows " +"sequences. All :class:`NodeList` implementations must include support " +"for :meth:`~object.__len__` and :meth:`~object.__getitem__`; this allows " "iteration over the :class:`NodeList` in :keyword:`for` statements and proper " "support for the :func:`len` built-in function." msgstr "" msgid "" -"If a DOM implementation supports modification of the document, the :class:" -"`NodeList` implementation must also support the :meth:`~object.__setitem__` " -"and :meth:`~object.__delitem__` methods." +"If a DOM implementation supports modification of the document, " +"the :class:`NodeList` implementation must also support " +"the :meth:`~object.__setitem__` and :meth:`~object.__delitem__` methods." msgstr "" msgid "DocumentType Objects" @@ -516,11 +647,12 @@ msgstr "" msgid "" "Information about the notations and entities declared by a document " "(including the external subset if the parser uses it and can provide the " -"information) is available from a :class:`DocumentType` object. The :class:" -"`DocumentType` for a document is available from the :class:`Document` " -"object's :attr:`doctype` attribute; if there is no ``DOCTYPE`` declaration " -"for the document, the document's :attr:`doctype` attribute will be set to " -"``None`` instead of an instance of this interface." +"information) is available from a :class:`DocumentType` object. " +"The :class:`DocumentType` for a document is available from " +"the :class:`Document` object's :attr:`~Document.doctype` attribute; if there " +"is no ``DOCTYPE`` declaration for the document, the " +"document's :attr:`~Document.doctype` attribute will be set to ``None`` " +"instead of an instance of this interface." msgstr "" msgid "" @@ -530,12 +662,12 @@ msgstr "" msgid "" "The public identifier for the external subset of the document type " -"definition. This will be a string or ``None``." +"definition, or ``None`` if the ``DOCTYPE`` declaration does not specify it." msgstr "" msgid "" -"The system identifier for the external subset of the document type " -"definition. This will be a URI as a string, or ``None``." +"The system identifier, a URI, for the external subset of the document type " +"definition, or ``None`` if the ``DOCTYPE`` declaration does not specify it." msgstr "" msgid "" @@ -550,19 +682,19 @@ msgid "" msgstr "" msgid "" -"This is a :class:`NamedNodeMap` giving the definitions of external entities. " -"For entity names defined more than once, only the first definition is " -"provided (others are ignored as required by the XML recommendation). This " -"may be ``None`` if the information is not provided by the parser, or if no " -"entities are defined." +"This is a :class:`NamedNodeMap` of :class:`Entity` nodes giving the " +"definitions of external entities. For entity names defined more than once, " +"only the first definition is provided (others are ignored as required by the " +"XML recommendation). This may be ``None`` if the information is not " +"provided by the parser, or if no entities are defined." msgstr "" msgid "" -"This is a :class:`NamedNodeMap` giving the definitions of notations. For " -"notation names defined more than once, only the first definition is provided " -"(others are ignored as required by the XML recommendation). This may be " -"``None`` if the information is not provided by the parser, or if no " -"notations are defined." +"This is a :class:`NamedNodeMap` of :class:`Notation` nodes giving the " +"definitions of notations. For notation names defined more than once, only " +"the first definition is provided (others are ignored as required by the XML " +"recommendation). This may be ``None`` if the information is not provided by " +"the parser, or if no notations are defined." msgstr "" msgid "Document Objects" @@ -577,17 +709,46 @@ msgstr "" msgid "The one and only root element of the document." msgstr "" +msgid "" +"The :class:`DocumentType` node of the document, or ``None``. This is a read-" +"only attribute." +msgstr "" + +msgid "" +"The :class:`DOMImplementation` object which created this document. This is a " +"read-only attribute." +msgstr "" + +msgid "Whether error checking is enforced." +msgstr "" + +msgid "The location of the document, or ``None`` if it is unknown." +msgstr "" + +msgid "Create and return an empty :class:`DocumentFragment` node." +msgstr "" + +msgid "Create and return a :class:`CDATASection` node containing *data*." +msgstr "" + +msgid "" +"Return a copy of *importedNode* which belongs to this document. The original " +"node is not removed from its document. If *deep* is true, the descendants of " +"the node are copied too." +msgstr "" + msgid "" "Create and return a new element node. The element is not inserted into the " "document when it is created. You need to explicitly insert it with one of " -"the other methods such as :meth:`insertBefore` or :meth:`appendChild`." +"the other methods such as :meth:`~Node.insertBefore` " +"or :meth:`~Node.appendChild`." msgstr "" msgid "" "Create and return a new element with a namespace. The *tagName* may have a " "prefix. The element is not inserted into the document when it is created. " -"You need to explicitly insert it with one of the other methods such as :meth:" -"`insertBefore` or :meth:`appendChild`." +"You need to explicitly insert it with one of the other methods such " +"as :meth:`~Node.insertBefore` or :meth:`~Node.appendChild`." msgstr "" msgid "" @@ -610,19 +771,25 @@ msgstr "" msgid "" "Create and return an attribute node. This method does not associate the " -"attribute node with any particular element. You must use :meth:" -"`setAttributeNode` on the appropriate :class:`Element` object to use the " -"newly created attribute instance." +"attribute node with any particular element. You must " +"use :meth:`~Element.setAttributeNode` on the appropriate :class:`Element` " +"object to use the newly created attribute instance." msgstr "" msgid "" "Create and return an attribute node with a namespace. The *tagName* may " "have a prefix. This method does not associate the attribute node with any " -"particular element. You must use :meth:`setAttributeNode` on the " +"particular element. You must use :meth:`~Element.setAttributeNode` on the " "appropriate :class:`Element` object to use the newly created attribute " "instance." msgstr "" +msgid "" +"Return the element with the given ID, or ``None``. Only attributes declared " +"as being of type ID in the DTD or by :meth:`Element.setIdAttribute` are " +"searched." +msgstr "" + msgid "" "Search for all descendants (direct children, children's children, etc.) with " "a particular element type name." @@ -634,6 +801,17 @@ msgid "" "namespace after the prefix." msgstr "" +msgid "" +"Rename the element or attribute node *n* and return it. *namespaceURI* is " +"the new namespace URI, or :data:`~xml.dom.EMPTY_NAMESPACE` if the node does " +"not belong to a namespace. *name* is the new qualified name." +msgstr "" + +msgid "" +"Raise :exc:`WrongDocumentErr` if *n* was created by another document, " +"and :exc:`NotSupportedErr` if it is neither an element nor an attribute." +msgstr "" + msgid "Element Objects" msgstr "" @@ -647,6 +825,22 @@ msgid "" "it. The value is a string." msgstr "" +msgid "" +"Declare that the attribute *name* is of type ID, so that the element is " +"found by :meth:`Document.getElementById`. Raise :exc:`NotFoundErr` if the " +"element has no such attribute." +msgstr "" + +msgid "" +"The same as :meth:`~Element.setIdAttribute`, but for an attribute specified " +"by its namespace URI and local name." +msgstr "" + +msgid "" +"The same as :meth:`~Element.setIdAttribute`, but for an already retrieved " +"attribute node." +msgstr "" + msgid "Same as equivalent method in the :class:`Document` class." msgstr "" @@ -677,9 +871,7 @@ msgid "" "Return an attribute value as a node, given a *namespaceURI* and *localName*." msgstr "" -msgid "" -"Remove an attribute by name. If there is no matching attribute, a :exc:" -"`NotFoundErr` is raised." +msgid "Remove an attribute by name." msgstr "" msgid "" @@ -688,8 +880,7 @@ msgid "" msgstr "" msgid "" -"Remove an attribute by name. Note that it uses a localName, not a qname. " -"No exception is raised if there is no matching attribute." +"Remove an attribute by name. Note that it uses a localName, not a qname." msgstr "" msgid "Set an attribute value from a string." @@ -697,16 +888,17 @@ msgstr "" msgid "" "Add a new attribute node to the element, replacing an existing attribute if " -"necessary if the :attr:`name` attribute matches. If a replacement occurs, " -"the old attribute node will be returned. If *newAttr* is already in use, :" -"exc:`InuseAttributeErr` will be raised." +"necessary if the :attr:`~Attr.name` attribute matches. If a replacement " +"occurs, the old attribute node will be returned. If *newAttr* is already in " +"use, :exc:`InuseAttributeErr` will be raised." msgstr "" msgid "" "Add a new attribute node to the element, replacing an existing attribute if " -"necessary if the :attr:`namespaceURI` and :attr:`localName` attributes " -"match. If a replacement occurs, the old attribute node will be returned. If " -"*newAttr* is already in use, :exc:`InuseAttributeErr` will be raised." +"necessary if the :attr:`~Node.namespaceURI` and :attr:`~Attr.localName` " +"attributes match. If a replacement occurs, the old attribute node will be " +"returned. If *newAttr* is already in use, :exc:`InuseAttributeErr` will be " +"raised." msgstr "" msgid "" @@ -721,6 +913,13 @@ msgid "" ":class:`Attr` inherits from :class:`Node`, so inherits all its attributes." msgstr "" +msgid "" +"Attribute nodes are not part of the document tree. They are contained in " +"the :attr:`~Node.attributes` map of an element, not in its children, and " +"their :attr:`~Node.parentNode`, :attr:`~Node.previousSibling` " +"and :attr:`~Node.nextSibling` are always ``None``." +msgstr "" + msgid "" "The attribute name. In a namespace-using document it may include a colon." msgstr "" @@ -736,8 +935,24 @@ msgid "" msgstr "" msgid "" -"The text value of the attribute. This is a synonym for the :attr:" -"`nodeValue` attribute." +"Whether this attribute is of type ID, either because it is declared as such " +"in the DTD or because :meth:`Element.setIdAttribute` was used. This is a " +"read-only attribute." +msgstr "" + +msgid "" +"The :class:`Element` node to which this attribute belongs, or ``None`` if it " +"is not used. This is a read-only attribute." +msgstr "" + +msgid "" +"Whether the value of the attribute was explicitly set in the document, as " +"opposed to being defaulted from the DTD. This is a read-only attribute." +msgstr "" + +msgid "" +"The text value of the attribute. This is a synonym for " +"the :attr:`~Node.nodeValue` attribute." msgstr "" msgid "NamedNodeMap Objects" @@ -752,22 +967,99 @@ msgstr "" msgid "" "Return an attribute with a particular index. The order you get the " "attributes in is arbitrary but will be consistent for the life of a DOM. " -"Each item is an attribute node. Get its value with the :attr:`value` " +"Each item is an attribute node. Get its value with the :attr:`~Attr.value` " "attribute." msgstr "" msgid "" -"There are also experimental methods that give this class more mapping " -"behavior. You can use them or you can use the standardized :meth:`!" -"getAttribute\\*` family of methods on the :class:`Element` objects." +"Return the node with the given :attr:`~Attr.name`, or ``None`` if there is " +"no such node." +msgstr "" + +msgid "" +"Return the node with the given namespace URI and local name, or ``None`` if " +"there is no such node." +msgstr "" + +msgid "" +"Add *node* to the map, using its :attr:`~Attr.name` as the key. Return the " +"node which it replaces, or ``None`` if it replaces no node." +msgstr "" + +msgid "" +"Add *node* to the map, using its namespace URI and local name as the key. " +"Return the node which it replaces, or ``None`` if it replaces no node." +msgstr "" + +msgid "" +"Remove and return the node with the given :attr:`~Attr.name`. " +"Raise :exc:`NotFoundErr` if there is no such node." +msgstr "" + +msgid "" +"Remove and return the node with the given namespace URI and local name. " +"Raise :exc:`NotFoundErr` if there is no such node." +msgstr "" + +msgid "" +"You can also use the standardized :meth:`!getAttribute\\*` family of methods " +"on the :class:`Element` objects." +msgstr "" + +msgid "DocumentFragment Objects" +msgstr "" + +msgid "" +":class:`DocumentFragment` is a lightweight container of nodes. It is a " +"subclass of :class:`Node`. When it is inserted into the document tree, its " +"children are inserted instead of it, and it becomes empty." +msgstr "" + +msgid "CharacterData Objects" +msgstr "" + +msgid "" +":class:`CharacterData` represents text-like data in the XML document. It is " +"a subclass of :class:`Node`, and the base class " +"of :class:`Text`, :class:`CDATASection` and :class:`Comment`. Such nodes " +"cannot have child nodes." +msgstr "" + +msgid "The content of the node as a string." +msgstr "" + +msgid "" +"The number of characters in :attr:`~CharacterData.data`. This is a read-only " +"attribute." +msgstr "" + +msgid "" +"Return the substring of :attr:`~CharacterData.data` of *count* characters " +"starting at *offset*." +msgstr "" + +msgid "Append the string *arg* to :attr:`~CharacterData.data`." +msgstr "" + +msgid "Insert the string *arg* into :attr:`~CharacterData.data` at *offset*." +msgstr "" + +msgid "" +"Remove *count* characters from :attr:`~CharacterData.data` starting at " +"*offset*." +msgstr "" + +msgid "" +"Replace *count* characters of :attr:`~CharacterData.data` starting at " +"*offset* with the string *arg*." msgstr "" msgid "Comment Objects" msgstr "" msgid "" -":class:`Comment` represents a comment in the XML document. It is a subclass " -"of :class:`Node`, but cannot have child nodes." +":class:`Comment` represents a comment in the XML document. It is a subclass " +"of :class:`CharacterData`." msgstr "" msgid "" @@ -782,19 +1074,35 @@ msgstr "" msgid "" "The :class:`Text` interface represents text in the XML document. If the " "parser and DOM implementation support the DOM's XML extension, portions of " -"the text enclosed in CDATA marked sections are stored in :class:" -"`CDATASection` objects. These two interfaces are identical, but provide " -"different values for the :attr:`nodeType` attribute." +"the text enclosed in CDATA marked sections are stored " +"in :class:`CDATASection` objects. These two interfaces are identical, but " +"provide different values for the :attr:`~Node.nodeType` attribute." msgstr "" msgid "" -"These interfaces extend the :class:`Node` interface. They cannot have child " -"nodes." +":class:`Text` extends the :class:`CharacterData` interface, " +"and :class:`CDATASection` extends :class:`Text`." msgstr "" msgid "The content of the text node as a string." msgstr "" +msgid "" +"The text of all :class:`Text` nodes logically adjacent to this node, " +"concatenated in document order. This is a read-only attribute." +msgstr "" + +msgid "" +"Replace the text of all :class:`Text` nodes logically adjacent to this node " +"with *content*, removing the other nodes. Return this node, or ``None`` if " +"*content* is empty." +msgstr "" + +msgid "" +"Split this node into two nodes at *offset*, keeping the first part in this " +"node and returning a new sibling node with the rest." +msgstr "" + msgid "" "The use of a :class:`CDATASection` node does not indicate that the node " "represents a complete CDATA marked section, only that the content of the " @@ -822,23 +1130,68 @@ msgid "" "character." msgstr "" +msgid "Entity Objects" +msgstr "" + +msgid "" +":class:`Entity` represents a parsed or unparsed entity declared in the DTD. " +"It is a subclass of :class:`Node`. Entity nodes are contained " +"in :attr:`DocumentType.entities` and cannot be inserted into the document " +"tree. The name of the entity is its :attr:`~Node.nodeName`." +msgstr "" + +msgid "" +"The public identifier of the entity, or ``None`` if it is not specified. " +"This is a read-only attribute." +msgstr "" + +msgid "" +"The system identifier of the entity, or ``None`` if it is not specified. " +"This is a read-only attribute." +msgstr "" + +msgid "" +"The name of the notation for an unparsed entity, or ``None`` for a parsed " +"entity. This is a read-only attribute." +msgstr "" + +msgid "Notation Objects" +msgstr "" + +msgid "" +":class:`Notation` represents a notation declared in the DTD. It is a " +"subclass of :class:`Node` and cannot have child nodes. Notation nodes are " +"contained in :attr:`DocumentType.notations` and cannot be inserted into the " +"document tree. The name of the notation is its :attr:`~Node.nodeName`." +msgstr "" + +msgid "" +"The public identifier of the notation, or ``None`` if it is not specified. " +"This is a read-only attribute." +msgstr "" + +msgid "" +"The system identifier of the notation, or ``None`` if it is not specified. " +"This is a read-only attribute." +msgstr "" + msgid "Exceptions" msgstr "" msgid "" -"The DOM Level 2 recommendation defines a single exception, :exc:" -"`DOMException`, and a number of constants that allow applications to " -"determine what sort of error occurred. :exc:`DOMException` instances carry " -"a :attr:`code` attribute that provides the appropriate value for the " -"specific exception." +"The DOM Level 2 recommendation defines a single " +"exception, :exc:`DOMException`, and a number of constants that allow " +"applications to determine what sort of error occurred. :exc:`DOMException` " +"instances carry a :attr:`code` attribute that provides the appropriate value " +"for the specific exception." msgstr "" msgid "" "The Python DOM interface provides the constants, but also expands the set of " "exceptions so that a specific exception exists for each of the exception " "codes defined by the DOM. The implementations must raise the appropriate " -"specific exception, each of which carries the appropriate value for the :" -"attr:`code` attribute." +"specific exception, each of which carries the appropriate value for " +"the :attr:`code` attribute." msgstr "" msgid "" @@ -916,6 +1269,13 @@ msgstr "" msgid "Raised when an invalid or illegal string is specified." msgstr "" +msgid "" +"Raised when an operation would make the document invalid with respect to " +"partial validity. This is not known to be used in the Python DOM " +"implementations, but may be received from DOM implementations not written in " +"Python." +msgstr "" + msgid "" "Raised when a node is inserted in a different document than it currently " "belongs to, and the implementation does not support migrating the node from " @@ -933,91 +1293,49 @@ msgstr "" msgid "Exception" msgstr "" -msgid ":const:`DOMSTRING_SIZE_ERR`" -msgstr "" - msgid ":exc:`DomstringSizeErr`" msgstr "" -msgid ":const:`HIERARCHY_REQUEST_ERR`" -msgstr "" - msgid ":exc:`HierarchyRequestErr`" msgstr "" -msgid ":const:`INDEX_SIZE_ERR`" -msgstr "" - msgid ":exc:`IndexSizeErr`" msgstr "" -msgid ":const:`INUSE_ATTRIBUTE_ERR`" -msgstr "" - msgid ":exc:`InuseAttributeErr`" msgstr "" -msgid ":const:`INVALID_ACCESS_ERR`" -msgstr "" - msgid ":exc:`InvalidAccessErr`" msgstr "" -msgid ":const:`INVALID_CHARACTER_ERR`" -msgstr "" - msgid ":exc:`InvalidCharacterErr`" msgstr "" -msgid ":const:`INVALID_MODIFICATION_ERR`" -msgstr "" - msgid ":exc:`InvalidModificationErr`" msgstr "" -msgid ":const:`INVALID_STATE_ERR`" -msgstr "" - msgid ":exc:`InvalidStateErr`" msgstr "" -msgid ":const:`NAMESPACE_ERR`" -msgstr "" - msgid ":exc:`NamespaceErr`" msgstr "" -msgid ":const:`NOT_FOUND_ERR`" -msgstr "" - msgid ":exc:`NotFoundErr`" msgstr "" -msgid ":const:`NOT_SUPPORTED_ERR`" -msgstr "" - msgid ":exc:`NotSupportedErr`" msgstr "" -msgid ":const:`NO_DATA_ALLOWED_ERR`" -msgstr "" - msgid ":exc:`NoDataAllowedErr`" msgstr "" -msgid ":const:`NO_MODIFICATION_ALLOWED_ERR`" -msgstr "" - msgid ":exc:`NoModificationAllowedErr`" msgstr "" -msgid ":const:`SYNTAX_ERR`" -msgstr "" - msgid ":exc:`SyntaxErr`" msgstr "" -msgid ":const:`WRONG_DOCUMENT_ERR`" +msgid ":exc:`ValidationErr`" msgstr "" msgid ":exc:`WrongDocumentErr`" @@ -1070,9 +1388,6 @@ msgstr "" msgid "``null``" msgstr "" -msgid "``None``" -msgstr "" - msgid "Accessor Methods" msgstr "" @@ -1088,9 +1403,9 @@ msgid "" msgstr "" msgid "" -"yields three accessor functions: a \"get\" method for :attr:`someValue` (:" -"meth:`_get_someValue`), and \"get\" and \"set\" methods for :attr:" -"`anotherValue` (:meth:`_get_anotherValue` and :meth:`_set_anotherValue`). " +"yields three accessor functions: a \"get\" method for :attr:`!someValue` " +"(:meth:`!_get_someValue`), and \"get\" and \"set\" methods for :attr:`!" +"anotherValue` (:meth:`!_get_anotherValue` and :meth:`!_set_anotherValue`). " "The mapping, in particular, does not require that the IDL attributes are " "accessible as normal Python attributes: ``object.someValue`` is *not* " "required to work, and may raise an :exc:`AttributeError`." @@ -1117,7 +1432,7 @@ msgstr "" msgid "" "The IDL definitions do not fully embody the requirements of the W3C DOM API, " -"such as the notion of certain objects, such as the return value of :meth:" -"`getElementsByTagName`, being \"live\". The Python DOM API does not require " -"implementations to enforce such requirements." +"such as the notion of certain objects, such as the return value " +"of :meth:`~Element.getElementsByTagName`, being \"live\". The Python DOM " +"API does not require implementations to enforce such requirements." msgstr "" diff --git a/library/xml.dom.pulldom.po b/library/xml.dom.pulldom.po index cd08d4d..daa29c6 100644 --- a/library/xml.dom.pulldom.po +++ b/library/xml.dom.pulldom.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-13 19:59+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -74,36 +74,37 @@ msgid "" " print(node.toxml())" msgstr "" -msgid "``event`` is a constant and can be one of:" -msgstr "" - -msgid ":data:`START_ELEMENT`" -msgstr "" - -msgid ":data:`END_ELEMENT`" -msgstr "" - -msgid ":data:`COMMENT`" +msgid "" +"``event`` is one of the following constants, and ``node`` is the node which " +"the event is about. The nodes implement the :mod:`xml.dom` interfaces; they " +"are created by the DOM implementation given to :class:`PullDOM`, which " +"is :mod:`xml.dom.minidom` by default." msgstr "" -msgid ":data:`START_DOCUMENT`" +msgid "" +"The start and the end of the document. *node* is " +"the :class:`~xml.dom.Document`." msgstr "" -msgid ":data:`END_DOCUMENT`" +msgid "" +"The start tag and the end tag of an element. *node* is " +"the :class:`~xml.dom.Element`." msgstr "" -msgid ":data:`CHARACTERS`" +msgid "Character data. *node* is the :class:`~xml.dom.Text` node." msgstr "" -msgid ":data:`PROCESSING_INSTRUCTION`" +msgid "" +"White space in element content, as declared in the DTD. *node* is " +"the :class:`~xml.dom.Text` node." msgstr "" -msgid ":data:`IGNORABLE_WHITESPACE`" +msgid "A comment. *node* is the :class:`~xml.dom.Comment` node." msgstr "" msgid "" -"``node`` is an object of type :class:`xml.dom.minidom.Document`, :class:`xml." -"dom.minidom.Element` or :class:`xml.dom.minidom.Text`." +"A processing instruction. *node* is " +"the :class:`~xml.dom.ProcessingInstruction` node." msgstr "" msgid "" @@ -113,11 +114,22 @@ msgid "" "consider hierarchical issues such as recursive searching of the document " "nodes, although if the context of elements were important, one would either " "need to maintain some context-related state (i.e. remembering where one is " -"in the document at any given point) or to make use of the :func:" -"`DOMEventStream.expandNode` method and switch to DOM-related processing." +"in the document at any given point) or to make use of " +"the :func:`DOMEventStream.expandNode` method and switch to DOM-related " +"processing." msgstr "" -msgid "Subclass of :class:`xml.sax.handler.ContentHandler`." +msgid "" +"Subclass of :class:`xml.sax.handler.ContentHandler` which turns SAX events " +"into the events of the pull parser. The nodes are created, but they are not " +"added to the tree, unless :meth:`~DOMEventStream.expandNode` is called. " +"*documentFactory*, if given, is a DOM implementation used to create the " +"document; by default the implementation of :mod:`xml.dom.minidom` is used." +msgstr "" + +msgid "" +"Subclass of :class:`PullDOM` which also adds every created node to the tree, " +"so that the complete document is built." msgstr "" msgid "" @@ -135,7 +147,9 @@ msgid "" msgstr "" msgid "" -"Return a :class:`DOMEventStream` that represents the (Unicode) *string*." +"Return a :class:`DOMEventStream` that represents the *string*. *string* must " +"be a :class:`str` instance; to parse bytes, pass a binary file object " +"to :func:`parse`." msgstr "" msgid "Default value for the *bufsize* parameter to :func:`parse`." @@ -149,16 +163,20 @@ msgstr "" msgid "DOMEventStream Objects" msgstr "" +msgid "" +"Produce the events for the data read from the file object *stream* by " +"the :class:`~xml.sax.xmlreader.XMLReader` *parser*. The data is read by " +"*bufsize* bytes, or characters for a text stream, at a time." +msgstr "" + msgid "Support for :meth:`~object.__getitem__` method has been removed." msgstr "" msgid "" -"Return a tuple containing *event* and the current *node* as :class:`xml.dom." -"minidom.Document` if event equals :data:`START_DOCUMENT`, :class:`xml.dom." -"minidom.Element` if event equals :data:`START_ELEMENT` or :data:" -"`END_ELEMENT` or :class:`xml.dom.minidom.Text` if event equals :data:" -"`CHARACTERS`. The current node does not contain information about its " -"children, unless :func:`expandNode` is called." +"Return the next ``(event, node)`` tuple, or ``None`` at the end of the " +"document. See above for the events and the corresponding nodes. The current " +"node does not contain information about its children, " +"unless :meth:`expandNode` is called." msgstr "" msgid "Expands all children of *node* into *node*. Example::" @@ -179,3 +197,13 @@ msgid "" "text
and more

'\n" " print(node.toxml())" msgstr "" + +msgid "" +"Discard the events which are not read yet and prepare the object for parsing " +"a new document." +msgstr "" + +msgid "" +"Release the parser and the document. The stream is not closed, and the " +"object can no longer be used." +msgstr "" diff --git a/library/xml.etree.elementtree.po b/library/xml.etree.elementtree.po index 0713a4e..5c792ca 100644 --- a/library/xml.etree.elementtree.po +++ b/library/xml.etree.elementtree.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,7 +37,7 @@ msgstr "" msgid "This module will use a fast implementation whenever available." msgstr "" -msgid "The :mod:`!xml.etree.cElementTree` module is deprecated." +msgid "The :mod:`!xml.etree.cElementTree` alias of this module is deprecated." msgstr "" msgid "" @@ -58,12 +59,12 @@ msgstr "" msgid "" "XML is an inherently hierarchical data format, and the most natural way to " -"represent it is with a tree. ``ET`` has two classes for this purpose - :" -"class:`ElementTree` represents the whole XML document as a tree, and :class:" -"`Element` represents a single node in this tree. Interactions with the " -"whole document (reading and writing to/from files) are usually done on the :" -"class:`ElementTree` level. Interactions with a single XML element and its " -"sub-elements are done on the :class:`Element` level." +"represent it is with a tree. ``ET`` has two classes for this purpose " +"- :class:`ElementTree` represents the whole XML document as a tree, " +"and :class:`Element` represents a single node in this tree. Interactions " +"with the whole document (reading and writing to/from files) are usually done " +"on the :class:`ElementTree` level. Interactions with a single XML element " +"and its sub-elements are done on the :class:`Element` level." msgstr "" msgid "Parsing XML" @@ -116,10 +117,10 @@ msgid "root = ET.fromstring(country_data_as_string)" msgstr "" msgid "" -":func:`fromstring` parses XML from a string directly into an :class:" -"`Element`, which is the root element of the parsed tree. Other parsing " -"functions may create an :class:`ElementTree`. Check the documentation to be " -"sure." +":func:`fromstring` parses XML from a string directly into " +"an :class:`Element`, which is the root element of the parsed tree. Other " +"parsing functions may create an :class:`ElementTree`. Check the " +"documentation to be sure." msgstr "" msgid "" @@ -169,9 +170,9 @@ msgstr "" msgid "" "Most parsing functions provided by this module require the whole document to " -"be read at once before returning any result. It is possible to use an :" -"class:`XMLParser` and feed data into it incrementally, but it is a push API " -"that calls methods on a callback target, which is too low-level and " +"be read at once before returning any result. It is possible to use " +"an :class:`XMLParser` and feed data into it incrementally, but it is a push " +"API that calls methods on a callback target, which is too low-level and " "inconvenient for most needs. Sometimes what the user really wants is to be " "able to parse XML incrementally, without blocking operations, while enjoying " "the convenience of fully constructed :class:`Element` objects." @@ -208,15 +209,52 @@ msgid "" "Because it's so flexible, :class:`XMLPullParser` can be inconvenient to use " "for simpler use-cases. If you don't mind your application blocking on " "reading XML data but would still like to have incremental parsing " -"capabilities, take a look at :func:`iterparse`. It can be useful when " -"you're reading a large XML document and don't want to hold it wholly in " -"memory." +"capabilities, take a look at :func:`iterparse`." msgstr "" msgid "" -"Where *immediate* feedback through events is wanted, calling method :meth:" -"`XMLPullParser.flush` can help reduce delay; please make sure to study the " -"related security notes." +"Note that both parsers build the tree incrementally: it is not freed " +"incrementally, so every parsed element is kept until the whole document is " +"read. To keep the memory usage low, get rid of the data which is not needed " +"any more." +msgstr "" + +msgid "" +"If the processed elements are large, it is enough to clear them. This works " +"wherever they are in the tree, but the emptied elements are left in it::" +msgstr "" + +msgid "" +"for event, elem in ET.iterparse(source):\n" +" if elem.tag == 'record':\n" +" process(elem)\n" +" elem.clear()" +msgstr "" + +msgid "" +"If an element has a large number of children, remove the processed children " +"from it::" +msgstr "" + +msgid "" +"for event, elem in ET.iterparse(source, events=('start', 'end')):\n" +" if event == 'start' and elem.tag == 'parent':\n" +" parent = elem\n" +" elif event == 'end' and elem.tag == 'child':\n" +" process(elem)\n" +" parent.remove(elem)" +msgstr "" + +msgid "" +"These examples are not universal, they only give an idea for two common " +"cases. If you do not need a tree at all, parse with :class:`XMLParser` and a " +"custom target instead; it is not built then, and nothing has to be removed." +msgstr "" + +msgid "" +"Where *immediate* feedback through events is wanted, calling " +"method :meth:`XMLPullParser.flush` can help reduce delay; please make sure " +"to study the related security notes." msgstr "" msgid "Finding interesting elements" @@ -383,11 +421,11 @@ msgstr "" msgid "" "If the XML input has `namespaces `__, tags and attributes with prefixes in the form ``prefix:" -"sometag`` get expanded to ``{uri}sometag`` where the *prefix* is replaced by " -"the full *URI*. Also, if there is a `default namespace `__, that full URI gets prepended to all of the non-" -"prefixed tags." +"XML_namespace>`__, tags and attributes with prefixes in the form " +"``prefix:sometag`` get expanded to ``{uri}sometag`` where the *prefix* is " +"replaced by the full *URI*. Also, if there is a `default namespace `__, that full URI gets prepended to all " +"of the non-prefixed tags." msgstr "" msgid "" @@ -415,8 +453,8 @@ msgstr "" msgid "" "One way to search and explore this XML example is to manually add the URI to " -"every tag or attribute in the xpath of a :meth:`~Element.find` or :meth:" -"`~Element.findall`::" +"every tag or attribute in the xpath of a :meth:`~Element.find` " +"or :meth:`~Element.findall`::" msgstr "" msgid "" @@ -461,10 +499,10 @@ msgid "XPath support" msgstr "" msgid "" -"This module provides limited support for `XPath expressions `_ for locating elements in a tree. The goal is to support a " -"small subset of the abbreviated syntax; a full XPath engine is outside the " -"scope of the module." +"This module provides limited support for `XPath expressions `_ for locating elements in a tree. The goal is to " +"support a small subset of the abbreviated syntax; a full XPath engine is " +"outside the scope of the module." msgstr "" msgid "Example" @@ -472,8 +510,8 @@ msgstr "" msgid "" "Here's an example that demonstrates some of the XPath capabilities of the " -"module. We'll be using the ``countrydata`` XML document from the :ref:" -"`Parsing XML ` section::" +"module. We'll be using the ``countrydata`` XML document from " +"the :ref:`Parsing XML ` section::" msgstr "" msgid "" @@ -688,25 +726,23 @@ msgid "*with_comments*: set to true to include comments (default: false)" msgstr "" msgid "" -"*strip_text*: set to true to strip whitespace before and after text content" -msgstr "" - -msgid "(default: false)" +"*strip_text*: set to true to strip whitespace before and after text content " +"(default: false)" msgstr "" msgid "" -"*rewrite_prefixes*: set to true to replace namespace prefixes by " -"\"n{number}\"" -msgstr "" - -msgid "*qname_aware_tags*: a set of qname aware tag names in which prefixes" +"*rewrite_prefixes*: set to true to replace namespace prefixes by \"n{number}" +"\" (default: false)" msgstr "" -msgid "should be replaced in text content (default: empty)" +msgid "" +"*qname_aware_tags*: a set of qname aware tag names in which prefixes should " +"be replaced in text content (default: empty)" msgstr "" msgid "" -"*qname_aware_attrs*: a set of qname aware attribute names in which prefixes" +"*qname_aware_attrs*: a set of qname aware attribute names in which prefixes " +"should be replaced in text content (default: empty)" msgstr "" msgid "*exclude_attrs*: a set of attribute names that should not be serialised" @@ -722,17 +758,16 @@ msgstr "" msgid "" "Comment element factory. This factory function creates a special element " -"that will be serialized as an XML comment by the standard serializer. The " -"comment string can be either a bytestring or a Unicode string. *text* is a " -"string containing the comment string. Returns an element instance " +"that will be serialized as an XML comment by the standard serializer. *text* " +"is a string containing the comment string. Returns an element instance " "representing a comment." msgstr "" msgid "" "Note that :class:`XMLParser` skips over comments in the input instead of " "creating comment objects for them. An :class:`ElementTree` will only contain " -"comment nodes if they have been inserted into to the tree using one of the :" -"class:`Element` methods." +"comment nodes if they have been inserted into to the tree using one of " +"the :class:`Element` methods." msgstr "" msgid "" @@ -756,8 +791,8 @@ msgstr "" msgid "" "Parses an XML section from a string constant. Same as :func:`XML`. *text* " "is a string containing XML data. *parser* is an optional parser instance. " -"If not given, the standard :class:`XMLParser` parser is used. Returns an :" -"class:`Element` instance." +"If not given, the standard :class:`XMLParser` parser is used. Returns " +"an :class:`Element` instance." msgstr "" msgid "" @@ -789,13 +824,13 @@ msgid "" "``\"comment\"``, ``\"pi\"``, ``\"start-ns\"`` and ``\"end-ns\"`` (the \"ns\" " "events are used to get detailed namespace information). If *events* is " "omitted, only ``\"end\"`` events are reported. *parser* is an optional " -"parser instance. If not given, the standard :class:`XMLParser` parser is " -"used. *parser* must be a subclass of :class:`XMLParser` and can only use " -"the default :class:`TreeBuilder` as a target. Returns an :term:`iterator` " -"providing ``(event, elem)`` pairs; it has a ``root`` attribute that " -"references the root element of the resulting XML tree once *source* is fully " -"read. The iterator has the :meth:`!close` method that closes the internal " -"file object if *source* is a filename." +"parser instance. If not given, the standard :class:`XMLParser` parser is " +"used. *parser* must be an instance of :class:`XMLParser` or its subclass and " +"can only use the default :class:`TreeBuilder` as a target. Returns " +"an :term:`iterator` providing ``(event, elem)`` pairs; it has a ``root`` " +"attribute that references the root element of the resulting XML tree once " +"*source* is fully read. The iterator has the :meth:`!close` method that " +"closes the internal file object if *source* is a filename." msgstr "" msgid "" @@ -805,6 +840,12 @@ msgid "" "parsing, see :class:`XMLPullParser`." msgstr "" +msgid "" +"The tree is only built incrementally, it is not freed incrementally: every " +"parsed element is kept until the whole document is read. " +"See :ref:`elementtree-pull-parsing` for how to keep the memory usage low." +msgstr "" + msgid "" ":func:`iterparse` only guarantees that it has seen the \">\" character of a " "starting tag when it emits a \"start\" event, so the attributes are defined, " @@ -833,8 +874,8 @@ msgstr "" msgid "" "Parses an XML section into an element tree. *source* is a filename or file " "object containing XML data. *parser* is an optional parser instance. If " -"not given, the standard :class:`XMLParser` parser is used. Returns an :" -"class:`ElementTree` instance." +"not given, the standard :class:`XMLParser` parser is used. Returns " +"an :class:`ElementTree` instance." msgstr "" msgid "" @@ -865,11 +906,10 @@ msgid "" msgstr "" msgid "" -"The element name, attribute names, and attribute values can be either " -"bytestrings or Unicode strings. *parent* is the parent element. *tag* is " -"the subelement name. *attrib* is an optional dictionary, containing element " -"attributes. *extra* contains additional attributes, given as keyword " -"arguments. Returns an element instance." +"*parent* is the parent element. *tag* is the subelement name. *attrib* is " +"an optional dictionary, containing element attributes. *extra* contains " +"additional attributes, given as keyword arguments. Returns an element " +"instance." msgstr "" msgid "*attrib* can now be a :class:`frozendict`." @@ -909,8 +949,8 @@ msgid "" "``\"xml\"``). *xml_declaration*, *default_namespace* and " "*short_empty_elements* has the same meaning as in :meth:`ElementTree.write`. " "Returns a list of (optionally) encoded strings containing the XML data. It " -"does not guarantee any specific sequence, except that ``b\"\"." -"join(tostringlist(element)) == tostring(element)``." +"does not guarantee any specific sequence, except that " +"``b\"\".join(tostringlist(element)) == tostring(element)``." msgstr "" msgid "" @@ -921,24 +961,25 @@ msgstr "" msgid "" "Parses an XML section from a string constant. This function can be used to " "embed \"XML literals\" in Python code. *text* is a string containing XML " -"data. *parser* is an optional parser instance. If not given, the standard :" -"class:`XMLParser` parser is used. Returns an :class:`Element` instance." +"data. *parser* is an optional parser instance. If not given, the " +"standard :class:`XMLParser` parser is used. Returns an :class:`Element` " +"instance." msgstr "" msgid "" "Parses an XML section from a string constant, and also returns a dictionary " "which maps from element id:s to elements. *text* is a string containing XML " -"data. *parser* is an optional parser instance. If not given, the standard :" -"class:`XMLParser` parser is used. Returns a tuple containing an :class:" -"`Element` instance and a dictionary." +"data. *parser* is an optional parser instance. If not given, the " +"standard :class:`XMLParser` parser is used. Returns a tuple containing " +"an :class:`Element` instance and a dictionary." msgstr "" msgid "XInclude support" msgstr "" msgid "" -"This module provides limited support for `XInclude directives `_, via the :mod:`xml.etree.ElementInclude` helper " +"This module provides limited support for `XInclude directives `_, via the :mod:`xml.etree.ElementInclude` helper " "module. This module can be used to insert subtrees and text strings into " "element trees, based on information in the tree." msgstr "" @@ -964,8 +1005,8 @@ msgid "" msgstr "" msgid "" -"To process this file, load it as usual, and pass the root element to the :" -"mod:`!xml.etree.ElementTree` module:" +"To process this file, load it as usual, and pass the root element to " +"the :mod:`!xml.etree.ElementTree` module:" msgstr "" msgid "" @@ -1049,10 +1090,22 @@ msgid "" msgstr "" msgid "" -"The element name, attribute names, and attribute values can be either " -"bytestrings or Unicode strings. *tag* is the element name. *attrib* is an " -"optional dictionary, containing element attributes. *extra* contains " -"additional attributes, given as keyword arguments." +"*tag* is the element name. *attrib* is an optional dictionary, containing " +"element attributes. *extra* contains additional attributes, given as " +"keyword arguments." +msgstr "" + +msgid "" +"The element name and the attribute names and values are strings " +"or :class:`QName` instances, and the text and the tail are strings or " +"``None``. The element name can also be :func:`Comment` " +"or :func:`ProcessingInstruction`, which are used for special elements. If it " +"is ``None``, the element itself is not serialized: only its text and its " +"children are written, and its attributes are ignored. This can be used for a " +"fragment which contains several elements. With ``method=\"html\"`` the " +"attribute value can also be ``None``, which produces an empty attribute " +"(such as ``checked``). Other objects can be stored in the tree, but they " +"cannot be serialized." msgstr "" msgid "*tag* is now a positional-only parameter." @@ -1114,14 +1167,10 @@ msgid "" "Returns the attribute value, or *default* if the attribute was not found." msgstr "" -msgid "" -"Returns the element attributes as a sequence of (name, value) pairs. The " -"attributes are returned in an arbitrary order." +msgid "Returns the element attributes as (name, value) pairs." msgstr "" -msgid "" -"Returns the elements attribute names as a list. The names are returned in " -"an arbitrary order." +msgid "Returns the element attribute names." msgstr "" msgid "Set the attribute *key* on the element to *value*." @@ -1132,8 +1181,8 @@ msgstr "" msgid "" "Adds the element *subelement* to the end of this element's internal list of " -"subelements. Raises :exc:`TypeError` if *subelement* is not an :class:" -"`Element`." +"subelements. Raises :exc:`TypeError` if *subelement* is not " +"an :class:`Element`." msgstr "" msgid "" @@ -1168,8 +1217,8 @@ msgid "" msgstr "" msgid "" -"Inserts *subelement* at the given position in this element. Raises :exc:" -"`TypeError` if *subelement* is not an :class:`Element`." +"Inserts *subelement* at the given position in this element. " +"Raises :exc:`TypeError` if *subelement* is not an :class:`Element`." msgstr "" msgid "" @@ -1205,8 +1254,8 @@ msgstr "" msgid "" ":class:`Element` objects also support the following sequence type methods " -"for working with subelements: :meth:`~object.__delitem__`, :meth:`~object." -"__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__len__`." +"for working with " +"subelements: :meth:`~object.__delitem__`, :meth:`~object.__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__len__`." msgstr "" msgid "" @@ -1243,8 +1292,8 @@ msgid "" "infoset/>`_ explicitly excludes the attribute order from conveying " "information. Code should be prepared to deal with any ordering on input. In " "cases where deterministic XML output is required, e.g. for cryptographic " -"signing or test data sets, canonical serialisation is available with the :" -"func:`canonicalize` function." +"signing or test data sets, canonical serialisation is available with " +"the :func:`canonicalize` function." msgstr "" msgid "" @@ -1316,8 +1365,8 @@ msgid "" msgstr "" msgid "" -"Writes the element tree to a file, as XML. *file* is a file name, or a :" -"term:`file object` opened for writing. *encoding* [1]_ is the output " +"Writes the element tree to a file, as XML. *file* is a file name, or " +"a :term:`file object` opened for writing. *encoding* [1]_ is the output " "encoding (default is US-ASCII). *xml_declaration* controls if an XML " "declaration should be added to the file. Use ``False`` for never, ``True`` " "for always, ``None`` for only if not US-ASCII or UTF-8 or Unicode (default " @@ -1388,8 +1437,8 @@ msgid "" "to get proper namespace handling on output. *text_or_uri* is a string " "containing the QName value, in the form {uri}local, or, if the tag argument " "is given, the URI part of a QName. If *tag* is given, the first argument is " -"interpreted as a URI, and this argument is interpreted as a local name. :" -"class:`QName` instances are opaque." +"interpreted as a URI, and this argument is interpreted as a local " +"name. :class:`QName` instances are opaque." msgstr "" msgid "TreeBuilder Objects" @@ -1422,9 +1471,7 @@ msgid "" "Returns an :class:`Element` instance." msgstr "" -msgid "" -"Adds text to the current element. *data* is a string. This should be " -"either a bytestring, or a Unicode string." +msgid "Adds text to the current element. *data* is a string." msgstr "" msgid "" @@ -1482,13 +1529,13 @@ msgid "XMLParser Objects" msgstr "" msgid "" -"This class is the low-level building block of the module. It uses :mod:`xml." -"parsers.expat` for efficient, event-based parsing of XML. It can be fed XML " -"data incrementally with the :meth:`feed` method, and parsing events are " -"translated to a push API - by invoking callbacks on the *target* object. If " -"*target* is omitted, the standard :class:`TreeBuilder` is used. If " -"*encoding* [1]_ is given, the value overrides the encoding specified in the " -"XML file." +"This class is the low-level building block of the module. It " +"uses :mod:`xml.parsers.expat` for efficient, event-based parsing of XML. It " +"can be fed XML data incrementally with the :meth:`feed` method, and parsing " +"events are translated to a push API - by invoking callbacks on the *target* " +"object. If *target* is omitted, the standard :class:`TreeBuilder` is used. " +"If *encoding* [1]_ is given, the value overrides the encoding specified in " +"the XML file." msgstr "" msgid "" @@ -1502,7 +1549,9 @@ msgid "" "this is the toplevel document element." msgstr "" -msgid "Feeds data to the parser. *data* is encoded data." +msgid "" +"Feeds data to the parser. *data* is a string or encoded data " +"(:class:`bytes` or a :term:`bytes-like object`)." msgstr "" msgid "" @@ -1510,8 +1559,9 @@ msgid "" "ensure more immediate feedback, in particular with Expat >=2.6.0. The " "implementation of :meth:`flush` temporarily disables reparse deferral with " "Expat (if currently enabled) and triggers a reparse. Disabling reparse " -"deferral has security consequences; please see :meth:`xml.parsers.expat." -"xmlparser.SetReparseDeferralEnabled` for details." +"deferral has security consequences; please " +"see :meth:`xml.parsers.expat.xmlparser.SetReparseDeferralEnabled` for " +"details." msgstr "" msgid "" @@ -1578,14 +1628,16 @@ msgid "" "If *events* is omitted, only ``\"end\"`` events are reported." msgstr "" -msgid "Feed the given bytes data to the parser." +msgid "" +"Feed the given data to the parser. *data* is a string or encoded data " +"(:class:`bytes` or a :term:`bytes-like object`)." msgstr "" msgid "" -"Signal the parser that the data stream is terminated. Unlike :meth:" -"`XMLParser.close`, this method always returns :const:`None`. Any events not " -"yet retrieved when the parser is closed can still be read with :meth:" -"`read_events`." +"Signal the parser that the data stream is terminated. " +"Unlike :meth:`XMLParser.close`, this method always returns :const:`None`. " +"Any events not yet retrieved when the parser is closed can still be read " +"with :meth:`read_events`." msgstr "" msgid "" @@ -1637,8 +1689,8 @@ msgid "" msgstr "" msgid "" -"A numeric error code from the expat parser. See the documentation of :mod:" -"`xml.parsers.expat` for the list of error codes and their meanings." +"A numeric error code from the expat parser. See the documentation " +"of :mod:`xml.parsers.expat` for the list of error codes and their meanings." msgstr "" msgid "" diff --git a/library/xml.po b/library/xml.po index b0edab4..f887920 100644 --- a/library/xml.po +++ b/library/xml.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -166,6 +166,6 @@ msgstr "" msgid "" "Expat needs to re-parse unfinished tokens; without the protection introduced " "in Expat 2.6.0, this can lead to quadratic runtime that can be used to cause " -"denial of service in the application parsing XML. The issue is known as :cve:" -"`2023-52425`." +"denial of service in the application parsing XML. The issue is known " +"as :cve:`2023-52425`." msgstr "" diff --git a/library/xml.sax.handler.po b/library/xml.sax.handler.po index 8e43f92..f7f5fd5 100644 --- a/library/xml.sax.handler.po +++ b/library/xml.sax.handler.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -97,12 +97,17 @@ msgid "" "optionally do not report original prefixed names (default)." msgstr "" +msgid "" +"The parser based on :mod:`xml.parsers.expat` does not support this feature." +msgstr "" + msgid "value: ``\"http://xml.org/sax/features/string-interning\"``" msgstr "" msgid "" "true: All element names, prefixes, attribute names, Namespace URIs, and " -"local names are interned using the built-in intern function." +"local names are interned in a dictionary " +"(see :data:`property_interning_dict`)." msgstr "" msgid "" @@ -121,10 +126,15 @@ msgid "false: Do not report validation errors." msgstr "" msgid "" -"Enabling opens a vulnerability to `external entity attacks `_ if the parser is used with " -"user-provided XML content. Please reflect on your `threat model `_ before enabling this feature." +"The parser based on :mod:`xml.parsers.expat` does not support this feature, " +"because Expat is a non-validating parser." +msgstr "" + +msgid "" +"Enabling opens a vulnerability to `external entity attacks `_ if the parser is used " +"with user-provided XML content. Please reflect on your `threat model " +"`_ before enabling this feature." msgstr "" msgid "value: ``\"http://xml.org/sax/features/external-general-entities\"``" @@ -155,7 +165,7 @@ msgstr "" msgid "value: ``\"http://xml.org/sax/properties/lexical-handler\"``" msgstr "" -msgid "data type: xml.sax.handler.LexicalHandler (not supported in Python 2)" +msgid "data type: :class:`~xml.sax.handler.LexicalHandler`" msgstr "" msgid "" @@ -168,7 +178,7 @@ msgstr "" msgid "value: ``\"http://xml.org/sax/properties/declaration-handler\"``" msgstr "" -msgid "data type: xml.sax.sax2lib.DeclHandler (not supported in Python 2)" +msgid "data type: an object implementing the SAX2 ``DeclHandler`` interface" msgstr "" msgid "" @@ -176,10 +186,15 @@ msgid "" "notations and unparsed entities." msgstr "" +msgid "" +"No parser in the standard library supports this property, and the standard " +"library provides no such handler." +msgstr "" + msgid "value: ``\"http://xml.org/sax/properties/dom-node\"``" msgstr "" -msgid "data type: org.w3c.dom.Node (not supported in Python 2)" +msgid "data type: :class:`xml.dom.Node`" msgstr "" msgid "" @@ -187,6 +202,9 @@ msgid "" "DOM iterator; when not parsing, the root DOM node for iteration." msgstr "" +msgid "No parser in the standard library supports this property." +msgstr "" + msgid "value: ``\"http://xml.org/sax/properties/xml-string\"``" msgstr "" @@ -198,7 +216,28 @@ msgid "" "current event." msgstr "" -msgid "access: read-only" +msgid "access: read-only, and only during a handler callback" +msgstr "" + +msgid "value: ``\"http://www.python.org/sax/properties/encoding\"``" +msgstr "" + +msgid "data type: String" +msgstr "" + +msgid "description: The name of the encoding to assume for input data." +msgstr "" + +msgid "value: ``\"http://www.python.org/sax/properties/interning-dict\"``" +msgstr "" + +msgid "data type: Dictionary" +msgstr "" + +msgid "" +"description: The dictionary used to intern names, or ``None`` if names are " +"not interned. Setting it enables interning, as does " +"the :data:`feature_string_interning` feature." msgstr "" msgid "List of all known property names." @@ -278,11 +317,11 @@ msgstr "" msgid "" "Note that :meth:`startPrefixMapping` and :meth:`endPrefixMapping` events are " -"not guaranteed to be properly nested relative to each-other: all :meth:" -"`startPrefixMapping` events will occur before the corresponding :meth:" -"`startElement` event, and all :meth:`endPrefixMapping` events will occur " -"after the corresponding :meth:`endElement` event, but their order is not " -"guaranteed." +"not guaranteed to be properly nested relative to each-other: " +"all :meth:`startPrefixMapping` events will occur before the " +"corresponding :meth:`startElement` event, and all :meth:`endPrefixMapping` " +"events will occur after the corresponding :meth:`endElement` event, but " +"their order is not guaranteed." msgstr "" msgid "End the scope of a prefix-URI mapping." @@ -290,8 +329,8 @@ msgstr "" msgid "" "See :meth:`startPrefixMapping` for details. This event will always occur " -"after the corresponding :meth:`endElement` event, but the order of :meth:" -"`endPrefixMapping` events is not otherwise guaranteed." +"after the corresponding :meth:`endElement` event, but the order " +"of :meth:`endPrefixMapping` events is not otherwise guaranteed." msgstr "" msgid "Signals the start of an element in non-namespace mode." @@ -321,8 +360,8 @@ msgstr "" msgid "" "The *name* parameter contains the name of the element type as a ``(uri, " "localname)`` tuple, the *qname* parameter contains the raw XML 1.0 name used " -"in the source document, and the *attrs* parameter holds an instance of the :" -"ref:`AttributesNS ` interface containing the " +"in the source document, and the *attrs* parameter holds an instance of " +"the :ref:`AttributesNS ` interface containing the " "attributes of the element. If no namespace is associated with the element, " "the *uri* component of *name* will be ``None``. The object passed as " "*attrs* may be re-used by the parser; holding on to a reference to it is not " diff --git a/library/xml.sax.po b/library/xml.sax.po index e4dff7f..8e6bc24 100644 --- a/library/xml.sax.po +++ b/library/xml.sax.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,20 +40,20 @@ msgid "" "The SAX parser no longer processes general external entities by default to " "increase security. Before, the parser created network connections to fetch " "remote files or loaded local files from the file system for DTD and " -"entities. The feature can be enabled again with method :meth:`~xml.sax." -"xmlreader.XMLReader.setFeature` on the parser object and argument :data:" -"`~xml.sax.handler.feature_external_ges`." +"entities. The feature can be enabled again with " +"method :meth:`~xml.sax.xmlreader.XMLReader.setFeature` on the parser object " +"and argument :data:`~xml.sax.handler.feature_external_ges`." msgstr "" -msgid "The convenience functions are:" +msgid "The convenience functions and data are:" msgstr "" msgid "" "Create and return a SAX :class:`~xml.sax.xmlreader.XMLReader` object. The " "first parser found will be used. If *parser_list* is provided, it must be " -"an iterable of strings which name modules that have a function named :func:" -"`create_parser`. Modules listed in *parser_list* will be used before " -"modules in the default list of parsers." +"an iterable of strings which name modules that have a function " +"named :func:`create_parser`. Modules listed in *parser_list* will be used " +"before modules in the default list of parsers." msgstr "" msgid "The *parser_list* argument can be any iterable, not just a list." @@ -61,12 +61,15 @@ msgstr "" msgid "" "Create a SAX parser and use it to parse a document. The document, passed in " -"as *filename_or_stream*, can be a filename or a file object. The *handler* " -"parameter needs to be a SAX :class:`~handler.ContentHandler` instance. If " -"*error_handler* is given, it must be a SAX :class:`~handler.ErrorHandler` " -"instance; if omitted, :exc:`SAXParseException` will be raised on all " -"errors. There is no return value; all work must be done by the *handler* " -"passed in." +"as *filename_or_stream*, can be a system identifier (a string identifying " +"the input source -- typically a file name or a URL), a :term:`path-like " +"` object, or a file object. A system identifier which does " +"not refer to an existing file is opened with :func:`urllib.request.urlopen`. " +"The *handler* parameter needs to be a SAX :class:`~handler.ContentHandler` " +"instance. If *errorHandler* is given, it must be a " +"SAX :class:`~handler.ErrorHandler` instance; if " +"omitted, :exc:`SAXParseException` will be raised on all errors. There is " +"no return value; all work must be done by the *handler* passed in." msgstr "" msgid "" @@ -78,6 +81,14 @@ msgstr "" msgid "Added support of :class:`str` instances." msgstr "" +msgid "" +"The list of the names of modules which are tried by :func:`make_parser` " +"after the modules named in its *parser_list* argument. It contains " +"``'xml.sax.expatreader'``, or, if the :envvar:`!PY_SAX_PARSER` environment " +"variable is set and the environment is not ignored, the comma-separated list " +"of module names taken from it." +msgstr "" + msgid "" "A typical SAX application uses three kinds of objects: readers, handlers and " "input sources. \"Reader\" in this context is another term for parser, i.e. " @@ -96,14 +107,14 @@ msgid "" "instantiated by the application itself. Since Python does not have an " "explicit notion of interface, they are formally introduced as classes, but " "applications may use implementations which do not inherit from the provided " -"classes. The :class:`~xml.sax.xmlreader.InputSource`, :class:`~xml.sax." -"xmlreader.Locator`, :class:`~xml.sax.xmlreader.Attributes`, :class:`~xml.sax." -"xmlreader.AttributesNS`, and :class:`~xml.sax.xmlreader.XMLReader` " -"interfaces are defined in the module :mod:`xml.sax.xmlreader`. The handler " -"interfaces are defined in :mod:`xml.sax.handler`. For convenience, :class:" -"`~xml.sax.xmlreader.InputSource` (which is often instantiated directly) and " -"the handler classes are also available from :mod:`!xml.sax`. These " -"interfaces are described below." +"classes. " +"The :class:`~xml.sax.xmlreader.InputSource`, :class:`~xml.sax.xmlreader.Locator`, :class:`~xml.sax.xmlreader.Attributes`, :class:`~xml.sax.xmlreader.AttributesNS`, " +"and :class:`~xml.sax.xmlreader.XMLReader` interfaces are defined in the " +"module :mod:`xml.sax.xmlreader`. The handler interfaces are defined " +"in :mod:`xml.sax.handler`. For " +"convenience, :class:`~xml.sax.xmlreader.InputSource` (which is often " +"instantiated directly) and the handler classes are also available " +"from :mod:`!xml.sax`. These interfaces are described below." msgstr "" msgid "" @@ -115,10 +126,10 @@ msgid "" "Encapsulate an XML error or warning. This class can contain basic error or " "warning information from either the XML parser or the application: it can be " "subclassed to provide additional functionality or to add localization. Note " -"that although the handlers defined in the :class:`~xml.sax.handler." -"ErrorHandler` interface receive instances of this exception, it is not " -"required to actually raise the exception --- it is also useful as a " -"container for information." +"that although the handlers defined in " +"the :class:`~xml.sax.handler.ErrorHandler` interface receive instances of " +"this exception, it is not required to actually raise the exception --- it is " +"also useful as a container for information." msgstr "" msgid "" @@ -133,23 +144,33 @@ msgstr "" msgid "" "Subclass of :exc:`SAXException` raised on parse errors. Instances of this " -"class are passed to the methods of the SAX :class:`~xml.sax.handler." -"ErrorHandler` interface to provide information about the parse error. This " -"class supports the SAX :class:`~xml.sax.xmlreader.Locator` interface as well " -"as the :class:`SAXException` interface." +"class are passed to the methods of the " +"SAX :class:`~xml.sax.handler.ErrorHandler` interface to provide information " +"about the parse error. This class supports the " +"SAX :class:`~xml.sax.xmlreader.Locator` interface as well as " +"the :class:`SAXException` interface." +msgstr "" + +msgid "" +"Subclass of :exc:`SAXException` raised when a " +"SAX :class:`~xml.sax.xmlreader.XMLReader` is confronted with an unrecognized " +"feature or property. SAX applications and extensions may use this class for " +"similar purposes." msgstr "" msgid "" -"Subclass of :exc:`SAXException` raised when a SAX :class:`~xml.sax.xmlreader." -"XMLReader` is confronted with an unrecognized feature or property. SAX " -"applications and extensions may use this class for similar purposes." +"Subclass of :exc:`SAXException` raised when a " +"SAX :class:`~xml.sax.xmlreader.XMLReader` is asked to enable a feature that " +"is not supported, or to set a property to a value that the implementation " +"does not support. SAX applications and extensions may use this class for " +"similar purposes." msgstr "" msgid "" -"Subclass of :exc:`SAXException` raised when a SAX :class:`~xml.sax.xmlreader." -"XMLReader` is asked to enable a feature that is not supported, or to set a " -"property to a value that the implementation does not support. SAX " -"applications and extensions may use this class for similar purposes." +"Subclass of :exc:`SAXNotSupportedException` raised when no parser is " +"available. A parser module raises it when it is imported or during parsing " +"if the parser it provides cannot be used, and :func:`make_parser` raises it " +"if no module from the tried ones provides a usable parser." msgstr "" msgid "`SAX: The Simple API for XML `_" diff --git a/library/xml.sax.reader.po b/library/xml.sax.reader.po index 94536d6..babb3c2 100644 --- a/library/xml.sax.reader.po +++ b/library/xml.sax.reader.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -37,10 +37,10 @@ msgstr "" msgid "" "In some cases, it is desirable not to parse an input source at once, but to " "feed chunks of the document as they get available. Note that the reader will " -"normally not read the entire file, but read it in chunks as well; still :" -"meth:`parse` won't return until the entire document is processed. So these " -"interfaces should be used if the blocking behaviour of :meth:`parse` is not " -"desirable." +"normally not read the entire file, but read it in chunks as well; " +"still :meth:`parse` won't return until the entire document is processed. So " +"these interfaces should be used if the blocking behaviour of :meth:`parse` " +"is not desirable." msgstr "" msgid "" @@ -80,8 +80,9 @@ msgid "" msgstr "" msgid "" -"Applications will create objects of this class for use in the :meth:" -"`XMLReader.parse` method and for returning from EntityResolver.resolveEntity." +"Applications will create objects of this class for use in " +"the :meth:`XMLReader.parse` method and for returning from " +"EntityResolver.resolveEntity." msgstr "" msgid "" @@ -91,8 +92,8 @@ msgid "" msgstr "" msgid "" -"This is an implementation of the :class:`Attributes` interface (see section :" -"ref:`attributes-objects`). This is a dictionary-like object which " +"This is an implementation of the :class:`Attributes` interface (see " +"section :ref:`attributes-objects`). This is a dictionary-like object which " "represents the element attributes in a :meth:`startElement` call. In " "addition to the most useful dictionary operations, it supports a number of " "other methods as described by the interface. Objects of this class should be " @@ -101,12 +102,13 @@ msgid "" msgstr "" msgid "" -"Namespace-aware variant of :class:`AttributesImpl`, which will be passed to :" -"meth:`startElementNS`. It is derived from :class:`AttributesImpl`, but " +"Namespace-aware variant of :class:`AttributesImpl`, which will be passed " +"to :meth:`startElementNS`. It is derived from :class:`AttributesImpl`, but " "understands attribute names as two-tuples of *namespaceURI* and *localname*. " "In addition, it provides a number of methods expecting qualified names as " -"they appear in the original document. This class implements the :class:" -"`AttributesNS` interface (see section :ref:`attributes-ns-objects`)." +"they appear in the original document. This class implements " +"the :class:`AttributesNS` interface (see section :ref:`attributes-ns-" +"objects`)." msgstr "" msgid "XMLReader Objects" @@ -134,26 +136,27 @@ msgid "Return the current :class:`~xml.sax.handler.ContentHandler`." msgstr "" msgid "" -"Set the current :class:`~xml.sax.handler.ContentHandler`. If no :class:" -"`~xml.sax.handler.ContentHandler` is set, content events will be discarded." +"Set the current :class:`~xml.sax.handler.ContentHandler`. If " +"no :class:`~xml.sax.handler.ContentHandler` is set, content events will be " +"discarded." msgstr "" msgid "Return the current :class:`~xml.sax.handler.DTDHandler`." msgstr "" msgid "" -"Set the current :class:`~xml.sax.handler.DTDHandler`. If no :class:`~xml." -"sax.handler.DTDHandler` is set, DTD events will be discarded." +"Set the current :class:`~xml.sax.handler.DTDHandler`. If " +"no :class:`~xml.sax.handler.DTDHandler` is set, DTD events will be discarded." msgstr "" msgid "Return the current :class:`~xml.sax.handler.EntityResolver`." msgstr "" msgid "" -"Set the current :class:`~xml.sax.handler.EntityResolver`. If no :class:" -"`~xml.sax.handler.EntityResolver` is set, attempts to resolve an external " -"entity will result in opening the system identifier for the entity, and fail " -"if it is not available." +"Set the current :class:`~xml.sax.handler.EntityResolver`. If " +"no :class:`~xml.sax.handler.EntityResolver` is set, attempts to resolve an " +"external entity will result in opening the system identifier for the entity, " +"and fail if it is not available." msgstr "" msgid "Return the current :class:`~xml.sax.handler.ErrorHandler`." @@ -181,9 +184,10 @@ msgid "" msgstr "" msgid "" -"Set the *featurename* to *value*. If the feature is not recognized, :exc:" -"`SAXNotRecognizedException` is raised. If the feature or its setting is not " -"supported by the parser, *SAXNotSupportedException* is raised." +"Set the *featurename* to *value*. If the feature is not " +"recognized, :exc:`SAXNotRecognizedException` is raised. If the feature or " +"its setting is not supported by the parser, *SAXNotSupportedException* is " +"raised." msgstr "" msgid "" @@ -193,9 +197,10 @@ msgid "" msgstr "" msgid "" -"Set the *propertyname* to *value*. If the property is not recognized, :exc:" -"`SAXNotRecognizedException` is raised. If the property or its setting is not " -"supported by the parser, *SAXNotSupportedException* is raised." +"Set the *propertyname* to *value*. If the property is not " +"recognized, :exc:`SAXNotRecognizedException` is raised. If the property or " +"its setting is not supported by the parser, *SAXNotSupportedException* is " +"raised." msgstr "" msgid "IncrementalParser Objects" @@ -215,6 +220,13 @@ msgid "" "resources allocated during parsing." msgstr "" +msgid "" +"Prepare the parser for parsing *source*, an :class:`InputSource` instance. " +"It is called by :meth:`~XMLReader.parse` before feeding the data. The parser " +"implementation must override this method; the default implementation " +"raises :exc:`NotImplementedError`." +msgstr "" + msgid "" "This method is called after close has been called to reset the parser so " "that it is ready to parse new documents. The results of calling parse or " @@ -263,8 +275,8 @@ msgid "" msgstr "" msgid "" -"The encoding attribute of the :class:`InputSource` is ignored if the :class:" -"`InputSource` also contains a character stream." +"The encoding attribute of the :class:`InputSource` is ignored if " +"the :class:`InputSource` also contains a character stream." msgstr "" msgid "Get the character encoding of this InputSource." @@ -309,11 +321,10 @@ msgstr "" msgid "" ":class:`Attributes` objects implement a portion of the :term:`mapping " -"protocol `, including the methods :meth:`~collections.abc.Mapping." -"copy`, :meth:`~collections.abc.Mapping.get`, :meth:`~object.__contains__`, :" -"meth:`~collections.abc.Mapping.items`, :meth:`~collections.abc.Mapping." -"keys`, and :meth:`~collections.abc.Mapping.values`. The following methods " -"are also provided:" +"protocol `, including the " +"methods :meth:`~collections.abc.Mapping.copy`, :meth:`~collections.abc.Mapping.get`, :meth:`~object.__contains__`, :meth:`~collections.abc.Mapping.items`, :meth:`~collections.abc.Mapping.keys`, " +"and :meth:`~collections.abc.Mapping.values`. The following methods are also " +"provided:" msgstr "" msgid "Return the number of attributes." diff --git a/library/xml.sax.utils.po b/library/xml.sax.utils.po index f1616f4..bb3327e 100644 --- a/library/xml.sax.utils.po +++ b/library/xml.sax.utils.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -80,8 +80,8 @@ msgstr "" msgid "" "This class implements the :class:`~xml.sax.handler.ContentHandler` interface " -"by writing SAX events back into an XML document. In other words, using an :" -"class:`XMLGenerator` as the content handler will reproduce the original " +"by writing SAX events back into an XML document. In other words, using " +"an :class:`XMLGenerator` as the content handler will reproduce the original " "document being parsed. *out* should be a file-like object which will default " "to *sys.stdout*. *encoding* is the encoding of the output stream which " "defaults to ``'iso-8859-1'``. *short_empty_elements* controls the formatting " @@ -94,11 +94,18 @@ msgid "Added the *short_empty_elements* parameter." msgstr "" msgid "" -"This class is designed to sit between an :class:`~xml.sax.xmlreader." -"XMLReader` and the client application's event handlers. By default, it does " -"nothing but pass requests up to the reader and events on to the handlers " -"unmodified, but subclasses can override specific methods to modify the event " -"stream or the configuration requests as they pass through." +"This class is designed to sit between " +"an :class:`~xml.sax.xmlreader.XMLReader` and the client application's event " +"handlers. By default, it does nothing but pass requests up to the reader " +"and events on to the handlers unmodified, but subclasses can override " +"specific methods to modify the event stream or the configuration requests as " +"they pass through." +msgstr "" + +msgid "Return the parent reader, or ``None`` if it is not set." +msgstr "" + +msgid "Set the parent reader, which the events are read from." msgstr "" msgid "" @@ -106,6 +113,6 @@ msgid "" "fully resolved :class:`~xml.sax.xmlreader.InputSource` object ready for " "reading. The input source can be given as a string, a file-like object, or " "an :class:`~xml.sax.xmlreader.InputSource` object; parsers will use this " -"function to implement the polymorphic *source* argument to their :meth:`~xml." -"sax.xmlreader.XMLReader.parse` method." +"function to implement the polymorphic *source* argument to " +"their :meth:`~xml.sax.xmlreader.XMLReader.parse` method." msgstr "" diff --git a/library/xmlrpc.client.po b/library/xmlrpc.client.po index ef06a76..51e9f8a 100644 --- a/library/xmlrpc.client.po +++ b/library/xmlrpc.client.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -72,19 +72,19 @@ msgid "" "XML; the default behaviour is for ``None`` to raise a :exc:`TypeError`. This " "is a commonly used extension to the XML-RPC specification, but isn't " "supported by all clients and servers; see `http://ontosys.com/xml-rpc/" -"extensions.php `_ for a description. The *use_builtin_types* " -"flag can be used to cause date/time values to be presented as :class:" -"`datetime.datetime` objects and binary data to be presented as :class:" -"`bytes` objects; this flag is false by default. :class:`datetime.datetime`, :" -"class:`bytes` and :class:`bytearray` objects may be passed to calls. The " -"*headers* parameter is an optional sequence of HTTP headers to send with " -"each request, expressed as a sequence of 2-tuples representing the header " -"name and value. (e.g. ``[('Header-Name', 'value')]``). If an HTTPS URL is " -"provided, *context* may be :class:`ssl.SSLContext` and configures the SSL " -"settings of the underlying HTTPS connection. The obsolete *use_datetime* " -"flag is similar to *use_builtin_types* but it applies only to date/time " -"values." +"extensions.php `_ for a description. The " +"*use_builtin_types* flag can be used to cause date/time values to be " +"presented as :class:`datetime.datetime` objects and binary data to be " +"presented as :class:`bytes` objects; this flag is false by " +"default. :class:`datetime.datetime`, :class:`bytes` and :class:`bytearray` " +"objects may be passed to calls. The *headers* parameter is an optional " +"sequence of HTTP headers to send with each request, expressed as a sequence " +"of 2-tuples representing the header name and value. (e.g. ``[('Header-Name', " +"'value')]``). If an HTTPS URL is provided, *context* may " +"be :class:`ssl.SSLContext` and configures the SSL settings of the underlying " +"HTTPS connection. The obsolete *use_datetime* flag is similar to " +"*use_builtin_types* but it applies only to date/time values." msgstr "" msgid "The *use_builtin_types* flag was added." @@ -95,11 +95,11 @@ msgstr "" msgid "" "Both the HTTP and HTTPS transports support the URL syntax extension for HTTP " -"Basic Authentication: ``http://user:pass@host:port/path``. The ``user:" -"pass`` portion will be base64-encoded as an HTTP 'Authorization' header, and " -"sent to the remote server as part of the connection process when invoking an " -"XML-RPC method. You only need to use this if the remote server requires a " -"Basic Authentication user and password." +"Basic Authentication: ``http://user:pass@host:port/path``. The " +"``user:pass`` portion will be base64-encoded as an HTTP 'Authorization' " +"header, and sent to the remote server as part of the connection process when " +"invoking an XML-RPC method. You only need to use this if the remote server " +"requires a Basic Authentication user and password." msgstr "" msgid "" @@ -161,8 +161,8 @@ msgstr "" msgid "" ":class:`dict`. Keys must be strings, values may be any conformable type. " -"Objects of user-defined classes can be passed in; only their :attr:`~object." -"__dict__` attribute is transmitted." +"Objects of user-defined classes can be passed in; only " +"their :attr:`~object.__dict__` attribute is transmitted." msgstr "" msgid "``dateTime.iso8601``" @@ -210,8 +210,9 @@ msgid "" "allowed in XML, such as the control characters with ASCII values between 0 " "and 31 (except, of course, tab, newline and carriage return); failing to do " "this will result in an XML-RPC request that isn't well-formed XML. If you " -"have to pass arbitrary bytes via XML-RPC, use :class:`bytes` or :class:" -"`bytearray` classes or the :class:`Binary` wrapper class described below." +"have to pass arbitrary bytes via XML-RPC, use :class:`bytes` " +"or :class:`bytearray` classes or the :class:`Binary` wrapper class described " +"below." msgstr "" msgid "" @@ -424,8 +425,8 @@ msgid "" msgstr "" msgid "" -"It also supports certain of Python's built-in operators through :meth:" -"`~object.__eq__` and :meth:`~object.__ne__` methods." +"It also supports certain of Python's built-in operators " +"through :meth:`~object.__eq__` and :meth:`~object.__ne__` methods." msgstr "" msgid "" @@ -529,8 +530,8 @@ msgid "" msgstr "" msgid "" -"In the following example we're going to intentionally cause a :exc:" -"`ProtocolError` by providing an invalid URI::" +"In the following example we're going to intentionally cause " +"a :exc:`ProtocolError` by providing an invalid URI::" msgstr "" msgid "" diff --git a/library/xmlrpc.po b/library/xmlrpc.po index d823bc3..1e3800f 100644 --- a/library/xmlrpc.po +++ b/library/xmlrpc.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/library/xmlrpc.server.po b/library/xmlrpc.server.po index 87d8d54..a0afd64 100644 --- a/library/xmlrpc.server.po +++ b/library/xmlrpc.server.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,9 +30,9 @@ msgstr "" msgid "" "The :mod:`!xmlrpc.server` module provides a basic server framework for XML-" -"RPC servers written in Python. Servers can either be free standing, using :" -"class:`SimpleXMLRPCServer`, or embedded in a CGI environment, using :class:" -"`CGIXMLRPCRequestHandler`." +"RPC servers written in Python. Servers can either be free standing, " +"using :class:`SimpleXMLRPCServer`, or embedded in a CGI environment, " +"using :class:`CGIXMLRPCRequestHandler`." msgstr "" msgid "" @@ -54,18 +54,19 @@ msgid "" "of functions that can be called by the XML-RPC protocol. The " "*requestHandler* parameter should be a factory for request handler " "instances; it defaults to :class:`SimpleXMLRPCRequestHandler`. The *addr* " -"and *requestHandler* parameters are passed to the :class:`socketserver." -"TCPServer` constructor. If *logRequests* is true (the default), requests " -"will be logged; setting this parameter to false will turn off logging. The " -"*allow_none* and *encoding* parameters are passed on to :mod:`xmlrpc.client` " -"and control the XML-RPC responses that will be returned from the server. The " -"*bind_and_activate* parameter controls whether :meth:`server_bind` and :meth:" -"`server_activate` are called immediately by the constructor; it defaults to " -"true. Setting it to false allows code to manipulate the " -"*allow_reuse_address* class variable before the address is bound. The " -"*use_builtin_types* parameter is passed to the :func:`~xmlrpc.client.loads` " -"function and controls which types are processed when date/times values or " -"binary data are received; it defaults to false." +"and *requestHandler* parameters are passed to " +"the :class:`socketserver.TCPServer` constructor. If *logRequests* is true " +"(the default), requests will be logged; setting this parameter to false will " +"turn off logging. The *allow_none* and *encoding* parameters are passed on " +"to :mod:`xmlrpc.client` and control the XML-RPC responses that will be " +"returned from the server. The *bind_and_activate* parameter controls " +"whether :meth:`server_bind` and :meth:`server_activate` are called " +"immediately by the constructor; it defaults to true. Setting it to false " +"allows code to manipulate the *allow_reuse_address* class variable before " +"the address is bound. The *use_builtin_types* parameter is passed to " +"the :func:`~xmlrpc.client.loads` function and controls which types are " +"processed when date/times values or binary data are received; it defaults to " +"false." msgstr "" msgid "The *use_builtin_types* flag was added." @@ -90,16 +91,17 @@ msgid "SimpleXMLRPCServer objects" msgstr "" msgid "" -"The :class:`SimpleXMLRPCServer` class is based on :class:`socketserver." -"TCPServer` and provides a means of creating simple, stand alone XML-RPC " -"servers." +"The :class:`SimpleXMLRPCServer` class is based " +"on :class:`socketserver.TCPServer` and provides a means of creating simple, " +"stand alone XML-RPC servers." msgstr "" msgid "" "Register a function that can respond to XML-RPC requests. If *name* is " -"given, it will be the method name associated with *function*, otherwise :" -"attr:`function.__name__` will be used. *name* is a string, and may contain " -"characters not legal in Python identifiers, including the period character." +"given, it will be the method name associated with *function*, " +"otherwise :attr:`function.__name__` will be used. *name* is a string, and " +"may contain characters not legal in Python identifiers, including the period " +"character." msgstr "" msgid "" @@ -113,9 +115,9 @@ msgstr "" msgid "" "Register an object which is used to expose method names which have not been " -"registered using :meth:`register_function`. If *instance* contains a :meth:" -"`_dispatch` method, it is called with the requested method name and the " -"parameters from the request. Its API is ``def _dispatch(self, method, " +"registered using :meth:`register_function`. If *instance* contains " +"a :meth:`_dispatch` method, it is called with the requested method name and " +"the parameters from the request. Its API is ``def _dispatch(self, method, " "params)`` (note that *params* does not represent a variable argument list). " "If it calls an underlying function to perform its task, that function is " "called as ``func(*params)``, expanding the parameter list. The return value " @@ -330,10 +332,10 @@ msgstr "" msgid "" "Register an object which is used to expose method names which have not been " -"registered using :meth:`register_function`. If instance contains a :meth:" -"`_dispatch` method, it is called with the requested method name and the " -"parameters from the request; the return value is returned to the client as " -"the result. If instance does not have a :meth:`_dispatch` method, it is " +"registered using :meth:`register_function`. If instance contains " +"a :meth:`_dispatch` method, it is called with the requested method name and " +"the parameters from the request; the return value is returned to the client " +"as the result. If instance does not have a :meth:`_dispatch` method, it is " "searched for an attribute matching the name of the requested method; if the " "requested method name contains periods, each component of the method name " "is searched for individually, with the effect that a simple hierarchical " @@ -378,15 +380,15 @@ msgstr "" msgid "" "These classes extend the above classes to serve HTML documentation in " -"response to HTTP GET requests. Servers can either be free standing, using :" -"class:`DocXMLRPCServer`, or embedded in a CGI environment, using :class:" -"`DocCGIXMLRPCRequestHandler`." +"response to HTTP GET requests. Servers can either be free standing, " +"using :class:`DocXMLRPCServer`, or embedded in a CGI environment, " +"using :class:`DocCGIXMLRPCRequestHandler`." msgstr "" msgid "" -"Create a new server instance. All parameters have the same meaning as for :" -"class:`SimpleXMLRPCServer`; *requestHandler* defaults to :class:" -"`DocXMLRPCRequestHandler`." +"Create a new server instance. All parameters have the same meaning as " +"for :class:`SimpleXMLRPCServer`; *requestHandler* defaults " +"to :class:`DocXMLRPCRequestHandler`." msgstr "" msgid "Create a new instance to handle XML-RPC requests in a CGI environment." @@ -403,11 +405,11 @@ msgid "DocXMLRPCServer objects" msgstr "" msgid "" -"The :class:`DocXMLRPCServer` class is derived from :class:" -"`SimpleXMLRPCServer` and provides a means of creating self-documenting, " -"stand alone XML-RPC servers. HTTP POST requests are handled as XML-RPC " -"method calls. HTTP GET requests are handled by generating pydoc-style HTML " -"documentation. This allows a server to provide its own web-based " +"The :class:`DocXMLRPCServer` class is derived " +"from :class:`SimpleXMLRPCServer` and provides a means of creating self-" +"documenting, stand alone XML-RPC servers. HTTP POST requests are handled as " +"XML-RPC method calls. HTTP GET requests are handled by generating pydoc-" +"style HTML documentation. This allows a server to provide its own web-based " "documentation." msgstr "" @@ -431,9 +433,10 @@ msgid "DocCGIXMLRPCRequestHandler" msgstr "" msgid "" -"The :class:`DocCGIXMLRPCRequestHandler` class is derived from :class:" -"`CGIXMLRPCRequestHandler` and provides a means of creating self-documenting, " -"XML-RPC CGI scripts. HTTP POST requests are handled as XML-RPC method calls. " -"HTTP GET requests are handled by generating pydoc-style HTML documentation. " -"This allows a server to provide its own web-based documentation." +"The :class:`DocCGIXMLRPCRequestHandler` class is derived " +"from :class:`CGIXMLRPCRequestHandler` and provides a means of creating self-" +"documenting, XML-RPC CGI scripts. HTTP POST requests are handled as XML-RPC " +"method calls. HTTP GET requests are handled by generating pydoc-style HTML " +"documentation. This allows a server to provide its own web-based " +"documentation." msgstr "" diff --git a/library/zipapp.po b/library/zipapp.po index febda05..686f043 100644 --- a/library/zipapp.po +++ b/library/zipapp.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -204,8 +204,8 @@ msgstr "" msgid "" "When copying an existing archive, file objects supplied only need ``read`` " "and ``readline``, or ``write`` methods. When creating an archive from a " -"directory, if the target is a file object it will be passed to the ``zipfile." -"ZipFile`` class, and must supply the methods needed by that class." +"directory, if the target is a file object it will be passed to the " +"``zipfile.ZipFile`` class, and must supply the methods needed by that class." msgstr "" msgid "Added the *filter* and *compressed* parameters." @@ -261,12 +261,12 @@ msgid "" msgstr "" msgid "" -"To update the file in place, do the replacement in memory using a :class:" -"`~io.BytesIO` object, and then overwrite the source afterwards. Note that " -"there is a risk when overwriting a file in place that an error will result " -"in the loss of the original file. This code does not protect against such " -"errors, but production code should do so. Also, this method will only work " -"if the archive fits in memory::" +"To update the file in place, do the replacement in memory using " +"a :class:`~io.BytesIO` object, and then overwrite the source afterwards. " +"Note that there is a risk when overwriting a file in place that an error " +"will result in the loss of the original file. This code does not protect " +"against such errors, but production code should do so. Also, this method " +"will only work if the archive fits in memory::" msgstr "" msgid "" @@ -275,7 +275,7 @@ msgid "" ">>> temp = io.BytesIO()\n" ">>> zipapp.create_archive('myapp.pyz', temp, '/usr/bin/python2')\n" ">>> with open('myapp.pyz', 'wb') as f:\n" -">>> f.write(temp.getvalue())" +"... f.write(temp.getvalue())" msgstr "" msgid "Specifying the Interpreter" diff --git a/library/zipfile.po b/library/zipfile.po index a828400..a0dd6a0 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Sukhmanpreet kaur, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,10 +46,11 @@ msgstr "" msgid "" "Handling compressed archives requires :term:`optional modules ` such as :mod:`zlib`, :mod:`bz2`, :mod:`lzma`, and :mod:`compression." -"zstd`. If any of them are missing from your copy of CPython, look for " -"documentation from your distributor (that is, whoever provided Python to " -"you). If you are the distributor, see :ref:`optional-module-requirements`." +"module>` such as :mod:`zlib`, :mod:`bz2`, :mod:`lzma`, " +"and :mod:`compression.zstd`. If any of them are missing from your copy of " +"CPython, look for documentation from your distributor (that is, whoever " +"provided Python to you). If you are the distributor, see :ref:`optional-" +"module-requirements`." msgstr "" msgid "The module defines the following items:" @@ -72,9 +74,9 @@ msgid "" msgstr "" msgid "" -"Class that implements a subset of the interface provided by :class:`pathlib." -"Path`, including the full :class:`importlib.resources.abc.Traversable` " -"interface." +"Class that implements a subset of the interface provided " +"by :class:`pathlib.Path`, including the " +"full :class:`importlib.resources.abc.Traversable` interface." msgstr "" msgid "Class for creating ZIP archives containing Python libraries." @@ -87,8 +89,8 @@ msgid "" "module will not need to create these, but only use those created by this " "module. *filename* should be the full name of the archive member, and " "*date_time* should be a tuple containing six fields which describe the time " -"of the last modification to the file; the fields are described in section :" -"ref:`zipinfo-objects`." +"of the last modification to the file; the fields are described in " +"section :ref:`zipinfo-objects`." msgstr "" msgid "" @@ -123,26 +125,26 @@ msgid "" msgstr "" msgid "" -"The numeric constant for the BZIP2 compression method. This requires the :" -"mod:`bz2` module." +"The numeric constant for the BZIP2 compression method. This requires " +"the :mod:`bz2` module." msgstr "" msgid "" -"The numeric constant for the LZMA compression method. This requires the :" -"mod:`lzma` module." +"The numeric constant for the LZMA compression method. This requires " +"the :mod:`lzma` module." msgstr "" msgid "" -"The numeric constant for Zstandard compression. This requires the :mod:" -"`compression.zstd` module." +"The numeric constant for Zstandard compression. This requires " +"the :mod:`compression.zstd` module." msgstr "" msgid "" "In APPNOTE 6.3.7, the method ID ``20`` was assigned to Zstandard " "compression. This was changed in APPNOTE 6.3.8 to method ID ``93`` to avoid " -"conflicts, with method ID ``20`` being deprecated. For compatibility, the :" -"mod:`!zipfile` module reads both method IDs but will only write data with " -"method ID ``93``." +"conflicts, with method ID ``20`` being deprecated. For compatibility, " +"the :mod:`!zipfile` module reads both method IDs but will only write data " +"with method ID ``93``." msgstr "" msgid "" @@ -192,13 +194,14 @@ msgstr "" msgid "" "*compression* is the ZIP compression method to use when writing the archive, " -"and should be :const:`ZIP_STORED`, :const:`ZIP_DEFLATED`, :const:" -"`ZIP_BZIP2`, :const:`ZIP_LZMA`, or :const:`ZIP_ZSTANDARD`; unrecognized " -"values will cause :exc:`NotImplementedError` to be raised. If :const:" -"`ZIP_DEFLATED`, :const:`ZIP_BZIP2`, :const:`ZIP_LZMA`, or :const:" -"`ZIP_ZSTANDARD` is specified but the corresponding module (:mod:`zlib`, :mod:" -"`bz2`, :mod:`lzma`, or :mod:`compression.zstd`) is not available, :exc:" -"`RuntimeError` is raised. The default is :const:`ZIP_STORED`." +"and should " +"be :const:`ZIP_STORED`, :const:`ZIP_DEFLATED`, :const:`ZIP_BZIP2`, :const:`ZIP_LZMA`, " +"or :const:`ZIP_ZSTANDARD`; unrecognized values will " +"cause :exc:`NotImplementedError` to be raised. " +"If :const:`ZIP_DEFLATED`, :const:`ZIP_BZIP2`, :const:`ZIP_LZMA`, " +"or :const:`ZIP_ZSTANDARD` is specified but the corresponding module " +"(:mod:`zlib`, :mod:`bz2`, :mod:`lzma`, or :mod:`compression.zstd`) is not " +"available, :exc:`RuntimeError` is raised. The default is :const:`ZIP_STORED`." msgstr "" msgid "" @@ -210,15 +213,16 @@ msgstr "" msgid "" "The *compresslevel* parameter controls the compression level to use when " -"writing files to the archive. When using :const:`ZIP_STORED` or :const:" -"`ZIP_LZMA` it has no effect. When using :const:`ZIP_DEFLATED` integers ``0`` " -"through ``9`` are accepted (see :class:`zlib ` for more " -"information). When using :const:`ZIP_BZIP2` integers ``1`` through ``9`` are " -"accepted (see :class:`bz2 ` for more information). When using :" -"const:`ZIP_ZSTANDARD` integers ``-131072`` through ``22`` are commonly " -"accepted (see :attr:`CompressionParameter.compression_level ` for more on retrieving valid " -"values and their meaning)." +"writing files to the archive. When using :const:`ZIP_STORED` " +"or :const:`ZIP_LZMA` it has no effect. When using :const:`ZIP_DEFLATED` " +"integers ``0`` through ``9`` are accepted (see :class:`zlib " +"` for more information). When using :const:`ZIP_BZIP2` " +"integers ``1`` through ``9`` are accepted (see :class:`bz2 ` " +"for more information). When using :const:`ZIP_ZSTANDARD` integers " +"``-131072`` through ``22`` are commonly accepted " +"(see :attr:`CompressionParameter.compression_level " +"` for more on " +"retrieving valid values and their meaning)." msgstr "" msgid "" @@ -235,9 +239,9 @@ msgid "" msgstr "" msgid "" -"If the file is created with mode ``'w'``, ``'x'`` or ``'a'`` and then :meth:" -"`closed ` without adding any files to the archive, the appropriate " -"ZIP structures for an empty archive will be written to the file." +"If the file is created with mode ``'w'``, ``'x'`` or ``'a'`` and " +"then :meth:`closed ` without adding any files to the archive, the " +"appropriate ZIP structures for an empty archive will be written to the file." msgstr "" msgid "" @@ -322,13 +326,13 @@ msgid "" "Access a member of the archive as a binary file-like object. *name* can be " "either the name of a file within the archive or a :class:`ZipInfo` object. " "The *mode* parameter, if included, must be ``'r'`` (the default) or " -"``'w'``. *pwd* is the password used to decrypt encrypted ZIP files as a :" -"class:`bytes` object." +"``'w'``. *pwd* is the password used to decrypt encrypted ZIP files as " +"a :class:`bytes` object." msgstr "" msgid "" -":meth:`~ZipFile.open` is also a context manager and therefore supports the :" -"keyword:`with` statement::" +":meth:`~ZipFile.open` is also a context manager and therefore supports " +"the :keyword:`with` statement::" msgstr "" msgid "" @@ -339,17 +343,16 @@ msgstr "" msgid "" "With *mode* ``'r'`` the file-like object (``ZipExtFile``) is read-only and " -"provides the following methods: :meth:`~io.BufferedIOBase.read`, :meth:`~io." -"IOBase.readline`, :meth:`~io.IOBase.readlines`, :meth:`~io.IOBase.seek`, :" -"meth:`~io.IOBase.tell`, :meth:`~container.__iter__`, :meth:`~iterator." -"__next__`. These objects can operate independently of the ZipFile." +"provides the following " +"methods: :meth:`~io.BufferedIOBase.read`, :meth:`~io.IOBase.readline`, :meth:`~io.IOBase.readlines`, :meth:`~io.IOBase.seek`, :meth:`~io.IOBase.tell`, :meth:`~container.__iter__`, :meth:`~iterator.__next__`. " +"These objects can operate independently of the ZipFile." msgstr "" msgid "" -"With ``mode='w'``, a writable file handle is returned, which supports the :" -"meth:`~io.BufferedIOBase.write` method. While a writable file handle is " -"open, attempting to read or write other files in the ZIP file will raise a :" -"exc:`ValueError`." +"With ``mode='w'``, a writable file handle is returned, which supports " +"the :meth:`~io.BufferedIOBase.write` method. While a writable file handle " +"is open, attempting to read or write other files in the ZIP file will raise " +"a :exc:`ValueError`." msgstr "" msgid "" @@ -437,8 +440,8 @@ msgid "" msgstr "" msgid "" -"Calling :meth:`extractall` on a closed ZipFile will raise a :exc:" -"`ValueError`. Previously, a :exc:`RuntimeError` was raised." +"Calling :meth:`extractall` on a closed ZipFile will raise " +"a :exc:`ValueError`. Previously, a :exc:`RuntimeError` was raised." msgstr "" msgid "Print a table of contents for the archive to ``sys.stdout``." @@ -455,10 +458,10 @@ msgid "" "open for read or append. *pwd* is the password used for encrypted files as " "a :class:`bytes` object and, if specified, overrides the default password " "set with :meth:`setpassword`. Calling :meth:`read` on a ZipFile that uses a " -"compression method other than :const:`ZIP_STORED`, :const:`ZIP_DEFLATED`, :" -"const:`ZIP_BZIP2`, :const:`ZIP_LZMA`, or :const:`ZIP_ZSTANDARD` will raise " -"a :exc:`NotImplementedError`. An error will also be raised if the " -"corresponding compression module is not available." +"compression method other " +"than :const:`ZIP_STORED`, :const:`ZIP_DEFLATED`, :const:`ZIP_BZIP2`, :const:`ZIP_LZMA`, " +"or :const:`ZIP_ZSTANDARD` will raise a :exc:`NotImplementedError`. An error " +"will also be raised if the corresponding compression module is not available." msgstr "" msgid "" @@ -589,9 +592,9 @@ msgid "Path objects" msgstr "" msgid "" -"Construct a Path object from a ``root`` zipfile (which may be a :class:" -"`ZipFile` instance or ``file`` suitable for passing to the :class:`ZipFile` " -"constructor)." +"Construct a Path object from a ``root`` zipfile (which may be " +"a :class:`ZipFile` instance or ``file`` suitable for passing to " +"the :class:`ZipFile` constructor)." msgstr "" msgid "" @@ -622,9 +625,9 @@ msgstr "" msgid "" "Invoke :meth:`ZipFile.open` on the current path. Allows opening for read or " "write, text or binary through supported modes: 'r', 'w', 'rb', 'wb'. " -"Positional and keyword arguments are passed through to :class:`io." -"TextIOWrapper` when opened as text and ignored otherwise. ``pwd`` is the " -"``pwd`` parameter to :meth:`ZipFile.open`." +"Positional and keyword arguments are passed through " +"to :class:`io.TextIOWrapper` when opened as text and ignored otherwise. " +"``pwd`` is the ``pwd`` parameter to :meth:`ZipFile.open`." msgstr "" msgid "" @@ -634,8 +637,8 @@ msgstr "" msgid "" "The ``encoding`` parameter can be supplied as a positional argument without " "causing a :exc:`TypeError`. As it could in 3.9. Code needing to be " -"compatible with unpatched 3.10 and 3.11 versions must pass all :class:`io." -"TextIOWrapper` arguments, ``encoding`` included, as keywords." +"compatible with unpatched 3.10 and 3.11 versions must pass " +"all :class:`io.TextIOWrapper` arguments, ``encoding`` included, as keywords." msgstr "" msgid "Enumerate the children of the current directory." @@ -705,16 +708,16 @@ msgstr "" msgid "" "The :pypi:`zipp` project provides backports of the latest path object " -"functionality to older Pythons. Use ``zipp.Path`` in place of ``zipfile." -"Path`` for early access to changes." +"functionality to older Pythons. Use ``zipp.Path`` in place of " +"``zipfile.Path`` for early access to changes." msgstr "" msgid "PyZipFile objects" msgstr "" msgid "" -"The :class:`PyZipFile` constructor takes the same parameters as the :class:" -"`ZipFile` constructor, and one additional parameter, *optimize*." +"The :class:`PyZipFile` constructor takes the same parameters as " +"the :class:`ZipFile` constructor, and one additional parameter, *optimize*." msgstr "" msgid "Added the *optimize* parameter." @@ -746,10 +749,10 @@ msgid "" "information). If *pathname* is a file that does not end with :file:`.py`, " "a :exc:`RuntimeError` will be raised. If it is a directory, and the " "directory is not a package directory, then all the files :file:`\\*.pyc` are " -"added at the top level. If the directory is a package directory, then all :" -"file:`\\*.pyc` are added under the package name as a file path, and if any " -"subdirectories are package directories, all of these are added recursively " -"in sorted order." +"added at the top level. If the directory is a package directory, then " +"all :file:`\\*.pyc` are added under the package name as a file path, and if " +"any subdirectories are package directories, all of these are added " +"recursively in sorted order." msgstr "" msgid "*basename* is intended for internal use only." @@ -766,7 +769,7 @@ msgid "" msgstr "" msgid "" -">>> zf = PyZipFile('myprog.zip')\n" +">>> zf = PyZipFile('myprog.zip', 'w')\n" ">>> def notests(s):\n" "... fn = os.path.basename(s)\n" "... return (not (fn == 'test' or fn.startswith('test_')))\n" @@ -963,8 +966,9 @@ msgid "" msgstr "" msgid "" -"If you want to create a new ZIP archive, specify its name after the :option:" -"`-c` option and then list the filename(s) that should be included:" +"If you want to create a new ZIP archive, specify its name after " +"the :option:`-c` option and then list the filename(s) that should be " +"included:" msgstr "" msgid "$ python -m zipfile -c monty.zip spam.txt eggs.txt" @@ -977,8 +981,8 @@ msgid "$ python -m zipfile -c monty.zip life-of-brian_1979/" msgstr "" msgid "" -"If you want to extract a ZIP archive into the specified directory, use the :" -"option:`-e` option:" +"If you want to extract a ZIP archive into the specified directory, use " +"the :option:`-e` option:" msgstr "" msgid "$ python -m zipfile -e monty.zip target-dir/" @@ -1006,8 +1010,8 @@ msgid "Test whether the zipfile is valid or not." msgstr "" msgid "" -"Specify encoding of member names for :option:`-l`, :option:`-e` and :option:" -"`-t`." +"Specify encoding of member names for :option:`-l`, :option:`-e` " +"and :option:`-t`." msgstr "" msgid "Decompression pitfalls" diff --git a/library/zipimport.po b/library/zipimport.po index 44423c3..fb13455 100644 --- a/library/zipimport.po +++ b/library/zipimport.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,11 +29,11 @@ msgid "**Source code:** :source:`Lib/zipimport.py`" msgstr "" msgid "" -"This module adds the ability to import Python modules (:file:`\\*.py`, :file:" -"`\\*.pyc`) and packages from ZIP-format archives. It is usually not needed " -"to use the :mod:`!zipimport` module explicitly; it is automatically used by " -"the built-in :keyword:`import` mechanism for :data:`sys.path` items that are " -"paths to ZIP archives." +"This module adds the ability to import Python modules " +"(:file:`\\*.py`, :file:`\\*.pyc`) and packages from ZIP-format archives. It " +"is usually not needed to use the :mod:`!zipimport` module explicitly; it is " +"automatically used by the built-in :keyword:`import` mechanism " +"for :data:`sys.path` items that are paths to ZIP archives." msgstr "" msgid "" @@ -48,8 +48,8 @@ msgstr "" msgid "" "Any files may be present in the ZIP archive, but importers are only invoked " -"for :file:`.py` and :file:`.pyc` files. ZIP import of dynamic modules (:" -"file:`.pyd`, :file:`.so`) is disallowed. Note that if an archive only " +"for :file:`.py` and :file:`.pyc` files. ZIP import of dynamic modules " +"(:file:`.pyd`, :file:`.so`) is disallowed. Note that 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." @@ -80,8 +80,8 @@ msgstr "" 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`." +"written by Just van Rossum that uses the import hooks described " +"in :pep:`302`." msgstr "" msgid ":mod:`importlib` - The implementation of the import machinery" @@ -95,8 +95,8 @@ msgid "This module defines an exception:" msgstr "" msgid "" -"Exception raised by zipimporter objects. It's a subclass of :exc:" -"`ImportError`, so it can be caught as :exc:`ImportError`, too." +"Exception raised by zipimporter objects. It's a subclass " +"of :exc:`ImportError`, so it can be caught as :exc:`ImportError`, too." msgstr "" msgid "zipimporter Objects" @@ -108,9 +108,9 @@ msgstr "" msgid "" "Create a new zipimporter instance. *archivepath* must be a path to a ZIP " "file, or to a specific path within a ZIP file. For example, an " -"*archivepath* of :file:`foo/bar.zip/lib` will look for modules in the :file:" -"`lib` directory inside the ZIP file :file:`foo/bar.zip` (provided that it " -"exists)." +"*archivepath* of :file:`foo/bar.zip/lib` will look for modules in " +"the :file:`lib` directory inside the ZIP file :file:`foo/bar.zip` (provided " +"that it exists)." msgstr "" msgid "" @@ -124,8 +124,8 @@ msgid "" msgstr "" msgid "" -"Implementation of :meth:`importlib.abc.Loader.create_module` that returns :" -"const:`None` to explicitly request the default semantics." +"Implementation of :meth:`importlib.abc.Loader.create_module` that " +"returns :const:`None` to explicitly request the default semantics." msgstr "" msgid "Implementation of :meth:`importlib.abc.Loader.exec_module`." @@ -149,7 +149,7 @@ msgstr "" msgid "" "Return the value ``__file__`` would be set to if the specified module was " -"imported. Raise :exc:`ZipImportError` if the module couldn't be imported." +"imported. Raise :exc:`ZipImportError` if the module couldn't be found." msgstr "" msgid "" @@ -159,8 +159,8 @@ msgid "" msgstr "" msgid "" -"Return ``True`` if the module specified by *fullname* is a package. Raise :" -"exc:`ZipImportError` if the module couldn't be found." +"Return ``True`` if the module specified by *fullname* is a package. " +"Raise :exc:`ZipImportError` if the module couldn't be found." msgstr "" msgid "" @@ -180,16 +180,16 @@ msgstr "" msgid "" "The :attr:`archive` and :attr:`prefix` attributes, when combined with a " -"slash, equal the original *archivepath* argument given to the :class:" -"`zipimporter` constructor." +"slash, equal the original *archivepath* argument given to " +"the :class:`zipimporter` constructor." msgstr "" msgid "Examples" msgstr "" msgid "" -"Here is an example that imports a module from a ZIP archive - note that the :" -"mod:`!zipimport` module is not explicitly used." +"Here is an example that imports a module from a ZIP archive - note that " +"the :mod:`!zipimport` module is not explicitly used." msgstr "" msgid "" diff --git a/library/zlib.po b/library/zlib.po index e50ad43..dfddc28 100644 --- a/library/zlib.po +++ b/library/zlib.po @@ -3,15 +3,19 @@ # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sukhmanpreet kaur, 2026 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Sukhmanpreet kaur, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,8 +27,8 @@ msgstr "" msgid "" "For applications that require data compression, the functions in this module " -"allow compression and decompression, using the `zlib library `_." +"allow compression and decompression, using the `zlib library `_." msgstr "" msgid "" @@ -76,17 +80,17 @@ msgstr "" msgid "" "This function is typically useful to combine Adler-32 checksums that were " -"concurrently computed. To compute checksums sequentially, use :func:" -"`adler32` with the running checksum as the ``value`` argument." +"concurrently computed. To compute checksums sequentially, " +"use :func:`adler32` with the running checksum as the ``value`` argument." msgstr "" msgid "" "Compresses the bytes in *data*, returning a bytes object containing " "compressed data. *level* is an integer from ``0`` to ``9`` or ``-1`` " -"controlling the level of compression; See :const:`Z_BEST_SPEED` (``1``), :" -"const:`Z_BEST_COMPRESSION` (``9``), :const:`Z_NO_COMPRESSION` (``0``), and " -"the default, :const:`Z_DEFAULT_COMPRESSION` (``-1``) for more information " -"about these values." +"controlling the level of compression; See :const:`Z_BEST_SPEED` " +"(``1``), :const:`Z_BEST_COMPRESSION` (``9``), :const:`Z_NO_COMPRESSION` " +"(``0``), and the default, :const:`Z_DEFAULT_COMPRESSION` (``-1``) for more " +"information about these values." msgstr "" msgid "" @@ -133,8 +137,9 @@ msgstr "" msgid "" "*level* is the compression level -- an integer from ``0`` to ``9`` or " "``-1``. See :const:`Z_BEST_SPEED` (``1``), :const:`Z_BEST_COMPRESSION` " -"(``9``), :const:`Z_NO_COMPRESSION` (``0``), and the default, :const:" -"`Z_DEFAULT_COMPRESSION` (``-1``) for more information about these values." +"(``9``), :const:`Z_NO_COMPRESSION` (``0``), and the " +"default, :const:`Z_DEFAULT_COMPRESSION` (``-1``) for more information about " +"these values." msgstr "" msgid "" @@ -155,9 +160,9 @@ msgid "" msgstr "" msgid "" -"*strategy* is used to tune the compression algorithm. Possible values are :" -"const:`Z_DEFAULT_STRATEGY`, :const:`Z_FILTERED`, :const:`Z_HUFFMAN_ONLY`, :" -"const:`Z_RLE` and :const:`Z_FIXED`." +"*strategy* is used to tune the compression algorithm. Possible values " +"are :const:`Z_DEFAULT_STRATEGY`, :const:`Z_FILTERED`, :const:`Z_HUFFMAN_ONLY`, :const:`Z_RLE` " +"and :const:`Z_FIXED`." msgstr "" msgid "" @@ -291,13 +296,13 @@ msgstr "" msgid "" "All pending input is processed, and a bytes object containing the remaining " -"compressed output is returned. *mode* can be selected from the constants :" -"const:`Z_NO_FLUSH`, :const:`Z_PARTIAL_FLUSH`, :const:`Z_SYNC_FLUSH`, :const:" -"`Z_FULL_FLUSH`, :const:`Z_BLOCK`, or :const:`Z_FINISH`, defaulting to :const:" -"`Z_FINISH`. Except :const:`Z_FINISH`, all constants allow compressing " -"further bytestrings of data, while :const:`Z_FINISH` finishes the compressed " -"stream and prevents compressing any more data. After calling :meth:`flush` " -"with *mode* set to :const:`Z_FINISH`, the :meth:`compress` method cannot be " +"compressed output is returned. *mode* can be selected from the " +"constants :const:`Z_NO_FLUSH`, :const:`Z_PARTIAL_FLUSH`, :const:`Z_SYNC_FLUSH`, :const:`Z_FULL_FLUSH`, :const:`Z_BLOCK`, " +"or :const:`Z_FINISH`, defaulting to :const:`Z_FINISH`. " +"Except :const:`Z_FINISH`, all constants allow compressing further " +"bytestrings of data, while :const:`Z_FINISH` finishes the compressed stream " +"and prevents compressing any more data. After calling :meth:`flush` with " +"*mode* set to :const:`Z_FINISH`, the :meth:`compress` method cannot be " "called again; the only realistic action is to delete the object." msgstr "" @@ -322,11 +327,12 @@ msgid "" msgstr "" msgid "" -"A bytes object that contains any data that was not consumed by the last :" -"meth:`decompress` call because it exceeded the limit for the uncompressed " -"data buffer. This data has not yet been seen by the zlib machinery, so you " -"must feed it (possibly with further data concatenated to it) back to a " -"subsequent :meth:`decompress` method call in order to get correct output." +"A bytes object that contains any data that was not consumed by the " +"last :meth:`decompress` call because it exceeded the limit for the " +"uncompressed data buffer. This data has not yet been seen by the zlib " +"machinery, so you must feed it (possibly with further data concatenated to " +"it) back to a subsequent :meth:`decompress` method call in order to get " +"correct output." msgstr "" msgid "" @@ -342,9 +348,9 @@ msgstr "" msgid "" "Decompress *data*, returning a bytes object containing the uncompressed data " "corresponding to at least part of the data in *string*. This data should be " -"concatenated to the output produced by any preceding calls to the :meth:" -"`decompress` method. Some of the input data may be preserved in internal " -"buffers for later processing." +"concatenated to the output produced by any preceding calls to " +"the :meth:`decompress` method. Some of the input data may be preserved in " +"internal buffers for later processing." msgstr "" msgid "" @@ -353,9 +359,9 @@ msgid "" "compressed input can be processed; and unconsumed data will be stored in the " "attribute :attr:`unconsumed_tail`. This bytestring must be passed to a " "subsequent call to :meth:`decompress` if decompression is to continue. If " -"*max_length* is zero then the whole input is decompressed, and :attr:" -"`unconsumed_tail` is empty. For example, the full content could be read " -"like::" +"*max_length* is zero then the whole input is decompressed, " +"and :attr:`unconsumed_tail` is empty. For example, the full content could be " +"read like::" msgstr "" msgid "" @@ -369,9 +375,9 @@ msgstr "" msgid "" "All pending input is processed, and a bytes object containing the remaining " -"uncompressed output is returned. After calling :meth:`flush`, the :meth:" -"`decompress` method cannot be called again; the only realistic action is to " -"delete the object." +"uncompressed output is returned. After calling :meth:`flush`, " +"the :meth:`decompress` method cannot be called again; the only realistic " +"action is to delete the object." msgstr "" msgid "" @@ -498,9 +504,9 @@ msgstr "" msgid "" "The version string of the zlib-ng library that was used for building the " -"module if zlib-ng was used. When present, the :data:`ZLIB_VERSION` and :data:" -"`ZLIB_RUNTIME_VERSION` constants reflect the version of the zlib API " -"provided by zlib-ng." +"module if zlib-ng was used. When present, the :data:`ZLIB_VERSION` " +"and :data:`ZLIB_RUNTIME_VERSION` constants reflect the version of the zlib " +"API provided by zlib-ng." msgstr "" msgid "" diff --git a/library/zoneinfo.po b/library/zoneinfo.po index 8371114..b438fed 100644 --- a/library/zoneinfo.po +++ b/library/zoneinfo.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -64,11 +64,11 @@ msgid "Using ``ZoneInfo``" msgstr "" msgid "" -":class:`ZoneInfo` is a concrete implementation of the :class:`datetime." -"tzinfo` abstract base class, and is intended to be attached to ``tzinfo``, " -"either via the constructor, the :meth:`datetime.replace ` method or :meth:`datetime.astimezone `::" +":class:`ZoneInfo` is a concrete implementation of " +"the :class:`datetime.tzinfo` abstract base class, and is intended to be " +"attached to ``tzinfo``, either via the constructor, " +"the :meth:`datetime.replace ` method " +"or :meth:`datetime.astimezone `::" msgstr "" msgid "" @@ -184,8 +184,8 @@ msgid "" "those building Python from source who know where their system time zone data " "is deployed may change the default time zone path by specifying the compile-" "time option ``TZPATH`` (or, more likely, the :option:`configure flag --with-" -"tzpath <--with-tzpath>`), which should be a string delimited by :data:`os." -"pathsep`." +"tzpath <--with-tzpath>`), which should be a string delimited " +"by :data:`os.pathsep`." msgstr "" msgid "" @@ -197,10 +197,10 @@ msgid "Environment configuration" msgstr "" msgid "" -"When initializing :data:`TZPATH` (either at import time or whenever :func:" -"`reset_tzpath` is called with no arguments), the ``zoneinfo`` module will " -"use the environment variable ``PYTHONTZPATH``, if it exists, to set the " -"search path." +"When initializing :data:`TZPATH` (either at import time or " +"whenever :func:`reset_tzpath` is called with no arguments), the ``zoneinfo`` " +"module will use the environment variable ``PYTHONTZPATH``, if it exists, to " +"set the search path." msgstr "" msgid "" @@ -222,11 +222,11 @@ msgid "Runtime configuration" msgstr "" msgid "" -"The TZ search path can also be configured at runtime using the :func:" -"`reset_tzpath` function. This is generally not an advisable operation, " -"though it is reasonable to use it in test functions that require the use of " -"a specific time zone path (or require disabling access to the system time " -"zones)." +"The TZ search path can also be configured at runtime using " +"the :func:`reset_tzpath` function. This is generally not an advisable " +"operation, though it is reasonable to use it in test functions that require " +"the use of a specific time zone path (or require disabling access to the " +"system time zones)." msgstr "" msgid "The ``ZoneInfo`` class" @@ -253,22 +253,22 @@ msgid "" msgstr "" msgid "" -"If no file matching ``key`` is found, the constructor will raise :exc:" -"`ZoneInfoNotFoundError`." +"If no file matching ``key`` is found, the constructor will " +"raise :exc:`ZoneInfoNotFoundError`." msgstr "" msgid "The ``ZoneInfo`` class has two alternate constructors:" msgstr "" msgid "" -"Constructs a ``ZoneInfo`` object from a file-like object returning bytes (e." -"g. a file opened in binary mode or an :class:`io.BytesIO` object). Unlike " +"Constructs a ``ZoneInfo`` object from a file-like object returning bytes " +"(e.g. a file opened in binary mode or an :class:`io.BytesIO` object). Unlike " "the primary constructor, this always constructs a new object." msgstr "" msgid "" -"The ``key`` parameter sets the name of the zone for the purposes of :py:meth:" -"`~object.__str__` and :py:meth:`~object.__repr__`." +"The ``key`` parameter sets the name of the zone for the purposes " +"of :py:meth:`~object.__str__` and :py:meth:`~object.__repr__`." msgstr "" msgid "" @@ -346,9 +346,9 @@ msgid "String representations" msgstr "" msgid "" -"The string representation returned when calling :py:class:`str` on a :class:" -"`ZoneInfo` object defaults to using the :attr:`ZoneInfo.key` attribute (see " -"the note on usage in the attribute documentation)::" +"The string representation returned when calling :py:class:`str` on " +"a :class:`ZoneInfo` object defaults to using the :attr:`ZoneInfo.key` " +"attribute (see the note on usage in the attribute documentation)::" msgstr "" msgid "" @@ -471,10 +471,10 @@ msgid "" msgstr "" msgid "" -"The ``to`` parameter must be a :term:`sequence` of strings or :class:`os." -"PathLike` and not a string, all of which must be absolute paths. :exc:" -"`ValueError` will be raised if something other than an absolute path is " -"passed." +"The ``to`` parameter must be a :term:`sequence` of strings " +"or :class:`os.PathLike` and not a string, all of which must be absolute " +"paths. :exc:`ValueError` will be raised if something other than an absolute " +"path is passed." msgstr "" msgid "Globals" @@ -493,14 +493,14 @@ msgstr "" msgid "" "The object that ``zoneinfo.TZPATH`` points to may change in response to a " -"call to :func:`reset_tzpath`, so it is recommended to use ``zoneinfo." -"TZPATH`` rather than importing ``TZPATH`` from ``zoneinfo`` or assigning a " -"long-lived variable to ``zoneinfo.TZPATH``." +"call to :func:`reset_tzpath`, so it is recommended to use " +"``zoneinfo.TZPATH`` rather than importing ``TZPATH`` from ``zoneinfo`` or " +"assigning a long-lived variable to ``zoneinfo.TZPATH``." msgstr "" msgid "" -"For more information on configuring the time zone search path, see :ref:" -"`zoneinfo_data_configuration`." +"For more information on configuring the time zone search path, " +"see :ref:`zoneinfo_data_configuration`." msgstr "" msgid "Exceptions and warnings" @@ -508,8 +508,8 @@ msgstr "" msgid "" "Raised when construction of a :class:`ZoneInfo` object fails because the " -"specified key could not be found on the system. This is a subclass of :exc:" -"`KeyError`." +"specified key could not be found on the system. This is a subclass " +"of :exc:`KeyError`." msgstr "" msgid "" diff --git a/license.po b/license.po index d96a43a..d1e50d9 100644 --- a/license.po +++ b/license.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -185,14 +185,14 @@ msgstr "" msgid "" "Starting with Python 3.8.6, examples, recipes, and other code in the " -"documentation are dual licensed under the PSF License Version 2 and the :ref:" -"`Zero-Clause BSD license `." +"documentation are dual licensed under the PSF License Version 2 and " +"the :ref:`Zero-Clause BSD license `." msgstr "" msgid "" "Some software incorporated into Python is under different licenses. The " -"licenses are listed with code falling under that license. See :ref:" -"`OtherLicenses` for an incomplete list of these licenses." +"licenses are listed with code falling under that license. " +"See :ref:`OtherLicenses` for an incomplete list of these licenses." msgstr "" msgid "PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2" @@ -552,9 +552,9 @@ msgid "Sockets" msgstr "" msgid "" -"The :mod:`socket` module uses the functions, :c:func:`!getaddrinfo`, and :c:" -"func:`!getnameinfo`, which are coded in separate source files from the WIDE " -"Project, https://www.wide.ad.jp/. ::" +"The :mod:`socket` module uses the functions, :c:func:`!getaddrinfo`, " +"and :c:func:`!getnameinfo`, which are coded in separate source files from " +"the WIDE Project, https://www.wide.ad.jp/. ::" msgstr "" msgid "" @@ -853,10 +853,10 @@ msgstr "" msgid "" "The file :file:`Python/dtoa.c`, which supplies C functions dtoa and strtod " "for conversion of C doubles to and from strings, is derived from the file of " -"the same name by David M. Gay, currently available from https://web.archive." -"org/web/20220517033456/http://www.netlib.org/fp/dtoa.c. The original file, " -"as retrieved on March 16, 2009, contains the following copyright and " -"licensing notice::" +"the same name by David M. Gay, currently available from https://" +"web.archive.org/web/20220517033456/http://www.netlib.org/fp/dtoa.c. The " +"original file, as retrieved on March 16, 2009, contains the following " +"copyright and licensing notice::" msgstr "" msgid "" @@ -1299,7 +1299,7 @@ msgid "MIT License::" msgstr "" msgid "" -"Copyright (c) 2018-2021 Microsoft Corporation, Daan Leijen\n" +"Copyright (c) 2018-2025 Microsoft Corporation, Daan Leijen\n" "\n" "Permission is hereby granted, free of charge, to any person obtaining a " "copy\n" @@ -1364,8 +1364,8 @@ msgstr "" msgid "" "The file :file:`Python/qsbr.c` is adapted from FreeBSD's \"Global Unbounded " -"Sequences\" safe memory reclamation scheme in `subr_smr.c `_. The file is " +"Sequences\" safe memory reclamation scheme in `subr_smr.c `_. The file is " "distributed under the 2-Clause BSD License::" msgstr "" @@ -1446,8 +1446,8 @@ msgid "Profiling module" msgstr "" msgid "" -"The :mod:`!profiling` module includes vendored third-party libraries in :" -"file:`Lib/profiling/sampling/_vendor/` with the following licenses:" +"The :mod:`!profiling` module includes vendored third-party libraries " +"in :file:`Lib/profiling/sampling/_vendor/` with the following licenses:" msgstr "" msgid "**d3-flamegraph**" @@ -1535,8 +1535,8 @@ msgid "" "An extract of the `Unicode Character Database `__, converted to an internal format, is used by the :mod:`unicodedata` " "module and for the Unicode support of the :class:`str` type. The original " -"Unicode data files are distributed under the `Unicode License `__::" +"Unicode data files are distributed under the `Unicode License `__::" msgstr "" msgid "" diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index 08b4294..b695f26 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,10 +35,10 @@ msgstr "" msgid "" "The :keyword:`if`, :keyword:`while` and :keyword:`for` statements implement " "traditional control flow constructs. :keyword:`try` specifies exception " -"handlers and/or cleanup code for a group of statements, while the :keyword:" -"`with` statement allows the execution of initialization and finalization " -"code around a block of code. Function and class definitions are also " -"syntactically compound statements." +"handlers and/or cleanup code for a group of statements, while " +"the :keyword:`with` statement allows the execution of initialization and " +"finalization code around a block of code. Function and class definitions " +"are also syntactically compound statements." msgstr "" msgid "" @@ -74,8 +74,8 @@ msgid "" "Note that statements always end in a ``NEWLINE`` possibly followed by a " "``DEDENT``. Also note that optional continuation clauses always begin with " "a keyword that cannot start a statement, thus there are no ambiguities (the " -"'dangling :keyword:`else`' problem is solved in Python by requiring nested :" -"keyword:`if` statements to be indented)." +"'dangling :keyword:`else`' problem is solved in Python by requiring " +"nested :keyword:`if` statements to be indented)." msgstr "" msgid "" @@ -115,9 +115,9 @@ msgstr "" msgid "" "A :keyword:`break` statement executed in the first suite terminates the loop " -"without executing the :keyword:`!else` clause's suite. A :keyword:" -"`continue` statement executed in the first suite skips the rest of the suite " -"and goes back to testing the expression." +"without executing the :keyword:`!else` clause's suite. " +"A :keyword:`continue` statement executed in the first suite skips the rest " +"of the suite and goes back to testing the expression." msgstr "" msgid "The :keyword:`!for` statement" @@ -132,18 +132,19 @@ msgid "" "The :token:`~python-grammar:starred_expression_list` expression is evaluated " "once; it should yield an :term:`iterable` object. An :term:`iterator` is " "created for that iterable. The first item provided by the iterator is then " -"assigned to the target list using the standard rules for assignments (see :" -"ref:`assignment`), and the suite is executed. This repeats for each item " -"provided by the iterator. When the iterator is exhausted, the suite in the :" -"keyword:`!else` clause, if present, is executed, and the loop terminates." +"assigned to the target list using the standard rules for assignments " +"(see :ref:`assignment`), and the suite is executed. This repeats for each " +"item provided by the iterator. When the iterator is :term:`exhausted`, the " +"suite in the :keyword:`!else` clause, if present, is executed, and the loop " +"terminates." msgstr "" msgid "" "A :keyword:`break` statement executed in the first suite terminates the loop " -"without executing the :keyword:`!else` clause's suite. A :keyword:" -"`continue` statement executed in the first suite skips the rest of the suite " -"and continues with the next item, or with the :keyword:`!else` clause if " -"there is no next item." +"without executing the :keyword:`!else` clause's suite. " +"A :keyword:`continue` statement executed in the first suite skips the rest " +"of the suite and continues with the next item, or with the :keyword:`!else` " +"clause if there is no next item." msgstr "" msgid "" @@ -180,9 +181,9 @@ msgid "" msgstr "" msgid "" -"Additional information on exceptions can be found in section :ref:" -"`exceptions`, and information on using the :keyword:`raise` statement to " -"generate exceptions may be found in section :ref:`raise`." +"Additional information on exceptions can be found in " +"section :ref:`exceptions`, and information on using the :keyword:`raise` " +"statement to generate exceptions may be found in section :ref:`raise`." msgstr "" msgid "" @@ -229,13 +230,13 @@ msgstr "" msgid "" "When a matching :keyword:`!except` clause is found, the exception is " -"assigned to the target specified after the :keyword:`!as` keyword in that :" -"keyword:`!except` clause, if present, and the :keyword:`!except` clause's " -"suite is executed. All :keyword:`!except` clauses must have an executable " -"block. When the end of this block is reached, execution continues normally " -"after the entire :keyword:`try` statement. (This means that if two nested " -"handlers exist for the same exception, and the exception occurs in the :" -"keyword:`!try` clause of the inner handler, the outer handler will not " +"assigned to the target specified after the :keyword:`!as` keyword in " +"that :keyword:`!except` clause, if present, and the :keyword:`!except` " +"clause's suite is executed. All :keyword:`!except` clauses must have an " +"executable block. When the end of this block is reached, execution continues " +"normally after the entire :keyword:`try` statement. (This means that if two " +"nested handlers exist for the same exception, and the exception occurs in " +"the :keyword:`!try` clause of the inner handler, the outer handler will not " "handle the exception.)" msgstr "" @@ -315,12 +316,13 @@ msgid "" "When an exception group is raised in the try block, each :keyword:`!except*` " "clause splits (see :meth:`~BaseExceptionGroup.split`) it into the subgroups " "of matching and non-matching exceptions. If the matching subgroup is not " -"empty, it becomes the handled exception (the value returned from :func:`sys." -"exception`) and assigned to the target of the :keyword:`!except*` clause (if " -"there is one). Then, the body of the :keyword:`!except*` clause executes. If " -"the non-matching subgroup is not empty, it is processed by the next :keyword:" -"`!except*` in the same manner. This continues until all exceptions in the " -"group have been matched, or the last :keyword:`!except*` clause has run." +"empty, it becomes the handled exception (the value returned " +"from :func:`sys.exception`) and assigned to the target of the :keyword:`!" +"except*` clause (if there is one). Then, the body of the :keyword:`!except*` " +"clause executes. If the non-matching subgroup is not empty, it is processed " +"by the next :keyword:`!except*` in the same manner. This continues until all " +"exceptions in the group have been matched, or the last :keyword:`!except*` " +"clause has run." msgstr "" msgid "" @@ -355,8 +357,8 @@ msgid "" "If the exception raised from the :keyword:`try` block is not an exception " "group and its type matches one of the :keyword:`!except*` clauses, it is " "caught and wrapped by an exception group with an empty message string. This " -"ensures that the type of the target ``e`` is consistently :exc:" -"`BaseExceptionGroup`::" +"ensures that the type of the target ``e`` is " +"consistently :exc:`BaseExceptionGroup`::" msgstr "" msgid "" @@ -378,26 +380,27 @@ msgstr "" msgid "" "The optional :keyword:`!else` clause is executed if the control flow leaves " -"the :keyword:`try` suite, no exception was raised, and no :keyword:" -"`return`, :keyword:`continue`, or :keyword:`break` statement was executed. " -"Exceptions in the :keyword:`!else` clause are not handled by the preceding :" -"keyword:`except` clauses." +"the :keyword:`try` suite, no exception was raised, and " +"no :keyword:`return`, :keyword:`continue`, or :keyword:`break` statement was " +"executed. Exceptions in the :keyword:`!else` clause are not handled by the " +"preceding :keyword:`except` clauses." msgstr "" msgid ":keyword:`!finally` clause" msgstr "" msgid "" -"If :keyword:`!finally` is present, it specifies a 'cleanup' handler. The :" -"keyword:`try` clause is executed, including any :keyword:`except` and :" -"keyword:`else ` clauses. If an exception occurs in any of the " -"clauses and is not handled, the exception is temporarily saved. The :keyword:" -"`!finally` clause is executed. If there is a saved exception it is re-" -"raised at the end of the :keyword:`!finally` clause. If the :keyword:`!" -"finally` clause raises another exception, the saved exception is set as the " -"context of the new exception. If the :keyword:`!finally` clause executes a :" -"keyword:`return`, :keyword:`break` or :keyword:`continue` statement, the " -"saved exception is discarded. For example, this function returns 42." +"If :keyword:`!finally` is present, it specifies a 'cleanup' handler. " +"The :keyword:`try` clause is executed, including any :keyword:`except` " +"and :keyword:`else ` clauses. If an exception occurs in any of " +"the clauses and is not handled, the exception is temporarily saved. " +"The :keyword:`!finally` clause is executed. If there is a saved exception " +"it is re-raised at the end of the :keyword:`!finally` clause. If " +"the :keyword:`!finally` clause raises another exception, the saved exception " +"is set as the context of the new exception. If the :keyword:`!finally` " +"clause executes a :keyword:`return`, :keyword:`break` or :keyword:`continue` " +"statement, the saved exception is discarded. For example, this function " +"returns 42." msgstr "" msgid "" @@ -437,14 +440,14 @@ msgid "" msgstr "" msgid "" -"Prior to Python 3.8, a :keyword:`continue` statement was illegal in the :" -"keyword:`!finally` clause due to a problem with the implementation." +"Prior to Python 3.8, a :keyword:`continue` statement was illegal in " +"the :keyword:`!finally` clause due to a problem with the implementation." msgstr "" msgid "" -"The compiler emits a :exc:`SyntaxWarning` when a :keyword:`return`, :keyword:" -"`break` or :keyword:`continue` appears in a :keyword:`!finally` block (see :" -"pep:`765`)." +"The compiler emits a :exc:`SyntaxWarning` when " +"a :keyword:`return`, :keyword:`break` or :keyword:`continue` appears in " +"a :keyword:`!finally` block (see :pep:`765`)." msgstr "" msgid "The :keyword:`!with` statement" @@ -453,8 +456,8 @@ msgstr "" msgid "" "The :keyword:`with` statement is used to wrap the execution of a block with " "methods defined by a context manager (see section :ref:`context-managers`). " -"This allows common :keyword:`try`...\\ :keyword:`except`...\\ :keyword:" -"`finally` usage patterns to be encapsulated for convenient reuse." +"This allows common :keyword:`try`...\\ :keyword:`except`..." +"\\ :keyword:`finally` usage patterns to be encapsulated for convenient reuse." msgstr "" msgid "" @@ -463,8 +466,8 @@ msgid "" msgstr "" msgid "" -"The context expression (the expression given in the :token:`~python-grammar:" -"with_item`) is evaluated to obtain a context manager." +"The context expression (the expression given in the :token:`~python-" +"grammar:with_item`) is evaluated to obtain a context manager." msgstr "" msgid "" @@ -483,11 +486,11 @@ msgid "" msgstr "" msgid "" -"The :keyword:`with` statement guarantees that if the :meth:`~object." -"__enter__` method returns without an error, then :meth:`~object.__exit__` " -"will always be called. Thus, if an error occurs during the assignment to the " -"target list, it will be treated the same as an error occurring within the " -"suite would be. See step 7 below." +"The :keyword:`with` statement guarantees that if " +"the :meth:`~object.__enter__` method returns without an error, " +"then :meth:`~object.__exit__` will always be called. Thus, if an error " +"occurs during the assignment to the target list, it will be treated the same " +"as an error occurring within the suite would be. See step 7 below." msgstr "" msgid "The suite is executed." @@ -496,15 +499,15 @@ msgstr "" msgid "" "The context manager's :meth:`~object.__exit__` method is invoked. If an " "exception caused the suite to be exited, its type, value, and traceback are " -"passed as arguments to :meth:`~object.__exit__`. Otherwise, three :const:" -"`None` arguments are supplied." +"passed as arguments to :meth:`~object.__exit__`. Otherwise, " +"three :const:`None` arguments are supplied." msgstr "" msgid "" -"If the suite was exited due to an exception, and the return value from the :" -"meth:`~object.__exit__` method was false, the exception is reraised. If the " -"return value was true, the exception is suppressed, and execution continues " -"with the statement following the :keyword:`with` statement." +"If the suite was exited due to an exception, and the return value from " +"the :meth:`~object.__exit__` method was false, the exception is reraised. " +"If the return value was true, the exception is suppressed, and execution " +"continues with the statement following the :keyword:`with` statement." msgstr "" msgid "" @@ -549,8 +552,8 @@ msgid "" msgstr "" msgid "" -"With more than one item, the context managers are processed as if multiple :" -"keyword:`with` statements were nested::" +"With more than one item, the context managers are processed as if " +"multiple :keyword:`with` statements were nested::" msgstr "" msgid "" @@ -852,8 +855,8 @@ msgid "" msgstr "" msgid "" -"The rule ``strings`` and the token ``NUMBER`` are defined in the :doc:" -"`standard Python grammar <./grammar>`. Triple-quoted strings are " +"The rule ``strings`` and the token ``NUMBER`` are defined in " +"the :doc:`standard Python grammar <./grammar>`. Triple-quoted strings are " "supported. Raw strings and byte strings are supported. :ref:`f-strings` " "and :ref:`t-strings` are not supported." msgstr "" @@ -878,8 +881,8 @@ msgstr "" msgid "" "A single underscore ``_`` is not a capture pattern (this is what ``!'_'`` " -"expresses). It is instead treated as a :token:`~python-grammar:" -"wildcard_pattern`." +"expresses). It is instead treated as a :token:`~python-" +"grammar:wildcard_pattern`." msgstr "" msgid "" @@ -929,8 +932,8 @@ msgid "" msgstr "" msgid "" -"In simple terms ``NAME1.NAME2`` will succeed only if `` == NAME1." -"NAME2``" +"In simple terms ``NAME1.NAME2`` will succeed only if `` == " +"NAME1.NAME2``" msgstr "" msgid "" @@ -1143,13 +1146,13 @@ msgid "" msgstr "" msgid "" -"If ``name_or_attr`` is not an instance of the builtin :class:`type` , raise :" -"exc:`TypeError`." +"If ``name_or_attr`` is not an instance of the builtin :class:`type` , " +"raise :exc:`TypeError`." msgstr "" msgid "" -"If the subject value is not an instance of ``name_or_attr`` (tested via :" -"func:`isinstance`), the class pattern fails." +"If the subject value is not an instance of ``name_or_attr`` (tested " +"via :func:`isinstance`), the class pattern fails." msgstr "" msgid "" @@ -1202,13 +1205,13 @@ msgid "If this raises an exception, the exception bubbles up." msgstr "" msgid "" -"If the returned value is not a tuple, the conversion fails and :exc:" -"`TypeError` is raised." +"If the returned value is not a tuple, the conversion fails " +"and :exc:`TypeError` is raised." msgstr "" msgid "" -"If there are more positional patterns than ``len(cls.__match_args__)``, :exc:" -"`TypeError` is raised." +"If there are more positional patterns than " +"``len(cls.__match_args__)``, :exc:`TypeError` is raised." msgstr "" msgid "" @@ -1301,8 +1304,8 @@ msgid "Function definitions" msgstr "" msgid "" -"A function definition defines a user-defined function object (see section :" -"ref:`types`):" +"A function definition defines a user-defined function object (see " +"section :ref:`types`):" msgstr "" msgid "" @@ -1348,9 +1351,9 @@ msgid "" msgstr "" msgid "" -"Functions may be decorated with any valid :token:`~python-grammar:" -"assignment_expression`. Previously, the grammar was much more restrictive; " -"see :pep:`614` for details." +"Functions may be decorated with any valid :token:`~python-" +"grammar:assignment_expression`. Previously, the grammar was much more " +"restrictive; see :pep:`614` for details." msgstr "" msgid "" @@ -1397,18 +1400,18 @@ msgid "" msgstr "" msgid "" -"Function call semantics are described in more detail in section :ref:" -"`calls`. A function call always assigns values to all parameters mentioned " -"in the parameter list, either from positional arguments, from keyword " -"arguments, or from default values. If the form \"``*identifier``\" is " -"present, it is initialized to a tuple receiving any excess positional " -"parameters, defaulting to the empty tuple. If the form \"``**identifier``\" " -"is present, it is initialized to a new ordered mapping receiving any excess " -"keyword arguments, defaulting to a new empty mapping of the same type. " -"Parameters after \"``*``\" or \"``*identifier``\" are keyword-only " -"parameters and may only be passed by keyword arguments. Parameters before " -"\"``/``\" are positional-only parameters and may only be passed by " -"positional arguments." +"Function call semantics are described in more detail in " +"section :ref:`calls`. A function call always assigns values to all " +"parameters mentioned in the parameter list, either from positional " +"arguments, from keyword arguments, or from default values. If the form " +"\"``*identifier``\" is present, it is initialized to a tuple receiving any " +"excess positional parameters, defaulting to the empty tuple. If the form " +"\"``**identifier``\" is present, it is initialized to a new ordered mapping " +"receiving any excess keyword arguments, defaulting to a new empty mapping of " +"the same type. Parameters after \"``*``\" or \"``*identifier``\" are " +"keyword-only parameters and may only be passed by keyword arguments. " +"Parameters before \"``/``\" are positional-only parameters and may only be " +"passed by positional arguments." msgstr "" msgid "" @@ -1439,8 +1442,8 @@ msgid "" "described in section :ref:`lambda`. Note that the lambda expression is " "merely a shorthand for a simplified function definition; a function defined " "in a \":keyword:`def`\" statement can be passed around or assigned to " -"another name just like a function defined by a lambda expression. The \":" -"keyword:`!def`\" form is actually more powerful since it allows the " +"another name just like a function defined by a lambda expression. The " +"\":keyword:`!def`\" form is actually more powerful since it allows the " "execution of multiple statements and annotations." msgstr "" @@ -1521,14 +1524,14 @@ msgid "" msgstr "" msgid "" -"The class's suite is then executed in a new execution frame (see :ref:" -"`naming`), using a newly created local namespace and the original global " -"namespace. (Usually, the suite contains mostly function definitions.) When " -"the class's suite finishes execution, its execution frame is discarded but " -"its local namespace is saved. [#]_ A class object is then created using the " -"inheritance list for the base classes and the saved local namespace for the " -"attribute dictionary. The class name is bound to this class object in the " -"original local namespace." +"The class's suite is then executed in a new execution frame " +"(see :ref:`naming`), using a newly created local namespace and the original " +"global namespace. (Usually, the suite contains mostly function " +"definitions.) When the class's suite finishes execution, its execution " +"frame is discarded but its local namespace is saved. [#]_ A class object is " +"then created using the inheritance list for the base classes and the saved " +"local namespace for the attribute dictionary. The class name is bound to " +"this class object in the original local namespace." msgstr "" msgid "" @@ -1563,17 +1566,17 @@ msgid "" msgstr "" msgid "" -"Classes may be decorated with any valid :token:`~python-grammar:" -"assignment_expression`. Previously, the grammar was much more restrictive; " -"see :pep:`614` for details." +"Classes may be decorated with any valid :token:`~python-" +"grammar:assignment_expression`. Previously, the grammar was much more " +"restrictive; see :pep:`614` for details." msgstr "" msgid "" "A list of :ref:`type parameters ` may be given in square " "brackets immediately after the class's name. This indicates to static type " "checkers that the class is generic. At runtime, the type parameters can be " -"retrieved from the class's :attr:`~type.__type_params__` attribute. See :ref:" -"`generic-classes` for more." +"retrieved from the class's :attr:`~type.__type_params__` attribute. " +"See :ref:`generic-classes` for more." msgstr "" msgid "" @@ -1625,9 +1628,9 @@ msgstr "" msgid "" "The :term:`method resolution order` (MRO) is the order in which base classes " -"are searched when looking up an attribute on a class. See :ref:" -"`python_2.3_mro` for a description of how Python determines the MRO for a " -"class." +"are searched when looking up an attribute on a class. " +"See :ref:`python_2.3_mro` for a description of how Python determines the MRO " +"for a class." msgstr "" msgid "" @@ -1681,8 +1684,8 @@ msgid "" "resulting class is chosen among the metaclasses of the bases and the " "explicitly specified metaclass of the child class. It must be a metaclass " "that is a subclass of all other candidate metaclasses. If no such metaclass " -"exists among the candidates, the class cannot be created, as explained in :" -"ref:`metaclass-determination`." +"exists among the candidates, the class cannot be created, as explained " +"in :ref:`metaclass-determination`." msgstr "" msgid "" @@ -1692,12 +1695,12 @@ msgid "" msgstr "" msgid "" -"In CPython, a class is a solid base if it has a nonempty :attr:`~object." -"__slots__` definition. Many but not all classes defined in C are also solid " -"bases, including most builtins (such as :class:`int` or :class:" -"`BaseException`) but excluding most concrete :class:`Exception` classes. " -"Generally, a C class is a solid base if its underlying struct is different " -"in size from its base class." +"In CPython, a class is a solid base if it has a " +"nonempty :attr:`~object.__slots__` definition. Many but not all classes " +"defined in C are also solid bases, including most builtins (such " +"as :class:`int` or :class:`BaseException`) but excluding most " +"concrete :class:`Exception` classes. Generally, a C class is a solid base if " +"its underlying struct is different in size from its base class." msgstr "" msgid "" @@ -1888,9 +1891,9 @@ msgid "Support for default values was added (see :pep:`696`)." msgstr "" msgid "" -":ref:`Functions ` (including :ref:`coroutines `), :ref:" -"`classes ` and :ref:`type aliases ` may contain a type " -"parameter list::" +":ref:`Functions ` (including :ref:`coroutines `), :ref:`classes ` and :ref:`type aliases ` may contain a " +"type parameter list::" msgstr "" msgid "" @@ -1929,8 +1932,9 @@ msgid "" msgstr "" msgid "" -"Generic functions, classes, and type aliases have a :attr:`~definition." -"__type_params__` attribute listing their type parameters." +"Generic functions, classes, and type aliases have " +"a :attr:`~definition.__type_params__` attribute listing their type " +"parameters." msgstr "" msgid "Type parameters come in three kinds:" @@ -1997,9 +2001,9 @@ msgstr "" msgid "" "def overly_generic[\n" " SimpleTypeVar,\n" -" TypeVarWithDefault = int,\n" " TypeVarWithBound: int,\n" " TypeVarWithConstraints: (str, bytes),\n" +" TypeVarWithDefault = int,\n" " *SimpleTypeVarTuple = (int, float),\n" " **SimpleParamSpec = (str, bytearray),\n" "](\n" @@ -2036,8 +2040,8 @@ msgid "" "Here ``annotation-def`` indicates an :ref:`annotation scope `, which is not actually bound to any name at runtime. (One other " "liberty is taken in the translation: the syntax does not go through " -"attribute access on the :mod:`typing` module, but creates an instance of :" -"data:`typing.TypeVar` directly.)" +"attribute access on the :mod:`typing` module, but creates an instance " +"of :data:`typing.TypeVar` directly.)" msgstr "" msgid "" @@ -2058,8 +2062,8 @@ msgid "" msgstr "" msgid "" -"Except for the :ref:`lazy evaluation ` of the :class:" -"`~typing.TypeVar` bound, this is equivalent to::" +"Except for the :ref:`lazy evaluation ` of " +"the :class:`~typing.TypeVar` bound, this is equivalent to::" msgstr "" msgid "" @@ -2108,9 +2112,9 @@ msgid "" msgstr "" msgid "" -"Here again ``annotation-def`` (not a real keyword) indicates an :ref:" -"`annotation scope `, and the name ``TYPE_PARAMS_OF_Bag`` " -"is not actually bound at runtime." +"Here again ``annotation-def`` (not a real keyword) indicates " +"an :ref:`annotation scope `, and the name " +"``TYPE_PARAMS_OF_Bag`` is not actually bound at runtime." msgstr "" msgid "" @@ -2122,7 +2126,7 @@ msgstr "" msgid "" "@decorator\n" -"class Bag(Base[T], arg=T): ..." +"class Bag[T](Base[T], arg=T): ..." msgstr "" msgid "This is equivalent to::" @@ -2200,8 +2204,8 @@ msgid "" "this is not enforced by the language, and in general annotations may contain " "arbitrary expressions. The presence of annotations does not change the " "runtime semantics of the code, except if some mechanism is used that " -"introspects and uses the annotations (such as :mod:`dataclasses` or :deco:" -"`functools.singledispatch`)." +"introspects and uses the annotations (such as :mod:`dataclasses` " +"or :deco:`functools.singledispatch`)." msgstr "" msgid "" @@ -2227,18 +2231,18 @@ msgstr "" msgid "" "This future statement will be deprecated and removed in a future version of " "Python, but not before Python 3.13 reaches its end of life (see :pep:`749`). " -"When it is used, introspection tools like :func:`annotationlib." -"get_annotations` and :func:`typing.get_type_hints` are less likely to be " -"able to resolve annotations at runtime." +"When it is used, introspection tools " +"like :func:`annotationlib.get_annotations` and :func:`typing.get_type_hints` " +"are less likely to be able to resolve annotations at runtime." msgstr "" msgid "Footnotes" msgstr "" msgid "" -"The exception is propagated to the invocation stack unless there is a :" -"keyword:`finally` clause which happens to raise another exception. That new " -"exception causes the old one to be lost." +"The exception is propagated to the invocation stack unless there is " +"a :keyword:`finally` clause which happens to raise another exception. That " +"new exception causes the old one to be lost." msgstr "" msgid "In pattern matching, a sequence is defined as one of the following:" @@ -2293,8 +2297,8 @@ msgid "" msgstr "" msgid "" -"The standard library classes :class:`dict` and :class:`types." -"MappingProxyType` are mappings." +"The standard library classes :class:`dict` " +"and :class:`types.MappingProxyType` are mappings." msgstr "" msgid "" diff --git a/reference/datamodel.po b/reference/datamodel.po index 3ca8827..5f57d90 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -98,9 +98,9 @@ msgid "" "is garbage-collected, but since garbage collection is not guaranteed to " "happen, such objects also provide an explicit way to release the external " "resource, usually a :meth:`!close` method. Programs are strongly recommended " -"to explicitly close such objects. The :keyword:`try`...\\ :keyword:" -"`finally` statement and the :keyword:`with` statement provide convenient " -"ways to do this." +"to explicitly close such objects. The :keyword:`try`..." +"\\ :keyword:`finally` statement and the :keyword:`with` statement provide " +"convenient ways to do this." msgstr "" msgid "" @@ -178,9 +178,9 @@ msgid "Evaluating :data:`NotImplemented` in a boolean context was deprecated." msgstr "" msgid "" -"Evaluating :data:`NotImplemented` in a boolean context now raises a :exc:" -"`TypeError`. It previously evaluated to :const:`True` and emitted a :exc:" -"`DeprecationWarning` since Python 3.9." +"Evaluating :data:`NotImplemented` in a boolean context now raises " +"a :exc:`TypeError`. It previously evaluated to :const:`True` and emitted " +"a :exc:`DeprecationWarning` since Python 3.9." msgstr "" msgid "Ellipsis" @@ -204,8 +204,8 @@ msgid "" msgstr "" msgid "" -"The string representations of the numeric classes, computed by :meth:" -"`~object.__repr__` and :meth:`~object.__str__`, have the following " +"The string representations of the numeric classes, computed " +"by :meth:`~object.__repr__` and :meth:`~object.__str__`, have the following " "properties:" msgstr "" @@ -357,9 +357,10 @@ msgid "Strings" msgstr "" msgid "" -"A string (:class:`str`) is a sequence of values that represent :dfn:" -"`characters`, or more formally, *Unicode code points*. All the code points " -"in the range ``0`` to ``0x10FFFF`` can be represented in a string." +"A string (:class:`str`) is a sequence of values that " +"represent :dfn:`characters`, or more formally, *Unicode code points*. All " +"the code points in the range ``0`` to ``0x10FFFF`` can be represented in a " +"string." msgstr "" msgid "" @@ -371,9 +372,9 @@ msgid "" "The built-in function :func:`ord` converts a code point from its string form " "to an integer in the range ``0`` to ``0x10FFFF``; :func:`chr` converts an " "integer in the range ``0`` to ``0x10FFFF`` to the corresponding length ``1`` " -"string object. :meth:`str.encode` can be used to convert a :class:`str` to :" -"class:`bytes` using the given text encoding, and :meth:`bytes.decode` can be " -"used to achieve the opposite." +"string object. :meth:`str.encode` can be used to convert a :class:`str` " +"to :class:`bytes` using the given text encoding, and :meth:`bytes.decode` " +"can be used to achieve the opposite." msgstr "" msgid "Tuples" @@ -395,8 +396,8 @@ msgid "" "A :class:`bytes` object is an immutable array. The items are 8-bit bytes, " "represented by integers in the range 0 <= x < 256. Bytes literals (like " "``b'abc'``) and the built-in :func:`bytes` constructor can be used to create " -"bytes objects. Also, bytes objects can be decoded to strings via the :meth:" -"`~bytes.decode` method." +"bytes objects. Also, bytes objects can be decoded to strings via " +"the :meth:`~bytes.decode` method." msgstr "" msgid "Mutable sequences" @@ -404,8 +405,8 @@ msgstr "" msgid "" "Mutable sequences can be changed after they are created. The subscription " -"and slicing notations can be used as the target of assignment and :keyword:" -"`del` (delete) statements." +"and slicing notations can be used as the target of assignment " +"and :keyword:`del` (delete) statements." msgstr "" msgid "" @@ -429,8 +430,8 @@ msgid "Byte Arrays" msgstr "" msgid "" -"A bytearray object is a mutable array. They are created by the built-in :" -"func:`bytearray` constructor. Aside from being mutable (and hence " +"A bytearray object is a mutable array. They are created by the built-" +"in :func:`bytearray` constructor. Aside from being mutable (and hence " "unhashable), byte arrays otherwise provide the same interface and " "functionality as immutable :class:`bytes` objects." msgstr "" @@ -462,17 +463,18 @@ msgstr "" msgid "" "These represent a mutable set. They are created by the built-in :func:`set` " -"constructor and can be modified afterwards by several methods, such as :meth:" -"`~set.add`." +"constructor and can be modified afterwards by several methods, such " +"as :meth:`~set.add`." msgstr "" msgid "Frozen sets" msgstr "" msgid "" -"These represent an immutable set. They are created by the built-in :func:" -"`frozenset` constructor. As a frozenset is immutable and :term:`hashable`, " -"it can be used again as an element of another set, or as a dictionary key." +"These represent an immutable set. They are created by the built-" +"in :func:`frozenset` constructor. As a frozenset is immutable " +"and :term:`hashable`, it can be used again as an element of another set, or " +"as a dictionary key." msgstr "" msgid "Mappings" @@ -530,19 +532,19 @@ msgid "Frozen dictionaries" msgstr "" msgid "" -"These represent an immutable dictionary. They are created by the built-in :" -"func:`frozendict` constructor. A frozendict is :term:`hashable` if all of " -"its keys and values are hashable, in which case it can be used as an element " -"of a set, or as a key in another mapping. :class:`!frozendict` is not a " -"subclass of :class:`dict`; it inherits directly from :class:`object`." +"These represent an immutable dictionary. They are created by the built-" +"in :func:`frozendict` constructor. A frozendict is :term:`hashable` if all " +"of its keys and values are hashable, in which case it can be used as an " +"element of a set, or as a key in another mapping. :class:`!frozendict` is " +"not a subclass of :class:`dict`; it inherits directly from :class:`object`." msgstr "" msgid "Callable types" msgstr "" msgid "" -"These are the types to which the function call operation (see section :ref:" -"`calls`) can be applied:" +"These are the types to which the function call operation (see " +"section :ref:`calls`) can be applied:" msgstr "" msgid "User-defined functions" @@ -569,9 +571,9 @@ msgid "" msgstr "" msgid "" -"A reference to the :class:`dictionary ` that holds the function's :ref:" -"`global variables ` -- the global namespace of the module in which " -"the function was defined." +"A reference to the :class:`dictionary ` that holds the " +"function's :ref:`global variables ` -- the global namespace of the " +"module in which the function was defined." msgstr "" msgid "" @@ -595,8 +597,8 @@ msgid "The function's documentation string, or ``None`` if unavailable." msgstr "" msgid "" -"The function's name. See also: :attr:`__name__ attributes `." +"The function's name. See also: :attr:`__name__ attributes " +"`." msgstr "" msgid "" @@ -621,20 +623,20 @@ msgid "" msgstr "" msgid "" -"The namespace supporting arbitrary function attributes. See also: :attr:" -"`__dict__ attributes `." +"The namespace supporting arbitrary function attributes. See " +"also: :attr:`__dict__ attributes `." msgstr "" msgid "" "A :class:`dictionary ` containing annotations of :term:`parameters " "`. The keys of the dictionary are the parameter names, and " -"``'return'`` for the return annotation, if provided. See also: :attr:`object." -"__annotations__`." +"``'return'`` for the return annotation, if provided. See " +"also: :attr:`object.__annotations__`." msgstr "" msgid "" -"Annotations are now :ref:`lazily evaluated `. See :pep:" -"`649`." +"Annotations are now :ref:`lazily evaluated `. " +"See :pep:`649`." msgstr "" msgid "" @@ -643,13 +645,13 @@ msgid "" msgstr "" msgid "" -"A :class:`dictionary ` containing defaults for keyword-only :term:" -"`parameters `." +"A :class:`dictionary ` containing defaults for keyword-" +"only :term:`parameters `." msgstr "" msgid "" -"A :class:`tuple` containing the :ref:`type parameters ` of a :" -"ref:`generic function `." +"A :class:`tuple` containing the :ref:`type parameters ` of " +"a :ref:`generic function `." msgstr "" msgid "" @@ -666,8 +668,8 @@ msgstr "" msgid "" "Additional information about a function's definition can be retrieved from " -"its :ref:`code object ` (accessible via the :attr:`~function." -"__code__` attribute)." +"its :ref:`code object ` (accessible via " +"the :attr:`~function.__code__` attribute)." msgstr "" msgid "Instance methods" @@ -690,14 +692,14 @@ msgid "Refers to the original :ref:`function object `" msgstr "" msgid "" -"The method's documentation (same as :attr:`method.__func__.__doc__ `). A :class:`string ` if the original function had a " +"The method's documentation (same as :attr:`method.__func__.__doc__ " +"`). A :class:`string ` if the original function had a " "docstring, else ``None``." msgstr "" msgid "" -"The name of the method (same as :attr:`method.__func__.__name__ `)" +"The name of the method (same as :attr:`method.__func__.__name__ " +"`)" msgstr "" msgid "" @@ -712,39 +714,40 @@ msgstr "" msgid "" "User-defined method objects may be created when getting an attribute of a " "class (perhaps via an instance of that class), if that attribute is a user-" -"defined :ref:`function object ` or a :class:" -"`classmethod` object." +"defined :ref:`function object ` or " +"a :class:`classmethod` object." msgstr "" msgid "" -"When an instance method object is created by retrieving a user-defined :ref:" -"`function object ` from a class via one of its " -"instances, its :attr:`~method.__self__` attribute is the instance, and the " -"method object is said to be *bound*. The new method's :attr:`~method." -"__func__` attribute is the original function object." +"When an instance method object is created by retrieving a user-" +"defined :ref:`function object ` from a class via one of " +"its instances, its :attr:`~method.__self__` attribute is the instance, and " +"the method object is said to be *bound*. The new " +"method's :attr:`~method.__func__` attribute is the original function object." msgstr "" msgid "" -"When an instance method object is created by retrieving a :class:" -"`classmethod` object from a class or instance, its :attr:`~method.__self__` " -"attribute is the class itself, and its :attr:`~method.__func__` attribute is " -"the function object underlying the class method." +"When an instance method object is created by retrieving " +"a :class:`classmethod` object from a class or instance, " +"its :attr:`~method.__self__` attribute is the class itself, and " +"its :attr:`~method.__func__` attribute is the function object underlying the " +"class method." msgstr "" msgid "" -"When an instance method object is called, the underlying function (:attr:" -"`~method.__func__`) is called, inserting the class instance (:attr:`~method." -"__self__`) in front of the argument list. For instance, when :class:`!C` is " -"a class which contains a definition for a function :meth:`!f`, and ``x`` is " -"an instance of :class:`!C`, calling ``x.f(1)`` is equivalent to calling ``C." -"f(x, 1)``." +"When an instance method object is called, the underlying function " +"(:attr:`~method.__func__`) is called, inserting the class instance " +"(:attr:`~method.__self__`) in front of the argument list. For instance, " +"when :class:`!C` is a class which contains a definition for a " +"function :meth:`!f`, and ``x`` is an instance of :class:`!C`, calling " +"``x.f(1)`` is equivalent to calling ``C.f(x, 1)``." msgstr "" msgid "" "When an instance method object is derived from a :class:`classmethod` " "object, the \"class instance\" stored in :attr:`~method.__self__` will " -"actually be the class itself, so that calling either ``x.f(1)`` or ``C." -"f(1)`` is equivalent to calling ``f(C,1)`` where ``f`` is the underlying " +"actually be the class itself, so that calling either ``x.f(1)`` or " +"``C.f(1)`` is equivalent to calling ``f(C,1)`` where ``f`` is the underlying " "function." msgstr "" @@ -758,15 +761,15 @@ msgid "Generator functions" msgstr "" msgid "" -"A function or method which uses the :keyword:`yield` statement (see section :" -"ref:`yield`) is called a :dfn:`generator function`. Such a function, when " -"called, always returns an :term:`iterator` object which can be used to " -"execute the body of the function: calling the iterator's :meth:`iterator." -"__next__` method will cause the function to execute until it provides a " -"value using the :keyword:`!yield` statement. When the function executes a :" -"keyword:`return` statement or falls off the end, a :exc:`StopIteration` " -"exception is raised and the iterator will have reached the end of the set of " -"values to be returned." +"A function or method which contains a :keyword:`yield` expression (see " +"section :ref:`yieldexpr`) is called a :dfn:`generator function`. Such a " +"function, when called, always returns an :term:`iterator` object which can " +"be used to execute the body of the function: calling the " +"iterator's :meth:`iterator.__next__` method will cause the function to " +"execute until it provides a value using the :keyword:`!yield` expression. " +"When the function executes a :keyword:`return` statement or falls off the " +"end, a :exc:`StopIteration` exception is raised and the iterator will have " +"reached the end of the set of values to be returned." msgstr "" msgid "Coroutine functions" @@ -774,10 +777,10 @@ msgstr "" msgid "" "A function or method which is defined using :keyword:`async def` is called " -"a :dfn:`coroutine function`. Such a function, when called, returns a :term:" -"`coroutine` object. It may contain :keyword:`await` expressions, as well " -"as :keyword:`async with` and :keyword:`async for` statements. See also the :" -"ref:`coroutine-objects` section." +"a :dfn:`coroutine function`. Such a function, when called, returns " +"a :term:`coroutine` object. It may contain :keyword:`await` expressions, as " +"well as :keyword:`async with` and :keyword:`async for` statements. See also " +"the :ref:`coroutine-objects` section." msgstr "" msgid "Asynchronous generator functions" @@ -785,20 +788,20 @@ msgstr "" msgid "" "A function or method which is defined using :keyword:`async def` and which " -"uses the :keyword:`yield` statement is called a :dfn:`asynchronous generator " -"function`. Such a function, when called, returns an :term:`asynchronous " -"iterator` object which can be used in an :keyword:`async for` statement to " -"execute the body of the function." +"contains a :keyword:`yield` expression is called a :dfn:`asynchronous " +"generator function`. Such a function, when called, returns " +"an :term:`asynchronous iterator` object which can be used in " +"an :keyword:`async for` statement to execute the body of the function." msgstr "" msgid "" -"Calling the asynchronous iterator's :meth:`aiterator.__anext__ ` method will return an :term:`awaitable` which when awaited will " -"execute until it provides a value using the :keyword:`yield` expression. " -"When the function executes an empty :keyword:`return` statement or falls off " -"the end, a :exc:`StopAsyncIteration` exception is raised and the " -"asynchronous iterator will have reached the end of the set of values to be " -"yielded." +"Calling the asynchronous iterator's :meth:`aiterator.__anext__ " +"` method will return an :term:`awaitable` which when " +"awaited will execute until it provides a value using the :keyword:`yield` " +"expression. When the function executes an empty :keyword:`return` statement " +"or falls off the end, a :exc:`StopAsyncIteration` exception is raised and " +"the asynchronous iterator will have reached the end of the set of values to " +"be yielded." msgstr "" msgid "Built-in functions" @@ -820,7 +823,9 @@ msgid "" ":attr:`!__name__` is the function's name. See :attr:`function.__name__`." msgstr "" -msgid ":attr:`!__self__` is set to ``None`` (but see the next item)." +msgid "" +":attr:`!__self__` is the module object the function was defined in or " +"``None`` if unavailable." msgstr "" msgid "" @@ -835,10 +840,10 @@ msgid "" "This is really a different disguise of a built-in function, this time " "containing an object passed to the C function as an implicit extra " "argument. An example of a built-in method is ``alist.append()``, assuming " -"*alist* is a list object. In this case, the special read-only attribute :" -"attr:`!__self__` is set to the object denoted by *alist*. (The attribute has " -"the same semantics as it does with :attr:`other instance methods `.)" +"*alist* is a list object. In this case, the special read-only " +"attribute :attr:`!__self__` is set to the object denoted by *alist*. (The " +"attribute has the same semantics as it does with :attr:`other instance " +"methods `.)" msgstr "" msgid "Classes" @@ -847,8 +852,8 @@ msgstr "" msgid "" "Classes are callable. These objects normally act as factories for new " "instances of themselves, but variations are possible for class types that " -"override :meth:`~object.__new__`. The arguments of the call are passed to :" -"meth:`!__new__` and, in the typical case, to :meth:`~object.__init__` to " +"override :meth:`~object.__new__`. The arguments of the call are passed " +"to :meth:`!__new__` and, in the typical case, to :meth:`~object.__init__` to " "initialize the new instance." msgstr "" @@ -856,8 +861,8 @@ msgid "Class Instances" msgstr "" msgid "" -"Instances of arbitrary classes can be made callable by defining a :meth:" -"`~object.__call__` method in their class." +"Instances of arbitrary classes can be made callable by defining " +"a :meth:`~object.__call__` method in their class." msgstr "" msgid "Modules" @@ -865,16 +870,16 @@ msgstr "" msgid "" "Modules are a basic organizational unit of Python code, and are created by " -"the :ref:`import system ` as invoked either by the :keyword:" -"`import` statement, or by calling functions such as :func:`importlib." -"import_module` and built-in :func:`__import__`. A module object has a " -"namespace implemented by a :class:`dictionary ` object (this is the " -"dictionary referenced by the :attr:`~function.__globals__` attribute of " -"functions defined in the module). Attribute references are translated to " -"lookups in this dictionary, e.g., ``m.x`` is equivalent to ``m." -"__dict__[\"x\"]``. A module object does not contain the code object used to " -"initialize the module (since it isn't needed once the initialization is " -"done)." +"the :ref:`import system ` as invoked either by " +"the :keyword:`import` statement, or by calling functions such " +"as :func:`importlib.import_module` and built-in :func:`__import__`. A " +"module object has a namespace implemented by a :class:`dictionary ` " +"object (this is the dictionary referenced by " +"the :attr:`~function.__globals__` attribute of functions defined in the " +"module). Attribute references are translated to lookups in this dictionary, " +"e.g., ``m.x`` is equivalent to ``m.__dict__[\"x\"]``. A module object does " +"not contain the code object used to initialize the module (since it isn't " +"needed once the initialization is done)." msgstr "" msgid "" @@ -930,8 +935,8 @@ msgstr "" msgid "" "This attribute must be set to the fully qualified name of the module. It is " -"expected to match the value of :attr:`module.__spec__.name `." +"expected to match the value of :attr:`module.__spec__.name " +"`." msgstr "" msgid "A record of the module's import-system-related state." @@ -948,9 +953,9 @@ msgstr "" msgid "" "If the module is top-level (that is, not a part of any specific package) " "then the attribute should be set to ``''`` (the empty string). Otherwise, it " -"should be set to the name of the module's package (which can be equal to :" -"attr:`module.__name__` if the module itself is a package). See :pep:`366` " -"for further details." +"should be set to the name of the module's package (which can be equal " +"to :attr:`module.__name__` if the module itself is a package). " +"See :pep:`366` for further details." msgstr "" msgid "" @@ -963,9 +968,9 @@ msgstr "" msgid "" "It is **strongly** recommended that you use :attr:`module.__spec__.parent " -"` instead of :attr:`!module." -"__package__`. :attr:`__package__` is now only used as a fallback if :attr:`!" -"__spec__.parent` is not set, and this fallback path is deprecated." +"` instead of :attr:`!" +"module.__package__`. :attr:`__package__` is now only used as a fallback " +"if :attr:`!__spec__.parent` is not set, and this fallback path is deprecated." msgstr "" msgid "" @@ -975,16 +980,17 @@ msgid "" msgstr "" msgid "" -"The value of :attr:`!__package__` is expected to be the same as :attr:" -"`__spec__.parent `. :attr:" -"`__package__` is now only used as a fallback during import resolution if :" -"attr:`!__spec__.parent` is not defined." +"The value of :attr:`!__package__` is expected to be the same " +"as :attr:`__spec__.parent " +"`. :attr:`__package__` is now only " +"used as a fallback during import resolution if :attr:`!__spec__.parent` is " +"not defined." msgstr "" msgid "" ":exc:`ImportWarning` is raised if an import resolution falls back to :attr:`!" -"__package__` instead of :attr:`__spec__.parent `." +"__package__` instead of :attr:`__spec__.parent " +"`." msgstr "" msgid "" @@ -1009,15 +1015,15 @@ msgstr "" msgid "" ":attr:`!__loader__` defaults to ``None`` for modules created dynamically " -"using the :class:`types.ModuleType` constructor; use :func:`importlib.util." -"module_from_spec` instead to ensure the attribute is set to a :term:`loader` " -"object." +"using the :class:`types.ModuleType` constructor; " +"use :func:`importlib.util.module_from_spec` instead to ensure the attribute " +"is set to a :term:`loader` object." msgstr "" msgid "" "It is **strongly** recommended that you use :attr:`module.__spec__.loader " -"` instead of :attr:`!module." -"__loader__`." +"` instead of :attr:`!" +"module.__loader__`." msgstr "" msgid "" @@ -1035,9 +1041,10 @@ msgid "" msgstr "" msgid "" -"It is **strongly** recommended that you use :attr:`module.__spec__." -"submodule_search_locations ` instead of :attr:`!module.__path__`." +"It is **strongly** recommended that you " +"use :attr:`module.__spec__.submodule_search_locations " +"` instead " +"of :attr:`!module.__path__`." msgstr "" msgid "" @@ -1050,18 +1057,14 @@ msgid "" "from which the module was loaded (if loaded from a file), or the pathname of " "the shared library file for extension modules loaded dynamically from a " "shared library. It might be missing for certain types of modules, such as C " -"modules that are statically linked into the interpreter, and the :ref:" -"`import system ` may opt to leave it unset if it has no " -"semantic meaning (for example, a module loaded from a database)." +"modules that are statically linked into the interpreter, and " +"the :ref:`import system ` may opt to leave it unset if it has " +"no semantic meaning (for example, a module loaded from a database)." msgstr "" msgid "" -"Setting ``__cached__`` on a module while failing to set :attr:`!__spec__." -"cached` is deprecated. In Python 3.15, ``__cached__`` will cease to be set " -"or taken into consideration by the import system or standard library." -msgstr "" - -msgid "``__cached__`` is no longer set." +"The ``__cached__`` attribute is no longer set on modules or taken into " +"consideration by the import system or standard library." msgstr "" msgid "Other writable attributes on module objects" @@ -1073,14 +1076,14 @@ msgid "" msgstr "" msgid "" -"The module's documentation string, or ``None`` if unavailable. See also: :" -"attr:`__doc__ attributes `." +"The module's documentation string, or ``None`` if unavailable. See " +"also: :attr:`__doc__ attributes `." msgstr "" msgid "" "A dictionary containing :term:`variable annotations ` " -"collected during module body execution. For best practices on working with :" -"attr:`!__annotations__`, see :mod:`annotationlib`." +"collected during module body execution. For best practices on working " +"with :attr:`!__annotations__`, see :mod:`annotationlib`." msgstr "" msgid "" @@ -1090,12 +1093,12 @@ msgstr "" msgid "" "A container (an object implementing :meth:`~object.__contains__`) of fully " -"qualified module name strings. When defined at module scope, any regular :" -"keyword:`import` statement in that module whose target module name appears " -"in this container is treated as a :ref:`lazy import `, as if " -"the :keyword:`lazy` keyword had been used. Imports inside functions, class " -"bodies, or :keyword:`try`/:keyword:`except`/:keyword:`finally` blocks are " -"unaffected." +"qualified module name strings. When defined at module scope, any " +"regular :keyword:`import` statement in that module whose target module name " +"appears in this container is treated as a :ref:`lazy import `, " +"as if the :keyword:`lazy` keyword had been used. Imports inside functions, " +"class bodies, or :keyword:`try`/:keyword:`except`/:keyword:`finally` blocks " +"are unaffected." msgstr "" msgid "See :ref:`lazy-modules-compat` for details and examples." @@ -1124,24 +1127,24 @@ msgid "Custom classes" msgstr "" msgid "" -"Custom class types are typically created by class definitions (see section :" -"ref:`class`). A class has a namespace implemented by a dictionary object. " -"Class attribute references are translated to lookups in this dictionary, e." -"g., ``C.x`` is translated to ``C.__dict__[\"x\"]`` (although there are a " -"number of hooks which allow for other means of locating attributes). When " -"the attribute name is not found there, the attribute search continues in the " -"base classes. This search of the base classes uses the C3 method resolution " -"order which behaves correctly even in the presence of 'diamond' inheritance " -"structures where there are multiple inheritance paths leading back to a " -"common ancestor. Additional details on the C3 MRO used by Python can be " -"found at :ref:`python_2.3_mro`." +"Custom class types are typically created by class definitions (see " +"section :ref:`class`). A class has a namespace implemented by a dictionary " +"object. Class attribute references are translated to lookups in this " +"dictionary, e.g., ``C.x`` is translated to ``C.__dict__[\"x\"]`` (although " +"there are a number of hooks which allow for other means of locating " +"attributes). When the attribute name is not found there, the attribute " +"search continues in the base classes. This search of the base classes uses " +"the C3 method resolution order which behaves correctly even in the presence " +"of 'diamond' inheritance structures where there are multiple inheritance " +"paths leading back to a common ancestor. Additional details on the C3 MRO " +"used by Python can be found at :ref:`python_2.3_mro`." msgstr "" msgid "" "When a class attribute reference (for class :class:`!C`, say) would yield a " -"class method object, it is transformed into an instance method object whose :" -"attr:`~method.__self__` attribute is :class:`!C`. When it would yield a :" -"class:`staticmethod` object, it is transformed into the object wrapped by " +"class method object, it is transformed into an instance method object " +"whose :attr:`~method.__self__` attribute is :class:`!C`. When it would yield " +"a :class:`staticmethod` object, it is transformed into the object wrapped by " "the static method object. See section :ref:`descriptors` for another way in " "which attributes retrieved from a class may differ from those actually " "contained in its :attr:`~object.__dict__`." @@ -1161,8 +1164,8 @@ msgid "Special attributes" msgstr "" msgid "" -"The class's name. See also: :attr:`__name__ attributes `." +"The class's name. See also: :attr:`__name__ attributes " +"`." msgstr "" msgid "" @@ -1175,8 +1178,8 @@ msgstr "" msgid "" "A :class:`mapping proxy ` providing a read-only view " -"of the class's namespace. See also: :attr:`__dict__ attributes `." +"of the class's namespace. See also: :attr:`__dict__ attributes " +"`." msgstr "" msgid "" @@ -1187,8 +1190,8 @@ msgstr "" msgid "" "The single base class in the inheritance chain that is responsible for the " -"memory layout of instances. This attribute corresponds to :c:member:" -"`~PyTypeObject.tp_base` at the C level." +"memory layout of instances. This attribute corresponds " +"to :c:member:`~PyTypeObject.tp_base` at the C level." msgstr "" msgid "" @@ -1223,13 +1226,13 @@ msgstr "" msgid "" "The :term:`annotate function` for this class, or ``None`` if the class has " -"no annotations. See also: :attr:`__annotate__ attributes `." +"no annotations. See also: :attr:`__annotate__ attributes " +"`." msgstr "" msgid "" -"A :class:`tuple` containing the :ref:`type parameters ` of a :" -"ref:`generic class `." +"A :class:`tuple` containing the :ref:`type parameters ` of " +"a :ref:`generic class `." msgstr "" msgid "" @@ -1239,8 +1242,8 @@ msgstr "" msgid "" "The line number of the first line of the class definition, including " -"decorators. Setting the :attr:`~type.__module__` attribute removes the :attr:" -"`!__firstlineno__` item from the type's dictionary." +"decorators. Setting the :attr:`~type.__module__` attribute removes " +"the :attr:`!__firstlineno__` item from the type's dictionary." msgstr "" msgid "" @@ -1290,15 +1293,15 @@ msgid "" "\"Classes\". See section :ref:`descriptors` for another way in which " "attributes of a class retrieved via its instances may differ from the " "objects actually stored in the class's :attr:`~object.__dict__`. If no " -"class attribute is found, and the object's class has a :meth:`~object." -"__getattr__` method, that is called to satisfy the lookup." +"class attribute is found, and the object's class has " +"a :meth:`~object.__getattr__` method, that is called to satisfy the lookup." msgstr "" msgid "" "Attribute assignments and deletions update the instance's dictionary, never " -"a class's dictionary. If the class has a :meth:`~object.__setattr__` or :" -"meth:`~object.__delattr__` method, this is called instead of updating the " -"instance dictionary directly." +"a class's dictionary. If the class has a :meth:`~object.__setattr__` " +"or :meth:`~object.__delattr__` method, this is called instead of updating " +"the instance dictionary directly." msgstr "" msgid "" @@ -1321,9 +1324,9 @@ msgstr "" msgid "" "A :term:`file object` represents an open file. Various shortcuts are " "available to create file objects: the :func:`open` built-in function, and " -"also :func:`os.popen`, :func:`os.fdopen`, and the :meth:`~socket.socket." -"makefile` method of socket objects (and perhaps by other functions or " -"methods provided by extension modules)." +"also :func:`os.popen`, :func:`os.fdopen`, and " +"the :meth:`~socket.socket.makefile` method of socket objects (and perhaps by " +"other functions or methods provided by extension modules)." msgstr "" msgid "" @@ -1362,14 +1365,15 @@ msgid "Code objects" msgstr "" msgid "" -"Code objects represent *byte-compiled* executable Python code, or :term:" -"`bytecode`. The difference between a code object and a function object is " -"that the function object contains an explicit reference to the function's " -"globals (the module in which it was defined), while a code object contains " -"no context; also the default argument values are stored in the function " -"object, not in the code object (because they represent values calculated at " -"run-time). Unlike function objects, code objects are immutable and contain " -"no references (directly or indirectly) to mutable objects." +"Code objects represent *byte-compiled* executable Python code, " +"or :term:`bytecode`. The difference between a code object and a function " +"object is that the function object contains an explicit reference to the " +"function's globals (the module in which it was defined), while a code object " +"contains no context; also the default argument values are stored in the " +"function object, not in the code object (because they represent values " +"calculated at run-time). Unlike function objects, code objects are " +"immutable and contain no references (directly or indirectly) to mutable " +"objects." msgstr "" msgid "The function name" @@ -1440,6 +1444,15 @@ msgstr "" msgid "The line number of the first line of the function" msgstr "" +msgid "" +"A :class:`bytes` object containing encoded source location information. The " +"exact format is an implementation detail and may change between Python " +"versions. Use :meth:`~codeobject.co_lines` " +"and :meth:`~codeobject.co_positions` for supported access to line and " +"position information. To create a modified copy of a code object, " +"use :meth:`~codeobject.replace`." +msgstr "" + msgid "The required stack size of the code object" msgstr "" @@ -1452,16 +1465,16 @@ msgid "" "``0x04`` is set if the function uses the ``*arguments`` syntax to accept an " "arbitrary number of positional arguments; bit ``0x08`` is set if the " "function uses the ``**keywords`` syntax to accept arbitrary keyword " -"arguments; bit ``0x20`` is set if the function is a generator. See :ref:" -"`inspect-module-co-flags` for details on the semantics of each flags that " -"might be present." +"arguments; bit ``0x20`` is set if the function is a generator. " +"See :ref:`inspect-module-co-flags` for details on the semantics of each " +"flags that might be present." msgstr "" msgid "" "Future feature declarations (for example, ``from __future__ import " "division``) also use bits in :attr:`~codeobject.co_flags` to indicate " -"whether a code object was compiled with a particular feature enabled. See :" -"attr:`~__future__._Feature.compiler_flag`." +"whether a code object was compiled with a particular feature enabled. " +"See :attr:`~__future__._Feature.compiler_flag`." msgstr "" msgid "" @@ -1469,10 +1482,10 @@ msgid "" msgstr "" msgid "" -"If a code object represents a function and has a docstring, the :data:" -"`~inspect.CO_HAS_DOCSTRING` bit is set in :attr:`~codeobject.co_flags` and " -"the first item in :attr:`~codeobject.co_consts` is the docstring of the " -"function." +"If a code object represents a function and has a docstring, " +"the :data:`~inspect.CO_HAS_DOCSTRING` bit is set " +"in :attr:`~codeobject.co_flags` and the first item " +"in :attr:`~codeobject.co_consts` is the docstring of the function." msgstr "" msgid "Methods on code objects" @@ -1524,9 +1537,9 @@ msgid "" msgstr "" msgid "" -"Returns an iterator that yields information about successive ranges of :term:" -"`bytecode`\\s. Each item yielded is a ``(start, end, lineno)`` :class:" -"`tuple`:" +"Returns an iterator that yields information about successive ranges " +"of :term:`bytecode`\\s. Each item yielded is a ``(start, end, " +"lineno)`` :class:`tuple`:" msgstr "" msgid "" @@ -1540,9 +1553,9 @@ msgid "" msgstr "" msgid "" -"``lineno`` is an :class:`int` representing the line number of the :term:" -"`bytecode` range, or ``None`` if the bytecodes in the given range have no " -"line number" +"``lineno`` is an :class:`int` representing the line number of " +"the :term:`bytecode` range, or ``None`` if the bytecodes in the given range " +"have no line number" msgstr "" msgid "The items yielded will have the following properties:" @@ -1561,8 +1574,8 @@ msgid "No range will be backwards: ``end >= start`` for all triples." msgstr "" msgid "" -"The last :class:`tuple` yielded will have ``end`` equal to the size of the :" -"term:`bytecode`." +"The last :class:`tuple` yielded will have ``end`` equal to the size of " +"the :term:`bytecode`." msgstr "" msgid "" @@ -1601,8 +1614,8 @@ msgstr "" msgid "" "The :ref:`code object ` being executed in this frame. " -"Accessing this attribute raises an :ref:`auditing event ` ``object." -"__getattr__`` with arguments ``obj`` and ``\"f_code\"``." +"Accessing this attribute raises an :ref:`auditing event ` " +"``object.__getattr__`` with arguments ``obj`` and ``\"f_code\"``." msgstr "" msgid "" @@ -1624,8 +1637,8 @@ msgid "" msgstr "" msgid "" -"The \"precise instruction\" of the frame object (this is an index into the :" -"term:`bytecode` string of the :ref:`code object `)" +"The \"precise instruction\" of the frame object (this is an index into " +"the :term:`bytecode` string of the :ref:`code object `)" msgstr "" msgid "" @@ -1697,17 +1710,17 @@ msgid "" "For implicitly created tracebacks, when the search for an exception handler " "unwinds the execution stack, at each unwound level a traceback object is " "inserted in front of the current traceback. When an exception handler is " -"entered, the stack trace is made available to the program. (See section :ref:" -"`try`.) It is accessible as the third item of the tuple returned by :func:" -"`sys.exc_info`, and as the :attr:`~BaseException.__traceback__` attribute of " -"the caught exception." +"entered, the stack trace is made available to the program. (See " +"section :ref:`try`.) It is accessible as the third item of the tuple " +"returned by :func:`sys.exc_info`, and as " +"the :attr:`~BaseException.__traceback__` attribute of the caught exception." msgstr "" msgid "" "When the program contains no suitable handler, the stack trace is written " "(nicely formatted) to the standard error stream; if the interpreter is " -"interactive, it is also made available to the user as :data:`sys." -"last_traceback`." +"interactive, it is also made available to the user " +"as :data:`sys.last_traceback`." msgstr "" msgid "" @@ -1721,8 +1734,8 @@ msgid "" msgstr "" msgid "" -"Accessing this attribute raises an :ref:`auditing event ` ``object." -"__getattr__`` with arguments ``obj`` and ``\"tb_frame\"``." +"Accessing this attribute raises an :ref:`auditing event ` " +"``object.__getattr__`` with arguments ``obj`` and ``\"tb_frame\"``." msgstr "" msgid "Gives the line number where the exception occurred" @@ -1762,9 +1775,9 @@ msgid "" msgstr "" msgid "" -"Special read-only attributes: :attr:`~slice.start` is the lower bound; :attr:" -"`~slice.stop` is the upper bound; :attr:`~slice.step` is the step value; " -"each is ``None`` if omitted. These attributes can have any type." +"Special read-only attributes: :attr:`~slice.start` is the lower " +"bound; :attr:`~slice.stop` is the upper bound; :attr:`~slice.step` is the " +"step value; each is ``None`` if omitted. These attributes can have any type." msgstr "" msgid "Slice objects support one method:" @@ -1800,8 +1813,8 @@ msgid "" "another object that alters the way in which that object is retrieved from " "classes and class instances. The behaviour of class method objects upon such " "retrieval is described above, under :ref:`\"instance methods\" `. Class method objects are created by the built-in :func:" -"`classmethod` constructor." +"methods>`. Class method objects are created by the built-" +"in :func:`classmethod` constructor." msgstr "" msgid "Special method names" @@ -1812,20 +1825,20 @@ msgid "" "(such as arithmetic operations or subscripting and slicing) by defining " "methods with special names. This is Python's approach to :dfn:`operator " "overloading`, allowing classes to define their own behavior with respect to " -"language operators. For instance, if a class defines a method named :meth:" -"`~object.__getitem__`, and ``x`` is an instance of this class, then ``x[i]`` " -"is roughly equivalent to ``type(x).__getitem__(x, i)``. Except where " -"mentioned, attempts to execute an operation raise an exception when no " -"appropriate method is defined (typically :exc:`AttributeError` or :exc:" -"`TypeError`)." +"language operators. For instance, if a class defines a method " +"named :meth:`~object.__getitem__`, and ``x`` is an instance of this class, " +"then ``x[i]`` is roughly equivalent to ``type(x).__getitem__(x, i)``. " +"Except where mentioned, attempts to execute an operation raise an exception " +"when no appropriate method is defined (typically :exc:`AttributeError` " +"or :exc:`TypeError`)." msgstr "" msgid "" "Setting a special method to ``None`` indicates that the corresponding " -"operation is not available. For example, if a class sets :meth:`~object." -"__iter__` to ``None``, the class is not iterable, so calling :func:`iter` on " -"its instances will raise a :exc:`TypeError` (without falling back to :meth:" -"`~object.__getitem__`). [#]_" +"operation is not available. For example, if a class " +"sets :meth:`~object.__iter__` to ``None``, the class is not iterable, so " +"calling :func:`iter` on its instances will raise a :exc:`TypeError` (without " +"falling back to :meth:`~object.__getitem__`). [#]_" msgstr "" msgid "" @@ -1894,10 +1907,10 @@ msgstr "" msgid "" "Called when the instance is about to be destroyed. This is also called a " -"finalizer or (improperly) a destructor. If a base class has a :meth:" -"`__del__` method, the derived class's :meth:`__del__` method, if any, must " -"explicitly call it to ensure proper deletion of the base class part of the " -"instance." +"finalizer or (improperly) a destructor. If a base class has " +"a :meth:`__del__` method, the derived class's :meth:`__del__` method, if " +"any, must explicitly call it to ensure proper deletion of the base class " +"part of the instance." msgstr "" msgid "" @@ -1945,8 +1958,8 @@ msgid "" ":meth:`__del__` can be invoked when arbitrary code is being executed, " "including from any arbitrary thread. If :meth:`__del__` needs to take a " "lock or invoke any other blocking resource, it may deadlock as the resource " -"may already be taken by the code that gets interrupted to execute :meth:" -"`__del__`." +"may already be taken by the code that gets interrupted to " +"execute :meth:`__del__`." msgstr "" msgid "" @@ -1965,9 +1978,10 @@ msgid "" "like a valid Python expression that could be used to recreate an object with " "the same value (given an appropriate environment). If this is not possible, " "a string of the form ``<...some useful description...>`` should be returned. " -"The return value must be a string object. If a class defines :meth:" -"`__repr__` but not :meth:`__str__`, then :meth:`__repr__` is also used when " -"an \"informal\" string representation of instances of that class is required." +"The return value must be a string object. If a class " +"defines :meth:`__repr__` but not :meth:`__str__`, then :meth:`__repr__` is " +"also used when an \"informal\" string representation of instances of that " +"class is required." msgstr "" msgid "" @@ -1996,8 +2010,8 @@ msgstr "" msgid "" "Called by :ref:`bytes ` to compute a byte-string representation " -"of an object. This should return a :class:`bytes` object. The :class:" -"`object` class itself does not provide this method." +"of an object. This should return a :class:`bytes` object. " +"The :class:`object` class itself does not provide this method." msgstr "" msgid "" @@ -2035,10 +2049,10 @@ msgstr "" msgid "" "These are the so-called \"rich comparison\" methods. The correspondence " -"between operator symbols and method names is as follows: ``xy`` calls ``x.__gt__(y)``, and ``x>=y`` " -"calls ``x.__ge__(y)``." +"between operator symbols and method names is as follows: ``xy`` calls " +"``x.__gt__(y)``, and ``x>=y`` calls ``x.__ge__(y)``." msgstr "" msgid "" @@ -2052,56 +2066,58 @@ msgid "" msgstr "" msgid "" -"By default, ``object`` implements :meth:`__eq__` by using ``is``, returning :" -"data:`NotImplemented` in the case of a false comparison: ``True if x is y " -"else NotImplemented``. For :meth:`__ne__`, by default it delegates to :meth:" -"`__eq__` and inverts the result unless it is :data:`!NotImplemented`. There " -"are no other implied relationships among the comparison operators or default " -"implementations; for example, the truth of ``(x` such as :class:`int`, :" -"class:`bytes`, and :class:`type`, except :class:`tuple`." +"length\" built-in type ` such " +"as :class:`int`, :class:`bytes`, and :class:`type`, except :class:`tuple`." msgstr "" msgid "Any non-string :term:`iterable` may be assigned to *__slots__*." @@ -2581,8 +2598,8 @@ msgstr "" msgid "" "If a :class:`dictionary ` is used to assign *__slots__*, the " "dictionary keys will be used as the slot names. The values of the dictionary " -"can be used to provide per-attribute docstrings that will be recognised by :" -"func:`inspect.getdoc` and displayed in the output of :func:`help`." +"can be used to provide per-attribute docstrings that will be recognised " +"by :func:`inspect.getdoc` and displayed in the output of :func:`help`." msgstr "" msgid "" @@ -2612,12 +2629,13 @@ msgid "Customizing class creation" msgstr "" msgid "" -"Whenever a class inherits from another class, :meth:`~object." -"__init_subclass__` is called on the parent class. This way, it is possible " -"to write classes which change the behavior of subclasses. This is closely " -"related to class decorators, but where class decorators only affect the " -"specific class they're applied to, ``__init_subclass__`` solely applies to " -"future subclasses of the class defining the method." +"Whenever a class inherits from another " +"class, :meth:`~object.__init_subclass__` is called on the parent class. This " +"way, it is possible to write classes which change the behavior of " +"subclasses. This is closely related to class decorators, but where class " +"decorators only affect the specific class they're applied to, " +"``__init_subclass__`` solely applies to future subclasses of the class " +"defining the method." msgstr "" msgid "" @@ -2671,9 +2689,9 @@ msgid "" msgstr "" msgid "" -"If the class variable is assigned after the class is created, :meth:" -"`__set_name__` will not be called automatically. If needed, :meth:" -"`__set_name__` can be called directly::" +"If the class variable is assigned after the class is " +"created, :meth:`__set_name__` will not be called automatically. If " +"needed, :meth:`__set_name__` can be called directly::" msgstr "" msgid "" @@ -2742,14 +2760,14 @@ msgid "Resolving MRO entries" msgstr "" msgid "" -"If a base that appears in a class definition is not an instance of :class:" -"`type`, then an :meth:`!__mro_entries__` method is searched on the base. If " -"an :meth:`!__mro_entries__` method is found, the base is substituted with " -"the result of a call to :meth:`!__mro_entries__` when creating the class. " -"The method is called with the original bases tuple passed to the *bases* " -"parameter, and must return a tuple of classes that will be used instead of " -"the base. The returned tuple may be empty: in these cases, the original base " -"is ignored." +"If a base that appears in a class definition is not an instance " +"of :class:`type`, then an :meth:`!__mro_entries__` method is searched on the " +"base. If an :meth:`!__mro_entries__` method is found, the base is " +"substituted with the result of a call to :meth:`!__mro_entries__` when " +"creating the class. The method is called with the original bases tuple " +"passed to the *bases* parameter, and must return a tuple of classes that " +"will be used instead of the base. The returned tuple may be empty: in these " +"cases, the original base is ignored." msgstr "" msgid ":func:`types.resolve_bases`" @@ -2762,8 +2780,8 @@ msgid ":func:`types.get_original_bases`" msgstr "" msgid "" -"Retrieve a class's \"original bases\" prior to modifications by :meth:" -"`~object.__mro_entries__`." +"Retrieve a class's \"original bases\" prior to modifications " +"by :meth:`~object.__mro_entries__`." msgstr "" msgid ":pep:`560`" @@ -2784,8 +2802,8 @@ msgid "" msgstr "" msgid "" -"if an explicit metaclass is given and it is *not* an instance of :func:" -"`type`, then it is used directly as the metaclass;" +"if an explicit metaclass is given and it is *not* an instance " +"of :func:`type`, then it is used directly as the metaclass;" msgstr "" msgid "" @@ -2859,10 +2877,10 @@ msgid "" "This class object is the one that will be referenced by the zero-argument " "form of :func:`super`. ``__class__`` is an implicit closure reference " "created by the compiler if any methods in a class body refer to either " -"``__class__`` or ``super``. This allows the zero argument form of :func:" -"`super` to correctly identify the class being defined based on lexical " -"scoping, while the class or instance that was used to make the current call " -"is identified based on the first argument passed to the method." +"``__class__`` or ``super``. This allows the zero argument form " +"of :func:`super` to correctly identify the class being defined based on " +"lexical scoping, while the class or instance that was used to make the " +"current call is identified based on the first argument passed to the method." msgstr "" msgid "" @@ -2927,8 +2945,8 @@ msgid "Customizing instance and subclass checks" msgstr "" msgid "" -"The following methods are used to override the default behavior of the :func:" -"`isinstance` and :func:`issubclass` built-in functions." +"The following methods are used to override the default behavior of " +"the :func:`isinstance` and :func:`issubclass` built-in functions." msgstr "" msgid "" @@ -2961,11 +2979,11 @@ msgid ":pep:`3119` - Introducing Abstract Base Classes" msgstr "" msgid "" -"Includes the specification for customizing :func:`isinstance` and :func:" -"`issubclass` behavior through :meth:`~type.__instancecheck__` and :meth:" -"`~type.__subclasscheck__`, with motivation for this functionality in the " -"context of adding Abstract Base Classes (see the :mod:`abc` module) to the " -"language." +"Includes the specification for customizing :func:`isinstance` " +"and :func:`issubclass` behavior through :meth:`~type.__instancecheck__` " +"and :meth:`~type.__subclasscheck__`, with motivation for this functionality " +"in the context of adding Abstract Base Classes (see the :mod:`abc` module) " +"to the language." msgstr "" msgid "Emulating generic types" @@ -2991,8 +3009,8 @@ msgid "Documentation for objects representing parameterized generic classes" msgstr "" msgid "" -":ref:`Generics`, :ref:`user-defined generics` and :" -"class:`typing.Generic`" +":ref:`Generics`, :ref:`user-defined generics` " +"and :class:`typing.Generic`" msgstr "" msgid "" @@ -3012,8 +3030,8 @@ msgstr "" msgid "" "When defined on a class, ``__class_getitem__()`` is automatically a class " -"method. As such, there is no need for it to be decorated with :deco:" -"`classmethod` when it is defined." +"method. As such, there is no need for it to be decorated " +"with :deco:`classmethod` when it is defined." msgstr "" msgid "The purpose of *__class_getitem__*" @@ -3028,9 +3046,10 @@ msgstr "" msgid "" "To implement custom generic classes that can be parameterized at runtime and " "understood by static type-checkers, users should either inherit from a " -"standard library class that already implements :meth:`~object." -"__class_getitem__`, or inherit from :class:`typing.Generic`, which has its " -"own implementation of ``__class_getitem__()``." +"standard library class that already " +"implements :meth:`~object.__class_getitem__`, or inherit " +"from :class:`typing.Generic`, which has its own implementation of " +"``__class_getitem__()``." msgstr "" msgid "" @@ -3054,8 +3073,9 @@ msgstr "" msgid "" "Presented with the :term:`expression` ``obj[x]``, the Python interpreter " -"follows something like the following process to decide whether :meth:" -"`~object.__getitem__` or :meth:`~object.__class_getitem__` should be called::" +"follows something like the following process to decide " +"whether :meth:`~object.__getitem__` or :meth:`~object.__class_getitem__` " +"should be called::" msgstr "" msgid "" @@ -3086,10 +3106,10 @@ msgstr "" msgid "" "In Python, all classes are themselves instances of other classes. The class " "of a class is known as that class's :term:`metaclass`, and most classes have " -"the :class:`type` class as their metaclass. :class:`type` does not define :" -"meth:`~object.__getitem__`, meaning that expressions such as ``list[int]``, " -"``dict[str, float]`` and ``tuple[str, bytes]`` all result in :meth:`~object." -"__class_getitem__` being called::" +"the :class:`type` class as their metaclass. :class:`type` does not " +"define :meth:`~object.__getitem__`, meaning that expressions such as " +"``list[int]``, ``dict[str, float]`` and ``tuple[str, bytes]`` all result " +"in :meth:`~object.__class_getitem__` being called::" msgstr "" msgid "" @@ -3107,9 +3127,10 @@ msgid "" msgstr "" msgid "" -"However, if a class has a custom metaclass that defines :meth:`~object." -"__getitem__`, subscribing the class may result in different behaviour. An " -"example of this can be found in the :mod:`enum` module::" +"However, if a class has a custom metaclass that " +"defines :meth:`~object.__getitem__`, subscribing the class may result in " +"different behaviour. An example of this can be found in the :mod:`enum` " +"module::" msgstr "" msgid "" @@ -3135,9 +3156,9 @@ msgid ":pep:`560` - Core Support for typing module and generic types" msgstr "" msgid "" -"Introducing :meth:`~object.__class_getitem__`, and outlining when a :ref:" -"`subscription` results in ``__class_getitem__()`` being " -"called instead of :meth:`~object.__getitem__`" +"Introducing :meth:`~object.__class_getitem__`, and outlining when " +"a :ref:`subscription` results in ``__class_getitem__()`` " +"being called instead of :meth:`~object.__getitem__`" msgstr "" msgid "Emulating callable objects" @@ -3155,45 +3176,44 @@ msgstr "" msgid "" "The following methods can be defined to implement container objects. None of " "them are provided by the :class:`object` class itself. Containers usually " -"are :term:`sequences ` (such as :class:`lists ` or :class:" -"`tuples `) or :term:`mappings ` (like :term:`dictionaries " -"`), but can represent other containers as well. The first set " -"of methods is used either to emulate a sequence or to emulate a mapping; the " -"difference is that for a sequence, the allowable keys should be the integers " -"*k* for which ``0 <= k < N`` where *N* is the length of the sequence, or :" -"class:`slice` objects, which define a range of items. It is also " -"recommended that mappings provide the methods :meth:`!keys`, :meth:`!" -"values`, :meth:`!items`, :meth:`!get`, :meth:`!clear`, :meth:`!setdefault`, :" -"meth:`!pop`, :meth:`!popitem`, :meth:`!copy`, and :meth:`!update` behaving " -"similar to those for Python's standard :class:`dictionary ` objects. " -"The :mod:`collections.abc` module provides a :class:`~collections.abc." -"MutableMapping` :term:`abstract base class` to help create those methods " -"from a base set of :meth:`~object.__getitem__`, :meth:`~object." -"__setitem__`, :meth:`~object.__delitem__`, and :meth:`!keys`." -msgstr "" - -msgid "" -"Mutable sequences should provide methods :meth:`~sequence.append`, :meth:" -"`~sequence.clear`, :meth:`~sequence.count`, :meth:`~sequence.extend`, :meth:" -"`~sequence.index`, :meth:`~sequence.insert`, :meth:`~sequence.pop`, :meth:" -"`~sequence.remove`, and :meth:`~sequence.reverse`, like Python standard :" -"class:`list` objects. Finally, sequence types should implement addition " -"(meaning concatenation) and multiplication (meaning repetition) by defining " -"the methods :meth:`~object.__add__`, :meth:`~object.__radd__`, :meth:" -"`~object.__iadd__`, :meth:`~object.__mul__`, :meth:`~object.__rmul__` and :" -"meth:`~object.__imul__` described below; they should not define other " +"are :term:`sequences ` (such as :class:`lists ` " +"or :class:`tuples `) or :term:`mappings ` " +"(like :term:`dictionaries `), but can represent other containers " +"as well. The first set of methods is used either to emulate a sequence or " +"to emulate a mapping; the difference is that for a sequence, the allowable " +"keys should be the integers *k* for which ``0 <= k < N`` where *N* is the " +"length of the sequence, or :class:`slice` objects, which define a range of " +"items. It is also recommended that mappings provide the methods :meth:`!" +"keys`, :meth:`!values`, :meth:`!items`, :meth:`!get`, :meth:`!" +"clear`, :meth:`!setdefault`, :meth:`!pop`, :meth:`!popitem`, :meth:`!copy`, " +"and :meth:`!update` behaving similar to those for Python's " +"standard :class:`dictionary ` objects. The :mod:`collections.abc` " +"module provides a :class:`~collections.abc.MutableMapping` :term:`abstract " +"base class` to help create those methods from a base set " +"of :meth:`~object.__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__delitem__`, " +"and :meth:`!keys`." +msgstr "" + +msgid "" +"Mutable sequences should provide " +"methods :meth:`~sequence.append`, :meth:`~sequence.clear`, :meth:`~sequence.count`, :meth:`~sequence.extend`, :meth:`~sequence.index`, :meth:`~sequence.insert`, :meth:`~sequence.pop`, :meth:`~sequence.remove`, " +"and :meth:`~sequence.reverse`, like Python standard :class:`list` objects. " +"Finally, sequence types should implement addition (meaning concatenation) " +"and multiplication (meaning repetition) by defining the " +"methods :meth:`~object.__add__`, :meth:`~object.__radd__`, :meth:`~object.__iadd__`, :meth:`~object.__mul__`, :meth:`~object.__rmul__` " +"and :meth:`~object.__imul__` described below; they should not define other " "numerical operators." msgstr "" msgid "" -"It is recommended that both mappings and sequences implement the :meth:" -"`~object.__contains__` method to allow efficient use of the ``in`` operator; " -"for mappings, ``in`` should search the mapping's keys; for sequences, it " -"should search through the values. It is further recommended that both " -"mappings and sequences implement the :meth:`~object.__iter__` method to " -"allow efficient iteration through the container; for mappings, :meth:`!" -"__iter__` should iterate through the object's keys; for sequences, it should " -"iterate through the values." +"It is recommended that both mappings and sequences implement " +"the :meth:`~object.__contains__` method to allow efficient use of the ``in`` " +"operator; for mappings, ``in`` should search the mapping's keys; for " +"sequences, it should search through the values. It is further recommended " +"that both mappings and sequences implement the :meth:`~object.__iter__` " +"method to allow efficient iteration through the container; for " +"mappings, :meth:`!__iter__` should iterate through the object's keys; for " +"sequences, it should iterate through the values." msgstr "" msgid "" @@ -3205,48 +3225,49 @@ msgstr "" msgid "" "In CPython, the length is required to be at most :data:`sys.maxsize`. If the " -"length is larger than :data:`!sys.maxsize` some features (such as :func:" -"`len`) may raise :exc:`OverflowError`. To prevent raising :exc:`!" -"OverflowError` by truth value testing, an object must define a :meth:" -"`~object.__bool__` method." +"length is larger than :data:`!sys.maxsize` some features (such " +"as :func:`len`) may raise :exc:`OverflowError`. To prevent raising :exc:`!" +"OverflowError` by truth value testing, an object must define " +"a :meth:`~object.__bool__` method." msgstr "" msgid "" "Called to implement :func:`operator.length_hint`. Should return an estimated " "length for the object (which may be greater or less than the actual length). " -"The length must be an integer ``>=`` 0. The return value may also be :data:" -"`NotImplemented`, which is treated the same as if the ``__length_hint__`` " -"method didn't exist at all. This method is purely an optimization and is " -"never required for correctness." +"The length must be an integer ``>=`` 0. The return value may also " +"be :data:`NotImplemented`, which is treated the same as if the " +"``__length_hint__`` method didn't exist at all. This method is purely an " +"optimization and is never required for correctness." msgstr "" msgid "" -"Called to implement *subscription*, that is, ``self[subscript]``. See :ref:" -"`subscriptions` for details on the syntax." +"Called to implement *subscription*, that is, ``self[subscript]``. " +"See :ref:`subscriptions` for details on the syntax." msgstr "" msgid "" -"There are two types of built-in objects that support subscription via :meth:" -"`!__getitem__`:" +"There are two types of built-in objects that support subscription " +"via :meth:`!__getitem__`:" msgstr "" msgid "" "**sequences**, where *subscript* (also called :term:`index`) should be an " "integer or a :class:`slice` object. See the :ref:`sequence documentation " -"` for the expected behavior, including handling :class:" -"`slice` objects and negative indices." +"` for the expected behavior, including " +"handling :class:`slice` objects and negative indices." msgstr "" msgid "" -"**mappings**, where *subscript* is also called the :term:`key`. See :ref:" -"`mapping documentation ` for the expected behavior." +"**mappings**, where *subscript* is also called the :term:`key`. " +"See :ref:`mapping documentation ` for the expected " +"behavior." msgstr "" msgid "" "If *subscript* is of an inappropriate type, :meth:`!__getitem__` should " "raise :exc:`TypeError`. If *subscript* has an inappropriate value, :meth:`!" -"__getitem__` should raise an :exc:`LookupError` or one of its subclasses (:" -"exc:`IndexError` for sequences; :exc:`KeyError` for mappings)." +"__getitem__` should raise an :exc:`LookupError` or one of its subclasses " +"(:exc:`IndexError` for sequences; :exc:`KeyError` for mappings)." msgstr "" msgid "" @@ -3279,19 +3300,20 @@ msgid "" msgstr "" msgid "" -"Called to implement assignment to ``self[key]``. Same note as for :meth:" -"`__getitem__`. This should only be implemented for mappings if the objects " -"support changes to the values for keys, or if new keys can be added, or for " -"sequences if elements can be replaced. The same exceptions should be raised " -"for improper *key* values as for the :meth:`__getitem__` method." +"Called to implement assignment to ``self[key]``. Same note as " +"for :meth:`__getitem__`. This should only be implemented for mappings if " +"the objects support changes to the values for keys, or if new keys can be " +"added, or for sequences if elements can be replaced. The same exceptions " +"should be raised for improper *key* values as for the :meth:`__getitem__` " +"method." msgstr "" msgid "" -"Called to implement deletion of ``self[key]``. Same note as for :meth:" -"`__getitem__`. This should only be implemented for mappings if the objects " -"support removal of keys, or for sequences if elements can be removed from " -"the sequence. The same exceptions should be raised for improper *key* " -"values as for the :meth:`__getitem__` method." +"Called to implement deletion of ``self[key]``. Same note as " +"for :meth:`__getitem__`. This should only be implemented for mappings if " +"the objects support removal of keys, or for sequences if elements can be " +"removed from the sequence. The same exceptions should be raised for " +"improper *key* values as for the :meth:`__getitem__` method." msgstr "" msgid "" @@ -3314,10 +3336,10 @@ msgstr "" msgid "" "If the :meth:`__reversed__` method is not provided, the :func:`reversed` " -"built-in will fall back to using the sequence protocol (:meth:`__len__` and :" -"meth:`__getitem__`). Objects that support the sequence protocol should only " -"provide :meth:`__reversed__` if they can provide an implementation that is " -"more efficient than the one provided by :func:`reversed`." +"built-in will fall back to using the sequence protocol (:meth:`__len__` " +"and :meth:`__getitem__`). Objects that support the sequence protocol should " +"only provide :meth:`__reversed__` if they can provide an implementation that " +"is more efficient than the one provided by :func:`reversed`." msgstr "" msgid "" @@ -3352,15 +3374,15 @@ msgstr "" msgid "" "These methods are called to implement the binary arithmetic operations " -"(``+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:" -"`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|``). For instance, to " -"evaluate the expression ``x + y``, where *x* is an instance of a class that " -"has an :meth:`__add__` method, ``type(x).__add__(x, y)`` is called. The :" -"meth:`__divmod__` method should be the equivalent to using :meth:" -"`__floordiv__` and :meth:`__mod__`; it should not be related to :meth:" -"`__truediv__`. Note that :meth:`__pow__` should be defined to accept an " -"optional third argument if the three-argument version of the built-in :func:" -"`pow` function is to be supported." +"(``+``, ``-``, ``*``, ``@``, ``/``, ``//``, " +"``%``, :func:`divmod`, :func:`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|" +"``). For instance, to evaluate the expression ``x + y``, where *x* is an " +"instance of a class that has an :meth:`__add__` method, ``type(x).__add__(x, " +"y)`` is called. The :meth:`__divmod__` method should be the equivalent to " +"using :meth:`__floordiv__` and :meth:`__mod__`; it should not be related " +"to :meth:`__truediv__`. Note that :meth:`__pow__` should be defined to " +"accept an optional third argument if the three-argument version of the built-" +"in :func:`pow` function is to be supported." msgstr "" msgid "" @@ -3370,15 +3392,16 @@ msgstr "" msgid "" "These methods are called to implement the binary arithmetic operations " -"(``+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:" -"`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|``) with reflected (swapped) " -"operands. These functions are only called if the operands are of different " -"types, when the left operand does not support the corresponding operation " -"[#]_, or the right operand's class is derived from the left operand's class. " -"[#]_ For instance, to evaluate the expression ``x - y``, where *y* is an " -"instance of a class that has an :meth:`__rsub__` method, ``type(y)." -"__rsub__(y, x)`` is called if ``type(x).__sub__(x, y)`` returns :data:" -"`NotImplemented` or ``type(y)`` is a subclass of ``type(x)``. [#]_" +"(``+``, ``-``, ``*``, ``@``, ``/``, ``//``, " +"``%``, :func:`divmod`, :func:`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|" +"``) with reflected (swapped) operands. These functions are only called if " +"the operands are of different types, when the left operand does not support " +"the corresponding operation [#]_, or the right operand's class is derived " +"from the left operand's class. [#]_ For instance, to evaluate the expression " +"``x - y``, where *y* is an instance of a class that has an :meth:`__rsub__` " +"method, ``type(y).__rsub__(y, x)`` is called if ``type(x).__sub__(x, y)`` " +"returns :data:`NotImplemented` or ``type(y)`` is a subclass of ``type(x)``. " +"[#]_" msgstr "" msgid "" @@ -3409,23 +3432,23 @@ msgid "" "but does not have to be, *self*). If a specific method is not defined, or " "if that method returns :data:`NotImplemented`, the augmented assignment " "falls back to the normal methods. For instance, if *x* is an instance of a " -"class with an :meth:`__iadd__` method, ``x += y`` is equivalent to ``x = x." -"__iadd__(y)`` . If :meth:`__iadd__` does not exist, or if ``x.__iadd__(y)`` " -"returns :data:`!NotImplemented`, ``x.__add__(y)`` and ``y.__radd__(x)`` are " -"considered, as with the evaluation of ``x + y``. In certain situations, " -"augmented assignment can result in unexpected errors (see :ref:`faq-" -"augmented-assignment-tuple-error`), but this behavior is in fact part of the " -"data model." +"class with an :meth:`__iadd__` method, ``x += y`` is equivalent to ``x = " +"x.__iadd__(y)`` . If :meth:`__iadd__` does not exist, or if " +"``x.__iadd__(y)`` returns :data:`!NotImplemented`, ``x.__add__(y)`` and " +"``y.__radd__(x)`` are considered, as with the evaluation of ``x + y``. In " +"certain situations, augmented assignment can result in unexpected errors " +"(see :ref:`faq-augmented-assignment-tuple-error`), but this behavior is in " +"fact part of the data model." msgstr "" msgid "" -"Called to implement the unary arithmetic operations (``-``, ``+``, :func:" -"`abs` and ``~``)." +"Called to implement the unary arithmetic operations (``-``, " +"``+``, :func:`abs` and ``~``)." msgstr "" msgid "" -"Called to implement the built-in functions :func:`complex`, :func:`int` and :" -"func:`float`. Should return a value of the appropriate type." +"Called to implement the built-in functions :func:`complex`, :func:`int` " +"and :func:`float`. Should return a value of the appropriate type." msgstr "" msgid "" @@ -3532,8 +3555,8 @@ msgid "" "\"right\")`` that means that ``case MyClass(x, y)`` is equivalent to ``case " "MyClass(left=x, center=y)``. Note that the number of arguments in the " "pattern must be smaller than or equal to the number of elements in " -"*__match_args__*; if it is larger, the pattern match attempt will raise a :" -"exc:`TypeError`." +"*__match_args__*; if it is larger, the pattern match attempt will raise " +"a :exc:`TypeError`." msgstr "" msgid ":pep:`634` - Structural Pattern Matching" @@ -3558,12 +3581,12 @@ msgid "" msgstr "" msgid "" -"Called when a buffer is requested from *self* (for example, by the :class:" -"`memoryview` constructor). The *flags* argument is an integer representing " -"the kind of buffer requested, affecting for example whether the returned " -"buffer is read-only or writable. :class:`inspect.BufferFlags` provides a " -"convenient way to interpret the flags. The method must return a :class:" -"`memoryview` object." +"Called when a buffer is requested from *self* (for example, by " +"the :class:`memoryview` constructor). The *flags* argument is an integer " +"representing the kind of buffer requested, affecting for example whether the " +"returned buffer is read-only or writable. :class:`inspect.BufferFlags` " +"provides a convenient way to interpret the flags. The method must return " +"a :class:`memoryview` object." msgstr "" msgid "" @@ -3571,15 +3594,15 @@ msgid "" "implementations must manage any internal export counter using atomic " "operations. The method must be safe to call concurrently from multiple " "threads, and the returned buffer's underlying data must remain valid until " -"the corresponding :meth:`~object.__release_buffer__` call completes. See :" -"ref:`thread-safety-memoryview` for details." +"the corresponding :meth:`~object.__release_buffer__` call completes. " +"See :ref:`thread-safety-memoryview` for details." msgstr "" msgid "" -"Called when a buffer is no longer needed. The *buffer* argument is a :class:" -"`memoryview` object that was previously returned by :meth:`~object." -"__buffer__`. The method must release any resources associated with the " -"buffer. This method should return ``None``." +"Called when a buffer is no longer needed. The *buffer* argument is " +"a :class:`memoryview` object that was previously returned " +"by :meth:`~object.__buffer__`. The method must release any resources " +"associated with the buffer. This method should return ``None``." msgstr "" msgid "" @@ -3638,10 +3661,10 @@ msgid "" msgstr "" msgid "" -"If an annotate function doesn't support the requested format, it must raise :" -"exc:`NotImplementedError`. Annotate functions must always support :attr:" -"`~annotationlib.Format.VALUE` format; they must not raise :exc:" -"`NotImplementedError()` when called with this format." +"If an annotate function doesn't support the requested format, it must " +"raise :exc:`NotImplementedError`. Annotate functions must always " +"support :attr:`~annotationlib.Format.VALUE` format; they must not " +"raise :exc:`NotImplementedError()` when called with this format." msgstr "" msgid "" @@ -3717,8 +3740,8 @@ msgstr "" msgid "" "In addition to bypassing any instance attributes in the interest of " -"correctness, implicit special method lookup generally also bypasses the :" -"meth:`~object.__getattribute__` method even of the object's metaclass::" +"correctness, implicit special method lookup generally also bypasses " +"the :meth:`~object.__getattribute__` method even of the object's metaclass::" msgstr "" msgid "" @@ -3760,29 +3783,30 @@ msgid "Awaitable Objects" msgstr "" msgid "" -"An :term:`awaitable` object generally implements an :meth:`~object." -"__await__` method. :term:`Coroutine objects ` returned from :" -"keyword:`async def` functions are awaitable." +"An :term:`awaitable` object generally implements " +"an :meth:`~object.__await__` method. :term:`Coroutine objects ` " +"returned from :keyword:`async def` functions are awaitable." msgstr "" msgid "" "The :term:`generator iterator` objects returned from generators decorated " -"with :func:`types.coroutine` are also awaitable, but they do not implement :" -"meth:`~object.__await__`." +"with :func:`types.coroutine` are also awaitable, but they do not " +"implement :meth:`~object.__await__`." msgstr "" msgid "" -"Must return an :term:`iterator`. Should be used to implement :term:" -"`awaitable` objects. For instance, :class:`asyncio.Future` implements this " -"method to be compatible with the :keyword:`await` expression. The :class:" -"`object` class itself is not awaitable and does not provide this method." +"Must return an :term:`iterator`. Should be used to " +"implement :term:`awaitable` objects. For instance, :class:`asyncio.Future` " +"implements this method to be compatible with the :keyword:`await` " +"expression. The :class:`object` class itself is not awaitable and does not " +"provide this method." msgstr "" msgid "" "The language doesn't place any restriction on the type or value of the " "objects yielded by the iterator returned by ``__await__``, as this is " -"specific to the implementation of the asynchronous execution framework (e." -"g. :mod:`asyncio`) that will be managing the :term:`awaitable` object." +"specific to the implementation of the asynchronous execution framework " +"(e.g. :mod:`asyncio`) that will be managing the :term:`awaitable` object." msgstr "" msgid ":pep:`492` for additional information about awaitable objects." @@ -3795,10 +3819,11 @@ msgid "" ":term:`Coroutine objects ` are :term:`awaitable` objects. A " "coroutine's execution can be controlled by calling :meth:`~object.__await__` " "and iterating over the result. When the coroutine has finished executing " -"and returns, the iterator raises :exc:`StopIteration`, and the exception's :" -"attr:`~StopIteration.value` attribute holds the return value. If the " -"coroutine raises an exception, it is propagated by the iterator. Coroutines " -"should not directly raise unhandled :exc:`StopIteration` exceptions." +"and returns, the iterator raises :exc:`StopIteration`, and the " +"exception's :attr:`~StopIteration.value` attribute holds the return value. " +"If the coroutine raises an exception, it is propagated by the iterator. " +"Coroutines should not directly raise unhandled :exc:`StopIteration` " +"exceptions." msgstr "" msgid "" @@ -3817,22 +3842,23 @@ msgstr "" msgid "" "Starts or resumes execution of the coroutine. If *value* is ``None``, this " -"is equivalent to advancing the iterator returned by :meth:`~object." -"__await__`. If *value* is not ``None``, this method delegates to the :meth:" -"`~generator.send` method of the iterator that caused the coroutine to " -"suspend. The result (return value, :exc:`StopIteration`, or other " -"exception) is the same as when iterating over the :meth:`!__await__` return " -"value, described above." +"is equivalent to advancing the iterator returned " +"by :meth:`~object.__await__`. If *value* is not ``None``, this method " +"delegates to the :meth:`~generator.send` method of the iterator that caused " +"the coroutine to suspend. The result (return value, :exc:`StopIteration`, " +"or other exception) is the same as when iterating over the :meth:`!" +"__await__` return value, described above." msgstr "" msgid "" "Raises the specified exception in the coroutine. This method delegates to " "the :meth:`~generator.throw` method of the iterator that caused the " "coroutine to suspend, if it has such a method. Otherwise, the exception is " -"raised at the suspension point. The result (return value, :exc:" -"`StopIteration`, or other exception) is the same as when iterating over the :" -"meth:`~object.__await__` return value, described above. If the exception is " -"not caught in the coroutine, it propagates back to the caller." +"raised at the suspension point. The result (return " +"value, :exc:`StopIteration`, or other exception) is the same as when " +"iterating over the :meth:`~object.__await__` return value, described above. " +"If the exception is not caught in the coroutine, it propagates back to the " +"caller." msgstr "" msgid "" @@ -3903,8 +3929,8 @@ msgstr "" msgid "" "Starting with Python 3.7, :meth:`~object.__aiter__` must return an " -"asynchronous iterator object. Returning anything else will result in a :exc:" -"`TypeError` error." +"asynchronous iterator object. Returning anything else will result in " +"a :exc:`TypeError` error." msgstr "" msgid "Asynchronous Context Managers" @@ -3952,11 +3978,10 @@ msgid "" msgstr "" msgid "" -"The :meth:`~object.__hash__`, :meth:`~object.__iter__`, :meth:`~object." -"__reversed__`, :meth:`~object.__contains__`, :meth:`~object." -"__class_getitem__` and :meth:`~os.PathLike.__fspath__` methods have special " -"handling for this. Others will still raise a :exc:`TypeError`, but may do so " -"by relying on the behavior that ``None`` is not callable." +"The :meth:`~object.__hash__`, :meth:`~object.__iter__`, :meth:`~object.__reversed__`, :meth:`~object.__contains__`, :meth:`~object.__class_getitem__` " +"and :meth:`~os.PathLike.__fspath__` methods have special handling for this. " +"Others will still raise a :exc:`TypeError`, but may do so by relying on the " +"behavior that ``None`` is not callable." msgstr "" msgid "" diff --git a/reference/executionmodel.po b/reference/executionmodel.po index e165003..40f8c5c 100644 --- a/reference/executionmodel.po +++ b/reference/executionmodel.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -36,9 +36,9 @@ msgid "" "the interpreter or specified as a command line argument to the interpreter) " "is a code block. A script command (a command specified on the interpreter " "command line with the :option:`-c` option) is a code block. A module run as " -"a top level script (as module ``__main__``) from the command line using a :" -"option:`-m` argument is also a code block. The string argument passed to the " -"built-in functions :func:`eval` and :func:`exec` is a code block." +"a top level script (as module ``__main__``) from the command line using " +"a :option:`-m` argument is also a code block. The string argument passed to " +"the built-in functions :func:`eval` and :func:`exec` is a code block." msgstr "" msgid "" @@ -149,8 +149,8 @@ msgid "" "When a name is not found at all, a :exc:`NameError` exception is raised. If " "the current scope is a function scope, and the name refers to a local " "variable that has not yet been bound to a value at the point where the name " -"is used, an :exc:`UnboundLocalError` exception is raised. :exc:" -"`UnboundLocalError` is a subclass of :exc:`NameError`." +"is used, an :exc:`UnboundLocalError` exception is " +"raised. :exc:`UnboundLocalError` is a subclass of :exc:`NameError`." msgstr "" msgid "" @@ -169,11 +169,12 @@ msgid "" "names specified in the statement refer to the bindings of those names in the " "top-level namespace. Names are resolved in the top-level namespace by " "searching the global namespace, i.e. the namespace of the module containing " -"the code block, and the builtins namespace, the namespace of the module :mod:" -"`builtins`. The global namespace is searched first. If the names are not " -"found there, the builtins namespace is searched next. If the names are also " -"not found in the builtins namespace, new variables are created in the global " -"namespace. The global statement must precede all uses of the listed names." +"the code block, and the builtins namespace, the namespace of the " +"module :mod:`builtins`. The global namespace is searched first. If the " +"names are not found there, the builtins namespace is searched next. If the " +"names are also not found in the builtins namespace, new variables are " +"created in the global namespace. The global statement must precede all uses " +"of the listed names." msgstr "" msgid "" @@ -185,10 +186,10 @@ msgstr "" msgid "" "The :keyword:`nonlocal` statement causes corresponding names to refer to " -"previously bound variables in the nearest enclosing function scope. :exc:" -"`SyntaxError` is raised at compile time if the given name does not exist in " -"any enclosing function scope. :ref:`Type parameters ` cannot be " -"rebound with the :keyword:`!nonlocal` statement." +"previously bound variables in the nearest enclosing function " +"scope. :exc:`SyntaxError` is raised at compile time if the given name does " +"not exist in any enclosing function scope. :ref:`Type parameters ` cannot be rebound with the :keyword:`!nonlocal` statement." msgstr "" msgid "" @@ -262,8 +263,8 @@ msgid "" msgstr "" msgid "" -"The bounds, constraints, and default values for type parameters (:ref:" -"`lazily evaluated `)." +"The bounds, constraints, and default values for type parameters " +"(:ref:`lazily evaluated `)." msgstr "" msgid "The value of type aliases (:ref:`lazily evaluated `)." @@ -284,16 +285,16 @@ msgstr "" msgid "" "Expressions in annotation scopes cannot contain :keyword:`yield`, ``yield " -"from``, :keyword:`await`, or :token:`:= ` expressions. (These expressions are allowed in other " -"scopes contained within the annotation scope.)" +"from``, :keyword:`await`, or :token:`:= ` expressions. (These expressions are allowed " +"in other scopes contained within the annotation scope.)" msgstr "" msgid "" -"Names defined in annotation scopes cannot be rebound with :keyword:" -"`nonlocal` statements in inner scopes. This includes only type parameters, " -"as no other syntactic elements that can appear within annotation scopes can " -"introduce new names." +"Names defined in annotation scopes cannot be rebound " +"with :keyword:`nonlocal` statements in inner scopes. This includes only type " +"parameters, as no other syntactic elements that can appear within annotation " +"scopes can introduce new names." msgstr "" msgid "" @@ -312,8 +313,8 @@ msgid "" msgstr "" msgid "" -"Annotation scopes are now also used for annotations, as specified in :pep:" -"`649` and :pep:`749`." +"Annotation scopes are now also used for annotations, as specified " +"in :pep:`649` and :pep:`749`." msgstr "" msgid "Lazy evaluation" @@ -377,9 +378,9 @@ msgstr "" msgid "" "Users should not touch ``__builtins__``; it is strictly an implementation " -"detail. Users wanting to override values in the builtins namespace should :" -"keyword:`import` the :mod:`builtins` module and modify its attributes " -"appropriately." +"detail. Users wanting to override values in the builtins namespace " +"should :keyword:`import` the :mod:`builtins` module and modify its " +"attributes appropriately." msgstr "" msgid "" @@ -388,8 +389,8 @@ msgid "" "namespace; this should be a dictionary or a module (in the latter case the " "module's dictionary is used). By default, when in the :mod:`__main__` " "module, ``__builtins__`` is the built-in module :mod:`builtins`; when in any " -"other module, ``__builtins__`` is an alias for the dictionary of the :mod:" -"`builtins` module itself." +"other module, ``__builtins__`` is an alias for the dictionary of " +"the :mod:`builtins` module itself." msgstr "" msgid "Interaction with dynamic features" @@ -412,10 +413,10 @@ msgid "" "The :func:`eval` and :func:`exec` functions do not have access to the full " "environment for resolving names. Names may be resolved in the local and " "global namespaces of the caller. Free variables are not resolved in the " -"nearest enclosing namespace, but in the global namespace. [#]_ The :func:" -"`exec` and :func:`eval` functions have optional arguments to override the " -"global and local namespace. If only one namespace is specified, it is used " -"for both." +"nearest enclosing namespace, but in the global namespace. [#]_ " +"The :func:`exec` and :func:`eval` functions have optional arguments to " +"override the global and local namespace. If only one namespace is " +"specified, it is used for both." msgstr "" msgid "Exceptions" @@ -433,9 +434,9 @@ msgid "" "The Python interpreter raises an exception when it detects a run-time error " "(such as division by zero). A Python program can also explicitly raise an " "exception with the :keyword:`raise` statement. Exception handlers are " -"specified with the :keyword:`try` ... :keyword:`except` statement. The :" -"keyword:`finally` clause of such a statement can be used to specify cleanup " -"code which does not handle the exception, but is executed whether an " +"specified with the :keyword:`try` ... :keyword:`except` statement. " +"The :keyword:`finally` clause of such a statement can be used to specify " +"cleanup code which does not handle the exception, but is executed whether an " "exception occurred or not in the preceding code." msgstr "" @@ -449,8 +450,8 @@ msgstr "" msgid "" "When an exception is not handled at all, the interpreter terminates " "execution of the program, or returns to its interactive main loop. In " -"either case, it prints a stack traceback, except when the exception is :exc:" -"`SystemExit`." +"either case, it prints a stack traceback, except when the exception " +"is :exc:`SystemExit`." msgstr "" msgid "" @@ -469,8 +470,8 @@ msgid "" msgstr "" msgid "" -"See also the description of the :keyword:`try` statement in section :ref:" -"`try` and :keyword:`raise` statement in section :ref:`raise`." +"See also the description of the :keyword:`try` statement in " +"section :ref:`try` and :keyword:`raise` statement in section :ref:`raise`." msgstr "" msgid "Runtime Components" @@ -585,8 +586,8 @@ msgstr "" msgid "" "A Python implementation won't necessarily implement the runtime layers " "distinctly or even concretely. The only exception is places where distinct " -"layers are directly specified or exposed to users, like through the :mod:" -"`threading` module." +"layers are directly specified or exposed to users, like through " +"the :mod:`threading` module." msgstr "" msgid "" @@ -694,13 +695,14 @@ msgid "" msgstr "" msgid "" -"Once a program is running, new Python threads can be created using the :mod:" -"`threading` module (on platforms and Python implementations that support " -"threads). Additional processes can be created using the :mod:`os`, :mod:" -"`subprocess`, and :mod:`multiprocessing` modules. Interpreters can be " -"created and used with the :mod:`~concurrent.interpreters` module. " -"Coroutines (async) can be run using :mod:`asyncio` in each interpreter, " -"typically only in a single thread (often the main thread)." +"Once a program is running, new Python threads can be created using " +"the :mod:`threading` module (on platforms and Python implementations that " +"support threads). Additional processes can be created using " +"the :mod:`os`, :mod:`subprocess`, and :mod:`multiprocessing` modules. " +"Interpreters can be created and used with " +"the :mod:`~concurrent.interpreters` module. Coroutines (async) can be run " +"using :mod:`asyncio` in each interpreter, typically only in a single thread " +"(often the main thread)." msgstr "" msgid "Footnotes" diff --git a/reference/expressions.po b/reference/expressions.po index 04a2bfd..b3f4f83 100644 --- a/reference/expressions.po +++ b/reference/expressions.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,10 +63,10 @@ msgid "Atoms" msgstr "" msgid "" -"Atoms are the most basic elements of expressions. The simplest atoms are :" -"ref:`builtin constants `, :ref:`names ` and :" -"ref:`literals `. More complex atoms are enclosed in paired " -"delimiters:" +"Atoms are the most basic elements of expressions. The simplest atoms " +"are :ref:`builtin constants `, :ref:`names ` " +"and :ref:`literals `. More complex atoms are enclosed in " +"paired delimiters:" msgstr "" msgid "" @@ -118,15 +118,15 @@ msgid "Identifiers (Names)" msgstr "" msgid "" -"An identifier occurring as an atom is a name. See section :ref:" -"`identifiers` for lexical definition and section :ref:`naming` for " -"documentation of naming and binding." +"An identifier occurring as an atom is a name. See " +"section :ref:`identifiers` for lexical definition and section :ref:`naming` " +"for documentation of naming and binding." msgstr "" msgid "" "When the name is bound to an object, evaluation of the atom yields that " -"object. When a name is not bound, an attempt to evaluate it raises a :exc:" -"`NameError` exception." +"object. When a name is not bound, an attempt to evaluate it raises " +"a :exc:`NameError` exception." msgstr "" msgid "Private name mangling" @@ -193,8 +193,8 @@ msgstr "" msgid "" "A :dfn:`literal` is a textual representation of a value. Python supports " -"numeric, string and bytes literals. :ref:`Format strings ` and :" -"ref:`template strings ` are treated as string literals." +"numeric, string and bytes literals. :ref:`Format strings ` " +"and :ref:`template strings ` are treated as string literals." msgstr "" msgid "" @@ -205,8 +205,8 @@ msgid "" msgstr "" msgid "" -"String and bytes literals may consist of several tokens. See section :ref:" -"`string-concatenation` for details." +"String and bytes literals may consist of several tokens. See " +"section :ref:`string-concatenation` for details." msgstr "" msgid "" @@ -216,10 +216,10 @@ msgid "" msgstr "" msgid "" -"Evaluation of a literal yields an object of the given type (:class:`int`, :" -"class:`float`, :class:`complex`, :class:`str`, :class:`bytes`, or :class:" -"`~string.templatelib.Template`) with the given value. The value may be " -"approximated in the case of floating-point and imaginary literals." +"Evaluation of a literal yields an object of the given type " +"(:class:`int`, :class:`float`, :class:`complex`, :class:`str`, :class:`bytes`, " +"or :class:`~string.templatelib.Template`) with the given value. The value " +"may be approximated in the case of floating-point and imaginary literals." msgstr "" msgid "The formal grammar for literals is:" @@ -479,13 +479,13 @@ msgstr "" msgid "" "A more advanced form of displays are :dfn:`comprehensions`, where items are " -"computed via a set of looping and filtering instructions. See the :ref:" -"`comprehensions` section for details." +"computed via a set of looping and filtering instructions. See " +"the :ref:`comprehensions` section for details." msgstr "" msgid "" -"Iterable and dictionary unpacking in displays, originally proposed by :pep:" -"`448`." +"Iterable and dictionary unpacking in displays, originally proposed " +"by :pep:`448`." msgstr "" msgid "List displays" @@ -527,9 +527,9 @@ msgid "" msgstr "" msgid "" -"There is no special syntax for the empty set. The ``{}`` literal is a :ref:" -"`dictionary display ` that constructs an empty dictionary. Call :class:" -"`set() ` with no arguments to get an empty set." +"There is no special syntax for the empty set. The ``{}`` literal is " +"a :ref:`dictionary display ` that constructs an empty dictionary. " +"Call :class:`set() ` with no arguments to get an empty set." msgstr "" msgid "The formal grammar for set displays is:" @@ -672,13 +672,13 @@ msgid "" msgstr "" msgid "" -"At run time, a list comprehension creates a new list. The expression after :" -"keyword:`!in` must evaluate to an :term:`iterable`. For each element of this " -"iterable, the element is bound to the :keyword:`!for` clause's target as in " -"a :keyword:`!for` statement, then the expression before :keyword:`!for` is " -"evaluated with the target in scope and the result is added to the new list. " -"Thus, the example above is roughly equivalent to defining and calling the " -"following function::" +"At run time, a list comprehension creates a new list. The expression " +"after :keyword:`!in` must evaluate to an :term:`iterable`. For each element " +"of this iterable, the element is bound to the :keyword:`!for` clause's " +"target as in a :keyword:`!for` statement, then the expression " +"before :keyword:`!for` is evaluated with the target in scope and the result " +"is added to the new list. Thus, the example above is roughly equivalent to " +"defining and calling the following function::" msgstr "" msgid "" @@ -706,9 +706,9 @@ msgstr "" msgid "" "def make_lowercase_set(iterable):\n" -" result = set(iterable)\n" +" result = set()\n" " for x in iterable:\n" -" result.append(x.lower())\n" +" result.add(x.lower())\n" " return result\n" "\n" "make_lowercase_set(['a', 'A', 'b', 'C'])" @@ -736,7 +736,7 @@ msgid "" " result[func.__name__] = func\n" " return result\n" "\n" -"iterable([print, hex, any])" +"make_dict_mapping_names_to_functions([print, hex, any])" msgstr "" msgid "" @@ -746,9 +746,9 @@ msgid "" msgstr "" msgid "" -"There are no *tuple comprehensions*. A similar syntax is instead used for :" -"ref:`generator expressions `, from which you can construct a tuple " -"like this::" +"There are no *tuple comprehensions*. A similar syntax is instead used " +"for :ref:`generator expressions `, from which you can construct a " +"tuple like this::" msgstr "" msgid "" @@ -869,9 +869,9 @@ msgid "" msgstr "" msgid "" -"Subsequent :keyword:`!for` clauses and any filter condition in the leftmost :" -"keyword:`!for` clause cannot be evaluated in the enclosing scope as they may " -"depend on the values obtained from the leftmost iterable." +"Subsequent :keyword:`!for` clauses and any filter condition in the " +"leftmost :keyword:`!for` clause cannot be evaluated in the enclosing scope " +"as they may depend on the values obtained from the leftmost iterable." msgstr "" msgid "" @@ -952,11 +952,11 @@ msgstr "" msgid "" "In an :keyword:`async def` function, an :keyword:`!async for` clause may be " -"used to iterate over a :term:`asynchronous iterator`. A comprehension in an :" -"keyword:`!async def` function may consist of either a :keyword:`!for` or :" -"keyword:`!async for` clause following the leading expression, may contain " -"additional :keyword:`!for` or :keyword:`!async for` clauses, and may also " -"use :keyword:`await` expressions." +"used to iterate over a :term:`asynchronous iterator`. A comprehension in " +"an :keyword:`!async def` function may consist of either a :keyword:`!for` " +"or :keyword:`!async for` clause following the leading expression, may " +"contain additional :keyword:`!for` or :keyword:`!async for` clauses, and may " +"also use :keyword:`await` expressions." msgstr "" msgid "" @@ -986,9 +986,9 @@ msgid "Generator expressions" msgstr "" msgid "" -"The syntax for :dfn:`generator expressions` is the same as for list :ref:" -"`comprehensions `, except that they are enclosed in " -"parentheses instead of brackets. For example::" +"The syntax for :dfn:`generator expressions` is the same as for " +"list :ref:`comprehensions `, except that they are enclosed " +"in parentheses instead of brackets. For example::" msgstr "" msgid "" @@ -1095,8 +1095,8 @@ msgid "" msgstr "" msgid "" -"If a generator expression contains either :keyword:`!async for` clauses or :" -"keyword:`await` expressions it is called an :dfn:`asynchronous generator " +"If a generator expression contains either :keyword:`!async for` clauses " +"or :keyword:`await` expressions it is called an :dfn:`asynchronous generator " "expression`. An asynchronous generator expression returns a new asynchronous " "generator object, which is an asynchronous iterator (see :ref:`async-" "iterators`)." @@ -1121,9 +1121,9 @@ msgid "" "The yield expression is used when defining a :term:`generator` function or " "an :term:`asynchronous generator` function and thus can only be used in the " "body of a function definition. Using a yield expression in a function's " -"body causes that function to be a generator function, and using it in an :" -"keyword:`async def` function's body causes that coroutine function to be an " -"asynchronous generator function. For example::" +"body causes that function to be a generator function, and using it in " +"an :keyword:`async def` function's body causes that coroutine function to be " +"an asynchronous generator function. For example::" msgstr "" msgid "" @@ -1156,19 +1156,19 @@ msgid "" "generator. That generator then controls the execution of the generator " "function. The execution starts when one of the generator's methods is " "called. At that time, the execution proceeds to the first yield expression, " -"where it is suspended again, returning the value of :token:`~python-grammar:" -"yield_list` to the generator's caller, or ``None`` if :token:`~python-" -"grammar:yield_list` is omitted. By suspended, we mean that all local state " -"is retained, including the current bindings of local variables, the " -"instruction pointer, the internal evaluation stack, and the state of any " -"exception handling. When the execution is resumed by calling one of the " -"generator's methods, the function can proceed exactly as if the yield " -"expression were just another external call. The value of the yield " +"where it is suspended again, returning the value of :token:`~python-" +"grammar:yield_list` to the generator's caller, or ``None`` " +"if :token:`~python-grammar:yield_list` is omitted. By suspended, we mean " +"that all local state is retained, including the current bindings of local " +"variables, the instruction pointer, the internal evaluation stack, and the " +"state of any exception handling. When the execution is resumed by calling " +"one of the generator's methods, the function can proceed exactly as if the " +"yield expression were just another external call. The value of the yield " "expression after resuming depends on the method which resumed the " -"execution. If :meth:`~generator.__next__` is used (typically via either a :" -"keyword:`for` or the :func:`next` builtin) then the result is :const:" -"`None`. Otherwise, if :meth:`~generator.send` is used, then the result will " -"be the value passed in to that method." +"execution. If :meth:`~generator.__next__` is used (typically via either " +"a :keyword:`for` or the :func:`next` builtin) then the result " +"is :const:`None`. Otherwise, if :meth:`~generator.send` is used, then the " +"result will be the value passed in to that method." msgstr "" msgid "" @@ -1182,28 +1182,29 @@ msgstr "" msgid "" "Yield expressions are allowed anywhere in a :keyword:`try` construct. If " "the generator is not resumed before it is finalized (by reaching a zero " -"reference count or by being garbage collected), the generator-iterator's :" -"meth:`~generator.close` method will be called, allowing any pending :keyword:" -"`finally` clauses to execute." +"reference count or by being garbage collected), the generator-" +"iterator's :meth:`~generator.close` method will be called, allowing any " +"pending :keyword:`finally` clauses to execute." msgstr "" msgid "" "When ``yield from `` is used, the supplied expression must be an " "iterable. The values produced by iterating that iterable are passed directly " -"to the caller of the current generator's methods. Any values passed in with :" -"meth:`~generator.send` and any exceptions passed in with :meth:`~generator." -"throw` are passed to the underlying iterator if it has the appropriate " -"methods. If this is not the case, then :meth:`~generator.send` will raise :" -"exc:`AttributeError` or :exc:`TypeError`, while :meth:`~generator.throw` " -"will just raise the passed in exception immediately." +"to the caller of the current generator's methods. Any values passed in " +"with :meth:`~generator.send` and any exceptions passed in " +"with :meth:`~generator.throw` are passed to the underlying iterator if it " +"has the appropriate methods. If this is not the case, " +"then :meth:`~generator.send` will raise :exc:`AttributeError` " +"or :exc:`TypeError`, while :meth:`~generator.throw` will just raise the " +"passed in exception immediately." msgstr "" msgid "" "When the underlying iterator is complete, the :attr:`~StopIteration.value` " "attribute of the raised :exc:`StopIteration` instance becomes the value of " -"the yield expression. It can be either set explicitly when raising :exc:" -"`StopIteration`, or automatically when the subiterator is a generator (by " -"returning a value from the subgenerator)." +"the yield expression. It can be either set explicitly when " +"raising :exc:`StopIteration`, or automatically when the subiterator is a " +"generator (by returning a value from the subgenerator)." msgstr "" msgid "Added ``yield from `` to delegate control flow to a subiterator." @@ -1246,92 +1247,6 @@ msgid "" "coroutine functions." msgstr "" -msgid "Generator-iterator methods" -msgstr "" - -msgid "" -"This subsection describes the methods of a generator iterator. They can be " -"used to control the execution of a generator function." -msgstr "" - -msgid "" -"Note that calling any of the generator methods below when the generator is " -"already executing raises a :exc:`ValueError` exception." -msgstr "" - -msgid "" -"Starts the execution of a generator function or resumes it at the last " -"executed yield expression. When a generator function is resumed with a :" -"meth:`~generator.__next__` method, the current yield expression always " -"evaluates to :const:`None`. The execution then continues to the next yield " -"expression, where the generator is suspended again, and the value of the :" -"token:`~python-grammar:yield_list` is returned to :meth:`__next__`'s " -"caller. If the generator exits without yielding another value, a :exc:" -"`StopIteration` exception is raised." -msgstr "" - -msgid "" -"This method is normally called implicitly, e.g. by a :keyword:`for` loop, or " -"by the built-in :func:`next` function." -msgstr "" - -msgid "" -"Resumes the execution and \"sends\" a value into the generator function. " -"The *value* argument becomes the result of the current yield expression. " -"The :meth:`send` method returns the next value yielded by the generator, or " -"raises :exc:`StopIteration` if the generator exits without yielding another " -"value. When :meth:`send` is called to start the generator, it must be " -"called with :const:`None` as the argument, because there is no yield " -"expression that could receive the value." -msgstr "" - -msgid "" -"Raises an exception at the point where the generator was paused, and returns " -"the next value yielded by the generator function. If the generator exits " -"without yielding another value, a :exc:`StopIteration` exception is raised. " -"If the generator function does not catch the passed-in exception, or raises " -"a different exception, then that exception propagates to the caller." -msgstr "" - -msgid "" -"In typical use, this is called with a single exception instance similar to " -"the way the :keyword:`raise` keyword is used." -msgstr "" - -msgid "" -"For backwards compatibility, however, the second signature is supported, " -"following a convention from older versions of Python. The *type* argument " -"should be an exception class, and *value* should be an exception instance. " -"If the *value* is not provided, the *type* constructor is called to get an " -"instance. If *traceback* is provided, it is set on the exception, otherwise " -"any existing :attr:`~BaseException.__traceback__` attribute stored in " -"*value* may be cleared." -msgstr "" - -msgid "" -"The second signature \\(type\\[, value\\[, traceback\\]\\]\\) is deprecated " -"and may be removed in a future version of Python." -msgstr "" - -msgid "" -"Raises a :exc:`GeneratorExit` exception at the point where the generator " -"function was paused (equivalent to calling ``throw(GeneratorExit)``). The " -"exception is raised by the yield expression where the generator was paused. " -"If the generator function catches the exception and returns a value, this " -"value is returned from :meth:`close`. If the generator function is already " -"closed, or raises :exc:`GeneratorExit` (by not catching the exception), :" -"meth:`close` returns :const:`None`. If the generator yields a value, a :exc:" -"`RuntimeError` is raised. If the generator raises any other exception, it " -"is propagated to the caller. If the generator has already exited due to an " -"exception or normal exit, :meth:`close` returns :const:`None` and has no " -"other effect." -msgstr "" - -msgid "" -"If a generator returns a value upon being closed, the value is returned by :" -"meth:`close`." -msgstr "" - msgid "Examples" msgstr "" @@ -1376,9 +1291,9 @@ msgid "Asynchronous generator functions" msgstr "" msgid "" -"The presence of a yield expression in a function or method defined using :" -"keyword:`async def` further defines the function as an :term:`asynchronous " -"generator` function." +"The presence of a yield expression in a function or method defined " +"using :keyword:`async def` further defines the function as " +"an :term:`asynchronous generator` function." msgstr "" msgid "" @@ -1386,25 +1301,26 @@ msgid "" "asynchronous iterator known as an asynchronous generator object. That object " "then controls the execution of the generator function. An asynchronous " "generator object is typically used in an :keyword:`async for` statement in a " -"coroutine function analogously to how a generator object would be used in a :" -"keyword:`for` statement." -msgstr "" - -msgid "" -"Calling one of the asynchronous generator's methods returns an :term:" -"`awaitable` object, and the execution starts when this object is awaited on. " -"At that time, the execution proceeds to the first yield expression, where it " -"is suspended again, returning the value of :token:`~python-grammar:" -"yield_list` to the awaiting coroutine. As with a generator, suspension means " -"that all local state is retained, including the current bindings of local " -"variables, the instruction pointer, the internal evaluation stack, and the " -"state of any exception handling. When the execution is resumed by awaiting " -"on the next object returned by the asynchronous generator's methods, the " -"function can proceed exactly as if the yield expression were just another " -"external call. The value of the yield expression after resuming depends on " -"the method which resumed the execution. If :meth:`~agen.__anext__` is used " -"then the result is :const:`None`. Otherwise, if :meth:`~agen.asend` is used, " -"then the result will be the value passed in to that method." +"coroutine function analogously to how a generator object would be used in " +"a :keyword:`for` statement." +msgstr "" + +msgid "" +"Calling one of the asynchronous generator's methods returns " +"an :term:`awaitable` object, and the execution starts when this object is " +"awaited on. At that time, the execution proceeds to the first yield " +"expression, where it is suspended again, returning the value " +"of :token:`~python-grammar:yield_list` to the awaiting coroutine. As with a " +"generator, suspension means that all local state is retained, including the " +"current bindings of local variables, the instruction pointer, the internal " +"evaluation stack, and the state of any exception handling. When the " +"execution is resumed by awaiting on the next object returned by the " +"asynchronous generator's methods, the function can proceed exactly as if the " +"yield expression were just another external call. The value of the yield " +"expression after resuming depends on the method which resumed the " +"execution. If :meth:`~agen.__anext__` is used then the result " +"is :const:`None`. Otherwise, if :meth:`~agen.asend` is used, then the result " +"will be the value passed in to that method." msgstr "" msgid "" @@ -1435,12 +1351,12 @@ msgid "" "To take care of finalization upon event loop termination, an event loop " "should define a *finalizer* function which takes an asynchronous generator-" "iterator and presumably calls :meth:`~agen.aclose` and executes the " -"coroutine. This *finalizer* may be registered by calling :func:`sys." -"set_asyncgen_hooks`. When first iterated over, an asynchronous generator-" -"iterator will store the registered *finalizer* to be called upon " -"finalization. For a reference example of a *finalizer* method see the " -"implementation of ``asyncio.Loop.shutdown_asyncgens`` in :source:`Lib/" -"asyncio/base_events.py`." +"coroutine. This *finalizer* may be registered by " +"calling :func:`sys.set_asyncgen_hooks`. When first iterated over, an " +"asynchronous generator-iterator will store the registered *finalizer* to be " +"called upon finalization. For a reference example of a *finalizer* method " +"see the implementation of ``asyncio.Loop.shutdown_asyncgens`` " +"in :source:`Lib/asyncio/base_events.py`." msgstr "" msgid "" @@ -1448,72 +1364,6 @@ msgid "" "asynchronous generator function." msgstr "" -msgid "Asynchronous generator-iterator methods" -msgstr "" - -msgid "" -"This subsection describes the methods of an asynchronous generator iterator, " -"which are used to control the execution of a generator function." -msgstr "" - -msgid "" -"Returns an awaitable which when run starts to execute the asynchronous " -"generator or resumes it at the last executed yield expression. When an " -"asynchronous generator function is resumed with an :meth:`~agen.__anext__` " -"method, the current yield expression always evaluates to :const:`None` in " -"the returned awaitable, which when run will continue to the next yield " -"expression. The value of the :token:`~python-grammar:yield_list` of the " -"yield expression is the value of the :exc:`StopIteration` exception raised " -"by the completing coroutine. If the asynchronous generator exits without " -"yielding another value, the awaitable instead raises a :exc:" -"`StopAsyncIteration` exception, signalling that the asynchronous iteration " -"has completed." -msgstr "" - -msgid "" -"This method is normally called implicitly by a :keyword:`async for` loop." -msgstr "" - -msgid "" -"Returns an awaitable which when run resumes the execution of the " -"asynchronous generator. As with the :meth:`~generator.send` method for a " -"generator, this \"sends\" a value into the asynchronous generator function, " -"and the *value* argument becomes the result of the current yield expression. " -"The awaitable returned by the :meth:`asend` method will return the next " -"value yielded by the generator as the value of the raised :exc:" -"`StopIteration`, or raises :exc:`StopAsyncIteration` if the asynchronous " -"generator exits without yielding another value. When :meth:`asend` is " -"called to start the asynchronous generator, it must be called with :const:" -"`None` as the argument, because there is no yield expression that could " -"receive the value." -msgstr "" - -msgid "" -"Returns an awaitable that raises an exception of type ``type`` at the point " -"where the asynchronous generator was paused, and returns the next value " -"yielded by the generator function as the value of the raised :exc:" -"`StopIteration` exception. If the asynchronous generator exits without " -"yielding another value, a :exc:`StopAsyncIteration` exception is raised by " -"the awaitable. If the generator function does not catch the passed-in " -"exception, or raises a different exception, then when the awaitable is run " -"that exception propagates to the caller of the awaitable." -msgstr "" - -msgid "" -"Returns an awaitable that when run will throw a :exc:`GeneratorExit` into " -"the asynchronous generator function at the point where it was paused. If the " -"asynchronous generator function then exits gracefully, is already closed, or " -"raises :exc:`GeneratorExit` (by not catching the exception), then the " -"returned awaitable will raise a :exc:`StopIteration` exception. Any further " -"awaitables returned by subsequent calls to the asynchronous generator will " -"raise a :exc:`StopAsyncIteration` exception. If the asynchronous generator " -"yields a value, a :exc:`RuntimeError` is raised by the awaitable. If the " -"asynchronous generator raises any other exception, it is propagated to the " -"caller of the awaitable. If the asynchronous generator has already exited " -"due to an exception or normal exit, then further calls to :meth:`aclose` " -"will return an awaitable that does nothing." -msgstr "" - msgid "Primaries" msgstr "" @@ -1537,10 +1387,11 @@ msgid "" msgstr "" msgid "" -"This production can be customized by overriding the :meth:`~object." -"__getattribute__` method or the :meth:`~object.__getattr__` method. The :" -"meth:`!__getattribute__` method is called first and either returns a value " -"or raises :exc:`AttributeError` if the attribute is not available." +"This production can be customized by overriding " +"the :meth:`~object.__getattribute__` method or " +"the :meth:`~object.__getattr__` method. The :meth:`!__getattribute__` " +"method is called first and either returns a value or " +"raises :exc:`AttributeError` if the attribute is not available." msgstr "" msgid "" @@ -1553,8 +1404,8 @@ msgstr "" msgid "" "The :dfn:`subscription` syntax is usually used for selecting an element from " -"a :ref:`container ` -- for example, to get a value from a :" -"class:`dict`::" +"a :ref:`container ` -- for example, to get a value from " +"a :class:`dict`::" msgstr "" msgid "" @@ -1587,10 +1438,10 @@ msgstr "" msgid "" "At runtime, the interpreter will evaluate the primary and the subscript, and " -"call the primary's :meth:`~object.__getitem__` or :meth:`~object." -"__class_getitem__` :term:`special method` with the subscript as argument. " -"For more details on which of these methods is called, see :ref:`classgetitem-" -"versus-getitem`." +"call the primary's :meth:`~object.__getitem__` " +"or :meth:`~object.__class_getitem__` :term:`special method` with the " +"subscript as argument. For more details on which of these methods is called, " +"see :ref:`classgetitem-versus-getitem`." msgstr "" msgid "" @@ -1619,9 +1470,9 @@ msgstr "" msgid "" "Subscriptions may also be used as targets in :ref:`assignment ` " "or :ref:`deletion ` statements. In these cases, the interpreter will " -"call the subscripted object's :meth:`~object.__setitem__` or :meth:`~object." -"__delitem__` :term:`special method`, respectively, instead of :meth:`~object." -"__getitem__`." +"call the subscripted object's :meth:`~object.__setitem__` " +"or :meth:`~object.__delitem__` :term:`special method`, respectively, instead " +"of :meth:`~object.__getitem__`." msgstr "" msgid "" @@ -1671,11 +1522,12 @@ msgstr "" msgid "" "When a slice is evaluated, the interpreter constructs a :class:`slice` " -"object whose :attr:`~slice.start`, :attr:`~slice.stop` and :attr:`~slice." -"step` attributes, respectively, are the results of the expressions between " -"the colons. Any missing expression evaluates to :const:`None`. This :class:`!" -"slice` object is then passed to the :meth:`~object.__getitem__` or :meth:" -"`~object.__class_getitem__` :term:`special method`, as above. ::" +"object whose :attr:`~slice.start`, :attr:`~slice.stop` " +"and :attr:`~slice.step` attributes, respectively, are the results of the " +"expressions between the colons. Any missing expression evaluates " +"to :const:`None`. This :class:`!slice` object is then passed to " +"the :meth:`~object.__getitem__` " +"or :meth:`~object.__class_getitem__` :term:`special method`, as above. ::" msgstr "" msgid "" @@ -1705,9 +1557,9 @@ msgstr "" msgid "" "This form is commonly used with numerical libraries for slicing multi-" "dimensional data. In this case, the interpreter constructs a :class:`tuple` " -"of the results of the expressions or slices, and passes this tuple to the :" -"meth:`~object.__getitem__` or :meth:`~object.__class_getitem__` :term:" -"`special method`, as above." +"of the results of the expressions or slices, and passes this tuple to " +"the :meth:`~object.__getitem__` " +"or :meth:`~object.__class_getitem__` :term:`special method`, as above." msgstr "" msgid "" @@ -1728,8 +1580,8 @@ msgstr "" msgid "" "The subscript can also contain a starred expression. In this case, the " -"interpreter unpacks the result into a tuple, and passes this tuple to :meth:" -"`~object.__getitem__` or :meth:`~object.__class_getitem__`::" +"interpreter unpacks the result into a tuple, and passes this tuple " +"to :meth:`~object.__getitem__` or :meth:`~object.__class_getitem__`::" msgstr "" msgid "" @@ -1803,8 +1655,8 @@ msgid "" "An implementation may provide built-in functions whose positional parameters " "do not have names, even if they are 'named' for the purpose of " "documentation, and which therefore cannot be supplied by keyword. In " -"CPython, this is the case for functions implemented in C that use :c:func:" -"`PyArg_ParseTuple` to parse their arguments." +"CPython, this is the case for functions implemented in C that " +"use :c:func:`PyArg_ParseTuple` to parse their arguments." msgstr "" msgid "" @@ -1816,8 +1668,8 @@ msgid "" msgstr "" msgid "" -"If any keyword argument does not correspond to a formal parameter name, a :" -"exc:`TypeError` exception is raised, unless a formal parameter using the " +"If any keyword argument does not correspond to a formal parameter name, " +"a :exc:`TypeError` exception is raised, unless a formal parameter using the " "syntax ``**identifier`` is present; in this case, that formal parameter " "receives a dictionary containing the excess keyword arguments (using the " "keywords as keys and the argument values as corresponding values), or a " @@ -1966,9 +1818,9 @@ msgstr "" msgid "" "The power operator has the same semantics as the built-in :func:`pow` " "function, when called with two arguments: it yields its left argument raised " -"to the power of its right argument. Numeric arguments are first :ref:" -"`converted to a common type `, and the result is " -"of that type." +"to the power of its right argument. Numeric arguments are " +"first :ref:`converted to a common type `, and the " +"result is of that type." msgstr "" msgid "" @@ -1980,8 +1832,9 @@ msgstr "" msgid "" "Raising ``0.0`` to a negative power results in a :exc:`ZeroDivisionError`. " -"Raising a negative number to a fractional power results in a :class:" -"`complex` number. (In earlier versions it raised a :exc:`ValueError`.)" +"Raising a negative number to a fractional power results in " +"a :class:`complex` number. (In earlier versions it raised " +"a :exc:`ValueError`.)" msgstr "" msgid "" @@ -2009,13 +1862,13 @@ msgstr "" msgid "" "The unary ``~`` (invert) operator yields the bitwise inversion of its " "integer argument. The bitwise inversion of ``x`` is defined as ``-(x+1)``. " -"It only applies to integral numbers or to custom objects that override the :" -"meth:`~object.__invert__` special method." +"It only applies to integral numbers or to custom objects that override " +"the :meth:`~object.__invert__` special method." msgstr "" msgid "" -"In all three cases, if the argument does not have the proper type, a :exc:" -"`TypeError` exception is raised." +"In all three cases, if the argument does not have the proper type, " +"a :exc:`TypeError` exception is raised." msgstr "" msgid "Binary arithmetic operations" @@ -2053,33 +1906,34 @@ msgid "" msgstr "" msgid "" -"This operation can be customized using the special :meth:`~object." -"__matmul__` and :meth:`~object.__rmatmul__` methods." +"This operation can be customized using the " +"special :meth:`~object.__matmul__` and :meth:`~object.__rmatmul__` methods." msgstr "" msgid "" "The ``/`` (division) and ``//`` (floor division) operators yield the " -"quotient of their arguments. The numeric arguments are first :ref:" -"`converted to a common type `. Division of " -"integers yields a float, while floor division of integers results in an " -"integer; the result is that of mathematical division with the 'floor' " -"function applied to the result. Division by zero raises the :exc:" -"`ZeroDivisionError` exception." +"quotient of their arguments. The numeric arguments are " +"first :ref:`converted to a common type `. " +"Division of integers yields a float, while floor division of integers " +"results in an integer; the result is that of mathematical division with the " +"'floor' function applied to the result. Division by zero raises " +"the :exc:`ZeroDivisionError` exception." msgstr "" msgid "" -"The division operation can be customized using the special :meth:`~object." -"__truediv__` and :meth:`~object.__rtruediv__` methods. The floor division " -"operation can be customized using the special :meth:`~object.__floordiv__` " -"and :meth:`~object.__rfloordiv__` methods." +"The division operation can be customized using the " +"special :meth:`~object.__truediv__` and :meth:`~object.__rtruediv__` " +"methods. The floor division operation can be customized using the " +"special :meth:`~object.__floordiv__` and :meth:`~object.__rfloordiv__` " +"methods." msgstr "" msgid "" "The ``%`` (modulo) operator yields the remainder from the division of the " -"first argument by the second. The numeric arguments are first :ref:" -"`converted to a common type `. A zero right " -"argument raises the :exc:`ZeroDivisionError` exception. The arguments may " -"be floating-point numbers, e.g., ``3.14%0.7`` equals ``0.34`` (since " +"first argument by the second. The numeric arguments are " +"first :ref:`converted to a common type `. A zero " +"right argument raises the :exc:`ZeroDivisionError` exception. The arguments " +"may be floating-point numbers, e.g., ``3.14%0.7`` equals ``0.34`` (since " "``3.14`` equals ``4*0.7 + 0.34``.) The modulo operator always yields a " "result with the same sign as its second operand (or zero); the absolute " "value of the result is strictly smaller than the absolute value of the " @@ -2102,8 +1956,8 @@ msgid "" msgstr "" msgid "" -"The *modulo* operation can be customized using the special :meth:`~object." -"__mod__` and :meth:`~object.__rmod__` methods." +"The *modulo* operation can be customized using the " +"special :meth:`~object.__mod__` and :meth:`~object.__rmod__` methods." msgstr "" msgid "" @@ -2149,10 +2003,10 @@ msgid "" msgstr "" msgid "" -"The left shift operation can be customized using the special :meth:`~object." -"__lshift__` and :meth:`~object.__rlshift__` methods. The right shift " -"operation can be customized using the special :meth:`~object.__rshift__` " -"and :meth:`~object.__rrshift__` methods." +"The left shift operation can be customized using the " +"special :meth:`~object.__lshift__` and :meth:`~object.__rlshift__` methods. " +"The right shift operation can be customized using the " +"special :meth:`~object.__rshift__` and :meth:`~object.__rrshift__` methods." msgstr "" msgid "" @@ -2168,20 +2022,22 @@ msgstr "" msgid "" "The ``&`` operator yields the bitwise AND of its arguments, which must be " -"integers or one of them must be a custom object overriding :meth:`~object." -"__and__` or :meth:`~object.__rand__` special methods." +"integers or one of them must be a custom object " +"overriding :meth:`~object.__and__` or :meth:`~object.__rand__` special " +"methods." msgstr "" msgid "" "The ``^`` operator yields the bitwise XOR (exclusive OR) of its arguments, " -"which must be integers or one of them must be a custom object overriding :" -"meth:`~object.__xor__` or :meth:`~object.__rxor__` special methods." +"which must be integers or one of them must be a custom object " +"overriding :meth:`~object.__xor__` or :meth:`~object.__rxor__` special " +"methods." msgstr "" msgid "" "The ``|`` operator yields the bitwise (inclusive) OR of its arguments, which " -"must be integers or one of them must be a custom object overriding :meth:" -"`~object.__or__` or :meth:`~object.__ror__` special methods." +"must be integers or one of them must be a custom object " +"overriding :meth:`~object.__or__` or :meth:`~object.__ror__` special methods." msgstr "" msgid "Comparisons" @@ -2306,8 +2162,8 @@ msgstr "" msgid "" "Strings (instances of :class:`str`) compare lexicographically using the " -"numerical Unicode code points (the result of the built-in function :func:" -"`ord`) of their characters. [#]_" +"numerical Unicode code points (the result of the built-in " +"function :func:`ord`) of their characters. [#]_" msgstr "" msgid "Strings and binary sequences cannot be directly compared." @@ -2366,9 +2222,9 @@ msgid "" "Those relations do not define total orderings (for example, the two sets " "``{1,2}`` and ``{2,3}`` are not equal, nor subsets of one another, nor " "supersets of one another). Accordingly, sets are not appropriate arguments " -"for functions which depend on total ordering (for example, :func:`min`, :" -"func:`max`, and :func:`sorted` produce undefined results given a list of " -"sets as inputs)." +"for functions which depend on total ordering (for " +"example, :func:`min`, :func:`max`, and :func:`sorted` produce undefined " +"results given a list of sets as inputs)." msgstr "" msgid "Comparison of sets enforces reflexivity of its elements." @@ -2436,8 +2292,8 @@ msgstr "" msgid "" "The last two expressions apply to totally ordered collections (e.g. to " -"sequences, but not to sets or mappings). See also the :deco:`~functools." -"total_ordering` decorator." +"sequences, but not to sets or mappings). See also " +"the :deco:`~functools.total_ordering` decorator." msgstr "" msgid "" @@ -2457,10 +2313,11 @@ msgid "" "The operators :keyword:`in` and :keyword:`not in` test for membership. ``x " "in s`` evaluates to ``True`` if *x* is a member of *s*, and ``False`` " "otherwise. ``x not in s`` returns the negation of ``x in s``. All built-in " -"sequences and set types support this as well as dictionary, for which :" -"keyword:`!in` tests whether the dictionary has a given key. For container " -"types such as list, tuple, set, frozenset, dict, or collections.deque, the " -"expression ``x in y`` is equivalent to ``any(x is e or x == e for e in y)``." +"sequences and set types support this as well as dictionary, for " +"which :keyword:`!in` tests whether the dictionary has a given key. For " +"container types such as list, tuple, set, frozenset, dict, or " +"collections.deque, the expression ``x in y`` is equivalent to ``any(x is e " +"or x == e for e in y)``." msgstr "" msgid "" @@ -2485,11 +2342,12 @@ msgid "" msgstr "" msgid "" -"Lastly, the old-style iteration protocol is tried: if a class defines :meth:" -"`~object.__getitem__`, ``x in y`` is ``True`` if and only if there is a non-" -"negative integer index *i* such that ``x is y[i] or x == y[i]``, and no " -"lower integer index raises the :exc:`IndexError` exception. (If any other " -"exception is raised, it is as if :keyword:`in` raised that exception)." +"Lastly, the old-style iteration protocol is tried: if a class " +"defines :meth:`~object.__getitem__`, ``x in y`` is ``True`` if and only if " +"there is a non-negative integer index *i* such that ``x is y[i] or x == " +"y[i]``, and no lower integer index raises the :exc:`IndexError` exception. " +"(If any other exception is raised, it is as if :keyword:`in` raised that " +"exception)." msgstr "" msgid "" @@ -2516,8 +2374,8 @@ msgid "" "``False``, ``None``, numeric zero of all types, and empty strings and " "containers (including strings, tuples, lists, dictionaries, sets and " "frozensets). All other values are interpreted as true. User-defined " -"objects can customize their truth value by providing a :meth:`~object." -"__bool__` method." +"objects can customize their truth value by providing " +"a :meth:`~object.__bool__` method." msgstr "" msgid "" @@ -2550,9 +2408,9 @@ msgstr "" msgid "" "An assignment expression (sometimes also called a \"named expression\" or " -"\"walrus\") assigns an :token:`~python-grammar:expression` to an :token:" -"`~python-grammar:identifier`, while also returning the value of the :token:" -"`~python-grammar:expression`." +"\"walrus\") assigns an :token:`~python-grammar:expression` to " +"an :token:`~python-grammar:identifier`, while also returning the value of " +"the :token:`~python-grammar:expression`." msgstr "" msgid "One common use case is when handling matched regular expressions:" @@ -2632,8 +2490,8 @@ msgid "" msgstr "" msgid "" -"A trailing comma is required only to create a one-item tuple, such as ``1," -"``; it is optional in all other cases. A single expression without a " +"A trailing comma is required only to create a one-item tuple, such as " +"``1,``; it is optional in all other cases. A single expression without a " "trailing comma doesn't create a tuple, but rather yields the value of that " "expression. (To create an empty tuple, use an empty pair of parentheses: " "``()``.)" @@ -2648,9 +2506,10 @@ msgid "" msgstr "" msgid "" -"At runtime, the asterisk-prefixed expression must evaluate to an :term:" -"`iterable`. The iterable is expanded into a sequence of items, which are " -"included in the new tuple, list, or set, at the site of the unpacking." +"At runtime, the asterisk-prefixed expression must evaluate to " +"an :term:`iterable`. The iterable is expanded into a sequence of items, " +"which are included in the new tuple, list, or set, at the site of the " +"unpacking." msgstr "" msgid "" @@ -3064,21 +2923,9 @@ msgstr "" msgid "yield from expression" msgstr "" -msgid "StopIteration" -msgstr "" - -msgid "GeneratorExit" -msgstr "" - msgid "examples" msgstr "" -msgid "asynchronous-generator" -msgstr "" - -msgid "StopAsyncIteration" -msgstr "" - msgid "primary" msgstr "" diff --git a/reference/grammar.po b/reference/grammar.po index 771968e..06c432c 100644 --- a/reference/grammar.po +++ b/reference/grammar.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/reference/import.po b/reference/import.po index 89d43a6..eefdb13 100644 --- a/reference/import.po +++ b/reference/import.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,8 +29,8 @@ msgid "" "Python code in one :term:`module` gains access to the code in another module " "by the process of :term:`importing` it. The :keyword:`import` statement is " "the most common way of invoking the import machinery, but it is not the only " -"way. Functions such as :func:`importlib.import_module` and built-in :func:" -"`__import__` can also be used to invoke the import machinery." +"way. Functions such as :func:`importlib.import_module` and built-" +"in :func:`__import__` can also be used to invoke the import machinery." msgstr "" msgid "" @@ -39,8 +39,8 @@ msgid "" "local scope. The search operation of the :keyword:`!import` statement is " "defined as a call to the :func:`__import__` function, with the appropriate " "arguments. The return value of :func:`__import__` is used to perform the " -"name binding operation of the :keyword:`!import` statement. See the :" -"keyword:`!import` statement for the exact details of that name binding " +"name binding operation of the :keyword:`!import` statement. See " +"the :keyword:`!import` statement for the exact details of that name binding " "operation." msgstr "" @@ -53,10 +53,11 @@ msgid "" msgstr "" msgid "" -"When an :keyword:`import` statement is executed, the standard builtin :func:" -"`__import__` function is called. Other mechanisms for invoking the import " -"system (such as :func:`importlib.import_module`) may choose to bypass :func:" -"`__import__` and use their own solutions to implement import semantics." +"When an :keyword:`import` statement is executed, the standard " +"builtin :func:`__import__` function is called. Other mechanisms for invoking " +"the import system (such as :func:`importlib.import_module`) may choose to " +"bypass :func:`__import__` and use their own solutions to implement import " +"semantics." msgstr "" msgid "" @@ -69,8 +70,8 @@ msgid "" msgstr "" msgid "" -"The import system has been updated to fully implement the second phase of :" -"pep:`302`. There is no longer any implicit import machinery - the full " +"The import system has been updated to fully implement the second phase " +"of :pep:`302`. There is no longer any implicit import machinery - the full " "import system is exposed through :data:`sys.meta_path`. In addition, native " "namespace package support has been implemented (see :pep:`420`)." msgstr "" @@ -129,11 +130,11 @@ msgid "" "package>` and :term:`namespace packages `. Regular " "packages are traditional packages as they existed in Python 3.2 and earlier. " "A regular package is typically implemented as a directory containing an " -"``__init__.py`` file. When a regular package is imported, this ``__init__." -"py`` file is implicitly executed, and the objects it defines are bound to " -"names in the package's namespace. The ``__init__.py`` file can contain the " -"same Python code that any other module can contain, and Python will add some " -"additional attributes to the module when it is imported." +"``__init__.py`` file. When a regular package is imported, this " +"``__init__.py`` file is implicitly executed, and the objects it defines are " +"bound to names in the package's namespace. The ``__init__.py`` file can " +"contain the same Python code that any other module can contain, and Python " +"will add some additional attributes to the module when it is imported." msgstr "" msgid "" @@ -160,10 +161,10 @@ msgid "" msgstr "" msgid "" -"A subdirectory inside a regular package that does not contain an ``__init__." -"py`` file is treated as an implicit :ref:`namespace package ` (a \"namespace subpackage\") rooted in that parent. " -"See :pep:`420` for the underlying specification." +"A subdirectory inside a regular package that does not contain an " +"``__init__.py`` file is treated as an implicit :ref:`namespace package " +"` (a \"namespace subpackage\") rooted in that " +"parent. See :pep:`420` for the underlying specification." msgstr "" msgid "Namespace packages" @@ -222,9 +223,9 @@ msgstr "" msgid "" "This name will be used in various phases of the import search, and it may be " "the dotted path to a submodule, e.g. ``foo.bar.baz``. In this case, Python " -"first tries to import ``foo``, then ``foo.bar``, and finally ``foo.bar." -"baz``. If any of the intermediate imports fail, a :exc:`ModuleNotFoundError` " -"is raised." +"first tries to import ``foo``, then ``foo.bar``, and finally " +"``foo.bar.baz``. If any of the intermediate imports fail, " +"a :exc:`ModuleNotFoundError` is raised." msgstr "" msgid "The module cache" @@ -242,9 +243,9 @@ msgstr "" msgid "" "During import, the module name is looked up in :data:`sys.modules` and if " "present, the associated value is the module satisfying the import, and the " -"process completes. However, if the value is ``None``, then a :exc:" -"`ModuleNotFoundError` is raised. If the module name is missing, Python will " -"continue searching for the module." +"process completes. However, if the value is ``None``, then " +"a :exc:`ModuleNotFoundError` is raised. If the module name is missing, " +"Python will continue searching for the module." msgstr "" msgid "" @@ -252,16 +253,16 @@ msgid "" "associated module (as other modules may hold references to it), but it will " "invalidate the cache entry for the named module, causing Python to search " "anew for the named module upon its next import. The key can also be assigned " -"to ``None``, forcing the next import of the module to result in a :exc:" -"`ModuleNotFoundError`." +"to ``None``, forcing the next import of the module to result in " +"a :exc:`ModuleNotFoundError`." msgstr "" msgid "" "Beware though, as if you keep a reference to the module object, invalidate " "its cache entry in :data:`sys.modules`, and then re-import the named module, " -"the two module objects will *not* be the same. By contrast, :func:`importlib." -"reload` will reuse the *same* module object, and simply reinitialise the " -"module contents by rerunning the module's code." +"the two module objects will *not* be the same. By " +"contrast, :func:`importlib.reload` will reuse the *same* module object, and " +"simply reinitialise the module contents by rerunning the module's code." msgstr "" msgid "Finders and loaders" @@ -270,12 +271,12 @@ msgstr "" msgid "" "If the named module is not found in :data:`sys.modules`, then Python's " "import protocol is invoked to find and load the module. This protocol " -"consists of two conceptual objects, :term:`finders ` and :term:" -"`loaders `. A finder's job is to determine whether it can find the " -"named module using whatever strategy it knows about. Objects that implement " -"both of these interfaces are referred to as :term:`importers ` - " -"they return themselves when they find that they can load the requested " -"module." +"consists of two conceptual objects, :term:`finders ` " +"and :term:`loaders `. A finder's job is to determine whether it can " +"find the named module using whatever strategy it knows about. Objects that " +"implement both of these interfaces are referred to as :term:`importers " +"` - they return themselves when they find that they can load the " +"requested module." msgstr "" msgid "" @@ -329,10 +330,10 @@ msgid "" msgstr "" msgid "" -"Import path hooks are called as part of :data:`sys.path` (or ``package." -"__path__``) processing, at the point where their associated path item is " -"encountered. Import path hooks are registered by adding new callables to :" -"data:`sys.path_hooks` as described below." +"Import path hooks are called as part of :data:`sys.path` (or " +"``package.__path__``) processing, at the point where their associated path " +"item is encountered. Import path hooks are registered by adding new " +"callables to :data:`sys.path_hooks` as described below." msgstr "" msgid "The meta path" @@ -342,11 +343,11 @@ msgid "" "When the named module is not found in :data:`sys.modules`, Python next " "searches :data:`sys.meta_path`, which contains a list of meta path finder " "objects. These finders are queried in order to see if they know how to " -"handle the named module. Meta path finders must implement a method called :" -"meth:`~importlib.abc.MetaPathFinder.find_spec` which takes three arguments: " -"a name, an import path, and (optionally) a target module. The meta path " -"finder can use any strategy it wants to determine whether it can handle the " -"named module or not." +"handle the named module. Meta path finders must implement a method " +"called :meth:`~importlib.abc.MetaPathFinder.find_spec` which takes three " +"arguments: a name, an import path, and (optionally) a target module. The " +"meta path finder can use any strategy it wants to determine whether it can " +"handle the named module or not." msgstr "" msgid "" @@ -376,9 +377,10 @@ msgid "" "importing ``foo.bar.baz`` will first perform a top level import, calling " "``mpf.find_spec(\"foo\", None, None)`` on each meta path finder (``mpf``). " "After ``foo`` has been imported, ``foo.bar`` will be imported by traversing " -"the meta path a second time, calling ``mpf.find_spec(\"foo.bar\", foo." -"__path__, None)``. Once ``foo.bar`` has been imported, the final traversal " -"will call ``mpf.find_spec(\"foo.bar.baz\", foo.bar.__path__, None)``." +"the meta path a second time, calling ``mpf.find_spec(\"foo.bar\", " +"foo.__path__, None)``. Once ``foo.bar`` has been imported, the final " +"traversal will call ``mpf.find_spec(\"foo.bar.baz\", foo.bar.__path__, " +"None)``." msgstr "" msgid "" @@ -398,18 +400,18 @@ msgid "" "The :meth:`~importlib.abc.MetaPathFinder.find_spec` method of meta path " "finders replaced :meth:`!find_module`, which is now deprecated. While it " "will continue to work without change, the import machinery will try it only " -"if the finder does not implement :meth:`~importlib.abc.MetaPathFinder." -"find_spec`." +"if the finder does not " +"implement :meth:`~importlib.abc.MetaPathFinder.find_spec`." msgstr "" msgid "" -"Use of :meth:`!find_module` by the import system now raises :exc:" -"`ImportWarning`." +"Use of :meth:`!find_module` by the import system now " +"raises :exc:`ImportWarning`." msgstr "" msgid "" -":meth:`!find_module` has been removed. Use :meth:`~importlib.abc." -"MetaPathFinder.find_spec` instead." +":meth:`!find_module` has been removed. " +"Use :meth:`~importlib.abc.MetaPathFinder.find_spec` instead." msgstr "" msgid "Loading" @@ -451,8 +453,8 @@ msgid "Note the following details:" msgstr "" msgid "" -"If there is an existing module object with the given name in :data:`sys." -"modules`, import will have already returned it." +"If there is an existing module object with the given name " +"in :data:`sys.modules`, import will have already returned it." msgstr "" msgid "" @@ -465,10 +467,10 @@ msgstr "" msgid "" "If loading fails, the failing module -- and only the failing module -- gets " -"removed from :data:`sys.modules`. Any module already in the :data:`sys." -"modules` cache, and any module that was successfully loaded as a side-" -"effect, must remain in the cache. This contrasts with reloading where even " -"the failing module is left in :data:`sys.modules`." +"removed from :data:`sys.modules`. Any module already in " +"the :data:`sys.modules` cache, and any module that was successfully loaded " +"as a side-effect, must remain in the cache. This contrasts with reloading " +"where even the failing module is left in :data:`sys.modules`." msgstr "" msgid "" @@ -491,8 +493,8 @@ msgstr "" msgid "" "The import system has taken over the boilerplate responsibilities of " -"loaders. These were previously performed by the ``importlib.abc.Loader." -"load_module`` method." +"loaders. These were previously performed by the " +"``importlib.abc.Loader.load_module`` method." msgstr "" msgid "The ``load_module`` method is no longer used." @@ -518,9 +520,9 @@ msgid "" msgstr "" msgid "" -"If the loader cannot execute the module, it should raise an :exc:" -"`ImportError`, although any other exception raised during :meth:`~importlib." -"abc.Loader.exec_module` will be propagated." +"If the loader cannot execute the module, it should raise " +"an :exc:`ImportError`, although any other exception raised " +"during :meth:`~importlib.abc.Loader.exec_module` will be propagated." msgstr "" msgid "" @@ -542,9 +544,9 @@ msgid "The :meth:`~importlib.abc.Loader.create_module` method of loaders." msgstr "" msgid "" -"The ``importlib.abc.Loader.load_module`` method was replaced by :meth:" -"`~importlib.abc.Loader.exec_module` and the import machinery assumed all the " -"boilerplate responsibilities of loading." +"The ``importlib.abc.Loader.load_module`` method was replaced " +"by :meth:`~importlib.abc.Loader.exec_module` and the import machinery " +"assumed all the boilerplate responsibilities of loading." msgstr "" msgid "" @@ -561,11 +563,11 @@ msgid "" msgstr "" msgid "" -"If there is an existing module object with the given name in :data:`sys." -"modules`, the loader must use that existing module. (Otherwise, :func:" -"`importlib.reload` will not work correctly.) If the named module does not " -"exist in :data:`sys.modules`, the loader must create a new module object and " -"add it to :data:`sys.modules`." +"If there is an existing module object with the given name " +"in :data:`sys.modules`, the loader must use that existing module. " +"(Otherwise, :func:`importlib.reload` will not work correctly.) If the named " +"module does not exist in :data:`sys.modules`, the loader must create a new " +"module object and add it to :data:`sys.modules`." msgstr "" msgid "" @@ -574,9 +576,9 @@ msgid "" msgstr "" msgid "" -"If loading fails, the loader must remove any modules it has inserted into :" -"data:`sys.modules`, but it must remove **only** the failing module(s), and " -"only if the loader itself has loaded the module(s) explicitly." +"If loading fails, the loader must remove any modules it has inserted " +"into :data:`sys.modules`, but it must remove **only** the failing module(s), " +"and only if the loader itself has loaded the module(s) explicitly." msgstr "" msgid "" @@ -632,9 +634,9 @@ msgstr "" msgid "" "Given Python's familiar name binding rules this might seem surprising, but " "it's actually a fundamental feature of the import system. The invariant " -"holding is that if you have ``sys.modules['spam']`` and ``sys.modules['spam." -"foo']`` (as you would after the above import), the latter must appear as the " -"``foo`` attribute of the former." +"holding is that if you have ``sys.modules['spam']`` and " +"``sys.modules['spam.foo']`` (as you would after the above import), the " +"latter must appear as the ``foo`` attribute of the former." msgstr "" msgid "Module specs" @@ -658,8 +660,8 @@ msgstr "" msgid "" "The module's spec is exposed as :attr:`module.__spec__`. Setting :attr:`!" "__spec__` appropriately applies equally to :ref:`modules initialized during " -"interpreter startup `. The one exception is ``__main__``, where :" -"attr:`!__spec__` is :ref:`set to None in some cases `." +"interpreter startup `. The one exception is ``__main__``, " +"where :attr:`!__spec__` is :ref:`set to None in some cases `." msgstr "" msgid "" @@ -671,18 +673,18 @@ msgid "__path__ attributes on modules" msgstr "" msgid "" -"The :attr:`~module.__path__` attribute should be a (possibly empty) :term:" -"`sequence` of strings enumerating the locations where the package's " -"submodules will be found. By definition, if a module has a :attr:`!__path__` " -"attribute, it is a :term:`package`." +"The :attr:`~module.__path__` attribute should be a (possibly " +"empty) :term:`sequence` of strings enumerating the locations where the " +"package's submodules will be found. By definition, if a module has a :attr:`!" +"__path__` attribute, it is a :term:`package`." msgstr "" msgid "" "A package's :attr:`~module.__path__` attribute is used during imports of its " -"subpackages. Within the import machinery, it functions much the same as :" -"data:`sys.path`, i.e. providing a list of locations to search for modules " -"during import. However, :attr:`!__path__` is typically much more constrained " -"than :data:`!sys.path`." +"subpackages. Within the import machinery, it functions much the same " +"as :data:`sys.path`, i.e. providing a list of locations to search for " +"modules during import. However, :attr:`!__path__` is typically much more " +"constrained than :data:`!sys.path`." msgstr "" msgid "" @@ -692,12 +694,13 @@ msgid "" msgstr "" msgid "" -"A package's ``__init__.py`` file may set or alter the package's :attr:" -"`~module.__path__` attribute, and this was typically the way namespace " -"packages were implemented prior to :pep:`420`. With the adoption of :pep:" -"`420`, namespace packages no longer need to supply ``__init__.py`` files " -"containing only :attr:`!__path__` manipulation code; the import machinery " -"automatically sets :attr:`!__path__` correctly for the namespace package." +"A package's ``__init__.py`` file may set or alter the " +"package's :attr:`~module.__path__` attribute, and this was typically the way " +"namespace packages were implemented prior to :pep:`420`. With the adoption " +"of :pep:`420`, namespace packages no longer need to supply ``__init__.py`` " +"files containing only :attr:`!__path__` manipulation code; the import " +"machinery automatically sets :attr:`!__path__` correctly for the namespace " +"package." msgstr "" msgid "Module reprs" @@ -713,9 +716,9 @@ msgid "" "If the module has a spec (``__spec__``), the import machinery will try to " "generate a repr from it. If that fails or there is no spec, the import " "system will craft a default repr using whatever information is available on " -"the module. It will try to use the ``module.__name__``, ``module." -"__file__``, and ``module.__loader__`` as input into the repr, with defaults " -"for whatever information is missing." +"the module. It will try to use the ``module.__name__``, " +"``module.__file__``, and ``module.__loader__`` as input into the repr, with " +"defaults for whatever information is missing." msgstr "" msgid "Here are the exact rules used:" @@ -761,14 +764,14 @@ msgstr "" msgid "" "Python also supports \"hash-based\" cache files, which store a hash of the " "source file's contents rather than its metadata. There are two variants of " -"hash-based ``.pyc`` files: checked and unchecked. For checked hash-based ``." -"pyc`` files, Python validates the cache file by hashing the source file and " -"comparing the resulting hash with the hash in the cache file. If a checked " -"hash-based cache file is found to be invalid, Python regenerates it and " -"writes a new checked hash-based cache file. For unchecked hash-based ``." -"pyc`` files, Python simply assumes the cache file is valid if it exists. " -"Hash-based ``.pyc`` files validation behavior may be overridden with the :" -"option:`--check-hash-based-pycs` flag." +"hash-based ``.pyc`` files: checked and unchecked. For checked hash-based " +"``.pyc`` files, Python validates the cache file by hashing the source file " +"and comparing the resulting hash with the hash in the cache file. If a " +"checked hash-based cache file is found to be invalid, Python regenerates it " +"and writes a new checked hash-based cache file. For unchecked hash-based " +"``.pyc`` files, Python simply assumes the cache file is valid if it exists. " +"Hash-based ``.pyc`` files validation behavior may be overridden with " +"the :option:`--check-hash-based-pycs` flag." msgstr "" msgid "" @@ -781,10 +784,10 @@ msgstr "" msgid "" "As mentioned previously, Python comes with several default meta path " -"finders. One of these, called the :term:`path based finder` (:class:" -"`~importlib.machinery.PathFinder`), searches an :term:`import path`, which " -"contains a list of :term:`path entries `. Each path entry names " -"a location to search for modules." +"finders. One of these, called the :term:`path based finder` " +"(:class:`~importlib.machinery.PathFinder`), searches an :term:`import path`, " +"which contains a list of :term:`path entries `. Each path entry " +"names a location to search for modules." msgstr "" msgid "" @@ -797,10 +800,10 @@ msgid "" "The default set of path entry finders implement all the semantics for " "finding modules on the file system, handling special file types such as " "Python source code (``.py`` files), Python byte code (``.pyc`` files) and " -"shared libraries (e.g. ``.so`` files). When supported by the :mod:" -"`zipimport` module in the standard library, the default path entry finders " -"also handle loading all of these file types (other than shared libraries) " -"from zipfiles." +"shared libraries (e.g. ``.so`` files). When supported by " +"the :mod:`zipimport` module in the standard library, the default path entry " +"finders also handle loading all of these file types (other than shared " +"libraries) from zipfiles." msgstr "" msgid "" @@ -821,8 +824,8 @@ msgstr "" msgid "" "A word of warning: this section and the previous both use the term *finder*, " -"distinguishing between them by using the terms :term:`meta path finder` and :" -"term:`path entry finder`. These two types of finders are very similar, " +"distinguishing between them by using the terms :term:`meta path finder` " +"and :term:`path entry finder`. These two types of finders are very similar, " "support similar protocols, and function in similar ways during the import " "process, but it's important to keep in mind that they are subtly different. " "In particular, meta path finders operate at the beginning of the import " @@ -847,17 +850,18 @@ msgid "" msgstr "" msgid "" -"As a meta path finder, the :term:`path based finder` implements the :meth:" -"`~importlib.abc.MetaPathFinder.find_spec` protocol previously described, " -"however it exposes additional hooks that can be used to customize how " -"modules are found and loaded from the :term:`import path`." +"As a meta path finder, the :term:`path based finder` implements " +"the :meth:`~importlib.abc.MetaPathFinder.find_spec` protocol previously " +"described, however it exposes additional hooks that can be used to customize " +"how modules are found and loaded from the :term:`import path`." msgstr "" msgid "" -"Three variables are used by the :term:`path based finder`, :data:`sys." -"path`, :data:`sys.path_hooks` and :data:`sys.path_importer_cache`. The " -"``__path__`` attributes on package objects are also used. These provide " -"additional ways that the import machinery can be customized." +"Three variables are used by the :term:`path based " +"finder`, :data:`sys.path`, :data:`sys.path_hooks` " +"and :data:`sys.path_importer_cache`. The ``__path__`` attributes on package " +"objects are also used. These provide additional ways that the import " +"machinery can be customized." msgstr "" msgid "" @@ -865,47 +869,47 @@ msgid "" "modules and packages. It is initialized from the :envvar:`PYTHONPATH` " "environment variable and various other installation- and implementation-" "specific defaults. Entries in :data:`sys.path` can name directories on the " -"file system, zip files, and potentially other \"locations\" (see the :mod:" -"`site` module) that should be searched for modules, such as URLs, or " -"database queries. Only strings should be present on :data:`sys.path`; all " -"other data types are ignored." +"file system, zip files, and potentially other \"locations\" (see " +"the :mod:`site` module) that should be searched for modules, such as URLs, " +"or database queries. Only strings should be present on :data:`sys.path`; " +"all other data types are ignored." msgstr "" msgid "" "The :term:`path based finder` is a :term:`meta path finder`, so the import " "machinery begins the :term:`import path` search by calling the path based " "finder's :meth:`~importlib.machinery.PathFinder.find_spec` method as " -"described previously. When the ``path`` argument to :meth:`~importlib." -"machinery.PathFinder.find_spec` is given, it will be a list of string paths " -"to traverse - typically a package's ``__path__`` attribute for an import " -"within that package. If the ``path`` argument is ``None``, this indicates a " -"top level import and :data:`sys.path` is used." +"described previously. When the ``path`` argument " +"to :meth:`~importlib.machinery.PathFinder.find_spec` is given, it will be a " +"list of string paths to traverse - typically a package's ``__path__`` " +"attribute for an import within that package. If the ``path`` argument is " +"``None``, this indicates a top level import and :data:`sys.path` is used." msgstr "" msgid "" "The path based finder iterates over every entry in the search path, and for " -"each of these, looks for an appropriate :term:`path entry finder` (:class:" -"`~importlib.abc.PathEntryFinder`) for the path entry. Because this can be " -"an expensive operation (e.g. there may be ``stat()`` call overheads for this " -"search), the path based finder maintains a cache mapping path entries to " -"path entry finders. This cache is maintained in :data:`sys." -"path_importer_cache` (despite the name, this cache actually stores finder " -"objects rather than being limited to :term:`importer` objects). In this way, " -"the expensive search for a particular :term:`path entry` location's :term:" -"`path entry finder` need only be done once. User code is free to remove " -"cache entries from :data:`sys.path_importer_cache` forcing the path based " -"finder to perform the path entry search again." +"each of these, looks for an appropriate :term:`path entry finder` " +"(:class:`~importlib.abc.PathEntryFinder`) for the path entry. Because this " +"can be an expensive operation (e.g. there may be ``stat()`` call overheads " +"for this search), the path based finder maintains a cache mapping path " +"entries to path entry finders. This cache is maintained " +"in :data:`sys.path_importer_cache` (despite the name, this cache actually " +"stores finder objects rather than being limited to :term:`importer` " +"objects). In this way, the expensive search for a particular :term:`path " +"entry` location's :term:`path entry finder` need only be done once. User " +"code is free to remove cache entries from :data:`sys.path_importer_cache` " +"forcing the path based finder to perform the path entry search again." msgstr "" msgid "" "If the path entry is not present in the cache, the path based finder " -"iterates over every callable in :data:`sys.path_hooks`. Each of the :term:" -"`path entry hooks ` in this list is called with a single " -"argument, the path entry to be searched. This callable may either return a :" -"term:`path entry finder` that can handle the path entry, or it may raise :" -"exc:`ImportError`. An :exc:`ImportError` is used by the path based finder " -"to signal that the hook cannot find a :term:`path entry finder` for that :" -"term:`path entry`. The exception is ignored and :term:`import path` " +"iterates over every callable in :data:`sys.path_hooks`. Each of " +"the :term:`path entry hooks ` in this list is called with a " +"single argument, the path entry to be searched. This callable may either " +"return a :term:`path entry finder` that can handle the path entry, or it may " +"raise :exc:`ImportError`. An :exc:`ImportError` is used by the path based " +"finder to signal that the hook cannot find a :term:`path entry finder` for " +"that :term:`path entry`. The exception is ignored and :term:`import path` " "iteration continues. The hook should expect either a string or bytes " "object; the encoding of bytes objects is up to the hook (e.g. it may be a " "file system encoding, UTF-8, or something else), and if the hook cannot " @@ -914,11 +918,11 @@ msgstr "" msgid "" "If :data:`sys.path_hooks` iteration ends with no :term:`path entry finder` " -"being returned, then the path based finder's :meth:`~importlib.machinery." -"PathFinder.find_spec` method will store ``None`` in :data:`sys." -"path_importer_cache` (to indicate that there is no finder for this path " -"entry) and return ``None``, indicating that this :term:`meta path finder` " -"could not find the module." +"being returned, then the path based " +"finder's :meth:`~importlib.machinery.PathFinder.find_spec` method will store " +"``None`` in :data:`sys.path_importer_cache` (to indicate that there is no " +"finder for this path entry) and return ``None``, indicating that " +"this :term:`meta path finder` could not find the module." msgstr "" msgid "" @@ -934,9 +938,9 @@ msgid "" "current working directory cannot be determined or is found not to exist, no " "value is stored in :data:`sys.path_importer_cache`. Second, the value for " "the current working directory is looked up fresh for each module lookup. " -"Third, the path used for :data:`sys.path_importer_cache` and returned by :" -"meth:`importlib.machinery.PathFinder.find_spec` will be the actual current " -"working directory and not the empty string." +"Third, the path used for :data:`sys.path_importer_cache` and returned " +"by :meth:`importlib.machinery.PathFinder.find_spec` will be the actual " +"current working directory and not the empty string." msgstr "" msgid "Path entry finder protocol" @@ -956,9 +960,9 @@ msgid "" msgstr "" msgid "" -"To indicate to the import machinery that the spec represents a namespace :" -"term:`portion`, the path entry finder sets ``submodule_search_locations`` to " -"a list containing the portion." +"To indicate to the import machinery that the spec represents a " +"namespace :term:`portion`, the path entry finder sets " +"``submodule_search_locations`` to a list containing the portion." msgstr "" msgid "" @@ -1023,10 +1027,10 @@ msgstr "" msgid "" "To selectively prevent the import of some modules from a hook early on the " "meta path (rather than disabling the standard import system entirely), it is " -"sufficient to raise :exc:`ModuleNotFoundError` directly from :meth:" -"`~importlib.abc.MetaPathFinder.find_spec` instead of returning ``None``. The " -"latter indicates that the meta path search should continue, while raising an " -"exception terminates it immediately." +"sufficient to raise :exc:`ModuleNotFoundError` directly " +"from :meth:`~importlib.abc.MetaPathFinder.find_spec` instead of returning " +"``None``. The latter indicates that the meta path search should continue, " +"while raising an exception terminates it immediately." msgstr "" msgid "Package Relative Imports" @@ -1086,9 +1090,9 @@ msgstr "" msgid "" "The :mod:`__main__` module is a special case relative to Python's import " "system. As noted :ref:`elsewhere `, the ``__main__`` module is " -"directly initialized at interpreter startup, much like :mod:`sys` and :mod:" -"`builtins`. However, unlike those two, it doesn't strictly qualify as a " -"built-in module. This is because the manner in which ``__main__`` is " +"directly initialized at interpreter startup, much like :mod:`sys` " +"and :mod:`builtins`. However, unlike those two, it doesn't strictly qualify " +"as a built-in module. This is because the manner in which ``__main__`` is " "initialized depends on the flags and other options with which the " "interpreter is invoked." msgstr "" @@ -1109,9 +1113,9 @@ msgid "" msgstr "" msgid "" -"In :ref:`the remaining cases ` ``__main__." -"__spec__`` is set to ``None``, as the code used to populate the :mod:" -"`__main__` does not correspond directly with an importable module:" +"In :ref:`the remaining cases ` " +"``__main__.__spec__`` is set to ``None``, as the code used to populate " +"the :mod:`__main__` does not correspond directly with an importable module:" msgstr "" msgid "interactive prompt" @@ -1129,8 +1133,8 @@ msgstr "" msgid "" "Note that ``__main__.__spec__`` is always ``None`` in the last case, *even " "if* the file could technically be imported directly as a module instead. Use " -"the :option:`-m` switch if valid module metadata is desired in :mod:" -"`__main__`." +"the :option:`-m` switch if valid module metadata is desired " +"in :mod:`__main__`." msgstr "" msgid "" @@ -1192,10 +1196,11 @@ msgstr "" msgid "" "The importlib implementation avoids using the return value directly. " -"Instead, it gets the module object by looking the module name up in :data:" -"`sys.modules`. The indirect effect of this is that an imported module may " -"replace itself in :data:`sys.modules`. This is implementation-specific " -"behavior that is not guaranteed to work in other Python implementations." +"Instead, it gets the module object by looking the module name up " +"in :data:`sys.modules`. The indirect effect of this is that an imported " +"module may replace itself in :data:`sys.modules`. This is implementation-" +"specific behavior that is not guaranteed to work in other Python " +"implementations." msgstr "" msgid "import machinery" diff --git a/reference/index.po b/reference/index.po index c4c0ffc..1689a63 100644 --- a/reference/index.po +++ b/reference/index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,15 +23,23 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "The Python Language Reference" +msgstr "ਪਾਈਥਨ ਭਾਸ਼ਾ ਸੰਦਰਭ" + +msgid "" +"This reference manual describes the syntax and core semantics of the " +"language. It is terse, but attempts to be exact and complete." +msgstr "" + +msgid "" +"Elsewhere, the built-in object types and functions are described " +"in :ref:`builtins-index`. Standard library modules are described " +"in :ref:`library-index`." msgstr "" msgid "" -"This reference manual describes the syntax and \"core semantics\" of the " -"language. It is terse, but attempts to be exact and complete. The semantics " -"of non-essential built-in object types and of the built-in functions and " -"modules are described in :ref:`library-index`. For an informal introduction " -"to the language, see :ref:`tutorial-index`. For C or C++ programmers, two " -"additional manuals exist: :ref:`extending-index` describes the high-level " -"picture of how to write a Python extension module, and the :ref:`c-api-" -"index` describes the interfaces available to C/C++ programmers in detail." +"For an informal introduction to the language, see :ref:`tutorial-index`. For " +"C or C++ programmers, two additional manuals exist: :ref:`extending-index` " +"describes the high-level picture of how to write a Python extension module, " +"and the :ref:`c-api-index` describes the interfaces available to C/C++ " +"programmers in detail." msgstr "" diff --git a/reference/introduction.po b/reference/introduction.po index 21e0dde..f78ac8b 100644 --- a/reference/introduction.po +++ b/reference/introduction.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,8 +89,8 @@ msgid "" "Python implemented in Java. This implementation can be used as a scripting " "language for Java applications, or can be used to create applications using " "the Java class libraries. It is also often used to create tests for Java " -"libraries. More information can be found at `the Jython website `_." +"libraries. More information can be found at `the Jython website `_." msgstr "" msgid "Python for .NET" @@ -184,9 +184,9 @@ msgid "" msgstr "" msgid "" -"``'@'``: A non-letter symbol in single quotes denotes an :py:data:`~token." -"OP` token, that is, a :ref:`delimiter ` or :ref:`operator " -"`." +"``'@'``: A non-letter symbol in single quotes denotes " +"an :py:data:`~token.OP` token, that is, a :ref:`delimiter ` " +"or :ref:`operator `." msgstr "" msgid "" @@ -276,20 +276,20 @@ msgid "Lexical and Syntactic definitions" msgstr "" msgid "" -"There is some difference between *lexical* and *syntactic* analysis: the :" -"term:`lexical analyzer` operates on the individual characters of the input " -"source, while the *parser* (syntactic analyzer) operates on the stream of :" -"term:`tokens ` generated by the lexical analysis. However, in some " -"cases the exact boundary between the two phases is a CPython implementation " -"detail." +"There is some difference between *lexical* and *syntactic* analysis: " +"the :term:`lexical analyzer` operates on the individual characters of the " +"input source, while the *parser* (syntactic analyzer) operates on the stream " +"of :term:`tokens ` generated by the lexical analysis. However, in " +"some cases the exact boundary between the two phases is a CPython " +"implementation detail." msgstr "" msgid "" "The practical difference between the two is that in *lexical* definitions, " "all whitespace is significant. The lexical analyzer :ref:`discards " -"` all whitespace that is not converted to tokens like :data:" -"`token.INDENT` or :data:`~token.NEWLINE`. *Syntactic* definitions then use " -"these tokens, rather than source characters." +"` all whitespace that is not converted to tokens " +"like :data:`token.INDENT` or :data:`~token.NEWLINE`. *Syntactic* definitions " +"then use these tokens, rather than source characters." msgstr "" msgid "" diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index f219541..bea60db 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,17 +26,17 @@ msgid "Lexical analysis" msgstr "" msgid "" -"A Python program is read by a *parser*. Input to the parser is a stream of :" -"term:`tokens `, generated by the *lexical analyzer* (also known as " -"the *tokenizer*). This chapter describes how the lexical analyzer produces " -"these tokens." +"A Python program is read by a *parser*. Input to the parser is a stream " +"of :term:`tokens `, generated by the *lexical analyzer* (also known " +"as the *tokenizer*). This chapter describes how the lexical analyzer " +"produces these tokens." msgstr "" msgid "" "The lexical analyzer determines the program text's :ref:`encoding " "` (UTF-8 by default), and decodes the text into :ref:`source " -"characters `. If the text cannot be decoded, a :" -"exc:`SyntaxError` is raised." +"characters `. If the text cannot be decoded, " +"a :exc:`SyntaxError` is raised." msgstr "" msgid "" @@ -163,12 +163,12 @@ msgid "Logical lines" msgstr "" msgid "" -"The end of a logical line is represented by the token :data:`~token." -"NEWLINE`. Statements cannot cross logical line boundaries except where :data:" -"`!NEWLINE` is allowed by the syntax (e.g., between statements in compound " -"statements). A logical line is constructed from one or more *physical lines* " -"by following the :ref:`explicit ` or :ref:`implicit " -"` *line joining* rules." +"The end of a logical line is represented by the " +"token :data:`~token.NEWLINE`. Statements cannot cross logical line " +"boundaries except where :data:`!NEWLINE` is allowed by the syntax (e.g., " +"between statements in compound statements). A logical line is constructed " +"from one or more *physical lines* by following the :ref:`explicit ` or :ref:`implicit ` *line joining* rules." msgstr "" msgid "Physical lines" @@ -360,8 +360,9 @@ msgid "" msgstr "" msgid "" -"The indentation levels of consecutive lines are used to generate :data:" -"`~token.INDENT` and :data:`~token.DEDENT` tokens, using a stack, as follows." +"The indentation levels of consecutive lines are used to " +"generate :data:`~token.INDENT` and :data:`~token.DEDENT` tokens, using a " +"stack, as follows." msgstr "" msgid "" @@ -372,10 +373,10 @@ msgid "" "the stack. If it is equal, nothing happens. If it is larger, it is pushed on " "the stack, and one :data:`!INDENT` token is generated. If it is smaller, it " "*must* be one of the numbers occurring on the stack; all numbers on the " -"stack that are larger are popped off, and for each number popped off a :data:" -"`!DEDENT` token is generated. At the end of the file, a :data:`!DEDENT` " -"token is generated for each number remaining on the stack that is larger " -"than zero." +"stack that are larger are popped off, and for each number popped off " +"a :data:`!DEDENT` token is generated. At the end of the file, a :data:`!" +"DEDENT` token is generated for each number remaining on the stack that is " +"larger than zero." msgstr "" msgid "" @@ -436,22 +437,23 @@ msgid "End marker" msgstr "" msgid "" -"At the end of non-interactive input, the lexical analyzer generates an :data:" -"`~token.ENDMARKER` token." +"At the end of non-interactive input, the lexical analyzer generates " +"an :data:`~token.ENDMARKER` token." msgstr "" msgid "Other tokens" msgstr "" msgid "" -"Besides :data:`~token.NEWLINE`, :data:`~token.INDENT` and :data:`~token." -"DEDENT`, the following categories of tokens exist: *identifiers* and " -"*keywords* (:data:`~token.NAME`), *literals* (such as :data:`~token.NUMBER` " -"and :data:`~token.STRING`), and other symbols (*operators* and " -"*delimiters*, :data:`~token.OP`). Whitespace characters (other than logical " -"line terminators, discussed earlier) are not tokens, but serve to delimit " -"tokens. Where ambiguity exists, a token comprises the longest possible " -"string that forms a legal token, when read from left to right." +"Besides :data:`~token.NEWLINE`, :data:`~token.INDENT` " +"and :data:`~token.DEDENT`, the following categories of tokens exist: " +"*identifiers* and *keywords* (:data:`~token.NAME`), *literals* (such " +"as :data:`~token.NUMBER` and :data:`~token.STRING`), and other symbols " +"(*operators* and *delimiters*, :data:`~token.OP`). Whitespace characters " +"(other than logical line terminators, discussed earlier) are not tokens, but " +"serve to delimit tokens. Where ambiguity exists, a token comprises the " +"longest possible string that forms a legal token, when read from left to " +"right." msgstr "" msgid "Names (identifiers and keywords)" @@ -566,15 +568,15 @@ msgid "``_``" msgstr "" msgid "" -"In a ``case`` pattern within a :keyword:`match` statement, ``_`` is a :ref:" -"`soft keyword ` that denotes a :ref:`wildcard `." +"In a ``case`` pattern within a :keyword:`match` statement, ``_`` is " +"a :ref:`soft keyword ` that denotes a :ref:`wildcard " +"`." msgstr "" msgid "" "Separately, the interactive interpreter makes the result of the last " -"evaluation available in the variable ``_``. (It is stored in the :mod:" -"`builtins` module, alongside built-in functions like ``print``.)" +"evaluation available in the variable ``_``. (It is stored in " +"the :mod:`builtins` module, alongside built-in functions like ``print``.)" msgstr "" msgid "" @@ -642,9 +644,9 @@ msgstr "" msgid "" "Normalization is done at the lexical level only. Run-time functions that " "take names as *strings* generally do not normalize their arguments. For " -"example, the variable defined above is accessible at run time in the :func:" -"`globals` dictionary as ``globals()[\"finalization\"]`` but not ``globals()" -"[\"fiⁿₐˡᵢᶻₐᵗᵢᵒₙ\"]``." +"example, the variable defined above is accessible at run time in " +"the :func:`globals` dictionary as ``globals()[\"finalization\"]`` but not " +"``globals()[\"fiⁿₐˡᵢᶻₐᵗᵢᵒₙ\"]``." msgstr "" msgid "" @@ -722,8 +724,8 @@ msgid "Unicode category ```` - spacing combining marks" msgstr "" msgid "" -"```` - another explicit set of characters in `PropList." -"txt`_ to support backwards compatibility" +"```` - another explicit set of characters in " +"`PropList.txt`_ to support backwards compatibility" msgstr "" msgid "Again, ``xid_continue`` closes this set under NFKC normalization." @@ -747,8 +749,8 @@ msgid "Literals are notations for constant values of some built-in types." msgstr "" msgid "" -"In terms of lexical analysis, Python has :ref:`string, bytes ` and :" -"ref:`numeric ` literals." +"In terms of lexical analysis, Python has :ref:`string, bytes ` " +"and :ref:`numeric ` literals." msgstr "" msgid "" @@ -787,10 +789,10 @@ msgid "" msgstr "" msgid "" -"Inside a string literal, the backslash (``\\``) character introduces an :dfn:" -"`escape sequence`, which has special meaning depending on the character " -"after the backslash. For example, ``\\\"`` denotes the double quote " -"character, and does *not* end the string:" +"Inside a string literal, the backslash (``\\``) character introduces " +"an :dfn:`escape sequence`, which has special meaning depending on the " +"character after the backslash. For example, ``\\\"`` denotes the double " +"quote character, and does *not* end the string:" msgstr "" msgid "" @@ -879,8 +881,8 @@ msgstr "" msgid "" "Support for the unicode legacy literal (``u'value'``) was reintroduced to " -"simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:" -"`414` for more information." +"simplify the maintenance of dual Python 2.x and 3.x codebases. " +"See :pep:`414` for more information." msgstr "" msgid "Formal grammar" @@ -1074,14 +1076,14 @@ msgid "" msgstr "" msgid "" -"Octal escapes with value larger than ``0o377`` (255) produce a :exc:" -"`DeprecationWarning`." +"Octal escapes with value larger than ``0o377`` (255) produce " +"a :exc:`DeprecationWarning`." msgstr "" msgid "" -"Octal escapes with value larger than ``0o377`` (255) produce a :exc:" -"`SyntaxWarning`. In a future Python version they will raise a :exc:" -"`SyntaxError`." +"Octal escapes with value larger than ``0o377`` (255) produce " +"a :exc:`SyntaxWarning`. In a future Python version they will raise " +"a :exc:`SyntaxError`." msgstr "" msgid "Hexadecimal character" @@ -1179,8 +1181,8 @@ msgid "" ":dfn:`Bytes literals` are always prefixed with '``b``' or '``B``'; they " "produce an instance of the :class:`bytes` type instead of the :class:`str` " "type. They may only contain ASCII characters; bytes with a numeric value of " -"128 or greater must be expressed with escape sequences (typically :ref:" -"`string-escape-hex` or :ref:`string-escape-oct`):" +"128 or greater must be expressed with escape sequences " +"(typically :ref:`string-escape-hex` or :ref:`string-escape-oct`):" msgstr "" msgid "" @@ -1605,8 +1607,8 @@ msgid "Floating-point literals" msgstr "" msgid "" -"Floating-point (float) literals, such as ``3.14`` or ``1.5``, denote :ref:" -"`approximations of real numbers `." +"Floating-point (float) literals, such as ``3.14`` or ``1.5``, " +"denote :ref:`approximations of real numbers `." msgstr "" msgid "" @@ -1767,13 +1769,14 @@ msgstr "" msgid "" "For some tokens, the distinction is unclear. For example, some people " -"consider ``.``, ``(``, and ``)`` to be delimiters, while others see the :py:" -"func:`getattr` operator and the function call operator(s)." +"consider ``.``, ``(``, and ``)`` to be delimiters, while others see " +"the :py:func:`getattr` operator and the function call operator(s)." msgstr "" msgid "" -"Some of Python's operators, like ``and``, ``or``, and ``not in``, use :ref:" -"`keyword ` tokens rather than \"symbols\" (operator tokens)." +"Some of Python's operators, like ``and``, ``or``, and ``not in``, " +"use :ref:`keyword ` tokens rather than \"symbols\" (operator " +"tokens)." msgstr "" msgid "" diff --git a/reference/simple_stmts.po b/reference/simple_stmts.po index 3dabc6c..ff37245 100644 --- a/reference/simple_stmts.po +++ b/reference/simple_stmts.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -170,9 +170,9 @@ msgstr "" msgid "" "If the target is a subscription: The primary expression in the reference is " -"evaluated. Next, the subscript expression is evaluated. Then, the primary's :" -"meth:`~object.__setitem__` method is called with two arguments: the " -"subscript and the assigned object." +"evaluated. Next, the subscript expression is evaluated. Then, the " +"primary's :meth:`~object.__setitem__` method is called with two arguments: " +"the subscript and the assigned object." msgstr "" msgid "" @@ -186,9 +186,9 @@ msgid "" "must yield an integer. If it is negative, the sequence's length is added to " "it. The resulting value must be a nonnegative integer less than the " "sequence's length, and the sequence is asked to assign the assigned object " -"to its item with that index. If the index is out of range, :exc:" -"`IndexError` is raised (assignment to a subscripted sequence cannot add new " -"items to a list)." +"to its item with that index. If the index is out of " +"range, :exc:`IndexError` is raised (assignment to a subscripted sequence " +"cannot add new items to a list)." msgstr "" msgid "" @@ -202,15 +202,15 @@ msgstr "" msgid "" "If the target is a slicing: The primary expression should evaluate to a " -"mutable sequence object (such as a list). The assigned object should be :" -"term:`iterable`. The slicing's lower and upper bounds should be integers; if " -"they are ``None`` (or not present), the defaults are zero and the sequence's " -"length. If either bound is negative, the sequence's length is added to it. " -"The resulting bounds are clipped to lie between zero and the sequence's " -"length, inclusive. Finally, the sequence object is asked to replace the " -"slice with the items of the assigned sequence. The length of the slice may " -"be different from the length of the assigned sequence, thus changing the " -"length of the target sequence, if the target sequence allows it." +"mutable sequence object (such as a list). The assigned object should " +"be :term:`iterable`. The slicing's lower and upper bounds should be " +"integers; if they are ``None`` (or not present), the defaults are zero and " +"the sequence's length. If either bound is negative, the sequence's length is " +"added to it. The resulting bounds are clipped to lie between zero and the " +"sequence's length, inclusive. Finally, the sequence object is asked to " +"replace the slice with the items of the assigned sequence. The length of " +"the slice may be different from the length of the assigned sequence, thus " +"changing the length of the target sequence, if the target sequence allows it." msgstr "" msgid "" @@ -321,8 +321,8 @@ msgid "" "If the right hand side is present, an annotated assignment performs the " "actual assignment as if there was no annotation present. If the right hand " "side is not present for an expression target, then the interpreter evaluates " -"the target except for the last :meth:`~object.__setitem__` or :meth:`~object." -"__setattr__` call." +"the target except for the last :meth:`~object.__setitem__` " +"or :meth:`~object.__setattr__` call." msgstr "" msgid ":pep:`526` - Syntax for Variable Annotations" @@ -385,11 +385,11 @@ msgid "" "refer to the built-in variables with those names. In the current " "implementation, the built-in variable ``__debug__`` is ``True`` under normal " "circumstances, ``False`` when optimization is requested (command line " -"option :option:`-O`). The current code generator emits no code for an :" -"keyword:`assert` statement when optimization is requested at compile time. " -"Note that it is unnecessary to include the source code for the expression " -"that failed in the error message; it will be displayed as part of the stack " -"trace." +"option :option:`-O`). The current code generator emits no code for " +"an :keyword:`assert` statement when optimization is requested at compile " +"time. Note that it is unnecessary to include the source code for the " +"expression that failed in the error message; it will be displayed as part of " +"the stack trace." msgstr "" msgid "" @@ -471,15 +471,16 @@ msgstr "" msgid "" "In a generator function, the :keyword:`return` statement indicates that the " "generator is done and will cause :exc:`StopIteration` to be raised. The " -"returned value (if any) is used as an argument to construct :exc:" -"`StopIteration` and becomes the :attr:`StopIteration.value` attribute." +"returned value (if any) is used as an argument to " +"construct :exc:`StopIteration` and becomes the :attr:`StopIteration.value` " +"attribute." msgstr "" msgid "" "In an asynchronous generator function, an empty :keyword:`return` statement " -"indicates that the asynchronous generator is done and will cause :exc:" -"`StopAsyncIteration` to be raised. A non-empty :keyword:`!return` statement " -"is a syntax error in an asynchronous generator function." +"indicates that the asynchronous generator is done and will " +"cause :exc:`StopAsyncIteration` to be raised. A non-empty :keyword:`!" +"return` statement is a syntax error in an asynchronous generator function." msgstr "" msgid "The :keyword:`!yield` statement" @@ -506,16 +507,16 @@ msgid "" msgstr "" msgid "" -"Yield expressions and statements are only used when defining a :term:" -"`generator` function, and are only used in the body of the generator " +"Yield expressions and statements are only used when defining " +"a :term:`generator` function, and are only used in the body of the generator " "function. Using :keyword:`yield` in a function definition is sufficient to " "cause that definition to create a generator function instead of a normal " "function." msgstr "" msgid "" -"For full details of :keyword:`yield` semantics, refer to the :ref:" -"`yieldexpr` section." +"For full details of :keyword:`yield` semantics, refer to " +"the :ref:`yieldexpr` section." msgstr "" msgid "The :keyword:`!raise` statement" @@ -530,14 +531,14 @@ msgstr "" msgid "" "Otherwise, :keyword:`raise` evaluates the first expression as the exception " -"object. It must be either a subclass or an instance of :class:" -"`BaseException`. If it is a class, the exception instance will be obtained " -"when needed by instantiating the class with no arguments." +"object. It must be either a subclass or an instance " +"of :class:`BaseException`. If it is a class, the exception instance will be " +"obtained when needed by instantiating the class with no arguments." msgstr "" msgid "" -"The :dfn:`type` of the exception is the exception instance's class, the :dfn:" -"`value` is the instance itself." +"The :dfn:`type` of the exception is the exception instance's class, " +"the :dfn:`value` is the instance itself." msgstr "" msgid "" @@ -585,8 +586,8 @@ msgstr "" msgid "" "A similar mechanism works implicitly if a new exception is raised when an " -"exception is already being handled. An exception may be handled when an :" -"keyword:`except` or :keyword:`finally` clause, or a :keyword:`with` " +"exception is already being handled. An exception may be handled when " +"an :keyword:`except` or :keyword:`finally` clause, or a :keyword:`with` " "statement, is used. The previous exception is then attached as the new " "exception's :attr:`~BaseException.__context__` attribute:" msgstr "" @@ -628,9 +629,9 @@ msgid "" msgstr "" msgid "" -"Additional information on exceptions can be found in section :ref:" -"`exceptions`, and information about handling exceptions is in section :ref:" -"`try`." +"Additional information on exceptions can be found in " +"section :ref:`exceptions`, and information about handling exceptions is in " +"section :ref:`try`." msgstr "" msgid ":const:`None` is now permitted as ``Y`` in ``raise X from Y``." @@ -652,8 +653,8 @@ msgid "The :keyword:`!break` statement" msgstr "" msgid "" -":keyword:`break` may only occur syntactically nested in a :keyword:`for` or :" -"keyword:`while` loop, but not nested in a function or class definition " +":keyword:`break` may only occur syntactically nested in a :keyword:`for` " +"or :keyword:`while` loop, but not nested in a function or class definition " "within that loop." msgstr "" @@ -701,9 +702,9 @@ msgid "find a module, loading and initializing it if necessary" msgstr "" msgid "" -"define a name or names in the current namespace for the scope where the :" -"keyword:`import` statement occurs, just as an assignment statement would " -"(including :keyword:`global` and :keyword:`nonlocal` semantics)." +"define a name or names in the current namespace for the scope where " +"the :keyword:`import` statement occurs, just as an assignment statement " +"would (including :keyword:`global` and :keyword:`nonlocal` semantics)." msgstr "" msgid "" @@ -728,8 +729,8 @@ msgid "" msgstr "" msgid "" -"If the module name is followed by :keyword:`!as`, then the name following :" -"keyword:`!as` is bound directly to the imported module." +"If the module name is followed by :keyword:`!as`, then the name " +"following :keyword:`!as` is bound directly to the imported module." msgstr "" msgid "" @@ -780,10 +781,10 @@ msgid "" "import foo # foo imported and bound locally\n" "import foo.bar.baz # foo, foo.bar, and foo.bar.baz imported, foo " "bound locally\n" -"import foo.bar.baz as fbb # foo, foo.bar, and foo.bar.baz imported, foo.bar." -"baz bound as fbb\n" -"from foo.bar import baz # foo, foo.bar, and foo.bar.baz imported, foo.bar." -"baz bound as baz\n" +"import foo.bar.baz as fbb # foo, foo.bar, and foo.bar.baz imported, " +"foo.bar.baz bound as fbb\n" +"from foo.bar import baz # foo, foo.bar, and foo.bar.baz imported, " +"foo.bar.baz bound as baz\n" "from foo import attr # foo imported and foo.attr bound as attr" msgstr "" @@ -836,8 +837,8 @@ msgstr "" msgid "" "Raises an :ref:`auditing event ` ``import`` with arguments " -"``module``, ``filename``, ``sys.path``, ``sys.meta_path``, ``sys." -"path_hooks``." +"``module``, ``filename``, ``sys.path``, ``sys.meta_path``, " +"``sys.path_hooks``." msgstr "" msgid "Lazy imports" @@ -845,20 +846,20 @@ msgstr "" msgid "" "The :keyword:`lazy` keyword is a :ref:`soft keyword ` that " -"only has special meaning when it appears immediately before an :keyword:" -"`import` or :keyword:`from` statement. When an import statement is preceded " -"by the :keyword:`lazy` keyword, the import becomes *lazy*: the module is not " -"loaded immediately at the import statement. Instead, a lazy proxy object is " -"created and bound to the name. The actual module is loaded on first use of " -"that name." +"only has special meaning when it appears immediately before " +"an :keyword:`import` or :keyword:`from` statement. When an import statement " +"is preceded by the :keyword:`lazy` keyword, the import becomes *lazy*: the " +"module is not loaded immediately at the import statement. Instead, a lazy " +"proxy object is created and bound to the name. The actual module is loaded " +"on first use of that name." msgstr "" msgid "" "Lazy imports are only permitted at module scope. Using :keyword:`lazy` " -"inside a function, class body, or :keyword:`try`/:keyword:`except`/:keyword:" -"`finally` block raises a :exc:`SyntaxError`. Star imports cannot be lazy " -"(``lazy from module import *`` is a syntax error), and :ref:`future " -"statements ` cannot be lazy." +"inside a function, class body, " +"or :keyword:`try`/:keyword:`except`/:keyword:`finally` block raises " +"a :exc:`SyntaxError`. Star imports cannot be lazy (``lazy from module import " +"*`` is a syntax error), and :ref:`future statements ` cannot be lazy." msgstr "" msgid "" @@ -884,9 +885,9 @@ msgid "" msgstr "" msgid "" -"If an error occurs during module loading (such as :exc:`ImportError` or :exc:" -"`SyntaxError`), it is raised at the point where the lazy import is first " -"used, not at the import statement itself." +"If an error occurs during module loading (such as :exc:`ImportError` " +"or :exc:`SyntaxError`), it is raised at the point where the lazy import is " +"first used, not at the import statement itself." msgstr "" msgid "See :pep:`810` for the full specification of lazy imports." @@ -897,12 +898,12 @@ msgstr "" msgid "" "As an alternative to using the :keyword:`lazy` keyword, a module can opt " -"into lazy loading for specific imports by defining a module-level :attr:" -"`~module.__lazy_modules__` variable. When present, it must be a container " -"of fully qualified module name strings. Any regular (non-``lazy``) :keyword:" -"`import` statement at module scope whose target appears in :attr:`!" -"__lazy_modules__` is treated as a lazy import, exactly as if the :keyword:" -"`lazy` keyword had been used." +"into lazy loading for specific imports by defining a module-" +"level :attr:`~module.__lazy_modules__` variable. When present, it must be a " +"container of fully qualified module name strings. Any regular (non-" +"``lazy``) :keyword:`import` statement at module scope whose target appears " +"in :attr:`!__lazy_modules__` is treated as a lazy import, exactly as if " +"the :keyword:`lazy` keyword had been used." msgstr "" msgid "" @@ -921,8 +922,9 @@ msgid "" msgstr "" msgid "" -"Relative imports are resolved to their absolute name before the lookup, so :" -"attr:`!__lazy_modules__` must always contain fully qualified module names." +"Relative imports are resolved to their absolute name before the lookup, " +"so :attr:`!__lazy_modules__` must always contain fully qualified module " +"names." msgstr "" msgid "" @@ -941,9 +943,9 @@ msgid "" msgstr "" msgid "" -"Imports inside functions, class bodies, or :keyword:`try`/:keyword:`except`/:" -"keyword:`finally` blocks are always eager, regardless of :attr:`!" -"__lazy_modules__`." +"Imports inside functions, class bodies, " +"or :keyword:`try`/:keyword:`except`/:keyword:`finally` blocks are always " +"eager, regardless of :attr:`!__lazy_modules__`." msgstr "" msgid "Future statements" @@ -1031,11 +1033,11 @@ msgid "" msgstr "" msgid "" -"Code compiled by calls to the built-in functions :func:`exec` and :func:" -"`compile` that occur in a module :mod:`!M` containing a future statement " -"will, by default, use the new syntax or semantics associated with the future " -"statement. This can be controlled by optional arguments to :func:`compile` " -"--- see the documentation of that function for details." +"Code compiled by calls to the built-in functions :func:`exec` " +"and :func:`compile` that occur in a module :mod:`!M` containing a future " +"statement will, by default, use the new syntax or semantics associated with " +"the future statement. This can be controlled by optional arguments " +"to :func:`compile` --- see the documentation of that function for details." msgstr "" msgid "" @@ -1083,8 +1085,8 @@ msgid "" "string or code object supplied to the built-in :func:`exec` function does " "not affect the code block *containing* the function call, and code contained " "in such a string is unaffected by :keyword:`!global` statements in the code " -"containing the function call. The same applies to the :func:`eval` and :" -"func:`compile` functions." +"containing the function call. The same applies to the :func:`eval` " +"and :func:`compile` functions." msgstr "" msgid "The :keyword:`!nonlocal` statement" @@ -1097,8 +1099,8 @@ msgid "" "identifiers to refer to names previously bound in nonlocal scopes. It allows " "encapsulated code to rebind such nonlocal identifiers. If a name is bound " "in more than one nonlocal scope, the nearest binding is used. If a name is " -"not bound in any nonlocal scope, or if there is no nonlocal scope, a :exc:" -"`SyntaxError` is raised." +"not bound in any nonlocal scope, or if there is no nonlocal scope, " +"a :exc:`SyntaxError` is raised." msgstr "" msgid "" @@ -1115,8 +1117,8 @@ msgstr "" msgid "" "**Programmer's note:** :keyword:`nonlocal` is a directive to the parser and " -"applies only to code parsed along with it. See the note for the :keyword:" -"`global` statement." +"applies only to code parsed along with it. See the note for " +"the :keyword:`global` statement." msgstr "" msgid "The :keyword:`!type` statement" @@ -1150,9 +1152,9 @@ msgstr "" msgid "" "The value of the type alias is evaluated in the annotation scope. It is not " "evaluated when the type alias is created, but only when the value is " -"accessed through the type alias's :attr:`!__value__` attribute (see :ref:" -"`lazy-evaluation`). This allows the type alias to refer to names that are " -"not yet defined." +"accessed through the type alias's :attr:`!__value__` attribute " +"(see :ref:`lazy-evaluation`). This allows the type alias to refer to names " +"that are not yet defined." msgstr "" msgid "" diff --git a/reference/toplevel_components.po b/reference/toplevel_components.po index 5b7e490..166f62a 100644 --- a/reference/toplevel_components.po +++ b/reference/toplevel_components.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,10 +40,10 @@ msgid "" "interpreter is invoked, it is useful to have a notion of a complete Python " "program. A complete Python program is executed in a minimally initialized " "environment: all built-in and standard modules are available, but none have " -"been initialized, except for :mod:`sys` (various system services), :mod:" -"`builtins` (built-in functions, exceptions and ``None``) and :mod:" -"`__main__`. The latter is used to provide the local and global namespace " -"for execution of the complete program." +"been initialized, except for :mod:`sys` (various system " +"services), :mod:`builtins` (built-in functions, exceptions and ``None``) " +"and :mod:`__main__`. The latter is used to provide the local and global " +"namespace for execution of the complete program." msgstr "" msgid "" diff --git a/sphinx.po b/sphinx.po index 7ede7cc..58de707 100644 --- a/sphinx.po +++ b/sphinx.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-07 14:47+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -220,10 +220,16 @@ msgstr "" msgid "Start here: a tour of Python's syntax and features" msgstr "" +msgid "Built-ins reference" +msgstr "" + +msgid "Built-in functions and classes" +msgstr "" + msgid "Library reference" msgstr "" -msgid "Standard library and builtins" +msgid "Standard library modules" msgstr "" msgid "Language reference" @@ -361,9 +367,6 @@ msgstr "" msgid "About the documentation" msgstr "" -msgid "Download these documents" -msgstr "" - msgid "Docs by version" msgstr "" @@ -379,8 +382,8 @@ msgid "Python documentation for the current stable release" msgstr "" msgid "" -"This is a deploy preview created from a pull request.\n" +"This is a deploy preview created from a pull request.\n" " For authoritative documentation, see" msgstr "" diff --git a/tutorial/appendix.po b/tutorial/appendix.po index cc633bb..607b472 100644 --- a/tutorial/appendix.po +++ b/tutorial/appendix.po @@ -5,18 +5,17 @@ # # Translators: # Bhuvansh Kataria, 2026 -# DARSHAN RAJPUT, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-11 14:51+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: DARSHAN RAJPUT, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,8 +33,8 @@ msgid "" "interpreter is supported on all platforms with minimal line control " "capabilities." msgstr "" -"ਇੰਟਰਐਕਟਿਵ :term:\\REPL` ਦੇ ਦੋ ਰੂਪ ਹਨ। ਕਲਾਸਿਕ ਮੁੱਢਲਾ ਇੰਟਰਪ੍ਰੀਟਰ ਸਾਰੇ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਘੱਟੋ-ਘੱਟ " -"ਲਾਈਨ ਕੰਟਰੋਲ ਸਮਰੱਥਾਵਾਂ ਨਾਲ ਸਮਰਥਿਤ ਹੈ।`" +"ਇੰਟਰਐਕਟਿਵ :term:`REPL` ਦੇ ਦੋ ਵਰਜਨ ਹਨ। ਕਲਾਸਿਕ ਬੇਸਿਕ ਇੰਟਰਪ੍ਰਿਟਰ ਉਹਨਾਂ ਸਾਰੇ ਪਲੇਟਫਾਰਮਾਂ " +"'ਤੇ ਸਮਰਥਿਤ ਹੈ ਜਿੱਥੇ ਘੱਟੋ-ਘੱਟ ਲਾਈਨ ਕੰਟਰੋਲ ਸਮਰੱਥਾਵਾਂ ਮੌਜੂਦ ਹਨ।" msgid "" "Since Python 3.13, a new interactive shell is used by default. This one " @@ -43,54 +42,80 @@ msgid "" "disable color, see :ref:`using-on-controlling-color` for details. Function " "keys provide some additional functionality. :kbd:`F1` enters the interactive " "help browser :mod:`pydoc`. :kbd:`F2` allows for browsing command-line " -"history with neither output nor the :term:`>>>` and :term:`...` prompts. :" -"kbd:`F3` enters \"paste mode\", which makes pasting larger blocks of code " -"easier. Press :kbd:`F3` to return to the regular prompt." +"history with neither output nor the :term:`>>>` and :term:`...` " +"prompts. :kbd:`F3` enters \"paste mode\", which makes pasting larger blocks " +"of code easier. Press :kbd:`F3` to return to the regular prompt." msgstr "" +"Python 3.13 ਤੋਂ ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਇੱਕ ਨਵਾਂ interactive shell ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਰੰਗ, " +"multiline editing, history browsing ਅਤੇ paste mode ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਰੰਗ ਬੰਦ ਕਰਨ " +"ਲਈ :ref:`using-on-controlling-color` ਵੇਖੋ। Function keys ਕੁਝ ਵਾਧੂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਿੰਦੀਆਂ " +"ਹਨ। :kbd:`F1` interactive help browser :mod:`pydoc` ਖੋਲ੍ਹਦਾ ਹੈ। :kbd:`F2` " +"output ਅਤੇ :term:`>>>` ਅਤੇ :term:`...` prompts ਤੋਂ ਬਿਨਾਂ command-line history ਵੇਖਣ " +"ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। :kbd:`F3` \"paste mode\" ਵਿੱਚ ਦਾਖਲ ਕਰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਕੋਡ ਦੇ ਵੱਡੇ " +"ਬਲੌਕ ਪੇਸਟ ਕਰਨਾ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ। ਸਧਾਰਣ prompt 'ਤੇ ਵਾਪਸ ਆਉਣ ਲਈ :kbd:`F3` ਦੁਬਾਰਾ ਦਬਾਓ।" msgid "" "When using the new interactive shell, exit the shell by typing :kbd:`exit` " "or :kbd:`quit`. Adding call parentheses after those commands is not required." msgstr "" +"ਨਵੇਂ interactive shell ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ :kbd:`exit` ਜਾਂ :kbd:`quit` ਲਿਖ ਕੇ shell ਤੋਂ " +"ਬਾਹਰ ਨਿਕਲਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਕਮਾਂਡਾਂ ਦੇ ਬਾਅਦ parentheses ਜੋੜਨਾ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ।" msgid "" -"If the new interactive shell is not desired, it can be disabled via the :" -"envvar:`PYTHON_BASIC_REPL` environment variable." +"If the new interactive shell is not desired, it can be disabled via " +"the :envvar:`PYTHON_BASIC_REPL` environment variable." msgstr "" +"ਜੇ ਨਵਾਂ interactive shell ਨਹੀਂ ਚਾਹੀਦਾ, ਤਾਂ ਇਸਨੂੰ :envvar:`PYTHON_BASIC_REPL` " +"environment variable ਰਾਹੀਂ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "Error Handling" -msgstr "" +msgstr "ਗਲਤੀ ਸੰਭਾਲ" msgid "" "When an error occurs, the interpreter prints an error message and a stack " "trace. In interactive mode, it then returns to the primary prompt; when " "input came from a file, it exits with a nonzero exit status after printing " -"the stack trace. (Exceptions handled by an :keyword:`except` clause in a :" -"keyword:`try` statement are not errors in this context.) Some errors are " +"the stack trace. (Exceptions handled by an :keyword:`except` clause in " +"a :keyword:`try` statement are not errors in this context.) Some errors are " "unconditionally fatal and cause an exit with a nonzero exit status; this " "applies to internal inconsistencies and some cases of running out of " "memory. All error messages are written to the standard error stream; normal " "output from executed commands is written to standard output." msgstr "" +"ਜਦੋਂ ਕੋਈ ਗਲਤੀ ਹੁੰਦੀ ਹੈ, interpreter ਇੱਕ error message ਅਤੇ stack trace ਛਾਪਦਾ ਹੈ। " +"Interactive mode ਵਿੱਚ ਇਹ ਮੁੜ primary prompt 'ਤੇ ਆ ਜਾਂਦਾ ਹੈ। ਜੇ input ਕਿਸੇ ਫਾਈਲ ਤੋਂ " +"ਆਇਆ ਹੋਵੇ ਤਾਂ stack trace ਛਾਪਣ ਤੋਂ ਬਾਅਦ nonzero exit status ਨਾਲ ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ। " +"(:keyword:`try` statement ਵਿੱਚ :keyword:`except` ਦੁਆਰਾ ਸੰਭਾਲੀਆਂ exceptions ਇਸ " +"ਸੰਦਰਭ ਵਿੱਚ ਗਲਤੀਆਂ ਨਹੀਂ ਮੰਨੀਆਂ ਜਾਂਦੀਆਂ।) ਕੁਝ ਗਲਤੀਆਂ ਗੰਭੀਰ ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ nonzero exit status " +"ਨਾਲ ਪ੍ਰੋਗਰਾਮ ਬੰਦ ਕਰ ਦਿੰਦੀਆਂ ਹਨ। ਇਹ ਅੰਦਰੂਨੀ ਅਸੰਗਤਤਾਵਾਂ ਅਤੇ memory ਖਤਮ ਹੋਣ ਦੇ ਕੁਝ ਮਾਮਲਿਆਂ 'ਤੇ " +"ਲਾਗੂ ਹੁੰਦਾ ਹੈ। ਸਾਰੇ error messages standard error stream ਵਿੱਚ ਲਿਖੇ ਜਾਂਦੇ ਹਨ, ਜਦਕਿ ਆਮ " +"output standard output ਵਿੱਚ ਲਿਖੀ ਜਾਂਦੀ ਹੈ।" msgid "" "Typing the interrupt character (usually :kbd:`Control-C` or :kbd:`Delete`) " "to the primary or secondary prompt cancels the input and returns to the " "primary prompt. [#]_ Typing an interrupt while a command is executing raises " -"the :exc:`KeyboardInterrupt` exception, which may be handled by a :keyword:" -"`try` statement." +"the :exc:`KeyboardInterrupt` exception, which may be handled by " +"a :keyword:`try` statement." msgstr "" +"Primary ਜਾਂ secondary prompt 'ਤੇ interrupt character (ਆਮ ਤੌਰ 'ਤੇ :kbd:`Control-" +"C` ਜਾਂ :kbd:`Delete`) ਦਬਾਉਣ ਨਾਲ input ਰੱਦ ਹੋ ਜਾਂਦੀ ਹੈ ਅਤੇ ਮੁੜ primary prompt 'ਤੇ " +"ਵਾਪਸੀ ਹੋ ਜਾਂਦੀ ਹੈ। [#]_ ਜੇ ਕਮਾਂਡ ਚੱਲ ਰਹੀ ਹੋਵੇ ਅਤੇ interrupt ਦਿੱਤਾ ਜਾਵੇ, " +"ਤਾਂ :exc:`KeyboardInterrupt` exception ਉਤਪੰਨ ਹੁੰਦੀ ਹੈ, ਜਿਸਨੂੰ :keyword:`try` " +"statement ਦੁਆਰਾ ਸੰਭਾਲਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "Executable Python Scripts" -msgstr "" +msgstr "ਚਲਾਉਣਯੋਗ Python ਸਕ੍ਰਿਪਟਾਂ" msgid "" "On BSD'ish Unix systems, Python scripts can be made directly executable, " "like shell scripts, by putting the line ::" msgstr "" +"BSD-ਜਿਹੇ Unix ਸਿਸਟਮਾਂ 'ਤੇ Python ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ shell scripts ਵਾਂਗ ਸਿੱਧਾ ਚਲਾਉਣਯੋਗ ਬਣਾਇਆ " +"ਜਾ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਹੇਠਾਂ ਦਿੱਤੀ ਲਾਈਨ ਜੋੜੋ::" msgid "#!/usr/bin/env python3" -msgstr "" +msgstr "#!/usr/bin/env python3" msgid "" "(assuming that the interpreter is on the user's :envvar:`PATH`) at the " @@ -100,14 +125,20 @@ msgid "" "(``'\\r\\n'``) line ending. Note that the hash, or pound, character, " "``'#'``, is used to start a comment in Python." msgstr "" +"(ਇਹ ਮੰਨਦੇ ਹੋਏ ਕਿ interpreter ਵਰਤੋਂਕਾਰ ਦੇ :envvar:`PATH` ਵਿੱਚ ਹੈ) ਇਸਨੂੰ ਸਕ੍ਰਿਪਟ ਦੀ ਸ਼ੁਰੂਆਤ " +"ਵਿੱਚ ਰੱਖੋ ਅਤੇ ਫਾਈਲ ਨੂੰ executable mode ਦਿਓ। ``#!`` ਫਾਈਲ ਦੇ ਪਹਿਲੇ ਦੋ ਅੱਖਰ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ। " +"ਕੁਝ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਇਹ ਪਹਿਲੀ ਲਾਈਨ Unix-style line ending (``'\\n'``) ਨਾਲ ਖਤਮ ਹੋਣੀ " +"ਚਾਹੀਦੀ ਹੈ, Windows (``'\\r\\n'``) line ending ਨਾਲ ਨਹੀਂ। ਧਿਆਨ ਦਿਓ ਕਿ ``'#'`` " +"ਚਿੰਨ੍ਹ Python ਵਿੱਚ comment ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" -"The script can be given an executable mode, or permission, using the :" -"program:`chmod` command." +"The script can be given an executable mode, or permission, using " +"the :program:`chmod` command." msgstr "" +"ਸਕ੍ਰਿਪਟ ਨੂੰ executable mode ਜਾਂ ਅਨੁਮਤੀ :program:`chmod` ਕਮਾਂਡ ਰਾਹੀਂ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "$ chmod +x myscript.py" -msgstr "" +msgstr "$ chmod +x myscript.py" msgid "" "On Windows systems, there is no notion of an \"executable mode\". The " @@ -116,9 +147,13 @@ msgid "" "extension can also be ``.pyw``, in that case, the console window that " "normally appears is suppressed." msgstr "" +"Windows ਸਿਸਟਮਾਂ ਵਿੱਚ \"executable mode\" ਦੀ ਕੋਈ ਧਾਰਣਾ ਨਹੀਂ ਹੁੰਦੀ। Python installer " +"ਆਪਣੇ ਆਪ ``.py`` ਫਾਈਲਾਂ ਨੂੰ ``python.exe`` ਨਾਲ ਜੋੜ ਦਿੰਦਾ ਹੈ, ਤਾਂ ਜੋ Python ਫਾਈਲ 'ਤੇ ਡਬਲ-" +"ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਉਹ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਚੱਲ ਪਏ। Extension ``.pyw`` ਵੀ ਹੋ ਸਕਦੀ ਹੈ; ਉਸ ਸਥਿਤੀ " +"ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਦਿਖਾਈ ਦੇਣ ਵਾਲੀ console window ਨਹੀਂ ਦਿਖਾਈ ਜਾਂਦੀ।" msgid "The Interactive Startup File" -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ ਸਟਾਰਟਅੱਪ ਫਾਈਲ" msgid "" "When you use Python interactively, it is frequently handy to have some " @@ -127,6 +162,11 @@ msgid "" "the name of a file containing your start-up commands. This is similar to " "the :file:`.profile` feature of the Unix shells." msgstr "" +"ਜਦੋਂ ਤੁਸੀਂ Python ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ ਵਰਤਦੇ ਹੋ, ਤਾਂ ਅਕਸਰ ਇਹ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਕਿ " +"interpreter ਸ਼ੁਰੂ ਹੋਣ ਹਰ ਵਾਰ ਕੁਝ ਮਿਆਰੀ ਕਮਾਂਡਾਂ ਆਪਣੇ ਆਪ ਚੱਲਣ। ਇਸ ਲਈ " +"ਤੁਸੀਂ :envvar:`PYTHONSTARTUP` environment variable ਨੂੰ ਉਸ ਫਾਈਲ ਦੇ ਨਾਮ 'ਤੇ ਸੈੱਟ ਕਰ " +"ਸਕਦੇ ਹੋ ਜਿਸ ਵਿੱਚ ਤੁਹਾਡੀਆਂ startup commands ਹੋਣ। ਇਹ Unix shells ਦੀ :file:`.profile` " +"ਵਿਸ਼ੇਸ਼ਤਾ ਵਰਗਾ ਹੈ।" msgid "" "This file is only read in interactive sessions, not when Python reads " @@ -137,14 +177,24 @@ msgid "" "qualification in the interactive session. You can also change the prompts " "``sys.ps1`` and ``sys.ps2`` in this file." msgstr "" +"ਇਹ ਫਾਈਲ ਸਿਰਫ ਇੰਟਰਐਕਟਿਵ ਸੈਸ਼ਨਾਂ ਵਿੱਚ ਹੀ ਪੜ੍ਹੀ ਜਾਂਦੀ ਹੈ, ਨਾ ਕਿ ਜਦੋਂ ਪਾਈਥਨ ਸਕ੍ਰਿਪਟ ਤੋਂ ਕਮਾਂਡਾਂ " +"ਪੜ੍ਹਦਾ ਹੈ, ਅਤੇ ਨਾ ਹੀ ਜਦੋਂ :file:`/dev/tty` ਨੂੰ ਕਮਾਂਡਾਂ ਦਾ ਸਪਸ਼ਟ ਸਰੋਤ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ (ਜੋ ਕਿ " +"ਹੋਰ ਤਰ੍ਹਾਂ ਇੰਟਰਐਕਟਿਵ ਸੈਸ਼ਨ ਵਾਂਗ ਹੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ). ਇਹ ਉਸੇ ਨੇਮਸਪੇਸ ਵਿੱਚ ਚਲਾਈ ਜਾਂਦੀ ਹੈ ਜਿੱਥੇ " +"ਇੰਟਰਐਕਟਿਵ ਕਮਾਂਡਾਂ ਚਲਾਈਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਤਾਂ ਜੋ ਇਹ ਜੋ ਆਬਜੈਕਟ ਪਰਿਭਾਸ਼ਿਤ ਜਾਂ ਇੰਪੋਰਟ ਕਰਦਾ ਹੈ, ਉਹਨਾਂ " +"ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਸੈਸ਼ਨ ਵਿੱਚ ਬਿਨਾਂ ਕਿਸੇ ਯੋਗਤਾ ਦੇ ਵਰਤਿਆ ਜਾ ਸਕੇ। ਤੁਸੀਂ ਇਸ ਫਾਈਲ ਵਿੱਚ ``sys.ps1`` " +"ਅਤੇ ``sys.ps2`` ਪ੍ਰੋਂਪਟਸ ਵੀ ਬਦਲ ਸਕਦੇ ਹੋ।" msgid "" "If you want to read an additional start-up file from the current directory, " -"you can program this in the global start-up file using code like ``if os." -"path.isfile('.pythonrc.py'): exec(open('.pythonrc.py').read())``. If you " +"you can program this in the global start-up file using code like ``if " +"os.path.isfile('.pythonrc.py'): exec(open('.pythonrc.py').read())``. If you " "want to use the startup file in a script, you must do this explicitly in the " "script::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਤੋਂ ਕੋਈ ਵਾਧੂ startup file ਪੜ੍ਹਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ global " +"startup file ਵਿੱਚ ``if os.path.isfile('.pythonrc.py'): " +"exec(open('.pythonrc.py').read())`` ਵਰਗਾ ਕੋਡ ਲਿਖ ਸਕਦੇ ਹੋ। ਜੇ startup file ਨੂੰ ਕਿਸੇ " +"script ਵਿੱਚ ਵਰਤਣਾ ਹੋਵੇ, ਤਾਂ ਇਹ ਕੰਮ script ਵਿੱਚ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਕਰਨਾ ਪਵੇਗਾ::" msgid "" "import os\n" @@ -154,9 +204,15 @@ msgid "" " startup_file = fobj.read()\n" " exec(startup_file)" msgstr "" +"import os\n" +"filename = os.environ.get('PYTHONSTARTUP')\n" +"if filename and os.path.isfile(filename):\n" +" with open(filename) as fobj:\n" +" startup_file = fobj.read()\n" +" exec(startup_file)" msgid "The Customization Modules" -msgstr "" +msgstr "ਅਨੁਕੂਲਨ ਮੋਡੀਊਲ" msgid "" "Python provides two hooks to let you customize it: :index:`sitecustomize` " @@ -164,12 +220,18 @@ msgid "" "location of your user site-packages directory. Start Python and run this " "code::" msgstr "" +"Python ਤੁਹਾਨੂੰ ਇਸਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨ ਲਈ ਦੋ hooks ਦਿੰਦਾ ਹੈ: :index:`sitecustomize` " +"ਅਤੇ :index:`usercustomize`। ਇਹ ਕਿਵੇਂ ਕੰਮ ਕਰਦੇ ਹਨ, ਇਹ ਵੇਖਣ ਲਈ ਪਹਿਲਾਂ ਆਪਣੀ user site-" +"packages ਡਾਇਰੈਕਟਰੀ ਦਾ ਸਥਾਨ ਲੱਭੋ। Python ਸ਼ੁਰੂ ਕਰੋ ਅਤੇ ਇਹ ਕੋਡ ਚਲਾਓ::" msgid "" ">>> import site\n" ">>> site.getusersitepackages()\n" "'/home/user/.local/lib/python3.x/site-packages'" msgstr "" +">>> import site\n" +">>> site.getusersitepackages()\n" +"'/home/user/.local/lib/python3.x/site-packages'" msgid "" "Now you can create a file named :file:`usercustomize.py` in that directory " @@ -177,16 +239,24 @@ msgid "" "unless it is started with the :option:`-s` option to disable the automatic " "import." msgstr "" +"ਹੁਣ ਤੁਸੀਂ ਉਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ :file:`usercustomize.py` ਨਾਮ ਦੀ ਫਾਈਲ ਬਣਾ ਸਕਦੇ ਹੋ ਅਤੇ ਇਸ " +"ਵਿੱਚ ਆਪਣੀ ਪਸੰਦ ਦੀ ਕੋਈ ਵੀ ਸਮੱਗਰੀ ਰੱਖ ਸਕਦੇ ਹੋ। ਇਹ Python ਦੇ ਹਰ ਚਲਾਉਣ 'ਤੇ ਪ੍ਰਭਾਵ ਪਾਏਗੀ, " +"ਜਦ ਤੱਕ Python ਨੂੰ automatic import ਬੰਦ ਕਰਨ ਲਈ :option:`-s` ਵਿਕਲਪ ਨਾਲ ਸ਼ੁਰੂ ਨਾ ਕੀਤਾ " +"ਗਿਆ ਹੋਵੇ।" msgid "" ":index:`sitecustomize` works in the same way, but is typically created by an " "administrator of the computer in the global site-packages directory, and is " -"imported before :index:`usercustomize`. See the documentation of the :mod:" -"`site` module for more details." +"imported before :index:`usercustomize`. See the documentation of " +"the :mod:`site` module for more details." msgstr "" +":index:`sitecustomize` ਵੀ ਇਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ, ਪਰ ਆਮ ਤੌਰ 'ਤੇ ਇਸਨੂੰ ਕੰਪਿਊਟਰ ਦਾ " +"ਪ੍ਰਸ਼ਾਸਕ global site-packages ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਬਣਾਉਂਦਾ ਹੈ ਅਤੇ " +"ਇਸਨੂੰ :index:`usercustomize` ਤੋਂ ਪਹਿਲਾਂ import ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਹੋਰ ਵੇਰਵਿਆਂ " +"ਲਈ :mod:`site` ਮੋਡੀਊਲ ਦੀ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਵੇਖੋ।" msgid "Footnotes" -msgstr "" +msgstr "ਫੁਟਨੋਟ" msgid "A problem with the GNU Readline package may prevent this." -msgstr "" +msgstr "GNU Readline ਪੈਕੇਜ ਨਾਲ ਸੰਬੰਧਿਤ ਕੋਈ ਸਮੱਸਿਆ ਇਸਨੂੰ ਰੋਕ ਸਕਦੀ ਹੈ।" diff --git a/tutorial/appetite.po b/tutorial/appetite.po index 89f1892..977013c 100644 --- a/tutorial/appetite.po +++ b/tutorial/appetite.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Whetting Your Appetite" -msgstr "" +msgstr "ਤੁਹਾਡੀ ਰੁਚੀ ਜਗਾਉਣਾ" msgid "" "If you do much work on computers, eventually you find that there's some task " @@ -32,6 +32,11 @@ msgid "" "of photo files in a complicated way. Perhaps you'd like to write a small " "custom database, or a specialized GUI application, or a simple game." msgstr "" +"ਜੇ ਤੁਸੀਂ ਕੰਪਿਊਟਰਾਂ ਉੱਤੇ ਕਾਫ਼ੀ ਕੰਮ ਕਰਦੇ ਹੋ, ਤਾਂ ਆਖ਼ਿਰਕਾਰ ਤੁਹਾਨੂੰ ਕੋਈ ਅਜਿਹਾ ਕੰਮ ਮਿਲਦਾ ਹੈ ਜਿਸਨੂੰ ਤੁਸੀਂ " +"ਸਵੈਚਾਲਿਤ ਕਰਨਾ ਚਾਹੋਗੇ। ਉਦਾਹਰਨ ਵਜੋਂ, ਤੁਸੀਂ ਬਹੁਤ ਸਾਰੀਆਂ ਟੈਕਸਟ ਫ਼ਾਈਲਾਂ ਵਿੱਚ ਖੋਜ ਅਤੇ ਬਦਲਾਅ ਕਰਨਾ " +"ਚਾਹ ਸਕਦੇ ਹੋ, ਜਾਂ ਫੋਟੋ ਫ਼ਾਈਲਾਂ ਦੇ ਇਕ ਸਮੂਹ ਦੇ ਨਾਮ ਬਦਲ ਕੇ ਉਨ੍ਹਾਂ ਨੂੰ ਨਵੇਂ ਢੰਗ ਨਾਲ ਵਿਉਂਤਬੱਧ ਕਰਨਾ ਚਾਹ " +"ਸਕਦੇ ਹੋ। ਸ਼ਾਇਦ ਤੁਸੀਂ ਇੱਕ ਛੋਟਾ ਕਸਟਮ ਡਾਟਾਬੇਸ, ਕੋਈ ਖਾਸ GUI ਐਪਲੀਕੇਸ਼ਨ, ਜਾਂ ਇੱਕ ਸਧਾਰਣ ਖੇਡ ਲਿਖਣਾ " +"ਚਾਹੋ।" msgid "" "If you're a professional software developer, you may have to work with " @@ -41,9 +46,14 @@ msgid "" "written a program that could use an extension language, and you don't want " "to design and implement a whole new language for your application." msgstr "" +"ਜੇ ਤੁਸੀਂ ਇੱਕ ਪੇਸ਼ੇਵਰ ਸੌਫਟਵੇਅਰ ਡਿਵੈਲਪਰ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਕਈ C/C++/Java ਲਾਇਬ੍ਰੇਰੀਆਂ ਨਾਲ ਕੰਮ ਕਰਨਾ ਪੈ " +"ਸਕਦਾ ਹੈ, ਪਰ ਆਮ ਲਿਖੋ/ਕੰਪਾਈਲ ਕਰੋ/ਟੈਸਟ ਕਰੋ/ਮੁੜ ਕੰਪਾਈਲ ਕਰੋ ਚੱਕਰ ਬਹੁਤ ਹੌਲਾ ਲੱਗ ਸਕਦਾ ਹੈ। ਸ਼ਾਇਦ " +"ਤੁਸੀਂ ਅਜਿਹੀ ਲਾਇਬ੍ਰੇਰੀ ਲਈ ਇੱਕ ਟੈਸਟ ਸੂਟ ਲਿਖ ਰਹੇ ਹੋ ਅਤੇ ਟੈਸਟਿੰਗ ਕੋਡ ਲਿਖਣਾ ਤੁਹਾਨੂੰ ਥਕਾਵਟ ਭਰਿਆ ਕੰਮ " +"ਲੱਗਦਾ ਹੋਵੇ। ਜਾਂ ਸ਼ਾਇਦ ਤੁਸੀਂ ਅਜਿਹਾ ਪ੍ਰੋਗਰਾਮ ਲਿਖਿਆ ਹੋਵੇ ਜੋ ਕਿਸੇ ਐਕਸਟੈਂਸ਼ਨ ਭਾਸ਼ਾ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕੇ, " +"ਅਤੇ ਤੁਸੀਂ ਆਪਣੀ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਇੱਕ ਪੂਰੀ ਨਵੀਂ ਭਾਸ਼ਾ ਡਿਜ਼ਾਇਨ ਅਤੇ ਲਾਗੂ ਨਹੀਂ ਕਰਨਾ ਚਾਹੁੰਦੇ।" msgid "Python is just the language for you." -msgstr "" +msgstr "Python ਤੁਹਾਡੇ ਲਈ ਬਿਲਕੁਲ ਢੁੱਕਵੀਂ ਭਾਸ਼ਾ ਹੈ।" msgid "" "You could write a Unix shell script or Windows batch files for some of these " @@ -53,6 +63,12 @@ msgid "" "draft program. Python is simpler to use, available on Windows, macOS, and " "Unix operating systems, and will help you get the job done more quickly." msgstr "" +"ਤੁਸੀਂ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੁਝ ਕੰਮਾਂ ਲਈ Unix shell script ਜਾਂ Windows batch files ਲਿਖ ਸਕਦੇ ਹੋ, " +"ਪਰ shell scripts ਫ਼ਾਈਲਾਂ ਨੂੰ ਸੰਭਾਲਣ ਅਤੇ ਟੈਕਸਟ ਡਾਟਾ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰਨ ਲਈ ਸਭ ਤੋਂ ਉਚਿਤ ਹੁੰਦੀਆਂ " +"ਹਨ, GUI ਐਪਲੀਕੇਸ਼ਨਾਂ ਜਾਂ ਖੇਡਾਂ ਲਈ ਨਹੀਂ। ਤੁਸੀਂ C/C++/Java ਪ੍ਰੋਗਰਾਮ ਵੀ ਲਿਖ ਸਕਦੇ ਹੋ, ਪਰ ਇੱਕ " +"ਸ਼ੁਰੂਆਤੀ ਸੰਸਕਰਣ ਤਿਆਰ ਕਰਨ ਲਈ ਵੀ ਕਾਫ਼ੀ ਵਿਕਾਸ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ। Python ਵਰਤਣ ਵਿੱਚ ਸਰਲ ਹੈ, " +"Windows, macOS ਅਤੇ Unix ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ ਉੱਤੇ ਉਪਲਬਧ ਹੈ, ਅਤੇ ਤੁਹਾਨੂੰ ਕੰਮ ਤੇਜ਼ੀ ਨਾਲ ਪੂਰਾ ਕਰਨ " +"ਵਿੱਚ ਮਦਦ ਕਰੇਗੀ।" msgid "" "Python is simple to use, but it is a real programming language, offering " @@ -64,6 +80,12 @@ msgid "" "problem domain than Awk or even Perl, yet many things are at least as easy " "in Python as in those languages." msgstr "" +"Python ਵਰਤਣ ਵਿੱਚ ਸਰਲ ਹੈ, ਪਰ ਇਹ ਇੱਕ ਅਸਲ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ, ਜੋ shell scripts ਜਾਂ " +"batch files ਨਾਲੋਂ ਵੱਡੇ ਪ੍ਰੋਗਰਾਮਾਂ ਲਈ ਕਾਫ਼ੀ ਵੱਧ ਢਾਂਚਾ ਅਤੇ ਸਹਾਇਤਾ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। ਦੂਜੇ ਪਾਸੇ, " +"Python C ਨਾਲੋਂ ਕਾਫ਼ੀ ਵੱਧ ਗਲਤੀ ਜਾਂਚ ਮੁਹੱਈਆ ਕਰਦੀ ਹੈ ਅਤੇ, ਇੱਕ *ਬਹੁਤ ਉੱਚ-ਪੱਧਰੀ ਭਾਸ਼ਾ* ਹੋਣ ਦੇ " +"ਨਾਤੇ, ਇਸ ਵਿੱਚ ਲਚਕੀਲੇ arrays ਅਤੇ dictionaries ਵਰਗੇ ਉੱਚ-ਪੱਧਰੀ ਡਾਟਾ ਪ੍ਰਕਾਰ ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ " +"ਹਨ। ਆਪਣੇ ਹੋਰ ਆਮ ਡਾਟਾ ਪ੍ਰਕਾਰਾਂ ਕਰਕੇ Python, Awk ਜਾਂ Perl ਨਾਲੋਂ ਕਾਫ਼ੀ ਵੱਡੇ ਸਮੱਸਿਆ ਖੇਤਰਾਂ ਵਿੱਚ " +"ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਫਿਰ ਵੀ ਬਹੁਤ ਸਾਰੇ ਕੰਮ ਇਨ੍ਹਾਂ ਭਾਸ਼ਾਵਾਂ ਜਿੰਨੇ ਹੀ ਆਸਾਨ ਹਨ।" msgid "" "Python allows you to split your program into modules that can be reused in " @@ -73,6 +95,11 @@ msgid "" "file I/O, system calls, sockets, and even interfaces to graphical user " "interface toolkits like Tk." msgstr "" +"Python ਤੁਹਾਨੂੰ ਆਪਣੇ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਮੌਡਿਊਲਾਂ ਵਿੱਚ ਵੰਡਣ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਹੋਰ Python " +"ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਮੁੜ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਦੇ ਨਾਲ ਮਿਆਰੀ ਮੌਡਿਊਲਾਂ ਦਾ ਇੱਕ ਵੱਡਾ ਸੰਗ੍ਰਹਿ ਮਿਲਦਾ " +"ਹੈ, ਜਿਸਨੂੰ ਤੁਸੀਂ ਆਪਣੇ ਪ੍ਰੋਗਰਾਮਾਂ ਦੀ ਬੁਨਿਆਦ ਵਜੋਂ ਜਾਂ Python ਸਿੱਖਣ ਦੀ ਸ਼ੁਰੂਆਤ ਲਈ ਉਦਾਹਰਨਾਂ ਵਜੋਂ ਵਰਤ " +"ਸਕਦੇ ਹੋ। ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੁਝ ਮੌਡਿਊਲ file I/O, system calls, sockets ਅਤੇ Tk ਵਰਗੇ graphical " +"user interface toolkit ਲਈ interfaces ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ।" msgid "" "Python is an interpreted language, which can save you considerable time " @@ -82,25 +109,37 @@ msgid "" "functions during bottom-up program development. It is also a handy desk " "calculator." msgstr "" +"Python ਇੱਕ interpreted ਭਾਸ਼ਾ ਹੈ, ਜੋ ਪ੍ਰੋਗਰਾਮ ਵਿਕਾਸ ਦੌਰਾਨ ਤੁਹਾਡਾ ਕਾਫ਼ੀ ਸਮਾਂ ਬਚਾ ਸਕਦੀ ਹੈ " +"ਕਿਉਂਕਿ compilation ਅਤੇ linking ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ। Interpreter ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਢੰਗ ਨਾਲ " +"ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਭਾਸ਼ਾ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਾਲ ਪ੍ਰਯੋਗ ਕਰਨਾ, ਛੋਟੇ ਅਸਥਾਈ ਪ੍ਰੋਗਰਾਮ " +"ਲਿਖਣਾ ਜਾਂ bottom-up ਵਿਕਾਸ ਦੌਰਾਨ functions ਦੀ ਜਾਂਚ ਕਰਨਾ ਆਸਾਨ ਬਣ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ " +"ਉਪਯੋਗੀ desk calculator ਵਜੋਂ ਵੀ ਕੰਮ ਕਰਦੀ ਹੈ।" msgid "" "Python enables programs to be written compactly and readably. Programs " "written in Python are typically much shorter than equivalent C, C++, or " "Java programs, for several reasons:" msgstr "" +"Python ਪ੍ਰੋਗਰਾਮਾਂ ਨੂੰ ਸੰਖੇਪ ਅਤੇ ਪੜ੍ਹਨਯੋਗ ਢੰਗ ਨਾਲ ਲਿਖਣ ਯੋਗ ਬਣਾਉਂਦੀ ਹੈ। Python ਵਿੱਚ ਲਿਖੇ " +"ਪ੍ਰੋਗਰਾਮ ਆਮ ਤੌਰ 'ਤੇ ਸਮਾਨ C, C++ ਜਾਂ Java ਪ੍ਰੋਗਰਾਮਾਂ ਨਾਲੋਂ ਕਾਫ਼ੀ ਛੋਟੇ ਹੁੰਦੇ ਹਨ, ਇਸ ਦੇ ਕਈ ਕਾਰਨ " +"ਹਨ:" msgid "" "the high-level data types allow you to express complex operations in a " "single statement;" msgstr "" +"ਉੱਚ-ਪੱਧਰੀ ਡਾਟਾ ਪ੍ਰਕਾਰ ਤੁਹਾਨੂੰ ਜਟਿਲ ਕਾਰਵਾਈਆਂ ਨੂੰ ਇੱਕ ਹੀ statement ਵਿੱਚ ਪ੍ਰਗਟ ਕਰਨ ਦੀ ਆਗਿਆ " +"ਦਿੰਦੇ ਹਨ;" msgid "" "statement grouping is done by indentation instead of beginning and ending " "brackets;" msgstr "" +"statements ਦਾ ਸਮੂਹੀਕਰਨ ਸ਼ੁਰੂਆਤੀ ਅਤੇ ਅੰਤਿਮ brackets ਦੀ ਬਜਾਏ indentation ਰਾਹੀਂ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ;" msgid "no variable or argument declarations are necessary." -msgstr "" +msgstr "variables ਜਾਂ arguments ਦੀਆਂ declarations ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੁੰਦੀਆਂ।" msgid "" "Python is *extensible*: if you know how to program in C it is easy to add a " @@ -111,24 +150,38 @@ msgid "" "Python interpreter into an application written in C and use it as an " "extension or command language for that application." msgstr "" +"Python *ਵਿਸਤਾਰਯੋਗ (extensible)* ਹੈ: ਜੇ ਤੁਸੀਂ C ਵਿੱਚ ਪ੍ਰੋਗਰਾਮ ਲਿਖਣਾ ਜਾਣਦੇ ਹੋ ਤਾਂ " +"interpreter ਵਿੱਚ ਨਵਾਂ built-in function ਜਾਂ module ਜੋੜਨਾ ਆਸਾਨ ਹੁੰਦਾ ਹੈ, ਚਾਹੇ ਮਹੱਤਵਪੂਰਨ " +"ਕਾਰਵਾਈਆਂ ਨੂੰ ਵੱਧ ਤੋਂ ਵੱਧ ਗਤੀ ਨਾਲ ਕਰਨਾ ਹੋਵੇ ਜਾਂ Python ਪ੍ਰੋਗਰਾਮਾਂ ਨੂੰ ਉਹਨਾਂ libraries ਨਾਲ " +"ਜੋੜਨਾ ਹੋਵੇ ਜੋ ਸਿਰਫ਼ binary ਰੂਪ ਵਿੱਚ ਉਪਲਬਧ ਹਨ। ਜਦੋਂ ਤੁਸੀਂ ਇਸ ਨਾਲ ਪੂਰੀ ਤਰ੍ਹਾਂ ਜਾਣੂ ਹੋ ਜਾਂਦੇ ਹੋ, " +"ਤਾਂ ਤੁਸੀਂ Python interpreter ਨੂੰ C ਵਿੱਚ ਲਿਖੀ ਐਪਲੀਕੇਸ਼ਨ ਨਾਲ ਜੋੜ ਕੇ ਉਸ ਲਈ extension ਜਾਂ " +"command language ਵਜੋਂ ਵਰਤ ਸਕਦੇ ਹੋ।" msgid "" "By the way, the language is named after the BBC show \"Monty Python's Flying " "Circus\" and has nothing to do with reptiles. Making references to Monty " "Python skits in documentation is not only allowed, it is encouraged!" msgstr "" +"ਵੈਸੇ, ਇਸ ਭਾਸ਼ਾ ਦਾ ਨਾਮ BBC ਦੇ ਸ਼ੋਅ \"Monty Python's Flying Circus\" ਤੋਂ ਰੱਖਿਆ ਗਿਆ ਹੈ ਅਤੇ " +"ਇਸਦਾ ਸੱਪਾਂ ਨਾਲ ਕੋਈ ਸੰਬੰਧ ਨਹੀਂ ਹੈ। ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ Monty Python ਦੇ ਹਾਸਿਆਤਮਕ ਸਕਿਟਾਂ ਦੇ ਹਵਾਲੇ " +"ਦੇਣਾ ਨਾ ਸਿਰਫ਼ ਮਨਜ਼ੂਰ ਹੈ, ਸਗੋਂ ਇਸਦੀ ਹੌਸਲਾ ਅਫ਼ਜ਼ਾਈ ਵੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ!" msgid "" "Now that you are all excited about Python, you'll want to examine it in some " "more detail. Since the best way to learn a language is to use it, the " "tutorial invites you to play with the Python interpreter as you read." msgstr "" +"ਹੁਣ ਜਦੋਂ ਤੁਸੀਂ Python ਬਾਰੇ ਉਤਸ਼ਾਹਿਤ ਹੋ ਗਏ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਇਸਨੂੰ ਹੋਰ ਵਿਸਥਾਰ ਨਾਲ ਸਮਝਣਾ ਚਾਹੋਗੇ। " +"ਕਿਉਂਕਿ ਕਿਸੇ ਭਾਸ਼ਾ ਨੂੰ ਸਿੱਖਣ ਦਾ ਸਭ ਤੋਂ ਵਧੀਆ ਤਰੀਕਾ ਉਸਦੀ ਵਰਤੋਂ ਕਰਨਾ ਹੈ, ਇਹ ਟਿਊਟੋਰਿਅਲ ਤੁਹਾਨੂੰ " +"ਪੜ੍ਹਦੇ ਸਮੇਂ Python interpreter ਨਾਲ ਪ੍ਰਯੋਗ ਕਰਨ ਲਈ ਸੱਦਾ ਦਿੰਦਾ ਹੈ।" msgid "" "In the next chapter, the mechanics of using the interpreter are explained. " "This is rather mundane information, but essential for trying out the " "examples shown later." msgstr "" +"ਅਗਲੇ ਅਧਿਆਇ ਵਿੱਚ interpreter ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੇ ਤਰੀਕੇ ਦੀ ਵਿਆਖਿਆ ਕੀਤੀ ਗਈ ਹੈ। ਇਹ ਕਾਫ਼ੀ " +"ਸਧਾਰਣ ਜਾਣਕਾਰੀ ਹੈ, ਪਰ ਬਾਅਦ ਵਿੱਚ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ ਨੂੰ ਅਜ਼ਮਾਉਣ ਲਈ ਬਹੁਤ ਜ਼ਰੂਰੀ ਹੈ।" msgid "" "The rest of the tutorial introduces various features of the Python language " @@ -136,3 +189,7 @@ msgid "" "and data types, through functions and modules, and finally touching upon " "advanced concepts like exceptions and user-defined classes." msgstr "" +"ਬਾਕੀ ਟਿਊਟੋਰਿਅਲ ਉਦਾਹਰਨਾਂ ਰਾਹੀਂ Python ਭਾਸ਼ਾ ਅਤੇ ਸਿਸਟਮ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਾਲ ਜਾਣੂ " +"ਕਰਵਾਉਂਦਾ ਹੈ। ਇਹ ਸਧਾਰਣ expressions, statements ਅਤੇ data types ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਫਿਰ " +"functions ਅਤੇ modules ਤੱਕ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਅੰਤ ਵਿੱਚ exceptions ਅਤੇ user-defined classes " +"ਵਰਗੀਆਂ ਉੱਚ ਪੱਧਰੀ ਧਾਰਣਾਵਾਂ ਨੂੰ ਵੀ ਛੂਹਦਾ ਹੈ।" diff --git a/tutorial/classes.po b/tutorial/classes.po index c944e08..6bc1858 100644 --- a/tutorial/classes.po +++ b/tutorial/classes.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Classes" -msgstr "" +msgstr "ਕਲਾਸਾਂ" msgid "" "Classes provide a means of bundling data and functionality together. " @@ -32,6 +32,11 @@ msgid "" "attributes attached to it for maintaining its state. Class instances can " "also have methods (defined by its class) for modifying its state." msgstr "" +"ਕਲਾਸਾਂ ਡਾਟਾ ਅਤੇ ਕਾਰਜਕੁਸ਼ਲਤਾ ਨੂੰ ਇਕੱਠੇ ਸੰਗਠਿਤ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ। ਇੱਕ ਨਵੀਂ " +"ਕਲਾਸ ਬਣਾਉਣ ਨਾਲ ਵਸਤੂ ਦੀ ਇੱਕ ਨਵੀਂ *ਕਿਸਮ* ਬਣਦੀ ਹੈ, ਜਿਸ ਨਾਲ ਉਸ ਕਿਸਮ ਦੇ ਨਵੇਂ *ਇੰਸਟੈਂਸ* ਬਣਾਏ " +"ਜਾ ਸਕਦੇ ਹਨ। ਹਰ ਕਲਾਸ ਇੰਸਟੈਂਸ ਨਾਲ ਉਸਦੀ ਸਥਿਤੀ ਬਣਾਈ ਰੱਖਣ ਲਈ ਗੁਣ ਜੋੜੇ ਜਾ ਸਕਦੇ ਹਨ। ਕਲਾਸ " +"ਇੰਸਟੈਂਸਾਂ ਵਿੱਚ ਉਨ੍ਹਾਂ ਦੀ ਸਥਿਤੀ ਨੂੰ ਬਦਲਣ ਲਈ ਵਿਧੀਆਂ (methods) ਵੀ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਜੋ ਕਲਾਸ ਵੱਲੋਂ " +"ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।" msgid "" "Compared with other programming languages, Python's class mechanism adds " @@ -45,6 +50,14 @@ msgid "" "nature of Python: they are created at runtime, and can be modified further " "after creation." msgstr "" +"ਹੋਰ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਨਾਲ ਤੁਲਨਾ ਕਰਨ ਤੇ, Python ਦੀ ਕਲਾਸ ਪ੍ਰਣਾਲੀ ਘੱਟ ਤੋਂ ਘੱਟ ਨਵੇਂ ਸਿੰਟੈਕਸ ਅਤੇ " +"ਅਰਥਾਤਮਕ ਨਿਯਮਾਂ ਨਾਲ ਕਲਾਸਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। ਇਹ C++ ਅਤੇ Modula-3 ਵਿੱਚ ਮਿਲਣ ਵਾਲੀਆਂ ਕਲਾਸ " +"ਪ੍ਰਣਾਲੀਆਂ ਦਾ ਮਿਲਾਪ ਹੈ। Python ਦੀਆਂ ਕਲਾਸਾਂ ਆਬਜੈਕਟ-ਓਰੀਐਂਟਿਡ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੀਆਂ ਸਾਰੀਆਂ ਮਿਆਰੀ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ। ਕਲਾਸ ਇਨਹੈਰਿਟੈਂਸ ਪ੍ਰਣਾਲੀ ਕਈ ਬੇਸ ਕਲਾਸਾਂ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ, " +"ਡਿਰਾਈਵਡ ਕਲਾਸ ਆਪਣੀ ਬੇਸ ਕਲਾਸ ਜਾਂ ਕਲਾਸਾਂ ਦੀਆਂ ਕਿਸੇ ਵੀ ਮੈਥਡਾਂ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰ ਸਕਦੀ ਹੈ ਅਤੇ ਕੋਈ " +"ਮੈਥਡ ਉਸੇ ਨਾਮ ਵਾਲੀ ਬੇਸ ਕਲਾਸ ਦੀ ਮੈਥਡ ਨੂੰ ਕਾਲ ਕਰ ਸਕਦੀ ਹੈ। ਆਬਜੈਕਟ ਕਿਸੇ ਵੀ ਮਾਤਰਾ ਅਤੇ ਕਿਸਮ " +"ਦਾ ਡਾਟਾ ਰੱਖ ਸਕਦੇ ਹਨ। ਮੌਡਿਊਲਾਂ ਵਾਂਗ, ਕਲਾਸਾਂ ਵੀ Python ਦੇ ਗਤੀਸ਼ੀਲ ਸੁਭਾਵ ਦਾ ਹਿੱਸਾ ਹਨ: ਉਹ " +"ਰਨਟਾਈਮ ਦੌਰਾਨ ਬਣਦੀਆਂ ਹਨ ਅਤੇ ਬਣਨ ਤੋਂ ਬਾਅਦ ਵੀ ਸੋਧੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ।" msgid "" "In C++ terminology, normally class members (including the data members) are " @@ -59,6 +72,15 @@ msgid "" "(arithmetic operators, subscripting etc.) can be redefined for class " "instances." msgstr "" +"C++ ਦੀ ਟਰਮੀਨੋਲੋਜੀ ਵਿੱਚ, ਆਮ ਤੌਰ 'ਤੇ ਕਲਾਸ ਮੈਂਬਰ (ਡਾਟਾ ਮੈਂਬਰ ਸਮੇਤ) *public* ਹੁੰਦੇ ਹਨ " +"(ਹੇਠਾਂ :ref:`tut-private` ਵੇਖੋ), ਅਤੇ ਸਾਰੇ ਮੈਂਬਰ ਫੰਕਸ਼ਨ *virtual* ਹੁੰਦੇ ਹਨ। Modula-3 ਵਾਂਗ, " +"ਵਿਧੀਆਂ ਦੇ ਅੰਦਰੋਂ ਆਬਜੈਕਟ ਦੇ ਮੈਂਬਰਾਂ ਨੂੰ ਹਵਾਲਾ ਦੇਣ ਲਈ ਕੋਈ ਸੰਖੇਪ ਰੂਪ ਨਹੀਂ ਹੈ। ਮੈਥਡ ਫੰਕਸ਼ਨ ਨੂੰ ਆਬਜੈਕਟ ਨੂੰ " +"ਦਰਸਾਉਂਦੇ ਇੱਕ ਸਪਸ਼ਟ ਪਹਿਲੇ ਆਰਗੂਮੈਂਟ ਨਾਲ ਘੋਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜੋ ਕਾਲ ਵੇਲੇ ਆਪਣੇ ਆਪ ਪ੍ਰਦਾਨ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ। Smalltalk ਵਾਂਗ, ਕਲਾਸਾਂ ਖੁਦ ਵੀ ਆਬਜੈਕਟ ਹੁੰਦੀਆਂ ਹਨ। ਇਹ ਇੰਪੋਰਟ ਅਤੇ ਰੀਨੇਮਿੰਗ ਲਈ " +"ਅਰਥਾਤਮਕ ਸਮਰਥਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। C++ ਅਤੇ Modula-3 ਤੋਂ ਵੱਖਰਾ, ਬਿਲਟ-ਇਨ ਟਾਈਪਾਂ ਨੂੰ ਯੂਜ਼ਰ ਦੁਆਰਾ " +"ਐਕਸਟੈਂਸ਼ਨ ਲਈ ਬੇਸ ਕਲਾਸ ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, C++ ਵਾਂਗ ਖਾਸ ਸਿੰਟੈਕਸ ਵਾਲੇ ਬਹੁਤੇ " +"ਬਿਲਟ-ਇਨ ਓਪਰੇਟਰ (ਅੰਕਗਣਿਤ ਓਪਰੇਟਰ, ਸਬਸਕ੍ਰਿਪਟਿੰਗ ਆਦਿ) ਕਲਾਸ ਇੰਸਟੈਂਸਾਂ ਲਈ ਮੁੜ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ " +"ਜਾ ਸਕਦੇ ਹਨ।" msgid "" "(Lacking universally accepted terminology to talk about classes, I will make " @@ -66,9 +88,12 @@ msgid "" "since its object-oriented semantics are closer to those of Python than C++, " "but I expect that few readers have heard of it.)" msgstr "" +"(ਕਲਾਸਾਂ ਬਾਰੇ ਗੱਲ ਕਰਨ ਲਈ ਕੋਈ ਸਰਵਮਾਨਯ ਟਰਮੀਨੋਲੋਜੀ ਨਾ ਹੋਣ ਕਰਕੇ, ਮੈਂ ਕਦੇ-ਕਦੇ Smalltalk ਅਤੇ C++ " +"ਦੇ ਸ਼ਬਦ ਵਰਤਾਂਗਾ। ਮੈਂ Modula-3 ਦੇ ਸ਼ਬਦ ਵਰਤ ਸਕਦਾ ਸੀ ਕਿਉਂਕਿ ਇਸਦੇ ਆਬਜੈਕਟ-ਓਰੀਐਂਟਿਡ ਨਿਯਮ C++ " +"ਨਾਲੋਂ Python ਦੇ ਵਧੇਰੇ ਨੇੜੇ ਹਨ, ਪਰ ਮੈਨੂੰ ਲੱਗਦਾ ਹੈ ਕਿ ਬਹੁਤ ਘੱਟ ਪਾਠਕਾਂ ਨੇ ਇਸ ਬਾਰੇ ਸੁਣਿਆ ਹੋਵੇਗਾ।)" msgid "A Word About Names and Objects" -msgstr "" +msgstr "ਨਾਂਵਾਂ ਅਤੇ ਆਬਜੈਕਟਾਂ ਬਾਰੇ ਇੱਕ ਗੱਲ" msgid "" "Objects have individuality, and multiple names (in multiple scopes) can be " @@ -84,9 +109,20 @@ msgid "" "the caller will see the change --- this eliminates the need for two " "different argument passing mechanisms as in Pascal." msgstr "" +"ਵਸਤੂਆਂ ਦੀ ਵਿਲੱਖਣਤਾ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਇੱਕੋ ਵਸਤੂ ਨੂੰ ਵੱਖ-ਵੱਖ scopes ਵਿੱਚ ਕਈ ਨਾਮ ਬੰਨ੍ਹੇ ਜਾ ਸਕਦੇ ਹਨ। " +"ਇਸਨੂੰ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ aliasing ਕਿਹਾ ਜਾਂਦਾ ਹੈ। Python 'ਤੇ ਪਹਿਲੀ ਨਜ਼ਰ 'ਚ ਇਹ ਆਮ ਤੌਰ 'ਤੇ " +"ਧਿਆਨ ਵਿੱਚ ਨਹੀਂ ਆਉਂਦਾ, ਅਤੇ immutable ਬੁਨਿਆਦੀ ਕਿਸਮਾਂ (numbers, strings, tuples) ਨਾਲ " +"ਕੰਮ ਕਰਦਿਆਂ ਇਸਨੂੰ ਸੁਰੱਖਿਅਤ ਤੌਰ 'ਤੇ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਹਾਲਾਂਕਿ, mutable ਵਸਤੂਆਂ (ਜਿਵੇਂ " +"ਕਿ lists, dictionaries ਅਤੇ ਹੋਰ ਬਹੁਤ ਸਾਰੀਆਂ ਕਿਸਮਾਂ) ਨਾਲ ਸੰਬੰਧਿਤ Python code ਦੇ " +"semantics 'ਤੇ aliasing ਦਾ ਹੈਰਾਨ ਕਰਨ ਵਾਲਾ ਪ੍ਰਭਾਵ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਆਮ ਤੌਰ 'ਤੇ ਪ੍ਰੋਗਰਾਮ ਦੇ " +"ਫਾਇਦੇ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਕਿਉਂਕਿ ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ aliases pointers ਵਾਂਗ ਹੀ ਵਿਹਾਰ ਕਰਦੇ " +"ਹਨ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ object pass ਕਰਨਾ ਸਸਤਾ ਹੁੰਦਾ ਹੈ ਕਿਉਂਕਿ implementation ਦੁਆਰਾ ਸਿਰਫ਼ " +"ਇੱਕ pointer ਹੀ pass ਕੀਤਾ ਜਾਂਦਾ ਹੈ; ਅਤੇ ਜੇਕਰ ਕੋਈ function argument ਵਜੋਂ ਦਿੱਤੇ ਗਏ object " +"ਨੂੰ ਸੋਧਦਾ ਹੈ, ਤਾਂ caller ਨੂੰ ਇਹ ਤਬਦੀਲੀ ਦਿਖਾਈ ਦੇਵੇਗੀ --- ਇਹ Pascal ਵਾਂਗ ਦੋ ਵੱਖ-ਵੱਖ " +"argument passing mechanisms ਦੀ ਲੋੜ ਨੂੰ ਖਤਮ ਕਰਦਾ ਹੈ।" msgid "Python Scopes and Namespaces" -msgstr "" +msgstr "Python ਵਿੱਚ ਸਕੋਪ ਅਤੇ ਨੇਮਸਪੇਸ" msgid "" "Before introducing classes, I first have to tell you something about " @@ -95,9 +131,13 @@ msgid "" "understand what's going on. Incidentally, knowledge about this subject is " "useful for any advanced Python programmer." msgstr "" +"ਕਲਾਸਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਕਰਵਾਉਣ ਤੋਂ ਪਹਿਲਾਂ, ਮੈਨੂੰ ਤੁਹਾਨੂੰ Python ਦੇ ਸਕੋਪ ਨਿਯਮਾਂ ਬਾਰੇ ਕੁਝ ਦੱਸਣਾ " +"ਪਵੇਗਾ। ਕਲਾਸ ਪਰਿਭਾਸ਼ਾਵਾਂ ਨੇਮਸਪੇਸ ਨਾਲ ਕੁਝ ਦਿਲਚਸਪ ਤਰੀਕੇ ਨਾਲ ਕੰਮ ਕਰਦੀਆਂ ਹਨ, ਅਤੇ ਜੋ ਕੁਝ ਹੋ " +"ਰਿਹਾ ਹੈ ਉਸਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸਮਝਣ ਲਈ ਤੁਹਾਨੂੰ ਸਕੋਪ ਅਤੇ ਨੇਮਸਪੇਸ ਦੀ ਕਾਰਵਾਈ ਨੂੰ ਜਾਣਨਾ ਲਾਜ਼ਮੀ ਹੈ। ਇਸ " +"ਤੋਂ ਇਲਾਵਾ, ਇਸ ਵਿਸ਼ੇ ਬਾਰੇ ਗਿਆਨ ਕਿਸੇ ਵੀ ਉੱਨਤ Python ਪ੍ਰੋਗਰਾਮਰ ਲਈ ਲਾਭਦਾਇਕ ਹੈ।" msgid "Let's begin with some definitions." -msgstr "" +msgstr "ਆਓ ਕੁਝ ਪਰਿਭਾਸ਼ਾਵਾਂ ਨਾਲ ਸ਼ੁਰੂ ਕਰੀਏ।" msgid "" "A *namespace* is a mapping from names to objects. Most namespaces are " @@ -112,6 +152,15 @@ msgid "" "may both define a function ``maximize`` without confusion --- users of the " "modules must prefix it with the module name." msgstr "" +"ਇੱਕ *ਨੇਮਸਪੇਸ* ਨਾਮਾਂ ਅਤੇ ਆਬਜੈਕਟਾਂ ਵਿਚਕਾਰ ਇੱਕ ਮੈਪਿੰਗ ਹੁੰਦੀ ਹੈ। ਜ਼ਿਆਦਾਤਰ ਨੇਮਸਪੇਸ ਇਸ ਸਮੇਂ Python " +"ਡਿਕਸ਼ਨਰੀਆਂ ਰਾਹੀਂ ਲਾਗੂ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਪਰ ਇਹ ਗੱਲ ਆਮ ਤੌਰ 'ਤੇ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦੀ (ਕਾਰਗੁਜ਼ਾਰੀ ਤੋਂ " +"ਇਲਾਵਾ) ਅਤੇ ਭਵਿੱਖ ਵਿੱਚ ਬਦਲ ਵੀ ਸਕਦੀ ਹੈ। ਨੇਮਸਪੇਸਾਂ ਦੇ ਉਦਾਹਰਨ ਹਨ: ਬਿਲਟ-ਇਨ ਨਾਮਾਂ ਦਾ ਸਮੂਹ " +"(ਜਿਸ ਵਿੱਚ :func:`abs` ਵਰਗੇ ਫੰਕਸ਼ਨ ਅਤੇ ਬਿਲਟ-ਇਨ ਐਕਸੈਪਸ਼ਨ ਨਾਮ ਸ਼ਾਮਲ ਹਨ), ਕਿਸੇ ਮੌਡਿਊਲ ਦੇ " +"ਗਲੋਬਲ ਨਾਮ, ਅਤੇ ਕਿਸੇ ਫੰਕਸ਼ਨ ਕਾਲ ਦੇ ਸਥਾਨਕ ਨਾਮ। ਇੱਕ ਅਰਥ ਵਿੱਚ, ਕਿਸੇ ਆਬਜੈਕਟ ਦੇ ਐਟ੍ਰਿਬਿਊਟਾਂ ਦਾ " +"ਸਮੂਹ ਵੀ ਇੱਕ ਨੇਮਸਪੇਸ ਬਣਾਉਂਦਾ ਹੈ। ਨੇਮਸਪੇਸਾਂ ਬਾਰੇ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਗੱਲ ਇਹ ਹੈ ਕਿ ਵੱਖ-ਵੱਖ ਨੇਮਸਪੇਸਾਂ ਦੇ " +"ਨਾਮਾਂ ਵਿਚਕਾਰ ਕੋਈ ਸਿੱਧਾ ਸੰਬੰਧ ਨਹੀਂ ਹੁੰਦਾ। ਉਦਾਹਰਨ ਵਜੋਂ, ਦੋ ਵੱਖਰੇ ਮੌਡਿਊਲ ``maximize`` ਨਾਮ ਦਾ " +"ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਿਤ ਕਰ ਸਕਦੇ ਹਨ ਅਤੇ ਕੋਈ ਉਲਝਣ ਨਹੀਂ ਹੁੰਦੀ — ਵਰਤੋਂਕਾਰਾਂ ਨੂੰ ਮੌਡਿਊਲ ਦੇ ਨਾਮ ਨਾਲ ਇਸਦਾ " +"ਹਵਾਲਾ ਦੇਣਾ ਪੈਂਦਾ ਹੈ।" msgid "" "By the way, I use the word *attribute* for any name following a dot --- for " @@ -122,6 +171,12 @@ msgid "" "happens to be a straightforward mapping between the module's attributes and " "the global names defined in the module: they share the same namespace! [#]_" msgstr "" +"ਵੈਸੇ, ਮੈਂ ਡੌਟ ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਨਾਮ ਲਈ *ਐਟ੍ਰਿਬਿਊਟ* ਸ਼ਬਦ ਵਰਤਦਾ ਹਾਂ। ਉਦਾਹਰਨ ਵਜੋਂ, " +"``z.real`` ਐਕਸਪ੍ਰੈਸ਼ਨ ਵਿੱਚ ``real`` ਆਬਜੈਕਟ ``z`` ਦਾ ਇੱਕ ਐਟ੍ਰਿਬਿਊਟ ਹੈ। ਸਖ਼ਤੀ ਨਾਲ ਕਹੀਏ " +"ਤਾਂ ਮੌਡਿਊਲਾਂ ਵਿੱਚ ਨਾਮਾਂ ਦੇ ਹਵਾਲੇ ਵੀ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲੇ ਹੀ ਹੁੰਦੇ ਹਨ। ``modname.funcname`` " +"ਵਿੱਚ ``modname`` ਇੱਕ ਮੌਡਿਊਲ ਆਬਜੈਕਟ ਹੈ ਅਤੇ ``funcname`` ਉਸਦਾ ਐਟ੍ਰਿਬਿਊਟ ਹੈ। ਇਸ ਮਾਮਲੇ " +"ਵਿੱਚ ਮੌਡਿਊਲ ਦੇ ਐਟ੍ਰਿਬਿਊਟਾਂ ਅਤੇ ਉਸ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਗਲੋਬਲ ਨਾਮਾਂ ਵਿਚਕਾਰ ਸਿੱਧੀ ਮੈਪਿੰਗ ਹੁੰਦੀ ਹੈ ਅਤੇ " +"ਉਹ ਇੱਕੋ ਨੇਮਸਪੇਸ ਸਾਂਝਾ ਕਰਦੇ ਹਨ। [#]_" msgid "" "Attributes may be read-only or writable. In the latter case, assignment to " @@ -131,6 +186,11 @@ msgid "" "remove the attribute :attr:`!the_answer` from the object named by " "``modname``." msgstr "" +"ਐਟ੍ਰਿਬਿਊਟ ਸਿਰਫ਼-ਪੜ੍ਹਨਯੋਗ ਜਾਂ ਲਿਖਣਯੋਗ ਹੋ ਸਕਦੇ ਹਨ। ਲਿਖਣਯੋਗ ਐਟ੍ਰਿਬਿਊਟਾਂ ਨੂੰ ਮੁੱਲ ਅਸਾਈਨ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ। ਮੌਡਿਊਲ ਐਟ੍ਰਿਬਿਊਟ ਲਿਖਣਯੋਗ ਹੁੰਦੇ ਹਨ, ਉਦਾਹਰਨ ਵਜੋਂ ਤੁਸੀਂ ``modname.the_answer = " +"42`` ਲਿਖ ਸਕਦੇ ਹੋ। ਲਿਖਣਯੋਗ ਐਟ੍ਰਿਬਿਊਟਾਂ ਨੂੰ :keyword:`del` ਸਟੇਟਮੈਂਟ ਨਾਲ ਹਟਾਇਆ ਵੀ ਜਾ ਸਕਦਾ " +"ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``del modname.the_answer`` ``modname`` ਨਾਮਕ ਆਬਜੈਕਟ ਤੋਂ :attr:`!" +"the_answer` ਐਟ੍ਰਿਬਿਊਟ ਨੂੰ ਹਟਾ ਦੇਵੇਗਾ।" msgid "" "Namespaces are created at different moments and have different lifetimes. " @@ -139,10 +199,17 @@ msgid "" "module is created when the module definition is read in; normally, module " "namespaces also last until the interpreter quits. The statements executed " "by the top-level invocation of the interpreter, either read from a script " -"file or interactively, are considered part of a module called :mod:" -"`__main__`, so they have their own global namespace. (The built-in names " -"actually also live in a module; this is called :mod:`builtins`.)" +"file or interactively, are considered part of a module " +"called :mod:`__main__`, so they have their own global namespace. (The built-" +"in names actually also live in a module; this is called :mod:`builtins`.)" msgstr "" +"ਨੇਮਸਪੇਸ ਵੱਖ-ਵੱਖ ਸਮਿਆਂ 'ਤੇ ਬਣਾਏ ਜਾਂਦੇ ਹਨ ਅਤੇ ਉਨ੍ਹਾਂ ਦੀ ਉਮਰ ਵੀ ਵੱਖਰੀ ਹੁੰਦੀ ਹੈ। ਬਿਲਟ-ਇਨ ਨਾਮਾਂ " +"ਵਾਲਾ ਨੇਮਸਪੇਸ Python ਇੰਟਰਪ੍ਰੀਟਰ ਦੇ ਸ਼ੁਰੂ ਹੋਣ ਸਮੇਂ ਬਣਦਾ ਹੈ ਅਤੇ ਕਦੇ ਮਿਟਾਇਆ ਨਹੀਂ ਜਾਂਦਾ। ਕਿਸੇ " +"ਮੌਡਿਊਲ ਦਾ ਗਲੋਬਲ ਨੇਮਸਪੇਸ ਮੌਡਿਊਲ ਦੀ ਪਰਿਭਾਸ਼ਾ ਪੜ੍ਹੇ ਜਾਣ ਸਮੇਂ ਬਣਦਾ ਹੈ ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ ਇੰਟਰਪ੍ਰੀਟਰ " +"ਬੰਦ ਹੋਣ ਤੱਕ ਮੌਜੂਦ ਰਹਿੰਦਾ ਹੈ। ਇੰਟਰਪ੍ਰੀਟਰ ਦੇ ਉੱਚ-ਪੱਧਰੀ ਚਲਾਓ ਦੌਰਾਨ ਚਲਣ ਵਾਲੀਆਂ ਸਟੇਟਮੈਂਟਾਂ, ਭਾਵੇਂ ਉਹ " +"ਸਕ੍ਰਿਪਟ ਫਾਈਲ ਤੋਂ ਪੜ੍ਹੀਆਂ ਗਈਆਂ ਹੋਣ ਜਾਂ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ, :mod:`__main__` ਨਾਮਕ ਮੌਡਿਊਲ " +"ਦਾ ਹਿੱਸਾ ਮੰਨੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਇਸ ਲਈ ਉਹਨਾਂ ਦਾ ਆਪਣਾ ਗਲੋਬਲ ਨੇਮਸਪੇਸ ਹੁੰਦਾ ਹੈ। (ਬਿਲਟ-ਇਨ ਨਾਮ ਅਸਲ " +"ਵਿੱਚ :mod:`builtins` ਮੌਡਿਊਲ ਵਿੱਚ ਮੌਜੂਦ ਹੁੰਦੇ ਹਨ।)" msgid "" "The local namespace for a function is created when the function is called, " @@ -151,44 +218,63 @@ msgid "" "describe what actually happens.) Of course, recursive invocations each have " "their own local namespace." msgstr "" +"ਕਿਸੇ ਫੰਕਸ਼ਨ ਦਾ ਸਥਾਨਕ ਨੇਮਸਪੇਸ ਉਸ ਵੇਲੇ ਬਣਦਾ ਹੈ ਜਦੋਂ ਫੰਕਸ਼ਨ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਜਦੋਂ ਫੰਕਸ਼ਨ ਮੁੜਦਾ " +"ਹੈ ਜਾਂ ਕੋਈ ਐਸੀ ਐਕਸੈਪਸ਼ਨ ਪੈਦਾ ਕਰਦਾ ਹੈ ਜੋ ਫੰਕਸ਼ਨ ਦੇ ਅੰਦਰ ਹੈਂਡਲ ਨਹੀਂ ਕੀਤੀ ਗਈ, ਤਾਂ ਇਹ ਮਿਟ ਜਾਂਦਾ " +"ਹੈ। (ਅਸਲ ਵਿੱਚ, 'ਭੁੱਲ ਜਾਣਾ' ਇਸ ਪ੍ਰਕਿਰਿਆ ਦਾ ਵਧੀਆ ਵਰਣਨ ਹੈ।) ਬੇਸ਼ੱਕ, ਹਰ ਰਿਕਰਸਿਵ ਕਾਲ ਦਾ " +"ਆਪਣਾ ਵੱਖਰਾ ਸਥਾਨਕ ਨੇਮਸਪੇਸ ਹੁੰਦਾ ਹੈ।" msgid "" "A *scope* is a textual region of a Python program where a namespace is " "directly accessible. \"Directly accessible\" here means that an unqualified " "reference to a name attempts to find the name in the namespace." msgstr "" +"ਇੱਕ *ਸਕੋਪ* Python ਪ੍ਰੋਗਰਾਮ ਦਾ ਉਹ ਪਾਠਕ ਖੇਤਰ ਹੁੰਦਾ ਹੈ ਜਿੱਥੇ ਇੱਕ ਨੇਮਸਪੇਸ ਤੱਕ ਸਿੱਧੀ ਪਹੁੰਚ ਹੁੰਦੀ ਹੈ। " +"ਇੱਥੇ \"ਸਿੱਧੀ ਪਹੁੰਚ\" ਦਾ ਅਰਥ ਹੈ ਕਿ ਕਿਸੇ ਨਾਂ ਦੇ ਬਿਨਾਂ ਯੋਗਤਾ ਵਾਲੇ ਹਵਾਲੇ ਦੁਆਰਾ ਉਸ ਨਾਂ ਨੂੰ ਨੇਮਸਪੇਸ " +"ਵਿੱਚ ਲੱਭਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "Although scopes are determined statically, they are used dynamically. At any " "time during execution, there are 3 or 4 nested scopes whose namespaces are " "directly accessible:" msgstr "" +"ਹਾਲਾਂਕਿ ਸਕੋਪਾਂ ਦਾ ਨਿਰਧਾਰਣ ਸਥਿਰ ਤਰੀਕੇ ਨਾਲ ਹੁੰਦਾ ਹੈ, ਪਰ ਉਹਨਾਂ ਦੀ ਵਰਤੋਂ ਗਤੀਸ਼ੀਲ ਤਰੀਕੇ ਨਾਲ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਐਗਜ਼ਿਕਿਊਸ਼ਨ ਦੇ ਕਿਸੇ ਵੀ ਸਮੇਂ 3 ਜਾਂ 4 ਨੇਸਟਡ ਸਕੋਪ ਹੁੰਦੇ ਹਨ ਜਿਨ੍ਹਾਂ ਦੇ ਨੇਮਸਪੇਸ ਸਿੱਧੇ " +"ਤੌਰ 'ਤੇ ਪਹੁੰਚਯੋਗ ਹੁੰਦੇ ਹਨ:" msgid "the innermost scope, which is searched first, contains the local names" -msgstr "" +msgstr "ਸਭ ਤੋਂ ਅੰਦਰਲਾ ਸਕੋਪ, ਜਿਸ ਦੀ ਪਹਿਲਾਂ ਖੋਜ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਸਥਾਨਕ ਨਾਂਵਾਂ ਨੂੰ ਰੱਖਦਾ ਹੈ" msgid "" "the scopes of any enclosing functions, which are searched starting with the " "nearest enclosing scope, contain non-local, but also non-global names" msgstr "" +"ਘੇਰਨ ਵਾਲੇ ਫੰਕਸ਼ਨਾਂ ਦੇ ਸਕੋਪ, ਜਿਨ੍ਹਾਂ ਦੀ ਖੋਜ ਸਭ ਤੋਂ ਨੇੜਲੇ ਸਕੋਪ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ, ਗੈਰ-ਸਥਾਨਕ ਪਰ ਗੈਰ-" +"ਗਲੋਬਲ ਨਾਂਵਾਂ ਨੂੰ ਰੱਖਦੇ ਹਨ" msgid "the next-to-last scope contains the current module's global names" -msgstr "" +msgstr "ਆਖਰੀ ਤੋਂ ਪਹਿਲਾਂ ਵਾਲਾ ਸਕੋਪ ਮੌਜੂਦਾ ਮੌਡਿਊਲ ਦੇ ਗਲੋਬਲ ਨਾਂਵਾਂ ਨੂੰ ਰੱਖਦਾ ਹੈ" msgid "" "the outermost scope (searched last) is the namespace containing built-in " "names" msgstr "" +"ਸਭ ਤੋਂ ਬਾਹਰਲਾ ਸਕੋਪ (ਜਿਸ ਦੀ ਖੋਜ ਸਭ ਤੋਂ ਆਖਿਰ ਵਿੱਚ ਹੁੰਦੀ ਹੈ) ਬਿਲਟ-ਇਨ ਨਾਂਵਾਂ ਵਾਲਾ ਨੇਮਸਪੇਸ ਹੁੰਦਾ ਹੈ" msgid "" "If a name is declared global, then all references and assignments go " "directly to the next-to-last scope containing the module's global names. To " -"rebind variables found outside of the innermost scope, the :keyword:" -"`nonlocal` statement can be used; if not declared nonlocal, those variables " -"are read-only (an attempt to write to such a variable will simply create a " -"*new* local variable in the innermost scope, leaving the identically named " -"outer variable unchanged)." +"rebind variables found outside of the innermost scope, " +"the :keyword:`nonlocal` statement can be used; if not declared nonlocal, " +"those variables are read-only (an attempt to write to such a variable will " +"simply create a *new* local variable in the innermost scope, leaving the " +"identically named outer variable unchanged)." msgstr "" +"ਜੇ ਕਿਸੇ ਨਾਮ ਨੂੰ global ਘੋਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਉਸ ਨਾਮ ਨਾਲ ਸੰਬੰਧਿਤ ਸਾਰੇ ਹਵਾਲੇ ਅਤੇ " +"assignments ਸਿੱਧੇ ਮੋਡੀਊਲ ਦੇ global ਨਾਂਵਾਂ ਵਾਲੇ ਸਕੋਪ ਵਿੱਚ ਜਾਂਦੇ ਹਨ। ਸਭ ਤੋਂ ਅੰਦਰਲੇ ਸਕੋਪ ਤੋਂ ਬਾਹਰ " +"ਮੌਜੂਦ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਮੁੜ ਬਾਈਂਡ ਕਰਨ ਲਈ :keyword:`nonlocal` ਸਟੇਟਮੈਂਟ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਜੇਕਰ " +"ਉਨ੍ਹਾਂ ਨੂੰ nonlocal ਘੋਸ਼ਿਤ ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਉਹ ਸਿਰਫ਼-ਪੜ੍ਹਨਯੋਗ ਰਹਿੰਦੇ ਹਨ (ਅਜਿਹੇ ਵੇਰੀਏਬਲ " +"ਵਿੱਚ ਲਿਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਨਾਲ ਅੰਦਰਲੇ ਸਕੋਪ ਵਿੱਚ ਇੱਕ *ਨਵਾਂ* ਸਥਾਨਕ ਵੇਰੀਏਬਲ ਬਣ ਜਾਂਦਾ ਹੈ ਅਤੇ " +"ਬਾਹਰਲੇ ਸਕੋਪ ਵਾਲਾ ਇੱਕੋ ਹੀ ਨਾਮ ਵਾਲਾ ਵੇਰੀਏਬਲ ਅਣਬਦਲਿਆ ਰਹਿੰਦਾ ਹੈ)।" msgid "" "Usually, the local scope references the local names of the (textually) " @@ -196,6 +282,9 @@ msgid "" "namespace as the global scope: the module's namespace. Class definitions " "place yet another namespace in the local scope." msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ, ਸਥਾਨਕ ਸਕੋਪ (ਟੈਕਸਟੂਅਲ ਤੌਰ 'ਤੇ) ਮੌਜੂਦਾ ਫੰਕਸ਼ਨ ਦੇ ਸਥਾਨਕ ਨਾਮਾਂ ਨੂੰ ਹਵਾਲਾ ਦਿੰਦਾ ਹੈ। " +"ਫੰਕਸ਼ਨਾਂ ਦੇ ਬਾਹਰ, ਸਥਾਨਕ ਸਕੋਪ ਗਲੋਬਲ ਸਕੋਪ ਵਾਂਗ ਹੀ ਮੋਡਿਊਲ ਦੇ ਨੇਮਸਪੇਸ ਨੂੰ ਹਵਾਲਾ ਦਿੰਦਾ ਹੈ। ਕਲਾਸ " +"ਪਰਿਭਾਸ਼ਾਵਾਂ ਸਥਾਨਕ ਸਕੋਪ ਵਿੱਚ ਇੱਕ ਹੋਰ ਨੇਮਸਪੇਸ ਸ਼ਾਮਿਲ ਕਰਦੀਆਂ ਹਨ।" msgid "" "It is important to realize that scopes are determined textually: the global " @@ -206,33 +295,53 @@ msgid "" "at \"compile\" time, so don't rely on dynamic name resolution! (In fact, " "local variables are already determined statically.)" msgstr "" +"ਇਹ ਸਮਝਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਸਕੋਪ ਪਾਠਕ ਰੂਪ ਵਿੱਚ ਨਿਰਧਾਰਤ ਹੁੰਦੇ ਹਨ: ਕਿਸੇ ਮੋਡੀਊਲ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ " +"ਫੰਕਸ਼ਨ ਦਾ ਗਲੋਬਲ ਸਕੋਪ ਉਸ ਮੋਡੀਊਲ ਦਾ namespace ਹੁੰਦਾ ਹੈ, ਭਾਵੇਂ ਫੰਕਸ਼ਨ ਨੂੰ ਕਿੱਥੋਂ ਜਾਂ ਕਿਸ alias " +"ਰਾਹੀਂ ਕਾਲ ਕੀਤਾ ਜਾਵੇ। ਦੂਜੇ ਪਾਸੇ, ਨਾਮਾਂ ਦੀ ਅਸਲ ਖੋਜ ਚਲਾਉਣ ਸਮੇਂ run time ਗਤੀਸ਼ੀਲ ਤਰੀਕੇ ਨਾਲ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ --- ਹਾਲਾਂਕਿ, ਭਾਸ਼ਾ ਦੀ ਪਰਿਭਾਸ਼ਾ \"compile\" ਸਮੇਂ static name " +"resolution ਵੱਲ ਵਿਕਸਿਤ ਹੋ ਰਹੀ ਹੈ, ਇਸ ਲਈ ਗਤੀਸ਼ੀਲ ਨਾਮ-ਨਿਰਣੇ ਉੱਤੇ ਨਿਰਭਰ ਨਾ ਕਰੋ! (ਅਸਲ " +"ਵਿੱਚ, ਲੋਕਲ ਵੇਰੀਏਬਲ ਪਹਿਲਾਂ ਹੀ ਸਥਿਰ ਤਰੀਕੇ ਨਾਲ ਨਿਰਧਾਰਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।)" msgid "" -"A special quirk of Python is that -- if no :keyword:`global` or :keyword:" -"`nonlocal` statement is in effect -- assignments to names always go into the " -"innermost scope. Assignments do not copy data --- they just bind names to " -"objects. The same is true for deletions: the statement ``del x`` removes " -"the binding of ``x`` from the namespace referenced by the local scope. In " -"fact, all operations that introduce new names use the local scope: in " -"particular, :keyword:`import` statements and function definitions bind the " -"module or function name in the local scope." +"A special quirk of Python is that -- if no :keyword:`global` " +"or :keyword:`nonlocal` statement is in effect -- assignments to names always " +"go into the innermost scope. Assignments do not copy data --- they just bind " +"names to objects. The same is true for deletions: the statement ``del x`` " +"removes the binding of ``x`` from the namespace referenced by the local " +"scope. In fact, all operations that introduce new names use the local " +"scope: in particular, :keyword:`import` statements and function definitions " +"bind the module or function name in the local scope." msgstr "" +"Python ਦੀ ਇੱਕ ਖਾਸ ਵਿਸ਼ੇਸ਼ਤਾ ਇਹ ਹੈ ਕਿ -- ਜੇ :keyword:`global` " +"ਜਾਂ :keyword:`nonlocal` ਸਟੇਟਮੈਂਟ ਪ੍ਰਭਾਵ ਵਿੱਚ ਨਾ ਹੋਵੇ -- ਤਾਂ ਨਾਮਾਂ ਲਈ ਕੀਤੀਆਂ ਅਸਾਈਨਮੈਂਟਾਂ " +"ਹਮੇਸ਼ਾਂ ਸਭ ਤੋਂ ਅੰਦਰਲੇ ਸਕੋਪ ਵਿੱਚ ਜਾਂਦੀਆਂ ਹਨ। ਅਸਾਈਨਮੈਂਟਾਂ ਡਾਟਾ ਦੀ ਨਕਲ ਨਹੀਂ ਕਰਦੀਆਂ --- ਇਹ ਸਿਰਫ਼ " +"ਨਾਮਾਂ ਨੂੰ ਆਬਜੈਕਟਾਂ ਨਾਲ ਬੰਨ੍ਹਦੀਆਂ ਹਨ। ਇਹੀ ਗੱਲ ਮਿਟਾਉਣ ਲਈ ਵੀ ਸੱਚ ਹੈ: ``del x`` ਸਟੇਟਮੈਂਟ ਲੋਕਲ " +"ਸਕੋਪ ਦੁਆਰਾ ਦਰਸਾਏ namespace ਵਿੱਚੋਂ ``x`` ਦੀ ਬਾਈਂਡਿੰਗ ਹਟਾ ਦਿੰਦਾ ਹੈ। ਦਰਅਸਲ, ਨਵੇਂ ਨਾਮ ਜੋੜਣ " +"ਵਾਲੀਆਂ ਸਾਰੀਆਂ ਕਾਰਵਾਈਆਂ ਲੋਕਲ ਸਕੋਪ ਦੀ ਵਰਤੋਂ ਕਰਦੀਆਂ ਹਨ; ਖਾਸ ਤੌਰ 'ਤੇ, :keyword:`import` " +"ਸਟੇਟਮੈਂਟ ਅਤੇ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾਵਾਂ ਮੋਡੀਊਲ ਜਾਂ ਫੰਕਸ਼ਨ ਦੇ ਨਾਮ ਨੂੰ ਲੋਕਲ ਸਕੋਪ ਵਿੱਚ ਬੰਨ੍ਹਦੀਆਂ ਹਨ।" msgid "" "The :keyword:`global` statement can be used to indicate that particular " -"variables live in the global scope and should be rebound there; the :keyword:" -"`nonlocal` statement indicates that particular variables live in an " -"enclosing scope and should be rebound there." +"variables live in the global scope and should be rebound there; " +"the :keyword:`nonlocal` statement indicates that particular variables live " +"in an enclosing scope and should be rebound there." msgstr "" +":keyword:`global` ਸਟੇਟਮੈਂਟ ਇਹ ਦਰਸਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਕਿ ਕੁਝ ਵੇਰੀਏਬਲ ਗਲੋਬਲ ਸਕੋਪ ਵਿੱਚ " +"ਮੌਜੂਦ ਹਨ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਉੱਥੇ ਹੀ ਮੁੜ ਬਾਈਂਡ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। :keyword:`nonlocal` ਸਟੇਟਮੈਂਟ " +"ਇਹ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ ਕੁਝ ਵੇਰੀਏਬਲ ਕਿਸੇ ਘੇਰਨ ਵਾਲੇ ਸਕੋਪ ਵਿੱਚ ਮੌਜੂਦ ਹਨ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਉੱਥੇ ਹੀ ਮੁੜ ਬਾਈਂਡ " +"ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "Scopes and Namespaces Example" -msgstr "" +msgstr "ਸਕੋਪ ਅਤੇ ਨੇਮਸਪੇਸ ਦੀ ਉਦਾਹਰਨ" msgid "" "This is an example demonstrating how to reference the different scopes and " "namespaces, and how :keyword:`global` and :keyword:`nonlocal` affect " "variable binding::" msgstr "" +"ਇਹ ਉਦਾਹਰਨ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ ਵੱਖ-ਵੱਖ ਸਕੋਪਾਂ ਅਤੇ ਨੇਮਸਪੇਸਾਂ ਦਾ ਹਵਾਲਾ ਕਿਵੇਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ " +"ਅਤੇ :keyword:`global` ਅਤੇ :keyword:`nonlocal` ਵੇਰੀਏਬਲ ਬਾਈਂਡਿੰਗ ਨੂੰ ਕਿਵੇਂ ਪ੍ਰਭਾਵਿਤ ਕਰਦੇ " +"ਹਨ::" msgid "" "def scope_test():\n" @@ -258,9 +367,31 @@ msgid "" "scope_test()\n" "print(\"In global scope:\", spam)" msgstr "" +"def scope_test():\n" +" def do_local():\n" +" spam = \"local spam\"\n" +"\n" +" def do_nonlocal():\n" +" nonlocal spam\n" +" spam = \"nonlocal spam\"\n" +"\n" +" def do_global():\n" +" global spam\n" +" spam = \"global spam\"\n" +"\n" +" spam = \"test spam\"\n" +" do_local()\n" +" print(\"After local assignment:\", spam)\n" +" do_nonlocal()\n" +" print(\"After nonlocal assignment:\", spam)\n" +" do_global()\n" +" print(\"After global assignment:\", spam)\n" +"\n" +"scope_test()\n" +"print(\"In global scope:\", spam)" msgid "The output of the example code is:" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਕੋਡ ਦਾ ਆਉਟਪੁੱਟ ਇਹ ਹੈ:" msgid "" "After local assignment: test spam\n" @@ -268,6 +399,10 @@ msgid "" "After global assignment: nonlocal spam\n" "In global scope: global spam" msgstr "" +"After local assignment: test spam\n" +"After nonlocal assignment: nonlocal spam\n" +"After global assignment: nonlocal spam\n" +"In global scope: global spam" msgid "" "Note how the *local* assignment (which is default) didn't change " @@ -275,25 +410,32 @@ msgid "" "changed *scope_test*\\'s binding of *spam*, and the :keyword:`global` " "assignment changed the module-level binding." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ *local* ਅਸਾਈਨਮੈਂਟ (ਜੋ ਮੂਲ ਵਰਤਾਰਾ ਹੈ) ਨੇ *scope_test* ਵਿੱਚ *spam* ਦੀ " +"ਬਾਈਂਡਿੰਗ ਨਹੀਂ ਬਦਲੀ। :keyword:`nonlocal` ਅਸਾਈਨਮੈਂਟ ਨੇ *scope_test* ਦੀ *spam* ਬਾਈਂਡਿੰਗ " +"ਬਦਲ ਦਿੱਤੀ, ਜਦਕਿ :keyword:`global` ਅਸਾਈਨਮੈਂਟ ਨੇ ਮੌਡਿਊਲ-ਪੱਧਰ ਦੀ ਬਾਈਂਡਿੰਗ ਬਦਲੀ।" msgid "" -"You can also see that there was no previous binding for *spam* before the :" -"keyword:`global` assignment." +"You can also see that there was no previous binding for *spam* before " +"the :keyword:`global` assignment." msgstr "" +"ਤੁਸੀਂ ਇਹ ਵੀ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ :keyword:`global` ਅਸਾਈਨਮੈਂਟ ਤੋਂ ਪਹਿਲਾਂ *spam* ਲਈ ਕੋਈ ਪਿਛਲੀ " +"ਬਾਈਂਡਿੰਗ ਮੌਜੂਦ ਨਹੀਂ ਸੀ।" msgid "A First Look at Classes" -msgstr "" +msgstr "ਕਲਾਸਾਂ ਨਾਲ ਪਹਿਲੀ ਜਾਣ-ਪਛਾਣ" msgid "" "Classes introduce a little bit of new syntax, three new object types, and " "some new semantics." msgstr "" +"ਕਲਾਸਾਂ ਕੁਝ ਨਵਾਂ ਸਿੰਟੈਕਸ, ਤਿੰਨ ਨਵੀਆਂ ਵਸਤੂ ਕਿਸਮਾਂ ਅਤੇ ਕੁਝ ਨਵੇਂ ਅਰਥਾਤਮਕ ਨਿਯਮਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ " +"ਕਰਵਾਉਂਦੀਆਂ ਹਨ।" msgid "Class Definition Syntax" -msgstr "" +msgstr "ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦਾ ਸਿੰਟੈਕਸ" msgid "The simplest form of class definition looks like this::" -msgstr "" +msgstr "ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦਾ ਸਭ ਤੋਂ ਸਰਲ ਰੂਪ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ::" msgid "" "class ClassName:\n" @@ -303,6 +445,12 @@ msgid "" " .\n" " " msgstr "" +"class ClassName:\n" +" \n" +" .\n" +" .\n" +" .\n" +" " msgid "" "Class definitions, like function definitions (:keyword:`def` statements) " @@ -310,6 +458,9 @@ msgid "" "a class definition in a branch of an :keyword:`if` statement, or inside a " "function.)" msgstr "" +"ਕਲਾਸ ਪਰਿਭਾਸ਼ਾਵਾਂ, ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾਵਾਂ (:keyword:`def` ਸਟੇਟਮੈਂਟਾਂ) ਵਾਂਗ, ਕੋਈ ਪ੍ਰਭਾਵ ਪੈਦਾ ਕਰਨ " +"ਤੋਂ ਪਹਿਲਾਂ ਚਲਾਈਆਂ ਜਾਣੀਆਂ ਲਾਜ਼ਮੀ ਹਨ। (ਉਦਾਹਰਨ ਲਈ, ਤੁਸੀਂ ਕਿਸੇ :keyword:`if` ਸਟੇਟਮੈਂਟ ਦੀ " +"ਸ਼ਾਖਾ ਵਿੱਚ ਜਾਂ ਕਿਸੇ ਫੰਕਸ਼ਨ ਦੇ ਅੰਦਰ ਇੱਕ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਰੱਖ ਸਕਦੇ ਹੋ।)" msgid "" "In practice, the statements inside a class definition will usually be " @@ -318,6 +469,10 @@ msgid "" "normally have a peculiar form of argument list, dictated by the calling " "conventions for methods --- again, this is explained later." msgstr "" +"ਅਮਲ ਵਿੱਚ, ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦੇ ਅੰਦਰਲੇ ਸਟੇਟਮੈਂਟ ਆਮ ਤੌਰ 'ਤੇ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾਵਾਂ ਹੁੰਦੀਆਂ ਹਨ, ਪਰ ਹੋਰ " +"ਸਟੇਟਮੈਂਟ ਵੀ ਮਨਜ਼ੂਰ ਹਨ ਅਤੇ ਕਈ ਵਾਰ ਲਾਭਦਾਇਕ ਵੀ ਹੁੰਦੀਆਂ ਹਨ — ਇਸ ਬਾਰੇ ਅਸੀਂ ਬਾਅਦ ਵਿੱਚ ਮੁੜ ਗੱਲ " +"ਕਰਾਂਗੇ। ਕਲਾਸ ਦੇ ਅੰਦਰਲੇ ਫੰਕਸ਼ਨ ਆਮ ਤੌਰ 'ਤੇ ਆਰਗੂਮੈਂਟ ਸੂਚੀ ਦੇ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਰੂਪ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ, ਜੋ " +"ਵਿਧੀਆਂ ਦੀ ਕਾਲਿੰਗ ਪਰੰਪਰਾ ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਹੁੰਦਾ ਹੈ — ਇਸਦੀ ਵੀ ਵਿਆਖਿਆ ਅੱਗੇ ਕੀਤੀ ਜਾਵੇਗੀ।" msgid "" "When a class definition is entered, a new namespace is created, and used as " @@ -325,6 +480,9 @@ msgid "" "new namespace. In particular, function definitions bind the name of the new " "function here." msgstr "" +"ਜਦੋਂ ਕਿਸੇ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ ਦਾਖਲ ਹੁੰਦੇ ਹਾਂ, ਤਾਂ ਇੱਕ ਨਵਾਂ ਨੇਮਸਪੇਸ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ " +"ਸਥਾਨਕ ਸਕੋਪ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਲਈ ਸਥਾਨਕ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਕੀਤੀਆਂ ਸਾਰੀਆਂ ਅਸਾਈਨਮੈਂਟਾਂ ਇਸ ਨਵੇਂ " +"ਨੇਮਸਪੇਸ ਵਿੱਚ ਜਾਂਦੀਆਂ ਹਨ।" msgid "" "When a class definition is left normally (via the end), a *class object* is " @@ -335,14 +493,21 @@ msgid "" "here to the class name given in the class definition header (:class:`!" "ClassName` in the example)." msgstr "" +"ਜਦੋਂ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਆਮ ਤਰੀਕੇ ਨਾਲ (ਅੰਤ ਤੱਕ ਪਹੁੰਚ ਕੇ) ਸਮਾਪਤ ਹੁੰਦੀ ਹੈ, ਤਾਂ ਇੱਕ *ਕਲਾਸ ਆਬਜੈਕਟ* " +"ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਅਸਲ ਵਿੱਚ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦੁਆਰਾ ਬਣਾਏ ਗਏ ਨੇਮਸਪੇਸ ਦੀ ਸਮੱਗਰੀ ਦੇ ਆਲੇ-ਦੁਆਲੇ " +"ਇੱਕ ਰੈਪਰ ਹੁੰਦਾ ਹੈ। ਅਗਲੇ ਭਾਗ ਵਿੱਚ ਅਸੀਂ ਕਲਾਸ ਆਬਜੈਕਟਾਂ ਬਾਰੇ ਹੋਰ ਸਿੱਖਾਂਗੇ। ਮੂਲ ਸਥਾਨਕ ਸਕੋਪ (ਜੋ ਕਲਾਸ " +"ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ ਦਾਖਲ ਹੋਣ ਤੋਂ ਠੀਕ ਪਹਿਲਾਂ ਸਰਗਰਮ ਸੀ) ਮੁੜ ਬਹਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਕਲਾਸ ਆਬਜੈਕਟ " +"ਨੂੰ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦੇ ਸਿਰਲੇਖ ਵਿੱਚ ਦਿੱਤੇ ਕਲਾਸ ਨਾਂ ਨਾਲ ਇੱਥੇ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ (:class:`!" +"ClassName` ਉਦਾਹਰਨ ਵਿੱਚ)।" msgid "Class Objects" -msgstr "" +msgstr "ਕਲਾਸ ਆਬਜੈਕਟ" msgid "" "Class objects support two kinds of operations: attribute references and " "instantiation." msgstr "" +"ਕਲਾਸ ਆਬਜੈਕਟ ਦੋ ਕਿਸਮ ਦੀਆਂ ਕਾਰਵਾਈਆਂ ਦਾ ਸਮਰਥਨ ਕਰਦੇ ਹਨ: ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲੇ ਅਤੇ ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ।" msgid "" "*Attribute references* use the standard syntax used for all attribute " @@ -350,6 +515,9 @@ msgid "" "that were in the class's namespace when the class object was created. So, " "if the class definition looked like this::" msgstr "" +"*ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲੇ* Python ਵਿੱਚ ਸਾਰੇ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲਿਆਂ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਮਿਆਰੀ ਸਿੰਟੈਕਸ " +"``obj.name`` ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਵੈਧ ਐਟ੍ਰਿਬਿਊਟ ਨਾਂ ਉਹ ਸਾਰੇ ਨਾਂ ਹੁੰਦੇ ਹਨ ਜੋ ਕਲਾਸ ਆਬਜੈਕਟ " +"ਬਣਾਉਣ ਵੇਲੇ ਕਲਾਸ ਦੇ ਨੇਮਸਪੇਸ ਵਿੱਚ ਮੌਜੂਦ ਸਨ। ਇਸ ਲਈ, ਜੇ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਇਸ ਤਰ੍ਹਾਂ ਹੋਵੇ::" msgid "" "class MyClass:\n" @@ -359,6 +527,12 @@ msgid "" " def f(self):\n" " return 'hello world'" msgstr "" +"class MyClass:\n" +" \"\"\"ਇੱਕ ਸਰਲ ਉਦਾਹਰਨ ਕਲਾਸ\"\"\"\n" +" i = 12345\n" +"\n" +" def f(self):\n" +" return 'hello world'" msgid "" "then ``MyClass.i`` and ``MyClass.f`` are valid attribute references, " @@ -367,32 +541,48 @@ msgid "" "assignment. :attr:`~type.__doc__` is also a valid attribute, returning the " "docstring belonging to the class: ``\"A simple example class\"``." msgstr "" +"ਤਾਂ ``MyClass.i`` ਅਤੇ ``MyClass.f`` ਵੈਧ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲੇ ਹਨ, ਜੋ ਕ੍ਰਮਵਾਰ ਇੱਕ ਪੂਰਨ ਅੰਕ ਅਤੇ " +"ਇੱਕ ਫੰਕਸ਼ਨ ਵਸਤੂ ਵਾਪਸ ਕਰਦੇ ਹਨ। ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟਾਂ ਨੂੰ ਅਸਾਈਨ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਤੁਸੀਂ " +"ਅਸਾਈਨਮੈਂਟ ਰਾਹੀਂ ``MyClass.i`` ਦਾ ਮੁੱਲ ਬਦਲ ਸਕਦੇ ਹੋ। :attr:`~type.__doc__` ਵੀ ਇੱਕ ਵੈਧ " +"ਐਟ੍ਰਿਬਿਊਟ ਹੈ ਜੋ ਕਲਾਸ ਨਾਲ ਸੰਬੰਧਿਤ ਡਾਕਸਟਰਿੰਗ ``\"A simple example class\"`` ਵਾਪਸ " +"ਕਰਦਾ ਹੈ।" msgid "" "Class *instantiation* uses function notation. Just pretend that the class " "object is a parameterless function that returns a new instance of the class. " "For example (assuming the above class)::" msgstr "" +"ਕਲਾਸ *ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ* ਫੰਕਸ਼ਨ ਨੋਟੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਸਿਰਫ਼ ਇਹ ਮੰਨ ਲਵੋ ਕਿ ਕਲਾਸ ਆਬਜੈਕਟ ਇੱਕ ਬਿਨਾਂ " +"ਪੈਰਾਮੀਟਰ ਵਾਲਾ ਫੰਕਸ਼ਨ ਹੈ ਜੋ ਕਲਾਸ ਦਾ ਨਵਾਂ ਇੰਸਟੈਂਸ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ (ਉਪਰੋਕਤ ਕਲਾਸ " +"ਮੰਨਦੇ ਹੋਏ)::" msgid "x = MyClass()" -msgstr "" +msgstr "x = MyClass()" msgid "" "creates a new *instance* of the class and assigns this object to the local " "variable ``x``." msgstr "" +"ਇਹ ਕਲਾਸ ਦਾ ਇੱਕ ਨਵਾਂ *ਇੰਸਟੈਂਸ* ਬਣਾਉਂਦਾ ਹੈ ਅਤੇ ਇਸ ਵਸਤੂ ਨੂੰ ਸਥਾਨਕ ਵੇਰੀਏਬਲ ``x`` ਨਾਲ ਜੋੜ ਦਿੰਦਾ " +"ਹੈ।" msgid "" "The instantiation operation (\"calling\" a class object) creates an empty " "object. Many classes like to create objects with instances customized to a " -"specific initial state. Therefore a class may define a special method named :" -"meth:`~object.__init__`, like this::" +"specific initial state. Therefore a class may define a special method " +"named :meth:`~object.__init__`, like this::" msgstr "" +"ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ ਕਾਰਵਾਈ (ਕਲਾਸ ਆਬਜੈਕਟ ਨੂੰ \"ਕਾਲ\" ਕਰਨਾ) ਇੱਕ ਖਾਲੀ ਆਬਜੈਕਟ ਬਣਾਉਂਦੀ ਹੈ। ਬਹੁਤ " +"ਸਾਰੀਆਂ ਕਲਾਸਾਂ ਐਸੀਆਂ ਵਸਤੂਆਂ ਬਣਾਉਣਾ ਪਸੰਦ ਕਰਦੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਦੇ ਇੰਸਟੈਂਸ ਕਿਸੇ ਖਾਸ ਸ਼ੁਰੂਆਤੀ ਸਥਿਤੀ " +"ਅਨੁਸਾਰ ਸੰਰਚਿਤ ਕੀਤੇ ਗਏ ਹੋਣ। ਇਸ ਲਈ ਕੋਈ ਕਲਾਸ :meth:`~object.__init__` ਨਾਂ ਦੀ ਇੱਕ ਵਿਸ਼ੇਸ਼ " +"ਵਿਧੀ ਪਰਿਭਾਸ਼ਿਤ ਕਰ ਸਕਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ::" msgid "" "def __init__(self):\n" " self.data = []" msgstr "" +"def __init__(self):\n" +" self.data = []" msgid "" "When a class defines an :meth:`~object.__init__` method, class instantiation " @@ -400,12 +590,18 @@ msgid "" "instance. So in this example, a new, initialized instance can be obtained " "by::" msgstr "" +"ਜਦੋਂ ਕੋਈ ਕਲਾਸ :meth:`~object.__init__` ਵਿਧੀ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਤਾਂ ਕਲਾਸ ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ " +"ਨਵੇਂ ਬਣੇ ਕਲਾਸ ਇੰਸਟੈਂਸ ਲਈ ਆਪਣੇ ਆਪ :meth:`!__init__` ਨੂੰ ਚਲਾਉਂਦੀ ਹੈ। ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ ਇੱਕ ਨਵਾਂ " +"ਅਤੇ ਸ਼ੁਰੂਆਤੀਕ੍ਰਿਤ ਇੰਸਟੈਂਸ ਇਸ ਤਰ੍ਹਾਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "Of course, the :meth:`~object.__init__` method may have arguments for " "greater flexibility. In that case, arguments given to the class " "instantiation operator are passed on to :meth:`!__init__`. For example, ::" msgstr "" +"ਬੇਸ਼ੱਕ, ਵੱਧ ਲਚਕਤਾ ਲਈ :meth:`~object.__init__` ਵਿਧੀ ਵਿੱਚ ਆਰਗੂਮੈਂਟ ਹੋ ਸਕਦੇ ਹਨ। ਇਸ ਸਥਿਤੀ " +"ਵਿੱਚ ਕਲਾਸ ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ ਓਪਰੇਟਰ ਨੂੰ ਦਿੱਤੇ ਗਏ ਆਰਗੂਮੈਂਟ :meth:`!__init__` ਨੂੰ ਭੇਜੇ ਜਾਂਦੇ ਹਨ। ਉਦਾਹਰਨ " +"ਲਈ::" msgid "" ">>> class Complex:\n" @@ -417,15 +613,26 @@ msgid "" ">>> x.r, x.i\n" "(3.0, -4.5)" msgstr "" +">>> class Complex:\n" +"... def __init__(self, realpart, imagpart):\n" +"... self.r = realpart\n" +"... self.i = imagpart\n" +"...\n" +">>> x = Complex(3.0, -4.5)\n" +">>> x.r, x.i\n" +"(3.0, -4.5)" msgid "Instance Objects" -msgstr "" +msgstr "ਇੰਸਟੈਂਸ ਆਬਜੈਕਟ" msgid "" "Now what can we do with instance objects? The only operations understood by " "instance objects are attribute references. There are two kinds of valid " "attribute names: data attributes and methods." msgstr "" +"ਹੁਣ ਅਸੀਂ ਇੰਸਟੈਂਸ ਆਬਜੈਕਟਾਂ ਨਾਲ ਕੀ ਕਰ ਸਕਦੇ ਹਾਂ? ਇੰਸਟੈਂਸ ਆਬਜੈਕਟਾਂ ਦੁਆਰਾ ਸਮਝੀ ਜਾਣ ਵਾਲੀ ਇਕੱਲੀ " +"ਕਾਰਵਾਈ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲਾ ਹੈ। ਵੈਧ ਐਟ੍ਰਿਬਿਊਟ ਨਾਂਵਾਂ ਦੀਆਂ ਦੋ ਕਿਸਮਾਂ ਹਨ: data attributes ਅਤੇ " +"methods।" msgid "" "*Data attributes* correspond to \"instance variables\" in Smalltalk, and to " @@ -435,6 +642,11 @@ msgid "" "following piece of code will print the value ``16``, without leaving a " "trace::" msgstr "" +"*ਡਾਟਾ ਐਟ੍ਰਿਬਿਊਟ* Smalltalk ਵਿੱਚ \"instance variables\" ਅਤੇ C++ ਵਿੱਚ \"data " +"members\" ਦੇ ਸਮਾਨ ਹੁੰਦੇ ਹਨ। ਡਾਟਾ ਐਟ੍ਰਿਬਿਊਟਾਂ ਨੂੰ ਪਹਿਲਾਂ ਤੋਂ ਘੋਸ਼ਿਤ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ; " +"ਸਥਾਨਕ ਵੇਰੀਏਬਲਾਂ ਵਾਂਗ ਇਹ ਪਹਿਲੀ ਵਾਰ ਅਸਾਈਨ ਹੋਣ 'ਤੇ ਮੌਜੂਦਗੀ ਵਿੱਚ ਆ ਜਾਂਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਜੇ " +"``x`` ਉੱਪਰ ਬਣਾਇਆ ਗਿਆ :class:`!MyClass` ਦਾ ਇੰਸਟੈਂਸ ਹੈ, ਤਾਂ ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ``16`` ਮੁੱਲ " +"ਪ੍ਰਿੰਟ ਕਰੇਗਾ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਕੋਈ ਨਿਸ਼ਾਨ ਨਹੀਂ ਛੱਡੇਗਾ::" msgid "" "x.counter = 1\n" @@ -443,11 +655,18 @@ msgid "" "print(x.counter)\n" "del x.counter" msgstr "" +"x.counter = 1\n" +"while x.counter < 10:\n" +" x.counter = x.counter * 2\n" +"print(x.counter)\n" +"del x.counter" msgid "" "The other kind of instance attribute reference is a *method*. A method is a " "function that \"belongs to\" an object." msgstr "" +"ਇੰਸਟੈਂਸ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲੇ ਦੀ ਦੂਜੀ ਕਿਸਮ *method* ਹੈ। Method ਇੱਕ ਐਸਾ ਫੰਕਸ਼ਨ ਹੈ ਜੋ ਕਿਸੇ ਆਬਜੈਕਟ " +"ਨਾਲ ਸੰਬੰਧਿਤ ਹੁੰਦਾ ਹੈ।" msgid "" "Valid method names of an instance object depend on its class. By " @@ -457,15 +676,20 @@ msgid "" "not, since ``MyClass.i`` is not. But ``x.f`` is not the same thing as " "``MyClass.f`` --- it is a *method object*, not a function object." msgstr "" +"ਕਿਸੇ ਇੰਸਟੈਂਸ ਆਬਜੈਕਟ ਦੇ ਵੈਧ ਮੈਥਡ ਨਾਮ ਉਸਦੀ ਕਲਾਸ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। ਪਰਿਭਾਸ਼ਾ ਅਨੁਸਾਰ, ਕਲਾਸ ਦੇ " +"ਉਹ ਸਾਰੇ ਐਟ੍ਰਿਬਿਊਟ ਜੋ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਹੁੰਦੇ ਹਨ, ਉਸਦੇ ਇੰਸਟੈਂਸਾਂ ਲਈ ਸੰਬੰਧਿਤ ਮੈਥਡ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਨ। " +"ਇਸ ਲਈ ਸਾਡੀ ਉਦਾਹਰਨ ਵਿੱਚ ``x.f`` ਇੱਕ ਵੈਧ ਮੈਥਡ ਹਵਾਲਾ ਹੈ, ਕਿਉਂਕਿ ``MyClass.f`` ਇੱਕ ਫੰਕਸ਼ਨ " +"ਹੈ, ਪਰ ``x.i`` ਨਹੀਂ, ਕਿਉਂਕਿ ``MyClass.i`` ਨਹੀਂ ਹੈ। ਪਰ ``x.f`` ``MyClass.f`` ਦੇ " +"ਸਮਾਨ ਨਹੀਂ ਹੈ — ਇਹ ਇੱਕ *ਮੈਥਡ ਆਬਜੈਕਟ* ਹੈ, ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਨਹੀਂ।" msgid "Method Objects" -msgstr "" +msgstr "Method Objects" msgid "Usually, a method is called right after it is bound::" -msgstr "" +msgstr "ਆਮ ਤੌਰ 'ਤੇ, ਕਿਸੇ method ਨੂੰ ਉਸਦੇ bind ਹੋਣ ਦੇ ਤੁਰੰਤ ਬਾਅਦ call ਕੀਤਾ ਜਾਂਦਾ ਹੈ::" msgid "x.f()" -msgstr "" +msgstr "x.f()" msgid "" "If ``x = MyClass()``, as above, this will return the string ``'hello " @@ -473,24 +697,35 @@ msgid "" "is a method object, and can be stored away and called at a later time. For " "example::" msgstr "" +"ਜੇ ਉੱਪਰ ਵਾਂਗ ``x = MyClass()`` ਹੋਵੇ, ਤਾਂ ਇਹ ``'hello world'`` ਸਟ੍ਰਿੰਗ ਵਾਪਸ ਕਰੇਗਾ। ਪਰ " +"ਮੈਥਡ ਨੂੰ ਤੁਰੰਤ ਕਾਲ ਕਰਨਾ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ। ``x.f`` ਇੱਕ ਮੈਥਡ ਆਬਜੈਕਟ ਹੈ ਅਤੇ ਇਸਨੂੰ ਸੰਭਾਲ ਕੇ ਬਾਅਦ " +"ਵਿੱਚ ਵੀ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" "xf = x.f\n" "while True:\n" " print(xf())" msgstr "" +"xf = x.f\n" +"while True:\n" +" print(xf())" msgid "will continue to print ``hello world`` until the end of time." -msgstr "" +msgstr "ਇਹ ਅਨੰਤ ਸਮੇਂ ਤੱਕ ``hello world`` ਪ੍ਰਿੰਟ ਕਰਦਾ ਰਹੇਗਾ।" msgid "" -"What exactly happens when a method is called? You may have noticed that ``x." -"f()`` was called without an argument above, even though the function " +"What exactly happens when a method is called? You may have noticed that " +"``x.f()`` was called without an argument above, even though the function " "definition for :meth:`!f` specified an argument. What happened to the " "argument? Surely Python raises an exception when a function that requires an " "argument is called without any --- even if the argument isn't actually " "used..." msgstr "" +"ਜਦੋਂ ਕੋਈ ਮੈਥਡ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਅਸਲ ਵਿੱਚ ਕੀ ਹੁੰਦਾ ਹੈ? ਤੁਸੀਂ ਧਿਆਨ ਦਿੱਤਾ ਹੋਵੇਗਾ ਕਿ ਉੱਪਰ " +"``x.f()`` ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ ਕਾਲ ਕੀਤਾ ਗਿਆ ਸੀ, ਹਾਲਾਂਕਿ :meth:`!f` ਦੀ ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ " +"ਇੱਕ ਆਰਗੂਮੈਂਟ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਫਿਰ ਉਹ ਆਰਗੂਮੈਂਟ ਕਿੱਥੇ ਗਿਆ? ਆਮ ਤੌਰ 'ਤੇ Python ਉਸ ਵੇਲੇ ਐਕਸੈਪਸ਼ਨ ਪੈਦਾ " +"ਕਰਦਾ ਹੈ ਜਦੋਂ ਕਿਸੇ ਲੋੜੀਂਦੇ ਆਰਗੂਮੈਂਟ ਵਾਲੇ ਫੰਕਸ਼ਨ ਨੂੰ ਬਿਨਾਂ ਆਰਗੂਮੈਂਟ ਦੇ ਕਾਲ ਕੀਤਾ ਜਾਵੇ — ਭਾਵੇਂ ਉਹ ਆਰਗੂਮੈਂਟ " +"ਵਰਤਿਆ ਨਾ ਵੀ ਜਾਵੇ..." msgid "" "Actually, you may have guessed the answer: the special thing about methods " @@ -501,6 +736,11 @@ msgid "" "that is created by inserting the method's instance object before the first " "argument." msgstr "" +"ਅਸਲ ਵਿੱਚ, ਤੁਸੀਂ ਸ਼ਾਇਦ ਇਸਦਾ ਜਵਾਬ ਅੰਦਾਜ਼ਾ ਲਾ ਲਿਆ ਹੋਵੇਗਾ। ਮੈਥਡਾਂ ਦੀ ਖਾਸ ਗੱਲ ਇਹ ਹੈ ਕਿ ਇੰਸਟੈਂਸ " +"ਆਬਜੈਕਟ ਆਪਣੇ ਆਪ ਫੰਕਸ਼ਨ ਦੇ ਪਹਿਲੇ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ। ਸਾਡੀ ਉਦਾਹਰਨ ਵਿੱਚ ``x.f()`` ਦੀ " +"ਕਾਲ ਬਿਲਕੁਲ ``MyClass.f(x)`` ਦੇ ਬਰਾਬਰ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ, *n* ਆਰਗੂਮੈਂਟਾਂ ਵਾਲੇ ਮੈਥਡ ਨੂੰ ਕਾਲ " +"ਕਰਨਾ ਉਸ ਸੰਬੰਧਿਤ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ ਜਿਸਦੇ ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਸੂਚੀ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਇੰਸਟੈਂਸ " +"ਆਬਜੈਕਟ ਜੋੜਿਆ ਗਿਆ ਹੋਵੇ।" msgid "" "In general, methods work as follows. When a non-data attribute of an " @@ -511,15 +751,23 @@ msgid "" "argument list is constructed from the instance object and the argument list, " "and the function object is called with this new argument list." msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ ਮੈਥਡ ਇਸ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦੇ ਹਨ। ਜਦੋਂ ਕਿਸੇ ਇੰਸਟੈਂਸ ਦੇ ਗੈਰ-ਡਾਟਾ ਐਟ੍ਰਿਬਿਊਟ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ " +"ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਸਦੀ ਕਲਾਸ ਵਿੱਚ ਖੋਜ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇਕਰ ਉਹ ਨਾਮ ਕਿਸੇ ਐਸੇ ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟ ਨੂੰ " +"ਦਰਸਾਉਂਦਾ ਹੋਵੇ ਜੋ ਇੱਕ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਇੰਸਟੈਂਸ ਆਬਜੈਕਟ ਅਤੇ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਦੋਵਾਂ ਦੇ ਹਵਾਲੇ ਮਿਲਾ ਕੇ " +"ਇੱਕ ਮੈਥਡ ਆਬਜੈਕਟ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ ਇਸ ਮੈਥਡ ਆਬਜੈਕਟ ਨੂੰ ਆਰਗੂਮੈਂਟਾਂ ਨਾਲ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ " +"ਇੰਸਟੈਂਸ ਆਬਜੈਕਟ ਅਤੇ ਦਿੱਤੇ ਗਏ ਆਰਗੂਮੈਂਟਾਂ ਤੋਂ ਇੱਕ ਨਵੀਂ ਆਰਗੂਮੈਂਟ ਸੂਚੀ ਬਣਾਈ ਜਾਂਦੀ ਹੈ ਅਤੇ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਨੂੰ " +"ਇਸ ਨਵੀਂ ਸੂਚੀ ਨਾਲ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "Class and Instance Variables" -msgstr "" +msgstr "ਕਲਾਸ ਅਤੇ ਇੰਸਟੈਂਸ ਵੇਰੀਏਬਲ" msgid "" "Generally speaking, instance variables are for data unique to each instance " "and class variables are for attributes and methods shared by all instances " "of the class::" msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ, ਇੰਸਟੈਂਸ ਵੇਰੀਏਬਲ ਹਰ ਇੰਸਟੈਂਸ ਲਈ ਵਿਲੱਖਣ ਡਾਟਾ ਸੰਭਾਲਣ ਲਈ ਹੁੰਦੇ ਹਨ ਅਤੇ ਕਲਾਸ ਵੇਰੀਏਬਲ " +"ਉਹਨਾਂ ਐਟ੍ਰਿਬਿਊਟਾਂ ਅਤੇ ਵਿਧੀਆਂ ਲਈ ਹੁੰਦੇ ਹਨ ਜੋ ਕਲਾਸ ਦੇ ਸਾਰੇ ਇੰਸਟੈਂਸਾਂ ਦੁਆਰਾ ਸਾਂਝੇ ਕੀਤੇ ਜਾਂਦੇ ਹਨ::" msgid "" "class Dog:\n" @@ -540,6 +788,23 @@ msgid "" ">>> e.name # unique to e\n" "'Buddy'" msgstr "" +"class Dog:\n" +"\n" +" kind = 'canine' # class variable shared by all instances\n" +"\n" +" def __init__(self, name):\n" +" self.name = name # instance variable unique to each instance\n" +"\n" +">>> d = Dog('Fido')\n" +">>> e = Dog('Buddy')\n" +">>> d.kind # shared by all dogs\n" +"'canine'\n" +">>> e.kind # shared by all dogs\n" +"'canine'\n" +">>> d.name # unique to d\n" +"'Fido'\n" +">>> e.name # unique to e\n" +"'Buddy'" msgid "" "As discussed in :ref:`tut-object`, shared data can have possibly surprising " @@ -548,6 +813,10 @@ msgid "" "class variable because just a single list would be shared by all *Dog* " "instances::" msgstr "" +"ਜਿਵੇਂ ਕਿ :ref:`tut-object` ਵਿੱਚ ਚਰਚਾ ਕੀਤੀ ਗਈ ਹੈ, ਸਾਂਝਾ ਡਾਟਾ :term:`mutable` " +"ਆਬਜੈਕਟਾਂ ਜਿਵੇਂ ਲਿਸਟਾਂ ਅਤੇ ਡਿਕਸ਼ਨਰੀਆਂ ਨਾਲ ਕਈ ਵਾਰ ਹੈਰਾਨੀਜਨਕ ਨਤੀਜੇ ਪੈਦਾ ਕਰ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਵਿੱਚ *tricks* ਲਿਸਟ ਨੂੰ ਕਲਾਸ ਵੇਰੀਏਬਲ ਵਜੋਂ ਨਹੀਂ ਵਰਤਣਾ ਚਾਹੀਦਾ ਕਿਉਂਕਿ ਇੱਕੋ " +"ਲਿਸਟ ਸਾਰੇ *Dog* ਇੰਸਟੈਂਸਾਂ ਵੱਲੋਂ ਸਾਂਝੀ ਕੀਤੀ ਜਾਵੇਗੀ::" msgid "" "class Dog:\n" @@ -567,9 +836,25 @@ msgid "" ">>> d.tricks # unexpectedly shared by all dogs\n" "['roll over', 'play dead']" msgstr "" +"class Dog:\n" +"\n" +" tricks = [] # mistaken use of a class variable\n" +"\n" +" def __init__(self, name):\n" +" self.name = name\n" +"\n" +" def add_trick(self, trick):\n" +" self.tricks.append(trick)\n" +"\n" +">>> d = Dog('Fido')\n" +">>> e = Dog('Buddy')\n" +">>> d.add_trick('roll over')\n" +">>> e.add_trick('play dead')\n" +">>> d.tricks # unexpectedly shared by all dogs\n" +"['roll over', 'play dead']" msgid "Correct design of the class should use an instance variable instead::" -msgstr "" +msgstr "ਕਲਾਸ ਦੇ ਸਹੀ ਡਿਜ਼ਾਇਨ ਵਿੱਚ ਇਸਦੀ ਬਜਾਏ ਇੱਕ ਇੰਸਟੈਂਸ ਵੇਰੀਏਬਲ ਵਰਤਣਾ ਚਾਹੀਦਾ ਹੈ::" msgid "" "class Dog:\n" @@ -590,14 +875,33 @@ msgid "" ">>> e.tricks\n" "['play dead']" msgstr "" +"class Dog:\n" +"\n" +" def __init__(self, name):\n" +" self.name = name\n" +" self.tricks = [] # creates a new empty list for each dog\n" +"\n" +" def add_trick(self, trick):\n" +" self.tricks.append(trick)\n" +"\n" +">>> d = Dog('Fido')\n" +">>> e = Dog('Buddy')\n" +">>> d.add_trick('roll over')\n" +">>> e.add_trick('play dead')\n" +">>> d.tricks\n" +"['roll over']\n" +">>> e.tricks\n" +"['play dead']" msgid "Random Remarks" -msgstr "" +msgstr "ਕੁਝ ਵਾਧੂ ਟਿੱਪਣੀਆਂ" msgid "" "If the same attribute name occurs in both an instance and in a class, then " "attribute lookup prioritizes the instance::" msgstr "" +"ਜੇਕਰ ਇੱਕੋ ਐਟ੍ਰਿਬਿਊਟ ਨਾਂ ਇੰਸਟੈਂਸ ਅਤੇ ਕਲਾਸ ਦੋਵਾਂ ਵਿੱਚ ਮੌਜੂਦ ਹੋਵੇ, ਤਾਂ ਐਟ੍ਰਿਬਿਊਟ ਖੋਜ ਦੌਰਾਨ ਇੰਸਟੈਂਸ ਨੂੰ " +"ਤਰਜੀਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ::" msgid "" ">>> class Warehouse:\n" @@ -612,6 +916,17 @@ msgid "" ">>> print(w2.purpose, w2.region)\n" "storage east" msgstr "" +">>> class Warehouse:\n" +"... purpose = 'storage'\n" +"... region = 'west'\n" +"...\n" +">>> w1 = Warehouse()\n" +">>> print(w1.purpose, w1.region)\n" +"storage west\n" +">>> w2 = Warehouse()\n" +">>> w2.region = 'east'\n" +">>> print(w2.purpose, w2.region)\n" +"storage east" msgid "" "Data attributes may be referenced by methods as well as by ordinary users " @@ -622,6 +937,12 @@ msgid "" "implementation details and control access to an object if necessary; this " "can be used by extensions to Python written in C.)" msgstr "" +"ਡਾਟਾ ਐਟ੍ਰਿਬਿਊਟਾਂ ਨੂੰ ਵਿਧੀਆਂ ਅਤੇ ਕਿਸੇ ਵਸਤੂ ਦੇ ਆਮ ਵਰਤੋਂਕਾਰਾਂ (\"ਕਲਾਇੰਟਾਂ\") ਦੁਆਰਾ ਵੀ ਹਵਾਲਾ " +"ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਦੂਜੇ ਸ਼ਬਦਾਂ ਵਿੱਚ, ਕਲਾਸਾਂ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਮੂਰਤ ਡਾਟਾ ਕਿਸਮਾਂ ਲਾਗੂ ਕਰਨ ਲਈ " +"ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਅਸਲ ਵਿੱਚ Python ਵਿੱਚ ਡਾਟਾ ਲੁਕਾਉਣ ਨੂੰ ਲਾਜ਼ਮੀ ਬਣਾਉਣ ਦਾ ਕੋਈ ਤਰੀਕਾ " +"ਨਹੀਂ ਹੈ — ਇਹ ਸਾਰਾ ਕੁਝ ਰਿਵਾਜਾਂ ਉੱਤੇ ਆਧਾਰਿਤ ਹੈ। (ਦੂਜੇ ਪਾਸੇ, C ਵਿੱਚ ਲਿਖਿਆ Python ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ " +"ਲੋੜ ਪੈਣ 'ਤੇ ਅੰਦਰੂਨੀ ਵੇਰਵਿਆਂ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਲੁਕਾ ਸਕਦਾ ਹੈ ਅਤੇ ਵਸਤੂ ਤੱਕ ਪਹੁੰਚ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰ ਸਕਦਾ " +"ਹੈ; ਇਹ C ਵਿੱਚ ਲਿਖੀਆਂ Python ਐਕਸਟੈਂਸ਼ਨਾਂ ਦੁਆਰਾ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।)" msgid "" "Clients should use data attributes with care --- clients may mess up " @@ -630,6 +951,11 @@ msgid "" "without affecting the validity of the methods, as long as name conflicts are " "avoided --- again, a naming convention can save a lot of headaches here." msgstr "" +"Clients ਨੂੰ data attributes ਦੀ ਵਰਤੋਂ ਸਾਵਧਾਨੀ ਨਾਲ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ, ਕਿਉਂਕਿ ਉਹ ਆਪਣੇ " +"attributes ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਕਰਕੇ methods ਦੁਆਰਾ ਬਣਾਈ ਰੱਖੀਆਂ ਗਈਆਂ invariants ਨੂੰ ਖਰਾਬ ਕਰ " +"ਸਕਦੇ ਹਨ। ਧਿਆਨ ਦਿਓ ਕਿ ਜੇ ਨਾਂਵਾਂ ਦਾ ਟਕਰਾਅ ਨਾ ਹੋਵੇ ਤਾਂ clients instance object ਵਿੱਚ ਆਪਣੇ " +"data attributes ਵੀ ਜੋੜ ਸਕਦੇ ਹਨ ਬਿਨਾਂ methods ਦੀ ਵੈਧਤਾ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕੀਤੇ। ਇੱਥੇ ਵੀ ਇੱਕ " +"ਵਧੀਆ naming convention ਬਹੁਤ ਸਾਰੀਆਂ ਮੁਸ਼ਕਲਾਂ ਤੋਂ ਬਚਾ ਸਕਦਾ ਹੈ।" msgid "" "There is no shorthand for referencing data attributes (or other methods!) " @@ -637,6 +963,9 @@ msgid "" "methods: there is no chance of confusing local variables and instance " "variables when glancing through a method." msgstr "" +"Methods ਦੇ ਅੰਦਰੋਂ data attributes (ਜਾਂ ਹੋਰ methods) ਦਾ ਹਵਾਲਾ ਦੇਣ ਲਈ ਕੋਈ ਸੰਖੇਪ ਰੂਪ ਨਹੀਂ " +"ਹੈ। ਅਸਲ ਵਿੱਚ ਇਹ methods ਦੀ ਪੜ੍ਹਨਯੋਗਤਾ ਵਧਾਉਂਦਾ ਹੈ ਕਿਉਂਕਿ method ਨੂੰ ਦੇਖਦੇ ਸਮੇਂ local " +"variables ਅਤੇ instance variables ਵਿੱਚ ਉਲਝਣ ਦੀ ਸੰਭਾਵਨਾ ਨਹੀਂ ਰਹਿੰਦੀ।" msgid "" "Often, the first argument of a method is called ``self``. This is nothing " @@ -646,6 +975,10 @@ msgid "" "that a *class browser* program might be written that relies upon such a " "convention." msgstr "" +"ਅਕਸਰ ਕਿਸੇ ਮੈਥਡ ਦੇ ਪਹਿਲੇ ਆਰਗੂਮੈਂਟ ਨੂੰ ``self`` ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਸਿਰਫ਼ ਇੱਕ ਰਿਵਾਜ ਹੈ; " +"``self`` ਨਾਮ ਦਾ Python ਲਈ ਕੋਈ ਖਾਸ ਅਰਥ ਨਹੀਂ ਹੈ। ਹਾਲਾਂਕਿ, ਜੇ ਤੁਸੀਂ ਇਸ ਰਿਵਾਜ ਦੀ ਪਾਲਣਾ " +"ਨਹੀਂ ਕਰਦੇ, ਤਾਂ ਤੁਹਾਡਾ ਕੋਡ ਹੋਰ Python ਪ੍ਰੋਗਰਾਮਰਾਂ ਲਈ ਘੱਟ ਸਮਝਣਯੋਗ ਹੋ ਸਕਦਾ ਹੈ ਅਤੇ ਸੰਭਵ ਹੈ ਕਿ ਕੋਈ " +"*class browser* ਪ੍ਰੋਗਰਾਮ ਵੀ ਇਸੇ ਰਿਵਾਜ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੋਵੇ।" msgid "" "Any function object that is a class attribute defines a method for instances " @@ -653,6 +986,9 @@ msgid "" "textually enclosed in the class definition: assigning a function object to a " "local variable in the class is also ok. For example::" msgstr "" +"ਕਲਾਸ ਐਟ੍ਰਿਬਿਊਟ ਵਜੋਂ ਮੌਜੂਦ ਹਰ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਉਸ ਕਲਾਸ ਦੇ ਇੰਸਟੈਂਸਾਂ ਲਈ ਇੱਕ ਮੈਥਡ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ " +"ਹੈ। ਇਹ ਲਾਜ਼ਮੀ ਨਹੀਂ ਕਿ ਫੰਕਸ਼ਨ ਦੀ ਪਰਿਭਾਸ਼ਾ ਪਾਠਕ ਰੂਪ ਵਿੱਚ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਦੇ ਅੰਦਰ ਹੀ ਹੋਵੇ; " +"ਕਲਾਸ ਦੇ ਅੰਦਰ ਕਿਸੇ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟ ਨੂੰ ਸਥਾਨਕ ਵੇਰੀਏਬਲ ਨਾਲ ਜੋੜਨਾ ਵੀ ਠੀਕ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" "# Function defined outside the class\n" @@ -667,6 +1003,17 @@ msgid "" "\n" " h = g" msgstr "" +"# Function defined outside the class\n" +"def f1(self, x, y):\n" +" return min(x, x+y)\n" +"\n" +"class C:\n" +" f = f1\n" +"\n" +" def g(self):\n" +" return 'hello world'\n" +"\n" +" h = g" msgid "" "Now ``f``, ``g`` and ``h`` are all attributes of class :class:`!C` that " @@ -674,11 +1021,15 @@ msgid "" "instances of :class:`!C` --- ``h`` being exactly equivalent to ``g``. Note " "that this practice usually only serves to confuse the reader of a program." msgstr "" +"ਹੁਣ ``f``, ``g`` ਅਤੇ ``h`` ਸਾਰੇ :class:`!C` ਕਲਾਸ ਦੇ ਐਟ੍ਰਿਬਿਊਟ ਹਨ ਜੋ ਫੰਕਸ਼ਨ ਆਬਜੈਕਟਾਂ ਵੱਲ " +"ਸੰਕੇਤ ਕਰਦੇ ਹਨ, ਅਤੇ ਇਸ ਲਈ ਇਹ ਸਾਰੇ :class:`!C` ਦੇ ਇੰਸਟੈਂਸਾਂ ਲਈ ਮੈਥਡ ਹਨ। ``h`` ਬਿਲਕੁਲ ``g`` " +"ਦੇ ਬਰਾਬਰ ਹੈ। ਧਿਆਨ ਰਹੇ ਕਿ ਇਹ ਤਰੀਕਾ ਆਮ ਤੌਰ 'ਤੇ ਪ੍ਰੋਗਰਾਮ ਪੜ੍ਹਨ ਵਾਲੇ ਨੂੰ ਉਲਝਾਉਂਦਾ ਹੈ।" msgid "" "Methods may call other methods by using method attributes of the ``self`` " "argument::" msgstr "" +"ਮੈਥਡ ``self`` ਆਰਗੂਮੈਂਟ ਦੇ ਮੈਥਡ ਐਟ੍ਰਿਬਿਊਟਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹੋਰ ਮੈਥਡਾਂ ਨੂੰ ਕਾਲ ਕਰ ਸਕਦੇ ਹਨ::" msgid "" "class Bag:\n" @@ -692,6 +1043,16 @@ msgid "" " self.add(x)\n" " self.add(x)" msgstr "" +"class Bag:\n" +" def __init__(self):\n" +" self.data = []\n" +"\n" +" def add(self, x):\n" +" self.data.append(x)\n" +"\n" +" def addtwice(self, x):\n" +" self.add(x)\n" +" self.add(x)" msgid "" "Methods may reference global names in the same way as ordinary functions. " @@ -704,20 +1065,31 @@ msgid "" "itself defined in this global scope, and in the next section we'll find some " "good reasons why a method would want to reference its own class." msgstr "" +"ਮੈਥਡ ਆਮ ਫੰਕਸ਼ਨਾਂ ਵਾਂਗ ਹੀ ਗਲੋਬਲ ਨਾਂਵਾਂ ਦਾ ਹਵਾਲਾ ਦੇ ਸਕਦੇ ਹਨ। ਕਿਸੇ ਮੈਥਡ ਨਾਲ ਸੰਬੰਧਿਤ ਗਲੋਬਲ ਸਕੋਪ " +"ਉਹ ਮੌਡਿਊਲ ਹੁੰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਉਸਦੀ ਪਰਿਭਾਸ਼ਾ ਕੀਤੀ ਗਈ ਹੋਵੇ। (ਕਲਾਸ ਨੂੰ ਕਦੇ ਵੀ ਗਲੋਬਲ ਸਕੋਪ ਵਜੋਂ " +"ਨਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ।) ਹਾਲਾਂਕਿ ਮੈਥਡਾਂ ਵਿੱਚ ਗਲੋਬਲ ਡਾਟਾ ਵਰਤਣ ਦੀ ਲੋੜ ਕਦੇ-ਕਦੇ ਹੀ ਪੈਂਦੀ ਹੈ, ਪਰ " +"ਗਲੋਬਲ ਸਕੋਪ ਦੇ ਕਈ ਵੈਧ ਉਪਯੋਗ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਗਲੋਬਲ ਸਕੋਪ ਵਿੱਚ ਇੰਪੋਰਟ ਕੀਤੇ ਫੰਕਸ਼ਨ ਅਤੇ ਮੌਡਿਊਲ " +"ਮੈਥਡਾਂ ਦੁਆਰਾ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਉਸੇ ਸਕੋਪ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਫੰਕਸ਼ਨ ਅਤੇ ਕਲਾਸਾਂ। ਆਮ ਤੌਰ 'ਤੇ, " +"ਮੈਥਡ ਵਾਲੀ ਕਲਾਸ ਵੀ ਇਸੇ ਗਲੋਬਲ ਸਕੋਪ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦੀ ਹੈ ਅਤੇ ਅਗਲੇ ਭਾਗ ਵਿੱਚ ਅਸੀਂ ਦੇਖਾਂਗੇ ਕਿ " +"ਮੈਥਡ ਆਪਣੀ ਹੀ ਕਲਾਸ ਦਾ ਹਵਾਲਾ ਕਿਉਂ ਦੇਣਾ ਚਾਹੁੰਦਾ ਹੈ।" msgid "" "Each value is an object, and therefore has a *class* (also called its " "*type*). It is stored as ``object.__class__``." msgstr "" +"ਹਰ ਮੁੱਲ ਇੱਕ ਆਬਜੈਕਟ ਹੁੰਦਾ ਹੈ ਅਤੇ ਇਸ ਲਈ ਉਸਦੀ ਇੱਕ *ਕਲਾਸ* (ਜਿਸਨੂੰ ਉਸਦੀ *ਟਾਈਪ* ਵੀ ਕਿਹਾ ਜਾਂਦਾ " +"ਹੈ) ਹੁੰਦੀ ਹੈ। ਇਹ ਜਾਣਕਾਰੀ ``object.__class__`` ਵਿੱਚ ਸਟੋਰ ਹੁੰਦੀ ਹੈ।" msgid "Inheritance" -msgstr "" +msgstr "ਇਨਹੈਰਿਟੈਂਸ" msgid "" "Of course, a language feature would not be worthy of the name \"class\" " "without supporting inheritance. The syntax for a derived class definition " "looks like this::" msgstr "" +"ਬੇਸ਼ੱਕ, ਜੇਕਰ ਕੋਈ ਭਾਸ਼ਾਈ ਵਿਸ਼ੇਸ਼ਤਾ ਵਿਰਾਸਤ ਦਾ ਸਮਰਥਨ ਨਾ ਕਰੇ ਤਾਂ ਉਸਨੂੰ \"ਕਲਾਸ\" ਕਹਿਣਾ ਉਚਿਤ " +"ਨਹੀਂ ਹੋਵੇਗਾ। ਇੱਕ ਡਿਰਾਈਵਡ ਕਲਾਸ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦਾ ਸਿੰਟੈਕਸ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ::" msgid "" "class DerivedClassName(BaseClassName):\n" @@ -727,6 +1099,12 @@ msgid "" " .\n" " " msgstr "" +"class DerivedClassName(BaseClassName):\n" +" \n" +" .\n" +" .\n" +" .\n" +" " msgid "" "The name :class:`!BaseClassName` must be defined in a namespace accessible " @@ -734,9 +1112,13 @@ msgid "" "class name, other arbitrary expressions are also allowed. This can be " "useful, for example, when the base class is defined in another module::" msgstr "" +":class:`!BaseClassName` ਨਾਮ ਉਸ ਨੇਮਸਪੇਸ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਡਿਰਾਈਵਡ " +"ਕਲਾਸ ਦੀ ਪਰਿਭਾਸ਼ਾ ਵਾਲੇ ਸਕੋਪ ਤੋਂ ਪਹੁੰਚਯੋਗ ਹੋਵੇ। ਬੇਸ ਕਲਾਸ ਦੇ ਨਾਮ ਦੀ ਥਾਂ ਹੋਰ ਮਨਚਾਹੇ ਐਕਸਪ੍ਰੈਸ਼ਨ ਵੀ " +"ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਇਹ ਉਦਾਹਰਨ ਵਜੋਂ ਉਸ ਵੇਲੇ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਬੇਸ ਕਲਾਸ ਕਿਸੇ ਹੋਰ ਮੌਡਿਊਲ ਵਿੱਚ " +"ਪਰਿਭਾਸ਼ਿਤ ਹੋਵੇ::" msgid "class DerivedClassName(modname.BaseClassName):" -msgstr "" +msgstr "class DerivedClassName(modname.BaseClassName):" msgid "" "Execution of a derived class definition proceeds the same as for a base " @@ -746,6 +1128,11 @@ msgid "" "rule is applied recursively if the base class itself is derived from some " "other class." msgstr "" +"ਡਿਰਾਈਵਡ ਕਲਾਸ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦਾ ਐਗਜ਼ਿਕਿਊਸ਼ਨ ਬੇਸ ਕਲਾਸ ਵਾਂਗ ਹੀ ਹੁੰਦਾ ਹੈ। ਜਦੋਂ ਕਲਾਸ ਆਬਜੈਕਟ " +"ਬਣਾਈ ਜਾਂਦੀ ਹੈ ਤਾਂ ਬੇਸ ਕਲਾਸ ਨੂੰ ਯਾਦ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਐਟ੍ਰਿਬਿਊਟ ਹਵਾਲਿਆਂ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ " +"ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਜੇਕਰ ਲੋੜੀਂਦਾ ਐਟ੍ਰਿਬਿਊਟ ਕਲਾਸ ਵਿੱਚ ਨਾ ਮਿਲੇ ਤਾਂ ਖੋਜ ਬੇਸ ਕਲਾਸ ਵਿੱਚ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਜੇਕਰ ਬੇਸ ਕਲਾਸ ਖੁਦ ਕਿਸੇ ਹੋਰ ਕਲਾਸ ਤੋਂ ਡਿਰਾਈਵ ਕੀਤੀ ਗਈ ਹੋਵੇ ਤਾਂ ਇਹ ਨਿਯਮ ਰਿਕਰਸਿਵ ਤਰੀਕੇ " +"ਨਾਲ ਲਾਗੂ ਹੁੰਦਾ ਹੈ।" msgid "" "There's nothing special about instantiation of derived classes: " @@ -754,6 +1141,10 @@ msgid "" "searched, descending down the chain of base classes if necessary, and the " "method reference is valid if this yields a function object." msgstr "" +"ਡਿਰਾਈਵਡ ਕਲਾਸਾਂ ਦੀ ਇੰਸਟੈਂਸ਼ੀਏਸ਼ਨ ਵਿੱਚ ਕੁਝ ਖਾਸ ਨਹੀਂ ਹੁੰਦਾ। ``DerivedClassName()`` ਕਲਾਸ ਦਾ " +"ਨਵਾਂ ਇੰਸਟੈਂਸ ਬਣਾਉਂਦਾ ਹੈ। ਵਿਧੀ ਹਵਾਲਿਆਂ ਦਾ ਹੱਲ ਇਸ ਤਰ੍ਹਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਸੰਬੰਧਿਤ ਕਲਾਸ " +"ਐਟ੍ਰਿਬਿਊਟ ਨੂੰ ਲੱਭਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਲੋੜ ਪੈਣ 'ਤੇ ਬੇਸ ਕਲਾਸਾਂ ਦੀ ਲੜੀ ਵਿੱਚ ਹੇਠਾਂ ਤੱਕ ਖੋਜ ਕੀਤੀ ਜਾਂਦੀ " +"ਹੈ। ਜੇਕਰ ਇਸ ਖੋਜ ਦਾ ਨਤੀਜਾ ਇੱਕ ਫੰਕਸ਼ਨ ਵਸਤੂ ਹੋਵੇ ਤਾਂ ਵਿਧੀ ਹਵਾਲਾ ਵੈਧ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "Derived classes may override methods of their base classes. Because methods " @@ -762,24 +1153,37 @@ msgid "" "class may end up calling a method of a derived class that overrides it. " "(For C++ programmers: all methods in Python are effectively ``virtual``.)" msgstr "" +"Derived classes ਆਪਣੀਆਂ base classes ਦੀਆਂ methods ਨੂੰ override ਕਰ ਸਕਦੀਆਂ ਹਨ। ਕਿਉਂਕਿ " +"ਇੱਕੋ object ਦੀਆਂ ਹੋਰ methods ਨੂੰ call ਕਰਦੇ ਸਮੇਂ methods ਨੂੰ ਕੋਈ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਪ੍ਰਾਪਤ ਨਹੀਂ " +"ਹੁੰਦੇ, ਇਸ ਲਈ base class ਦੀ ਕੋਈ method ਜੋ ਉਸੇ base class ਦੀ ਦੂਜੀ method ਨੂੰ call ਕਰਦੀ " +"ਹੈ, ਆਖਿਰਕਾਰ derived class ਦੀ override ਕੀਤੀ method ਨੂੰ call ਕਰ ਸਕਦੀ ਹੈ। (C++ " +"programmers ਲਈ: Python ਵਿੱਚ ਸਾਰੀਆਂ methods ਅਸਲ ਵਿੱਚ ``virtual`` ਹੁੰਦੀਆਂ ਹਨ।)" msgid "" "An overriding method in a derived class may in fact want to extend rather " "than simply replace the base class method of the same name. There is a " -"simple way to call the base class method directly: just call ``BaseClassName." -"methodname(self, arguments)``. This is occasionally useful to clients as " -"well. (Note that this only works if the base class is accessible as " -"``BaseClassName`` in the global scope.)" +"simple way to call the base class method directly: just call " +"``BaseClassName.methodname(self, arguments)``. This is occasionally useful " +"to clients as well. (Note that this only works if the base class is " +"accessible as ``BaseClassName`` in the global scope.)" msgstr "" +"Derived class ਵਿੱਚ overriding method ਕਈ ਵਾਰ base class ਦੀ method ਨੂੰ ਸਿਰਫ਼ ਬਦਲਣ " +"ਦੀ ਬਜਾਏ ਉਸਦਾ ਵਿਸਥਾਰ ਕਰਨਾ ਚਾਹੁੰਦੀ ਹੈ। Base class ਦੀ method ਨੂੰ ਸਿੱਧਾ call ਕਰਨ ਦਾ ਇੱਕ " +"ਆਸਾਨ ਤਰੀਕਾ ਹੈ: ``BaseClassName.methodname(self, arguments)``। ਇਹ ਕਈ ਵਾਰ " +"clients ਲਈ ਵੀ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ। (ਧਿਆਨ ਰਹੇ ਕਿ ਇਹ ਤਦ ਹੀ ਕੰਮ ਕਰੇਗਾ ਜੇਕਰ base class " +"global scope ਵਿੱਚ ``BaseClassName`` ਵਜੋਂ ਪਹੁੰਚਯੋਗ ਹੋਵੇ।)" msgid "Python has two built-in functions that work with inheritance:" -msgstr "" +msgstr "Python ਵਿੱਚ ਦੋ ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ ਹਨ ਜੋ inheritance ਨਾਲ ਕੰਮ ਕਰਦੇ ਹਨ:" msgid "" "Use :func:`isinstance` to check an instance's type: ``isinstance(obj, int)`` " "will be ``True`` only if ``obj.__class__`` is :class:`int` or some class " "derived from :class:`int`." msgstr "" +"ਇੰਸਟੈਂਸ ਦੀ ਕਿਸਮ ਜਾਂਚਣ ਲਈ :func:`isinstance` ਵਰਤੋ। ``isinstance(obj, int)`` ਤਦ ਹੀ " +"``True`` ਹੋਵੇਗਾ ਜੇਕਰ ``obj.__class__`` :class:`int` ਹੋਵੇ ਜਾਂ :class:`int` ਤੋਂ ਡਿਰਾਈਵ " +"ਕੀਤੀ ਕੋਈ ਕਲਾਸ ਹੋਵੇ।" msgid "" "Use :func:`issubclass` to check class inheritance: ``issubclass(bool, int)`` " @@ -787,14 +1191,20 @@ msgid "" "``issubclass(float, int)`` is ``False`` since :class:`float` is not a " "subclass of :class:`int`." msgstr "" +"ਕਲਾਸ ਵਿਰਾਸਤ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ :func:`issubclass` ਵਰਤੋ। ``issubclass(bool, int)`` " +"ਦਾ ਨਤੀਜਾ ``True`` ਹੈ ਕਿਉਂਕਿ :class:`bool`, :class:`int` ਦੀ ਸਬਕਲਾਸ ਹੈ। ਹਾਲਾਂਕਿ " +"``issubclass(float, int)`` ਦਾ ਨਤੀਜਾ ``False`` ਹੈ " +"ਕਿਉਂਕਿ :class:`float`, :class:`int` ਦੀ ਸਬਕਲਾਸ ਨਹੀਂ ਹੈ।" msgid "Multiple Inheritance" -msgstr "" +msgstr "ਮਲਟੀਪਲ ਇਨਹੈਰਿਟੈਂਸ" msgid "" "Python supports a form of multiple inheritance as well. A class definition " "with multiple base classes looks like this::" msgstr "" +"Python ਮਲਟੀਪਲ ਇਨਹੈਰਿਟੈਂਸ ਦਾ ਸਮਰਥਨ ਵੀ ਕਰਦਾ ਹੈ। ਕਈ ਬੇਸ ਕਲਾਸਾਂ ਵਾਲੀ ਕਲਾਸ ਪਰਿਭਾਸ਼ਾ ਇਸ " +"ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ::" msgid "" "class DerivedClassName(Base1, Base2, Base3):\n" @@ -804,6 +1214,12 @@ msgid "" " .\n" " " msgstr "" +"class DerivedClassName(Base1, Base2, Base3):\n" +" \n" +" .\n" +" .\n" +" .\n" +" " msgid "" "For most purposes, in the simplest cases, you can think of the search for " @@ -814,6 +1230,13 @@ msgid "" "classes of :class:`!Base1`, and if it was not found there, it was searched " "for in :class:`!Base2`, and so on." msgstr "" +"ਜ਼ਿਆਦਾਤਰ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਸਧਾਰਣ ਤਰੀਕੇ ਨਾਲ ਤੁਸੀਂ ਬੇਸ ਕਲਾਸਾਂ ਤੋਂ ਵਿਰਾਸਤ ਵਿੱਚ ਮਿਲੇ ਐਟ੍ਰਿਬਿਊਟਾਂ " +"ਦੀ ਖੋਜ ਨੂੰ depth-first ਅਤੇ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਵੱਲ ਹੋਣ ਵਾਲੀ ਖੋਜ ਵਜੋਂ ਸਮਝ ਸਕਦੇ ਹੋ, ਜਿਸ ਵਿੱਚ ਇੱਕੋ ਕਲਾਸ ਨੂੰ " +"ਦੋ ਵਾਰ ਨਹੀਂ ਖੰਗਾਲਿਆ ਜਾਂਦਾ ਜੇਕਰ ਇਨਹੈਰਿਟੈਂਸ ਲੜੀ ਵਿੱਚ ਓਵਰਲੈਪ ਹੋਵੇ। ਇਸ ਲਈ ਜੇਕਰ ਕੋਈ " +"ਐਟ੍ਰਿਬਿਊਟ :class:`!DerivedClassName` ਵਿੱਚ ਨਾ ਮਿਲੇ, ਤਾਂ ਉਸਦੀ ਖੋਜ :class:`!Base1` " +"ਵਿੱਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਫਿਰ (ਰਿਕਰਸਿਵ ਤਰੀਕੇ ਨਾਲ) :class:`!Base1` ਦੀਆਂ ਬੇਸ ਕਲਾਸਾਂ ਵਿੱਚ, ਅਤੇ " +"ਜੇ ਉੱਥੇ ਵੀ ਨਾ ਮਿਲੇ ਤਾਂ :class:`!Base2` ਵਿੱਚ ਖੋਜ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਇਹ ਪ੍ਰਕਿਰਿਆ ਅੱਗੇ ਵੀ " +"ਜਾਰੀ ਰਹਿੰਦੀ ਹੈ।" msgid "" "In fact, it is slightly more complex than that; the method resolution order " @@ -822,6 +1245,10 @@ msgid "" "method and is more powerful than the super call found in single-inheritance " "languages." msgstr "" +"ਅਸਲ ਵਿੱਚ ਇਹ ਇਸ ਤੋਂ ਕੁਝ ਵੱਧ ਜਟਿਲ ਹੈ। :func:`super` ਨੂੰ ਸਹਿਯੋਗੀ ਕਾਲਾਂ ਦਾ ਸਮਰਥਨ ਦੇਣ ਲਈ " +"method resolution order ਗਤੀਸ਼ੀਲ ਤਰੀਕੇ ਨਾਲ ਬਦਲਦਾ ਹੈ। ਕੁਝ ਹੋਰ multiple inheritance " +"ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਇਸ ਪਹੁੰਚ ਨੂੰ call-next-method ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ single inheritance " +"ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਮਿਲਣ ਵਾਲੀ super ਕਾਲ ਨਾਲੋਂ ਵੱਧ ਸ਼ਕਤੀਸ਼ਾਲੀ ਹੈ।" msgid "" "Dynamic ordering is necessary because all cases of multiple inheritance " @@ -837,14 +1264,26 @@ msgid "" "properties make it possible to design reliable and extensible classes with " "multiple inheritance. For more detail, see :ref:`python_2.3_mro`." msgstr "" +"ਗਤੀਸ਼ੀਲ ਕ੍ਰਮਬੱਧਤਾ ਲਾਜ਼ਮੀ ਹੈ ਕਿਉਂਕਿ multiple inheritance ਦੇ ਸਾਰੇ ਮਾਮਲਿਆਂ ਵਿੱਚ ਇੱਕ ਜਾਂ ਵੱਧ " +"diamond ਸੰਬੰਧ ਹੁੰਦੇ ਹਨ (ਜਿੱਥੇ ਘੱਟੋ-ਘੱਟ ਇੱਕ parent class ਤੱਕ ਸਭ ਤੋਂ ਹੇਠਲੀ ਕਲਾਸ ਤੋਂ ਕਈ ਰਸਤਿਆਂ " +"ਰਾਹੀਂ ਪਹੁੰਚਿਆ ਜਾ ਸਕਦਾ ਹੈ)। ਉਦਾਹਰਨ ਲਈ, ਸਾਰੀਆਂ ਕਲਾਸਾਂ :class:`object` ਤੋਂ ਵਿਰਾਸਤ ਲੈਂਦੀਆਂ " +"ਹਨ, ਇਸ ਲਈ multiple inheritance ਵਿੱਚ :class:`object` ਤੱਕ ਪਹੁੰਚਣ ਲਈ ਇੱਕ ਤੋਂ ਵੱਧ ਰਸਤੇ ਹੁੰਦੇ " +"ਹਨ। ਬੇਸ ਕਲਾਸਾਂ ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਵਾਰ ਐਕਸੈੱਸ ਕਰਨ ਤੋਂ ਬਚਾਉਣ ਲਈ, ਗਤੀਸ਼ੀਲ ਐਲਗੋਰਿਦਮ ਖੋਜ ਕ੍ਰਮ ਨੂੰ ਇਸ " +"ਤਰੀਕੇ ਨਾਲ ਰੇਖੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ ਕਿ ਹਰ ਕਲਾਸ ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਕ੍ਰਮ ਕਾਇਮ ਰਹੇ, ਹਰ " +"parent ਨੂੰ ਸਿਰਫ਼ ਇੱਕ ਵਾਰ ਕਾਲ ਕੀਤਾ ਜਾਵੇ, ਅਤੇ ਕ੍ਰਮ monotonic ਰਹੇ (ਅਰਥਾਤ ਕੋਈ ਕਲਾਸ ਆਪਣੇ " +"parent ਦੀ ਪ੍ਰਾਥਮਿਕਤਾ ਕ੍ਰਮ ਨੂੰ ਬਦਲੇ ਬਿਨਾਂ subclass ਬਣ ਸਕੇ)। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਮਿਲ ਕੇ ਭਰੋਸੇਯੋਗ " +"ਅਤੇ ਵਿਸਤਾਰਯੋਗ multiple inheritance ਕਲਾਸਾਂ ਬਣਾਉਣ ਨੂੰ ਸੰਭਵ ਬਣਾਉਂਦੀਆਂ ਹਨ। ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`python_2.3_mro` ਵੇਖੋ।" msgid "" "In some cases multiple inheritance is not allowed; see :ref:`multiple-" "inheritance` for details." msgstr "" +"ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ multiple inheritance ਦੀ ਆਗਿਆ ਨਹੀਂ ਹੁੰਦੀ। ਵੇਰਵਿਆਂ ਲਈ :ref:`multiple-" +"inheritance` ਵੇਖੋ।" msgid "Private Variables" -msgstr "" +msgstr "ਪ੍ਰਾਈਵੇਟ ਵੇਰੀਏਬਲ" msgid "" "\"Private\" instance variables that cannot be accessed except from inside an " @@ -854,6 +1293,11 @@ msgid "" "a function, a method or a data member). It should be considered an " "implementation detail and subject to change without notice." msgstr "" +"Python ਵਿੱਚ ਐਸੇ \"private\" ਇੰਸਟੈਂਸ ਵੇਰੀਏਬਲ ਮੌਜੂਦ ਨਹੀਂ ਹਨ ਜਿਨ੍ਹਾਂ ਤੱਕ ਸਿਰਫ਼ ਆਬਜੈਕਟ ਦੇ ਅੰਦਰੋਂ " +"ਹੀ ਪਹੁੰਚ ਕੀਤੀ ਜਾ ਸਕੇ। ਹਾਲਾਂਕਿ ਇੱਕ ਰਿਵਾਜ ਹੈ ਜਿਸਦੀ ਪਾਲਣਾ ਜ਼ਿਆਦਾਤਰ Python ਕੋਡ ਕਰਦਾ ਹੈ: " +"ਅੰਡਰਸਕੋਰ ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਨਾਮ (ਜਿਵੇਂ ``_spam``) ਨੂੰ API ਦਾ ਗੈਰ-ਜਨਤਕ ਹਿੱਸਾ ਮੰਨਿਆ ਜਾਣਾ " +"ਚਾਹੀਦਾ ਹੈ (ਭਾਵੇਂ ਉਹ ਫੰਕਸ਼ਨ, ਮੈਥਡ ਜਾਂ ਡਾਟਾ ਮੈਂਬਰ ਹੋਵੇ)। ਇਸਨੂੰ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਦੀ ਅੰਦਰੂਨੀ ਜਾਣਕਾਰੀ " +"ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਇਹ ਬਿਨਾਂ ਸੂਚਨਾ ਦੇ ਬਦਲ ਸਕਦੀ ਹੈ।" msgid "" "Since there is a valid use-case for class-private members (namely to avoid " @@ -865,16 +1309,27 @@ msgid "" "stripped. This mangling is done without regard to the syntactic position of " "the identifier, as long as it occurs within the definition of a class." msgstr "" +"ਕਿਉਂਕਿ ਕਲਾਸ-ਪ੍ਰਾਈਵੇਟ ਮੈਂਬਰਾਂ ਲਈ ਇੱਕ ਵੈਧ ਉਪਯੋਗ-ਕੇਸ ਹੈ (ਖਾਸ ਕਰਕੇ ਸਬ-ਕਲਾਸਾਂ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ " +"ਨਾਵਾਂ ਨਾਲ ਨਾਮਾਂ ਦੇ ਟਕਰਾਅ ਤੋਂ ਬਚਣ ਲਈ), ਇਸ ਤਰ੍ਹਾਂ ਦੇ ਮਕੈਨਿਜ਼ਮ ਲਈ ਸੀਮਤ ਸਹਾਇਤਾ ਹੈ, " +"ਜਿਸਨੂੰ :dfn:`name mangling` ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ``__spam`` (ਘੱਟੋ-ਘੱਟ ਦੋ ਅੱਗੇਲੇ ਅੰਡਰਸਕੋਰ, ਵੱਧ ਤੋਂ " +"ਵੱਧ ਇੱਕ ਪਿੱਛਲਾ ਅੰਡਰਸਕੋਰ) ਨੂੰ ਟੈਕਸਟੂਅਲ ਤੌਰ 'ਤੇ ``_classname__spam`` ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, " +"ਜਿੱਥੇ ``classname`` ਉਹ ਮੌਜੂਦਾ ਕਲਾਸ ਦਾ ਨਾਮ ਹੈ ਜਿਸ ਤੋਂ ਅੱਗੇਲੇ ਅੰਡਰਸਕੋਰ(ਆਂ) ਹਟਾ ਦਿੱਤੇ ਗਏ ਹਨ। " +"ਇਹ ਮੈਂਗਲਿੰਗ ਆਈਡੈਂਟਿਫਾਇਰ ਦੀ ਵਾਕ-ਰਚਨਾਤਮਕ ਸਥਿਤੀ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਦ ਤੱਕ " +"ਇਹ ਕਿਸੇ ਕਲਾਸ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦੇ ਅੰਦਰ ਆਉਂਦਾ ਹੈ।" msgid "" "The :ref:`private name mangling specifications ` for " "details and special cases." msgstr "" +"ਵੇਰਵਿਆਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ ਮਾਮਲਿਆਂ ਲਈ :ref:`private name mangling specifications ` ਵੇਖੋ।" msgid "" "Name mangling is helpful for letting subclasses override methods without " "breaking intraclass method calls. For example::" msgstr "" +"ਨੇਮ ਮੈਂਗਲਿੰਗ ਸਬਕਲਾਸਾਂ ਨੂੰ ਮੈਥਡ ਓਵਰਰਾਈਡ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ ਬਿਨਾਂ ਕਲਾਸ ਦੇ ਅੰਦਰਲੇ ਮੈਥਡ ਕਾਲਾਂ " +"ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕੀਤੇ। ਉਦਾਹਰਨ ਲਈ::" msgid "" "class Mapping:\n" @@ -896,6 +1351,24 @@ msgid "" " for item in zip(keys, values):\n" " self.items_list.append(item)" msgstr "" +"class Mapping:\n" +" def __init__(self, iterable):\n" +" self.items_list = []\n" +" self.__update(iterable)\n" +"\n" +" def update(self, iterable):\n" +" for item in iterable:\n" +" self.items_list.append(item)\n" +"\n" +" __update = update # private copy of original update() method\n" +"\n" +"class MappingSubclass(Mapping):\n" +"\n" +" def update(self, keys, values):\n" +" # provides new signature for update()\n" +" # but does not break __init__()\n" +" for item in zip(keys, values):\n" +" self.items_list.append(item)" msgid "" "The above example would work even if ``MappingSubclass`` were to introduce a " @@ -903,6 +1376,9 @@ msgid "" "the ``Mapping`` class and ``_MappingSubclass__update`` in the " "``MappingSubclass`` class respectively." msgstr "" +"ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਤਦ ਵੀ ਕੰਮ ਕਰੇਗੀ ਜੇ ``MappingSubclass`` ਆਪਣਾ ``__update`` ਪਛਾਣਕਰਤਾ " +"ਪਰਿਭਾਸ਼ਿਤ ਕਰੇ, ਕਿਉਂਕਿ ``Mapping`` ਕਲਾਸ ਵਿੱਚ ਇਹ ``_Mapping__update`` ਅਤੇ " +"``MappingSubclass`` ਕਲਾਸ ਵਿੱਚ ``_MappingSubclass__update`` ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "Note that the mangling rules are designed mostly to avoid accidents; it " @@ -910,6 +1386,9 @@ msgid "" "private. This can even be useful in special circumstances, such as in the " "debugger." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਮੈਂਗਲਿੰਗ ਦੇ ਨਿਯਮ ਮੁੱਖ ਤੌਰ 'ਤੇ ਅਣਚਾਹੀਆਂ ਟਕਰਾਵਾਂ ਤੋਂ ਬਚਣ ਲਈ ਬਣਾਏ ਗਏ ਹਨ; ਫਿਰ ਵੀ " +"ਕਿਸੇ ਐਸੇ ਵੇਰੀਏਬਲ ਤੱਕ ਪਹੁੰਚਣਾ ਜਾਂ ਉਸਨੂੰ ਸੋਧਣਾ ਸੰਭਵ ਹੈ ਜਿਸਨੂੰ ਪ੍ਰਾਈਵੇਟ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਕੁਝ ਵਿਸ਼ੇਸ਼ " +"ਸਥਿਤੀਆਂ ਵਿੱਚ, ਜਿਵੇਂ ਡੀਬੱਗਰ ਵਿੱਚ, ਲਾਭਦਾਇਕ ਵੀ ਹੋ ਸਕਦਾ ਹੈ।" msgid "" "Notice that code passed to ``exec()`` or ``eval()`` does not consider the " @@ -919,15 +1398,23 @@ msgid "" "applies to ``getattr()``, ``setattr()`` and ``delattr()``, as well as when " "referencing ``__dict__`` directly." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ``exec()`` ਜਾਂ ``eval()`` ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਕੋਡ ਕਾਲ ਕਰਨ ਵਾਲੀ ਕਲਾਸ ਦੇ ਨਾਮ ਨੂੰ " +"ਮੌਜੂਦਾ ਕਲਾਸ ਨਹੀਂ ਮੰਨਦਾ। ਇਹ ``global`` ਸਟੇਟਮੈਂਟ ਦੇ ਪ੍ਰਭਾਵ ਵਾਂਗ ਹੈ, ਜਿਸਦਾ ਪ੍ਰਭਾਵ ਵੀ ਸਿਰਫ਼ " +"ਉਸ ਕੋਡ ਤੱਕ ਸੀਮਿਤ ਹੁੰਦਾ ਹੈ ਜੋ ਇਕੱਠੇ byte-compile ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਇਹੀ ਸੀਮਾ ``getattr()``, " +"``setattr()`` ਅਤੇ ``delattr()`` 'ਤੇ ਵੀ ਲਾਗੂ ਹੁੰਦੀ ਹੈ, ਅਤੇ ``__dict__`` ਨੂੰ ਸਿੱਧਾ ਹਵਾਲਾ " +"ਦੇਣ ਸਮੇਂ ਵੀ।" msgid "Odds and Ends" -msgstr "" +msgstr "ਕੁਝ ਹੋਰ ਲਾਭਦਾਇਕ ਜਾਣਕਾਰੀਆਂ" msgid "" "Sometimes it is useful to have a data type similar to the Pascal \"record\" " "or C \"struct\", bundling together a few named data items. The idiomatic " "approach is to use :mod:`dataclasses` for this purpose::" msgstr "" +"ਕਈ ਵਾਰ Pascal ਦੇ \"record\" ਜਾਂ C ਦੇ \"struct\" ਵਰਗੀ ਡਾਟਾ ਟਾਈਪ ਲਾਭਦਾਇਕ ਹੁੰਦੀ ਹੈ, ਜੋ " +"ਕੁਝ ਨਾਮਿਤ ਡਾਟਾ ਆਈਟਮਾਂ ਨੂੰ ਇਕੱਠਾ ਰੱਖਦੀ ਹੈ। ਇਸ ਉਦੇਸ਼ ਲਈ Python ਵਿੱਚ ਆਮ " +"ਤਰੀਕਾ :mod:`dataclasses` ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਹੈ::" msgid "" "from dataclasses import dataclass\n" @@ -938,6 +1425,13 @@ msgid "" " dept: str\n" " salary: int" msgstr "" +"from dataclasses import dataclass\n" +"\n" +"@dataclass\n" +"class Employee:\n" +" name: str\n" +" dept: str\n" +" salary: int" msgid "" ">>> john = Employee('john', 'computer lab', 1000)\n" @@ -946,6 +1440,11 @@ msgid "" ">>> john.salary\n" "1000" msgstr "" +">>> john = Employee('john', 'computer lab', 1000)\n" +">>> john.dept\n" +"'computer lab'\n" +">>> john.salary\n" +"1000" msgid "" "A piece of Python code that expects a particular abstract data type can " @@ -955,21 +1454,32 @@ msgid "" "and :meth:`~io.TextIOBase.readline` that get the data from a string buffer " "instead, and pass it as an argument." msgstr "" +"Python ਕੋਡ ਦਾ ਕੋਈ ਹਿੱਸਾ ਜੋ ਕਿਸੇ ਖਾਸ abstract data type ਦੀ ਉਮੀਦ ਕਰਦਾ ਹੈ, ਉਸਨੂੰ ਅਕਸਰ " +"ਐਸੀ ਕਲਾਸ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜੋ ਉਸ ਡਾਟਾ ਟਾਈਪ ਦੀਆਂ ਮੈਥਡਾਂ ਦੀ ਨਕਲ ਕਰਦੀ ਹੋਵੇ। ਉਦਾਹਰਨ ਲਈ, ਜੇ " +"ਤੁਹਾਡੇ ਕੋਲ ਕੋਈ ਫੰਕਸ਼ਨ ਹੈ ਜੋ file object ਤੋਂ ਡਾਟਾ ਫਾਰਮੈਟ ਕਰਦਾ ਹੈ, ਤਾਂ " +"ਤੁਸੀਂ :meth:`~io.TextIOBase.read` ਅਤੇ :meth:`~io.TextIOBase.readline` ਮੈਥਡਾਂ ਵਾਲੀ " +"ਕਲਾਸ ਬਣਾ ਸਕਦੇ ਹੋ ਜੋ ਡਾਟਾ ਸਟ੍ਰਿੰਗ ਬਫ਼ਰ ਤੋਂ ਪ੍ਰਾਪਤ ਕਰੇ ਅਤੇ ਉਸਨੂੰ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਭੇਜ ਸਕਦੇ ਹੋ।" msgid "" -":ref:`Instance method objects ` have attributes, too: :" -"attr:`m.__self__ ` is the instance object with the method :" -"meth:`!m`, and :attr:`m.__func__ ` is the :ref:`function " -"object ` corresponding to the method." +":ref:`Instance method objects ` have attributes, " +"too: :attr:`m.__self__ ` is the instance object with the " +"method :meth:`!m`, and :attr:`m.__func__ ` is " +"the :ref:`function object ` corresponding to the method." msgstr "" +":ref:`Instance method objects ` ਦੇ ਆਪਣੇ ਐਟ੍ਰਿਬਿਊਟ ਵੀ ਹੁੰਦੇ " +"ਹਨ। :attr:`m.__self__ ` ਉਹ ਇੰਸਟੈਂਸ ਆਬਜੈਕਟ ਹੈ ਜਿਸ ਨਾਲ :meth:`!m` " +"ਮੈਥਡ ਸੰਬੰਧਿਤ ਹੈ, ਅਤੇ :attr:`m.__func__ ` ਉਸ ਮੈਥਡ ਨਾਲ " +"ਸੰਬੰਧਿਤ :ref:`function object ` ਹੈ।" msgid "Iterators" -msgstr "" +msgstr "ਇਟਰੇਟਰ" msgid "" "By now you have probably noticed that most container objects can be looped " "over using a :keyword:`for` statement::" msgstr "" +"ਹੁਣ ਤੱਕ ਤੁਸੀਂ ਸ਼ਾਇਦ ਧਿਆਨ ਦਿੱਤਾ ਹੋਵੇਗਾ ਕਿ ਜ਼ਿਆਦਾਤਰ ਕੰਟੇਨਰ ਆਬਜੈਕਟਾਂ ਉੱਤੇ :keyword:`for` ਸਟੇਟਮੈਂਟ " +"ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਲੂਪ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "for element in [1, 2, 3]:\n" @@ -983,18 +1493,37 @@ msgid "" "for line in open(\"myfile.txt\"):\n" " print(line, end='')" msgstr "" +"for element in [1, 2, 3]:\n" +" print(element)\n" +"for element in (1, 2, 3):\n" +" print(element)\n" +"for key in {'one':1, 'two':2}:\n" +" print(key)\n" +"for char in \"123\":\n" +" print(char)\n" +"for line in open(\"myfile.txt\"):\n" +" print(line, end='')" msgid "" "This style of access is clear, concise, and convenient. The use of " -"iterators pervades and unifies Python. Behind the scenes, the :keyword:" -"`for` statement calls :func:`iter` on the container object. The function " -"returns an iterator object that defines the method :meth:`~iterator." -"__next__` which accesses elements in the container one at a time. When " -"there are no more elements, :meth:`~iterator.__next__` raises a :exc:" -"`StopIteration` exception which tells the :keyword:`!for` loop to " -"terminate. You can call the :meth:`~iterator.__next__` method using the :" -"func:`next` built-in function; this example shows how it all works::" -msgstr "" +"iterators pervades and unifies Python. Behind the scenes, " +"the :keyword:`for` statement calls :func:`iter` on the container object. " +"The function returns an iterator object that defines the " +"method :meth:`~iterator.__next__` which accesses elements in the container " +"one at a time. When there are no more elements, :meth:`~iterator.__next__` " +"raises a :exc:`StopIteration` exception which tells the :keyword:`!for` loop " +"to terminate. You can call the :meth:`~iterator.__next__` method using " +"the :func:`next` built-in function; this example shows how it all works::" +msgstr "" +"ਪਹੁੰਚ ਦਾ ਇਹ ਤਰੀਕਾ ਸਪਸ਼ਟ, ਸੰਖੇਪ ਅਤੇ ਸੁਵਿਧਾਜਨਕ ਹੈ। ਇਟਰੇਟਰਾਂ ਦੀ ਵਰਤੋਂ Python ਵਿੱਚ ਹਰ ਥਾਂ " +"ਮਿਲਦੀ ਹੈ ਅਤੇ ਇਹ ਭਾਸ਼ਾ ਨੂੰ ਇੱਕਸਾਰ ਬਣਾਉਂਦੀ ਹੈ। ਅੰਦਰੂਨੀ ਤੌਰ 'ਤੇ :keyword:`for` ਸਟੇਟਮੈਂਟ ਕੰਟੇਨਰ " +"ਆਬਜੈਕਟ ਉੱਤੇ :func:`iter` ਨੂੰ ਕਾਲ ਕਰਦੀ ਹੈ। ਇਹ ਫੰਕਸ਼ਨ ਇੱਕ ਇਟਰੇਟਰ ਆਬਜੈਕਟ ਵਾਪਸ ਕਰਦਾ ਹੈ " +"ਜੋ :meth:`~iterator.__next__` ਮੈਥਡ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਇਹ ਮੈਥਡ ਕੰਟੇਨਰ ਦੇ ਐਲਿਮੈਂਟ ਇੱਕ-ਇੱਕ " +"ਕਰਕੇ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਹੋਰ ਐਲਿਮੈਂਟ ਨਹੀਂ ਰਹਿੰਦੇ, " +"ਤਾਂ :meth:`~iterator.__next__` :exc:`StopIteration` ਐਕਸੈਪਸ਼ਨ ਪੈਦਾ ਕਰਦਾ ਹੈ, " +"ਜੋ :keyword:`!for` ਲੂਪ ਨੂੰ ਸਮਾਪਤ ਕਰਨ ਲਈ ਕਹਿੰਦੀ ਹੈ। ਤੁਸੀਂ :meth:`~iterator.__next__` " +"ਮੈਥਡ ਨੂੰ :func:`next` ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ ਰਾਹੀਂ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ; ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਇਹ " +"ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ ਇਹ ਸਭ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ::" msgid "" ">>> s = 'abc'\n" @@ -1013,6 +1542,21 @@ msgid "" " next(it)\n" "StopIteration" msgstr "" +">>> s = 'abc'\n" +">>> it = iter(s)\n" +">>> it\n" +"\n" +">>> next(it)\n" +"'a'\n" +">>> next(it)\n" +"'b'\n" +">>> next(it)\n" +"'c'\n" +">>> next(it)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" next(it)\n" +"StopIteration" msgid "" "Having seen the mechanics behind the iterator protocol, it is easy to add " @@ -1021,6 +1565,11 @@ msgid "" "the class defines :meth:`!__next__`, then :meth:`!__iter__` can just return " "``self``::" msgstr "" +"Iterator protocol ਦੇ ਅੰਦਰੂਨੀ ਕਾਰਜ-ਤਰੀਕੇ ਨੂੰ ਸਮਝਣ ਤੋਂ ਬਾਅਦ, ਆਪਣੀਆਂ classes ਵਿੱਚ " +"iterator behavior ਜੋੜਨਾ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ। ਇੱਕ :meth:`~container.__iter__` method " +"ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ ਜੋ ਐਸਾ object ਵਾਪਸ ਕਰੇ ਜਿਸ ਵਿੱਚ :meth:`~iterator.__next__` method " +"ਹੋਵੇ। ਜੇ class ਖੁਦ :meth:`!__next__` ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ, ਤਾਂ :meth:`!__iter__` ਸਿਰਫ਼ " +"``self`` ਵਾਪਸ ਕਰ ਸਕਦੀ ਹੈ::" msgid "" "class Reverse:\n" @@ -1038,6 +1587,20 @@ msgid "" " self.index = self.index - 1\n" " return self.data[self.index]" msgstr "" +"class Reverse:\n" +" \"\"\"Iterator for looping over a sequence backwards.\"\"\"\n" +" def __init__(self, data):\n" +" self.data = data\n" +" self.index = len(data)\n" +"\n" +" def __iter__(self):\n" +" return self\n" +"\n" +" def __next__(self):\n" +" if self.index == 0:\n" +" raise StopIteration\n" +" self.index = self.index - 1\n" +" return self.data[self.index]" msgid "" ">>> rev = Reverse('spam')\n" @@ -1051,24 +1614,42 @@ msgid "" "p\n" "s" msgstr "" +">>> rev = Reverse('spam')\n" +">>> iter(rev)\n" +"<__main__.Reverse object at 0x00A1DB50>\n" +">>> for char in rev:\n" +"... print(char)\n" +"...\n" +"m\n" +"a\n" +"p\n" +"s" msgid "Generators" -msgstr "" +msgstr "ਜਨਰੇਟਰ" msgid "" ":term:`Generators ` are a simple and powerful tool for creating " -"iterators. They are written like regular functions but use the :keyword:" -"`yield` statement whenever they want to return data. Each time :func:`next` " -"is called on it, the generator resumes where it left off (it remembers all " -"the data values and which statement was last executed). An example shows " -"that generators can be trivially easy to create::" +"iterators. They are written like regular functions but use " +"the :keyword:`yield` statement whenever they want to return data. Each " +"time :func:`next` is called on it, the generator resumes where it left off " +"(it remembers all the data values and which statement was last executed). " +"An example shows that generators can be trivially easy to create::" msgstr "" +":term:`Generators ` ਇਟਰੇਟਰ ਬਣਾਉਣ ਲਈ ਇੱਕ ਸਰਲ ਅਤੇ ਸ਼ਕਤੀਸ਼ਾਲੀ ਸਾਧਨ ਹਨ। ਇਹ " +"ਆਮ ਫੰਕਸ਼ਨਾਂ ਵਾਂਗ ਲਿਖੇ ਜਾਂਦੇ ਹਨ, ਪਰ ਜਦੋਂ ਵੀ ਡਾਟਾ ਵਾਪਸ ਕਰਨਾ ਹੋਵੇ ਤਾਂ :keyword:`yield` " +"ਸਟੇਟਮੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਹਰ ਵਾਰ ਜਦੋਂ :func:`next` ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਨਰੇਟਰ ਉੱਥੋਂ ਹੀ ਮੁੜ " +"ਚਲਣਾ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ ਜਿੱਥੇ ਉਹ ਪਹਿਲਾਂ ਰੁਕਿਆ ਸੀ (ਇਹ ਸਾਰੇ ਡਾਟਾ ਮੁੱਲ ਅਤੇ ਆਖਰੀ ਚਲਾਈ ਗਈ ਸਟੇਟਮੈਂਟ ਨੂੰ " +"ਯਾਦ ਰੱਖਦਾ ਹੈ)। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ ਜਨਰੇਟਰ ਬਣਾਉਣਾ ਕਿੰਨਾ ਆਸਾਨ ਹੈ::" msgid "" "def reverse(data):\n" " for index in range(len(data)-1, -1, -1):\n" " yield data[index]" msgstr "" +"def reverse(data):\n" +" for index in range(len(data)-1, -1, -1):\n" +" yield data[index]" msgid "" ">>> for char in reverse('golf'):\n" @@ -1079,20 +1660,35 @@ msgid "" "o\n" "g" msgstr "" +">>> for char in reverse('golf'):\n" +"... print(char)\n" +"...\n" +"f\n" +"l\n" +"o\n" +"g" msgid "" "Anything that can be done with generators can also be done with class-based " "iterators as described in the previous section. What makes generators so " -"compact is that the :meth:`~iterator.__iter__` and :meth:`~generator." -"__next__` methods are created automatically." +"compact is that the :meth:`~iterator.__iter__` " +"and :meth:`~generator.__next__` methods are created automatically." msgstr "" +"ਜੋ ਕੁਝ ਵੀ generators ਨਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਉਹ ਪਿਛਲੇ ਭਾਗ ਵਿੱਚ ਵਰਣਿਤ class-based " +"iterators ਨਾਲ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Generators ਨੂੰ ਇੰਨਾ ਸੰਖੇਪ ਬਣਾਉਣ ਵਾਲੀ ਗੱਲ ਇਹ ਹੈ " +"ਕਿ :meth:`~iterator.__iter__` ਅਤੇ :meth:`~generator.__next__` methods ਆਪਣੇ ਆਪ " +"ਬਣ ਜਾਂਦੀਆਂ ਹਨ।" msgid "" "Another key feature is that the local variables and execution state are " "automatically saved between calls. This made the function easier to write " -"and much more clear than an approach using instance variables like ``self." -"index`` and ``self.data``." +"and much more clear than an approach using instance variables like " +"``self.index`` and ``self.data``." msgstr "" +"ਇੱਕ ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਵਿਸ਼ੇਸ਼ਤਾ ਇਹ ਹੈ ਕਿ ਕਾਲਾਂ ਦੇ ਦਰਮਿਆਨ ਸਥਾਨਕ ਵੇਰੀਏਬਲ ਅਤੇ ਐਗਜ਼ਿਕਿਊਸ਼ਨ ਸਥਿਤੀ " +"ਆਪਣੇ ਆਪ ਸੰਭਾਲੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਫੰਕਸ਼ਨ ਲਿਖਣਾ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ ਅਤੇ ``self.index`` ਅਤੇ " +"``self.data`` ਵਰਗੇ ਇੰਸਟੈਂਸ ਵੇਰੀਏਬਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੀ ਪਹੁੰਚ ਨਾਲੋਂ ਕਾਫ਼ੀ ਵੱਧ ਸਪਸ਼ਟ ਬਣ ਜਾਂਦਾ " +"ਹੈ।" msgid "" "In addition to automatic method creation and saving program state, when " @@ -1100,9 +1696,12 @@ msgid "" "combination, these features make it easy to create iterators with no more " "effort than writing a regular function." msgstr "" +"Methods ਦੇ ਆਪਣੇ ਆਪ ਬਣਨ ਅਤੇ program state ਸੰਭਾਲੇ ਜਾਣ ਤੋਂ ਇਲਾਵਾ, ਜਦੋਂ generators ਸਮਾਪਤ " +"ਹੁੰਦੇ ਹਨ ਤਾਂ ਉਹ ਆਪਣੇ ਆਪ :exc:`StopIteration` raise ਕਰਦੇ ਹਨ। ਇਹ ਸਾਰੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਮਿਲ " +"ਕੇ iterators ਬਣਾਉਣ ਨੂੰ ਆਮ function ਲਿਖਣ ਜਿੰਨਾ ਆਸਾਨ ਬਣਾ ਦਿੰਦੀਆਂ ਹਨ।" msgid "Generator Expressions" -msgstr "" +msgstr "ਜਨਰੇਟਰ ਐਕਸਪ੍ਰੈਸ਼ਨ" msgid "" "Some simple generators can be coded succinctly as expressions using a syntax " @@ -1112,9 +1711,14 @@ msgid "" "compact but less versatile than full generator definitions and tend to be " "more memory friendly than equivalent list comprehensions." msgstr "" +"ਕੁਝ ਸਰਲ ਜਨਰੇਟਰਾਂ ਨੂੰ list comprehension ਵਰਗੇ ਸਿੰਟੈਕਸ ਨਾਲ, ਪਰ square brackets ਦੀ ਥਾਂ " +"parentheses ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਸੰਖੇਪ ਐਕਸਪ੍ਰੈਸ਼ਨ ਵਜੋਂ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਐਕਸਪ੍ਰੈਸ਼ਨ ਉਹਨਾਂ " +"ਸਥਿਤੀਆਂ ਲਈ ਬਣਾਈਆਂ ਗਈਆਂ ਹਨ ਜਿੱਥੇ ਜਨਰੇਟਰ ਨੂੰ ਕਿਸੇ ਬਾਹਰੀ ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਤੁਰੰਤ ਵਰਤਿਆ ਜਾਣਾ ਹੋਵੇ। " +"ਜਨਰੇਟਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਪੂਰੀ ਜਨਰੇਟਰ ਪਰਿਭਾਸ਼ਾ ਨਾਲੋਂ ਵੱਧ ਸੰਖੇਪ ਹੁੰਦੇ ਹਨ, ਪਰ ਘੱਟ ਲਚਕਦਾਰ ਹੁੰਦੇ ਹਨ ਅਤੇ ਸਮਾਨ " +"list comprehension ਨਾਲੋਂ ਘੱਟ ਮੈਮੋਰੀ ਵਰਤਦੇ ਹਨ।" msgid "Examples::" -msgstr "" +msgstr "ਉਦਾਹਰਨਾਂ::" msgid "" ">>> sum(i*i for i in range(10)) # sum of squares\n" @@ -1139,6 +1743,27 @@ msgid "" ">>> list(g)\n" "[1, 2, 3, 4, 5]" msgstr "" +">>> sum(i*i for i in range(10)) # sum of squares\n" +"285\n" +"\n" +">>> xvec = [10, 20, 30]\n" +">>> yvec = [7, 5, 3]\n" +">>> sum(x*y for x,y in zip(xvec, yvec)) # dot product\n" +"260\n" +"\n" +">>> unique_words = set(word for line in page for word in line.split())\n" +"\n" +">>> valedictorian = max((student.gpa, student.name) for student in " +"graduates)\n" +"\n" +">>> data = 'golf'\n" +">>> list(data[i] for i in range(len(data)-1, -1, -1))\n" +"['f', 'l', 'o', 'g']\n" +"\n" +">>> x = [[1,2,3], [], [4, 5]]\n" +">>> g = (*i for i in x)\n" +">>> list(g)\n" +"[1, 2, 3, 4, 5]" msgid "" "In most cases, generator expressions must be wrapped in parentheses. As a " @@ -1148,22 +1773,30 @@ msgid "" "parentheses. That is to say, the following two pieces of code are " "semantically equivalent::" msgstr "" +"ਜ਼ਿਆਦਾਤਰ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਜਨਰੇਟਰ ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਨੂੰ parentheses ਵਿੱਚ ਲਪੇਟਣਾ ਲਾਜ਼ਮੀ ਹੁੰਦਾ ਹੈ। " +"ਹਾਲਾਂਕਿ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਮਾਮਲੇ ਵਿੱਚ, ਜਦੋਂ ਇਹ ਕਿਸੇ ਫੰਕਸ਼ਨ ਨੂੰ ਇਕੱਲੇ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਦਿੱਤੀਆਂ ਜਾਣ (ਜਿਵੇਂ ਉੱਪਰ " +"``sum``, ``set``, ``max`` ਅਤੇ ``list`` ਦੀਆਂ ਉਦਾਹਰਨਾਂ ਵਿੱਚ), ਤਾਂ ਵਾਧੂ parentheses " +"ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ। ਅਰਥਾਤ ਹੇਠਾਂ ਦਿੱਤੇ ਦੋਵੇਂ ਕੋਡ ਅਰਥਕ ਤੌਰ 'ਤੇ ਇਕੋ ਜਿਹੇ ਹਨ::" msgid "" ">>> f(x for x in y)\n" ">>> f((x for x in y))" msgstr "" +">>> f(x for x in y)\n" +">>> f((x for x in y))" msgid "as are the following::" -msgstr "" +msgstr "ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ ਵੀ ਇਸੇ ਤਰ੍ਹਾਂ ਹਨ::" msgid "" ">>> f(*x for x in y)\n" ">>> f((*x for x in y))" msgstr "" +">>> f(*x for x in y)\n" +">>> f((*x for x in y))" msgid "Footnotes" -msgstr "" +msgstr "ਫੁੱਟਨੋਟ" msgid "" "Except for one thing. Module objects have a secret read-only attribute " @@ -1173,15 +1806,20 @@ msgid "" "namespace implementation, and should be restricted to things like post-" "mortem debuggers." msgstr "" +"ਇੱਕ ਗੱਲ ਨੂੰ ਛੱਡ ਕੇ। ਮੌਡਿਊਲ ਆਬਜੈਕਟਾਂ ਵਿੱਚ :attr:`~object.__dict__` ਨਾਮ ਦਾ ਇੱਕ ਗੁਪਤ read-" +"only ਐਟ੍ਰਿਬਿਊਟ ਹੁੰਦਾ ਹੈ ਜੋ ਮੌਡਿਊਲ ਦੇ ਨੇਮਸਪੇਸ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ਡਿਕਸ਼ਨਰੀ ਵਾਪਸ " +"ਕਰਦਾ ਹੈ। ``__dict__`` ਇੱਕ ਐਟ੍ਰਿਬਿਊਟ ਹੈ, ਪਰ ਗਲੋਬਲ ਨਾਮ ਨਹੀਂ। ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ, ਇਸਦੀ ਵਰਤੋਂ " +"ਨੇਮਸਪੇਸ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ ਦੇ abstraction ਨੂੰ ਤੋੜਦੀ ਹੈ ਅਤੇ ਇਸਨੂੰ post-mortem debugger ਵਰਗੀਆਂ ਖਾਸ " +"ਸਥਿਤੀਆਂ ਤੱਕ ਹੀ ਸੀਮਿਤ ਰੱਖਣਾ ਚਾਹੀਦਾ ਹੈ।" msgid "object" -msgstr "" +msgstr "ਆਬਜੈਕਟ" msgid "method" -msgstr "" +msgstr "ਵਿਧੀ" msgid "name" -msgstr "" +msgstr "ਨਾਮ" msgid "mangling" -msgstr "" +msgstr "ਮੈਂਗਲਿੰਗ" diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 6706abd..b415a32 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,20 +23,24 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "More Control Flow Tools" -msgstr "" +msgstr "ਕੰਟਰੋਲ ਫਲੋ ਲਈ ਹੋਰ ਸਾਧਨ" msgid "" "As well as the :keyword:`while` statement just introduced, Python uses a few " "more that we will encounter in this chapter." msgstr "" +"ਹੁਣੇ ਜਾਣ-ਪਛਾਣ ਕਰਵਾਏ ਗਏ :keyword:`while` statement ਤੋਂ ਇਲਾਵਾ, Python ਕੁਝ ਹੋਰ " +"statements ਵੀ ਵਰਤਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨਾਲ ਅਸੀਂ ਇਸ ਅਧਿਆਇ ਵਿੱਚ ਜਾਣੂ ਹੋਵਾਂਗੇ।" msgid ":keyword:`!if` Statements" -msgstr "" +msgstr ":keyword:`!if` ਸਟੇਟਮੈਂਟਾਂ" msgid "" "Perhaps the most well-known statement type is the :keyword:`if` statement. " "For example::" msgstr "" +"ਸ਼ਾਇਦ ਸਭ ਤੋਂ ਵੱਧ ਜਾਣਿਆ ਜਾਣ ਵਾਲਾ statement ਪ੍ਰਕਾਰ :keyword:`if` statement ਹੈ। " +"ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> x = int(input(\"Please enter an integer: \"))\n" @@ -53,33 +57,59 @@ msgid "" "...\n" "More" msgstr "" +">>> x = int(input(\"Please enter an integer: \"))\n" +"Please enter an integer: 42\n" +">>> if x < 0:\n" +"... x = 0\n" +"... print('Negative changed to zero')\n" +"... elif x == 0:\n" +"... print('Zero')\n" +"... elif x == 1:\n" +"... print('Single')\n" +"... else:\n" +"... print('More')\n" +"...\n" +"More" msgid "" "There can be zero or more :keyword:`elif` parts, and the :keyword:`else` " "part is optional. The keyword ':keyword:`!elif`' is short for 'else if', " -"and is useful to avoid excessive indentation. An :keyword:`!if` ... :" -"keyword:`!elif` ... :keyword:`!elif` ... sequence is a substitute for the " -"``switch`` or ``case`` statements found in other languages." +"and is useful to avoid excessive indentation. An :keyword:`!" +"if` ... :keyword:`!elif` ... :keyword:`!elif` ... sequence is a substitute " +"for the ``switch`` or ``case`` statements found in other languages." msgstr "" +"ਇੱਥੇ ਸ਼ੂਨ੍ਯ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ :keyword:`elif` ਭਾਗ ਹੋ ਸਕਦੇ ਹਨ ਅਤੇ :keyword:`else` ਭਾਗ " +"ਵਿਕਲਪਿਕ ਹੈ। ':keyword:`!elif`' keyword, 'else if' ਦਾ ਸੰਖੇਪ ਰੂਪ ਹੈ ਅਤੇ ਬਹੁਤ ਜ਼ਿਆਦਾ " +"indentation ਤੋਂ ਬਚਣ ਲਈ ਲਾਭਦਾਇਕ ਹੈ। :keyword:`!if` ... :keyword:`!" +"elif` ... :keyword:`!elif` ... ਦੀ ਲੜੀ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਮਿਲਣ ਵਾਲੇ ``switch`` ਜਾਂ " +"``case`` statements ਦਾ ਵਿਕਲਪ ਹੈ।" msgid "" "If you're comparing the same value to several constants, or checking for " "specific types or attributes, you may also find the :keyword:`!match` " "statement useful. For more details see :ref:`tut-match`." msgstr "" +"ਜੇ ਤੁਸੀਂ ਇੱਕੋ ਮੁੱਲ ਦੀ ਤੁਲਨਾ ਕਈ constants ਨਾਲ ਕਰ ਰਹੇ ਹੋ ਜਾਂ ਖਾਸ ਕਿਸਮਾਂ ਜਾਂ attributes ਦੀ " +"ਜਾਂਚ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ :keyword:`!match` statement ਵੀ ਤੁਹਾਡੇ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ। ਹੋਰ " +"ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-match` ਵੇਖੋ।" msgid ":keyword:`!for` Statements" -msgstr "" +msgstr ":keyword:`!for` ਸਟੇਟਮੈਂਟਾਂ" msgid "" "The :keyword:`for` statement in Python differs a bit from what you may be " "used to in C or Pascal. Rather than always iterating over an arithmetic " "progression of numbers (like in Pascal), or giving the user the ability to " -"define both the iteration step and halting condition (as C), Python's :" -"keyword:`!for` statement iterates over the items of any sequence (a list or " -"a string), in the order that they appear in the sequence. For example (no " -"pun intended):" +"define both the iteration step and halting condition (as C), " +"Python's :keyword:`!for` statement iterates over the items of any sequence " +"(a list or a string), in the order that they appear in the sequence. For " +"example (no pun intended):" msgstr "" +"Python ਵਿੱਚ ` :keyword:`for` ` ਬਿਆਨ C ਜਾਂ Pascal ਵਿੱਚ ਤੁਸੀਂ ਜੋ ਵਰਤਦੇ ਹੋ, ਉਸ ਤੋਂ ਥੋੜ੍ਹਾ " +"ਵੱਖਰਾ ਹੈ। ਸਦਾ ਗਿਣਤੀਆਂ ਦੀ ਗਣਿਤਕ ਕ੍ਰਮਵਾਰ (ਜਿਵੇਂ ਪਾਸਕਲ ਵਿੱਚ) 'ਤੇ ਦੁਹਰਾਉਣ ਦੀ ਬਜਾਏ, ਜਾਂ " +"ਉਪਭੋਗਤਾ ਨੂੰ ਦੁਹਰਾਉਣ ਕਦਮ ਅਤੇ ਰੋਕਣ ਦੀ ਸ਼ਰਤ ਦੋਹਾਂ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਆਜ਼ਾਦੀ ਦੇਣ ਦੀ ਬਜਾਏ (ਜਿਵੇਂ C " +"ਵਿੱਚ), Python ਦਾ :keyword:`!for` ਬਿਆਨ ਕਿਸੇ ਵੀ ਕ੍ਰਮ (ਸੂਚੀ ਜਾਂ ਸਤਰ) ਦੀਆਂ ਆਈਟਮਾਂ 'ਤੇ, " +"ਉਹਨਾਂ ਦੇ ਕ੍ਰਮ ਵਿੱਚ, ਦੁਹਰਾਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ (ਇਹ ਕੋਈ ਸ਼ਬਦ-ਚਿੱਤਰ ਨਹੀਂ ਹੈ):" msgid "" ">>> # Measure some strings:\n" @@ -91,12 +121,23 @@ msgid "" "window 6\n" "defenestrate 12" msgstr "" +">>> # Measure some strings:\n" +">>> words = ['cat', 'window', 'defenestrate']\n" +">>> for w in words:\n" +"... print(w, len(w))\n" +"...\n" +"cat 3\n" +"window 6\n" +"defenestrate 12" msgid "" "Code that modifies a collection while iterating over that same collection " "can be tricky to get right. Instead, it is usually more straight-forward to " "loop over a copy of the collection or to create a new collection::" msgstr "" +"ਉਸੇ collection ਉੱਤੇ iterate ਕਰਦੇ ਸਮੇਂ ਉਸਨੂੰ ਸੋਧਣ ਵਾਲਾ code ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਲਿਖਣਾ ਮੁਸ਼ਕਲ ਹੋ " +"ਸਕਦਾ ਹੈ। ਇਸਦੀ ਬਜਾਏ ਆਮ ਤੌਰ 'ਤੇ collection ਦੀ ਇੱਕ copy ਉੱਤੇ loop ਚਲਾਉਣਾ ਜਾਂ ਇੱਕ ਨਵੀਂ " +"collection ਬਣਾਉਣਾ ਵਧੇਰੇ ਸੌਖਾ ਹੁੰਦਾ ਹੈ::" msgid "" "# Create a sample collection\n" @@ -113,14 +154,31 @@ msgid "" " if status == 'active':\n" " active_users[user] = status" msgstr "" +"# Create a sample collection\n" +"users = {'Hans': 'active', 'Éléonore': 'inactive', '景太郎': 'active'}\n" +"\n" +"# Strategy: Iterate over a copy\n" +"for user, status in users.copy().items():\n" +" if status == 'inactive':\n" +" del users[user]\n" +"\n" +"# Strategy: Create a new collection\n" +"active_users = {}\n" +"for user, status in users.items():\n" +" if status == 'active':\n" +" active_users[user] = status" msgid "The :func:`range` Function" -msgstr "" +msgstr ":func:`range` ਫੰਕਸ਼ਨ" msgid "" -"If you do need to iterate over a sequence of numbers, the built-in function :" -"func:`range` comes in handy. It generates arithmetic progressions::" +"If you do need to iterate over a sequence of numbers, the built-in " +"function :func:`range` comes in handy. It generates arithmetic " +"progressions::" msgstr "" +"ਜੇ ਤੁਹਾਨੂੰ ਸੰਖਿਆਵਾਂ ਦੀ ਕਿਸੇ ਲੜੀ ਉੱਤੇ iterate ਕਰਨ ਦੀ ਲੋੜ ਹੋਵੇ, ਤਾਂ built-in " +"function :func:`range` ਬਹੁਤ ਕੰਮ ਆਉਂਦਾ ਹੈ। ਇਹ arithmetic progressions ਤਿਆਰ ਕਰਦਾ " +"ਹੈ::" msgid "" ">>> for i in range(5):\n" @@ -132,6 +190,14 @@ msgid "" "3\n" "4" msgstr "" +">>> for i in range(5):\n" +"... print(i)\n" +"...\n" +"0\n" +"1\n" +"2\n" +"3\n" +"4" msgid "" "The given end point is never part of the generated sequence; ``range(10)`` " @@ -139,6 +205,10 @@ msgid "" "10. It is possible to let the range start at another number, or to specify " "a different increment (even negative; sometimes this is called the 'step')::" msgstr "" +"ਦਿੱਤਾ ਗਿਆ ਅੰਤ ਬਿੰਦੂ ਕਦੇ ਵੀ ਤਿਆਰ ਕੀਤੀ ਗਈ ਕ੍ਰਮ ਦਾ ਹਿੱਸਾ ਨਹੀਂ ਹੁੰਦਾ; ``range(10)`` 10 ਮੁੱਲ " +"ਤਿਆਰ ਕਰਦਾ ਹੈ, ਜੋ 10 ਲੰਬਾਈ ਵਾਲੀ ਕ੍ਰਮ ਦੀਆਂ ਆਈਟਮਾਂ ਲਈ ਵੈਧ ਸੂਚਕਾਂ ਹਨ। ਇਹ ਸੰਭਵ ਹੈ ਕਿ ਰੇਂਜ ਕਿਸੇ " +"ਹੋਰ ਅੰਕ ਤੋਂ ਸ਼ੁਰੂ ਹੋਵੇ, ਜਾਂ ਵੱਖਰਾ ਵਾਧਾ (ਨਕਾਰਾਤਮਕ ਵੀ; ਕਈ ਵਾਰ ਇਸਨੂੰ 'ਸਟੈਪ' ਕਿਹਾ ਜਾਂਦਾ ਹੈ) " +"ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਵੇ:" msgid "" ">>> list(range(5, 10))\n" @@ -150,11 +220,21 @@ msgid "" ">>> list(range(-10, -100, -30))\n" "[-10, -40, -70]" msgstr "" +">>> list(range(5, 10))\n" +"[5, 6, 7, 8, 9]\n" +"\n" +">>> list(range(0, 10, 3))\n" +"[0, 3, 6, 9]\n" +"\n" +">>> list(range(-10, -100, -30))\n" +"[-10, -40, -70]" msgid "" "To iterate over the indices of a sequence, you can combine :func:`range` " "and :func:`len` as follows::" msgstr "" +"ਕਿਸੇ sequence ਦੇ indices ਉੱਤੇ iterate ਕਰਨ ਲਈ ਤੁਸੀਂ :func:`range` ਅਤੇ :func:`len` ਨੂੰ " +"ਇਸ ਤਰ੍ਹਾਂ ਇਕੱਠੇ ਵਰਤ ਸਕਦੇ ਹੋ::" msgid "" ">>> a = ['Mary', 'had', 'a', 'little', 'lamb']\n" @@ -167,19 +247,32 @@ msgid "" "3 little\n" "4 lamb" msgstr "" +">>> a = ['Mary', 'had', 'a', 'little', 'lamb']\n" +">>> for i in range(len(a)):\n" +"... print(i, a[i])\n" +"...\n" +"0 Mary\n" +"1 had\n" +"2 a\n" +"3 little\n" +"4 lamb" msgid "" "In most such cases, however, it is convenient to use the :func:`enumerate` " "function, see :ref:`tut-loopidioms`." msgstr "" +"ਹਾਲਾਂਕਿ ਜ਼ਿਆਦਾਤਰ ਅਜਿਹੇ ਮਾਮਲਿਆਂ ਵਿੱਚ :func:`enumerate` function ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਵਧੇਰੇ " +"ਸੁਵਿਧਾਜਨਕ ਹੁੰਦਾ ਹੈ। ਵੇਖੋ :ref:`tut-loopidioms`।" msgid "A strange thing happens if you just print a range::" -msgstr "" +msgstr "ਜੇ ਤੁਸੀਂ ਸਿਰਫ਼ ਇੱਕ range ਨੂੰ print ਕਰੋ ਤਾਂ ਇੱਕ ਦਿਲਚਸਪ ਗੱਲ ਹੁੰਦੀ ਹੈ::" msgid "" ">>> range(10)\n" "range(0, 10)" msgstr "" +">>> range(10)\n" +"range(0, 10)" msgid "" "In many ways the object returned by :func:`range` behaves as if it is a " @@ -187,33 +280,49 @@ msgid "" "items of the desired sequence when you iterate over it, but it doesn't " "really make the list, thus saving space." msgstr "" +":func:`range` ਦੁਆਰਾ ਵਾਪਸ ਕੀਤਾ ਗਿਆ object ਕਈ ਤਰੀਕਿਆਂ ਨਾਲ list ਵਾਂਗ ਵਿਹਾਰ ਕਰਦਾ ਹੈ, " +"ਪਰ ਅਸਲ ਵਿੱਚ ਇਹ list ਨਹੀਂ ਹੁੰਦਾ। ਇਹ ਇੱਕ ਅਜਿਹਾ object ਹੈ ਜੋ iterate ਕਰਨ ਸਮੇਂ ਲੋੜੀਂਦੀ " +"sequence ਦੇ items ਇੱਕ-ਇੱਕ ਕਰਕੇ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਪਰ ਇਹ ਪੂਰੀ list ਨਹੀਂ ਬਣਾਉਂਦਾ, ਜਿਸ ਨਾਲ " +"memory ਦੀ ਬਚਤ ਹੁੰਦੀ ਹੈ।" msgid "" "We say such an object is :term:`iterable`, that is, suitable as a target for " "functions and constructs that expect something from which they can obtain " -"successive items until the supply is exhausted. We have seen that the :" -"keyword:`for` statement is such a construct, while an example of a function " -"that takes an iterable is :func:`sum`::" +"successive items until the supply is :term:`exhausted`. We have seen that " +"the :keyword:`for` statement is such a construct, while an example of a " +"function that takes an iterable is :func:`sum`::" msgstr "" +"ਅਸੀਂ ਅਜਿਹੀ ਵਸਤੂ ਨੂੰ :term:`iterable` ਕਹਿੰਦੇ ਹਾਂ, ਅਰਥਾਤ ਇਹ ਉਹਨਾਂ ਫੰਕਸ਼ਨਾਂ ਅਤੇ ਸੰਰਚਨਾਵਾਂ ਲਈ " +"ਢੁਕਵੀਂ ਹੁੰਦੀ ਹੈ ਜੋ ਕਿਸੇ ਅਜਿਹੀ ਚੀਜ਼ ਦੀ ਉਮੀਦ ਕਰਦੀਆਂ ਹਨ ਜਿਸ ਤੋਂ ਉਹ ਲਗਾਤਾਰ ਤੱਤ ਪ੍ਰਾਪਤ ਕਰ ਸਕਣ, " +"ਜਦੋਂ ਤੱਕ ਸਪਲਾਈ :term:`exhausted` ਨਾ ਹੋ ਜਾਵੇ। ਅਸੀਂ ਦੇਖਿਆ ਹੈ ਕਿ :keyword:`for` ਸਟੇਟਮੈਂਟ " +"ਅਜਿਹੀ ਹੀ ਇੱਕ ਸੰਰਚਨਾ ਹੈ, ਜਦਕਿ ਕਿਸੇ iterable ਨੂੰ ਲੈਣ ਵਾਲੇ ਫੰਕਸ਼ਨ ਦੀ ਇੱਕ " +"ਉਦਾਹਰਨ :func:`sum` ਹੈ::" msgid "" ">>> sum(range(4)) # 0 + 1 + 2 + 3\n" "6" msgstr "" +">>> sum(range(4)) # 0 + 1 + 2 + 3\n" +"6" msgid "" "Later we will see more functions that return iterables and take iterables as " "arguments. In chapter :ref:`tut-structures`, we will discuss :func:`list` " "in more detail." msgstr "" +"ਅੱਗੇ ਅਸੀਂ ਹੋਰ ਅਜੇਹੇ functions ਵੇਖਾਂਗੇ ਜੋ iterables ਵਾਪਸ ਕਰਦੇ ਹਨ ਅਤੇ iterables ਨੂੰ " +"arguments ਵਜੋਂ ਸਵੀਕਾਰ ਕਰਦੇ ਹਨ। ਅਧਿਆਇ :ref:`tut-structures` ਵਿੱਚ ਅਸੀਂ :func:`list` " +"ਬਾਰੇ ਹੋਰ ਵਿਸਥਾਰ ਨਾਲ ਚਰਚਾ ਕਰਾਂਗੇ।" msgid ":keyword:`!break` and :keyword:`!continue` Statements" -msgstr "" +msgstr ":keyword:`!break` ਅਤੇ :keyword:`!continue` Statements" msgid "" -"The :keyword:`break` statement breaks out of the innermost enclosing :" -"keyword:`for` or :keyword:`while` loop::" +"The :keyword:`break` statement breaks out of the innermost " +"enclosing :keyword:`for` or :keyword:`while` loop::" msgstr "" +":keyword:`break` statement ਸਭ ਤੋਂ ਅੰਦਰਲੇ :keyword:`for` ਜਾਂ :keyword:`while` loop " +"ਤੋਂ ਤੁਰੰਤ ਬਾਹਰ ਨਿਕਲ ਜਾਂਦੀ ਹੈ::" msgid "" ">>> for n in range(2, 10):\n" @@ -227,11 +336,22 @@ msgid "" "8 equals 2 * 4\n" "9 equals 3 * 3" msgstr "" +">>> for n in range(2, 10):\n" +"... for x in range(2, n):\n" +"... if n % x == 0:\n" +"... print(f\"{n} equals {x} * {n//x}\")\n" +"... break\n" +"...\n" +"4 equals 2 * 2\n" +"6 equals 2 * 3\n" +"8 equals 2 * 4\n" +"9 equals 3 * 3" msgid "" "The :keyword:`continue` statement continues with the next iteration of the " "loop::" msgstr "" +":keyword:`continue` statement loop ਦੀ ਅਗਲੀ iteration ਨਾਲ ਕਾਰਵਾਈ ਜਾਰੀ ਰੱਖਦੀ ਹੈ::" msgid "" ">>> for num in range(2, 10):\n" @@ -249,9 +369,23 @@ msgid "" "Found an even number 8\n" "Found an odd number 9" msgstr "" +">>> for num in range(2, 10):\n" +"... if num % 2 == 0:\n" +"... print(f\"Found an even number {num}\")\n" +"... continue\n" +"... print(f\"Found an odd number {num}\")\n" +"...\n" +"Found an even number 2\n" +"Found an odd number 3\n" +"Found an even number 4\n" +"Found an odd number 5\n" +"Found an even number 6\n" +"Found an odd number 7\n" +"Found an even number 8\n" +"Found an odd number 9" msgid ":keyword:`!else` Clauses on Loops" -msgstr "" +msgstr "Loops ਉੱਤੇ :keyword:`!else` Clauses" msgid "" "In a :keyword:`!for` or :keyword:`!while` loop the :keyword:`!break` " @@ -259,16 +393,21 @@ msgid "" "finishes without executing the :keyword:`!break`, the :keyword:`!else` " "clause executes." msgstr "" +":keyword:`!for` ਜਾਂ :keyword:`!while` loop ਵਿੱਚ :keyword:`!break` statement " +"ਨੂੰ :keyword:`!else` clause ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਜੇ loop :keyword:`!break` ਨੂੰ " +"ਚਲਾਏ ਬਿਨਾਂ ਸਮਾਪਤ ਹੋ ਜਾਵੇ, ਤਾਂ :keyword:`!else` clause ਚਲਦਾ ਹੈ।" msgid "" "In a :keyword:`for` loop, the :keyword:`!else` clause is executed after the " "loop finishes its final iteration, that is, if no break occurred." msgstr "" +":keyword:`for` loop ਵਿੱਚ :keyword:`!else` clause ਉਸ ਵੇਲੇ ਚਲਦਾ ਹੈ ਜਦੋਂ loop ਆਪਣੀ " +"ਆਖਰੀ iteration ਪੂਰੀ ਕਰ ਲੈਂਦਾ ਹੈ, ਅਰਥਾਤ ਜੇ ਕੋਈ break ਨਾ ਆਇਆ ਹੋਵੇ।" msgid "" "In a :keyword:`while` loop, it's executed after the loop's condition becomes " "false." -msgstr "" +msgstr ":keyword:`while` loop ਵਿੱਚ ਇਹ loop ਦੀ ਸ਼ਰਤ false ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ ਚਲਦਾ ਹੈ।" msgid "" "In either kind of loop, the :keyword:`!else` clause is **not** executed if " @@ -276,11 +415,17 @@ msgid "" "ending the loop early, such as a :keyword:`return` or a raised exception, " "will also skip execution of the :keyword:`else` clause." msgstr "" +"ਦੋਵੇਂ ਕਿਸਮਾਂ ਦੇ loops ਵਿੱਚ, ਜੇ loop :keyword:`break` ਨਾਲ ਸਮਾਪਤ ਕੀਤਾ ਗਿਆ ਹੋਵੇ " +"ਤਾਂ :keyword:`!else` clause **ਨਹੀਂ** ਚਲਦਾ। ਇਸੇ ਤਰ੍ਹਾਂ, loop ਨੂੰ ਪਹਿਲਾਂ ਹੀ ਖਤਮ ਕਰਨ ਦੇ " +"ਹੋਰ ਤਰੀਕੇ, ਜਿਵੇਂ :keyword:`return` ਜਾਂ exception ਉੱਠਣਾ, ਵੀ :keyword:`else` clause " +"ਨੂੰ ਚਲਣ ਤੋਂ ਰੋਕਦੇ ਹਨ।" msgid "" "This is exemplified in the following :keyword:`!for` loop, which searches " "for prime numbers::" msgstr "" +"ਇਸਦੀ ਉਦਾਹਰਨ ਹੇਠਾਂ ਦਿੱਤੇ :keyword:`!for` ਲੂਪ ਵਿੱਚ ਵੇਖੀ ਜਾ ਸਕਦੀ ਹੈ, ਜੋ ਅਭਾਜ ਸੰਖਿਆਵਾਂ ਦੀ " +"ਖੋਜ ਕਰਦਾ ਹੈ::" msgid "" ">>> for n in range(2, 10):\n" @@ -301,11 +446,30 @@ msgid "" "8 equals 2 * 4\n" "9 equals 3 * 3" msgstr "" +">>> for n in range(2, 10):\n" +"... for x in range(2, n):\n" +"... if n % x == 0:\n" +"... print(n, 'equals', x, '*', n//x)\n" +"... break\n" +"... else:\n" +"... # loop fell through without finding a factor\n" +"... print(n, 'is a prime number')\n" +"...\n" +"2 is a prime number\n" +"3 is a prime number\n" +"4 equals 2 * 2\n" +"5 is a prime number\n" +"6 equals 2 * 3\n" +"7 is a prime number\n" +"8 equals 2 * 4\n" +"9 equals 3 * 3" msgid "" "(Yes, this is the correct code. Look closely: the ``else`` clause belongs " "to the ``for`` loop, **not** the ``if`` statement.)" msgstr "" +"(ਹਾਂ, ਇਹ ਬਿਲਕੁਲ ਸਹੀ ਕੋਡ ਹੈ। ਧਿਆਨ ਨਾਲ ਵੇਖੋ: ``else`` clause ``for`` loop ਨਾਲ ਸੰਬੰਧਿਤ " +"ਹੈ, ``if`` statement ਨਾਲ **ਨਹੀਂ**।)" msgid "" "One way to think of the else clause is to imagine it paired with the ``if`` " @@ -314,6 +478,10 @@ msgid "" "condition is ever true, a ``break`` will happen. If the condition is never " "true, the ``else`` clause outside the loop will execute." msgstr "" +"else ਕਲੌਜ਼ ਨੂੰ ਸੋਚਣ ਦਾ ਇੱਕ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਇਸਨੂੰ ਲੂਪ ਦੇ ਅੰਦਰ ``if`` ਨਾਲ ਜੋੜਿਆ ਹੋਇਆ ਸਮਝੋ। ਜਦੋਂ " +"ਲੂਪ ਚਲਦਾ ਹੈ, ਇਹ if/if/if/else ਵਰਗੀ ਕ੍ਰਮਵਾਰ ਚਲਾਏਗਾ। loop ਦੇ ਅੰਦਰ ``if`` ਕਈ ਵਾਰੀ " +"ਆਉਂਦਾ ਹੈ। ਜੇ ਇਹ ਸ਼ਰਤ ਕਦੇ ਵੀ ਸੱਚੀ ਹੋਵੇ, ਤਾਂ ``break`` ਚਲਦਾ ਹੈ। ਜੇ ਇਹ ਸ਼ਰਤ ਕਦੇ ਵੀ ਸੱਚੀ ਨਾ " +"ਹੋਵੇ, ਤਾਂ loop ਦੇ ਬਾਹਰਲਾ ``else`` ਕਲੌਜ਼ ਚਲਦਾ ਹੈ।" msgid "" "When used with a loop, the ``else`` clause has more in common with the " @@ -323,29 +491,43 @@ msgid "" "occurs. For more on the ``try`` statement and exceptions, see :ref:`tut-" "handling`." msgstr "" +"ਜਦੋਂ ਲੂਪ ਨਾਲ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ :keyword:`try` statement ਦੇ ``else`` clause ਨਾਲ " +"ਵੱਧ ਮਿਲਦਾ ਹੈ, ਨਾ ਕਿ ``if`` statement ਦੇ ``else`` ਨਾਲ। ``try`` statement ਦਾ " +"``else`` ਉਸ ਵੇਲੇ ਚੱਲਦਾ ਹੈ ਜਦੋਂ ਕੋਈ exception ਨਹੀਂ ਆਉਂਦੀ, ਅਤੇ ਲੂਪ ਦਾ ``else`` ਉਸ ਵੇਲੇ ਚੱਲਦਾ " +"ਹੈ ਜਦੋਂ ਕੋਈ ``break`` ਨਹੀਂ ਹੁੰਦਾ। ``try`` statement ਅਤੇ exceptions ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`tut-handling` ਵੇਖੋ।" msgid ":keyword:`!pass` Statements" -msgstr "" +msgstr ":keyword:`!pass` Statements" msgid "" "The :keyword:`pass` statement does nothing. It can be used when a statement " "is required syntactically but the program requires no action. For example::" msgstr "" +":keyword:`pass` statement ਕੋਈ ਕੰਮ ਨਹੀਂ ਕਰਦੀ। ਇਸਦੀ ਵਰਤੋਂ ਉਸ ਵੇਲੇ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਦੋਂ " +"syntax ਅਨੁਸਾਰ ਕੋਈ statement ਲਾਜ਼ਮੀ ਹੋਵੇ ਪਰ program ਨੂੰ ਕੋਈ ਕਾਰਵਾਈ ਕਰਨ ਦੀ ਲੋੜ ਨਾ ਹੋਵੇ। " +"ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> while True:\n" "... pass # Busy-wait for keyboard interrupt (Ctrl+C)\n" "..." msgstr "" +">>> while True:\n" +"... pass # Busy-wait for keyboard interrupt (Ctrl+C)\n" +"..." msgid "This is commonly used for creating minimal classes::" -msgstr "" +msgstr "ਇਸਦੀ ਵਰਤੋਂ ਆਮ ਤੌਰ 'ਤੇ ਘੱਟੋ-ਘੱਟ classes ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ::" msgid "" ">>> class MyEmptyClass:\n" "... pass\n" "..." msgstr "" +">>> class MyEmptyClass:\n" +"... pass\n" +"..." msgid "" "Another place :keyword:`pass` can be used is as a place-holder for a " @@ -353,23 +535,34 @@ msgid "" "to keep thinking at a more abstract level. The :keyword:`!pass` is silently " "ignored::" msgstr "" +":keyword:`pass` ਦੀ ਇੱਕ ਹੋਰ ਵਰਤੋਂ function ਜਾਂ conditional body ਲਈ placeholder ਵਜੋਂ " +"ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਨਵਾਂ code ਲਿਖ ਰਹੇ ਹੋ। ਇਹ ਤੁਹਾਨੂੰ ਹੋਰ ਅਮੂਰਤ ਪੱਧਰ 'ਤੇ ਸੋਚਦੇ ਰਹਿਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ " +"ਹੈ। :keyword:`!pass` ਨੂੰ ਚੁੱਪਚਾਪ ਅਣਡਿੱਠਾ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ::" msgid "" ">>> def initlog(*args):\n" "... pass # Remember to implement this!\n" "..." msgstr "" +">>> def initlog(*args):\n" +"... pass # Remember to implement this!\n" +"..." msgid "" "For this last case, many people use the ellipsis literal :code:`...` instead " "of :code:`pass`. This use has no special meaning to Python, and is not part " "of the language definition (you could use any constant expression here), " -"but :code:`...` is used conventionally as a placeholder body as well. See :" -"ref:`bltin-ellipsis-object`." +"but :code:`...` is used conventionally as a placeholder body as well. " +"See :ref:`bltin-ellipsis-object`." msgstr "" +"ਇਸ ਆਖਰੀ ਸਥਿਤੀ ਵਿੱਚ ਬਹੁਤ ਸਾਰੇ ਲੋਕ :code:`pass` ਦੀ ਥਾਂ ellipsis literal :code:`...` " +"ਵਰਤਦੇ ਹਨ। Python ਵਿੱਚ ਇਸਦਾ ਕੋਈ ਖਾਸ ਅਰਥ ਨਹੀਂ ਹੈ ਅਤੇ ਇਹ ਭਾਸ਼ਾ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦਾ ਹਿੱਸਾ ਵੀ " +"ਨਹੀਂ ਹੈ (ਤੁਸੀਂ ਇੱਥੇ ਕੋਈ ਵੀ constant expression ਵਰਤ ਸਕਦੇ ਹੋ), ਪਰ ਰਵਾਇਤੀ ਤੌਰ " +"'ਤੇ :code:`...` ਨੂੰ placeholder body ਵਜੋਂ ਵੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਵੇਖੋ :ref:`bltin-" +"ellipsis-object`।" msgid ":keyword:`!match` Statements" -msgstr "" +msgstr ":keyword:`!match` Statements" msgid "" "A :keyword:`match` statement takes an expression and compares its value to " @@ -380,10 +573,16 @@ msgid "" "also extract components (sequence elements or object attributes) from the " "value into variables. If no case matches, none of the branches is executed." msgstr "" +":keyword:`match` ਬਿਆਨ ਇੱਕ ਐਕਸਪ੍ਰੈਸ਼ਨ ਲੈਂਦਾ ਹੈ ਅਤੇ ਇਸਦੀ ਕੀਮਤ ਨੂੰ ਇੱਕ ਜਾਂ ਵੱਧ ਕੇਸ ਬਲਾਕਾਂ ਵਿੱਚ " +"ਦਿੱਤੇ ਗਏ ਲਗਾਤਾਰ ਪੈਟਰਨਾਂ ਨਾਲ ਤੁਲਨਾ ਕਰਦਾ ਹੈ। ਇਹ ਸਤਹੀ ਤੌਰ 'ਤੇ C, Java ਜਾਂ JavaScript (ਅਤੇ " +"ਹੋਰ ਕਈ ਭਾਸ਼ਾਵਾਂ) ਵਿੱਚ switch ਬਿਆਨ ਵਰਗਾ ਲੱਗਦਾ ਹੈ, ਪਰ ਇਹ Rust ਜਾਂ Haskell ਵਰਗੀਆਂ " +"ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ pattern matching ਨਾਲ ਵੱਧ ਮਿਲਦਾ-ਜੁਲਦਾ ਹੈ। ਸਿਰਫ਼ ਉਹ ਪਹਿਲਾ ਪੈਟਰਨ ਜੋ ਮੇਲ " +"ਖਾਂਦਾ ਹੈ, ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਮੁੱਲ ਤੋਂ ਤੱਤ (ਕ੍ਰਮ ਦੇ ਐਲੀਮੈਂਟ ਜਾਂ ਆਬਜੈਕਟ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ) " +"ਵੈਰੀਏਬਲਾਂ ਵਿੱਚ ਕੱਢ ਸਕਦਾ ਹੈ। ਜੇ ਕੋਈ ਕੇਸ ਮੇਲ ਨਹੀਂ ਖਾਂਦਾ, ਤਾਂ ਕੋਈ ਵੀ ਸ਼ਾਖਾ ਚਲਾਈ ਨਹੀਂ ਜਾਂਦੀ।" msgid "" "The simplest form compares a subject value against one or more literals::" -msgstr "" +msgstr "ਸਭ ਤੋਂ ਸਰਲ ਰੂਪ ਕਿਸੇ subject value ਦੀ ਤੁਲਨਾ ਇੱਕ ਜਾਂ ਵੱਧ literals ਨਾਲ ਕਰਦਾ ਹੈ::" msgid "" "def http_error(status):\n" @@ -397,25 +596,41 @@ msgid "" " case _:\n" " return \"Something's wrong with the internet\"" msgstr "" +"def http_error(status):\n" +" match status:\n" +" case 400:\n" +" return \"Bad request\"\n" +" case 404:\n" +" return \"Not found\"\n" +" case 418:\n" +" return \"I'm a teapot\"\n" +" case _:\n" +" return \"Something's wrong with the internet\"" msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match." msgstr "" +"ਆਖਰੀ block ਉੱਤੇ ਧਿਆਨ ਦਿਓ: \"variable name\" ``_`` ਇੱਕ *wildcard* ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ " +"ਅਤੇ ਹਮੇਸ਼ਾਂ match ਕਰ ਜਾਂਦਾ ਹੈ।" msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" -msgstr "" +msgstr "ਤੁਸੀਂ ``|`` (\"or\") ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ pattern ਵਿੱਚ ਕਈ literals ਨੂੰ ਜੋੜ ਸਕਦੇ ਹੋ::" msgid "" "case 401 | 403 | 404:\n" " return \"Not allowed\"" msgstr "" +"case 401 | 403 | 404:\n" +" return \"Not allowed\"" msgid "" "Patterns can look like unpacking assignments, and can be used to bind " "variables::" msgstr "" +"Patterns unpacking assignments ਵਰਗੇ ਦਿਸ ਸਕਦੇ ਹਨ ਅਤੇ variables ਨੂੰ bind ਕਰਨ ਲਈ ਵਰਤੇ " +"ਜਾ ਸਕਦੇ ਹਨ::" msgid "" "# point is an (x, y) tuple\n" @@ -431,6 +646,18 @@ msgid "" " case _:\n" " raise ValueError(\"Not a point\")" msgstr "" +"# point ਇੱਕ (x, y) tuple ਹੈ\n" +"match point:\n" +" case (0, 0):\n" +" print(\"Origin\")\n" +" case (0, y):\n" +" print(f\"Y={y}\")\n" +" case (x, 0):\n" +" print(f\"X={x}\")\n" +" case (x, y):\n" +" print(f\"X={x}, Y={y}\")\n" +" case _:\n" +" raise ValueError(\"Not a point\")" msgid "" "Study that one carefully! The first pattern has two literals, and can be " @@ -440,12 +667,20 @@ msgid "" "which makes it conceptually similar to the unpacking assignment ``(x, y) = " "point``." msgstr "" +"ਇਸ ਉਦਾਹਰਨ ਨੂੰ ਧਿਆਨ ਨਾਲ ਸਮਝੋ! ਪਹਿਲੇ pattern ਵਿੱਚ ਦੋ literals ਹਨ ਅਤੇ ਇਸਨੂੰ ਉੱਪਰ ਦਿਖਾਏ " +"literal pattern ਦੇ ਵਿਸਤਾਰ ਵਜੋਂ ਸਮਝਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਅਗਲੇ ਦੋ patterns ਇੱਕ literal ਅਤੇ ਇੱਕ " +"variable ਨੂੰ ਜੋੜਦੇ ਹਨ, ਅਤੇ variable subject (``point``) ਵਿੱਚੋਂ ਇੱਕ ਮੁੱਲ *bind* ਕਰਦਾ ਹੈ। " +"ਚੌਥਾ pattern ਦੋ ਮੁੱਲਾਂ ਨੂੰ capture ਕਰਦਾ ਹੈ, ਜਿਸ ਕਾਰਨ ਇਹ ਧਾਰਣਾਤਮਕ ਤੌਰ 'ਤੇ unpacking " +"assignment ``(x, y) = point`` ਵਰਗਾ ਹੈ।" msgid "" "If you are using classes to structure your data you can use the class name " "followed by an argument list resembling a constructor, but with the ability " "to capture attributes into variables::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਆਪਣੇ data ਨੂੰ ਢਾਂਚਾਬੱਧ ਕਰਨ ਲਈ classes ਵਰਤ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ class name ਤੋਂ ਬਾਅਦ " +"constructor ਵਰਗੀ argument list ਵਰਤ ਸਕਦੇ ਹੋ, ਜਿਸ ਵਿੱਚ attributes ਨੂੰ variables ਵਿੱਚ " +"capture ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਹੁੰਦੀ ਹੈ::" msgid "" "class Point:\n" @@ -466,6 +701,23 @@ msgid "" " case _:\n" " print(\"Not a point\")" msgstr "" +"class Point:\n" +" def __init__(self, x, y):\n" +" self.x = x\n" +" self.y = y\n" +"\n" +"def where_is(point):\n" +" match point:\n" +" case Point(x=0, y=0):\n" +" print(\"Origin\")\n" +" case Point(x=0, y=y):\n" +" print(f\"Y={y}\")\n" +" case Point(x=x, y=0):\n" +" print(f\"X={x}\")\n" +" case Point():\n" +" print(\"Somewhere else\")\n" +" case _:\n" +" print(\"Not a point\")" msgid "" "You can use positional parameters with some builtin classes that provide an " @@ -475,6 +727,12 @@ msgid "" "\"y\"), the following patterns are all equivalent (and all bind the ``y`` " "attribute to the ``var`` variable)::" msgstr "" +"ਤੁਸੀਂ ਕੁਝ builtin classes (ਜਿਵੇਂ dataclasses) ਨਾਲ positional parameters ਵਰਤ ਸਕਦੇ ਹੋ " +"ਜੋ ਆਪਣੇ attributes ਲਈ ਕ੍ਰਮ ਨਿਰਧਾਰਤ ਕਰਦੀਆਂ ਹਨ। ਤੁਸੀਂ ਆਪਣੀਆਂ classes ਵਿੱਚ " +"``__match_args__`` special attribute ਸੈੱਟ ਕਰਕੇ patterns ਵਿੱਚ attributes ਦੀ ਖਾਸ " +"position ਵੀ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ। ਜੇ ਇਸਨੂੰ (\"x\", \"y\") ਸੈੱਟ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ ਹੇਠਾਂ ਦਿੱਤੇ " +"ਸਾਰੇ patterns ਇੱਕੋ ਜਿਹੇ ਹਨ (ਅਤੇ ਸਾਰੇ ``y`` attribute ਨੂੰ ``var`` variable ਨਾਲ bind " +"ਕਰਦੇ ਹਨ)::" msgid "" "Point(1, var)\n" @@ -482,21 +740,34 @@ msgid "" "Point(x=1, y=var)\n" "Point(y=var, x=1)" msgstr "" +"Point(1, var)\n" +"Point(1, y=var)\n" +"Point(x=1, y=var)\n" +"Point(y=var, x=1)" msgid "" "A recommended way to read patterns is to look at them as an extended form of " "what you would put on the left of an assignment, to understand which " "variables would be set to what. Only the standalone names (like ``var`` " -"above) are assigned to by a match statement. Dotted names (like ``foo." -"bar``), attribute names (the ``x=`` and ``y=`` above) or class names " +"above) are assigned to by a match statement. Dotted names (like " +"``foo.bar``), attribute names (the ``x=`` and ``y=`` above) or class names " "(recognized by the \"(...)\" next to them like ``Point`` above) are never " "assigned to." msgstr "" +"ਪੈਟਰਨਾਂ ਨੂੰ ਪੜ੍ਹਨ ਦਾ ਇੱਕ ਸਿਫ਼ਾਰਸ਼ੀ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਉਨ੍ਹਾਂ ਨੂੰ ਉਸ ਚੀਜ਼ ਦੇ ਵਿਸਤ੍ਰਿਤ ਰੂਪ ਵਜੋਂ ਦੇਖਿਆ " +"ਜਾਵੇ ਜੋ ਤੁਸੀਂ ਕਿਸੇ ਅਸਾਈਨਮੈਂਟ ਦੇ ਖੱਬੇ ਪਾਸੇ ਰੱਖਦੇ ਹੋ, ਤਾਂ ਜੋ ਇਹ ਸਮਝਿਆ ਜਾ ਸਕੇ ਕਿ ਕਿਹੜੇ ਵੇਰੀਏਬਲ ਕਿਸ " +"ਮੁੱਲ ਨਾਲ ਸੈੱਟ ਕੀਤੇ ਜਾਣਗੇ। ਸਿਰਫ਼ ਸਟੈਂਡਅਲੋਨ ਨਾਮ (ਜਿਵੇਂ ਉਪਰ ਦਿੱਤਾ ``var`` ) ਮੈਚ ਸਟੇਟਮੈਂਟ ਦੁਆਰਾ " +"ਅਸਾਈਨ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਡੌਟਡ ਨਾਮ (ਜਿਵੇਂ ``foo.bar``), ਐਟ੍ਰਿਬਿਊਟ ਨਾਮ (ਉਪਰ ਦਿੱਤੇ ``x=`` ਅਤੇ " +"``y=`` ) ਜਾਂ ਕਲਾਸ ਨਾਮ (ਜਿਨ੍ਹਾਂ ਦੇ ਨਾਲ \"(...)\" ਲਿਖਿਆ ਹੁੰਦਾ ਹੈ, ਜਿਵੇਂ ਉਪਰ ਦਿੱਤਾ " +"``Point`` ) ਕਦੇ ਵੀ ਅਸਾਈਨ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ।" msgid "" "Patterns can be arbitrarily nested. For example, if we have a short list of " "Points, with ``__match_args__`` added, we could match it like this::" msgstr "" +"Patterns ਨੂੰ ਮਨਚਾਹੇ ਢੰਗ ਨਾਲ nested ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਜੇ ਸਾਡੇ ਕੋਲ " +"``__match_args__`` ਵਾਲੀ Points ਦੀ ਇੱਕ ਛੋਟੀ ਸੂਚੀ ਹੋਵੇ, ਤਾਂ ਅਸੀਂ ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ match ਕਰ " +"ਸਕਦੇ ਹਾਂ::" msgid "" "class Point:\n" @@ -517,12 +788,32 @@ msgid "" " case _:\n" " print(\"Something else\")" msgstr "" +"class Point:\n" +" __match_args__ = ('x', 'y')\n" +" def __init__(self, x, y):\n" +" self.x = x\n" +" self.y = y\n" +"\n" +"match points:\n" +" case []:\n" +" print(\"No points\")\n" +" case [Point(0, 0)]:\n" +" print(\"The origin\")\n" +" case [Point(x, y)]:\n" +" print(f\"Single point {x}, {y}\")\n" +" case [Point(0, y1), Point(0, y2)]:\n" +" print(f\"Two on the Y axis at {y1}, {y2}\")\n" +" case _:\n" +" print(\"Something else\")" msgid "" "We can add an ``if`` clause to a pattern, known as a \"guard\". If the " "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" +"ਅਸੀਂ ਕਿਸੇ pattern ਨਾਲ ``if`` clause ਜੋੜ ਸਕਦੇ ਹਾਂ, ਜਿਸਨੂੰ \"guard\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਜੇ " +"guard false ਹੋਵੇ, ਤਾਂ ``match`` ਅਗਲੇ case block ਦੀ ਜਾਂਚ ਕਰਦਾ ਹੈ। ਧਿਆਨ ਦਿਓ ਕਿ value " +"capture guard ਦੀ ਜਾਂਚ ਤੋਂ ਪਹਿਲਾਂ ਹੋ ਜਾਂਦੀ ਹੈ::" msgid "" "match point:\n" @@ -531,15 +822,23 @@ msgid "" " case Point(x, y):\n" " print(f\"Not on the diagonal\")" msgstr "" +"match point:\n" +" case Point(x, y) if x == y:\n" +" print(f\"Y=X at {x}\")\n" +" case Point(x, y):\n" +" print(f\"Not on the diagonal\")" msgid "Several other key features of this statement:" -msgstr "" +msgstr "ਇਸ statement ਦੀਆਂ ਕੁਝ ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ:" msgid "" "Like unpacking assignments, tuple and list patterns have exactly the same " "meaning and actually match arbitrary sequences. An important exception is " "that they don't match iterators or strings." msgstr "" +"Unpacking assignments ਦੀ ਤਰ੍ਹਾਂ, tuple ਅਤੇ list patterns ਦਾ ਅਰਥ ਵੀ ਇੱਕੋ ਜਿਹਾ ਹੁੰਦਾ " +"ਹੈ ਅਤੇ ਇਹ ਮਨਚਾਹੀਆਂ sequences ਨਾਲ match ਕਰ ਸਕਦੇ ਹਨ। ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਅਪਵਾਦ ਇਹ ਹੈ ਕਿ ਇਹ " +"iterators ਜਾਂ strings ਨਾਲ match ਨਹੀਂ ਕਰਦੇ।" msgid "" "Sequence patterns support extended unpacking: ``[x, y, *rest]`` and ``(x, y, " @@ -547,6 +846,10 @@ msgid "" "also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " "without binding the remaining items." msgstr "" +"Sequence patterns extended unpacking ਦਾ ਸਮਰਥਨ ਕਰਦੇ ਹਨ: ``[x, y, *rest]`` ਅਤੇ " +"``(x, y, *rest)`` unpacking assignments ਵਾਂਗ ਕੰਮ ਕਰਦੇ ਹਨ। ``*`` ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲਾ " +"ਨਾਮ ``_`` ਵੀ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ``(x, y, *_)`` ਘੱਟੋ-ਘੱਟ ਦੋ items ਵਾਲੀ sequence ਨਾਲ " +"match ਕਰਦਾ ਹੈ ਬਿਨਾਂ ਬਾਕੀ items ਨੂੰ bind ਕੀਤੇ।" msgid "" "Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the " @@ -554,27 +857,37 @@ msgid "" "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" +"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` dictionary ਵਿੱਚੋਂ " +"``\"bandwidth\"`` ਅਤੇ ``\"latency\"`` ਦੇ ਮੁੱਲ capture ਕਰਦੇ ਹਨ। Sequence patterns " +"ਦੇ ਉਲਟ, ਵਾਧੂ keys ਨੂੰ ਅਣਡਿੱਠਾ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ``**rest`` ਵਰਗੀ unpacking ਦਾ ਵੀ " +"ਸਮਰਥਨ ਹੈ। (ਪਰ ``**_`` ਬੇਲੋੜਾ ਹੋਵੇਗਾ, ਇਸ ਲਈ ਇਸਦੀ ਆਗਿਆ ਨਹੀਂ ਹੈ।)" msgid "Subpatterns may be captured using the ``as`` keyword::" -msgstr "" +msgstr "Subpatterns ਨੂੰ ``as`` keyword ਦੀ ਵਰਤੋਂ ਨਾਲ capture ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "case (Point(x1, y1), Point(x2, y2) as p2): ..." -msgstr "" +msgstr "case (Point(x1, y1), Point(x2, y2) as p2): ..." msgid "" "will capture the second element of the input as ``p2`` (as long as the input " "is a sequence of two points)" msgstr "" +"ਇਹ input ਦੇ ਦੂਜੇ element ਨੂੰ ``p2`` ਵਜੋਂ capture ਕਰੇਗਾ (ਜਦੋਂ ਤੱਕ input ਦੋ points ਵਾਲੀ " +"sequence ਹੈ)।" msgid "" "Most literals are compared by equality, however the singletons ``True``, " "``False`` and ``None`` are compared by identity." msgstr "" +"ਜ਼ਿਆਦਾਤਰ literals ਦੀ ਤੁਲਨਾ equality ਦੇ ਆਧਾਰ 'ਤੇ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਪਰ singletons " +"``True``, ``False`` ਅਤੇ ``None`` ਦੀ ਤੁਲਨਾ identity ਦੇ ਆਧਾਰ 'ਤੇ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "Patterns may use named constants. These must be dotted names to prevent " "them from being interpreted as capture variables::" msgstr "" +"Patterns named constants ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ। ਇਹ dotted names ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ ਤਾਂ ਜੋ " +"ਇਨ੍ਹਾਂ ਨੂੰ capture variables ਵਜੋਂ ਨਾ ਸਮਝਿਆ ਜਾਵੇ::" msgid "" "from enum import Enum\n" @@ -593,19 +906,37 @@ msgid "" " case Color.BLUE:\n" " print(\"I'm feeling the blues :(\")" msgstr "" +"from enum import Enum\n" +"class Color(Enum):\n" +" RED = 'red'\n" +" GREEN = 'green'\n" +" BLUE = 'blue'\n" +"\n" +"color = Color(input(\"Enter your choice of 'red', 'blue' or 'green': \"))\n" +"\n" +"match color:\n" +" case Color.RED:\n" +" print(\"I see red!\")\n" +" case Color.GREEN:\n" +" print(\"Grass is green\")\n" +" case Color.BLUE:\n" +" print(\"I'm feeling the blues :(\")" msgid "" -"For a more detailed explanation and additional examples, you can look into :" -"pep:`636` which is written in a tutorial format." +"For a more detailed explanation and additional examples, you can look " +"into :pep:`636` which is written in a tutorial format." msgstr "" +"ਹੋਰ ਵਿਸਤ੍ਰਿਤ ਵਿਆਖਿਆ ਅਤੇ ਵਾਧੂ ਉਦਾਹਰਨਾਂ ਲਈ ਤੁਸੀਂ :pep:`636` ਵੇਖ ਸਕਦੇ ਹੋ, ਜੋ tutorial ਰੂਪ " +"ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ।" msgid "Defining Functions" -msgstr "" +msgstr "Functions ਦੀ ਪਰਿਭਾਸ਼ਾ" msgid "" "We can create a function that writes the Fibonacci series to an arbitrary " "boundary::" msgstr "" +"ਅਸੀਂ ਇੱਕ function ਬਣਾ ਸਕਦੇ ਹਾਂ ਜੋ Fibonacci series ਨੂੰ ਕਿਸੇ ਮਨਚਾਹੀ ਸੀਮਾ ਤੱਕ ਲਿਖੇ::" msgid "" ">>> def fib(n): # write Fibonacci series less than n\n" @@ -620,6 +951,17 @@ msgid "" ">>> fib(2000)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597" msgstr "" +">>> def fib(n): # write Fibonacci series less than n\n" +"... \"\"\"Print a Fibonacci series less than n.\"\"\"\n" +"... a, b = 0, 1\n" +"... while a < n:\n" +"... print(a, end=' ')\n" +"... a, b = b, a+b\n" +"... print()\n" +"...\n" +">>> # Now call the function we just defined:\n" +">>> fib(2000)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597" msgid "" "The keyword :keyword:`def` introduces a function *definition*. It must be " @@ -627,16 +969,26 @@ msgid "" "parameters. The statements that form the body of the function start at the " "next line, and must be indented." msgstr "" +":keyword:`def` keyword ਇੱਕ function *definition* ਦੀ ਸ਼ੁਰੂਆਤ ਕਰਦਾ ਹੈ। ਇਸ ਤੋਂ ਬਾਅਦ " +"function ਦਾ ਨਾਮ ਅਤੇ formal parameters ਦੀ parenthesized list ਆਉਣੀ ਚਾਹੀਦੀ ਹੈ। " +"Function ਦਾ body ਬਣਾਉਣ ਵਾਲੀਆਂ statements ਅਗਲੀ ਲਾਈਨ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ ਉਹਨਾਂ ਦਾ " +"indented ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ।" msgid "" "The first statement of the function body can optionally be a string literal; " -"this string literal is the function's documentation string, or :dfn:" -"`docstring`. (More about docstrings can be found in the section :ref:`tut-" -"docstrings`.) There are tools which use docstrings to automatically produce " -"online or printed documentation, or to let the user interactively browse " -"through code; it's good practice to include docstrings in code that you " -"write, so make a habit of it." +"this string literal is the function's documentation string, " +"or :dfn:`docstring`. (More about docstrings can be found in the " +"section :ref:`tut-docstrings`.) There are tools which use docstrings to " +"automatically produce online or printed documentation, or to let the user " +"interactively browse through code; it's good practice to include docstrings " +"in code that you write, so make a habit of it." msgstr "" +"Function body ਦੀ ਪਹਿਲੀ statement ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ ਇੱਕ string literal ਹੋ ਸਕਦੀ ਹੈ; ਇਸ " +"string literal ਨੂੰ function ਦੀ documentation string ਜਾਂ :dfn:`docstring` ਕਿਹਾ " +"ਜਾਂਦਾ ਹੈ। (:ref:`tut-docstrings` ਵਿੱਚ docstrings ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਮਿਲੇਗੀ।) ਕਈ " +"tools docstrings ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੇ ਆਪ online ਜਾਂ printed documentation ਤਿਆਰ ਕਰਦੇ " +"ਹਨ ਜਾਂ ਵਰਤੋਂਕਾਰ ਨੂੰ code ਨੂੰ interactively ਵੇਖਣ ਦੀ ਸੁਵਿਧਾ ਦਿੰਦੇ ਹਨ। ਇਸ ਲਈ ਆਪਣੇ code ਵਿੱਚ " +"docstrings ਸ਼ਾਮਲ ਕਰਨਾ ਇੱਕ ਵਧੀਆ ਅਭਿਆਸ ਹੈ।" msgid "" "The *execution* of a function introduces a new symbol table used for the " @@ -650,6 +1002,14 @@ msgid "" "for variables of enclosing functions, named in a :keyword:`nonlocal` " "statement), although they may be referenced." msgstr "" +"ਕਿਸੇ function ਦੀ *execution* ਉਸਦੇ local variables ਲਈ ਇੱਕ ਨਵੀਂ symbol table " +"ਬਣਾਉਂਦੀ ਹੈ। ਹੋਰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ, function ਦੇ ਅੰਦਰ ਕੀਤੀਆਂ ਸਾਰੀਆਂ variable assignments " +"local symbol table ਵਿੱਚ ਸੰਭਾਲੀਆਂ ਜਾਂਦੀਆਂ ਹਨ; ਜਦਕਿ variable references ਪਹਿਲਾਂ local " +"symbol table, ਫਿਰ enclosing functions ਦੀਆਂ local symbol tables, ਫਿਰ global " +"symbol table ਅਤੇ ਆਖ਼ਰ ਵਿੱਚ built-in names ਦੀ table ਵਿੱਚ ਖੋਜੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਸ ਲਈ " +"global variables ਅਤੇ enclosing functions ਦੇ variables ਨੂੰ function ਦੇ ਅੰਦਰ ਸਿੱਧਾ ਮੁੱਲ " +"ਨਹੀਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ (ਸਿਵਾਏ ਉਹਨਾਂ ਦੇ ਜੋ :keyword:`global` ਜਾਂ :keyword:`nonlocal` " +"statement ਰਾਹੀਂ ਘੋਸ਼ਿਤ ਕੀਤੇ ਗਏ ਹੋਣ), ਹਾਲਾਂਕਿ ਉਨ੍ਹਾਂ ਨੂੰ reference ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "The actual parameters (arguments) to a function call are introduced in the " @@ -659,6 +1019,11 @@ msgid "" "another function, or calls itself recursively, a new local symbol table is " "created for that call." msgstr "" +"ਜਦੋਂ ਕਿਸੇ function ਨੂੰ ਕਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਸਦੇ actual parameters (arguments) ਉਸ " +"function ਦੀ local symbol table ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾਂਦੇ ਹਨ; ਇਸ ਤਰ੍ਹਾਂ arguments *call " +"by value* ਰਾਹੀਂ ਪਾਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ (ਜਿੱਥੇ *value* ਅਸਲ ਵਿੱਚ object ਦਾ *reference* ਹੁੰਦਾ " +"ਹੈ, object ਦਾ ਮੁੱਲ ਨਹੀਂ)। [#]_ ਜਦੋਂ ਕੋਈ function ਕਿਸੇ ਹੋਰ function ਨੂੰ ਜਾਂ ਆਪਣੇ ਆਪ ਨੂੰ " +"recursively ਕਾਲ ਕਰਦਾ ਹੈ, ਤਾਂ ਉਸ ਕਾਲ ਲਈ ਇੱਕ ਨਵੀਂ local symbol table ਬਣਾਈ ਜਾਂਦੀ ਹੈ।" msgid "" "A function definition associates the function name with the function object " @@ -666,6 +1031,10 @@ msgid "" "to by that name as a user-defined function. Other names can also point to " "that same function object and can also be used to access the function::" msgstr "" +"Function definition ਮੌਜੂਦਾ symbol table ਵਿੱਚ function name ਨੂੰ function object " +"ਨਾਲ ਜੋੜਦੀ ਹੈ। Interpreter ਉਸ ਨਾਮ ਦੁਆਰਾ ਦਰਸਾਏ object ਨੂੰ user-defined function ਵਜੋਂ " +"ਪਛਾਣਦਾ ਹੈ। ਹੋਰ ਨਾਮ ਵੀ ਉਸੇ function object ਵੱਲ ਇਸ਼ਾਰਾ ਕਰ ਸਕਦੇ ਹਨ ਅਤੇ function ਤੱਕ ਪਹੁੰਚ " +"ਕਰਨ ਲਈ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ::" msgid "" ">>> fib\n" @@ -674,6 +1043,11 @@ msgid "" ">>> f(100)\n" "0 1 1 2 3 5 8 13 21 34 55 89" msgstr "" +">>> fib\n" +"\n" +">>> f = fib\n" +">>> f(100)\n" +"0 1 1 2 3 5 8 13 21 34 55 89" msgid "" "Coming from other languages, you might object that ``fib`` is not a function " @@ -681,20 +1055,31 @@ msgid "" "without a :keyword:`return` statement do return a value, albeit a rather " "boring one. This value is called ``None`` (it's a built-in name). Writing " "the value ``None`` is normally suppressed by the interpreter if it would be " -"the only value written. You can see it if you really want to using :func:" -"`print`::" +"the only value written. You can see it if you really want to " +"using :func:`print`::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਤੋਂ ਆ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਕਹਿ ਸਕਦੇ ਹੋ ਕਿ ``fib`` ਇੱਕ function ਨਹੀਂ ਸਗੋਂ ਇੱਕ " +"procedure ਹੈ ਕਿਉਂਕਿ ਇਹ ਕੋਈ ਮੁੱਲ ਵਾਪਸ ਨਹੀਂ ਕਰਦਾ। ਅਸਲ ਵਿੱਚ, ਉਹ functions ਵੀ ਜਿਨ੍ਹਾਂ " +"ਵਿੱਚ :keyword:`return` statement ਨਹੀਂ ਹੁੰਦੀ, ਇੱਕ ਮੁੱਲ ਵਾਪਸ ਕਰਦੇ ਹਨ, ਭਾਵੇਂ ਉਹ ਕਾਫ਼ੀ " +"ਸਧਾਰਣ ਹੋਵੇ। ਇਸ ਮੁੱਲ ਨੂੰ ``None`` ਕਿਹਾ ਜਾਂਦਾ ਹੈ (ਇਹ ਇੱਕ built-in ਨਾਮ ਹੈ)। ਜੇ ``None`` ਹੀ " +"ਇਕੱਲਾ ਲਿਖਿਆ ਜਾਣ ਵਾਲਾ ਮੁੱਲ ਹੋਵੇ, ਤਾਂ interpreter ਆਮ ਤੌਰ 'ਤੇ ਇਸਨੂੰ ਨਹੀਂ ਦਿਖਾਉਂਦਾ। ਜੇ ਤੁਸੀਂ " +"ਇਸਨੂੰ ਦੇਖਣਾ ਚਾਹੋ ਤਾਂ :func:`print` ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ::" msgid "" ">>> fib(0)\n" ">>> print(fib(0))\n" "None" msgstr "" +">>> fib(0)\n" +">>> print(fib(0))\n" +"None" msgid "" "It is simple to write a function that returns a list of the numbers of the " "Fibonacci series, instead of printing it::" msgstr "" +"Fibonacci ਲੜੀ ਦੀਆਂ ਸੰਖਿਆਵਾਂ ਨੂੰ print ਕਰਨ ਦੀ ਬਜਾਏ ਉਹਨਾਂ ਦੀ ਇੱਕ list ਵਾਪਸ ਕਰਨ ਵਾਲਾ " +"function ਲਿਖਣਾ ਆਸਾਨ ਹੈ::" msgid "" ">>> def fib2(n): # return Fibonacci series up to n\n" @@ -710,15 +1095,30 @@ msgid "" ">>> f100 # write the result\n" "[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]" msgstr "" +">>> def fib2(n): # return Fibonacci series up to n\n" +"... \"\"\"Return a list containing the Fibonacci series up to n.\"\"\"\n" +"... result = []\n" +"... a, b = 0, 1\n" +"... while a < n:\n" +"... result.append(a) # see below\n" +"... a, b = b, a+b\n" +"... return result\n" +"...\n" +">>> f100 = fib2(100) # call it\n" +">>> f100 # write the result\n" +"[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]" msgid "This example, as usual, demonstrates some new Python features:" -msgstr "" +msgstr "ਇਹ ਉਦਾਹਰਨ, ਹਮੇਸ਼ਾਂ ਦੀ ਤਰ੍ਹਾਂ, Python ਦੀਆਂ ਕੁਝ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ:" msgid "" -"The :keyword:`return` statement returns with a value from a function. :" -"keyword:`!return` without an expression argument returns ``None``. Falling " -"off the end of a function also returns ``None``." +"The :keyword:`return` statement returns with a value from a " +"function. :keyword:`!return` without an expression argument returns " +"``None``. Falling off the end of a function also returns ``None``." msgstr "" +":keyword:`return` statement ਕਿਸੇ function ਤੋਂ ਇੱਕ ਮੁੱਲ ਵਾਪਸ ਕਰਦੀ ਹੈ। expression " +"argument ਤੋਂ ਬਿਨਾਂ :keyword:`!return` ``None`` ਵਾਪਸ ਕਰਦੀ ਹੈ। Function ਦੇ ਅੰਤ ਤੱਕ " +"ਪਹੁੰਚ ਜਾਣ 'ਤੇ ਵੀ ``None`` ਹੀ ਵਾਪਸ ਹੁੰਦਾ ਹੈ।" msgid "" "The statement ``result.append(a)`` calls a *method* of the list object " @@ -727,29 +1127,44 @@ msgid "" "expression), and ``methodname`` is the name of a method that is defined by " "the object's type. Different types define different methods. Methods of " "different types may have the same name without causing ambiguity. (It is " -"possible to define your own object types and methods, using *classes*, see :" -"ref:`tut-classes`) The method :meth:`~list.append` shown in the example is " -"defined for list objects; it adds a new element at the end of the list. In " -"this example it is equivalent to ``result = result + [a]``, but more " +"possible to define your own object types and methods, using *classes*, " +"see :ref:`tut-classes`) The method :meth:`~list.append` shown in the example " +"is defined for list objects; it adds a new element at the end of the list. " +"In this example it is equivalent to ``result = result + [a]``, but more " "efficient." msgstr "" +"Statement ``result.append(a)`` list object ``result`` ਦੀ ਇੱਕ *method* ਨੂੰ ਕਾਲ " +"ਕਰਦੀ ਹੈ। Method ਉਹ function ਹੁੰਦੀ ਹੈ ਜੋ ਕਿਸੇ object ਨਾਲ ਸੰਬੰਧਿਤ ਹੁੰਦੀ ਹੈ ਅਤੇ ਜਿਸਦਾ ਨਾਮ " +"``obj.methodname`` ਦੇ ਰੂਪ ਵਿੱਚ ਹੁੰਦਾ ਹੈ, ਜਿੱਥੇ ``obj`` ਕੋਈ object ਹੁੰਦਾ ਹੈ (ਇਹ ਇੱਕ " +"expression ਵੀ ਹੋ ਸਕਦਾ ਹੈ) ਅਤੇ ``methodname`` ਉਸ method ਦਾ ਨਾਮ ਹੁੰਦਾ ਹੈ ਜੋ object ਦੀ " +"type ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀ ਗਈ ਹੋਵੇ। ਵੱਖ-ਵੱਖ types ਵੱਖ-ਵੱਖ methods ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀਆਂ ਹਨ। " +"ਵੱਖਰੀਆਂ types ਦੀਆਂ methods ਦਾ ਨਾਮ ਇੱਕੋ ਜਿਹਾ ਹੋ ਸਕਦਾ ਹੈ ਬਿਨਾਂ ਕਿਸੇ ਗਲਤਫਹਮੀ ਦੇ। " +"(*classes* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੀਆਂ object types ਅਤੇ methods ਵੀ ਬਣਾਈਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ; " +"ਵੇਖੋ :ref:`tut-classes`)। ਉਦਾਹਰਨ ਵਿੱਚ ਦਿਖਾਈ ਗਈ :meth:`~list.append` method list " +"objects ਲਈ ਪਰਿਭਾਸ਼ਿਤ ਹੈ; ਇਹ list ਦੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਨਵਾਂ element ਜੋੜਦੀ ਹੈ। ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ " +"ਇਹ ``result = result + [a]`` ਦੇ ਬਰਾਬਰ ਹੈ, ਪਰ ਹੋਰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਹੈ।" msgid "More on Defining Functions" -msgstr "" +msgstr "ਫੰਕਸ਼ਨਾਂ ਦੀ ਪਰਿਭਾਸ਼ਾ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ" msgid "" "It is also possible to define functions with a variable number of arguments. " "There are three forms, which can be combined." msgstr "" +"ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਬਦਲਦੀ ਗਿਣਤੀ ਵਾਲੇ arguments ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨਾ ਵੀ ਸੰਭਵ ਹੈ। ਇਸ ਦੀਆਂ ਤਿੰਨ ਰੂਪ-" +"ਰੇਖਾਵਾਂ ਹਨ, ਜਿਨ੍ਹਾਂ ਨੂੰ ਇਕੱਠੇ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "Default Argument Values" -msgstr "" +msgstr "ਡਿਫਾਲਟ ਆਰਗਿਊਮੈਂਟ ਮੁੱਲ" msgid "" "The most useful form is to specify a default value for one or more " "arguments. This creates a function that can be called with fewer arguments " "than it is defined to allow. For example::" msgstr "" +"ਸਭ ਤੋਂ ਲਾਭਦਾਇਕ ਤਰੀਕਾ ਇੱਕ ਜਾਂ ਵੱਧ arguments ਲਈ ਡਿਫਾਲਟ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰਨਾ ਹੈ। ਇਸ ਨਾਲ " +"ਅਜਿਹਾ function ਬਣਦਾ ਹੈ ਜਿਸਨੂੰ ਉਸਦੀ ਪਰਿਭਾਸ਼ਾ ਵਿੱਚ ਮਨਜ਼ੂਰ ਕੀਤੇ ਗਏ arguments ਤੋਂ ਘੱਟ " +"arguments ਨਾਲ ਵੀ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" "def ask_ok(prompt, retries=4, reminder='Please try again!'):\n" @@ -764,33 +1179,51 @@ msgid "" " raise ValueError('invalid user response')\n" " print(reminder)" msgstr "" +"def ask_ok(prompt, retries=4, reminder='Please try again!'):\n" +" while True:\n" +" reply = input(prompt)\n" +" if reply in {'y', 'ye', 'yes'}:\n" +" return True\n" +" if reply in {'n', 'no', 'nop', 'nope'}:\n" +" return False\n" +" retries = retries - 1\n" +" if retries < 0:\n" +" raise ValueError('invalid user response')\n" +" print(reminder)" msgid "This function can be called in several ways:" -msgstr "" +msgstr "ਇਸ function ਨੂੰ ਕਈ ਤਰੀਕਿਆਂ ਨਾਲ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" "giving only the mandatory argument: ``ask_ok('Do you really want to quit?')``" -msgstr "" +msgstr "ਸਿਰਫ਼ ਲਾਜ਼ਮੀ argument ਦੇ ਕੇ: ``ask_ok('Do you really want to quit?')``" msgid "" "giving one of the optional arguments: ``ask_ok('OK to overwrite the file?', " "2)``" msgstr "" +"ਵਿਕਲਪਿਕ arguments ਵਿੱਚੋਂ ਇੱਕ ਦੇ ਕੇ: ``ask_ok('OK to overwrite the file?', 2)``" msgid "" "or even giving all arguments: ``ask_ok('OK to overwrite the file?', 2, 'Come " "on, only yes or no!')``" msgstr "" +"ਜਾਂ ਸਾਰੇ arguments ਦੇ ਕੇ: ``ask_ok('OK to overwrite the file?', 2, 'Come on, " +"only yes or no!')``" msgid "" "This example also introduces the :keyword:`in` keyword. This tests whether " "or not a sequence contains a certain value." msgstr "" +"ਇਹ ਉਦਾਹਰਨ :keyword:`in` keyword ਨਾਲ ਵੀ ਜਾਣੂ ਕਰਵਾਉਂਦੀ ਹੈ। ਇਹ ਜਾਂਚਦੀ ਹੈ ਕਿ ਕਿਸੇ " +"sequence ਵਿੱਚ ਕੋਈ ਖਾਸ ਮੁੱਲ ਮੌਜੂਦ ਹੈ ਜਾਂ ਨਹੀਂ।" msgid "" "The default values are evaluated at the point of function definition in the " "*defining* scope, so that ::" msgstr "" +"ਡਿਫਾਲਟ ਮੁੱਲਾਂ ਦਾ ਮੁਲਾਂਕਣ function ਦੀ ਪਰਿਭਾਸ਼ਾ ਦੇ ਸਮੇਂ, *defining* scope ਵਿੱਚ ਕੀਤਾ ਜਾਂਦਾ " +"ਹੈ, ਇਸ ਲਈ ::" msgid "" "i = 5\n" @@ -801,9 +1234,16 @@ msgid "" "i = 6\n" "f()" msgstr "" +"i = 5\n" +"\n" +"def f(arg=i):\n" +" print(arg)\n" +"\n" +"i = 6\n" +"f()" msgid "will print ``5``." -msgstr "" +msgstr "ਇਹ ``5`` ਪ੍ਰਿੰਟ ਕਰੇਗਾ।" msgid "" "**Important warning:** The default value is evaluated only once. This makes " @@ -811,6 +1251,10 @@ msgid "" "dictionary, or instances of most classes. For example, the following " "function accumulates the arguments passed to it on subsequent calls::" msgstr "" +"**ਮਹੱਤਵਪੂਰਨ ਚੇਤਾਵਨੀ:** ਡਿਫਾਲਟ ਮੁੱਲ ਦਾ ਮੁਲਾਂਕਣ ਸਿਰਫ਼ ਇੱਕ ਵਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ ਡਿਫਾਲਟ ਇੱਕ " +"mutable object ਹੋਵੇ, ਜਿਵੇਂ list, dictionary ਜਾਂ ਬਹੁਤੀਆਂ classes ਦੇ instances, ਤਾਂ ਇਹ " +"ਗੱਲ ਮਹੱਤਵਪੂਰਨ ਬਣ ਜਾਂਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਹੇਠਾਂ ਦਿੱਤਾ function ਆਪਣੀਆਂ ਅਗਲੀਆਂ ਕਾਲਾਂ ਵਿੱਚ ਪਾਸ " +"ਕੀਤੇ arguments ਨੂੰ ਇਕੱਠਾ ਕਰਦਾ ਰਹਿੰਦਾ ਹੈ::" msgid "" "def f(a, L=[]):\n" @@ -821,20 +1265,32 @@ msgid "" "print(f(2))\n" "print(f(3))" msgstr "" +"def f(a, L=[]):\n" +" L.append(a)\n" +" return L\n" +"\n" +"print(f(1))\n" +"print(f(2))\n" +"print(f(3))" msgid "This will print ::" -msgstr "" +msgstr "ਇਹ ਪ੍ਰਿੰਟ ਕਰੇਗਾ ::" msgid "" "[1]\n" "[1, 2]\n" "[1, 2, 3]" msgstr "" +"[1]\n" +"[1, 2]\n" +"[1, 2, 3]" msgid "" "If you don't want the default to be shared between subsequent calls, you can " "write the function like this instead::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ ਕਿ ਡਿਫਾਲਟ ਮੁੱਲ ਅਗਲੀਆਂ ਕਾਲਾਂ ਵਿੱਚ ਸਾਂਝਾ ਹੋਵੇ, ਤਾਂ function ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ " +"ਲਿਖ ਸਕਦੇ ਹੋ::" msgid "" "def f(a, L=None):\n" @@ -843,15 +1299,22 @@ msgid "" " L.append(a)\n" " return L" msgstr "" +"def f(a, L=None):\n" +" if L is None:\n" +" L = []\n" +" L.append(a)\n" +" return L" msgid "Keyword Arguments" -msgstr "" +msgstr "ਕੀਵਰਡ ਆਰਗਿਊਮੈਂਟ" msgid "" "Functions can also be called using :term:`keyword arguments ` of the form ``kwarg=value``. For instance, the following " "function::" msgstr "" +"Functions ਨੂੰ ``kwarg=value`` ਦੇ ਰੂਪ ਵਾਲੇ :term:`keyword arguments ` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵੀ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਹੇਠਾਂ ਦਿੱਤਾ function::" msgid "" "def parrot(voltage, state='a stiff', action='voom', type='Norwegian Blue'):\n" @@ -860,12 +1323,20 @@ msgid "" " print(\"-- Lovely plumage, the\", type)\n" " print(\"-- It's\", state, \"!\")" msgstr "" +"def parrot(voltage, state='a stiff', action='voom', type='Norwegian Blue'):\n" +" print(\"-- This parrot wouldn't\", action, end=' ')\n" +" print(\"if you put\", voltage, \"volts through it.\")\n" +" print(\"-- Lovely plumage, the\", type)\n" +" print(\"-- It's\", state, \"!\")" msgid "" "accepts one required argument (``voltage``) and three optional arguments " "(``state``, ``action``, and ``type``). This function can be called in any " "of the following ways::" msgstr "" +"ਇਹ ਇੱਕ ਲਾਜ਼ਮੀ argument (``voltage``) ਅਤੇ ਤਿੰਨ ਵਿਕਲਪਿਕ arguments (``state``, " +"``action`` ਅਤੇ ``type``) ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ। ਇਸ function ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਕਿਸੇ ਵੀ ਤਰੀਕੇ ਨਾਲ " +"ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "parrot(1000) # 1 positional " @@ -878,9 +1349,18 @@ msgid "" "parrot('a thousand', state='pushing up the daisies') # 1 positional, 1 " "keyword" msgstr "" +"parrot(1000) # 1 positional " +"argument\n" +"parrot(voltage=1000) # 1 keyword argument\n" +"parrot(voltage=1000000, action='VOOOOOM') # 2 keyword arguments\n" +"parrot(action='VOOOOOM', voltage=1000000) # 2 keyword arguments\n" +"parrot('a million', 'bereft of life', 'jump') # 3 positional " +"arguments\n" +"parrot('a thousand', state='pushing up the daisies') # 1 positional, 1 " +"keyword" msgid "but all the following calls would be invalid::" -msgstr "" +msgstr "ਪਰ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਸਾਰੀਆਂ ਕਾਲਾਂ ਗਲਤ ਹੋਣਗੀਆਂ::" msgid "" "parrot() # required argument missing\n" @@ -889,6 +1369,11 @@ msgid "" "parrot(110, voltage=220) # duplicate value for the same argument\n" "parrot(actor='John Cleese') # unknown keyword argument" msgstr "" +"parrot() # required argument missing\n" +"parrot(voltage=5.0, 'dead') # non-keyword argument after a keyword " +"argument\n" +"parrot(110, voltage=220) # duplicate value for the same argument\n" +"parrot(actor='John Cleese') # unknown keyword argument" msgid "" "In a function call, keyword arguments must follow positional arguments. All " @@ -899,6 +1384,13 @@ msgid "" "may receive a value more than once. Here's an example that fails due to this " "restriction::" msgstr "" +"ਕਿਸੇ function call ਵਿੱਚ keyword arguments, positional arguments ਤੋਂ ਬਾਅਦ ਆਉਣੇ " +"ਚਾਹੀਦੇ ਹਨ। ਪਾਸ ਕੀਤੇ ਗਏ ਸਾਰੇ keyword arguments function ਦੁਆਰਾ ਸਵੀਕਾਰ ਕੀਤੇ " +"arguments ਵਿੱਚੋਂ ਕਿਸੇ ਇੱਕ ਨਾਲ ਮਿਲਣੇ ਚਾਹੀਦੇ ਹਨ (ਉਦਾਹਰਨ ਵਜੋਂ ``actor`` , ``parrot`` " +"function ਲਈ ਵੈਧ argument ਨਹੀਂ ਹੈ), ਅਤੇ ਉਨ੍ਹਾਂ ਦਾ ਕ੍ਰਮ ਮਹੱਤਵਪੂਰਨ ਨਹੀਂ ਹੁੰਦਾ। ਇਹ ਨਿਯਮ non-" +"optional arguments ਉੱਤੇ ਵੀ ਲਾਗੂ ਹੁੰਦਾ ਹੈ (ਉਦਾਹਰਨ ਲਈ ``parrot(voltage=1000)`` ਵੀ ਵੈਧ " +"ਹੈ)। ਕਿਸੇ argument ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਵਾਰ ਮੁੱਲ ਨਹੀਂ ਦਿੱਤਾ ਜਾ ਸਕਦਾ। ਹੇਠਾਂ ਇੱਕ ਉਦਾਹਰਨ ਹੈ ਜੋ ਇਸ " +"ਪਾਬੰਦੀ ਕਾਰਨ ਅਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ::" msgid "" ">>> def function(a):\n" @@ -909,6 +1401,13 @@ msgid "" " File \"\", line 1, in \n" "TypeError: function() got multiple values for argument 'a'" msgstr "" +">>> def function(a):\n" +"... pass\n" +"...\n" +">>> function(0, a=0)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: function() got multiple values for argument 'a'" msgid "" "When a final formal parameter of the form ``**name`` is present, it receives " @@ -919,6 +1418,13 @@ msgid "" "positional arguments beyond the formal parameter list. (``*name`` must " "occur before ``**name``.) For example, if we define a function like this::" msgstr "" +"ਜਦੋਂ ``**name`` ਦੇ ਰੂਪ ਵਾਲਾ ਆਖਰੀ formal parameter ਮੌਜੂਦ ਹੋਵੇ, ਤਾਂ ਇਹ ਉਹ dictionary " +"(ਵੇਖੋ :ref:`typesmapping`) ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਉਹ ਸਾਰੇ keyword arguments ਹੁੰਦੇ ਹਨ " +"ਜੋ ਕਿਸੇ formal parameter ਨਾਲ ਸੰਬੰਧਿਤ ਨਹੀਂ ਹੁੰਦੇ। ਇਸਨੂੰ ``*name`` ਰੂਪ ਵਾਲੇ formal " +"parameter (ਜਿਸਦਾ ਵੇਰਵਾ ਅਗਲੇ subsection ਵਿੱਚ ਹੈ) ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ formal " +"parameter list ਤੋਂ ਵੱਧ positional arguments ਵਾਲਾ :ref:`tuple ` " +"ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ। (``*name`` ਹਮੇਸ਼ਾਂ ``**name`` ਤੋਂ ਪਹਿਲਾਂ ਆਉਣਾ ਚਾਹੀਦਾ ਹੈ।) ਉਦਾਹਰਨ ਲਈ, " +"ਜੇ ਅਸੀਂ function ਇਸ ਤਰ੍ਹਾਂ ਪਰਿਭਾਸ਼ਿਤ ਕਰੀਏ::" msgid "" "def cheeseshop(kind, *arguments, **keywords):\n" @@ -930,9 +1436,17 @@ msgid "" " for kw in keywords:\n" " print(kw, \":\", keywords[kw])" msgstr "" +"def cheeseshop(kind, *arguments, **keywords):\n" +" print(\"-- Do you have any\", kind, \"?\")\n" +" print(\"-- I'm sorry, we're all out of\", kind)\n" +" for arg in arguments:\n" +" print(arg)\n" +" print(\"-\" * 40)\n" +" for kw in keywords:\n" +" print(kw, \":\", keywords[kw])" msgid "It could be called like this::" -msgstr "" +msgstr "ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" "cheeseshop(\"Limburger\", \"It's very runny, sir.\",\n" @@ -941,9 +1455,14 @@ msgid "" " client=\"John Cleese\",\n" " sketch=\"Cheese Shop Sketch\")" msgstr "" +"cheeseshop(\"Limburger\", \"It's very runny, sir.\",\n" +" \"It's really very, VERY runny, sir.\",\n" +" shopkeeper=\"Michael Palin\",\n" +" client=\"John Cleese\",\n" +" sketch=\"Cheese Shop Sketch\")" msgid "and of course it would print:" -msgstr "" +msgstr "ਅਤੇ ਬੇਸ਼ੱਕ ਇਹ ਇਹ ਪ੍ਰਿੰਟ ਕਰੇਗਾ:" msgid "" "-- Do you have any Limburger ?\n" @@ -955,14 +1474,24 @@ msgid "" "client : John Cleese\n" "sketch : Cheese Shop Sketch" msgstr "" +"-- Do you have any Limburger ?\n" +"-- I'm sorry, we're all out of Limburger\n" +"It's very runny, sir.\n" +"It's really very, VERY runny, sir.\n" +"----------------------------------------\n" +"shopkeeper : Michael Palin\n" +"client : John Cleese\n" +"sketch : Cheese Shop Sketch" msgid "" "Note that the order in which the keyword arguments are printed is guaranteed " "to match the order in which they were provided in the function call." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ keyword arguments ਜਿਸ ਕ੍ਰਮ ਵਿੱਚ ਪ੍ਰਿੰਟ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਉਹਨਾਂ ਦਾ ਕ੍ਰਮ " +"function call ਵਿੱਚ ਦਿੱਤੇ ਗਏ ਕ੍ਰਮ ਦੇ ਨਾਲ ਮਿਲਣ ਦੀ ਗਾਰੰਟੀ ਹੁੰਦੀ ਹੈ।" msgid "Special parameters" -msgstr "" +msgstr "ਖਾਸ ਪੈਰਾਮੀਟਰ" msgid "" "By default, arguments may be passed to a Python function either by position " @@ -971,9 +1500,14 @@ msgid "" "at the function definition to determine if items are passed by position, by " "position or keyword, or by keyword." msgstr "" +"ਮੂਲ ਰੂਪ ਵਿੱਚ arguments ਨੂੰ Python function ਵਿੱਚ positional ਤਰੀਕੇ ਨਾਲ ਜਾਂ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ " +"keyword ਰਾਹੀਂ ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਪੜ੍ਹਨਯੋਗਤਾ ਅਤੇ ਕਾਰਗੁਜ਼ਾਰੀ ਲਈ ਇਹ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਕਿ " +"arguments ਪਾਸ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨੂੰ ਸੀਮਿਤ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ ਜੋ developer ਸਿਰਫ਼ function " +"definition ਵੇਖ ਕੇ ਸਮਝ ਸਕੇ ਕਿ items positional ਹਨ, positional ਜਾਂ keyword ਹਨ, ਜਾਂ " +"ਸਿਰਫ਼ keyword ਹਨ।" msgid "A function definition may look like:" -msgstr "" +msgstr "ਕਿਸੇ function ਦੀ ਪਰਿਭਾਸ਼ਾ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖ ਸਕਦੀ ਹੈ:" msgid "" "def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):\n" @@ -983,6 +1517,12 @@ msgid "" " | - Keyword only\n" " -- Positional only" msgstr "" +"def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):\n" +" ----------- ---------- ----------\n" +" | | |\n" +" | Positional or keyword |\n" +" | - Keyword only\n" +" -- Positional only" msgid "" "where ``/`` and ``*`` are optional. If used, these symbols indicate the kind " @@ -990,17 +1530,23 @@ msgid "" "only, positional-or-keyword, and keyword-only. Keyword parameters are also " "referred to as named parameters." msgstr "" +"ਇੱਥੇ ``/`` ਅਤੇ ``*`` ਵਿਕਲਪਿਕ ਹਨ। ਜੇ ਇਹ ਵਰਤੇ ਜਾਣ, ਤਾਂ ਇਹ ਚਿੰਨ੍ਹ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ " +"arguments function ਨੂੰ ਕਿਵੇਂ ਪਾਸ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ: ਕੇਵਲ positional, positional ਜਾਂ " +"keyword, ਅਤੇ ਕੇਵਲ keyword। Keyword parameters ਨੂੰ named parameters ਵੀ ਕਿਹਾ ਜਾਂਦਾ " +"ਹੈ।" msgid "Positional-or-Keyword Arguments" -msgstr "" +msgstr "Positional ਜਾਂ Keyword ਆਰਗਿਊਮੈਂਟ" msgid "" "If ``/`` and ``*`` are not present in the function definition, arguments may " "be passed to a function by position or by keyword." msgstr "" +"ਜੇ function definition ਵਿੱਚ ``/`` ਅਤੇ ``*`` ਮੌਜੂਦ ਨਾ ਹੋਣ, ਤਾਂ arguments ਨੂੰ function " +"ਵਿੱਚ positional ਜਾਂ keyword ਦੋਵੇਂ ਤਰੀਕਿਆਂ ਨਾਲ ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "Positional-Only Parameters" -msgstr "" +msgstr "ਕੇਵਲ Positional ਪੈਰਾਮੀਟਰ" msgid "" "Looking at this in a bit more detail, it is possible to mark certain " @@ -1011,28 +1557,41 @@ msgid "" "parameters. If there is no ``/`` in the function definition, there are no " "positional-only parameters." msgstr "" +"ਇਸਨੂੰ ਥੋੜ੍ਹੇ ਹੋਰ ਵਿਸਥਾਰ ਨਾਲ ਵੇਖੀਏ ਤਾਂ ਕੁਝ parameters ਨੂੰ *positional-only* ਵਜੋਂ ਚਿੰਨ੍ਹਿਤ " +"ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਜੇ parameter *positional-only* ਹੋਵੇ, ਤਾਂ ਉਸਦਾ ਕ੍ਰਮ ਮਹੱਤਵ ਰੱਖਦਾ ਹੈ ਅਤੇ " +"ਉਸਨੂੰ keyword ਰਾਹੀਂ ਪਾਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। Positional-only parameters ਨੂੰ ``/`` " +"(forward-slash) ਤੋਂ ਪਹਿਲਾਂ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ। ``/`` positional-only parameters ਨੂੰ ਬਾਕੀ " +"parameters ਤੋਂ ਤਰਕਸੰਗਤ ਤੌਰ 'ਤੇ ਵੱਖ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਜੇ function definition ਵਿੱਚ " +"``/`` ਨਾ ਹੋਵੇ, ਤਾਂ ਕੋਈ positional-only parameter ਨਹੀਂ ਹੁੰਦਾ।" msgid "" "Parameters following the ``/`` may be *positional-or-keyword* or *keyword-" "only*." msgstr "" +"``/`` ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲੇ parameters *positional-or-keyword* ਜਾਂ *keyword-only* ਹੋ " +"ਸਕਦੇ ਹਨ।" msgid "Keyword-Only Arguments" -msgstr "" +msgstr "ਕੇਵਲ Keyword ਆਰਗਿਊਮੈਂਟ" msgid "" "To mark parameters as *keyword-only*, indicating the parameters must be " "passed by keyword argument, place an ``*`` in the arguments list just before " "the first *keyword-only* parameter." msgstr "" +"Parameters ਨੂੰ *keyword-only* ਵਜੋਂ ਚਿੰਨ੍ਹਿਤ ਕਰਨ ਲਈ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ ਉਹ keyword " +"argument ਰਾਹੀਂ ਹੀ ਪਾਸ ਕੀਤੇ ਜਾਣ, arguments list ਵਿੱਚ ਪਹਿਲੇ *keyword-only* " +"parameter ਤੋਂ ਠੀਕ ਪਹਿਲਾਂ ``*`` ਰੱਖੋ।" msgid "Function Examples" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਉਦਾਹਰਨਾਂ" msgid "" "Consider the following example function definitions paying close attention " "to the markers ``/`` and ``*``::" msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨ function definitions ਨੂੰ ਵੇਖੋ ਅਤੇ ``/`` ਅਤੇ ``*`` ਚਿੰਨ੍ਹਾਂ ਉੱਤੇ ਖ਼ਾਸ " +"ਧਿਆਨ ਦਿਓ::" msgid "" ">>> def standard_arg(arg):\n" @@ -1047,12 +1606,26 @@ msgid "" ">>> def combined_example(pos_only, /, standard, *, kwd_only):\n" "... print(pos_only, standard, kwd_only)" msgstr "" +">>> def standard_arg(arg):\n" +"... print(arg)\n" +"...\n" +">>> def pos_only_arg(arg, /):\n" +"... print(arg)\n" +"...\n" +">>> def kwd_only_arg(*, arg):\n" +"... print(arg)\n" +"...\n" +">>> def combined_example(pos_only, /, standard, *, kwd_only):\n" +"... print(pos_only, standard, kwd_only)" msgid "" "The first function definition, ``standard_arg``, the most familiar form, " "places no restrictions on the calling convention and arguments may be passed " "by position or keyword::" msgstr "" +"ਪਹਿਲੀ function definition ``standard_arg`` ਸਭ ਤੋਂ ਜਾਣੀ-ਪਹਿਚਾਣੀ ਰੂਪ-ਰੇਖਾ ਹੈ। ਇਹ " +"calling convention ਉੱਤੇ ਕੋਈ ਪਾਬੰਦੀ ਨਹੀਂ ਲਗਾਉਂਦੀ ਅਤੇ arguments ਨੂੰ positional ਜਾਂ " +"keyword ਦੋਵੇਂ ਤਰੀਕਿਆਂ ਨਾਲ ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> standard_arg(2)\n" @@ -1061,11 +1634,18 @@ msgid "" ">>> standard_arg(arg=2)\n" "2" msgstr "" +">>> standard_arg(2)\n" +"2\n" +"\n" +">>> standard_arg(arg=2)\n" +"2" msgid "" "The second function ``pos_only_arg`` is restricted to only use positional " "parameters as there is a ``/`` in the function definition::" msgstr "" +"ਦੂਜੀ function ``pos_only_arg`` ਸਿਰਫ਼ positional parameters ਦੀ ਵਰਤੋਂ ਤੱਕ ਸੀਮਿਤ ਹੈ " +"ਕਿਉਂਕਿ ਇਸਦੀ function definition ਵਿੱਚ ``/`` ਮੌਜੂਦ ਹੈ::" msgid "" ">>> pos_only_arg(1)\n" @@ -1077,11 +1657,21 @@ msgid "" "TypeError: pos_only_arg() got some positional-only arguments passed as " "keyword arguments: 'arg'" msgstr "" +">>> pos_only_arg(1)\n" +"1\n" +"\n" +">>> pos_only_arg(arg=1)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: pos_only_arg() got some positional-only arguments passed as " +"keyword arguments: 'arg'" msgid "" "The third function ``kwd_only_arg`` only allows keyword arguments as " "indicated by a ``*`` in the function definition::" msgstr "" +"ਤੀਜੀ function ``kwd_only_arg`` ਸਿਰਫ਼ keyword arguments ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ " +"function definition ਵਿੱਚ ਮੌਜੂਦ ``*`` ਦਰਸਾਉਂਦਾ ਹੈ::" msgid "" ">>> kwd_only_arg(3)\n" @@ -1092,11 +1682,20 @@ msgid "" ">>> kwd_only_arg(arg=3)\n" "3" msgstr "" +">>> kwd_only_arg(3)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: kwd_only_arg() takes 0 positional arguments but 1 was given\n" +"\n" +">>> kwd_only_arg(arg=3)\n" +"3" msgid "" "And the last uses all three calling conventions in the same function " "definition::" msgstr "" +"ਅਤੇ ਆਖਰੀ function ਇੱਕੋ function definition ਵਿੱਚ ਤਿੰਨਾਂ calling conventions ਦੀ ਵਰਤੋਂ " +"ਕਰਦੀ ਹੈ::" msgid "" ">>> combined_example(1, 2, 3)\n" @@ -1116,22 +1715,44 @@ msgid "" "TypeError: combined_example() got some positional-only arguments passed as " "keyword arguments: 'pos_only'" msgstr "" +">>> combined_example(1, 2, 3)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: combined_example() takes 2 positional arguments but 3 were given\n" +"\n" +">>> combined_example(1, 2, kwd_only=3)\n" +"1 2 3\n" +"\n" +">>> combined_example(1, standard=2, kwd_only=3)\n" +"1 2 3\n" +"\n" +">>> combined_example(pos_only=1, standard=2, kwd_only=3)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: combined_example() got some positional-only arguments passed as " +"keyword arguments: 'pos_only'" msgid "" "Finally, consider this function definition which has a potential collision " "between the positional argument ``name`` and ``**kwds`` which has ``name`` " "as a key::" msgstr "" +"ਅੰਤ ਵਿੱਚ, ਇਸ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾ ਨੂੰ ਵੇਖੋ ਜਿਸ ਵਿੱਚ ਸਥਾਨ-ਅਧਾਰਿਤ ਦਲੀਲ ``name`` ਅਤੇ " +"``**kwds``, ਜਿਸ ਵਿੱਚ ``name`` ਇੱਕ ਕੁੰਜੀ ਹੈ, ਵਿਚਕਾਰ ਸੰਭਾਵੀ ਟਕਰਾਅ ਹੈ::" msgid "" "def foo(name, **kwds):\n" " return 'name' in kwds" msgstr "" +"def foo(name, **kwds):\n" +" return 'name' in kwds" msgid "" "There is no possible call that will make it return ``True`` as the keyword " "``'name'`` will always bind to the first parameter. For example::" msgstr "" +"ਅਜਿਹੀ ਕੋਈ call ਸੰਭਵ ਨਹੀਂ ਜੋ ਇਸਨੂੰ ``True`` ਵਾਪਸ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰੇ, ਕਿਉਂਕਿ keyword " +"``'name'`` ਹਮੇਸ਼ਾਂ ਪਹਿਲੇ parameter ਨਾਲ bind ਹੋ ਜਾਵੇਗਾ। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> foo(1, **{'name': 2})\n" @@ -1140,12 +1761,20 @@ msgid "" "TypeError: foo() got multiple values for argument 'name'\n" ">>>" msgstr "" +">>> foo(1, **{'name': 2})\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: foo() got multiple values for argument 'name'\n" +">>>" msgid "" "But using ``/`` (positional only arguments), it is possible since it allows " "``name`` as a positional argument and ``'name'`` as a key in the keyword " "arguments::" msgstr "" +"ਪਰ ``/`` (ਕੇਵਲ positional arguments) ਦੀ ਵਰਤੋਂ ਨਾਲ ਇਹ ਸੰਭਵ ਹੈ, ਕਿਉਂਕਿ ਇਹ ``name`` ਨੂੰ " +"positional argument ਵਜੋਂ ਅਤੇ ``'name'`` ਨੂੰ keyword arguments ਵਿੱਚ key ਵਜੋਂ ਵਰਤਣ ਦੀ " +"ਆਗਿਆ ਦਿੰਦਾ ਹੈ::" msgid "" ">>> def foo(name, /, **kwds):\n" @@ -1154,25 +1783,34 @@ msgid "" ">>> foo(1, **{'name': 2})\n" "True" msgstr "" +">>> def foo(name, /, **kwds):\n" +"... return 'name' in kwds\n" +"...\n" +">>> foo(1, **{'name': 2})\n" +"True" msgid "" "In other words, the names of positional-only parameters can be used in " "``**kwds`` without ambiguity." msgstr "" +"ਦੂਜੇ ਸ਼ਬਦਾਂ ਵਿੱਚ, positional-only parameters ਦੇ ਨਾਮ ``**kwds`` ਵਿੱਚ ਬਿਨਾਂ ਕਿਸੇ " +"ਅਸਪਸ਼ਟਤਾ ਦੇ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ।" msgid "Recap" -msgstr "" +msgstr "ਸੰਖੇਪ ਪੁਨਰਾਵਲੋਕਨ" msgid "" "The use case will determine which parameters to use in the function " "definition::" msgstr "" +"ਵਰਤੋਂ ਦੀ ਲੋੜ ਇਹ ਨਿਰਧਾਰਤ ਕਰੇਗੀ ਕਿ function definition ਵਿੱਚ ਕਿਹੜੇ parameters ਵਰਤਣੇ " +"ਹਨ::" msgid "def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):" -msgstr "" +msgstr "def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):" msgid "As guidance:" -msgstr "" +msgstr "ਮਾਰਗਦਰਸ਼ਨ ਵਜੋਂ:" msgid "" "Use positional-only if you want the name of the parameters to not be " @@ -1181,20 +1819,29 @@ msgid "" "is called or if you need to take some positional parameters and arbitrary " "keywords." msgstr "" +"ਜੇ ਤੁਸੀਂ ਚਾਹੁੰਦੇ ਹੋ ਕਿ parameters ਦੇ ਨਾਮ ਵਰਤੋਂਕਾਰ ਲਈ ਉਪਲਬਧ ਨਾ ਹੋਣ, ਤਾਂ positional-only " +"parameters ਵਰਤੋ। ਇਹ ਉਸ ਵੇਲੇ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ ਜਦੋਂ parameter names ਦਾ ਕੋਈ ਖ਼ਾਸ ਅਰਥ ਨਾ " +"ਹੋਵੇ, ਜਦੋਂ ਤੁਸੀਂ function call ਦੌਰਾਨ arguments ਦੇ ਕ੍ਰਮ ਨੂੰ ਲਾਜ਼ਮੀ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਜਾਂ ਜਦੋਂ " +"ਤੁਹਾਨੂੰ ਕੁਝ positional parameters ਅਤੇ ਮਨਮਾਨੇ keywords ਸਵੀਕਾਰ ਕਰਨੇ ਹੋਣ।" msgid "" "Use keyword-only when names have meaning and the function definition is more " "understandable by being explicit with names or you want to prevent users " "relying on the position of the argument being passed." msgstr "" +"ਜਦੋਂ names ਦਾ ਅਰਥਪੂਰਨ ਮਹੱਤਵ ਹੋਵੇ ਅਤੇ function definition ਨਾਮਾਂ ਨੂੰ ਸਪਸ਼ਟ ਰੱਖਣ ਨਾਲ ਹੋਰ " +"ਸਮਝਣਯੋਗ ਬਣਦੀ ਹੋਵੇ, ਜਾਂ ਤੁਸੀਂ ਵਰਤੋਂਕਾਰਾਂ ਨੂੰ arguments ਦੀ position ਉੱਤੇ ਨਿਰਭਰ ਕਰਨ ਤੋਂ ਰੋਕਣਾ " +"ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ keyword-only parameters ਵਰਤੋ।" msgid "" "For an API, use positional-only to prevent breaking API changes if the " "parameter's name is modified in the future." msgstr "" +"ਕਿਸੇ API ਲਈ positional-only parameters ਵਰਤੋ ਤਾਂ ਜੋ ਭਵਿੱਖ ਵਿੱਚ parameter ਦਾ ਨਾਮ " +"ਬਦਲਣ ਨਾਲ API ਦੀ ਅਨੁਕੂਲਤਾ ਨਾ ਟੁੱਟੇ।" msgid "Arbitrary Argument Lists" -msgstr "" +msgstr "ਮਨਮਾਨੀਆਂ ਆਰਗਿਊਮੈਂਟ ਸੂਚੀਆਂ" msgid "" "Finally, the least frequently used option is to specify that a function can " @@ -1202,11 +1849,17 @@ msgid "" "wrapped up in a tuple (see :ref:`tut-tuples`). Before the variable number " "of arguments, zero or more normal arguments may occur. ::" msgstr "" +"ਅੰਤ ਵਿੱਚ, ਸਭ ਤੋਂ ਘੱਟ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਵਿਕਲਪ ਇਹ ਹੈ ਕਿ function ਨੂੰ ਮਨਮਾਨੀ ਗਿਣਤੀ ਦੇ " +"arguments ਨਾਲ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕੇ। ਇਹ arguments ਇੱਕ tuple ਵਿੱਚ ਸਮੇਟੇ ਜਾਂਦੇ ਹਨ " +"(ਵੇਖੋ :ref:`tut-tuples`)। Variable ਗਿਣਤੀ ਵਾਲੇ arguments ਤੋਂ ਪਹਿਲਾਂ ਸ਼ੂਨ੍ਯ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ " +"ਆਮ arguments ਹੋ ਸਕਦੇ ਹਨ. ::" msgid "" "def write_multiple_items(file, separator, *args):\n" " file.write(separator.join(args))" msgstr "" +"def write_multiple_items(file, separator, *args):\n" +" file.write(separator.join(args))" msgid "" "Normally, these *variadic* arguments will be last in the list of formal " @@ -1215,6 +1868,11 @@ msgid "" "``*args`` parameter are 'keyword-only' arguments, meaning that they can only " "be used as keywords rather than positional arguments. ::" msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ ਇਹ *variadic* arguments formal parameters ਦੀ ਸੂਚੀ ਦੇ ਅੰਤ ਵਿੱਚ ਹੁੰਦੇ ਹਨ, " +"ਕਿਉਂਕਿ ਇਹ function ਨੂੰ ਪਾਸ ਕੀਤੇ ਗਏ ਸਾਰੇ ਬਾਕੀ input arguments ਨੂੰ ਇਕੱਠਾ ਕਰ ਲੈਂਦੇ ਹਨ। " +"``*args`` parameter ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲੇ ਸਾਰੇ formal parameters 'keyword-only' ਹੁੰਦੇ " +"ਹਨ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ ਉਹਨਾਂ ਨੂੰ ਸਿਰਫ਼ keywords ਵਜੋਂ ਹੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, positional " +"arguments ਵਜੋਂ ਨਹੀਂ। ::" msgid "" ">>> def concat(*args, sep=\"/\"):\n" @@ -1225,9 +1883,16 @@ msgid "" ">>> concat(\"earth\", \"mars\", \"venus\", sep=\".\")\n" "'earth.mars.venus'" msgstr "" +">>> def concat(*args, sep=\"/\"):\n" +"... return sep.join(args)\n" +"...\n" +">>> concat(\"earth\", \"mars\", \"venus\")\n" +"'earth/mars/venus'\n" +">>> concat(\"earth\", \"mars\", \"venus\", sep=\".\")\n" +"'earth.mars.venus'" msgid "Unpacking Argument Lists" -msgstr "" +msgstr "ਆਰਗਿਊਮੈਂਟ ਸੂਚੀਆਂ ਦਾ Unpacking" msgid "" "The reverse situation occurs when the arguments are already in a list or " @@ -1237,6 +1902,11 @@ msgid "" "separately, write the function call with the ``*``\\ -operator to unpack " "the arguments out of a list or tuple::" msgstr "" +"ਉਲਟੀ ਸਥਿਤੀ ਉਸ ਵੇਲੇ ਹੁੰਦੀ ਹੈ ਜਦੋਂ arguments ਪਹਿਲਾਂ ਹੀ ਕਿਸੇ list ਜਾਂ tuple ਵਿੱਚ ਹੋਣ, ਪਰ " +"ਉਹਨਾਂ ਨੂੰ ਵੱਖਰੇ positional arguments ਦੀ ਲੋੜ ਵਾਲੀ function call ਲਈ unpack ਕਰਨਾ ਪਵੇ। " +"ਉਦਾਹਰਨ ਵਜੋਂ built-in :func:`range` function ਵੱਖਰੇ *start* ਅਤੇ *stop* arguments ਦੀ " +"ਉਮੀਦ ਕਰਦਾ ਹੈ। ਜੇ ਉਹ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਉਪਲਬਧ ਨਾ ਹੋਣ, ਤਾਂ list ਜਾਂ tuple ਵਿੱਚੋਂ arguments ਨੂੰ " +"unpack ਕਰਨ ਲਈ ``*`` operator ਵਰਤੋ::" msgid "" ">>> list(range(3, 6)) # normal call with separate arguments\n" @@ -1246,11 +1916,19 @@ msgid "" "list\n" "[3, 4, 5]" msgstr "" +">>> list(range(3, 6)) # normal call with separate arguments\n" +"[3, 4, 5]\n" +">>> args = [3, 6]\n" +">>> list(range(*args)) # call with arguments unpacked from a " +"list\n" +"[3, 4, 5]" msgid "" "In the same fashion, dictionaries can deliver keyword arguments with the " "``**``\\ -operator::" msgstr "" +"ਇਸੇ ਤਰ੍ਹਾਂ dictionaries ਵੀ ``**`` operator ਦੀ ਮਦਦ ਨਾਲ keyword arguments ਪ੍ਰਦਾਨ " +"ਕਰ ਸਕਦੀਆਂ ਹਨ::" msgid "" ">>> def parrot(voltage, state='a stiff', action='voom'):\n" @@ -1264,9 +1942,19 @@ msgid "" "-- This parrot wouldn't VOOM if you put four million volts through it. E's " "bleedin' demised !" msgstr "" +">>> def parrot(voltage, state='a stiff', action='voom'):\n" +"... print(\"-- This parrot wouldn't\", action, end=' ')\n" +"... print(\"if you put\", voltage, \"volts through it.\", end=' ')\n" +"... print(\"E's\", state, \"!\")\n" +"...\n" +">>> d = {\"voltage\": \"four million\", \"state\": \"bleedin' demised\", " +"\"action\": \"VOOM\"}\n" +">>> parrot(**d)\n" +"-- This parrot wouldn't VOOM if you put four million volts through it. E's " +"bleedin' demised !" msgid "Lambda Expressions" -msgstr "" +msgstr "Lambda ਐਕਸਪ੍ਰੈਸ਼ਨ" msgid "" "Small anonymous functions can be created with the :keyword:`lambda` keyword. " @@ -1277,6 +1965,12 @@ msgid "" "definitions, lambda functions can reference variables from the containing " "scope::" msgstr "" +"ਛੋਟੇ anonymous functions ਨੂੰ :keyword:`lambda` keyword ਦੀ ਵਰਤੋਂ ਨਾਲ ਬਣਾਇਆ ਜਾ ਸਕਦਾ " +"ਹੈ। ਇਹ function ਆਪਣੇ ਦੋ arguments ਦਾ ਜੋੜ ਵਾਪਸ ਕਰਦਾ ਹੈ: ``lambda a, b: a+b``। " +"Lambda functions ਨੂੰ ਉੱਥੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿੱਥੇ function objects ਦੀ ਲੋੜ ਹੋਵੇ। Syntax " +"ਦੇ ਹਿਸਾਬ ਨਾਲ ਇਹ ਇੱਕ ਹੀ expression ਤੱਕ ਸੀਮਿਤ ਹੁੰਦੇ ਹਨ। ਅਰਥਾਤ, ਇਹ ਆਮ function " +"definition ਲਈ ਇੱਕ ਸੁਵਿਧਾਜਨਕ shorthand ਹਨ। Nested function definitions ਦੀ ਤਰ੍ਹਾਂ, " +"lambda functions ਵੀ enclosing scope ਦੇ variables ਨੂੰ reference ਕਰ ਸਕਦੇ ਹਨ::" msgid "" ">>> def make_incrementor(n):\n" @@ -1288,12 +1982,25 @@ msgid "" ">>> f(1)\n" "43" msgstr "" +">>> def make_incrementor(n):\n" +"... return lambda x: x + n\n" +"...\n" +">>> f = make_incrementor(42)\n" +">>> f(0)\n" +"42\n" +">>> f(1)\n" +"43" msgid "" "The above example uses a lambda expression to return a function. Another " -"use is to pass a small function as an argument. For instance, :meth:`list." -"sort` takes a sorting key function *key* which can be a lambda function::" +"use is to pass a small function as an argument. For " +"instance, :meth:`list.sort` takes a sorting key function *key* which can be " +"a lambda function::" msgstr "" +"ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਵਿੱਚ ਇੱਕ lambda expression ਦੀ ਵਰਤੋਂ function ਵਾਪਸ ਕਰਨ ਲਈ ਕੀਤੀ ਗਈ ਹੈ। " +"ਇਸਦੀ ਇੱਕ ਹੋਰ ਵਰਤੋਂ ਇੱਕ ਛੋਟੇ function ਨੂੰ argument ਵਜੋਂ ਪਾਸ ਕਰਨਾ ਹੈ। ਉਦਾਹਰਨ " +"ਲਈ, :meth:`list.sort` ਇੱਕ sorting key function *key* ਲੈਂਦਾ ਹੈ ਜੋ lambda function " +"ਹੋ ਸਕਦਾ ਹੈ::" msgid "" ">>> pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]\n" @@ -1301,14 +2008,18 @@ msgid "" ">>> pairs\n" "[(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]" msgstr "" +">>> pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]\n" +">>> pairs.sort(key=lambda pair: pair[1])\n" +">>> pairs\n" +"[(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]" msgid "Documentation Strings" -msgstr "" +msgstr "ਡਾਕੂਮੈਂਟੇਸ਼ਨ ਸਟ੍ਰਿੰਗਾਂ" msgid "" "Here are some conventions about the content and formatting of documentation " "strings." -msgstr "" +msgstr "ਡਾਕੂਮੈਂਟੇਸ਼ਨ ਸਟ੍ਰਿੰਗਾਂ ਦੀ ਸਮੱਗਰੀ ਅਤੇ ਫਾਰਮੈਟਿੰਗ ਬਾਰੇ ਕੁਝ ਆਮ ਪਰੰਪਰਾਵਾਂ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਗਈਆਂ ਹਨ।" msgid "" "The first line should always be a short, concise summary of the object's " @@ -1317,6 +2028,11 @@ msgid "" "to be a verb describing a function's operation). This line should begin " "with a capital letter and end with a period." msgstr "" +"ਪਹਿਲੀ ਲਾਈਨ ਹਮੇਸ਼ਾਂ object ਦੇ ਉਦੇਸ਼ ਦਾ ਇੱਕ ਛੋਟਾ ਅਤੇ ਸੰਖੇਪ ਸਾਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਸੰਖੇਪਤਾ ਲਈ ਇਸ " +"ਵਿੱਚ object ਦਾ ਨਾਮ ਜਾਂ type ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਨਹੀਂ ਦੱਸਣਾ ਚਾਹੀਦਾ, ਕਿਉਂਕਿ ਇਹ ਜਾਣਕਾਰੀ ਹੋਰ " +"ਤਰੀਕਿਆਂ ਨਾਲ ਉਪਲਬਧ ਹੁੰਦੀ ਹੈ (ਸਿਵਾਏ ਉਸ ਸਥਿਤੀ ਦੇ ਜਦੋਂ ਨਾਮ ਕਿਸੇ function ਦੀ ਕਾਰਵਾਈ ਨੂੰ " +"ਦਰਸਾਉਣ ਵਾਲਾ verb ਹੋਵੇ)। ਇਹ ਲਾਈਨ ਵੱਡੇ ਅੱਖਰ ਨਾਲ ਸ਼ੁਰੂ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਅਤੇ period ਨਾਲ ਸਮਾਪਤ " +"ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ।" msgid "" "If there are more lines in the documentation string, the second line should " @@ -1324,14 +2040,20 @@ msgid "" "The following lines should be one or more paragraphs describing the object's " "calling conventions, its side effects, etc." msgstr "" +"ਜੇ documentation string ਵਿੱਚ ਹੋਰ ਲਾਈਨਾਂ ਹਨ, ਤਾਂ ਦੂਜੀ ਲਾਈਨ ਖਾਲੀ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਤਾਂ ਜੋ " +"summary ਅਤੇ ਬਾਕੀ ਵੇਰਵੇ ਵਿਚਕਾਰ ਸਪਸ਼ਟ ਵੱਖਰਾ ਦਿਸੇ। ਇਸ ਤੋਂ ਬਾਅਦ ਵਾਲੀਆਂ ਲਾਈਨਾਂ ਵਿੱਚ ਇੱਕ ਜਾਂ ਵੱਧ " +"paragraphs ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ ਜੋ object ਦੀ calling conventions, side effects ਅਤੇ ਹੋਰ " +"ਵੇਰਵਿਆਂ ਦਾ ਵਰਣਨ ਕਰਨ।" msgid "" "The Python parser strips indentation from multi-line string literals when " "they serve as module, class, or function docstrings." msgstr "" +"ਜਦੋਂ multi-line string literals module, class ਜਾਂ function docstrings ਵਜੋਂ ਵਰਤੇ " +"ਜਾਂਦੇ ਹਨ, ਤਾਂ Python parser ਉਹਨਾਂ ਵਿਚੋਂ indentation ਹਟਾ ਦਿੰਦਾ ਹੈ।" msgid "Here is an example of a multi-line docstring::" -msgstr "" +msgstr "ਇੱਥੇ ਇੱਕ multi-line docstring ਦੀ ਉਦਾਹਰਨ ਹੈ::" msgid "" ">>> def my_function():\n" @@ -1352,26 +2074,56 @@ msgid "" " >>> my_function()\n" " >>>" msgstr "" +">>> def my_function():\n" +"... \"\"\"Do nothing, but document it.\n" +"...\n" +"... No, really, it doesn't do anything:\n" +"...\n" +"... >>> my_function()\n" +"... >>>\n" +"... \"\"\"\n" +"... pass\n" +"...\n" +">>> print(my_function.__doc__)\n" +"Do nothing, but document it.\n" +"\n" +"No, really, it doesn't do anything:\n" +"\n" +" >>> my_function()\n" +" >>>" msgid "Function Annotations" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਐਨੋਟੇਸ਼ਨ" msgid "" ":ref:`Function annotations ` are completely optional metadata " "information about the types used by user-defined functions (see :pep:`3107` " "and :pep:`484` for more information)." msgstr "" +":ref:`Function annotations ` ਵਰਤੋਂਕਾਰ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ functions ਵਿੱਚ " +"ਵਰਤੀਆਂ ਗਈਆਂ types ਬਾਰੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਵਿਕਲਪਿਕ metadata ਜਾਣਕਾਰੀ ਹੁੰਦੀ ਹੈ (ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :pep:`3107` ਅਤੇ :pep:`484` ਵੇਖੋ)।" msgid "" -":term:`Annotations ` are stored in the :attr:`~object." -"__annotations__` attribute of the function as a dictionary and have no " -"effect on any other part of the function. Parameter annotations are defined " -"by a colon after the parameter name, followed by an expression evaluating to " -"the value of the annotation. Return annotations are defined by a literal ``-" -">``, followed by an expression, between the parameter list and the colon " -"denoting the end of the :keyword:`def` statement. The following example has " -"a required argument, an optional argument, and the return value annotated::" +":term:`Annotations ` are stored in " +"the :attr:`~object.__annotations__` attribute of the function as a " +"dictionary and have no effect on any other part of the function. Parameter " +"annotations are defined by a colon after the parameter name, followed by an " +"expression evaluating to the value of the annotation. Return annotations " +"are defined by a literal ``->``, followed by an expression, between the " +"parameter list and the colon denoting the end of the :keyword:`def` " +"statement. The following example has a required argument, an optional " +"argument, and the return value annotated::" msgstr "" +":term:`Annotations ` function " +"ਦੇ :attr:`~object.__annotations__` attribute ਵਿੱਚ dictionary ਦੇ ਰੂਪ ਵਿੱਚ ਸੰਭਾਲੀਆਂ " +"ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ function ਦੇ ਕਿਸੇ ਹੋਰ ਹਿੱਸੇ ਉੱਤੇ ਕੋਈ ਪ੍ਰਭਾਵ ਨਹੀਂ ਪਾਂਦੀਆਂ। Parameter " +"annotations parameter ਦੇ ਨਾਮ ਤੋਂ ਬਾਅਦ colon ਲਗਾ ਕੇ ਅਤੇ annotation ਦੇ ਮੁੱਲ ਵਿੱਚ " +"evaluate ਹੋਣ ਵਾਲੀ expression ਦੇ ਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। Return annotations " +"ਨੂੰ literal ``->`` ਰਾਹੀਂ, parameter list ਅਤੇ :keyword:`def` statement ਦੇ ਅੰਤ ਨੂੰ " +"ਦਰਸਾਉਣ ਵਾਲੇ colon ਦੇ ਵਿਚਕਾਰ, ਇੱਕ expression ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੀ " +"ਉਦਾਹਰਨ ਵਿੱਚ ਇੱਕ ਲਾਜ਼ਮੀ argument, ਇੱਕ ਵਿਕਲਪਿਕ argument ਅਤੇ return value annotated " +"ਹਨ::" msgid "" ">>> def f(ham: str, eggs: str = 'eggs') -> str:\n" @@ -1385,9 +2137,19 @@ msgid "" "Arguments: spam eggs\n" "'spam and eggs'" msgstr "" +">>> def f(ham: str, eggs: str = 'eggs') -> str:\n" +"... print(\"Annotations:\", f.__annotations__)\n" +"... print(\"Arguments:\", ham, eggs)\n" +"... return ham + ' and ' + eggs\n" +"...\n" +">>> f('spam')\n" +"Annotations: {'ham': , 'return': , 'eggs': }\n" +"Arguments: spam eggs\n" +"'spam and eggs'" msgid "Intermezzo: Coding Style" -msgstr "" +msgstr "ਵਿਚਕਾਰਲੀ ਚਰਚਾ: ਕੋਡਿੰਗ ਸ਼ੈਲੀ" msgid "" "Now that you are about to write longer, more complex pieces of Python, it is " @@ -1396,6 +2158,11 @@ msgid "" "than others. Making it easy for others to read your code is always a good " "idea, and adopting a nice coding style helps tremendously for that." msgstr "" +"ਹੁਣ ਜਦੋਂ ਤੁਸੀਂ Python ਦੇ ਹੋਰ ਲੰਬੇ ਅਤੇ ਜਟਿਲ ਪ੍ਰੋਗਰਾਮ ਲਿਖਣ ਵਾਲੇ ਹੋ, ਤਾਂ *coding style* ਬਾਰੇ ਗੱਲ " +"ਕਰਨ ਦਾ ਇਹ ਚੰਗਾ ਸਮਾਂ ਹੈ। ਬਹੁਤੀਆਂ ਭਾਸ਼ਾਵਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ styles ਵਿੱਚ ਲਿਖਿਆ (ਜਾਂ ਹੋਰ ਸੰਖੇਪ ਵਿੱਚ " +"ਕਹੀਏ ਤਾਂ format ਕੀਤਾ) ਜਾ ਸਕਦਾ ਹੈ; ਕੁਝ styles ਹੋਰਾਂ ਨਾਲੋਂ ਵੱਧ ਪੜ੍ਹਨਯੋਗ ਹੁੰਦੀਆਂ ਹਨ। ਆਪਣੇ " +"code ਨੂੰ ਹੋਰਾਂ ਲਈ ਪੜ੍ਹਨਾ ਆਸਾਨ ਬਣਾਉਣਾ ਹਮੇਸ਼ਾਂ ਚੰਗਾ ਵਿਚਾਰ ਹੈ, ਅਤੇ ਵਧੀਆ coding style " +"ਅਪਣਾਉਣ ਨਾਲ ਇਸ ਵਿੱਚ ਬਹੁਤ ਮਦਦ ਮਿਲਦੀ ਹੈ।" msgid "" "For Python, :pep:`8` has emerged as the style guide that most projects " @@ -1403,39 +2170,51 @@ msgid "" "Python developer should read it at some point; here are the most important " "points extracted for you:" msgstr "" +"Python ਲਈ :pep:`8` ਉਹ style guide ਬਣ ਚੁੱਕੀ ਹੈ ਜਿਸਦੀ ਬਹੁਤੇ projects ਪਾਲਣਾ ਕਰਦੇ ਹਨ; " +"ਇਹ ਬਹੁਤ ਪੜ੍ਹਨਯੋਗ ਅਤੇ ਸੁੰਦਰ coding style ਨੂੰ ਉਤਸ਼ਾਹਿਤ ਕਰਦੀ ਹੈ। ਹਰ Python developer ਨੂੰ " +"ਕਿਸੇ ਨਾ ਕਿਸੇ ਸਮੇਂ ਇਸਨੂੰ ਪੜ੍ਹਣਾ ਚਾਹੀਦਾ ਹੈ; ਹੇਠਾਂ ਤੁਹਾਡੇ ਲਈ ਇਸਦੇ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਬਿੰਦੂ ਦਿੱਤੇ ਗਏ ਹਨ:" msgid "Use 4-space indentation, and no tabs." -msgstr "" +msgstr "4 spaces ਦੀ indentation ਵਰਤੋ ਅਤੇ tabs ਨਾ ਵਰਤੋ।" msgid "" "4 spaces are a good compromise between small indentation (allows greater " "nesting depth) and large indentation (easier to read). Tabs introduce " "confusion, and are best left out." msgstr "" +"4 spaces ਛੋਟੀ indentation (ਜਿਸ ਨਾਲ ਵੱਧ nesting depth ਮਿਲਦੀ ਹੈ) ਅਤੇ ਵੱਡੀ " +"indentation (ਜਿਸ ਨਾਲ ਪੜ੍ਹਨਾ ਆਸਾਨ ਹੁੰਦਾ ਹੈ) ਵਿਚਕਾਰ ਇੱਕ ਵਧੀਆ ਸੰਤੁਲਨ ਹੈ। Tabs ਉਲਝਣ ਪੈਦਾ " +"ਕਰਦੀਆਂ ਹਨ, ਇਸ ਲਈ ਉਹਨਾਂ ਤੋਂ ਬਚਣਾ ਚੰਗਾ ਹੈ।" msgid "Wrap lines so that they don't exceed 79 characters." -msgstr "" +msgstr "ਲਾਈਨਾਂ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ wrap ਕਰੋ ਕਿ ਉਹ 79 ਅੱਖਰਾਂ ਤੋਂ ਵੱਧ ਨਾ ਜਾਣ।" msgid "" "This helps users with small displays and makes it possible to have several " "code files side-by-side on larger displays." msgstr "" +"ਇਸ ਨਾਲ ਛੋਟੀ ਸਕ੍ਰੀਨਾਂ ਵਾਲੇ ਵਰਤੋਂਕਾਰਾਂ ਨੂੰ ਮਦਦ ਮਿਲਦੀ ਹੈ ਅਤੇ ਵੱਡੀਆਂ ਸਕ੍ਰੀਨਾਂ ਉੱਤੇ ਕਈ code files " +"ਨੂੰ ਇਕੱਠੇ ਵੇਖਣਾ ਸੰਭਵ ਹੁੰਦਾ ਹੈ।" msgid "" "Use blank lines to separate functions and classes, and larger blocks of code " "inside functions." msgstr "" +"Functions ਅਤੇ classes ਨੂੰ ਵੱਖ ਕਰਨ ਲਈ ਖਾਲੀ ਲਾਈਨਾਂ ਵਰਤੋ, ਅਤੇ functions ਦੇ ਅੰਦਰ code ਦੇ " +"ਵੱਡੇ blocks ਨੂੰ ਵੀ ਖਾਲੀ ਲਾਈਨਾਂ ਨਾਲ ਵੱਖ ਕਰੋ।" msgid "When possible, put comments on a line of their own." -msgstr "" +msgstr "ਜਿੱਥੇ ਸੰਭਵ ਹੋਵੇ, comments ਨੂੰ ਉਹਨਾਂ ਦੀ ਆਪਣੀ ਲਾਈਨ ਉੱਤੇ ਲਿਖੋ।" msgid "Use docstrings." -msgstr "" +msgstr "Docstrings ਦੀ ਵਰਤੋਂ ਕਰੋ।" msgid "" "Use spaces around operators and after commas, but not directly inside " "bracketing constructs: ``a = f(1, 2) + g(3, 4)``." msgstr "" +"Operators ਦੇ ਆਲੇ-ਦੁਆਲੇ ਅਤੇ commas ਤੋਂ ਬਾਅਦ spaces ਵਰਤੋ, ਪਰ brackets ਦੇ ਅੰਦਰ ਸਿੱਧੇ space " +"ਨਾ ਦਿਓ: ``a = f(1, 2) + g(3, 4)``।" msgid "" "Name your classes and functions consistently; the convention is to use " @@ -1443,75 +2222,86 @@ msgid "" "functions and methods. Always use ``self`` as the name for the first method " "argument (see :ref:`tut-firstclasses` for more on classes and methods)." msgstr "" +"ਆਪਣੀਆਂ classes ਅਤੇ functions ਦੇ ਨਾਮ ਇਕਸਾਰ ਰੱਖੋ; ਰਵਾਇਤ ਅਨੁਸਾਰ classes ਲਈ " +"``UpperCamelCase`` ਅਤੇ functions ਅਤੇ methods ਲਈ ``lowercase_with_underscores`` " +"ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਪਹਿਲੇ method argument ਦਾ ਨਾਮ ਹਮੇਸ਼ਾਂ ``self`` ਰੱਖੋ (classes ਅਤੇ " +"methods ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-firstclasses` ਵੇਖੋ)।" msgid "" "Don't use fancy encodings if your code is meant to be used in international " "environments. Python's default, UTF-8, or even plain ASCII work best in any " "case." msgstr "" +"ਜੇ ਤੁਹਾਡਾ code ਅੰਤਰਰਾਸ਼ਟਰੀ ਮਾਹੌਲ ਵਿੱਚ ਵਰਤਿਆ ਜਾਣਾ ਹੈ ਤਾਂ ਜਟਿਲ encodings ਨਾ ਵਰਤੋ। " +"Python ਦਾ ਮੂਲ UTF-8 ਜਾਂ ਸਧਾਰਣ ASCII ਹਰ ਹਾਲਤ ਵਿੱਚ ਸਭ ਤੋਂ ਵਧੀਆ ਕੰਮ ਕਰਦੇ ਹਨ।" msgid "" "Likewise, don't use non-ASCII characters in identifiers if there is only the " "slightest chance people speaking a different language will read or maintain " "the code." msgstr "" +"ਇਸੇ ਤਰ੍ਹਾਂ, identifiers ਵਿੱਚ non-ASCII ਅੱਖਰਾਂ ਦੀ ਵਰਤੋਂ ਨਾ ਕਰੋ ਜੇ ਥੋੜ੍ਹੀ ਵੀ ਸੰਭਾਵਨਾ ਹੋਵੇ ਕਿ " +"ਵੱਖਰੀ ਭਾਸ਼ਾ ਬੋਲਣ ਵਾਲੇ ਲੋਕ code ਨੂੰ ਪੜ੍ਹਣ ਜਾਂ ਸੰਭਾਲਣਗੇ।" msgid "Footnotes" -msgstr "" +msgstr "ਫੁੱਟਨੋਟ" msgid "" "Actually, *call by object reference* would be a better description, since if " "a mutable object is passed, the caller will see any changes the callee makes " "to it (items inserted into a list)." msgstr "" +"ਅਸਲ ਵਿੱਚ *call by object reference* ਇਸਦੀ ਹੋਰ ਵਧੀਆ ਵਿਆਖਿਆ ਹੈ, ਕਿਉਂਕਿ ਜੇ ਕੋਈ mutable " +"object ਪਾਸ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ caller ਉਹ ਸਾਰੇ ਬਦਲਾਅ ਵੇਖੇਗਾ ਜੋ callee ਉਸ object ਵਿੱਚ ਕਰਦਾ " +"ਹੈ (ਜਿਵੇਂ list ਵਿੱਚ items ਸ਼ਾਮਲ ਕਰਨਾ)।" msgid "statement" -msgstr "" +msgstr "ਸਟੇਟਮੈਂਟ" msgid "for" -msgstr "" +msgstr "for" msgid "..." -msgstr "" +msgstr "..." msgid "ellipsis literal" -msgstr "" +msgstr "ellipsis literal" msgid "documentation strings" -msgstr "" +msgstr "ਡਾਕੂਮੈਂਟੇਸ਼ਨ ਸਟ੍ਰਿੰਗਾਂ" msgid "docstrings" -msgstr "" +msgstr "ਡਾਕਸਟ੍ਰਿੰਗਾਂ" msgid "strings, documentation" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗਾਂ, ਡਾਕੂਮੈਂਟੇਸ਼ਨ" msgid "* (asterisk)" -msgstr "" +msgstr "* (ਐਸਟਰਿਸਕ)" msgid "in function calls" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਕਾਲਾਂ ਵਿੱਚ" msgid "**" -msgstr "" +msgstr "**" msgid "function" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ" msgid "annotations" -msgstr "" +msgstr "ਐਨੋਟੇਸ਼ਨ" msgid "->" -msgstr "" +msgstr "->" msgid "function annotations" -msgstr "" +msgstr "ਫੰਕਸ਼ਨ ਐਨੋਟੇਸ਼ਨ" msgid ": (colon)" -msgstr "" +msgstr ": (ਕੋਲਨ)" msgid "coding" -msgstr "" +msgstr "ਕੋਡਿੰਗ" msgid "style" -msgstr "" +msgstr "ਸ਼ੈਲੀ" diff --git a/tutorial/datastructures.po b/tutorial/datastructures.po index 8b85eb8..4e4c753 100644 --- a/tutorial/datastructures.po +++ b/tutorial/datastructures.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,39 +23,50 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Data Structures" -msgstr "" +msgstr "ਡਾਟਾ ਸੰਰਚਨਾਵਾਂ" msgid "" "This chapter describes some things you've learned about already in more " "detail, and adds some new things as well." msgstr "" +"ਇਹ ਅਧਿਆਇ ਉਹਨਾਂ ਕੁਝ ਵਿਸ਼ਿਆਂ ਨੂੰ ਹੋਰ ਵਿਸਥਾਰ ਨਾਲ ਸਮਝਾਉਂਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਬਾਰੇ ਤੁਸੀਂ ਪਹਿਲਾਂ ਸਿੱਖ ਚੁੱਕੇ " +"ਹੋ, ਅਤੇ ਨਾਲ ਹੀ ਕੁਝ ਨਵੇਂ ਵਿਸ਼ੇ ਵੀ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ।" msgid "More on Lists" -msgstr "" +msgstr "ਲਿਸਟਾਂ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ" msgid "" "The :ref:`list ` data type has some more methods. Here are " "all of the methods of list objects:" msgstr "" +":ref:`list ` ਡਾਟਾ ਕਿਸਮ ਵਿੱਚ ਕੁਝ ਹੋਰ ਵਿਧੀਆਂ ਵੀ ਹਨ। ਹੇਠਾਂ ਲਿਸਟ ਆਬਜੈਕਟ " +"ਦੀਆਂ ਸਾਰੀਆਂ ਵਿਧੀਆਂ ਦਿੱਤੀਆਂ ਗਈਆਂ ਹਨ:" msgid "Add an item to the end of the list. Similar to ``a[len(a):] = [x]``." -msgstr "" +msgstr "ਲਿਸਟ ਦੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਤੱਤ ਜੋੜਦਾ ਹੈ। ਇਹ ``a[len(a):] = [x]`` ਦੇ ਸਮਾਨ ਹੈ।" msgid "" "Extend the list by appending all the items from the iterable. Similar to " "``a[len(a):] = iterable``." msgstr "" +"ਇਟਰੇਬਲ ਦੇ ਸਾਰੇ ਤੱਤ ਲਿਸਟ ਦੇ ਅੰਤ ਵਿੱਚ ਜੋੜ ਕੇ ਲਿਸਟ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ। ਇਹ ``a[len(a):] = " +"iterable`` ਦੇ ਸਮਾਨ ਹੈ।" msgid "" "Insert an item at a given position. The first argument is the index of the " "element before which to insert, so ``a.insert(0, x)`` inserts at the front " "of the list, and ``a.insert(len(a), x)`` is equivalent to ``a.append(x)``." msgstr "" +"ਦਿੱਤੀ ਗਈ ਸਥਿਤੀ 'ਤੇ ਇੱਕ ਤੱਤ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ। ਪਹਿਲਾ ਆਰਗੂਮੈਂਟ ਉਸ ਤੱਤ ਦਾ ਇੰਡੈਕਸ ਹੁੰਦਾ ਹੈ ਜਿਸ ਤੋਂ " +"ਪਹਿਲਾਂ ਨਵਾਂ ਤੱਤ ਜੋੜਿਆ ਜਾਣਾ ਹੈ। ਇਸ ਲਈ ``a.insert(0, x)`` ਲਿਸਟ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਤੱਤ ਜੋੜਦਾ ਹੈ, " +"ਅਤੇ ``a.insert(len(a), x)`` ``a.append(x)`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "" "Remove the first item from the list whose value is equal to *value*. It " "raises a :exc:`ValueError` if there is no such item." msgstr "" +"ਲਿਸਟ ਵਿੱਚੋਂ ਉਸ ਪਹਿਲੇ ਤੱਤ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ ਜਿਸਦਾ ਮੁੱਲ *value* ਦੇ ਬਰਾਬਰ ਹੋਵੇ। ਜੇ ਅਜਿਹਾ ਕੋਈ ਤੱਤ " +"ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਤਾਂ :exc:`ValueError` ਉੱਠਾਈ ਜਾਂਦੀ ਹੈ।" msgid "" "Remove the item at the given position in the list, and return it. If no " @@ -63,14 +74,19 @@ msgid "" "list. It raises an :exc:`IndexError` if the list is empty or the index is " "outside the list range." msgstr "" +"ਲਿਸਟ ਵਿੱਚ ਦਿੱਤੀ ਗਈ ਸਥਿਤੀ ਉੱਤੇ ਮੌਜੂਦ ਤੱਤ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ ਅਤੇ ਉਸਨੂੰ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ ਕੋਈ ਇੰਡੈਕਸ " +"ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ, ਤਾਂ ``a.pop()`` ਲਿਸਟ ਦੇ ਆਖਰੀ ਤੱਤ ਨੂੰ ਹਟਾ ਕੇ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ ਲਿਸਟ " +"ਖਾਲੀ ਹੋਵੇ ਜਾਂ ਇੰਡੈਕਸ ਲਿਸਟ ਦੀ ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਹੋਵੇ ਤਾਂ :exc:`IndexError` ਉੱਠਾਈ ਜਾਂਦੀ ਹੈ।" msgid "Remove all items from the list. Similar to ``del a[:]``." -msgstr "" +msgstr "ਲਿਸਟ ਵਿੱਚੋਂ ਸਾਰੇ ਤੱਤ ਹਟਾਉਂਦਾ ਹੈ। ਇਹ ``del a[:]`` ਦੇ ਸਮਾਨ ਹੈ।" msgid "" "Return zero-based index of the first occurrence of *value* in the list. " "Raises a :exc:`ValueError` if there is no such item." msgstr "" +"ਲਿਸਟ ਵਿੱਚ *value* ਦੀ ਪਹਿਲੀ ਮੌਜੂਦਗੀ ਦਾ ਸ਼ੂਨ੍ਯ-ਅਧਾਰਿਤ ਇੰਡੈਕਸ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜੇ ਅਜਿਹਾ ਕੋਈ " +"ਤੱਤ ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਤਾਂ :exc:`ValueError` ਉੱਠਾਈ ਜਾਂਦੀ ਹੈ।" msgid "" "The optional arguments *start* and *end* are interpreted as in the slice " @@ -78,23 +94,28 @@ msgid "" "list. The returned index is computed relative to the beginning of the full " "sequence rather than the *start* argument." msgstr "" +"ਵਿਕਲਪਿਕ ਆਰਗੂਮੈਂਟ *start* ਅਤੇ *end* ਨੂੰ ਸਲਾਈਸ ਨੋਟੇਸ਼ਨ ਵਾਂਗ ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਖੋਜ ਨੂੰ ਲਿਸਟ " +"ਦੇ ਕਿਸੇ ਖਾਸ ਉਪ-ਕ੍ਰਮ ਤੱਕ ਸੀਮਿਤ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਵਾਪਸ ਕੀਤਾ ਗਿਆ ਇੰਡੈਕਸ *start* " +"ਆਰਗੂਮੈਂਟ ਦੇ ਸਬੰਧ ਵਿੱਚ ਨਹੀਂ, ਸਗੋਂ ਪੂਰੇ ਕ੍ਰਮ ਦੀ ਸ਼ੁਰੂਆਤ ਦੇ ਸਬੰਧ ਵਿੱਚ ਗਿਣਿਆ ਜਾਂਦਾ ਹੈ।" msgid "Return the number of times *value* appears in the list." -msgstr "" +msgstr "ਲਿਸਟ ਵਿੱਚ *value* ਕਿੰਨੀ ਵਾਰ ਮੌਜੂਦ ਹੈ, ਉਸ ਦੀ ਗਿਣਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ।" msgid "" "Sort the items of the list in place (the arguments can be used for sort " "customization, see :func:`sorted` for their explanation)." msgstr "" +"ਲਿਸਟ ਦੇ ਤੱਤਾਂ ਨੂੰ ਉਸੇ ਲਿਸਟ ਵਿੱਚ ਕ੍ਰਮਬੱਧ ਕਰਦਾ ਹੈ (ਸੋਰਟਿੰਗ ਨੂੰ ਅਨੁਕੂਲ ਕਰਨ ਲਈ ਆਰਗੂਮੈਂਟ ਵਰਤੇ ਜਾ ਸਕਦੇ " +"ਹਨ; ਉਹਨਾਂ ਦੀ ਵਿਆਖਿਆ ਲਈ :func:`sorted` ਵੇਖੋ)।" msgid "Reverse the elements of the list in place." -msgstr "" +msgstr "ਲਿਸਟ ਦੇ ਤੱਤਾਂ ਦਾ ਕ੍ਰਮ ਉਸੇ ਲਿਸਟ ਵਿੱਚ ਉਲਟ ਦਿੰਦਾ ਹੈ।" msgid "Return a shallow copy of the list. Similar to ``a[:]``." -msgstr "" +msgstr "ਲਿਸਟ ਦੀ ਇੱਕ ਸ਼ੈਲੋ ਕਾਪੀ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ``a[:]`` ਦੇ ਸਮਾਨ ਹੈ।" msgid "An example that uses most of the list methods::" -msgstr "" +msgstr "ਇੱਕ ਉਦਾਹਰਨ ਜੋ ਲਿਸਟ ਦੀਆਂ ਜ਼ਿਆਦਾਤਰ ਵਿਧੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ::" msgid "" ">>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', " @@ -119,6 +140,27 @@ msgid "" ">>> fruits.pop()\n" "'pear'" msgstr "" +">>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', " +"'banana']\n" +">>> fruits.count('apple')\n" +"2\n" +">>> fruits.count('tangerine')\n" +"0\n" +">>> fruits.index('banana')\n" +"3\n" +">>> fruits.index('banana', 4) # Find next banana starting at position 4\n" +"6\n" +">>> fruits.reverse()\n" +">>> fruits\n" +"['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange']\n" +">>> fruits.append('grape')\n" +">>> fruits\n" +"['banana', 'apple', 'kiwi', 'banana', 'pear', 'apple', 'orange', 'grape']\n" +">>> fruits.sort()\n" +">>> fruits\n" +"['apple', 'apple', 'banana', 'banana', 'grape', 'kiwi', 'orange', 'pear']\n" +">>> fruits.pop()\n" +"'pear'" msgid "" "You might have noticed that methods like ``insert``, ``remove`` or ``sort`` " @@ -126,6 +168,10 @@ msgid "" "default ``None``. [#]_ This is a design principle for all mutable data " "structures in Python." msgstr "" +"ਤੁਸੀਂ ਸ਼ਾਇਦ ਧਿਆਨ ਦਿੱਤਾ ਹੋਵੇ ਕਿ ``insert``, ``remove`` ਜਾਂ ``sort`` ਵਰਗੀਆਂ ਵਿਧੀਆਂ, ਜੋ " +"ਸਿਰਫ਼ ਲਿਸਟ ਨੂੰ ਬਦਲਦੀਆਂ ਹਨ, ਕੋਈ ਵਾਪਸੀ ਮੁੱਲ ਨਹੀਂ ਦਿਖਾਉਂਦੀਆਂ — ਇਹ ਮੂਲ ਰੂਪ ਵਿੱਚ ``None`` ਵਾਪਸ " +"ਕਰਦੀਆਂ ਹਨ। [#]_ ਇਹ Python ਦੀਆਂ ਸਾਰੀਆਂ ਪਰਿਵਰਤਨਯੋਗ ਡਾਟਾ ਸੰਰਚਨਾਵਾਂ ਲਈ ਇੱਕ ਡਿਜ਼ਾਇਨ ਸਿਧਾਂਤ " +"ਹੈ।" msgid "" "Another thing you might notice is that not all data can be sorted or " @@ -134,9 +180,14 @@ msgid "" "other types. Also, there are some types that don't have a defined ordering " "relation. For example, ``3+4j < 5+7j`` isn't a valid comparison." msgstr "" +"ਇੱਕ ਹੋਰ ਗੱਲ ਜੋ ਤੁਸੀਂ ਨੋਟ ਕਰ ਸਕਦੇ ਹੋ ਇਹ ਹੈ ਕਿ ਹਰ ਕਿਸਮ ਦੇ ਡਾਟਾ ਨੂੰ ਕ੍ਰਮਬੱਧ ਜਾਂ ਤੁਲਨਾ ਨਹੀਂ ਕੀਤਾ " +"ਜਾ ਸਕਦਾ। ਉਦਾਹਰਨ ਲਈ, ``[None, 'hello', 10]`` ਨੂੰ ਸੋਰਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਕਿਉਂਕਿ ਪੂਰਨ " +"ਅੰਕਾਂ ਦੀ ਤੁਲਨਾ ਸਟਰਿੰਗਾਂ ਨਾਲ ਨਹੀਂ ਹੋ ਸਕਦੀ ਅਤੇ ``None`` ਦੀ ਤੁਲਨਾ ਹੋਰ ਕਿਸਮਾਂ ਨਾਲ ਨਹੀਂ ਹੋ " +"ਸਕਦੀ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕੁਝ ਕਿਸਮਾਂ ਲਈ ਕ੍ਰਮ ਸੰਬੰਧ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੁੰਦਾ। ਉਦਾਹਰਨ ਵਜੋਂ, ``3+4j < " +"5+7j`` ਇੱਕ ਵੈਧ ਤੁਲਨਾ ਨਹੀਂ ਹੈ।" msgid "Using Lists as Stacks" -msgstr "" +msgstr "ਲਿਸਟਾਂ ਨੂੰ ਸਟੈਕ ਵਜੋਂ ਵਰਤਣਾ" msgid "" "The list methods make it very easy to use a list as a stack, where the last " @@ -145,6 +196,10 @@ msgid "" "an item from the top of the stack, use :meth:`~list.pop` without an explicit " "index. For example::" msgstr "" +"ਲਿਸਟ ਦੀਆਂ ਵਿਧੀਆਂ ਲਿਸਟ ਨੂੰ ਸਟੈਕ ਵਜੋਂ ਵਰਤਣਾ ਬਹੁਤ ਆਸਾਨ ਬਣਾਉਂਦੀਆਂ ਹਨ, ਜਿੱਥੇ ਸਭ ਤੋਂ ਆਖ਼ਰ ਵਿੱਚ " +"ਜੋੜਿਆ ਗਿਆ ਤੱਤ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (\"last-in, first-out\")। ਸਟੈਕ ਦੇ " +"ਉੱਪਰਲੇ ਹਿੱਸੇ ਵਿੱਚ ਤੱਤ ਜੋੜਨ ਲਈ :meth:`~list.append` ਵਰਤੋ। ਸਟੈਕ ਦੇ ਉੱਪਰਲੇ ਹਿੱਸੇ ਤੋਂ ਤੱਤ ਪ੍ਰਾਪਤ " +"ਕਰਨ ਲਈ ਬਿਨਾਂ ਸਪਸ਼ਟ ਇੰਡੈਕਸ ਦੇ :meth:`~list.pop` ਵਰਤੋ। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> stack = [3, 4, 5]\n" @@ -163,22 +218,45 @@ msgid "" ">>> stack\n" "[3, 4]" msgstr "" +">>> stack = [3, 4, 5]\n" +">>> stack.append(6)\n" +">>> stack.append(7)\n" +">>> stack\n" +"[3, 4, 5, 6, 7]\n" +">>> stack.pop()\n" +"7\n" +">>> stack\n" +"[3, 4, 5, 6]\n" +">>> stack.pop()\n" +"6\n" +">>> stack.pop()\n" +"5\n" +">>> stack\n" +"[3, 4]" msgid "Using Lists as Queues" -msgstr "" +msgstr "ਲਿਸਟਾਂ ਨੂੰ ਕਤਾਰਾਂ ਵਜੋਂ ਵਰਤਣਾ" msgid "" "It is also possible to use a list as a queue, where the first element added " "is the first element retrieved (\"first-in, first-out\"); however, lists are " "not efficient for this purpose. While appends and pops from the end of list " "are fast, doing inserts or pops from the beginning of a list is slow " -"(because all of the other elements have to be shifted by one)." +"(because all of the other elements have to be shifted by one). " +"See :ref:`time-complexity` for more information." msgstr "" +"ਲਿਸਟ ਨੂੰ ਕਤਾਰ ਵਜੋਂ ਵਰਤਣਾ ਵੀ ਸੰਭਵ ਹੈ, ਜਿੱਥੇ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਜੋੜਿਆ ਗਿਆ ਤੱਤ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰਾਪਤ " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ (\"ਪਹਿਲਾਂ-ਅੰਦਰ, ਪਹਿਲਾਂ-ਬਾਹਰ\"); ਹਾਲਾਂਕਿ, ਇਸ ਮਕਸਦ ਲਈ ਲਿਸਟਾਂ ਕੁਸ਼ਲ ਨਹੀਂ " +"ਹਨ। ਲਿਸਟ ਦੇ ਅੰਤ ਤੋਂ ਤੱਤ ਜੋੜਨਾ ਅਤੇ ਹਟਾਉਣਾ ਤੇਜ਼ ਹੁੰਦਾ ਹੈ, ਪਰ ਲਿਸਟ ਦੇ ਸ਼ੁਰੂ ਤੋਂ ਤੱਤ ਜੋੜਨਾ ਜਾਂ ਹਟਾਉਣਾ " +"ਹੌਲੀ ਹੁੰਦਾ ਹੈ (ਕਿਉਂਕਿ ਬਾਕੀ ਸਾਰੇ ਤੱਤਾਂ ਨੂੰ ਇੱਕ ਸਥਾਨ ਪਿੱਛੇ ਖਿਸਕਾਉਣਾ ਪੈਂਦਾ ਹੈ)। ਹੋਰ ਜਾਣਕਾਰੀ " +"ਲਈ :ref:`time-complexity` ਵੇਖੋ।" msgid "" "To implement a queue, use :class:`collections.deque` which was designed to " "have fast appends and pops from both ends. For example::" msgstr "" +"ਕਤਾਰ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ :class:`collections.deque` ਵਰਤੋ, ਜਿਸ ਨੂੰ ਦੋਵੇਂ ਸਿਰਿਆਂ ਤੋਂ ਤੇਜ਼ append " +"ਅਤੇ pop ਕਾਰਵਾਈਆਂ ਲਈ ਡਿਜ਼ਾਇਨ ਕੀਤਾ ਗਿਆ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> from collections import deque\n" @@ -192,9 +270,19 @@ msgid "" ">>> queue # Remaining queue in order of arrival\n" "deque(['Michael', 'Terry', 'Graham'])" msgstr "" +">>> from collections import deque\n" +">>> queue = deque([\"Eric\", \"John\", \"Michael\"])\n" +">>> queue.append(\"Terry\") # Terry arrives\n" +">>> queue.append(\"Graham\") # Graham arrives\n" +">>> queue.popleft() # The first to arrive now leaves\n" +"'Eric'\n" +">>> queue.popleft() # The second to arrive now leaves\n" +"'John'\n" +">>> queue # Remaining queue in order of arrival\n" +"deque(['Michael', 'Terry', 'Graham'])" msgid "List Comprehensions" -msgstr "" +msgstr "ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ" msgid "" "List comprehensions provide a concise way to create lists. Common " @@ -202,9 +290,13 @@ msgid "" "operations applied to each member of another sequence or iterable, or to " "create a subsequence of those elements that satisfy a certain condition." msgstr "" +"ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਲਿਸਟਾਂ ਬਣਾਉਣ ਦਾ ਇੱਕ ਸੰਖੇਪ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। ਇਸਦਾ ਆਮ ਵਰਤੋਂ ਨਵੀਆਂ " +"ਲਿਸਟਾਂ ਬਣਾਉਣ ਲਈ ਹੁੰਦੀ ਹੈ ਜਿੱਥੇ ਹਰ ਤੱਤ ਕਿਸੇ ਹੋਰ ਕ੍ਰਮ ਜਾਂ ਇਟਰੇਬਲ ਦੇ ਹਰੇਕ ਮੈਂਬਰ ਉੱਤੇ ਕੀਤੀ ਗਈ " +"ਕਾਰਵਾਈ ਦਾ ਨਤੀਜਾ ਹੁੰਦਾ ਹੈ, ਜਾਂ ਉਹਨਾਂ ਤੱਤਾਂ ਦਾ ਉਪ-ਕ੍ਰਮ ਬਣਾਉਣ ਲਈ ਜੋ ਕਿਸੇ ਨਿਰਧਾਰਤ ਸ਼ਰਤ ਨੂੰ " +"ਪੂਰਾ ਕਰਦੇ ਹਨ।" msgid "For example, assume we want to create a list of squares, like::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਲਈ, ਮੰਨ ਲਵੋ ਕਿ ਅਸੀਂ ਵਰਗਾਂ ਦੀ ਇੱਕ ਲਿਸਟ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹਾਂ::" msgid "" ">>> squares = []\n" @@ -214,24 +306,33 @@ msgid "" ">>> squares\n" "[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]" msgstr "" +">>> squares = []\n" +">>> for x in range(10):\n" +"... squares.append(x**2)\n" +"...\n" +">>> squares\n" +"[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]" msgid "" "Note that this creates (or overwrites) a variable named ``x`` that still " "exists after the loop completes. We can calculate the list of squares " "without any side effects using::" msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਇਹ ``x`` ਨਾਮ ਦਾ ਇੱਕ ਵੇਰੀਏਬਲ ਬਣਾਉਂਦਾ ਹੈ (ਜਾਂ ਉਸਨੂੰ ਓਵਰਰਾਈਟ ਕਰਦਾ ਹੈ) ਜੋ ਲੂਪ " +"ਮੁਕੰਮਲ ਹੋਣ ਤੋਂ ਬਾਅਦ ਵੀ ਮੌਜੂਦ ਰਹਿੰਦਾ ਹੈ। ਅਸੀਂ ਬਿਨਾਂ ਕਿਸੇ ਸਾਈਡ ਇਫੈਕਟ ਦੇ ਵਰਗਾਂ ਦੀ ਲਿਸਟ ਹੇਠਾਂ ਦਿੱਤੇ " +"ਤਰੀਕੇ ਨਾਲ ਗਿਣ ਸਕਦੇ ਹਾਂ::" msgid "squares = list(map(lambda x: x**2, range(10)))" -msgstr "" +msgstr "squares = list(map(lambda x: x**2, range(10)))" msgid "or, equivalently::" -msgstr "" +msgstr "ਜਾਂ, ਇਸਦੇ ਸਮਾਨ::" msgid "squares = [x**2 for x in range(10)]" -msgstr "" +msgstr "squares = [x**2 for x in range(10)]" msgid "which is more concise and readable." -msgstr "" +msgstr "ਜੋ ਹੋਰ ਸੰਖੇਪ ਅਤੇ ਪੜ੍ਹਨ ਵਿੱਚ ਆਸਾਨ ਹੈ।" msgid "" "A list comprehension consists of brackets containing an expression followed " @@ -241,14 +342,21 @@ msgid "" "which follow it. For example, this listcomp combines the elements of two " "lists if they are not equal::" msgstr "" +"ਇੱਕ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ਕੋਠਿਆਂ ਦੇ ਅੰਦਰ ਇੱਕ ਐਕਸਪ੍ਰੈਸ਼ਨ ਹੁੰਦੀ ਹੈ ਜਿਸ ਤੋਂ ਬਾਅਦ ਇੱਕ :keyword:`!" +"for` ਕਲੌਜ਼ ਆਉਂਦੀ ਹੈ, ਅਤੇ ਫਿਰ ਸ਼ੂਨ੍ਯ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ :keyword:`!for` ਜਾਂ :keyword:`!if` ਕਲੌਜ਼ " +"ਹੋ ਸਕਦੀਆਂ ਹਨ। ਇਸ ਦਾ ਨਤੀਜਾ ਇੱਕ ਨਵੀਂ ਲਿਸਟ ਹੁੰਦੀ ਹੈ ਜੋ ਬਾਅਦ ਆਉਣ ਵਾਲੀਆਂ :keyword:`!for` " +"ਅਤੇ :keyword:`!if` ਕਲੌਜ਼ਾਂ ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਐਕਸਪ੍ਰੈਸ਼ਨ ਦਾ ਮੁਲਾਂਕਣ ਕਰਕੇ ਬਣਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਇਹ " +"listcomp ਦੋ ਲਿਸਟਾਂ ਦੇ ਤੱਤਾਂ ਨੂੰ ਜੋੜਦੀ ਹੈ ਜੇ ਉਹ ਇੱਕੋ ਜਿਹੇ ਨਾ ਹੋਣ::" msgid "" ">>> [(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]\n" "[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]" msgstr "" +">>> [(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]\n" +"[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]" msgid "and it's equivalent to::" -msgstr "" +msgstr "ਅਤੇ ਇਹ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਦੇ ਬਰਾਬਰ ਹੈ::" msgid "" ">>> combs = []\n" @@ -260,16 +368,28 @@ msgid "" ">>> combs\n" "[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]" msgstr "" +">>> combs = []\n" +">>> for x in [1,2,3]:\n" +"... for y in [3,1,4]:\n" +"... if x != y:\n" +"... combs.append((x, y))\n" +"...\n" +">>> combs\n" +"[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]" msgid "" "Note how the order of the :keyword:`for` and :keyword:`if` statements is the " "same in both these snippets." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਦੋਵੇਂ ਕੋਡ ਟੁਕੜਿਆਂ ਵਿੱਚ :keyword:`for` ਅਤੇ :keyword:`if` ਸਟੇਟਮੈਂਟਾਂ ਦਾ ਕ੍ਰਮ ਇੱਕੋ " +"ਜਿਹਾ ਹੈ।" msgid "" "If the expression is a tuple (e.g. the ``(x, y)`` in the previous example), " "it must be parenthesized. ::" msgstr "" +"ਜੇ ਐਕਸਪ੍ਰੈਸ਼ਨ ਇੱਕ ਟਿਊਪਲ ਹੈ (ਜਿਵੇਂ ਪਿਛਲੀ ਉਦਾਹਰਨ ਵਿੱਚ ``(x, y)``), ਤਾਂ ਉਸਨੂੰ ਕੋਠਿਆਂ ਵਿੱਚ " +"ਲਿਖਣਾ ਲਾਜ਼ਮੀ ਹੈ। ::" msgid "" ">>> vec = [-4, -2, 0, 2, 4]\n" @@ -300,29 +420,63 @@ msgid "" ">>> [num for elem in vec for num in elem]\n" "[1, 2, 3, 4, 5, 6, 7, 8, 9]" msgstr "" +">>> vec = [-4, -2, 0, 2, 4]\n" +">>> # create a new list with the values doubled\n" +">>> [x*2 for x in vec]\n" +"[-8, -4, 0, 4, 8]\n" +">>> # filter the list to exclude negative numbers\n" +">>> [x for x in vec if x >= 0]\n" +"[0, 2, 4]\n" +">>> # apply a function to all the elements\n" +">>> [abs(x) for x in vec]\n" +"[4, 2, 0, 2, 4]\n" +">>> # call a method on each element\n" +">>> freshfruit = [' banana', ' loganberry ', 'passion fruit ']\n" +">>> [weapon.strip() for weapon in freshfruit]\n" +"['banana', 'loganberry', 'passion fruit']\n" +">>> # create a list of 2-tuples like (number, square)\n" +">>> [(x, x**2) for x in range(6)]\n" +"[(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]\n" +">>> # the tuple must be parenthesized, otherwise an error is raised\n" +">>> [x, x**2 for x in range(6)]\n" +" File \"\", line 1\n" +" [x, x**2 for x in range(6)]\n" +" ^^^^^^^\n" +"SyntaxError: did you forget parentheses around the comprehension target?\n" +">>> # flatten a list using a listcomp with two 'for'\n" +">>> vec = [[1,2,3], [4,5,6], [7,8,9]]\n" +">>> [num for elem in vec for num in elem]\n" +"[1, 2, 3, 4, 5, 6, 7, 8, 9]" msgid "" "List comprehensions can contain complex expressions and nested functions::" -msgstr "" +msgstr "ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ਜਟਿਲ ਐਕਸਪ੍ਰੈਸ਼ਨ ਅਤੇ ਨੇਸਟਡ ਫੰਕਸ਼ਨ ਵੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੇ ਹਨ::" msgid "" ">>> from math import pi\n" ">>> [str(round(pi, i)) for i in range(1, 6)]\n" "['3.1', '3.14', '3.142', '3.1416', '3.14159']" msgstr "" +">>> from math import pi\n" +">>> [str(round(pi, i)) for i in range(1, 6)]\n" +"['3.1', '3.14', '3.142', '3.1416', '3.14159']" msgid "Nested List Comprehensions" -msgstr "" +msgstr "ਨੇਸਟਡ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ" msgid "" "The initial expression in a list comprehension can be any arbitrary " "expression, including another list comprehension." msgstr "" +"ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ਸ਼ੁਰੂਆਤੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਕੋਈ ਵੀ ਮਨਮਾਨੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਸ ਵਿੱਚ ਹੋਰ " +"ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।" msgid "" "Consider the following example of a 3x4 matrix implemented as a list of 3 " "lists of length 4::" msgstr "" +"ਹੇਠਾਂ 3x4 ਮੈਟ੍ਰਿਕਸ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ ਜੋ ਲੰਬਾਈ 4 ਵਾਲੀਆਂ 3 ਲਿਸਟਾਂ ਦੀ ਲਿਸਟ ਵਜੋਂ ਲਾਗੂ ਕੀਤੀ ਗਈ " +"ਹੈ::" msgid "" ">>> matrix = [\n" @@ -331,20 +485,30 @@ msgid "" "... [9, 10, 11, 12],\n" "... ]" msgstr "" +">>> matrix = [\n" +"... [1, 2, 3, 4],\n" +"... [5, 6, 7, 8],\n" +"... [9, 10, 11, 12],\n" +"... ]" msgid "The following list comprehension will transpose rows and columns::" -msgstr "" +msgstr "ਹੇਠਾਂ ਦਿੱਤੀ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਕਤਾਰਾਂ ਅਤੇ ਕਾਲਮਾਂ ਨੂੰ ਆਪਸ ਵਿੱਚ ਬਦਲ ਦੇਵੇਗੀ::" msgid "" ">>> [[row[i] for row in matrix] for i in range(4)]\n" "[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgstr "" +">>> [[row[i] for row in matrix] for i in range(4)]\n" +"[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgid "" "As we saw in the previous section, the inner list comprehension is evaluated " "in the context of the :keyword:`for` that follows it, so this example is " "equivalent to::" msgstr "" +"ਜਿਵੇਂ ਅਸੀਂ ਪਿਛਲੇ ਭਾਗ ਵਿੱਚ ਵੇਖਿਆ ਸੀ, ਅੰਦਰਲੀ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਉਸਦੇ ਬਾਅਦ ਆਉਣ " +"ਵਾਲੇ :keyword:`for` ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਮੁਲਾਂਕਿਤ ਹੁੰਦੀ ਹੈ, ਇਸ ਲਈ ਇਹ ਉਦਾਹਰਨ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਦੇ " +"ਬਰਾਬਰ ਹੈ::" msgid "" ">>> transposed = []\n" @@ -354,9 +518,15 @@ msgid "" ">>> transposed\n" "[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgstr "" +">>> transposed = []\n" +">>> for i in range(4):\n" +"... transposed.append([row[i] for row in matrix])\n" +"...\n" +">>> transposed\n" +"[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgid "which, in turn, is the same as::" -msgstr "" +msgstr "ਅਤੇ ਇਹ ਅੱਗੇ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਦੇ ਸਮਾਨ ਹੈ::" msgid "" ">>> transposed = []\n" @@ -370,23 +540,38 @@ msgid "" ">>> transposed\n" "[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgstr "" +">>> transposed = []\n" +">>> for i in range(4):\n" +"... # the following 3 lines implement the nested listcomp\n" +"... transposed_row = []\n" +"... for row in matrix:\n" +"... transposed_row.append(row[i])\n" +"... transposed.append(transposed_row)\n" +"...\n" +">>> transposed\n" +"[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]" msgid "" "In the real world, you should prefer built-in functions to complex flow " "statements. The :func:`zip` function would do a great job for this use case::" msgstr "" +"ਵਿਹਾਰਿਕ ਤੌਰ 'ਤੇ, ਤੁਹਾਨੂੰ ਜਟਿਲ ਫਲੋ ਸਟੇਟਮੈਂਟਾਂ ਦੀ ਬਜਾਏ ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਤਰਜੀਹ ਦੇਣੀ ਚਾਹੀਦੀ " +"ਹੈ। ਇਸ ਵਰਤੋਂ ਲਈ :func:`zip` ਫੰਕਸ਼ਨ ਬਹੁਤ ਵਧੀਆ ਕੰਮ ਕਰੇਗਾ::" msgid "" ">>> list(zip(*matrix))\n" "[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]" msgstr "" +">>> list(zip(*matrix))\n" +"[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]" msgid "" "See :ref:`tut-unpacking-arguments` for details on the asterisk in this line." msgstr "" +"ਇਸ ਲਾਈਨ ਵਿੱਚ ਵਰਤੇ ਗਏ ਐਸਟਰਿਸਕ ਬਾਰੇ ਵੇਰਵੇ ਲਈ :ref:`tut-unpacking-arguments` ਵੇਖੋ।" msgid "Unpacking in Lists and List Comprehensions" -msgstr "" +msgstr "ਲਿਸਟਾਂ ਅਤੇ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ਅਨਪੈਕਿੰਗ" msgid "" "The section on :ref:`tut-unpacking-arguments` describes the use of ``*`` to " @@ -396,18 +581,28 @@ msgid "" "prefixing an expression by a ``*`` will unpack the result of that " "expression, adding each of its elements to the list we're creating::" msgstr "" +":ref:`tut-unpacking-arguments` ਭਾਗ ਵਿੱਚ ``*`` ਦੀ ਵਰਤੋਂ ਬਾਰੇ ਦੱਸਿਆ ਗਿਆ ਹੈ ਜੋ ਕਿਸੇ " +"ਇਟਰੇਬਲ ਆਬਜੈਕਟ ਦੇ ਤੱਤਾਂ ਨੂੰ \"ਅਨਪੈਕ\" ਕਰਦਾ ਹੈ ਅਤੇ ਹਰ ਤੱਤ ਨੂੰ ਵੱਖਰੇ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਫੰਕਸ਼ਨ ਨੂੰ ਦਿੰਦਾ ਹੈ। " +"ਅਨਪੈਕਿੰਗ ਹੋਰ ਸੰਦਰਭਾਂ ਵਿੱਚ ਵੀ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਉਦਾਹਰਨ ਲਈ ਲਿਸਟ ਬਣਾਉਣ ਵੇਲੇ। ਜਦੋਂ ਲਿਸਟ ਦੇ ਤੱਤ " +"ਨਿਰਧਾਰਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ ``*`` ਨਾਲ ਸ਼ੁਰੂ ਕੀਤੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਦਾ ਨਤੀਜਾ ਅਨਪੈਕ ਹੋ ਜਾਂਦਾ ਹੈ ਅਤੇ " +"ਉਸਦੇ ਸਾਰੇ ਤੱਤ ਬਣਾਈ ਜਾ ਰਹੀ ਲਿਸਟ ਵਿੱਚ ਜੋੜੇ ਜਾਂਦੇ ਹਨ::" msgid "" ">>> x = [1, 2, 3]\n" ">>> [0, *x, 4, 5, 6]\n" "[0, 1, 2, 3, 4, 5, 6]" msgstr "" +">>> x = [1, 2, 3]\n" +">>> [0, *x, 4, 5, 6]\n" +"[0, 1, 2, 3, 4, 5, 6]" msgid "" "This only works if the expression following the ``*`` evaluates to an " "iterable object; trying to unpack a non-iterable object will raise an " "exception::" msgstr "" +"ਇਹ ਸਿਰਫ਼ ਤਦ ਹੀ ਕੰਮ ਕਰਦਾ ਹੈ ਜਦੋਂ ``*`` ਤੋਂ ਬਾਅਦ ਵਾਲੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਕਿਸੇ ਇਟਰੇਬਲ ਆਬਜੈਕਟ ਵਿੱਚ " +"ਮੁਲਾਂਕਿਤ ਹੋਵੇ। ਗੈਰ-ਇਟਰੇਬਲ ਆਬਜੈਕਟ ਨੂੰ ਅਨਪੈਕ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਇੱਕ ਅਪਵਾਦ ਪੈਦਾ ਕਰੇਗੀ::" msgid "" ">>> x = 1\n" @@ -417,44 +612,67 @@ msgid "" " [0, *x, 2, 3, 4]\n" "TypeError: Value after * must be an iterable, not int" msgstr "" +">>> x = 1\n" +">>> [0, *x, 2, 3, 4]\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" [0, *x, 2, 3, 4]\n" +"TypeError: Value after * must be an iterable, not int" msgid "" "Unpacking can also be used in list comprehensions, as a way to build a new " "list representing the concatenation of an arbitrary number of iterables::" msgstr "" +"ਅਨਪੈਕਿੰਗ ਨੂੰ ਲਿਸਟ ਕੰਪ੍ਰਿਹੈਂਸ਼ਨ ਵਿੱਚ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਤਾਂ ਜੋ ਮਨਚਾਹੀ ਗਿਣਤੀ ਦੇ ਇਟਰੇਬਲਾਂ ਦੇ " +"ਜੋੜ ਨੂੰ ਦਰਸਾਉਣ ਵਾਲੀ ਨਵੀਂ ਲਿਸਟ ਬਣਾਈ ਜਾ ਸਕੇ::" msgid "" ">>> x = [[1, 2, 3], [4, 5, 6], [], [7], [8, 9]]\n" ">>> [*element for element in x]\n" "[1, 2, 3, 4, 5, 6, 7, 8, 9]" msgstr "" +">>> x = [[1, 2, 3], [4, 5, 6], [], [7], [8, 9]]\n" +">>> [*element for element in x]\n" +"[1, 2, 3, 4, 5, 6, 7, 8, 9]" msgid "" "Note that the effect is that each element from ``x`` is unpacked. This " "works for arbitrary iterable objects, not just lists::" msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਇਸਦਾ ਪ੍ਰਭਾਵ ਇਹ ਹੈ ਕਿ ``x`` ਦਾ ਹਰ ਤੱਤ ਅਨਪੈਕ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਸਿਰਫ਼ " +"ਲਿਸਟਾਂ ਲਈ ਨਹੀਂ, ਸਗੋਂ ਕਿਸੇ ਵੀ ਇਟਰੇਬਲ ਆਬਜੈਕਟ ਲਈ ਕੰਮ ਕਰਦਾ ਹੈ::" msgid "" ">>> x = [[1, 2, 3], 'cat', {'spam': 'eggs'}]\n" ">>> [*element for element in x]\n" "[1, 2, 3, 'c', 'a', 't', 'spam']" msgstr "" +">>> x = [[1, 2, 3], 'cat', {'spam': 'eggs'}]\n" +">>> [*element for element in x]\n" +"[1, 2, 3, 'c', 'a', 't', 'spam']" msgid "" "But if the objects in ``x`` are not iterable, this expression would again " "raise an exception." msgstr "" +"ਪਰ ਜੇ ``x`` ਵਿੱਚ ਮੌਜੂਦ ਆਬਜੈਕਟ ਇਟਰੇਬਲ ਨਾ ਹੋਣ, ਤਾਂ ਇਹ ਐਕਸਪ੍ਰੈਸ਼ਨ ਮੁੜ ਇੱਕ ਅਪਵਾਦ ਪੈਦਾ ਕਰੇਗੀ।" msgid "The :keyword:`!del` statement" -msgstr "" +msgstr ":keyword:`!del` ਸਟੇਟਮੈਂਟ" msgid "" "There is a way to remove an item from a list given its index instead of its " -"value: the :keyword:`del` statement. This differs from the :meth:`~list." -"pop` method which returns a value. The :keyword:`!del` statement can also " -"be used to remove slices from a list or clear the entire list (which we did " -"earlier by assignment of an empty list to the slice). For example::" +"value: the :keyword:`del` statement. This differs from " +"the :meth:`~list.pop` method which returns a value. The :keyword:`!del` " +"statement can also be used to remove slices from a list or clear the entire " +"list (which we did earlier by assignment of an empty list to the slice). " +"For example::" msgstr "" +"ਲਿਸਟ ਵਿੱਚੋਂ ਕਿਸੇ ਤੱਤ ਨੂੰ ਉਸਦੇ ਮੁੱਲ ਦੀ ਬਜਾਏ ਉਸਦੇ ਇੰਡੈਕਸ ਰਾਹੀਂ ਹਟਾਉਣ ਦਾ ਇੱਕ ਤਰੀਕਾ " +"ਹੈ: :keyword:`del` ਸਟੇਟਮੈਂਟ। ਇਹ :meth:`~list.pop` ਵਿਧੀ ਤੋਂ ਵੱਖਰੀ ਹੈ ਕਿਉਂਕਿ ਉਹ ਇੱਕ ਮੁੱਲ " +"ਵਾਪਸ ਕਰਦੀ ਹੈ। :keyword:`!del` ਸਟੇਟਮੈਂਟ ਨੂੰ ਲਿਸਟ ਵਿੱਚੋਂ ਸਲਾਈਸ ਹਟਾਉਣ ਜਾਂ ਪੂਰੀ ਲਿਸਟ ਖਾਲੀ " +"ਕਰਨ ਲਈ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ (ਜੋ ਅਸੀਂ ਪਹਿਲਾਂ ਖਾਲੀ ਲਿਸਟ ਨੂੰ ਸਲਾਈਸ ਵਿੱਚ ਅਸਾਈਨ ਕਰਕੇ ਕੀਤਾ " +"ਸੀ)। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> a = [-1, 1, 66.25, 333, 333, 1234.5]\n" @@ -468,20 +686,32 @@ msgid "" ">>> a\n" "[]" msgstr "" +">>> a = [-1, 1, 66.25, 333, 333, 1234.5]\n" +">>> del a[0]\n" +">>> a\n" +"[1, 66.25, 333, 333, 1234.5]\n" +">>> del a[2:4]\n" +">>> a\n" +"[1, 66.25, 1234.5]\n" +">>> del a[:]\n" +">>> a\n" +"[]" msgid ":keyword:`del` can also be used to delete entire variables::" -msgstr "" +msgstr ":keyword:`del` ਨੂੰ ਪੂਰੇ ਵੇਰੀਏਬਲ ਮਿਟਾਉਣ ਲਈ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid ">>> del a" -msgstr "" +msgstr ">>> del a" msgid "" "Referencing the name ``a`` hereafter is an error (at least until another " "value is assigned to it). We'll find other uses for :keyword:`del` later." msgstr "" +"ਇਸ ਤੋਂ ਬਾਅਦ ``a`` ਨਾਮ ਦਾ ਹਵਾਲਾ ਦੇਣਾ ਇੱਕ ਗਲਤੀ ਹੋਵੇਗੀ (ਘੱਟੋ-ਘੱਟ ਤਦ ਤੱਕ ਜਦੋਂ ਤੱਕ ਇਸਨੂੰ ਕੋਈ ਨਵਾਂ " +"ਮੁੱਲ ਅਸਾਈਨ ਨਾ ਕੀਤਾ ਜਾਵੇ)। ਅਸੀਂ ਬਾਅਦ ਵਿੱਚ :keyword:`del` ਦੇ ਹੋਰ ਉਪਯੋਗ ਵੀ ਵੇਖਾਂਗੇ।" msgid "Tuples and Sequences" -msgstr "" +msgstr "ਟਿਊਪਲ ਅਤੇ ਕ੍ਰਮ" msgid "" "We saw that lists and strings have many common properties, such as indexing " @@ -490,10 +720,14 @@ msgid "" "data types may be added. There is also another standard sequence data type: " "the *tuple*." msgstr "" +"ਅਸੀਂ ਵੇਖਿਆ ਕਿ ਲਿਸਟਾਂ ਅਤੇ ਸਟਰਿੰਗਾਂ ਵਿੱਚ ਕਈ ਸਾਂਝੇ ਗੁਣ ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ ਇੰਡੈਕਸਿੰਗ ਅਤੇ ਸਲਾਈਸਿੰਗ " +"ਕਾਰਵਾਈਆਂ। ਇਹ *sequence* ਡਾਟਾ ਕਿਸਮਾਂ ਦੀਆਂ ਦੋ ਉਦਾਹਰਨਾਂ ਹਨ (ਵੇਖੋ :ref:`typesseq`)। " +"ਕਿਉਂਕਿ Python ਇੱਕ ਵਿਕਸਿਤ ਹੋ ਰਹੀ ਭਾਸ਼ਾ ਹੈ, ਇਸ ਵਿੱਚ ਹੋਰ sequence ਡਾਟਾ ਕਿਸਮਾਂ ਵੀ ਜੋੜੀਆਂ " +"ਜਾ ਸਕਦੀਆਂ ਹਨ। ਇੱਕ ਹੋਰ ਮਿਆਰੀ sequence ਡਾਟਾ ਕਿਸਮ *tuple* ਹੈ।" msgid "" "A tuple consists of a number of values separated by commas, for instance::" -msgstr "" +msgstr "ਇੱਕ ਟਿਊਪਲ ਕਾਮਿਆਂ ਨਾਲ ਵੱਖ ਕੀਤੇ ਗਏ ਕਈ ਮੁੱਲਾਂ ਤੋਂ ਬਣਦਾ ਹੈ, ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> t = 12345, 54321, 'hello!'\n" @@ -519,6 +753,28 @@ msgid "" ">>> 0, *x, 4\n" "(0, 1, 2, 3, 4)" msgstr "" +">>> t = 12345, 54321, 'hello!'\n" +">>> t[0]\n" +"12345\n" +">>> t\n" +"(12345, 54321, 'hello!')\n" +">>> # Tuples may be nested:\n" +">>> u = t, (1, 2, 3, 4, 5)\n" +">>> u\n" +"((12345, 54321, 'hello!'), (1, 2, 3, 4, 5))\n" +">>> # Tuples are immutable:\n" +">>> t[0] = 88888\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: 'tuple' object does not support item assignment\n" +">>> # but they can contain mutable objects:\n" +">>> v = ([1, 2, 3], [3, 2, 1])\n" +">>> v\n" +"([1, 2, 3], [3, 2, 1])\n" +">>> # they support unpacking just like lists:\n" +">>> x = [1, 2, 3]\n" +">>> 0, *x, 4\n" +"(0, 1, 2, 3, 4)" msgid "" "As you see, on output tuples are always enclosed in parentheses, so that " @@ -528,16 +784,27 @@ msgid "" "the individual items of a tuple, however it is possible to create tuples " "which contain mutable objects, such as lists." msgstr "" +"ਜਿਵੇਂ ਤੁਸੀਂ ਵੇਖ ਸਕਦੇ ਹੋ, ਆਉਟਪੁੱਟ ਵਿੱਚ ਟਿਊਪਲ ਹਮੇਸ਼ਾਂ ਕੋਠਿਆਂ ਵਿੱਚ ਦਿਖਾਏ ਜਾਂਦੇ ਹਨ ਤਾਂ ਜੋ ਨੇਸਟਡ " +"ਟਿਊਪਲਾਂ ਦੀ ਸਹੀ ਵਿਆਖਿਆ ਹੋ ਸਕੇ। ਉਹਨਾਂ ਨੂੰ ਕੋਠਿਆਂ ਨਾਲ ਜਾਂ ਬਿਨਾਂ ਵੀ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ, " +"ਹਾਲਾਂਕਿ ਕਈ ਵਾਰ ਕੋਠਿਆਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ (ਜੇ ਟਿਊਪਲ ਕਿਸੇ ਵੱਡੀ ਐਕਸਪ੍ਰੈਸ਼ਨ ਦਾ ਹਿੱਸਾ ਹੋਵੇ)। ਟਿਊਪਲ ਦੇ " +"ਵੱਖ-ਵੱਖ ਤੱਤਾਂ ਨੂੰ ਨਵਾਂ ਮੁੱਲ ਅਸਾਈਨ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ, ਪਰ ਅਜਿਹੇ ਟਿਊਪਲ ਬਣਾਏ ਜਾ ਸਕਦੇ ਹਨ " +"ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਲਿਸਟਾਂ ਵਰਗੇ ਪਰਿਵਰਤਨਯੋਗ ਆਬਜੈਕਟ ਹੋਣ।" msgid "" "Though tuples may seem similar to lists, they are often used in different " "situations and for different purposes. Tuples are :term:`immutable`, and " "usually contain a heterogeneous sequence of elements that are accessed via " "unpacking (see later in this section) or indexing (or even by attribute in " -"the case of :func:`namedtuples `). Lists are :term:" -"`mutable`, and their elements are usually homogeneous and are accessed by " -"iterating over the list." +"the case of :func:`namedtuples `). Lists " +"are :term:`mutable`, and their elements are usually homogeneous and are " +"accessed by iterating over the list." msgstr "" +"ਹਾਲਾਂਕਿ ਟਿਊਪਲ ਸੂਚੀਆਂ ਵਰਗੇ ਲੱਗ ਸਕਦੇ ਹਨ, ਪਰ ਇਹ ਅਕਸਰ ਵੱਖ-ਵੱਖ ਸਥਿਤੀਆਂ ਅਤੇ ਵੱਖ-ਵੱਖ ਉਦੇਸ਼ਾਂ ਲਈ " +"ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਟਿਊਪਲ :term:`immutable` ਹੁੰਦੇ ਹਨ, ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ ਇਹਨਾਂ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ " +"ਦੇ ਤੱਤਾਂ ਦਾ ਇੱਕ ਮਿਸ਼ਰਤ ਕ੍ਰਮ ਹੁੰਦਾ ਹੈ, ਜਿਸ ਤੱਕ ਪਹੁੰਚ ਅਨਪੈਕਿੰਗ (ਇਸ ਭਾਗ ਵਿੱਚ ਬਾਅਦ ਵਿੱਚ ਵੇਖੋ) ਜਾਂ " +"ਇੰਡੈਕਸਿੰਗ ਰਾਹੀਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ (ਜਾਂ :func:`namedtuples ` ਦੇ " +"ਮਾਮਲੇ ਵਿੱਚ ਐਟ੍ਰਿਬਿਊਟ ਰਾਹੀਂ)। ਸੂਚੀਆਂ :term:`mutable` ਹੁੰਦੀਆਂ ਹਨ, ਅਤੇ ਉਹਨਾਂ ਦੇ ਤੱਤ ਆਮ ਤੌਰ 'ਤੇ " +"ਇੱਕੋ ਕਿਸਮ ਦੇ ਹੁੰਦੇ ਹਨ ਅਤੇ ਸੂਚੀ 'ਤੇ ਇਟਰੇਟ ਕਰਕੇ ਉਹਨਾਂ ਤੱਕ ਪਹੁੰਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "A special problem is the construction of tuples containing 0 or 1 items: the " @@ -546,6 +813,10 @@ msgid "" "constructed by following a value with a comma (it is not sufficient to " "enclose a single value in parentheses). Ugly, but effective. For example::" msgstr "" +"ਇੱਕ ਵਿਸ਼ੇਸ਼ ਸਮੱਸਿਆ ਉਹ ਟਿਊਪਲਾਂ ਦੀ ਬਣਤਰ ਹੈ ਜਿਨ੍ਹਾਂ ਵਿੱਚ 0 ਜਾਂ 1 ਆਈਟਮ ਹੁੰਦੇ ਹਨ: ਇਨ੍ਹਾਂ ਨੂੰ ਸ਼ਾਮਿਲ " +"ਕਰਨ ਲਈ ਸਿੰਟੈਕਸ ਵਿੱਚ ਕੁਝ ਵਾਧੂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ। ਖਾਲੀ ਟਿਊਪਲਾਂ ਨੂੰ ਖਾਲੀ ਕੋਸ਼-ਜੋੜੀ ਨਾਲ ਬਣਾਇਆ " +"ਜਾਂਦਾ ਹੈ; ਇੱਕ ਆਈਟਮ ਵਾਲਾ ਟਿਊਪਲ ਕਿਸੇ ਮੁੱਲ ਦੇ ਬਾਅਦ ਕਾਮਾ ਲਗਾ ਕੇ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ (ਇੱਕ ਇਕੱਲਾ ਮੁੱਲ " +"ਕੋਸ਼-ਜੋੜੀ ਵਿੱਚ ਰੱਖਣਾ ਕਾਫ਼ੀ ਨਹੀਂ ਹੈ)। ਬਦਸੂਰਤ, ਪਰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> empty = ()\n" @@ -557,15 +828,26 @@ msgid "" ">>> singleton\n" "('hello',)" msgstr "" +">>> empty = ()\n" +">>> singleton = 'hello', # <-- note trailing comma\n" +">>> len(empty)\n" +"0\n" +">>> len(singleton)\n" +"1\n" +">>> singleton\n" +"('hello',)" msgid "" "The statement ``t = 12345, 54321, 'hello!'`` is an example of *tuple " "packing*: the values ``12345``, ``54321`` and ``'hello!'`` are packed " "together in a tuple. The reverse operation is also possible::" msgstr "" +"ਸਟੇਟਮੈਂਟ ``t = 12345, 54321, 'hello!'`` *tuple packing* ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ: ਮੁੱਲ " +"``12345``, ``54321`` ਅਤੇ ``'hello!'`` ਨੂੰ ਇਕੱਠੇ ਇੱਕ ਟਿਊਪਲ ਵਿੱਚ ਪੈਕ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ " +"ਦੀ ਉਲਟੀ ਕਾਰਵਾਈ ਵੀ ਸੰਭਵ ਹੈ::" msgid ">>> x, y, z = t" -msgstr "" +msgstr ">>> x, y, z = t" msgid "" "This is called, appropriately enough, *sequence unpacking* and works for any " @@ -574,9 +856,13 @@ msgid "" "in the sequence. Note that multiple assignment is really just a combination " "of tuple packing and sequence unpacking." msgstr "" +"ਇਸਨੂੰ ਢੰਗ ਨਾਲ *ਸੀਕਵੈਂਸ ਅਨਪੈਕਿੰਗ* ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਸੱਜੇ ਪਾਸੇ ਕਿਸੇ ਵੀ ਸੀਕਵੈਂਸ ਲਈ ਕੰਮ ਕਰਦਾ " +"ਹੈ। ਸੀਕਵੈਂਸ ਅਨਪੈਕਿੰਗ ਲਈ ਲੋੜ ਹੈ ਕਿ ਬਰਾਬਰ ਦੇ ਚਿੰਨ੍ਹ ਦੇ ਖੱਬੇ ਪਾਸੇ ਇੰਨੇ ਹੀ ਵੇਰੀਏਬਲ ਹੋਣ ਜਿੰਨੇ ਸੀਕਵੈਂਸ " +"ਵਿੱਚ ਤੱਤ ਹਨ। ਧਿਆਨ ਦਿਓ ਕਿ ਮਲਟੀਪਲ ਅਸਾਈਨਮੈਂਟ ਅਸਲ ਵਿੱਚ ਸਿਰਫ਼ ਟੂਪਲ ਪੈਕਿੰਗ ਅਤੇ ਸੀਕਵੈਂਸ ਅਨਪੈਕਿੰਗ " +"ਦਾ ਮਿਲਾਪ ਹੈ।" msgid "Sets" -msgstr "" +msgstr "ਸੈੱਟ" msgid "" "Python also includes a data type for :ref:`sets `. A set is an " @@ -585,6 +871,10 @@ msgid "" "support mathematical operations like union, intersection, difference, and " "symmetric difference." msgstr "" +"Python ਵਿੱਚ :ref:`sets ` ਲਈ ਵੀ ਇੱਕ ਡਾਟਾ ਕਿਸਮ ਸ਼ਾਮਲ ਹੈ। ਸੈੱਟ ਬਿਨਾਂ ਦੁਹਰਾਏ " +"ਤੱਤਾਂ ਦਾ ਇੱਕ ਬੇਤਰਤੀਬ ਸੰਗ੍ਰਹਿ ਹੁੰਦਾ ਹੈ। ਇਸਦੇ ਮੁੱਢਲੇ ਉਪਯੋਗਾਂ ਵਿੱਚ ਮੈਂਬਰਸ਼ਿਪ ਜਾਂਚ ਅਤੇ ਦੁਹਰਾਏ ਹੋਏ ਤੱਤਾਂ ਨੂੰ " +"ਹਟਾਉਣਾ ਸ਼ਾਮਲ ਹੈ। ਸੈੱਟ ਆਬਜੈਕਟ ਗਣਿਤੀ ਕਾਰਵਾਈਆਂ ਜਿਵੇਂ union, intersection, difference ਅਤੇ " +"symmetric difference ਦਾ ਵੀ ਸਮਰਥਨ ਕਰਦੇ ਹਨ।" msgid "" "Curly braces or the :func:`set` function can be used to create sets. Note: " @@ -592,14 +882,19 @@ msgid "" "creates an empty dictionary, a data structure that we discuss in the next " "section." msgstr "" +"ਕਰਲੀ ਬ੍ਰੇਸਿਜ਼ ਜਾਂ :func:`set` ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸੈੱਟ ਬਣਾਏ ਜਾ ਸਕਦੇ ਹਨ। ਧਿਆਨ ਦਿਓ: ਖਾਲੀ " +"ਸੈੱਟ ਬਣਾਉਣ ਲਈ ``set()`` ਵਰਤਣਾ ਪੈਂਦਾ ਹੈ, ``{}`` ਨਹੀਂ; ਕਿਉਂਕਿ ਇੱਕ ਖਾਲੀ ਡਿਕਸ਼ਨਰੀ ਬਣਾਉਂਦਾ " +"ਹੈ, ਜਿਸ ਬਾਰੇ ਅਸੀਂ ਅਗਲੇ ਭਾਗ ਵਿੱਚ ਚਰਚਾ ਕਰਾਂਗੇ।" msgid "" "Because sets are unordered, iterating over them or printing them can produce " "the elements in a different order than you expect." msgstr "" +"ਕਿਉਂਕਿ ਸੈੱਟ ਬੇਤਰਤੀਬ ਹੁੰਦੇ ਹਨ, ਇਸ ਲਈ ਉਹਨਾਂ 'ਤੇ ਇਟਰੇਟ ਕਰਨ ਜਾਂ ਉਹਨਾਂ ਨੂੰ ਪ੍ਰਿੰਟ ਕਰਨ ਨਾਲ ਤੱਤ " +"ਤੁਹਾਡੀ ਉਮੀਦ ਤੋਂ ਵੱਖਰੇ ਕ੍ਰਮ ਵਿੱਚ ਦਿਖਾਈ ਦੇ ਸਕਦੇ ਹਨ।" msgid "Here is a brief demonstration::" -msgstr "" +msgstr "ਇੱਥੇ ਇੱਕ ਛੋਟਾ ਜਿਹਾ ਉਦਾਹਰਨ ਦਿੱਤਾ ਗਿਆ ਹੈ::" msgid "" ">>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}\n" @@ -626,11 +921,36 @@ msgid "" ">>> a ^ b # letters in a or b but not both\n" "{'r', 'd', 'b', 'm', 'z', 'l'}" msgstr "" +">>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}\n" +">>> print(basket) # show that duplicates have been " +"removed\n" +"{'orange', 'banana', 'pear', 'apple'}\n" +">>> 'orange' in basket # fast membership testing\n" +"True\n" +">>> 'crabgrass' in basket\n" +"False\n" +"\n" +">>> # Demonstrate set operations on unique letters from two words\n" +">>>\n" +">>> a = set('abracadabra')\n" +">>> b = set('alacazam')\n" +">>> a # unique letters in a\n" +"{'a', 'r', 'b', 'c', 'd'}\n" +">>> a - b # letters in a but not in b\n" +"{'r', 'd', 'b'}\n" +">>> a | b # letters in a or b or both\n" +"{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}\n" +">>> a & b # letters in both a and b\n" +"{'a', 'c'}\n" +">>> a ^ b # letters in a or b but not both\n" +"{'r', 'd', 'b', 'm', 'z', 'l'}" msgid "" "Similarly to :ref:`list comprehensions `, set comprehensions " "are also supported, including comprehensions with unpacking::" msgstr "" +":ref:`list comprehensions ` ਦੀ ਤਰ੍ਹਾਂ, set comprehensions ਦਾ ਵੀ " +"ਸਮਰਥਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ unpacking ਵਾਲੀਆਂ comprehensions ਵੀ ਸ਼ਾਮਲ ਹਨ::" msgid "" ">>> a = {x for x in 'abracadabra' if x not in 'abc'}\n" @@ -641,22 +961,39 @@ msgid "" ">>> {*fruit for fruit in fruits}\n" "{'blueberry', 'banana', 'avocado', 'apple', 'apricot'}" msgstr "" +">>> a = {x for x in 'abracadabra' if x not in 'abc'}\n" +">>> a\n" +"{'r', 'd'}\n" +"\n" +">>> fruits = [{'apple', 'avocado', 'apricot'}, {'banana', 'blueberry'}]\n" +">>> {*fruit for fruit in fruits}\n" +"{'blueberry', 'banana', 'avocado', 'apple', 'apricot'}" msgid "Dictionaries" -msgstr "" - -msgid "" -"Another useful data type built into Python is the *dictionary* (see :ref:" -"`typesmapping`). Dictionaries are sometimes found in other languages as " -"\"associative memories\" or \"associative arrays\". Unlike sequences, which " -"are indexed by a range of numbers, dictionaries are indexed by *keys*, which " -"can be any immutable type; strings and numbers can always be keys. Tuples " -"can be used as keys if they contain only strings, numbers, or tuples; if a " -"tuple contains any mutable object either directly or indirectly, it cannot " -"be used as a key. You can't use lists as keys, since lists can be modified " -"in place using index assignments, slice assignments, or methods like :meth:" -"`~list.append` and :meth:`~list.extend`." -msgstr "" +msgstr "ਡਿਕਸ਼ਨਰੀਆਂ" + +msgid "" +"Another useful data type built into Python is the *dictionary* " +"(see :ref:`typesmapping`). Dictionaries are sometimes found in other " +"languages as \"associative memories\" or \"associative arrays\". Unlike " +"sequences, which are indexed by a range of numbers, dictionaries are indexed " +"by *keys*, which can be any immutable type; strings and numbers can always " +"be keys. Tuples can be used as keys if they contain only strings, numbers, " +"or tuples; if a tuple contains any mutable object either directly or " +"indirectly, it cannot be used as a key. You can't use lists as keys, since " +"lists can be modified in place using index assignments, slice assignments, " +"or methods like :meth:`~list.append` and :meth:`~list.extend`." +msgstr "" +"ਪਾਈਥਨ ਵਿੱਚ ਬਣਾਇਆ ਗਿਆ ਇੱਕ ਹੋਰ ਉਪਯੋਗੀ ਡੇਟਾ ਟਾਈਪ *ਡਿਕਸ਼ਨਰੀ* ਹੈ " +"(ਦੇਖੋ :ref:`typesmapping`)। ਡਿਕਸ਼ਨਰੀਆਂ ਨੂੰ ਕਈ ਵਾਰ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ \"ਐਸੋਸੀਏਟਿਵ ਮੈਮੋਰੀਜ਼\" " +"ਜਾਂ \"ਐਸੋਸੀਏਟਿਵ ਐਰੇਜ਼\" ਵਜੋਂ ਵੀ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ। ਸੀਕਵੈਂਸਾਂ ਦੇ ਉਲਟ, ਜਿਨ੍ਹਾਂ ਦੀ ਇੰਡੈਕਸਿੰਗ ਨੰਬਰਾਂ " +"ਦੀ ਰੇਂਜ ਨਾਲ ਹੁੰਦੀ ਹੈ, ਡਿਕਸ਼ਨਰੀਆਂ ਦੀ ਇੰਡੈਕਸਿੰਗ *ਕੀਜ਼* ਨਾਲ ਹੁੰਦੀ ਹੈ, ਜੋ ਕਿਸੇ ਵੀ ਅਟੱਲ ਕਿਸਮ ਦੀ ਹੋ " +"ਸਕਦੀ ਹੈ; ਸਟਰਿੰਗਾਂ ਅਤੇ ਨੰਬਰ ਹਮੇਸ਼ਾਂ ਕੀਜ਼ ਹੋ ਸਕਦੇ ਹਨ। ਟਿਊਪਲਾਂ ਨੂੰ ਕੀ ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੇਕਰ " +"ਉਹਨਾਂ ਵਿੱਚ ਸਿਰਫ਼ ਸਟਰਿੰਗ, ਨੰਬਰ, ਜਾਂ ਟਿਊਪਲ ਹੀ ਹੋਣ; ਜੇਕਰ ਕਿਸੇ ਟਿਊਪਲ ਵਿੱਚ ਸਿੱਧੇ ਜਾਂ ਅਸਿੱਧੇ ਤੌਰ " +"'ਤੇ ਕੋਈ ਵੀ ਬਦਲਣਯੋਗ ਆਬਜੈਕਟ ਹੋਵੇ, ਤਾਂ ਇਸਨੂੰ ਕੀ ਵਜੋਂ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ। ਤੁਸੀਂ ਸੂਚੀਆਂ ਨੂੰ ਕੀ ਵਜੋਂ " +"ਨਹੀਂ ਵਰਤ ਸਕਦੇ, ਕਿਉਂਕਿ ਸੂਚੀਆਂ ਨੂੰ ਇੰਡੈਕਸ ਅਸਾਈਨਮੈਂਟ, ਸਲਾਈਸ ਅਸਾਈਨਮੈਂਟ, " +"ਜਾਂ :meth:`~list.append` ਅਤੇ :meth:`~list.extend` ਵਰਗੇ ਮੈਥਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਥਾਨ 'ਤੇ " +"ਹੀ ਸੋਧਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "It is best to think of a dictionary as a set of *key: value* pairs, with the " @@ -665,13 +1002,21 @@ msgid "" "of key:value pairs within the braces adds initial key:value pairs to the " "dictionary; this is also the way dictionaries are written on output." msgstr "" +"ਇੱਕ ਡਿਕਸ਼ਨਰੀ ਨੂੰ *key: value* ਜੋੜਿਆਂ ਦੇ ਇੱਕ ਸੈੱਟ ਵਜੋਂ ਸੋਚਣਾ ਸਭ ਤੋਂ ਵਧੀਆ ਹੈ, ਜਿਸ ਵਿੱਚ ਇਹ ਲੋੜ ਹੈ " +"ਕਿ keys (ਇੱਕੋ ਡਿਕਸ਼ਨਰੀ ਵਿੱਚ) ਵਿਲੱਖਣ ਹੋਣ। ਬ੍ਰੈਸਿਜ਼ ਦੀ ਇੱਕ ਜੋੜੀ ਇੱਕ ਖਾਲੀ ਡਿਕਸ਼ਨਰੀ ਬਣਾਉਂਦੀ ਹੈ: " +"``{}`` । ਬ੍ਰੈਸਿਜ਼ ਦੇ ਅੰਦਰ ਕਾਮੇ ਨਾਲ ਵੱਖ-ਵੱਖ ਕੀਤੀ ਕੀ:ਮੁੱਲ ਜੋੜਿਆਂ ਦੀ ਸੂਚੀ ਰੱਖਣ ਨਾਲ ਡਿਕਸ਼ਨਰੀ " +"ਵਿੱਚ ਸ਼ੁਰੂਆਤੀ ਕੀ:ਮੁੱਲ ਜੋੜੇ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ; ਇਹੀ ਤਰੀਕਾ ਆਉਟਪੁੱਟ 'ਤੇ ਡਿਕਸ਼ਨਰੀਆਂ ਲਿਖਣ ਲਈ ਵਰਤਿਆ " +"ਜਾਂਦਾ ਹੈ।" msgid "" "The main operations on a dictionary are storing a value with some key and " -"extracting the value given the key. It is also possible to delete a key:" -"value pair with ``del``. If you store using a key that is already in use, " -"the old value associated with that key is forgotten." +"extracting the value given the key. It is also possible to delete a " +"key:value pair with ``del``. If you store using a key that is already in " +"use, the old value associated with that key is forgotten." msgstr "" +"ਡਿਕਸ਼ਨਰੀ ਉੱਤੇ ਮੁੱਖ ਕਾਰਵਾਈਆਂ ਵਿੱਚ ਕਿਸੇ ਕੀ ਨਾਲ ਮੁੱਲ ਸੰਭਾਲਣਾ ਅਤੇ ਕੀ ਦੇ ਆਧਾਰ ਉੱਤੇ ਉਸ ਮੁੱਲ ਨੂੰ ਪ੍ਰਾਪਤ " +"ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ। ``del`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ key:value ਜੋੜੇ ਨੂੰ ਮਿਟਾਇਆ ਵੀ ਜਾ ਸਕਦਾ ਹੈ। ਜੇ ਤੁਸੀਂ " +"ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ ਕੀ ਨਾਲ ਨਵਾਂ ਮੁੱਲ ਸੰਭਾਲਦੇ ਹੋ, ਤਾਂ ਪੁਰਾਣਾ ਮੁੱਲ ਭੁੱਲ ਜਾਂਦਾ ਹੈ।" msgid "" "Extracting a value for a non-existent key by subscripting (``d[key]``) " @@ -680,6 +1025,10 @@ msgid "" "returns ``None`` (or a specified default value) if the key is not in the " "dictionary." msgstr "" +"ਜੇ ਤੁਸੀਂ subscripting (``d[key]``) ਰਾਹੀਂ ਇੱਕ ਗੈਰ-ਮੌਜੂਦ ਕੀ ਲਈ ਮੁੱਲ ਕੱਢਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹੋ, " +"ਤਾਂ ਇਹ :exc:`KeyError` ਉਠਾਉਂਦਾ ਹੈ। ਸੰਭਾਵਤ ਤੌਰ 'ਤੇ ਗੈਰ-ਮੌਜੂਦ ਕੀ ਨੂੰ ਐਕਸੈਸ ਕਰਨ ਵੇਲੇ ਇਸ ਗਲਤੀ " +"ਤੋਂ ਬਚਣ ਲਈ, ਇਸ ਦੀ ਥਾਂ :meth:`~dict.get` ਵਿਧੀ ਵਰਤੋ, ਜੋ ਡਿਕਸ਼ਨਰੀ ਵਿੱਚ ਕੀ ਨਾ ਹੋਣ 'ਤੇ " +"``None`` (ਜਾਂ ਨਿਰਧਾਰਤ ਡਿਫਾਲਟ ਮੁੱਲ) ਵਾਪਸ ਕਰਦੀ ਹੈ।" msgid "" "Performing ``list(d)`` on a dictionary returns a list of all the keys used " @@ -687,9 +1036,12 @@ msgid "" "``sorted(d)`` instead). To check whether a single key is in the dictionary, " "use the :keyword:`in` keyword." msgstr "" +"ਡਿਕਸ਼ਨਰੀ ਉੱਤੇ ``list(d)`` ਚਲਾਉਣ ਨਾਲ ਉਸ ਵਿੱਚ ਵਰਤੀਆਂ ਗਈਆਂ ਸਾਰੀਆਂ keys ਦੀ ਲਿਸਟ " +"insertion order ਵਿੱਚ ਮਿਲਦੀ ਹੈ (ਜੇ ਤੁਸੀਂ ਉਹਨਾਂ ਨੂੰ ਕ੍ਰਮਬੱਧ ਦੇਖਣਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ``sorted(d)`` " +"ਵਰਤੋ)। ਕਿਸੇ ਇੱਕ ਕੀ ਦੀ ਮੌਜੂਦਗੀ ਦੀ ਜਾਂਚ ਲਈ :keyword:`in` ਕੀਵਰਡ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।" msgid "Here is a small example using a dictionary::" -msgstr "" +msgstr "ਇੱਥੇ ਡਿਕਸ਼ਨਰੀ ਦੀ ਵਰਤੋਂ ਦਾ ਇੱਕ ਛੋਟਾ ਉਦਾਹਰਨ ਦਿੱਤਾ ਗਿਆ ਹੈ::" msgid "" ">>> tel = {'jack': 4098, 'sape': 4139}\n" @@ -717,31 +1069,64 @@ msgid "" ">>> 'jack' not in tel\n" "False" msgstr "" +">>> tel = {'jack': 4098, 'sape': 4139}\n" +">>> tel['guido'] = 4127\n" +">>> tel\n" +"{'jack': 4098, 'sape': 4139, 'guido': 4127}\n" +">>> tel['jack']\n" +"4098\n" +">>> tel['irv']\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"KeyError: 'irv'\n" +">>> print(tel.get('irv'))\n" +"None\n" +">>> del tel['sape']\n" +">>> tel['irv'] = 4127\n" +">>> tel\n" +"{'jack': 4098, 'guido': 4127, 'irv': 4127}\n" +">>> list(tel)\n" +"['jack', 'guido', 'irv']\n" +">>> sorted(tel)\n" +"['guido', 'irv', 'jack']\n" +">>> 'guido' in tel\n" +"True\n" +">>> 'jack' not in tel\n" +"False" msgid "" "The :func:`dict` constructor builds dictionaries directly from sequences of " "key-value pairs::" msgstr "" +":func:`dict` constructor key-value ਜੋੜਿਆਂ ਦੇ ਕ੍ਰਮਾਂ ਤੋਂ ਸਿੱਧੇ ਡਿਕਸ਼ਨਰੀਆਂ ਬਣਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])\n" "{'sape': 4139, 'guido': 4127, 'jack': 4098}" msgstr "" +">>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])\n" +"{'sape': 4139, 'guido': 4127, 'jack': 4098}" msgid "" "In addition, dict comprehensions can be used to create dictionaries from " "arbitrary key and value expressions::" msgstr "" +"ਇਸ ਤੋਂ ਇਲਾਵਾ, dict comprehensions ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮਨਚਾਹੀਆਂ key ਅਤੇ value ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਤੋਂ " +"ਡਿਕਸ਼ਨਰੀਆਂ ਬਣਾਈਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ::" msgid "" ">>> {x: x**2 for x in (2, 4, 6)}\n" "{2: 4, 4: 16, 6: 36}" msgstr "" +">>> {x: x**2 for x in (2, 4, 6)}\n" +"{2: 4, 4: 16, 6: 36}" msgid "" "And dictionary unpacking (via ``**``) can be used to merge multiple " "dictionaries::" msgstr "" +"ਡਿਕਸ਼ਨਰੀ unpacking (``**`` ਰਾਹੀਂ) ਦੀ ਵਰਤੋਂ ਕਈ ਡਿਕਸ਼ਨਰੀਆਂ ਨੂੰ ਮਿਲਾਉਣ ਲਈ ਵੀ ਕੀਤੀ ਜਾ " +"ਸਕਦੀ ਹੈ::" msgid "" ">>> odds = {i: i**2 for i in (1, 3, 5)}\n" @@ -753,24 +1138,38 @@ msgid "" ">>> {**i for i in all_values}\n" "{1: 1, 3: 9, 5: 25, 2: 4, 4: 16, 6: 36, 0: 0}" msgstr "" +">>> odds = {i: i**2 for i in (1, 3, 5)}\n" +">>> evens = {i: i**2 for i in (2, 4, 6)}\n" +">>> {**odds, **evens}\n" +"{1: 1, 3: 9, 5: 25, 2: 4, 4: 16, 6: 36}\n" +"\n" +">>> all_values = [odds, evens, {0: 0}]\n" +">>> {**i for i in all_values}\n" +"{1: 1, 3: 9, 5: 25, 2: 4, 4: 16, 6: 36, 0: 0}" msgid "" "When the keys are simple strings, it is sometimes easier to specify pairs " "using keyword arguments::" msgstr "" +"ਜਦੋਂ keys ਸਧਾਰਣ ਸਟਰਿੰਗਾਂ ਹੋਣ, ਤਾਂ keyword arguments ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਜੋੜੇ ਨਿਰਧਾਰਤ ਕਰਨਾ ਕਈ " +"ਵਾਰ ਹੋਰ ਆਸਾਨ ਹੁੰਦਾ ਹੈ::" msgid "" ">>> dict(sape=4139, guido=4127, jack=4098)\n" "{'sape': 4139, 'guido': 4127, 'jack': 4098}" msgstr "" +">>> dict(sape=4139, guido=4127, jack=4098)\n" +"{'sape': 4139, 'guido': 4127, 'jack': 4098}" msgid "Looping Techniques" -msgstr "" +msgstr "ਲੂਪਿੰਗ ਤਕਨੀਕਾਂ" msgid "" "When looping through dictionaries, the key and corresponding value can be " "retrieved at the same time using the :meth:`~dict.items` method. ::" msgstr "" +"ਡਿਕਸ਼ਨਰੀਆਂ ਉੱਤੇ ਲੂਪ ਚਲਾਉਂਦੇ ਸਮੇਂ, :meth:`~dict.items` ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੀ ਅਤੇ ਉਸਦੇ ਸੰਬੰਧਿਤ " +"ਮੁੱਲ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}\n" @@ -780,11 +1179,19 @@ msgid "" "gallahad the pure\n" "robin the brave" msgstr "" +">>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}\n" +">>> for k, v in knights.items():\n" +"... print(k, v)\n" +"...\n" +"gallahad the pure\n" +"robin the brave" msgid "" "When looping through a sequence, the position index and corresponding value " "can be retrieved at the same time using the :func:`enumerate` function. ::" msgstr "" +"ਕਿਸੇ ਕ੍ਰਮ ਉੱਤੇ ਲੂਪ ਚਲਾਉਂਦੇ ਸਮੇਂ, :func:`enumerate` ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਥਿਤੀ ਇੰਡੈਕਸ ਅਤੇ ਉਸਦੇ " +"ਸੰਬੰਧਿਤ ਮੁੱਲ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> for i, v in enumerate(['tic', 'tac', 'toe']):\n" @@ -794,11 +1201,19 @@ msgid "" "1 tac\n" "2 toe" msgstr "" +">>> for i, v in enumerate(['tic', 'tac', 'toe']):\n" +"... print(i, v)\n" +"...\n" +"0 tic\n" +"1 tac\n" +"2 toe" msgid "" "To loop over two or more sequences at the same time, the entries can be " "paired with the :func:`zip` function. ::" msgstr "" +"ਦੋ ਜਾਂ ਵੱਧ ਕ੍ਰਮਾਂ ਉੱਤੇ ਇੱਕੋ ਸਮੇਂ ਲੂਪ ਚਲਾਉਣ ਲਈ, ਤੱਤਾਂ ਨੂੰ :func:`zip` ਫੰਕਸ਼ਨ ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ " +"ਹੈ। ::" msgid "" ">>> questions = ['name', 'quest', 'favorite color']\n" @@ -810,11 +1225,21 @@ msgid "" "What is your quest? It is the holy grail.\n" "What is your favorite color? It is blue." msgstr "" +">>> questions = ['name', 'quest', 'favorite color']\n" +">>> answers = ['lancelot', 'the holy grail', 'blue']\n" +">>> for q, a in zip(questions, answers):\n" +"... print('What is your {0}? It is {1}.'.format(q, a))\n" +"...\n" +"What is your name? It is lancelot.\n" +"What is your quest? It is the holy grail.\n" +"What is your favorite color? It is blue." msgid "" "To loop over a sequence in reverse, first specify the sequence in a forward " "direction and then call the :func:`reversed` function. ::" msgstr "" +"ਕਿਸੇ ਕ੍ਰਮ ਉੱਤੇ ਉਲਟੇ ਕ੍ਰਮ ਵਿੱਚ ਲੂਪ ਚਲਾਉਣ ਲਈ, ਪਹਿਲਾਂ ਕ੍ਰਮ ਨੂੰ ਸਧਾਰਣ ਰੂਪ ਵਿੱਚ ਦਿਓ ਅਤੇ " +"ਫਿਰ :func:`reversed` ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰੋ। ::" msgid "" ">>> for i in reversed(range(1, 10, 2)):\n" @@ -826,11 +1251,21 @@ msgid "" "3\n" "1" msgstr "" +">>> for i in reversed(range(1, 10, 2)):\n" +"... print(i)\n" +"...\n" +"9\n" +"7\n" +"5\n" +"3\n" +"1" msgid "" "To loop over a sequence in sorted order, use the :func:`sorted` function " "which returns a new sorted list while leaving the source unaltered. ::" msgstr "" +"ਕਿਸੇ ਕ੍ਰਮ ਉੱਤੇ ਕ੍ਰਮਬੱਧ ਰੂਪ ਵਿੱਚ ਲੂਪ ਚਲਾਉਣ ਲਈ :func:`sorted` ਫੰਕਸ਼ਨ ਵਰਤੋ, ਜੋ ਮੂਲ ਕ੍ਰਮ ਨੂੰ ਬਿਨਾਂ " +"ਬਦਲੇ ਇੱਕ ਨਵੀਂ ਕ੍ਰਮਬੱਧ ਲਿਸਟ ਵਾਪਸ ਕਰਦਾ ਹੈ। ::" msgid "" ">>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']\n" @@ -844,13 +1279,26 @@ msgid "" "orange\n" "pear" msgstr "" +">>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']\n" +">>> for i in sorted(basket):\n" +"... print(i)\n" +"...\n" +"apple\n" +"apple\n" +"banana\n" +"orange\n" +"orange\n" +"pear" msgid "" -"Using :func:`set` on a sequence eliminates duplicate elements. The use of :" -"func:`sorted` in combination with :func:`set` over a sequence is an " +"Using :func:`set` on a sequence eliminates duplicate elements. The use " +"of :func:`sorted` in combination with :func:`set` over a sequence is an " "idiomatic way to loop over unique elements of the sequence in sorted " "order. ::" msgstr "" +"ਕਿਸੇ ਕ੍ਰਮ ਉੱਤੇ :func:`set` ਦੀ ਵਰਤੋਂ ਕਰਨ ਨਾਲ ਦੁਹਰਾਏ ਤੱਤ ਹਟ ਜਾਂਦੇ ਹਨ। :func:`set` " +"ਅਤੇ :func:`sorted` ਨੂੰ ਇਕੱਠੇ ਵਰਤਣਾ ਕ੍ਰਮ ਦੇ ਵਿਲੱਖਣ ਤੱਤਾਂ ਉੱਤੇ ਕ੍ਰਮਬੱਧ ਰੂਪ ਵਿੱਚ ਲੂਪ ਚਲਾਉਣ ਦਾ ਇੱਕ " +"ਆਮ Python ਤਰੀਕਾ ਹੈ। ::" msgid "" ">>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']\n" @@ -862,11 +1310,21 @@ msgid "" "orange\n" "pear" msgstr "" +">>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']\n" +">>> for f in sorted(set(basket)):\n" +"... print(f)\n" +"...\n" +"apple\n" +"banana\n" +"orange\n" +"pear" msgid "" "It is sometimes tempting to change a list while you are looping over it; " "however, it is often simpler and safer to create a new list instead. ::" msgstr "" +"ਕਈ ਵਾਰ ਲੂਪ ਦੌਰਾਨ ਲਿਸਟ ਨੂੰ ਬਦਲਣ ਦੀ ਇੱਛਾ ਹੋ ਸਕਦੀ ਹੈ; ਹਾਲਾਂਕਿ, ਇਸਦੀ ਬਜਾਏ ਨਵੀਂ ਲਿਸਟ " +"ਬਣਾਉਣਾ ਅਕਸਰ ਹੋਰ ਆਸਾਨ ਅਤੇ ਸੁਰੱਖਿਅਤ ਹੁੰਦਾ ਹੈ। ::" msgid "" ">>> import math\n" @@ -879,14 +1337,25 @@ msgid "" ">>> filtered_data\n" "[56.2, 51.7, 55.3, 52.5, 47.8]" msgstr "" +">>> import math\n" +">>> raw_data = [56.2, float('NaN'), 51.7, 55.3, 52.5, float('NaN'), 47.8]\n" +">>> filtered_data = []\n" +">>> for value in raw_data:\n" +"... if not math.isnan(value):\n" +"... filtered_data.append(value)\n" +"...\n" +">>> filtered_data\n" +"[56.2, 51.7, 55.3, 52.5, 47.8]" msgid "More on Conditions" -msgstr "" +msgstr "ਸ਼ਰਤਾਂ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ" msgid "" "The conditions used in ``while`` and ``if`` statements can contain any " "operators, not just comparisons." msgstr "" +"``while`` ਅਤੇ ``if`` ਸਟੇਟਮੈਂਟਾਂ ਵਿੱਚ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ ਸ਼ਰਤਾਂ ਵਿੱਚ ਕੇਵਲ ਤੁਲਨਾਵਾਂ ਹੀ ਨਹੀਂ, " +"ਸਗੋਂ ਕਿਸੇ ਵੀ ਕਿਸਮ ਦੇ ਓਪਰੇਟਰ ਸ਼ਾਮਲ ਹੋ ਸਕਦੇ ਹਨ।" msgid "" "The comparison operators ``in`` and ``not in`` are membership tests that " @@ -895,11 +1364,17 @@ msgid "" "object. All comparison operators have the same priority, which is lower " "than that of all numerical operators." msgstr "" +"ਤੁਲਨਾ ਓਪਰੇਟਰ ``in`` ਅਤੇ ``not in`` ਮੈਂਬਰਸ਼ਿਪ ਟੈਸਟ ਹੁੰਦੇ ਹਨ ਜੋ ਇਹ ਨਿਰਧਾਰਤ ਕਰਦੇ ਹਨ ਕਿ ਕੋਈ " +"ਮੁੱਲ ਕਿਸੇ ਕੰਟੇਨਰ ਵਿੱਚ ਹੈ (ਜਾਂ ਨਹੀਂ)। ``is`` ਅਤੇ ``is not`` ਓਪਰੇਟਰ ਇਹ ਤੁਲਨਾ ਕਰਦੇ ਹਨ ਕਿ ਦੋ " +"ਓਬਜੈਕਟ ਅਸਲ ਵਿੱਚ ਇੱਕੋ ਹੀ ਓਬਜੈਕਟ ਹਨ ਜਾਂ ਨਹੀਂ। ਸਾਰੇ ਤੁਲਨਾ ਓਪਰੇਟਰਾਂ ਦੀ ਤਰਜੀਹ ਇਕੋ ਜਿਹੀ ਹੁੰਦੀ ਹੈ, " +"ਜੋ ਸਾਰੇ ਸੰਖਿਆਤਮਕ ਓਪਰੇਟਰਾਂ ਨਾਲੋਂ ਘੱਟ ਹੁੰਦੀ ਹੈ।" msgid "" "Comparisons can be chained. For example, ``a < b == c`` tests whether ``a`` " "is less than ``b`` and moreover ``b`` equals ``c``." msgstr "" +"ਤੁਲਨਾਵਾਂ ਨੂੰ ਲੜੀਵਾਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ``a < b == c`` ਇਹ ਜਾਂਚਦਾ ਹੈ ਕਿ " +"``a`` , ``b`` ਤੋਂ ਛੋਟਾ ਹੈ ਅਤੇ ਨਾਲ ਹੀ ``b`` , ``c`` ਦੇ ਬਰਾਬਰ ਹੈ।" msgid "" "Comparisons may be combined using the Boolean operators ``and`` and ``or``, " @@ -909,6 +1384,11 @@ msgid "" "lowest, so that ``A and not B or C`` is equivalent to ``(A and (not B)) or " "C``. As always, parentheses can be used to express the desired composition." msgstr "" +"ਤੁਲਨਾਵਾਂ ਨੂੰ Boolean ਓਪਰੇਟਰ ``and`` ਅਤੇ ``or`` ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਅਤੇ ਕਿਸੇ ਤੁਲਨਾ (ਜਾਂ " +"ਹੋਰ Boolean ਐਕਸਪ੍ਰੈਸ਼ਨ) ਦੇ ਨਤੀਜੇ ਨੂੰ ``not`` ਨਾਲ ਨਕਾਰਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਦੀ ਪ੍ਰਾਥਮਿਕਤਾ " +"ਤੁਲਨਾ ਓਪਰੇਟਰਾਂ ਨਾਲੋਂ ਘੱਟ ਹੁੰਦੀ ਹੈ; ਇਨ੍ਹਾਂ ਵਿੱਚ ``not`` ਦੀ ਸਭ ਤੋਂ ਵੱਧ ਅਤੇ ``or`` ਦੀ ਸਭ ਤੋਂ ਘੱਟ " +"ਪ੍ਰਾਥਮਿਕਤਾ ਹੁੰਦੀ ਹੈ। ਇਸ ਲਈ ``A and not B or C`` , ``(A and (not B)) or C`` ਦੇ " +"ਬਰਾਬਰ ਹੈ। ਹਮੇਸ਼ਾਂ ਦੀ ਤਰ੍ਹਾਂ, ਚਾਹੀਦੀ ਰਚਨਾ ਦਰਸਾਉਣ ਲਈ ਕੋਠਿਆਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "" "The Boolean operators ``and`` and ``or`` are so-called *short-circuit* " @@ -918,11 +1398,18 @@ msgid "" "expression ``C``. When used as a general value and not as a Boolean, the " "return value of a short-circuit operator is the last evaluated argument." msgstr "" +"Boolean ਓਪਰੇਟਰ ``and`` ਅਤੇ ``or`` ਨੂੰ *short-circuit* ਓਪਰੇਟਰ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਦੇ " +"ਆਰਗੂਮੈਂਟ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਵੱਲ ਮੁਲਾਂਕਿਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ ਜਿਵੇਂ ਹੀ ਨਤੀਜਾ ਨਿਰਧਾਰਤ ਹੋ ਜਾਂਦਾ ਹੈ, ਮੁਲਾਂਕਣ " +"ਰੁਕ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਜੇ ``A`` ਅਤੇ ``C`` ਸਹੀ ਹੋਣ ਪਰ ``B`` ਗਲਤ ਹੋਵੇ, ਤਾਂ ``A and B " +"and C`` ਵਿੱਚ ``C`` ਦਾ ਮੁਲਾਂਕਣ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ। ਜਦੋਂ ਇਹ Boolean ਦੀ ਬਜਾਏ ਇੱਕ ਆਮ ਮੁੱਲ ਵਜੋਂ " +"ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ short-circuit ਓਪਰੇਟਰ ਦਾ ਵਾਪਸੀ ਮੁੱਲ ਆਖਰੀ ਮੁਲਾਂਕਿਤ ਆਰਗੂਮੈਂਟ ਹੁੰਦਾ ਹੈ।" msgid "" "It is possible to assign the result of a comparison or other Boolean " "expression to a variable. For example, ::" msgstr "" +"ਕਿਸੇ ਤੁਲਨਾ ਜਾਂ ਹੋਰ Boolean ਐਕਸਪ੍ਰੈਸ਼ਨ ਦੇ ਨਤੀਜੇ ਨੂੰ ਇੱਕ ਵੇਰੀਏਬਲ ਵਿੱਚ ਅਸਾਈਨ ਕਰਨਾ ਸੰਭਵ ਹੈ। " +"ਉਦਾਹਰਨ ਲਈ, ::" msgid "" ">>> string1, string2, string3 = '', 'Trondheim', 'Hammer Dance'\n" @@ -930,6 +1417,10 @@ msgid "" ">>> non_null\n" "'Trondheim'" msgstr "" +">>> string1, string2, string3 = '', 'Trondheim', 'Hammer Dance'\n" +">>> non_null = string1 or string2 or string3\n" +">>> non_null\n" +"'Trondheim'" msgid "" "Note that in Python, unlike C, assignment inside expressions must be done " @@ -937,9 +1428,13 @@ msgid "" "an-expression>` ``:=``. This avoids a common class of problems encountered " "in C programs: typing ``=`` in an expression when ``==`` was intended." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ Python ਵਿੱਚ, C ਦੇ ਉਲਟ, ਐਕਸਪ੍ਰੈਸ਼ਨਾਂ ਦੇ ਅੰਦਰ ਅਸਾਈਨਮੈਂਟ ਸਪਸ਼ਟ ਤੌਰ " +"'ਤੇ :ref:`walrus operator ` " +"``:=`` ਨਾਲ ਕਰਨੀ ਪੈਂਦੀ ਹੈ। ਇਸ ਨਾਲ C ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਆਉਣ ਵਾਲੀ ਇੱਕ ਆਮ ਸਮੱਸਿਆ ਤੋਂ ਬਚਿਆ ਜਾਂਦਾ " +"ਹੈ, ਜਿੱਥੇ ``==`` ਦੀ ਥਾਂ ਗਲਤੀ ਨਾਲ ``=`` ਲਿਖ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ।" msgid "Comparing Sequences and Other Types" -msgstr "" +msgstr "ਕ੍ਰਮਾਂ ਅਤੇ ਹੋਰ ਕਿਸਮਾਂ ਦੀ ਤੁਲਨਾ" msgid "" "Sequence objects typically may be compared to other objects with the same " @@ -955,6 +1450,16 @@ msgid "" "order individual characters. Some examples of comparisons between sequences " "of the same type::" msgstr "" +"ਸੀਕਵੈਂਸ ਆਬਜੈਕਟ ਆਮ ਤੌਰ 'ਤੇ ਇੱਕੋ ਕਿਸਮ ਦੇ ਹੋਰ ਆਬਜੈਕਟਾਂ ਨਾਲ ਤੁਲਨਾ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਇਹ ਤੁਲਨਾ " +"*ਲੈਕਸੀਕੋਗ੍ਰਾਫਿਕਲ* ਕ੍ਰਮਬੱਧਤਾ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ: ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਪਹਿਲੇ ਦੋ ਆਈਟਮਾਂ ਦੀ ਤੁਲਨਾ ਕੀਤੀ " +"ਜਾਂਦੀ ਹੈ, ਅਤੇ ਜੇ ਉਹ ਵੱਖਰੇ ਹੁੰਦੇ ਹਨ ਤਾਂ ਇਹ ਤੁਲਨਾ ਦਾ ਨਤੀਜਾ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ; ਜੇ ਉਹ ਬਰਾਬਰ ਹੁੰਦੇ " +"ਹਨ, ਤਾਂ ਅਗਲੇ ਦੋ ਆਈਟਮਾਂ ਦੀ ਤੁਲਨਾ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਇਸੇ ਤਰ੍ਹਾਂ ਜਦ ਤੱਕ ਕਿਸੇ ਵੀ ਸੀਕਵੈਂਸ ਦੇ ਆਈਟਮ " +"ਬਾਕੀ ਨਹੀਂ ਰਹਿ ਜਾਂਦੇ। ਜੇ ਤੁਲਨਾ ਲਈ ਰੱਖੀਆਂ ਦੋ ਆਈਟਮ ਖੁਦ ਇੱਕੋ ਕਿਸਮ ਦੀਆਂ ਸੀਕਵੈਂਸਾਂ ਹੋਣ, ਤਾਂ " +"ਲੈਕਸੀਕੋਗ੍ਰਾਫਿਕਲ ਤੁਲਨਾ ਰਿਕਾਰਸੀਵ ਤਰੀਕੇ ਨਾਲ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇ ਦੋਹਾਂ ਸੀਕਵੈਂਸਾਂ ਦੀਆਂ ਸਾਰੀਆਂ " +"ਆਈਟਮਾਂ ਦੀ ਤੁਲਨਾ ਬਰਾਬਰ ਹੋਵੇ, ਤਾਂ ਦੋਹਾਂ ਸੀਕਵੈਂਸਾਂ ਨੂੰ ਬਰਾਬਰ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। ਜੇ ਇੱਕ ਸੀਕਵੈਂਸ ਦੂਜੇ ਦਾ " +"ਸ਼ੁਰੂਆਤੀ ਉਪ-ਸੀਕਵੈਂਸ ਹੋਵੇ, ਤਾਂ ਛੋਟੀ ਸੀਕਵੈਂਸ ਛੋਟੀ (ਘੱਟ) ਮੰਨੀ ਜਾਂਦੀ ਹੈ। ਸਟਰਿੰਗਾਂ ਲਈ ਲੈਕਸੀਕੋਗ੍ਰਾਫੀਕਲ " +"ਕ੍ਰਮਬੱਧਤਾ ਵਿਅਕਤੀਗਤ ਅੱਖਰਾਂ ਨੂੰ ਕ੍ਰਮਬੱਧ ਕਰਨ ਲਈ ਯੂਨੀਕੋਡ ਕੋਡ ਪੁਆਇੰਟ ਨੰਬਰ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਇੱਕੋ " +"ਕਿਸਮ ਦੀਆਂ ਲੜੀਆਂ ਵਿਚਕਾਰ ਤੁਲਨਾ ਦੀਆਂ ਕੁਝ ਉਦਾਹਰਣਾਂ::" msgid "" "(1, 2, 3) < (1, 2, 4)\n" @@ -965,6 +1470,13 @@ msgid "" "(1, 2, 3) == (1.0, 2.0, 3.0)\n" "(1, 2, ('aa', 'ab')) < (1, 2, ('abc', 'a'), 4)" msgstr "" +"(1, 2, 3) < (1, 2, 4)\n" +"[1, 2, 3] < [1, 2, 4]\n" +"'ABC' < 'C' < 'Pascal' < 'Python'\n" +"(1, 2, 3, 4) < (1, 2, 4)\n" +"(1, 2) < (1, 2, -1)\n" +"(1, 2, 3) == (1.0, 2.0, 3.0)\n" +"(1, 2, ('aa', 'ab')) < (1, 2, ('abc', 'a'), 4)" msgid "" "Note that comparing objects of different types with ``<`` or ``>`` is legal " @@ -973,11 +1485,17 @@ msgid "" "equals 0.0, etc. Otherwise, rather than providing an arbitrary ordering, " "the interpreter will raise a :exc:`TypeError` exception." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ ਆਬਜੈਕਟਾਂ ਦੀ 2 ``<`` ਜਾਂ 3 ``>`` ਨਾਲ ਤੁਲਨਾ ਤਦੋਂ ਵੈਧ ਹੁੰਦੀ ਹੈ " +"ਜੇ ਉਹਨਾਂ ਕੋਲ ਉਚਿਤ ਤੁਲਨਾ ਵਿਧੀਆਂ ਹੋਣ। ਉਦਾਹਰਨ ਲਈ, ਮਿਲੀਆਂ-ਜੁਲੀਆਂ ਸੰਖਿਆਤਮਕ ਕਿਸਮਾਂ ਦੀ ਤੁਲਨਾ " +"ਉਹਨਾਂ ਦੇ ਸੰਖਿਆਤਮਕ ਮੁੱਲ ਅਨੁਸਾਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਇਸ ਲਈ 0 ਅਤੇ 0.0 ਬਰਾਬਰ ਮੰਨੇ ਜਾਂਦੇ ਹਨ। ਨਹੀਂ ਤਾਂ, " +"ਮਨਮਾਨਾ ਕ੍ਰਮ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਬਜਾਏ, ਇੰਟਰਪ੍ਰੀਟਰ :exc:`TypeError` ਅਪਵਾਦ ਉੱਠਾਏਗਾ।" msgid "Footnotes" -msgstr "" +msgstr "ਫੁੱਟਨੋਟ" msgid "" "Other languages may return the mutated object, which allows method chaining, " "such as ``d->insert(\"a\")->remove(\"b\")->sort();``." msgstr "" +"ਕੁਝ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਬਦਲੇ ਹੋਏ ਆਬਜੈਕਟ ਨੂੰ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ, ਜਿਸ ਨਾਲ method chaining ਸੰਭਵ ਹੋ " +"ਜਾਂਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ``d->insert(\"a\")->remove(\"b\")->sort();``।" diff --git a/tutorial/errors.po b/tutorial/errors.po index a1c294d..003a4f3 100644 --- a/tutorial/errors.po +++ b/tutorial/errors.po @@ -5,18 +5,17 @@ # # Translators: # Bhuvansh Kataria, 2026 -# Lakshdeep Kashyap, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Lakshdeep Kashyap, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Bhuvansh Kataria, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Errors and Exceptions" -msgstr "ਗਲਤੀਆਂ ਅਤੇ ਐਕਸੈਪਸ਼ਨ" +msgstr "ਗਲਤੀਆਂ ਅਤੇ ਅਪਵਾਦ" msgid "" "Until now error messages haven't been more than mentioned, but if you have " @@ -32,8 +31,8 @@ msgid "" "two distinguishable kinds of errors: *syntax errors* and *exceptions*." msgstr "" "ਹੁਣ ਤੱਕ ਗਲਤੀ ਸੁਨੇਹਿਆਂ ਦਾ ਸਿਰਫ਼ ਜ਼ਿਕਰ ਹੀ ਕੀਤਾ ਗਿਆ ਹੈ, ਪਰ ਜੇ ਤੁਸੀਂ ਉਦਾਹਰਨਾਂ ਅਜ਼ਮਾਈਆਂ ਹਨ ਤਾਂ " -"ਸ਼ਾਇਦ ਤੁਸੀਂ ਕੁਝ ਵੇਖੇ ਹੋਣਗੇ। ਘੱਟੋ-ਘੱਟ ਦੋ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੀਆਂ ਗਲਤੀਆਂ ਹਨ: *ਸਿੰਟੈਕਸ ਗਲਤੀਆਂ* ਅਤੇ " -"*ਐਕਸੈਪਸ਼ਨਜ਼*।" +"ਸ਼ਾਇਦ ਤੁਸੀਂ ਕੁਝ ਵੇਖੇ ਹੋਣਗੇ। (ਘੱਟੋ-ਘੱਟ) ਦੋ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੀਆਂ ਗਲਤੀਆਂ ਹਨ: *ਸਿੰਟੈਕਸ ਗਲਤੀਆਂ* ਅਤੇ " +"*ਅਪਵਾਦ*।" msgid "Syntax Errors" msgstr "ਸਿੰਟੈਕਸ ਗਲਤੀਆਂ" @@ -43,7 +42,7 @@ msgid "" "kind of complaint you get while you are still learning Python::" msgstr "" "ਸਿੰਟੈਕਸ ਗਲਤੀਆਂ, ਜਿਨ੍ਹਾਂ ਨੂੰ parsing errors ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਸ਼ਾਇਦ Python ਸਿੱਖਣ ਦੌਰਾਨ " -"ਤੁਹਾਨੂੰ ਸਭ ਤੋਂ ਵੱਧ ਮਿਲਣ ਵਾਲੀਆਂ ਗਲਤੀਆਂ ਹਨ::" +"ਤੁਹਾਨੂੰ ਸਭ ਤੋਂ ਵੱਧ ਮਿਲਣ ਵਾਲੀ ਗਲਤੀ ਦੀ ਕਿਸਮ ਹੁੰਦੀਆਂ ਹਨ::" msgid "" ">>> while True print('Hello world')\n" @@ -87,11 +86,11 @@ msgid "" "not handled by programs, however, and result in error messages as shown " "here::" msgstr "" -"ਭਾਵੇਂ ਕੋਈ statement ਜਾਂ expression ਸਿੰਟੈਕਸ ਅਨੁਸਾਰ ਸਹੀ ਹੋਵੇ, ਫਿਰ ਵੀ ਉਸਨੂੰ ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ " -"ਦੌਰਾਨ ਗਲਤੀ ਆ ਸਕਦੀ ਹੈ। ਚਲਾਉਣ ਸਮੇਂ ਮਿਲਣ ਵਾਲੀਆਂ ਗਲਤੀਆਂ ਨੂੰ *exceptions* ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਅਤੇ " -"ਇਹ ਹਮੇਸ਼ਾਂ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਬੰਦ ਨਹੀਂ ਕਰਦੀਆਂ। ਤੁਸੀਂ ਜਲਦੀ ਹੀ ਸਿੱਖੋਗੇ ਕਿ Python ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਉਹਨਾਂ ਨੂੰ " -"ਕਿਵੇਂ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਜ਼ਿਆਦਾਤਰ exceptions ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਸੰਭਾਲੀਆਂ ਨਹੀਂ ਜਾਂਦੀਆਂ " -"ਅਤੇ ਹੇਠਾਂ ਦਿੱਤੇ ਤਰ੍ਹਾਂ ਗਲਤੀ ਸੁਨੇਹੇ ਪੈਦਾ ਕਰਦੀਆਂ ਹਨ::" +"ਭਾਵੇਂ ਕੋਈ ਕਥਨ ਜਾਂ ਅਭਿਵ੍ਯੰਜਨਾ ਸਿੰਟੈਕਸ ਅਨੁਸਾਰ ਸਹੀ ਹੋਵੇ, ਫਿਰ ਵੀ ਉਸਨੂੰ ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਦੌਰਾਨ " +"ਗਲਤੀ ਆ ਸਕਦੀ ਹੈ। ਚਲਾਉਣ ਸਮੇਂ ਮਿਲਣ ਵਾਲੀਆਂ ਗਲਤੀਆਂ ਨੂੰ *ਅਪਵਾਦ* ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਹਮੇਸ਼ਾਂ " +"ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਬੰਦ ਨਹੀਂ ਕਰਦੀਆਂ। ਤੁਸੀਂ ਜਲਦੀ ਹੀ ਸਿੱਖੋਗੇ ਕਿ Python ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਇਹਨਾਂ ਨੂੰ ਕਿਵੇਂ " +"ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਜ਼ਿਆਦਾਤਰ ਅਪਵਾਦ ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਸੰਭਾਲੇ ਨਹੀਂ ਜਾਂਦੇ ਅਤੇ ਹੇਠਾਂ ਦਿੱਤੇ " +"ਤਰ੍ਹਾਂ ਗਲਤੀ ਸੁਨੇਹੇ ਪੈਦਾ ਕਰਦੇ ਹਨ::" msgid "" ">>> 10 * (1/0)\n" @@ -113,22 +112,47 @@ msgid "" " ~~~~^~~\n" "TypeError: can only concatenate str (not \"int\") to str" msgstr "" +">>> 10 * (1/0)\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" 10 * (1/0)\n" +" ~^~\n" +"ZeroDivisionError: division by zero\n" +">>> 4 + spam*3\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" 4 + spam*3\n" +" ^^^^\n" +"NameError: name 'spam' is not defined\n" +">>> '2' + 2\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" '2' + 2\n" +" ~~~~^~~\n" +"TypeError: can only concatenate str (not \"int\") to str" msgid "" "The last line of the error message indicates what happened. Exceptions come " "in different types, and the type is printed as part of the message: the " -"types in the example are :exc:`ZeroDivisionError`, :exc:`NameError` and :exc:" -"`TypeError`. The string printed as the exception type is the name of the " -"built-in exception that occurred. This is true for all built-in exceptions, " -"but need not be true for user-defined exceptions (although it is a useful " -"convention). Standard exception names are built-in identifiers (not reserved " -"keywords)." -msgstr "" +"types in the example are :exc:`ZeroDivisionError`, :exc:`NameError` " +"and :exc:`TypeError`. The string printed as the exception type is the name " +"of the built-in exception that occurred. This is true for all built-in " +"exceptions, but need not be true for user-defined exceptions (although it is " +"a useful convention). Standard exception names are built-in identifiers (not " +"reserved keywords)." +msgstr "" +"ਗਲਤੀ ਸੁਨੇਹੇ ਦੀ ਆਖਰੀ ਲਾਈਨ ਦੱਸਦੀ ਹੈ ਕਿ ਕੀ ਹੋਇਆ। ਅਪਵਾਦ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ ਹੁੰਦੇ ਹਨ ਅਤੇ ਉਹਨਾਂ ਦੀ " +"ਕਿਸਮ ਸੁਨੇਹੇ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ। ਇਸ ਉਦਾਹਰਨ " +"ਵਿੱਚ :exc:`ZeroDivisionError`, :exc:`NameError` ਅਤੇ :exc:`TypeError` ਹਨ। ਅਪਵਾਦ " +"ਦੀ ਕਿਸਮ ਵਜੋਂ ਦਿਖਾਈ ਗਈ ਸਟਰਿੰਗ ਉਸ built-in ਅਪਵਾਦ ਦਾ ਨਾਮ ਹੁੰਦੀ ਹੈ ਜੋ ਵਾਪਰਿਆ ਸੀ। ਇਹ ਸਾਰੇ " +"built-in ਅਪਵਾਦਾਂ ਲਈ ਸਹੀ ਹੈ, ਹਾਲਾਂਕਿ user-defined ਅਪਵਾਦਾਂ ਲਈ ਲਾਜ਼ਮੀ ਨਹੀਂ (ਪਰ ਇਹ ਇੱਕ " +"ਲਾਭਦਾਇਕ ਰਿਵਾਜ ਹੈ)। ਮਿਆਰੀ ਅਪਵਾਦ ਨਾਮ built-in identifiers ਹੁੰਦੇ ਹਨ (reserved " +"keywords ਨਹੀਂ)।" msgid "" "The rest of the line provides detail based on the type of exception and what " "caused it." -msgstr "" +msgstr "ਲਾਈਨ ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਅਪਵਾਦ ਦੀ ਕਿਸਮ ਅਤੇ ਉਸਦੇ ਕਾਰਨ ਬਾਰੇ ਹੋਰ ਵੇਰਵਾ ਦਿੰਦਾ ਹੈ।" msgid "" "The preceding part of the error message shows the context where the " @@ -136,22 +160,32 @@ msgid "" "a stack traceback listing source lines; however, it will not display lines " "read from standard input." msgstr "" +"ਗਲਤੀ ਸੁਨੇਹੇ ਦਾ ਪਹਿਲਾਂ ਵਾਲਾ ਹਿੱਸਾ ਉਸ ਸੰਦਰਭ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿੱਥੇ ਅਪਵਾਦ ਵਾਪਰਿਆ ਸੀ, ਜਿਸਨੂੰ " +"ਸਟੈਕ ਟ੍ਰੇਸਬੈਕ ਦੇ ਰੂਪ ਵਿੱਚ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ ਇਸ ਵਿੱਚ ਸਰੋਤ ਕੋਡ ਦੀਆਂ ਲਾਈਨਾਂ ਦੀ ਸੂਚੀ " +"ਹੁੰਦੀ ਹੈ, ਪਰ standard input ਤੋਂ ਪੜ੍ਹੀਆਂ ਗਈਆਂ ਲਾਈਨਾਂ ਨਹੀਂ ਦਿਖਾਈਆਂ ਜਾਂਦੀਆਂ।" msgid "" ":ref:`bltin-exceptions` lists the built-in exceptions and their meanings." msgstr "" +":ref:`bltin-exceptions` ਵਿੱਚ built-in exceptions ਅਤੇ ਉਹਨਾਂ ਦੇ ਅਰਥਾਂ ਦੀ ਸੂਚੀ ਦਿੱਤੀ " +"ਗਈ ਹੈ।" msgid "Handling Exceptions" -msgstr "" +msgstr "ਅਪਵਾਦਾਂ ਨੂੰ ਸੰਭਾਲਣਾ" msgid "" "It is possible to write programs that handle selected exceptions. Look at " "the following example, which asks the user for input until a valid integer " -"has been entered, but allows the user to interrupt the program (using :kbd:" -"`Control-C` or whatever the operating system supports); note that a user-" -"generated interruption is signalled by raising the :exc:`KeyboardInterrupt` " -"exception. ::" +"has been entered, but allows the user to interrupt the program " +"(using :kbd:`Control-C` or whatever the operating system supports); note " +"that a user-generated interruption is signalled by raising " +"the :exc:`KeyboardInterrupt` exception. ::" msgstr "" +"ਅਜਿਹੇ ਪ੍ਰੋਗਰਾਮ ਲਿਖੇ ਜਾ ਸਕਦੇ ਹਨ ਜੋ ਚੁਣੇ ਹੋਏ ਅਪਵਾਦਾਂ ਨੂੰ ਸੰਭਾਲ ਸਕਣ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵੇਖੋ, ਜੋ " +"ਵਰਤੋਂਕਾਰ ਤੋਂ ਇਨਪੁੱਟ ਮੰਗਦੀ ਰਹਿੰਦੀ ਹੈ ਜਦ ਤੱਕ ਇੱਕ ਵੈਧ ਪੂਰਨ ਅੰਕ ਦਰਜ ਨਾ ਕੀਤਾ ਜਾਵੇ, ਪਰ ਨਾਲ ਹੀ " +"ਵਰਤੋਂਕਾਰ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਰੁਕਾਵਟ ਪੈਦਾ ਕਰਨ ਦੀ ਆਗਿਆ ਵੀ ਦਿੰਦੀ ਹੈ (:kbd:`Control-C` ਜਾਂ " +"ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਦੁਆਰਾ ਸਮਰਥਿਤ ਕੋਈ ਹੋਰ ਤਰੀਕਾ)। ਧਿਆਨ ਦਿਓ ਕਿ ਵਰਤੋਂਕਾਰ ਦੁਆਰਾ ਕੀਤੀ ਗਈ " +"ਰੁਕਾਵਟ :exc:`KeyboardInterrupt` ਅਪਵਾਦ ਰਾਹੀਂ ਦਰਸਾਈ ਜਾਂਦੀ ਹੈ। ::" msgid "" ">>> while True:\n" @@ -162,19 +196,30 @@ msgid "" "... print(\"Oops! That was no valid number. Try again...\")\n" "..." msgstr "" +">>> while True:\n" +"... try:\n" +"... x = int(input(\"Please enter a number: \"))\n" +"... break\n" +"... except ValueError:\n" +"... print(\"Oops! That was no valid number. Try again...\")\n" +"..." msgid "The :keyword:`try` statement works as follows." -msgstr "" +msgstr ":keyword:`try` ਸਟੇਟਮੈਂਟ ਹੇਠਾਂ ਦਿੱਤੇ ਤਰੀਕੇ ਨਾਲ ਕੰਮ ਕਰਦੀ ਹੈ।" msgid "" -"First, the *try clause* (the statement(s) between the :keyword:`try` and :" -"keyword:`except` keywords) is executed." +"First, the *try clause* (the statement(s) between the :keyword:`try` " +"and :keyword:`except` keywords) is executed." msgstr "" +"ਸਭ ਤੋਂ ਪਹਿਲਾਂ *try clause* (ਅਰਥਾਤ :keyword:`try` ਅਤੇ :keyword:`except` ਕੀਵਰਡਾਂ ਦੇ " +"ਵਿਚਕਾਰ ਮੌਜੂਦ ਕਥਨਾਂ) ਨੂੰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "" -"If no exception occurs, the *except clause* is skipped and execution of the :" -"keyword:`try` statement is finished." +"If no exception occurs, the *except clause* is skipped and execution of " +"the :keyword:`try` statement is finished." msgstr "" +"ਜੇ ਕੋਈ exception ਨਹੀਂ ਵਾਪਰਦੀ ਤਾਂ *except clause* ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ " +"ਅਤੇ :keyword:`try` ਸਟੇਟਮੈਂਟ ਦੀ ਕਾਰਵਾਈ ਪੂਰੀ ਹੋ ਜਾਂਦੀ ਹੈ।" msgid "" "If an exception occurs during execution of the :keyword:`try` clause, the " @@ -182,6 +227,10 @@ msgid "" "named after the :keyword:`except` keyword, the *except clause* is executed, " "and then execution continues after the try/except block." msgstr "" +"ਜੇ :keyword:`try` clause ਦੀ ਕਾਰਵਾਈ ਦੌਰਾਨ ਕੋਈ exception ਵਾਪਰਦੀ ਹੈ ਤਾਂ ਬਾਕੀ clause " +"ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਫਿਰ ਜੇ exception ਦੀ ਕਿਸਮ :keyword:`except` ਤੋਂ ਬਾਅਦ ਦਿੱਤੀ " +"exception ਨਾਲ ਮਿਲਦੀ ਹੈ ਤਾਂ *except clause* ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਸ ਤੋਂ ਬਾਅਦ ਕਾਰਵਾਈ " +"try/except ਬਲਾਕ ਤੋਂ ਅੱਗੇ ਜਾਰੀ ਰਹਿੰਦੀ ਹੈ।" msgid "" "If an exception occurs which does not match the exception named in the " @@ -189,6 +238,9 @@ msgid "" "handler is found, it is an *unhandled exception* and execution stops with an " "error message." msgstr "" +"ਜੇ ਕੋਈ ਅਜਿਹਾ ਅਪਵਾਦ ਵਾਪਰਦਾ ਹੈ ਜੋ *except clause* ਵਿੱਚ ਦਿੱਤੇ ਅਪਵਾਦ ਨਾਲ ਨਹੀਂ ਮਿਲਦਾ, ਤਾਂ " +"ਇਸਨੂੰ ਬਾਹਰੀ :keyword:`try` ਕਥਨਾਂ ਵੱਲ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ। ਜੇ ਕੋਈ handler ਨਹੀਂ ਮਿਲਦਾ ਤਾਂ ਇਹ " +"ਇੱਕ *unhandled exception* ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਪ੍ਰੋਗਰਾਮ ਗਲਤੀ ਸੁਨੇਹੇ ਨਾਲ ਰੁਕ ਜਾਂਦਾ ਹੈ।" msgid "" "A :keyword:`try` statement may have more than one *except clause*, to " @@ -197,11 +249,18 @@ msgid "" "*try clause*, not in other handlers of the same :keyword:`!try` statement. " "An *except clause* may name multiple exceptions, for example::" msgstr "" +"ਇੱਕ :keyword:`try` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਇੱਕ ਤੋਂ ਵੱਧ *except clause* ਹੋ ਸਕਦੇ ਹਨ ਤਾਂ ਜੋ ਵੱਖ-ਵੱਖ " +"ਅਪਵਾਦਾਂ ਲਈ ਹੈਂਡਲਰ ਨਿਰਧਾਰਤ ਕੀਤੇ ਜਾ ਸਕਣ। ਵੱਧ ਤੋਂ ਵੱਧ ਇੱਕ ਹੀ ਹੈਂਡਲਰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। ਹੈਂਡਲਰ " +"ਸਿਰਫ਼ ਉਸੇ *try clause* ਵਿੱਚ ਵਾਪਰਨ ਵਾਲੇ ਅਪਵਾਦਾਂ ਨੂੰ ਸੰਭਾਲਦੇ ਹਨ, ਉਸੇ :keyword:`!try` " +"ਸਟੇਟਮੈਂਟ ਦੇ ਹੋਰ ਹੈਂਡਲਰਾਂ ਵਿੱਚ ਵਾਪਰਨ ਵਾਲੇ ਅਪਵਾਦਾਂ ਨੂੰ ਨਹੀਂ। ਇੱਕ *except clause* ਕਈ ਅਪਵਾਦਾਂ ਦੇ " +"ਨਾਮ ਵੀ ਦੇ ਸਕਦਾ ਹੈ, ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "... except RuntimeError, TypeError, NameError:\n" "... pass" msgstr "" +"... except RuntimeError, TypeError, NameError:\n" +"... pass" msgid "" "A class in an :keyword:`except` clause matches exceptions which are " @@ -210,6 +269,10 @@ msgid "" "match instances of its base classes). For example, the following code will " "print B, C, D in that order::" msgstr "" +":keyword:`except` clause ਵਿੱਚ ਦਿੱਤੀ ਕਲਾਸ ਉਹਨਾਂ ਅਪਵਾਦਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ ਜੋ ਉਸ ਕਲਾਸ " +"ਜਾਂ ਉਸ ਦੀਆਂ ਵਿਉਤਪੰਨ ਕਲਾਸਾਂ ਦੇ ਇੰਸਟੈਂਸ ਹੁੰਦੇ ਹਨ (ਪਰ ਇਸਦਾ ਉਲਟ ਸਹੀ ਨਹੀਂ ਹੈ — ਵਿਉਤਪੰਨ ਕਲਾਸ " +"ਵਾਲਾ *except clause* ਬੇਸ ਕਲਾਸ ਦੇ ਇੰਸਟੈਂਸ ਨਾਲ ਮੇਲ ਨਹੀਂ ਖਾਂਦਾ)। ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ " +"B, C, D ਨੂੰ ਇਸੇ ਕ੍ਰਮ ਵਿੱਚ ਪ੍ਰਿੰਟ ਕਰੇਗਾ::" msgid "" "class B(Exception):\n" @@ -231,18 +294,41 @@ msgid "" " except B:\n" " print(\"B\")" msgstr "" +"class B(Exception):\n" +" pass\n" +"\n" +"class C(B):\n" +" pass\n" +"\n" +"class D(C):\n" +" pass\n" +"\n" +"for cls in [B, C, D]:\n" +" try:\n" +" raise cls()\n" +" except D:\n" +" print(\"D\")\n" +" except C:\n" +" print(\"C\")\n" +" except B:\n" +" print(\"B\")" msgid "" "Note that if the *except clauses* were reversed (with ``except B`` first), " "it would have printed B, B, B --- the first matching *except clause* is " "triggered." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਜੇ *except clauses* ਦਾ ਕ੍ਰਮ ਉਲਟ ਦਿੱਤਾ ਜਾਵੇ (ਅਰਥਾਤ ``except B`` ਸਭ ਤੋਂ " +"ਪਹਿਲਾਂ ਹੋਵੇ), ਤਾਂ ਨਤੀਜਾ B, B, B ਆਉਂਦਾ ਕਿਉਂਕਿ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਮੇਲ ਖਾਣ ਵਾਲਾ *except " +"clause* ਹੀ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "" "When an exception occurs, it may have associated values, also known as the " "exception's *arguments*. The presence and types of the arguments depend on " "the exception type." msgstr "" +"ਜਦੋਂ ਕੋਈ ਅਪਵਾਦ ਵਾਪਰਦਾ ਹੈ, ਤਾਂ ਉਸ ਨਾਲ ਕੁਝ ਮੁੱਲ ਜੁੜੇ ਹੋ ਸਕਦੇ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ ਅਪਵਾਦ ਦੇ *ਆਰਗੂਮੈਂਟ* ਵੀ " +"ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਮੌਜੂਦਗੀ ਅਤੇ ਕਿਸਮ ਅਪਵਾਦ ਦੀ ਕਿਸਮ ਉੱਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ।" msgid "" "The *except clause* may specify a variable after the exception name. The " @@ -251,6 +337,10 @@ msgid "" "types define :meth:`~object.__str__` to print all the arguments without " "explicitly accessing ``.args``. ::" msgstr "" +"*except clause* ਅਪਵਾਦ ਦੇ ਨਾਮ ਤੋਂ ਬਾਅਦ ਇੱਕ ਵੇਰੀਏਬਲ ਵੀ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦਾ ਹੈ। ਇਹ ਵੇਰੀਏਬਲ " +"ਅਪਵਾਦ ਇੰਸਟੈਂਸ ਨਾਲ ਜੁੜ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ``args`` ਐਟ੍ਰਿਬਿਊਟ ਹੁੰਦਾ ਹੈ ਜੋ ਆਰਗੂਮੈਂਟਾਂ " +"ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ। ਸੁਵਿਧਾ ਲਈ built-in ਅਪਵਾਦ ਕਿਸਮਾਂ :meth:`~object.__str__` ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ " +"ਕਰਦੀਆਂ ਹਨ ਤਾਂ ਜੋ ``.args`` ਨੂੰ ਸਿੱਧਾ ਐਕਸੈਸ ਕੀਤੇ ਬਿਨਾਂ ਸਾਰੇ ਆਰਗੂਮੈਂਟ ਪ੍ਰਿੰਟ ਕੀਤੇ ਜਾ ਸਕਣ। ::" msgid "" ">>> try:\n" @@ -271,21 +361,47 @@ msgid "" "x = spam\n" "y = eggs" msgstr "" +">>> try:\n" +"... raise Exception('spam', 'eggs')\n" +"... except Exception as inst:\n" +"... print(type(inst)) # exception ਦੀ ਕਿਸਮ\n" +"... print(inst.args) # .args ਵਿੱਚ ਸੰਭਾਲੇ ਆਰਗੂਮੈਂਟ\n" +"... print(inst) # __str__ ਨਾਲ args ਸਿੱਧੇ ਪ੍ਰਿੰਟ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ,\n" +"... # ਪਰ exception subclasses ਵਿੱਚ ਇਸਨੂੰ override ਕੀਤਾ " +"ਜਾ ਸਕਦਾ ਹੈ\n" +"... x, y = inst.args # args ਨੂੰ unpack ਕਰੋ\n" +"... print('x =', x)\n" +"... print('y =', y)\n" +"...\n" +"\n" +"('spam', 'eggs')\n" +"('spam', 'eggs')\n" +"x = spam\n" +"y = eggs" msgid "" "The exception's :meth:`~object.__str__` output is printed as the last part " "('detail') of the message for unhandled exceptions." msgstr "" +"ਬਿਨਾਂ ਸੰਭਾਲੀਆਂ exceptions ਲਈ ਸੁਨੇਹੇ ਦੇ ਆਖਰੀ ਹਿੱਸੇ ('detail') ਵਜੋਂ exception " +"ਦੀ :meth:`~object.__str__` ਆਉਟਪੁੱਟ ਪ੍ਰਿੰਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" ":exc:`BaseException` is the common base class of all exceptions. One of its " "subclasses, :exc:`Exception`, is the base class of all the non-fatal " "exceptions. Exceptions which are not subclasses of :exc:`Exception` are not " "typically handled, because they are used to indicate that the program should " -"terminate. They include :exc:`SystemExit` which is raised by :meth:`sys." -"exit` and :exc:`KeyboardInterrupt` which is raised when a user wishes to " -"interrupt the program." +"terminate. They include :exc:`SystemExit` which is raised " +"by :meth:`sys.exit` and :exc:`KeyboardInterrupt` which is raised when a user " +"wishes to interrupt the program." msgstr "" +":exc:`BaseException` ਸਾਰੀਆਂ exceptions ਦੀ ਸਾਂਝੀ base class ਹੈ। ਇਸ ਦੀ ਇੱਕ " +"subclass :exc:`Exception` ਹੈ, ਜੋ ਸਾਰੀਆਂ ਗੈਰ-ਘਾਤਕ exceptions ਦੀ base class ਹੈ। " +"ਜਿਹੜੀਆਂ exceptions :exc:`Exception` ਦੀਆਂ subclasses ਨਹੀਂ ਹੁੰਦੀਆਂ, ਉਹ ਆਮ ਤੌਰ 'ਤੇ " +"handle ਨਹੀਂ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਕਿਉਂਕਿ ਉਹ ਇਸ ਗੱਲ ਦਾ ਸੰਕੇਤ ਦਿੰਦੀਆਂ ਹਨ ਕਿ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਸਮਾਪਤ ਹੋਣਾ " +"ਚਾਹੀਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਵਿੱਚ :exc:`SystemExit` ਸ਼ਾਮਲ ਹੈ ਜੋ :meth:`sys.exit` ਦੁਆਰਾ raise " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ :exc:`KeyboardInterrupt` ਜੋ ਵਰਤੋਂਕਾਰ ਵੱਲੋਂ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਰੁਕਾਵਟ ਪੈਦਾ ਕਰਨ " +"ਸਮੇਂ raise ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" ":exc:`Exception` can be used as a wildcard that catches (almost) everything. " @@ -293,12 +409,19 @@ msgid "" "exceptions that we intend to handle, and to allow any unexpected exceptions " "to propagate on." msgstr "" +":exc:`Exception` ਨੂੰ ਇੱਕ wildcard ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ (ਲਗਭਗ) ਹਰ exception ਨੂੰ " +"ਪਕੜ ਲੈਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਇਹ ਚੰਗੀ ਪ੍ਰਥਾ ਮੰਨੀ ਜਾਂਦੀ ਹੈ ਕਿ ਅਸੀਂ ਉਹਨਾਂ exceptions ਦੀਆਂ ਕਿਸਮਾਂ " +"ਬਾਰੇ ਜਿੰਨਾ ਸੰਭਵ ਹੋ ਸਕੇ ਉਤਨੇ ਖਾਸ ਹੋਈਏ ਜਿਨ੍ਹਾਂ ਨੂੰ ਅਸੀਂ ਸੰਭਾਲਣਾ ਚਾਹੁੰਦੇ ਹਾਂ, ਅਤੇ ਅਣਉਮੀਦ " +"exceptions ਨੂੰ ਅੱਗੇ ਪ੍ਰਸਾਰਿਤ ਹੋਣ ਦੇਈਏ।" msgid "" "The most common pattern for handling :exc:`Exception` is to print or log the " "exception and then re-raise it (allowing a caller to handle the exception as " "well)::" msgstr "" +":exc:`Exception` ਨੂੰ ਸੰਭਾਲਣ ਦਾ ਸਭ ਤੋਂ ਆਮ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ exception ਨੂੰ ਪ੍ਰਿੰਟ ਜਾਂ log " +"ਕੀਤਾ ਜਾਵੇ ਅਤੇ ਫਿਰ ਇਸਨੂੰ ਦੁਬਾਰਾ raise ਕੀਤਾ ਜਾਵੇ (ਤਾਂ ਜੋ ਕਾਲ ਕਰਨ ਵਾਲਾ ਕੋਡ ਵੀ ਇਸਨੂੰ ਸੰਭਾਲ " +"ਸਕੇ)::" msgid "" "import sys\n" @@ -315,6 +438,19 @@ msgid "" " print(f\"Unexpected {err=}, {type(err)=}\")\n" " raise" msgstr "" +"import sys\n" +"\n" +"try:\n" +" f = open('myfile.txt')\n" +" s = f.readline()\n" +" i = int(s.strip())\n" +"except OSError as err:\n" +" print(\"OS error:\", err)\n" +"except ValueError:\n" +" print(\"Could not convert data to an integer.\")\n" +"except Exception as err:\n" +" print(f\"Unexpected {err=}, {type(err)=}\")\n" +" raise" msgid "" "The :keyword:`try` ... :keyword:`except` statement has an optional *else " @@ -322,6 +458,10 @@ msgid "" "useful for code that must be executed if the *try clause* does not raise an " "exception. For example::" msgstr "" +":keyword:`try` ... :keyword:`except` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਇੱਕ ਵਿਕਲਪਿਕ *else clause* ਵੀ ਹੋ " +"ਸਕਦਾ ਹੈ, ਜੋ ਮੌਜੂਦ ਹੋਣ ਦੀ ਸਥਿਤੀ ਵਿੱਚ ਸਾਰੇ *except clauses* ਤੋਂ ਬਾਅਦ ਆਉਣਾ ਲਾਜ਼ਮੀ ਹੈ। ਇਹ " +"ਉਸ ਕੋਡ ਲਈ ਲਾਭਦਾਇਕ ਹੈ ਜੋ ਤਦ ਹੀ ਚਲਾਇਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਜਦੋਂ *try clause* ਕੋਈ exception " +"raise ਨਾ ਕਰੇ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" "for arg in sys.argv[1:]:\n" @@ -333,6 +473,14 @@ msgid "" " print(arg, 'has', len(f.readlines()), 'lines')\n" " f.close()" msgstr "" +"for arg in sys.argv[1:]:\n" +" try:\n" +" f = open(arg, 'r')\n" +" except OSError:\n" +" print('cannot open', arg)\n" +" else:\n" +" print(arg, 'has', len(f.readlines()), 'lines')\n" +" f.close()" msgid "" "The use of the :keyword:`!else` clause is better than adding additional code " @@ -340,12 +488,18 @@ msgid "" "exception that wasn't raised by the code being protected by the :keyword:`!" "try` ... :keyword:`!except` statement." msgstr "" +":keyword:`!else` clause ਦੀ ਵਰਤੋਂ :keyword:`try` clause ਵਿੱਚ ਵਾਧੂ ਕੋਡ ਸ਼ਾਮਲ ਕਰਨ ਨਾਲੋਂ " +"ਬਿਹਤਰ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਗਲਤੀ ਨਾਲ ਅਜਿਹੀ exception ਨੂੰ ਪਕੜਨ ਤੋਂ ਬਚਾਉਂਦੀ ਹੈ ਜੋ :keyword:`!" +"try` ... :keyword:`!except` ਸਟੇਟਮੈਂਟ ਦੁਆਰਾ ਸੁਰੱਖਿਅਤ ਕੀਤੇ ਕੋਡ ਤੋਂ ਨਹੀਂ ਆਈ ਸੀ।" msgid "" "Exception handlers do not handle only exceptions that occur immediately in " "the *try clause*, but also those that occur inside functions that are called " "(even indirectly) in the *try clause*. For example::" msgstr "" +"Exception handlers ਸਿਰਫ਼ ਉਹ exceptions ਨਹੀਂ ਸੰਭਾਲਦੇ ਜੋ ਸਿੱਧੇ *try clause* ਵਿੱਚ " +"ਵਾਪਰਦੀਆਂ ਹਨ, ਸਗੋਂ ਉਹਨਾਂ functions ਦੇ ਅੰਦਰ ਵਾਪਰਨ ਵਾਲੀਆਂ exceptions ਨੂੰ ਵੀ ਸੰਭਾਲਦੇ ਹਨ " +"ਜਿਨ੍ਹਾਂ ਨੂੰ *try clause* ਦੇ ਅੰਦਰ (ਸਿੱਧੇ ਜਾਂ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ) ਕਾਲ ਕੀਤਾ ਗਿਆ ਹੋਵੇ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> def this_fails():\n" @@ -358,14 +512,25 @@ msgid "" "...\n" "Handling run-time error: division by zero" msgstr "" +">>> def this_fails():\n" +"... x = 1/0\n" +"...\n" +">>> try:\n" +"... this_fails()\n" +"... except ZeroDivisionError as err:\n" +"... print('Handling run-time error:', err)\n" +"...\n" +"Handling run-time error: division by zero" msgid "Raising Exceptions" -msgstr "" +msgstr "Exceptions ਰੇਜ਼ ਕਰਨਾ" msgid "" "The :keyword:`raise` statement allows the programmer to force a specified " "exception to occur. For example::" msgstr "" +":keyword:`raise` ਸਟੇਟਮੈਂਟ ਪ੍ਰੋਗਰਾਮਰ ਨੂੰ ਕਿਸੇ ਨਿਰਧਾਰਤ exception ਨੂੰ ਜਾਣ-ਬੁੱਝ ਕੇ ਵਾਪਰਣ ਲਈ " +"ਮਜਬੂਰ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> raise NameError('HiThere')\n" @@ -374,6 +539,11 @@ msgid "" " raise NameError('HiThere')\n" "NameError: HiThere" msgstr "" +">>> raise NameError('HiThere')\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" raise NameError('HiThere')\n" +"NameError: HiThere" msgid "" "The sole argument to :keyword:`raise` indicates the exception to be raised. " @@ -382,15 +552,23 @@ msgid "" "its subclasses). If an exception class is passed, it will be implicitly " "instantiated by calling its constructor with no arguments::" msgstr "" +":keyword:`raise` ਦਾ ਇਕੱਲਾ argument ਉਸ exception ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿਸਨੂੰ raise ਕਰਨਾ " +"ਹੈ। ਇਹ ਜਾਂ ਤਾਂ ਇੱਕ exception instance ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜਾਂ ਇੱਕ exception class (ਅਜਿਹੀ " +"class ਜੋ :class:`BaseException` ਤੋਂ derived ਹੋਵੇ, ਜਿਵੇਂ :exc:`Exception` ਜਾਂ ਇਸ ਦੀਆਂ " +"subclasses)। ਜੇ ਇੱਕ exception class ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਇਸਦਾ constructor ਬਿਨਾਂ " +"arguments ਦੇ ਆਪੇ ਕਾਲ ਕਰਕੇ instance ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ::" msgid "raise ValueError # shorthand for 'raise ValueError()'" -msgstr "" +msgstr "raise ValueError # 'raise ValueError()' ਦਾ ਸੰਖੇਪ ਰੂਪ" msgid "" "If you need to determine whether an exception was raised but don't intend to " "handle it, a simpler form of the :keyword:`raise` statement allows you to re-" "raise the exception::" msgstr "" +"ਜੇ ਤੁਹਾਨੂੰ ਇਹ ਜਾਣਨਾ ਹੋਵੇ ਕਿ ਕੋਈ exception raise ਹੋਈ ਸੀ ਜਾਂ ਨਹੀਂ, ਪਰ ਤੁਸੀਂ ਉਸਨੂੰ ਸੰਭਾਲਣਾ ਨਹੀਂ " +"ਚਾਹੁੰਦੇ, ਤਾਂ :keyword:`raise` ਸਟੇਟਮੈਂਟ ਦਾ ਇੱਕ ਸਧਾਰਣ ਰੂਪ exception ਨੂੰ ਦੁਬਾਰਾ raise ਕਰਨ " +"ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ::" msgid "" ">>> try:\n" @@ -405,15 +583,28 @@ msgid "" " raise NameError('HiThere')\n" "NameError: HiThere" msgstr "" +">>> try:\n" +"... raise NameError('HiThere')\n" +"... except NameError:\n" +"... print('An exception flew by!')\n" +"... raise\n" +"...\n" +"An exception flew by!\n" +"Traceback (most recent call last):\n" +" File \"\", line 2, in \n" +" raise NameError('HiThere')\n" +"NameError: HiThere" msgid "Exception Chaining" -msgstr "" +msgstr "ਅਪਵਾਦ ਚੇਨਿੰਗ" msgid "" "If an unhandled exception occurs inside an :keyword:`except` section, it " "will have the exception being handled attached to it and included in the " "error message::" msgstr "" +"ਜੇ :keyword:`except` ਭਾਗ ਦੇ ਅੰਦਰ ਕੋਈ unhandled exception ਵਾਪਰਦਾ ਹੈ, ਤਾਂ ਉਸਦੇ ਨਾਲ " +"ਪਹਿਲਾਂ ਸੰਭਾਲਿਆ ਜਾ ਰਿਹਾ ਅਪਵਾਦ ਵੀ ਜੁੜਿਆ ਹੋਇਆ ਹੋਵੇਗਾ ਅਤੇ ਗਲਤੀ ਸੁਨੇਹੇ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਵੇਗਾ::" msgid "" ">>> try:\n" @@ -434,19 +625,43 @@ msgid "" " raise RuntimeError(\"unable to handle error\")\n" "RuntimeError: unable to handle error" msgstr "" +">>> try:\n" +"... open(\"database.sqlite\")\n" +"... except OSError:\n" +"... raise RuntimeError(\"unable to handle error\")\n" +"...\n" +"Traceback (most recent call last):\n" +" File \"\", line 2, in \n" +" open(\"database.sqlite\")\n" +" ~~~~^^^^^^^^^^^^^^^^^^^\n" +"FileNotFoundError: [Errno 2] No such file or directory: 'database.sqlite'\n" +"\n" +"During handling of the above exception, another exception occurred:\n" +"\n" +"Traceback (most recent call last):\n" +" File \"\", line 4, in \n" +" raise RuntimeError(\"unable to handle error\")\n" +"RuntimeError: unable to handle error" msgid "" -"To indicate that an exception is a direct consequence of another, the :" -"keyword:`raise` statement allows an optional :keyword:`from` clause::" +"To indicate that an exception is a direct consequence of another, " +"the :keyword:`raise` statement allows an optional :keyword:`from` " +"clause::" msgstr "" +"ਇਹ ਦਰਸਾਉਣ ਲਈ ਕਿ ਇੱਕ exception ਕਿਸੇ ਹੋਰ exception ਦਾ ਸਿੱਧਾ ਨਤੀਜਾ " +"ਹੈ, :keyword:`raise` ਸਟੇਟਮੈਂਟ ਇੱਕ ਵਿਕਲਪਿਕ :keyword:`from` clause ਦੀ ਆਗਿਆ " +"ਦਿੰਦੀ ਹੈ::" msgid "" "# exc must be exception instance or None.\n" "raise RuntimeError from exc" msgstr "" +"# exc ਇੱਕ exception instance ਜਾਂ None ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।\n" +"raise RuntimeError from exc" msgid "This can be useful when you are transforming exceptions. For example::" msgstr "" +"ਇਹ ਉਸ ਵੇਲੇ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ exceptions ਨੂੰ ਰੂਪਾਂਤਰਿਤ ਕਰ ਰਹੇ ਹੋਵੋ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> def func():\n" @@ -471,11 +686,34 @@ msgid "" " raise RuntimeError('Failed to open database') from exc\n" "RuntimeError: Failed to open database" msgstr "" +">>> def func():\n" +"... raise ConnectionError\n" +"...\n" +">>> try:\n" +"... func()\n" +"... except ConnectionError as exc:\n" +"... raise RuntimeError('Failed to open database') from exc\n" +"...\n" +"Traceback (most recent call last):\n" +" File \"\", line 2, in \n" +" func()\n" +" ~~~~^^\n" +" File \"\", line 2, in func\n" +"ConnectionError\n" +"\n" +"The above exception was the direct cause of the following exception:\n" +"\n" +"Traceback (most recent call last):\n" +" File \"\", line 4, in \n" +" raise RuntimeError('Failed to open database') from exc\n" +"RuntimeError: Failed to open database" msgid "" "It also allows disabling automatic exception chaining using the ``from " "None`` idiom::" msgstr "" +"ਇਹ ``from None`` ਤਰੀਕੇ ਦੀ ਵਰਤੋਂ ਕਰਕੇ automatic exception chaining ਨੂੰ ਅਯੋਗ ਕਰਨ ਦੀ " +"ਵੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ::" msgid "" ">>> try:\n" @@ -488,13 +726,22 @@ msgid "" " raise RuntimeError from None\n" "RuntimeError" msgstr "" +">>> try:\n" +"... open('database.sqlite')\n" +"... except OSError:\n" +"... raise RuntimeError from None\n" +"...\n" +"Traceback (most recent call last):\n" +" File \"\", line 4, in \n" +" raise RuntimeError from None\n" +"RuntimeError" msgid "" "For more information about chaining mechanics, see :ref:`bltin-exceptions`." -msgstr "" +msgstr "Chaining ਦੇ ਮਕੈਨਿਜ਼ਮ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`bltin-exceptions` ਵੇਖੋ।" msgid "User-defined Exceptions" -msgstr "" +msgstr "ਵਰਤੋਂਕਾਰ-ਪਰਿਭਾਸ਼ਿਤ Exceptions" msgid "" "Programs may name their own exceptions by creating a new exception class " @@ -502,6 +749,9 @@ msgid "" "typically be derived from the :exc:`Exception` class, either directly or " "indirectly." msgstr "" +"ਪ੍ਰੋਗਰਾਮ ਇੱਕ ਨਵੀਂ ਅਪਵਾਦ ਕਲਾਸ ਬਣਾਕੇ ਆਪਣੇ ਅਪਵਾਦ ਪਰਿਭਾਸ਼ਿਤ ਕਰ ਸਕਦੇ ਹਨ (:ref:`tut-" +"classes` ਵਿੱਚ Python ਕਲਾਸਾਂ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਵੇਖੋ)। ਅਪਵਾਦ ਆਮ ਤੌਰ " +"'ਤੇ :exc:`Exception` ਕਲਾਸ ਤੋਂ ਸਿੱਧੇ ਜਾਂ ਅਪਰੋਕਸ਼ ਤੌਰ 'ਤੇ derived ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ।" msgid "" "Exception classes can be defined which do anything any other class can do, " @@ -509,25 +759,35 @@ msgid "" "allow information about the error to be extracted by handlers for the " "exception." msgstr "" +"ਅਪਵਾਦ ਕਲਾਸਾਂ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਕਿ ਉਹ ਉਹ ਸਭ ਕੁਝ ਕਰ ਸਕਣ ਜੋ ਹੋਰ " +"ਕਲਾਸਾਂ ਕਰ ਸਕਦੀਆਂ ਹਨ, ਪਰ ਆਮ ਤੌਰ 'ਤੇ ਉਹਨਾਂ ਨੂੰ ਸਧਾਰਣ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਉਹ ਸਿਰਫ਼ ਕੁਝ " +"ਐਟ੍ਰਿਬਿਊਟ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਰਾਹੀਂ handlers ਗਲਤੀ ਬਾਰੇ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹਨ।" msgid "" "Most exceptions are defined with names that end in \"Error\", similar to the " "naming of the standard exceptions." msgstr "" +"ਜ਼ਿਆਦਾਤਰ exceptions ਦੇ ਨਾਮ \"Error\" ਨਾਲ ਖਤਮ ਹੁੰਦੇ ਹਨ, ਬਿਲਕੁਲ ਮਿਆਰੀ exceptions ਦੀ " +"naming ਵਾਂਗ।" msgid "" "Many standard modules define their own exceptions to report errors that may " "occur in functions they define." msgstr "" +"ਕਈ ਮਿਆਰੀ ਮੌਡਿਊਲ ਆਪਣੇ ਅਪਵਾਦ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਨ ਤਾਂ ਜੋ ਉਹਨਾਂ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ " +"ਆਉਣ ਵਾਲੀਆਂ ਗਲਤੀਆਂ ਦੀ ਰਿਪੋਰਟ ਕੀਤੀ ਜਾ ਸਕੇ।" msgid "Defining Clean-up Actions" -msgstr "" +msgstr "ਸਫਾਈ ਕਾਰਵਾਈਆਂ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨਾ" msgid "" "The :keyword:`try` statement has another optional clause which is intended " "to define clean-up actions that must be executed under all circumstances. " "For example::" msgstr "" +":keyword:`try` ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਇੱਕ ਹੋਰ ਵਿਕਲਪਿਕ clause ਹੁੰਦਾ ਹੈ ਜਿਸਦਾ ਉਦੇਸ਼ ਅਜਿਹੀਆਂ clean-" +"up actions ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨਾ ਹੈ ਜੋ ਹਰ ਸਥਿਤੀ ਵਿੱਚ ਚਲਾਈਆਂ ਜਾਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ " +"ਵਜੋਂ::" msgid "" ">>> try:\n" @@ -541,6 +801,16 @@ msgid "" " raise KeyboardInterrupt\n" "KeyboardInterrupt" msgstr "" +">>> try:\n" +"... raise KeyboardInterrupt\n" +"... finally:\n" +"... print('Goodbye, world!')\n" +"...\n" +"Goodbye, world!\n" +"Traceback (most recent call last):\n" +" File \"\", line 2, in \n" +" raise KeyboardInterrupt\n" +"KeyboardInterrupt" msgid "" "If a :keyword:`finally` clause is present, the :keyword:`!finally` clause " @@ -549,6 +819,11 @@ msgid "" "statement produces an exception. The following points discuss more complex " "cases when an exception occurs:" msgstr "" +"ਜੇ :keyword:`finally` clause ਮੌਜੂਦ ਹੋਵੇ, ਤਾਂ :keyword:`!finally` " +"clause :keyword:`try` ਸਟੇਟਮੈਂਟ ਦੇ ਪੂਰਾ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਆਖਰੀ ਕੰਮ ਵਜੋਂ ਚਲਾਇਆ ਜਾਂਦਾ " +"ਹੈ। :keyword:`!finally` clause ਉਸ ਵੇਲੇ ਵੀ ਚਲਦਾ ਹੈ ਜਦੋਂ :keyword:`!try` ਸਟੇਟਮੈਂਟ " +"exception ਪੈਦਾ ਕਰੇ ਜਾਂ ਨਾ ਕਰੇ। ਹੇਠਲੇ ਬਿੰਦੂ ਉਹਨਾਂ ਜਟਿਲ ਸਥਿਤੀਆਂ ਬਾਰੇ ਦੱਸਦੇ ਹਨ ਜੋ exception " +"ਵਾਪਰਨ ਵੇਲੇ ਹੋ ਸਕਦੀਆਂ ਹਨ:" msgid "" "If an exception occurs during execution of the :keyword:`!try` clause, the " @@ -556,38 +831,59 @@ msgid "" "not handled by an :keyword:`!except` clause, the exception is re-raised " "after the :keyword:`!finally` clause has been executed." msgstr "" +"ਜੇ :keyword:`!try` clause ਦੀ ਕਾਰਵਾਈ ਦੌਰਾਨ ਕੋਈ exception ਵਾਪਰਦੀ ਹੈ, ਤਾਂ " +"ਉਸਨੂੰ :keyword:`except` clause ਦੁਆਰਾ ਸੰਭਾਲਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਜੇ exception ਨੂੰ :keyword:`!" +"except` clause ਦੁਆਰਾ ਸੰਭਾਲਿਆ ਨਾ ਜਾਵੇ, ਤਾਂ :keyword:`!finally` clause ਦੇ ਚੱਲਣ ਤੋਂ " +"ਬਾਅਦ exception ਨੂੰ ਦੁਬਾਰਾ raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"An exception could occur during execution of an :keyword:`!except` or :" -"keyword:`!else` clause. Again, the exception is re-raised after the :keyword:" -"`!finally` clause has been executed." +"An exception could occur during execution of an :keyword:`!except` " +"or :keyword:`!else` clause. Again, the exception is re-raised after " +"the :keyword:`!finally` clause has been executed." msgstr "" +"ਕੋਈ exception :keyword:`!except` ਜਾਂ :keyword:`!else` clause ਦੀ ਕਾਰਵਾਈ ਦੌਰਾਨ ਵੀ " +"ਵਾਪਰ ਸਕਦੀ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ ਵੀ :keyword:`!finally` clause ਦੇ ਚੱਲਣ ਤੋਂ ਬਾਅਦ " +"exception ਨੂੰ ਦੁਬਾਰਾ raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"If the :keyword:`!finally` clause executes a :keyword:`break`, :keyword:" -"`continue` or :keyword:`return` statement, exceptions are not re-raised. " -"This can be confusing and is therefore discouraged. From version 3.14 the " -"compiler emits a :exc:`SyntaxWarning` for it (see :pep:`765`)." +"If the :keyword:`!finally` clause executes " +"a :keyword:`break`, :keyword:`continue` or :keyword:`return` statement, " +"exceptions are not re-raised. This can be confusing and is therefore " +"discouraged. From version 3.14 the compiler emits a :exc:`SyntaxWarning` for " +"it (see :pep:`765`)." msgstr "" +"ਜੇ :keyword:`!finally` clause ਵਿੱਚ :keyword:`break`, :keyword:`continue` " +"ਜਾਂ :keyword:`return` ਸਟੇਟਮੈਂਟ ਚਲਦੀ ਹੈ, ਤਾਂ exceptions ਨੂੰ ਦੁਬਾਰਾ raise ਨਹੀਂ ਕੀਤਾ " +"ਜਾਂਦਾ। ਇਹ ਗੁੰਝਲਦਾਰ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ ਇਸਦੀ ਸਿਫਾਰਸ਼ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ। ਵਰਜਨ 3.14 ਤੋਂ " +"compiler ਇਸ ਲਈ :exc:`SyntaxWarning` ਜਾਰੀ ਕਰਦਾ ਹੈ (ਵੇਖੋ :pep:`765`)।" msgid "" -"If the :keyword:`!try` statement reaches a :keyword:`break`, :keyword:" -"`continue` or :keyword:`return` statement, the :keyword:`!finally` clause " -"will execute just prior to the :keyword:`!break`, :keyword:`!continue` or :" -"keyword:`!return` statement's execution." +"If the :keyword:`!try` statement reaches " +"a :keyword:`break`, :keyword:`continue` or :keyword:`return` statement, " +"the :keyword:`!finally` clause will execute just prior to the :keyword:`!" +"break`, :keyword:`!continue` or :keyword:`!return` statement's execution." msgstr "" +"ਜੇਕਰ :keyword:`!try` ਬਿਆਨ :keyword:`break`, :keyword:`continue` " +"ਜਾਂ :keyword:`return` ਬਿਆਨ ਤੱਕ ਪਹੁੰਚਦਾ ਹੈ, ਤਾਂ :keyword:`!finally` ਕਲੌਜ਼ :keyword:`!" +"break`, :keyword:`!continue` ਜਾਂ :keyword:`!return` ਬਿਆਨ ਦੇ ਚਲਾਉਣ ਤੋਂ ਠੀਕ ਪਹਿਲਾਂ " +"ਚਲਾਇਆ ਜਾਵੇਗਾ।" msgid "" "If a :keyword:`!finally` clause includes a :keyword:`!return` statement, the " -"returned value will be the one from the :keyword:`!finally` clause's :" -"keyword:`!return` statement, not the value from the :keyword:`!try` " -"clause's :keyword:`!return` statement. This can be confusing and is " -"therefore discouraged. From version 3.14 the compiler emits a :exc:" -"`SyntaxWarning` for it (see :pep:`765`)." -msgstr "" +"returned value will be the one from the :keyword:`!finally` " +"clause's :keyword:`!return` statement, not the value from the :keyword:`!" +"try` clause's :keyword:`!return` statement. This can be confusing and is " +"therefore discouraged. From version 3.14 the compiler emits " +"a :exc:`SyntaxWarning` for it (see :pep:`765`)." +msgstr "" +"ਜੇ :keyword:`!finally` clause ਵਿੱਚ :keyword:`!return` ਸਟੇਟਮੈਂਟ ਹੋਵੇ, ਤਾਂ ਵਾਪਸ ਕੀਤਾ " +"ਗਿਆ ਮੁੱਲ :keyword:`!finally` clause ਦੇ :keyword:`!return` ਤੋਂ ਆਵੇਗਾ, ਨਾ " +"ਕਿ :keyword:`!try` clause ਦੇ :keyword:`!return` ਤੋਂ। ਇਹ ਗੁੰਝਲਦਾਰ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ ਲਈ " +"ਇਸਦੀ ਸਿਫਾਰਸ਼ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ। ਵਰਜਨ 3.14 ਤੋਂ compiler ਇਸ ਲਈ :exc:`SyntaxWarning` " +"ਜਾਰੀ ਕਰਦਾ ਹੈ (ਵੇਖੋ :pep:`765`)।" msgid "For example::" -msgstr "" +msgstr "ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> def bool_return():\n" @@ -599,9 +895,17 @@ msgid "" ">>> bool_return()\n" "False" msgstr "" +">>> def bool_return():\n" +"... try:\n" +"... return True\n" +"... finally:\n" +"... return False\n" +"...\n" +">>> bool_return()\n" +"False" msgid "A more complicated example::" -msgstr "" +msgstr "ਇੱਕ ਹੋਰ ਜਟਿਲ ਉਦਾਹਰਨ::" msgid "" ">>> def divide(x, y):\n" @@ -631,22 +935,54 @@ msgid "" " ~~^~~\n" "TypeError: unsupported operand type(s) for /: 'str' and 'str'" msgstr "" +">>> def divide(x, y):\n" +"... try:\n" +"... result = x / y\n" +"... except ZeroDivisionError:\n" +"... print(\"division by zero!\")\n" +"... else:\n" +"... print(\"result is\", result)\n" +"... finally:\n" +"... print(\"executing finally clause\")\n" +"...\n" +">>> divide(2, 1)\n" +"result is 2.0\n" +"executing finally clause\n" +">>> divide(2, 0)\n" +"division by zero!\n" +"executing finally clause\n" +">>> divide(\"2\", \"1\")\n" +"executing finally clause\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +" divide(\"2\", \"1\")\n" +" ~~~~~~^^^^^^^^^^\n" +" File \"\", line 3, in divide\n" +" result = x / y\n" +" ~~^~~\n" +"TypeError: unsupported operand type(s) for /: 'str' and 'str'" msgid "" "As you can see, the :keyword:`finally` clause is executed in any event. " -"The :exc:`TypeError` raised by dividing two strings is not handled by the :" -"keyword:`except` clause and therefore re-raised after the :keyword:`!" +"The :exc:`TypeError` raised by dividing two strings is not handled by " +"the :keyword:`except` clause and therefore re-raised after the :keyword:`!" "finally` clause has been executed." msgstr "" +"ਜਿਵੇਂ ਤੁਸੀਂ ਵੇਖ ਸਕਦੇ ਹੋ, :keyword:`finally` clause ਹਰ ਸਥਿਤੀ ਵਿੱਚ ਚਲਾਈ ਜਾਂਦੀ ਹੈ। ਦੋ " +"strings ਨੂੰ ਭਾਗ ਦੇਣ ਨਾਲ ਉਤਪੰਨ ਹੋਈ :exc:`TypeError` ਨੂੰ :keyword:`except` clause " +"ਦੁਆਰਾ ਸੰਭਾਲਿਆ ਨਹੀਂ ਜਾਂਦਾ ਅਤੇ ਇਸ ਲਈ :keyword:`!finally` clause ਦੇ ਚੱਲਣ ਤੋਂ ਬਾਅਦ ਇਸਨੂੰ " +"ਦੁਬਾਰਾ raise ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "In real world applications, the :keyword:`finally` clause is useful for " "releasing external resources (such as files or network connections), " "regardless of whether the use of the resource was successful." msgstr "" +"ਅਸਲ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ :keyword:`finally` clause ਬਾਹਰੀ ਸਰੋਤਾਂ (ਜਿਵੇਂ ਫਾਈਲਾਂ ਜਾਂ ਨੈੱਟਵਰਕ " +"ਕਨੈਕਸ਼ਨ) ਨੂੰ ਰਿਲੀਜ਼ ਕਰਨ ਲਈ ਲਾਭਦਾਇਕ ਹੁੰਦੀ ਹੈ, ਭਾਵੇਂ ਸਰੋਤ ਦੀ ਵਰਤੋਂ ਸਫਲ ਰਹੀ ਹੋਵੇ ਜਾਂ ਨਹੀਂ।" msgid "Predefined Clean-up Actions" -msgstr "" +msgstr "ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ Clean-up Actions" msgid "" "Some objects define standard clean-up actions to be undertaken when the " @@ -654,11 +990,16 @@ msgid "" "the object succeeded or failed. Look at the following example, which tries " "to open a file and print its contents to the screen. ::" msgstr "" +"ਕੁਝ ਵਸਤੂਆਂ ਮਿਆਰੀ clean-up actions ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀਆਂ ਹਨ ਜੋ ਵਸਤੂ ਦੀ ਲੋੜ ਖਤਮ ਹੋਣ 'ਤੇ ਚਲਾਈਆਂ " +"ਜਾਂਦੀਆਂ ਹਨ, ਭਾਵੇਂ ਉਸ ਵਸਤੂ ਨਾਲ ਕੀਤੀ ਕਾਰਵਾਈ ਸਫਲ ਰਹੀ ਹੋਵੇ ਜਾਂ ਅਸਫਲ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵੇਖੋ " +"ਜੋ ਇੱਕ ਫਾਈਲ ਖੋਲ੍ਹ ਕੇ ਉਸਦੀ ਸਮੱਗਰੀ ਸਕ੍ਰੀਨ ਉੱਤੇ ਪ੍ਰਿੰਟ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੀ ਹੈ। ::" msgid "" "for line in open(\"myfile.txt\"):\n" " print(line, end=\"\")" msgstr "" +"for line in open(\"myfile.txt\"):\n" +" print(line, end=\"\")" msgid "" "The problem with this code is that it leaves the file open for an " @@ -668,12 +1009,19 @@ msgid "" "to be used in a way that ensures they are always cleaned up promptly and " "correctly. ::" msgstr "" +"ਇਸ ਕੋਡ ਦੀ ਸਮੱਸਿਆ ਇਹ ਹੈ ਕਿ ਕੋਡ ਦੇ ਇਸ ਹਿੱਸੇ ਦੇ ਚੱਲਣ ਤੋਂ ਬਾਅਦ ਵੀ ਫਾਈਲ ਅਣਨਿਰਧਾਰਤ ਸਮੇਂ ਲਈ ਖੁੱਲ੍ਹੀ " +"ਰਹਿੰਦੀ ਹੈ। ਇਹ ਸਧਾਰਣ ਸਕ੍ਰਿਪਟਾਂ ਵਿੱਚ ਸਮੱਸਿਆ ਨਹੀਂ ਹੁੰਦੀ, ਪਰ ਵੱਡੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਸਮੱਸਿਆ ਬਣ " +"ਸਕਦੀ ਹੈ। :keyword:`with` ਸਟੇਟਮੈਂਟ ਫਾਈਲਾਂ ਵਰਗੇ objects ਨੂੰ ਇਸ ਤਰੀਕੇ ਨਾਲ ਵਰਤਣ ਦੀ ਆਗਿਆ " +"ਦਿੰਦੀ ਹੈ ਕਿ ਉਹ ਹਮੇਸ਼ਾਂ ਸਮੇਂ ਸਿਰ ਅਤੇ ਠੀਕ ਤਰੀਕੇ ਨਾਲ ਸਾਫ਼ ਕੀਤੇ ਜਾਣ। ::" msgid "" "with open(\"myfile.txt\") as f:\n" " for line in f:\n" " print(line, end=\"\")" msgstr "" +"with open(\"myfile.txt\") as f:\n" +" for line in f:\n" +" print(line, end=\"\")" msgid "" "After the statement is executed, the file *f* is always closed, even if a " @@ -681,9 +1029,12 @@ msgid "" "files, provide predefined clean-up actions will indicate this in their " "documentation." msgstr "" +"ਸਟੇਟਮੈਂਟ ਦੇ ਚੱਲਣ ਤੋਂ ਬਾਅਦ ਫਾਈਲ *f* ਹਮੇਸ਼ਾਂ ਬੰਦ ਕਰ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ, ਭਾਵੇਂ ਲਾਈਨਾਂ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਦੇ ਸਮੇਂ " +"ਕੋਈ ਸਮੱਸਿਆ ਆਈ ਹੋਵੇ। ਜਿਹੜੇ objects, ਫਾਈਲਾਂ ਵਾਂਗ, ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਸਫਾਈ ਕਾਰਵਾਈਆਂ ਪ੍ਰਦਾਨ " +"ਕਰਦੇ ਹਨ, ਉਹ ਆਪਣੀ documentation ਵਿੱਚ ਇਸ ਬਾਰੇ ਦਰਸਾਉਂਦੇ ਹਨ।" msgid "Raising and Handling Multiple Unrelated Exceptions" -msgstr "" +msgstr "ਕਈ ਅਸੰਬੰਧਿਤ Exceptions ਨੂੰ Raise ਕਰਨਾ ਅਤੇ ਸੰਭਾਲਣਾ" msgid "" "There are situations where it is necessary to report several exceptions that " @@ -692,12 +1043,19 @@ msgid "" "cases where it is desirable to continue execution and collect multiple " "errors rather than raise the first exception." msgstr "" +"ਕਈ ਵਾਰ ਅਜਿਹੀਆਂ ਸਥਿਤੀਆਂ ਹੁੰਦੀਆਂ ਹਨ ਜਿੱਥੇ ਵਾਪਰੀਆਂ ਕਈ exceptions ਦੀ ਰਿਪੋਰਟ ਕਰਨੀ ਲਾਜ਼ਮੀ " +"ਹੁੰਦੀ ਹੈ। concurrency frameworks ਵਿੱਚ ਇਹ ਆਮ ਗੱਲ ਹੈ, ਜਿੱਥੇ ਕਈ ਕੰਮ ਇੱਕੋ ਸਮੇਂ ਅਸਫਲ ਹੋ ਸਕਦੇ ਹਨ। " +"ਹੋਰ ਵੀ ਅਜਿਹੇ ਮਾਮਲੇ ਹਨ ਜਿੱਥੇ ਪਹਿਲੀ exception ਨੂੰ raise ਕਰਨ ਦੀ ਬਜਾਏ ਕਾਰਵਾਈ ਜਾਰੀ ਰੱਖਣ " +"ਅਤੇ ਕਈ ਗਲਤੀਆਂ ਇਕੱਠੀਆਂ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।" msgid "" "The builtin :exc:`ExceptionGroup` wraps a list of exception instances so " "that they can be raised together. It is an exception itself, so it can be " "caught like any other exception. ::" msgstr "" +"ਬਿਲਟ-ਇਨ :exc:`ExceptionGroup` ਅਪਵਾਦ ਇੰਸਟੈਂਸਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਨੂੰ ਇਕੱਠਾ wrap ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ " +"ਉਹਨਾਂ ਨੂੰ ਇਕੱਠੇ raise ਕੀਤਾ ਜਾ ਸਕੇ। ਇਹ ਆਪਣੇ ਆਪ ਵਿੱਚ ਇੱਕ ਅਪਵਾਦ ਹੈ, ਇਸ ਲਈ ਇਸਨੂੰ ਹੋਰ ਅਪਵਾਦਾਂ " +"ਵਾਂਗ catch ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> def f():\n" @@ -725,6 +1083,30 @@ msgid "" "caught : there were problems (2 sub-exceptions)\n" ">>>" msgstr "" +">>> def f():\n" +"... excs = [OSError('error 1'), SystemError('error 2')]\n" +"... raise ExceptionGroup('there were problems', excs)\n" +"...\n" +">>> f()\n" +" + Exception Group Traceback (most recent call last):\n" +" | File \"\", line 1, in \n" +" | f()\n" +" | ~^^\n" +" | File \"\", line 3, in f\n" +" | raise ExceptionGroup('there were problems', excs)\n" +" | ExceptionGroup: there were problems (2 sub-exceptions)\n" +" +-+---------------- 1 ----------------\n" +" | OSError: error 1\n" +" +---------------- 2 ----------------\n" +" | SystemError: error 2\n" +" +------------------------------------\n" +">>> try:\n" +"... f()\n" +"... except Exception as e:\n" +"... print(f'caught {type(e)}: {e}')\n" +"...\n" +"caught : there were problems (2 sub-exceptions)\n" +">>>" msgid "" "By using ``except*`` instead of ``except``, we can selectively handle only " @@ -733,6 +1115,11 @@ msgid "" "extracts from the group exceptions of a certain type while letting all other " "exceptions propagate to other clauses and eventually to be reraised. ::" msgstr "" +"``except`` ਦੀ ਥਾਂ ``except*`` ਵਰਤ ਕੇ ਅਸੀਂ ਸਿਰਫ਼ ਉਹਨਾਂ exceptions ਨੂੰ ਚੁਣੀਂਦੇ ਤੌਰ 'ਤੇ " +"ਸੰਭਾਲ ਸਕਦੇ ਹਾਂ ਜੋ ਸਮੂਹ ਵਿੱਚ ਕਿਸੇ ਨਿਰਧਾਰਤ ਕਿਸਮ ਨਾਲ ਮੇਲ ਖਾਂਦੇ ਹਨ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ " +"nested exception group ਦਿਖਾਇਆ ਗਿਆ ਹੈ। ਹਰ ``except*`` clause ਸਮੂਹ ਵਿੱਚੋਂ ਇੱਕ " +"ਨਿਰਧਾਰਤ ਕਿਸਮ ਦੀਆਂ exceptions ਕੱਢਦਾ ਹੈ ਅਤੇ ਬਾਕੀ ਸਾਰੀਆਂ exceptions ਨੂੰ ਅਗਲੇ clauses ਵੱਲ " +"ਅਤੇ ਅੰਤ ਵਿੱਚ ਦੁਬਾਰਾ raise ਕਰਨ ਲਈ ਜਾਣ ਦਿੰਦਾ ਹੈ। ::" msgid "" ">>> def f():\n" @@ -776,6 +1163,46 @@ msgid "" " +------------------------------------\n" ">>>" msgstr "" +">>> def f():\n" +"... raise ExceptionGroup(\n" +"... \"group1\",\n" +"... [\n" +"... OSError(1),\n" +"... SystemError(2),\n" +"... ExceptionGroup(\n" +"... \"group2\",\n" +"... [\n" +"... OSError(3),\n" +"... RecursionError(4)\n" +"... ]\n" +"... )\n" +"... ]\n" +"... )\n" +"...\n" +">>> try:\n" +"... f()\n" +"... except* OSError as e:\n" +"... print(\"There were OSErrors\")\n" +"... except* SystemError as e:\n" +"... print(\"There were SystemErrors\")\n" +"...\n" +"There were OSErrors\n" +"There were SystemErrors\n" +" + Exception Group Traceback (most recent call last):\n" +" | File \"\", line 2, in \n" +" | f()\n" +" | ~^^\n" +" | File \"\", line 2, in f\n" +" | raise ExceptionGroup(\n" +" | ...<12 lines>...\n" +" | )\n" +" | ExceptionGroup: group1 (1 sub-exception)\n" +" +-+---------------- 1 ----------------\n" +" | ExceptionGroup: group2 (1 sub-exception)\n" +" +-+---------------- 1 ----------------\n" +" | RecursionError: 4\n" +" +------------------------------------\n" +">>>" msgid "" "Note that the exceptions nested in an exception group must be instances, not " @@ -783,10 +1210,13 @@ msgid "" "that have already been raised and caught by the program, along the following " "pattern::" msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਅਪਵਾਦ ਸਮੂਹ ਦੇ ਅੰਦਰ ਮੌਜੂਦ ਅਪਵਾਦ ਇੰਸਟੈਂਸ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ, ਕਿਸਮਾਂ ਨਹੀਂ। ਇਸ ਦਾ " +"ਕਾਰਨ ਇਹ ਹੈ ਕਿ ਅਮਲ ਵਿੱਚ ਇਹ ਅਪਵਾਦ ਆਮ ਤੌਰ 'ਤੇ ਉਹ ਹੁੰਦੇ ਹਨ ਜੋ ਪਹਿਲਾਂ ਹੀ ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਰੇਜ਼ ਅਤੇ " +"ਕੈਚ ਕੀਤੇ ਜਾ ਚੁੱਕੇ ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ ਹੇਠਾਂ ਦਿੱਤੇ ਪੈਟਰਨ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ::" msgid "" ">>> excs = []\n" -"... for test in tests:\n" +">>> for test in tests:\n" "... try:\n" "... test.run()\n" "... except Exception as e:\n" @@ -798,7 +1228,7 @@ msgid "" msgstr "" msgid "Enriching Exceptions with Notes" -msgstr "" +msgstr "ਨੋਟਾਂ ਨਾਲ Exceptions ਨੂੰ ਹੋਰ ਜਾਣਕਾਰੀ ਦੇਣਾ" msgid "" "When an exception is created in order to be raised, it is usually " @@ -809,6 +1239,11 @@ msgid "" "standard traceback rendering includes all notes, in the order they were " "added, after the exception. ::" msgstr "" +"ਜਦੋਂ ਕਿਸੇ ਅਪਵਾਦ ਨੂੰ ਰੇਜ਼ ਕਰਨ ਲਈ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਆਮ ਤੌਰ 'ਤੇ ਉਸਨੂੰ ਗਲਤੀ ਦਾ ਵੇਰਵਾ ਦੇਣ ਵਾਲੀ " +"ਜਾਣਕਾਰੀ ਨਾਲ ਸ਼ੁਰੂਆਤੀ ਮੁੱਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਕੁਝ ਮੌਕਿਆਂ 'ਤੇ ਅਪਵਾਦ ਨੂੰ ਕੈਚ ਕਰਨ ਤੋਂ ਬਾਅਦ ਹੋਰ " +"ਜਾਣਕਾਰੀ ਜੋੜਨਾ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ। ਇਸ ਲਈ ਅਪਵਾਦਾਂ ਵਿੱਚ ``add_note(note)`` ਵਿਧੀ ਹੁੰਦੀ ਹੈ ਜੋ " +"ਇੱਕ ਸਤਰ ਸਵੀਕਾਰ ਕਰਦੀ ਹੈ ਅਤੇ ਉਸਨੂੰ ਅਪਵਾਦ ਦੀ ਨੋਟਾਂ ਦੀ ਸੂਚੀ ਵਿੱਚ ਜੋੜ ਦਿੰਦੀ ਹੈ। ਮਿਆਰੀ ਟ੍ਰੇਸਬੈਕ " +"ਰੈਂਡਰਿੰਗ ਅਪਵਾਦ ਤੋਂ ਬਾਅਦ ਜੋੜੀਆਂ ਗਈਆਂ ਸਾਰੀਆਂ ਨੋਟਾਂ ਨੂੰ ਉਸੇ ਕ੍ਰਮ ਵਿੱਚ ਦਿਖਾਉਂਦੀ ਹੈ। ::" msgid "" ">>> try:\n" @@ -826,12 +1261,29 @@ msgid "" "Add some more information\n" ">>>" msgstr "" +">>> try:\n" +"... raise TypeError('bad type')\n" +"... except Exception as e:\n" +"... e.add_note('Add some information')\n" +"... e.add_note('Add some more information')\n" +"... raise\n" +"...\n" +"Traceback (most recent call last):\n" +" File \"\", line 2, in \n" +" raise TypeError('bad type')\n" +"TypeError: bad type\n" +"Add some information\n" +"Add some more information\n" +">>>" msgid "" "For example, when collecting exceptions into an exception group, we may want " "to add context information for the individual errors. In the following each " "exception in the group has a note indicating when this error has occurred. ::" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਜਦੋਂ exceptions ਨੂੰ ਇੱਕ exception group ਵਿੱਚ ਇਕੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਅਸੀਂ " +"ਹਰ ਗਲਤੀ ਲਈ ਵਾਧੂ ਸੰਦਰਭ ਜਾਣਕਾਰੀ ਜੋੜਨਾ ਚਾਹ ਸਕਦੇ ਹਾਂ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ ਸਮੂਹ ਦੀ ਹਰ " +"exception ਨਾਲ ਇੱਕ note ਜੁੜੀ ਹੈ ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਇਹ ਗਲਤੀ ਕਦੋਂ ਵਾਪਰੀ ਸੀ। ::" msgid "" ">>> def f():\n" @@ -880,3 +1332,48 @@ msgid "" " +------------------------------------\n" ">>>" msgstr "" +">>> def f():\n" +"... raise OSError('operation failed')\n" +"...\n" +">>> excs = []\n" +">>> for i in range(3):\n" +"... try:\n" +"... f()\n" +"... except Exception as e:\n" +"... e.add_note(f'Happened in Iteration {i+1}')\n" +"... excs.append(e)\n" +"...\n" +">>> raise ExceptionGroup('We have some problems', excs)\n" +" + Exception Group Traceback (most recent call last):\n" +" | File \"\", line 1, in \n" +" | raise ExceptionGroup('We have some problems', excs)\n" +" | ExceptionGroup: We have some problems (3 sub-exceptions)\n" +" +-+---------------- 1 ----------------\n" +" | Traceback (most recent call last):\n" +" | File \"\", line 3, in \n" +" | f()\n" +" | ~^^\n" +" | File \"\", line 2, in f\n" +" | raise OSError('operation failed')\n" +" | OSError: operation failed\n" +" | Happened in Iteration 1\n" +" +---------------- 2 ----------------\n" +" | Traceback (most recent call last):\n" +" | File \"\", line 3, in \n" +" | f()\n" +" | ~^^\n" +" | File \"\", line 2, in f\n" +" | raise OSError('operation failed')\n" +" | OSError: operation failed\n" +" | Happened in Iteration 2\n" +" +---------------- 3 ----------------\n" +" | Traceback (most recent call last):\n" +" | File \"\", line 3, in \n" +" | f()\n" +" | ~^^\n" +" | File \"\", line 2, in f\n" +" | raise OSError('operation failed')\n" +" | OSError: operation failed\n" +" | Happened in Iteration 3\n" +" +------------------------------------\n" +">>>" diff --git a/tutorial/floatingpoint.po b/tutorial/floatingpoint.po index 5017a50..81ce779 100644 --- a/tutorial/floatingpoint.po +++ b/tutorial/floatingpoint.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-17 16:44+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Floating-Point Arithmetic: Issues and Limitations" -msgstr "" +msgstr "ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਅੰਕਗਣਿਤ: ਸਮੱਸਿਆਵਾਂ ਅਤੇ ਸੀਮਾਵਾਂ" msgid "" "Floating-point numbers are represented in computer hardware as base 2 " @@ -33,6 +33,11 @@ msgid "" "values, the only real difference being that the first is written in base 10 " "fractional notation, and the second in base 2." msgstr "" +"ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਨੰਬਰ ਕੰਪਿਊਟਰ ਹਾਰਡਵੇਅਰ ਵਿੱਚ ਬੇਸ 2 (ਬਾਈਨਰੀ) ਫ੍ਰੈਕਸ਼ਨਾਂ ਵਜੋਂ ਦਰਸਾਏ ਜਾਂਦੇ ਹਨ। " +"ਉਦਾਹਰਨ ਵਜੋਂ, ਦਸ਼ਮਲ ਫ੍ਰੈਕਸ਼ਨ ``0.625`` ਦੀ ਕੀਮਤ 6/10 + 2/100 + 5/1000 ਹੈ, ਅਤੇ ਇਸੇ ਤਰ੍ਹਾਂ " +"ਬਾਈਨਰੀ ਫ੍ਰੈਕਸ਼ਨ ``0.101`` ਦੀ ਕੀਮਤ 1/2 + 0/4 + 1/8 ਹੈ। ਇਹਨਾਂ ਦੋਹਾਂ ਭਗਾਂ ਦੇ ਮੁੱਲ ਇੱਕੋ ਜਿਹੇ " +"ਹਨ, ਅਸਲ ਅੰਤਰ ਸਿਰਫ ਇਹ ਹੈ ਕਿ ਪਹਿਲਾ ਦਸਾਂਸ਼ੀ ਭਗ ਸੰਕੇਤਨ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ, ਅਤੇ ਦੂਜਾ ਦੋਹਾਂਸ਼ੀ " +"ਵਿੱਚ।" msgid "" "Unfortunately, most decimal fractions cannot be represented exactly as " @@ -40,38 +45,49 @@ msgid "" "point numbers you enter are only approximated by the binary floating-point " "numbers actually stored in the machine." msgstr "" +"ਦੁਰਭਾਗਵਸ਼, ਜ਼ਿਆਦਾਤਰ decimal ਭਿੰਨਾਂ ਨੂੰ binary ਭਿੰਨਾਂ ਵਜੋਂ ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਇਆ ਨਹੀਂ " +"ਜਾ ਸਕਦਾ। ਇਸਦਾ ਨਤੀਜਾ ਇਹ ਹੈ ਕਿ ਆਮ ਤੌਰ 'ਤੇ ਤੁਹਾਡੇ ਦੁਆਰਾ ਦਿੱਤੀਆਂ decimal floating-point " +"ਸੰਖਿਆਵਾਂ ਨੂੰ ਮਸ਼ੀਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤੀਆਂ binary floating-point ਸੰਖਿਆਵਾਂ ਸਿਰਫ਼ ਲਗਭਗ ਦਰਸਾਉਂਦੀਆਂ " +"ਹਨ।" msgid "" "The problem is easier to understand at first in base 10. Consider the " "fraction 1/3. You can approximate that as a base 10 fraction::" msgstr "" +"ਇਸ ਸਮੱਸਿਆ ਨੂੰ ਪਹਿਲਾਂ base 10 ਵਿੱਚ ਸਮਝਣਾ ਆਸਾਨ ਹੈ। 1/3 ਭਿੰਨ ਨੂੰ ਵੇਖੋ। ਤੁਸੀਂ ਇਸਨੂੰ base 10 ਭਿੰਨ " +"ਵਜੋਂ ਲਗਭਗ ਇਸ ਤਰ੍ਹਾਂ ਲਿਖ ਸਕਦੇ ਹੋ::" msgid "0.3" -msgstr "" +msgstr "0.3" msgid "or, better, ::" -msgstr "" +msgstr "ਜਾਂ ਹੋਰ ਵਧੀਆ, ::" msgid "0.33" -msgstr "" +msgstr "0.33" msgid "0.333" -msgstr "" +msgstr "0.333" msgid "" "and so on. No matter how many digits you're willing to write down, the " "result will never be exactly 1/3, but will be an increasingly better " "approximation of 1/3." msgstr "" +"ਅਤੇ ਇਸੇ ਤਰ੍ਹਾਂ ਅੱਗੇ। ਤੁਸੀਂ ਚਾਹੇ ਕਿੰਨੇ ਵੀ ਅੰਕ ਲਿਖੋ, ਨਤੀਜਾ ਕਦੇ ਵੀ ਬਿਲਕੁਲ 1/3 ਨਹੀਂ ਹੋਵੇਗਾ, ਪਰ 1/3 " +"ਦੇ ਹੋਰ ਨੇੜੇ ਅਤੇ ਵਧੀਆ ਅਨੁਮਾਨ ਵਜੋਂ ਮਿਲੇਗਾ।" msgid "" "In the same way, no matter how many base 2 digits you're willing to use, the " "decimal value 0.1 cannot be represented exactly as a base 2 fraction. In " "base 2, 1/10 is the infinitely repeating fraction ::" msgstr "" +"ਇਸੇ ਤਰ੍ਹਾਂ, ਤੁਸੀਂ base 2 ਦੇ ਚਾਹੇ ਕਿੰਨੇ ਵੀ ਅੰਕ ਵਰਤੋ, decimal ਮੁੱਲ 0.1 ਨੂੰ base 2 ਭਿੰਨ ਵਜੋਂ " +"ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਇਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। Base 2 ਵਿੱਚ 1/10 ਇੱਕ ਅਨੰਤ ਦੁਹਰਾਈ ਜਾਣ ਵਾਲੀ " +"ਭਿੰਨ ਹੈ::" msgid "0.0001100110011001100110011001100110011001100110011..." -msgstr "" +msgstr "0.0001100110011001100110011001100110011001100110011..." msgid "" "Stop at any finite number of bits, and you get an approximation. On most " @@ -81,6 +97,11 @@ msgid "" "fraction is ``3602879701896397 / 2 ** 55`` which is close to but not exactly " "equal to the true value of 1/10." msgstr "" +"ਜੇ ਤੁਸੀਂ ਕਿਸੇ ਸੀਮਿਤ ਗਿਣਤੀ ਦੇ bits 'ਤੇ ਰੁਕਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਅਨੁਮਾਨਿਤ ਮੁੱਲ ਮਿਲਦਾ ਹੈ। ਅੱਜਕੱਲ੍ਹ " +"ਜ਼ਿਆਦਾਤਰ ਮਸ਼ੀਨਾਂ ਵਿੱਚ floats ਨੂੰ ਇੱਕ binary ਭਿੰਨ ਰਾਹੀਂ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ ਜਿਸਦਾ numerator " +"ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ bit ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਪਹਿਲੇ 53 bits ਵਰਤਦਾ ਹੈ ਅਤੇ denominator ਦੋ ਦੀ ਘਾਤ " +"ਹੁੰਦੀ ਹੈ। 1/10 ਦੇ ਮਾਮਲੇ ਵਿੱਚ binary ਭਿੰਨ ``3602879701896397 / 2 ** 55`` ਹੁੰਦੀ ਹੈ, ਜੋ " +"1/10 ਦੇ ਅਸਲੀ ਮੁੱਲ ਦੇ ਬਹੁਤ ਨੇੜੇ ਹੈ ਪਰ ਉਸਦੇ ਬਰਾਬਰ ਨਹੀਂ।" msgid "" "Many users are not aware of the approximation because of the way values are " @@ -89,26 +110,38 @@ msgid "" "if Python were to print the true decimal value of the binary approximation " "stored for 0.1, it would have to display::" msgstr "" +"ਕਈ ਉਪਭੋਗਤਾ ਇਸ ਅਨੁਮਾਨਿਤ ਮੁੱਲ ਬਾਰੇ ਜਾਣੂ ਨਹੀਂ ਹੁੰਦੇ ਕਿਉਂਕਿ ਮੁੱਲ ਦਿਖਾਉਣ ਦਾ ਤਰੀਕਾ ਅਜਿਹਾ ਹੁੰਦਾ ਹੈ। " +"Python ਸਿਰਫ਼ ਮਸ਼ੀਨ ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ binary approximation ਦੇ ਅਸਲ decimal ਮੁੱਲ ਦਾ ਇੱਕ " +"decimal ਅਨੁਮਾਨ ਦਿਖਾਉਂਦਾ ਹੈ। ਜੇ Python 0.1 ਲਈ ਸਟੋਰ ਕੀਤੇ binary approximation ਦਾ ਅਸਲ " +"decimal ਮੁੱਲ ਦਿਖਾਏ, ਤਾਂ ਇਸਨੂੰ ਇਹ ਦਿਖਾਉਣਾ ਪਵੇਗਾ::" msgid "" ">>> 0.1\n" "0.1000000000000000055511151231257827021181583404541015625" msgstr "" +">>> 0.1\n" +"0.1000000000000000055511151231257827021181583404541015625" msgid "" "That is more digits than most people find useful, so Python keeps the number " "of digits manageable by displaying a rounded value instead:" msgstr "" +"ਇਹ ਜ਼ਿਆਦਾਤਰ ਲੋਕਾਂ ਲਈ ਲੋੜ ਨਾਲੋਂ ਵੱਧ ਅੰਕ ਹਨ, ਇਸ ਲਈ Python ਗੋਲ ਕੀਤਾ ਹੋਇਆ ਮੁੱਲ ਦਿਖਾ ਕੇ ਅੰਕਾਂ ਦੀ " +"ਗਿਣਤੀ ਸੰਭਾਲਣਯੋਗ ਰੱਖਦਾ ਹੈ:" msgid "" ">>> 1 / 10\n" "0.1" msgstr "" +">>> 1 / 10\n" +"0.1" msgid "" "Just remember, even though the printed result looks like the exact value of " "1/10, the actual stored value is the nearest representable binary fraction." msgstr "" +"ਸਿਰਫ਼ ਇਹ ਯਾਦ ਰੱਖੋ ਕਿ ਭਾਵੇਂ ਦਿਖਾਇਆ ਗਿਆ ਨਤੀਜਾ 1/10 ਦੇ ਬਿਲਕੁਲ ਸਹੀ ਮੁੱਲ ਵਰਗਾ ਲੱਗਦਾ ਹੈ, ਪਰ " +"ਅਸਲ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਗਿਆ ਮੁੱਲ ਸਭ ਤੋਂ ਨੇੜਲਾ ਦਰਸਾਇਆ ਜਾ ਸਕਣ ਵਾਲਾ binary ਭਿੰਨ ਹੁੰਦਾ ਹੈ।" msgid "" "Interestingly, there are many different decimal numbers that share the same " @@ -119,6 +152,12 @@ msgid "" "values share the same approximation, any one of them could be displayed " "while still preserving the invariant ``eval(repr(x)) == x``." msgstr "" +"ਦਿਲਚਸਪ ਗੱਲ ਇਹ ਹੈ ਕਿ ਕਈ ਵੱਖ-ਵੱਖ decimal ਸੰਖਿਆਵਾਂ ਇੱਕੋ ਹੀ ਨੇੜਲੇ binary approximation ਨੂੰ " +"ਸਾਂਝਾ ਕਰਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ``0.1``, ``0.10000000000000001`` ਅਤੇ " +"``0.1000000000000000055511151231257827021181583404541015625`` ਸਭ ਦਾ " +"approximation ``3602879701896397 / 2 ** 55`` ਹੈ। ਕਿਉਂਕਿ ਇਹ ਸਾਰੇ decimal ਮੁੱਲ ਇੱਕੋ " +"approximation ਸਾਂਝਾ ਕਰਦੇ ਹਨ, ਇਸ ਲਈ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਦਿਖਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਫਿਰ ਵੀ " +"``eval(repr(x)) == x`` ਸਹੀ ਰਹੇਗਾ।" msgid "" "Historically, the Python prompt and built-in :func:`repr` function would " @@ -126,6 +165,9 @@ msgid "" "Starting with Python 3.1, Python (on most systems) is now able to choose the " "shortest of these and simply display ``0.1``." msgstr "" +"ਇਤਿਹਾਸਕ ਤੌਰ 'ਤੇ, Python prompt ਅਤੇ built-in :func:`repr` ਫੰਕਸ਼ਨ 17 significant " +"digits ਵਾਲਾ ਮੁੱਲ ``0.10000000000000001`` ਚੁਣਦੇ ਸਨ। Python 3.1 ਤੋਂ ਬਾਅਦ, Python " +"(ਜ਼ਿਆਦਾਤਰ ਸਿਸਟਮਾਂ 'ਤੇ) ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਛੋਟਾ ਰੂਪ ਚੁਣ ਸਕਦਾ ਹੈ ਅਤੇ ਸਿਰਫ਼ ``0.1`` ਦਿਖਾਉਂਦਾ ਹੈ।" msgid "" "Note that this is in the very nature of binary floating point: this is not a " @@ -134,11 +176,17 @@ msgid "" "arithmetic (although some languages may not *display* the difference by " "default, or in all output modes)." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਇਹ binary floating point ਦੀ ਮੂਲ ਪ੍ਰਕਿਰਤੀ ਹੈ। ਇਹ ਨਾ ਤਾਂ Python ਵਿੱਚ " +"bug ਹੈ ਅਤੇ ਨਾ ਹੀ ਤੁਹਾਡੇ code ਵਿੱਚ। ਤੁਸੀਂ ਇਹੋ ਜਿਹੀ ਗੱਲ ਹਰ ਉਸ ਭਾਸ਼ਾ ਵਿੱਚ ਵੇਖੋਗੇ ਜੋ ਤੁਹਾਡੇ " +"hardware ਦੀ floating-point arithmetic ਨੂੰ ਸਮਰਥਨ ਦਿੰਦੀ ਹੈ (ਹਾਲਾਂਕਿ ਕੁਝ ਭਾਸ਼ਾਵਾਂ " +"ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਇਹ ਫਰਕ ਨਹੀਂ ਦਿਖਾਉਂਦੀਆਂ)।" msgid "" "For more pleasant output, you may wish to use string formatting to produce a " "limited number of significant digits:" msgstr "" +"ਹੋਰ ਸੁਗਮ output ਲਈ ਤੁਸੀਂ string formatting ਦੀ ਵਰਤੋਂ ਕਰਕੇ significant digits ਦੀ " +"ਸੀਮਿਤ ਗਿਣਤੀ ਦਿਖਾ ਸਕਦੇ ਹੋ:" msgid "" ">>> format(math.pi, '.12g') # give 12 significant digits\n" @@ -150,52 +198,78 @@ msgid "" ">>> repr(math.pi)\n" "'3.141592653589793'" msgstr "" +">>> format(math.pi, '.12g') # give 12 significant digits\n" +"'3.14159265359'\n" +"\n" +">>> format(math.pi, '.2f') # give 2 digits after the point\n" +"'3.14'\n" +"\n" +">>> repr(math.pi)\n" +"'3.141592653589793'" msgid "" "It's important to realize that this is, in a real sense, an illusion: you're " "simply rounding the *display* of the true machine value." msgstr "" +"ਇਹ ਸਮਝਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਇੱਕ ਅਰਥ ਵਿੱਚ ਇਹ ਸਿਰਫ਼ ਇੱਕ ਭਰਮ ਹੈ: ਤੁਸੀਂ ਅਸਲ ਮਸ਼ੀਨੀ ਮੁੱਲ ਦੇ " +"*display* ਨੂੰ ਹੀ round ਕਰ ਰਹੇ ਹੋ।" msgid "" "One illusion may beget another. For example, since 0.1 is not exactly 1/10, " "summing three values of 0.1 may not yield exactly 0.3, either:" msgstr "" +"ਇੱਕ ਭਰਮ ਦੂਜੇ ਭਰਮ ਨੂੰ ਜਨਮ ਦੇ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਕਿਉਂਕਿ 0.1 ਬਿਲਕੁਲ 1/10 ਨਹੀਂ ਹੈ, ਇਸ ਲਈ " +"0.1 ਦੇ ਤਿੰਨ ਮੁੱਲ ਜੋੜਨ ਨਾਲ ਵੀ ਬਿਲਕੁਲ 0.3 ਨਹੀਂ ਮਿਲ ਸਕਦਾ:" msgid "" ">>> 0.1 + 0.1 + 0.1 == 0.3\n" "False" msgstr "" +">>> 0.1 + 0.1 + 0.1 == 0.3\n" +"False" msgid "" "Also, since the 0.1 cannot get any closer to the exact value of 1/10 and 0.3 " -"cannot get any closer to the exact value of 3/10, then pre-rounding with :" -"func:`round` function cannot help:" +"cannot get any closer to the exact value of 3/10, then pre-rounding " +"with :func:`round` function cannot help:" msgstr "" +"ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕਿਉਂਕਿ 0.1 ਨੂੰ 1/10 ਦੇ ਅਸਲ ਮੁੱਲ ਦੇ ਹੋਰ ਨੇੜੇ ਨਹੀਂ ਲਿਆਂਦਾ ਜਾ ਸਕਦਾ ਅਤੇ 0.3 ਨੂੰ ਵੀ " +"3/10 ਦੇ ਅਸਲ ਮੁੱਲ ਦੇ ਹੋਰ ਨੇੜੇ ਨਹੀਂ ਲਿਆਂਦਾ ਜਾ ਸਕਦਾ, ਇਸ ਲਈ :func:`round` ਫੰਕਸ਼ਨ ਨਾਲ ਪਹਿਲਾਂ " +"ਤੋਂ round ਕਰਨ ਨਾਲ ਵੀ ਮਦਦ ਨਹੀਂ ਮਿਲਦੀ:" msgid "" ">>> round(0.1, 1) + round(0.1, 1) + round(0.1, 1) == round(0.3, 1)\n" "False" msgstr "" +">>> round(0.1, 1) + round(0.1, 1) + round(0.1, 1) == round(0.3, 1)\n" +"False" msgid "" "Though the numbers cannot be made closer to their intended exact values, " "the :func:`math.isclose` function can be useful for comparing inexact values:" msgstr "" +"ਭਾਵੇਂ ਸੰਖਿਆਵਾਂ ਨੂੰ ਉਨ੍ਹਾਂ ਦੇ ਅਸਲ ਉਦੇਸ਼ਿਤ ਮੁੱਲਾਂ ਦੇ ਹੋਰ ਨੇੜੇ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ, ਫਿਰ " +"ਵੀ :func:`math.isclose` ਫੰਕਸ਼ਨ ਅਨੁਮਾਨਿਤ ਮੁੱਲਾਂ ਦੀ ਤੁਲਨਾ ਕਰਨ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ:" msgid "" ">>> math.isclose(0.1 + 0.1 + 0.1, 0.3)\n" "True" msgstr "" +">>> math.isclose(0.1 + 0.1 + 0.1, 0.3)\n" +"True" msgid "" "Alternatively, the :func:`round` function can be used to compare rough " "approximations:" msgstr "" +"ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ, :func:`round` ਫੰਕਸ਼ਨ ਨੂੰ ਲਗਭਗ ਅਨੁਮਾਨਾਂ ਦੀ ਤੁਲਨਾ ਲਈ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" ">>> round(math.pi, ndigits=2) == round(22 / 7, ndigits=2)\n" "True" msgstr "" +">>> round(math.pi, ndigits=2) == round(22 / 7, ndigits=2)\n" +"True" msgid "" "Binary floating-point arithmetic holds many surprises like this. The " @@ -207,6 +281,13 @@ msgid "" "Point `_ for a more complete " "account of other common surprises." msgstr "" +"ਬਾਈਨਰੀ ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਗਣਿਤ ਵਿੱਚ ਇਸ ਤਰ੍ਹਾਂ ਦੀਆਂ ਬਹੁਤ ਸਾਰੀਆਂ ਹੈਰਾਨੀਆਂ ਹੁੰਦੀਆਂ ਹਨ। \"0.1\" " +"ਨਾਲ ਸੰਬੰਧਿਤ ਸਮੱਸਿਆ ਹੇਠਾਂ \"ਪ੍ਰਤੀਨਿਧਿਤਾ ਭੁੱਲ\" ਸੈਕਸ਼ਨ ਵਿੱਚ ਬਿਲਕੁਲ ਵਿਸਥਾਰ ਨਾਲ ਸਮਝਾਈ ਗਈ ਹੈ। " +"ਬਾਈਨਰੀ ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ ਅਤੇ ਅਮਲੀ ਤੌਰ 'ਤੇ ਆਮ ਤੌਰ 'ਤੇ ਆਉਣ ਵਾਲੀਆਂ ਸਮੱਸਿਆਵਾਂ ਦਾ " +"ਇੱਕ ਸੁਹਣਾ ਸੰਖੇਪ ਜਾਣਨ ਲਈ `Examples of Floating Point Problems `_ ` ਵੇਖੋ। ਹੋਰ ਆਮ ਹੈਰਾਨੀਆਂ " +"ਬਾਰੇ ਵਧੇਰੇ ਪੂਰੀ ਜਾਣਕਾਰੀ ਲਈ `The Perils of Floating Point `_ ਵੀ ਵੇਖੋ।" msgid "" "As that says near the end, \"there are no easy answers.\" Still, don't be " @@ -217,75 +298,113 @@ msgid "" "decimal arithmetic and that every float operation can suffer a new rounding " "error." msgstr "" +"ਜਿਵੇਂ ਉੱਥੇ ਅੰਤ ਵਿੱਚ ਕਿਹਾ ਗਿਆ ਹੈ, \"ਇਸਦਾ ਕੋਈ ਆਸਾਨ ਜਵਾਬ ਨਹੀਂ ਹੈ।\" ਫਿਰ ਵੀ floating point " +"ਤੋਂ ਬੇਵਜ੍ਹਾ ਡਰਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। Python ਵਿੱਚ float operations ਦੀਆਂ ਗਲਤੀਆਂ floating-" +"point hardware ਤੋਂ ਆਉਂਦੀਆਂ ਹਨ ਅਤੇ ਜ਼ਿਆਦਾਤਰ ਮਸ਼ੀਨਾਂ 'ਤੇ ਹਰ operation ਲਈ ਇਹ 2**53 ਵਿੱਚੋਂ " +"ਲਗਭਗ 1 ਹਿੱਸੇ ਤੋਂ ਵੱਧ ਨਹੀਂ ਹੁੰਦੀਆਂ। ਇਹ ਜ਼ਿਆਦਾਤਰ ਕੰਮਾਂ ਲਈ ਕਾਫ਼ੀ ਹੈ, ਪਰ ਇਹ ਯਾਦ ਰੱਖਣਾ ਜ਼ਰੂਰੀ ਹੈ ਕਿ " +"ਇਹ decimal arithmetic ਨਹੀਂ ਹੈ ਅਤੇ ਹਰ float operation ਇੱਕ ਨਵੀਂ rounding error ਪੈਦਾ " +"ਕਰ ਸਕਦੀ ਹੈ।" msgid "" "While pathological cases do exist, for most casual use of floating-point " "arithmetic you'll see the result you expect in the end if you simply round " "the display of your final results to the number of decimal digits you " -"expect. :func:`str` usually suffices, and for finer control see the :meth:" -"`str.format` method's format specifiers in :ref:`formatstrings`." +"expect. :func:`str` usually suffices, and for finer control see " +"the :meth:`str.format` method's format specifiers in :ref:`formatstrings`." msgstr "" +"ਭਾਵੇਂ ਕੁਝ ਵਿਸ਼ੇਸ਼ ਅਤੇ ਜਟਿਲ ਮਾਮਲੇ ਮੌਜੂਦ ਹਨ, ਪਰ floating-point arithmetic ਦੀ ਆਮ ਵਰਤੋਂ ਵਿੱਚ " +"ਤੁਸੀਂ ਆਮ ਤੌਰ 'ਤੇ ਉਹੀ ਨਤੀਜਾ ਵੇਖੋਗੇ ਜਿਸਦੀ ਉਮੀਦ ਕਰਦੇ ਹੋ, ਜੇ ਤੁਸੀਂ ਆਪਣੇ ਅੰਤਿਮ ਨਤੀਜੇ ਨੂੰ ਲੋੜੀਂਦੇ " +"decimal ਅੰਕਾਂ ਤੱਕ round ਕਰ ਦਿਓ। :func:`str` ਆਮ ਤੌਰ 'ਤੇ ਕਾਫ਼ੀ ਹੁੰਦਾ ਹੈ ਅਤੇ ਹੋਰ ਨਿਯੰਤਰਣ " +"ਲਈ :ref:`formatstrings` ਵਿੱਚ :meth:`str.format` ਦੇ format specifiers ਵੇਖੋ।" msgid "" -"For use cases which require exact decimal representation, try using the :mod:" -"`decimal` module which implements decimal arithmetic suitable for accounting " -"applications and high-precision applications." +"For use cases which require exact decimal representation, try using " +"the :mod:`decimal` module which implements decimal arithmetic suitable for " +"accounting applications and high-precision applications." msgstr "" +"ਉਹਨਾਂ ਮਾਮਲਿਆਂ ਲਈ ਜਿੱਥੇ ਬਿਲਕੁਲ ਸਹੀ decimal representation ਦੀ ਲੋੜ ਹੁੰਦੀ " +"ਹੈ, :mod:`decimal` ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰੋ, ਜੋ accounting ਅਤੇ high-precision ਐਪਲੀਕੇਸ਼ਨਾਂ " +"ਲਈ ਉਚਿਤ decimal arithmetic ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" msgid "" "Another form of exact arithmetic is supported by the :mod:`fractions` module " "which implements arithmetic based on rational numbers (so the numbers like " "1/3 can be represented exactly)." msgstr "" +"ਸਹੀ arithmetic ਦਾ ਇੱਕ ਹੋਰ ਰੂਪ :mod:`fractions` ਮੋਡੀਊਲ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜੋ " +"rational numbers 'ਤੇ ਆਧਾਰਿਤ arithmetic ਲਾਗੂ ਕਰਦਾ ਹੈ (ਇਸ ਲਈ 1/3 ਵਰਗੀਆਂ ਸੰਖਿਆਵਾਂ ਨੂੰ " +"ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ ਹੈ)।" msgid "" "If you are a heavy user of floating-point operations you should take a look " "at the NumPy package and many other packages for mathematical and " -"statistical operations supplied by the SciPy project. See ." +"statistical operations supplied by the SciPy project. See ." msgstr "" +"ਜੇ ਤੁਸੀਂ floating-point operations ਦੀ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ NumPy " +"package ਅਤੇ SciPy project ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ ਹੋਰ ਗਣਿਤਕ ਅਤੇ ਅੰਕੜਾ-ਵਿਗਿਆਨਕ packages ਨੂੰ " +"ਵੀ ਵੇਖਣਾ ਚਾਹੀਦਾ ਹੈ। ਵੇਖੋ: ." msgid "" "Python provides tools that may help on those rare occasions when you really " -"*do* want to know the exact value of a float. The :meth:`float." -"as_integer_ratio` method expresses the value of a float as a fraction:" +"*do* want to know the exact value of a float. " +"The :meth:`float.as_integer_ratio` method expresses the value of a float as " +"a fraction:" msgstr "" +"Python ਉਹਨਾਂ ਵਿਰਲੇ ਮੌਕਿਆਂ ਲਈ ਕੁਝ tools ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਸੱਚਮੁੱਚ ਕਿਸੇ float ਦਾ " +"ਬਿਲਕੁਲ ਸਹੀ ਮੁੱਲ ਜਾਣਨਾ ਚਾਹੁੰਦੇ ਹੋ। :meth:`float.as_integer_ratio` ਮੈਥਡ ਇੱਕ float ਦੇ ਮੁੱਲ " +"ਨੂੰ ਭਿੰਨ ਦੇ ਰੂਪ ਵਿੱਚ ਦਰਸਾਉਂਦੀ ਹੈ:" msgid "" ">>> x = 3.14159\n" ">>> x.as_integer_ratio()\n" "(3537115888337719, 1125899906842624)" msgstr "" +">>> x = 3.14159\n" +">>> x.as_integer_ratio()\n" +"(3537115888337719, 1125899906842624)" msgid "" "Since the ratio is exact, it can be used to losslessly recreate the original " "value:" msgstr "" +"ਕਿਉਂਕਿ ਇਹ ਅਨੁਪਾਤ ਬਿਲਕੁਲ ਸਹੀ ਹੈ, ਇਸਦੀ ਵਰਤੋਂ ਮੂਲ ਮੁੱਲ ਨੂੰ ਬਿਨਾਂ ਕਿਸੇ ਜਾਣਕਾਰੀ ਦੇ ਨੁਕਸਾਨ ਦੇ ਮੁੜ " +"ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:" msgid "" ">>> x == 3537115888337719 / 1125899906842624\n" "True" msgstr "" +">>> x == 3537115888337719 / 1125899906842624\n" +"True" msgid "" "The :meth:`float.hex` method expresses a float in hexadecimal (base 16), " "again giving the exact value stored by your computer:" msgstr "" +":meth:`float.hex` ਮੈਥਡ ਇੱਕ float ਨੂੰ hexadecimal (base 16) ਰੂਪ ਵਿੱਚ ਦਰਸਾਉਂਦੀ ਹੈ ਅਤੇ " +"ਮੁੜ ਉਹੀ ਸਹੀ ਮੁੱਲ ਦਿੰਦੀ ਹੈ ਜੋ ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਵਿੱਚ ਸਟੋਰ ਹੈ:" msgid "" ">>> x.hex()\n" "'0x1.921f9f01b866ep+1'" msgstr "" +">>> x.hex()\n" +"'0x1.921f9f01b866ep+1'" msgid "" "This precise hexadecimal representation can be used to reconstruct the float " "value exactly:" msgstr "" +"ਇਸ ਸਹੀ hexadecimal representation ਦੀ ਵਰਤੋਂ ਕਰਕੇ float ਦਾ ਮੁੱਲ ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ " +"ਮੁੜ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ:" msgid "" ">>> x == float.fromhex('0x1.921f9f01b866ep+1')\n" "True" msgstr "" +">>> x == float.fromhex('0x1.921f9f01b866ep+1')\n" +"True" msgid "" "Since the representation is exact, it is useful for reliably porting values " @@ -293,6 +412,10 @@ msgid "" "data with other languages that support the same format (such as Java and " "C99)." msgstr "" +"ਕਿਉਂਕਿ ਇਹ representation ਬਿਲਕੁਲ ਸਹੀ ਹੈ, ਇਸ ਲਈ ਇਹ Python ਦੇ ਵੱਖ-ਵੱਖ ਸੰਸਕਰਣਾਂ " +"(platform independence) ਵਿਚਕਾਰ ਮੁੱਲਾਂ ਨੂੰ ਭਰੋਸੇਯੋਗ ਢੰਗ ਨਾਲ ਤਬਦੀਲ ਕਰਨ ਅਤੇ ਉਹਨਾਂ ਹੋਰ " +"ਭਾਸ਼ਾਵਾਂ ਨਾਲ ਡਾਟਾ ਅਦਾਨ-ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਲਾਭਦਾਇਕ ਹੈ ਜੋ ਇਹੋ ਜਿਹਾ format ਸਮਰਥਨ ਕਰਦੀਆਂ ਹਨ " +"(ਜਿਵੇਂ Java ਅਤੇ C99)।" msgid "" "Another helpful tool is the :func:`sum` function which helps mitigate loss-" @@ -301,6 +424,10 @@ msgid "" "difference in overall accuracy so that the errors do not accumulate to the " "point where they affect the final total:" msgstr "" +"ਇੱਕ ਹੋਰ ਲਾਭਦਾਇਕ tool :func:`sum` ਫੰਕਸ਼ਨ ਹੈ, ਜੋ ਜੋੜ ਦੇ ਦੌਰਾਨ precision ਦੇ ਨੁਕਸਾਨ ਨੂੰ ਘਟਾਉਣ " +"ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਮੁੱਲਾਂ ਨੂੰ ਚੱਲਦੇ ਕੁੱਲ ਵਿੱਚ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਵਿਚਕਾਰਲੇ rounding ਕਦਮਾਂ " +"ਲਈ extended precision ਵਰਤਦਾ ਹੈ। ਇਸ ਨਾਲ ਕੁੱਲ ਸ਼ੁੱਧਤਾ ਵਿੱਚ ਸੁਧਾਰ ਆ ਸਕਦਾ ਹੈ ਅਤੇ ਗਲਤੀਆਂ ਇੰਨੀ " +"ਨਹੀਂ ਵੱਧਦੀਆਂ ਕਿ ਉਹ ਅੰਤਿਮ ਨਤੀਜੇ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਨ।" msgid "" ">>> 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 == 1.0\n" @@ -308,6 +435,10 @@ msgid "" ">>> sum([0.1] * 10) == 1.0\n" "True" msgstr "" +">>> 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 == 1.0\n" +"False\n" +">>> sum([0.1] * 10) == 1.0\n" +"True" msgid "" "The :func:`math.fsum` goes further and tracks all of the \"lost digits\" as " @@ -316,6 +447,10 @@ msgid "" "uncommon cases where large magnitude inputs mostly cancel each other out " "leaving a final sum near zero:" msgstr "" +":func:`math.fsum` ਇਸ ਤੋਂ ਵੀ ਅੱਗੇ ਜਾਂਦਾ ਹੈ ਅਤੇ ਚੱਲਦੇ ਕੁੱਲ ਵਿੱਚ ਮੁੱਲ ਜੋੜਦੇ ਸਮੇਂ ਸਾਰੇ \"lost " +"digits\" ਨੂੰ ਟ੍ਰੈਕ ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ ਅੰਤਿਮ ਨਤੀਜੇ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਹੀ rounding ਹੋਵੇ। " +"ਇਹ :func:`sum` ਨਾਲੋਂ ਹੌਲਾ ਹੈ, ਪਰ ਉਹਨਾਂ ਵਿਰਲੇ ਮਾਮਲਿਆਂ ਵਿੱਚ ਵਧੇਰੇ ਸਹੀ ਹੁੰਦਾ ਹੈ ਜਿੱਥੇ ਵੱਡੇ ਮੁੱਲ ਇੱਕ-" +"ਦੂਜੇ ਨੂੰ ਲਗਭਗ ਰੱਦ ਕਰ ਦਿੰਦੇ ਹਨ ਅਤੇ ਅੰਤਿਮ ਜੋੜ ਸਿਫ਼ਰ ਦੇ ਨੇੜੇ ਰਹਿ ਜਾਂਦਾ ਹੈ।" msgid "" ">>> arr = [-0.10430216751806065, -266310978.67179024, 143401161448607.16,\n" @@ -336,15 +471,34 @@ msgid "" "digits!\n" "-0.0051575902860057365" msgstr "" +">>> arr = [-0.10430216751806065, -266310978.67179024, 143401161448607.16,\n" +"... -143401161400469.7, 266262841.31058735, -0.003244936839808227]\n" +">>> float(sum(map(Fraction, arr))) # Exact summation with single rounding\n" +"8.042173697819788e-13\n" +">>> math.fsum(arr) # Single rounding\n" +"8.042173697819788e-13\n" +">>> sum(arr) # Multiple roundings in extended " +"precision\n" +"8.042178034628478e-13\n" +">>> total = 0.0\n" +">>> for x in arr:\n" +"... total += x # Multiple roundings in standard " +"precision\n" +"...\n" +">>> total # ਸਿੱਧੇ ਜੋੜ ਵਿੱਚ ਕੋਈ ਵੀ ਸਹੀ ਅੰਕ ਨਹੀਂ!\n" +"-0.0051575902860057365" msgid "Representation Error" -msgstr "" +msgstr "ਪ੍ਰਤਿਨਿਧਿਤਾ ਗਲਤੀ" msgid "" "This section explains the \"0.1\" example in detail, and shows how you can " "perform an exact analysis of cases like this yourself. Basic familiarity " "with binary floating-point representation is assumed." msgstr "" +"ਇਹ ਭਾਗ \"0.1\" ਵਾਲੀ ਉਦਾਹਰਨ ਨੂੰ ਵਿਸਥਾਰ ਨਾਲ ਸਮਝਾਉਂਦਾ ਹੈ ਅਤੇ ਦਿਖਾਉਂਦਾ ਹੈ ਕਿ ਤੁਸੀਂ ਇਸ " +"ਤਰ੍ਹਾਂ ਦੇ ਮਾਮਲਿਆਂ ਦਾ ਸਹੀ ਵਿਸ਼ਲੇਸ਼ਣ ਖੁਦ ਕਿਵੇਂ ਕਰ ਸਕਦੇ ਹੋ। ਇਹ ਮੰਨਿਆ ਗਿਆ ਹੈ ਕਿ ਤੁਹਾਨੂੰ binary " +"floating-point representation ਦੀ ਮੁੱਢਲੀ ਜਾਣਕਾਰੀ ਹੈ।" msgid "" ":dfn:`Representation error` refers to the fact that some (most, actually) " @@ -353,6 +507,10 @@ msgid "" "Fortran, and many others) often won't display the exact decimal number you " "expect." msgstr "" +":dfn:`Representation error` ਇਸ ਗੱਲ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦਾ ਹੈ ਕਿ ਕੁਝ (ਅਸਲ ਵਿੱਚ ਜ਼ਿਆਦਾਤਰ) " +"decimal ਭਿੰਨਾਂ ਨੂੰ binary (base 2) ਭਿੰਨਾਂ ਵਜੋਂ ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਇਆ ਨਹੀਂ ਜਾ " +"ਸਕਦਾ। ਇਹ ਮੁੱਖ ਕਾਰਨ ਹੈ ਕਿ Python (ਜਾਂ Perl, C, C++, Java, Fortran ਅਤੇ ਹੋਰ ਕਈ " +"ਭਾਸ਼ਾਵਾਂ) ਅਕਸਰ ਉਹ ਸਹੀ decimal ਸੰਖਿਆ ਨਹੀਂ ਦਿਖਾਉਂਦੀਆਂ ਜਿਸਦੀ ਤੁਸੀਂ ਉਮੀਦ ਕਰਦੇ ਹੋ।" msgid "" "Why is that? 1/10 is not exactly representable as a binary fraction. Since " @@ -363,87 +521,122 @@ msgid "" "fraction it can of the form *J*/2**\\ *N* where *J* is an integer containing " "exactly 53 bits. Rewriting ::" msgstr "" +"ਅਜਿਹਾ ਕਿਉਂ ਹੈ? 1/10 ਨੂੰ binary ਭਿੰਨ ਵਜੋਂ ਬਿਲਕੁਲ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਇਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। " +"2000 ਤੋਂ ਬਾਅਦ ਲਗਭਗ ਸਾਰੀਆਂ ਮਸ਼ੀਨਾਂ IEEE 754 binary floating-point arithmetic " +"ਵਰਤਦੀਆਂ ਹਨ ਅਤੇ ਲਗਭਗ ਸਾਰੇ platforms Python floats ਨੂੰ IEEE 754 binary64 \"double " +"precision\" ਮੁੱਲਾਂ ਨਾਲ ਮੈਪ ਕਰਦੇ ਹਨ। IEEE 754 binary64 ਮੁੱਲਾਂ ਵਿੱਚ 53 bits ਦੀ " +"precision ਹੁੰਦੀ ਹੈ, ਇਸ ਲਈ ਕੰਪਿਊਟਰ 0.1 ਨੂੰ *J*/2**\\ *N* ਦੇ ਰੂਪ ਵਾਲੀ ਸਭ ਤੋਂ ਨੇੜਲੀ ਭਿੰਨ " +"ਵਿੱਚ ਬਦਲਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਜਿੱਥੇ *J* ਇੱਕ ਪੂਰਨ ਅੰਕ ਹੈ ਜਿਸ ਵਿੱਚ ਬਿਲਕੁਲ 53 bits ਹੁੰਦੀਆਂ ਹਨ। " +"ਇਸਨੂੰ ਮੁੜ ਲਿਖਦੇ ਹਾਂ ::" msgid "1 / 10 ~= J / (2**N)" -msgstr "" +msgstr "1 / 10 ~= J / (2**N)" msgid "as ::" -msgstr "" +msgstr "ਇਸ ਤਰ੍ਹਾਂ ::" msgid "J ~= 2**N / 10" -msgstr "" +msgstr "J ~= 2**N / 10" msgid "" "and recalling that *J* has exactly 53 bits (is ``>= 2**52`` but ``< " "2**53``), the best value for *N* is 56:" msgstr "" +"ਅਤੇ ਇਹ ਯਾਦ ਰੱਖਦੇ ਹੋਏ ਕਿ *J* ਵਿੱਚ ਬਿਲਕੁਲ 53 bits ਹਨ (ਅਰਥਾਤ ``>= 2**52`` ਪਰ ``< " +"2**53``), *N* ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਮੁੱਲ 56 ਹੈ:" msgid "" ">>> 2**52 <= 2**56 // 10 < 2**53\n" "True" msgstr "" +">>> 2**52 <= 2**56 // 10 < 2**53\n" +"True" msgid "" "That is, 56 is the only value for *N* that leaves *J* with exactly 53 bits. " "The best possible value for *J* is then that quotient rounded:" msgstr "" +"ਅਰਥਾਤ, 56 ਹੀ *N* ਦਾ ਉਹ ਇਕੱਲਾ ਮੁੱਲ ਹੈ ਜੋ *J* ਨੂੰ ਬਿਲਕੁਲ 53 bits ਨਾਲ ਛੱਡਦਾ ਹੈ। ਇਸ ਤੋਂ ਬਾਅਦ " +"*J* ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਸੰਭਵ ਮੁੱਲ ਉਹ ਭਾਗਫਲ ਹੁੰਦਾ ਹੈ ਜਿਸਨੂੰ round ਕੀਤਾ ਗਿਆ ਹੋਵੇ:" msgid "" ">>> q, r = divmod(2**56, 10)\n" ">>> r\n" "6" msgstr "" +">>> q, r = divmod(2**56, 10)\n" +">>> r\n" +"6" msgid "" "Since the remainder is more than half of 10, the best approximation is " "obtained by rounding up:" msgstr "" +"ਕਿਉਂਕਿ ਬਾਕੀ ਰਹਿੰਦਾ ਭਾਗ 10 ਦੇ ਅੱਧ ਤੋਂ ਵੱਧ ਹੈ, ਇਸ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ approximation ਉੱਪਰ ਵੱਲ " +"round ਕਰਕੇ ਪ੍ਰਾਪਤ ਹੁੰਦਾ ਹੈ:" msgid "" ">>> q+1\n" "7205759403792794" msgstr "" +">>> q+1\n" +"7205759403792794" msgid "" "Therefore the best possible approximation to 1/10 in IEEE 754 double " "precision is::" msgstr "" +"ਇਸ ਲਈ IEEE 754 double precision ਵਿੱਚ 1/10 ਦਾ ਸਭ ਤੋਂ ਵਧੀਆ ਸੰਭਵ approximation ਇਹ " +"ਹੈ::" msgid "7205759403792794 / 2 ** 56" -msgstr "" +msgstr "7205759403792794 / 2 ** 56" msgid "" "Dividing both the numerator and denominator by two reduces the fraction to::" msgstr "" +"Numerator ਅਤੇ denominator ਦੋਹਾਂ ਨੂੰ ਦੋ ਨਾਲ ਭਾਗ ਦੇਣ 'ਤੇ ਇਹ ਭਿੰਨ ਘਟ ਕੇ ਇਸ ਰੂਪ ਵਿੱਚ ਆ ਜਾਂਦੀ " +"ਹੈ::" msgid "3602879701896397 / 2 ** 55" -msgstr "" +msgstr "3602879701896397 / 2 ** 55" msgid "" "Note that since we rounded up, this is actually a little bit larger than " "1/10; if we had not rounded up, the quotient would have been a little bit " "smaller than 1/10. But in no case can it be *exactly* 1/10!" msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਕਿਉਂਕਿ ਅਸੀਂ round up ਕੀਤਾ ਹੈ, ਇਸ ਲਈ ਇਹ ਅਸਲ ਵਿੱਚ 1/10 ਨਾਲੋਂ ਥੋੜ੍ਹਾ ਵੱਡਾ ਹੈ। " +"ਜੇ ਅਸੀਂ round up ਨਾ ਕੀਤਾ ਹੁੰਦਾ, ਤਾਂ ਭਾਗਫਲ 1/10 ਨਾਲੋਂ ਥੋੜ੍ਹਾ ਛੋਟਾ ਹੁੰਦਾ। ਪਰ ਕਿਸੇ ਵੀ ਹਾਲਤ " +"ਵਿੱਚ ਇਹ *ਬਿਲਕੁਲ* 1/10 ਨਹੀਂ ਬਣ ਸਕਦਾ!" msgid "" "So the computer never \"sees\" 1/10: what it sees is the exact fraction " "given above, the best IEEE 754 double approximation it can get:" msgstr "" +"ਇਸ ਲਈ ਕੰਪਿਊਟਰ ਕਦੇ ਵੀ ਅਸਲ 1/10 ਨੂੰ \"ਨਹੀਂ ਵੇਖਦਾ\"। ਇਹ ਉੱਪਰ ਦਿੱਤੀ ਸਹੀ ਭਿੰਨ ਨੂੰ ਹੀ ਵੇਖਦਾ ਹੈ, " +"ਜੋ IEEE 754 double precision ਵਿੱਚ ਮਿਲ ਸਕਣ ਵਾਲਾ ਸਭ ਤੋਂ ਵਧੀਆ approximation ਹੈ:" msgid "" ">>> 0.1 * 2 ** 55\n" "3602879701896397.0" msgstr "" +">>> 0.1 * 2 ** 55\n" +"3602879701896397.0" msgid "" "If we multiply that fraction by 10\\*\\*55, we can see the value out to 55 " "decimal digits:" msgstr "" +"ਜੇ ਅਸੀਂ ਉਸ ਭਿੰਨ ਨੂੰ 10**55 ਨਾਲ ਗੁਣਾ ਕਰੀਏ, ਤਾਂ ਅਸੀਂ ਉਸਦਾ ਮੁੱਲ 55 decimal ਅੰਕਾਂ ਤੱਕ ਵੇਖ ਸਕਦੇ " +"ਹਾਂ:" msgid "" ">>> 3602879701896397 * 10 ** 55 // 2 ** 55\n" "1000000000000000055511151231257827021181583404541015625" msgstr "" +">>> 3602879701896397 * 10 ** 55 // 2 ** 55\n" +"1000000000000000055511151231257827021181583404541015625" msgid "" "meaning that the exact number stored in the computer is equal to the decimal " @@ -451,15 +644,21 @@ msgid "" "displaying the full decimal value, many languages (including older versions " "of Python), round the result to 17 significant digits:" msgstr "" +"ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ਕੰਪਿਊਟਰ ਵਿੱਚ ਸਟੋਰ ਕੀਤੀ ਗਈ ਸਹੀ ਸੰਖਿਆ decimal ਮੁੱਲ " +"0.1000000000000000055511151231257827021181583404541015625 ਦੇ ਬਰਾਬਰ ਹੈ। ਪੂਰਾ " +"decimal ਮੁੱਲ ਦਿਖਾਉਣ ਦੀ ਬਜਾਏ, ਕਈ ਭਾਸ਼ਾਵਾਂ (Python ਦੇ ਪੁਰਾਣੇ ਸੰਸਕਰਣਾਂ ਸਮੇਤ) ਨਤੀਜੇ ਨੂੰ 17 " +"significant digits ਤੱਕ round ਕਰ ਦਿੰਦੀਆਂ ਹਨ:" msgid "" ">>> format(0.1, '.17f')\n" "'0.10000000000000001'" msgstr "" +">>> format(0.1, '.17f')\n" +"'0.10000000000000001'" msgid "" "The :mod:`fractions` and :mod:`decimal` modules make these calculations easy:" -msgstr "" +msgstr ":mod:`fractions` ਅਤੇ :mod:`decimal` ਮੋਡੀਊਲ ਇਹ ਗਣਨਾਵਾਂ ਆਸਾਨ ਬਣਾ ਦਿੰਦੇ ਹਨ:" msgid "" ">>> from decimal import Decimal\n" @@ -477,3 +676,17 @@ msgid "" ">>> format(Decimal.from_float(0.1), '.17')\n" "'0.10000000000000001'" msgstr "" +">>> from decimal import Decimal\n" +">>> from fractions import Fraction\n" +"\n" +">>> Fraction.from_float(0.1)\n" +"Fraction(3602879701896397, 36028797018963968)\n" +"\n" +">>> (0.1).as_integer_ratio()\n" +"(3602879701896397, 36028797018963968)\n" +"\n" +">>> Decimal.from_float(0.1)\n" +"Decimal('0.1000000000000000055511151231257827021181583404541015625')\n" +"\n" +">>> format(Decimal.from_float(0.1), '.17')\n" +"'0.10000000000000001'" diff --git a/tutorial/index.po b/tutorial/index.po index 4e3b156..57b9d09 100644 --- a/tutorial/index.po +++ b/tutorial/index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,12 +23,14 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "The Python Tutorial" -msgstr "" +msgstr "ਪਾਈਥਨ ਟਿਊਟੋਰਿਅਲ" msgid "" "This tutorial is designed for *programmers* that are new to the Python " "language, **not** *beginners* who are new to programming." msgstr "" +"ਇਹ ਟਿਊਟੋਰਿਅਲ ਉਹਨਾਂ *ਪ੍ਰੋਗ੍ਰਾਮਰਾਂ* ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ ਜੋ Python ਭਾਸ਼ਾ ਵਿੱਚ ਨਵੇਂ ਹਨ, **ਨਾ " +"ਕਿ** ਉਹਨਾਂ *ਸ਼ੁਰੂਆਤੀ ਸਿਖਿਆਰਥੀਆਂ* ਲਈ ਜੋ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਵਿੱਚ ਹੀ ਨਵੇਂ ਹਨ।" msgid "" "Python is an easy to learn, powerful programming language. It has efficient " @@ -37,6 +39,11 @@ msgid "" "with its interpreted nature, make it an ideal language for scripting and " "rapid application development in many areas on most platforms." msgstr "" +"Python ਇੱਕ ਆਸਾਨੀ ਨਾਲ ਸਿੱਖੀ ਜਾ ਸਕਣ ਵਾਲੀ ਅਤੇ ਸ਼ਕਤੀਸ਼ਾਲੀ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ। ਇਸ ਵਿੱਚ " +"ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਉੱਚ-ਪੱਧਰੀ ਡਾਟਾ ਸਟ੍ਰਕਚਰ ਅਤੇ object-oriented programming ਲਈ ਇੱਕ ਸਧਾਰਣ ਪਰ " +"ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਪਹੁੰਚ ਹੈ। Python ਦੀ ਸੁੰਦਰ syntax ਅਤੇ dynamic typing, ਇਸਦੀ interpreted " +"ਪ੍ਰਕਿਰਤੀ ਨਾਲ ਮਿਲ ਕੇ, ਇਸਨੂੰ ਜ਼ਿਆਦਾਤਰ ਪਲੇਟਫਾਰਮਾਂ ਉੱਤੇ scripting ਅਤੇ ਤੇਜ਼ application " +"development ਲਈ ਇੱਕ ਆਦਰਸ਼ ਭਾਸ਼ਾ ਬਣਾਉਂਦੀਆਂ ਹਨ।" msgid "" "The Python interpreter and the extensive standard library are freely " @@ -45,12 +52,21 @@ msgid "" "site also contains distributions of and pointers to many free third party " "Python modules, programs and tools, and additional documentation." msgstr "" +"Python interpreter ਅਤੇ ਵਿਸਤ੍ਰਿਤ standard library, Python ਵੈੱਬਸਾਈਟ https://" +"www.python.org/ ਤੋਂ ਸਾਰੇ ਮੁੱਖ ਪਲੇਟਫਾਰਮਾਂ ਲਈ source ਜਾਂ binary ਰੂਪ ਵਿੱਚ ਮੁਫ਼ਤ ਉਪਲਬਧ ਹਨ ਅਤੇ " +"ਇਨ੍ਹਾਂ ਨੂੰ ਆਜ਼ਾਦੀ ਨਾਲ ਵੰਡਿਆ ਵੀ ਜਾ ਸਕਦਾ ਹੈ। ਇਸੇ ਸਾਈਟ ਉੱਤੇ ਕਈ ਮੁਫ਼ਤ third-party Python " +"modules, programs, tools ਅਤੇ ਵਾਧੂ documentation ਲਈ ਲਿੰਕ ਅਤੇ distributions ਵੀ " +"ਉਪਲਬਧ ਹਨ।" msgid "" "The Python interpreter is easily extended with new functions and data types " "implemented in C or C++ (or other languages callable from C). Python is also " "suitable as an extension language for customizable applications." msgstr "" +"Python interpreter ਨੂੰ C ਜਾਂ C++ (ਜਾਂ C ਤੋਂ ਕਾਲ ਕੀਤੀਆਂ ਜਾ ਸਕਣ ਵਾਲੀਆਂ ਹੋਰ ਭਾਸ਼ਾਵਾਂ) ਵਿੱਚ " +"ਲਿਖੇ ਨਵੇਂ functions ਅਤੇ data types ਨਾਲ ਆਸਾਨੀ ਨਾਲ ਵਿਸਤਾਰਿਆ ਜਾ ਸਕਦਾ ਹੈ। Python " +"ਕਸਟਮਾਈਜ਼ ਕੀਤੀਆਂ ਜਾ ਸਕਣ ਵਾਲੀਆਂ applications ਲਈ ਇੱਕ extension language ਵਜੋਂ ਵੀ ਉਚਿਤ " +"ਹੈ।" msgid "" "This tutorial introduces the reader informally to the basic concepts and " @@ -59,13 +75,22 @@ msgid "" "Python interpreter handy for hands-on experience, but all examples are self-" "contained, so the tutorial can be read off-line as well." msgstr "" +"ਇਹ ਟਿਊਟੋਰਿਅਲ ਪਾਠਕ ਨੂੰ Python ਭਾਸ਼ਾ ਅਤੇ ਸਿਸਟਮ ਦੇ ਬੁਨਿਆਦੀ ਸੰਕਲਪਾਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਾਲ ਗੈਰ-" +"ਰਸਮੀ ਢੰਗ ਨਾਲ ਜਾਣੂ ਕਰਵਾਉਂਦਾ ਹੈ। ਇਹ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਕਿ ਤੁਹਾਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਦੀ " +"ਬੁਨਿਆਦੀ ਸਮਝ ਹੈ। ਹੱਥੋਂ-ਹੱਥ ਅਭਿਆਸ ਲਈ Python interpreter ਉਪਲਬਧ ਹੋਣਾ ਮਦਦਗਾਰ ਹੈ, ਪਰ ਸਾਰੇ " +"ਉਦਾਹਰਨ self-contained ਹਨ, ਇਸ ਲਈ ਇਹ ਟਿਊਟੋਰਿਅਲ offline ਵੀ ਪੜ੍ਹਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" -"For a description of standard objects and modules, see :ref:`library-" -"index`. :ref:`reference-index` gives a more formal definition of the " -"language. To write extensions in C or C++, read :ref:`extending-index` and :" -"ref:`c-api-index`. There are also several books covering Python in depth." +"For a description of standard objects and modules, see :ref:`builtins-index` " +"and :ref:`library-index`. :ref:`reference-index` gives a more formal " +"definition of the language. To write extensions in C or C++, " +"read :ref:`extending-index` and :ref:`c-api-index`. There are also several " +"books covering Python in depth." msgstr "" +"ਮਿਆਰੀ ਵਸਤੂਆਂ ਅਤੇ ਮੌਡਿਊਲਾਂ ਦੇ ਵੇਰਵੇ ਲਈ :ref:`builtins-index` ਅਤੇ :ref:`library-index` " +"ਵੇਖੋ। :ref:`reference-index` ਭਾਸ਼ਾ ਦੀ ਹੋਰ ਰਸਮੀ ਪਰਿਭਾਸ਼ਾ ਦਿੰਦਾ ਹੈ। C ਜਾਂ C++ ਵਿੱਚ " +"ਐਕਸਟੈਂਸ਼ਨ ਲਿਖਣ ਲਈ :ref:`extending-index` ਅਤੇ :ref:`c-api-index` ਪੜ੍ਹੋ। Python ਨੂੰ " +"ਡੂੰਘਾਈ ਨਾਲ ਸਮਝਾਉਣ ਵਾਲੀਆਂ ਕਈ ਕਿਤਾਬਾਂ ਵੀ ਉਪਲਬਧ ਹਨ।" msgid "" "This tutorial does not attempt to be comprehensive and cover every single " @@ -75,6 +100,11 @@ msgid "" "write Python modules and programs, and you will be ready to learn more about " "the various Python library modules described in :ref:`library-index`." msgstr "" +"ਇਹ ਟਿਊਟੋਰਿਅਲ ਹਰ ਇੱਕ ਵਿਸ਼ੇਸ਼ਤਾ ਜਾਂ ਹਰ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਕਵਰ ਕਰਨ ਦੀ " +"ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ। ਇਸਦੀ ਬਜਾਏ, ਇਹ Python ਦੀਆਂ ਕਈ ਮਹੱਤਵਪੂਰਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਾਲ ਜਾਣੂ ਕਰਵਾਉਂਦਾ " +"ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ ਭਾਸ਼ਾ ਦੀ ਸ਼ੈਲੀ ਅਤੇ ਸੁਭਾਵ ਦੀ ਚੰਗੀ ਸਮਝ ਦੇਵੇਗਾ। ਇਸਨੂੰ ਪੜ੍ਹਣ ਤੋਂ ਬਾਅਦ ਤੁਸੀਂ Python " +"modules ਅਤੇ programs ਪੜ੍ਹ ਅਤੇ ਲਿਖ ਸਕੋਗੇ ਅਤੇ :ref:`library-index` ਵਿੱਚ ਵਰਣਿਤ ਵੱਖ-ਵੱਖ " +"Python library modules ਬਾਰੇ ਹੋਰ ਸਿੱਖਣ ਲਈ ਤਿਆਰ ਹੋਵੋਗੇ।" msgid "The :ref:`glossary` is also worth going through." -msgstr "" +msgstr ":ref:`glossary` ਨੂੰ ਵੀ ਪੜ੍ਹਨਾ ਲਾਭਦਾਇਕ ਰਹੇਗਾ।" diff --git a/tutorial/inputoutput.po b/tutorial/inputoutput.po index bf395ab..487c5a0 100644 --- a/tutorial/inputoutput.po +++ b/tutorial/inputoutput.po @@ -11,42 +11,52 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pa\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -msgid "Input and Output" -msgstr "" +msgid "Input and output" +msgstr "ਇਨਪੁੱਟ ਅਤੇ ਆਉਟਪੁੱਟ" msgid "" "There are several ways to present the output of a program; data can be " "printed in a human-readable form, or written to a file for future use. This " "chapter will discuss some of the possibilities." msgstr "" +"ਕਿਸੇ ਪ੍ਰੋਗਰਾਮ ਦਾ ਆਉਟਪੁੱਟ ਪੇਸ਼ ਕਰਨ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ; ਡਾਟਾ ਨੂੰ ਮਨੁੱਖਾਂ ਲਈ ਆਸਾਨੀ ਨਾਲ ਪੜ੍ਹਨਯੋਗ ਰੂਪ " +"ਵਿੱਚ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂ ਭਵਿੱਖ ਵਿੱਚ ਵਰਤੋਂ ਲਈ ਕਿਸੇ ਫਾਈਲ ਵਿੱਚ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ " +"ਅਧਿਆਇ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੁਝ ਸੰਭਾਵਨਾਵਾਂ ਬਾਰੇ ਚਰਚਾ ਕਰੇਗਾ।" -msgid "Fancier Output Formatting" -msgstr "" +msgid "Fancier output formatting" +msgstr "ਵਧੇਰੇ ਸ਼ਾਨਦਾਰ ਆਉਟਪੁੱਟ ਫਾਰਮੈਟਿੰਗ" msgid "" "So far we've encountered two ways of writing values: *expression statements* " -"and the :func:`print` function. (A third way is using the :meth:`~io." -"TextIOBase.write` method of file objects; the standard output file can be " -"referenced as ``sys.stdout``. See the Library Reference for more information " -"on this.)" +"and the :func:`print` function. (A third way is using " +"the :meth:`~io.TextIOBase.write` method of file objects; the standard output " +"file can be referenced as ``sys.stdout``. See the Library Reference for more " +"information on this.)" msgstr "" +"ਹੁਣ ਤੱਕ ਅਸੀਂ ਮੁੱਲਾਂ ਨੂੰ ਦਰਸਾਉਣ ਦੇ ਦੋ ਤਰੀਕਿਆਂ ਨਾਲ ਜਾਣ-ਪਛਾਣ ਕੀਤੀ ਹੈ: *expression " +"statements* ਅਤੇ :func:`print` ਫੰਕਸ਼ਨ। (ਤੀਜਾ ਤਰੀਕਾ ਫਾਈਲ ਆਬਜੈਕਟਾਂ " +"ਦੀ :meth:`~io.TextIOBase.write` ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਹੈ; ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਫਾਈਲ ਨੂੰ " +"``sys.stdout`` ਰਾਹੀਂ ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ Library Reference " +"ਵੇਖੋ।)" msgid "" "Often you'll want more control over the formatting of your output than " "simply printing space-separated values. There are several ways to format " "output." msgstr "" +"ਅਕਸਰ ਤੁਸੀਂ ਸਿਰਫ਼ ਖਾਲੀ ਥਾਵਾਂ ਨਾਲ ਵੱਖ ਕੀਤੇ ਮੁੱਲਾਂ ਨੂੰ ਪ੍ਰਿੰਟ ਕਰਨ ਨਾਲੋਂ ਆਪਣੇ ਆਉਟਪੁੱਟ ਦੀ ਫਾਰਮੈਟਿੰਗ " +"ਉੱਤੇ ਵੱਧ ਨਿਯੰਤਰਣ ਚਾਹੋਗੇ। ਆਉਟਪੁੱਟ ਨੂੰ ਫਾਰਮੈਟ ਕਰਨ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ।" msgid "" "To use :ref:`formatted string literals `, begin a string with " @@ -54,6 +64,10 @@ msgid "" "Inside this string, you can write a Python expression between ``{`` and ``}" "`` characters that can refer to variables or literal values." msgstr "" +":ref:`formatted string literals ` ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ, ਸਟ੍ਰਿੰਗ ਦੇ " +"ਸ਼ੁਰੂਆਤੀ quotation mark ਜਾਂ triple quotation mark ਤੋਂ ਪਹਿਲਾਂ ``f`` ਜਾਂ ``F`` ਲਗਾਓ। " +"ਇਸ ਸਟ੍ਰਿੰਗ ਦੇ ਅੰਦਰ ਤੁਸੀਂ ``{`` ਅਤੇ ``}`` ਦੇ ਵਿਚਕਾਰ ਕੋਈ Python expression ਲਿਖ ਸਕਦੇ ਹੋ ਜੋ " +"ਚਲਾਂ ਜਾਂ literal ਮੁੱਲਾਂ ਦਾ ਹਵਾਲਾ ਦੇ ਸਕਦਾ ਹੈ।" msgid "" ">>> year = 2016\n" @@ -61,6 +75,10 @@ msgid "" ">>> f'Results of the {year} {event}'\n" "'Results of the 2016 Referendum'" msgstr "" +">>> year = 2016\n" +">>> event = 'Referendum'\n" +">>> f'Results of the {year} {event}'\n" +"'Results of the 2016 Referendum'" msgid "" "The :meth:`str.format` method of strings requires more manual effort. " @@ -69,6 +87,10 @@ msgid "" "need to provide the information to be formatted. In the following code block " "there are two examples of how to format variables:" msgstr "" +"ਸਟ੍ਰਿੰਗਾਂ ਦੀ :meth:`str.format` ਵਿਧੀ ਲਈ ਵਧੇਰੇ ਹੱਥੋਂ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਮਿਹਨਤ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। " +"ਤੁਸੀਂ ਹਾਲੇ ਵੀ ``{`` ਅਤੇ ``}`` ਦੀ ਵਰਤੋਂ ਇਹ ਦਰਸਾਉਣ ਲਈ ਕਰੋਗੇ ਕਿ ਕਿਸ ਥਾਂ ਚਲ ਨੂੰ ਬਦਲਿਆ ਜਾਵੇਗਾ " +"ਅਤੇ ਵਿਸਥਾਰਪੂਰਵਕ ਫਾਰਮੈਟਿੰਗ ਨਿਰਦੇਸ਼ ਵੀ ਦੇ ਸਕਦੇ ਹੋ, ਪਰ ਤੁਹਾਨੂੰ ਫਾਰਮੈਟ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਜਾਣਕਾਰੀ " +"ਵੀ ਪ੍ਰਦਾਨ ਕਰਨੀ ਪਵੇਗੀ। ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਬਲਾਕ ਵਿੱਚ ਚਲਾਂ ਨੂੰ ਫਾਰਮੈਟ ਕਰਨ ਦੇ ਦੋ ਉਦਾਹਰਨ ਹਨ:" msgid "" ">>> yes_votes = 42_572_654\n" @@ -77,13 +99,22 @@ msgid "" ">>> '{:-9} YES votes {:2.2%}'.format(yes_votes, percentage)\n" "' 42572654 YES votes 49.67%'" msgstr "" +">>> yes_votes = 42_572_654\n" +">>> total_votes = 85_705_149\n" +">>> percentage = yes_votes / total_votes\n" +">>> '{:-9} YES votes {:2.2%}'.format(yes_votes, percentage)\n" +"' 42572654 YES votes 49.67%'" msgid "" "Notice how the ``yes_votes`` are padded with spaces and a negative sign only " "for negative numbers. The example also prints ``percentage`` multiplied by " -"100, with 2 decimal places and followed by a percent sign (see :ref:" -"`formatspec` for details)." +"100, with 2 decimal places and followed by a percent sign " +"(see :ref:`formatspec` for details)." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ``yes_votes`` ਨੂੰ ਖਾਲੀ ਥਾਵਾਂ ਨਾਲ ਭਰਿਆ ਗਿਆ ਹੈ ਅਤੇ ਰਿਣਾਤਮਕ ਸੰਖਿਆਵਾਂ ਲਈ ਹੀ " +"ਰਿਣ ਚਿੰਨ੍ਹ ਦਿਖਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਉਦਾਹਰਨ ``percentage`` ਨੂੰ 100 ਨਾਲ ਗੁਣਾ ਕਰਕੇ, ਦਸ਼ਮਲਵ ਤੋਂ " +"ਬਾਅਦ 2 ਅੰਕਾਂ ਸਮੇਤ ਅਤੇ ਪ੍ਰਤੀਸ਼ਤ ਚਿੰਨ੍ਹ ਨਾਲ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦੀ ਹੈ (:ref:`formatspec` ਵੇਰਵਿਆਂ ਲਈ " +"ਵੇਖੋ)।" msgid "" "Finally, you can do all the string handling yourself by using string slicing " @@ -91,26 +122,39 @@ msgid "" "string type has some methods that perform useful operations for padding " "strings to a given column width." msgstr "" +"ਅੰਤ ਵਿੱਚ, ਤੁਸੀਂ ਸਟ੍ਰਿੰਗ slicing ਅਤੇ concatenation ਕਾਰਵਾਈਆਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੀ ਕਲਪਨਾ " +"ਅਨੁਸਾਰ ਕੋਈ ਵੀ ਲੇਆਉਟ ਤਿਆਰ ਕਰ ਸਕਦੇ ਹੋ। ਸਟ੍ਰਿੰਗ ਕਿਸਮ ਵਿੱਚ ਕੁਝ ਅਜਿਹੀਆਂ ਵਿਧੀਆਂ ਹਨ ਜੋ ਸਟ੍ਰਿੰਗਾਂ ਨੂੰ " +"ਨਿਰਧਾਰਿਤ ਕਾਲਮ ਚੌੜਾਈ ਤੱਕ ਭਰਨ ਲਈ ਉਪਯੋਗੀ ਕਾਰਵਾਈਆਂ ਕਰਦੀਆਂ ਹਨ।" msgid "" "When you don't need fancy output but just want a quick display of some " "variables for debugging purposes, you can convert any value to a string with " "the :func:`repr` or :func:`str` functions." msgstr "" +"ਜਦੋਂ ਤੁਹਾਨੂੰ ਉੱਨਤ ਆਉਟਪੁੱਟ ਦੀ ਲੋੜ ਨਾ ਹੋਵੇ ਅਤੇ ਤੁਸੀਂ ਕੇਵਲ ਡੀਬਗਿੰਗ ਲਈ ਕੁਝ ਚਲਾਂ ਨੂੰ ਤੁਰੰਤ ਦੇਖਣਾ ਚਾਹੁੰਦੇ ਹੋ, " +"ਤਾਂ ਤੁਸੀਂ :func:`repr` ਜਾਂ :func:`str` ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਿਸੇ ਵੀ ਮੁੱਲ ਨੂੰ ਸਟ੍ਰਿੰਗ ਵਿੱਚ " +"ਬਦਲ ਸਕਦੇ ਹੋ।" msgid "" "The :func:`str` function is meant to return representations of values which " "are fairly human-readable, while :func:`repr` is meant to generate " -"representations which can be read by the interpreter (or will force a :exc:" -"`SyntaxError` if there is no equivalent syntax). For objects which don't " -"have a particular representation for human consumption, :func:`str` will " -"return the same value as :func:`repr`. Many values, such as numbers or " +"representations which can be read by the interpreter (or will force " +"a :exc:`SyntaxError` if there is no equivalent syntax). For objects which " +"don't have a particular representation for human consumption, :func:`str` " +"will return the same value as :func:`repr`. Many values, such as numbers or " "structures like lists and dictionaries, have the same representation using " "either function. Strings, in particular, have two distinct representations." msgstr "" +":func:`str` ਫੰਕਸ਼ਨ ਦਾ ਉਦੇਸ਼ ਉਹ ਰੂਪ ਵਾਪਸ ਕਰਨਾ ਹੈ ਜੋ ਮਨੁੱਖਾਂ ਲਈ ਆਸਾਨੀ ਨਾਲ ਪੜ੍ਹਨਯੋਗ ਹੋਣ, " +"ਜਦਕਿ :func:`repr` ਦਾ ਉਦੇਸ਼ ਅਜਿਹੇ representation ਤਿਆਰ ਕਰਨਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ interpreter " +"ਦੁਆਰਾ ਪੜ੍ਹਿਆ ਜਾ ਸਕੇ (ਜਾਂ ਜੇ ਉਸਦਾ ਸਮਕੱਖ syntax ਮੌਜੂਦ ਨਾ ਹੋਵੇ ਤਾਂ :exc:`SyntaxError` ਪੈਦਾ " +"ਹੋਵੇ)। ਉਹਨਾਂ ਆਬਜੈਕਟਾਂ ਲਈ ਜਿਨ੍ਹਾਂ ਦੀ ਮਨੁੱਖੀ ਵਰਤੋਂ ਲਈ ਕੋਈ ਖਾਸ representation ਨਹੀਂ " +"ਹੁੰਦੀ, :func:`str` ਉਹੀ ਮੁੱਲ ਵਾਪਸ ਕਰੇਗਾ ਜੋ :func:`repr` ਵਾਪਸ ਕਰਦਾ ਹੈ। ਕਈ ਮੁੱਲਾਂ, ਜਿਵੇਂ " +"ਸੰਖਿਆਵਾਂ ਜਾਂ lists ਅਤੇ dictionaries ਵਰਗੀਆਂ ਬਣਤਰਾਂ ਲਈ, ਦੋਵੇਂ ਫੰਕਸ਼ਨ ਇੱਕੋ representation " +"ਦਿੰਦੇ ਹਨ। ਖਾਸ ਤੌਰ 'ਤੇ, strings ਦੀਆਂ ਦੋ ਵੱਖ-ਵੱਖ representations ਹੁੰਦੀਆਂ ਹਨ।" msgid "Some examples::" -msgstr "" +msgstr "ਕੁਝ ਉਦਾਹਰਨਾਂ::" msgid "" ">>> s = 'Hello, world.'\n" @@ -134,6 +178,26 @@ msgid "" ">>> repr((x, y, ('spam', 'eggs')))\n" "\"(32.5, 40000, ('spam', 'eggs'))\"" msgstr "" +">>> s = 'Hello, world.'\n" +">>> str(s)\n" +"'Hello, world.'\n" +">>> repr(s)\n" +"\"'Hello, world.'\"\n" +">>> str(1/7)\n" +"'0.14285714285714285'\n" +">>> x = 10 * 3.25\n" +">>> y = 200 * 200\n" +">>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...'\n" +">>> print(s)\n" +"The value of x is 32.5, and y is 40000...\n" +">>> # The repr() of a string adds string quotes and backslashes:\n" +">>> hello = 'hello, world\\n'\n" +">>> hellos = repr(hello)\n" +">>> print(hellos)\n" +"'hello, world\\n'\n" +">>> # The argument to repr() may be any Python object:\n" +">>> repr((x, y, ('spam', 'eggs')))\n" +"\"(32.5, 40000, ('spam', 'eggs'))\"" msgid "" "The :mod:`string` module contains support for a simple templating approach " @@ -142,9 +206,14 @@ msgid "" "``$x`` and replacing them with values from a dictionary. This syntax is easy " "to use, although it offers much less control for formatting." msgstr "" +":mod:`string` ਮੌਡਿਊਲ :class:`string.Template` ਰਾਹੀਂ regular expressions ਅਧਾਰਿਤ " +"ਇੱਕ ਸਧਾਰਣ template ਪਹੁੰਚ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਇਹ ਸਟ੍ਰਿੰਗਾਂ ਵਿੱਚ ਮੁੱਲ ਸ਼ਾਮਲ ਕਰਨ ਦਾ ਇੱਕ ਹੋਰ " +"ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ``$x`` ਵਰਗੇ placeholder ਵਰਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ " +"dictionary ਵਿੱਚ ਮੌਜੂਦ ਮੁੱਲਾਂ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ syntax ਵਰਤਣ ਵਿੱਚ ਆਸਾਨ ਹੈ, ਹਾਲਾਂਕਿ " +"ਇਹ ਫਾਰਮੈਟਿੰਗ ਉੱਤੇ ਕਾਫ਼ੀ ਘੱਟ ਨਿਯੰਤਰਣ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" -msgid "Formatted String Literals" -msgstr "" +msgid "Formatted string literals" +msgstr "ਫਾਰਮੈਟ ਕੀਤੇ ਸਟਰਿੰਗ ਲਿਟਰਲ" msgid "" ":ref:`Formatted string literals ` (also called f-strings for " @@ -152,23 +221,35 @@ msgid "" "prefixing the string with ``f`` or ``F`` and writing expressions as " "``{expression}``." msgstr "" +":ref:`Formatted string literals ` (ਜਿਨ੍ਹਾਂ ਨੂੰ ਸੰਖੇਪ ਵਿੱਚ f-strings ਵੀ " +"ਕਿਹਾ ਜਾਂਦਾ ਹੈ) ਤੁਹਾਨੂੰ ਸਟ੍ਰਿੰਗ ਦੇ ਅੰਦਰ Python expressions ਦੇ ਮੁੱਲ ਸ਼ਾਮਲ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ " +"ਹਨ। ਇਸ ਲਈ ਸਟ੍ਰਿੰਗ ਦੇ ਅੱਗੇ ``f`` ਜਾਂ ``F`` ਲਗਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ expressions ਨੂੰ " +"``{expression}`` ਦੇ ਰੂਪ ਵਿੱਚ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" "An optional format specifier can follow the expression. This allows greater " "control over how the value is formatted. The following example rounds pi to " "three places after the decimal::" msgstr "" +"Expression ਤੋਂ ਬਾਅਦ ਇੱਕ ਵਿਕਲਪਿਕ format specifier ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਮੁੱਲ ਨੂੰ ਫਾਰਮੈਟ " +"ਕਰਨ ਦੇ ਤਰੀਕੇ ਉੱਤੇ ਵਧੇਰੇ ਨਿਯੰਤਰਣ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ pi ਨੂੰ ਦਸ਼ਮਲਵ ਤੋਂ ਬਾਅਦ ਤਿੰਨ " +"ਅੰਕਾਂ ਤੱਕ ਗੋਲ ਕਰਦੀ ਹੈ::" msgid "" ">>> import math\n" ">>> print(f'The value of pi is approximately {math.pi:.3f}.')\n" "The value of pi is approximately 3.142." msgstr "" +">>> import math\n" +">>> print(f'The value of pi is approximately {math.pi:.3f}.')\n" +"The value of pi is approximately 3.142." msgid "" "Passing an integer after the ``':'`` will cause that field to be a minimum " "number of characters wide. This is useful for making columns line up. ::" msgstr "" +"``':'`` ਤੋਂ ਬਾਅਦ ਇੱਕ ਪੂਰਨ ਅੰਕ ਦੇਣ ਨਾਲ ਉਸ field ਦੀ ਘੱਟੋ-ਘੱਟ ਚੌੜਾਈ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਅਨੁਸਾਰ " +"ਨਿਰਧਾਰਿਤ ਹੋ ਜਾਂਦੀ ਹੈ। ਇਹ ਕਾਲਮਾਂ ਨੂੰ ਇੱਕਸਾਰ ਲਾਈਨ ਵਿੱਚ ਰੱਖਣ ਲਈ ਉਪਯੋਗੀ ਹੈ। ::" msgid "" ">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}\n" @@ -179,12 +260,22 @@ msgid "" "Jack ==> 4098\n" "Dcab ==> 7678" msgstr "" +">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}\n" +">>> for name, phone in table.items():\n" +"... print(f'{name:10} ==> {phone:10d}')\n" +"...\n" +"Sjoerd ==> 4127\n" +"Jack ==> 4098\n" +"Dcab ==> 7678" msgid "" "Other modifiers can be used to convert the value before it is formatted. ``'!" "a'`` applies :func:`ascii`, ``'!s'`` applies :func:`str`, and ``'!r'`` " "applies :func:`repr`::" msgstr "" +"ਮੁੱਲ ਨੂੰ ਫਾਰਮੈਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਉਸ ਨੂੰ ਬਦਲਣ ਲਈ ਹੋਰ modifiers ਵੀ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। ``'!" +"a'`` :func:`ascii` ਲਾਗੂ ਕਰਦਾ ਹੈ, ``'!s'`` :func:`str` ਲਾਗੂ ਕਰਦਾ ਹੈ ਅਤੇ ``'!" +"r'`` :func:`repr` ਲਾਗੂ ਕਰਦਾ ਹੈ::" msgid "" ">>> animals = 'eels'\n" @@ -193,36 +284,52 @@ msgid "" ">>> print(f'My hovercraft is full of {animals!r}.')\n" "My hovercraft is full of 'eels'." msgstr "" +">>> animals = 'eels'\n" +">>> print(f'My hovercraft is full of {animals}.')\n" +"My hovercraft is full of eels.\n" +">>> print(f'My hovercraft is full of {animals!r}.')\n" +"My hovercraft is full of 'eels'." msgid "" "The ``=`` specifier can be used to expand an expression to the text of the " "expression, an equal sign, then the representation of the evaluated " "expression:" msgstr "" +"``=`` specifier ਦੀ ਵਰਤੋਂ ਕਿਸੇ expression ਨੂੰ ਉਸਦੇ ਟੈਕਸਟ, ਇੱਕ ਬਰਾਬਰ ਚਿੰਨ੍ਹ ਅਤੇ ਫਿਰ " +"ਮੁਲਾਂਕਿਤ expression ਦੀ representation ਵਿੱਚ ਵਿਸਤਾਰਿਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:" msgid "" "See :ref:`self-documenting expressions ` for more " "information on the ``=`` specifier. For a reference on these format " "specifications, see the reference guide for the :ref:`formatspec`." msgstr "" +"``=`` specifier ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`self-documenting expressions " +"` ਵੇਖੋ। ਇਨ੍ਹਾਂ format specifications ਦੇ ਹਵਾਲੇ " +"ਲਈ :ref:`formatspec` ਦੀ reference guide ਵੇਖੋ।" -msgid "The String format() Method" -msgstr "" +msgid "The string format() method" +msgstr "ਸਟ੍ਰਿੰਗ format() ਵਿਧੀ" msgid "Basic usage of the :meth:`str.format` method looks like this::" -msgstr "" +msgstr ":meth:`str.format` ਵਿਧੀ ਦੀ ਬੁਨਿਆਦੀ ਵਰਤੋਂ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ::" msgid "" ">>> print('We are the {} who say \"{}!\"'.format('knights', 'Ni'))\n" "We are the knights who say \"Ni!\"" msgstr "" +">>> print('We are the {} who say \"{}!\"'.format('knights', 'Ni'))\n" +"We are the knights who say \"Ni!\"" msgid "" "The brackets and characters within them (called format fields) are replaced " "with the objects passed into the :meth:`str.format` method. A number in the " -"brackets can be used to refer to the position of the object passed into the :" -"meth:`str.format` method. ::" +"brackets can be used to refer to the position of the object passed into " +"the :meth:`str.format` method. ::" msgstr "" +"ਉਨ੍ਹਾਂ ਬ੍ਰੈਕਟਾਂ ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਅੰਦਰਲੇ ਅੱਖਰਾਂ (ਜਿਨ੍ਹਾਂ ਨੂੰ format fields ਕਿਹਾ ਜਾਂਦਾ ਹੈ) " +"ਨੂੰ :meth:`str.format` ਮੈਥਡ ਵਿੱਚ ਪਾਸ ਕੀਤੇ ਗਏ ਆਬਜੈਕਟਾਂ ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਬ੍ਰੈਕਟਾਂ ਦੇ " +"ਅੰਦਰ ਦਿੱਤਾ ਗਿਆ ਇੱਕ ਨੰਬਰ :meth:`str.format` ਮੈਥਡ ਵਿੱਚ ਪਾਸ ਕੀਤੇ ਗਏ ਆਬਜੈਕਟ ਦੀ ਸਥਿਤੀ ਨੂੰ " +"ਦਰਸਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> print('{0} and {1}'.format('spam', 'eggs'))\n" @@ -230,26 +337,38 @@ msgid "" ">>> print('{1} and {0}'.format('spam', 'eggs'))\n" "eggs and spam" msgstr "" +">>> print('{0} and {1}'.format('spam', 'eggs'))\n" +"spam and eggs\n" +">>> print('{1} and {0}'.format('spam', 'eggs'))\n" +"eggs and spam" msgid "" "If keyword arguments are used in the :meth:`str.format` method, their values " "are referred to by using the name of the argument. ::" msgstr "" +"ਜੇ :meth:`str.format` ਵਿਧੀ ਵਿੱਚ keyword arguments ਵਰਤੇ ਜਾਣ, ਤਾਂ ਉਨ੍ਹਾਂ ਦੇ ਮੁੱਲਾਂ ਦਾ " +"ਹਵਾਲਾ argument ਦੇ ਨਾਮ ਰਾਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ::" msgid "" ">>> print('This {food} is {adjective}.'.format(\n" "... food='spam', adjective='absolutely horrible'))\n" "This spam is absolutely horrible." msgstr "" +">>> print('This {food} is {adjective}.'.format(\n" +"... food='spam', adjective='absolutely horrible'))\n" +"This spam is absolutely horrible." msgid "Positional and keyword arguments can be arbitrarily combined::" -msgstr "" +msgstr "Positional ਅਤੇ keyword arguments ਨੂੰ ਮਨਮਰਜ਼ੀ ਅਨੁਸਾਰ ਇਕੱਠੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> print('The story of {0}, {1}, and {other}.'.format('Bill', 'Manfred',\n" "... other='Georg'))\n" "The story of Bill, Manfred, and Georg." msgstr "" +">>> print('The story of {0}, {1}, and {other}.'.format('Bill', 'Manfred',\n" +"... other='Georg'))\n" +"The story of Bill, Manfred, and Georg." msgid "" "If you have a really long format string that you don't want to split up, it " @@ -257,6 +376,10 @@ msgid "" "instead of by position. This can be done by simply passing the dict and " "using square brackets ``'[]'`` to access the keys. ::" msgstr "" +"ਜੇ ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਬਹੁਤ ਲੰਬੀ format string ਹੈ ਜਿਸਨੂੰ ਤੁਸੀਂ ਹਿੱਸਿਆਂ ਵਿੱਚ ਵੰਡਣਾ ਨਹੀਂ ਚਾਹੁੰਦੇ, ਤਾਂ " +"ਸਥਿਤੀ ਦੀ ਬਜਾਏ ਨਾਮ ਰਾਹੀਂ format ਕੀਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ variables ਨੂੰ ਸੰਬੋਧਨ ਕਰਨਾ ਹੋਰ " +"ਸੁਵਿਧਾਜਨਕ ਹੁੰਦਾ ਹੈ। ਇਹ ਕੰਮ dict ਨੂੰ ਸਿੱਧਾ ਪਾਸ ਕਰਕੇ ਅਤੇ keys ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ square " +"brackets ``'[]'`` ਵਰਤ ਕੇ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}\n" @@ -264,23 +387,36 @@ msgid "" "... 'Dcab: {0[Dcab]:d}'.format(table))\n" "Jack: 4098; Sjoerd: 4127; Dcab: 8637678" msgstr "" +">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}\n" +">>> print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; '\n" +"... 'Dcab: {0[Dcab]:d}'.format(table))\n" +"Jack: 4098; Sjoerd: 4127; Dcab: 8637678" msgid "" "This could also be done by passing the ``table`` dictionary as keyword " "arguments with the ``**`` notation. ::" msgstr "" +"ਇਹ ਕੰਮ ``table`` dictionary ਨੂੰ ``**`` notation ਨਾਲ keyword arguments ਵਜੋਂ ਪਾਸ " +"ਕਰਕੇ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ::" msgid "" ">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}\n" -">>> print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: {Dcab:d}'." -"format(**table))\n" +">>> print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: " +"{Dcab:d}'.format(**table))\n" "Jack: 4098; Sjoerd: 4127; Dcab: 8637678" msgstr "" +">>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}\n" +">>> print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: " +"{Dcab:d}'.format(**table))\n" +"Jack: 4098; Sjoerd: 4127; Dcab: 8637678" msgid "" -"This is particularly useful in combination with the built-in function :func:" -"`vars`, which returns a dictionary containing all local variables::" +"This is particularly useful in combination with the built-in " +"function :func:`vars`, which returns a dictionary containing all local " +"variables::" msgstr "" +"ਇਹ built-in function :func:`vars` ਨਾਲ ਮਿਲਾ ਕੇ ਖਾਸ ਤੌਰ 'ਤੇ ਲਾਭਦਾਇਕ ਹੈ, ਜੋ ਸਾਰੇ " +"local variables ਵਾਲੀ dictionary ਵਾਪਸ ਕਰਦਾ ਹੈ::" msgid "" ">>> table = {k: str(v) for k, v in vars().items()}\n" @@ -288,11 +424,17 @@ msgid "" ">>> print(message.format(**table))\n" "__name__: __main__; __doc__: None; __package__: None; __loader__: ..." msgstr "" +">>> table = {k: str(v) for k, v in vars().items()}\n" +">>> message = \" \".join([f'{k}: ' + '{' + k +'};' for k in table.keys()])\n" +">>> print(message.format(**table))\n" +"__name__: __main__; __doc__: None; __package__: None; __loader__: ..." msgid "" "As an example, the following lines produce a tidily aligned set of columns " "giving integers and their squares and cubes::" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਲਾਈਨਾਂ ਪੂਰਨ ਅੰਕਾਂ ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਵਰਗਾਂ ਅਤੇ ਘਣਾਂ ਨੂੰ ਸਾਫ਼-ਸੁਥਰੇ ਢੰਗ ਨਾਲ " +"ਕਾਲਮਾਂ ਵਿੱਚ ਦਰਸਾਉਂਦੀਆਂ ਹਨ::" msgid "" ">>> for x in range(1, 11):\n" @@ -309,17 +451,32 @@ msgid "" " 9 81 729\n" "10 100 1000" msgstr "" +">>> for x in range(1, 11):\n" +"... print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x))\n" +"...\n" +" 1 1 1\n" +" 2 4 8\n" +" 3 9 27\n" +" 4 16 64\n" +" 5 25 125\n" +" 6 36 216\n" +" 7 49 343\n" +" 8 64 512\n" +" 9 81 729\n" +"10 100 1000" msgid "" -"For a complete overview of string formatting with :meth:`str.format`, see :" -"ref:`formatstrings`." +"For a complete overview of string formatting with :meth:`str.format`, " +"see :ref:`formatstrings`." msgstr "" +":meth:`str.format` ਨਾਲ ਸਟ੍ਰਿੰਗ ਫਾਰਮੈਟਿੰਗ ਦੀ ਪੂਰੀ ਜਾਣਕਾਰੀ ਲਈ :ref:`formatstrings` " +"ਵੇਖੋ।" -msgid "Manual String Formatting" -msgstr "" +msgid "Manual string formatting" +msgstr "ਹੱਥੋਂ ਸਟ੍ਰਿੰਗ ਫਾਰਮੈਟਿੰਗ" msgid "Here's the same table of squares and cubes, formatted manually::" -msgstr "" +msgstr "ਇੱਥੇ ਵਰਗਾਂ ਅਤੇ ਘਣਾਂ ਦੀ ਉਹੀ ਸਾਰਣੀ ਹੈ, ਜਿਸ ਨੂੰ ਹੱਥੋਂ ਫਾਰਮੈਟ ਕੀਤਾ ਗਿਆ ਹੈ::" msgid "" ">>> for x in range(1, 11):\n" @@ -338,11 +495,28 @@ msgid "" " 9 81 729\n" "10 100 1000" msgstr "" +">>> for x in range(1, 11):\n" +"... print(repr(x).rjust(2), repr(x*x).rjust(3), end=' ')\n" +"... # Note use of 'end' on previous line\n" +"... print(repr(x*x*x).rjust(4))\n" +"...\n" +" 1 1 1\n" +" 2 4 8\n" +" 3 9 27\n" +" 4 16 64\n" +" 5 25 125\n" +" 6 36 216\n" +" 7 49 343\n" +" 8 64 512\n" +" 9 81 729\n" +"10 100 1000" msgid "" -"(Note that the one space between each column was added by the way :func:" -"`print` works: it always adds spaces between its arguments.)" +"(Note that the one space between each column was added by the " +"way :func:`print` works: it always adds spaces between its arguments.)" msgstr "" +"(ਧਿਆਨ ਦਿਓ ਕਿ ਹਰ ਕਾਲਮ ਦੇ ਵਿਚਕਾਰ ਦੀ ਇੱਕ ਖਾਲੀ ਥਾਂ :func:`print` ਦੇ ਕੰਮ ਕਰਨ ਦੇ ਤਰੀਕੇ " +"ਕਾਰਨ ਜੋੜੀ ਗਈ ਹੈ: ਇਹ ਹਮੇਸ਼ਾਂ ਆਪਣੇ arguments ਦੇ ਵਿਚਕਾਰ ਖਾਲੀ ਥਾਵਾਂ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ।)" msgid "" "The :meth:`str.rjust` method of string objects right-justifies a string in a " @@ -354,11 +528,20 @@ msgid "" "would be lying about a value. (If you really want truncation you can always " "add a slice operation, as in ``x.ljust(n)[:n]``.)" msgstr "" +"ਸਟ੍ਰਿੰਗ ਆਬਜੈਕਟਾਂ ਦੀ :meth:`str.rjust` ਵਿਧੀ ਖੱਬੇ ਪਾਸੇ ਖਾਲੀ ਥਾਵਾਂ ਜੋੜ ਕੇ ਸਟ੍ਰਿੰਗ ਨੂੰ " +"ਨਿਰਧਾਰਿਤ ਚੌੜਾਈ ਵਾਲੇ field ਵਿੱਚ ਸੱਜੇ ਪਾਸੇ ਸੰਰਿਖਤ ਕਰਦੀ ਹੈ। ਇਸ ਵਰਗੀਆਂ ਹੋਰ " +"ਵਿਧੀਆਂ :meth:`str.ljust` ਅਤੇ :meth:`str.center` ਵੀ ਹਨ। ਇਹ ਵਿਧੀਆਂ ਕੁਝ ਵੀ ਨਹੀਂ " +"ਲਿਖਦੀਆਂ, ਸਗੋਂ ਇੱਕ ਨਵੀਂ ਸਟ੍ਰਿੰਗ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ। ਜੇ input ਸਟ੍ਰਿੰਗ ਬਹੁਤ ਲੰਬੀ ਹੋਵੇ ਤਾਂ ਇਹ ਉਸ ਨੂੰ " +"ਕੱਟਦੀਆਂ ਨਹੀਂ, ਸਗੋਂ ਬਿਨਾਂ ਬਦਲਾਅ ਦੇ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ; ਇਸ ਨਾਲ ਤੁਹਾਡਾ ਕਾਲਮ ਲੇਆਉਟ ਖਰਾਬ ਹੋ ਸਕਦਾ " +"ਹੈ, ਪਰ ਇਹ ਕਿਸੇ ਮੁੱਲ ਨੂੰ ਗਲਤ ਤਰੀਕੇ ਨਾਲ ਦਰਸਾਉਣ ਨਾਲੋਂ ਬਿਹਤਰ ਹੈ। (ਜੇ ਤੁਸੀਂ ਵਾਸਤਵ ਵਿੱਚ " +"truncation ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ``x.ljust(n)[:n]`` ਵਾਂਗ slice operation ਵਰਤ ਸਕਦੇ ਹੋ।)" msgid "" "There is another method, :meth:`str.zfill`, which pads a numeric string on " "the left with zeros. It understands about plus and minus signs::" msgstr "" +"ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਹੈ, :meth:`str.zfill`, ਜੋ ਇੱਕ ਸੰਖਿਆਤਮਕ ਸਟਰਿੰਗ ਨੂੰ ਖੱਬੇ ਪਾਸੇ ਤੋਂ ਸ਼ੂਨਿਆਂ ਨਾਲ ਪੈਡ " +"ਕਰਦਾ ਹੈ। ਇਹ ਪਲੱਸ ਅਤੇ ਮਾਈਨਸ ਚਿੰਨ੍ਹਾਂ ਨੂੰ ਸਮਝਦਾ ਹੈ::" msgid "" ">>> '12'.zfill(5)\n" @@ -368,9 +551,15 @@ msgid "" ">>> '3.14159265359'.zfill(5)\n" "'3.14159265359'" msgstr "" +">>> '12'.zfill(5)\n" +"'00012'\n" +">>> '-3.14'.zfill(7)\n" +"'-003.14'\n" +">>> '3.14159265359'.zfill(5)\n" +"'3.14159265359'" msgid "Old string formatting" -msgstr "" +msgstr "ਪੁਰਾਣੀ ਸਟ੍ਰਿੰਗ ਫਾਰਮੈਟਿੰਗ" msgid "" "The % operator (modulo) can also be used for string formatting. Given " @@ -379,28 +568,36 @@ msgid "" "*values*. This operation is commonly known as string interpolation. For " "example::" msgstr "" +"ਸਟ੍ਰਿੰਗ ਫਾਰਮੈਟਿੰਗ ਲਈ ``%`` operator (modulo) ਦੀ ਵਰਤੋਂ ਵੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ``format " +"% values`` ਵਿੱਚ (ਜਿੱਥੇ *format* ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ), *format* ਵਿੱਚ ਮੌਜੂਦ ``%`` conversion " +"specifications ਨੂੰ *values* ਦੇ ਸਿਫ਼ਰ ਜਾਂ ਵੱਧ ਤੱਤਾਂ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਕਾਰਵਾਈ ਨੂੰ ਆਮ " +"ਤੌਰ 'ਤੇ string interpolation ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> import math\n" ">>> print('The value of pi is approximately %5.3f.' % math.pi)\n" "The value of pi is approximately 3.142." msgstr "" +">>> import math\n" +">>> print('The value of pi is approximately %5.3f.' % math.pi)\n" +"The value of pi is approximately 3.142." msgid "" "More information can be found in the :ref:`old-string-formatting` section." -msgstr "" +msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`old-string-formatting` ਭਾਗ ਵੇਖੋ।" -msgid "Reading and Writing Files" -msgstr "" +msgid "Reading and writing files" +msgstr "ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹਨਾ ਅਤੇ ਲਿਖਣਾ" msgid "" ":func:`open` returns a :term:`file object`, and is most commonly used with " -"two positional arguments and one keyword argument: ``open(filename, mode, " -"encoding=None)``" +"two positional arguments: ``open(filename, mode)``" msgstr "" +":func:`open` ਇੱਕ :term:`file object` ਵਾਪਸ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਦੀ ਸਭ ਤੋਂ ਆਮ ਵਰਤੋਂ ਦੋ " +"ਸਥਿਤੀਗਤ ਆਰਗੂਮੈਂਟਾਂ ਨਾਲ ਕੀਤੀ ਜਾਂਦੀ ਹੈ: ``open(filename, mode)``" -msgid ">>> f = open('workfile', 'w', encoding=\"utf-8\")" -msgstr "" +msgid ">>> f = open('workfile', 'w')" +msgstr ">>> f = open('workfile', 'w')" msgid "" "The first argument is a string containing the filename. The second argument " @@ -412,62 +609,99 @@ msgid "" "reading and writing. The *mode* argument is optional; ``'r'`` will be " "assumed if it's omitted." msgstr "" +"ਪਹਿਲਾ argument ਇੱਕ ਸਟ੍ਰਿੰਗ ਹੈ ਜਿਸ ਵਿੱਚ ਫਾਈਲ ਦਾ ਨਾਮ ਹੁੰਦਾ ਹੈ। ਦੂਜਾ argument ਇੱਕ ਹੋਰ " +"ਸਟ੍ਰਿੰਗ ਹੈ ਜਿਸ ਵਿੱਚ ਕੁਝ ਅੱਖਰ ਹੁੰਦੇ ਹਨ ਜੋ ਇਹ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਫਾਈਲ ਕਿਸ ਤਰੀਕੇ ਨਾਲ ਵਰਤੀ ਜਾਵੇਗੀ। " +"*mode* ਇਹ ਹੋ ਸਕਦਾ ਹੈ: ``'r'`` ਜਦੋਂ ਫਾਈਲ ਸਿਰਫ਼ ਪੜ੍ਹਨ ਲਈ ਹੋਵੇ, ``'w'`` ਸਿਰਫ਼ ਲਿਖਣ ਲਈ " +"(ਉਸੇ ਨਾਮ ਦੀ ਮੌਜੂਦਾ ਫਾਈਲ ਮਿਟਾ ਦਿੱਤੀ ਜਾਵੇਗੀ), ਅਤੇ ``'a'`` ਫਾਈਲ ਨੂੰ ਅੰਤ ਵਿੱਚ ਜੋੜਨ ਲਈ ਖੋਲ੍ਹਦਾ " +"ਹੈ; ਫਾਈਲ ਵਿੱਚ ਲਿਖਿਆ ਕੋਈ ਵੀ ਡਾਟਾ ਆਪਣੇ ਆਪ ਅੰਤ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋ ਜਾਂਦਾ ਹੈ। ``'r+'`` ਫਾਈਲ ਨੂੰ " +"ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਦੋਹਾਂ ਲਈ ਖੋਲ੍ਹਦਾ ਹੈ। *mode* argument ਵਿਕਲਪਿਕ ਹੈ; ਜੇ ਇਹ ਛੱਡ ਦਿੱਤਾ ਜਾਵੇ ਤਾਂ " +"``'r'`` ਮੰਨਿਆ ਜਾਵੇਗਾ।" msgid "" "Normally, files are opened in :dfn:`text mode`, that means, you read and " "write strings from and to the file, which are encoded in a specific " -"*encoding*. If *encoding* is not specified, the default is platform " -"dependent (see :func:`open`). Because UTF-8 is the modern de-facto standard, " -"``encoding=\"utf-8\"`` is recommended unless you know that you need to use a " -"different encoding. Appending a ``'b'`` to the mode opens the file in :dfn:" -"`binary mode`. Binary mode data is read and written as :class:`bytes` " -"objects. You can not specify *encoding* when opening file in binary mode." +"*encoding*. If *encoding* is not specified, the default is UTF-8 " +"(see :func:`open`). Appending a ``'b'`` to the mode opens the file " +"in :dfn:`binary mode`. Binary mode data is read and written " +"as :class:`bytes` objects. You can not specify *encoding* when opening file " +"in binary mode." msgstr "" +"ਆਮ ਤੌਰ 'ਤੇ, ਫਾਈਲਾਂ ਨੂੰ :dfn:`text mode` ਵਿੱਚ ਖੋਲ੍ਹਿਆ ਜਾਂਦਾ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਸੀਂ " +"ਫਾਈਲ ਵਿੱਚ ਸਟ੍ਰਿੰਗਾਂ ਪੜ੍ਹਦੇ ਅਤੇ ਲਿਖਦੇ ਹੋ, ਜੋ ਇੱਕ ਨਿਰਧਾਰਤ *encoding* ਵਿੱਚ ਏਨਕੋਡ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ " +"ਹਨ। ਜੇ *encoding* ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ, ਤਾਂ ਡਿਫੌਲਟ UTF-8 ਹੁੰਦੀ ਹੈ (:func:`open` " +"ਵੇਖੋ)। ਮੋਡ ਵਿੱਚ ``'b'`` ਜੋੜਨ ਨਾਲ ਫਾਈਲ :dfn:`binary mode` ਵਿੱਚ ਖੁੱਲ੍ਹਦੀ ਹੈ। ਬਾਈਨਰੀ ਮੋਡ " +"ਦਾ ਡਾਟਾ :class:`bytes` ਆਬਜੈਕਟਾਂ ਵਜੋਂ ਪੜ੍ਹਿਆ ਅਤੇ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ। ਬਾਈਨਰੀ ਮੋਡ ਵਿੱਚ ਫਾਈਲ " +"ਖੋਲ੍ਹਦੇ ਸਮੇਂ ਤੁਸੀਂ *encoding* ਨਿਰਧਾਰਤ ਨਹੀਂ ਕਰ ਸਕਦੇ।" msgid "" "In text mode, the default when reading is to convert platform-specific line " "endings (``\\n`` on Unix, ``\\r\\n`` on Windows) to just ``\\n``. When " "writing in text mode, the default is to convert occurrences of ``\\n`` back " "to platform-specific line endings. This behind-the-scenes modification to " -"file data is fine for text files, but will corrupt binary data like that in :" -"file:`JPEG` or :file:`EXE` files. Be very careful to use binary mode when " -"reading and writing such files." +"file data is fine for text files, but will corrupt binary data like that " +"in :file:`JPEG` or :file:`EXE` files. Be very careful to use binary mode " +"when reading and writing such files." msgstr "" +"ਟੈਕਸਟ ਮੋਡ ਵਿੱਚ, ਪੜ੍ਹਨ ਵੇਲੇ ਡਿਫੌਲਟ ਇਹ ਹੁੰਦਾ ਹੈ ਕਿ ਪਲੇਟਫਾਰਮ-ਵਿਸ਼ੇਸ਼ ਲਾਈਨ ਅੰਤ (Unix 'ਤੇ " +"``\\n``, Windows 'ਤੇ ``\\r\\n`` ) ਨੂੰ ਸਿਰਫ਼ ``\\n`` ਵਿੱਚ ਬਦਲਿਆ ਜਾਵੇ। ਜਦੋਂ ਟੈਕਸਟ ਮੋਡ " +"ਵਿੱਚ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਡਿਫੌਲਟ ਇਹ ਹੁੰਦਾ ਹੈ ਕਿ ``\\n`` ਦੀਆਂ ਘਟਨਾਵਾਂ ਨੂੰ ਮੁੜ ਪਲੇਟਫਾਰਮ-ਵਿਸ਼ੇਸ਼ " +"ਲਾਈਨ ਅੰਤਾਂ ਵਿੱਚ ਬਦਲਿਆ ਜਾਵੇ। ਫਾਈਲ ਡੇਟਾ ਵਿੱਚ ਇਹ ਪਰਦੇ ਪਿੱਛੇ ਕੀਤੀ ਗਈ ਤਬਦੀਲੀ ਟੈਕਸਟ ਫਾਈਲਾਂ " +"ਲਈ ਠੀਕ ਹੈ, ਪਰ ਇਹ :file:`JPEG` ਜਾਂ :file:`EXE` ਵਰਗੀਆਂ ਬਾਈਨਰੀ ਫਾਈਲਾਂ ਦੇ ਡੇਟਾ ਨੂੰ ਖਰਾਬ " +"ਕਰ ਦੇਵੇਗੀ। ਅਜਿਹੀਆਂ ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਵੇਲੇ ਬਾਈਨਰੀ ਮੋਡ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਿੱਚ ਬਹੁਤ ਸਾਵਧਾਨ " +"ਰਹੋ।" msgid "" "It is good practice to use the :keyword:`with` keyword when dealing with " "file objects. The advantage is that the file is properly closed after its " -"suite finishes, even if an exception is raised at some point. Using :" -"keyword:`!with` is also much shorter than writing equivalent :keyword:" -"`try`\\ -\\ :keyword:`finally` blocks::" +"suite finishes, even if an exception is raised at some point. " +"Using :keyword:`!with` is also much shorter than writing " +"equivalent :keyword:`try`\\ -\\ :keyword:`finally` blocks::" msgstr "" +"ਫਾਈਲ ਆਬਜੈਕਟਾਂ ਨਾਲ ਨਿਪਟਦਿਆਂ :keyword:`with` ਕੀਵਰਡ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਚੰਗਾ ਅਭਿਆਸ ਹੈ। ਇਸਦਾ " +"ਫਾਇਦਾ ਇਹ ਹੈ ਕਿ ਸੂਟ ਖਤਮ ਹੋਣ 'ਤੇ ਫਾਈਲ ਠੀਕ ਤਰ੍ਹਾਂ ਬੰਦ ਹੋ ਜਾਂਦੀ ਹੈ, ਭਾਵੇਂ ਕਿਸੇ ਵੀ ਸਮੇਂ ਐਕਸੈਪਸ਼ਨ " +"ਉਠਾਈ ਜਾਵੇ। :keyword:`!with` ਦੀ ਵਰਤੋਂ ਵੀ ਬਰਾਬਰ ਦੇ :keyword:`try`\\ -" +"\\ :keyword:`finally` ਬਲਾਕਾਂ ਨੂੰ ਲਿਖਣ ਨਾਲੋਂ ਕਾਫੀ ਛੋਟੀ ਹੈ।" msgid "" -">>> with open('workfile', encoding=\"utf-8\") as f:\n" +">>> with open('workfile') as f:\n" "... read_data = f.read()\n" "\n" ">>> # We can check that the file has been automatically closed.\n" ">>> f.closed\n" "True" msgstr "" +">>> with open('workfile') as f:\n" +"... read_data = f.read()\n" +"\n" +">>> # We can check that the file has been automatically closed.\n" +">>> f.closed\n" +"True" msgid "" -"If you're not using the :keyword:`with` keyword, then you should call ``f." -"close()`` to close the file and immediately free up any system resources " +"If you're not using the :keyword:`with` keyword, then you should call " +"``f.close()`` to close the file and immediately free up any system resources " "used by it." msgstr "" +"ਜੇ ਤੁਸੀਂ :keyword:`with` keyword ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਫਾਈਲ ਨੂੰ ਬੰਦ ਕਰਨ ਅਤੇ ਇਸ " +"ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਸਿਸਟਮ ਸਰੋਤਾਂ ਨੂੰ ਤੁਰੰਤ ਮੁਕਤ ਕਰਨ ਲਈ ``f.close()`` ਨੂੰ ਕਾਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।" msgid "" "Calling ``f.write()`` without using the :keyword:`!with` keyword or calling " "``f.close()`` **might** result in the arguments of ``f.write()`` not being " "completely written to the disk, even if the program exits successfully." msgstr "" +":keyword:`!with` keyword ਦੀ ਵਰਤੋਂ ਕੀਤੇ ਬਿਨਾਂ ਜਾਂ ``f.close()`` ਨੂੰ ਕਾਲ ਕੀਤੇ ਬਿਨਾਂ " +"``f.write()`` ਨੂੰ ਕਾਲ ਕਰਨ ਨਾਲ **ਸੰਭਵ ਹੈ** ਕਿ ``f.write()`` ਦੇ arguments ਪੂਰੀ ਤਰ੍ਹਾਂ " +"ਡਿਸਕ ਉੱਤੇ ਨਾ ਲਿਖੇ ਜਾਣ, ਭਾਵੇਂ ਪ੍ਰੋਗਰਾਮ ਸਫਲਤਾਪੂਰਵਕ ਸਮਾਪਤ ਹੀ ਕਿਉਂ ਨਾ ਹੋ ਜਾਵੇ।" msgid "" "After a file object is closed, either by a :keyword:`with` statement or by " "calling ``f.close()``, attempts to use the file object will automatically " "fail. ::" msgstr "" +"ਫਾਈਲ ਆਬਜੈਕਟ ਬੰਦ ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਚਾਹੇ ਉਹ :keyword:`with` statement ਰਾਹੀਂ ਬੰਦ ਕੀਤਾ " +"ਗਿਆ ਹੋਵੇ ਜਾਂ ``f.close()`` ਨੂੰ ਕਾਲ ਕਰਕੇ, ਉਸ ਫਾਈਲ ਆਬਜੈਕਟ ਨੂੰ ਵਰਤਣ ਦੀਆਂ ਕੋਸ਼ਿਸ਼ਾਂ ਆਪਣੇ ਆਪ " +"ਅਸਫਲ ਹੋ ਜਾਣਗੀਆਂ। ::" msgid "" ">>> f.close()\n" @@ -476,14 +710,21 @@ msgid "" " File \"\", line 1, in \n" "ValueError: I/O operation on closed file." msgstr "" +">>> f.close()\n" +">>> f.read()\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"ValueError: I/O operation on closed file." -msgid "Methods of File Objects" -msgstr "" +msgid "Methods of file objects" +msgstr "ਫਾਈਲ ਆਬਜੈਕਟਾਂ ਦੀਆਂ ਵਿਧੀਆਂ" msgid "" "The rest of the examples in this section will assume that a file object " "called ``f`` has already been created." msgstr "" +"ਇਸ ਭਾਗ ਵਿੱਚ ਬਾਕੀ ਸਾਰੀਆਂ ਉਦਾਹਰਨਾਂ ਇਹ ਮੰਨ ਕੇ ਚੱਲਣਗੀਆਂ ਕਿ ``f`` ਨਾਮ ਦਾ ਇੱਕ ਫਾਈਲ ਆਬਜੈਕਟ " +"ਪਹਿਲਾਂ ਹੀ ਬਣਾਇਆ ਜਾ ਚੁੱਕਾ ਹੈ।" msgid "" "To read a file's contents, call ``f.read(size)``, which reads some quantity " @@ -495,6 +736,14 @@ msgid "" "binary mode) are read and returned. If the end of the file has been reached, " "``f.read()`` will return an empty string (``''``). ::" msgstr "" +"ਫਾਈਲ ਦੀ ਸਮੱਗਰੀ ਪੜ੍ਹਨ ਲਈ ``f.read(size)`` ਨੂੰ ਕਾਲ ਕਰੋ, ਜੋ ਕੁਝ ਮਾਤਰਾ ਵਿੱਚ ਡਾਟਾ ਪੜ੍ਹਦਾ ਹੈ " +"ਅਤੇ ਇਸਨੂੰ string (text mode ਵਿੱਚ) ਜਾਂ bytes object (binary mode ਵਿੱਚ) ਵਜੋਂ ਵਾਪਸ ਕਰਦਾ " +"ਹੈ। *size* ਇੱਕ ਵਿਕਲਪਿਕ ਸੰਖਿਆਤਮਕ argument ਹੈ। ਜਦੋਂ *size* ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾਵੇ ਜਾਂ ਨਕਾਰਾਤਮਕ " +"ਹੋਵੇ, ਤਾਂ ਫਾਈਲ ਦੀ ਪੂਰੀ ਸਮੱਗਰੀ ਪੜ੍ਹ ਕੇ ਵਾਪਸ ਕੀਤੀ ਜਾਵੇਗੀ; ਜੇ ਫਾਈਲ ਤੁਹਾਡੀ machine ਦੀ " +"memory ਨਾਲੋਂ ਦੋ ਗੁਣਾ ਵੱਡੀ ਹੋਵੇ ਤਾਂ ਇਹ ਤੁਹਾਡੀ ਸਮੱਸਿਆ ਹੈ। ਨਹੀਂ ਤਾਂ, ਵੱਧ ਤੋਂ ਵੱਧ *size* ਅੱਖਰ " +"(text mode ਵਿੱਚ) ਜਾਂ *size* bytes (binary mode ਵਿੱਚ) ਪੜ੍ਹੇ ਅਤੇ ਵਾਪਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਜੇ " +"ਫਾਈਲ ਦੇ ਅੰਤ ਤੱਕ ਪਹੁੰਚ ਗਿਆ ਹੋਵੇ, ਤਾਂ ``f.read()`` ਇੱਕ ਖਾਲੀ string (``''``) ਵਾਪਸ " +"ਕਰੇਗਾ। ::" msgid "" ">>> f.read()\n" @@ -502,6 +751,10 @@ msgid "" ">>> f.read()\n" "''" msgstr "" +">>> f.read()\n" +"'This is the entire file.\\n'\n" +">>> f.read()\n" +"''" msgid "" "``f.readline()`` reads a single line from the file; a newline character " @@ -511,6 +764,11 @@ msgid "" "end of the file has been reached, while a blank line is represented by " "``'\\n'``, a string containing only a single newline. ::" msgstr "" +"``f.readline()`` ਫਾਈਲ ਤੋਂ ਇੱਕ ਲਾਈਨ ਪੜ੍ਹਦਾ ਹੈ; ਸਟਰਿੰਗ ਦੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਨਿਊਲਾਈਨ ਚਰੈਕਟਰ " +"(``\\n``) ਛੱਡਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਇਹ ਫਾਈਲ ਦੀ ਆਖਰੀ ਲਾਈਨ ਵਿੱਚ ਸਿਰਫ਼ ਉਦੋਂ ਹੀ ਨਹੀਂ ਛੱਡਿਆ ਜਾਂਦਾ " +"ਜਦੋਂ ਫਾਈਲ ਨਿਊਲਾਈਨ 'ਤੇ ਖਤਮ ਨਾ ਹੁੰਦੀ ਹੋਵੇ। ਇਸ ਨਾਲ ਵਾਪਸ ਕੀਤੀ ਕੀਮਤ ਸਪਸ਼ਟ ਹੋ ਜਾਂਦੀ ਹੈ; ਜੇ " +"``f.readline()`` ਖਾਲੀ ਸਟਰਿੰਗ ਵਾਪਸ ਕਰਦਾ ਹੈ, ਤਾਂ ਫਾਈਲ ਦੇ ਅੰਤ ਤੱਕ ਪਹੁੰਚ ਗਿਆ ਹੈ, ਜਦਕਿ ਇੱਕ " +"ਖਾਲੀ ਲਾਈਨ ``'\\n'`` ਦੁਆਰਾ ਦਰਸਾਈ ਜਾਂਦੀ ਹੈ, ਜੋ ਸਿਰਫ਼ ਇੱਕ ਨਿਊਲਾਈਨ ਵਾਲੀ ਸਟਰਿੰਗ ਹੈ। ::" msgid "" ">>> f.readline()\n" @@ -520,11 +778,19 @@ msgid "" ">>> f.readline()\n" "''" msgstr "" +">>> f.readline()\n" +"'This is the first line of the file.\\n'\n" +">>> f.readline()\n" +"'Second line of the file\\n'\n" +">>> f.readline()\n" +"''" msgid "" "For reading lines from a file, you can loop over the file object. This is " "memory efficient, fast, and leads to simple code::" msgstr "" +"ਫਾਈਲ ਤੋਂ ਲਾਈਨਾਂ ਪੜ੍ਹਨ ਲਈ ਤੁਸੀਂ ਫਾਈਲ ਆਬਜੈਕਟ ਉੱਤੇ loop ਚਲਾ ਸਕਦੇ ਹੋ। ਇਹ ਮੈਮੋਰੀ-ਕੁਸ਼ਲ, ਤੇਜ਼ ਅਤੇ " +"ਸਧਾਰਣ ਕੋਡ ਲਿਖਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ::" msgid "" ">>> for line in f:\n" @@ -533,26 +799,39 @@ msgid "" "This is the first line of the file.\n" "Second line of the file" msgstr "" +">>> for line in f:\n" +"... print(line, end='')\n" +"...\n" +"This is the first line of the file.\n" +"Second line of the file" msgid "" "If you want to read all the lines of a file in a list you can also use " "``list(f)`` or ``f.readlines()``." msgstr "" +"ਜੇ ਤੁਸੀਂ ਫਾਈਲ ਦੀਆਂ ਸਾਰੀਆਂ ਲਾਈਨਾਂ ਨੂੰ ਇੱਕ list ਵਿੱਚ ਪੜ੍ਹਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਤੁਸੀਂ ``list(f)`` ਜਾਂ " +"``f.readlines()`` ਦੀ ਵਰਤੋਂ ਵੀ ਕਰ ਸਕਦੇ ਹੋ।" msgid "" "``f.write(string)`` writes the contents of *string* to the file, returning " "the number of characters written. ::" msgstr "" +"``f.write(string)`` *string* ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਫਾਈਲ ਵਿੱਚ ਲਿਖਦਾ ਹੈ ਅਤੇ ਲਿਖੇ ਗਏ ਅੱਖਰਾਂ ਦੀ " +"ਗਿਣਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ। ::" msgid "" ">>> f.write('This is a test\\n')\n" "15" msgstr "" +">>> f.write('This is a test\\n')\n" +"15" msgid "" "Other types of objects need to be converted -- either to a string (in text " "mode) or a bytes object (in binary mode) -- before writing them::" msgstr "" +"ਹੋਰ ਕਿਸਮਾਂ ਦੀਆਂ ਵਸਤੂਆਂ ਨੂੰ ਲਿਖਣ ਤੋਂ ਪਹਿਲਾਂ ਸਟ੍ਰਿੰਗ (text mode ਵਿੱਚ) ਜਾਂ bytes ਆਬਜੈਕਟ " +"(binary mode ਵਿੱਚ) ਵਿੱਚ ਬਦਲਣਾ ਲਾਜ਼ਮੀ ਹੈ::" msgid "" ">>> value = ('the answer', 42)\n" @@ -560,12 +839,19 @@ msgid "" ">>> f.write(s)\n" "18" msgstr "" +">>> value = ('the answer', 42)\n" +">>> s = str(value) # convert the tuple to string\n" +">>> f.write(s)\n" +"18" msgid "" "``f.tell()`` returns an integer giving the file object's current position in " "the file represented as number of bytes from the beginning of the file when " "in binary mode and an opaque number when in text mode." msgstr "" +"``f.tell()`` ਇੱਕ ਪੂਰਨ ਅੰਕ ਵਾਪਸ ਕਰਦਾ ਹੈ ਜੋ ਫਾਈਲ ਵਿੱਚ ਫਾਈਲ ਆਬਜੈਕਟ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ " +"ਦਰਸਾਉਂਦਾ ਹੈ। Binary mode ਵਿੱਚ ਇਹ ਫਾਈਲ ਦੇ ਸ਼ੁਰੂ ਤੋਂ bytes ਦੀ ਗਿਣਤੀ ਵਜੋਂ ਹੁੰਦੀ ਹੈ, ਜਦਕਿ text " +"mode ਵਿੱਚ ਇਹ ਇੱਕ ਅਪਾਰਦਰਸ਼ੀ ਸੰਖਿਆ ਹੁੰਦੀ ਹੈ।" msgid "" "To change the file object's position, use ``f.seek(offset, whence)``. The " @@ -576,6 +862,11 @@ msgid "" "omitted and defaults to 0, using the beginning of the file as the reference " "point. ::" msgstr "" +"ਫਾਈਲ ਆਬਜੈਕਟ ਦੀ ਸਥਿਤੀ ਬਦਲਣ ਲਈ, ``f.seek(offset, whence)`` ਵਰਤੋ। ਸਥਿਤੀ *offset* " +"ਨੂੰ ਇੱਕ ਸੰਦਰਭ ਬਿੰਦੂ ਨਾਲ ਜੋੜ ਕੇ ਗਣਨਾ ਕੀਤੀ ਜਾਂਦੀ ਹੈ; ਸੰਦਰਭ ਬਿੰਦੂ *whence* ਆਰਗੂਮੈਂਟ ਦੁਆਰਾ ਚੁਣਿਆ " +"ਜਾਂਦਾ ਹੈ। *whence* ਦਾ ਮੁੱਲ 0 ਫਾਈਲ ਦੀ ਸ਼ੁਰੂਆਤ ਤੋਂ ਮਾਪਦਾ ਹੈ, 1 ਮੌਜੂਦਾ ਫਾਈਲ ਸਥਿਤੀ ਵਰਤਦਾ " +"ਹੈ, ਅਤੇ 2 ਫਾਈਲ ਦੇ ਅੰਤ ਨੂੰ ਰੈਫਰੈਂਸ ਪੁਆਇੰਟ ਵਜੋਂ ਵਰਤਦਾ ਹੈ। *whence* ਨੂੰ ਛੱਡਿਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇਹ " +"ਡਿਫੌਲਟ ਤੌਰ 'ਤੇ 0 ਰਹਿੰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਫਾਈਲ ਦੀ ਸ਼ੁਰੂਆਤ ਰੈਫਰੈਂਸ ਪੁਆਇੰਟ ਵਜੋਂ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ::" msgid "" ">>> f = open('workfile', 'rb+')\n" @@ -590,6 +881,17 @@ msgid "" ">>> f.read(1)\n" "b'd'" msgstr "" +">>> f = open('workfile', 'rb+')\n" +">>> f.write(b'0123456789abcdef')\n" +"16\n" +">>> f.seek(5) # Go to the 6th byte in the file\n" +"5\n" +">>> f.read(1)\n" +"b'5'\n" +">>> f.seek(-3, 2) # Go to the 3rd byte before the end\n" +"13\n" +">>> f.read(1)\n" +"b'd'" msgid "" "In text files (those opened without a ``b`` in the mode string), only seeks " @@ -598,15 +900,22 @@ msgid "" "*offset* values are those returned from the ``f.tell()``, or zero. Any other " "*offset* value produces undefined behaviour." msgstr "" +"Text ਫਾਈਲਾਂ ਵਿੱਚ (ਜੋ mode string ਵਿੱਚ ``b`` ਤੋਂ ਬਿਨਾਂ ਖੋਲ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ), ਕੇਵਲ ਫਾਈਲ ਦੇ " +"ਸ਼ੁਰੂ ਦੇ ਸਬੰਧ ਵਿੱਚ seek ਕਰਨ ਦੀ ਆਗਿਆ ਹੁੰਦੀ ਹੈ (ਅਪਵਾਦ ``seek(0, 2)`` ਨਾਲ ਫਾਈਲ ਦੇ ਅੰਤ ਤੱਕ " +"ਜਾਣਾ ਹੈ)। ਵੈਧ *offset* ਮੁੱਲ ਕੇਵਲ ਉਹੀ ਹਨ ਜੋ ``f.tell()`` ਵਾਪਸ ਕਰਦਾ ਹੈ ਜਾਂ ਸ਼ੂਨ੍ਯ। ਕੋਈ ਹੋਰ " +"*offset* ਮੁੱਲ ਅਣਪਰਿਭਾਸ਼ਿਤ ਵਿਵਹਾਰ ਪੈਦਾ ਕਰਦਾ ਹੈ।" msgid "" "File objects have some additional methods, such as :meth:`~io.IOBase.isatty` " "and :meth:`~io.IOBase.truncate` which are less frequently used; consult the " "Library Reference for a complete guide to file objects." msgstr "" +"ਫਾਈਲ ਆਬਜੈਕਟਾਂ ਵਿੱਚ ਕੁਝ ਵਾਧੂ ਵਿਧੀਆਂ ਵੀ ਹੁੰਦੀਆਂ ਹਨ, ਜਿਵੇਂ :meth:`~io.IOBase.isatty` " +"ਅਤੇ :meth:`~io.IOBase.truncate`, ਜਿਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ ਘੱਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਫਾਈਲ ਆਬਜੈਕਟਾਂ ਬਾਰੇ " +"ਪੂਰੀ ਜਾਣਕਾਰੀ ਲਈ Library Reference ਵੇਖੋ।" msgid "Saving structured data with :mod:`json`" -msgstr "" +msgstr ":mod:`json` ਨਾਲ ਸੰਰਚਿਤ ਡਾਟਾ ਸੰਭਾਲਣਾ" msgid "" "Strings can easily be written to and read from a file. Numbers take a bit " @@ -616,29 +925,49 @@ msgid "" "want to save more complex data types like nested lists and dictionaries, " "parsing and serializing by hand becomes complicated." msgstr "" +"ਸਟ੍ਰਿੰਗਾਂ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਫਾਈਲ ਵਿੱਚ ਲਿਖਿਆ ਅਤੇ ਫਾਈਲ ਤੋਂ ਪੜ੍ਹਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਸੰਖਿਆਵਾਂ ਲਈ ਕੁਝ ਵੱਧ " +"ਮਿਹਨਤ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਕਿਉਂਕਿ :meth:`~io.TextIOBase.read` ਵਿਧੀ ਕੇਵਲ ਸਟ੍ਰਿੰਗਾਂ ਵਾਪਸ " +"ਕਰਦੀ ਹੈ, ਜਿਨ੍ਹਾਂ ਨੂੰ :func:`int` ਵਰਗੇ ਫੰਕਸ਼ਨ ਵਿੱਚ ਪਾਸ ਕਰਨਾ ਪੈਂਦਾ ਹੈ, ਜੋ ``'123'`` ਵਰਗੀ " +"ਸਟ੍ਰਿੰਗ ਲੈ ਕੇ ਉਸਦਾ ਸੰਖਿਆਤਮਕ ਮੁੱਲ 123 ਵਾਪਸ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ nested lists ਅਤੇ " +"dictionaries ਵਰਗੇ ਹੋਰ ਜਟਿਲ ਡਾਟਾ ਕਿਸਮਾਂ ਨੂੰ ਸੰਭਾਲਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਹੱਥੋਂ parsing ਅਤੇ " +"serializing ਕਰਨਾ ਮੁਸ਼ਕਲ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "" "Rather than having users constantly writing and debugging code to save " "complicated data types to files, Python allows you to use the popular data " -"interchange format called `JSON (JavaScript Object Notation) `_. The standard module called :mod:`json` can take Python data " +"interchange format called `JSON (JavaScript Object Notation) `_. The standard module called :mod:`json` can take Python data " "hierarchies, and convert them to string representations; this process is " "called :dfn:`serializing`. Reconstructing the data from the string " "representation is called :dfn:`deserializing`. Between serializing and " "deserializing, the string representing the object may have been stored in a " "file or data, or sent over a network connection to some distant machine." msgstr "" +"ਵਰਤੋਂਕਾਰਾਂ ਨੂੰ ਜਟਿਲ ਡਾਟਾ ਕਿਸਮਾਂ ਨੂੰ ਫਾਈਲਾਂ ਵਿੱਚ ਸੇਵ ਕਰਨ ਲਈ ਲਗਾਤਾਰ ਕੋਡ ਲਿਖਣ ਅਤੇ debug ਕਰਨ " +"ਦੀ ਬਜਾਏ, Python ਤੁਹਾਨੂੰ ਪ੍ਰਸਿੱਧ ਡਾਟਾ ਅਦਾਨ-ਪ੍ਰਦਾਨ ਫਾਰਮੈਟ `JSON (JavaScript Object " +"Notation) `_ ਵਰਤਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। :mod:`json` ਨਾਮ ਦਾ ਮਿਆਰੀ " +"module Python ਡਾਟਾ hierarchies ਨੂੰ ਲੈ ਕੇ ਉਹਨਾਂ ਨੂੰ string ਰੂਪ ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ; ਇਸ " +"ਪ੍ਰਕਿਰਿਆ ਨੂੰ :dfn:`serializing` ਕਿਹਾ ਜਾਂਦਾ ਹੈ। string representation ਤੋਂ ਡਾਟਾ ਨੂੰ ਮੁੜ " +"ਬਣਾਉਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ :dfn:`deserializing` ਕਿਹਾ ਜਾਂਦਾ ਹੈ। Serializing ਅਤੇ " +"deserializing ਦੇ ਦਰਮਿਆਨ, object ਨੂੰ ਦਰਸਾਉਂਦੀ string ਕਿਸੇ ਫਾਈਲ ਜਾਂ ਡਾਟਾ ਵਿੱਚ store " +"ਕੀਤੀ ਗਈ ਹੋ ਸਕਦੀ ਹੈ, ਜਾਂ network connection ਰਾਹੀਂ ਕਿਸੇ ਦੂਰ ਦੀ ਮਸ਼ੀਨ ਨੂੰ ਭੇਜੀ ਗਈ ਹੋ ਸਕਦੀ " +"ਹੈ।" msgid "" "The JSON format is commonly used by modern applications to allow for data " "exchange. Many programmers are already familiar with it, which makes it a " "good choice for interoperability." msgstr "" +"JSON ਫਾਰਮੈਟ ਆਧੁਨਿਕ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੁਆਰਾ ਡਾਟਾ ਅਦਾਨ-ਪ੍ਰਦਾਨ ਲਈ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਬਹੁਤ " +"ਸਾਰੇ ਪ੍ਰੋਗਰਾਮਰ ਪਹਿਲਾਂ ਹੀ ਇਸ ਨਾਲ ਜਾਣੂ ਹਨ, ਜਿਸ ਕਾਰਨ ਇਹ interoperability ਲਈ ਇੱਕ ਵਧੀਆ " +"ਚੋਣ ਬਣ ਜਾਂਦਾ ਹੈ।" msgid "" "If you have an object ``x``, you can view its JSON string representation " "with a simple line of code::" msgstr "" +"ਜੇ ਤੁਹਾਡੇ ਕੋਲ ``x`` ਨਾਮ ਦਾ ਕੋਈ ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਇੱਕ ਸਧਾਰਣ ਕੋਡ ਲਾਈਨ ਨਾਲ ਉਸਦੀ JSON " +"ਸਟ੍ਰਿੰਗ representation ਵੇਖ ਸਕਦੇ ਹੋ::" msgid "" ">>> import json\n" @@ -646,28 +975,40 @@ msgid "" ">>> json.dumps(x)\n" "'[1, \"simple\", \"list\"]'" msgstr "" +">>> import json\n" +">>> x = [1, 'simple', 'list']\n" +">>> json.dumps(x)\n" +"'[1, \"simple\", \"list\"]'" msgid "" -"Another variant of the :func:`~json.dumps` function, called :func:`~json." -"dump`, simply serializes the object to a :term:`text file`. So if ``f`` is " -"a :term:`text file` object opened for writing, we can do this::" +"Another variant of the :func:`~json.dumps` function, " +"called :func:`~json.dump`, simply serializes the object to a :term:`text " +"file`. So if ``f`` is a :term:`text file` object opened for writing, we can " +"do this::" msgstr "" +":func:`~json.dumps` ਫੰਕਸ਼ਨ ਦਾ ਇੱਕ ਹੋਰ ਰੂਪ, ਜਿਸਨੂੰ :func:`~json.dump` ਕਿਹਾ ਜਾਂਦਾ ਹੈ, " +"ਸਿਰਫ਼ ਆਬਜੈਕਟ ਨੂੰ ਇੱਕ :term:`text file` ਵਿੱਚ ਸੀਰੀਅਲਾਈਜ਼ ਕਰਦਾ ਹੈ। ਇਸ ਲਈ ਜੇ ``f`` ਲਿਖਣ " +"ਲਈ ਖੋਲ੍ਹੀ ਗਈ ਇੱਕ :term:`text file` ਆਬਜੈਕਟ ਹੈ, ਤਾਂ ਅਸੀਂ ਇਹ ਕਰ ਸਕਦੇ ਹਾਂ::" msgid "json.dump(x, f)" -msgstr "" +msgstr "json.dump(x, f)" msgid "" "To decode the object again, if ``f`` is a :term:`binary file` or :term:`text " "file` object which has been opened for reading::" msgstr "" +"ਆਬਜੈਕਟ ਨੂੰ ਮੁੜ decode ਕਰਨ ਲਈ, ਜੇ ``f`` ਪੜ੍ਹਨ ਲਈ ਖੋਲ੍ਹਿਆ ਗਿਆ ਇੱਕ :term:`binary file` " +"ਜਾਂ :term:`text file` ਆਬਜੈਕਟ ਹੈ::" msgid "x = json.load(f)" -msgstr "" +msgstr "x = json.load(f)" msgid "" -"JSON files must be encoded in UTF-8. Use ``encoding=\"utf-8\"`` when opening " -"JSON file as a :term:`text file` for both of reading and writing." +"JSON files must be encoded in UTF-8, the default encoding for :term:`text " +"files `." msgstr "" +"JSON ਫਾਈਲਾਂ ਨੂੰ UTF-8 ਵਿੱਚ ਏਨਕੋਡ ਕੀਤਾ ਜਾਣਾ ਲਾਜ਼ਮੀ ਹੈ, ਜੋ :term:`text files ` ਲਈ ਡਿਫੌਲਟ ਏਨਕੋਡਿੰਗ ਹੈ।" msgid "" "This simple serialization technique can handle lists and dictionaries, but " @@ -675,9 +1016,12 @@ msgid "" "effort. The reference for the :mod:`json` module contains an explanation of " "this." msgstr "" +"ਇਹ ਸਧਾਰਣ serialization ਤਕਨੀਕ lists ਅਤੇ dictionaries ਨੂੰ ਸੰਭਾਲ ਸਕਦੀ ਹੈ, ਪਰ JSON " +"ਵਿੱਚ ਮਨਮਾਨੇ class instances ਨੂੰ serialize ਕਰਨ ਲਈ ਕੁਝ ਵਾਧੂ ਮਿਹਨਤ ਦੀ ਲੋੜ ਹੁੰਦੀ " +"ਹੈ। :mod:`json` ਮੌਡਿਊਲ ਦੇ ਹਵਾਲਾ ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਇਸਦੀ ਵਿਆਖਿਆ ਮੌਜੂਦ ਹੈ।" msgid ":mod:`pickle` - the pickle module" -msgstr "" +msgstr ":mod:`pickle` - pickle ਮੌਡਿਊਲ" msgid "" "Contrary to :ref:`JSON `, *pickle* is a protocol which allows the " @@ -687,42 +1031,47 @@ msgid "" "pickle data coming from an untrusted source can execute arbitrary code, if " "the data was crafted by a skilled attacker." msgstr "" +":ref:`JSON ` ਦੇ ਉਲਟ, *pickle* ਇੱਕ ਪ੍ਰੋਟੋਕੋਲ ਹੈ ਜੋ ਕਿਸੇ ਵੀ ਜਟਿਲ Python " +"ਆਬਜੈਕਟਾਂ ਦੀ ਸੀਰੀਅਲਾਈਜ਼ੇਸ਼ਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਇਸ ਲਈ, ਇਹ ਸਿਰਫ਼ Python ਲਈ ਹੀ ਵਿਸ਼ੇਸ਼ ਹੈ ਅਤੇ " +"ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਲਿਖੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ। ਇਹ ਮੂਲ ਰੂਪ ਵਿੱਚ " +"ਸੁਰੱਖਿਅਤ ਵੀ ਨਹੀਂ ਹੈ: ਕਿਸੇ ਗੈਰ-ਭਰੋਸੇਯੋਗ ਸਰੋਤ ਤੋਂ ਆਏ pickle ਡਾਟਾ ਨੂੰ ਡੀਸੀਰੀਅਲਾਈਜ਼ ਕਰਨ ਨਾਲ " +"ਮਨਮਾਨਾ ਕੋਡ ਚੱਲ ਸਕਦਾ ਹੈ, ਜੇਕਰ ਉਹ ਡਾਟਾ ਕਿਸੇ ਮਾਹਿਰ ਹਮਲਾਵਰ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੋਵੇ।" msgid "formatted string literal" -msgstr "" +msgstr "ਫਾਰਮੈਟ ਕੀਤੀ ਸਟ੍ਰਿੰਗ ਲਿਟਰਲ" msgid "interpolated string literal" -msgstr "" +msgstr "ਇੰਟਰਪੋਲੇਟ ਕੀਤੀ ਸਟ੍ਰਿੰਗ ਲਿਟਰਲ" msgid "string" -msgstr "" +msgstr "ਸਟ੍ਰਿੰਗ" msgid "formatted literal" -msgstr "" +msgstr "ਫਾਰਮੈਟ ਕੀਤੀ ਲਿਟਰਲ" msgid "interpolated literal" -msgstr "" +msgstr "ਇੰਟਰਪੋਲੇਟ ਕੀਤੀ ਲਿਟਰਲ" msgid "f-string" -msgstr "" +msgstr "f-string" msgid "fstring" -msgstr "" +msgstr "fstring" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "open" -msgstr "" +msgstr "open" msgid "object" -msgstr "" +msgstr "ਵਸਤੂ" msgid "file" -msgstr "" +msgstr "ਫਾਈਲ" msgid "module" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "json" -msgstr "" +msgstr "json" diff --git a/tutorial/interactive.po b/tutorial/interactive.po index c029a57..44b0ecb 100644 --- a/tutorial/interactive.po +++ b/tutorial/interactive.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Interactive Input Editing and History Substitution" -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ ਇਨਪੁੱਟ ਸੰਪਾਦਨ ਅਤੇ ਹਿਸਟਰੀ ਬਦਲਾਅ" msgid "" "Some versions of the Python interpreter support editing of the current input " @@ -32,9 +32,14 @@ msgid "" "library, which supports various styles of editing. This library has its own " "documentation which we won't duplicate here." msgstr "" +"Python interpreter ਦੇ ਕੁਝ ਸੰਸਕਰਣ ਮੌਜੂਦਾ input line ਦੇ ਸੰਪਾਦਨ ਅਤੇ history " +"substitution ਦਾ ਸਮਰਥਨ ਕਰਦੇ ਹਨ, ਜੋ Korn shell ਅਤੇ GNU Bash shell ਵਿੱਚ ਮੌਜੂਦ ਸੁਵਿਧਾਵਾਂ " +"ਵਰਗੇ ਹਨ। ਇਹ `GNU Readline`_ ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਵਰਤੋਂ ਨਾਲ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ, ਜੋ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ " +"ਦੇ ਸੰਪਾਦਨ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ। ਇਸ ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਆਪਣੀ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਹੈ ਜਿਸਨੂੰ ਅਸੀਂ ਇੱਥੇ ਦੁਹਰਾਵਾਂਗੇ " +"ਨਹੀਂ।" msgid "Tab Completion and History Editing" -msgstr "" +msgstr "ਟੈਬ ਪੂਰਨਤਾ ਅਤੇ ਹਿਸਟਰੀ ਸੰਪਾਦਨ" msgid "" "Completion of variable and module names is :ref:`automatically enabled " @@ -45,13 +50,23 @@ msgid "" "final ``'.'`` and then suggest completions from the attributes of the " "resulting object. Note that this may execute application-defined code if an " "object with a :meth:`~object.__getattr__` method is part of the expression. " -"The default configuration also saves your history into a file named :file:`." -"python_history` in your user directory. The history will be available again " -"during the next interactive interpreter session." +"The default configuration also saves your history into a file " +"named :file:`.python_history` in your user directory. The history will be " +"available again during the next interactive interpreter session." msgstr "" +"Interpreter ਸ਼ੁਰੂ ਹੋਣ ਸਮੇਂ variable ਅਤੇ module ਨਾਮਾਂ ਦੀ ਪੂਰਨਤਾ :ref:`automatically " +"enabled ` ਹੁੰਦੀ ਹੈ, ਤਾਂ ਜੋ :kbd:`Tab` ਕੁੰਜੀ completion function " +"ਨੂੰ ਚਲਾਏ। ਇਹ Python statement ਨਾਂਵਾਂ, ਮੌਜੂਦਾ local variables ਅਤੇ ਉਪਲਬਧ module ਨਾਂਵਾਂ " +"ਨੂੰ ਵੇਖਦਾ ਹੈ। ``string.a`` ਵਰਗੀਆਂ dotted expressions ਲਈ ਇਹ ਆਖਰੀ ``'.'`` ਤੱਕ " +"expression ਦਾ ਮੁਲਾਂਕਣ ਕਰਦਾ ਹੈ ਅਤੇ ਫਿਰ ਪ੍ਰਾਪਤ object ਦੇ attributes ਤੋਂ ਸੁਝਾਅ ਦਿੰਦਾ ਹੈ। " +"ਧਿਆਨ ਦਿਓ ਕਿ ਜੇ expression ਵਿੱਚ :meth:`~object.__getattr__` ਮੈਥਡ ਵਾਲਾ object " +"ਸ਼ਾਮਲ ਹੋਵੇ ਤਾਂ application-defined code ਵੀ ਚੱਲ ਸਕਦਾ ਹੈ। ਡਿਫਾਲਟ configuration ਤੁਹਾਡੀ " +"history ਨੂੰ ਤੁਹਾਡੀ user directory ਵਿੱਚ :file:`.python_history` ਨਾਮ ਦੀ ਫਾਈਲ ਵਿੱਚ " +"ਵੀ ਸੰਭਾਲਦੀ ਹੈ। ਇਹ history ਅਗਲੇ interactive interpreter session ਦੌਰਾਨ ਦੁਬਾਰਾ ਉਪਲਬਧ " +"ਹੋਵੇਗੀ।" msgid "Alternatives to the Interactive Interpreter" -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ ਇੰਟਰਪ੍ਰੀਟਰ ਦੇ ਵਿਕਲਪ" msgid "" "This facility is an enormous step forward compared to earlier versions of " @@ -61,6 +76,12 @@ msgid "" "might use the interpreter's symbol table. A command to check (or even " "suggest) matching parentheses, quotes, etc., would also be useful." msgstr "" +"ਇਹ ਸੁਵਿਧਾ interpreter ਦੇ ਪੁਰਾਣੇ ਸੰਸਕਰਣਾਂ ਨਾਲ ਤੁਲਨਾ ਕਰਨ 'ਤੇ ਇੱਕ ਵੱਡੀ ਤਰੱਕੀ ਹੈ; ਫਿਰ ਵੀ ਕੁਝ " +"ਇੱਛਾਵਾਂ ਬਾਕੀ ਹਨ। ਜੇ continuation lines ਲਈ ਸਹੀ indentation ਦਾ ਸੁਝਾਅ ਮਿਲੇ ਤਾਂ ਵਧੀਆ " +"ਹੋਵੇਗਾ (parser ਜਾਣਦਾ ਹੈ ਕਿ ਅਗਲਾ :data:`~token.INDENT` token ਲੋੜੀਂਦਾ ਹੈ ਜਾਂ ਨਹੀਂ)। " +"Completion mechanism interpreter ਦੀ symbol table ਦੀ ਵਰਤੋਂ ਵੀ ਕਰ ਸਕਦਾ ਹੈ। " +"Matching parentheses, quotes ਆਦਿ ਦੀ ਜਾਂਚ ਕਰਨ (ਜਾਂ ਸੁਝਾਅ ਦੇਣ) ਵਾਲੀ ਕਮਾਂਡ ਵੀ " +"ਲਾਭਦਾਇਕ ਹੋਵੇਗੀ।" msgid "" "One alternative enhanced interactive interpreter that has been around for " @@ -69,3 +90,8 @@ msgid "" "customized and embedded into other applications. Another similar enhanced " "interactive environment is bpython_." msgstr "" +"ਇੱਕ ਵਿਕਲਪੀ ਉੱਨਤ interactive interpreter ਜੋ ਕਾਫੀ ਸਮੇਂ ਤੋਂ ਉਪਲਬਧ ਹੈ IPython_ ਹੈ, ਜਿਸ " +"ਵਿੱਚ tab completion, object exploration ਅਤੇ advanced history management ਵਰਗੀਆਂ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ। ਇਸਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ customize ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਹੋਰ applications ਵਿੱਚ " +"embed ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸੇ ਤਰ੍ਹਾਂ ਦਾ ਇੱਕ ਹੋਰ ਉੱਨਤ interactive environment " +"bpython_ ਹੈ।" diff --git a/tutorial/interpreter.po b/tutorial/interpreter.po index 4de648d..4775092 100644 --- a/tutorial/interpreter.po +++ b/tutorial/interpreter.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,10 +23,10 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Using the Python Interpreter" -msgstr "" +msgstr "ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ ਦੀ ਵਰਤੋਂ" msgid "Invoking the Interpreter" -msgstr "" +msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਸ਼ੁਰੂ ਕਰਨਾ" msgid "" "The Python interpreter is usually installed as |" @@ -34,9 +34,13 @@ msgid "" "available; putting :file:`/usr/local/bin` in your Unix shell's search path " "makes it possible to start it by typing the command:" msgstr "" +"ਜਿਨ੍ਹਾਂ ਮਸ਼ੀਨਾਂ ਉੱਤੇ Python interpreter ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ, ਉੱਥੇ ਇਹ ਆਮ ਤੌਰ ਉੱਤੇ |" +"usr_local_bin_python_x_dot_y_literal| ਵਜੋਂ ਇੰਸਟਾਲ ਹੁੰਦਾ ਹੈ। ਆਪਣੇ Unix shell ਦੇ " +"search path ਵਿੱਚ :file:`/usr/local/bin` ਜੋੜਨ ਨਾਲ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੀ ਕਮਾਂਡ ਟਾਈਪ ਕਰਕੇ " +"ਇਸਨੂੰ ਸ਼ੁਰੂ ਕਰ ਸਕਦੇ ਹੋ:" msgid "python3.15" -msgstr "" +msgstr "python3.15" msgid "" "to the shell. [#]_ Since the choice of the directory where the interpreter " @@ -44,6 +48,10 @@ msgid "" "local Python guru or system administrator. (E.g., :file:`/usr/local/python` " "is a popular alternative location.)" msgstr "" +"ਇਹ ਕਮਾਂਡ shell ਵਿੱਚ ਦਿਓ। [#]_ ਕਿਉਂਕਿ interpreter ਕਿਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੰਸਟਾਲ ਹੋਵੇਗਾ ਇਹ " +"installation ਦਾ ਇੱਕ ਵਿਕਲਪ ਹੈ, ਇਸ ਲਈ ਹੋਰ ਸਥਾਨ ਵੀ ਸੰਭਵ ਹਨ। ਆਪਣੇ ਸਥਾਨਕ Python ਮਾਹਿਰ " +"ਜਾਂ system administrator ਨਾਲ ਜਾਂਚ ਕਰੋ। (ਉਦਾਹਰਨ ਵਜੋਂ, :file:`/usr/local/python` ਇੱਕ " +"ਪ੍ਰਸਿੱਧ ਵਿਕਲਪੀ ਸਥਾਨ ਹੈ।)" msgid "" "On Windows machines where you have installed Python from the :ref:`Microsoft " @@ -52,6 +60,10 @@ msgid "" "can use the :file:`py` command. See :ref:`setting-envvars` for other ways to " "launch Python." msgstr "" +"ਉਹਨਾਂ Windows ਮਸ਼ੀਨਾਂ ਉੱਤੇ ਜਿੱਥੇ ਤੁਸੀਂ Python ਨੂੰ :ref:`Microsoft Store ` ਤੋਂ ਇੰਸਟਾਲ ਕੀਤਾ ਹੈ, |python_x_dot_y_literal| ਕਮਾਂਡ ਉਪਲਬਧ ਹੋਵੇਗੀ। ਜੇਕਰ ਤੁਹਾਡੇ " +"ਕੋਲ :ref:`py.exe launcher ` ਇੰਸਟਾਲ ਹੈ ਤਾਂ ਤੁਸੀਂ :file:`py` ਕਮਾਂਡ ਵਰਤ ਸਕਦੇ " +"ਹੋ। Python ਸ਼ੁਰੂ ਕਰਨ ਦੇ ਹੋਰ ਤਰੀਕਿਆਂ ਲਈ :ref:`setting-envvars` ਵੇਖੋ।" msgid "" "Typing an end-of-file character (:kbd:`Control-D` on Unix, :kbd:`Control-Z` " @@ -59,6 +71,10 @@ msgid "" "exit status. If that doesn't work, you can exit the interpreter by typing " "the following command: ``quit()``." msgstr "" +"Primary prompt ਉੱਤੇ end-of-file ਅੱਖਰ (:kbd:`Control-D` Unix ਉੱਤੇ, :kbd:`Control-" +"Z` Windows ਉੱਤੇ) ਟਾਈਪ ਕਰਨ ਨਾਲ interpreter zero exit status ਨਾਲ ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ। " +"ਜੇਕਰ ਇਹ ਕੰਮ ਨਾ ਕਰੇ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੀ ਕਮਾਂਡ ਟਾਈਪ ਕਰਕੇ interpreter ਤੋਂ ਬਾਹਰ ਨਿਕਲ ਸਕਦੇ " +"ਹੋ: ``quit()``।" msgid "" "The interpreter's line-editing features include interactive editing, history " @@ -71,6 +87,14 @@ msgid "" "available; you'll only be able to use backspace to remove characters from " "the current line." msgstr "" +"ਜ਼ਿਆਦਾਤਰ ਸਿਸਟਮਾਂ ਉੱਤੇ interpreter ਦੀਆਂ line-editing ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚ interactive " +"editing, history substitution ਅਤੇ code completion ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ। Command line " +"editing ਉਪਲਬਧ ਹੈ ਜਾਂ ਨਹੀਂ, ਇਸ ਦੀ ਸਭ ਤੋਂ ਤੇਜ਼ ਜਾਂਚ ਇਹ ਹੈ ਕਿ Python prompt ਉੱਤੇ ਕੋਈ ਸ਼ਬਦ " +"ਲਿਖੋ ਅਤੇ ਫਿਰ Left arrow (ਜਾਂ :kbd:`Control-b`) ਦਬਾਓ। ਜੇ cursor ਹਿਲਦਾ ਹੈ, ਤਾਂ " +"command line editing ਉਪਲਬਧ ਹੈ। ਕੁੰਜੀਆਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਲਈ Appendix :ref:`tut-" +"interacting` ਵੇਖੋ। ਜੇ ਕੁਝ ਵੀ ਨਾ ਹੋਵੇ ਜਾਂ ``^[[D`` ਜਾਂ ``^B`` ਵਰਗੀ ਲੜੀ ਦਿਖਾਈ ਦੇਵੇ, ਤਾਂ " +"command line editing ਉਪਲਬਧ ਨਹੀਂ ਹੈ; ਉਸ ਸਥਿਤੀ ਵਿੱਚ ਤੁਸੀਂ ਮੌਜੂਦਾ ਲਾਈਨ ਵਿੱਚੋਂ ਅੱਖਰ ਹਟਾਉਣ " +"ਲਈ ਕੇਵਲ backspace ਵਰਤ ਸਕੋਗੇ।" msgid "" "The interpreter operates somewhat like the Unix shell: when called with " @@ -78,32 +102,48 @@ msgid "" "interactively; when called with a file name argument or with a file as " "standard input, it reads and executes a *script* from that file." msgstr "" +"Interpreter ਕੁਝ ਹੱਦ ਤੱਕ Unix shell ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਇਸਨੂੰ tty device ਨਾਲ ਜੁੜੇ " +"standard input ਨਾਲ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਕਮਾਂਡਾਂ ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ ਪੜ੍ਹਦਾ ਅਤੇ " +"ਚਲਾਉਂਦਾ ਹੈ। ਜਦੋਂ ਇਸਨੂੰ ਕਿਸੇ ਫ਼ਾਈਲ ਦੇ ਨਾਮ ਜਾਂ standard input ਵਜੋਂ ਫ਼ਾਈਲ ਨਾਲ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, " +"ਤਾਂ ਇਹ ਉਸ ਫ਼ਾਈਲ ਵਿੱਚੋਂ ਇੱਕ *script* ਪੜ੍ਹ ਕੇ ਚਲਾਉਂਦਾ ਹੈ।" msgid "" "A second way of starting the interpreter is ``python -c command [arg] ...``, " -"which executes the statement(s) in *command*, analogous to the shell's :" -"option:`-c` option. Since Python statements often contain spaces or other " -"characters that are special to the shell, it is usually advised to quote " -"*command* in its entirety." +"which executes the statement(s) in *command*, analogous to the " +"shell's :option:`-c` option. Since Python statements often contain spaces " +"or other characters that are special to the shell, it is usually advised to " +"quote *command* in its entirety." msgstr "" +"Interpreter ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ ``python -c command [arg] ...`` ਹੈ, ਜੋ " +"*command* ਵਿੱਚ ਦਿੱਤੇ statement(s) ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ। ਇਹ shell ਦੇ :option:`-c` ਵਿਕਲਪ ਦੇ " +"ਸਮਾਨ ਹੈ। ਕਿਉਂਕਿ Python statements ਵਿੱਚ ਅਕਸਰ spaces ਜਾਂ ਹੋਰ ਅਜੇਹੇ ਅੱਖਰ ਹੁੰਦੇ ਹਨ ਜੋ shell " +"ਲਈ ਖ਼ਾਸ ਮਹੱਤਵ ਰੱਖਦੇ ਹਨ, ਇਸ ਲਈ ਆਮ ਤੌਰ ਉੱਤੇ *command* ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ quotes ਵਿੱਚ ਲਿਖਣ ਦੀ " +"ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "Some Python modules are also useful as scripts. These can be invoked using " "``python -m module [arg] ...``, which executes the source file for *module* " "as if you had spelled out its full name on the command line." msgstr "" +"ਕੁਝ Python modules script ਵਜੋਂ ਵੀ ਲਾਭਦਾਇਕ ਹੁੰਦੇ ਹਨ। ਇਨ੍ਹਾਂ ਨੂੰ ``python -m module " +"[arg] ...`` ਦੀ ਵਰਤੋਂ ਨਾਲ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ *module* ਦੀ source file ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ " +"ਚਲਾਉਂਦਾ ਹੈ ਜਿਵੇਂ ਤੁਸੀਂ command line ਉੱਤੇ ਇਸਦਾ ਪੂਰਾ ਨਾਮ ਲਿਖਿਆ ਹੋਵੇ।" msgid "" "When a script file is used, it is sometimes useful to be able to run the " -"script and enter interactive mode afterwards. This can be done by passing :" -"option:`-i` before the script." +"script and enter interactive mode afterwards. This can be done by " +"passing :option:`-i` before the script." msgstr "" +"ਜਦੋਂ ਕੋਈ script file ਵਰਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਕਈ ਵਾਰ script ਚਲਾਉਣ ਤੋਂ ਬਾਅਦ interactive " +"mode ਵਿੱਚ ਦਾਖਲ ਹੋਣਾ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ। ਇਹ script ਤੋਂ ਪਹਿਲਾਂ :option:`-i` ਦੇ ਕੇ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ।" msgid "All command line options are described in :ref:`using-on-general`." msgstr "" +"ਸਾਰੇ command line ਵਿਕਲਪਾਂ ਦਾ ਵੇਰਵਾ :ref:`using-on-general` ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ।" msgid "Argument Passing" -msgstr "" +msgstr "ਆਰਗਿਊਮੈਂਟ ਪਾਸ ਕਰਨਾ" msgid "" "When known to the interpreter, the script name and additional arguments " @@ -119,9 +159,20 @@ msgid "" "interpreter's option processing but left in ``sys.argv`` for the command or " "module to handle." msgstr "" +"ਜਦੋਂ interpreter ਨੂੰ script ਦਾ ਨਾਮ ਅਤੇ ਉਸ ਤੋਂ ਬਾਅਦ ਦਿੱਤੇ ਗਏ arguments ਮਾਲੂਮ ਹੁੰਦੇ ਹਨ, ਤਾਂ " +"ਉਹਨਾਂ ਨੂੰ strings ਦੀ ਇੱਕ list ਵਿੱਚ ਬਦਲ ਕੇ ``sys`` module ਦੇ ``argv`` variable ਨੂੰ ਸੌਂਪ " +"ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਤੁਸੀਂ ``import sys`` ਚਲਾ ਕੇ ਇਸ list ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦੇ ਹੋ। ਇਸ list ਦੀ " +"ਲੰਬਾਈ ਘੱਟੋ-ਘੱਟ ਇੱਕ ਹੁੰਦੀ ਹੈ; ਜੇ ਕੋਈ script ਜਾਂ argument ਨਾ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ " +"``sys.argv[0]`` ਇੱਕ ਖਾਲੀ string ਹੁੰਦੀ ਹੈ। ਜੇ script ਦਾ ਨਾਮ ``'-'`` ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ " +"(ਅਰਥਾਤ standard input), ਤਾਂ ``sys.argv[0]`` ਨੂੰ ``'-'`` ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। " +"ਜਦੋਂ :option:`-c` *command* ਵਰਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ``sys.argv[0]`` ਨੂੰ ``'-c'`` ਸੈੱਟ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ। ਜਦੋਂ :option:`-m` *module* ਵਰਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ``sys.argv[0]`` ਨੂੰ ਲੱਭੇ ਗਏ " +"module ਦੇ ਪੂਰੇ ਨਾਮ ਨਾਲ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। :option:`-c` *command* ਜਾਂ :option:`-m` " +"*module* ਤੋਂ ਬਾਅਦ ਮਿਲਣ ਵਾਲੇ ਵਿਕਲਪ Python interpreter ਦੀ option processing ਦੁਆਰਾ " +"ਵਰਤੇ ਨਹੀਂ ਜਾਂਦੇ, ਸਗੋਂ command ਜਾਂ module ਵੱਲੋਂ ਸੰਭਾਲਣ ਲਈ ``sys.argv`` ਵਿੱਚ ਛੱਡ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ।" msgid "Interactive Mode" -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ ਮੋਡ" msgid "" "When commands are read from a tty, the interpreter is said to be in " @@ -131,6 +182,12 @@ msgid "" "dots (``...``). The interpreter prints a welcome message stating its version " "number and a copyright notice before printing the first prompt:" msgstr "" +"ਜਦੋਂ ਕਮਾਂਡਾਂ tty ਤੋਂ ਪੜ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਤਾਂ interpreter ਨੂੰ *ਇੰਟਰਐਕਟਿਵ ਮੋਡ* ਵਿੱਚ ਮੰਨਿਆ ਜਾਂਦਾ " +"ਹੈ। ਇਸ ਮੋਡ ਵਿੱਚ ਇਹ ਅਗਲੀ ਕਮਾਂਡ ਲਈ *primary prompt* ਦਿਖਾਉਂਦਾ ਹੈ, ਜੋ ਆਮ ਤੌਰ 'ਤੇ ਤਿੰਨ " +"greater-than ਚਿੰਨ੍ਹ (``>>>``) ਹੁੰਦੇ ਹਨ; ਜਦਕਿ ਜਾਰੀ ਰਹਿਣ ਵਾਲੀਆਂ ਲਾਈਨਾਂ ਲਈ ਇਹ " +"*secondary prompt* ਦਿਖਾਉਂਦਾ ਹੈ, ਜੋ ਮੂਲ ਰੂਪ ਵਿੱਚ ਤਿੰਨ ਬਿੰਦੀਆਂ (``...``) ਹੁੰਦੀਆਂ ਹਨ। ਪਹਿਲਾ " +"prompt ਦਿਖਾਉਣ ਤੋਂ ਪਹਿਲਾਂ interpreter ਆਪਣਾ version number ਅਤੇ copyright ਜਾਣਕਾਰੀ " +"ਵਾਲਾ ਸੁਆਗਤ ਸੰਦੇਸ਼ ਪ੍ਰਿੰਟ ਕਰਦਾ ਹੈ:" msgid "" "$ python3.15\n" @@ -140,11 +197,19 @@ msgid "" "information.\n" ">>>" msgstr "" +"$ python3.15\n" +"Python 3.15 (default, May 7 2025, 15:46:04)\n" +"[GCC 10.2.0] on linux\n" +"Type \"help\", \"copyright\", \"credits\" or \"license\" for more " +"information.\n" +">>>" msgid "" "Continuation lines are needed when entering a multi-line construct. As an " "example, take a look at this :keyword:`if` statement::" msgstr "" +"ਜਦੋਂ ਕੋਈ ਬਹੁ-ਲਾਈਨੀ ਬਣਤਰ (multi-line construct) ਦਰਜ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ continuation " +"lines ਦੀ ਲੋੜ ਪੈਂਦੀ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ਹੇਠਾਂ ਦਿੱਤੇ :keyword:`if` statement ਨੂੰ ਵੇਖੋ::" msgid "" ">>> the_world_is_flat = True\n" @@ -153,15 +218,20 @@ msgid "" "...\n" "Be careful not to fall off!" msgstr "" +">>> the_world_is_flat = True\n" +">>> if the_world_is_flat:\n" +"... print(\"Be careful not to fall off!\")\n" +"...\n" +"Be careful not to fall off!" msgid "For more on interactive mode, see :ref:`tut-interac`." -msgstr "" +msgstr "ਇੰਟਰਐਕਟਿਵ ਮੋਡ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-interac` ਵੇਖੋ।" msgid "The Interpreter and Its Environment" -msgstr "" +msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਅਤੇ ਇਸਦਾ ਵਾਤਾਵਰਣ" msgid "Source Code Encoding" -msgstr "" +msgstr "ਸਰੋਤ ਕੋਡ ਐਨਕੋਡਿੰਗ" msgid "" "By default, Python source files are treated as encoded in UTF-8. In that " @@ -172,42 +242,60 @@ msgid "" "properly, your editor must recognize that the file is UTF-8, and it must use " "a font that supports all the characters in the file." msgstr "" +"ਮੂਲ ਰੂਪ ਵਿੱਚ Python ਸਰੋਤ ਫ਼ਾਈਲਾਂ ਨੂੰ UTF-8 ਐਨਕੋਡਿੰਗ ਵਾਲੀਆਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਐਨਕੋਡਿੰਗ ਵਿੱਚ " +"ਦੁਨੀਆ ਦੀਆਂ ਜ਼ਿਆਦਾਤਰ ਭਾਸ਼ਾਵਾਂ ਦੇ ਅੱਖਰ string literals, identifiers ਅਤੇ comments ਵਿੱਚ " +"ਇਕੱਠੇ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਹਾਲਾਂਕਿ ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ identifiers ਲਈ ਸਿਰਫ਼ ASCII ਅੱਖਰਾਂ ਦੀ " +"ਵਰਤੋਂ ਕਰਦੀ ਹੈ, ਜੋ ਕਿ portable code ਲਈ ਇੱਕ ਮੰਨੀ ਹੋਈ ਪ੍ਰਥਾ ਹੈ। ਇਨ੍ਹਾਂ ਸਾਰੇ ਅੱਖਰਾਂ ਨੂੰ ਠੀਕ ਤਰ੍ਹਾਂ " +"ਦਿਖਾਉਣ ਲਈ ਤੁਹਾਡਾ editor ਇਹ ਪਛਾਣ ਸਕੇ ਕਿ ਫ਼ਾਈਲ UTF-8 ਵਿੱਚ ਹੈ ਅਤੇ ਉਹ ਅਜਿਹਾ font ਵਰਤੇ ਜੋ " +"ਫ਼ਾਈਲ ਦੇ ਸਾਰੇ ਅੱਖਰਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੋਵੇ।" msgid "" "To declare an encoding other than the default one, a special comment line " "should be added as the *first* line of the file. The syntax is as follows::" msgstr "" +"ਮੂਲ ਐਨਕੋਡਿੰਗ ਤੋਂ ਵੱਖਰੀ ਐਨਕੋਡਿੰਗ ਘੋਸ਼ਿਤ ਕਰਨ ਲਈ, ਫ਼ਾਈਲ ਦੀ *ਪਹਿਲੀ* ਲਾਈਨ ਵਜੋਂ ਇੱਕ ਵਿਸ਼ੇਸ਼ comment " +"line ਜੋੜਨੀ ਚਾਹੀਦੀ ਹੈ। ਇਸਦਾ syntax ਹੇਠਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ::" msgid "# -*- coding: encoding -*-" -msgstr "" +msgstr "# -*- coding: encoding -*-" msgid "where *encoding* is one of the valid :mod:`codecs` supported by Python." msgstr "" +"ਇੱਥੇ *encoding* ਉਹਨਾਂ ਵੈਧ :mod:`codecs` ਵਿੱਚੋਂ ਇੱਕ ਹੈ ਜਿਨ੍ਹਾਂ ਦਾ ਸਮਰਥਨ Python ਕਰਦੀ ਹੈ।" msgid "" "For example, to declare that Windows-1252 encoding is to be used, the first " "line of your source code file should be::" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਇਹ ਘੋਸ਼ਿਤ ਕਰਨ ਲਈ ਕਿ Windows-1252 ਐਨਕੋਡਿੰਗ ਵਰਤੀ ਜਾਣੀ ਹੈ, ਤੁਹਾਡੀ ਸਰੋਤ ਕੋਡ " +"ਫ਼ਾਈਲ ਦੀ ਪਹਿਲੀ ਲਾਈਨ ਹੇਠਾਂ ਦਿੱਤੇ ਅਨੁਸਾਰ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ::" msgid "# -*- coding: cp1252 -*-" -msgstr "" +msgstr "# -*- coding: cp1252 -*-" msgid "" "One exception to the *first line* rule is when the source code starts with " "a :ref:`UNIX \"shebang\" line `. In this case, the encoding " "declaration should be added as the second line of the file. For example::" msgstr "" +"*ਪਹਿਲੀ ਲਾਈਨ* ਵਾਲੇ ਨਿਯਮ ਦਾ ਇੱਕ ਅਪਵਾਦ ਤਦ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਸਰੋਤ ਕੋਡ :ref:`UNIX \"shebang\" " +"line ` ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ ਐਨਕੋਡਿੰਗ ਘੋਸ਼ਣਾ ਫ਼ਾਈਲ ਦੀ ਦੂਜੀ ਲਾਈਨ " +"ਵਜੋਂ ਜੋੜੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ::" msgid "" "#!/usr/bin/env python3\n" "# -*- coding: cp1252 -*-" msgstr "" +"#!/usr/bin/env python3\n" +"# -*- coding: cp1252 -*-" msgid "Footnotes" -msgstr "" +msgstr "ਫੁਟਨੋਟ" msgid "" "On Unix, the Python 3.x interpreter is by default not installed with the " "executable named ``python``, so that it does not conflict with a " "simultaneously installed Python 2.x executable." msgstr "" +"Unix ਉੱਤੇ Python 3.x interpreter ਮੂਲ ਰੂਪ ਵਿੱਚ ``python`` ਨਾਮ ਵਾਲੇ executable ਵਜੋਂ " +"ਇੰਸਟਾਲ ਨਹੀਂ ਹੁੰਦਾ, ਤਾਂ ਜੋ ਇਹ ਇੱਕੋ ਸਮੇਂ ਇੰਸਟਾਲ ਕੀਤੇ Python 2.x executable ਨਾਲ ਟਕਰਾਅ ਨਾ ਕਰੇ।" diff --git a/tutorial/introduction.po b/tutorial/introduction.po index cf9c75d..cd2dd0c 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "An Informal Introduction to Python" -msgstr "" +msgstr "Python ਨਾਲ ਇੱਕ ਗੈਰ-ਰਸਮੀ ਜਾਣ-ਪਛਾਣ" msgid "" "In the following examples, input and output are distinguished by the " @@ -33,12 +33,21 @@ msgid "" "that a secondary prompt on a line by itself in an example means you must " "type a blank line; this is used to end a multi-line command." msgstr "" +"ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ ਵਿੱਚ input ਅਤੇ output ਨੂੰ prompts (:term:`>>>` ਅਤੇ :term:`...`) " +"ਦੀ ਮੌਜੂਦਗੀ ਜਾਂ ਗੈਰ-ਮੌਜੂਦਗੀ ਰਾਹੀਂ ਵੱਖ ਕੀਤਾ ਗਿਆ ਹੈ। ਉਦਾਹਰਨ ਨੂੰ ਦੁਹਰਾਉਣ ਲਈ, ਜਦੋਂ prompt ਦਿਖਾਈ " +"ਦੇਵੇ ਤਾਂ ਉਸ ਤੋਂ ਬਾਅਦ ਆਉਣ ਵਾਲੀ ਹਰ ਚੀਜ਼ ਟਾਈਪ ਕਰੋ। ਜਿਹੜੀਆਂ ਲਾਈਨਾਂ prompt ਨਾਲ ਸ਼ੁਰੂ ਨਹੀਂ ਹੁੰਦੀਆਂ " +"ਉਹ interpreter ਦਾ output ਹਨ। ਧਿਆਨ ਦਿਓ ਕਿ ਜੇਕਰ ਕਿਸੇ ਉਦਾਹਰਨ ਵਿੱਚ ਇੱਕ ਲਾਈਨ ਉੱਤੇ ਸਿਰਫ਼ " +"secondary prompt ਹੋਵੇ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਖਾਲੀ ਲਾਈਨ ਟਾਈਪ ਕਰਨੀ ਪਵੇਗੀ; ਇਸਦੀ ਵਰਤੋਂ multi-" +"line command ਨੂੰ ਖਤਮ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" "You can use the \"Copy\" button (it appears in the upper-right corner when " "hovering over or tapping a code example), which strips prompts and omits " "output, to copy and paste the input lines into your interpreter." msgstr "" +"ਤੁਸੀਂ \"Copy\" ਬਟਨ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ (ਇਹ code example ਉੱਤੇ mouse ਲਿਜਾਣ ਜਾਂ ਉਸਨੂੰ ਛੂਹਣ " +"'ਤੇ ਉੱਪਰ ਸੱਜੇ ਕੋਨੇ ਵਿੱਚ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ)। ਇਹ prompts ਅਤੇ output ਨੂੰ ਹਟਾ ਦਿੰਦਾ ਹੈ ਤਾਂ ਜੋ ਤੁਸੀਂ " +"input ਲਾਈਨਾਂ ਨੂੰ ਆਪਣੇ interpreter ਵਿੱਚ copy-paste ਕਰ ਸਕੋ।" msgid "" "Many of the examples in this manual, even those entered at the interactive " @@ -49,9 +58,15 @@ msgid "" "Since comments are to clarify code and are not interpreted by Python, they " "may be omitted when typing in examples." msgstr "" +"ਇਸ manual ਦੀਆਂ ਕਈ ਉਦਾਹਰਨਾਂ, ਇੱਥੋਂ ਤੱਕ ਕਿ interactive prompt ਵਿੱਚ ਦਿੱਤੀਆਂ ਉਦਾਹਰਨਾਂ ਵੀ, " +"comments ਸ਼ਾਮਲ ਕਰਦੀਆਂ ਹਨ। Python ਵਿੱਚ comment hash ਚਿੰਨ੍ਹ ``#`` ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ ਅਤੇ " +"ਲਾਈਨ ਦੇ ਅੰਤ ਤੱਕ ਚੱਲਦਾ ਹੈ। Comment ਲਾਈਨ ਦੀ ਸ਼ੁਰੂਆਤ ਵਿੱਚ ਜਾਂ whitespace ਜਾਂ code ਤੋਂ ਬਾਅਦ ਆ " +"ਸਕਦਾ ਹੈ, ਪਰ string literal ਦੇ ਅੰਦਰ ਨਹੀਂ। String literal ਦੇ ਅੰਦਰ ਮੌਜੂਦ hash ਚਿੰਨ੍ਹ ਸਿਰਫ਼ " +"ਇੱਕ ਆਮ hash ਚਿੰਨ੍ਹ ਹੁੰਦਾ ਹੈ। ਕਿਉਂਕਿ comments code ਨੂੰ ਸਮਝਾਉਣ ਲਈ ਹੁੰਦੇ ਹਨ ਅਤੇ Python ਦੁਆਰਾ " +"ਵਿਆਖਿਆ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ, ਇਸ ਲਈ ਉਦਾਹਰਨਾਂ ਟਾਈਪ ਕਰਦੇ ਸਮੇਂ ਇਨ੍ਹਾਂ ਨੂੰ ਛੱਡਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "Some examples::" -msgstr "" +msgstr "ਕੁਝ ਉਦਾਹਰਨਾਂ::" msgid "" "# this is the first comment\n" @@ -59,17 +74,23 @@ msgid "" " # ... and now a third!\n" "text = \"# This is not a comment because it's inside quotes.\"" msgstr "" +"# this is the first comment\n" +"spam = 1 # and this is the second comment\n" +" # ... and now a third!\n" +"text = \"# This is not a comment because it's inside quotes.\"" msgid "Using Python as a Calculator" -msgstr "" +msgstr "ਕੈਲਕੂਲੇਟਰ ਵਜੋਂ Python ਦੀ ਵਰਤੋਂ" msgid "" "Let's try some simple Python commands. Start the interpreter and wait for " "the primary prompt, ``>>>``. (It shouldn't take long.)" msgstr "" +"ਆਓ ਕੁਝ ਸਧਾਰਣ Python commands ਅਜ਼ਮਾਈਏ। interpreter ਸ਼ੁਰੂ ਕਰੋ ਅਤੇ ਮੁੱਖ prompt ``>>>`` " +"ਦੀ ਉਡੀਕ ਕਰੋ। (ਇਸ ਵਿੱਚ ਜ਼ਿਆਦਾ ਸਮਾਂ ਨਹੀਂ ਲੱਗਣਾ ਚਾਹੀਦਾ।)" msgid "Numbers" -msgstr "" +msgstr "ਸੰਖਿਆਵਾਂ" msgid "" "The interpreter acts as a simple calculator: you can type an expression into " @@ -77,6 +98,10 @@ msgid "" "operators ``+``, ``-``, ``*`` and ``/`` can be used to perform arithmetic; " "parentheses (``()``) can be used for grouping. For example::" msgstr "" +"interpreter ਇੱਕ ਸਧਾਰਣ calculator ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ: ਤੁਸੀਂ ਇਸ ਵਿੱਚ ਕੋਈ expression ਲਿਖ " +"ਸਕਦੇ ਹੋ ਅਤੇ ਇਹ ਉਸਦਾ ਮੁੱਲ ਦਿਖਾਏਗਾ। Expression ਦਾ syntax ਸਿੱਧਾ ਹੈ: ``+``, ``-``, " +"``*`` ਅਤੇ ``/`` operators ਗਣਿਤੀ ਕਾਰਵਾਈਆਂ ਲਈ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ; brackets ``()`` " +"ਸਮੂਹਬੰਦੀ ਲਈ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> 2 + 2\n" @@ -88,18 +113,33 @@ msgid "" ">>> 8 / 5 # division always returns a floating-point number\n" "1.6" msgstr "" +">>> 2 + 2\n" +"4\n" +">>> 50 - 5*6\n" +"20\n" +">>> (50 - 5*6) / 4\n" +"5.0\n" +">>> 8 / 5 # division always returns a floating-point number\n" +"1.6" msgid "" "The integer numbers (e.g. ``2``, ``4``, ``20``) have type :class:`int`, the " -"ones with a fractional part (e.g. ``5.0``, ``1.6``) have type :class:" -"`float`. We will see more about numeric types later in the tutorial." +"ones with a fractional part (e.g. ``5.0``, ``1.6``) have " +"type :class:`float`. We will see more about numeric types later in the " +"tutorial." msgstr "" +"ਪੂਰਨ ਅੰਕ (ਜਿਵੇਂ ``2``, ``4``, ``20``) ਦੀ ਕਿਸਮ :class:`int` ਹੁੰਦੀ ਹੈ, ਜਦਕਿ ਭਿੰਨ ਭਾਗ " +"ਵਾਲੀਆਂ ਸੰਖਿਆਵਾਂ (ਜਿਵੇਂ ``5.0``, ``1.6``) ਦੀ ਕਿਸਮ :class:`float` ਹੁੰਦੀ ਹੈ। ਅਸੀਂ " +"tutorial ਵਿੱਚ ਅੱਗੇ numeric types ਬਾਰੇ ਹੋਰ ਜਾਣਾਂਗੇ।" msgid "" "Division (``/``) always returns a float. To do :term:`floor division` and " "get an integer result you can use the ``//`` operator; to calculate the " "remainder you can use ``%``::" msgstr "" +"Division (``/``) ਹਮੇਸ਼ਾਂ ਇੱਕ float ਵਾਪਸ ਕਰਦਾ ਹੈ। :term:`floor division` ਕਰਨ ਅਤੇ " +"ਪੂਰਨ ਅੰਕ ਨਤੀਜਾ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਤੁਸੀਂ ``//`` operator ਵਰਤ ਸਕਦੇ ਹੋ; ਬਾਕੀ ਕੱਢਣ ਲਈ ``%`` " +"ਵਰਤ ਸਕਦੇ ਹੋ::" msgid "" ">>> 17 / 3 # classic division returns a float\n" @@ -112,11 +152,20 @@ msgid "" ">>> 5 * 3 + 2 # floored quotient * divisor + remainder\n" "17" msgstr "" +">>> 17 / 3 # classic division returns a float\n" +"5.666666666666667\n" +">>>\n" +">>> 17 // 3 # floor division discards the fractional part\n" +"5\n" +">>> 17 % 3 # the % operator returns the remainder of the division\n" +"2\n" +">>> 5 * 3 + 2 # floored quotient * divisor + remainder\n" +"17" msgid "" "With Python, it is possible to use the ``**`` operator to calculate powers " "[#]_::" -msgstr "" +msgstr "ਪਾਇਥਨ ਵਿੱਚ ਘਾਤਾਂ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ``**`` operator ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ [#]_::" msgid "" ">>> 5 ** 2 # 5 squared\n" @@ -124,11 +173,17 @@ msgid "" ">>> 2 ** 7 # 2 to the power of 7\n" "128" msgstr "" +">>> 5 ** 2 # 5 squared\n" +"25\n" +">>> 2 ** 7 # 2 to the power of 7\n" +"128" msgid "" "The equal sign (``=``) is used to assign a value to a variable. Afterwards, " "no result is displayed before the next interactive prompt::" msgstr "" +"ਬਰਾਬਰ ਦਾ ਚਿੰਨ੍ਹ (``=``) ਕਿਸੇ variable ਨੂੰ ਮੁੱਲ ਦੇਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਤੋਂ ਬਾਅਦ ਅਗਲੇ " +"interactive prompt ਤੋਂ ਪਹਿਲਾਂ ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ ਦਿਖਾਇਆ ਜਾਂਦਾ::" msgid "" ">>> width = 20\n" @@ -136,11 +191,17 @@ msgid "" ">>> width * height\n" "900" msgstr "" +">>> width = 20\n" +">>> height = 5 * 9\n" +">>> width * height\n" +"900" msgid "" "If a variable is not \"defined\" (assigned a value), trying to use it will " "give you an error::" msgstr "" +"ਜੇਕਰ ਕੋਈ variable \"defined\" ਨਹੀਂ ਹੈ (ਅਰਥਾਤ ਉਸਨੂੰ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਦਿੱਤਾ ਗਿਆ), ਤਾਂ ਉਸਦੀ " +"ਵਰਤੋਂ ਕਰਨ 'ਤੇ ਗਲਤੀ ਮਿਲੇਗੀ::" msgid "" ">>> n # try to access an undefined variable\n" @@ -148,22 +209,33 @@ msgid "" " File \"\", line 1, in \n" "NameError: name 'n' is not defined" msgstr "" +">>> n # try to access an undefined variable\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"NameError: name 'n' is not defined" msgid "" "There is full support for floating point; operators with mixed type operands " "convert the integer operand to floating point::" msgstr "" +"Floating point ਸੰਖਿਆਵਾਂ ਲਈ ਪੂਰਾ ਸਮਰਥਨ ਉਪਲਬਧ ਹੈ; ਮਿਲੀ-ਜੁਲੀ ਕਿਸਮਾਂ ਵਾਲੇ operands ਦੇ " +"ਨਾਲ operators ਪੂਰਨ ਅੰਕ operand ਨੂੰ floating point ਵਿੱਚ ਬਦਲ ਦਿੰਦੇ ਹਨ::" msgid "" ">>> 4 * 3.75 - 1\n" "14.0" msgstr "" +">>> 4 * 3.75 - 1\n" +"14.0" msgid "" "In interactive mode, the last printed expression is assigned to the variable " "``_``. This means that when you are using Python as a desk calculator, it " "is somewhat easier to continue calculations, for example::" msgstr "" +"Interactive mode ਵਿੱਚ, ਆਖਰੀ ਛਪੀ ਹੋਈ expression ਨੂੰ variable ``_`` ਵਿੱਚ ਸੰਭਾਲਿਆ " +"ਜਾਂਦਾ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਜਦੋਂ ਤੁਸੀਂ Python ਨੂੰ ਇੱਕ desk calculator ਵਜੋਂ ਵਰਤ ਰਹੇ ਹੁੰਦੇ ਹੋ, ਤਾਂ " +"ਗਣਨਾਵਾਂ ਜਾਰੀ ਰੱਖਣਾ ਕੁਝ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ, ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> tax = 12.5 / 100\n" @@ -175,23 +247,39 @@ msgid "" ">>> round(_, 2)\n" "113.06" msgstr "" +">>> tax = 12.5 / 100\n" +">>> price = 100.50\n" +">>> price * tax\n" +"12.5625\n" +">>> price + _\n" +"113.0625\n" +">>> round(_, 2)\n" +"113.06" msgid "" "This variable should be treated as read-only by the user. Don't explicitly " "assign a value to it --- you would create an independent local variable with " "the same name masking the built-in variable with its magic behavior." msgstr "" +"ਇਸ variable ਨੂੰ ਵਰਤੋਂਕਾਰ ਵੱਲੋਂ ਕੇਵਲ ਪੜ੍ਹਨਯੋਗ ਸਮਝਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਸਨੂੰ ਖੁਦ ਕੋਈ ਮੁੱਲ ਨਾ ਦਿਓ " +"--- ਨਹੀਂ ਤਾਂ ਇਸੇ ਨਾਮ ਵਾਲਾ ਇੱਕ ਸੁਤੰਤਰ local variable ਬਣ ਜਾਵੇਗਾ ਜੋ built-in variable ਦੇ " +"ਖਾਸ ਵਿਹਾਰ ਨੂੰ ਓਹਲੇ ਕਰ ਦੇਵੇਗਾ।" msgid "" "In addition to :class:`int` and :class:`float`, Python supports other types " -"of numbers, such as :class:`~decimal.Decimal` and :class:`~fractions." -"Fraction`. Python also has built-in support for :ref:`complex numbers " -"`, and uses the ``j`` or ``J`` suffix to indicate the " -"imaginary part (e.g. ``3+5j``)." +"of numbers, such as :class:`~decimal.Decimal` " +"and :class:`~fractions.Fraction`. Python also has built-in support " +"for :ref:`complex numbers `, and uses the ``j`` or ``J`` " +"suffix to indicate the imaginary part (e.g. ``3+5j``)." msgstr "" +":class:`int` ਅਤੇ :class:`float` ਤੋਂ ਇਲਾਵਾ, Python ਹੋਰ ਸੰਖਿਆਤਮਕ ਕਿਸਮਾਂ ਦਾ ਵੀ ਸਮਰਥਨ " +"ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ :class:`~decimal.Decimal` ਅਤੇ :class:`~fractions.Fraction`। " +"Python ਵਿੱਚ :ref:`complex numbers ` ਲਈ ਵੀ built-in ਸਮਰਥਨ ਹੈ ਅਤੇ " +"imaginary ਭਾਗ ਦਰਸਾਉਣ ਲਈ ``j`` ਜਾਂ ``J`` suffix ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ (ਉਦਾਹਰਨ: " +"``3+5j``)।" msgid "Text" -msgstr "" +msgstr "ਪਾਠ" msgid "" "Python can manipulate text (represented by type :class:`str`, so-called " @@ -200,6 +288,12 @@ msgid "" "\"``Yay! :)``\". They can be enclosed in single quotes (``'...'``) or double " "quotes (``\"...\"``) with the same result [#]_." msgstr "" +"Python ਸੰਖਿਆਵਾਂ ਦੇ ਨਾਲ-ਨਾਲ ਪਾਠ (text) ਨੂੰ ਵੀ ਸੰਭਾਲ ਸਕਦਾ ਹੈ, ਜਿਸਨੂੰ :class:`str` ਕਿਸਮ " +"ਰਾਹੀਂ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਜਿਸਨੂੰ \"strings\" ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਅੱਖਰ \"``!``\", " +"ਸ਼ਬਦ \"``rabbit``\", ਨਾਮ \"``Paris``\", ਵਾਕ \"``Got your back.``\" ਆਦਿ ਸ਼ਾਮਲ " +"ਹਨ। \"``Yay! :)``\" ਵੀ ਇੱਕ string ਹੈ। ਇਨ੍ਹਾਂ ਨੂੰ single quotes (``'...'``) ਜਾਂ " +"double quotes (``\"...\"``) ਵਿੱਚ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਨਤੀਜਾ ਇੱਕੋ ਜਿਹਾ ਰਹਿੰਦਾ ਹੈ " +"[#]_." msgid "" ">>> 'spam eggs' # single quotes\n" @@ -209,11 +303,19 @@ msgid "" ">>> '1975' # digits and numerals enclosed in quotes are also strings\n" "'1975'" msgstr "" +">>> 'spam eggs' # single quotes\n" +"'spam eggs'\n" +">>> \"Paris rabbit got your back :)! Yay!\" # double quotes\n" +"'Paris rabbit got your back :)! Yay!'\n" +">>> '1975' # digits and numerals enclosed in quotes are also strings\n" +"'1975'" msgid "" "To quote a quote, we need to \"escape\" it, by preceding it with ``\\``. " "Alternatively, we can use the other type of quotation marks::" msgstr "" +"ਉਧਰਣ ਚਿੰਨ੍ਹਾਂ ਨੂੰ string ਦੇ ਅੰਦਰ ਲਿਖਣ ਲਈ ਸਾਨੂੰ ਉਹਨਾਂ ਨੂੰ ``\\`` ਨਾਲ \"escape\" ਕਰਨਾ ਪੈਂਦਾ " +"ਹੈ। ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ, ਅਸੀਂ ਦੂਜੇ ਕਿਸਮ ਦੇ quotation marks ਵੀ ਵਰਤ ਸਕਦੇ ਹਾਂ::" msgid "" ">>> 'doesn\\'t' # use \\' to escape the single quote...\n" @@ -227,6 +329,16 @@ msgid "" ">>> '\"Isn\\'t,\" they said.'\n" "'\"Isn\\'t,\" they said.'" msgstr "" +">>> 'doesn\\'t' # use \\' to escape the single quote...\n" +"\"doesn't\"\n" +">>> \"doesn't\" # ...or use double quotes instead\n" +"\"doesn't\"\n" +">>> '\"Yes,\" they said.'\n" +"'\"Yes,\" they said.'\n" +">>> \"\\\"Yes,\\\" they said.\"\n" +"'\"Yes,\" they said.'\n" +">>> '\"Isn\\'t,\" they said.'\n" +"'\"Isn\\'t,\" they said.'" msgid "" "In the Python shell, the string definition and output string can look " @@ -234,6 +346,9 @@ msgid "" "omitting the enclosing quotes and by printing escaped and special " "characters::" msgstr "" +"ਪਾਇਥਨ shell ਵਿੱਚ string ਦੀ ਪਰਿਭਾਸ਼ਾ ਅਤੇ ਦਿਖਾਈ ਗਈ output string ਵੱਖਰੀ ਲੱਗ ਸਕਦੀ " +"ਹੈ। :func:`print` ਫੰਕਸ਼ਨ enclosing quotes ਹਟਾ ਕੇ ਅਤੇ escaped ਜਾਂ special " +"characters ਨੂੰ ਦਰਸਾ ਕੇ ਹੋਰ ਪੜ੍ਹਨਯੋਗ output ਦਿੰਦਾ ਹੈ::" msgid "" ">>> s = 'First line.\\nSecond line.' # \\n means newline\n" @@ -244,12 +359,21 @@ msgid "" "First line.\n" "Second line." msgstr "" +">>> s = 'First line.\\nSecond line.' # \\n means newline\n" +">>> s # without print(), special characters are included in the string\n" +"'First line.\\nSecond line.'\n" +">>> print(s) # with print(), special characters are interpreted, so \\n " +"produces new line\n" +"First line.\n" +"Second line." msgid "" "If you don't want characters prefaced by ``\\`` to be interpreted as special " "characters, you can use *raw strings* by adding an ``r`` before the first " "quote::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ ਕਿ ``\\`` ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਅੱਖਰ special characters ਵਜੋਂ ਸਮਝੇ ਜਾਣ, ਤਾਂ " +"ਪਹਿਲੇ quote ਤੋਂ ਪਹਿਲਾਂ ``r`` ਜੋੜ ਕੇ *raw strings* ਵਰਤ ਸਕਦੇ ਹੋ::" msgid "" ">>> print('C:\\this\\name') # here \\t means tab, \\n means newline\n" @@ -258,12 +382,20 @@ msgid "" ">>> print(r'C:\\this\\name') # note the r before the quote\n" "C:\\this\\name" msgstr "" +">>> print('C:\\this\\name') # here \\t means tab, \\n means newline\n" +"C: his\n" +"ame\n" +">>> print(r'C:\\this\\name') # note the r before the quote\n" +"C:\\this\\name" msgid "" "There is one subtle aspect to raw strings: a raw string may not end in an " "odd number of ``\\`` characters; see :ref:`the FAQ entry ` for more information and workarounds." msgstr "" +"Raw strings ਨਾਲ ਇੱਕ ਸੁਖਮ ਗੱਲ ਜੁੜੀ ਹੋਈ ਹੈ: ਕੋਈ raw string ``\\`` ਅੱਖਰਾਂ ਦੀ ਵਿਸਮ ਗਿਣਤੀ " +"ਨਾਲ ਸਮਾਪਤ ਨਹੀਂ ਹੋ ਸਕਦੀ। ਹੋਰ ਜਾਣਕਾਰੀ ਅਤੇ ਹੱਲਾਂ ਲਈ :ref:`the FAQ entry ` ਵੇਖੋ।" msgid "" "String literals can span multiple lines. One way is using triple-quotes: " @@ -272,6 +404,10 @@ msgid "" "adding a ``\\`` at the end of the line. In the following example, the " "initial newline is not included::" msgstr "" +"String literals ਕਈ ਲਾਈਨਾਂ ਵਿੱਚ ਫੈਲ ਸਕਦੀਆਂ ਹਨ। ਇਸਦਾ ਇੱਕ ਤਰੀਕਾ triple-quotes ਵਰਤਣਾ " +"ਹੈ: ``\"\"\"...\"\"\"`` ਜਾਂ ``'''...'''``। End-of-line ਅੱਖਰ ਆਪਣੇ ਆਪ string ਵਿੱਚ " +"ਸ਼ਾਮਲ ਹੋ ਜਾਂਦੇ ਹਨ, ਪਰ ਲਾਈਨ ਦੇ ਅੰਤ ਵਿੱਚ ``\\`` ਜੋੜ ਕੇ ਇਸਨੂੰ ਰੋਕਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੀ " +"ਉਦਾਹਰਨ ਵਿੱਚ ਸ਼ੁਰੂਆਤੀ newline ਸ਼ਾਮਲ ਨਹੀਂ ਹੁੰਦੀ::" msgid "" ">>> print(\"\"\"\\\n" @@ -285,31 +421,52 @@ msgid "" "\n" ">>>" msgstr "" +">>> print(\"\"\"\\\n" +"... Usage: thingy [OPTIONS]\n" +"... -h Display this usage message\n" +"... -H hostname Hostname to connect to\n" +"... \"\"\")\n" +"Usage: thingy [OPTIONS]\n" +" -h Display this usage message\n" +" -H hostname Hostname to connect to\n" +"\n" +">>>" msgid "" "Strings can be concatenated (glued together) with the ``+`` operator, and " "repeated with ``*``::" msgstr "" +"Strings ਨੂੰ ``+`` operator ਨਾਲ ਜੋੜਿਆ (concatenate) ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ``*`` ਨਾਲ " +"ਦੁਹਰਾਇਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> # 3 times 'un', followed by 'ium'\n" ">>> 3 * 'un' + 'ium'\n" "'unununium'" msgstr "" +">>> # 3 times 'un', followed by 'ium'\n" +">>> 3 * 'un' + 'ium'\n" +"'unununium'" msgid "" "Two or more *string literals* (i.e. the ones enclosed between quotes) next " "to each other are automatically concatenated. ::" msgstr "" +"ਦੋ ਜਾਂ ਵੱਧ *string literals* (ਅਰਥਾਤ quotes ਦੇ ਅੰਦਰ ਲਿਖੀਆਂ strings) ਜੇ ਇਕ ਦੂਜੇ ਦੇ ਕੋਲ ਹੋਣ " +"ਤਾਂ ਉਹ ਆਪਣੇ ਆਪ ਜੋੜ ਦਿੱਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ::" msgid "" ">>> 'Py' 'thon'\n" "'Python'" msgstr "" +">>> 'Py' 'thon'\n" +"'Python'" msgid "" "This feature is particularly useful when you want to break long strings::" msgstr "" +"ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਉਸ ਵੇਲੇ ਲਾਭਦਾਇਕ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਲੰਬੀਆਂ strings ਨੂੰ ਕਈ ਲਾਈਨਾਂ ਵਿੱਚ " +"ਵੰਡਣਾ ਚਾਹੁੰਦੇ ਹੋ::" msgid "" ">>> text = ('Put several strings within parentheses '\n" @@ -317,10 +474,15 @@ msgid "" ">>> text\n" "'Put several strings within parentheses to have them joined together.'" msgstr "" +">>> text = ('Put several strings within parentheses '\n" +"... 'to have them joined together.')\n" +">>> text\n" +"'Put several strings within parentheses to have them joined together.'" msgid "" "This only works with two literals though, not with variables or expressions::" msgstr "" +"ਹਾਲਾਂਕਿ ਇਹ ਸਿਰਫ਼ literals ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ, variables ਜਾਂ expressions ਨਾਲ ਨਹੀਂ::" msgid "" ">>> prefix = 'Py'\n" @@ -335,21 +497,38 @@ msgid "" " ^^^^^\n" "SyntaxError: invalid syntax" msgstr "" +">>> prefix = 'Py'\n" +">>> prefix 'thon' # can't concatenate a variable and a string literal\n" +" File \"\", line 1\n" +" prefix 'thon'\n" +" ^^^^^^\n" +"SyntaxError: invalid syntax\n" +">>> ('un' * 3) 'ium'\n" +" File \"\", line 1\n" +" ('un' * 3) 'ium'\n" +" ^^^^^\n" +"SyntaxError: invalid syntax" msgid "" "If you want to concatenate variables or a variable and a literal, use ``+``::" msgstr "" +"ਜੇ ਤੁਸੀਂ variables ਜਾਂ ਕਿਸੇ variable ਅਤੇ literal ਨੂੰ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ``+`` ਵਰਤੋ::" msgid "" ">>> prefix + 'thon'\n" "'Python'" msgstr "" +">>> prefix + 'thon'\n" +"'Python'" msgid "" "Strings can be *indexed* (subscripted), with the first character having " "index 0. There is no separate character type; a character is simply a string " "of size one::" msgstr "" +"Strings ਨੂੰ *indexed* (subscripted) ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿੱਥੇ ਪਹਿਲੇ ਅੱਖਰ ਦਾ index 0 " +"ਹੁੰਦਾ ਹੈ। ਕੋਈ ਵੱਖਰੀ character type ਨਹੀਂ ਹੁੰਦੀ; ਇੱਕ character ਅਸਲ ਵਿੱਚ ਲੰਬਾਈ ਇੱਕ ਵਾਲੀ " +"string ਹੀ ਹੁੰਦੀ ਹੈ::" msgid "" ">>> word = 'Python'\n" @@ -358,10 +537,15 @@ msgid "" ">>> word[5] # character in position 5\n" "'n'" msgstr "" +">>> word = 'Python'\n" +">>> word[0] # character in position 0\n" +"'P'\n" +">>> word[5] # character in position 5\n" +"'n'" msgid "" "Indices may also be negative numbers, to start counting from the right::" -msgstr "" +msgstr "ਸੱਜੇ ਪਾਸੇ ਤੋਂ ਗਿਣਤੀ ਸ਼ੁਰੂ ਕਰਨ ਲਈ indices ਨਕਾਰਾਤਮਕ ਵੀ ਹੋ ਸਕਦੇ ਹਨ::" msgid "" ">>> word[-1] # last character\n" @@ -371,15 +555,25 @@ msgid "" ">>> word[-6]\n" "'P'" msgstr "" +">>> word[-1] # last character\n" +"'n'\n" +">>> word[-2] # second-last character\n" +"'o'\n" +">>> word[-6]\n" +"'P'" msgid "Note that since -0 is the same as 0, negative indices start from -1." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ -0 ਅਤੇ 0 ਇੱਕੋ ਹੀ ਹਨ, ਇਸ ਲਈ negative indices ਦੀ ਸ਼ੁਰੂਆਤ -1 ਤੋਂ ਹੁੰਦੀ ਹੈ।" msgid "" "In addition to indexing, *slicing* is also supported. While indexing is " "used to obtain individual characters, *slicing* allows you to obtain a " "substring::" msgstr "" +"Indexing ਤੋਂ ਇਲਾਵਾ, *slicing* ਦਾ ਵੀ ਸਮਰਥਨ ਹੈ। ਜਿੱਥੇ indexing ਵੱਖ-ਵੱਖ characters " +"ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ, ਉੱਥੇ *slicing* ਤੁਹਾਨੂੰ substring ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ " +"ਹੈ::" msgid "" ">>> word[0:2] # characters from position 0 (included) to 2 (excluded)\n" @@ -387,11 +581,17 @@ msgid "" ">>> word[2:5] # characters from position 2 (included) to 5 (excluded)\n" "'tho'" msgstr "" +">>> word[0:2] # characters from position 0 (included) to 2 (excluded)\n" +"'Py'\n" +">>> word[2:5] # characters from position 2 (included) to 5 (excluded)\n" +"'tho'" msgid "" "Slice indices have useful defaults; an omitted first index defaults to zero, " "an omitted second index defaults to the size of the string being sliced. ::" msgstr "" +"Slice indices ਲਈ ਲਾਭਦਾਇਕ ਮੂਲ ਮੁੱਲ ਹੁੰਦੇ ਹਨ; ਜੇ ਪਹਿਲਾ index ਨਾ ਦਿੱਤਾ ਜਾਵੇ ਤਾਂ ਉਹ 0 ਮੰਨਿਆ " +"ਜਾਂਦਾ ਹੈ, ਅਤੇ ਜੇ ਦੂਜਾ index ਨਾ ਦਿੱਤਾ ਜਾਵੇ ਤਾਂ ਉਹ string ਦੀ ਲੰਬਾਈ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ::" msgid "" ">>> word[:2] # character from the beginning to position 2 (excluded)\n" @@ -401,11 +601,19 @@ msgid "" ">>> word[-2:] # characters from the second-last (included) to the end\n" "'on'" msgstr "" +">>> word[:2] # character from the beginning to position 2 (excluded)\n" +"'Py'\n" +">>> word[4:] # characters from position 4 (included) to the end\n" +"'on'\n" +">>> word[-2:] # characters from the second-last (included) to the end\n" +"'on'" msgid "" "Note how the start is always included, and the end always excluded. This " "makes sure that ``s[:i] + s[i:]`` is always equal to ``s``::" msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਸ਼ੁਰੂਆਤੀ ਸਥਾਨ ਹਮੇਸ਼ਾਂ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ ਅਤੇ ਅੰਤਿਮ ਸਥਾਨ ਹਮੇਸ਼ਾਂ ਬਾਹਰ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ। " +"ਇਸ ਨਾਲ ਇਹ ਯਕੀਨੀ ਬਣਦਾ ਹੈ ਕਿ ``s[:i] + s[i:]`` ਹਮੇਸ਼ਾਂ ``s`` ਦੇ ਬਰਾਬਰ ਰਹੇ::" msgid "" ">>> word[:2] + word[2:]\n" @@ -413,6 +621,10 @@ msgid "" ">>> word[:4] + word[4:]\n" "'Python'" msgstr "" +">>> word[:2] + word[2:]\n" +"'Python'\n" +">>> word[:4] + word[4:]\n" +"'Python'" msgid "" "One way to remember how slices work is to think of the indices as pointing " @@ -420,6 +632,10 @@ msgid "" "Then the right edge of the last character of a string of *n* characters has " "index *n*, for example::" msgstr "" +"Slices ਕਿਵੇਂ ਕੰਮ ਕਰਦੀਆਂ ਹਨ ਇਹ ਯਾਦ ਰੱਖਣ ਦਾ ਇੱਕ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ indices ਨੂੰ ਅੱਖਰਾਂ *ਦੇ " +"ਵਿਚਕਾਰ* ਦਰਸਾਉਣ ਵਾਲੇ ਨਿਸ਼ਾਨਾਂ ਵਜੋਂ ਸੋਚਿਆ ਜਾਵੇ। ਪਹਿਲੇ ਅੱਖਰ ਦੇ ਖੱਬੇ ਕਿਨਾਰੇ ਦਾ index 0 ਹੁੰਦਾ ਹੈ। " +"ਫਿਰ *n* ਅੱਖਰਾਂ ਵਾਲੀ string ਦੇ ਆਖਰੀ ਅੱਖਰ ਦੇ ਸੱਜੇ ਕਿਨਾਰੇ ਦਾ index *n* ਹੁੰਦਾ ਹੈ, ਉਦਾਹਰਨ " +"ਲਈ::" msgid "" " +---+---+---+---+---+---+\n" @@ -428,6 +644,11 @@ msgid "" " 0 1 2 3 4 5 6\n" "-6 -5 -4 -3 -2 -1" msgstr "" +" +---+---+---+---+---+---+\n" +" | P | y | t | h | o | n |\n" +" +---+---+---+---+---+---+\n" +" 0 1 2 3 4 5 6\n" +"-6 -5 -4 -3 -2 -1" msgid "" "The first row of numbers gives the position of the indices 0...6 in the " @@ -435,15 +656,20 @@ msgid "" "from *i* to *j* consists of all characters between the edges labeled *i* and " "*j*, respectively." msgstr "" +"ਅੰਕਾਂ ਦੀ ਪਹਿਲੀ ਕਤਾਰ string ਵਿੱਚ 0...6 indices ਦੀ ਸਥਿਤੀ ਦਿਖਾਉਂਦੀ ਹੈ; ਦੂਜੀ ਕਤਾਰ " +"ਸੰਬੰਧਿਤ negative indices ਦਿਖਾਉਂਦੀ ਹੈ। *i* ਤੋਂ *j* ਤੱਕ ਦੀ slice ਵਿੱਚ *i* ਅਤੇ *j* ਨਾਲ " +"ਨਿਸ਼ਾਨਿਤ ਕਿਨਾਰਿਆਂ ਦੇ ਵਿਚਕਾਰ ਆਉਣ ਵਾਲੇ ਸਾਰੇ ਅੱਖਰ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" msgid "" "For non-negative indices, the length of a slice is the difference of the " "indices, if both are within bounds. For example, the length of " "``word[1:3]`` is 2." msgstr "" +"ਗੈਰ-ਨਕਾਰਾਤਮਕ indices ਲਈ, ਜੇ ਦੋਵੇਂ ਸੀਮਾ ਦੇ ਅੰਦਰ ਹੋਣ ਤਾਂ slice ਦੀ ਲੰਬਾਈ indices ਦੇ ਅੰਤਰ ਦੇ " +"ਬਰਾਬਰ ਹੁੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, ``word[1:3]`` ਦੀ ਲੰਬਾਈ 2 ਹੈ।" msgid "Attempting to use an index that is too large will result in an error::" -msgstr "" +msgstr "ਬਹੁਤ ਵੱਡਾ index ਵਰਤਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਨਾਲ ਗਲਤੀ ਆਵੇਗੀ::" msgid "" ">>> word[42] # the word only has 6 characters\n" @@ -451,11 +677,16 @@ msgid "" " File \"\", line 1, in \n" "IndexError: string index out of range" msgstr "" +">>> word[42] # the word only has 6 characters\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"IndexError: string index out of range" msgid "" "However, out of range slice indexes are handled gracefully when used for " "slicing::" msgstr "" +"ਹਾਲਾਂਕਿ slicing ਲਈ ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਵਾਲੇ slice indices ਨੂੰ ਸੁਚੱਜੇ ਢੰਗ ਨਾਲ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ::" msgid "" ">>> word[4:42]\n" @@ -463,11 +694,17 @@ msgid "" ">>> word[42:]\n" "''" msgstr "" +">>> word[4:42]\n" +"'on'\n" +">>> word[42:]\n" +"''" msgid "" "Python strings cannot be changed --- they are :term:`immutable`. Therefore, " "assigning to an indexed position in the string results in an error::" msgstr "" +"Python strings ਨੂੰ ਬਦਲਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ — ਉਹ :term:`immutable` ਹੁੰਦੀਆਂ ਹਨ। ਇਸ ਲਈ " +"string ਦੇ ਕਿਸੇ indexed ਸਥਾਨ ਉੱਤੇ assignment ਕਰਨ ਨਾਲ error ਆਉਂਦੀ ਹੈ::" msgid "" ">>> word[0] = 'J'\n" @@ -479,9 +716,17 @@ msgid "" " File \"\", line 1, in \n" "TypeError: 'str' object does not support item assignment" msgstr "" +">>> word[0] = 'J'\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: 'str' object does not support item assignment\n" +">>> word[2:] = 'py'\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: 'str' object does not support item assignment" msgid "If you need a different string, you should create a new one::" -msgstr "" +msgstr "ਜੇ ਤੁਹਾਨੂੰ ਵੱਖਰੀ string ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੱਕ ਨਵੀਂ string ਬਣਾਉਣੀ ਚਾਹੀਦੀ ਹੈ::" msgid "" ">>> 'J' + word[1:]\n" @@ -489,54 +734,65 @@ msgid "" ">>> word[:2] + 'py'\n" "'Pypy'" msgstr "" +">>> 'J' + word[1:]\n" +"'Jython'\n" +">>> word[:2] + 'py'\n" +"'Pypy'" msgid "The built-in function :func:`len` returns the length of a string::" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ :func:`len` ਸਟਰਿੰਗ ਦੀ ਲੰਬਾਈ ਵਾਪਸ ਕਰਦਾ ਹੈ::" msgid "" ">>> s = 'supercalifragilisticexpialidocious'\n" ">>> len(s)\n" "34" msgstr "" +">>> s = 'supercalifragilisticexpialidocious'\n" +">>> len(s)\n" +"34" msgid ":ref:`textseq`" -msgstr "" +msgstr ":ref:`textseq`" msgid "" "Strings are examples of *sequence types*, and support the common operations " "supported by such types." msgstr "" +"ਸਟਰਿੰਗਾਂ *sequence types* ਦੀਆਂ ਉਦਾਹਰਨਾਂ ਹਨ ਅਤੇ ਅਜਿਹੀਆਂ ਕਿਸਮਾਂ ਦੀਆਂ ਆਮ ਕਾਰਵਾਈਆਂ ਦਾ " +"ਸਮਰਥਨ ਕਰਦੀਆਂ ਹਨ।" msgid ":ref:`string-methods`" -msgstr "" +msgstr ":ref:`string-methods`" msgid "" "Strings support a large number of methods for basic transformations and " "searching." -msgstr "" +msgstr "ਸਟਰਿੰਗਾਂ ਮੂਲ ਰੂਪਾਂਤਰਨ ਅਤੇ ਖੋਜ ਲਈ ਬਹੁਤ ਸਾਰੇ ਮੈਥਡਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦੀਆਂ ਹਨ।" msgid ":ref:`f-strings`" -msgstr "" +msgstr ":ref:`f-strings`" msgid "String literals that have embedded expressions." -msgstr "" +msgstr "ਅਜਿਹੀਆਂ string literals ਜਿਨ੍ਹਾਂ ਵਿੱਚ expressions ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" msgid ":ref:`formatstrings`" -msgstr "" +msgstr ":ref:`formatstrings`" msgid "Information about string formatting with :meth:`str.format`." -msgstr "" +msgstr ":meth:`str.format` ਨਾਲ ਸਟਰਿੰਗ ਫਾਰਮੈਟਿੰਗ ਬਾਰੇ ਜਾਣਕਾਰੀ।" msgid ":ref:`old-string-formatting`" -msgstr "" +msgstr ":ref:`old-string-formatting`" msgid "" "The old formatting operations invoked when strings are the left operand of " "the ``%`` operator are described in more detail here." msgstr "" +"ਜਦੋਂ ਸਟਰਿੰਗਾਂ ``%`` ਓਪਰੇਟਰ ਦੇ ਖੱਬੇ ਓਪਰੇਂਡ ਵਜੋਂ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਤਾਂ ਪੁਰਾਣੀਆਂ ਫਾਰਮੈਟਿੰਗ ਕਾਰਵਾਈਆਂ " +"ਇੱਥੇ ਹੋਰ ਵਿਸਥਾਰ ਨਾਲ ਸਮਝਾਈਆਂ ਗਈਆਂ ਹਨ।" msgid "Lists" -msgstr "" +msgstr "ਸੂਚੀਆਂ" msgid "" "Python knows a number of *compound* data types, used to group together other " @@ -544,17 +800,26 @@ msgid "" "comma-separated values (items) between square brackets. Lists might contain " "items of different types, but usually the items all have the same type. ::" msgstr "" +"Python ਕਈ *compound* ਡਾਟਾ ਕਿਸਮਾਂ ਨੂੰ ਜਾਣਦਾ ਹੈ, ਜੋ ਹੋਰ ਮੁੱਲਾਂ ਨੂੰ ਇਕੱਠੇ ਸਮੂਹਬੱਧ ਕਰਨ ਲਈ ਵਰਤੀਆਂ " +"ਜਾਂਦੀਆਂ ਹਨ। ਸਭ ਤੋਂ ਲਚਕੀਲੀ *list* ਹੈ, ਜਿਸ ਨੂੰ square brackets ਦੇ ਅੰਦਰ ਕਾਮਿਆਂ ਨਾਲ ਵੱਖ " +"ਕੀਤੀਆਂ ਮੁੱਲਾਂ (items) ਦੀ ਸੂਚੀ ਵਜੋਂ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ। Lists ਵਿੱਚ ਵੱਖ-ਵੱਖ ਕਿਸਮਾਂ ਦੇ items ਹੋ " +"ਸਕਦੇ ਹਨ, ਪਰ ਆਮ ਤੌਰ 'ਤੇ ਸਾਰੇ items ਇੱਕੋ ਕਿਸਮ ਦੇ ਹੁੰਦੇ ਹਨ। ::" msgid "" ">>> squares = [1, 4, 9, 16, 25]\n" ">>> squares\n" "[1, 4, 9, 16, 25]" msgstr "" +">>> squares = [1, 4, 9, 16, 25]\n" +">>> squares\n" +"[1, 4, 9, 16, 25]" msgid "" "Like strings (and all other built-in :term:`sequence` types), lists can be " "indexed and sliced::" msgstr "" +"ਸਟਰਿੰਗਾਂ (ਅਤੇ ਹੋਰ ਸਾਰੇ built-in :term:`sequence` ਕਿਸਮਾਂ) ਦੀ ਤਰ੍ਹਾਂ, ਸੂਚੀਆਂ ਨੂੰ ਵੀ index " +"ਅਤੇ slice ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> squares[0] # indexing returns the item\n" @@ -564,19 +829,29 @@ msgid "" ">>> squares[-3:] # slicing returns a new list\n" "[9, 16, 25]" msgstr "" +">>> squares[0] # indexing returns the item\n" +"1\n" +">>> squares[-1]\n" +"25\n" +">>> squares[-3:] # slicing returns a new list\n" +"[9, 16, 25]" msgid "Lists also support operations like concatenation::" -msgstr "" +msgstr "ਸੂਚੀਆਂ concatenation ਵਰਗੀਆਂ ਕਾਰਵਾਈਆਂ ਦਾ ਵੀ ਸਮਰਥਨ ਕਰਦੀਆਂ ਹਨ::" msgid "" ">>> squares + [36, 49, 64, 81, 100]\n" "[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]" msgstr "" +">>> squares + [36, 49, 64, 81, 100]\n" +"[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]" msgid "" "Unlike strings, which are :term:`immutable`, lists are a :term:`mutable` " "type, i.e. it is possible to change their content::" msgstr "" +"ਸਟਰਿੰਗਾਂ ਦੇ ਉਲਟ, ਜੋ :term:`immutable` ਹੁੰਦੀਆਂ ਹਨ, ਸੂਚੀਆਂ ਇੱਕ :term:`mutable` ਕਿਸਮ ਹਨ, " +"ਅਰਥਾਤ ਉਨ੍ਹਾਂ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> cubes = [1, 8, 27, 65, 125] # something's wrong here\n" @@ -586,11 +861,19 @@ msgid "" ">>> cubes\n" "[1, 8, 27, 64, 125]" msgstr "" +">>> cubes = [1, 8, 27, 65, 125] # something's wrong here\n" +">>> 4 ** 3 # the cube of 4 is 64, not 65!\n" +"64\n" +">>> cubes[3] = 64 # replace the wrong value\n" +">>> cubes\n" +"[1, 8, 27, 64, 125]" msgid "" -"You can also add new items at the end of the list, by using the :meth:`list." -"append` *method* (we will see more about methods later)::" +"You can also add new items at the end of the list, by using " +"the :meth:`list.append` *method* (we will see more about methods later)::" msgstr "" +"ਤੁਸੀਂ :meth:`list.append` *method* ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸੂਚੀ ਦੇ ਅੰਤ ਵਿੱਚ ਨਵੇਂ items ਵੀ ਜੋੜ ਸਕਦੇ " +"ਹੋ (ਅਸੀਂ methods ਬਾਰੇ ਅੱਗੇ ਹੋਰ ਵੇਖਾਂਗੇ)::" msgid "" ">>> cubes.append(216) # add the cube of 6\n" @@ -598,6 +881,10 @@ msgid "" ">>> cubes\n" "[1, 8, 27, 64, 125, 216, 343]" msgstr "" +">>> cubes.append(216) # add the cube of 6\n" +">>> cubes.append(7 ** 3) # and the cube of 7\n" +">>> cubes\n" +"[1, 8, 27, 64, 125, 216, 343]" msgid "" "Simple assignment in Python never copies data. When you assign a list to a " @@ -605,6 +892,9 @@ msgid "" "to the list through one variable will be seen through all other variables " "that refer to it.::" msgstr "" +"Python ਵਿੱਚ ਸਧਾਰਣ assignment ਕਦੇ ਵੀ ਡਾਟਾ ਦੀ copy ਨਹੀਂ ਬਣਾਉਂਦਾ। ਜਦੋਂ ਤੁਸੀਂ ਕਿਸੇ list ਨੂੰ " +"ਇੱਕ variable ਨਾਲ ਜੋੜਦੇ ਹੋ, ਤਾਂ variable ਮੌਜੂਦਾ *list* ਨੂੰ ਹੀ ਦਰਸਾਉਂਦਾ ਹੈ। ਇੱਕ variable " +"ਰਾਹੀਂ ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ ਉਹਨਾਂ ਸਾਰੇ variables ਵਿੱਚ ਦਿਖਾਈ ਦੇਣਗੀਆਂ ਜੋ ਉਸੇ list ਨੂੰ ਦਰਸਾਉਂਦੇ ਹਨ::" msgid "" ">>> rgb = [\"Red\", \"Green\", \"Blue\"]\n" @@ -615,12 +905,22 @@ msgid "" ">>> rgb\n" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" +">>> rgb = [\"Red\", \"Green\", \"Blue\"]\n" +">>> rgba = rgb\n" +">>> id(rgb) == id(rgba) # they reference the same object\n" +"True\n" +">>> rgba.append(\"Alph\")\n" +">>> rgb\n" +"[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgid "" "All slice operations return a new list containing the requested elements. " "This means that the following slice returns a :ref:`shallow copy " "` of the list::" msgstr "" +"ਸਾਰੀਆਂ slice ਕਾਰਵਾਈਆਂ ਮੰਗੇ ਗਏ ਤੱਤਾਂ ਵਾਲੀ ਇੱਕ ਨਵੀਂ ਸੂਚੀ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ। ਇਸ ਦਾ ਮਤਲਬ ਹੈ ਕਿ " +"ਹੇਠਾਂ ਦਿੱਤੀ slice ਸੂਚੀ ਦੀ ਇੱਕ :ref:`shallow copy ` ਵਾਪਸ " +"ਕਰਦੀ ਹੈ::" msgid "" ">>> correct_rgba = rgba[:]\n" @@ -630,11 +930,19 @@ msgid "" ">>> rgba\n" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" +">>> correct_rgba = rgba[:]\n" +">>> correct_rgba[-1] = \"Alpha\"\n" +">>> correct_rgba\n" +"[\"Red\", \"Green\", \"Blue\", \"Alpha\"]\n" +">>> rgba\n" +"[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgid "" "Assignment to slices is also possible, and this can even change the size of " "the list or clear it entirely::" msgstr "" +"Slices ਨੂੰ assignment ਕਰਨਾ ਵੀ ਸੰਭਵ ਹੈ, ਅਤੇ ਇਸ ਨਾਲ ਸੂਚੀ ਦਾ ਆਕਾਰ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂ " +"ਇਸ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਖਾਲੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" @@ -653,20 +961,40 @@ msgid "" ">>> letters\n" "[]" msgstr "" +">>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" +">>> letters\n" +"['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" +">>> # replace some values\n" +">>> letters[2:5] = ['C', 'D', 'E']\n" +">>> letters\n" +"['a', 'b', 'C', 'D', 'E', 'f', 'g']\n" +">>> # now remove them\n" +">>> letters[2:5] = []\n" +">>> letters\n" +"['a', 'b', 'f', 'g']\n" +">>> # clear the list by replacing all the elements with an empty list\n" +">>> letters[:] = []\n" +">>> letters\n" +"[]" msgid "The built-in function :func:`len` also applies to lists::" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ :func:`len` ਸੂਚੀਆਂ ਉੱਤੇ ਵੀ ਲਾਗੂ ਹੁੰਦਾ ਹੈ::" msgid "" ">>> letters = ['a', 'b', 'c', 'd']\n" ">>> len(letters)\n" "4" msgstr "" +">>> letters = ['a', 'b', 'c', 'd']\n" +">>> len(letters)\n" +"4" msgid "" "It is possible to nest lists (create lists containing other lists), for " "example::" msgstr "" +"ਸੂਚੀਆਂ ਨੂੰ nested ਬਣਾਉਣਾ (ਅਰਥਾਤ ਹੋਰ ਸੂਚੀਆਂ ਨੂੰ ਸਮੇਟਣ ਵਾਲੀਆਂ ਸੂਚੀਆਂ ਬਣਾਉਣਾ) ਸੰਭਵ ਹੈ, ਉਦਾਹਰਨ " +"ਲਈ::" msgid "" ">>> a = ['a', 'b', 'c']\n" @@ -679,9 +1007,18 @@ msgid "" ">>> x[0][1]\n" "'b'" msgstr "" +">>> a = ['a', 'b', 'c']\n" +">>> n = [1, 2, 3]\n" +">>> x = [a, n]\n" +">>> x\n" +"[['a', 'b', 'c'], [1, 2, 3]]\n" +">>> x[0]\n" +"['a', 'b', 'c']\n" +">>> x[0][1]\n" +"'b'" msgid "First Steps Towards Programming" -msgstr "" +msgstr "ਪਰੋਗ੍ਰਾਮਿੰਗ ਵੱਲ ਪਹਿਲੇ ਕਦਮ" msgid "" "Of course, we can use Python for more complicated tasks than adding two and " @@ -689,6 +1026,9 @@ msgid "" "`Fibonacci series `_ as " "follows::" msgstr "" +"ਬੇਸ਼ੱਕ, ਅਸੀਂ Python ਨੂੰ ਸਿਰਫ਼ ਦੋ ਅਤੇ ਦੋ ਜੋੜਨ ਨਾਲੋਂ ਕਾਫ਼ੀ ਜ਼ਿਆਦਾ ਜਟਿਲ ਕੰਮਾਂ ਲਈ ਵਰਤ ਸਕਦੇ ਹਾਂ। " +"ਉਦਾਹਰਨ ਵਜੋਂ, ਅਸੀਂ `Fibonacci series `_ ਦਾ ਇੱਕ ਸ਼ੁਰੂਆਤੀ ਉਪ-ਕ੍ਰਮ ਇਸ ਤਰ੍ਹਾਂ ਲਿਖ ਸਕਦੇ ਹਾਂ::" msgid "" ">>> # Fibonacci series:\n" @@ -706,9 +1046,23 @@ msgid "" "5\n" "8" msgstr "" +">>> # Fibonacci series:\n" +">>> # the sum of two elements defines the next\n" +">>> a, b = 0, 1\n" +">>> while a < 10:\n" +"... print(a)\n" +"... a, b = b, a+b\n" +"...\n" +"0\n" +"1\n" +"1\n" +"2\n" +"3\n" +"5\n" +"8" msgid "This example introduces several new features." -msgstr "" +msgstr "ਇਹ ਉਦਾਹਰਨ ਕਈ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਪੇਸ਼ ਕਰਦੀ ਹੈ।" msgid "" "The first line contains a *multiple assignment*: the variables ``a`` and " @@ -717,6 +1071,10 @@ msgid "" "all evaluated first before any of the assignments take place. The right-" "hand side expressions are evaluated from the left to the right." msgstr "" +"ਪਹਿਲੀ ਲਾਈਨ ਵਿੱਚ ਇੱਕ *multiple assignment* ਹੈ: variables ``a`` ਅਤੇ ``b`` ਨੂੰ ਇੱਕੋ ਸਮੇਂ " +"ਨਵੇਂ ਮੁੱਲ 0 ਅਤੇ 1 ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ। ਆਖਰੀ ਲਾਈਨ ਵਿੱਚ ਇਸਦੀ ਮੁੜ ਵਰਤੋਂ ਕੀਤੀ ਗਈ ਹੈ, ਜੋ ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ " +"assignment ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਸੱਜੇ ਪਾਸੇ ਵਾਲੀਆਂ ਸਾਰੀਆਂ expressions ਦਾ ਪਹਿਲਾਂ ਮੁਲਾਂਕਣ ਕੀਤਾ " +"ਜਾਂਦਾ ਹੈ। ਸੱਜੇ ਪਾਸੇ ਵਾਲੀਆਂ expressions ਦਾ ਮੁਲਾਂਕਣ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਵੱਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" "The :keyword:`while` loop executes as long as the condition (here: ``a < " @@ -728,6 +1086,13 @@ msgid "" "than), ``>`` (greater than), ``==`` (equal to), ``<=`` (less than or equal " "to), ``>=`` (greater than or equal to) and ``!=`` (not equal to)." msgstr "" +":keyword:`while` loop ਉਦੋਂ ਤੱਕ ਚੱਲਦਾ ਰਹਿੰਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਸ਼ਰਤ (ਇੱਥੇ: ``a < 10``) ਸਹੀ " +"ਰਹਿੰਦੀ ਹੈ। Python ਵਿੱਚ, C ਦੀ ਤਰ੍ਹਾਂ, ਕੋਈ ਵੀ ਗੈਰ-ਜ਼ੀਰੋ integer ਮੁੱਲ true ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ; " +"ਜ਼ੀਰੋ false ਹੁੰਦਾ ਹੈ। ਸ਼ਰਤ ਇੱਕ string ਜਾਂ list ਮੁੱਲ ਵੀ ਹੋ ਸਕਦੀ ਹੈ; ਅਸਲ ਵਿੱਚ ਕੋਈ ਵੀ " +"sequence। ਜਿਸਦੀ ਲੰਬਾਈ ਗੈਰ-ਜ਼ੀਰੋ ਹੋਵੇ ਉਹ true ਹੁੰਦੀ ਹੈ ਅਤੇ ਖਾਲੀ sequences false ਹੁੰਦੀਆਂ " +"ਹਨ। ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ ਵਰਤੀ ਗਈ ਜਾਂਚ ਇੱਕ ਸਧਾਰਣ ਤੁਲਨਾ ਹੈ। ਮਿਆਰੀ comparison operators C " +"ਵਾਂਗ ਹੀ ਲਿਖੇ ਜਾਂਦੇ ਹਨ: ``<`` (ਘੱਟ), ``>`` (ਵੱਧ), ``==`` (ਬਰਾਬਰ), ``<=`` (ਘੱਟ ਜਾਂ " +"ਬਰਾਬਰ), ``>=`` (ਵੱਧ ਜਾਂ ਬਰਾਬਰ) ਅਤੇ ``!=`` (ਅਸਮਾਨ)।" msgid "" "The *body* of the loop is *indented*: indentation is Python's way of " @@ -739,6 +1104,14 @@ msgid "" "(since the parser cannot guess when you have typed the last line). Note " "that each line within a basic block must be indented by the same amount." msgstr "" +"Loop ਦਾ *body* *indented* ਹੁੰਦਾ ਹੈ: indentation Python ਵਿੱਚ statements ਨੂੰ ਸਮੂਹਬੱਧ " +"ਕਰਨ ਦਾ ਤਰੀਕਾ ਹੈ। Interactive prompt ਉੱਤੇ, ਹਰ indented ਲਾਈਨ ਲਈ ਤੁਹਾਨੂੰ ਇੱਕ tab ਜਾਂ " +"space(s) ਲਿਖਣੀਆਂ ਪੈਂਦੀਆਂ ਹਨ। ਅਮਲ ਵਿੱਚ, ਤੁਸੀਂ Python ਲਈ ਵਧੇਰੇ ਜਟਿਲ input ਕਿਸੇ text " +"editor ਦੀ ਮਦਦ ਨਾਲ ਤਿਆਰ ਕਰੋਗੇ; ਲਗਭਗ ਸਾਰੇ ਵਧੀਆ text editors ਵਿੱਚ auto-indent ਦੀ " +"ਸੁਵਿਧਾ ਹੁੰਦੀ ਹੈ। ਜਦੋਂ ਕੋਈ compound statement interactive ਢੰਗ ਨਾਲ ਦਰਜ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ " +"ਇਸਦੇ ਪੂਰਾ ਹੋਣ ਨੂੰ ਦਰਸਾਉਣ ਲਈ ਇਸਦੇ ਬਾਅਦ ਇੱਕ ਖਾਲੀ ਲਾਈਨ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ (ਕਿਉਂਕਿ parser ਇਹ " +"ਅੰਦਾਜ਼ਾ ਨਹੀਂ ਲਗਾ ਸਕਦਾ ਕਿ ਤੁਸੀਂ ਆਖਰੀ ਲਾਈਨ ਕਦੋਂ ਲਿਖੀ ਹੈ)। ਧਿਆਨ ਰੱਖੋ ਕਿ ਇੱਕ basic block ਦੇ " +"ਅੰਦਰ ਹਰ ਲਾਈਨ ਇੱਕੋ ਜਿਹੀ ਮਾਤਰਾ ਨਾਲ indented ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ।" msgid "" "The :func:`print` function writes the value of the argument(s) it is given. " @@ -748,17 +1121,27 @@ msgid "" "without quotes, and a space is inserted between items, so you can format " "things nicely, like this::" msgstr "" +":func:`print` ਫੰਕਸ਼ਨ ਉਸਨੂੰ ਦਿੱਤੇ ਗਏ argument(s) ਦਾ ਮੁੱਲ ਲਿਖਦਾ ਹੈ। ਇਹ ਸਿਰਫ਼ expression " +"ਲਿਖਣ ਨਾਲੋਂ ਵੱਖਰਾ ਹੈ (ਜਿਵੇਂ ਅਸੀਂ ਪਹਿਲਾਂ calculator ਵਾਲੀਆਂ ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਕੀਤਾ ਸੀ), ਕਿਉਂਕਿ " +"ਇਹ ਕਈ arguments, floating-point ਮੁੱਲਾਂ ਅਤੇ strings ਨੂੰ ਵੱਖਰੇ ਢੰਗ ਨਾਲ ਸੰਭਾਲਦਾ ਹੈ। " +"Strings ਬਿਨਾਂ quotes ਦੇ ਛਾਪੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ items ਦੇ ਵਿਚਕਾਰ ਇੱਕ ਖਾਲੀ ਥਾਂ ਜੋੜੀ ਜਾਂਦੀ " +"ਹੈ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ output ਨੂੰ ਸੁੰਦਰ ਢੰਗ ਨਾਲ format ਕਰ ਸਕਦੇ ਹੋ, ਉਦਾਹਰਨ ਲਈ::" msgid "" ">>> i = 256*256\n" ">>> print('The value of i is', i)\n" "The value of i is 65536" msgstr "" +">>> i = 256*256\n" +">>> print('The value of i is', i)\n" +"The value of i is 65536" msgid "" "The keyword argument *end* can be used to avoid the newline after the " "output, or end the output with a different string::" msgstr "" +"Keyword argument *end* ਦੀ ਵਰਤੋਂ ਆਉਟਪੁੱਟ ਤੋਂ ਬਾਅਦ newline ਤੋਂ ਬਚਣ ਲਈ ਜਾਂ ਆਉਟਪੁੱਟ ਨੂੰ ਕਿਸੇ " +"ਹੋਰ string ਨਾਲ ਸਮਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ::" msgid "" ">>> a, b = 0, 1\n" @@ -768,15 +1151,24 @@ msgid "" "...\n" "0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987," msgstr "" +">>> a, b = 0, 1\n" +">>> while a < 1000:\n" +"... print(a, end=',')\n" +"... a, b = b, a+b\n" +"...\n" +"0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987," msgid "Footnotes" -msgstr "" +msgstr "ਫੁੱਟਨੋਟ" msgid "" "Since ``**`` has higher precedence than ``-``, ``-3**2`` will be interpreted " "as ``-(3**2)`` and thus result in ``-9``. To avoid this and get ``9``, you " "can use ``(-3)**2``." msgstr "" +"ਕਿਉਂਕਿ ``**`` ਦੀ precedence ``-`` ਨਾਲੋਂ ਵੱਧ ਹੈ, ਇਸ ਲਈ ``-3**2`` ਨੂੰ ``-(3**2)`` ਵਜੋਂ " +"ਸਮਝਿਆ ਜਾਵੇਗਾ ਅਤੇ ਨਤੀਜਾ ``-9`` ਆਵੇਗਾ। ਇਸ ਤੋਂ ਬਚਣ ਅਤੇ ``9`` ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਤੁਸੀਂ " +"``(-3)**2`` ਵਰਤ ਸਕਦੇ ਹੋ।" msgid "" "Unlike other languages, special characters such as ``\\n`` have the same " @@ -784,9 +1176,13 @@ msgid "" "only difference between the two is that within single quotes you don't need " "to escape ``\"`` (but you have to escape ``\\'``) and vice versa." msgstr "" +"ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਤੋਂ ਵੱਖਰਾ, ``\\n`` ਵਰਗੇ special characters ਦਾ ਅਰਥ single (``'...'``) " +"ਅਤੇ double (``\"...\"``) quotes ਦੋਵਾਂ ਵਿੱਚ ਇੱਕੋ ਜਿਹਾ ਹੁੰਦਾ ਹੈ। ਦੋਵਾਂ ਵਿੱਚ ਕੇਵਲ ਇਹ ਫਰਕ ਹੈ " +"ਕਿ single quotes ਦੇ ਅੰਦਰ ਤੁਹਾਨੂੰ ``\"`` ਨੂੰ escape ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ (ਪਰ ``\\'`` ਨੂੰ " +"ਕਰਨਾ ਪੈਂਦਾ ਹੈ), ਅਤੇ double quotes ਵਿੱਚ ਇਸਦਾ ਉਲਟ ਹੁੰਦਾ ਹੈ।" msgid "# (hash)" -msgstr "" +msgstr "# (ਹੈਸ਼)" msgid "comment" -msgstr "" +msgstr "ਟਿੱਪਣੀ" diff --git a/tutorial/modules.po b/tutorial/modules.po index f9a59f8..ffe1b0b 100644 --- a/tutorial/modules.po +++ b/tutorial/modules.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Mohit Yadav, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Mohit Yadav, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +24,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Modules" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "" "If you quit from the Python interpreter and enter it again, the definitions " @@ -35,6 +36,13 @@ msgid "" "You may also want to use a handy function that you've written in several " "programs without copying its definition into each program." msgstr "" +"ਜੇ ਤੁਸੀਂ ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ ਤੋਂ ਬਾਹਰ ਨਿਕਲ ਕੇ ਇਸਨੂੰ ਦੁਬਾਰਾ ਚਲਾਉਂਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੇ ਦੁਆਰਾ ਬਣਾਈਆਂ ਗਈਆਂ " +"ਪਰਿਭਾਸ਼ਾਵਾਂ (ਫੰਕਸ਼ਨ ਅਤੇ ਚਲ) ਖਤਮ ਹੋ ਜਾਂਦੀਆਂ ਹਨ। ਇਸ ਲਈ, ਜੇ ਤੁਸੀਂ ਕੁਝ ਲੰਮਾ ਪ੍ਰੋਗਰਾਮ ਲਿਖਣਾ ਚਾਹੁੰਦੇ " +"ਹੋ, ਤਾਂ ਇੰਟਰਪ੍ਰੀਟਰ ਲਈ ਇਨਪੁੱਟ ਤਿਆਰ ਕਰਨ ਵਾਸਤੇ ਟੈਕਸਟ ਐਡੀਟਰ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਅਤੇ ਉਸ ਫਾਇਲ ਨੂੰ " +"ਇਨਪੁੱਟ ਵਜੋਂ ਚਲਾਉਣਾ ਵਧੀਆ ਰਹਿੰਦਾ ਹੈ। ਇਸਨੂੰ *ਸਕ੍ਰਿਪਟ* ਬਣਾਉਣਾ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਜਿਵੇਂ-ਜਿਵੇਂ ਤੁਹਾਡਾ " +"ਪ੍ਰੋਗਰਾਮ ਵੱਡਾ ਹੁੰਦਾ ਹੈ, ਆਸਾਨ ਸੰਭਾਲ ਲਈ ਤੁਸੀਂ ਇਸਨੂੰ ਕਈ ਫਾਇਲਾਂ ਵਿੱਚ ਵੰਡਣਾ ਚਾਹ ਸਕਦੇ ਹੋ। ਤੁਸੀਂ ਉਹ " +"ਉਪਯੋਗੀ ਫੰਕਸ਼ਨ ਵੀ ਵਰਤਣਾ ਚਾਹ ਸਕਦੇ ਹੋ ਜੋ ਤੁਸੀਂ ਕਈ ਪ੍ਰੋਗਰਾਮਾਂ ਵਿੱਚ ਲਿਖਿਆ ਹੈ, ਬਿਨਾਂ ਹਰ ਪ੍ਰੋਗਰਾਮ " +"ਵਿੱਚ ਉਸਦੀ ਪਰਿਭਾਸ਼ਾ ਨਕਲ ਕੀਤੇ।" msgid "" "To support this, Python has a way to put definitions in a file and use them " @@ -43,6 +51,11 @@ msgid "" "modules or into the *main* module (the collection of variables that you have " "access to in a script executed at the top level and in calculator mode)." msgstr "" +"ਇਸ ਦਾ ਸਮਰਥਨ ਕਰਨ ਲਈ, ਪਾਇਥਨ ਵਿੱਚ ਪਰਿਭਾਸ਼ਾਵਾਂ ਨੂੰ ਇੱਕ ਫਾਇਲ ਵਿੱਚ ਰੱਖਣ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਸਕ੍ਰਿਪਟ " +"ਜਾਂ ਇੰਟਰਪ੍ਰੀਟਰ ਦੇ ਇੰਟਰਐਕਟਿਵ ਸੈਸ਼ਨ ਵਿੱਚ ਵਰਤਣ ਦਾ ਤਰੀਕਾ ਹੈ। ਅਜਿਹੀ ਫਾਇਲ ਨੂੰ *ਮੌਡਿਊਲ* ਕਿਹਾ " +"ਜਾਂਦਾ ਹੈ; ਇੱਕ ਮੌਡਿਊਲ ਦੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਨੂੰ ਹੋਰ ਮੌਡਿਊਲਾਂ ਜਾਂ *ਮੁੱਖ* ਮੌਡਿਊਲ ਵਿੱਚ *import* ਕੀਤਾ " +"ਜਾ ਸਕਦਾ ਹੈ (ਅਰਥਾਤ ਉਹਨਾਂ ਚਲਾਂ ਦਾ ਸਮੂਹ ਜਿਨ੍ਹਾਂ ਤੱਕ ਤੁਹਾਡੀ ਪਹੁੰਚ ਉੱਚ ਪੱਧਰ 'ਤੇ ਚੱਲ ਰਹੀ ਸਕ੍ਰਿਪਟ " +"ਅਤੇ ਕੈਲਕੂਲੇਟਰ ਮੋਡ ਵਿੱਚ ਹੁੰਦੀ ਹੈ)।" msgid "" "A module is a file containing Python definitions and statements. The file " @@ -52,6 +65,11 @@ msgid "" "to create a file called :file:`fibo.py` in the current directory with the " "following contents::" msgstr "" +"ਮੌਡਿਊਲ ਇੱਕ ਫਾਇਲ ਹੁੰਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਪਾਇਥਨ ਦੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਅਤੇ ਕਥਨ ਹੁੰਦੇ ਹਨ। ਫਾਇਲ ਦਾ ਨਾਮ " +"ਮੌਡਿਊਲ ਦੇ ਨਾਮ ਨਾਲ :file:`.py` ਪ੍ਰਤਯ ਜੋੜ ਕੇ ਬਣਦਾ ਹੈ। ਮੌਡਿਊਲ ਦੇ ਅੰਦਰ, ਮੌਡਿਊਲ ਦਾ ਨਾਮ (ਸਤਰ " +"ਦੇ ਰੂਪ ਵਿੱਚ) ਗਲੋਬਲ ਚਲ ``__name__`` ਦੇ ਮੁੱਲ ਵਜੋਂ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਆਪਣੇ ਮਨਪਸੰਦ " +"ਟੈਕਸਟ ਐਡੀਟਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ :file:`fibo.py` ਨਾਮ ਦੀ ਫਾਇਲ ਬਣਾਓ " +"ਜਿਸਦਾ ਸਮੱਗਰੀ ਹੇਠਾਂ ਦਿੱਤੀ ਗਈ ਹੈ::" msgid "" "# Fibonacci numbers module\n" @@ -73,14 +91,32 @@ msgid "" " a, b = b, a+b\n" " return result" msgstr "" +"# Fibonacci numbers module\n" +"\n" +"def fib(n):\n" +" \"\"\"Write Fibonacci series up to n.\"\"\"\n" +" a, b = 0, 1\n" +" while a < n:\n" +" print(a, end=' ')\n" +" a, b = b, a+b\n" +" print()\n" +"\n" +"def fib2(n):\n" +" \"\"\"Return Fibonacci series up to n.\"\"\"\n" +" result = []\n" +" a, b = 0, 1\n" +" while a < n:\n" +" result.append(a)\n" +" a, b = b, a+b\n" +" return result" msgid "" "Now enter the Python interpreter and import this module with the following " "command::" -msgstr "" +msgstr "ਹੁਣ ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ ਜਾਓ ਅਤੇ ਹੇਠਾਂ ਦਿੱਤੇ ਕਮਾਂਡ ਨਾਲ ਇਸ ਮੌਡਿਊਲ ਨੂੰ import ਕਰੋ::" msgid ">>> import fibo" -msgstr "" +msgstr ">>> import fibo" msgid "" "This does not add the names of the functions defined in ``fibo`` directly " @@ -88,6 +124,9 @@ msgid "" "it only adds the module name ``fibo`` there. Using the module name you can " "access the functions::" msgstr "" +"ਇਹ ``fibo`` ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਫੰਕਸ਼ਨਾਂ ਦੇ ਨਾਮ ਸਿੱਧੇ ਮੌਜੂਦਾ :term:`namespace` ਵਿੱਚ ਨਹੀਂ ਜੋੜਦਾ " +"(ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-scopes` ਵੇਖੋ); ਇਹ ਸਿਰਫ਼ ਮੌਡਿਊਲ ਦਾ ਨਾਮ ``fibo`` ਉੱਥੇ ਜੋੜਦਾ " +"ਹੈ। ਮੌਡਿਊਲ ਦੇ ਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਤੁਸੀਂ ਫੰਕਸ਼ਨਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦੇ ਹੋ::" msgid "" ">>> fibo.fib(1000)\n" @@ -97,19 +136,30 @@ msgid "" ">>> fibo.__name__\n" "'fibo'" msgstr "" +">>> fibo.fib(1000)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987\n" +">>> fibo.fib2(100)\n" +"[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]\n" +">>> fibo.__name__\n" +"'fibo'" msgid "" "If you intend to use a function often you can assign it to a local name::" msgstr "" +"ਜੇ ਤੁਸੀਂ ਕਿਸੇ ਫੰਕਸ਼ਨ ਨੂੰ ਬਾਰ-ਬਾਰ ਵਰਤਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਇਸਨੂੰ ਕਿਸੇ ਸਥਾਨਕ ਨਾਮ ਨਾਲ ਜੋੜ ਸਕਦੇ " +"ਹੋ::" msgid "" ">>> fib = fibo.fib\n" ">>> fib(500)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgstr "" +">>> fib = fibo.fib\n" +">>> fib(500)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgid "More on Modules" -msgstr "" +msgstr "ਮੌਡਿਊਲਾਂ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ" msgid "" "A module can contain executable statements as well as function definitions. " @@ -117,6 +167,10 @@ msgid "" "only the *first* time the module name is encountered in an import statement. " "[#]_ (They are also run if the file is executed as a script.)" msgstr "" +"ਮੌਡਿਊਲ ਵਿੱਚ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾਵਾਂ ਦੇ ਨਾਲ-ਨਾਲ ਚੱਲਣਯੋਗ ਕਥਨ ਵੀ ਹੋ ਸਕਦੇ ਹਨ। ਇਹ ਕਥਨ ਮੌਡਿਊਲ ਨੂੰ " +"ਸ਼ੁਰੂਆਤੀ ਹਾਲਤ ਵਿੱਚ ਲਿਆਉਣ ਲਈ ਹੁੰਦੇ ਹਨ। ਇਹ ਸਿਰਫ਼ *ਪਹਿਲੀ* ਵਾਰ ਚਲਾਏ ਜਾਂਦੇ ਹਨ ਜਦੋਂ ਮੌਡਿਊਲ ਦਾ " +"ਨਾਮ ਕਿਸੇ import ਕਥਨ ਵਿੱਚ ਮਿਲਦਾ ਹੈ। [#]_ (ਜੇ ਫਾਇਲ ਨੂੰ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਚਲਾਇਆ ਜਾਵੇ ਤਾਂ ਇਹ ਵੀ " +"ਚਲਦੇ ਹਨ।)" msgid "" "Each module has its own private namespace, which is used as the global " @@ -126,6 +180,11 @@ msgid "" "know what you are doing you can touch a module's global variables with the " "same notation used to refer to its functions, ``modname.itemname``." msgstr "" +"ਹਰ ਮੌਡਿਊਲ ਦਾ ਆਪਣਾ ਨਿੱਜੀ namespace ਹੁੰਦਾ ਹੈ, ਜੋ ਮੌਡਿਊਲ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਸਾਰੇ ਫੰਕਸ਼ਨਾਂ ਲਈ " +"global namespace ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਤਰ੍ਹਾਂ, ਮੌਡਿਊਲ ਦਾ ਲੇਖਕ ਮੌਡਿਊਲ ਦੇ global " +"variables ਵਰਤ ਸਕਦਾ ਹੈ ਬਿਨਾਂ ਇਸ ਚਿੰਤਾ ਦੇ ਕਿ ਉਹ ਵਰਤੋਂਕਾਰ ਦੇ global variables ਨਾਲ ਟਕਰਾ " +"ਜਾਣਗੇ। ਦੂਜੇ ਪਾਸੇ, ਜੇ ਤੁਹਾਨੂੰ ਪਤਾ ਹੈ ਕਿ ਤੁਸੀਂ ਕੀ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ``modname.itemname`` " +"ਨੋਟੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮੌਡਿਊਲ ਦੇ global variables ਤੱਕ ਵੀ ਪਹੁੰਚ ਕਰ ਸਕਦੇ ਹੋ।" msgid "" "Modules can import other modules. It is customary but not required to place " @@ -134,31 +193,45 @@ msgid "" "a module (outside any functions or classes), are added to the module's " "global namespace." msgstr "" +"ਮੌਡਿਊਲ ਹੋਰ ਮੌਡਿਊਲਾਂ ਨੂੰ import ਕਰ ਸਕਦੇ ਹਨ। ਆਮ ਤੌਰ 'ਤੇ ਸਾਰੇ :keyword:`import` ਕਥਨ ਮੌਡਿਊਲ " +"(ਜਾਂ ਸਕ੍ਰਿਪਟ) ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਲਿਖੇ ਜਾਂਦੇ ਹਨ, ਹਾਲਾਂਕਿ ਇਹ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ। ਜੇ import ਕੀਤੇ ਮੌਡਿਊਲਾਂ " +"ਦੇ ਨਾਮ ਮੌਡਿਊਲ ਦੇ ਉੱਚ ਪੱਧਰ 'ਤੇ (ਕਿਸੇ ਫੰਕਸ਼ਨ ਜਾਂ ਕਲਾਸ ਦੇ ਬਾਹਰ) ਲਿਖੇ ਜਾਣ, ਤਾਂ ਉਹ ਮੌਡਿਊਲ ਦੇ " +"global namespace ਵਿੱਚ ਸ਼ਾਮਲ ਹੋ ਜਾਂਦੇ ਹਨ।" msgid "" "There is a variant of the :keyword:`import` statement that imports names " "from a module directly into the importing module's namespace. For example::" msgstr "" +":keyword:`import` ਕਥਨ ਦਾ ਇੱਕ ਰੂਪ ਅਜਿਹਾ ਵੀ ਹੈ ਜੋ ਕਿਸੇ ਮੌਡਿਊਲ ਤੋਂ ਨਾਮਾਂ ਨੂੰ ਸਿੱਧੇ import " +"ਕਰਨ ਵਾਲੇ ਮੌਡਿਊਲ ਦੇ namespace ਵਿੱਚ ਲਿਆਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "" ">>> from fibo import fib, fib2\n" ">>> fib(500)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgstr "" +">>> from fibo import fib, fib2\n" +">>> fib(500)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgid "" "This does not introduce the module name from which the imports are taken in " "the local namespace (so in the example, ``fibo`` is not defined)." msgstr "" +"ਇਹ ਉਸ ਮੌਡਿਊਲ ਦਾ ਨਾਮ local namespace ਵਿੱਚ ਨਹੀਂ ਲਿਆਉਂਦਾ ਜਿਸ ਤੋਂ import ਕੀਤਾ ਗਿਆ ਹੈ " +"(ਇਸ ਲਈ ਉਦਾਹਰਨ ਵਿੱਚ ``fibo`` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੈ)।" msgid "There is even a variant to import all names that a module defines::" -msgstr "" +msgstr "ਮੌਡਿਊਲ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਸਾਰੇ ਨਾਮ import ਕਰਨ ਲਈ ਵੀ ਇੱਕ ਰੂਪ ਮੌਜੂਦ ਹੈ::" msgid "" ">>> from fibo import *\n" ">>> fib(500)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgstr "" +">>> from fibo import *\n" +">>> fib(500)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgid "" "This imports all names except those beginning with an underscore (``_``). In " @@ -166,127 +239,180 @@ msgid "" "an unknown set of names into the interpreter, possibly hiding some things " "you have already defined." msgstr "" +"ਇਹ underscore (``_``) ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਨਾਮਾਂ ਤੋਂ ਇਲਾਵਾ ਸਾਰੇ ਨਾਮ import ਕਰਦਾ ਹੈ। " +"ਜ਼ਿਆਦਾਤਰ ਮਾਮਲਿਆਂ ਵਿੱਚ Python ਪ੍ਰੋਗਰਾਮਰ ਇਸ ਤਰੀਕੇ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਦੇ, ਕਿਉਂਕਿ ਇਹ ਇੰਟਰਪ੍ਰੀਟਰ " +"ਵਿੱਚ ਅਣਜਾਣ ਨਾਮਾਂ ਦਾ ਸਮੂਹ ਸ਼ਾਮਲ ਕਰ ਦਿੰਦਾ ਹੈ, ਜੋ ਤੁਹਾਡੇ ਪਹਿਲਾਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਕੁਝ ਨਾਮਾਂ ਨੂੰ " +"ਲੁਕਾ ਸਕਦਾ ਹੈ।" msgid "" "Note that in general the practice of importing ``*`` from a module or " "package is frowned upon, since it often causes poorly readable code. " "However, it is okay to use it to save typing in interactive sessions." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਆਮ ਤੌਰ 'ਤੇ ਕਿਸੇ ਮੌਡਿਊਲ ਜਾਂ ਪੈਕੇਜ ਤੋਂ ``*`` import ਕਰਨਾ ਚੰਗਾ ਅਭਿਆਸ ਨਹੀਂ ਮੰਨਿਆ " +"ਜਾਂਦਾ, ਕਿਉਂਕਿ ਇਸ ਨਾਲ ਕੋਡ ਘੱਟ ਪੜ੍ਹਨਯੋਗ ਬਣ ਜਾਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਇੰਟਰਐਕਟਿਵ ਸੈਸ਼ਨਾਂ ਵਿੱਚ ਟਾਈਪਿੰਗ " +"ਘਟਾਉਣ ਲਈ ਇਸਦੀ ਵਰਤੋਂ ਕਰਨਾ ਠੀਕ ਹੈ।" msgid "" -"If the module name is followed by :keyword:`!as`, then the name following :" -"keyword:`!as` is bound directly to the imported module." +"If the module name is followed by :keyword:`!as`, then the name " +"following :keyword:`!as` is bound directly to the imported module." msgstr "" +"ਜੇ ਮੌਡਿਊਲ ਦੇ ਨਾਮ ਤੋਂ ਬਾਅਦ :keyword:`!as` ਲਿਖਿਆ ਹੋਵੇ, ਤਾਂ :keyword:`!as` ਤੋਂ ਬਾਅਦ ਦਿੱਤਾ " +"ਗਿਆ ਨਾਮ ਸਿੱਧੇ import ਕੀਤੇ ਮੌਡਿਊਲ ਨਾਲ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ।" msgid "" ">>> import fibo as fib\n" ">>> fib.fib(500)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgstr "" +">>> import fibo as fib\n" +">>> fib.fib(500)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgid "" "This is effectively importing the module in the same way that ``import " "fibo`` will do, with the only difference of it being available as ``fib``." msgstr "" +"ਇਹ ਮੌਡਿਊਲ ਨੂੰ ਉਸੇ ਤਰੀਕੇ ਨਾਲ import ਕਰਦਾ ਹੈ ਜਿਵੇਂ ``import fibo`` ਕਰਦਾ ਹੈ, ਫ਼ਰਕ ਸਿਰਫ਼ ਇਹ " +"ਹੈ ਕਿ ਇਹ ``fib`` ਨਾਮ ਨਾਲ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ।" msgid "" "It can also be used when utilising :keyword:`from` with similar effects::" msgstr "" +"ਇਸੇ ਤਰ੍ਹਾਂ ਦਾ ਪ੍ਰਭਾਵ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਇਸਨੂੰ :keyword:`from` ਨਾਲ ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "" ">>> from fibo import fib as fibonacci\n" ">>> fibonacci(500)\n" "0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgstr "" +">>> from fibo import fib as fibonacci\n" +">>> fibonacci(500)\n" +"0 1 1 2 3 5 8 13 21 34 55 89 144 233 377" msgid "" "For efficiency reasons, each module is only imported once per interpreter " "session. Therefore, if you change your modules, you must restart the " "interpreter -- or, if it's just one module you want to test interactively, " -"use :func:`importlib.reload`, e.g. ``import importlib; importlib." -"reload(modulename)``." +"use :func:`importlib.reload`, e.g. ``import importlib; " +"importlib.reload(modulename)``." msgstr "" +"ਕਾਰਗੁਜ਼ਾਰੀ ਦੇ ਕਾਰਨਾਂ ਕਰਕੇ, ਹਰ ਮੌਡਿਊਲ ਨੂੰ ਇੱਕ ਇੰਟਰਪ੍ਰੀਟਰ ਸੈਸ਼ਨ ਵਿੱਚ ਕੇਵਲ ਇੱਕ ਵਾਰ ਹੀ import " +"ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ ਲਈ, ਜੇ ਤੁਸੀਂ ਆਪਣੇ ਮੌਡਿਊਲਾਂ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਇੰਟਰਪ੍ਰੀਟਰ ਨੂੰ " +"ਦੁਬਾਰਾ ਸ਼ੁਰੂ ਕਰਨਾ ਪਵੇਗਾ — ਜਾਂ ਜੇ ਤੁਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਮੌਡਿਊਲ ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ ਜਾਂਚਣਾ ਚਾਹੁੰਦੇ " +"ਹੋ, ਤਾਂ :func:`importlib.reload` ਵਰਤੋ, ਉਦਾਹਰਨ ਲਈ ``import importlib; " +"importlib.reload(modulename)``।" msgid "Executing modules as scripts" -msgstr "" +msgstr "ਮੌਡਿਊਲਾਂ ਨੂੰ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਚਲਾਉਣਾ" msgid "When you run a Python module with ::" -msgstr "" +msgstr "ਜਦੋਂ ਤੁਸੀਂ ਕਿਸੇ Python ਮੌਡਿਊਲ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਤਰੀਕੇ ਨਾਲ ਚਲਾਉਂਦੇ ਹੋ::" msgid "python fibo.py " -msgstr "" +msgstr "python fibo.py " msgid "" "the code in the module will be executed, just as if you imported it, but " "with the ``__name__`` set to ``\"__main__\"``. That means that by adding " "this code at the end of your module::" msgstr "" +"ਮੌਡਿਊਲ ਦੇ ਅੰਦਰਲਾ ਕੋਡ ਠੀਕ ਉਸੇ ਤਰ੍ਹਾਂ ਚਲਾਇਆ ਜਾਵੇਗਾ ਜਿਵੇਂ ਇਸਨੂੰ import ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਪਰ " +"``__name__`` ਦਾ ਮੁੱਲ ``\"__main__\"`` ਹੋਵੇਗਾ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਆਪਣੇ ਮੌਡਿਊਲ ਦੇ ਅੰਤ ਵਿੱਚ " +"ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਜੋੜ ਕੇ::" msgid "" "if __name__ == \"__main__\":\n" " import sys\n" " fib(int(sys.argv[1]))" msgstr "" +"if __name__ == \"__main__\":\n" +" import sys\n" +" fib(int(sys.argv[1]))" msgid "" "you can make the file usable as a script as well as an importable module, " "because the code that parses the command line only runs if the module is " "executed as the \"main\" file:" msgstr "" +"ਤੁਸੀਂ ਫਾਇਲ ਨੂੰ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਵੀ ਅਤੇ import ਕੀਤੇ ਜਾਣ ਵਾਲੇ ਮੌਡਿਊਲ ਵਜੋਂ ਵੀ ਵਰਤਣਯੋਗ ਬਣਾ ਸਕਦੇ ਹੋ, " +"ਕਿਉਂਕਿ ਕਮਾਂਡ ਲਾਈਨ ਨੂੰ ਪਾਰਸ ਕਰਨ ਵਾਲਾ ਕੋਡ ਸਿਰਫ਼ ਉਸ ਵੇਲੇ ਚਲਦਾ ਹੈ ਜਦੋਂ ਮੌਡਿਊਲ ਨੂੰ \"main\" " +"ਫਾਇਲ ਵਜੋਂ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ:" msgid "" "$ python fibo.py 50\n" "0 1 1 2 3 5 8 13 21 34" msgstr "" +"$ python fibo.py 50\n" +"0 1 1 2 3 5 8 13 21 34" msgid "If the module is imported, the code is not run::" -msgstr "" +msgstr "ਜੇ ਮੌਡਿਊਲ ਨੂੰ import ਕੀਤਾ ਜਾਵੇ, ਤਾਂ ਇਹ ਕੋਡ ਨਹੀਂ ਚਲਦਾ::" msgid "" ">>> import fibo\n" ">>>" msgstr "" +">>> import fibo\n" +">>>" msgid "" "This is often used either to provide a convenient user interface to a " "module, or for testing purposes (running the module as a script executes a " "test suite)." msgstr "" +"ਇਸਦੀ ਵਰਤੋਂ ਅਕਸਰ ਮੌਡਿਊਲ ਲਈ ਇੱਕ ਸੁਵਿਧਾਜਨਕ ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ ਮੁਹੱਈਆ ਕਰਵਾਉਣ ਜਾਂ ਟੈਸਟਿੰਗ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ " +"ਕੀਤੀ ਜਾਂਦੀ ਹੈ (ਮੌਡਿਊਲ ਨੂੰ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਚਲਾਉਣ ਨਾਲ ਟੈਸਟ ਸੂਟ ਚਲਦਾ ਹੈ)।" msgid "The Module Search Path" -msgstr "" +msgstr "ਮੌਡਿਊਲ ਖੋਜ ਮਾਰਗ" msgid "" "When a module named :mod:`!spam` is imported, the interpreter first searches " -"for a built-in module with that name. These module names are listed in :data:" -"`sys.builtin_module_names`. If not found, it then searches for a file named :" -"file:`spam.py` in a list of directories given by the variable :data:`sys." -"path`. :data:`sys.path` is initialized from these locations:" +"for a built-in module with that name. These module names are listed " +"in :data:`sys.builtin_module_names`. If not found, it then searches for a " +"file named :file:`spam.py` in a list of directories given by the " +"variable :data:`sys.path`. :data:`sys.path` is initialized from these " +"locations:" msgstr "" +"ਜਦੋਂ :mod:`!spam` ਨਾਮ ਦਾ ਕੋਈ ਮੌਡਿਊਲ import ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇੰਟਰਪ੍ਰੀਟਰ ਸਭ ਤੋਂ ਪਹਿਲਾਂ " +"ਉਸ ਨਾਮ ਵਾਲੇ built-in ਮੌਡਿਊਲ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਮੌਡਿਊਲਾਂ ਦੇ " +"ਨਾਮ :data:`sys.builtin_module_names` ਵਿੱਚ ਦਿੱਤੇ ਹੁੰਦੇ ਹਨ। ਜੇਕਰ ਉਹ ਨਾ ਮਿਲੇ, ਤਾਂ " +"ਇਹ :data:`sys.path` ਚਲ ਦੁਆਰਾ ਦਿੱਤੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਸੂਚੀ ਵਿੱਚ :file:`spam.py` ਨਾਮ " +"ਦੀ ਫਾਇਲ ਲੱਭਦਾ ਹੈ। :data:`sys.path` ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਸਥਾਨਾਂ ਤੋਂ ਸ਼ੁਰੂਆਤੀ ਮੁੱਲ ਮਿਲਦਾ ਹੈ:" msgid "" "The directory containing the input script (or the current directory when no " "file is specified)." msgstr "" +"ਉਹ ਡਾਇਰੈਕਟਰੀ ਜਿਸ ਵਿੱਚ ਇਨਪੁੱਟ ਸਕ੍ਰਿਪਟ ਮੌਜੂਦ ਹੈ (ਜਾਂ ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਜਦੋਂ ਕੋਈ ਫਾਇਲ ਨਿਰਧਾਰਤ " +"ਨਾ ਕੀਤੀ ਗਈ ਹੋਵੇ)।" msgid "" ":envvar:`PYTHONPATH` (a list of directory names, with the same syntax as the " "shell variable :envvar:`PATH`)." msgstr "" +":envvar:`PYTHONPATH` (ਡਾਇਰੈਕਟਰੀ ਨਾਮਾਂ ਦੀ ਇੱਕ ਸੂਚੀ, ਜਿਸਦਾ ਸੰਟੈਕਸ shell " +"ਚਲ :envvar:`PATH` ਵਰਗਾ ਹੀ ਹੁੰਦਾ ਹੈ)।" msgid "" "The installation-dependent default (by convention including a ``site-" "packages`` directory, handled by the :mod:`site` module)." msgstr "" +"ਇੰਸਟਾਲੇਸ਼ਨ 'ਤੇ ਨਿਰਭਰ ਮੂਲ ਮੁੱਲ (ਰਵਾਇਤੀ ਤੌਰ 'ਤੇ ਇਸ ਵਿੱਚ ``site-packages`` ਡਾਇਰੈਕਟਰੀ ਸ਼ਾਮਲ " +"ਹੁੰਦੀ ਹੈ, ਜਿਸਨੂੰ :mod:`site` ਮੌਡਿਊਲ ਸੰਭਾਲਦਾ ਹੈ)।" msgid "More details are at :ref:`sys-path-init`." -msgstr "" +msgstr "ਹੋਰ ਵੇਰਵੇ :ref:`sys-path-init` ਵਿੱਚ ਉਪਲਬਧ ਹਨ।" msgid "" "On file systems which support symlinks, the directory containing the input " "script is calculated after the symlink is followed. In other words the " "directory containing the symlink is **not** added to the module search path." msgstr "" +"ਜਿਨ੍ਹਾਂ ਫਾਇਲ ਸਿਸਟਮਾਂ ਵਿੱਚ symlink ਦਾ ਸਮਰਥਨ ਹੁੰਦਾ ਹੈ, ਉੱਥੇ ਇਨਪੁੱਟ ਸਕ੍ਰਿਪਟ ਵਾਲੀ ਡਾਇਰੈਕਟਰੀ " +"symlink ਨੂੰ ਫਾਲੋ ਕਰਨ ਤੋਂ ਬਾਅਦ ਨਿਰਧਾਰਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਦੂਜੇ ਸ਼ਬਦਾਂ ਵਿੱਚ, symlink ਵਾਲੀ " +"ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਮੌਡਿਊਲ ਖੋਜ ਮਾਰਗ ਵਿੱਚ **ਸ਼ਾਮਲ ਨਹੀਂ** ਕੀਤਾ ਜਾਂਦਾ।" msgid "" "After initialization, Python programs can modify :data:`sys.path`. The " @@ -296,9 +422,14 @@ msgid "" "library directory. This is an error unless the replacement is intended. See " "section :ref:`tut-standardmodules` for more information." msgstr "" +"ਸ਼ੁਰੂਆਤੀਕਰਨ ਤੋਂ ਬਾਅਦ, Python ਪ੍ਰੋਗਰਾਮ :data:`sys.path` ਨੂੰ ਬਦਲ ਸਕਦੇ ਹਨ। ਚੱਲ ਰਹੀ ਸਕ੍ਰਿਪਟ " +"ਵਾਲੀ ਡਾਇਰੈਕਟਰੀ ਖੋਜ ਮਾਰਗ ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਰੱਖੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਮਾਰਗ ਤੋਂ ਪਹਿਲਾਂ ਹੁੰਦੀ " +"ਹੈ। ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ਉਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਮੌਜੂਦ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਲਾਇਬ੍ਰੇਰੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਮੌਜੂਦ ਉਸੇ " +"ਨਾਮ ਦੇ ਮੌਡਿਊਲਾਂ ਦੀ ਥਾਂ ਲੋਡ ਕੀਤਾ ਜਾਵੇਗਾ। ਇਹ ਇੱਕ ਗਲਤੀ ਮੰਨੀ ਜਾਂਦੀ ਹੈ ਜਦ ਤੱਕ ਇਹ ਤਬਦੀਲੀ " +"ਜਾਣਬੁੱਝ ਕੇ ਨਾ ਕੀਤੀ ਗਈ ਹੋਵੇ। ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ :ref:`tut-standardmodules` ਭਾਗ ਵੇਖੋ।" msgid "\"Compiled\" Python files" -msgstr "" +msgstr "\"ਕੰਪਾਈਲ ਕੀਤੀਆਂ\" Python ਫਾਇਲਾਂ" msgid "" "To speed up loading modules, Python caches the compiled version of each " @@ -309,6 +440,12 @@ msgid "" "spam.cpython-33.pyc``. This naming convention allows compiled modules from " "different releases and different versions of Python to coexist." msgstr "" +"ਮੌਡਿਊਲਾਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਲੋਡ ਕਰਨ ਲਈ, Python ਹਰ ਮੌਡਿਊਲ ਦੇ ਕੰਪਾਈਲ ਕੀਤੇ ਸੰਸਕਰਣ ਨੂੰ " +"``__pycache__`` ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ :file:`module.{version}.pyc` ਨਾਮ ਹੇਠ ਸੰਭਾਲਦਾ ਹੈ, " +"ਜਿੱਥੇ version ਕੰਪਾਈਲ ਕੀਤੀ ਫਾਇਲ ਦੇ ਫਾਰਮੈਟ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ; ਇਸ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ Python ਦਾ " +"ਸੰਸਕਰਣ ਨੰਬਰ ਹੁੰਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਜੋਂ, CPython 3.3 ਵਿੱਚ spam.py ਦਾ ਕੰਪਾਈਲ ਕੀਤਾ ਸੰਸਕਰਣ " +"``__pycache__/spam.cpython-33.pyc`` ਵਜੋਂ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਨਾਮਕਰਨ ਵਿਧੀ Python " +"ਦੇ ਵੱਖ-ਵੱਖ ਸੰਸਕਰਣਾਂ ਅਤੇ ਰਿਲੀਜ਼ਾਂ ਦੇ ਕੰਪਾਈਲ ਕੀਤੇ ਮੌਡਿਊਲਾਂ ਨੂੰ ਇੱਕੱਠੇ ਮੌਜੂਦ ਰਹਿਣ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ।" msgid "" "Python checks the modification date of the source against the compiled " @@ -317,6 +454,10 @@ msgid "" "independent, so the same library can be shared among systems with different " "architectures." msgstr "" +"Python ਸਰੋਤ ਫਾਇਲ ਦੀ ਸੋਧ ਮਿਤੀ ਨੂੰ ਕੰਪਾਈਲ ਕੀਤੇ ਸੰਸਕਰਣ ਨਾਲ ਮਿਲਾ ਕੇ ਜਾਂਚਦਾ ਹੈ ਤਾਂ ਜੋ ਇਹ ਪਤਾ " +"ਲੱਗ ਸਕੇ ਕਿ ਕੀ ਉਹ ਪੁਰਾਣਾ ਹੋ ਗਿਆ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੰਪਾਈਲ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਇਹ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸਵੈਚਾਲਿਤ " +"ਪ੍ਰਕਿਰਿਆ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕੰਪਾਈਲ ਕੀਤੇ ਮੌਡਿਊਲ ਪਲੇਟਫਾਰਮ-ਸੁਤੰਤਰ ਹੁੰਦੇ ਹਨ, ਇਸ ਲਈ ਇੱਕੋ ਲਾਇਬ੍ਰੇਰੀ " +"ਨੂੰ ਵੱਖ-ਵੱਖ ਆਰਕੀਟੈਕਚਰ ਵਾਲੇ ਸਿਸਟਮਾਂ ਵਿੱਚ ਸਾਂਝਾ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "Python does not check the cache in two circumstances. First, it always " @@ -326,9 +467,14 @@ msgid "" "distribution, the compiled module must be in the source directory, and there " "must not be a source module." msgstr "" +"Python ਦੋ ਸਥਿਤੀਆਂ ਵਿੱਚ cache ਦੀ ਜਾਂਚ ਨਹੀਂ ਕਰਦਾ। ਪਹਿਲਾਂ, ਜਦੋਂ ਕੋਈ ਮੌਡਿਊਲ ਸਿੱਧੇ ਕਮਾਂਡ ਲਾਈਨ " +"ਤੋਂ ਲੋਡ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ Python ਹਮੇਸ਼ਾਂ ਉਸਨੂੰ ਦੁਬਾਰਾ ਕੰਪਾਈਲ ਕਰਦਾ ਹੈ ਅਤੇ ਨਤੀਜਾ ਸੰਭਾਲਦਾ ਨਹੀਂ। " +"ਦੂਜਾ, ਜੇ ਕੋਈ ਸਰੋਤ ਮੌਡਿਊਲ ਮੌਜੂਦ ਨਹੀਂ ਹੈ ਤਾਂ cache ਦੀ ਜਾਂਚ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ। ਸਿਰਫ਼ ਕੰਪਾਈਲ ਕੀਤੇ " +"ਵੰਡ-ਸੰਸਕਰਣ (compiled-only distribution) ਦਾ ਸਮਰਥਨ ਕਰਨ ਲਈ, ਕੰਪਾਈਲ ਕੀਤਾ ਮੌਡਿਊਲ ਸਰੋਤ " +"ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਸਰੋਤ ਮੌਡਿਊਲ ਮੌਜੂਦ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ।" msgid "Some tips for experts:" -msgstr "" +msgstr "ਮਾਹਿਰਾਂ ਲਈ ਕੁਝ ਸੁਝਾਅ:" msgid "" "You can use the :option:`-O` or :option:`-OO` switches on the Python command " @@ -339,25 +485,36 @@ msgid "" "have an ``opt-`` tag and are usually smaller. Future releases may change " "the effects of optimization." msgstr "" +"ਤੁਸੀਂ ਕੰਪਾਈਲ ਕੀਤੇ ਮੌਡਿਊਲ ਦਾ ਆਕਾਰ ਘਟਾਉਣ ਲਈ Python ਕਮਾਂਡ ਨਾਲ :option:`-O` " +"ਜਾਂ :option:`-OO` ਵਿਕਲਪ ਵਰਤ ਸਕਦੇ ਹੋ। ``-O`` ਵਿਕਲਪ assert ਕਥਨਾਂ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ, ਜਦਕਿ " +"``-OO`` ਵਿਕਲਪ assert ਕਥਨਾਂ ਅਤੇ __doc__ ਸਤਰਾਂ ਦੋਵਾਂ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ। ਕਿਉਂਕਿ ਕੁਝ ਪ੍ਰੋਗਰਾਮ " +"ਇਨ੍ਹਾਂ ਉੱਤੇ ਨਿਰਭਰ ਹੋ ਸਕਦੇ ਹਨ, ਇਸ ਲਈ ਇਹ ਵਿਕਲਪ ਕੇਵਲ ਤਦ ਹੀ ਵਰਤੋ ਜਦੋਂ ਤੁਹਾਨੂੰ ਪੂਰੀ ਜਾਣਕਾਰੀ ਹੋਵੇ। " +"\"Optimized\" ਮੌਡਿਊਲਾਂ ਵਿੱਚ ``opt-`` ਟੈਗ ਹੁੰਦਾ ਹੈ ਅਤੇ ਇਹ ਆਮ ਤੌਰ 'ਤੇ ਛੋਟੇ ਹੁੰਦੇ ਹਨ। ਭਵਿੱਖ ਦੀਆਂ " +"ਰਿਲੀਜ਼ਾਂ ਵਿੱਚ optimization ਦੇ ਪ੍ਰਭਾਵ ਬਦਲ ਸਕਦੇ ਹਨ।" msgid "" "A program doesn't run any faster when it is read from a ``.pyc`` file than " -"when it is read from a ``.py`` file; the only thing that's faster about ``." -"pyc`` files is the speed with which they are loaded." +"when it is read from a ``.py`` file; the only thing that's faster about " +"``.pyc`` files is the speed with which they are loaded." msgstr "" +"ਕੋਈ ਪ੍ਰੋਗਰਾਮ ``.pyc`` ਫਾਇਲ ਤੋਂ ਪੜ੍ਹੇ ਜਾਣ 'ਤੇ ``.py`` ਫਾਇਲ ਨਾਲੋਂ ਤੇਜ਼ ਨਹੀਂ ਚਲਦਾ; ``.pyc`` " +"ਫਾਇਲਾਂ ਦਾ ਕੇਵਲ ਇਹ ਫਾਇਦਾ ਹੈ ਕਿ ਉਹ ਤੇਜ਼ੀ ਨਾਲ ਲੋਡ ਹੁੰਦੀਆਂ ਹਨ।" msgid "" "The module :mod:`compileall` can create .pyc files for all modules in a " "directory." msgstr "" +":mod:`compileall` ਮੌਡਿਊਲ ਕਿਸੇ ਡਾਇਰੈਕਟਰੀ ਦੇ ਸਾਰੇ ਮੌਡਿਊਲਾਂ ਲਈ .pyc ਫਾਇਲਾਂ ਬਣਾ ਸਕਦਾ ਹੈ।" msgid "" "There is more detail on this process, including a flow chart of the " "decisions, in :pep:`3147`." msgstr "" +"ਇਸ ਪ੍ਰਕਿਰਿਆ ਬਾਰੇ ਹੋਰ ਵੇਰਵੇ, ਜਿਸ ਵਿੱਚ ਫੈਸਲਿਆਂ ਦਾ ਇੱਕ flow chart ਵੀ ਸ਼ਾਮਲ ਹੈ, :pep:`3147` " +"ਵਿੱਚ ਉਪਲਬਧ ਹਨ।" msgid "Standard Modules" -msgstr "" +msgstr "ਮਿਆਰੀ ਮੌਡਿਊਲ" msgid "" "Python comes with a library of standard modules, described in a separate " @@ -372,6 +529,16 @@ msgid "" "into every Python interpreter. The variables ``sys.ps1`` and ``sys.ps2`` " "define the strings used as primary and secondary prompts::" msgstr "" +"Python ਮਿਆਰੀ ਮੌਡਿਊਲਾਂ ਦੀ ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ ਨਾਲ ਆਉਂਦਾ ਹੈ, ਜਿਸਦਾ ਵੇਰਵਾ ਇੱਕ ਵੱਖਰੇ ਦਸਤਾਵੇਜ਼ " +"Python Library Reference (ਅੱਗੇ \"Library Reference\") ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਕੁਝ ਮੌਡਿਊਲ " +"ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ ਹੀ built-in ਹੁੰਦੇ ਹਨ; ਇਹ ਉਹਨਾਂ ਕਾਰਵਾਈਆਂ ਤੱਕ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ ਜੋ ਭਾਸ਼ਾ ਦੇ " +"ਮੁੱਖ ਹਿੱਸੇ ਦਾ ਭਾਗ ਨਹੀਂ ਹਨ, ਪਰ ਕਾਰਗੁਜ਼ਾਰੀ ਜਾਂ operating system ਦੀਆਂ ਮੁੱਢਲੀਆਂ ਸਹੂਲਤਾਂ ਜਿਵੇਂ " +"system calls ਤੱਕ ਪਹੁੰਚ ਦੇਣ ਲਈ ਸ਼ਾਮਲ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ। ਅਜਿਹੇ ਮੌਡਿਊਲਾਂ ਦਾ ਸਮੂਹ ਇੱਕ " +"configuration ਵਿਕਲਪ ਹੈ ਅਤੇ ਇਹ ਅਧਾਰਭੂਤ platform ਉੱਤੇ ਵੀ ਨਿਰਭਰ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, :mod:`winreg` ਮੌਡਿਊਲ ਸਿਰਫ਼ Windows ਸਿਸਟਮਾਂ ਉੱਤੇ ਉਪਲਬਧ ਹੈ। ਇੱਕ ਖਾਸ ਮੌਡਿਊਲ ਜਿਸ ਉੱਤੇ " +"ਧਿਆਨ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ, ਉਹ ਹੈ :mod:`sys`, ਜੋ ਹਰ Python ਇੰਟਰਪ੍ਰੀਟਰ ਵਿੱਚ built-in ਹੁੰਦਾ ਹੈ। " +"``sys.ps1`` ਅਤੇ ``sys.ps2`` ਚਲ primary ਅਤੇ secondary prompt ਲਈ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ " +"ਸਤਰਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਨ::" msgid "" ">>> import sys\n" @@ -384,11 +551,22 @@ msgid "" "Yuck!\n" "C>" msgstr "" +">>> import sys\n" +">>> sys.ps1\n" +"'>>> '\n" +">>> sys.ps2\n" +"'... '\n" +">>> sys.ps1 = 'C> '\n" +"C> print('Yuck!')\n" +"Yuck!\n" +"C>" msgid "" "These two variables are only defined if the interpreter is in interactive " "mode." msgstr "" +"ਇਹ ਦੋਵੇਂ ਚਲ ਕੇਵਲ ਤਦ ਹੀ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਇੰਟਰਪ੍ਰੀਟਰ interactive mode ਵਿੱਚ ਚੱਲ ਰਿਹਾ " +"ਹੋਵੇ।" msgid "" "The variable ``sys.path`` is a list of strings that determines the " @@ -397,19 +575,27 @@ msgid "" "default if :envvar:`PYTHONPATH` is not set. You can modify it using " "standard list operations::" msgstr "" +"ਚਲ ``sys.path`` ਸਤਰਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਹੈ ਜੋ ਮੌਡਿਊਲਾਂ ਲਈ ਇੰਟਰਪ੍ਰੀਟਰ ਦਾ ਖੋਜ ਮਾਰਗ ਨਿਰਧਾਰਤ " +"ਕਰਦੀ ਹੈ। ਇਸਨੂੰ :envvar:`PYTHONPATH` environment variable ਤੋਂ ਮਿਲੇ ਮੂਲ ਮਾਰਗ ਜਾਂ, " +"ਜੇ :envvar:`PYTHONPATH` ਨਿਰਧਾਰਤ ਨਾ ਹੋਵੇ, built-in ਮੂਲ ਮਾਰਗ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। " +"ਤੁਸੀਂ ਇਸਨੂੰ ਆਮ list operations ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਬਦਲ ਸਕਦੇ ਹੋ::" msgid "" ">>> import sys\n" ">>> sys.path.append('/ufs/guido/lib/python')" msgstr "" +">>> import sys\n" +">>> sys.path.append('/ufs/guido/lib/python')" msgid "The :func:`dir` Function" -msgstr "" +msgstr ":func:`dir` ਫੰਕਸ਼ਨ" msgid "" "The built-in function :func:`dir` is used to find out which names a module " "defines. It returns a sorted list of strings::" msgstr "" +"built-in ਫੰਕਸ਼ਨ :func:`dir` ਦੀ ਵਰਤੋਂ ਇਹ ਜਾਣਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿ ਕੋਈ ਮੌਡਿਊਲ ਕਿਹੜੇ ਨਾਮ " +"ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਇਹ ਸਤਰਾਂ ਦੀ ਇੱਕ ਕ੍ਰਮਬੱਧ ਸੂਚੀ ਵਾਪਸ ਕਰਦਾ ਹੈ::" msgid "" ">>> import fibo, sys\n" @@ -445,10 +631,44 @@ msgid "" "'version_info',\n" " 'warnoptions']" msgstr "" +">>> import fibo, sys\n" +">>> dir(fibo)\n" +"['__name__', 'fib', 'fib2']\n" +">>> dir(sys)\n" +"['__breakpointhook__', '__displayhook__', '__doc__', '__excepthook__',\n" +" '__interactivehook__', '__loader__', '__name__', '__package__', " +"'__spec__',\n" +" '__stderr__', '__stdin__', '__stdout__', '__unraisablehook__',\n" +" '_clear_type_cache', '_current_frames', '_debugmallocstats', '_framework',\n" +" '_getframe', '_git', '_home', '_xoptions', 'abiflags', 'addaudithook',\n" +" 'api_version', 'argv', 'audit', 'base_exec_prefix', 'base_prefix',\n" +" 'breakpointhook', 'builtin_module_names', 'byteorder', 'call_tracing',\n" +" 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', " +"'exc_info',\n" +" 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info',\n" +" 'float_repr_style', 'get_asyncgen_hooks', " +"'get_coroutine_origin_tracking_depth',\n" +" 'getallocatedblocks', 'getdefaultencoding', 'getdlopenflags',\n" +" 'getfilesystemencodeerrors', 'getfilesystemencoding', 'getprofile',\n" +" 'getrecursionlimit', 'getrefcount', 'getsizeof', 'getswitchinterval',\n" +" 'gettrace', 'hash_info', 'hexversion', 'implementation', 'int_info',\n" +" 'intern', 'is_finalizing', 'last_traceback', 'last_type', 'last_value',\n" +" 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks',\n" +" 'path_importer_cache', 'platform', 'prefix', 'ps1', 'ps2', " +"'pycache_prefix',\n" +" 'set_asyncgen_hooks', 'set_coroutine_origin_tracking_depth', " +"'setdlopenflags',\n" +" 'setprofile', 'setrecursionlimit', 'setswitchinterval', 'settrace', " +"'stderr',\n" +" 'stdin', 'stdout', 'thread_info', 'unraisablehook', 'version', " +"'version_info',\n" +" 'warnoptions']" msgid "" "Without arguments, :func:`dir` lists the names you have defined currently::" msgstr "" +"ਬਿਨਾਂ ਕਿਸੇ ਆਰਗੂਮੈਂਟ ਦੇ, :func:`dir` ਉਹਨਾਂ ਨਾਮਾਂ ਦੀ ਸੂਚੀ ਦਿਖਾਉਂਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਮੌਜੂਦਾ ਸਮੇਂ ਵਿੱਚ " +"ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਹਨ::" msgid "" ">>> a = [1, 2, 3, 4, 5]\n" @@ -457,16 +677,25 @@ msgid "" ">>> dir()\n" "['__builtins__', '__name__', 'a', 'fib', 'fibo', 'sys']" msgstr "" +">>> a = [1, 2, 3, 4, 5]\n" +">>> import fibo\n" +">>> fib = fibo.fib\n" +">>> dir()\n" +"['__builtins__', '__name__', 'a', 'fib', 'fibo', 'sys']" msgid "" "Note that it lists all types of names: variables, modules, functions, etc." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਇਹ ਹਰ ਕਿਸਮ ਦੇ ਨਾਮਾਂ ਦੀ ਸੂਚੀ ਦਿੰਦਾ ਹੈ: variables, modules, functions " +"ਆਦਿ।" msgid "" ":func:`dir` does not list the names of built-in functions and variables. If " -"you want a list of those, they are defined in the standard module :mod:" -"`builtins`::" +"you want a list of those, they are defined in the standard " +"module :mod:`builtins`::" msgstr "" +":func:`dir` built-in functions ਅਤੇ variables ਦੇ ਨਾਮਾਂ ਦੀ ਸੂਚੀ ਨਹੀਂ ਦਿੰਦਾ। ਜੇ ਤੁਸੀਂ " +"ਉਹਨਾਂ ਦੀ ਸੂਚੀ ਦੇਖਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਉਹ ਮਿਆਰੀ ਮੌਡਿਊਲ :mod:`builtins` ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹਨ::" msgid "" ">>> import builtins\n" @@ -502,9 +731,41 @@ msgid "" " 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars',\n" " 'zip']" msgstr "" +">>> import builtins\n" +">>> dir(builtins)\n" +"['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException',\n" +" 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning',\n" +" 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError',\n" +" 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning',\n" +" 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False',\n" +" 'FileExistsError', 'FileNotFoundError', 'FloatingPointError',\n" +" 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError',\n" +" 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError',\n" +" 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError',\n" +" 'MemoryError', 'NameError', 'None', 'NotADirectoryError', " +"'NotImplemented',\n" +" 'NotImplementedError', 'OSError', 'OverflowError',\n" +" 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError',\n" +" 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning',\n" +" 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError',\n" +" 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError',\n" +" 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError',\n" +" 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning',\n" +" 'ValueError', 'Warning', 'ZeroDivisionError', '_', '__build_class__',\n" +" '__debug__', '__doc__', '__import__', '__name__', '__package__', 'abs',\n" +" 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes', 'callable',\n" +" 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits',\n" +" 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit',\n" +" 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr',\n" +" 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass',\n" +" 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview',\n" +" 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property',\n" +" 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice',\n" +" 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars',\n" +" 'zip']" msgid "Packages" -msgstr "" +msgstr "ਪੈਕੇਜ" msgid "" "Packages are a way of structuring Python's module namespace by using " @@ -515,20 +776,35 @@ msgid "" "saves the authors of multi-module packages like NumPy or Pillow from having " "to worry about each other's module names." msgstr "" +"ਪੈਕੇਜ Python ਦੇ module namespace ਨੂੰ ਵਿਵਸਥਿਤ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ ਹਨ, ਜਿਸ ਵਿੱਚ \"dotted " +"module names\" ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਮੌਡਿਊਲ ਨਾਮ :mod:`!A.B` ਪੈਕੇਜ ``A`` ਦੇ ਅੰਦਰ " +"ਮੌਜੂਦ ``B`` ਨਾਮ ਦੇ submodule ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਜਿਵੇਂ ਮੌਡਿਊਲ ਵੱਖ-ਵੱਖ ਮੌਡਿਊਲ ਲੇਖਕਾਂ ਨੂੰ ਇੱਕ-ਦੂਜੇ ਦੇ " +"global variable ਨਾਮਾਂ ਦੀ ਚਿੰਤਾ ਤੋਂ ਬਚਾਉਂਦੇ ਹਨ, ਉਸੇ ਤਰ੍ਹਾਂ dotted module names NumPy " +"ਜਾਂ Pillow ਵਰਗੇ multi-module ਪੈਕੇਜਾਂ ਦੇ ਲੇਖਕਾਂ ਨੂੰ ਇੱਕ-ਦੂਜੇ ਦੇ ਮੌਡਿਊਲ ਨਾਮਾਂ ਦੀ ਚਿੰਤਾ ਤੋਂ ਬਚਾਉਂਦੇ " +"ਹਨ।" msgid "" "Suppose you want to design a collection of modules (a \"package\") for the " "uniform handling of sound files and sound data. There are many different " -"sound file formats (usually recognized by their extension, for example: :" -"file:`.wav`, :file:`.aiff`, :file:`.au`), so you may need to create and " -"maintain a growing collection of modules for the conversion between the " -"various file formats. There are also many different operations you might " -"want to perform on sound data (such as mixing, adding echo, applying an " -"equalizer function, creating an artificial stereo effect), so in addition " -"you will be writing a never-ending stream of modules to perform these " -"operations. Here's a possible structure for your package (expressed in " -"terms of a hierarchical filesystem):" -msgstr "" +"sound file formats (usually recognized by their extension, for " +"example: :file:`.wav`, :file:`.aiff`, :file:`.au`), so you may need to " +"create and maintain a growing collection of modules for the conversion " +"between the various file formats. There are also many different operations " +"you might want to perform on sound data (such as mixing, adding echo, " +"applying an equalizer function, creating an artificial stereo effect), so in " +"addition you will be writing a never-ending stream of modules to perform " +"these operations. Here's a possible structure for your package (expressed " +"in terms of a hierarchical filesystem):" +msgstr "" +"ਮੰਨ ਲਓ ਕਿ ਤੁਸੀਂ sound files ਅਤੇ sound data ਨੂੰ ਇੱਕਸਾਰ ਢੰਗ ਨਾਲ ਸੰਭਾਲਣ ਲਈ ਮੌਡਿਊਲਾਂ ਦਾ ਇੱਕ " +"ਸਮੂਹ (ਇੱਕ \"package\") ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ। ਕਈ ਵੱਖ-ਵੱਖ sound file formats ਹੁੰਦੇ ਹਨ (ਜਿਨ੍ਹਾਂ " +"ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਉਹਨਾਂ ਦੇ extension ਰਾਹੀਂ ਪਛਾਣਿਆ ਜਾਂਦਾ ਹੈ, " +"ਜਿਵੇਂ :file:`.wav`, :file:`.aiff`, :file:`.au`)। ਇਸ ਲਈ ਤੁਹਾਨੂੰ ਵੱਖ-ਵੱਖ ਫਾਰਮੈਟਾਂ " +"ਵਿਚਕਾਰ ਰੂਪਾਂਤਰਨ ਲਈ ਮੌਡਿਊਲਾਂ ਦਾ ਵਧਦਾ ਹੋਇਆ ਸੰਗ੍ਰਹਿ ਤਿਆਰ ਅਤੇ ਸੰਭਾਲਣਾ ਪੈ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ " +"ਇਲਾਵਾ sound data ਉੱਤੇ ਕਈ ਤਰ੍ਹਾਂ ਦੀਆਂ ਕਾਰਵਾਈਆਂ (ਜਿਵੇਂ mixing, echo ਜੋੜਨਾ, equalizer " +"ਲਗਾਉਣਾ ਜਾਂ artificial stereo effect ਬਣਾਉਣਾ) ਵੀ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਇਸ ਲਈ ਤੁਹਾਨੂੰ " +"ਇਹ ਕੰਮ ਕਰਨ ਲਈ ਵੀ ਕਈ ਮੌਡਿਊਲ ਲਿਖਣੇ ਪੈਣਗੇ। ਹੇਠਾਂ ਤੁਹਾਡੇ package ਦੀ ਇੱਕ ਸੰਭਾਵਿਤ ਬਣਤਰ " +"(hierarchical filesystem ਦੇ ਰੂਪ ਵਿੱਚ) ਦਿੱਤੀ ਗਈ ਹੈ:" msgid "" "sound/ Top-level package\n" @@ -555,11 +831,36 @@ msgid "" " karaoke.py\n" " ..." msgstr "" +"sound/ Top-level package\n" +" __init__.py Initialize the sound package\n" +" formats/ Subpackage for file format conversions\n" +" __init__.py\n" +" wavread.py\n" +" wavwrite.py\n" +" aiffread.py\n" +" aiffwrite.py\n" +" auread.py\n" +" auwrite.py\n" +" ...\n" +" effects/ Subpackage for sound effects\n" +" __init__.py\n" +" echo.py\n" +" surround.py\n" +" reverse.py\n" +" ...\n" +" filters/ Subpackage for filters\n" +" __init__.py\n" +" equalizer.py\n" +" vocoder.py\n" +" karaoke.py\n" +" ..." msgid "" -"When importing the package, Python searches through the directories on ``sys." -"path`` looking for the package subdirectory." +"When importing the package, Python searches through the directories on " +"``sys.path`` looking for the package subdirectory." msgstr "" +"ਜਦੋਂ ਕਿਸੇ ਪੈਕੇਜ ਨੂੰ import ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ Python ``sys.path`` ਵਿੱਚ ਦਿੱਤੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ " +"ਵਿੱਚ ਪੈਕੇਜ ਦੀ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ।" msgid "" "The :file:`__init__.py` files are required to make Python treat directories " @@ -570,61 +871,80 @@ msgid "" "can just be an empty file, but it can also execute initialization code for " "the package or set the ``__all__`` variable, described later." msgstr "" +"Python ਨੂੰ ਕਿਸੇ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਪੈਕੇਜ ਵਜੋਂ ਮੰਨਣ ਲਈ :file:`__init__.py` ਫਾਇਲਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ " +"(ਜੇਕਰ :term:`namespace package` ਵਰਗੀ ਤੁਲਨਾਤਮਕ ਤੌਰ 'ਤੇ ਉੱਨਤ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਨਾ ਕੀਤੀ " +"ਜਾ ਰਹੀ ਹੋਵੇ)। ਇਹ ``string`` ਵਰਗੇ ਆਮ ਨਾਮ ਵਾਲੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਨੂੰ ਮੌਡਿਊਲ ਖੋਜ ਮਾਰਗ ਵਿੱਚ " +"ਬਾਅਦ ਵਿੱਚ ਆਉਣ ਵਾਲੇ ਵੈਧ ਮੌਡਿਊਲਾਂ ਨੂੰ ਅਣਜਾਣੇ ਵਿੱਚ ਲੁਕਾਉਣ ਤੋਂ ਰੋਕਦਾ ਹੈ। ਸਭ ਤੋਂ ਸਧਾਰਣ ਹਾਲਤ " +"ਵਿੱਚ :file:`__init__.py` ਕੇਵਲ ਇੱਕ ਖਾਲੀ ਫਾਇਲ ਹੋ ਸਕਦੀ ਹੈ, ਪਰ ਇਹ ਪੈਕੇਜ ਲਈ ਸ਼ੁਰੂਆਤੀਕਰਨ ਕੋਡ " +"ਵੀ ਚਲਾ ਸਕਦੀ ਹੈ ਜਾਂ ``__all__`` ਚਲ ਦਾ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੀ ਹੈ, ਜਿਸਦਾ ਵੇਰਵਾ ਅੱਗੇ ਦਿੱਤਾ " +"ਗਿਆ ਹੈ।" msgid "" "Users of the package can import individual modules from the package, for " "example::" -msgstr "" +msgstr "ਪੈਕੇਜ ਦੇ ਵਰਤੋਂਕਾਰ ਪੈਕੇਜ ਵਿੱਚੋਂ ਵੱਖ-ਵੱਖ ਮੌਡਿਊਲ import ਕਰ ਸਕਦੇ ਹਨ, ਉਦਾਹਰਨ ਵਜੋਂ::" msgid "import sound.effects.echo" -msgstr "" +msgstr "import sound.effects.echo" msgid "" "This loads the submodule :mod:`!sound.effects.echo`. It must be referenced " "with its full name. ::" msgstr "" +"ਇਹ :mod:`!sound.effects.echo` submodule ਨੂੰ ਲੋਡ ਕਰਦਾ ਹੈ। ਇਸਦਾ ਹਵਾਲਾ ਇਸਦੇ ਪੂਰੇ ਨਾਮ " +"ਨਾਲ ਦੇਣਾ ਲਾਜ਼ਮੀ ਹੈ।::" msgid "sound.effects.echo.echofilter(input, output, delay=0.7, atten=4)" -msgstr "" +msgstr "sound.effects.echo.echofilter(input, output, delay=0.7, atten=4)" msgid "An alternative way of importing the submodule is::" -msgstr "" +msgstr "ਇਸ submodule ਨੂੰ import ਕਰਨ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਇਹ ਹੈ::" msgid "from sound.effects import echo" -msgstr "" +msgstr "from sound.effects import echo" msgid "" "This also loads the submodule :mod:`!echo`, and makes it available without " "its package prefix, so it can be used as follows::" msgstr "" +"ਇਹ ਵੀ :mod:`!echo` submodule ਨੂੰ ਲੋਡ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ ਪੈਕੇਜ prefix ਤੋਂ ਬਿਨਾਂ ਉਪਲਬਧ " +"ਕਰਵਾਉਂਦਾ ਹੈ, ਇਸ ਲਈ ਇਸਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਤਰੀਕੇ ਨਾਲ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ::" msgid "echo.echofilter(input, output, delay=0.7, atten=4)" -msgstr "" +msgstr "echo.echofilter(input, output, delay=0.7, atten=4)" msgid "" "Yet another variation is to import the desired function or variable " "directly::" msgstr "" +"ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਲੋੜੀਂਦੇ function ਜਾਂ variable ਨੂੰ ਸਿੱਧਾ import ਕਰ ਲਿਆ ਜਾਵੇ::" msgid "from sound.effects.echo import echofilter" -msgstr "" +msgstr "from sound.effects.echo import echofilter" msgid "" -"Again, this loads the submodule :mod:`!echo`, but this makes its function :" -"func:`!echofilter` directly available::" +"Again, this loads the submodule :mod:`!echo`, but this makes its " +"function :func:`!echofilter` directly available::" msgstr "" +"ਦੁਬਾਰਾ, ਇਹ :mod:`!echo` submodule ਨੂੰ ਲੋਡ ਕਰਦਾ ਹੈ, ਪਰ ਇਸ ਵਾਰ ਇਸਦਾ :func:`!" +"echofilter` function ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਉਪਲਬਧ ਹੋ ਜਾਂਦਾ ਹੈ::" msgid "echofilter(input, output, delay=0.7, atten=4)" -msgstr "" +msgstr "echofilter(input, output, delay=0.7, atten=4)" msgid "" "Note that when using ``from package import item``, the item can be either a " "submodule (or subpackage) of the package, or some other name defined in the " "package, like a function, class or variable. The ``import`` statement first " "tests whether the item is defined in the package; if not, it assumes it is a " -"module and attempts to load it. If it fails to find it, an :exc:" -"`ImportError` exception is raised." +"module and attempts to load it. If it fails to find it, " +"an :exc:`ImportError` exception is raised." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਜਦੋਂ ``from package import item`` ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ item ਪੈਕੇਜ ਦਾ ਸਬ-" +"ਮੋਡੀਊਲ (ਜਾਂ ਸਬ-ਪੈਕੇਜ) ਹੋ ਸਕਦਾ ਹੈ, ਜਾਂ ਪੈਕੇਜ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਕੋਈ ਹੋਰ ਨਾਮ, ਜਿਵੇਂ ਕਿ ਫੰਕਸ਼ਨ, ਕਲਾਸ " +"ਜਾਂ ਵੇਰੀਏਬਲ। ``import`` ਕਥਨ ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚਦਾ ਹੈ ਕਿ item ਪੈਕੇਜ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੈ ਜਾਂ " +"ਨਹੀਂ; ਜੇ ਨਹੀਂ, ਤਾਂ ਇਹ ਮੰਨ ਲੈਂਦਾ ਹੈ ਕਿ ਇਹ ਇੱਕ ਮੋਡੀਊਲ ਹੈ ਅਤੇ ਇਸਨੂੰ ਲੋਡ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ। ਜੇ " +"ਇਹ ਇਸਨੂੰ ਲੱਭਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦਾ ਹੈ, ਤਾਂ ਇੱਕ :exc:`ImportError` ਅਪਵਾਦ ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ।" msgid "" "Contrarily, when using syntax like ``import item.subitem.subsubitem``, each " @@ -632,9 +952,13 @@ msgid "" "a package but can't be a class or function or variable defined in the " "previous item." msgstr "" +"ਇਸਦੇ ਉਲਟ, ਜਦੋਂ ``import item.subitem.subsubitem`` ਵਰਗਾ syntax ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ " +"ਆਖਰੀ item ਤੋਂ ਇਲਾਵਾ ਹਰ item ਇੱਕ package ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਆਖਰੀ item module ਜਾਂ " +"package ਹੋ ਸਕਦਾ ਹੈ, ਪਰ ਇਹ ਪਿਛਲੇ item ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਕੋਈ class, function ਜਾਂ " +"variable ਨਹੀਂ ਹੋ ਸਕਦਾ।" msgid "Importing \\* From a Package" -msgstr "" +msgstr "ਪੈਕੇਜ ਤੋਂ Import ਕਰਨਾ" msgid "" "Now what happens when the user writes ``from sound.effects import *``? " @@ -643,6 +967,11 @@ msgid "" "could take a long time and importing sub-modules might have unwanted side-" "effects that should only happen when the sub-module is explicitly imported." msgstr "" +"ਹੁਣ ਕੀ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਵਰਤੋਂਕਾਰ ``from sound.effects import *`` ਲਿਖਦਾ ਹੈ? ਆਦਰਸ਼ ਤੌਰ 'ਤੇ " +"ਉਮੀਦ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਕਿ Python ਫਾਇਲ ਸਿਸਟਮ ਵਿੱਚ ਜਾ ਕੇ ਪੈਕੇਜ ਵਿੱਚ ਮੌਜੂਦ ਸਾਰੇ submodules " +"ਲੱਭੇ ਅਤੇ ਉਹਨਾਂ ਨੂੰ import ਕਰ ਲਵੇ। ਪਰ ਇਸ ਵਿੱਚ ਕਾਫ਼ੀ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ ਅਤੇ submodules ਨੂੰ " +"import ਕਰਨ ਨਾਲ ਅਣਚਾਹੇ side-effects ਵੀ ਹੋ ਸਕਦੇ ਹਨ, ਜੋ ਸਿਰਫ਼ ਉਸ ਵੇਲੇ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ ਜਦੋਂ " +"ਕਿਸੇ submodule ਨੂੰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ import ਕੀਤਾ ਜਾਵੇ।" msgid "" "The only solution is for the package author to provide an explicit index of " @@ -655,14 +984,24 @@ msgid "" "importing \\* from their package. For example, the file :file:`sound/" "effects/__init__.py` could contain the following code::" msgstr "" +"ਇਸ ਸਮੱਸਿਆ ਦਾ ਇਕੱਲਾ ਹੱਲ ਇਹ ਹੈ ਕਿ ਪੈਕੇਜ ਦਾ ਲੇਖਕ ਪੈਕੇਜ ਦਾ ਇੱਕ ਸਪਸ਼ਟ index ਮੁਹੱਈਆ " +"ਕਰੇ। :keyword:`import` ਕਥਨ ਹੇਠਾਂ ਦਿੱਤੇ ਨਿਯਮ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ: ਜੇ ਪੈਕੇਜ " +"ਦੀ :file:`__init__.py` ਫਾਇਲ ਵਿੱਚ ``__all__`` ਨਾਮ ਦੀ ਸੂਚੀ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀ ਗਈ ਹੋਵੇ, " +"ਤਾਂ ``from package import *`` ਮਿਲਣ 'ਤੇ ਉਸਨੂੰ ਉਹਨਾਂ ਮੌਡਿਊਲਾਂ ਦੀ ਸੂਚੀ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ " +"ਜਿਨ੍ਹਾਂ ਨੂੰ import ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਪੈਕੇਜ ਦੇ ਨਵੇਂ ਸੰਸਕਰਣ ਜਾਰੀ ਹੋਣ 'ਤੇ ਇਸ ਸੂਚੀ ਨੂੰ ਅਪਡੇਟ " +"ਰੱਖਣਾ ਲੇਖਕ ਦੀ ਜ਼ਿੰਮੇਵਾਰੀ ਹੁੰਦੀ ਹੈ। ਪੈਕੇਜ ਲੇਖਕ ਇਹ ਵੀ ਫੈਸਲਾ ਕਰ ਸਕਦੇ ਹਨ ਕਿ ਉਹ ਇਸਦੀ ਸਹਾਇਤਾ ਨਾ " +"ਕਰਨ, ਜੇ ਉਹਨਾਂ ਨੂੰ ਆਪਣੇ ਪੈਕੇਜ ਤੋਂ \\* import ਕਰਨ ਦੀ ਕੋਈ ਲੋੜ ਨਾ ਲੱਗੇ। ਉਦਾਹਰਨ " +"ਲਈ, :file:`sound/effects/__init__.py` ਫਾਇਲ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਹੋ ਸਕਦਾ ਹੈ::" msgid "__all__ = [\"echo\", \"surround\", \"reverse\"]" -msgstr "" +msgstr "__all__ = [\"echo\", \"surround\", \"reverse\"]" msgid "" "This would mean that ``from sound.effects import *`` would import the three " "named submodules of the :mod:`!sound.effects` package." msgstr "" +"ਇਸਦਾ ਮਤਲਬ ਹੋਵੇਗਾ ਕਿ ``from sound.effects import *`` :mod:`!sound.effects` ਪੈਕੇਜ " +"ਦੇ ਤਿੰਨ ਨਾਮਿਤ submodules ਨੂੰ import ਕਰੇਗਾ।" msgid "" "Be aware that submodules might become shadowed by locally defined names. For " @@ -672,6 +1011,11 @@ msgid "" "submodule, because it is shadowed by the locally defined ``reverse`` " "function::" msgstr "" +"ਧਿਆਨ ਰੱਖੋ ਕਿ submodules ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਪਰਿਭਾਸ਼ਿਤ ਨਾਮਾਂ ਦੁਆਰਾ shadow ਹੋ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਨ " +"ਵਜੋਂ, ਜੇ ਤੁਸੀਂ :file:`sound/effects/__init__.py` ਵਿੱਚ ``reverse`` ਨਾਮ ਦਾ ਇੱਕ " +"function ਜੋੜ ਦਿਓ, ਤਾਂ ``from sound.effects import *`` ਸਿਰਫ਼ ``echo`` ਅਤੇ " +"``surround`` submodules ਨੂੰ import ਕਰੇਗਾ, ਪਰ ``reverse`` submodule ਨੂੰ ਨਹੀਂ, ਕਿਉਂਕਿ " +"ਉਹ ਸਥਾਨਕ ``reverse`` function ਦੁਆਰਾ shadow ਹੋ ਗਿਆ ਹੈ::" msgid "" "__all__ = [\n" @@ -683,37 +1027,63 @@ msgid "" "def reverse(msg: str): # <-- this name shadows the 'reverse.py' submodule\n" " return msg[::-1] # in the case of a 'from sound.effects import *'" msgstr "" +"__all__ = [\n" +" \"echo\", # refers to the 'echo.py' file\n" +" \"surround\", # refers to the 'surround.py' file\n" +" \"reverse\", # !!! refers to the 'reverse' function now !!!\n" +"]\n" +"\n" +"def reverse(msg: str): # <-- this name shadows the 'reverse.py' submodule\n" +" return msg[::-1] # in the case of a 'from sound.effects import *'" msgid "" "If ``__all__`` is not defined, the statement ``from sound.effects import *`` " "does *not* import all submodules from the package :mod:`!sound.effects` into " -"the current namespace; it only ensures that the package :mod:`!sound." -"effects` has been imported (possibly running any initialization code in :" -"file:`__init__.py`) and then imports whatever names are defined in the " +"the current namespace; it only ensures that the package :mod:`!" +"sound.effects` has been imported (possibly running any initialization code " +"in :file:`__init__.py`) and then imports whatever names are defined in the " "package. This includes any names defined (and submodules explicitly loaded) " "by :file:`__init__.py`. It also includes any submodules of the package that " "were explicitly loaded by previous :keyword:`import` statements. Consider " "this code::" msgstr "" +"ਜੇ ``__all__`` ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ, ਤਾਂ ``from sound.effects import *`` " +"ਕਥਨ :mod:`!sound.effects` ਪੈਕੇਜ ਦੇ ਸਾਰੇ submodules ਨੂੰ ਮੌਜੂਦਾ namespace ਵਿੱਚ import " +"ਨਹੀਂ ਕਰਦਾ। ਇਹ ਸਿਰਫ਼ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ :mod:`!sound.effects` ਪੈਕੇਜ import ਹੋ " +"ਚੁੱਕਾ ਹੈ (ਅਤੇ ਸੰਭਵ ਹੈ ਕਿ :file:`__init__.py` ਵਿੱਚ ਮੌਜੂਦ initialization code ਵੀ ਚੱਲਿਆ " +"ਹੋਵੇ), ਅਤੇ ਫਿਰ ਪੈਕੇਜ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਨਾਮਾਂ ਨੂੰ import ਕਰਦਾ ਹੈ। ਇਸ " +"ਵਿੱਚ :file:`__init__.py` ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਨਾਮ (ਅਤੇ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਲੋਡ ਕੀਤੇ submodules) " +"ਵੀ ਸ਼ਾਮਲ ਹਨ। ਇਸ ਵਿੱਚ ਉਹ submodules ਵੀ ਸ਼ਾਮਲ ਹਨ ਜੋ ਪਹਿਲਾਂ ਦੇ :keyword:`import` ਕਥਨਾਂ " +"ਦੁਆਰਾ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਲੋਡ ਕੀਤੇ ਗਏ ਸਨ। ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਵੇਖੋ::" msgid "" "import sound.effects.echo\n" "import sound.effects.surround\n" "from sound.effects import *" msgstr "" +"import sound.effects.echo\n" +"import sound.effects.surround\n" +"from sound.effects import *" msgid "" "In this example, the :mod:`!echo` and :mod:`!surround` modules are imported " -"in the current namespace because they are defined in the :mod:`!sound." -"effects` package when the ``from...import`` statement is executed. (This " -"also works when ``__all__`` is defined.)" +"in the current namespace because they are defined in the :mod:`!" +"sound.effects` package when the ``from...import`` statement is executed. " +"(This also works when ``__all__`` is defined.)" msgstr "" +"ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ :mod:`!echo` ਅਤੇ :mod:`!surround` ਮੌਡਿਊਲ ਮੌਜੂਦਾ namespace ਵਿੱਚ " +"import ਹੋ ਜਾਂਦੇ ਹਨ, ਕਿਉਂਕਿ ``from...import`` ਕਥਨ ਦੇ ਚੱਲਣ ਵੇਲੇ ਉਹ :mod:`!" +"sound.effects` ਪੈਕੇਜ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹਨ। (ਇਹ ``__all__`` ਪਰਿਭਾਸ਼ਿਤ ਹੋਣ 'ਤੇ ਵੀ ਕੰਮ " +"ਕਰਦਾ ਹੈ।)" msgid "" "Although certain modules are designed to export only names that follow " "certain patterns when you use ``import *``, it is still considered bad " "practice in production code." msgstr "" +"ਹਾਲਾਂਕਿ ਕੁਝ ਮੌਡਿਊਲ ਇਸ ਤਰ੍ਹਾਂ ਬਣਾਏ ਜਾਂਦੇ ਹਨ ਕਿ ``import *`` ਵਰਤਣ 'ਤੇ ਸਿਰਫ਼ ਕੁਝ ਖਾਸ " +"ਪੈਟਰਨਾਂ ਵਾਲੇ ਨਾਮ ਹੀ export ਕੀਤੇ ਜਾਣ, ਫਿਰ ਵੀ production code ਵਿੱਚ ਇਸਨੂੰ ਚੰਗਾ ਅਭਿਆਸ " +"ਨਹੀਂ ਮੰਨਿਆ ਜਾਂਦਾ।" msgid "" "Remember, there is nothing wrong with using ``from package import " @@ -721,30 +1091,45 @@ msgid "" "importing module needs to use submodules with the same name from different " "packages." msgstr "" +"ਯਾਦ ਰੱਖੋ, ``from package import specific_submodule`` ਵਰਤਣ ਵਿੱਚ ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਹੈ! " +"ਦਰਅਸਲ, ਇਹੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਗਈ notation ਹੈ, ਜਦ ਤੱਕ import ਕਰਨ ਵਾਲੇ ਮੌਡਿਊਲ ਨੂੰ ਵੱਖ-ਵੱਖ " +"ਪੈਕੇਜਾਂ ਤੋਂ ਇੱਕੋ ਨਾਮ ਵਾਲੇ submodules ਵਰਤਣ ਦੀ ਲੋੜ ਨਾ ਹੋਵੇ।" msgid "Intra-package References" -msgstr "" +msgstr "ਪੈਕੇਜ ਅੰਦਰਲੇ ਹਵਾਲੇ" msgid "" "When packages are structured into subpackages (as with the :mod:`!sound` " "package in the example), you can use absolute imports to refer to submodules " -"of siblings packages. For example, if the module :mod:`!sound.filters." -"vocoder` needs to use the :mod:`!echo` module in the :mod:`!sound.effects` " -"package, it can use ``from sound.effects import echo``." +"of siblings packages. For example, if the module :mod:`!" +"sound.filters.vocoder` needs to use the :mod:`!echo` module in the :mod:`!" +"sound.effects` package, it can use ``from sound.effects import echo``." msgstr "" +"ਜਦੋਂ ਪੈਕੇਜਾਂ ਨੂੰ subpackages ਵਿੱਚ ਵਿਵਸਥਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (ਜਿਵੇਂ ਉਦਾਹਰਨ ਵਿੱਚ :mod:`!sound` " +"ਪੈਕੇਜ), ਤਾਂ ਤੁਸੀਂ sibling packages ਦੇ submodules ਦਾ ਹਵਾਲਾ ਦੇਣ ਲਈ absolute imports " +"ਵਰਤ ਸਕਦੇ ਹੋ। ਉਦਾਹਰਨ ਵਜੋਂ, ਜੇ :mod:`!sound.filters.vocoder` ਮੌਡਿਊਲ ਨੂੰ :mod:`!" +"sound.effects` ਪੈਕੇਜ ਵਿੱਚ ਮੌਜੂਦ :mod:`!echo` ਮੌਡਿਊਲ ਦੀ ਲੋੜ ਹੋਵੇ, ਤਾਂ ਇਹ ``from " +"sound.effects import echo`` ਵਰਤ ਸਕਦਾ ਹੈ।" msgid "" "You can also write relative imports, with the ``from module import name`` " "form of import statement. These imports use leading dots to indicate the " -"current and parent packages involved in the relative import. From the :mod:" -"`!surround` module for example, you might use::" +"current and parent packages involved in the relative import. From " +"the :mod:`!surround` module for example, you might use::" msgstr "" +"ਤੁਸੀਂ ``from module import name`` ਰੂਪ ਵਾਲੇ import ਕਥਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ relative " +"imports ਵੀ ਲਿਖ ਸਕਦੇ ਹੋ। ਇਹ imports relative import ਵਿੱਚ ਸ਼ਾਮਲ ਮੌਜੂਦਾ ਅਤੇ parent " +"packages ਨੂੰ ਦਰਸਾਉਣ ਲਈ ਸ਼ੁਰੂਆਤੀ dots ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, :mod:`!surround` " +"ਮੌਡਿਊਲ ਤੋਂ ਤੁਸੀਂ ਇਹ ਵਰਤ ਸਕਦੇ ਹੋ::" msgid "" "from . import echo\n" "from .. import formats\n" "from ..filters import equalizer" msgstr "" +"from . import echo\n" +"from .. import formats\n" +"from ..filters import equalizer" msgid "" "Note that relative imports are based on the name of the current module's " @@ -752,46 +1137,36 @@ msgid "" "use as the main module of a Python application must always use absolute " "imports." msgstr "" - -msgid "Packages in Multiple Directories" -msgstr "" - -msgid "" -"Packages support one more special attribute, :attr:`~module.__path__`. This " -"is initialized to be a :term:`sequence` of strings containing the name of " -"the directory holding the package's :file:`__init__.py` before the code in " -"that file is executed. This variable can be modified; doing so affects " -"future searches for modules and subpackages contained in the package." -msgstr "" - -msgid "" -"While this feature is not often needed, it can be used to extend the set of " -"modules found in a package." -msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ relative imports ਮੌਜੂਦਾ ਮੌਡਿਊਲ ਦੇ ਪੈਕੇਜ ਨਾਮ 'ਤੇ ਆਧਾਰਿਤ ਹੁੰਦੇ ਹਨ। ਕਿਉਂਕਿ " +"main module ਦਾ ਕੋਈ ਪੈਕੇਜ ਨਹੀਂ ਹੁੰਦਾ, ਇਸ ਲਈ Python ਐਪਲੀਕੇਸ਼ਨ ਦੇ main module ਵਜੋਂ ਵਰਤੇ ਜਾਣ " +"ਵਾਲੇ ਮੌਡਿਊਲਾਂ ਨੂੰ ਹਮੇਸ਼ਾਂ absolute imports ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ।" msgid "Footnotes" -msgstr "" +msgstr "ਫੁਟਨੋਟ" msgid "" "In fact function definitions are also 'statements' that are 'executed'; the " "execution of a module-level function definition adds the function name to " "the module's global namespace." msgstr "" +"ਅਸਲ ਵਿੱਚ function definitions ਵੀ ਅਜਿਹੇ 'statements' ਹਨ ਜੋ 'execute' ਕੀਤੇ ਜਾਂਦੇ ਹਨ; " +"module-level function definition ਦੇ execute ਹੋਣ ਨਾਲ ਉਸ function ਦਾ ਨਾਮ ਮੌਡਿਊਲ ਦੇ " +"global namespace ਵਿੱਚ ਸ਼ਾਮਲ ਹੋ ਜਾਂਦਾ ਹੈ।" msgid "module" -msgstr "" +msgstr "ਮੌਡਿਊਲ" msgid "search" -msgstr "" +msgstr "ਖੋਜ" msgid "path" -msgstr "" +msgstr "ਮਾਰਗ" msgid "sys" -msgstr "" +msgstr "sys" msgid "builtins" -msgstr "" +msgstr "builtins" msgid "__all__" -msgstr "" +msgstr "__all__" diff --git a/tutorial/stdlib.po b/tutorial/stdlib.po index cb29f47..57431d9 100644 --- a/tutorial/stdlib.po +++ b/tutorial/stdlib.po @@ -4,6 +4,7 @@ # FIRST AUTHOR , YEAR. # # Translators: +# Mohit Yadav, 2026 # Bhuvansh Kataria, 2026 # #, fuzzy @@ -11,11 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,15 +24,16 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Brief tour of the standard library" -msgstr "" +msgstr "ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਸੰਖੇਪ ਜਾਣ-ਪਛਾਣ" msgid "Operating system interface" -msgstr "" +msgstr "ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਇੰਟਰਫੇਸ" msgid "" "The :mod:`os` module provides dozens of functions for interacting with the " "operating system::" msgstr "" +":mod:`os` ਮੌਡਿਊਲ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਨਾਲ ਪਰਸਪਰ ਕਿਰਿਆ ਕਰਨ ਲਈ ਦਰਜਨਾਂ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ::" msgid "" ">>> import os\n" @@ -41,17 +43,30 @@ msgid "" ">>> os.system('mkdir today') # Run the command mkdir in the system shell\n" "0" msgstr "" +">>> import os\n" +">>> os.getcwd() # ਮੌਜੂਦਾ ਕਾਰਜ ਡਾਇਰੈਕਟਰੀ ਵਾਪਸ ਕਰੋ\n" +"'C:\\\\Python315'\n" +"\n" +">>> os.chdir('/server/accesslogs') # ਮੌਜੂਦਾ ਕਾਰਜ ਡਾਇਰੈਕਟਰੀ ਬਦਲੋ\n" +"\n" +">>> os.system('mkdir today') # ਸਿਸਟਮ ਸ਼ੈੱਲ ਵਿੱਚ mkdir ਕਮਾਂਡ ਚਲਾਓ\n" +"0" msgid "" "Be sure to use the ``import os`` style instead of ``from os import *``. " "This will keep :func:`os.open` from shadowing the built-in :func:`open` " "function which operates much differently." msgstr "" +"``from os import *`` ਦੀ ਬਜਾਏ ``import os`` ਸ਼ੈਲੀ ਵਰਤਣਾ ਯਕੀਨੀ ਬਣਾਓ। ਇਸ " +"ਨਾਲ :func:`os.open` ਬਿਲਟ-ਇਨ :func:`open` ਫੰਕਸ਼ਨ ਨੂੰ ਓਹਲੇ ਨਹੀਂ ਕਰੇਗਾ, ਜੋ ਕਾਫ਼ੀ ਵੱਖਰੇ ਢੰਗ " +"ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ।" msgid "" "The built-in :func:`dir` and :func:`help` functions are useful as " "interactive aids for working with large modules like :mod:`os`::" msgstr "" +"ਬਿਲਟ-ਇਨ :func:`dir` ਅਤੇ :func:`help` ਫੰਕਸ਼ਨ :mod:`os` ਵਰਗੇ ਵੱਡੇ ਮੌਡਿਊਲਾਂ ਨਾਲ ਕੰਮ ਕਰਨ " +"ਲਈ ਇੰਟਰਐਕਟਿਵ ਸਹਾਇਕ ਵਜੋਂ ਲਾਭਦਾਇਕ ਹਨ::" msgid "" ">>> import os\n" @@ -60,11 +75,18 @@ msgid "" ">>> help(os)\n" "" msgstr "" +">>> import os\n" +">>> dir(os)\n" +"\n" +">>> help(os)\n" +"" msgid "" "For daily file and directory management tasks, the :mod:`shutil` module " -"provides a higher level interface that is easier to use::" +"provides a higher-level interface that is easier to use::" msgstr "" +"ਰੋਜ਼ਾਨਾ ਫਾਈਲ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਪ੍ਰਬੰਧਨ ਦੇ ਕੰਮਾਂ ਲਈ, :mod:`shutil` ਮੋਡੀਊਲ ਇੱਕ ਉੱਚ-ਪੱਧਰੀ ਇੰਟਰਫੇਸ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ ਵਰਤਣ ਵਿੱਚ ਵਧੇਰੇ ਆਸਾਨ ਹੈ::" msgid "" ">>> import shutil\n" @@ -73,49 +95,70 @@ msgid "" ">>> shutil.move('/build/executables', 'installdir')\n" "'installdir'" msgstr "" +">>> import shutil\n" +">>> shutil.copyfile('data.db', 'archive.db')\n" +"'archive.db'\n" +">>> shutil.move('/build/executables', 'installdir')\n" +"'installdir'" msgid "File wildcards" -msgstr "" +msgstr "ਫਾਈਲ ਵਾਈਲਡਕਾਰਡ" msgid "" "The :mod:`glob` module provides a function for making file lists from " "directory wildcard searches::" msgstr "" +":mod:`glob` ਮੌਡਿਊਲ ਡਾਇਰੈਕਟਰੀ ਵਾਈਲਡਕਾਰਡ ਖੋਜਾਂ ਤੋਂ ਫਾਈਲਾਂ ਦੀ ਸੂਚੀ ਬਣਾਉਣ ਲਈ ਇੱਕ ਫੰਕਸ਼ਨ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ::" msgid "" ">>> import glob\n" ">>> glob.glob('*.py')\n" "['primes.py', 'random.py', 'quote.py']" msgstr "" +">>> import glob\n" +">>> glob.glob('*.py')\n" +"['primes.py', 'random.py', 'quote.py']" msgid "Command-line arguments" -msgstr "" +msgstr "ਕਮਾਂਡ-ਲਾਈਨ ਆਰਗੂਮੈਂਟ" msgid "" -"Common utility scripts often need to process command line arguments. These " +"Common utility scripts often need to process command-line arguments. These " "arguments are stored in the :mod:`sys` module's *argv* attribute as a list. " "For instance, let's take the following :file:`demo.py` file::" msgstr "" +"ਆਮ ਉਪਯੋਗਤਾ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਅਕਸਰ ਕਮਾਂਡ-ਲਾਈਨ ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਹ " +"ਆਰਗੂਮੈਂਟ :mod:`sys` ਮੋਡੀਊਲ ਦੇ *argv* ਐਟ੍ਰਿਬਿਊਟ ਵਿੱਚ ਇੱਕ ਲਿਸਟ ਵਜੋਂ ਸਟੋਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। " +"ਉਦਾਹਰਨ ਲਈ, ਹੇਠਾਂ ਦਿੱਤੀ :file:`demo.py` ਫਾਈਲ ਲੈਂਦੇ ਹਾਂ::" msgid "" "# File demo.py\n" "import sys\n" "print(sys.argv)" msgstr "" +"# File demo.py\n" +"import sys\n" +"print(sys.argv)" msgid "" "Here is the output from running ``python demo.py one two three`` at the " "command line::" msgstr "" +"ਕਮਾਂਡ ਲਾਈਨ ਉੱਤੇ ``python demo.py one two three`` ਚਲਾਉਣ ਤੋਂ ਪ੍ਰਾਪਤ ਆਉਟਪੁੱਟ ਹੇਠਾਂ ਦਿੱਤੀ " +"ਗਈ ਹੈ::" msgid "['demo.py', 'one', 'two', 'three']" -msgstr "" +msgstr "['demo.py', 'one', 'two', 'three']" msgid "" "The :mod:`argparse` module provides a more sophisticated mechanism to " -"process command line arguments. The following script extracts one or more " +"process command-line arguments. The following script extracts one or more " "filenames and an optional number of lines to be displayed::" msgstr "" +":mod:`argparse` ਮੋਡੀਊਲ ਕਮਾਂਡ-ਲਾਈਨ ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਇੱਕ ਹੋਰ ਉੱਨਤ ਤਰੀਕਾ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੀ ਸਕ੍ਰਿਪਟ ਇੱਕ ਜਾਂ ਵੱਧ ਫਾਈਲਾਂ ਅਤੇ ਦਿਖਾਈਆਂ ਜਾਣ ਵਾਲੀਆਂ ਲਾਈਨਾਂ ਦੀ ਇੱਕ " +"ਵਿਕਲਪਿਕ ਗਿਣਤੀ ਕੱਢਦੀ ਹੈ::" msgid "" "import argparse\n" @@ -128,38 +171,57 @@ msgid "" "args = parser.parse_args()\n" "print(args)" msgstr "" +"import argparse\n" +"\n" +"parser = argparse.ArgumentParser(\n" +" prog='top',\n" +" description='Show top lines from each file')\n" +"parser.add_argument('filenames', nargs='+')\n" +"parser.add_argument('-l', '--lines', type=int, default=10)\n" +"args = parser.parse_args()\n" +"print(args)" msgid "" -"When run at the command line with ``python top.py --lines=5 alpha.txt beta." -"txt``, the script sets ``args.lines`` to ``5`` and ``args.filenames`` to " -"``['alpha.txt', 'beta.txt']``." +"When run at the command line with ``python top.py --lines=5 alpha.txt " +"beta.txt``, the script sets ``args.lines`` to ``5`` and ``args.filenames`` " +"to ``['alpha.txt', 'beta.txt']``." msgstr "" +"ਜਦੋਂ ਇਸਨੂੰ ਕਮਾਂਡ ਲਾਈਨ ਉੱਤੇ ``python top.py --lines=5 alpha.txt beta.txt`` ਨਾਲ ਚਲਾਇਆ " +"ਜਾਂਦਾ ਹੈ, ਤਾਂ ਸਕ੍ਰਿਪਟ ``args.lines`` ਨੂੰ ``5`` ਅਤੇ ``args.filenames`` ਨੂੰ " +"``['alpha.txt', 'beta.txt']`` ਸੈੱਟ ਕਰਦੀ ਹੈ।" msgid "Error output redirection and program termination" -msgstr "" +msgstr "ਗਲਤੀ ਆਉਟਪੁੱਟ ਰੀਡਾਇਰੈਕਸ਼ਨ ਅਤੇ ਪ੍ਰੋਗਰਾਮ ਸਮਾਪਤੀ" msgid "" "The :mod:`sys` module also has attributes for *stdin*, *stdout*, and " "*stderr*. The latter is useful for emitting warnings and error messages to " "make them visible even when *stdout* has been redirected::" msgstr "" +":mod:`sys` ਮੌਡਿਊਲ ਵਿੱਚ *stdin*, *stdout* ਅਤੇ *stderr* ਲਈ ਵੀ ਐਟ੍ਰਿਬਿਊਟ ਹੁੰਦੇ ਹਨ। " +"ਆਖਰੀ ਵਾਲਾ ਚੇਤਾਵਨੀਆਂ ਅਤੇ ਗਲਤੀ ਸੁਨੇਹੇ ਦਿਖਾਉਣ ਲਈ ਲਾਭਦਾਇਕ ਹੈ ਤਾਂ ਜੋ *stdout* ਰੀਡਾਇਰੈਕਟ ਹੋਣ " +"ਦੇ ਬਾਵਜੂਦ ਉਹ ਦਿੱਖਦੇ ਰਹਿਣ::" msgid "" ">>> sys.stderr.write('Warning, log file not found starting a new one\\n')\n" "Warning, log file not found starting a new one" msgstr "" +">>> sys.stderr.write('Warning, log file not found starting a new one\\n')\n" +"Warning, log file not found starting a new one" msgid "The most direct way to terminate a script is to use ``sys.exit()``." -msgstr "" +msgstr "ਕਿਸੇ ਸਕ੍ਰਿਪਟ ਨੂੰ ਸਮਾਪਤ ਕਰਨ ਦਾ ਸਭ ਤੋਂ ਸਿੱਧਾ ਤਰੀਕਾ ``sys.exit()`` ਵਰਤਣਾ ਹੈ।" msgid "String pattern matching" -msgstr "" +msgstr "ਸਤਰ ਪੈਟਰਨ ਮਿਲਾਣ" msgid "" "The :mod:`re` module provides regular expression tools for advanced string " "processing. For complex matching and manipulation, regular expressions offer " "succinct, optimized solutions::" msgstr "" +":mod:`re` ਮੌਡਿਊਲ ਉੱਨਤ ਸਤਰ ਪ੍ਰਕਿਰਿਆ ਲਈ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਟੂਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜਟਿਲ ਮਿਲਾਣ " +"ਅਤੇ ਸੋਧ ਲਈ ਰੈਗੂਲਰ ਐਕਸਪ੍ਰੈਸ਼ਨ ਸੰਖੇਪ ਅਤੇ ਅਨੁਕੂਲਿਤ ਹੱਲ ਮੁਹੱਈਆ ਕਰਦੇ ਹਨ::" msgid "" ">>> import re\n" @@ -168,24 +230,35 @@ msgid "" ">>> re.sub(r'(\\b[a-z]+) \\1', r'\\1', 'cat in the the hat')\n" "'cat in the hat'" msgstr "" +">>> import re\n" +">>> re.findall(r'\\bf[a-z]*', 'which foot or hand fell fastest')\n" +"['foot', 'fell', 'fastest']\n" +">>> re.sub(r'(\\b[a-z]+) \\1', r'\\1', 'cat in the the hat')\n" +"'cat in the hat'" msgid "" "When only simple capabilities are needed, string methods are preferred " "because they are easier to read and debug::" msgstr "" +"ਜਦੋਂ ਸਿਰਫ਼ ਸਧਾਰਣ ਸਮਰੱਥਾਵਾਂ ਦੀ ਲੋੜ ਹੋਵੇ, ਤਾਂ ਸਤਰ ਵਿਧੀਆਂ ਨੂੰ ਤਰਜੀਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ ਕਿਉਂਕਿ ਉਹਨਾਂ " +"ਨੂੰ ਪੜ੍ਹਣਾ ਅਤੇ ਡੀਬੱਗ ਕਰਨਾ ਆਸਾਨ ਹੁੰਦਾ ਹੈ::" msgid "" ">>> 'tea for too'.replace('too', 'two')\n" "'tea for two'" msgstr "" +">>> 'tea for too'.replace('too', 'two')\n" +"'tea for two'" msgid "Mathematics" -msgstr "" +msgstr "ਗਣਿਤ" msgid "" "The :mod:`math` module gives access to the underlying C library functions " "for floating-point math::" msgstr "" +":mod:`math` ਮੌਡਿਊਲ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਗਣਿਤ ਲਈ ਅਧਾਰਭੂਤ C ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨਾਂ ਤੱਕ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ " +"ਹੈ::" msgid "" ">>> import math\n" @@ -194,9 +267,14 @@ msgid "" ">>> math.log(1024, 2)\n" "10.0" msgstr "" +">>> import math\n" +">>> math.cos(math.pi / 4)\n" +"0.70710678118654757\n" +">>> math.log(1024, 2)\n" +"10.0" msgid "The :mod:`random` module provides tools for making random selections::" -msgstr "" +msgstr ":mod:`random` ਮੌਡਿਊਲ ਬੇਤਰਤੀਬ ਚੋਣਾਂ ਕਰਨ ਲਈ ਟੂਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ::" msgid "" ">>> import random\n" @@ -209,11 +287,22 @@ msgid "" ">>> random.randrange(6) # random integer chosen from range(6)\n" "4" msgstr "" +">>> import random\n" +">>> random.choice(['apple', 'pear', 'banana'])\n" +"'apple'\n" +">>> random.sample(range(100), 10) # sampling without replacement\n" +"[30, 83, 16, 4, 8, 81, 41, 50, 18, 33]\n" +">>> random.random() # random float from the interval [0.0, 1.0)\n" +"0.17970987693706186\n" +">>> random.randrange(6) # random integer chosen from range(6)\n" +"4" msgid "" "The :mod:`statistics` module calculates basic statistical properties (the " "mean, median, variance, etc.) of numeric data::" msgstr "" +":mod:`statistics` ਮੌਡਿਊਲ ਸੰਖਿਆਤਮਕ ਡਾਟਾ ਦੇ ਮੂਲ ਅੰਕੜਾ-ਸੰਬੰਧੀ ਗੁਣ (ਔਸਤ, ਮੱਧਿਕਾ, ਵੈਰੀਅੰਸ " +"ਆਦਿ) ਦੀ ਗਣਨਾ ਕਰਦਾ ਹੈ::" msgid "" ">>> import statistics\n" @@ -225,20 +314,33 @@ msgid "" ">>> statistics.variance(data)\n" "1.3720238095238095" msgstr "" +">>> import statistics\n" +">>> data = [2.75, 1.75, 1.25, 0.25, 0.5, 1.25, 3.5]\n" +">>> statistics.mean(data)\n" +"1.6071428571428572\n" +">>> statistics.median(data)\n" +"1.25\n" +">>> statistics.variance(data)\n" +"1.3720238095238095" msgid "" "The SciPy project has many other modules for numerical " "computations." msgstr "" +"SciPy ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸੰਖਿਆਤਮਕ ਗਣਨਾਵਾਂ ਲਈ ਹੋਰ ਵੀ ਬਹੁਤ ਸਾਰੇ ਮੌਡਿਊਲ " +"ਮੌਜੂਦ ਹਨ।" msgid "Internet access" -msgstr "" +msgstr "ਇੰਟਰਨੈੱਟ ਪਹੁੰਚ" msgid "" "There are a number of modules for accessing the internet and processing " "internet protocols. Two of the simplest are :mod:`urllib.request` for " "retrieving data from URLs and :mod:`smtplib` for sending mail::" msgstr "" +"ਇੰਟਰਨੈੱਟ ਤੱਕ ਪਹੁੰਚ ਅਤੇ ਇੰਟਰਨੈੱਟ ਪ੍ਰੋਟੋਕੋਲਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਲਈ ਕਈ ਮੌਡਿਊਲ ਉਪਲਬਧ ਹਨ। ਸਭ ਤੋਂ ਸਰਲ " +"ਮੌਡਿਊਲਾਂ ਵਿੱਚੋਂ ਦੋ ਹਨ :mod:`urllib.request`, ਜੋ URL ਤੋਂ ਡਾਟਾ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ, " +"ਅਤੇ :mod:`smtplib`, ਜੋ ਈਮੇਲ ਭੇਜਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ::" msgid "" ">>> from urllib.request import urlopen\n" @@ -260,12 +362,31 @@ msgid "" "... \"\"\")\n" ">>> server.quit()" msgstr "" +">>> from urllib.request import urlopen\n" +">>> with urlopen('https://docs.python.org/3/') as response:\n" +"... for line in response:\n" +"... line = line.decode() # Convert bytes to a str\n" +"... if 'updated' in line:\n" +"... print(line.rstrip()) # Remove trailing newline\n" +"...\n" +" Last updated on Nov 11, 2025 (20:11 UTC).\n" +"\n" +">>> import smtplib\n" +">>> server = smtplib.SMTP('localhost')\n" +">>> server.sendmail('soothsayer@example.org', 'jcaesar@example.org',\n" +"... \"\"\"To: jcaesar@example.org\n" +"... From: soothsayer@example.org\n" +"...\n" +"... Beware the Ides of March.\n" +"... \"\"\")\n" +">>> server.quit()" msgid "(Note that the second example needs a mailserver running on localhost.)" msgstr "" +"(ਧਿਆਨ ਦਿਓ ਕਿ ਦੂਜੇ ਉਦਾਹਰਨ ਲਈ localhost ਉੱਤੇ ਇੱਕ mailserver ਚੱਲ ਰਿਹਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।)" msgid "Dates and times" -msgstr "" +msgstr "ਤਾਰੀਖਾਂ ਅਤੇ ਸਮੇਂ" msgid "" "The :mod:`datetime` module supplies classes for manipulating dates and times " @@ -274,6 +395,10 @@ msgid "" "for output formatting and manipulation. The module also supports objects " "that are timezone aware. ::" msgstr "" +":mod:`datetime` ਮੌਡਿਊਲ ਤਾਰੀਖਾਂ ਅਤੇ ਸਮਿਆਂ ਨੂੰ ਸਧਾਰਣ ਅਤੇ ਜਟਿਲ ਦੋਵੇਂ ਤਰੀਕਿਆਂ ਨਾਲ ਸੰਭਾਲਣ ਲਈ " +"ਕਲਾਸਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਭਾਵੇਂ ਤਾਰੀਖ ਅਤੇ ਸਮੇਂ ਦੀ ਗਣਿਤਕ ਗਣਨਾ ਸਮਰਥਿਤ ਹੈ, ਪਰ ਇਸ ਦਾ ਮੁੱਖ ਧਿਆਨ " +"ਆਉਟਪੁੱਟ ਫਾਰਮੈਟਿੰਗ ਅਤੇ ਸੋਧ ਲਈ ਕਾਰਗਰ ਮੈਂਬਰ ਐਕਸਟ੍ਰੈਕਸ਼ਨ ਉੱਤੇ ਹੈ। ਇਹ ਮੌਡਿਊਲ timezone-aware ਵਸਤੂਆਂ " +"ਨੂੰ ਵੀ ਸਮਰਥਨ ਦਿੰਦਾ ਹੈ::" msgid "" ">>> # dates are easily constructed and formatted\n" @@ -290,15 +415,32 @@ msgid "" ">>> age.days\n" "14368" msgstr "" +">>> # dates are easily constructed and formatted\n" +">>> import datetime as dt\n" +">>> now = dt.date.today()\n" +">>> now\n" +"datetime.date(2003, 12, 2)\n" +">>> now.strftime(\"%m-%d-%y. %d %b %Y is a %A on the %d day of %B.\")\n" +"'12-02-03. 02 Dec 2003 is a Tuesday on the 02 day of December.'\n" +"\n" +">>> # dates support calendar arithmetic\n" +">>> birthday = dt.date(1964, 7, 31)\n" +">>> age = now - birthday\n" +">>> age.days\n" +"14368" msgid "Data compression" -msgstr "" +msgstr "ਡਾਟਾ ਸੰਕੁਚਨ" msgid "" "Common data archiving and compression formats are directly supported by " -"modules including: :mod:`zlib`, :mod:`gzip`, :mod:`bz2`, :mod:`lzma`, :mod:" -"`zipfile` and :mod:`tarfile`. ::" +"modules " +"including: :mod:`zlib`, :mod:`gzip`, :mod:`bz2`, :mod:`lzma`, :mod:`zipfile` " +"and :mod:`tarfile`. ::" msgstr "" +"ਆਮ ਡਾਟਾ ਆਰਕਾਈਵਿੰਗ ਅਤੇ ਸੰਕੁਚਨ ਫਾਰਮੈਟਾਂ ਨੂੰ ਸਿੱਧਾ ਸਮਰਥਨ ਦੇਣ ਵਾਲੇ ਮੌਡਿਊਲਾਂ " +"ਵਿੱਚ :mod:`zlib`, :mod:`gzip`, :mod:`bz2`, :mod:`lzma`, :mod:`zipfile` " +"ਅਤੇ :mod:`tarfile` ਸ਼ਾਮਲ ਹਨ::" msgid "" ">>> import zlib\n" @@ -313,21 +455,39 @@ msgid "" ">>> zlib.crc32(s)\n" "226805979" msgstr "" +">>> import zlib\n" +">>> s = b'witch which has which witches wrist watch'\n" +">>> len(s)\n" +"41\n" +">>> t = zlib.compress(s)\n" +">>> len(t)\n" +"37\n" +">>> zlib.decompress(t)\n" +"b'witch which has which witches wrist watch'\n" +">>> zlib.crc32(s)\n" +"226805979" msgid "Performance measurement" -msgstr "" +msgstr "ਕਾਰਗੁਜ਼ਾਰੀ ਮਾਪ" msgid "" "Some Python users develop a deep interest in knowing the relative " "performance of different approaches to the same problem. Python provides a " "measurement tool that answers those questions immediately." msgstr "" +"ਕੁਝ Python ਵਰਤੋਂਕਾਰ ਇੱਕੋ ਸਮੱਸਿਆ ਲਈ ਵੱਖ-ਵੱਖ ਪਹੁੰਚਾਂ ਦੀ ਆਪਸੀ ਕਾਰਗੁਜ਼ਾਰੀ ਜਾਣਨ ਵਿੱਚ ਖਾਸ " +"ਦਿਲਚਸਪੀ ਰੱਖਦੇ ਹਨ। Python ਇੱਕ ਮਾਪਣ ਸਾਧਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ ਇਨ੍ਹਾਂ ਸਵਾਲਾਂ ਦੇ ਤੁਰੰਤ ਜਵਾਬ " +"ਦਿੰਦਾ ਹੈ।" msgid "" "For example, it may be tempting to use the tuple packing and unpacking " -"feature instead of the traditional approach to swapping arguments. The :mod:" -"`timeit` module quickly demonstrates a modest performance advantage::" +"feature instead of the traditional approach to swapping arguments. " +"The :mod:`timeit` module quickly demonstrates a modest performance " +"advantage::" msgstr "" +"ਉਦਾਹਰਨ ਵਜੋਂ, ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਅਦਲਾ-ਬਦਲੀ ਲਈ ਰਵਾਇਤੀ ਤਰੀਕੇ ਦੀ ਬਜਾਏ tuple packing ਅਤੇ " +"unpacking ਵਰਤਣਾ ਆਕਰਸ਼ਕ ਲੱਗ ਸਕਦਾ ਹੈ। :mod:`timeit` ਮੌਡਿਊਲ ਇਸ ਦੀ ਥੋੜ੍ਹੀ ਕਾਰਗੁਜ਼ਾਰੀ " +"ਬਹਿਤਰੀ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਦਰਸਾਉਂਦਾ ਹੈ::" msgid "" ">>> from timeit import Timer\n" @@ -336,21 +496,30 @@ msgid "" ">>> Timer('a,b = b,a', 'a=1; b=2').timeit()\n" "0.54962537085770791" msgstr "" +">>> from timeit import Timer\n" +">>> Timer('t=a; a=b; b=t', 'a=1; b=2').timeit()\n" +"0.57535828626024577\n" +">>> Timer('a,b = b,a', 'a=1; b=2').timeit()\n" +"0.54962537085770791" msgid "" "In contrast to :mod:`timeit`'s fine level of granularity, the :mod:`profile` " "and :mod:`pstats` modules provide tools for identifying time critical " "sections in larger blocks of code." msgstr "" +":mod:`timeit` ਦੀ ਬਹੁਤ ਸੁਖਮ ਮਾਪ ਸਮਰੱਥਾ ਦੇ ਉਲਟ, :mod:`profile` ਅਤੇ :mod:`pstats` " +"ਮੌਡਿਊਲ ਕੋਡ ਦੇ ਵੱਡੇ ਭਾਗਾਂ ਵਿੱਚ ਸਮੇਂ-ਸੰਵੇਦਨਸ਼ੀਲ ਹਿੱਸਿਆਂ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਸਾਧਨ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ।" msgid "Quality control" -msgstr "" +msgstr "ਗੁਣਵੱਤਾ ਨਿਯੰਤਰਣ" msgid "" "One approach for developing high quality software is to write tests for each " "function as it is developed and to run those tests frequently during the " "development process." msgstr "" +"ਉੱਚ ਗੁਣਵੱਤਾ ਵਾਲਾ ਸੌਫਟਵੇਅਰ ਵਿਕਸਿਤ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਹਰ ਫੰਕਸ਼ਨ ਲਈ ਵਿਕਾਸ ਦੌਰਾਨ " +"ਟੈਸਟ ਲਿਖੇ ਜਾਣ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਵਾਰ-ਵਾਰ ਚਲਾਇਆ ਜਾਵੇ।" msgid "" "The :mod:`doctest` module provides a tool for scanning a module and " @@ -360,6 +529,10 @@ msgid "" "example and it allows the doctest module to make sure the code remains true " "to the documentation::" msgstr "" +":mod:`doctest` ਮੌਡਿਊਲ ਮੌਡਿਊਲ ਦੀ ਸਕੈਨਿੰਗ ਅਤੇ docstrings ਵਿੱਚ ਸ਼ਾਮਲ ਟੈਸਟਾਂ ਦੀ ਜਾਂਚ ਲਈ " +"ਸਾਧਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਟੈਸਟ ਬਣਾਉਣਾ ਸਿਰਫ਼ ਇੱਕ ਆਮ ਕਾਲ ਅਤੇ ਉਸਦੇ ਨਤੀਜੇ ਨੂੰ docstring ਵਿੱਚ " +"ਕਾਪੀ-ਪੇਸਟ ਕਰਨ ਜਿੰਨਾ ਆਸਾਨ ਹੈ। ਇਸ ਨਾਲ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਵਿੱਚ ਉਦਾਹਰਨਾਂ ਸ਼ਾਮਲ ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ ਕੋਡ ਨੂੰ " +"ਦਸਤਾਵੇਜ਼ਾਂ ਦੇ ਅਨੁਕੂਲ ਰੱਖਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ::" msgid "" "def average(values):\n" @@ -373,12 +546,24 @@ msgid "" "import doctest\n" "doctest.testmod() # automatically validate the embedded tests" msgstr "" +"def average(values):\n" +" \"\"\"Computes the arithmetic mean of a list of numbers.\n" +"\n" +" >>> print(average([20, 30, 70]))\n" +" 40.0\n" +" \"\"\"\n" +" return sum(values) / len(values)\n" +"\n" +"import doctest\n" +"doctest.testmod() # automatically validate the embedded tests" msgid "" "The :mod:`unittest` module is not as effortless as the :mod:`doctest` " "module, but it allows a more comprehensive set of tests to be maintained in " "a separate file::" msgstr "" +":mod:`unittest` ਮੌਡਿਊਲ :mod:`doctest` ਜਿੰਨਾ ਸੌਖਾ ਨਹੀਂ ਹੈ, ਪਰ ਇਹ ਇੱਕ ਵੱਖਰੀ ਫਾਈਲ ਵਿੱਚ " +"ਹੋਰ ਵਿਸਤ੍ਰਿਤ ਟੈਸਟ ਸੈੱਟ ਨੂੰ ਸੰਭਾਲਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ::" msgid "" "import unittest\n" @@ -395,21 +580,39 @@ msgid "" "\n" "unittest.main() # Calling from the command line invokes all tests" msgstr "" +"import unittest\n" +"\n" +"class TestStatisticalFunctions(unittest.TestCase):\n" +"\n" +" def test_average(self):\n" +" self.assertEqual(average([20, 30, 70]), 40.0)\n" +" self.assertEqual(round(average([1, 5, 7]), 1), 4.3)\n" +" with self.assertRaises(ZeroDivisionError):\n" +" average([])\n" +" with self.assertRaises(TypeError):\n" +" average(20, 30, 70)\n" +"\n" +"unittest.main() # Calling from the command line invokes all tests" msgid "Batteries included" -msgstr "" +msgstr "ਸਭ ਕੁਝ ਸ਼ਾਮਲ" msgid "" "Python has a \"batteries included\" philosophy. This is best seen through " "the sophisticated and robust capabilities of its larger packages. For " "example:" msgstr "" +"Python ਦੀ \"batteries included\" ਫ਼ਲਸਫ਼ਾ ਹੈ। ਇਹ ਇਸਦੇ ਵੱਡੇ ਪੈਕੇਜਾਂ ਦੀਆਂ ਸ਼ਕਤੀਸ਼ਾਲੀ ਅਤੇ " +"ਮਜ਼ਬੂਤ ਸਮਰੱਥਾਵਾਂ ਰਾਹੀਂ ਸਪਸ਼ਟ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ:" msgid "" "The :mod:`xmlrpc.client` and :mod:`xmlrpc.server` modules make implementing " "remote procedure calls into an almost trivial task. Despite the modules' " "names, no direct knowledge or handling of XML is needed." msgstr "" +"ਮੌਡਿਊਲ :mod:`xmlrpc.client` ਅਤੇ :mod:`xmlrpc.server` ਰਿਮੋਟ ਪ੍ਰੋਸੀਜਰ ਕਾਲਾਂ RPC ਨੂੰ " +"ਲਾਗੂ ਕਰਨਾ ਲਗਭਗ ਬਹੁਤ ਹੀ ਆਸਾਨ ਕੰਮ ਬਣਾ ਦਿੰਦੇ ਹਨ। ਮੌਡਿਊਲਾਂ ਦੇ ਨਾਮਾਂ ਦੇ ਬਾਵਜੂਦ, XML ਬਾਰੇ ਸਿੱਧੇ " +"ਗਿਆਨ ਜਾਂ ਉਸਦੀ ਸੰਭਾਲ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ।" msgid "" "The :mod:`email` package is a library for managing email messages, including " @@ -419,30 +622,46 @@ msgid "" "structures (including attachments) and for implementing internet encoding " "and header protocols." msgstr "" +":mod:`email` ਪੈਕੇਜ ਈਮੇਲ ਸੁਨੇਹਿਆਂ ਦੇ ਪ੍ਰਬੰਧਨ ਲਈ ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ ਹੈ, ਜਿਸ ਵਿੱਚ MIME ਅਤੇ " +"ਹੋਰ :rfc:`5322` ਅਧਾਰਿਤ ਸੁਨੇਹਾ ਦਸਤਾਵੇਜ਼ ਸ਼ਾਮਲ ਹਨ। :mod:`smtplib` ਅਤੇ :mod:`poplib` ਤੋਂ " +"ਵੱਖਰਾ, ਜੋ ਅਸਲ ਵਿੱਚ ਸੁਨੇਹੇ ਭੇਜਦੇ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰਦੇ ਹਨ, email ਪੈਕੇਜ ਜਟਿਲ ਸੁਨੇਹਾ ਬਣਤਰਾਂ (ਅਟੈਚਮੈਂਟ " +"ਸਮੇਤ) ਬਣਾਉਣ ਜਾਂ ਡਿਕੋਡ ਕਰਨ ਅਤੇ ਇੰਟਰਨੈੱਟ ਐਨਕੋਡਿੰਗ ਅਤੇ ਹੈਡਰ ਪ੍ਰੋਟੋਕੋਲ ਲਾਗੂ ਕਰਨ ਲਈ ਪੂਰਾ ਟੂਲਸੈੱਟ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।" msgid "" "The :mod:`json` package provides robust support for parsing this popular " "data interchange format. The :mod:`csv` module supports direct reading and " "writing of files in Comma-Separated Value format, commonly supported by " -"databases and spreadsheets. XML processing is supported by the :mod:`xml." -"etree.ElementTree`, :mod:`xml.dom` and :mod:`xml.sax` packages. Together, " -"these modules and packages greatly simplify data interchange between Python " -"applications and other tools." +"databases and spreadsheets. XML processing is supported by " +"the :mod:`xml.etree.ElementTree`, :mod:`xml.dom` and :mod:`xml.sax` " +"packages. Together, these modules and packages greatly simplify data " +"interchange between Python applications and other tools." msgstr "" +":mod:`json` ਪੈਕੇਜ ਇਸ ਲੋਕਪ੍ਰਿਯ ਡਾਟਾ ਅਦਲਾ-ਬਦਲੀ ਫਾਰਮੈਟ ਨੂੰ ਪਾਰਸ ਕਰਨ ਲਈ ਮਜ਼ਬੂਤ ਸਮਰਥਨ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। :mod:`csv` ਮੌਡਿਊਲ Comma-Separated Value ਫਾਰਮੈਟ ਵਿੱਚ ਫਾਈਲਾਂ ਨੂੰ ਸਿੱਧੇ " +"ਪੜ੍ਹਨ ਅਤੇ ਲਿਖਣ ਦੀ ਸਹੂਲਤ ਦਿੰਦਾ ਹੈ, ਜਿਸਨੂੰ ਡਾਟਾਬੇਸਾਂ ਅਤੇ ਸਪ੍ਰੈਡਸ਼ੀਟਾਂ ਦੁਆਰਾ ਆਮ ਤੌਰ 'ਤੇ ਸਮਰਥਨ " +"ਮਿਲਦਾ ਹੈ। XML ਪ੍ਰਕਿਰਿਆ ਲਈ :mod:`xml.etree.ElementTree`, :mod:`xml.dom` " +"ਅਤੇ :mod:`xml.sax` ਪੈਕੇਜ ਉਪਲਬਧ ਹਨ। ਇਕੱਠੇ ਮਿਲ ਕੇ, ਇਹ ਮੌਡਿਊਲ ਅਤੇ ਪੈਕੇਜ Python ਐਪਲੀਕੇਸ਼ਨਾਂ " +"ਅਤੇ ਹੋਰ ਸਾਧਨਾਂ ਵਿਚਕਾਰ ਡਾਟਾ ਅਦਲਾ-ਬਦਲੀ ਨੂੰ ਕਾਫ਼ੀ ਆਸਾਨ ਬਣਾਉਂਦੇ ਹਨ।" msgid "" "The :mod:`sqlite3` module is a wrapper for the SQLite database library, " "providing a persistent database that can be updated and accessed using " "slightly nonstandard SQL syntax." msgstr "" +":mod:`sqlite3` ਮੌਡਿਊਲ SQLite ਡਾਟਾਬੇਸ ਲਾਇਬ੍ਰੇਰੀ ਲਈ ਇੱਕ ਰੈਪਰ ਹੈ, ਜੋ ਇੱਕ ਸਥਾਈ ਡਾਟਾਬੇਸ " +"ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਥੋੜ੍ਹੀ ਗੈਰ-ਮਿਆਰੀ SQL ਸੰਰਚਨਾ ਦੀ ਵਰਤੋਂ ਨਾਲ ਅੱਪਡੇਟ ਅਤੇ ਐਕਸੈਸ ਕੀਤਾ ਜਾ " +"ਸਕਦਾ ਹੈ।" msgid "" -"Internationalization is supported by a number of modules including :mod:" -"`gettext`, :mod:`locale`, and the :mod:`codecs` package." +"Internationalization is supported by a number of modules " +"including :mod:`gettext`, :mod:`locale`, and the :mod:`codecs` package." msgstr "" +"Internationalization ਲਈ :mod:`gettext`, :mod:`locale` ਅਤੇ :mod:`codecs` ਪੈਕੇਜ " +"ਸਮੇਤ ਕਈ ਮੌਡਿਊਲ ਸਮਰਥਨ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ।" msgid "built-in function" -msgstr "" +msgstr "ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨ" msgid "help" -msgstr "" +msgstr "ਮਦਦ" diff --git a/tutorial/stdlib2.po b/tutorial/stdlib2.po index b235f1d..cd187dd 100644 --- a/tutorial/stdlib2.po +++ b/tutorial/stdlib2.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,26 +23,33 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Brief tour of the standard library --- part II" -msgstr "" +msgstr "ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਸੰਖੇਪ ਜਾਣ-ਪਛਾਣ --- ਭਾਗ II" msgid "" "This second tour covers more advanced modules that support professional " "programming needs. These modules rarely occur in small scripts." msgstr "" +"ਇਹ ਦੂਜਾ ਜਾਣ-ਪਛਾਣ ਦੌਰਾ ਹੋਰ ਉੱਨਤ ਮੌਡਿਊਲਾਂ ਨੂੰ ਕਵਰ ਕਰਦਾ ਹੈ ਜੋ ਪੇਸ਼ੇਵਰ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੀਆਂ ਲੋੜਾਂ ਨੂੰ " +"ਸਮਰਥਨ ਦਿੰਦੇ ਹਨ। ਇਹ ਮੌਡਿਊਲ ਛੋਟੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਵਿੱਚ ਕਦਾਚਿਤ ਹੀ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।" msgid "Output formatting" -msgstr "" +msgstr "ਆਉਟਪੁੱਟ ਫਾਰਮੈਟਿੰਗ" msgid "" "The :mod:`reprlib` module provides a version of :func:`repr` customized for " "abbreviated displays of large or deeply nested containers::" msgstr "" +":mod:`reprlib` ਮੌਡਿਊਲ :func:`repr` ਦਾ ਇੱਕ ਐਸਾ ਸੰਸਕਰਣ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ ਵੱਡੇ ਜਾਂ ਬਹੁਤ " +"ਡੂੰਘੇ ਤੌਰ 'ਤੇ ਨੇਸਟ ਕੀਤੇ ਕੰਟੇਨਰਾਂ ਦੇ ਸੰਖੇਪ ਪ੍ਰਦਰਸ਼ਨ ਲਈ ਅਨੁਕੂਲਿਤ ਕੀਤਾ ਗਿਆ ਹੈ::" msgid "" ">>> import reprlib\n" ">>> reprlib.repr(set('supercalifragilisticexpialidocious'))\n" "\"{'a', 'c', 'd', 'e', 'f', 'g', ...}\"" msgstr "" +">>> import reprlib\n" +">>> reprlib.repr(set('supercalifragilisticexpialidocious'))\n" +"\"{'a', 'c', 'd', 'e', 'f', 'g', ...}\"" msgid "" "The :mod:`pprint` module offers more sophisticated control over printing " @@ -50,6 +57,10 @@ msgid "" "interpreter. When the result is longer than one line, the \"pretty printer\" " "adds line breaks and indentation to more clearly reveal data structure::" msgstr "" +":mod:`pprint` ਮੌਡਿਊਲ ਬਿਲਟ-ਇਨ ਅਤੇ ਵਰਤੋਂਕਾਰ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਵਸਤੂਆਂ ਨੂੰ ਦੁਭਾਸ਼ੀਏ ਦੁਆਰਾ " +"ਪੜ੍ਹਨਯੋਗ ਢੰਗ ਨਾਲ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਹੋਰ ਉੱਨਤ ਨਿਯੰਤਰਣ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਨਤੀਜਾ ਇੱਕ ਲਾਈਨ ਤੋਂ ਲੰਮਾ " +"ਹੋਵੇ, ਤਾਂ \"pretty printer\" ਡਾਟਾ ਸੰਰਚਨਾ ਨੂੰ ਹੋਰ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਦਿਖਾਉਣ ਲਈ ਲਾਈਨ ਬ੍ਰੇਕ ਅਤੇ " +"ਇੰਡੈਂਟੇਸ਼ਨ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ::" msgid "" ">>> import pprint\n" @@ -63,11 +74,23 @@ msgid "" " [['magenta', 'yellow'],\n" " 'blue']]]" msgstr "" +">>> import pprint\n" +">>> t = [[[['black', 'cyan'], 'white', ['green', 'red']], [['magenta',\n" +"... 'yellow'], 'blue']]]\n" +"...\n" +">>> pprint.pprint(t, width=30)\n" +"[[[['black', 'cyan'],\n" +" 'white',\n" +" ['green', 'red']],\n" +" [['magenta', 'yellow'],\n" +" 'blue']]]" msgid "" "The :mod:`textwrap` module formats paragraphs of text to fit a given screen " "width::" msgstr "" +":mod:`textwrap` ਮੌਡਿਊਲ ਪਾਠ ਦੇ ਪੈਰਾਗ੍ਰਾਫਾਂ ਨੂੰ ਦਿੱਤੀ ਗਈ ਸਕ੍ਰੀਨ ਚੌੜਾਈ ਦੇ ਅਨੁਕੂਲ ਫਾਰਮੈਟ ਕਰਦਾ " +"ਹੈ::" msgid "" ">>> import textwrap\n" @@ -82,12 +105,26 @@ msgid "" "instead of one big string with newlines\n" "to separate the wrapped lines." msgstr "" +">>> import textwrap\n" +">>> doc = \"\"\"The wrap() method is just like fill() except that it " +"returns\n" +"... a list of strings instead of one big string with newlines to separate\n" +"... the wrapped lines.\"\"\"\n" +"...\n" +">>> print(textwrap.fill(doc, width=40))\n" +"The wrap() method is just like fill()\n" +"except that it returns a list of strings\n" +"instead of one big string with newlines\n" +"to separate the wrapped lines." msgid "" "The :mod:`locale` module accesses a database of culture specific data " "formats. The grouping attribute of locale's format function provides a " "direct way of formatting numbers with group separators::" msgstr "" +":mod:`locale` ਮੌਡਿਊਲ ਸੱਭਿਆਚਾਰ-ਵਿਸ਼ੇਸ਼ ਡਾਟਾ ਫਾਰਮੈਟਾਂ ਦੇ ਡਾਟਾਬੇਸ ਤੱਕ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। " +"locale ਦੇ format ਫੰਕਸ਼ਨ ਦਾ grouping ਐਟ੍ਰਿਬਿਊਟ ਸਮੂਹ ਵਿਭਾਜਕਾਂ ਨਾਲ ਸੰਖਿਆਵਾਂ ਨੂੰ ਫਾਰਮੈਟ ਕਰਨ " +"ਦਾ ਸਿੱਧਾ ਤਰੀਕਾ ਦਿੰਦਾ ਹੈ::" msgid "" ">>> import locale\n" @@ -101,9 +138,19 @@ msgid "" "... conv['frac_digits'], x), grouping=True)\n" "'$1,234,567.80'" msgstr "" +">>> import locale\n" +">>> locale.setlocale(locale.LC_ALL, 'English_United States.1252')\n" +"'English_United States.1252'\n" +">>> conv = locale.localeconv() # get a mapping of conventions\n" +">>> x = 1234567.8\n" +">>> locale.format_string(\"%d\", x, grouping=True)\n" +"'1,234,567'\n" +">>> locale.format_string(\"%s%.*f\", (conv['currency_symbol'],\n" +"... conv['frac_digits'], x), grouping=True)\n" +"'$1,234,567.80'" msgid "Templating" -msgstr "" +msgstr "ਟੈਂਪਲੇਟਿੰਗ" msgid "" "The :mod:`string` module includes a versatile :class:`~string.Template` " @@ -111,6 +158,9 @@ msgid "" "allows users to customize their applications without having to alter the " "application." msgstr "" +":mod:`string` ਮੌਡਿਊਲ ਵਿੱਚ ਇੱਕ ਬਹੁ-ਉਦੇਸ਼ੀ :class:`~string.Template` ਕਲਾਸ ਸ਼ਾਮਲ ਹੈ " +"ਜਿਸਦਾ ਸਰਲ ਸਿੰਟੈਕਸ ਅੰਤਿਮ ਵਰਤੋਂਕਾਰਾਂ ਦੁਆਰਾ ਸੰਪਾਦਨ ਲਈ ਉਚਿਤ ਹੈ। ਇਸ ਨਾਲ ਵਰਤੋਂਕਾਰ ਆਪਣੀਆਂ " +"ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਸੋਧੇ ਬਿਨਾਂ ਉਹਨਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰ ਸਕਦੇ ਹਨ।" msgid "" "The format uses placeholder names formed by ``$`` with valid Python " @@ -119,6 +169,10 @@ msgid "" "letters with no intervening spaces. Writing ``$$`` creates a single escaped " "``$``::" msgstr "" +"ਇਹ ਫਾਰਮੈਟ ਵੈਧ Python ਪਛਾਣਕਰਤਾਵਾਂ (ਅੱਖਰ-ਅੰਕ ਅਤੇ ਅੰਡਰਸਕੋਰ) ਨਾਲ ਬਣੇ ``$`` ਅਧਾਰਿਤ " +"placeholder ਨਾਂ ਵਰਤਦਾ ਹੈ। placeholder ਨੂੰ braces ਵਿੱਚ ਰੱਖਣ ਨਾਲ ਉਸ ਤੋਂ ਬਾਅਦ ਹੋਰ ਅੱਖਰ-" +"ਅੰਕੀ ਅੱਖਰ ਬਿਨਾਂ ਖਾਲੀ ਥਾਂ ਦੇ ਲਿਖੇ ਜਾ ਸਕਦੇ ਹਨ। ``$$`` ਲਿਖਣ ਨਾਲ ਇੱਕ escaped ``$`` ਬਣਦਾ " +"ਹੈ::" msgid "" ">>> from string import Template\n" @@ -126,14 +180,23 @@ msgid "" ">>> t.substitute(village='Nottingham', cause='the ditch fund')\n" "'Nottinghamfolk send $10 to the ditch fund.'" msgstr "" +">>> from string import Template\n" +">>> t = Template('${village}folk send $$10 to $cause.')\n" +">>> t.substitute(village='Nottingham', cause='the ditch fund')\n" +"'Nottinghamfolk send $10 to the ditch fund.'" msgid "" "The :meth:`~string.Template.substitute` method raises a :exc:`KeyError` when " "a placeholder is not supplied in a dictionary or a keyword argument. For " -"mail-merge style applications, user supplied data may be incomplete and the :" -"meth:`~string.Template.safe_substitute` method may be more appropriate --- " -"it will leave placeholders unchanged if data is missing::" +"mail-merge style applications, user supplied data may be incomplete and " +"the :meth:`~string.Template.safe_substitute` method may be more appropriate " +"--- it will leave placeholders unchanged if data is missing::" msgstr "" +":meth:`~string.Template.substitute` ਵਿਧੀ ਉਸ ਵੇਲੇ :exc:`KeyError` ਉਤਪੰਨ ਕਰਦੀ ਹੈ " +"ਜਦੋਂ ਕਿਸੇ placeholder ਲਈ ਡਿਕਸ਼ਨਰੀ ਜਾਂ keyword argument ਵਿੱਚ ਮੁੱਲ ਨਾ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ। " +"mail-merge ਕਿਸਮ ਦੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਵਰਤੋਂਕਾਰ ਦੁਆਰਾ ਦਿੱਤਾ ਡਾਟਾ ਅਧੂਰਾ ਹੋ ਸਕਦਾ ਹੈ, ਇਸ " +"ਲਈ :meth:`~string.Template.safe_substitute` ਵਿਧੀ ਹੋਰ ਉਚਿਤ ਹੋ ਸਕਦੀ ਹੈ --- ਜੇ ਡਾਟਾ " +"ਗੈਰਹਾਜ਼ਰ ਹੋਵੇ ਤਾਂ ਇਹ placeholder ਨੂੰ ਬਦਲੇ ਬਿਨਾਂ ਛੱਡ ਦਿੰਦੀ ਹੈ::" msgid "" ">>> t = Template('Return the $item to $owner.')\n" @@ -145,6 +208,14 @@ msgid "" ">>> t.safe_substitute(d)\n" "'Return the unladen swallow to $owner.'" msgstr "" +">>> t = Template('Return the $item to $owner.')\n" +">>> d = dict(item='unladen swallow')\n" +">>> t.substitute(d)\n" +"Traceback (most recent call last):\n" +" ...\n" +"KeyError: 'owner'\n" +">>> t.safe_substitute(d)\n" +"'Return the unladen swallow to $owner.'" msgid "" "Template subclasses can specify a custom delimiter. For example, a batch " @@ -152,6 +223,9 @@ msgid "" "placeholders such as the current date, image sequence number, or file " "format::" msgstr "" +"Template ਦੀਆਂ ਉਪ-ਕਲਾਸਾਂ ਇੱਕ ਕਸਟਮ delimiter ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਵਜੋਂ, ਕਿਸੇ " +"ਫੋਟੋ ਬ੍ਰਾਊਜ਼ਰ ਲਈ batch renaming utility ਮੌਜੂਦਾ ਤਾਰੀਖ, ਚਿੱਤਰ ਕ੍ਰਮ ਸੰਖਿਆ ਜਾਂ ਫਾਈਲ ਫਾਰਮੈਟ " +"ਵਰਗੇ placeholder ਲਈ percent ਚਿੰਨ੍ਹ ਵਰਤ ਸਕਦੀ ਹੈ::" msgid "" ">>> import time, os.path\n" @@ -173,25 +247,52 @@ msgid "" "img_1076.jpg --> Ashley_1.jpg\n" "img_1077.jpg --> Ashley_2.jpg" msgstr "" +">>> import time, os.path\n" +">>> photofiles = ['img_1074.jpg', 'img_1076.jpg', 'img_1077.jpg']\n" +">>> class BatchRename(Template):\n" +"... delimiter = '%'\n" +"...\n" +">>> fmt = input('Enter rename style (%d-date %n-seqnum %f-format): ')\n" +"Enter rename style (%d-date %n-seqnum %f-format): Ashley_%n%f\n" +"\n" +">>> t = BatchRename(fmt)\n" +">>> date = time.strftime('%d%b%y')\n" +">>> for i, filename in enumerate(photofiles):\n" +"... base, ext = os.path.splitext(filename)\n" +"... newname = t.substitute(d=date, n=i, f=ext)\n" +"... print('{0} --> {1}'.format(filename, newname))\n" +"\n" +"img_1074.jpg --> Ashley_0.jpg\n" +"img_1076.jpg --> Ashley_1.jpg\n" +"img_1077.jpg --> Ashley_2.jpg" msgid "" "Another application for templating is separating program logic from the " "details of multiple output formats. This makes it possible to substitute " "custom templates for XML files, plain text reports, and HTML web reports." msgstr "" +"ਟੈਂਪਲੇਟਿੰਗ ਦਾ ਇੱਕ ਹੋਰ ਉਪਯੋਗ ਪ੍ਰੋਗਰਾਮ ਦੀ ਲਾਜਿਕ ਨੂੰ ਵੱਖ-ਵੱਖ ਆਉਟਪੁੱਟ ਫਾਰਮੈਟਾਂ ਦੇ ਵੇਰਵਿਆਂ ਤੋਂ ਅਲੱਗ ਕਰਨਾ " +"ਹੈ। ਇਸ ਨਾਲ XML ਫਾਈਲਾਂ, ਸਧਾਰਣ ਪਾਠ ਰਿਪੋਰਟਾਂ ਅਤੇ HTML ਵੈੱਬ ਰਿਪੋਰਟਾਂ ਲਈ ਕਸਟਮ ਟੈਂਪਲੇਟ ਵਰਤਣਾ " +"ਸੰਭਵ ਬਣਦਾ ਹੈ।" msgid "Working with binary data record layouts" -msgstr "" +msgstr "ਬਾਈਨਰੀ ਡਾਟਾ ਰਿਕਾਰਡ ਲੇਆਉਟ ਨਾਲ ਕੰਮ ਕਰਨਾ" msgid "" -"The :mod:`struct` module provides :func:`~struct.pack` and :func:`~struct." -"unpack` functions for working with variable length binary record formats. " -"The following example shows how to loop through header information in a ZIP " -"file without using the :mod:`zipfile` module. Pack codes ``\"H\"`` and " -"``\"I\"`` represent two and four byte unsigned numbers respectively. The " -"``\"<\"`` indicates that they are standard size and in little-endian byte " -"order::" +"The :mod:`struct` module provides :func:`~struct.pack` " +"and :func:`~struct.unpack` functions for working with variable length binary " +"record formats. The following example shows how to loop through header " +"information in a ZIP file without using the :mod:`zipfile` module. Pack " +"codes ``\"H\"`` and ``\"I\"`` represent two and four byte unsigned numbers " +"respectively. The ``\"<\"`` indicates that they are standard size and in " +"little-endian byte order::" msgstr "" +":mod:`struct` ਮੌਡਿਊਲ variable-length ਬਾਈਨਰੀ ਰਿਕਾਰਡ ਫਾਰਮੈਟਾਂ ਨਾਲ ਕੰਮ ਕਰਨ " +"ਲਈ :func:`~struct.pack` ਅਤੇ :func:`~struct.unpack` ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਹੇਠਾਂ " +"ਦਿੱਤੀ ਉਦਾਹਰਨ ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ :mod:`zipfile` ਮੌਡਿਊਲ ਦੀ ਵਰਤੋਂ ਬਿਨਾਂ ZIP ਫਾਈਲ ਦੇ header " +"ਜਾਣਕਾਰੀ ਵਿੱਚ ਕਿਵੇਂ ਲੂਪ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Pack ਕੋਡ ``\"H\"`` ਅਤੇ ``\"I\"`` ਕ੍ਰਮਵਾਰ ਦੋ " +"ਅਤੇ ਚਾਰ ਬਾਈਟ ਦੇ unsigned ਨੰਬਰ ਦਰਸਾਉਂਦੇ ਹਨ। ``\"<\"`` ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਇਹ standard " +"size ਅਤੇ little-endian byte order ਵਿੱਚ ਹਨ::" msgid "" "import struct\n" @@ -213,9 +314,27 @@ msgid "" "\n" " start += extra_size + comp_size # skip to the next header" msgstr "" +"import struct\n" +"\n" +"with open('myfile.zip', 'rb') as f:\n" +" data = f.read()\n" +"\n" +"start = 0\n" +"for i in range(3): # show the first 3 file headers\n" +" start += 14\n" +" fields = struct.unpack('>> import weakref, gc\n" @@ -355,15 +537,40 @@ msgid "" " o = self.data[key]()\n" "KeyError: 'primary'" msgstr "" +">>> import weakref, gc\n" +">>> class A:...\n" +" def __init__(self, value):...\n" +" self.value = value...\n" +" def __repr__(self):...\n" +" return str(self.value)\n" +"...\n" +">>> a = A(10) # ਇੱਕ ਰੈਫਰੈਂਸ ਬਣਾਓ\n" +">>> d = weakref.WeakValueDictionary()\n" +">>> d['primary'] = a # ਇੱਕ ਰੈਫਰੈਂਸ ਨਹੀਂ ਬਣਾਉਂਦਾ\n" +">>> d['primary'] # ਜੇਕਰ ਆਬਜੈਕਟ ਅਜੇ ਵੀ ਮੌਜੂਦ ਹੈ ਤਾਂ ਇਸਨੂੰ ਪ੍ਰਾਪਤ ਕਰੋ\n" +"10\n" +">>> del a # ਇੱਕ ਰੈਫਰੈਂਸ ਹਟਾਓ\n" +">>> gc.collect() # ਤੁਰੰਤ ਗਾਰਬੇਜ ਕਲੈਕਸ਼ਨ ਚਲਾਓ\n" +"0\n" +">>> d['primary'] # ਐਂਟਰੀ ਆਪਣੇ ਆਪ ਹਟ ਗਈ ਸੀ\n" +"Traceback (most recent call last):\n" +" ਫਾਈਲ \"\", ਲਾਈਨ 1, ਵਿੱਚ \n" +" d['primary'] # ਐਂਟਰੀ ਆਪਣੇ ਆਪ ਹਟਾ ਦਿੱਤੀ ਗਈ ਸੀ\n" +" ਫਾਈਲ \"C:/python315/lib/weakref.py\", ਲਾਈਨ 46, ਵਿੱਚ __getitem__\n" +" o = self.data[key]()\n" +"KeyError: 'primary'" msgid "Tools for working with lists" -msgstr "" +msgstr "ਸੂਚੀਆਂ ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ ਸਾਧਨ" msgid "" "Many data structure needs can be met with the built-in list type. However, " "sometimes there is a need for alternative implementations with different " "performance trade-offs." msgstr "" +"ਡਾਟਾ ਸੰਰਚਨਾ ਦੀਆਂ ਬਹੁਤ ਸਾਰੀਆਂ ਲੋੜਾਂ built-in list ਕਿਸਮ ਨਾਲ ਪੂਰੀਆਂ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। " +"ਹਾਲਾਂਕਿ, ਕਈ ਵਾਰ ਵੱਖ-ਵੱਖ ਕਾਰਗੁਜ਼ਾਰੀ ਸਮਝੌਤਿਆਂ ਵਾਲੀਆਂ ਵਿਕਲਪਿਕ implementations ਦੀ ਲੋੜ ਹੁੰਦੀ " +"ਹੈ।" msgid "" "The :mod:`array` module provides an :class:`~array.array` object that is " @@ -372,6 +579,11 @@ msgid "" "binary numbers (typecode ``\"H\"``) rather than the usual 16 bytes per entry " "for regular lists of Python int objects::" msgstr "" +":mod:`array` ਮੌਡਿਊਲ ਇੱਕ :class:`~array.array` ਆਬਜੈਕਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ list ਵਰਗਾ " +"ਹੁੰਦਾ ਹੈ, ਪਰ ਇਹ ਸਿਰਫ਼ ਇੱਕੋ ਕਿਸਮ ਦਾ ਡਾਟਾ ਸਟੋਰ ਕਰਦਾ ਹੈ ਅਤੇ ਉਸਨੂੰ ਹੋਰ ਸੰਖੇਪ ਰੂਪ ਵਿੱਚ ਸੰਭਾਲਦਾ ਹੈ। " +"ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ ਸੰਖਿਆਵਾਂ ਦੀ ਇੱਕ array ਦਿਖਾਈ ਗਈ ਹੈ ਜੋ Python int ਆਬਜੈਕਟਾਂ ਦੀ ਆਮ " +"list ਵਿੱਚ ਪ੍ਰਤੀ ਐਂਟਰੀ 16 bytes ਦੀ ਬਜਾਏ ਦੋ-byte unsigned binary numbers (typecode " +"``\"H\"``) ਦੇ ਰੂਪ ਵਿੱਚ ਸਟੋਰ ਕੀਤੀ ਗਈ ਹੈ::" msgid "" ">>> from array import array\n" @@ -381,6 +593,12 @@ msgid "" ">>> a[1:3]\n" "array('H', [10, 700])" msgstr "" +">>> from array import array\n" +">>> a = array('H', [4000, 10, 700, 22222])\n" +">>> sum(a)\n" +"26932\n" +">>> a[1:3]\n" +"array('H', [10, 700])" msgid "" "The :mod:`collections` module provides a :class:`~collections.deque` object " @@ -388,6 +606,10 @@ msgid "" "slower lookups in the middle. These objects are well suited for implementing " "queues and breadth first tree searches::" msgstr "" +":mod:`collections` ਮੌਡਿਊਲ ਇੱਕ :class:`~collections.deque` ਆਬਜੈਕਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ " +"list ਵਰਗਾ ਹੁੰਦਾ ਹੈ, ਪਰ ਇਸ ਵਿੱਚ ਖੱਬੇ ਪਾਸੇ ਤੋਂ append ਅਤੇ pop ਕਾਰਵਾਈਆਂ ਤੇਜ਼ ਹੁੰਦੀਆਂ ਹਨ, ਜਦਕਿ " +"ਵਿਚਕਾਰ lookup ਕੁਝ ਹੌਲੀ ਹੁੰਦੀ ਹੈ। ਇਹ ਆਬਜੈਕਟ queues ਅਤੇ breadth-first tree searches ਨੂੰ " +"ਲਾਗੂ ਕਰਨ ਲਈ ਬਹੁਤ ਉਚਿਤ ਹਨ::" msgid "" ">>> from collections import deque\n" @@ -396,6 +618,11 @@ msgid "" ">>> print(\"Handling\", d.popleft())\n" "Handling task1" msgstr "" +">>> from collections import deque\n" +">>> d = deque([\"task1\", \"task2\", \"task3\"])\n" +">>> d.append(\"task4\")\n" +">>> print(\"Handling\", d.popleft())\n" +"Handling task1" msgid "" "unsearched = deque([starting_node])\n" @@ -406,12 +633,21 @@ msgid "" " return m\n" " unsearched.append(m)" msgstr "" +"unsearched = deque([starting_node])\n" +"def breadth_first_search(unsearched):\n" +" node = unsearched.popleft()\n" +" for m in gen_moves(node):\n" +" if is_goal(m):\n" +" return m\n" +" unsearched.append(m)" msgid "" "In addition to alternative list implementations, the library also offers " "other tools such as the :mod:`bisect` module with functions for manipulating " "sorted lists::" msgstr "" +"ਵਿਕਲਪਿਕ list implementations ਤੋਂ ਇਲਾਵਾ, ਲਾਇਬ੍ਰੇਰੀ ਹੋਰ ਸਾਧਨ ਵੀ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ, ਜਿਵੇਂ " +"ਕਿ :mod:`bisect` ਮੌਡਿਊਲ ਜੋ sorted lists ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ::" msgid "" ">>> import bisect\n" @@ -420,6 +656,11 @@ msgid "" ">>> scores\n" "[(100, 'perl'), (200, 'tcl'), (300, 'ruby'), (400, 'lua'), (500, 'python')]" msgstr "" +">>> import bisect\n" +">>> scores = [(100, 'perl'), (200, 'tcl'), (400, 'lua'), (500, 'python')]\n" +">>> bisect.insort(scores, (300, 'ruby'))\n" +">>> scores\n" +"[(100, 'perl'), (200, 'tcl'), (300, 'ruby'), (400, 'lua'), (500, 'python')]" msgid "" "The :mod:`heapq` module provides functions for implementing heaps based on " @@ -427,6 +668,10 @@ msgid "" "This is useful for applications which repeatedly access the smallest element " "but do not want to run a full list sort::" msgstr "" +":mod:`heapq` ਮੌਡਿਊਲ ਆਮ lists ਉੱਤੇ ਆਧਾਰਿਤ heaps ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। " +"ਸਭ ਤੋਂ ਛੋਟੀ ਮੁੱਲ ਵਾਲੀ ਐਂਟਰੀ ਹਮੇਸ਼ਾਂ ਸਥਾਨ zero ਉੱਤੇ ਰੱਖੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਉਹਨਾਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ " +"ਲਾਭਦਾਇਕ ਹੈ ਜੋ ਵਾਰ-ਵਾਰ ਸਭ ਤੋਂ ਛੋਟੇ ਤੱਤ ਤੱਕ ਪਹੁੰਚ ਕਰਦੀਆਂ ਹਨ ਪਰ ਪੂਰੀ list ਨੂੰ sort ਨਹੀਂ ਕਰਨਾ " +"ਚਾਹੁੰਦੀਆਂ::" msgid "" ">>> from heapq import heapify, heappop, heappush\n" @@ -436,40 +681,55 @@ msgid "" ">>> [heappop(data) for i in range(3)] # fetch the three smallest entries\n" "[-5, 0, 1]" msgstr "" +">>> from heapq import heapify, heappop, heappush\n" +">>> data = [1, 3, 5, 7, 9, 2, 4, 6, 8, 0]\n" +">>> heapify(data) # rearrange the list into heap order\n" +">>> heappush(data, -5) # add a new entry\n" +">>> [heappop(data) for i in range(3)] # fetch the three smallest entries\n" +"[-5, 0, 1]" msgid "Decimal floating-point arithmetic" -msgstr "" +msgstr "ਦਸ਼ਮਲਵ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਅੰਕਗਣਿਤ" msgid "" "The :mod:`decimal` module offers a :class:`~decimal.Decimal` datatype for " "decimal floating-point arithmetic. Compared to the built-in :class:`float` " "implementation of binary floating point, the class is especially helpful for" msgstr "" +":mod:`decimal` ਮੌਡਿਊਲ ਦਸ਼ਮਲਵ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਅੰਕਗਣਿਤ ਲਈ :class:`~decimal.Decimal` " +"ਡਾਟਾ-ਟਾਈਪ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਬਾਈਨਰੀ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਦੀ built-in :class:`float` " +"implementation ਨਾਲ ਤੁਲਨਾ ਕਰਨ ਤੇ, ਇਹ ਕਲਾਸ ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਸਥਿਤੀਆਂ ਵਿੱਚ " +"ਲਾਭਦਾਇਕ ਹੈ" msgid "" "financial applications and other uses which require exact decimal " "representation," -msgstr "" +msgstr "ਵਿੱਤੀ ਐਪਲੀਕੇਸ਼ਨਾਂ ਅਤੇ ਹੋਰ ਉਹ ਵਰਤੋਂ ਜਿਨ੍ਹਾਂ ਨੂੰ ਸਹੀ ਦਸ਼ਮਲਵ ਨੁਮਾਇੰਦਗੀ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ," msgid "control over precision," -msgstr "" +msgstr "ਸ਼ੁੱਧਤਾ ਉੱਤੇ ਨਿਯੰਤਰਣ," msgid "control over rounding to meet legal or regulatory requirements," -msgstr "" +msgstr "ਕਾਨੂੰਨੀ ਜਾਂ ਨਿਯਮਕ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ rounding ਉੱਤੇ ਨਿਯੰਤਰਣ," msgid "tracking of significant decimal places, or" -msgstr "" +msgstr "ਮਹੱਤਵਪੂਰਨ ਦਸ਼ਮਲਵ ਅੰਕਾਂ ਦੀ ਨਿਗਰਾਨੀ, ਜਾਂ" msgid "" "applications where the user expects the results to match calculations done " "by hand." msgstr "" +"ਅਜਿਹੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਜਿੱਥੇ ਵਰਤੋਂਕਾਰ ਉਮੀਦ ਕਰਦਾ ਹੈ ਕਿ ਨਤੀਜੇ ਹੱਥ ਨਾਲ ਕੀਤੀਆਂ ਗਣਨਾਵਾਂ ਨਾਲ ਮੇਲ " +"ਖਾਣ।" msgid "" "For example, calculating a 5% tax on a 70 cent phone charge gives different " "results in decimal floating point and binary floating point. The difference " "becomes significant if the results are rounded to the nearest cent::" msgstr "" +"ਉਦਾਹਰਨ ਲਈ, 70 ਸੈਂਟ ਦੇ ਫ਼ੋਨ ਚਾਰਜ ਉੱਤੇ 5% ਟੈਕਸ ਦੀ ਗਣਨਾ ਕਰਨ ਨਾਲ ਦਸ਼ਮਲਵ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਅਤੇ " +"ਬਾਈਨਰੀ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਨਤੀਜੇ ਮਿਲਦੇ ਹਨ। ਜੇ ਨਤੀਜਿਆਂ ਨੂੰ ਸਭ ਤੋਂ ਨੇੜਲੇ ਸੈਂਟ ਤੱਕ round " +"ਕੀਤਾ ਜਾਵੇ ਤਾਂ ਇਹ ਫਰਕ ਮਹੱਤਵਪੂਰਨ ਬਣ ਜਾਂਦਾ ਹੈ::" msgid "" ">>> from decimal import *\n" @@ -478,6 +738,11 @@ msgid "" ">>> round(.70 * 1.05, 2)\n" "0.73" msgstr "" +">>> from decimal import *\n" +">>> round(Decimal('0.70') * Decimal('1.05'), 2)\n" +"Decimal('0.74')\n" +">>> round(.70 * 1.05, 2)\n" +"0.73" msgid "" "The :class:`~decimal.Decimal` result keeps a trailing zero, automatically " @@ -486,12 +751,18 @@ msgid "" "issues that can arise when binary floating point cannot exactly represent " "decimal quantities." msgstr "" +":class:`~decimal.Decimal` ਨਤੀਜਾ ਅੰਤ ਵਾਲੇ zero ਨੂੰ ਸੰਭਾਲ ਕੇ ਰੱਖਦਾ ਹੈ ਅਤੇ ਦੋ-ਦਸ਼ਮਲਵ-ਸਥਾਨ " +"ਵਾਲੇ ਗੁਣਾਂਕਾਂ ਤੋਂ ਆਪਣੇ ਆਪ ਚਾਰ-ਸਥਾਨੀ ਮਹੱਤਤਾ ਦਾ ਅਨੁਮਾਨ ਲਗਾਉਂਦਾ ਹੈ। Decimal ਹੱਥ ਨਾਲ ਕੀਤੀ ਗਈ " +"ਗਣਿਤ ਨੂੰ ਦੁਹਰਾਉਂਦਾ ਹੈ ਅਤੇ ਉਹਨਾਂ ਸਮੱਸਿਆਵਾਂ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ ਜੋ ਉਸ ਵੇਲੇ ਪੈਦਾ ਹੁੰਦੀਆਂ ਹਨ ਜਦੋਂ ਬਾਈਨਰੀ " +"ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਦਸ਼ਮਲਵ ਮਾਤਰਾਵਾਂ ਨੂੰ ਸਹੀ ਤਰ੍ਹਾਂ ਦਰਸਾ ਨਹੀਂ ਸਕਦਾ।" msgid "" "Exact representation enables the :class:`~decimal.Decimal` class to perform " "modulo calculations and equality tests that are unsuitable for binary " "floating point::" msgstr "" +"ਸਹੀ ਨੁਮਾਇੰਦਗੀ :class:`~decimal.Decimal` ਕਲਾਸ ਨੂੰ modulo ਗਣਨਾਵਾਂ ਅਤੇ ਸਮਾਨਤਾ ਟੈਸਟ ਕਰਨ " +"ਯੋਗ ਬਣਾਉਂਦੀ ਹੈ, ਜੋ ਬਾਈਨਰੀ ਫਲੋਟਿੰਗ-ਪੌਇੰਟ ਲਈ ਉਚਿਤ ਨਹੀਂ ਹੁੰਦੇ::" msgid "" ">>> Decimal('1.00') % Decimal('.10')\n" @@ -504,14 +775,26 @@ msgid "" ">>> 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 == 1.0\n" "False" msgstr "" +">>> Decimal('1.00') % Decimal('.10')\n" +"Decimal('0.00')\n" +">>> 1.00 % 0.10\n" +"0.09999999999999995\n" +"\n" +">>> sum([Decimal('0.1')]*10) == Decimal('1.0')\n" +"True\n" +">>> 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 == 1.0\n" +"False" msgid "" "The :mod:`decimal` module provides arithmetic with as much precision as " "needed::" -msgstr "" +msgstr ":mod:`decimal` ਮੌਡਿਊਲ ਲੋੜ ਅਨੁਸਾਰ ਜਿੰਨੀ ਮਰਜ਼ੀ ਸ਼ੁੱਧਤਾ ਨਾਲ ਅੰਕਗਣਿਤ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ::" msgid "" ">>> getcontext().prec = 36\n" ">>> Decimal(1) / Decimal(7)\n" "Decimal('0.142857142857142857142857142857142857')" msgstr "" +">>> getcontext().prec = 36\n" +">>> Decimal(1) / Decimal(7)\n" +"Decimal('0.142857142857142857142857142857142857')" diff --git a/tutorial/venv.po b/tutorial/venv.po index bf2d7a2..60302fe 100644 --- a/tutorial/venv.po +++ b/tutorial/venv.po @@ -4,6 +4,7 @@ # FIRST AUTHOR , YEAR. # # Translators: +# Mohit Yadav, 2026 # Bhuvansh Kataria, 2026 # #, fuzzy @@ -11,11 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,10 +24,10 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Virtual Environments and Packages" -msgstr "" +msgstr "ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਅਤੇ ਪੈਕੇਜ" msgid "Introduction" -msgstr "" +msgstr "ਜਾਣ-ਪਛਾਣ" msgid "" "Python applications will often use packages and modules that don't come as " @@ -35,6 +36,10 @@ msgid "" "bug has been fixed or the application may be written using an obsolete " "version of the library's interface." msgstr "" +"Python applications ਅਕਸਰ ਅਜਿਹੇ packages ਅਤੇ modules ਵਰਤਦੀਆਂ ਹਨ ਜੋ standard " +"library ਦਾ ਹਿੱਸਾ ਨਹੀਂ ਹੁੰਦੇ। ਕਈ ਵਾਰ ਕਿਸੇ application ਨੂੰ library ਦੇ ਇੱਕ ਖਾਸ version ਦੀ " +"ਲੋੜ ਹੁੰਦੀ ਹੈ, ਕਿਉਂਕਿ ਉਸਨੂੰ ਕਿਸੇ ਖਾਸ bug ਦੇ ਠੀਕ ਹੋਣ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ ਜਾਂ ਉਹ library ਦੇ ਪੁਰਾਣੇ " +"interface version ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਲਿਖੀ ਗਈ ਹੋ ਸਕਦੀ ਹੈ।" msgid "" "This means it may not be possible for one Python installation to meet the " @@ -43,12 +48,19 @@ msgid "" "are in conflict and installing either version 1.0 or 2.0 will leave one " "application unable to run." msgstr "" +"ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਇੱਕ ਹੀ Python installation ਹਰ ਐਪਲੀਕੇਸ਼ਨ ਦੀ ਲੋੜ ਪੂਰੀ ਨਹੀਂ ਕਰ ਸਕਦੀ। ਜੇ " +"ਐਪਲੀਕੇਸ਼ਨ A ਨੂੰ ਕਿਸੇ module ਦਾ version 1.0 ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ B ਨੂੰ version 2.0, " +"ਤਾਂ ਦੋਹਾਂ ਦੀਆਂ ਲੋੜਾਂ ਆਪਸ ਵਿੱਚ ਟਕਰਾਉਂਦੀਆਂ ਹਨ ਅਤੇ version 1.0 ਜਾਂ 2.0 ਵਿੱਚੋਂ ਕੋਈ ਇੱਕ install " +"ਕਰਨ ਨਾਲ ਇੱਕ ਐਪਲੀਕੇਸ਼ਨ ਨਹੀਂ ਚੱਲੇਗੀ।" msgid "" "The solution for this problem is to create a :term:`virtual environment`, a " "self-contained directory tree that contains a Python installation for a " "particular version of Python, plus a number of additional packages." msgstr "" +"ਇਸ ਸਮੱਸਿਆ ਦਾ ਹੱਲ ਇੱਕ :term:`virtual environment` ਬਣਾਉਣਾ ਹੈ, ਜੋ ਇੱਕ ਸਵੈ-ਨਿਰਭਰ " +"directory tree ਹੁੰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ Python ਦੇ ਕਿਸੇ ਖਾਸ version ਦੀ installation ਅਤੇ ਕੁਝ " +"ਵਾਧੂ packages ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।" msgid "" "Different applications can then use different virtual environments. To " @@ -58,31 +70,44 @@ msgid "" "application B requires a library be upgraded to version 3.0, this will not " "affect application A's environment." msgstr "" +"ਫਿਰ ਵੱਖ-ਵੱਖ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵੱਖ-ਵੱਖ virtual environments ਵਰਤ ਸਕਦੀਆਂ ਹਨ। ਪਿਛਲੀ ਉਦਾਹਰਨ " +"ਵਿੱਚ, ਐਪਲੀਕੇਸ਼ਨ A ਆਪਣੇ virtual environment ਵਿੱਚ version 1.0 ਰੱਖ ਸਕਦੀ ਹੈ ਜਦਕਿ " +"ਐਪਲੀਕੇਸ਼ਨ B version 2.0 ਵਰਤ ਸਕਦੀ ਹੈ। ਜੇ ਐਪਲੀਕੇਸ਼ਨ B ਨੂੰ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ version 3.0 ਤੱਕ " +"upgrade ਕਰਨ ਦੀ ਲੋੜ ਪਵੇ, ਤਾਂ ਇਸਦਾ ਐਪਲੀਕੇਸ਼ਨ A ਦੇ environment ਉੱਤੇ ਕੋਈ ਅਸਰ ਨਹੀਂ ਪਵੇਗਾ।" msgid "Creating Virtual Environments" -msgstr "" +msgstr "ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਬਣਾਉਣਾ" msgid "" -"The module used to create and manage virtual environments is called :mod:" -"`venv`. :mod:`venv` will install the Python version from which the command " -"was run (as reported by the :option:`--version` option). For instance, " -"executing the command with ``python3.12`` will install version 3.12." +"The module used to create and manage virtual environments is " +"called :mod:`venv`. :mod:`venv` will install the Python version from which " +"the command was run (as reported by the :option:`--version` option). For " +"instance, executing the command with ``python3.12`` will install version " +"3.12." msgstr "" +"ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਬਣਾਉਣ ਅਤੇ ਸੰਭਾਲਣ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਮੋਡੀਊਲ :mod:`venv` ਕਹਾਉਂਦਾ " +"ਹੈ। :mod:`venv` ਉਸ Python version ਨੂੰ install ਕਰੇਗਾ ਜਿਸ ਤੋਂ ਕਮਾਂਡ ਚਲਾਈ ਗਈ ਸੀ " +"(ਜਿਵੇਂ :option:`--version` ਵਿਕਲਪ ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ)। ਉਦਾਹਰਨ ਲਈ, " +"``python3.12`` ਨਾਲ ਕਮਾਂਡ ਚਲਾਉਣ 'ਤੇ version 3.12 install ਹੋਵੇਗਾ।" msgid "" "To create a virtual environment, decide upon a directory where you want to " "place it, and run the :mod:`venv` module as a script with the directory " "path::" msgstr "" +"ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਬਣਾਉਣ ਲਈ ਪਹਿਲਾਂ ਉਹ ਡਾਇਰੈਕਟਰੀ ਚੁਣੋ ਜਿੱਥੇ ਤੁਸੀਂ ਇਸਨੂੰ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਅਤੇ " +"ਫਿਰ :mod:`venv` ਮੋਡੀਊਲ ਨੂੰ ਡਾਇਰੈਕਟਰੀ path ਨਾਲ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਚਲਾਓ::" msgid "python -m venv tutorial-env" -msgstr "" +msgstr "python -m venv tutorial-env" msgid "" "This will create the ``tutorial-env`` directory if it doesn't exist, and " "also create directories inside it containing a copy of the Python " "interpreter and various supporting files." msgstr "" +"ਜੇ ``tutorial-env`` ਡਾਇਰੈਕਟਰੀ ਮੌਜੂਦ ਨਹੀਂ ਹੈ ਤਾਂ ਇਹ ਉਸਨੂੰ ਬਣਾਏਗਾ, ਅਤੇ ਇਸਦੇ ਅੰਦਰ Python " +"interpreter ਦੀ ਇੱਕ ਕਾਪੀ ਅਤੇ ਹੋਰ ਸਹਾਇਕ ਫਾਈਲਾਂ ਵਾਲੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਵੀ ਬਣਾਏਗਾ।" msgid "" "A common directory location for a virtual environment is ``.venv``. This " @@ -91,27 +116,34 @@ msgid "" "prevents clashing with ``.env`` environment variable definition files that " "some tooling supports." msgstr "" +"ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਲਈ ਇੱਕ ਆਮ ਡਾਇਰੈਕਟਰੀ ਨਾਮ ``.venv`` ਹੈ। ਇਹ ਨਾਮ ਆਮ ਤੌਰ 'ਤੇ ਡਾਇਰੈਕਟਰੀ " +"ਨੂੰ shell ਵਿੱਚ ਲੁਕਿਆ ਰੱਖਦਾ ਹੈ ਅਤੇ ਨਾਲ ਹੀ ਇਹ ਵੀ ਦੱਸਦਾ ਹੈ ਕਿ ਇਹ ਡਾਇਰੈਕਟਰੀ ਕਿਉਂ ਮੌਜੂਦ ਹੈ। ਇਹ " +"ਕੁਝ tools ਦੁਆਰਾ ਸਮਰਥਿਤ ``.env`` environment variable ਫਾਈਲਾਂ ਨਾਲ ਟਕਰਾਅ ਤੋਂ ਵੀ " +"ਬਚਾਉਂਦਾ ਹੈ।" msgid "Once you've created a virtual environment, you may activate it." -msgstr "" +msgstr "ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਬਣਾਉਣ ਤੋਂ ਬਾਅਦ ਤੁਸੀਂ ਇਸਨੂੰ ਸਰਗਰਮ ਕਰ ਸਕਦੇ ਹੋ।" msgid "On Windows, run::" -msgstr "" +msgstr "Windows ਉੱਤੇ ਇਹ ਚਲਾਓ::" msgid "tutorial-env\\Scripts\\activate" -msgstr "" +msgstr "tutorial-env\\Scripts\\activate" msgid "On Unix or MacOS, run::" -msgstr "" +msgstr "Unix ਜਾਂ MacOS ਉੱਤੇ ਇਹ ਚਲਾਓ::" msgid "source tutorial-env/bin/activate" -msgstr "" +msgstr "source tutorial-env/bin/activate" msgid "" "(This script is written for the bash shell. If you use the :program:`csh` " "or :program:`fish` shells, there are alternate ``activate.csh`` and " "``activate.fish`` scripts you should use instead.)" msgstr "" +"(ਇਹ ਸਕ੍ਰਿਪਟ bash shell ਲਈ ਲਿਖੀ ਗਈ ਹੈ। ਜੇ ਤੁਸੀਂ :program:`csh` ਜਾਂ :program:`fish` " +"shells ਵਰਤਦੇ ਹੋ, ਤਾਂ ਇਸਦੀ ਥਾਂ ``activate.csh`` ਜਾਂ ``activate.fish`` ਸਕ੍ਰਿਪਟਾਂ " +"ਵਰਤਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ।)" msgid "" "Activating the virtual environment will change your shell's prompt to show " @@ -119,6 +151,9 @@ msgid "" "running ``python`` will get you that particular version and installation of " "Python. For example:" msgstr "" +"ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਨੂੰ ਸਰਗਰਮ ਕਰਨ ਨਾਲ shell prompt ਵਿੱਚ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਇਨਵਾਇਰਨਮੈਂਟ " +"ਦਿਖਾਈ ਦੇਵੇਗਾ ਅਤੇ environment ਇਸ ਤਰ੍ਹਾਂ ਬਦਲਿਆ ਜਾਵੇਗਾ ਕਿ ``python`` ਚਲਾਉਣ 'ਤੇ ਉਸੇ ਖਾਸ " +"Python installation ਅਤੇ version ਦੀ ਵਰਤੋਂ ਹੋਵੇਗੀ। ਉਦਾਹਰਨ ਲਈ:" msgid "" "$ source ~/envs/tutorial-env/bin/activate\n" @@ -131,6 +166,15 @@ msgid "" "'~/envs/tutorial-env/lib/python3.5/site-packages']\n" ">>>" msgstr "" +"$ source ~/envs/tutorial-env/bin/activate\n" +"(tutorial-env) $ python\n" +"Python 3.5.1 (default, May 6 2016, 10:59:36)\n" +" ...\n" +">>> import sys\n" +">>> sys.path\n" +"['', '/usr/local/lib/python35.zip', ...,\n" +"'~/envs/tutorial-env/lib/python3.5/site-packages']\n" +">>>" msgid "" "Note that the activated virtual environment does not alter the " @@ -139,36 +183,47 @@ msgid "" "version the virtual environment is using. The best practice is to ``unset " "PYTHONPATH`` in bash or the equivalent for the shell you are using." msgstr "" +"ਧਿਆਨ ਦਿਓ ਕਿ ਸਰਗਰਮ virtual environment ``PYTHONPATH`` variable ਨੂੰ ਕਿਸੇ ਵੀ ਤਰੀਕੇ " +"ਨਾਲ ਨਹੀਂ ਬਦਲਦਾ। ਜੇ path ਵਿੱਚ ਅਜਿਹੇ code ਦੇ ਹਵਾਲੇ ਸ਼ਾਮਲ ਹਨ ਜੋ virtual environment " +"ਦੁਆਰਾ ਵਰਤੇ ਜਾ ਰਹੇ Python version ਨਾਲ ਅਨੁਕੂਲ ਨਹੀਂ ਹਨ, ਤਾਂ ਇਸ ਨਾਲ ਅਣਉਮੀਦੇ ਨਤੀਜੇ ਆ ਸਕਦੇ " +"ਹਨ। ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸ ਇਹ ਹੈ ਕਿ bash ਵਿੱਚ ``unset PYTHONPATH`` ਚਲਾਇਆ ਜਾਵੇ ਜਾਂ ਤੁਹਾਡੇ " +"ਦੁਆਰਾ ਵਰਤੇ ਜਾ ਰਹੇ shell ਦੇ ਸਮਕੱਖ command ਵਰਤੀ ਜਾਵੇ।" msgid "To deactivate a virtual environment, type::" -msgstr "" +msgstr "ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਇਹ ਲਿਖੋ::" msgid "deactivate" -msgstr "" +msgstr "deactivate" msgid "into the terminal." -msgstr "" +msgstr "ਟਰਮੀਨਲ ਵਿੱਚ।" msgid "Managing Packages with pip" -msgstr "" +msgstr "pip ਨਾਲ ਪੈਕੇਜਾਂ ਦਾ ਪ੍ਰਬੰਧਨ" msgid "" -"You can install, upgrade, and remove packages using a program called :" -"program:`pip`. By default ``pip`` will install packages from the `Python " -"Package Index `_. You can browse the Python Package Index " -"by going to it in your web browser." +"You can install, upgrade, and remove packages using a program " +"called :program:`pip`. By default ``pip`` will install packages from the " +"`Python Package Index `_. You can browse the Python " +"Package Index by going to it in your web browser." msgstr "" +"ਤੁਸੀਂ :program:`pip` ਨਾਮਕ ਪ੍ਰੋਗਰਾਮ ਦੀ ਵਰਤੋਂ ਕਰਕੇ packages install, upgrade ਅਤੇ " +"remove ਕਰ ਸਕਦੇ ਹੋ। ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ``pip`` `Python Package Index `_ ਤੋਂ packages install ਕਰਦਾ ਹੈ। ਤੁਸੀਂ ਆਪਣੇ ਵੈੱਬ ਬ੍ਰਾਊਜ਼ਰ ਰਾਹੀਂ Python Package " +"Index ਨੂੰ ਵੇਖ ਸਕਦੇ ਹੋ।" msgid "" "``pip`` has a number of subcommands: \"install\", \"uninstall\", \"freeze\", " "etc. (Consult the :ref:`installing-index` guide for complete documentation " "for ``pip``.)" msgstr "" +"``pip`` ਕੋਲ ਕਈ subcommands ਹਨ ਜਿਵੇਂ \"install\", \"uninstall\", \"freeze\" ਆਦਿ। " +"(``pip`` ਦੀ ਪੂਰੀ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਲਈ :ref:`installing-index` ਗਾਈਡ ਵੇਖੋ।)" msgid "" "You can install the latest version of a package by specifying a package's " "name:" -msgstr "" +msgstr "ਤੁਸੀਂ ਕਿਸੇ package ਦਾ ਨਾਮ ਦੇ ਕੇ ਉਸਦਾ ਸਭ ਤੋਂ ਨਵਾਂ version install ਕਰ ਸਕਦੇ ਹੋ:" msgid "" "(tutorial-env) $ python -m pip install novas\n" @@ -178,11 +233,19 @@ msgid "" " Running setup.py install for novas\n" "Successfully installed novas-3.1.1.3" msgstr "" +"(tutorial-env) $ python -m pip install novas\n" +"Collecting novas\n" +" Downloading novas-3.1.1.3.tar.gz (136kB)\n" +"Installing collected packages: novas\n" +" Running setup.py install for novas\n" +"Successfully installed novas-3.1.1.3" msgid "" "You can also install a specific version of a package by giving the package " "name followed by ``==`` and the version number:" msgstr "" +"ਤੁਸੀਂ ਕਿਸੇ package ਦਾ ਖਾਸ version ਵੀ install ਕਰ ਸਕਦੇ ਹੋ, ਇਸ ਲਈ package ਦੇ ਨਾਮ ਤੋਂ " +"ਬਾਅਦ ``==`` ਅਤੇ version number ਲਿਖੋ:" msgid "" "(tutorial-env) $ python -m pip install requests==2.6.0\n" @@ -191,6 +254,11 @@ msgid "" "Installing collected packages: requests\n" "Successfully installed requests-2.6.0" msgstr "" +"(tutorial-env) $ python -m pip install requests==2.6.0\n" +"Collecting requests==2.6.0\n" +" Using cached requests-2.6.0-py2.py3-none-any.whl\n" +"Installing collected packages: requests\n" +"Successfully installed requests-2.6.0" msgid "" "If you re-run this command, ``pip`` will notice that the requested version " @@ -198,6 +266,9 @@ msgid "" "number to get that version, or you can run ``python -m pip install --" "upgrade`` to upgrade the package to the latest version:" msgstr "" +"ਜੇ ਤੁਸੀਂ ਇਹ ਕਮਾਂਡ ਮੁੜ ਚਲਾਉਂਦੇ ਹੋ, ਤਾਂ ``pip`` ਵੇਖੇਗਾ ਕਿ ਮੰਗਿਆ ਗਿਆ version ਪਹਿਲਾਂ ਹੀ " +"install ਹੈ ਅਤੇ ਕੋਈ ਕਾਰਵਾਈ ਨਹੀਂ ਕਰੇਗਾ। ਤੁਸੀਂ ਹੋਰ version number ਦੇ ਸਕਦੇ ਹੋ ਜਾਂ package ਨੂੰ " +"ਨਵੇਂ version ਤੱਕ ਅੱਪਗ੍ਰੇਡ ਕਰਨ ਲਈ ``python -m pip install --upgrade`` ਚਲਾ ਸਕਦੇ ਹੋ:" msgid "" "(tutorial-env) $ python -m pip install --upgrade requests\n" @@ -208,15 +279,24 @@ msgid "" " Successfully uninstalled requests-2.6.0\n" "Successfully installed requests-2.7.0" msgstr "" +"(tutorial-env) $ python -m pip install --upgrade requests\n" +"Collecting requests\n" +"Installing collected packages: requests\n" +" Found existing installation: requests 2.6.0\n" +" Uninstalling requests-2.6.0:\n" +" Successfully uninstalled requests-2.6.0\n" +"Successfully installed requests-2.7.0" msgid "" "``python -m pip uninstall`` followed by one or more package names will " "remove the packages from the virtual environment." msgstr "" +"``python -m pip uninstall`` ਤੋਂ ਬਾਅਦ ਇੱਕ ਜਾਂ ਵੱਧ package ਨਾਮ ਦੇਣ ਨਾਲ ਉਹ packages " +"ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਤੋਂ ਹਟਾ ਦਿੱਤੇ ਜਾਣਗੇ।" msgid "" "``python -m pip show`` will display information about a particular package:" -msgstr "" +msgstr "``python -m pip show`` ਕਿਸੇ ਖਾਸ package ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਿਖਾਏਗਾ:" msgid "" "(tutorial-env) $ python -m pip show requests\n" @@ -232,11 +312,25 @@ msgid "" "Location: /Users/akuchling/envs/tutorial-env/lib/python3.4/site-packages\n" "Requires:" msgstr "" +"(tutorial-env) $ python -m pip show requests\n" +"---\n" +"Metadata-Version: 2.0\n" +"Name: requests\n" +"Version: 2.7.0\n" +"Summary: Python HTTP for Humans.\n" +"Home-page: http://python-requests.org\n" +"Author: Kenneth Reitz\n" +"Author-email: me@kennethreitz.com\n" +"License: Apache 2.0\n" +"Location: /Users/akuchling/envs/tutorial-env/lib/python3.4/site-packages\n" +"Requires:" msgid "" "``python -m pip list`` will display all of the packages installed in the " "virtual environment:" msgstr "" +"``python -m pip list`` ਵਰਚੁਅਲ ਇਨਵਾਇਰਨਮੈਂਟ ਵਿੱਚ install ਕੀਤੇ ਸਾਰੇ packages ਦੀ ਸੂਚੀ " +"ਦਿਖਾਏਗਾ:" msgid "" "(tutorial-env) $ python -m pip list\n" @@ -246,6 +340,12 @@ msgid "" "requests (2.7.0)\n" "setuptools (16.0)" msgstr "" +"(tutorial-env) $ python -m pip list\n" +"novas (3.1.1.3)\n" +"numpy (1.9.2)\n" +"pip (7.0.3)\n" +"requests (2.7.0)\n" +"setuptools (16.0)" msgid "" "``python -m pip freeze`` will produce a similar list of the installed " @@ -253,6 +353,9 @@ msgid "" "expects. A common convention is to put this list in a ``requirements.txt`` " "file:" msgstr "" +"``python -m pip freeze`` install ਕੀਤੇ packages ਦੀ ਇਸੇ ਤਰ੍ਹਾਂ ਦੀ ਸੂਚੀ ਤਿਆਰ ਕਰੇਗਾ, " +"ਪਰ ਇਸਦਾ output ਉਸ format ਵਿੱਚ ਹੋਵੇਗਾ ਜਿਸਦੀ ``python -m pip install`` ਉਮੀਦ ਕਰਦਾ " +"ਹੈ। ਇੱਕ ਆਮ ਰਵਾਇਤ ਇਹ ਹੈ ਕਿ ਇਸ ਸੂਚੀ ਨੂੰ ``requirements.txt`` ਫਾਈਲ ਵਿੱਚ ਰੱਖਿਆ ਜਾਵੇ:" msgid "" "(tutorial-env) $ python -m pip freeze > requirements.txt\n" @@ -261,12 +364,20 @@ msgid "" "numpy==1.9.2\n" "requests==2.7.0" msgstr "" +"(tutorial-env) $ python -m pip freeze > requirements.txt\n" +"(tutorial-env) $ cat requirements.txt\n" +"novas==3.1.1.3\n" +"numpy==1.9.2\n" +"requests==2.7.0" msgid "" "The ``requirements.txt`` can then be committed to version control and " "shipped as part of an application. Users can then install all the necessary " "packages with ``install -r``:" msgstr "" +"ਇਸ ਤੋਂ ਬਾਅਦ ``requirements.txt`` ਨੂੰ version control ਵਿੱਚ commit ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ " +"ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਫਿਰ ਵਰਤੋਂਕਾਰ ``install -r`` ਦੀ ਵਰਤੋਂ " +"ਕਰਕੇ ਸਾਰੇ ਲੋੜੀਂਦੇ packages install ਕਰ ਸਕਦੇ ਹਨ:" msgid "" "(tutorial-env) $ python -m pip install -r requirements.txt\n" @@ -280,6 +391,16 @@ msgid "" " Running setup.py install for novas\n" "Successfully installed novas-3.1.1.3 numpy-1.9.2 requests-2.7.0" msgstr "" +"(tutorial-env) $ python -m pip install -r requirements.txt\n" +"Collecting novas==3.1.1.3 (from -r requirements.txt (line 1))\n" +" ...\n" +"Collecting numpy==1.9.2 (from -r requirements.txt (line 2))\n" +" ...\n" +"Collecting requests==2.7.0 (from -r requirements.txt (line 3))\n" +" ...\n" +"Installing collected packages: novas, numpy, requests\n" +" Running setup.py install for novas\n" +"Successfully installed novas-3.1.1.3 numpy-1.9.2 requests-2.7.0" msgid "" "``pip`` has many more options. Consult the :ref:`installing-index` guide " @@ -287,3 +408,7 @@ msgid "" "want to make it available on the Python Package Index, consult the `Python " "packaging user guide`_." msgstr "" +"``pip`` ਕੋਲ ਇਸ ਤੋਂ ਇਲਾਵਾ ਹੋਰ ਵੀ ਬਹੁਤ ਸਾਰੇ ਵਿਕਲਪ ਹਨ। ``pip`` ਦੀ ਪੂਰੀ ਦਸਤਾਵੇਜ਼ੀਕਰਨ " +"ਲਈ :ref:`installing-index` ਗਾਈਡ ਵੇਖੋ। ਜਦੋਂ ਤੁਸੀਂ ਕੋਈ package ਤਿਆਰ ਕਰ ਲਓ ਅਤੇ ਉਸਨੂੰ " +"Python Package Index ਉੱਤੇ ਉਪਲਬਧ ਕਰਵਾਉਣਾ ਚਾਹੋ, ਤਾਂ `Python packaging user guide`_ " +"ਵੇਖੋ।" diff --git a/tutorial/whatnow.po b/tutorial/whatnow.po index bcec223..6b7da82 100644 --- a/tutorial/whatnow.po +++ b/tutorial/whatnow.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,53 +23,71 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "What Now?" -msgstr "" +msgstr "ਹੁਣ ਕੀ?" msgid "" "Reading this tutorial has probably reinforced your interest in using Python " "--- you should be eager to apply Python to solving your real-world problems. " "Where should you go to learn more?" msgstr "" +"ਇਸ ਟਿਊਟੋਰਿਅਲ ਨੂੰ ਪੜ੍ਹਨ ਨਾਲ ਸੰਭਵ ਹੈ ਕਿ Python ਦੀ ਵਰਤੋਂ ਪ੍ਰਤੀ ਤੁਹਾਡੀ ਰੁਚੀ ਹੋਰ ਮਜ਼ਬੂਤ ਹੋਈ ਹੋਵੇਗੀ " +"— ਹੁਣ ਤੁਸੀਂ ਆਪਣੇ ਅਸਲ ਸਮੱਸਿਆਵਾਂ ਦੇ ਹੱਲ ਲਈ Python ਨੂੰ ਵਰਤਣ ਲਈ ਉਤਸੁਕ ਹੋਵੋਗੇ। ਹੋਰ ਜਾਣਨ ਲਈ ਤੁਹਾਨੂੰ " +"ਕਿੱਥੇ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ?" msgid "" "This tutorial is part of Python's documentation set. Some other documents " "in the set are:" msgstr "" +"ਇਹ ਟਿਊਟੋਰਿਅਲ Python ਦੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਸੈੱਟ ਦਾ ਹਿੱਸਾ ਹੈ। ਇਸ ਸੈੱਟ ਦੇ ਕੁਝ ਹੋਰ ਦਸਤਾਵੇਜ਼ ਇਹ ਹਨ:" -msgid ":ref:`library-index`:" -msgstr "" +msgid "" +":ref:`builtins-index`: gives details about Python's built-in types and " +"functions." +msgstr ":ref:`builtins-index`: ਪਾਈਥਨ ਦੇ ਬਿਲਟ-ਇਨ ਕਿਸਮਾਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਬਾਰੇ ਵੇਰਵੇ ਦਿੰਦਾ ਹੈ।" msgid "" -"You should browse through this manual, which gives complete (though terse) " -"reference material about types, functions, and the modules in the standard " -"library. The standard Python distribution includes a *lot* of additional " -"code. There are modules to read Unix mailboxes, retrieve documents via HTTP, " -"generate random numbers, parse command-line options, compress data, and many " -"other tasks. Skimming through the Library Reference will give you an idea of " -"what's available." -msgstr "" +":ref:`library-index`: gives complete (though terse) reference material about " +"types, functions, and the modules in the standard library. The standard " +"Python distribution includes a *lot* of additional code. There are modules " +"to read Unix mailboxes, retrieve documents via HTTP, generate random " +"numbers, parse command-line options, compress data, and many other tasks. " +"Skimming through the Library Reference will give you an idea of what's " +"available." +msgstr "" +":ref:`library-index`: ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਮੌਜੂਦ ਕਿਸਮਾਂ, ਫੰਕਸ਼ਨਾਂ ਅਤੇ ਮੋਡੀਊਲਾਂ ਬਾਰੇ ਪੂਰੀ " +"(ਹਾਲਾਂਕਿ ਸੰਖੇਪ) ਹਵਾਲਾ ਸਮੱਗਰੀ ਦਿੰਦਾ ਹੈ। ਸਟੈਂਡਰਡ ਪਾਈਥਨ ਡਿਸਟ੍ਰੀਬਿਊਸ਼ਨ ਵਿੱਚ ਹੋਰ ਵੀ *ਬਹੁਤ " +"ਸਾਰਾ* ਕੋਡ ਸ਼ਾਮਲ ਹੈ। ਯੂਨਿਕਸ ਮੇਲਬਾਕਸ ਪੜ੍ਹਨ, HTTP ਰਾਹੀਂ ਦਸਤਾਵੇਜ਼ ਪ੍ਰਾਪਤ ਕਰਨ, ਰੈਂਡਮ ਨੰਬਰ " +"ਬਣਾਉਣ, ਕਮਾਂਡ-ਲਾਈਨ ਵਿਕਲਪਾਂ ਨੂੰ ਪਾਰਸ ਕਰਨ, ਡਾਟਾ ਨੂੰ ਕੰਪ੍ਰੈੱਸ ਕਰਨ ਅਤੇ ਹੋਰ ਬਹੁਤ ਸਾਰੇ ਕੰਮਾਂ ਲਈ " +"ਮੋਡੀਊਲ ਮੌਜੂਦ ਹਨ। ਲਾਇਬ੍ਰੇਰੀ ਰੈਫਰੈਂਸ ਨੂੰ ਸਰਸਰੀ ਤੌਰ 'ਤੇ ਪੜ੍ਹਨ ਨਾਲ ਤੁਹਾਨੂੰ ਇਹ ਪਤਾ ਲੱਗੇਗਾ ਕਿ ਕੀ-ਕੀ " +"ਉਪਲਬਧ ਹੈ।" msgid "" ":ref:`installing-index` explains how to install additional modules written " "by other Python users." msgstr "" +":ref:`installing-index` ਇਹ ਸਮਝਾਉਂਦਾ ਹੈ ਕਿ ਹੋਰ Python ਵਰਤੋਂਕਾਰਾਂ ਦੁਆਰਾ ਲਿਖੇ ਵਾਧੂ ਮੋਡੀਊਲ " +"ਕਿਵੇਂ ਇੰਸਟਾਲ ਕਰਨੇ ਹਨ।" msgid "" ":ref:`reference-index`: A detailed explanation of Python's syntax and " "semantics. It's heavy reading, but is useful as a complete guide to the " "language itself." msgstr "" +":ref:`reference-index`: Python ਦੇ syntax ਅਤੇ semantics ਦੀ ਵਿਸਤ੍ਰਿਤ ਵਿਆਖਿਆ। ਇਹ " +"ਪੜ੍ਹਨ ਲਈ ਕੁਝ ਗੰਭੀਰ ਸਮੱਗਰੀ ਹੈ, ਪਰ ਭਾਸ਼ਾ ਲਈ ਇੱਕ ਪੂਰਨ ਮਾਰਗਦਰਸ਼ਕ ਵਜੋਂ ਬਹੁਤ ਲਾਭਦਾਇਕ ਹੈ।" msgid "More Python resources:" -msgstr "" +msgstr "ਹੋਰ Python ਸਰੋਤ:" msgid "" "https://www.python.org: The major Python website. It contains code, " "documentation, and pointers to Python-related pages around the web." msgstr "" +"https://www.python.org: Python ਦੀ ਮੁੱਖ ਵੈੱਬਸਾਈਟ। ਇਸ ਵਿੱਚ ਕੋਡ, ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਅਤੇ ਵੈੱਬ ਉੱਤੇ " +"ਮੌਜੂਦ Python-ਸੰਬੰਧਿਤ ਸਰੋਤਾਂ ਦੇ ਲਿੰਕ ਸ਼ਾਮਲ ਹਨ।" msgid "https://docs.python.org: Fast access to Python's documentation." -msgstr "" +msgstr "https://docs.python.org: Python ਦੇ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਤੱਕ ਤੇਜ਼ ਪਹੁੰਚ।" msgid "" "https://pypi.org: The Python Package Index, previously also nicknamed the " @@ -77,6 +95,10 @@ msgid "" "available for download. Once you begin releasing code, you can register it " "here so that others can find it." msgstr "" +"https://pypi.org: Python Package Index, ਜਿਸ ਨੂੰ ਪਹਿਲਾਂ \"Cheese Shop\" ਵੀ ਕਿਹਾ " +"ਜਾਂਦਾ ਸੀ [#]_, ਵਰਤੋਂਕਾਰਾਂ ਦੁਆਰਾ ਬਣਾਏ ਗਏ Python ਮੋਡੀਊਲਾਂ ਦੀ ਸੂਚੀ ਹੈ ਜੋ ਡਾਊਨਲੋਡ ਲਈ ਉਪਲਬਧ " +"ਹਨ। ਜਦੋਂ ਤੁਸੀਂ ਆਪਣਾ ਕੋਡ ਜਾਰੀ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਇਸਨੂੰ ਇੱਥੇ ਰਜਿਸਟਰ ਕਰ ਸਕਦੇ ਹੋ ਤਾਂ ਜੋ ਹੋਰ " +"ਲੋਕ ਇਸਨੂੰ ਲੱਭ ਸਕਣ।" msgid "" "https://code.activestate.com/recipes/langs/python/: The Python Cookbook is a " @@ -84,11 +106,17 @@ msgid "" "Particularly notable contributions are collected in a book also titled " "Python Cookbook (O'Reilly & Associates, ISBN 0-596-00797-3.)" msgstr "" +"https://code.activestate.com/recipes/langs/python/: Python Cookbook ਕੋਡ " +"ਉਦਾਹਰਣਾਂ, ਵੱਡੇ ਮੋਡੀਊਲਾਂ ਅਤੇ ਉਪਯੋਗੀ ਸਕ੍ਰਿਪਟਾਂ ਦਾ ਇੱਕ ਵੱਡਾ ਸੰਗ੍ਰਹਿ ਹੈ। ਖਾਸ ਤੌਰ 'ਤੇ ਮਹੱਤਵਪੂਰਨ " +"ਯੋਗਦਾਨਾਂ ਨੂੰ Python Cookbook ਨਾਮਕ ਕਿਤਾਬ ਵਿੱਚ ਵੀ ਇਕੱਠਾ ਕੀਤਾ ਗਿਆ ਹੈ (O'Reilly & " +"Associates, ISBN 0-596-00797-3)।" msgid "" "https://pyvideo.org collects links to Python-related videos from conferences " "and user-group meetings." msgstr "" +"https://pyvideo.org ਕਾਨਫਰੰਸਾਂ ਅਤੇ ਯੂਜ਼ਰ-ਗਰੁੱਪ ਮੀਟਿੰਗਾਂ ਤੋਂ Python-ਸੰਬੰਧਿਤ ਵੀਡੀਓਆਂ ਦੇ ਲਿੰਕ " +"ਇਕੱਠੇ ਕਰਦਾ ਹੈ।" msgid "" "https://scipy.org: The Scientific Python project includes modules for fast " @@ -96,6 +124,9 @@ msgid "" "as linear algebra, Fourier transforms, non-linear solvers, random number " "distributions, statistical analysis and the like." msgstr "" +"https://scipy.org: Scientific Python ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਤੇਜ਼ array ਗਣਨਾਵਾਂ ਅਤੇ ਸੰਚਾਲਨ ਲਈ " +"ਮੋਡੀਊਲਾਂ ਦੇ ਨਾਲ linear algebra, Fourier transforms, non-linear solvers, random " +"number distributions ਅਤੇ statistical analysis ਵਰਗੇ ਕੰਮਾਂ ਲਈ ਕਈ ਪੈਕੇਜ ਸ਼ਾਮਲ ਹਨ।" msgid "" "For Python-related questions and problem reports, you can post to the " @@ -106,6 +137,13 @@ msgid "" "new features, and announcing new modules. Mailing list archives are " "available at https://mail.python.org/pipermail/." msgstr "" +"Python-ਸਬੰਧੀ ਸਵਾਲਾਂ ਅਤੇ ਸਮੱਸਿਆ ਰਿਪੋਰਟਾਂ ਲਈ, ਤੁਸੀਂ " +"ਨਿਊਜ਼ਗਰੁੱਪ :newsgroup:`comp.lang.python`'ਤੇ ਪੋਸਟ ਕਰ ਸਕਦੇ ਹੋ, ਜਾਂ ਉਹਨਾਂ ਨੂੰ ਮੇਲਿੰਗ ਲਿਸਟ " +"python-list@python.org 'ਤੇ ਭੇਜ ਸਕਦੇ ਹੋ। ਨਿਊਜ਼ਗਰੁੱਪ ਅਤੇ ਮੇਲਿੰਗ ਲਿਸਟ ਦੋਹਾਂ ਗੇਟਵੇਅ ਕੀਤੇ ਗਏ " +"ਹਨ, ਇਸ ਲਈ ਇੱਕ 'ਤੇ ਭੇਜੇ ਗਏ ਸੁਨੇਹੇ ਆਪਣੇ ਆਪ ਦੂਜੇ 'ਤੇ ਅੱਗੇ ਭੇਜ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ। ਹਰ ਰੋਜ਼ ਸੈਂਕੜੇ ਪੋਸਟਾਂ " +"ਹੁੰਦੀਆਂ ਹਨ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਸਵਾਲ ਪੁੱਛੇ ਜਾਂਦੇ (ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਜਵਾਬ ਦਿੱਤੇ ਜਾਂਦੇ), ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸੁਝਾਈਆਂ " +"ਜਾਂਦੀਆਂ, ਅਤੇ ਨਵੇਂ ਮੋਡਿਊਲਾਂ ਦੀ ਘੋਸ਼ਣਾ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਮੇਲਿੰਗ ਲਿਸਟ ਦੇ ਆਰਕਾਈਵ https://" +"mail.python.org/pipermail/ 'ਤੇ ਉਪਲਬਧ ਹਨ।" msgid "" "Before posting, be sure to check the list of :ref:`Frequently Asked " @@ -113,11 +151,16 @@ msgid "" "questions that come up again and again, and may already contain the solution " "for your problem." msgstr "" +"ਪੋਸਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ :ref:`Frequently Asked Questions ` (FAQ) ਦੀ ਸੂਚੀ " +"ਜ਼ਰੂਰ ਵੇਖੋ। FAQ ਉਹਨਾਂ ਬਹੁਤ ਸਾਰੇ ਸਵਾਲਾਂ ਦੇ ਜਵਾਬ ਦਿੰਦਾ ਹੈ ਜੋ ਵਾਰ-ਵਾਰ ਪੁੱਛੇ ਜਾਂਦੇ ਹਨ ਅਤੇ ਹੋ ਸਕਦਾ ਹੈ " +"ਕਿ ਇਸ ਵਿੱਚ ਤੁਹਾਡੀ ਸਮੱਸਿਆ ਦਾ ਹੱਲ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੋਵੇ।" msgid "Footnotes" -msgstr "" +msgstr "ਫੁੱਟਨੋਟ" msgid "" "\"Cheese Shop\" is a Monty Python sketch: a customer enters a cheese shop, " "but whatever cheese he asks for, the clerk says it's missing." msgstr "" +"\"Cheese Shop\" Monty Python ਦਾ ਇੱਕ ਹਾਸਿਆਤਮਕ ਸਕੈਚ ਹੈ: ਇੱਕ ਗਾਹਕ ਪਨੀਰ ਦੀ ਦੁਕਾਨ ਵਿੱਚ " +"ਦਾਖਲ ਹੁੰਦਾ ਹੈ, ਪਰ ਉਹ ਜਿਹੜਾ ਵੀ ਪਨੀਰ ਮੰਗਦਾ ਹੈ, ਦੁਕਾਨਦਾਰ ਕਹਿੰਦਾ ਹੈ ਕਿ ਉਹ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।" diff --git a/using/android.po b/using/android.po index 17b0732..2942080 100644 --- a/using/android.po +++ b/using/android.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,10 +42,10 @@ msgstr "" msgid "" "As a result, the only way you can use Python on Android is in embedded mode " "– that is, by writing a native Android application, embedding a Python " -"interpreter using ``libpython``, and invoking Python code using the :ref:" -"`Python embedding API `. The full Python interpreter, the " -"standard library, and all your Python code is then packaged into your app " -"for its own private use." +"interpreter using ``libpython``, and invoking Python code using " +"the :ref:`Python embedding API `. The full Python interpreter, " +"the standard library, and all your Python code is then packaged into your " +"app for its own private use." msgstr "" msgid "" @@ -71,6 +71,9 @@ msgstr "" msgid "`Chaquopy `__" msgstr "" +msgid "`Flet `__" +msgstr "" + msgid "" "`pyqtdeploy `__" msgstr "" @@ -94,15 +97,15 @@ msgid "" msgstr "" msgid "" -"Or if you want to build it yourself, follow the instructions in :source:" -"`Platforms/Android/README.md`. The ``prefix`` directory will be created " -"under :samp:`cross-build/{HOST}`." +"Or if you want to build it yourself, follow the instructions " +"in :source:`Platforms/Android/README.md`. The ``prefix`` directory will be " +"created under :samp:`cross-build/{HOST}`." msgstr "" msgid "" -"Add code to your :source:`build.gradle ` file to copy the following items into your project. All except " -"your own Python code can be copied from ``prefix/lib``:" +"Add code to your :source:`build.gradle ` file to copy the following items into your project. All " +"except your own Python code can be copied from ``prefix/lib``:" msgstr "" msgid "In your JNI libraries:" @@ -125,8 +128,8 @@ msgstr "" msgid "" "Add code to your app to :source:`extract the assets to the filesystem " -"`." +"`." msgstr "" msgid "" @@ -140,8 +143,8 @@ msgstr "" msgid "" "Python packages can be built for Android as wheels and released on PyPI. The " -"recommended tool for doing this is `cibuildwheel `__, which automates all the details of " -"setting up a cross-compilation environment, building the wheel, and testing " -"it on an emulator." +"recommended tool for doing this is `cibuildwheel `__, which automates all " +"the details of setting up a cross-compilation environment, building the " +"wheel, and testing it on an emulator." msgstr "" diff --git a/using/cmdline.po b/using/cmdline.po index 1dcd1af..774ecb7 100644 --- a/using/cmdline.po +++ b/using/cmdline.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-13 14:51+0000\n" +"POT-Creation-Date: 2026-10-15 17:56+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,8 +31,8 @@ msgid "" msgstr "" msgid "" -"Other implementations' command line schemes may differ. See :ref:" -"`implementations` for further resources." +"Other implementations' command line schemes may differ. " +"See :ref:`implementations` for further resources." msgstr "" msgid "Command line" @@ -108,9 +108,9 @@ msgstr "" msgid "" "If this option is given, the first element of :data:`sys.argv` will be ``\"-" -"c\"`` and the current directory will be added to the start of :data:`sys." -"path` (allowing modules in that directory to be imported as top level " -"modules)." +"c\"`` and the current directory will be added to the start " +"of :data:`sys.path` (allowing modules in that directory to be imported as " +"top level modules)." msgstr "" msgid "" @@ -156,9 +156,10 @@ msgid "" msgstr "" msgid "" -":option:`-I` option can be used to run the script in isolated mode where :" -"data:`sys.path` contains neither the current directory nor the user's site-" -"packages directory. All ``PYTHON*`` environment variables are ignored, too." +":option:`-I` option can be used to run the script in isolated mode " +"where :data:`sys.path` contains neither the current directory nor the user's " +"site-packages directory. All ``PYTHON*`` environment variables are ignored, " +"too." msgstr "" msgid "" @@ -198,8 +199,8 @@ msgstr "" msgid "" "If this option is given, the first element of :data:`sys.argv` will be ``\"-" -"\"`` and the current directory will be added to the start of :data:`sys." -"path`." +"\"`` and the current directory will be added to the start " +"of :data:`sys.path`." msgstr "" msgid "" @@ -232,9 +233,10 @@ msgid "" msgstr "" msgid "" -":option:`-I` option can be used to run the script in isolated mode where :" -"data:`sys.path` contains neither the script's directory nor the user's site-" -"packages directory. All ``PYTHON*`` environment variables are ignored, too." +":option:`-I` option can be used to run the script in isolated mode " +"where :data:`sys.path` contains neither the script's directory nor the " +"user's site-packages directory. All ``PYTHON*`` environment variables are " +"ignored, too." msgstr "" msgid "" @@ -299,10 +301,11 @@ msgid "Miscellaneous options" msgstr "" msgid "" -"Issue a warning when converting :class:`bytes` or :class:`bytearray` to :" -"class:`str` without specifying encoding or comparing :class:`!bytes` or :" -"class:`!bytearray` with :class:`!str` or :class:`!bytes` with :class:`int`. " -"Issue an error when the option is given twice (:option:`!-bb`)." +"Issue a warning when converting :class:`bytes` or :class:`bytearray` " +"to :class:`str` without specifying encoding or comparing :class:`!bytes` " +"or :class:`!bytearray` with :class:`!str` or :class:`!bytes` " +"with :class:`int`. Issue an error when the option is given twice (:option:`!-" +"bb`)." msgstr "" msgid "Affects also comparisons of :class:`bytes` with :class:`int`." @@ -336,8 +339,8 @@ msgid "" msgstr "" msgid "" -"Turn on parser debugging output (for expert only). See also the :envvar:" -"`PYTHONDEBUG` environment variable." +"Turn on parser debugging output (for expert only). See also " +"the :envvar:`PYTHONDEBUG` environment variable." msgstr "" msgid "" @@ -346,8 +349,8 @@ msgid "" msgstr "" msgid "" -"Ignore all ``PYTHON*`` environment variables, e.g. :envvar:`PYTHONPATH` and :" -"envvar:`PYTHONHOME`, that might be set." +"Ignore all ``PYTHON*`` environment variables, e.g. :envvar:`PYTHONPATH` " +"and :envvar:`PYTHONHOME`, that might be set." msgstr "" msgid "See also the :option:`-P` and :option:`-I` (isolated) options." @@ -393,10 +396,10 @@ msgid "" msgstr "" msgid "" -"Remove assert statements and any code conditional on the value of :const:" -"`__debug__`. Augment the filename for compiled (:term:`bytecode`) files by " -"adding ``.opt-1`` before the ``.pyc`` extension (see :pep:`488`). See also :" -"envvar:`PYTHONOPTIMIZE`." +"Remove assert statements and any code conditional on the value " +"of :const:`__debug__`. Augment the filename for compiled (:term:`bytecode`) " +"files by adding ``.opt-1`` before the ``.pyc`` extension (see :pep:`488`). " +"See also :envvar:`PYTHONOPTIMIZE`." msgstr "" msgid "Modify ``.pyc`` filenames according to :pep:`488`." @@ -436,9 +439,9 @@ msgid "" msgstr "" msgid "" -"Turn on hash randomization. This option only has an effect if the :envvar:" -"`PYTHONHASHSEED` environment variable is set to anything other than " -"``random``, since hash randomization is enabled by default." +"Turn on hash randomization. This option only has an effect if " +"the :envvar:`PYTHONHASHSEED` environment variable is set to anything other " +"than ``random``, since hash randomization is enabled by default." msgstr "" msgid "" @@ -465,8 +468,8 @@ msgid "The option is no longer ignored." msgstr "" msgid "" -"Don't add the :data:`user site-packages directory ` to :data:" -"`sys.path`." +"Don't add the :data:`user site-packages directory ` " +"to :data:`sys.path`." msgstr "" msgid "See also :envvar:`PYTHONNOUSERSITE`." @@ -478,8 +481,8 @@ msgstr "" msgid "" "Disable the import of the module :mod:`site` and the site-dependent " "manipulations of :data:`sys.path` that it entails. Also disable these " -"manipulations if :mod:`site` is explicitly imported later (call :func:`site." -"main` if you want them to be triggered)." +"manipulations if :mod:`site` is explicitly imported later " +"(call :func:`site.main` if you want them to be triggered)." msgstr "" msgid "" @@ -495,8 +498,8 @@ msgstr "" msgid "" "Print a message each time a module is initialized, showing the place " -"(filename or built-in module) from which it is loaded. When given twice (:" -"option:`!-vv`), print a message for each file that is checked for when " +"(filename or built-in module) from which it is loaded. When given twice " +"(:option:`!-vv`), print a message for each file that is checked for when " "searching for a module. Also provides information on module cleanup at exit." msgstr "" @@ -580,16 +583,16 @@ msgstr "" msgid "" "Multiple :option:`-W` options can be given; when a warning matches more than " -"one option, the action for the last matching option is performed. Invalid :" -"option:`-W` options are ignored (though, a warning message is printed about " -"invalid options when the first warning is issued)." +"one option, the action for the last matching option is performed. " +"Invalid :option:`-W` options are ignored (though, a warning message is " +"printed about invalid options when the first warning is issued)." msgstr "" msgid "" "Warnings can also be controlled using the :envvar:`PYTHONWARNINGS` " -"environment variable and from within a Python program using the :mod:" -"`warnings` module. For example, the :func:`warnings.filterwarnings` function " -"can be used to use a regular expression on the warning message." +"environment variable and from within a Python program using " +"the :mod:`warnings` module. For example, the :func:`warnings.filterwarnings` " +"function can be used to use a regular expression on the warning message." msgstr "" msgid "" @@ -632,8 +635,8 @@ msgid "" msgstr "" msgid "" -"``-X faulthandler`` to enable :mod:`faulthandler`. See also :envvar:" -"`PYTHONFAULTHANDLER`." +"``-X faulthandler`` to enable :mod:`faulthandler`. See " +"also :envvar:`PYTHONFAULTHANDLER`." msgstr "" msgid "" @@ -644,17 +647,18 @@ msgid "" msgstr "" msgid "" -"``-X tracemalloc`` to start tracing Python memory allocations using the :mod:" -"`tracemalloc` module. By default, only the most recent frame is stored in a " -"traceback of a trace. Use ``-X tracemalloc=NFRAME`` to start tracing with a " -"traceback limit of *NFRAME* frames. See :func:`tracemalloc.start` and :" -"envvar:`PYTHONTRACEMALLOC` for more information." +"``-X tracemalloc`` to start tracing Python memory allocations using " +"the :mod:`tracemalloc` module. By default, only the most recent frame is " +"stored in a traceback of a trace. Use ``-X tracemalloc=NFRAME`` to start " +"tracing with a traceback limit of *NFRAME* frames. " +"See :func:`tracemalloc.start` and :envvar:`PYTHONTRACEMALLOC` for more " +"information." msgstr "" msgid "" "``-X int_max_str_digits`` configures the :ref:`integer string conversion " -"length limitation `. See also :envvar:" -"`PYTHONINTMAXSTRDIGITS`." +"length limitation `. See " +"also :envvar:`PYTHONINTMAXSTRDIGITS`." msgstr "" msgid "" @@ -692,14 +696,14 @@ msgstr "" msgid "" "``-X pycache_prefix=PATH`` enables writing ``.pyc`` files to a parallel tree " -"rooted at the given directory instead of to the code tree. See also :envvar:" -"`PYTHONPYCACHEPREFIX`." +"rooted at the given directory instead of to the code tree. See " +"also :envvar:`PYTHONPYCACHEPREFIX`." msgstr "" msgid "" "``-X warn_default_encoding`` issues a :class:`EncodingWarning` when the " -"locale-specific default encoding is used for opening files. See also :envvar:" -"`PYTHONWARNDEFAULTENCODING`." +"locale-specific default encoding is used for opening files. See " +"also :envvar:`PYTHONWARNDEFAULTENCODING`." msgstr "" msgid "" @@ -707,8 +711,8 @@ msgid "" "location information (end line, start column offset and end column offset) " "to every instruction in code objects. This is useful when smaller code " "objects and pyc files are desired as well as suppressing the extra visual " -"location indicators when the interpreter displays tracebacks. See also :" -"envvar:`PYTHONNODEBUGRANGES`." +"location indicators when the interpreter displays tracebacks. See " +"also :envvar:`PYTHONNODEBUGRANGES`." msgstr "" msgid "" @@ -718,8 +722,8 @@ msgid "" "installed Python (the normal case). If it's under development (running from " "the source tree) then the default is ``off``. Note that the :mod:`!" "importlib_bootstrap` and :mod:`!importlib_bootstrap_external` frozen modules " -"are always used, even if this flag is set to ``off``. See also :envvar:" -"`PYTHON_FROZEN_MODULES`." +"are always used, even if this flag is set to ``off``. See " +"also :envvar:`PYTHON_FROZEN_MODULES`." msgstr "" msgid "" @@ -735,12 +739,12 @@ msgid "" "support. When this option is provided, the ``perf`` profiler will be able to " "report Python calls using DWARF information. This option is only available " "on some platforms and will do nothing if is not supported on the current " -"system. The default value is \"off\". See also :envvar:" -"`PYTHON_PERF_JIT_SUPPORT` and :ref:`perf_profiling`." +"system. The default value is \"off\". See " +"also :envvar:`PYTHON_PERF_JIT_SUPPORT` and :ref:`perf_profiling`." msgstr "" msgid "" -"``-X disable_remote_debug`` disables the remote debugging support as " +"``-X disable-remote-debug`` disables the remote debugging support as " "described in :pep:`768`. This includes both the functionality to schedule " "code for execution in another process and the functionality to receive code " "for execution in the current process." @@ -748,16 +752,17 @@ msgstr "" msgid "" "This option is only available on some platforms and will do nothing if is " -"not supported on the current system. See also :envvar:" -"`PYTHON_DISABLE_REMOTE_DEBUG` and :pep:`768`." +"not supported on the current system. See " +"also :envvar:`PYTHON_DISABLE_REMOTE_DEBUG` and :pep:`768`." msgstr "" msgid "" -":samp:`-X cpu_count={n}` overrides :func:`os.cpu_count`, :func:`os." -"process_cpu_count`, and :func:`multiprocessing.cpu_count`. *n* must be " -"greater than or equal to 1. This option may be useful for users who need to " -"limit CPU resources of a container system. See also :envvar:" -"`PYTHON_CPU_COUNT`. If *n* is ``default``, nothing is overridden." +":samp:`-X cpu_count={n}` " +"overrides :func:`os.cpu_count`, :func:`os.process_cpu_count`, " +"and :func:`multiprocessing.cpu_count`. *n* must be greater than or equal to " +"1. This option may be useful for users who need to limit CPU resources of a " +"container system. See also :envvar:`PYTHON_CPU_COUNT`. If *n* is " +"``default``, nothing is overridden." msgstr "" msgid "" @@ -766,8 +771,8 @@ msgid "" "executed and before the :mod:`__main__` module exists. Therefore, the " "imported module isn't :mod:`__main__`. This can be used to execute code " "early during Python initialization. Python needs to be :ref:`built in debug " -"mode ` for this option to exist. See also :envvar:" -"`PYTHON_PRESITE`." +"mode ` for this option to exist. See " +"also :envvar:`PYTHON_PRESITE`." msgstr "" msgid "Accept also ``module:func`` entry point format." @@ -789,25 +794,25 @@ msgid "" msgstr "" msgid "" -":samp:`-X context_aware_warnings={0,1}` causes the :class:`warnings." -"catch_warnings` context manager to use a :class:`~contextvars.ContextVar` to " -"store warnings filter state. If unset, the value of this option defaults to " -"``1`` on free-threaded builds and to ``0`` otherwise. See also :envvar:" -"`PYTHON_CONTEXT_AWARE_WARNINGS`." +":samp:`-X context_aware_warnings={0,1}` causes " +"the :class:`warnings.catch_warnings` context manager to use " +"a :class:`~contextvars.ContextVar` to store warnings filter state. If " +"unset, the value of this option defaults to ``1`` on free-threaded builds " +"and to ``0`` otherwise. See also :envvar:`PYTHON_CONTEXT_AWARE_WARNINGS`." msgstr "" msgid "" ":samp:`-X pathconfig_warnings={0,1}` if true (``1``) then :ref:`sys-path-" "init` is allowed to log warnings into stderr. If false (``0``) suppress " -"these warnings. Set to true by default. See also :envvar:" -"`PYTHON_PATHCONFIG_WARNINGS`." +"these warnings. Set to true by default. See " +"also :envvar:`PYTHON_PATHCONFIG_WARNINGS`." msgstr "" msgid "" ":samp:`-X tlbc={0,1}` enables (1, the default) or disables (0) thread-local " "bytecode in builds configured with :option:`--disable-gil`. When disabled, " -"this also disables the specializing interpreter. See also :envvar:" -"`PYTHON_TLBC`." +"this also disables the specializing interpreter. See " +"also :envvar:`PYTHON_TLBC`." msgstr "" msgid "" @@ -817,8 +822,8 @@ msgid "" msgstr "" msgid "" -"It also allows passing arbitrary values and retrieving them through the :" -"data:`sys._xoptions` dictionary." +"It also allows passing arbitrary values and retrieving them through " +"the :data:`sys._xoptions` dictionary." msgstr "" msgid "Removed the ``-X showalloccount`` option." @@ -876,10 +881,10 @@ msgstr "" msgid "" "Change the location of the standard Python libraries. By default, the " -"libraries are searched in :file:`{prefix}/lib/python{version}` and :file:" -"`{exec_prefix}/lib/python{version}`, where :file:`{prefix}` and :file:" -"`{exec_prefix}` are installation-dependent directories, both defaulting to :" -"file:`/usr/local`." +"libraries are searched in :file:`{prefix}/lib/python{version}` " +"and :file:`{exec_prefix}/lib/python{version}`, where :file:`{prefix}` " +"and :file:`{exec_prefix}` are installation-dependent directories, both " +"defaulting to :file:`/usr/local`." msgstr "" msgid "" @@ -890,8 +895,8 @@ msgstr "" msgid "" "Augment the default search path for module files. The format is the same as " -"the shell's :envvar:`PATH`: one or more directory pathnames separated by :" -"data:`os.pathsep` (e.g. colons on Unix or semicolons on Windows). Non-" +"the shell's :envvar:`PATH`: one or more directory pathnames separated " +"by :data:`os.pathsep` (e.g. colons on Unix or semicolons on Windows). Non-" "existent directories are silently ignored." msgstr "" @@ -908,8 +913,8 @@ msgid "" msgstr "" msgid "" -"An additional directory will be inserted in the search path in front of :" -"envvar:`PYTHONPATH` as described above under :ref:`using-on-interface-" +"An additional directory will be inserted in the search path in front " +"of :envvar:`PYTHONPATH` as described above under :ref:`using-on-interface-" "options`. The search path can be manipulated from within a Python program as " "the variable :data:`sys.path`." msgstr "" @@ -920,8 +925,8 @@ msgid "" msgstr "" msgid "" -"If this is set to a non-empty string, it overrides the :data:`sys." -"platlibdir` value." +"If this is set to a non-empty string, it overrides " +"the :data:`sys.platlibdir` value." msgstr "" msgid "" @@ -940,9 +945,9 @@ msgid "" msgstr "" msgid "" -"If this is set to a non-empty string it is equivalent to specifying the :" -"option:`-O` option. If set to an integer, it is equivalent to specifying :" -"option:`-O` multiple times." +"If this is set to a non-empty string it is equivalent to specifying " +"the :option:`-O` option. If set to an integer, it is equivalent to " +"specifying :option:`-O` multiple times." msgstr "" msgid "" @@ -951,14 +956,14 @@ msgid "" "by the default implementation of :func:`sys.breakpointhook` which itself is " "called by built-in :func:`breakpoint`. If not set, or set to the empty " "string, it is equivalent to the value \"pdb.set_trace\". Setting this to " -"the string \"0\" causes the default implementation of :func:`sys." -"breakpointhook` to do nothing but return immediately." +"the string \"0\" causes the default implementation " +"of :func:`sys.breakpointhook` to do nothing but return immediately." msgstr "" msgid "" -"If this is set to a non-empty string it is equivalent to specifying the :" -"option:`-d` option. If set to an integer, it is equivalent to specifying :" -"option:`-d` multiple times." +"If this is set to a non-empty string it is equivalent to specifying " +"the :option:`-d` option. If set to an integer, it is equivalent to " +"specifying :option:`-d` multiple times." msgstr "" msgid "" @@ -967,8 +972,8 @@ msgid "" msgstr "" msgid "" -"If this is set to a non-empty string it is equivalent to specifying the :" -"option:`-i` option." +"If this is set to a non-empty string it is equivalent to specifying " +"the :option:`-i` option." msgstr "" msgid "" @@ -985,14 +990,14 @@ msgid "" msgstr "" msgid "" -"If this is set to a non-empty string it is equivalent to specifying the :" -"option:`-u` option." +"If this is set to a non-empty string it is equivalent to specifying " +"the :option:`-u` option." msgstr "" msgid "" -"If this is set to a non-empty string it is equivalent to specifying the :" -"option:`-v` option. If set to an integer, it is equivalent to specifying :" -"option:`-v` multiple times." +"If this is set to a non-empty string it is equivalent to specifying " +"the :option:`-v` option. If set to an integer, it is equivalent to " +"specifying :option:`-v` multiple times." msgstr "" msgid "" @@ -1065,20 +1070,20 @@ msgstr "" msgid "" "This is equivalent to the :option:`-s` option. If this is set, Python won't " -"add the :data:`user site-packages directory ` to :data:`sys." -"path`." +"add the :data:`user site-packages directory ` " +"to :data:`sys.path`." msgstr "" msgid "" "Defines the :data:`user base directory `, which is used to " -"compute the path of the :data:`user site-packages directory ` and :ref:`installation paths ` for " +"compute the path of the :data:`user site-packages directory " +"` and :ref:`installation paths ` for " "``python -m pip install --user``." msgstr "" msgid "" -"To disable the user site-packages, see :envvar:`PYTHONNOUSERSITE` or the :" -"option:`-s` option." +"To disable the user site-packages, see :envvar:`PYTHONNOUSERSITE` or " +"the :option:`-s` option." msgstr "" msgid "" @@ -1103,11 +1108,11 @@ msgid "" msgstr "" msgid "" -"If this environment variable is set to a non-empty string, :func:" -"`faulthandler.enable` is called at startup: install a handler for :const:" -"`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:" -"`~signal.SIGBUS` and :const:`~signal.SIGILL` signals to dump the Python " -"traceback. This is equivalent to :option:`-X` ``faulthandler`` option." +"If this environment variable is set to a non-empty " +"string, :func:`faulthandler.enable` is called at startup: install a handler " +"for :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS` " +"and :const:`~signal.SIGILL` signals to dump the Python traceback. This is " +"equivalent to :option:`-X` ``faulthandler`` option." msgstr "" msgid "" @@ -1122,8 +1127,8 @@ msgstr "" msgid "" "If this environment variable is set to ``1``, Python will show how long each " "import takes. If set to ``2``, Python will include output for imported " -"modules that have already been loaded. This is equivalent to setting the :" -"option:`-X` ``importtime`` option." +"modules that have already been loaded. This is equivalent to setting " +"the :option:`-X` ``importtime`` option." msgstr "" msgid "" @@ -1131,8 +1136,8 @@ msgid "" msgstr "" msgid "" -"If this environment variable is set to a non-empty string, enable the :ref:" -"`debug mode ` of the :mod:`asyncio` module." +"If this environment variable is set to a non-empty string, enable " +"the :ref:`debug mode ` of the :mod:`asyncio` module." msgstr "" msgid "Set the Python memory allocators and/or install debug hooks." @@ -1148,20 +1153,20 @@ msgstr "" msgid "" "``malloc``: use the :c:func:`malloc` function of the C library for all " -"domains (:c:macro:`PYMEM_DOMAIN_RAW`, :c:macro:`PYMEM_DOMAIN_MEM`, :c:macro:" -"`PYMEM_DOMAIN_OBJ`)." +"domains " +"(:c:macro:`PYMEM_DOMAIN_RAW`, :c:macro:`PYMEM_DOMAIN_MEM`, :c:macro:`PYMEM_DOMAIN_OBJ`)." msgstr "" msgid "" -"``pymalloc``: use the :ref:`pymalloc allocator ` for :c:macro:" -"`PYMEM_DOMAIN_MEM` and :c:macro:`PYMEM_DOMAIN_OBJ` domains and use the :c:" -"func:`malloc` function for the :c:macro:`PYMEM_DOMAIN_RAW` domain." +"``pymalloc``: use the :ref:`pymalloc allocator ` " +"for :c:macro:`PYMEM_DOMAIN_MEM` and :c:macro:`PYMEM_DOMAIN_OBJ` domains and " +"use the :c:func:`malloc` function for the :c:macro:`PYMEM_DOMAIN_RAW` domain." msgstr "" msgid "" -"``mimalloc``: use the :ref:`mimalloc allocator ` for :c:macro:" -"`PYMEM_DOMAIN_MEM` and :c:macro:`PYMEM_DOMAIN_OBJ` domains and use the :c:" -"func:`malloc` function for the :c:macro:`PYMEM_DOMAIN_RAW` domain." +"``mimalloc``: use the :ref:`mimalloc allocator ` " +"for :c:macro:`PYMEM_DOMAIN_MEM` and :c:macro:`PYMEM_DOMAIN_OBJ` domains and " +"use the :c:func:`malloc` function for the :c:macro:`PYMEM_DOMAIN_RAW` domain." msgstr "" msgid "Install :ref:`debug hooks `:" @@ -1192,8 +1197,8 @@ msgid "Added the ``\"default\"`` allocator." msgstr "" msgid "" -"If set to a non-empty string, Python will print statistics of the :ref:" -"`pymalloc memory allocator ` or the :ref:`mimalloc memory " +"If set to a non-empty string, Python will print statistics of " +"the :ref:`pymalloc memory allocator ` or the :ref:`mimalloc memory " "allocator ` (whichever is in use) every time a new object arena is " "created, and on shutdown." msgstr "" @@ -1246,8 +1251,8 @@ msgid "" msgstr "" msgid "" -"This may also be enabled at runtime with :func:`sys." -"_enablelegacywindowsfsencoding`." +"This may also be enabled at runtime " +"with :func:`sys._enablelegacywindowsfsencoding`." msgstr "" msgid "Availability" @@ -1306,11 +1311,12 @@ msgstr "" msgid "" "Configuring one of these locales (either explicitly or via the above " -"implicit locale coercion) automatically enables the ``surrogateescape`` :ref:" -"`error handler ` for :data:`sys.stdin` and :data:`sys." -"stdout` (:data:`sys.stderr` continues to use ``backslashreplace`` as it does " -"in any other locale). This stream handling behavior can be overridden using :" -"envvar:`PYTHONIOENCODING` as usual." +"implicit locale coercion) automatically enables the " +"``surrogateescape`` :ref:`error handler ` " +"for :data:`sys.stdin` and :data:`sys.stdout` (:data:`sys.stderr` continues " +"to use ``backslashreplace`` as it does in any other locale). This stream " +"handling behavior can be overridden using :envvar:`PYTHONIOENCODING` as " +"usual." msgstr "" msgid "" @@ -1332,10 +1338,10 @@ msgid "See :pep:`538` for more details." msgstr "" msgid "" -"If this environment variable is set to a non-empty string, enable :ref:" -"`Python Development Mode `, introducing additional runtime checks " -"that are too expensive to be enabled by default. This is equivalent to " -"setting the :option:`-X` ``dev`` option." +"If this environment variable is set to a non-empty string, " +"enable :ref:`Python Development Mode `, introducing additional " +"runtime checks that are too expensive to be enabled by default. This is " +"equivalent to setting the :option:`-X` ``dev`` option." msgstr "" msgid "If set to ``1``, enable the :ref:`Python UTF-8 Mode `." @@ -1350,8 +1356,8 @@ msgid "" msgstr "" msgid "" -"If this environment variable is set to a non-empty string, issue a :class:" -"`EncodingWarning` when the locale-specific default encoding is used." +"If this environment variable is set to a non-empty string, issue " +"a :class:`EncodingWarning` when the locale-specific default encoding is used." msgstr "" msgid "See :ref:`io-encoding-warning` for details." @@ -1374,8 +1380,8 @@ msgid "If set to ``0``, disable Linux ``perf`` profiler support." msgstr "" msgid "" -"See also the :option:`-X perf <-X>` command-line option and :ref:" -"`perf_profiling`." +"See also the :option:`-X perf <-X>` command-line option " +"and :ref:`perf_profiling`." msgstr "" msgid "" @@ -1385,8 +1391,8 @@ msgid "" msgstr "" msgid "" -"See also the :option:`-X perf_jit <-X>` command-line option and :ref:" -"`perf_profiling`." +"See also the :option:`-X perf_jit <-X>` command-line option " +"and :ref:`perf_profiling`." msgstr "" msgid "" @@ -1396,7 +1402,7 @@ msgid "" "functionality to receive code for execution in the current process." msgstr "" -msgid "See also the :option:`-X disable_remote_debug` command-line option." +msgid "See also the :option:`-X disable-remote-debug` command-line option." msgstr "" msgid "" @@ -1422,8 +1428,8 @@ msgstr "" msgid "" "If this variable is set to ``1``, the interpreter will colorize various " -"kinds of output. Setting it to ``0`` deactivates this behavior. See also :" -"ref:`using-on-controlling-color`." +"kinds of output. Setting it to ``0`` deactivates this behavior. See " +"also :ref:`using-on-controlling-color`." msgstr "" msgid "" @@ -1438,9 +1444,9 @@ msgid "" msgstr "" msgid "" -"This environment variable can be used to set the location of a ``." -"python_history`` file (by default, it is ``.python_history`` in the user's " -"home directory)." +"This environment variable can be used to set the location of a " +"``.python_history`` file (by default, it is ``.python_history`` in the " +"user's home directory)." msgstr "" msgid "" diff --git a/using/configure.po b/using/configure.po index dfbf0d9..0e5db3d 100644 --- a/using/configure.po +++ b/using/configure.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,8 +46,8 @@ msgstr "" msgid "" "Support for `IEEE 754 `_ floating-" -"point numbers and `floating-point Not-a-Number (NaN) `_." +"point numbers and `floating-point Not-a-Number (NaN) `_." msgstr "" "`IEEE 754 `_ floating-point ਨੰਬਰਾਂ ਅਤੇ " "`floating-point Not-a-Number (NaN) `_" msgstr "`OpenSSL `_" -msgid "3.0.18 recommended" -msgstr "3.0.18 ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ" - -msgid "(1.1.1 minimum)" -msgstr "(ਘੱਟੋ-ਘੱਟ 1.1.1)" +msgid "[6]_" +msgstr "" msgid ":mod:`ssl`, :mod:`hashlib` [5]_" msgstr ":mod:`ssl`, :mod:`hashlib` [5]_" @@ -234,8 +231,8 @@ msgstr "" "ਵਰਤੇਗਾ। ਵੇਰਵਿਆਂ ਲਈ :option:`--with-system-libmpdec` ਵੇਖੋ।" msgid "" -"See :option:`--with-readline` for choosing the backend for the :mod:" -"`readline` module." +"See :option:`--with-readline` for choosing the backend for " +"the :mod:`readline` module." msgstr "" ":mod:`readline` ਮੋਡੀਊਲ ਲਈ backend ਚੁਣਨ ਵਾਸਤੇ :option:`--with-readline` ਵੇਖੋ।" @@ -264,6 +261,16 @@ msgstr "" "implementations ਵਰਤੇਗਾ। OpenSSL ਦੀ ਵਰਤੋਂ ਨੂੰ *ਲਾਜ਼ਮੀ ਬਣਾਉਣ* ਲਈ :option:`--with-" "builtin-hashlib-hashes` ਵੇਖੋ।" +msgid "" +"OpenSSL 1.1.1 is the minimum possible version to build against, but the " +"series is end-of-life and no longer receives public security fixes. Use the " +"latest patch release of a currently supported LTS release series (see the " +"`OpenSSL Roadmap `__), or " +"the package provided by your operating system if available. Other libraries " +"that offer an API compatible with OpenSSL 1.1.1 or later may work, but are " +"not officially supported." +msgstr "" + msgid "" "Note that the table does not include all optional modules; in particular, " "platform-specific modules like :mod:`winreg` are not listed here." @@ -375,8 +382,8 @@ msgstr "" "config/>`_ 1.8.1 ਸ਼ਾਮਲ ਹਨ।" msgid "" -"Autoconf 2.71 and aclocal 1.16.5 and are now used to regenerate :file:" -"`configure`." +"Autoconf 2.71 and aclocal 1.16.5 and are now used to " +"regenerate :file:`configure`." msgstr "" "ਹੁਣ :file:`configure` ਨੂੰ ਮੁੜ ਤਿਆਰ ਕਰਨ ਲਈ Autoconf 2.71 ਅਤੇ aclocal 1.16.5 ਵਰਤੇ " "ਜਾਂਦੇ ਹਨ।" @@ -410,18 +417,18 @@ msgstr "" "extensions ਲਈ ਸਮਰਥਨ (ਮੂਲ ਰੂਪ ਵਿੱਚ ਨਹੀਂ)।" msgid "" -"See the :meth:`sqlite3.Connection.enable_load_extension` method of the :mod:" -"`sqlite3` module." +"See the :meth:`sqlite3.Connection.enable_load_extension` method of " +"the :mod:`sqlite3` module." msgstr "" ":mod:`sqlite3` ਮੋਡੀਊਲ ਦੀ :meth:`sqlite3.Connection.enable_load_extension` " "ਵਿਧੀ ਵੇਖੋ।" msgid "" -"Disable IPv6 support (enabled by default if supported), see the :mod:" -"`socket` module." +"Disable IPv6 support (enabled by default if supported), see " +"the :mod:`socket` module." msgstr "" -"IPv6 ਸਮਰਥਨ ਨੂੰ ਅਸਮਰੱਥ ਕਰੋ (ਜੇ ਸਮਰਥਿਤ ਹੋਵੇ ਤਾਂ ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰੱਥ ਹੁੰਦਾ ਹੈ)। ਵੇਰਵਿਆਂ ਲਈ :mod:" -"`socket` ਮੋਡੀਊਲ ਵੇਖੋ।" +"IPv6 ਸਮਰਥਨ ਨੂੰ ਅਸਮਰੱਥ ਕਰੋ (ਜੇ ਸਮਰਥਿਤ ਹੋਵੇ ਤਾਂ ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰੱਥ ਹੁੰਦਾ ਹੈ)। ਵੇਰਵਿਆਂ " +"ਲਈ :mod:`socket` ਮੋਡੀਊਲ ਵੇਖੋ।" msgid "Define the size in bits of Python :class:`int` digits: 15 or 30 bits." msgstr "Python :class:`int` ਅੰਕਾਂ ਦਾ ਆਕਾਰ bits ਵਿੱਚ ਨਿਰਧਾਰਤ ਕਰੋ: 15 ਜਾਂ 30 bits।" @@ -429,8 +436,8 @@ msgstr "Python :class:`int` ਅੰਕਾਂ ਦਾ ਆਕਾਰ bits ਵਿੱ msgid "By default, the digit size is 30." msgstr "ਮੂਲ ਰੂਪ ਵਿੱਚ ਅੰਕਾਂ ਦਾ ਆਕਾਰ 30 ਹੁੰਦਾ ਹੈ।" -msgid "Define the ``PYLONG_BITS_IN_DIGIT`` to ``15`` or ``30``." -msgstr "``PYLONG_BITS_IN_DIGIT`` ਨੂੰ ``15`` ਜਾਂ ``30`` ਵਜੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ।" +msgid "Define :c:macro:`PYLONG_BITS_IN_DIGIT` to ``15`` or ``30``." +msgstr "" msgid "See :data:`sys.int_info.bits_per_digit `." msgstr ":data:`sys.int_info.bits_per_digit ` ਵੇਖੋ।" @@ -440,17 +447,17 @@ msgstr "Python executable ਲਈ *SUFFIX* suffix ਸੈੱਟ ਕਰੋ।" msgid "" "The default suffix is ``.exe`` on Windows and macOS (``python.exe`` " -"executable), ``.js`` on Emscripten node, ``.html`` on Emscripten browser, ``." -"wasm`` on WASI, and an empty string on other platforms (``python`` " +"executable), ``.js`` on Emscripten node, ``.html`` on Emscripten browser, " +"``.wasm`` on WASI, and an empty string on other platforms (``python`` " "executable)." msgstr "" "Windows ਅਤੇ macOS ਉੱਤੇ ਮੂਲ suffix ``.exe`` ਹੈ (``python.exe`` executable), " -"Emscripten node ਉੱਤੇ ``.js``, Emscripten browser ਉੱਤੇ ``.html``, WASI ਉੱਤੇ ``." -"wasm`` ਅਤੇ ਹੋਰ platforms ਉੱਤੇ ਖਾਲੀ string (``python`` executable) ਹੁੰਦੀ ਹੈ।" +"Emscripten node ਉੱਤੇ ``.js``, Emscripten browser ਉੱਤੇ ``.html``, WASI ਉੱਤੇ " +"``.wasm`` ਅਤੇ ਹੋਰ platforms ਉੱਤੇ ਖਾਲੀ string (``python`` executable) ਹੁੰਦੀ ਹੈ।" msgid "" -"The default suffix on WASM platform is one of ``.js``, ``.html`` or ``." -"wasm``." +"The default suffix on WASM platform is one of ``.js``, ``.html`` or " +"``.wasm``." msgstr "" "WASM platform ਉੱਤੇ ਮੂਲ suffix ``.js``, ``.html`` ਜਾਂ ``.wasm`` ਵਿੱਚੋਂ ਇੱਕ ਹੁੰਦਾ ਹੈ।" @@ -459,8 +466,8 @@ msgid "" "the :ref:`Compile-time configuration ` of " "the :mod:`zoneinfo` module." msgstr "" -":const:`zoneinfo.TZPATH` ਲਈ ਮੂਲ time zone ਖੋਜ ਮਾਰਗ ਚੁਣੋ। ਵੇਰਵਿਆਂ ਲਈ :mod:" -"`zoneinfo` ਮੋਡੀਊਲ ਦੀ :ref:`Compile-time configuration " +":const:`zoneinfo.TZPATH` ਲਈ ਮੂਲ time zone ਖੋਜ ਮਾਰਗ ਚੁਣੋ। ਵੇਰਵਿਆਂ " +"ਲਈ :mod:`zoneinfo` ਮੋਡੀਊਲ ਦੀ :ref:`Compile-time configuration " "` ਵੇਖੋ।" msgid "" @@ -529,8 +536,8 @@ msgstr "" msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" -"share/python-wheels/`` directory and don't install the :mod:`!ensurepip." -"_bundled` package." +"share/python-wheels/`` directory and don't install the :mod:`!" +"ensurepip._bundled` package." msgstr "" "ਕੁਝ Linux distributions ਦੀਆਂ packaging policies dependencies ਨੂੰ bundle ਕਰਨ ਦੇ " "ਵਿਰੁੱਧ ਸਿਫ਼ਾਰਸ਼ ਕਰਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, Fedora wheel packages ਨੂੰ ``/usr/share/python-" @@ -573,9 +580,9 @@ msgstr "" msgid "" "The JSON file should map missing module names to custom error message " -"strings. For example, if your distribution packages :mod:`tkinter` and :mod:" -"`_tkinter` separately and excludes :mod:`!_gdbm` for legal reasons, the " -"configuration could contain:" +"strings. For example, if your distribution packages :mod:`tkinter` " +"and :mod:`_tkinter` separately and excludes :mod:`!_gdbm` for legal reasons, " +"the configuration could contain:" msgstr "" "JSON ਫ਼ਾਈਲ ਵਿੱਚ ਗੁੰਮ ਮੋਡੀਊਲਾਂ ਦੇ ਨਾਮਾਂ ਨੂੰ ਕਸਟਮ ਗਲਤੀ ਸੁਨੇਹਿਆਂ ਨਾਲ map ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। " "ਉਦਾਹਰਨ ਲਈ, ਜੇ ਤੁਹਾਡੀ distribution :mod:`tkinter` ਅਤੇ :mod:`_tkinter` ਨੂੰ ਵੱਖ-ਵੱਖ " @@ -748,8 +755,8 @@ msgstr "" "ਹੈ: :term:`free-threaded build`।" msgid "" -"Defines the ``Py_GIL_DISABLED`` macro and adds ``\"t\"`` to :data:`sys." -"abiflags`." +"Defines the ``Py_GIL_DISABLED`` macro and adds ``\"t\"`` " +"to :data:`sys.abiflags`." msgstr "" "``Py_GIL_DISABLED`` macro ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਅਤੇ :data:`sys.abiflags` ਵਿੱਚ " "``\"t\"`` ਜੋੜਦਾ ਹੈ।" @@ -787,8 +794,8 @@ msgid "" "variable :envvar:`PYTHON_JIT=0 `." msgstr "" "``interpreter``: \"JIT interpreter\" ਨੂੰ ਸਮਰੱਥ ਕਰੋ (ਇਹ ਕੇਵਲ ਉਹਨਾਂ ਲਈ ਲਾਭਦਾਇਕ ਹੈ ਜੋ " -"JIT ਦੀ ਖੁਦ ਡੀਬੱਗਿੰਗ ਕਰ ਰਹੇ ਹਨ)। ਰਨਟਾਈਮ ਦੌਰਾਨ ਇਸਨੂੰ ਅਸਮਰੱਥ ਕਰਨ ਲਈ :envvar:" -"`PYTHON_JIT=0 ` environment variable ਸੈੱਟ ਕਰੋ।" +"JIT ਦੀ ਖੁਦ ਡੀਬੱਗਿੰਗ ਕਰ ਰਹੇ ਹਨ)। ਰਨਟਾਈਮ ਦੌਰਾਨ ਇਸਨੂੰ ਅਸਮਰੱਥ ਕਰਨ " +"ਲਈ :envvar:`PYTHON_JIT=0 ` environment variable ਸੈੱਟ ਕਰੋ।" msgid "" "``--enable-experimental-jit=no`` is the default behavior if the option is " @@ -823,9 +830,9 @@ msgid "" msgstr "" "``epoll`` ਤੋਂ ਬਿਨਾਂ build ਕਰੋ, ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ :py:func:`select.epoll` ਮੌਜੂਦ ਨਹੀਂ " "ਹੋਵੇਗਾ, ਭਾਵੇਂ ਸਿਸਟਮ :manpage:`epoll_create ` function ਪ੍ਰਦਾਨ " -"ਕਰਦਾ ਹੋਵੇ। ਇਹ ਉਹਨਾਂ ਸਿਸਟਮਾਂ 'ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿੱਥੇ :manpage:`!epoll_create` ਜਾਂ :" -"manpage:`epoll_create1 ` ਉਪਲਬਧ ਹੈ ਪਰ Linux semantics ਨਾਲ " -"ਅਨੁਕੂਲ ਨਹੀਂ ਹੈ।" +"ਕਰਦਾ ਹੋਵੇ। ਇਹ ਉਹਨਾਂ ਸਿਸਟਮਾਂ 'ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿੱਥੇ :manpage:`!epoll_create` " +"ਜਾਂ :manpage:`epoll_create1 ` ਉਪਲਬਧ ਹੈ ਪਰ Linux semantics " +"ਨਾਲ ਅਨੁਕੂਲ ਨਹੀਂ ਹੈ।" msgid "C compiler options" msgstr "C compiler ਦੇ ਵਿਕਲਪ" @@ -865,8 +872,8 @@ msgstr "" "flags, ਜੋ ``pkg-config`` ਨੂੰ override ਕਰਦੇ ਹਨ।" msgid "" -"C compiler and linker flags for ``libncurses`` or ``libncursesw``, used by :" -"mod:`curses` module, overriding ``pkg-config``." +"C compiler and linker flags for ``libncurses`` or ``libncursesw``, used " +"by :mod:`curses` module, overriding ``pkg-config``." msgstr "" ":mod:`curses` ਮੋਡੀਊਲ ਦੁਆਰਾ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ``libncurses`` ਜਾਂ ``libncursesw`` ਲਈ " "C compiler ਅਤੇ linker flags, ਜੋ ``pkg-config`` ਨੂੰ override ਕਰਦੇ ਹਨ।" @@ -942,8 +949,8 @@ msgstr "" "PANEL ਲਈ C compiler ਅਤੇ linker flags, ਜੋ ``pkg-config`` ਨੂੰ override ਕਰਦੇ ਹਨ।" msgid "" -"C compiler and linker flags for ``libpanel`` or ``libpanelw``, used by :mod:" -"`curses.panel` module, overriding ``pkg-config``." +"C compiler and linker flags for ``libpanel`` or ``libpanelw``, used " +"by :mod:`curses.panel` module, overriding ``pkg-config``." msgstr "" ":mod:`curses.panel` ਮੋਡੀਊਲ ਦੁਆਰਾ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ``libpanel`` ਜਾਂ ``libpanelw`` " "ਲਈ C compiler ਅਤੇ linker flags, ਜੋ ``pkg-config`` ਨੂੰ override ਕਰਦੇ ਹਨ।" @@ -979,8 +986,8 @@ msgid "Install Options" msgstr "ਇੰਸਟਾਲੇਸ਼ਨ ਦੇ ਵਿਕਲਪ" msgid "" -"Install architecture-independent files in PREFIX. On Unix, it defaults to :" -"file:`/usr/local`." +"Install architecture-independent files in PREFIX. On Unix, it defaults " +"to :file:`/usr/local`." msgstr "" "ਆਰਕੀਟੈਕਚਰ-ਤੋਂ-ਸੁਤੰਤਰ ਫ਼ਾਈਲਾਂ ਨੂੰ PREFIX ਵਿੱਚ ਇੰਸਟਾਲ ਕਰੋ। Unix 'ਤੇ ਮੂਲ ਰੂਪ ਵਿੱਚ ਇਹ :file:`/" "usr/local` ਹੁੰਦਾ ਹੈ।" @@ -1007,8 +1014,8 @@ msgstr "" "ਇਹ ਮੁੱਲ ਰਨਟਾਈਮ ਦੌਰਾਨ :data:`sys.exec_prefix` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" -"Don't build nor install test modules, like the :mod:`test` package or the :" -"mod:`!_testcapi` extension module (built and installed by default)." +"Don't build nor install test modules, like the :mod:`test` package or " +"the :mod:`!_testcapi` extension module (built and installed by default)." msgstr "" "ਟੈਸਟ ਮੋਡੀਊਲ ਜਿਵੇਂ :mod:`test` package ਜਾਂ :mod:`!_testcapi` extension module ਨਾ " "ਬਣਾਓ ਅਤੇ ਨਾ ਹੀ ਇੰਸਟਾਲ ਕਰੋ (ਮੂਲ ਰੂਪ ਵਿੱਚ ਇਹ ਬਣਾਏ ਅਤੇ ਇੰਸਟਾਲ ਕੀਤੇ ਜਾਂਦੇ ਹਨ)।" @@ -1072,8 +1079,8 @@ msgid "" msgstr "" "Build ਦੌਰਾਨ ਤੁਹਾਨੂੰ ਕੁਝ source files ਲਈ profile data ਉਪਲਬਧ ਨਾ ਹੋਣ ਸੰਬੰਧੀ compiler " "warnings ਮਿਲ ਸਕਦੀਆਂ ਹਨ। ਇਹ warnings ਨੁਕਸਾਨਦੇਹ ਨਹੀਂ ਹਨ, ਕਿਉਂਕਿ profile data ਇਕੱਠਾ " -"ਕਰਨ ਦੌਰਾਨ ਕੇਵਲ ਕੋਡ ਦਾ ਇੱਕ ਹਿੱਸਾ ਹੀ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। Clang 'ਤੇ ਇਹ warnings ਬੰਦ ਕਰਨ ਲਈ :" -"envvar:`CFLAGS` ਵਿੱਚ ``-Wno-profile-instr-unprofiled`` ਸ਼ਾਮਲ ਕਰੋ।" +"ਕਰਨ ਦੌਰਾਨ ਕੇਵਲ ਕੋਡ ਦਾ ਇੱਕ ਹਿੱਸਾ ਹੀ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। Clang 'ਤੇ ਇਹ warnings ਬੰਦ ਕਰਨ " +"ਲਈ :envvar:`CFLAGS` ਵਿੱਚ ``-Wno-profile-instr-unprofiled`` ਸ਼ਾਮਲ ਕਰੋ।" msgid "Use ``-fno-semantic-interposition`` on GCC." msgstr "GCC ਨਾਲ ``-fno-semantic-interposition`` ਵਰਤੋ।" @@ -1144,10 +1151,10 @@ msgstr "" "ਦੀ ਪੂਰੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।" msgid "" -"The :envvar:`!BOLT_INSTRUMENT_FLAGS` and :envvar:`!BOLT_APPLY_FLAGS` :" -"program:`configure` variables can be defined to override the default set of " -"arguments for :program:`llvm-bolt` to instrument and apply BOLT data to " -"binaries, respectively." +"The :envvar:`!BOLT_INSTRUMENT_FLAGS` and :envvar:`!" +"BOLT_APPLY_FLAGS` :program:`configure` variables can be defined to override " +"the default set of arguments for :program:`llvm-bolt` to instrument and " +"apply BOLT data to binaries, respectively." msgstr "" ":program:`configure` ਦੇ :envvar:`!BOLT_INSTRUMENT_FLAGS` ਅਤੇ :envvar:`!" "BOLT_APPLY_FLAGS` variables ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਕੇ ਕ੍ਰਮਵਾਰ :program:`llvm-bolt` ਲਈ " @@ -1172,8 +1179,8 @@ msgstr "" "ਸਮਰੱਥ)।" msgid "" -"Enable interpreters using tail calls in CPython. If enabled, enabling PGO (:" -"option:`--enable-optimizations`) is highly recommended. This option " +"Enable interpreters using tail calls in CPython. If enabled, enabling PGO " +"(:option:`--enable-optimizations`) is highly recommended. This option " "specifically requires a C compiler with proper tail call support, and the " "`preserve_none `_ calling convention. For example, Clang 19 and newer supports this " @@ -1224,9 +1231,9 @@ msgstr "" msgid "" "Frame pointers enable profilers, debuggers, and system tracing tools " "(``perf``, ``eBPF``, ``dtrace``, ``gdb``) to walk the C call stack without " -"DWARF metadata. The flags propagate to third-party C extensions through :mod:" -"`sysconfig`. On compilers that do not understand them, the build silently " -"skips them." +"DWARF metadata. The flags propagate to third-party C extensions " +"through :mod:`sysconfig`. On compilers that do not understand them, the " +"build silently skips them." msgstr "" "Frame pointers, profilers, debuggers ਅਤੇ system tracing tools (``perf``, " "``eBPF``, ``dtrace``, ``gdb``) ਨੂੰ DWARF metadata ਤੋਂ ਬਿਨਾਂ C call stack ਨੂੰ ਟ੍ਰੇਸ " @@ -1251,8 +1258,8 @@ msgid "" "This option cannot be used together with :option:`--disable-gil` because " "the :term:`free-threaded ` build requires mimalloc." msgstr "" -"ਇਹ ਵਿਕਲਪ :option:`--disable-gil` ਨਾਲ ਇਕੱਠੇ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ, ਕਿਉਂਕਿ :term:" -"`free-threaded ` build ਲਈ mimalloc ਲਾਜ਼ਮੀ ਹੈ।" +"ਇਹ ਵਿਕਲਪ :option:`--disable-gil` ਨਾਲ ਇਕੱਠੇ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ, " +"ਕਿਉਂਕਿ :term:`free-threaded ` build ਲਈ mimalloc ਲਾਜ਼ਮੀ ਹੈ।" msgid "See also :envvar:`PYTHONMALLOC` environment variable." msgstr ":envvar:`PYTHONMALLOC` environment variable ਵੀ ਵੇਖੋ।" @@ -1290,9 +1297,9 @@ msgid "" "(including copy-on-write faults after :func:`os.fork`) deliver ``SIGBUS`` " "and kill the process." msgstr "" -"Linux 'ਤੇ, ਜੇ huge-page pool ਖਤਮ ਹੋ ਜਾਵੇ, ਤਾਂ page faults (ਜਿਨ੍ਹਾਂ ਵਿੱਚ :func:`os." -"fork` ਤੋਂ ਬਾਅਦ copy-on-write faults ਵੀ ਸ਼ਾਮਲ ਹਨ) ``SIGBUS`` ਭੇਜਦੇ ਹਨ ਅਤੇ process ਨੂੰ " -"ਸਮਾਪਤ ਕਰ ਦਿੰਦੇ ਹਨ।" +"Linux 'ਤੇ, ਜੇ huge-page pool ਖਤਮ ਹੋ ਜਾਵੇ, ਤਾਂ page faults (ਜਿਨ੍ਹਾਂ " +"ਵਿੱਚ :func:`os.fork` ਤੋਂ ਬਾਅਦ copy-on-write faults ਵੀ ਸ਼ਾਮਲ ਹਨ) ``SIGBUS`` ਭੇਜਦੇ " +"ਹਨ ਅਤੇ process ਨੂੰ ਸਮਾਪਤ ਕਰ ਦਿੰਦੇ ਹਨ।" msgid "" "need a special privilege on Windows. See the `Windows documentation for " @@ -1331,8 +1338,13 @@ msgstr "" "ਮੈਮੋਰੀ ਦੀ ਵਰਤੋਂ ਘਟਾਉਣ ਲਈ static documentation strings ਨੂੰ ਅਸਮਰੱਥ ਕਰੋ (ਮੂਲ ਰੂਪ ਵਿੱਚ " "ਸਮਰੱਥ)। Python ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ documentation strings ਇਸ ਨਾਲ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਹੁੰਦੀਆਂ।" -msgid "Don't define the ``WITH_DOC_STRINGS`` macro." -msgstr "``WITH_DOC_STRINGS`` macro ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਨਾ ਕਰੋ।" +msgid "Don't define the :c:macro:`WITH_DOC_STRINGS` macro." +msgstr "" + +msgid "" +"Define this macro to include static documentation strings in the build. It " +"is defined by default, unless :option:`--without-doc-strings` is used." +msgstr "" msgid "See the ``PyDoc_STRVAR()`` macro." msgstr "``PyDoc_STRVAR()`` macro ਵੇਖੋ।" @@ -1356,14 +1368,14 @@ msgid "" "executed." msgstr "" ":pep:`768` ਵਿੱਚ ਵਰਣਿਤ remote debugging ਸਮਰਥਨ ਨੂੰ ਅਸਮਰੱਥ ਕਰੋ (ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰੱਥ)। ਜਦੋਂ " -"ਇਹ flag ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਹ code compile ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਜੋ interpreter ਨੂੰ :pep:" -"`768` ਅਨੁਸਾਰ ਵੱਖਰੀ process ਵਿੱਚ Python ਫ਼ਾਈਲ ਚਲਾਉਣ ਦੀ ਯੋਜਨਾ ਬਣਾਉਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। " -"ਇਸ ਵਿੱਚ code ਨੂੰ ਚਲਾਉਣ ਲਈ schedule ਕਰਨ ਅਤੇ ਚਲਾਉਣ ਲਈ code ਪ੍ਰਾਪਤ ਕਰਨ—ਦੋਵੇਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ " -"ਸ਼ਾਮਲ ਹਨ।" +"ਇਹ flag ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਉਹ code compile ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਜੋ interpreter " +"ਨੂੰ :pep:`768` ਅਨੁਸਾਰ ਵੱਖਰੀ process ਵਿੱਚ Python ਫ਼ਾਈਲ ਚਲਾਉਣ ਦੀ ਯੋਜਨਾ ਬਣਾਉਣ ਦੀ ਆਗਿਆ " +"ਦਿੰਦਾ ਹੈ। ਇਸ ਵਿੱਚ code ਨੂੰ ਚਲਾਉਣ ਲਈ schedule ਕਰਨ ਅਤੇ ਚਲਾਉਣ ਲਈ code ਪ੍ਰਾਪਤ ਕਰਨ—ਦੋਵੇਂ " +"ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹਨ।" msgid "" -"This macro is defined by default, unless Python is configured with :option:" -"`--without-remote-debug`." +"This macro is defined by default, unless Python is configured " +"with :option:`--without-remote-debug`." msgstr "" "ਇਹ macro ਮੂਲ ਰੂਪ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦੀ ਹੈ, ਜਦ ਤੱਕ Python ਨੂੰ :option:`--without-remote-" "debug` ਨਾਲ configure ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ।" @@ -1408,8 +1420,8 @@ msgid "" "Add :option:`-d` command line option and :envvar:`PYTHONDEBUG` environment " "variable to debug the parser." msgstr "" -"Parser ਨੂੰ debug ਕਰਨ ਲਈ :option:`-d` command line ਵਿਕਲਪ ਅਤੇ :envvar:" -"`PYTHONDEBUG` environment variable ਜੋੜੋ।" +"Parser ਨੂੰ debug ਕਰਨ ਲਈ :option:`-d` command line ਵਿਕਲਪ " +"ਅਤੇ :envvar:`PYTHONDEBUG` environment variable ਜੋੜੋ।" msgid "" "Add support for the ``__lltrace__`` variable: enable low-level tracing in " @@ -1482,9 +1494,9 @@ msgstr "" msgid "" "Release builds are now ABI compatible with debug builds: defining the " -"``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro (see the :" -"option:`--with-trace-refs` option). However, debug builds still expose more " -"symbols than release builds and code built against a debug build is not " +"``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro (see " +"the :option:`--with-trace-refs` option). However, debug builds still expose " +"more symbols than release builds and code built against a debug build is not " "necessarily compatible with a release build." msgstr "" "ਹੁਣ release builds, debug builds ਨਾਲ ABI-ਅਨੁਕੂਲ ਹਨ: ``Py_DEBUG`` macro ਨੂੰ " @@ -1519,8 +1531,8 @@ msgid "" "The :envvar:`PYTHONDUMPREFS` environment variable can be used to dump " "objects and reference counts still alive at Python exit." msgstr "" -"Python ਬੰਦ ਹੋਣ ਸਮੇਂ ਹਾਲੇ ਵੀ ਮੌਜੂਦ objects ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ reference counts ਨੂੰ dump ਕਰਨ ਲਈ :" -"envvar:`PYTHONDUMPREFS` environment variable ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।" +"Python ਬੰਦ ਹੋਣ ਸਮੇਂ ਹਾਲੇ ਵੀ ਮੌਜੂਦ objects ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ reference counts ਨੂੰ dump ਕਰਨ " +"ਲਈ :envvar:`PYTHONDUMPREFS` environment variable ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid ":ref:`Statically allocated objects ` are not traced." msgstr "" @@ -1567,8 +1579,8 @@ msgstr "" msgid "" "Enable AddressSanitizer memory error detector, ``asan`` (default is no). To " -"improve ASan detection capabilities you may also want to combine this with :" -"option:`--without-pymalloc` to disable the specialized small-object " +"improve ASan detection capabilities you may also want to combine this " +"with :option:`--without-pymalloc` to disable the specialized small-object " "allocator whose allocations are not tracked by ASan." msgstr "" "AddressSanitizer memory error detector, ``asan``, ਨੂੰ ਸਮਰੱਥ ਕਰੋ (ਮੂਲ ਰੂਪ ਵਿੱਚ ਨਹੀਂ)। " @@ -1582,6 +1594,12 @@ msgstr "" "MemorySanitizer allocation error detector, ``msan``, ਨੂੰ ਸਮਰੱਥ ਕਰੋ (ਮੂਲ ਰੂਪ ਵਿੱਚ " "ਨਹੀਂ)।" +msgid "" +"MSan reports false positives for memory initialized by libraries that are " +"not built with MSan, so either build all dependencies with MSan or disable " +"the extension modules that use them in :file:`Modules/Setup.local`." +msgstr "" + msgid "" "Enable UndefinedBehaviorSanitizer undefined behaviour detector, ``ubsan`` " "(default is no)." @@ -1898,11 +1916,11 @@ msgstr "" "compatibility-tags/#macos>`_ ਵੇਖੋ।" msgid "" -"Specify the name for the python framework on macOS only valid when :option:" -"`--enable-framework` is set (default: ``Python``)." +"Specify the name for the python framework on macOS only valid " +"when :option:`--enable-framework` is set (default: ``Python``)." msgstr "" -"ਕੇਵਲ macOS ਉੱਤੇ Python framework ਦਾ ਨਾਮ ਨਿਰਧਾਰਤ ਕਰੋ। ਇਹ ਵਿਕਲਪ ਤਦੋਂ ਹੀ ਵੈਧ ਹੈ ਜਦੋਂ :" -"option:`--enable-framework` ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੋਵੇ (ਮੂਲ: ``Python``)।" +"ਕੇਵਲ macOS ਉੱਤੇ Python framework ਦਾ ਨਾਮ ਨਿਰਧਾਰਤ ਕਰੋ। ਇਹ ਵਿਕਲਪ ਤਦੋਂ ਹੀ ਵੈਧ ਹੈ " +"ਜਦੋਂ :option:`--enable-framework` ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੋਵੇ (ਮੂਲ: ``Python``)।" msgid "" "The Python standard library contains strings that are known to trigger " @@ -2012,8 +2030,8 @@ msgid ":file:`pyconfig.h` (created by :file:`configure`);" msgstr ":file:`pyconfig.h` (:file:`configure` ਦੁਆਰਾ ਬਣਾਈ ਜਾਂਦੀ ਹੈ);" msgid "" -":file:`Modules/Setup`: C extensions built by the Makefile using :file:" -"`Module/makesetup` shell script;" +":file:`Modules/Setup`: C extensions built by the Makefile " +"using :file:`Module/makesetup` shell script;" msgstr "" ":file:`Modules/Setup`: C extensions ਜਿਨ੍ਹਾਂ ਨੂੰ Makefile :file:`Module/" "makesetup` shell script ਦੀ ਵਰਤੋਂ ਕਰਕੇ build ਕਰਦੀ ਹੈ;" @@ -2117,8 +2135,8 @@ msgid "" "target of the ``make`` command (``make all`` or just ``make``)." msgstr "" "Profile-Guided Optimization (PGO) ਦੀ ਵਰਤੋਂ ਕਰਕੇ Python ਨੂੰ ਬਿਲਡ ਕਰੋ। ਇਸ ਨੂੰ ``make`` " -"ਕਮਾਂਡ (``make all`` ਜਾਂ ਸਿਰਫ਼ ``make``) ਦਾ ਮੂਲ ਟਾਰਗੇਟ ਬਣਾਉਣ ਲਈ configure ਦੀ :" -"option:`--enable-optimizations` ਚੋਣ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।" +"ਕਮਾਂਡ (``make all`` ਜਾਂ ਸਿਰਫ਼ ``make``) ਦਾ ਮੂਲ ਟਾਰਗੇਟ ਬਣਾਉਣ ਲਈ configure " +"ਦੀ :option:`--enable-optimizations` ਚੋਣ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ।" msgid "make clean" msgstr "make clean" @@ -2236,15 +2254,15 @@ msgstr "" msgid "" ">>> import _asyncio\n" ">>> _asyncio\n" -"\n" +"\n" ">>> _asyncio.__file__\n" "'/usr/lib64/python3.9/lib-dynload/_asyncio.cpython-39-x86_64-linux-gnu.so'" msgstr "" ">>> import _asyncio\n" ">>> _asyncio\n" -"\n" +"\n" ">>> _asyncio.__file__\n" "'/usr/lib64/python3.9/lib-dynload/_asyncio.cpython-39-x86_64-linux-gnu.so'" @@ -2260,9 +2278,10 @@ msgstr "" "ਬਿਲਡ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।" msgid "" -"The :c:macro:`!PyAPI_FUNC()`, :c:macro:`!PyAPI_DATA()` and :c:macro:" -"`PyMODINIT_FUNC` macros of :file:`Include/exports.h` are defined differently " -"depending if the ``Py_BUILD_CORE_MODULE`` macro is defined:" +"The :c:macro:`!PyAPI_FUNC()`, :c:macro:`!PyAPI_DATA()` " +"and :c:macro:`PyMODINIT_FUNC` macros of :file:`Include/exports.h` are " +"defined differently depending if the ``Py_BUILD_CORE_MODULE`` macro is " +"defined:" msgstr "" ":file:`Include/exports.h` ਵਿੱਚ ਮੌਜੂਦ :c:macro:`!PyAPI_FUNC()`, :c:macro:`!" "PyAPI_DATA()` ਅਤੇ :c:macro:`PyMODINIT_FUNC` ਮੈਕਰੋ ਇਸ ਗੱਲ ਦੇ ਅਨੁਸਾਰ ਵੱਖ-ਵੱਖ ਢੰਗ ਨਾਲ " @@ -2312,19 +2331,20 @@ msgid "" "value to be able to build extension modules using the directories specified " "in the environment variables." msgstr "" -"ਇਨਵਾਇਰਨਮੈਂਟ ਵੇਰੀਏਬਲਾਂ ਵਿੱਚ ਦਿੱਤੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲ ਬਿਲਡ ਕਰਨ ਲਈ :" -"envvar:`CPPFLAGS` ਅਤੇ :envvar:`LDFLAGS` ਦੋਵੇਂ ਵਿੱਚ ਸ਼ੈੱਲ ਵਾਲਾ ਮੁੱਲ ਸ਼ਾਮਲ ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ।" +"ਇਨਵਾਇਰਨਮੈਂਟ ਵੇਰੀਏਬਲਾਂ ਵਿੱਚ ਦਿੱਤੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲ ਬਿਲਡ ਕਰਨ " +"ਲਈ :envvar:`CPPFLAGS` ਅਤੇ :envvar:`LDFLAGS` ਦੋਵੇਂ ਵਿੱਚ ਸ਼ੈੱਲ ਵਾਲਾ ਮੁੱਲ ਸ਼ਾਮਲ ਹੋਣਾ ਲਾਜ਼ਮੀ " +"ਹੈ।" msgid "" "Extra preprocessor flags added for building the interpreter object files." msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਆਬਜੈਕਟ ਫਾਈਲਾਂ ਨੂੰ ਬਿਲਡ ਕਰਨ ਲਈ ਸ਼ਾਮਲ ਕੀਤੇ ਵਾਧੂ ਪ੍ਰੀ-ਪ੍ਰੋਸੈਸਰ ਫਲੈਗ।" msgid "" -"Default: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) " -"$(CPPFLAGS)``." +"Default: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) $" +"(CPPFLAGS)``." msgstr "" -"ਮੂਲ: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) " -"$(CPPFLAGS)``।" +"ਮੂਲ: ``$(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) $" +"(CPPFLAGS)``।" msgid "Compiler flags" msgstr "ਕੰਪਾਈਲਰ ਫਲੈਗ" @@ -2340,8 +2360,8 @@ msgstr "ਉਦਾਹਰਨ: ``g++ -pthread``।" msgid "" ":envvar:`CFLAGS_NODIST` is used for building the interpreter and stdlib C " -"extensions. Use it when a compiler flag should *not* be part of :envvar:" -"`CFLAGS` once Python is installed (:gh:`65320`)." +"extensions. Use it when a compiler flag should *not* be part " +"of :envvar:`CFLAGS` once Python is installed (:gh:`65320`)." msgstr "" ":envvar:`CFLAGS_NODIST` ਦੀ ਵਰਤੋਂ ਇੰਟਰਪ੍ਰੀਟਰ ਅਤੇ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਦੀਆਂ C ਐਕਸਟੈਂਸ਼ਨਾਂ ਨੂੰ " "ਬਿਲਡ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸਦੀ ਵਰਤੋਂ ਤਦੋਂ ਕਰੋ ਜਦੋਂ ਕੋਈ ਕੰਪਾਈਲਰ ਫਲੈਗ Python ਇੰਸਟਾਲ ਹੋਣ ਤੋਂ " @@ -2352,8 +2372,9 @@ msgstr "ਖ਼ਾਸ ਤੌਰ 'ਤੇ, :envvar:`CFLAGS` ਵਿੱਚ ਹੇਠ msgid "" "the compiler flag ``-I`` (for setting the search path for include files). " -"The ``-I`` flags are processed from left to right, and any flags in :envvar:" -"`CFLAGS` would take precedence over user- and package-supplied ``-I`` flags." +"The ``-I`` flags are processed from left to right, and any flags " +"in :envvar:`CFLAGS` would take precedence over user- and package-supplied ``-" +"I`` flags." msgstr "" "ਕੰਪਾਈਲਰ ਫਲੈਗ ``-I`` (include ਫਾਈਲਾਂ ਲਈ ਖੋਜ ਮਾਰਗ ਸੈੱਟ ਕਰਨ ਵਾਸਤੇ)। ``-I`` ਫਲੈਗ ਖੱਬੇ ਤੋਂ ਸੱਜੇ " "ਪ੍ਰੋਸੈਸ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ :envvar:`CFLAGS` ਵਿੱਚ ਮੌਜੂਦ ਕੋਈ ਵੀ ਫਲੈਗ ਯੂਜ਼ਰ ਜਾਂ ਪੈਕੇਜ ਦੁਆਰਾ ਦਿੱਤੇ " @@ -2416,8 +2437,8 @@ msgstr "" "ਸਟਰਿੰਗ।" msgid "" -"Default: ``$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) " -"$(EXTRA_CFLAGS)``." +"Default: ``$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $" +"(EXTRA_CFLAGS)``." msgstr "" "ਮੂਲ: ``$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)``।" @@ -2432,8 +2453,8 @@ msgid "C flags used for building the interpreter object files." msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਆਬਜੈਕਟ ਫਾਈਲਾਂ ਨੂੰ ਬਿਲਡ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ C ਫਲੈਗ।" msgid "" -"Default: ``$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) " -"$(CFLAGSFORSHARED)``." +"Default: ``$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) $" +"(CFLAGSFORSHARED)``." msgstr "" "ਮੂਲ: ``$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) $(CFLAGSFORSHARED)``।" @@ -2482,9 +2503,9 @@ msgstr "" "ਸਕਣ।" msgid "" -":envvar:`LDFLAGS_NODIST` is used in the same manner as :envvar:" -"`CFLAGS_NODIST`. Use it when a linker flag should *not* be part of :envvar:" -"`LDFLAGS` once Python is installed (:gh:`65320`)." +":envvar:`LDFLAGS_NODIST` is used in the same manner " +"as :envvar:`CFLAGS_NODIST`. Use it when a linker flag should *not* be part " +"of :envvar:`LDFLAGS` once Python is installed (:gh:`65320`)." msgstr "" ":envvar:`LDFLAGS_NODIST` ਦੀ ਵਰਤੋਂ :envvar:`CFLAGS_NODIST` ਵਾਂਗ ਹੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। " "ਇਸਦੀ ਵਰਤੋਂ ਉਸ ਵੇਲੇ ਕਰੋ ਜਦੋਂ ਕੋਈ ਲਿੰਕਰ ਫਲੈਗ Python ਇੰਸਟਾਲ ਹੋਣ ਤੋਂ ਬਾਅਦ :envvar:`LDFLAGS` ਦਾ " @@ -2495,8 +2516,9 @@ msgstr "ਖ਼ਾਸ ਤੌਰ 'ਤੇ, :envvar:`LDFLAGS` ਵਿੱਚ ਹੇਠ msgid "" "the compiler flag ``-L`` (for setting the search path for libraries). The ``-" -"L`` flags are processed from left to right, and any flags in :envvar:" -"`LDFLAGS` would take precedence over user- and package-supplied ``-L`` flags." +"L`` flags are processed from left to right, and any flags " +"in :envvar:`LDFLAGS` would take precedence over user- and package-supplied " +"``-L`` flags." msgstr "" "ਕੰਪਾਈਲਰ ਫਲੈਗ ``-L`` (ਲਾਇਬ੍ਰੇਰੀਆਂ ਲਈ ਖੋਜ ਮਾਰਗ ਸੈੱਟ ਕਰਨ ਵਾਸਤੇ)। ``-L`` ਫਲੈਗ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਪ੍ਰੋਸੈਸ " "ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ :envvar:`LDFLAGS` ਵਿੱਚ ਮੌਜੂਦ ਕੋਈ ਵੀ ਫਲੈਗ ਯੂਜ਼ਰ ਜਾਂ ਪੈਕੇਜ ਦੁਆਰਾ ਦਿੱਤੇ ``-L`` " @@ -2554,12 +2576,12 @@ msgstr "ਇੰਟਰਪ੍ਰੀਟਰ ਆਬਜੈਕਟ ਫਾਈਲਾਂ ਨ msgid "" "Linker flags used for building executable targets such as the interpreter. " -"If supplied, :envvar:`PY_CORE_EXE_LDFLAGS` will be used in replacement of :" -"envvar:`PY_CORE_LDFLAGS`." +"If supplied, :envvar:`PY_CORE_EXE_LDFLAGS` will be used in replacement " +"of :envvar:`PY_CORE_LDFLAGS`." msgstr "" -"ਇੰਟਰਪ੍ਰੀਟਰ ਵਰਗੇ ਐਗਜ਼ਿਕਿਊਟੇਬਲ ਟਾਰਗੇਟਾਂ ਨੂੰ ਬਿਲਡ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਲਿੰਕਰ ਫਲੈਗ। ਜੇ :envvar:" -"`PY_CORE_EXE_LDFLAGS` ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇਹ :envvar:`PY_CORE_LDFLAGS` ਦੀ ਥਾਂ " -"ਵਰਤਿਆ ਜਾਵੇਗਾ।" +"ਇੰਟਰਪ੍ਰੀਟਰ ਵਰਗੇ ਐਗਜ਼ਿਕਿਊਟੇਬਲ ਟਾਰਗੇਟਾਂ ਨੂੰ ਬਿਲਡ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਲਿੰਕਰ ਫਲੈਗ। " +"ਜੇ :envvar:`PY_CORE_EXE_LDFLAGS` ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇਹ :envvar:`PY_CORE_LDFLAGS` " +"ਦੀ ਥਾਂ ਵਰਤਿਆ ਜਾਵੇਗਾ।" msgid "" "Value of :envvar:`EXE_LDFLAGS` variable passed to the ``./configure`` script." diff --git a/using/editors.po b/using/editors.po index 66e062b..e847e08 100644 --- a/using/editors.po +++ b/using/editors.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,7 +48,7 @@ msgstr "" msgid "" "Python's community wiki has information submitted by the community on " "Editors and IDEs. Please go to `Python Editors `_ and `Integrated Development Environments `_ for a comprehensive " -"list." +"PythonEditors>`_ and `Integrated Development Environments `_ for a " +"comprehensive list." msgstr "" diff --git a/using/index.po b/using/index.po index be61d38..c6b1ba6 100644 --- a/using/index.po +++ b/using/index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/using/ios.po b/using/ios.po index c0d918e..bd0a960 100644 --- a/using/ios.po +++ b/using/ios.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,9 +34,9 @@ msgstr "Russell Keith-Magee (2024-03)" msgid "" "Python on iOS is unlike Python on desktop platforms. On a desktop platform, " "Python is generally installed as a system resource that can be used by any " -"user of that computer. Users then interact with Python by running a :program:" -"`python` executable and entering commands at an interactive prompt, or by " -"running a Python script." +"user of that computer. Users then interact with Python by running " +"a :program:`python` executable and entering commands at an interactive " +"prompt, or by running a Python script." msgstr "" "iOS ਉੱਤੇ ਪਾਇਥਨ ਦੀ ਵਰਤੋਂ ਡੈਸਕਟਾਪ ਪਲੇਟਫਾਰਮਾਂ ਉੱਤੇ ਪਾਇਥਨ ਦੀ ਵਰਤੋਂ ਤੋਂ ਵੱਖਰੀ ਹੈ। ਡੈਸਕਟਾਪ ਪਲੇਟਫਾਰਮ " "ਉੱਤੇ ਪਾਇਥਨ ਆਮ ਤੌਰ 'ਤੇ ਇੱਕ ਸਿਸਟਮ ਸਰੋਤ ਵਜੋਂ ਇੰਸਟਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਸਦੀ ਵਰਤੋਂ ਉਸ ਕੰਪਿਊਟਰ ਦਾ " @@ -55,28 +55,25 @@ msgstr "" msgid "" "As a result, the only way you can use Python on iOS is in embedded mode - " "that is, by writing a native iOS application, and embedding a Python " -"interpreter using ``libPython``, and invoking Python code using the :ref:" -"`Python embedding API `. The full Python interpreter, the " -"standard library, and all your Python code is then packaged as a standalone " -"bundle that can be distributed via the iOS App Store." +"interpreter using ``libPython``, and invoking Python code using " +"the :ref:`Python embedding API `. The full Python interpreter, " +"the standard library, and all your Python code is then packaged as a " +"standalone bundle that can be distributed via the iOS App Store." msgstr "" "ਨਤੀਜੇ ਵਜੋਂ, iOS ਉੱਤੇ ਪਾਇਥਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦਾ ਇਕੋ ਤਰੀਕਾ ਐਮਬੈਡਡ ਮੋਡ ਹੈ — ਅਰਥਾਤ ਇੱਕ ਮੂਲ iOS " -"ਐਪਲੀਕੇਸ਼ਨ ਲਿਖਣਾ, ``libPython`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ ਨੂੰ ਐਮਬੈਡ ਕਰਨਾ ਅਤੇ :ref:" -"`Python embedding API ` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਾਇਥਨ ਕੋਡ ਨੂੰ ਚਲਾਉਣਾ। ਫਿਰ ਪੂਰਾ " -"ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ, ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਅਤੇ ਤੁਹਾਡਾ ਸਾਰਾ ਪਾਇਥਨ ਕੋਡ ਇੱਕ ਸੁਤੰਤਰ bundle ਦੇ ਰੂਪ ਵਿੱਚ " -"ਪੈਕੇਜ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਸਨੂੰ iOS App Store ਰਾਹੀਂ ਵੰਡਿਆ ਜਾ ਸਕਦਾ ਹੈ।" +"ਐਪਲੀਕੇਸ਼ਨ ਲਿਖਣਾ, ``libPython`` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ ਨੂੰ ਐਮਬੈਡ ਕਰਨਾ " +"ਅਤੇ :ref:`Python embedding API ` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਾਇਥਨ ਕੋਡ ਨੂੰ ਚਲਾਉਣਾ। ਫਿਰ " +"ਪੂਰਾ ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ, ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਅਤੇ ਤੁਹਾਡਾ ਸਾਰਾ ਪਾਇਥਨ ਕੋਡ ਇੱਕ ਸੁਤੰਤਰ bundle ਦੇ ਰੂਪ " +"ਵਿੱਚ ਪੈਕੇਜ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਸਨੂੰ iOS App Store ਰਾਹੀਂ ਵੰਡਿਆ ਜਾ ਸਕਦਾ ਹੈ।" msgid "" "If you're looking to experiment for the first time with writing an iOS app " -"in Python, projects such as `BeeWare `__ and `Kivy " -"`__ will provide a much more approachable user experience. " -"These projects manage the complexities associated with getting an iOS " -"project running, so you only need to deal with the Python code itself." +"in Python, projects such as `BeeWare `__, `Kivy " +"`__, and `Flet `__ will provide a much " +"more approachable user experience. These projects manage the complexities " +"associated with getting an iOS project running, so you only need to deal " +"with the Python code itself." msgstr "" -"ਜੇ ਤੁਸੀਂ ਪਹਿਲੀ ਵਾਰ ਪਾਇਥਨ ਵਿੱਚ iOS ਐਪ ਬਣਾਉਣ ਦਾ ਅਨੁਭਵ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ `BeeWare " -"`__ ਅਤੇ `Kivy `__ ਵਰਗੇ ਪ੍ਰੋਜੈਕਟ ਤੁਹਾਨੂੰ ਕਾਫ਼ੀ " -"ਆਸਾਨ ਤਜਰਬਾ ਪ੍ਰਦਾਨ ਕਰਨਗੇ। ਇਹ ਪ੍ਰੋਜੈਕਟ iOS ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਚਲਾਉਣ ਨਾਲ ਸੰਬੰਧਿਤ ਜਟਿਲਤਾਵਾਂ ਦਾ ਪ੍ਰਬੰਧ " -"ਕਰਦੇ ਹਨ, ਇਸ ਲਈ ਤੁਹਾਨੂੰ ਸਿਰਫ਼ ਪਾਇਥਨ ਕੋਡ ਉੱਤੇ ਧਿਆਨ ਦੇਣਾ ਪੈਂਦਾ ਹੈ।" msgid "Python at runtime on iOS" msgstr "iOS ਉੱਤੇ ਰਨਟਾਈਮ ਦੌਰਾਨ ਪਾਇਥਨ" @@ -85,13 +82,13 @@ msgid "iOS version compatibility" msgstr "iOS ਸੰਸਕਰਣ ਅਨੁਕੂਲਤਾ" msgid "" -"The minimum supported iOS version is specified at compile time, using the :" -"option:`--host` option to ``configure``. By default, when compiled for iOS, " -"Python will be compiled with a minimum supported iOS version of 13.0. To use " -"a different minimum iOS version, provide the version number as part of the :" -"option:`!--host` argument - for example, ``--host=arm64-apple-ios15.4-" -"simulator`` would compile an ARM64 simulator build with a deployment target " -"of 15.4." +"The minimum supported iOS version is specified at compile time, using " +"the :option:`--host` option to ``configure``. By default, when compiled for " +"iOS, Python will be compiled with a minimum supported iOS version of 13.0. " +"To use a different minimum iOS version, provide the version number as part " +"of the :option:`!--host` argument - for example, ``--host=arm64-apple-" +"ios15.4-simulator`` would compile an ARM64 simulator build with a deployment " +"target of 15.4." msgstr "" "ਸਮਰਥਿਤ ਘੱਟੋ-ਘੱਟ iOS ਸੰਸਕਰਣ ਕੰਪਾਈਲ ਸਮੇਂ ``configure`` ਦੀ :option:`--host` ਵਿਕਲਪ ਰਾਹੀਂ " "ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਮੂਲ ਰੂਪ ਵਿੱਚ, iOS ਲਈ ਕੰਪਾਈਲ ਕੀਤੇ ਜਾਣ 'ਤੇ ਪਾਇਥਨ ਨੂੰ ਘੱਟੋ-ਘੱਟ 13.0 " @@ -169,15 +166,15 @@ msgid "" "``sys.path``. To ensure compliance with App Store policies, an iOS project " "must post-process any Python packages, converting ``.so`` binary modules " "into individual standalone frameworks with appropriate metadata and signing. " -"For details on how to perform this post-processing, see the guide for :ref:" -"`adding Python to your project `." +"For details on how to perform this post-processing, see the guide " +"for :ref:`adding Python to your project `." msgstr "" "ਇਹ ਬਾਈਨਰੀਆਂ ਨੂੰ ਵੰਡਣ ਦੇ ਆਮ ਪਾਇਥਨ ਤਰੀਕੇ ਨਾਲ ਟਕਰਾਉਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਬਾਈਨਰੀ ਐਕਸਟੈਂਸ਼ਨ ਮੋਡੀਊਲ " "ਨੂੰ ``sys.path`` ਉੱਤੇ ਕਿਸੇ ਵੀ ਸਥਾਨ ਤੋਂ ਲੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। App Store ਨੀਤੀਆਂ ਦੀ ਪਾਲਣਾ " "ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ iOS ਪ੍ਰੋਜੈਕਟ ਨੂੰ Python ਪੈਕੇਜਾਂ ਦੀ post-processing ਕਰਨੀ ਪੈਂਦੀ ਹੈ, ਜਿਸ " "ਵਿੱਚ ``.so`` ਬਾਈਨਰੀ ਮੋਡੀਊਲਾਂ ਨੂੰ ਉਚਿਤ metadata ਅਤੇ signing ਵਾਲੇ ਵੱਖਰੇ frameworks ਵਿੱਚ " -"ਤਬਦੀਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ post-processing ਨੂੰ ਕਿਵੇਂ ਕਰਨਾ ਹੈ, ਇਸ ਬਾਰੇ ਵੇਰਵਿਆਂ ਲਈ :ref:" -"`adding Python to your project ` ਮਾਰਗਦਰਸ਼ਿਕਾ ਵੇਖੋ।" +"ਤਬਦੀਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਸ post-processing ਨੂੰ ਕਿਵੇਂ ਕਰਨਾ ਹੈ, ਇਸ ਬਾਰੇ ਵੇਰਵਿਆਂ " +"ਲਈ :ref:`adding Python to your project ` ਮਾਰਗਦਰਸ਼ਿਕਾ ਵੇਖੋ।" msgid "" "To help Python discover binaries in their new location, the original ``.so`` " @@ -187,51 +184,53 @@ msgid "" "framework must contain a ``.origin`` file that contains the location of the " "``.fwork`` file, relative to the app bundle." msgstr "" -"ਪਾਇਥਨ ਨੂੰ ਨਵੇਂ ਸਥਾਨ ਉੱਤੇ ਬਾਈਨਰੀਆਂ ਖੋਜਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ, ``sys.path`` ਉੱਤੇ ਮੌਜੂਦ ਅਸਲ ``." -"so`` ਫਾਈਲ ਨੂੰ ``.fwork`` ਫਾਈਲ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ ਟੈਕਸਟ ਫਾਈਲ ਹੁੰਦੀ ਹੈ ਜਿਸ ਵਿੱਚ " -"framework ਬਾਈਨਰੀ ਦਾ ਸਥਾਨ, ਐਪ bundle ਦੇ ਅਨੁਸਾਰ, ਦਰਜ ਹੁੰਦਾ ਹੈ। Framework ਨੂੰ ਮੁੜ ਅਸਲ " -"ਸਥਾਨ ਤੱਕ ਪਹੁੰਚਣ ਦੇ ਯੋਗ ਬਣਾਉਣ ਲਈ framework ਵਿੱਚ ਇੱਕ ``.origin`` ਫਾਈਲ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ " -"ਜਿਸ ਵਿੱਚ ``.fwork`` ਫਾਈਲ ਦਾ ਸਥਾਨ, ਐਪ bundle ਦੇ ਅਨੁਸਾਰ, ਦਰਜ ਹੋਵੇ।" +"ਪਾਇਥਨ ਨੂੰ ਨਵੇਂ ਸਥਾਨ ਉੱਤੇ ਬਾਈਨਰੀਆਂ ਖੋਜਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ, ``sys.path`` ਉੱਤੇ ਮੌਜੂਦ ਅਸਲ " +"``.so`` ਫਾਈਲ ਨੂੰ ``.fwork`` ਫਾਈਲ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ ਟੈਕਸਟ ਫਾਈਲ ਹੁੰਦੀ ਹੈ ਜਿਸ " +"ਵਿੱਚ framework ਬਾਈਨਰੀ ਦਾ ਸਥਾਨ, ਐਪ bundle ਦੇ ਅਨੁਸਾਰ, ਦਰਜ ਹੁੰਦਾ ਹੈ। Framework ਨੂੰ ਮੁੜ " +"ਅਸਲ ਸਥਾਨ ਤੱਕ ਪਹੁੰਚਣ ਦੇ ਯੋਗ ਬਣਾਉਣ ਲਈ framework ਵਿੱਚ ਇੱਕ ``.origin`` ਫਾਈਲ ਹੋਣੀ ਚਾਹੀਦੀ " +"ਹੈ ਜਿਸ ਵਿੱਚ ``.fwork`` ਫਾਈਲ ਦਾ ਸਥਾਨ, ਐਪ bundle ਦੇ ਅਨੁਸਾਰ, ਦਰਜ ਹੋਵੇ।" msgid "" "For example, consider the case of an import ``from foo.bar import _whiz``, " "where ``_whiz`` is implemented with the binary module ``sources/foo/bar/" -"_whiz.abi3.so``, with ``sources`` being the location registered on ``sys." -"path``, relative to the application bundle. This module *must* be " +"_whiz.abi3.so``, with ``sources`` being the location registered on " +"``sys.path``, relative to the application bundle. This module *must* be " "distributed as ``Frameworks/foo.bar._whiz.framework/foo.bar._whiz`` " "(creating the framework name from the full import path of the module), with " "an ``Info.plist`` file in the ``.framework`` directory identifying the " "binary as a framework. The ``foo.bar._whiz`` module would be represented in " "the original location with a ``sources/foo/bar/_whiz.abi3.fwork`` marker " "file, containing the path ``Frameworks/foo.bar._whiz/foo.bar._whiz``. The " -"framework would also contain ``Frameworks/foo.bar._whiz.framework/foo.bar." -"_whiz.origin``, containing the path to the ``.fwork`` file." +"framework would also contain ``Frameworks/foo.bar._whiz.framework/" +"foo.bar._whiz.origin``, containing the path to the ``.fwork`` file." msgstr "" "ਉਦਾਹਰਨ ਲਈ, ``from foo.bar import _whiz`` ਇੰਪੋਰਟ ਦੇ ਮਾਮਲੇ ਨੂੰ ਵੇਖੋ, ਜਿੱਥੇ ``_whiz`` ਨੂੰ " "``sources/foo/bar/_whiz.abi3.so`` ਬਾਈਨਰੀ ਮੋਡੀਊਲ ਨਾਲ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ " "``sources`` ਐਪ bundle ਦੇ ਅਨੁਸਾਰ ``sys.path`` ਉੱਤੇ ਦਰਜ ਸਥਾਨ ਹੈ। ਇਹ ਮੋਡੀਊਲ ਲਾਜ਼ਮੀ ਤੌਰ " "ਉੱਤੇ ``Frameworks/foo.bar._whiz.framework/foo.bar._whiz`` ਵਜੋਂ ਵੰਡਿਆ ਜਾਣਾ ਚਾਹੀਦਾ " -"ਹੈ (framework ਦਾ ਨਾਮ ਮੋਡੀਊਲ ਦੇ ਪੂਰੇ import path ਤੋਂ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ), ਅਤੇ ``." -"framework`` ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੱਕ ``Info.plist`` ਫਾਈਲ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਜੋ ਬਾਈਨਰੀ ਨੂੰ " +"ਹੈ (framework ਦਾ ਨਾਮ ਮੋਡੀਊਲ ਦੇ ਪੂਰੇ import path ਤੋਂ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ), ਅਤੇ " +"``.framework`` ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੱਕ ``Info.plist`` ਫਾਈਲ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਜੋ ਬਾਈਨਰੀ ਨੂੰ " "framework ਵਜੋਂ ਪਛਾਣਦੀ ਹੋਵੇ। ਅਸਲ ਸਥਾਨ ਉੱਤੇ ``foo.bar._whiz`` ਮੋਡੀਊਲ ਨੂੰ ``sources/foo/" "bar/_whiz.abi3.fwork`` marker ਫਾਈਲ ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾਵੇਗਾ, ਜਿਸ ਵਿੱਚ ``Frameworks/" -"foo.bar._whiz/foo.bar._whiz`` ਮਾਰਗ ਹੋਵੇਗਾ। Framework ਵਿੱਚ ``Frameworks/foo.bar." -"_whiz.framework/foo.bar._whiz.origin`` ਵੀ ਹੋਵੇਗੀ, ਜਿਸ ਵਿੱਚ ``.fwork`` ਫਾਈਲ ਦਾ " -"ਮਾਰਗ ਦਰਜ ਹੋਵੇਗਾ।" - -msgid "" -"When running on iOS, the Python interpreter will install an :class:" -"`~importlib.machinery.AppleFrameworkLoader` that is able to read and import " -"``.fwork`` files. Once imported, the ``__file__`` attribute of the binary " -"module will report as the location of the ``.fwork`` file. However, the :" -"class:`~importlib.machinery.ModuleSpec` for the loaded module will report " -"the ``origin`` as the location of the binary in the framework folder." -msgstr "" -"ਜਦੋਂ iOS ਉੱਤੇ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਪਾਇਥਨ ਇੰਟਰਪ੍ਰੀਟਰ :class:`~importlib.machinery." -"AppleFrameworkLoader` ਇੰਸਟਾਲ ਕਰੇਗਾ ਜੋ ``.fwork`` ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹ ਅਤੇ ਇੰਪੋਰਟ ਕਰ ਸਕਦਾ ਹੈ। " -"ਇੰਪੋਰਟ ਹੋਣ ਤੋਂ ਬਾਅਦ ਬਾਈਨਰੀ ਮੋਡੀਊਲ ਦਾ ``__file__`` ਗੁਣ ``.fwork`` ਫਾਈਲ ਦਾ ਸਥਾਨ " -"ਦਰਸਾਏਗਾ। ਹਾਲਾਂਕਿ ਲੋਡ ਕੀਤੇ ਮੋਡੀਊਲ ਦਾ :class:`~importlib.machinery.ModuleSpec` " -"ਆਪਣਾ ``origin`` framework ਫੋਲਡਰ ਵਿੱਚ ਮੌਜੂਦ ਬਾਈਨਰੀ ਦੇ ਸਥਾਨ ਵਜੋਂ ਦਰਸਾਏਗਾ।" +"foo.bar._whiz/foo.bar._whiz`` ਮਾਰਗ ਹੋਵੇਗਾ। Framework ਵਿੱਚ ``Frameworks/" +"foo.bar._whiz.framework/foo.bar._whiz.origin`` ਵੀ ਹੋਵੇਗੀ, ਜਿਸ ਵਿੱਚ ``.fwork`` " +"ਫਾਈਲ ਦਾ ਮਾਰਗ ਦਰਜ ਹੋਵੇਗਾ।" + +msgid "" +"When running on iOS, the Python interpreter will install " +"an :class:`~importlib.machinery.AppleFrameworkLoader` that is able to read " +"and import ``.fwork`` files. Once imported, the ``__file__`` attribute of " +"the binary module will report as the location of the ``.fwork`` file. " +"However, the :class:`~importlib.machinery.ModuleSpec` for the loaded module " +"will report the ``origin`` as the location of the binary in the framework " +"folder." +msgstr "" +"ਜਦੋਂ iOS ਉੱਤੇ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਪਾਇਥਨ " +"ਇੰਟਰਪ੍ਰੀਟਰ :class:`~importlib.machinery.AppleFrameworkLoader` ਇੰਸਟਾਲ ਕਰੇਗਾ ਜੋ " +"``.fwork`` ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹ ਅਤੇ ਇੰਪੋਰਟ ਕਰ ਸਕਦਾ ਹੈ। ਇੰਪੋਰਟ ਹੋਣ ਤੋਂ ਬਾਅਦ ਬਾਈਨਰੀ ਮੋਡੀਊਲ ਦਾ " +"``__file__`` ਗੁਣ ``.fwork`` ਫਾਈਲ ਦਾ ਸਥਾਨ ਦਰਸਾਏਗਾ। ਹਾਲਾਂਕਿ ਲੋਡ ਕੀਤੇ ਮੋਡੀਊਲ " +"ਦਾ :class:`~importlib.machinery.ModuleSpec` ਆਪਣਾ ``origin`` framework ਫੋਲਡਰ " +"ਵਿੱਚ ਮੌਜੂਦ ਬਾਈਨਰੀ ਦੇ ਸਥਾਨ ਵਜੋਂ ਦਰਸਾਏਗਾ।" msgid "Compiler stub binaries" msgstr "ਕੰਪਾਈਲਰ ਸਟਬ ਬਾਈਨਰੀਆਂ" @@ -332,11 +331,11 @@ msgid "To add Python to an iOS Xcode project:" msgstr "iOS Xcode ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਪਾਇਥਨ ਸ਼ਾਮਲ ਕਰਨ ਲਈ:" msgid "" -"Build or obtain a Python ``XCFramework``. See the instructions in :source:" -"`Platforms/Apple/iOS/README.md` (in the CPython source distribution) for " -"details on how to build a Python ``XCFramework``. At a minimum, you will " -"need a build that supports ``arm64-apple-ios``, plus one of either ``arm64-" -"apple-ios-simulator`` or ``x86_64-apple-ios-simulator``." +"Build or obtain a Python ``XCFramework``. See the instructions " +"in :source:`Platforms/Apple/iOS/README.md` (in the CPython source " +"distribution) for details on how to build a Python ``XCFramework``. At a " +"minimum, you will need a build that supports ``arm64-apple-ios``, plus one " +"of either ``arm64-apple-ios-simulator`` or ``x86_64-apple-ios-simulator``." msgstr "" msgid "" @@ -521,10 +520,10 @@ msgstr "" "ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੋਵੇ।" msgid "" -"If any of the folders that contain third-party packages will contain ``." -"pth`` files, you should add that folder as a *site directory* (using :meth:" -"`site.addsitedir`), rather than adding to :envvar:`PYTHONPATH` or :attr:`sys." -"path` directly." +"If any of the folders that contain third-party packages will contain " +"``.pth`` files, you should add that folder as a *site directory* " +"(using :meth:`site.addsitedir`), rather than adding to :envvar:`PYTHONPATH` " +"or :attr:`sys.path` directly." msgstr "" "ਜੇ ਤੀਜੇ-ਪੱਖ ਦੇ ਪੈਕੇਜਾਂ ਵਾਲੇ ਕਿਸੇ ਵੀ ਫੋਲਡਰ ਵਿੱਚ ``.pth`` ਫਾਈਲਾਂ ਹੋਣਗੀਆਂ, ਤਾਂ ਤੁਹਾਨੂੰ ਉਸ ਫੋਲਡਰ ਨੂੰ " "ਸਿੱਧੇ :envvar:`PYTHONPATH` ਜਾਂ :attr:`sys.path` ਵਿੱਚ ਜੋੜਨ ਦੀ ਬਜਾਏ ਇੱਕ *site " @@ -693,10 +692,10 @@ msgstr "" msgid "" "If you produce a binary module named ``mymodule.so``, and use you the Xcode " -"build script described in step 7 above, you can place a ``mymodule." -"xcprivacy`` file next to ``mymodule.so``, and the privacy manifest will be " -"installed into the required location when the binary module is converted " -"into a framework." +"build script described in step 7 above, you can place a " +"``mymodule.xcprivacy`` file next to ``mymodule.so``, and the privacy " +"manifest will be installed into the required location when the binary module " +"is converted into a framework." msgstr "" "ਜੇ ਤੁਸੀਂ ``mymodule.so`` ਨਾਮ ਦਾ ਇੱਕ ਬਾਈਨਰੀ ਮੋਡੀਊਲ ਬਣਾਉਂਦੇ ਹੋ ਅਤੇ ਉੱਪਰ ਦਿੱਤੇ ਕਦਮ 7 ਵਿੱਚ " "ਵਰਣਿਤ Xcode build script ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ``mymodule.so`` ਦੇ ਨਾਲ ਇੱਕ " diff --git a/using/mac.po b/using/mac.po index e845cf5..adf8f06 100644 --- a/using/mac.po +++ b/using/mac.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-25 17:19+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,6 +317,11 @@ msgid "" "desktop operating systems." msgstr "" +msgid "" +"`Flet `_: A framework for building cross-platform " +"desktop, mobile, and web applications in Python." +msgstr "" + msgid "Advanced topics" msgstr "" @@ -329,9 +334,9 @@ msgstr "" msgid "" "The ``python.org`` :ref:`Python for macOS ` installer package installs, by default, an additional build of " -"Python |version| that supports :term:`free threading` (running with the :" -"term:`global interpreter lock` disabled). Check the release page on ``python." -"org`` for possible updated information." +"Python |version| that supports :term:`free threading` (running with " +"the :term:`global interpreter lock` disabled). Check the release page on " +"``python.org`` for possible updated information." msgstr "" msgid "" @@ -362,16 +367,17 @@ msgid "" "The **UNIX command-line tools** package, which is selected by default, will " "install links in :file:`/usr/local/bin` for |python_x_dot_y_t_literal|, the " "free-threaded interpreter, and |python_x_dot_y_t_literal_config|, a " -"configuration utility which may be useful for package builders. Since :file:" -"`/usr/local/bin` is typically included in your shell ``PATH``, in most cases " -"no changes to your ``PATH`` environment variable should be needed to use |" -"python_x_dot_y_t_literal|." +"configuration utility which may be useful for package builders. " +"Since :file:`/usr/local/bin` is typically included in your shell ``PATH``, " +"in most cases no changes to your ``PATH`` environment variable should be " +"needed to use |python_x_dot_y_t_literal|." msgstr "" msgid "" -"For this release, the **Shell profile updater** package and the :file:" -"`Update Shell Profile.command` in |applications_python_version_literal| do " -"not support the free-threaded package." +"For this release, the **Shell profile updater** package and " +"the :file:`Update Shell Profile.command` in |" +"applications_python_version_literal| do not support the free-threaded " +"package." msgstr "" msgid "" @@ -469,7 +475,7 @@ msgid "" msgstr "" msgid "" -"RELEASE=\"python-\\ |version|\\ 0b2-macos11.pkg\"\n" +"RELEASE=\"python-\\ |version|\\ .0b2-macos11.pkg\"\n" "\n" "# download installer pkg\n" "curl -O \\https://www.python.org/ftp/python/\\ |version|\\ .0/${RELEASE}\n" @@ -479,8 +485,8 @@ msgid "" "# while accepting the other defaults (install all other packages)\n" "cat > ./choicechanges.plist <\n" -"\n" +"\n" "\n" "\n" " \n" @@ -496,8 +502,8 @@ msgid "" "\n" "EOF\n" "\n" -"sudo installer -pkg ./${RELEASE} -applyChoiceChangesXML ./choicechanges." -"plist -target /" +"sudo installer -pkg ./${RELEASE} -applyChoiceChangesXML ./" +"choicechanges.plist -target /" msgstr "" msgid "" @@ -509,9 +515,8 @@ msgid "" "$ # test that the free-threaded interpreter was installed if the Unix " "Command Tools package was enabled\n" "$ /usr/local/bin/python\\ |version|\\ t -VV\n" -"Python \\ |version|\\ .0b2 free-threading build (v\\ |version|" -"\\ .0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 " -"(clang-1500.3.9.4)]\n" +"Python \\ |version|\\ .0b2 free-threading build (v\\ |version|\\ " +".0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 (clang-1500.3.9.4)]\n" "$ # and the traditional interpreter\n" "$ /usr/local/bin/python\\ |version|\\ -VV\n" "Python \\ |version|\\ .0b2 (v\\ |version|\\ .0b2:3a83b172af, Jun 5 2024, " @@ -519,19 +524,18 @@ msgid "" "$ # test that they are also available without the prefix if /usr/local/bin " "is on $PATH\n" "$ python\\ |version|\\ t -VV\n" -"Python \\ |version|\\ .0b2 free-threading build (v\\ |version|" -"\\ .0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 " -"(clang-1500.3.9.4)]\n" +"Python \\ |version|\\ .0b2 free-threading build (v\\ |version|\\ " +".0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 (clang-1500.3.9.4)]\n" "$ python\\ |version|\\ -VV\n" "Python \\ |version|\\ .0b2 (v\\ |version|\\ .0b2:3a83b172af, Jun 5 2024, " "12:50:24) [Clang 15.0.0 (clang-1500.3.9.4)]" msgstr "" msgid "" -"Current ``python.org`` installers only install to fixed locations like :file:" -"`/Library/Frameworks/`, :file:`/Applications`, and :file:`/usr/local/bin`. " -"You cannot use the :command:`installer` ``-domain`` option to install to " -"other locations." +"Current ``python.org`` installers only install to fixed locations " +"like :file:`/Library/Frameworks/`, :file:`/Applications`, and :file:`/usr/" +"local/bin`. You cannot use the :command:`installer` ``-domain`` option to " +"install to other locations." msgstr "" msgid "Distributing Python applications" @@ -596,7 +600,7 @@ msgstr "" msgid "" "The `python.org Help page `_ has links " -"to many useful resources. The `Pythonmac-SIG mailing list `_ is another support " +"to many useful resources. The `Pythonmac-SIG mailing list `_ is another support " "resource specifically for Python users and developers on the Mac." msgstr "" diff --git a/using/unix.po b/using/unix.po index 7442416..6b68a34 100644 --- a/using/unix.po +++ b/using/unix.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -125,8 +125,8 @@ msgid "For example i386 users get the 2.5.1 version of Python using::" msgstr "" msgid "" -"pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2." -"tgz" +"pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/" +"python-2.5.1p2.tgz" msgstr "" msgid "Building Python" @@ -141,9 +141,9 @@ msgstr "" msgid "" "If you want to compile CPython yourself, first thing you should do is get " "the `source `_. You can download " -"either the latest release's source or grab a fresh `clone `_. You will also need to install the :" -"ref:`build requirements `." +"either the latest release's source or grab a fresh `clone `_. You will also need to " +"install the :ref:`build requirements `." msgstr "" msgid "The build process consists of the usual commands::" diff --git a/using/windows.po b/using/windows.po index a7263fb..649dde9 100644 --- a/using/windows.po +++ b/using/windows.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-23 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,15 +41,15 @@ msgid "" msgstr "" msgid "" -"To obtain Python from the CPython team, use the Python Install Manager. This " +"To obtain Python from the CPython team, use the Python install manager. This " "is a standalone tool that makes Python available as global commands on your " "Windows machine, integrates with the system, and supports updates over time. " -"You can download the Python Install Manager from `python.org/downloads`_ or " +"You can download the Python install manager from `python.org/downloads`_ or " "through the `Microsoft Store app`_." msgstr "" msgid "" -"Once you have installed the Python Install Manager, the global ``python`` " +"Once you have installed the Python install manager, the global ``python`` " "command can be used from any terminal to launch your current latest version " "of Python. This version may change over time as you add or remove different " "versions, and the ``py list`` command will show which is current." @@ -65,7 +65,7 @@ msgid "" msgstr "" msgid "" -"If the ``python`` or ``py`` commands do not seem to be working, please see " +"If the ``python`` or ``py`` commands do not seem to be working, see " "the :ref:`Troubleshooting ` section below. There are " "sometimes additional manual steps required to configure your PC." msgstr "" @@ -103,7 +103,7 @@ msgstr "" msgid "" "To install the file downloaded from python.org, either double-click and " "select \"Install\", or run ``Add-AppxPackage `` in Windows " -"Powershell." +"PowerShell." msgstr "" msgid "" @@ -118,10 +118,11 @@ msgid "" "When you first install a runtime, you will likely be prompted to add a " "directory to your :envvar:`PATH`. This is optional, if you prefer to use the " "``py`` command, but is offered for those who prefer the full range of " -"aliases (such as ``python3.14.exe``) to be available. The directory will be :" -"file:`%LocalAppData%\\\\Python\\\\bin` by default, but may be customized by " -"an administrator. Click Start and search for \"Edit environment variables " -"for your account\" for the system settings page to add the path." +"aliases (such as |python_x_dot_y_exe_literal|) to be available. The " +"directory will be :file:`%LocalAppData%\\\\Python\\\\bin` by default, but " +"may be customized by an administrator. Click Start and search for \"Edit " +"environment variables for your account\" for the system settings page to add " +"the path." msgstr "" msgid "" @@ -138,8 +139,8 @@ msgstr "" msgid "" "If you are not able to install an MSIX in your context, for example, you are " "using automated deployment software that does not support it, or are " -"targeting Windows Server 2019, please see :ref:`pymanager-advancedinstall` " -"below for more information." +"targeting Windows Server 2019, see :ref:`pymanager-advancedinstall` below " +"for more information." msgstr "" msgid "Basic use" @@ -198,9 +199,10 @@ msgid "" msgstr "" msgid "" -"The default runtime can be overridden with the :envvar:" -"`PYTHON_MANAGER_DEFAULT` environment variable, or a configuration file. See :" -"ref:`pymanager-config` for information about configuration settings." +"The default runtime can be overridden with " +"the :envvar:`PYTHON_MANAGER_DEFAULT` environment variable, or a " +"configuration file. See :ref:`pymanager-config` for information about " +"configuration settings." msgstr "" msgid "" @@ -213,7 +215,7 @@ msgid "" msgstr "" msgid "" -"$> py -V:3.14 ...\n" +"$> py -V:|version| ...\n" "$> py -V:3-arm64 ..." msgstr "" @@ -301,7 +303,7 @@ msgstr "" msgid "" "A range of formats are supported, and can be passed as the ``--" -"format=`` or ``-f `` option. Formats include ``table`` (a user " +"format=`` or ``-f `` option. Formats include ``table`` (a user-" "friendly table view), ``csv`` (comma-separated table), ``json`` (a single " "JSON blob), ``jsonl`` (one JSON blob per result), ``exe`` (just the " "executable path), ``prefix`` (just the prefix path)." @@ -329,13 +331,13 @@ msgid "" "``." msgstr "" -msgid "$> py list --online 3.14" +msgid "$> py list --online |version|" msgstr "" msgid "" "For compatibility with the old launcher, the ``--list``, ``--list-paths``, " -"``-0`` and ``-0p`` commands (e.g. ``py -0p``) are retained. They do not " -"allow additional options, and will produce legacy formatted output." +"``-0`` and ``-0p`` commands (for example, ``py -0p``) are retained. They do " +"not allow additional options, and will produce legacy-formatted output." msgstr "" msgid "Installing runtimes" @@ -352,6 +354,38 @@ msgid "" "default. Ranges are not supported for installation." msgstr "" +msgid "" +"CPython publishes multiple runtime variants. For most users, ``PythonCore`` " +"is recommended and provides the standard CPython runtime. Tags without any " +"prefix are treated as ``PythonCore\\``." +msgstr "" + +msgid "" +"``PythonTest`` includes the standard runtime together with the test suite " +"and debugging symbols. It is intended for contributors or users who need " +"these additional files for testing or debugging Python." +msgstr "" + +msgid "" +"``PythonEmbed`` provides a minimal embeddable distribution for applications " +"that bundle Python rather than for interactive use. It would normally be " +"used with the ``--target`` option described below." +msgstr "" + +msgid "To see the available runtime variants, run::" +msgstr "" + +msgid "py list --online" +msgstr "" + +msgid "" +"To install a specific variant, include it in the tag passed to ``py " +"install``:" +msgstr "" + +msgid "py install PythonTest\\\\\\ |version|" +msgstr "" + msgid "" "The ``--source=`` option allows overriding the online index that is " "used to obtain runtimes. This may be used with an offline index, as shown " @@ -368,8 +402,9 @@ msgid "" "newer. Otherwise, they will be left. If no tags are provided with ``--" "update``, all installs managed by the Python install manager will be updated " "if newer versions are available. Updates will remove any modifications made " -"to the install, including globally installed packages, but virtual " -"environments will continue to work." +"to the install, including globally installed packages, but will leave ``site-" +"packages`` and ``Scripts`` directories as is. Virtual environments are also " +"unaffected." msgstr "" msgid "" @@ -380,9 +415,9 @@ msgstr "" msgid "" "Passing ``--refresh`` will update all registrations for installed runtimes. " "This will recreate Start menu shortcuts, registry keys, and global aliases " -"(such as ``python3.14.exe`` or for any installed scripts). These are " -"automatically refreshed on installation of any runtime, but may need to be " -"manually refreshed after installing packages." +"(such as |python_x_dot_y_exe_literal| or for any installed scripts). These " +"are automatically refreshed on installation of any runtime, but may need to " +"be manually refreshed after installing packages." msgstr "" msgid "" @@ -501,14 +536,14 @@ msgid "" msgstr "" msgid "" -"A global configuration file may be configured by an administrator, and would " -"be read first. The user configuration file is stored at :file:`%AppData%\\" -"\\Python\\\\pymanager.json` (note that this location is under ``Roaming``, " -"not ``Local``) and is read next, overwriting any settings from earlier " -"files. An additional configuration file may be specified as the " -"``PYTHON_MANAGER_CONFIG`` environment variable or the ``--config`` command " -"line option (but not both). These locations may be modified by " -"administrative customization options listed later." +"A global configuration file may be configured by an :ref:`administrator " +"` and would be read first. The user configuration " +"file is stored at :file:`%AppData%\\\\Python\\\\pymanager.json` (note that " +"this location is under ``Roaming``, not ``Local``) and is read next, " +"overwriting any settings from earlier files. An additional configuration " +"file may be specified as the ``PYTHON_MANAGER_CONFIG`` environment variable " +"or the ``--config`` command line option (but not both). These locations may " +"be modified by administrative customization options listed later." msgstr "" msgid "" @@ -545,9 +580,9 @@ msgstr "" msgid "" "The preferred default platform to launch or install. This is treated as a " -"suffix to the specified tag, such that ``py -V:3.14`` would prefer an " -"install for ``3.14-64`` if it exists (and ``default_platform`` is ``-64``), " -"but will use ``3.14`` if no tagged install exists." +"suffix to the specified tag, such that |py_v_x_dot_y_literal| would prefer " +"an install for |x_dot_y_64_literal| if it exists (and ``default_platform`` " +"is ``-64``), but will use |x_dot_y_literal| if no tagged install exists." msgstr "" msgid "``logs_dir``" @@ -639,10 +674,10 @@ msgid "``install.enable_entrypoints``" msgstr "" msgid "" -"True to generate global commands for installed packages (such as ``pip." -"exe``). These are defined by the packages themselves. If set to false, only " -"the Python interpreter has global commands created. By default, true. You " -"should run ``py install --refresh`` after changing this setting." +"True to generate global commands for installed packages (such as " +"``pip.exe``). These are defined by the packages themselves. If set to false, " +"only the Python interpreter has global commands created. By default, true. " +"You should run ``py install --refresh`` after changing this setting." msgstr "" msgid "``list.format``" @@ -669,9 +704,10 @@ msgid "``global_dir``" msgstr "" msgid "" -"Specify the directory where global commands (such as ``python3.14.exe`` and " -"``pip.exe``) are stored. This directory should be added to your :envvar:" -"`PATH` to make the commands available from your terminal." +"Specify the directory where global commands (such as |" +"python_x_dot_y_exe_literal| and ``pip.exe``) are stored. This directory " +"should be added to your :envvar:`PATH` to make the commands available from " +"your terminal." msgstr "" msgid "``download_dir``" @@ -683,8 +719,9 @@ msgid "" msgstr "" msgid "" -"Dotted names should be nested inside JSON objects, for example, ``list." -"format`` would be specified as ``{\"list\": {\"format\": \"table\"}}``." +"Dotted names should be nested inside JSON objects, for example, " +"``list.format`` would be specified as ``{\"list\": {\"format\": \"table\"}}" +"``." msgstr "" msgid "Shebang lines" @@ -692,7 +729,7 @@ msgstr "" msgid "" "If the first line of a script file starts with ``#!``, it is known as a " -"\"shebang\" line. Linux and other Unix like operating systems have native " +"\"shebang\" line. Linux and other Unix-like operating systems have native " "support for such lines and they are commonly used on such systems to " "indicate how a script should be executed. The ``python`` and ``py`` commands " "allow the same facilities to be used with Python scripts on Windows." @@ -738,9 +775,9 @@ msgid "" "Any of the above virtual commands can have ```` replaced by an alias " "from an installed runtime. That is, any command generated in the global " "aliases directory (which you may have added to your :envvar:`PATH` " -"environment variable) can be used in a shebang, even if it is not on your :" -"envvar:`PATH`. This allows the use of shebangs like ``/usr/bin/python3.12`` " -"to select a particular runtime." +"environment variable) can be used in a shebang, even if it is not on " +"your :envvar:`PATH`. This allows the use of shebangs like ``/usr/bin/" +"python3.12`` to select a particular runtime." msgstr "" msgid "" @@ -750,16 +787,16 @@ msgid "" msgstr "" msgid "" -"The ``/usr/bin/env`` form of shebang line will also search the :envvar:" -"`PATH` environment variable for unrecognized commands. This corresponds to " -"the behaviour of the Unix ``env`` program, which performs the same search, " -"but prefers launching known Python commands. A warning may be displayed when " -"searching for arbitrary executables, and this search may be disabled by the " -"``shebang_can_run_anything`` configuration option." +"The ``/usr/bin/env`` form of shebang line will also search " +"the :envvar:`PATH` environment variable for unrecognized commands. This " +"corresponds to the behaviour of the Unix ``env`` program, which performs the " +"same search, but prefers launching known Python commands. A warning may be " +"displayed when searching for arbitrary executables, and this search may be " +"disabled by the ``shebang_can_run_anything`` configuration option." msgstr "" msgid "" -"Shebang lines that do not match any of patterns are treated as *Windows* " +"Shebang lines that do not match any of the patterns are treated as *Windows* " "executable paths that are absolute or relative to the directory containing " "the script file. This is a convenience for Windows-only scripts, such as " "those generated by an installer, since the behavior is not compatible with " @@ -841,13 +878,14 @@ msgid "" msgstr "" msgid "" -"When the MSIX is installed, but commands are not available in the :envvar:" -"`PATH` environment variable, they can be found under :file:`%LocalAppData%\\" -"\\Microsoft\\\\WindowsApps\\\\PythonSoftwareFoundation." -"PythonManager_3847v3x7pw1km` or :file:`%LocalAppData%\\\\Microsoft\\" -"\\WindowsApps\\\\PythonSoftwareFoundation.PythonManager_qbz5n2kfra8p0`, " -"depending on whether it was installed from python.org or through the Windows " -"Store. Attempting to run the executable directly from Program Files is not " +"When the MSIX is installed, but commands are not available in " +"the :envvar:`PATH` environment variable, they can be found " +"under :file:`%LocalAppData%\\\\Microsoft\\\\WindowsApps\\" +"\\PythonSoftwareFoundation.PythonManager_3847v3x7pw1km` " +"or :file:`%LocalAppData%\\\\Microsoft\\\\WindowsApps\\" +"\\PythonSoftwareFoundation.PythonManager_qbz5n2kfra8p0`, depending on " +"whether it was installed from python.org or through the Windows Store. " +"Attempting to run the executable directly from Program Files is not " "recommended." msgstr "" @@ -914,7 +952,7 @@ msgstr "" msgid "" "Regardless of the install method, users will still need to install their own " "copies of Python itself, as there is no way to trigger those installs " -"without being a logged in user. When using the MSIX, the latest version of " +"without being a logged-in user. When using the MSIX, the latest version of " "Python will be available for all users to install without network access." msgstr "" @@ -1014,16 +1052,17 @@ msgid "``install.enable_shortcut_kinds``" msgstr "" msgid "" -"Comma-separated list of shortcut kinds to allow (e.g. ``\"pep514,start\"``). " -"Enabled shortcuts may still be disabled by ``disable_shortcut_kinds``." +"Comma-separated list of shortcut kinds to allow (for example, " +"``\"pep514,start\"``). Enabled shortcuts may still be disabled by " +"``disable_shortcut_kinds``." msgstr "" msgid "``install.disable_shortcut_kinds``" msgstr "" msgid "" -"Comma-separated list of shortcut kinds to exclude (e.g. ``\"pep514," -"start\"``). Disabled shortcuts are not reactivated by " +"Comma-separated list of shortcut kinds to exclude (for example, " +"``\"pep514,start\"``). Disabled shortcuts are not reactivated by " "``enable_shortcut_kinds``." msgstr "" @@ -1042,8 +1081,8 @@ msgid "``pep514_root``" msgstr "" msgid "" -"Registry location to read and write PEP 514 entries into. By default, :file:" -"`HKEY_CURRENT_USER\\\\Software\\\\Python`." +"Registry location to read and write PEP 514 entries into. By " +"default, :file:`HKEY_CURRENT_USER\\\\Software\\\\Python`." msgstr "" msgid "``start_folder``" @@ -1089,17 +1128,17 @@ msgid "" msgstr "" msgid "" -"$> py install 3.14t\n" -"$> py install 3.14t-arm64\n" -"$> py install 3.14t-32" +"$> py install |version|\\ t\n" +"$> py install |version|\\ t-arm64\n" +"$> py install |version|\\ t-32" msgstr "" msgid "" "This will install and register as normal. If you have no other runtimes " "installed, then ``python`` will launch this one. Otherwise, you will need to " -"use ``py -V:3.14t ...`` or, if you have added the global aliases directory " -"to your :envvar:`PATH` environment variable, the ``python3.14t.exe`` " -"commands." +"use |py_v_x_dot_y_t_literal| or, if you have added the global aliases " +"directory to your :envvar:`PATH` environment variable, the |" +"python_x_dot_y_t_exe_literal| commands." msgstr "" msgid "Index signatures" @@ -1129,7 +1168,7 @@ msgid "" "signatures based on the certificate Subject fields. Any attribute specified " "in the configuration must match the attribute in the certificate (additional " "attributes in the certificate are ignored). Typical attributes are ``CN=`` " -"for the common name, ``O=`` for the organizational unit, and ``C=`` for the " +"for the common name, ``O=`` for the organization, and ``C=`` for the " "publisher's country." msgstr "" @@ -1146,8 +1185,8 @@ msgid "" "This is an example ``source_settings`` section from a configuration file. In " "this case, the publisher of the feed is uniquely identified by the " "combination of the Microsoft Identity Verification root and the EKU assigned " -"by that root. The signature for this case would be found at ``https://www." -"python.org/ftp/python/index-windows.json.cat``." +"by that root. The signature for this case would be found at ``https://" +"www.python.org/ftp/python/index-windows.json.cat``." msgstr "" msgid "" @@ -1213,15 +1252,57 @@ msgid "" "}" msgstr "" +msgid "Proxy settings" +msgstr "" + +msgid "" +"By default, the Python install manager will use your system-wide proxy " +"settings, including automatic authentication. For most users, this behaves " +"the same as your browser and other applications." +msgstr "" + +msgid "" +"To override the settings, use the ``NO_PROXY``, ``HTTP_PROXY`` and " +"``HTTPS_PROXY`` environment variables. These should be set in the terminal " +"session before using the Python install manager. Other applications may also " +"use the variables, so use caution before setting them globally for your " +"entire machine." +msgstr "" + +msgid "" +"Setting ``NO_PROXY`` to any non-empty value will disable the use of any " +"proxy. Use this to bypass your system's default proxy setting and attempt to " +"access the index server directly." +msgstr "" + +msgid "" +"Setting ``HTTPS_PROXY`` to a string like ``example.com:8080`` will connect " +"to that proxy server for all HTTPS connections. For the default index, all " +"connections will be using HTTPS, and so this is the usual setting to " +"override." +msgstr "" + +msgid "" +"The ``HTTP_PROXY`` variable may be needed if you are using a private index " +"server that does not use encrypted connections, but does require the default " +"proxy server to be overridden. It follows the same format as ``HTTPS_PROXY``." +msgstr "" + +msgid "" +"Credentials may be embedded in either setting, however, when ``HTTPS_PROXY`` " +"has credentials embedded they will be used in preference to other " +"credentials. Only one set of credentials will be used for both types of " +"proxy." +msgstr "" + msgid "Troubleshooting" msgstr "" msgid "" -"If your Python install manager does not seem to be working correctly, please " -"work through these tests and fixes to see if it helps. If not, please report " -"an issue at `our bug tracker `_, " -"including any relevant log files (written to your :file:`%TEMP%` directory " -"by default)." +"If your Python install manager does not seem to be working correctly, work " +"through these tests and fixes to see if it helps. If not, report an issue at " +"`our bug tracker `_, including " +"any relevant log files (written to your :file:`%TEMP%` directory by default)." msgstr "" msgid "Symptom" @@ -1319,16 +1400,17 @@ msgid "" msgstr "" msgid "" -"Have you activated a virtual environment? Run the ``." -"venv\\Scripts\\activate`` script in your terminal to activate." +"Have you activated a virtual environment? Run the " +"``.venv\\Scripts\\activate`` script in your terminal to activate." msgstr "" msgid "" "The package may be available but missing the generated executable. We " "recommend using the ``python -m pip`` command instead. Running ``py install " -"--refresh`` and ensuring that the global shortcuts directory is on :envvar:" -"`PATH` (it will be shown in the command output if it is not) should make " -"commands such as ``pip`` (and other installed packages) available." +"--refresh`` and ensuring that the global shortcuts directory is " +"on :envvar:`PATH` (it will be shown in the command output if it is not) " +"should make commands such as ``pip`` (and other installed packages) " +"available." msgstr "" msgid "I installed a package with ``pip`` but its command is not found." @@ -1398,16 +1480,16 @@ msgid "" "the ``--target`` option:" msgstr "" -msgid "$> py install 3.14-embed --target=" +msgid "$> py install |version|-embed --target=" msgstr "" msgid "" "When extracted, the embedded distribution is (almost) fully isolated from " "the user's system, including environment variables, system registry " "settings, and installed packages. The standard library is included as pre-" -"compiled and optimized ``.pyc`` files in a ZIP, and ``python3.dll``, " -"``python313.dll``, ``python.exe`` and ``pythonw.exe`` are all provided. Tcl/" -"tk (including all dependents, such as Idle), pip and the Python " +"compiled and optimized ``.pyc`` files in a ZIP, and ``python3.dll``, |" +"python_xy_dll_literal|, ``python.exe`` and ``pythonw.exe`` are all provided. " +"Tcl/Tk (including all dependents, such as IDLE), pip and the Python " "documentation are not included." msgstr "" @@ -1484,7 +1566,7 @@ msgstr "" msgid "" "As with the application use, packages can be installed to any location as " "there is an opportunity to specify search paths before initializing the " -"interpreter. Otherwise, there is no fundamental differences between using " +"interpreter. Otherwise, there are no fundamental differences between using " "the embedded distribution and a regular installation." msgstr "" @@ -1544,7 +1626,7 @@ msgstr "" msgid "" "Alongside the ``tools`` directory is a ``build\\native`` directory. This " -"contains a MSBuild properties file ``python.props`` that can be used in a C+" +"contains an MSBuild properties file ``python.props`` that can be used in a C+" "+ project to reference the Python install. Including the settings will " "automatically use the headers and import libraries in your build." msgstr "" @@ -1554,7 +1636,7 @@ msgid "" "python `_ for the 64-bit version, " "`www.nuget.org/packages/pythonx86 `_ for the 32-bit version, and `www.nuget.org/packages/pythonarm64 " -"`_ for the ARM64 version" +"`_ for the ARM64 version." msgstr "" msgid "Free-threaded packages" @@ -1566,8 +1648,8 @@ msgid "" "version, `pythonx86-freethreaded `_ for the 32-bit version, and `pythonarm64-freethreaded " "`_ for the ARM64 " -"version. These packages contain both the ``python3.13t.exe`` and ``python." -"exe`` entry points, both of which run free threaded." +"version. These packages contain both the |python_x_dot_y_t_exe_literal| and " +"``python.exe`` entry points, both of which run free-threaded." msgstr "" msgid "Alternative bundles" @@ -1627,8 +1709,8 @@ msgid "" "As specified in :pep:`11`, a Python release only supports a Windows platform " "while Microsoft considers the platform under extended support. This means " "that Python |version| supports Windows 10 and newer. If you require Windows " -"7 support, please install Python 3.8. If you require Windows 8.1 support, " -"please install Python 3.12." +"7 support, install Python 3.8. If you require Windows 8.1 support, install " +"Python 3.12." msgstr "" msgid "Removing the MAX_PATH limitation" @@ -1665,8 +1747,9 @@ msgstr "" msgid "" "Windows still uses legacy encodings for the system encoding (the ANSI Code " -"Page). Python uses it for the default encoding of text files (e.g. :func:" -"`locale.getencoding`)." +"Page). When the :ref:`Python UTF-8 Mode ` is disabled, Python " +"uses the ANSI Code Page as the default encoding of text files, as returned " +"by :func:`locale.getencoding`." msgstr "" msgid "" @@ -1675,10 +1758,10 @@ msgid "" msgstr "" msgid "" -"The :ref:`Python UTF-8 Mode `, enabled by default, can help by " -"changing the default text encoding to UTF-8. When the :ref:`UTF-8 mode ` is enabled, you can still use the system encoding (the ANSI Code " -"Page) via the \"mbcs\" codec." +"The :ref:`Python UTF-8 Mode `, enabled by default, ignores the " +"system encoding and uses UTF-8 as the default text encoding. When " +"the :ref:`UTF-8 mode ` is enabled, you can still use the system " +"encoding (the ANSI Code Page) via the \"mbcs\" codec." msgstr "" msgid "" @@ -1728,18 +1811,18 @@ msgid "" msgstr "" msgid "" -"If the environment variable :envvar:`PYTHONPATH` exists, as described in :" -"ref:`using-on-envvars`, its entries are added next. Note that on Windows, " -"paths in this variable must be separated by semicolons, to distinguish them " -"from the colon used in drive identifiers (``C:\\`` etc.)." +"If the environment variable :envvar:`PYTHONPATH` exists, as described " +"in :ref:`using-on-envvars`, its entries are added next. Note that on " +"Windows, paths in this variable must be separated by semicolons, to " +"distinguish them from the colon used in drive identifiers (such as ``C:\\``)." msgstr "" msgid "" -"Additional \"application paths\" can be added in the registry as subkeys of :" -"samp:`\\\\SOFTWARE\\\\Python\\\\PythonCore\\\\{version}\\\\PythonPath` under " -"both the ``HKEY_CURRENT_USER`` and ``HKEY_LOCAL_MACHINE`` hives. Subkeys " -"which have semicolon-delimited path strings as their default value will " -"cause each path to be added to :data:`sys.path`. (Note that all known " +"Additional \"application paths\" can be added in the registry as subkeys " +"of :samp:`\\\\SOFTWARE\\\\Python\\\\PythonCore\\\\{version}\\\\PythonPath` " +"under both the ``HKEY_CURRENT_USER`` and ``HKEY_LOCAL_MACHINE`` hives. " +"Subkeys which have semicolon-delimited path strings as their default value " +"will cause each path to be added to :data:`sys.path`. (Note that all known " "installers only use HKLM, so HKCU is typically empty.)" msgstr "" @@ -1748,15 +1831,15 @@ msgid "" "\"Python Home\". Otherwise, the path of the main Python executable is used " "to locate a \"landmark file\" (either ``Lib\\os.py`` or ``pythonXY.zip``) to " "deduce the \"Python Home\". If a Python home is found, the relevant sub-" -"directories added to :data:`sys.path` (``Lib``, ``plat-win``, etc) are based " -"on that folder. Otherwise, the core Python path is constructed from the " -"PythonPath stored in the registry." +"directories added to :data:`sys.path` (such as ``Lib`` and ``plat-win``) are " +"based on that folder. Otherwise, the core Python path is constructed from " +"the PythonPath stored in the registry." msgstr "" msgid "" "If the Python Home cannot be located, no :envvar:`PYTHONPATH` is specified " "in the environment, and no registry entries can be found, a default path " -"with relative entries is used (e.g. ``.\\Lib;.\\plat-win``, etc)." +"with relative entries is used (for example, ``.\\Lib;.\\plat-win``)." msgstr "" msgid "" @@ -1781,14 +1864,14 @@ msgid "" msgstr "" msgid "" -"When Python is hosted in another .exe (different directory, embedded via " -"COM, etc), the \"Python Home\" will not be deduced, so the core path from " -"the registry is used. Other \"application paths\" in the registry are " -"always read." +"When Python is hosted in another .exe (for example, in a different directory " +"or embedded via COM), the \"Python Home\" will not be deduced, so the core " +"path from the registry is used. Other \"application paths\" in the registry " +"are always read." msgstr "" msgid "" -"If Python can't find its home and there are no registry value (frozen .exe, " +"If Python can't find its home and there are no registry values (frozen .exe, " "some very strange installation setup) you get a path with some default, but " "relative, paths." msgstr "" @@ -1806,9 +1889,9 @@ msgid "" msgstr "" msgid "" -"If you are loading :file:`python3.dll` or :file:`python37.dll` in your own " -"executable, explicitly set :c:member:`PyConfig.module_search_paths` before :" -"c:func:`Py_InitializeFromConfig`." +"If you are loading :file:`python3.dll` or |python_xy_dll_literal| in your " +"own executable, explicitly set :c:member:`PyConfig.module_search_paths` " +"before :c:func:`Py_InitializeFromConfig`." msgstr "" msgid "" @@ -1834,8 +1917,8 @@ msgid "" msgstr "" msgid "" -"Add ``._pth`` file support and removes ``applocal`` option from ``pyvenv." -"cfg``." +"Add ``._pth`` file support and remove ``applocal`` option from " +"``pyvenv.cfg``." msgstr "" msgid "" @@ -1892,9 +1975,9 @@ msgid "" msgstr "" msgid "" -"`PythonWin `_ is a sample MFC application shipped with PyWin32. " -"It is an embeddable IDE with a built-in debugger." +"`PythonWin `_ is a sample MFC application shipped " +"with PyWin32. It is an embeddable IDE with a built-in debugger." msgstr "" msgid "" @@ -2140,9 +2223,9 @@ msgid "The default install directory for just-for-me installs" msgstr "" msgid "" -":file:`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY` or :file:" -"`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY-32` or :file:" -"`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY-64`" +":file:`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY` " +"or :file:`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY-32` " +"or :file:`%LocalAppData%\\\\\\ Programs\\\\Python\\\\\\ PythonXY-64`" msgstr "" msgid "DefaultCustomTargetDir" @@ -2316,11 +2399,12 @@ msgid "" msgstr "" msgid "" -"The options listed above can also be provided in a file named ``unattend." -"xml`` alongside the executable. This file specifies a list of options and " -"values. When a value is provided as an attribute, it will be converted to a " -"number if possible. Values provided as element text are always left as " -"strings. This example file sets the same options as the previous example:" +"The options listed above can also be provided in a file named " +"``unattend.xml`` alongside the executable. This file specifies a list of " +"options and values. When a value is provided as an attribute, it will be " +"converted to a number if possible. Values provided as element text are " +"always left as strings. This example file sets the same options as the " +"previous example:" msgstr "" msgid "" @@ -2383,8 +2467,8 @@ msgid "" msgstr "" msgid "" -"\"Uninstall\" will remove Python entirely, with the exception of the :ref:" -"`launcher`, which has its own entry in Programs and Features." +"\"Uninstall\" will remove Python entirely, with the exception of " +"the :ref:`launcher`, which has its own entry in Programs and Features." msgstr "" msgid "" @@ -2606,8 +2690,8 @@ msgid "From file associations" msgstr "" msgid "" -"The launcher should have been associated with Python files (i.e. ``.py``, ``." -"pyw``, ``.pyc`` files) when it was installed. This means that when you " +"The launcher should have been associated with Python files (i.e. ``.py``, " +"``.pyw``, ``.pyc`` files) when it was installed. This means that when you " "double-click on one of these files from Windows explorer the launcher will " "be used, and therefore you can use the same facilities described above to " "have the script specify the version which should be used." @@ -2662,8 +2746,8 @@ msgstr "" msgid "" "The \"-64\" suffix is deprecated, and now implies \"any architecture that is " -"not provably i386/32-bit\". To request a specific environment, use the new :" -"samp:`-V:{TAG}` argument with the complete tag." +"not provably i386/32-bit\". To request a specific environment, use the " +"new :samp:`-V:{TAG}` argument with the complete tag." msgstr "" msgid "" @@ -2682,8 +2766,8 @@ msgid "" "the first argument after the ``env`` command cannot be found, but the " "argument starts with ``python``, it will be handled as described for the " "other virtual commands. The environment variable :envvar:`!" -"PYLAUNCHER_NO_SEARCH_PATH` may be set (to any value) to skip this search of :" -"envvar:`PATH`." +"PYLAUNCHER_NO_SEARCH_PATH` may be set (to any value) to skip this search " +"of :envvar:`PATH`." msgstr "" msgid "" @@ -2733,10 +2817,10 @@ msgstr "" msgid "" "Two .ini files will be searched by the launcher - ``py.ini`` in the current " -"user's application data directory (``%LOCALAPPDATA%`` or ``$env:" -"LocalAppData``) and ``py.ini`` in the same directory as the launcher. The " -"same .ini files are used for both the 'console' version of the launcher (i." -"e. py.exe) and for the 'windows' version (i.e. pyw.exe)." +"user's application data directory (``%LOCALAPPDATA%`` or " +"``$env:LocalAppData``) and ``py.ini`` in the same directory as the launcher. " +"The same .ini files are used for both the 'console' version of the launcher " +"(i.e. py.exe) and for the 'windows' version (i.e. pyw.exe)." msgstr "" msgid "" @@ -2764,12 +2848,12 @@ msgid "" msgstr "" msgid "" -"If no version qualifiers are found in a command, the environment variable :" -"envvar:`!PY_PYTHON` can be set to specify the default version qualifier. If " -"it is not set, the default is \"3\". The variable can specify any value that " -"may be passed on the command line, such as \"3\", \"3.7\", \"3.7-32\" or " -"\"3.7-64\". (Note that the \"-64\" option is only available with the " -"launcher included with Python 3.7 or newer.)" +"If no version qualifiers are found in a command, the environment " +"variable :envvar:`!PY_PYTHON` can be set to specify the default version " +"qualifier. If it is not set, the default is \"3\". The variable can specify " +"any value that may be passed on the command line, such as \"3\", \"3.7\", " +"\"3.7-32\" or \"3.7-64\". (Note that the \"-64\" option is only available " +"with the launcher included with Python 3.7 or newer.)" msgstr "" msgid "" diff --git a/whatsnew/2.0.po b/whatsnew/2.0.po index e2bd86f..88dc44c 100644 --- a/whatsnew/2.0.po +++ b/whatsnew/2.0.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -146,8 +146,8 @@ msgid "" "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\":" +"accepting or rejecting the proposal. Quoting from the introduction " +"to :pep:`1`, \"PEP Purpose and Guidelines\":" msgstr "" msgid "" @@ -194,10 +194,10 @@ msgstr "" msgid "" "In Python source code, Unicode strings are written as ``u\"string\"``. " -"Arbitrary Unicode characters can be written using a new escape sequence, :" -"samp:`\\\\u{HHHH}`, where *HHHH* is a 4-digit hexadecimal number from 0000 " -"to FFFF. The existing :samp:`\\\\x{HH}` escape sequence can also be used, " -"and octal escapes can be used for characters up to U+01FF, which is " +"Arbitrary Unicode characters can be written using a new escape " +"sequence, :samp:`\\\\u{HHHH}`, where *HHHH* is a 4-digit hexadecimal number " +"from 0000 to FFFF. The existing :samp:`\\\\x{HH}` escape sequence can also " +"be used, and octal escapes can be used for characters up to U+01FF, which is " "represented by ``\\777``." msgstr "" @@ -291,9 +291,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -392,9 +392,9 @@ msgid "" "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." +"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 "" msgid "" @@ -503,8 +503,8 @@ msgid "" "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 " +"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 "" @@ -543,11 +543,11 @@ msgid "" msgstr "" 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)``." +"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 "" msgid "Garbage Collection of Cycles" @@ -727,11 +727,11 @@ msgstr "" 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 https://pythonce.sourceforge." -"net/ for more information." +"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 https://" +"pythonce.sourceforge.net/ for more information." msgstr "" msgid "" @@ -746,10 +746,10 @@ msgid "" "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. ::" +"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 "" msgid "" @@ -780,25 +780,25 @@ msgstr "" 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\"." +"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 "" 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." +"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 "" 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::" +"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 "" msgid "" @@ -816,10 +816,10 @@ 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`." +"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 "" msgid "Porting to 2.0" @@ -860,9 +860,9 @@ msgstr "" msgid "" "Some of the functions in the :mod:`socket` module are still forgiving in " "this way. For example, ``socket.connect( ('hostname', 25) )`` is the " -"correct form, passing a tuple representing an IP address, but ``socket." -"connect('hostname', 25)`` also works. :meth:`socket.connect_ex ` and :meth:`socket.bind ` are " +"correct form, passing a tuple representing an IP address, but " +"``socket.connect('hostname', 25)`` also works. :meth:`socket.connect_ex " +"` and :meth:`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 " @@ -916,11 +916,11 @@ msgstr "" 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'``." +"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 "" msgid "" @@ -951,10 +951,10 @@ msgstr "" 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)``." +"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 "" msgid "" @@ -970,8 +970,8 @@ msgstr "" 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 :c:func:`malloc`. For documentation, read the comments in :" -"file:`Include/pymem.h` and :file:`Include/objimpl.h`. For the lengthy " +"of C's standard :c: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 "" @@ -1008,18 +1008,18 @@ msgstr "" msgid "" "Three new convenience functions intended for adding constants to a module's " -"dictionary at module initialization time were added: :c:func:" -"`PyModule_AddObject`, :c:func:`PyModule_AddIntConstant`, and :c: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 " +"dictionary at module initialization time were " +"added: :c:func:`PyModule_AddObject`, :c:func:`PyModule_AddIntConstant`, " +"and :c: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 "" msgid "" -"A wrapper API was added for Unix-style signal handlers. :c:func:" -"`PyOS_getsig` gets a signal handler and :c:func:`PyOS_setsig` will set a new " -"handler." +"A wrapper API was added for Unix-style signal " +"handlers. :c:func:`PyOS_getsig` gets a signal handler " +"and :c:func:`PyOS_setsig` will set a new handler." msgstr "" msgid "Distutils: Making Modules Easy to Install" @@ -1053,8 +1053,8 @@ msgstr "" 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::" +"For the simple case, when the software contains only .py files, a " +"minimal :file:`setup.py` can be just a few lines long::" msgstr "" msgid "" @@ -1134,11 +1134,12 @@ 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:`~xml.sax.handler.ContentHandler." -"startElement` and :meth:`~xml.sax.handler.ContentHandler.endElement` methods " -"are called for every starting and end tag encountered by the parser, the :" -"meth:`~xml.sax.handler.ContentHandler.characters` method is called for every " -"chunk of character data, and so forth." +"the XML parser. For example, " +"the :meth:`~xml.sax.handler.ContentHandler.startElement` " +"and :meth:`~xml.sax.handler.ContentHandler.endElement` methods are called " +"for every starting and end tag encountered by the parser, " +"the :meth:`~xml.sax.handler.ContentHandler.characters` method is called for " +"every chunk of character data, and so forth." msgstr "" msgid "" @@ -1151,8 +1152,8 @@ msgstr "" 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::" +"message for every starting and ending tag, and then parses the " +"file :file:`hamlet.xml` using it::" msgstr "" msgid "" @@ -1205,10 +1206,11 @@ msgid "" msgstr "" 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::" +"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 "" msgid "" @@ -1303,22 +1305,23 @@ msgstr "" 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`, :mod:`wave`, :" -"mod:`random`, :mod:`shelve`, and :mod:`!nntplib`. Consult the CVS logs for " -"the exact patch-by-patch details." +"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`, :mod:`wave`, :mod:`random`, :mod:`shelve`, and :mod:`!" +"nntplib`. Consult the CVS logs for the exact patch-by-patch details." msgstr "" 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." +"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 "" msgid "" @@ -1351,10 +1354,10 @@ msgstr "" 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." +"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 "" msgid "New modules" @@ -1404,8 +1407,8 @@ msgid "" "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.)" +"the :mod:`re` module. (Contributed by Sam Rushing, with some extensions by " +"A.M. Kuchling.)" msgstr "" msgid "" @@ -1437,9 +1440,9 @@ msgid "" "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.)" +"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 "" msgid "" @@ -1508,8 +1511,8 @@ msgid "In the editor window, there is now a line/column bar at the bottom." msgstr "" msgid "" -"Three new keystroke commands: Check module (:kbd:`Alt-F5`), Import module (:" -"kbd:`F5`) and Run script (:kbd:`Ctrl-F5`)." +"Three new keystroke commands: Check module (:kbd:`Alt-F5`), Import module " +"(:kbd:`F5`) and Run script (:kbd:`Ctrl-F5`)." msgstr "" msgid "Deleted and Deprecated Modules" @@ -1523,13 +1526,13 @@ msgid "" msgstr "" 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." +"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 "" msgid "Acknowledgements" diff --git a/whatsnew/2.1.po b/whatsnew/2.1.po index 3b3729f..6d12935 100644 --- a/whatsnew/2.1.po +++ b/whatsnew/2.1.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -106,10 +106,11 @@ msgid "" "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." +"(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 "" msgid "" @@ -198,10 +199,11 @@ msgstr "" 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." +"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 "" msgid ":pep:`236` - Back to the :mod:`__future__`" @@ -278,9 +280,9 @@ msgid ":meth:`~object.__ne__`" msgstr "" 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.)" +"(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 "" msgid "" @@ -310,8 +312,8 @@ msgstr "" 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 " +"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 "" @@ -339,8 +341,8 @@ msgid "" msgstr "" 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 " +"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." @@ -372,9 +374,9 @@ msgstr "" 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 ::" +"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 "" msgid "" @@ -386,13 +388,13 @@ msgid "" msgstr "" 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)." +"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 "" msgid "" @@ -450,8 +452,8 @@ msgstr "" 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/` " +"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 "" @@ -594,12 +596,13 @@ msgid "" msgstr "" msgid "" -"The dictionary containing attributes can be accessed as the function's :attr:" -"`~function.__dict__`. Unlike the :attr:`~type.__dict__` attribute of class " -"instances, in functions you can actually assign a new dictionary to :attr:" -"`~function.__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." +"The dictionary containing attributes can be accessed as the " +"function's :attr:`~function.__dict__`. Unlike the :attr:`~type.__dict__` " +"attribute of class instances, in functions you can actually assign a new " +"dictionary to :attr:`~function.__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 "" msgid ":pep:`232` - Function Attributes" @@ -622,9 +625,10 @@ 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." +"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 "" msgid "PEP 217: Interactive Display Hook" @@ -708,17 +712,18 @@ msgstr "" 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." +"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 "" msgid "" @@ -726,8 +731,8 @@ msgid "" "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/." +"enhancements. It will be available from the Distutils SIG at https://" +"www.python.org/community/sigs/current/distutils-sig/." msgstr "" msgid ":pep:`241` - Metadata for Python Software Packages" @@ -747,10 +752,11 @@ msgstr "" 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::" +"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 "" msgid "" @@ -771,8 +777,8 @@ msgid "" msgstr "" msgid "" -":file:`pydoc` also includes a Tk-based interactive help browser. :file:" -"`pydoc` quickly becomes addictive; try it out!" +":file:`pydoc` also includes a Tk-based interactive help " +"browser. :file:`pydoc` quickly becomes addictive; try it out!" msgstr "" msgid "" @@ -781,17 +787,17 @@ msgid "" "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 https://pyunit." -"sourceforge.net/ for more information about PyUnit." +"adaptation of Kent Beck's Smalltalk testing framework. See https://" +"pyunit.sourceforge.net/ for more information about PyUnit." msgstr "" msgid "" -"The :mod:`difflib` module contains a class, :class:`~difflib." -"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." +"The :mod:`difflib` module contains a " +"class, :class:`~difflib.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 "" msgid "" @@ -811,14 +817,14 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -860,11 +866,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -888,25 +894,25 @@ msgid "" "faster than the system :c:func:`malloc` and have less memory overhead. The " "allocator uses C's :c: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." +"enabled by providing the :option:`!--with-pymalloc` option to " +"the :program:`configure` script; see :file:`Objects/obmalloc.c` for the " +"implementation details." msgstr "" 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 :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 " -"will get you a core dump. For example, if memory was allocated using :c:" -"macro:`PyMem_New`, it has to be freed using :c:func:`PyMem_Del`, 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." +"API that have previously been just 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 will get you a core dump. For example, if memory " +"was allocated using :c:macro:`PyMem_New`, it has to be freed " +"using :c:func:`PyMem_Del`, 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 "" msgid "The object allocator was contributed by Vladimir Marangozov." @@ -925,11 +931,11 @@ msgstr "" 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::" +"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 "" msgid "" @@ -990,10 +996,10 @@ msgid "" msgstr "" msgid "" -"C extensions which import other modules have been changed to use :c: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." +"C extensions which import other modules have been changed to " +"use :c: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 "" msgid "" diff --git a/whatsnew/2.2.po b/whatsnew/2.2.po index c5f60f9..85e6f26 100644 --- a/whatsnew/2.2.po +++ b/whatsnew/2.2.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -168,15 +168,15 @@ 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 :class:" -"`object`.)" +"see :pep:`253` for the details --- but it's easier to just " +"subclass :class:`object`.)" msgstr "" 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. ::" +"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 "" msgid "" @@ -354,12 +354,12 @@ msgstr "" 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." +"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 "" msgid "" @@ -385,9 +385,9 @@ msgid "" msgstr "" 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`, " +"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 " @@ -418,8 +418,9 @@ msgid "" "A fair number of sophisticated Python classes define hooks for attribute " "access using :meth:`~object.__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." +"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 "" msgid "" @@ -441,12 +442,12 @@ 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:`~object.__getattr__` methods also end up " -"being called by Python when it checks for other methods such as :meth:" -"`~object.__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." +"accesses inside them, and instead have to mess around with the contents " +"of :attr:`~object.__dict__`. :meth:`~object.__getattr__` methods also end up " +"being called by Python when it checks for other methods such " +"as :meth:`~object.__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 "" msgid "" @@ -486,10 +487,10 @@ 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::" +"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 "" msgid "" @@ -534,11 +535,11 @@ 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." +"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 "" msgid "" @@ -582,23 +583,24 @@ msgid "" msgstr "" msgid "" -"In Python 2.2, iteration can be implemented separately, and :meth:`~object." -"__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." +"In Python 2.2, iteration can be implemented separately, " +"and :meth:`~object.__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 "" 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." +"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 "" msgid "" @@ -630,8 +632,8 @@ 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 " +"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::" @@ -646,9 +648,9 @@ msgid "" msgstr "" 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::" +"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 "" msgid "" @@ -672,10 +674,11 @@ msgstr "" 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)``." +"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 "" msgid "" @@ -752,11 +755,12 @@ msgid "" "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.)" +"``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 "" msgid "Here's a sample usage of the :func:`!generate_ints` generator::" @@ -977,19 +981,20 @@ msgid "" msgstr "" msgid "" -"Classes can define methods called :meth:`~object.__truediv__` and :meth:" -"`~object.__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." +"Classes can define methods called :meth:`~object.__truediv__` " +"and :meth:`~object.__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 "" 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." +"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 "" msgid ":pep:`238` - Changing the Division Operator" @@ -1134,10 +1139,11 @@ msgid "" "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." +"(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 "" msgid "" @@ -1231,25 +1237,26 @@ msgid "" msgstr "" msgid "" -"The new :mod:`hmac` module implements the HMAC algorithm described by :rfc:" -"`2104`. (Contributed by Gerhard Häring.)" +"The new :mod:`hmac` module implements the HMAC algorithm described " +"by :rfc:`2104`. (Contributed by Gerhard Häring.)" msgstr "" msgid "" "Several functions that originally returned lengthy tuples now return pseudo-" "sequences that still behave like tuples but also have mnemonic attributes " "such as :attr:`!memberst_mtime` or :attr:`~time.struct_time.tm_year`. The " -"enhanced functions include :func:`~os.stat`, :func:`~os.fstat`, :func:`~os." -"statvfs`, and :func:`~os.fstatvfs` in the :mod:`os` module, and :func:`~time." -"localtime`, :func:`~time.gmtime`, and :func:`~time.strptime` in the :mod:" -"`time` module." +"enhanced functions " +"include :func:`~os.stat`, :func:`~os.fstat`, :func:`~os.statvfs`, " +"and :func:`~os.fstatvfs` in the :mod:`os` module, " +"and :func:`~time.localtime`, :func:`~time.gmtime`, " +"and :func:`~time.strptime` in the :mod:`time` module." msgstr "" 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``." +"now this can be written more clearly as ``file_size = " +"os.stat(filename).st_size``." msgstr "" msgid "The original patch for this feature was contributed by Nick Mathewson." @@ -1262,9 +1269,9 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1275,13 +1282,13 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1327,14 +1334,14 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1373,12 +1380,12 @@ msgstr "" msgid "" "Another low-level API, primarily of interest to implementers 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.)" +"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 "" msgid "" @@ -1399,15 +1406,13 @@ msgid "Rename :c:macro:`!Py_TPFLAGS_GC` to :c:macro:`Py_TPFLAGS_HAVE_GC`." msgstr "" msgid "" -"Use :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar` to allocate" -msgstr "" - -msgid "objects, and :c:func:`PyObject_GC_Del` to deallocate them." +"Use :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar` to allocate " +"objects, and :c:func:`PyObject_GC_Del` to deallocate them." msgstr "" msgid "" -"Rename :c:func:`!PyObject_GC_Init` to :c:func:`PyObject_GC_Track` and :c:" -"func:`!PyObject_GC_Fini` to :c:func:`PyObject_GC_UnTrack`." +"Rename :c:func:`!PyObject_GC_Init` to :c:func:`PyObject_GC_Track` " +"and :c:func:`!PyObject_GC_Fini` to :c:func:`PyObject_GC_UnTrack`." msgstr "" msgid "Remove :c:macro:`!PyGC_HEAD_SIZE` from object size calculations." @@ -1440,18 +1445,19 @@ msgid "" "Two new flags :c:macro:`METH_NOARGS` and :c:macro:`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 :c:macro:" -"`METH_VARARGS`. Also, the old :c:macro:`!METH_OLDARGS` style of writing C " -"methods is now officially deprecated." +"efficient than calling a corresponding method that " +"uses :c:macro:`METH_VARARGS`. Also, the old :c:macro:`!METH_OLDARGS` style " +"of writing C methods is now officially deprecated." msgstr "" 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.)" +"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 "" msgid "" @@ -1510,8 +1516,8 @@ msgstr "" 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." +"The :exc:`ReferenceError` exception has therefore moved from " +"the :mod:`weakref` module to become a built-in exception." msgstr "" msgid "" @@ -1521,10 +1527,10 @@ msgid "" msgstr "" 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`. " +"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 "" @@ -1560,12 +1566,12 @@ 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." +"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 "" msgid "" @@ -1601,9 +1607,9 @@ msgstr "" 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.)" +"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 "" msgid "" diff --git a/whatsnew/2.3.po b/whatsnew/2.3.po index 4b41699..8922164 100644 --- a/whatsnew/2.3.po +++ b/whatsnew/2.3.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -97,8 +97,8 @@ msgid "" msgstr "" msgid "" -"The union and intersection of sets can be computed with the :meth:" -"`~frozenset.union` and :meth:`~frozenset.intersection` methods; an " +"The union and intersection of sets can be computed with " +"the :meth:`~frozenset.union` and :meth:`~frozenset.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:`~set.intersection_update`. ::" @@ -126,8 +126,8 @@ msgid "" "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:`~set." -"symmetric_difference_update`. ::" +"notation (``^``), and an in-place version with the ungainly " +"name :meth:`~set.symmetric_difference_update`. ::" msgstr "" msgid "" @@ -213,12 +213,13 @@ msgid "" "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.)" +"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 "" msgid "Here's a sample usage of the :func:`!generate_ints` generator::" @@ -347,9 +348,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -373,8 +374,8 @@ msgstr "" 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:" +"be automatically imported if a ZIP archive's filename is added to " +"``sys.path``. For example:" msgstr "" msgid "" @@ -398,11 +399,12 @@ msgstr "" 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." +"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 "" msgid "" @@ -417,9 +419,9 @@ msgstr "" 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." +"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 "" msgid "PEP 277: Unicode file name support for Windows NT" @@ -433,10 +435,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -446,10 +449,10 @@ msgstr "" 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 :const:`os.path." -"supports_unicode_filenames`, a Boolean value." +"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 :const:`os.path.supports_unicode_filenames`, a Boolean value." msgstr "" msgid "Under MacOS, :func:`os.listdir` may now return Unicode filenames." @@ -478,9 +481,9 @@ msgstr "" 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 " +"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 "" @@ -492,9 +495,9 @@ msgid "" msgstr "" msgid "" -"This feature can be disabled when compiling Python by specifying the :option:" -"`!--without-universal-newlines` switch when running Python's :program:" -"`configure` script." +"This feature can be disabled when compiling Python by specifying " +"the :option:`!--without-universal-newlines` switch when running " +"Python's :program:`configure` script." msgstr "" msgid ":pep:`278` - Universal Newline Support" @@ -555,15 +558,16 @@ msgstr "" msgid "" "The :class:`~logging.Logger` class is the primary class. Most application " "code will deal with one or more :class:`~logging.Logger` objects, each one " -"used by a particular subsystem of the application. Each :class:`~logging." -"Logger` is identified by a name, and names are organized into a hierarchy " -"using ``.`` as the component separator. For example, you might have :class:" -"`~logging.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:`~logging.Logger` that's the parent of all other loggers." +"used by a particular subsystem of the application. " +"Each :class:`~logging.Logger` is identified by a name, and names are " +"organized into a hierarchy using ``.`` as the component separator. For " +"example, you might have :class:`~logging.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:`~logging.Logger` that's the " +"parent of all other loggers." msgstr "" msgid "" @@ -593,8 +597,8 @@ msgstr "" 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:" -"`~logging.Logger.setLevel` method on the root logger." +"display of informational and debugging messages by calling " +"the :meth:`~logging.Logger.setLevel` method on the root logger." msgstr "" msgid "" @@ -644,9 +648,9 @@ msgstr "" 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:" -"`~logging.Logger` can prevent this by setting its :attr:`~logging.Logger." -"propagate` attribute to :const:`False`." +"``server.auth`` is also seen by ``server`` and ``root``, but " +"a :class:`~logging.Logger` can prevent this by setting " +"its :attr:`~logging.Logger.propagate` attribute to :const:`False`." msgstr "" msgid "" @@ -656,10 +660,10 @@ msgid "" "any number of different :class:`~logging.Handler` instances. Loggers and " "handlers can also have an attached list of filters, and each filter can " "cause the :class:`~logging.LogRecord` to be ignored or can modify the record " -"before passing it along. When they're finally output, :class:`~logging." -"LogRecord` instances are converted to text by a :class:`~logging.Formatter` " -"class. All of these classes can be replaced by your own specially written " -"classes." +"before passing it along. When they're finally " +"output, :class:`~logging.LogRecord` instances are converted to text by " +"a :class:`~logging.Formatter` class. All of these classes can be replaced " +"by your own specially written classes." msgstr "" msgid "" @@ -681,16 +685,16 @@ msgstr "" 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.)" +"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 "" 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`. ::" +"for it takes any Python value and converts it to :const:`True` " +"or :const:`False`. ::" msgstr "" msgid "" @@ -731,13 +735,13 @@ msgstr "" 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. ::" +"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 "" msgid "" @@ -770,9 +774,9 @@ msgstr "" 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 " +"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." @@ -879,13 +883,13 @@ msgstr "" 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." +"an importer object that will handle imports from this path or raises " +"an :exc:`ImportError` exception if it can't handle this path." msgstr "" 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." +"``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 "" msgid "" @@ -981,9 +985,9 @@ msgstr "" 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." +"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 "" msgid ":pep:`305` - CSV File API" @@ -1024,10 +1028,10 @@ msgstr "" msgid "" "To reduce the pickling overhead for new-style classes, a new interface for " -"customizing pickling was added using three special methods: :meth:`~object." -"__getstate__`, :meth:`~object.__setstate__`, and :meth:`~object." -"__getnewargs__`. Consult :pep:`307` for the full semantics of these " -"methods." +"customizing pickling was added using three special " +"methods: :meth:`~object.__getstate__`, :meth:`~object.__setstate__`, " +"and :meth:`~object.__getnewargs__`. Consult :pep:`307` for the full " +"semantics of these methods." msgstr "" msgid "" @@ -1300,10 +1304,10 @@ msgstr "" 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:" +"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 "" msgid "" @@ -1319,15 +1323,15 @@ 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`." +"deprecated in the future, supply :option:`-" +"Walways::PendingDeprecationWarning:: <-W>` on the command line or " +"use :func:`warnings.filterwarnings`." msgstr "" msgid "" "The process of deprecating string-based exceptions, as in ``raise \"Error " -"occurred\"``, has begun. Raising a string will now trigger :exc:" -"`PendingDeprecationWarning`." +"occurred\"``, has begun. Raising a string will now " +"trigger :exc:`PendingDeprecationWarning`." msgstr "" msgid "" @@ -1393,8 +1397,8 @@ msgstr "" msgid "" "One of the noted incompatibilities between old- and new-style classes has " -"been removed: you can now assign to the :attr:`~type.__name__` and :attr:" -"`~type.__bases__` attributes of new-style classes. There are some " +"been removed: you can now assign to the :attr:`~type.__name__` " +"and :attr:`~type.__bases__` attributes of new-style classes. There are some " "restrictions on what can be assigned to :attr:`!__bases__` along the lines " "of those relating to assigning to an instance's :attr:`~object.__class__` " "attribute." @@ -1506,8 +1510,9 @@ msgstr "" 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.)" +"increase, depending on your compiler's idiosyncrasies. See " +"section :ref:`23section-other` for a longer explanation. (Removed by Michael " +"Hudson.)" msgstr "" msgid "" @@ -1560,17 +1565,18 @@ msgid "" "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`." +"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 "" 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.)" +"library. bz2-compressed data is usually smaller than " +"corresponding :mod:`zlib`\\ -compressed data. (Contributed by Gustavo " +"Niemeyer.)" msgstr "" msgid "" @@ -1599,17 +1605,17 @@ msgid "" msgstr "" 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)." +"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 "" 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:`~doctest.DocTestSuite` function creates a :" -"class:`unittest.TestSuite` object from a set of :mod:`doctest` tests." +"private ones as well. The :func:`~doctest.DocTestSuite` function creates " +"a :class:`unittest.TestSuite` object from a set of :mod:`doctest` tests." msgstr "" msgid "" @@ -1620,10 +1626,10 @@ msgstr "" msgid "" "The :mod:`getopt` module gained a new function, :func:`~getopt.gnu_getopt`, " "that supports the same arguments as the existing :func:`~getopt.getopt` " -"function but uses GNU-style scanning mode. The existing :func:`~getopt." -"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::" +"function but uses GNU-style scanning mode. The " +"existing :func:`~getopt.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 "" msgid "" @@ -1663,10 +1669,10 @@ msgid "" msgstr "" msgid "" -"The :mod:`heapq` module provides :func:`~heapq.heappush` and :func:`~heapq." -"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::" +"The :mod:`heapq` module provides :func:`~heapq.heappush` " +"and :func:`~heapq.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 "" msgid "" @@ -1742,8 +1748,8 @@ msgid "" "stamps are floats. For compatibility, when using the tuple interface of " "the :class:`~os.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::" +"stamps are still represented as integers, unless :func:`!" +"os.stat_float_times` is invoked to enable float return values::" msgstr "" msgid "" @@ -1790,8 +1796,8 @@ 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:`~xml.parsers.expat.xmlparser.buffer_text` attribute to :" -"const:`True` will enable buffering." +"object's :attr:`~xml.parsers.expat.xmlparser.buffer_text` attribute " +"to :const:`True` will enable buffering." msgstr "" msgid "" @@ -1831,8 +1837,8 @@ msgid "(All changes contributed by Raymond Hettinger.)" msgstr "" msgid "" -"The :mod:`readline` module also gained a number of new functions: :func:" -"`~readline.get_history_item`, :func:`~readline.get_current_history_length`, " +"The :mod:`readline` module also gained a number of new " +"functions: :func:`~readline.get_history_item`, :func:`~readline.get_current_history_length`, " "and :func:`~readline.redisplay`." msgstr "" @@ -1863,9 +1869,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -1895,8 +1901,8 @@ msgid "" msgstr "" msgid "" -"The new :mod:`tarfile` module allows reading from and writing to :program:" -"`tar`\\ -format archive files. (Contributed by Lars Gustäbel.)" +"The new :mod:`tarfile` module allows reading from and writing " +"to :program:`tar`\\ -format archive files. (Contributed by Lars Gustäbel.)" msgstr "" msgid "" @@ -1905,8 +1911,8 @@ msgid "" "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:`~textwrap.fill` is built on top of :func:`~textwrap." -"wrap`. For example::" +"you can guess, :func:`~textwrap.fill` is built on top " +"of :func:`~textwrap.wrap`. For example::" msgstr "" msgid "" @@ -1928,20 +1934,20 @@ msgstr "" msgid "" "The module also contains a :class:`~textwrap.TextWrapper` class that " -"actually implements the text wrapping strategy. Both the :class:`~textwrap." -"TextWrapper` class and the :func:`~textwrap.wrap` and :func:`~textwrap.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.)" +"actually implements the text wrapping strategy. Both " +"the :class:`~textwrap.TextWrapper` class and the :func:`~textwrap.wrap` " +"and :func:`~textwrap.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 "" 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::" +"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 "" msgid "" @@ -1953,12 +1959,13 @@ msgstr "" 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." +"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 "" msgid "" @@ -2007,9 +2014,9 @@ msgid "" "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.)" +"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 "" msgid "" @@ -2052,8 +2059,9 @@ msgstr "" msgid "" "Adding the mix-in as a superclass provides the full dictionary interface " -"whenever the class defines :meth:`~object.__getitem__`, :meth:`~object." -"__setitem__`, :meth:`~object.__delitem__`, and :meth:`!keys`. For example::" +"whenever the class " +"defines :meth:`~object.__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__delitem__`, " +"and :meth:`!keys`. For example::" msgstr "" msgid "" @@ -2100,9 +2108,9 @@ msgstr "" 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:`~xml.dom.minidom.Node.toxml` and :meth:`~xml.dom.minidom.Node." -"toprettyxml` methods of DOM nodes." +"in a particular encoding by providing an optional encoding argument to " +"the :meth:`~xml.dom.minidom.Node.toxml` " +"and :meth:`~xml.dom.minidom.Node.toprettyxml` methods of DOM nodes." msgstr "" msgid "" @@ -2151,27 +2159,27 @@ msgid "Date/Time Type" msgstr "" 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." +"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 "" msgid "" "The three primary types are: :class:`~datetime.date`, representing a day, " "month, and year; :class:`~datetime.time`, consisting of hour, minute, and " "second; and :class:`~datetime.datetime`, which contains all the attributes " -"of both :class:`~datetime.date` and :class:`~datetime.time`. There's also a :" -"class:`~datetime.timedelta` class representing differences between two " +"of both :class:`~datetime.date` and :class:`~datetime.time`. There's also " +"a :class:`~datetime.timedelta` class representing differences between two " "points in time, and time zone logic is implemented by classes inheriting " "from the abstract :class:`~datetime.tzinfo` class." msgstr "" msgid "" -"You can create instances of :class:`~datetime.date` and :class:`~datetime." -"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:`~datetime.date.today` " -"class method returns the current local date." +"You can create instances of :class:`~datetime.date` " +"and :class:`~datetime.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:`~datetime.date.today` class method returns the current local date." msgstr "" msgid "" @@ -2207,12 +2215,12 @@ msgstr "" msgid "" "Instances can be compared, hashed, and converted to strings (the result is " -"the same as that of :meth:`~datetime.datetime.isoformat`). :class:" -"`~datetime.date` and :class:`~datetime.datetime` instances can be subtracted " -"from each other, and added to :class:`~datetime.timedelta` instances. The " -"largest missing feature is that there's no standard library support for " -"parsing strings and getting back a :class:`~datetime.date` or :class:" -"`~datetime.datetime`." +"the same as that " +"of :meth:`~datetime.datetime.isoformat`). :class:`~datetime.date` " +"and :class:`~datetime.datetime` instances can be subtracted from each other, " +"and added to :class:`~datetime.timedelta` instances. The largest missing " +"feature is that there's no standard library support for parsing strings and " +"getting back a :class:`~datetime.date` or :class:`~datetime.datetime`." msgstr "" msgid "" @@ -2250,8 +2258,8 @@ msgid "" msgstr "" msgid "" -"Parsing a command line is then done by calling the :meth:`~optparse." -"OptionParser.parse_args` method. ::" +"Parsing a command line is then done by calling " +"the :meth:`~optparse.OptionParser.parse_args` method. ::" msgstr "" msgid "" @@ -2355,28 +2363,29 @@ msgstr "" 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`." +"memory\" family: :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc`, " +"and :c:func:`PyMem_Free`." msgstr "" 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`." +"allocations: :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc`, " +"and :c:func:`PyObject_Free`." msgstr "" msgid "" -"To allocate and free Python objects, use the \"object\" family :c:macro:" -"`PyObject_New`, :c:macro:`PyObject_NewVar`, and :c:func:`PyObject_Del`." +"To allocate and free Python objects, use the \"object\" " +"family :c:macro:`PyObject_New`, :c:macro:`PyObject_NewVar`, " +"and :c:func:`PyObject_Del`." msgstr "" 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`." +"compile a debugging version of the Python interpreter by " +"running :program:`configure` with :option:`!--with-pydebug`." msgstr "" msgid "" @@ -2405,14 +2414,15 @@ msgstr "" 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." +"Python without it, and the :option:`!--with-cycle-gc` switch " +"to :program:`configure` has been removed." msgstr "" 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.)" +"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 "" msgid "" @@ -2425,8 +2435,8 @@ msgstr "" 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% " +"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 "" @@ -2443,9 +2453,9 @@ msgstr "" msgid "" ":c:func:`PyArg_ParseTuple` accepts new format characters for various sizes " -"of unsigned integers: ``B`` for :c:expr:`unsigned char`, ``H`` for :c:expr:" -"`unsigned short int`, ``I`` for :c:expr:`unsigned int`, and ``K`` for :c:" -"expr:`unsigned long long`." +"of unsigned integers: ``B`` for :c:expr:`unsigned char`, ``H`` " +"for :c:expr:`unsigned short int`, ``I`` for :c:expr:`unsigned int`, and " +"``K`` for :c:expr:`unsigned long long`." msgstr "" msgid "" @@ -2455,9 +2465,9 @@ msgstr "" 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)." +"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 "" msgid "" @@ -2473,12 +2483,12 @@ msgstr "" msgid "" "If you dynamically allocate type objects in your extension, you should be " -"aware of a change in the rules relating to the :attr:`~type.__module__` and :" -"attr:`~type.__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." +"aware of a change in the rules relating to the :attr:`~type.__module__` " +"and :attr:`~type.__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 "" msgid "Port-Specific Changes" @@ -2488,12 +2498,12 @@ 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.)" +"POSIX-like capability exposed by the EMX runtime, and mostly " +"succeeds; :func:`!fork` and :func:`~fcntl.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 "" msgid "" @@ -2510,8 +2520,8 @@ msgid "" msgstr "" msgid "" -"Other new platforms now supported by Python include AtheOS (http://www." -"atheos.cx/), GNU/Hurd, and OpenVMS." +"Other new platforms now supported by Python include AtheOS (http://" +"www.atheos.cx/), GNU/Hurd, and OpenVMS." msgstr "" msgid "Other Changes and Fixes" @@ -2571,10 +2581,11 @@ msgid "" msgstr "" msgid "" -"A nifty new feature is that trace functions can now assign to the :attr:" -"`~frame.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.)" +"A nifty new feature is that trace functions can now assign to " +"the :attr:`~frame.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 "" msgid "Porting to Python 2.3" @@ -2615,9 +2626,10 @@ msgid "" msgstr "" 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." +"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 "" msgid "" diff --git a/whatsnew/2.4.po b/whatsnew/2.4.po index 102fdc3..19ed9df 100644 --- a/whatsnew/2.4.po +++ b/whatsnew/2.4.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -125,10 +125,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -263,9 +264,10 @@ msgid "" msgstr "" msgid "" -"If a key is missing from the dictionary, the :meth:`~string.Template." -"substitute` method will raise a :exc:`KeyError`. There's also a :meth:" -"`~string.Template.safe_substitute` method that ignores missing keys::" +"If a key is missing from the dictionary, " +"the :meth:`~string.Template.substitute` method will raise " +"a :exc:`KeyError`. There's also a :meth:`~string.Template.safe_substitute` " +"method that ignores missing keys::" msgstr "" msgid "" @@ -286,10 +288,10 @@ msgstr "" 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::" +"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 "" msgid "" @@ -301,8 +303,8 @@ msgid "" msgstr "" msgid "" -"If the method was very long, it would be easy to miss or forget the :func:" -"`classmethod` invocation after the function body." +"If the method was very long, it would be easy to miss or forget " +"the :func:`classmethod` invocation after the function body." msgstr "" msgid "" @@ -477,8 +479,8 @@ msgstr "" 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`. ::" +"If you want to reverse an iterator, first convert it to a list " +"with :func:`list`. ::" msgstr "" msgid "" @@ -501,13 +503,14 @@ msgstr "" 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." +"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 "" msgid "" @@ -559,8 +562,8 @@ msgid "" msgstr "" msgid "" -"*universal_newlines* opens the child's input and output using Python's :term:" -"`universal newlines` feature." +"*universal_newlines* opens the child's input and output using " +"Python's :term:`universal newlines` feature." msgstr "" msgid "" @@ -703,10 +706,10 @@ msgstr "" msgid "" "A new module, :mod:`decimal`, was added to Python's standard library. It " -"contains two classes, :class:`~decimal.Decimal` and :class:`~decimal." -"Context`. :class:`~decimal.Decimal` instances represent numbers, and :class:" -"`~decimal.Context` instances are used to wrap up various settings such as " -"the precision and default rounding mode." +"contains two classes, :class:`~decimal.Decimal` " +"and :class:`~decimal.Context`. :class:`~decimal.Decimal` instances " +"represent numbers, and :class:`~decimal.Context` instances are used to wrap " +"up various settings such as the precision and default rounding mode." msgstr "" msgid "" @@ -798,11 +801,11 @@ msgid "" msgstr "" msgid "" -":class:`~decimal.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.Decimal`. ::" +":class:`~decimal.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.Decimal`. ::" msgstr "" msgid "" @@ -838,10 +841,10 @@ msgid "" msgstr "" msgid "" -":attr:`~decimal.Context.rounding` specifies the rounding mode. The :mod:" -"`decimal` module has constants for the various possibilities: :const:" -"`~decimal.ROUND_DOWN`, :const:`~decimal.ROUND_CEILING`, :const:`~decimal." -"ROUND_HALF_EVEN`, and various others." +":attr:`~decimal.Context.rounding` specifies the rounding mode. " +"The :mod:`decimal` module has constants for the various " +"possibilities: :const:`~decimal.ROUND_DOWN`, :const:`~decimal.ROUND_CEILING`, :const:`~decimal.ROUND_HALF_EVEN`, " +"and various others." msgstr "" msgid "" @@ -852,10 +855,11 @@ msgid "" msgstr "" msgid "" -"There's a thread-local default context available by calling :func:`~decimal." -"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::" +"There's a thread-local default context available by " +"calling :func:`~decimal.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 "" msgid "" @@ -887,8 +891,8 @@ msgstr "" msgid "" "The :class:`~decimal.Context` instance also has various methods for " -"formatting numbers such as :meth:`~decimal.Context.to_eng_string` and :meth:" -"`~decimal.Context.to_sci_string`." +"formatting numbers such as :meth:`~decimal.Context.to_eng_string` " +"and :meth:`~decimal.Context.to_sci_string`." msgstr "" msgid "" @@ -998,17 +1002,17 @@ msgid "" msgstr "" msgid "" -"``PyOS_ascii_formatd(buffer, buf_len, format, d)`` converts a :c:expr:" -"`double` to an ASCII string." +"``PyOS_ascii_formatd(buffer, buf_len, format, d)`` converts " +"a :c:expr:`double` to an ASCII string." msgstr "" msgid "" "The code for these functions came from the GLib library (`https://developer-" "old.gnome.org/glib/2.26/ `__), 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." +"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 "" msgid ":pep:`331` - Locale-Independent Float/String Conversions" @@ -1047,21 +1051,21 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" -"The string methods :meth:`~str.ljust`, :meth:`~str.rjust`, and :meth:`~str." -"center` now take an optional argument for specifying a fill character other " -"than a space. (Contributed by Raymond Hettinger.)" +"The string methods :meth:`~str.ljust`, :meth:`~str.rjust`, " +"and :meth:`~str.center` now take an optional argument for specifying a fill " +"character other than a space. (Contributed by Raymond Hettinger.)" msgstr "" msgid "" -"Strings also gained an :meth:`~str.rsplit` method that works like the :meth:" -"`~str.split` method but splits from the end of the string. (Contributed by " -"Sean Reifschneider.) ::" +"Strings also gained an :meth:`~str.rsplit` method that works like " +"the :meth:`~str.split` method but splits from the end of the string. " +"(Contributed by Sean Reifschneider.) ::" msgstr "" msgid "" @@ -1072,17 +1076,17 @@ msgid "" msgstr "" msgid "" -"Three keyword parameters, *cmp*, *key*, and *reverse*, were added to the :" -"meth:`~list.sort` method of lists. These parameters make some common usages " -"of :meth:`~list.sort` simpler. All of these parameters are optional." +"Three keyword parameters, *cmp*, *key*, and *reverse*, were added to " +"the :meth:`~list.sort` method of lists. These parameters make some common " +"usages of :meth:`~list.sort` simpler. All of these parameters are optional." msgstr "" 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:" -"`~list.sort`." +"Previously this was the only parameter that could be provided " +"to :meth:`~list.sort`." msgstr "" msgid "" @@ -1128,8 +1132,8 @@ msgstr "" 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)``." +"true, the list will be sorted into reverse order. Instead of ``L.sort(); " +"L.reverse()``, you can now write ``L.sort(reverse=True)``." msgstr "" msgid "" @@ -1183,8 +1187,8 @@ msgid "(Contributed by Raymond Hettinger.)" msgstr "" msgid "" -"Integer operations will no longer trigger an :exc:`!OverflowWarning`. The :" -"exc:`!OverflowWarning` warning will disappear in Python 2.5." +"Integer operations will no longer trigger an :exc:`!OverflowWarning`. " +"The :exc:`!OverflowWarning` warning will disappear in Python 2.5." msgstr "" msgid "" @@ -1203,9 +1207,9 @@ msgstr "" 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::" +"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 "" msgid "" @@ -1236,33 +1240,35 @@ msgstr "" 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:`~dict.keys`, :meth:`~dict." -"values`, :meth:`~dict.items`, :meth:`!iterkeys`, :meth:`!itervalues`, and :" -"meth:`!iteritems`. (Contributed by Raymond Hettinger.)" +"resulting in performance boosts " +"for :meth:`~dict.keys`, :meth:`~dict.values`, :meth:`~dict.items`, :meth:`!" +"iterkeys`, :meth:`!itervalues`, and :meth:`!iteritems`. (Contributed by " +"Raymond Hettinger.)" msgstr "" 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.)" +"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 "" 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:" -"`~object.__len__` method. (Contributed by Raymond Hettinger.)" +"now run several times faster with non-sequence arguments that supply " +"a :meth:`~object.__len__` method. (Contributed by Raymond Hettinger.)" msgstr "" 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.)" +"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 "" msgid "" @@ -1333,12 +1339,10 @@ msgstr "" msgid "Chinese (ROC): big5, cp950" msgstr "" -msgid "Japanese: cp932, euc-jis-2004, euc-jp, euc-jisx0213, iso-2022-jp," -msgstr "" - 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" +"Japanese: cp932, euc-jis-2004, euc-jp, euc-jisx0213, iso-2022-jp, 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 "" msgid "Korean: cp949, euc-kr, johab, iso-2022-kr" @@ -1352,17 +1356,17 @@ msgstr "" msgid "" "The UTF-8 and UTF-16 codecs now cope better with receiving partial input. " "Previously the :class:`~codecs.StreamReader` class would try to read more " -"data, making it impossible to resume decoding from the stream. The :meth:" -"`~codecs.StreamReader.read` method will now return as much data as it can " -"and future calls will resume decoding where previous ones left off. " +"data, making it impossible to resume decoding from the stream. " +"The :meth:`~codecs.StreamReader.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 "" msgid "" "There is a new :mod:`collections` module for various specialized collection " -"datatypes. Currently it contains just one type, :class:`~collections." -"deque`, a double-ended queue that supports efficiently adding and removing " -"elements from either end::" +"datatypes. Currently it contains just one " +"type, :class:`~collections.deque`, a double-ended queue that supports " +"efficiently adding and removing elements from either end::" msgstr "" msgid "" @@ -1391,17 +1395,17 @@ msgstr "" msgid "" "The :mod:`ConfigParser ` classes have been enhanced slightly. " "The :meth:`~configparser.ConfigParser.read` method now returns a list of the " -"files that were successfully parsed, and the :meth:`~configparser." -"ConfigParser.set` method raises :exc:`TypeError` if passed a *value* " -"argument that isn't a string. (Contributed by John Belmonte and David " -"Goodger.)" +"files that were successfully parsed, and " +"the :meth:`~configparser.ConfigParser.set` method raises :exc:`TypeError` if " +"passed a *value* argument that isn't a string. (Contributed by John " +"Belmonte and David Goodger.)" msgstr "" msgid "" -"The :mod:`curses` module now supports the ncurses extension :func:`~curses." -"use_default_colors`. On platforms where the terminal supports transparency, " -"this makes it possible to use a transparent background. (Contributed by Jörg " -"Lehmann.)" +"The :mod:`curses` module now supports the ncurses " +"extension :func:`~curses.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 "" msgid "" @@ -1440,8 +1444,8 @@ msgstr "" msgid "" "The :mod:`imaplib` module now supports IMAP's THREAD command (contributed by " -"Yves Dionne) and new :meth:`~imaplib.IMAP4.deleteacl` and :meth:`~imaplib." -"IMAP4.myrights` methods (contributed by Arnaud Mazin)." +"Yves Dionne) and new :meth:`~imaplib.IMAP4.deleteacl` " +"and :meth:`~imaplib.IMAP4.myrights` methods (contributed by Arnaud Mazin)." msgstr "" msgid "" @@ -1534,18 +1538,18 @@ msgid "" msgstr "" msgid "" -"A number of functions were added to the :mod:`locale` module, such as :func:" -"`~locale.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.)" +"A number of functions were added to the :mod:`locale` module, such " +"as :func:`~locale.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 "" msgid "" -"Some keyword arguments were added to the :mod:`logging` package's :func:" -"`~logging.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::" +"Some keyword arguments were added to the :mod:`logging` " +"package's :func:`~logging.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 "" msgid "" @@ -1557,13 +1561,13 @@ msgstr "" msgid "" "Other additions to the :mod:`logging` package include a ``log(level, msg)`` " -"convenience method, as well as a :class:`~logging.handlers." -"TimedRotatingFileHandler` class that rotates its log files at a timed " -"interval. The module already had :class:`~logging.handlers." -"RotatingFileHandler`, which rotated logs once the file exceeded a certain " -"size. Both classes derive from a new :class:`~logging.handlers." -"BaseRotatingHandler` class that can be used to implement other rotating " -"handlers." +"convenience method, as well as " +"a :class:`~logging.handlers.TimedRotatingFileHandler` class that rotates its " +"log files at a timed interval. The module already " +"had :class:`~logging.handlers.RotatingFileHandler`, which rotated logs once " +"the file exceeded a certain size. Both classes derive from a " +"new :class:`~logging.handlers.BaseRotatingHandler` class that can be used to " +"implement other rotating handlers." msgstr "" msgid "(Changes implemented by Vinay Sajip.)" @@ -1587,8 +1591,8 @@ 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::" +"or item; these callables make excellent data extractors when used " +"with :func:`map` or :func:`sorted`. For example::" msgstr "" msgid "" @@ -1611,11 +1615,11 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -1650,10 +1654,11 @@ msgstr "" msgid "" "The :mod:`random` module has a new method called ``getrandbits(N)`` that " -"returns a long integer *N* bits in length. The existing :meth:`~random." -"randrange` method now uses :meth:`~random.getrandbits` where appropriate, " -"making generation of arbitrarily large random numbers more efficient. " -"(Contributed by Raymond Hettinger.)" +"returns a long integer *N* bits in length. The " +"existing :meth:`~random.randrange` method now " +"uses :meth:`~random.getrandbits` where appropriate, making generation of " +"arbitrarily large random numbers more efficient. (Contributed by Raymond " +"Hettinger.)" msgstr "" msgid "" @@ -1688,10 +1693,10 @@ msgid "" msgstr "" msgid "" -"Two new functions were added to the :mod:`socket` module. :func:`~socket." -"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.)" +"Two new functions were added to the :mod:`socket` " +"module. :func:`~socket.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 "" msgid "" @@ -1722,9 +1727,9 @@ msgstr "" msgid "" "Other threads can assign and retrieve their own values for the :attr:`!" -"number` and :attr:`!url` attributes. You can subclass :class:`~threading." -"local` to initialize attributes or to add methods. (Contributed by Jim " -"Fulton.)" +"number` and :attr:`!url` attributes. You can " +"subclass :class:`~threading.local` to initialize attributes or to add " +"methods. (Contributed by Jim Fulton.)" msgstr "" msgid "" @@ -1771,9 +1776,10 @@ msgid "" msgstr "" msgid "" -":mod:`urllib2 ` has been changed to interact with :mod:" -"`cookielib `: :class:`~urllib.request.HTTPCookieProcessor` " -"manages a cookie jar that is used when accessing URLs." +":mod:`urllib2 ` has been changed to interact " +"with :mod:`cookielib " +"`: :class:`~urllib.request.HTTPCookieProcessor` manages a " +"cookie jar that is used when accessing URLs." msgstr "" msgid "This module was contributed by John J. Lee." @@ -1784,9 +1790,9 @@ msgstr "" 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" +"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 "" msgid "" @@ -1834,11 +1840,11 @@ msgid "" msgstr "" msgid "" -":class:`~doctest.DocTestRunner` uses an instance of the :class:`~doctest." -"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:`~doctest." -"OutputChecker`." +":class:`~doctest.DocTestRunner` uses an instance of " +"the :class:`~doctest.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:`~doctest.OutputChecker`." msgstr "" msgid "" @@ -1869,9 +1875,9 @@ msgstr "" 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::" +"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 "" msgid "" @@ -1948,9 +1954,9 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1962,14 +1968,14 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -2006,10 +2012,10 @@ msgid "" msgstr "" msgid "" -"You can no longer compare the :class:`~datetime.date` and :class:`~datetime." -"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`." +"You can no longer compare the :class:`~datetime.date` " +"and :class:`~datetime.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 "" msgid "" @@ -2045,8 +2051,8 @@ msgstr "" msgid "" "The :func:`signal.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:" -"`~signal.SIGKILL` signal." +"silently. For example, you can no longer set a handler on " +"the :const:`~signal.SIGKILL` signal." msgstr "" msgid "Acknowledgements" diff --git a/whatsnew/2.5.po b/whatsnew/2.5.po index 04a11b3..6a6d534 100644 --- a/whatsnew/2.5.po +++ b/whatsnew/2.5.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,9 +41,9 @@ 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." -"ElementTree`), the SQLite database module (:mod:`sqlite3`), and the :mod:" -"`ctypes` module for calling C functions." +"New modules include ElementTree for XML processing " +"(:mod:`xml.etree.ElementTree`), the SQLite database module (:mod:`sqlite3`), " +"and the :mod:`ctypes` module for calling C functions." msgstr "" msgid "" @@ -54,10 +54,10 @@ msgid "" "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." +"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 "" msgid "" @@ -359,17 +359,17 @@ msgid "" msgstr "" msgid "" -"This defines a package named ``pkg`` containing the ``pkg.main`` and ``pkg." -"string`` submodules." +"This defines a package named ``pkg`` containing the ``pkg.main`` and " +"``pkg.string`` submodules." msgstr "" 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 ``pkg." -"string`` module, and that module is bound to the name ``string`` in the " -"``pkg.main`` module's namespace." +"finds :file:`pkg/string.py`, imports the contents of that file as the " +"``pkg.string`` module, and that module is bound to the name ``string`` in " +"the ``pkg.main`` module's namespace." msgstr "" msgid "" @@ -457,11 +457,11 @@ msgstr "" 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." +"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 "" msgid ":pep:`338` - Executing modules as scripts" @@ -575,8 +575,8 @@ msgid "" msgstr "" 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-" +"(: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``.)" @@ -585,8 +585,8 @@ msgstr "" 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`." +"the specified *value*. If the regular :meth:`next` method is called, " +"the :keyword:`!yield` returns :const:`None`." msgstr "" msgid "" @@ -647,18 +647,18 @@ msgstr "" msgid "" ":meth:`~generator.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:`~generator.close` will also be called by Python's garbage collector " -"when the generator is garbage-collected." +"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:`~generator.close` will also be called by Python's garbage " +"collector when the generator is garbage-collected." msgstr "" 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`." +"suggest using a ``try: ... finally:`` suite instead of " +"catching :exc:`GeneratorExit`." msgstr "" msgid "" @@ -749,8 +749,8 @@ msgstr "" msgid "" "The expression is evaluated, and it should result in an object that supports " -"the context management protocol (that is, has :meth:`~object.__enter__` and :" -"meth:`~object.__exit__` methods." +"the context management protocol (that is, has :meth:`~object.__enter__` " +"and :meth:`~object.__exit__` methods." msgstr "" msgid "" @@ -761,9 +761,9 @@ msgid "" msgstr "" msgid "" -"After execution of the *with-block* is finished, the object's :meth:`~object." -"__exit__` method is called, even if the block raised an exception, and can " -"therefore run clean-up code." +"After execution of the *with-block* is finished, the " +"object's :meth:`~object.__exit__` method is called, even if the block raised " +"an exception, and can therefore run clean-up code." msgstr "" msgid "" @@ -797,8 +797,8 @@ msgid "" msgstr "" msgid "" -"In this case, *f* is the same object created by :func:`open`, because :meth:" -"`~object.__enter__` returns *self*." +"In this case, *f* is the same object created by :func:`open`, " +"because :meth:`~object.__enter__` returns *self*." msgstr "" msgid "" @@ -854,8 +854,8 @@ msgstr "" msgid "" "The expression is evaluated and should result in an object called a " -"\"context manager\". The context manager must have :meth:`~object." -"__enter__` and :meth:`~object.__exit__` methods." +"\"context manager\". The context manager must " +"have :meth:`~object.__enter__` and :meth:`~object.__exit__` methods." msgstr "" msgid "" @@ -869,12 +869,12 @@ msgstr "" 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." +"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 "" msgid "" @@ -981,13 +981,13 @@ msgstr "" msgid "" "The decorator is called :deco:`~contextlib.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:`~object.__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:" -"`~object.__exit__` method. Any exception raised in the block will be raised " -"by the :keyword:`!yield` statement." +"generator should yield exactly one value. The code up to " +"the :keyword:`yield` will be executed as the :meth:`~object.__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:`~object.__exit__` method. Any exception raised in the block will " +"be raised by the :keyword:`!yield` statement." msgstr "" msgid "" @@ -1080,12 +1080,12 @@ msgstr "" 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::" +"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 "" msgid "" @@ -1153,9 +1153,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -1172,18 +1172,20 @@ msgstr "" 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`." +"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 "" 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:expr:`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`." +"new conversion code, ``n``, " +"for :c:type:`Py_ssize_t`. :c:func:`PyArg_ParseTuple`'s ``s#`` and ``t#`` " +"still output :c:expr:`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 "" msgid "" @@ -1231,8 +1233,8 @@ msgstr "" 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." +"interpreter will check that the type returned is correct, and raises " +"a :exc:`TypeError` if this requirement isn't met." msgstr "" msgid "" @@ -1347,11 +1349,11 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -1413,12 +1415,12 @@ 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.)" +"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 "" msgid "" @@ -1473,11 +1475,11 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1501,8 +1503,8 @@ msgid "" "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.)" +"iteration and these methods will now trigger a :exc:`ValueError` from " +"the :meth:`!read\\*` method. (Implemented by Thomas Wouters.)" msgstr "" msgid "" @@ -1513,8 +1515,9 @@ msgstr "" 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.)" +"allocator functions instead of the system's :c:func:`malloc` " +"and :c:func:`free`. (Contributed by Jack Diederich at the NeedForSpeed " +"sprint.)" msgstr "" msgid "" @@ -1564,25 +1567,24 @@ msgid "" msgstr "" msgid "" -"The :mod:`codecs` module gained support for incremental codecs. The :func:" -"`codecs.lookup` function now returns a :class:`~codecs.CodecInfo` instance " -"instead of a tuple. :class:`~codecs.CodecInfo` instances behave like a 4-" -"tuple to preserve backward compatibility but also have the attributes :attr:" -"`~codecs.CodecInfo.encode`, :attr:`~codecs.CodecInfo.decode`, :attr:`~codecs." -"CodecInfo.incrementalencoder`, :attr:`~codecs.CodecInfo." -"incrementaldecoder`, :attr:`~codecs.CodecInfo.streamwriter`, and :attr:" -"`~codecs.CodecInfo.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.)" +"The :mod:`codecs` module gained support for incremental codecs. " +"The :func:`codecs.lookup` function now returns a :class:`~codecs.CodecInfo` " +"instance instead of a tuple. :class:`~codecs.CodecInfo` instances behave " +"like a 4-tuple to preserve backward compatibility but also have the " +"attributes :attr:`~codecs.CodecInfo.encode`, :attr:`~codecs.CodecInfo.decode`, :attr:`~codecs.CodecInfo.incrementalencoder`, :attr:`~codecs.CodecInfo.incrementaldecoder`, :attr:`~codecs.CodecInfo.streamwriter`, " +"and :attr:`~codecs.CodecInfo.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 "" msgid "" -"The :mod:`collections` module gained a new type, :class:`~collections." -"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." +"The :mod:`collections` module gained a new " +"type, :class:`~collections.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 "" msgid "" @@ -1620,10 +1622,11 @@ msgid "(Contributed by Guido van Rossum.)" msgstr "" msgid "" -"The :class:`~collections.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.)" +"The :class:`~collections.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 "" msgid "" @@ -1652,13 +1655,13 @@ msgstr "" 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:`~csv.reader` class now has " -"a :attr:`~csv.csvreader.line_num` attribute that counts the number of " -"physical lines read from the source; records can span multiple physical " -"lines, so :attr:`~csv.csvreader.line_num` is not the same as the number of " -"records read." +"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:`~csv.reader` " +"class now has a :attr:`~csv.csvreader.line_num` attribute that counts the " +"number of physical lines read from the source; records can span multiple " +"physical lines, so :attr:`~csv.csvreader.line_num` is not the same as the " +"number of records read." msgstr "" msgid "" @@ -1690,8 +1693,8 @@ msgid "" msgstr "" msgid "" -"The :meth:`difflib.SequenceMatcher.get_matching_blocks` method in the :mod:" -"`difflib` module now guarantees to return a minimal list of blocks " +"The :meth:`difflib.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.)" @@ -1718,12 +1721,12 @@ msgstr "" 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.FileInput` object's " -"new :meth:`~fileinput.fileno` returns the file descriptor for the currently " -"opened file. (Contributed by Georg Brandl.)" +"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.FileInput` " +"object's new :meth:`~fileinput.fileno` returns the file descriptor for the " +"currently opened file. (Contributed by Georg Brandl.)" msgstr "" msgid "" @@ -1737,10 +1740,10 @@ msgid "" msgstr "" msgid "" -"The :func:`~heapq.nsmallest` and :func:`~heapq.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:`~list." -"sort` methods. For example::" +"The :func:`~heapq.nsmallest` and :func:`~heapq.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:`~list.sort` methods. For example::" msgstr "" msgid "" @@ -1768,8 +1771,8 @@ msgstr "" msgid "" "The :func:`format` function in the :mod:`locale` module has been modified " -"and two new functions were added, :func:`~locale.format_string` and :func:" -"`~locale.currency`." +"and two new functions were added, :func:`~locale.format_string` " +"and :func:`~locale.currency`." msgstr "" msgid "" @@ -1782,9 +1785,9 @@ msgid "" msgstr "" msgid "" -"To format strings with multiple %char specifiers, use the new :func:`~locale." -"format_string` function that works like :func:`format` but also supports " -"mixing %char specifiers with arbitrary text." +"To format strings with multiple %char specifiers, use the " +"new :func:`~locale.format_string` function that works like :func:`format` " +"but also supports mixing %char specifiers with arbitrary text." msgstr "" msgid "" @@ -1798,12 +1801,12 @@ msgstr "" 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:`~mailbox.mbox`, :class:`~mailbox.MH`, and :class:`~mailbox." -"Maildir` are used to read mailboxes, and have an ``add(message)`` method to " -"add messages, ``remove(key)`` to remove messages, and :meth:`~mailbox." -"Mailbox.lock`/:meth:`~mailbox.Mailbox.unlock` to lock/unlock the mailbox. " -"The following example converts a maildir-format mailbox into an mbox-format " -"one::" +"include :class:`~mailbox.mbox`, :class:`~mailbox.MH`, " +"and :class:`~mailbox.Maildir` are used to read mailboxes, and have an " +"``add(message)`` method to add messages, ``remove(key)`` to remove messages, " +"and :meth:`~mailbox.Mailbox.lock`/:meth:`~mailbox.Mailbox.unlock` to lock/" +"unlock the mailbox. The following example converts a maildir-format mailbox " +"into an mbox-format one::" msgstr "" msgid "" @@ -1824,9 +1827,10 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1836,54 +1840,55 @@ msgid "" msgstr "" msgid "" -"The :mod:`operator` module's :func:`~operator.itemgetter` and :func:" -"`~operator.attrgetter` functions now support multiple fields. A call such " -"as ``operator.attrgetter('a', 'b')`` will return a function that retrieves " -"the ``a`` and ``b`` attributes. Combining this new feature with the :meth:" -"`~list.sort` method's ``key`` parameter lets you easily sort lists using " -"multiple fields. (Contributed by Raymond Hettinger.)" +"The :mod:`operator` module's :func:`~operator.itemgetter` " +"and :func:`~operator.attrgetter` functions now support multiple fields. A " +"call such as ``operator.attrgetter('a', 'b')`` will return a function that " +"retrieves the ``a`` and ``b`` attributes. Combining this new feature with " +"the :meth:`~list.sort` method's ``key`` parameter lets you easily sort " +"lists using multiple fields. (Contributed by Raymond Hettinger.)" msgstr "" msgid "" "The :mod:`optparse` module was updated to version 1.5.1 of the Optik " "library. The :class:`~optparse.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. " +"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 "" 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.)" +"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 "" msgid "" -"Constants named :const:`os.SEEK_SET`, :const:`os.SEEK_CUR`, and :const:`os." -"SEEK_END` have been added; these are the parameters to the :func:`os.lseek` " -"function. Two new constants for locking are :const:`os.O_SHLOCK` and :const:" -"`os.O_EXLOCK`." +"Constants named :const:`os.SEEK_SET`, :const:`os.SEEK_CUR`, " +"and :const:`os.SEEK_END` have been added; these are the parameters to " +"the :func:`os.lseek` function. Two new constants for locking " +"are :const:`os.O_SHLOCK` and :const:`os.O_EXLOCK`." msgstr "" msgid "" "Two new functions, :func:`~os.wait3` and :func:`~os.wait4`, were added. " "They're similar the :func:`~os.waitpid` function which waits for a child " "process to exit and returns a tuple of the process ID and its exit status, " -"but :func:`~os.wait3` and :func:`~os.wait4` return additional information. :" -"func:`~os.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.)" +"but :func:`~os.wait3` and :func:`~os.wait4` return additional " +"information. :func:`~os.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 "" msgid "" "On FreeBSD, the :func:`os.stat` function now returns times with nanosecond " "resolution, and the returned object now has :attr:`~os.stat_result.st_gen` " -"and :attr:`~os.stat_result.st_birthtime`. The :attr:`~os.stat_result." -"st_flags` attribute is also available, if the platform supports it. " -"(Contributed by Antti Louko and Diego Pettenò.)" +"and :attr:`~os.stat_result.st_birthtime`. " +"The :attr:`~os.stat_result.st_flags` attribute is also available, if the " +"platform supports it. (Contributed by Antti Louko and Diego Pettenò.)" msgstr "" msgid "" @@ -1910,9 +1915,9 @@ msgid "" msgstr "" 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 " +"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 " @@ -1928,9 +1933,9 @@ msgid "" "The :class:`~queue.Queue` class provided by the :mod:`queue` module gained " "two new methods. :meth:`~queue.Queue.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:`~queue.Queue." -"task_done`, to signal that processing for an item has been completed. " -"(Contributed by Raymond Hettinger.)" +"completed. Worker threads call the other new " +"method, :meth:`~queue.Queue.task_done`, to signal that processing for an " +"item has been completed. (Contributed by Raymond Hettinger.)" msgstr "" msgid "" @@ -1947,27 +1952,27 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" "The :mod:`SimpleXMLRPCServer ` and :mod:`DocXMLRPCServer " -"` classes now have a :attr:`~xmlrpc.server." -"SimpleXMLRPCRequestHandler.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:`~xmlrpc.server." -"SimpleXMLRPCRequestHandler.rpc_paths` to ``None`` or an empty tuple " -"disables this path checking." +"` classes now have " +"a :attr:`~xmlrpc.server.SimpleXMLRPCRequestHandler.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:`~xmlrpc.server.SimpleXMLRPCRequestHandler.rpc_paths` to " +"``None`` or an empty tuple disables this path checking." msgstr "" 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 " +"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 "" @@ -1991,13 +1996,14 @@ msgid "" msgstr "" msgid "" -"The :mod:`struct` is now faster because it compiles format strings into :" -"class:`~struct.Struct` objects with :meth:`~struct.Struct.pack` and :meth:" -"`~struct.Struct.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:`~struct.pack` and :func:`~struct.unpack` " -"functions; they'll create :class:`~struct.Struct` objects and cache them. " -"Or you can use :class:`~struct.Struct` instances directly::" +"The :mod:`struct` is now faster because it compiles format strings " +"into :class:`~struct.Struct` objects with :meth:`~struct.Struct.pack` " +"and :meth:`~struct.Struct.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:`~struct.pack` " +"and :func:`~struct.unpack` functions; they'll " +"create :class:`~struct.Struct` objects and cache them. Or you can " +"use :class:`~struct.Struct` instances directly::" msgstr "" msgid "" @@ -2029,10 +2035,10 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -2043,9 +2049,9 @@ msgid "" msgstr "" msgid "" -"The :class:`~tarfile.TarFile` class in the :mod:`tarfile` module now has an :" -"meth:`~tarfile.TarFile.extractall` method that extracts all members from the " -"archive into the current working directory. It's also possible to set a " +"The :class:`~tarfile.TarFile` class in the :mod:`tarfile` module now has " +"an :meth:`~tarfile.TarFile.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 "" @@ -2073,11 +2079,12 @@ 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." -"UUID` class and functions named :func:`~uuid.uuid1`, :func:`~uuid.uuid3`, :" -"func:`~uuid.uuid4`, and :func:`~uuid.uuid5` to generate different versions " -"of UUID. (Version 2 UUIDs are not specified in :rfc:`4122` and are not " -"supported by this module.) ::" +"system properties, or purely randomly. This module contains " +"a :class:`~uuid.UUID` class and functions " +"named :func:`~uuid.uuid1`, :func:`~uuid.uuid3`, :func:`~uuid.uuid4`, " +"and :func:`~uuid.uuid5` to generate different versions of UUID. (Version 2 " +"UUIDs are not specified in :rfc:`4122` and are not supported by this " +"module.) ::" msgstr "" msgid "" @@ -2103,34 +2110,36 @@ msgid "(Contributed by Ka-Ping Yee.)" msgstr "" msgid "" -"The :mod:`weakref` module's :class:`~weakref.WeakKeyDictionary` and :class:" -"`~weakref.WeakValueDictionary` types gained new methods for iterating over " -"the weak references contained in the dictionary. :meth:`!iterkeyrefs` and :" -"meth:`~weakref.WeakKeyDictionary.keyrefs` methods were added to :class:" -"`~weakref.WeakKeyDictionary`, and :meth:`!itervaluerefs` and :meth:`~weakref." -"WeakValueDictionary.valuerefs` were added to :class:`~weakref." -"WeakValueDictionary`. (Contributed by Fred L. Drake, Jr.)" +"The :mod:`weakref` module's :class:`~weakref.WeakKeyDictionary` " +"and :class:`~weakref.WeakValueDictionary` types gained new methods for " +"iterating over the weak references contained in the dictionary. :meth:`!" +"iterkeyrefs` and :meth:`~weakref.WeakKeyDictionary.keyrefs` methods were " +"added to :class:`~weakref.WeakKeyDictionary`, and :meth:`!itervaluerefs` " +"and :meth:`~weakref.WeakValueDictionary.valuerefs` were added " +"to :class:`~weakref.WeakValueDictionary`. (Contributed by Fred L. Drake, " +"Jr.)" msgstr "" 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:`~webbrowser.open_new` and :func:`~webbrowser." -"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 "" - -msgid "" -"The :mod:`xmlrpclib ` module now supports returning :class:" -"`~datetime.datetime` objects for the XML-RPC date type. Supply " -"``use_datetime=True`` to the :func:`~xmlrpc.client.loads` function or the :" -"class:`!Unmarshaller` class to enable this feature. (Contributed by Skip " -"Montanaro.)" +"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:`~webbrowser.open_new` " +"and :func:`~webbrowser.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 "" + +msgid "" +"The :mod:`xmlrpclib ` module now supports " +"returning :class:`~datetime.datetime` objects for the XML-RPC date type. " +"Supply ``use_datetime=True`` to the :func:`~xmlrpc.client.loads` function " +"or the :class:`!Unmarshaller` class to enable this feature. (Contributed by " +"Skip Montanaro.)" msgstr "" msgid "" @@ -2158,10 +2167,10 @@ msgid "" msgstr "" msgid "" -"To load a shared library or DLL, you must create an instance of the :class:" -"`~ctypes.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:`~ctypes.CDLL` object. ::" +"To load a shared library or DLL, you must create an instance of " +"the :class:`~ctypes.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:`~ctypes.CDLL` object. ::" msgstr "" msgid "" @@ -2172,15 +2181,15 @@ msgid "" msgstr "" msgid "" -"Type constructors for the various C types are provided: :func:`~ctypes." -"c_int`, :func:`~ctypes.c_float`, :func:`~ctypes.c_double`, :func:`~ctypes." -"c_char_p` (equivalent to :c:expr:`char \\*`), and so forth. Unlike Python's " -"types, the C versions are all mutable; you can assign to their :attr:" -"`~ctypes._SimpleCData.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.)" +"Type constructors for the various C types are " +"provided: :func:`~ctypes.c_int`, :func:`~ctypes.c_float`, :func:`~ctypes.c_double`, :func:`~ctypes.c_char_p` " +"(equivalent to :c:expr:`char \\*`), and so forth. Unlike Python's types, " +"the C versions are all mutable; you can assign to " +"their :attr:`~ctypes._SimpleCData.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 "" msgid "" @@ -2197,9 +2206,9 @@ msgid "" msgstr "" msgid "" -"C functions are assumed to return integers, but you can set the :attr:" -"`~ctypes._CFuncPtr.restype` attribute of the function object to change " -"this::" +"C functions are assumed to return integers, but you can set " +"the :attr:`~ctypes._CFuncPtr.restype` attribute of the function object to " +"change this::" msgstr "" msgid "" @@ -2211,12 +2220,12 @@ msgid "" msgstr "" 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:`~ctypes.py_object` type " -"constructor that will create a :c:expr:`PyObject *` pointer. A simple " -"usage::" +":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:`~ctypes.py_object` type constructor that will create " +"a :c:expr:`PyObject *` pointer. A simple usage::" msgstr "" msgid "" @@ -2235,10 +2244,10 @@ msgstr "" 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." +"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 "" msgid "" @@ -2271,18 +2280,19 @@ msgstr "" msgid "" "ElementTree represents an XML document as a tree of element nodes. The text " -"content of the document is stored as the :attr:`~xml.etree.ElementTree." -"Element.text` and :attr:`~xml.etree.ElementTree.Element.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`.)" +"content of the document is stored as " +"the :attr:`~xml.etree.ElementTree.Element.text` " +"and :attr:`~xml.etree.ElementTree.Element.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 "" msgid "" -"The most commonly used parsing function is :func:`~xml.etree.ElementTree." -"parse`, that takes either a string (assumed to contain a filename) or a file-" -"like object and returns an :class:`~xml.etree.ElementTree.ElementTree` " -"instance::" +"The most commonly used parsing function " +"is :func:`~xml.etree.ElementTree.parse`, that takes either a string (assumed " +"to contain a filename) or a file-like object and returns " +"an :class:`~xml.etree.ElementTree.ElementTree` instance::" msgstr "" msgid "" @@ -2401,9 +2411,9 @@ msgid "Deletes attribute *name*." msgstr "" msgid "" -"Comments and processing instructions are also represented as :class:`~xml." -"etree.ElementTree.Element` nodes. To check if a node is a comment or " -"processing instructions::" +"Comments and processing instructions are also represented " +"as :class:`~xml.etree.ElementTree.Element` nodes. To check if a node is a " +"comment or processing instructions::" msgstr "" msgid "" @@ -2414,9 +2424,10 @@ msgid "" msgstr "" msgid "" -"To generate XML output, you should call the :meth:`xml.etree.ElementTree." -"ElementTree.write` method. Like :func:`~xml.etree.ElementTree.parse`, it can " -"take either a string or a file-like object::" +"To generate XML output, you should call " +"the :meth:`xml.etree.ElementTree.ElementTree.write` method. " +"Like :func:`~xml.etree.ElementTree.parse`, it can take either a string or a " +"file-like object::" msgstr "" msgid "" @@ -2498,8 +2509,8 @@ 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:`~hashlib.hash.digest` and :meth:`~hashlib.hash.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." +"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 "" msgid "The documentation for the :mod:`hashlib` module." @@ -2538,8 +2549,8 @@ msgstr "" msgid "" "To use the module, you must first create a :class:`~sqlite3.Connection` " -"object that represents the database. Here the data will be stored in the :" -"file:`/tmp/example` file::" +"object that represents the database. Here the data will be stored in " +"the :file:`/tmp/example` file::" msgstr "" msgid "conn = sqlite3.connect('/tmp/example')" @@ -2551,9 +2562,9 @@ msgid "" msgstr "" msgid "" -"Once you have a :class:`~sqlite3.Connection`, you can create a :class:" -"`~sqlite3.Cursor` object and call its :meth:`~sqlite3.Cursor.execute` " -"method to perform SQL commands::" +"Once you have a :class:`~sqlite3.Connection`, you can create " +"a :class:`~sqlite3.Cursor` object and call " +"its :meth:`~sqlite3.Cursor.execute` method to perform SQL commands::" msgstr "" msgid "" @@ -2579,9 +2590,9 @@ msgstr "" 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:`~sqlite3.Cursor." -"execute` method. (Other database modules may use a different placeholder, " -"such as ``%s`` or ``:1``.) For example::" +"values as the second argument to the " +"cursor's :meth:`~sqlite3.Cursor.execute` method. (Other database modules " +"may use a different placeholder, such as ``%s`` or ``:1``.) For example::" msgstr "" msgid "" @@ -2603,9 +2614,10 @@ msgstr "" msgid "" "To retrieve data after executing a SELECT statement, you can either treat " -"the cursor as an iterator, call the cursor's :meth:`~sqlite3.Cursor." -"fetchone` method to retrieve a single matching row, or call :meth:`~sqlite3." -"Cursor.fetchall` to get a list of the matching rows." +"the cursor as an iterator, call the " +"cursor's :meth:`~sqlite3.Cursor.fetchone` method to retrieve a single " +"matching row, or call :meth:`~sqlite3.Cursor.fetchall` to get a list of the " +"matching rows." msgstr "" msgid "This example uses the iterator form::" @@ -2657,9 +2669,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -2715,9 +2727,9 @@ msgstr "" 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:expr:" -"`int`. See the earlier section :ref:`pep-353` for a discussion of this " -"change." +"interpreter to use a :c:type:`Py_ssize_t` type definition instead " +"of :c:expr:`int`. See the earlier section :ref:`pep-353` for a discussion " +"of this change." msgstr "" msgid "" @@ -2728,9 +2740,9 @@ msgid "" msgstr "" 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::" +"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 "" msgid "" @@ -2745,13 +2757,13 @@ msgid "" msgstr "" 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 " +"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." @@ -2778,29 +2790,30 @@ msgstr "" 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." +"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 "" 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 ``PyMem`` function but freed " -"it with the ``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." +"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 " +"``PyMem`` function but freed it with the ``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 "" 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.)" +"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 "" msgid "" @@ -2812,14 +2825,15 @@ msgstr "" 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. :c:macro:" -"`Py_LOCAL` declares the function as returning a value of the specified " -"*type* and uses a fast-calling qualifier. :c:macro:`Py_LOCAL_INLINE` does " -"the same thing and also requests the function be inlined. If macro :c:macro:" -"`!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.)" +"current file so that a faster calling convention can be " +"used. :c:macro:`Py_LOCAL` declares the function as returning a value of the " +"specified *type* and uses a fast-calling " +"qualifier. :c:macro:`Py_LOCAL_INLINE` does the same thing and also requests " +"the function be inlined. If macro :c:macro:`!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 "" msgid "" @@ -2857,13 +2871,13 @@ msgid "Port-Specific Changes" msgstr "" msgid "" -"MacOS X (10.3 and higher): dynamic loading of modules now uses the :c:func:" -"`dlopen` function instead of MacOS-specific functions." +"MacOS X (10.3 and higher): dynamic loading of modules now uses " +"the :c:func:`dlopen` function instead of MacOS-specific functions." msgstr "" msgid "" -"MacOS X: an :option:`!--enable-universalsdk` switch was added to the :" -"program:`configure` script that compiles the interpreter as a universal " +"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 "" @@ -2891,8 +2905,9 @@ msgstr "" 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``." +"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 "" msgid "" @@ -2924,13 +2939,13 @@ msgid "" msgstr "" msgid "" -"Library: The :mod:`SimpleXMLRPCServer ` and :mod:" -"`DocXMLRPCServer ` classes now have a :attr:`~xmlrpc.server." -"SimpleXMLRPCRequestHandler.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:`~xmlrpc.server." -"SimpleXMLRPCRequestHandler.rpc_paths` to ``None`` or an empty tuple disables " -"this path checking." +"Library: The :mod:`SimpleXMLRPCServer ` " +"and :mod:`DocXMLRPCServer ` classes now have " +"a :attr:`~xmlrpc.server.SimpleXMLRPCRequestHandler.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:`~xmlrpc.server.SimpleXMLRPCRequestHandler.rpc_paths` to " +"``None`` or an empty tuple disables this path checking." msgstr "" msgid "" diff --git a/whatsnew/2.6.po b/whatsnew/2.6.po index d7a807e..f20a877 100644 --- a/whatsnew/2.6.po +++ b/whatsnew/2.6.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -42,8 +42,9 @@ msgid "" "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." +"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 "" msgid "" @@ -96,8 +97,8 @@ msgid "Alternate syntax for catching exceptions: ``except TypeError as exc``." msgstr "" msgid "" -"The addition of :func:`functools.reduce` as a synonym for the built-in :func:" -"`!reduce` function." +"The addition of :func:`functools.reduce` as a synonym for the built-" +"in :func:`!reduce` function." msgstr "" msgid "" @@ -113,15 +114,15 @@ 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`." +"switch is available to Python code as the boolean variable :data:`!" +"sys.py3kwarning`, and to C extension code as :c:data:`!Py_Py3kWarningFlag`." msgstr "" msgid "" -"The 3\\ *xxx* 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." +"The 3\\ *xxx* 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 "" msgid "Changes to the Development Process" @@ -149,8 +150,8 @@ msgid "" "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 " +"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 " @@ -170,8 +171,8 @@ 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 ``https://svn." -"python.org/view/tracker/importer/`` and may be useful to other projects " +"SourceForge; his scripts for this import operation are at ``https://" +"svn.python.org/view/tracker/importer/`` and may be useful to other projects " "wishing to move from SourceForge to Roundup." msgstr "" @@ -237,9 +238,9 @@ msgstr "" 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." +"dozen other projects (`listed on the Sphinx web site `__) have adopted Sphinx as their " +"documentation tool." msgstr "" msgid "`Documenting Python `__" @@ -293,8 +294,8 @@ msgstr "" msgid "" "The expression is evaluated, and it should result in an object that supports " -"the context management protocol (that is, has :meth:`~object.__enter__` and :" -"meth:`~object.__exit__` methods)." +"the context management protocol (that is, has :meth:`~object.__enter__` " +"and :meth:`~object.__exit__` methods)." msgstr "" msgid "" @@ -305,9 +306,9 @@ msgid "" msgstr "" msgid "" -"After execution of the *with-block* is finished, the object's :meth:`~object." -"__exit__` method is called, even if the block raised an exception, and can " -"therefore run clean-up code." +"After execution of the *with-block* is finished, the " +"object's :meth:`~object.__exit__` method is called, even if the block raised " +"an exception, and can therefore run clean-up code." msgstr "" msgid "" @@ -330,8 +331,8 @@ msgid "" msgstr "" msgid "" -"In this case, *f* is the same object created by :func:`open`, because :meth:" -"`~object.__enter__` returns *self*." +"In this case, *f* is the same object created by :func:`open`, " +"because :meth:`~object.__enter__` returns *self*." msgstr "" msgid "" @@ -387,8 +388,8 @@ msgstr "" msgid "" "The expression is evaluated and should result in an object called a " -"\"context manager\". The context manager must have :meth:`~object." -"__enter__` and :meth:`~object.__exit__` methods." +"\"context manager\". The context manager must " +"have :meth:`~object.__enter__` and :meth:`~object.__exit__` methods." msgstr "" msgid "" @@ -401,15 +402,15 @@ msgid "The code in *BLOCK* is executed." msgstr "" msgid "" -"If *BLOCK* raises an exception, the context manager's :meth:`~object." -"__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." +"If *BLOCK* raises an exception, the context " +"manager's :meth:`~object.__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 "" msgid "" @@ -445,8 +446,8 @@ msgstr "" 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::" +"or rolled back if there's an exception. Here's the basic interface " +"for :class:`!DatabaseConnection` that I'll assume::" msgstr "" msgid "" @@ -515,13 +516,13 @@ msgstr "" msgid "" "The decorator is called :deco:`~contextlib.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:`~object.__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:" -"`~object.__exit__` method. Any exception raised in the block will be raised " -"by the :keyword:`!yield` statement." +"generator should yield exactly one value. The code up to " +"the :keyword:`yield` will be executed as the :meth:`~object.__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:`~object.__exit__` method. Any exception raised in the block " +"will be raised by the :keyword:`!yield` statement." msgstr "" msgid "" @@ -671,14 +672,14 @@ msgid "" msgstr "" 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:" -"`~multiprocessing.Process`, which is passed a callable object and a " -"collection of arguments. The :meth:`~multiprocessing.Process.start` method " -"sets the callable running in a subprocess, after which you can call the :" -"meth:`~multiprocessing.Process.is_alive` method to check whether the " +"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:`~multiprocessing.Process`, which is passed a callable object and " +"a collection of arguments. The :meth:`~multiprocessing.Process.start` " +"method sets the callable running in a subprocess, after which you can call " +"the :meth:`~multiprocessing.Process.is_alive` method to check whether the " "subprocess is still running and the :meth:`~multiprocessing.Process.join` " "method to wait for the process to exit." msgstr "" @@ -731,13 +732,14 @@ msgid "" msgstr "" msgid "" -"Two other classes, :class:`~multiprocessing.pool.Pool` and :class:" -"`~multiprocessing.Manager`, provide higher-level interfaces. :class:" -"`~multiprocessing.pool.Pool` will create a fixed number of worker processes, " -"and requests can then be distributed to the workers by calling :meth:" -"`~multiprocessing.pool.Pool.apply` or :meth:`~multiprocessing.pool.Pool." -"apply_async` to add a single request, and :meth:`~multiprocessing.pool.Pool." -"map` or :meth:`~multiprocessing.pool.Pool.map_async` to add a number of " +"Two other classes, :class:`~multiprocessing.pool.Pool` " +"and :class:`~multiprocessing.Manager`, provide higher-level " +"interfaces. :class:`~multiprocessing.pool.Pool` will create a fixed number " +"of worker processes, and requests can then be distributed to the workers by " +"calling :meth:`~multiprocessing.pool.Pool.apply` " +"or :meth:`~multiprocessing.pool.Pool.apply_async` to add a single request, " +"and :meth:`~multiprocessing.pool.Pool.map` " +"or :meth:`~multiprocessing.pool.Pool.map_async` to add a number of " "requests. The following code uses a :class:`~multiprocessing.pool.Pool` to " "spread requests across 5 worker processes and retrieve a list of results::" msgstr "" @@ -773,11 +775,11 @@ msgid "" "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:" -"`~multiprocessing.Manager`'s methods also include :meth:`~multiprocessing." -"managers.SyncManager.Lock`, :meth:`~multiprocessing.managers.SyncManager." -"RLock`, and :meth:`~multiprocessing.managers.SyncManager.Semaphore` to " -"create shared locks.)" +"automatically, which doesn't matter in this " +"example. :class:`~multiprocessing.Manager`'s methods also " +"include :meth:`~multiprocessing.managers.SyncManager.Lock`, :meth:`~multiprocessing.managers.SyncManager.RLock`, " +"and :meth:`~multiprocessing.managers.SyncManager.Semaphore` to create shared " +"locks.)" msgstr "" msgid "" @@ -880,8 +882,8 @@ msgstr "" msgid "" ">>> import sys\n" -">>> print 'Platform: {0.platform}\\nPython version: {0.version}'." -"format(sys)\n" +">>> print 'Platform: {0.platform}\\nPython version: " +"{0.version}'.format(sys)\n" "Platform: darwin\n" "Python version: 2.6a1+ (trunk:61261M, Mar 5 2008, 20:29:41)\n" "[GCC 4.0.1 (Apple Computer, Inc. build 5367)]'\n" @@ -1148,11 +1150,12 @@ msgid "" msgstr "" 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::" +"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 "" msgid "" @@ -1200,27 +1203,27 @@ msgstr "" 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." +"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 "" 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." +"2.6, ``bytes([65, 66, 67])`` returns the 12-byte string representing " +"the :func:`str` of the list." msgstr "" 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." +"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 "" msgid "" @@ -1241,10 +1244,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -1266,11 +1268,11 @@ msgid "" msgstr "" msgid "" -"Byte arrays support most of the methods of string types, such as :meth:" -"`~bytearray.startswith`/:meth:`~bytearray.endswith`, :meth:`~bytearray." -"find`/:meth:`~bytearray.rfind`, and some of the methods of lists, such as :" -"meth:`~bytearray.append`, :meth:`~bytearray.pop`, and :meth:`~bytearray." -"reverse`." +"Byte arrays support most of the methods of string types, such " +"as :meth:`~bytearray.startswith`/:meth:`~bytearray.endswith`, :meth:`~bytearray.find`/:meth:`~bytearray.rfind`, " +"and some of the methods of lists, such " +"as :meth:`~bytearray.append`, :meth:`~bytearray.pop`, " +"and :meth:`~bytearray.reverse`." msgstr "" msgid "" @@ -1282,8 +1284,9 @@ msgid "" msgstr "" msgid "" -"There's also a corresponding C API, with :c:func:`PyByteArray_FromObject`, :" -"c:func:`PyByteArray_FromStringAndSize`, and various other functions." +"There's also a corresponding C API, " +"with :c:func:`PyByteArray_FromObject`, :c:func:`PyByteArray_FromStringAndSize`, " +"and various other functions." msgstr "" msgid ":pep:`3112` - Bytes literals in Python 3000" @@ -1298,10 +1301,10 @@ msgstr "" 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." +"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 "" msgid "" @@ -1310,13 +1313,13 @@ msgid "" msgstr "" msgid "" -":class:`~io.RawIOBase` defines raw I/O operations: :meth:`~io.RawIOBase." -"read`, :meth:`~io.RawIOBase.readinto`, :meth:`~io.RawIOBase.write`, :meth:" -"`~io.IOBase.seek`, :meth:`~io.IOBase.tell`, :meth:`~io.IOBase.truncate`, " +":class:`~io.RawIOBase` defines raw I/O " +"operations: :meth:`~io.RawIOBase.read`, :meth:`~io.RawIOBase.readinto`, :meth:`~io.RawIOBase.write`, :meth:`~io.IOBase.seek`, :meth:`~io.IOBase.tell`, :meth:`~io.IOBase.truncate`, " "and :meth:`~io.IOBase.close`. Most of the methods of this class will often " -"map to a single system call. There are also :meth:`~io.IOBase.readable`, :" -"meth:`~io.IOBase.writable`, and :meth:`~io.IOBase.seekable` methods for " -"determining what operations a given object will allow." +"map to a single system call. There are " +"also :meth:`~io.IOBase.readable`, :meth:`~io.IOBase.writable`, " +"and :meth:`~io.IOBase.seekable` methods for determining what operations a " +"given object will allow." msgstr "" msgid "" @@ -1333,21 +1336,22 @@ msgid "" msgstr "" msgid "" -"There are five concrete classes implementing this ABC. :class:`~io." -"BufferedWriter` and :class:`~io.BufferedReader` are for objects that support " -"write-only or read-only usage that have a :meth:`~io.IOBase.seek` method for " -"random access. :class:`~io.BufferedRandom` objects support read and write " -"access upon the same underlying stream, and :class:`~io.BufferedRWPair` is " -"for objects such as TTYs that have both read and write operations acting " -"upon unconnected streams of data. The :class:`~io.BytesIO` class supports " +"There are five concrete classes implementing this " +"ABC. :class:`~io.BufferedWriter` and :class:`~io.BufferedReader` are for " +"objects that support write-only or read-only usage that have " +"a :meth:`~io.IOBase.seek` method for random " +"access. :class:`~io.BufferedRandom` objects support read and write access " +"upon the same underlying stream, and :class:`~io.BufferedRWPair` is for " +"objects such as TTYs that have both read and write operations acting upon " +"unconnected streams of data. The :class:`~io.BytesIO` class supports " "reading, writing, and seeking over an in-memory buffer." msgstr "" msgid "" ":class:`~io.TextIOBase`: Provides functions for reading and writing strings " -"(remember, strings will be Unicode in Python 3.0), and supporting :term:" -"`universal newlines`. :class:`~io.TextIOBase` defines the :meth:`readline` " -"method and supports iteration upon objects." +"(remember, strings will be Unicode in Python 3.0), and " +"supporting :term:`universal newlines`. :class:`~io.TextIOBase` defines " +"the :meth:`readline` method and supports iteration upon objects." msgstr "" msgid "" @@ -1492,8 +1496,8 @@ msgstr "" msgid "" "Alternatively, you could write the class without deriving from the desired " -"ABC and instead register the class by calling the ABC's :meth:`~abc.ABCMeta." -"register` method::" +"ABC and instead register the class by calling the " +"ABC's :meth:`~abc.ABCMeta.register` method::" msgstr "" msgid "" @@ -1506,11 +1510,11 @@ msgid "" msgstr "" msgid "" -"For classes that you write, deriving from the ABC is probably clearer. The :" -"meth:`~abc.ABCMeta.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::" +"For classes that you write, deriving from the ABC is probably clearer. " +"The :meth:`~abc.ABCMeta.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 "" msgid "" @@ -1580,11 +1584,11 @@ msgid "" msgstr "" msgid "" -"You can apply the :deco:`~abc.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::" +"You can apply the :deco:`~abc.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 "" msgid "" @@ -1720,8 +1724,8 @@ msgstr "" 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." +"Scheme's numeric tower. These classes were backported to 2.6 as " +"the :mod:`numbers` module." msgstr "" msgid "" @@ -1740,18 +1744,19 @@ msgstr "" msgid "" ":class:`~numbers.Real` further derives from :class:`~numbers.Complex`, and " -"adds operations that only work on real numbers: :func:`~math.floor`, :func:" -"`~math.trunc`, rounding, taking the remainder mod N, floor division, and " -"comparisons." +"adds operations that only work on real " +"numbers: :func:`~math.floor`, :func:`~math.trunc`, rounding, taking the " +"remainder mod N, floor division, and comparisons." msgstr "" msgid "" -":class:`~numbers.Rational` numbers derive from :class:`~numbers.Real`, have :" -"attr:`~numbers.Rational.numerator` and :attr:`~numbers.Rational.denominator` " -"properties, and can be converted to floats. Python 2.6 adds a simple " -"rational-number class, :class:`~fractions.Fraction`, in the :mod:`fractions` " -"module. (It's called :class:`~fractions.Fraction` instead of ``Rational`` " -"to avoid a name clash with :class:`numbers.Rational`.)" +":class:`~numbers.Rational` numbers derive from :class:`~numbers.Real`, " +"have :attr:`~numbers.Rational.numerator` " +"and :attr:`~numbers.Rational.denominator` properties, and can be converted " +"to floats. Python 2.6 adds a simple rational-number " +"class, :class:`~fractions.Fraction`, in the :mod:`fractions` module. (It's " +"called :class:`~fractions.Fraction` instead of ``Rational`` to avoid a name " +"clash with :class:`numbers.Rational`.)" msgstr "" msgid "" @@ -1762,11 +1767,12 @@ msgid "" msgstr "" 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:`~numbers.Integral` that's " -"between the function's argument and zero." +"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:`~numbers.Integral` that's between the function's argument " +"and zero." msgstr "" msgid ":pep:`3141` - A Type Hierarchy for Numbers" @@ -1797,9 +1803,9 @@ msgid "" msgstr "" msgid "" -"The :class:`~fractions.Fraction` constructor takes two :class:`~numbers." -"Integral` values that will be the numerator and denominator of the resulting " -"fraction. ::" +"The :class:`~fractions.Fraction` constructor takes " +"two :class:`~numbers.Integral` values that will be the numerator and " +"denominator of the resulting fraction. ::" msgstr "" msgid "" @@ -1859,10 +1865,10 @@ msgid "" "The :func:`hasattr` function was catching and ignoring all errors, under the " "assumption that they meant a :meth:`~object.__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`.)" +"``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 "" msgid "" @@ -1906,8 +1912,9 @@ msgstr "" 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`.)" +"returned if *iterator* has been exhausted; otherwise, " +"the :exc:`StopIteration` exception will be raised. (Backported " +"in :issue:`2719`.)" msgstr "" msgid "" @@ -1935,10 +1942,11 @@ msgid "" msgstr "" msgid "" -"Properties now have three decorators, :deco:`~property.getter`, :deco:" -"`~property.setter` and :deco:`~property.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::" +"Properties now have three " +"decorators, :deco:`~property.getter`, :deco:`~property.setter` " +"and :deco:`~property.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 "" msgid "" @@ -1966,10 +1974,9 @@ msgid "" msgstr "" msgid "" -"Several methods of the built-in set types now accept multiple iterables: :" -"meth:`~set.intersection`, :meth:`~set.intersection_update`, :meth:`~set." -"union`, :meth:`~set.update`, :meth:`~set.difference` and :meth:`~set." -"difference_update`." +"Several methods of the built-in set types now accept multiple " +"iterables: :meth:`~set.intersection`, :meth:`~set.intersection_update`, :meth:`~set.union`, :meth:`~set.update`, :meth:`~set.difference` " +"and :meth:`~set.difference_update`." msgstr "" msgid "" @@ -1987,14 +1994,14 @@ 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`.)" +"platform with IEEE 754 semantics. (Contributed by Christian " +"Heimes; :issue:`1635`.)" msgstr "" msgid "" -"Other functions in the :mod:`math` module, :func:`~math.isinf` and :func:" -"`~math.isnan`, return true if their floating-point argument is infinite or " -"Not A Number. (:issue:`1640`)" +"Other functions in the :mod:`math` module, :func:`~math.isinf` " +"and :func:`~math.isnan`, return true if their floating-point argument is " +"infinite or Not A Number. (:issue:`1640`)" msgstr "" msgid "" @@ -2032,14 +2039,14 @@ msgid "" msgstr "" msgid "" -"You should do this when you've defined a :meth:`!__cmp__` or :meth:`~object." -"__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:`~object.__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`.)" +"You should do this when you've defined a :meth:`!__cmp__` " +"or :meth:`~object.__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:`~object.__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 "" msgid "" @@ -2051,8 +2058,8 @@ msgstr "" 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`.)" +"original code object backing the generator. (Contributed by Collin " +"Winter; :issue:`1473257`.)" msgstr "" msgid "" @@ -2063,8 +2070,8 @@ msgstr "" 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`)" +"values. For example, ``complex('(3+4j)')`` now returns the value (3+4j). " +"(:issue:`1491866`)" msgstr "" msgid "" @@ -2079,24 +2086,25 @@ msgid "" "The built-in :func:`dir` function now checks for a :meth:`~object.__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:`~object.__getattr__` or :meth:`~object.__getattribute__` methods can " -"use this to advertise pseudo-attributes they will honor. (:issue:`1591665`)" +"the object control the value that :func:`dir` produces. Objects that " +"have :meth:`~object.__getattr__` or :meth:`~object.__getattribute__` methods " +"can use this to advertise pseudo-attributes they will honor. " +"(:issue:`1591665`)" msgstr "" msgid "" "Instance method objects have new attributes for the object and function " -"comprising the method; the new synonym for :attr:`!im_self` is :attr:" -"`~method.__self__`, and :attr:`!im_func` is also available as :attr:`~method." -"__func__`. The old names are still supported in Python 2.6, but are gone in " -"3.0." +"comprising the method; the new synonym for :attr:`!im_self` " +"is :attr:`~method.__self__`, and :attr:`!im_func` is also available " +"as :attr:`~method.__func__`. The old names are still supported in Python " +"2.6, but are gone in 3.0." msgstr "" 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.)" +"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 "" msgid "Optimizations" @@ -2105,8 +2113,8 @@ msgstr "" 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`.)" +"startup faster. (Contributed by Neal Norwitz and Brett " +"Cannon; :issue:`1631171`.)" msgstr "" msgid "" @@ -2151,9 +2159,9 @@ msgstr "" msgid "" "Unicode strings now use faster code for detecting whitespace and line " -"breaks; this speeds up the :meth:`~str.split` method by about 25% and :meth:" -"`~str.splitlines` by 35%. (Contributed by Antoine Pitrou.) Memory usage is " -"reduced by using pymalloc for the Unicode string's data." +"breaks; this speeds up the :meth:`~str.split` method by about 25% " +"and :meth:`~str.splitlines` by 35%. (Contributed by Antoine Pitrou.) Memory " +"usage is reduced by using pymalloc for the Unicode string's data." msgstr "" msgid "" @@ -2242,10 +2250,10 @@ msgstr "" msgid "" "The :func:`~urllib.parse.parse_qs` and :func:`~urllib.parse.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`)." +"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 "" msgid "" @@ -2282,9 +2290,9 @@ 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:`~cmath." -"asinh`, :func:`~cmath.atanh`, and :func:`~cmath.atan` have also been " -"corrected." +"See :issue:`1381` for the details. The branch cuts " +"for :func:`~cmath.asinh`, :func:`~cmath.atanh`, and :func:`~cmath.atan` have " +"also been corrected." msgstr "" msgid "" @@ -2327,15 +2335,16 @@ msgstr "" msgid "" "Several places in the standard library that returned tuples have been " "modified to return :func:`~collections.namedtuple` instances. For example, " -"the :meth:`decimal.Decimal.as_tuple` method now returns a named tuple with :" -"attr:`!sign`, :attr:`!digits`, and :attr:`!exponent` fields." +"the :meth:`decimal.Decimal.as_tuple` method now returns a named tuple " +"with :attr:`!sign`, :attr:`!digits`, and :attr:`!exponent` fields." msgstr "" msgid "" -"Another change to the :mod:`collections` module is that the :class:" -"`~collections.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." +"Another change to the :mod:`collections` module is that " +"the :class:`~collections.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 "" msgid "" @@ -2355,14 +2364,15 @@ msgid "" "The :mod:`Cookie ` module's :class:`~http.cookies.Morsel` " "objects now support an :attr:`~http.cookies.Morsel.httponly` attribute. In " "some browsers. cookies with this attribute set cannot be accessed or " -"manipulated by JavaScript code. (Contributed by Arvin Schnell; :issue:" -"`1638033`.)" +"manipulated by JavaScript code. (Contributed by Arvin " +"Schnell; :issue:`1638033`.)" msgstr "" msgid "" -"A new window method in the :mod:`curses` module, :meth:`~curses.window." -"chgat`, changes the display attributes for a certain number of characters on " -"a single line. (Contributed by Fabian Kreutz.)" +"A new window method in the :mod:`curses` " +"module, :meth:`~curses.window.chgat`, changes the display attributes for a " +"certain number of characters on a single line. (Contributed by Fabian " +"Kreutz.)" msgstr "" msgid "" @@ -2403,8 +2413,8 @@ msgstr "" msgid "" "The :meth:`~decimal.Decimal.as_tuple` method of :class:`~decimal.Decimal` " -"objects now returns a named tuple with :attr:`!sign`, :attr:`!digits`, and :" -"attr:`!exponent` fields." +"objects now returns a named tuple with :attr:`!sign`, :attr:`!digits`, " +"and :attr:`!exponent` fields." msgstr "" msgid "" @@ -2414,26 +2424,26 @@ msgstr "" msgid "" "The :mod:`difflib` module's :class:`~difflib.SequenceMatcher` class now " -"returns named tuples representing matches, with :attr:`!a`, :attr:`!b`, and :" -"attr:`!size` attributes. (Contributed by Raymond Hettinger.)" +"returns named tuples representing matches, with :attr:`!a`, :attr:`!b`, " +"and :attr:`!size` attributes. (Contributed by Raymond Hettinger.)" msgstr "" 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:" -"`~ftplib.FTP.connect` method. (Added by Facundo Batista.) Also, the :class:" -"`~ftplib.FTP` class's :meth:`~ftplib.FTP.storbinary` and :meth:`~ftplib.FTP." -"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`.)" +"was added to the :class:`ftplib.FTP` class constructor as well as " +"the :meth:`~ftplib.FTP.connect` method. (Added by Facundo Batista.) Also, " +"the :class:`~ftplib.FTP` class's :meth:`~ftplib.FTP.storbinary` " +"and :meth:`~ftplib.FTP.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 "" 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:" -"`~functools.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`.)" +"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:`~functools.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 "" msgid "" @@ -2446,8 +2456,8 @@ msgstr "" 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`)" +"path was used and Unicode filenames are matched within the directory. " +"(:issue:`1001604`)" msgstr "" msgid "" @@ -2465,22 +2475,23 @@ msgstr "" 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:`~heapq.heappush` and then :func:`~heapq." -"heappop`." +"than making a call to :func:`~heapq.heappush` and " +"then :func:`~heapq.heappop`." msgstr "" 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.)" +"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 "" 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.)" +"was added to the :class:`httplib.HTTPConnection " +"` and :class:`HTTPSConnection " +"` class constructors. (Added by Facundo " +"Batista.)" msgstr "" msgid "" @@ -2491,8 +2502,9 @@ msgid "" msgstr "" msgid "" -"Some new functions in the module include :func:`~inspect.isgenerator`, :func:" -"`~inspect.isgeneratorfunction`, and :func:`~inspect.isabstract`." +"Some new functions in the module " +"include :func:`~inspect.isgenerator`, :func:`~inspect.isgeneratorfunction`, " +"and :func:`~inspect.isabstract`." msgstr "" msgid "The :mod:`itertools` module gained several new functions." @@ -2576,10 +2588,11 @@ msgstr "" 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:`~itertools.chain` will then return all the elements of " -"the first iterable, then all the elements of the second, and so on. ::" +"that gained a new constructor in Python 2.6. " +"``itertools.chain.from_iterable(iterable)`` takes a single iterable that " +"should return other iterables. :func:`~itertools.chain` will then return " +"all the elements of the first iterable, then all the elements of the second, " +"and so on. ::" msgstr "" msgid "" @@ -2592,12 +2605,11 @@ msgstr "" msgid "" "The :mod:`logging` module's :class:`~logging.FileHandler` class and its " -"subclasses :class:`~logging.handlers.WatchedFileHandler`, :class:`~logging." -"handlers.RotatingFileHandler`, and :class:`~logging.handlers." -"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:`~logging.FileHandler.emit` call is made. (Contributed by " -"Vinay Sajip.)" +"subclasses :class:`~logging.handlers.WatchedFileHandler`, :class:`~logging.handlers.RotatingFileHandler`, " +"and :class:`~logging.handlers.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:`~logging.FileHandler.emit` call " +"is made. (Contributed by Vinay Sajip.)" msgstr "" msgid "" @@ -2641,10 +2653,10 @@ msgid ":func:`~math.log1p` returns the natural logarithm of *1+x* (base *e*)." msgstr "" msgid "" -":func:`~math.trunc` rounds a number toward zero, returning the closest :" -"class:`~numbers.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>`__." +":func:`~math.trunc` rounds a number toward zero, returning the " +"closest :class:`~numbers.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 "" msgid "" @@ -2660,8 +2672,8 @@ msgid "" "``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`.)" +"standard recommends signaling 'overflow', Python will " +"raise :exc:`OverflowError`. (See :issue:`711019` and :issue:`1640`.)" msgstr "" msgid "(Contributed by Christian Heimes and Mark Dickinson.)" @@ -2749,16 +2761,16 @@ msgstr "" msgid "" "In the :mod:`os.path` module, the :func:`~os.path.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`)" +"results when operating on Unix's dot-files. For example, " +"``os.path.splitext('.ipython')`` now returns ``('.ipython', '')`` instead of " +"``('', '.ipython')``. (:issue:`1115886`)" msgstr "" 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`.)" +"directory to the destination ``path``. (Contributed by Richard " +"Barran; :issue:`1339796`.)" msgstr "" msgid "" @@ -2818,17 +2830,18 @@ msgstr "" msgid "" "The :mod:`queue` module now provides queue variants that retrieve entries in " "different orders. The :class:`~queue.PriorityQueue` class stores queued " -"items in a heap and retrieves them in priority order, and :class:`~queue." -"LifoQueue` retrieves the most recently added entries first, meaning that it " -"behaves like a stack. (Contributed by Raymond Hettinger.)" +"items in a heap and retrieves them in priority order, " +"and :class:`~queue.LifoQueue` retrieves the most recently added entries " +"first, meaning that it behaves like a stack. (Contributed by Raymond " +"Hettinger.)" msgstr "" msgid "" "The :mod:`random` module's :class:`~random.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.Random` objects can't be unpickled correctly on earlier versions of " -"Python. (Contributed by Shawn Ligocki; :issue:`1727780`.)" +"versa. Unfortunately, this change also means that Python " +"2.6's :class:`~random.Random` objects can't be unpickled correctly on " +"earlier versions of Python. (Contributed by Shawn Ligocki; :issue:`1727780`.)" msgstr "" msgid "" @@ -2863,8 +2876,8 @@ msgid "" "The :mod:`sched` module's :class:`~sched.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`.)" +"``(time, priority, action, argument)``. (Contributed by Raymond " +"Hettinger; :issue:`1861`.)" msgstr "" msgid "" @@ -2913,9 +2926,9 @@ msgstr "" 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:`~signal.set_wakeup_fd`, and the readable descriptor will be added to " -"the list of descriptors monitored by the event loop via :c:func:`!select` " +"for reading and one for writing. The writable descriptor will be passed " +"to :func:`~signal.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 "" @@ -2950,8 +2963,8 @@ msgstr "" 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`.)" +"agents that don't manage a mail queue. (LMTP implemented by Leif " +"Hedstrom; :issue:`957003`.)" msgstr "" msgid "" @@ -2971,20 +2984,21 @@ msgid "" "A new function, :func:`~socket.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:" -"`~socket.create_connection` instead of ``socket(socket.AF_INET, ...)`` may " -"be all that's required to make your code work with IPv6." +"to it using IPv4 or IPv6 as appropriate. Changing your code to " +"use :func:`~socket.create_connection` instead of " +"``socket(socket.AF_INET, ...)`` may be all that's required to make your code " +"work with IPv6." msgstr "" msgid "" "The base classes in the :mod:`SocketServer ` module now " "support calling a :meth:`~socketserver.BaseServer.handle_timeout` method " -"after a span of inactivity specified by the server's :attr:`~socketserver." -"BaseServer.timeout` attribute. (Contributed by Michael Pomraning.) The :" -"meth:`~socketserver.BaseServer.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`.)" +"after a span of inactivity specified by the " +"server's :attr:`~socketserver.BaseServer.timeout` attribute. (Contributed " +"by Michael Pomraning.) The :meth:`~socketserver.BaseServer.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 "" msgid "" @@ -2999,21 +3013,22 @@ msgstr "" msgid "" "The :class:`~subprocess.Popen` objects provided by the :mod:`subprocess` " -"module now have :meth:`~subprocess.Popen.terminate`, :meth:`~subprocess." -"Popen.kill`, and :meth:`~subprocess.Popen.send_signal` methods. On Windows, :" -"meth:`!send_signal` only supports the :py:const:`~signal.SIGTERM` signal, " -"and all these methods are aliases for the Win32 API function :c:func:`!" +"module now " +"have :meth:`~subprocess.Popen.terminate`, :meth:`~subprocess.Popen.kill`, " +"and :meth:`~subprocess.Popen.send_signal` methods. On Windows, :meth:`!" +"send_signal` only supports the :py:const:`~signal.SIGTERM` signal, and all " +"these methods are aliases for the Win32 API function :c:func:`!" "TerminateProcess`. (Contributed by Christian Heimes.)" msgstr "" msgid "" "A new variable in the :mod:`sys` module, :data:`~sys.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:`~sys.float_info.mant_dig` (number of digits in the mantissa), :attr:" -"`~sys.float_info.epsilon` (smallest difference between 1.0 and the next " -"largest value representable), and several others. (Contributed by Christian " -"Heimes; :issue:`1534`.)" +"the platform's floating-point support. Attributes of this object " +"include :attr:`~sys.float_info.mant_dig` (number of digits in the " +"mantissa), :attr:`~sys.float_info.epsilon` (smallest difference between 1.0 " +"and the next largest value representable), and several others. (Contributed " +"by Christian Heimes; :issue:`1534`.)" msgstr "" msgid "" @@ -3084,9 +3099,9 @@ msgid "(All changes contributed by Lars Gustäbel)." msgstr "" msgid "" -"An optional ``timeout`` parameter was added to the :class:`!telnetlib." -"Telnet` class constructor, specifying a timeout measured in seconds. (Added " -"by Facundo Batista.)" +"An optional ``timeout`` parameter was added to the :class:`!" +"telnetlib.Telnet` class constructor, specifying a timeout measured in " +"seconds. (Added by Facundo Batista.)" msgstr "" msgid "" @@ -3104,17 +3119,18 @@ msgid "" msgstr "" msgid "" -"The :class:`~tempfile.NamedTemporaryFile` and :class:`~tempfile." -"SpooledTemporaryFile` classes both work as context managers, so you can " -"write ``with tempfile.NamedTemporaryFile() as tmp: ...``. (Contributed by " -"Alexander Belopolsky; :issue:`2021`.)" +"The :class:`~tempfile.NamedTemporaryFile` " +"and :class:`~tempfile.SpooledTemporaryFile` classes both work as context " +"managers, so you can write ``with tempfile.NamedTemporaryFile() as " +"tmp: ...``. (Contributed by Alexander Belopolsky; :issue:`2021`.)" msgstr "" msgid "" "The :mod:`test.test_support ` module gained a number of " -"context managers useful for writing tests. :func:`~test.support.os_helper." -"EnvironmentVarGuard` is a context manager that temporarily changes " -"environment variables and automatically restores them to their old values." +"context managers useful for writing " +"tests. :func:`~test.support.os_helper.EnvironmentVarGuard` is a context " +"manager that temporarily changes environment variables and automatically " +"restores them to their old values." msgstr "" msgid "" @@ -3132,8 +3148,8 @@ msgid "" msgstr "" msgid "" -"Finally, :func:`~test.support.warnings_helper.check_warnings` resets the :" -"mod:`warnings` module's warning filters and returns an object that will " +"Finally, :func:`~test.support.warnings_helper.check_warnings` resets " +"the :mod:`warnings` module's warning filters and returns an object that will " "record all warning messages triggered (:issue:`3781`)::" msgstr "" @@ -3174,22 +3190,22 @@ msgid "(Contributed by Dwayne Bailey; :issue:`1581073`.)" msgstr "" msgid "" -"The :mod:`threading` module API is being changed to use properties such as :" -"attr:`~threading.Thread.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 :func:`~threading.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.)" +"The :mod:`threading` module API is being changed to use properties such " +"as :attr:`~threading.Thread.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 :func:`~threading.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 "" msgid "" -"The :mod:`threading` module's :class:`~threading.Thread` objects gained an :" -"attr:`~threading.Thread.ident` property that returns the thread's " -"identifier, a nonzero integer. (Contributed by Gregory P. Smith; :issue:" -"`2871`.)" +"The :mod:`threading` module's :class:`~threading.Thread` objects gained " +"an :attr:`~threading.Thread.ident` property that returns the thread's " +"identifier, a nonzero integer. (Contributed by Gregory P. " +"Smith; :issue:`2871`.)" msgstr "" msgid "" @@ -3197,8 +3213,8 @@ msgid "" "statement being timed and for the setup code. Two convenience functions were " "added for creating :class:`~timeit.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`.)" +"instance and call the corresponding method. (Contributed by Erik " +"Demaine; :issue:`1533909`.)" msgstr "" msgid "" @@ -3216,8 +3232,9 @@ msgid "Better animation of turtle movement and rotation." msgstr "" msgid "" -"Control over turtle movement using the new :func:`~turtle.delay`, :func:" -"`~turtle.tracer`, and :func:`~turtle.speed` methods." +"Control over turtle movement using the " +"new :func:`~turtle.delay`, :func:`~turtle.tracer`, and :func:`~turtle.speed` " +"methods." msgstr "" msgid "" @@ -3257,7 +3274,7 @@ msgstr "" msgid "" ">>> u = urllib2.urlopen(\"http://slow.example.com\",\n" -" timeout=3)\n" +"... timeout=3)\n" "Traceback (most recent call last):\n" " ...\n" "urllib2.URLError: \n" @@ -3273,10 +3290,11 @@ msgid "" msgstr "" msgid "" -"The :mod:`warnings` module's :func:`~warnings.formatwarning` and :func:" -"`~warnings.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.)" +"The :mod:`warnings` module's :func:`~warnings.formatwarning` " +"and :func:`~warnings.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 "" msgid "" @@ -3286,15 +3304,15 @@ msgid "" msgstr "" msgid "" -"The XML-RPC :class:`SimpleXMLRPCServer ` and :class:" -"`DocXMLRPCServer ` classes can now be prevented from " -"immediately opening and binding to their socket by passing ``False`` as the " -"*bind_and_activate* constructor parameter. This can be used to modify the " -"instance's :attr:`~socketserver.BaseServer.allow_reuse_address` attribute " -"before calling the :meth:`~socketserver.BaseServer.server_bind` and :meth:" -"`~socketserver.BaseServer.server_activate` methods to open the socket and " -"begin listening for connections. (Contributed by Peter Parente; :issue:" -"`1599845`.)" +"The XML-RPC :class:`~xmlrpc.server.SimpleXMLRPCServer` " +"and :class:`~xmlrpc.server.DocXMLRPCServer` classes can now be prevented " +"from immediately opening and binding to their socket by passing ``False`` as " +"the *bind_and_activate* constructor parameter. This can be used to modify " +"the instance's :attr:`~socketserver.BaseServer.allow_reuse_address` " +"attribute before calling the :meth:`~socketserver.BaseServer.server_bind` " +"and :meth:`~socketserver.BaseServer.server_activate` methods to open the " +"socket and begin listening for connections. (Contributed by Peter " +"Parente; :issue:`1599845`.)" msgstr "" msgid "" @@ -3309,21 +3327,21 @@ msgstr "" 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:`~datetime.date` and :class:`~datetime." -"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`)." +"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:`~datetime.date` " +"and :class:`~datetime.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 "" msgid "" -"The :mod:`zipfile` module's :class:`~zipfile.ZipFile` class now has :meth:" -"`~zipfile.ZipFile.extract` and :meth:`~zipfile.ZipFile.extractall` methods " -"that will unpack a single file or all the files in the archive to the " -"current directory, or to a specified directory::" +"The :mod:`zipfile` module's :class:`~zipfile.ZipFile` class now " +"has :meth:`~zipfile.ZipFile.extract` and :meth:`~zipfile.ZipFile.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 "" msgid "" @@ -3341,11 +3359,11 @@ msgid "(Contributed by Alan McIntyre; :issue:`467924`.)" msgstr "" msgid "" -"The :meth:`~zipfile.ZipFile.open`, :meth:`~zipfile.ZipFile.read` and :meth:" -"`~zipfile.ZipFile.extract` methods can now take either a filename or a :" -"class:`~zipfile.ZipInfo` object. This is useful when an archive " -"accidentally contains a duplicated filename. (Contributed by Graham Horler; :" -"issue:`1775025`.)" +"The :meth:`~zipfile.ZipFile.open`, :meth:`~zipfile.ZipFile.read` " +"and :meth:`~zipfile.ZipFile.extract` methods can now take either a filename " +"or a :class:`~zipfile.ZipInfo` object. This is useful when an archive " +"accidentally contains a duplicated filename. (Contributed by Graham " +"Horler; :issue:`1775025`.)" msgstr "" msgid "" @@ -3364,9 +3382,9 @@ msgid "" msgstr "" msgid "" -"The :func:`~ast.parse` function takes an expression and returns an AST. The :" -"func:`~ast.dump` function outputs a representation of a tree, suitable for " -"debugging::" +"The :func:`~ast.parse` function takes an expression and returns an AST. " +"The :func:`~ast.dump` function outputs a representation of a tree, suitable " +"for debugging::" msgstr "" msgid "" @@ -3437,9 +3455,9 @@ msgid "" msgstr "" msgid "" -"The module also includes :class:`~ast.NodeVisitor` and :class:`~ast." -"NodeTransformer` classes for traversing and modifying an AST, and functions " -"for common transformations such as changing line numbers." +"The module also includes :class:`~ast.NodeVisitor` " +"and :class:`~ast.NodeTransformer` classes for traversing and modifying an " +"AST, and functions for common transformations such as changing line numbers." msgstr "" msgid "The :mod:`!future_builtins` module" @@ -3468,10 +3486,10 @@ msgid "" msgstr "" msgid "" -"``hex(value)``, ``oct(value)``: instead of calling the :meth:`!__hex__` or :" -"meth:`!__oct__` methods, these versions will call the :meth:`~object." -"__index__` method and convert the result to hexadecimal or octal. :func:" -"`oct` will use the new ``0o`` notation for its result." +"``hex(value)``, ``oct(value)``: instead of calling the :meth:`!__hex__` " +"or :meth:`!__oct__` methods, these versions will call " +"the :meth:`~object.__index__` method and convert the result to hexadecimal " +"or octal. :func:`oct` will use the new ``0o`` notation for its result." msgstr "" msgid "The :mod:`json` module: JavaScript Object Notation" @@ -3559,8 +3577,8 @@ msgstr "" msgid "" ":mod:`ctypes` now supports a :class:`~ctypes.c_bool` datatype that " -"represents the C99 ``bool`` type. (Contributed by David Remahl; :issue:" -"`1649190`.)" +"represents the C99 ``bool`` type. (Contributed by David " +"Remahl; :issue:`1649190`.)" msgstr "" msgid "" @@ -3572,9 +3590,10 @@ msgstr "" msgid "" "All :mod:`ctypes` data types now support :meth:`~ctypes._CData.from_buffer` " "and :meth:`~ctypes._CData.from_buffer_copy` methods that create a ctypes " -"instance based on a provided buffer object. :meth:`~ctypes._CData." -"from_buffer_copy` copies the contents of the object, while :meth:`~ctypes." -"_CData.from_buffer` will share the same memory area." +"instance based on a provided buffer " +"object. :meth:`~ctypes._CData.from_buffer_copy` copies the contents of the " +"object, while :meth:`~ctypes._CData.from_buffer` will share the same memory " +"area." msgstr "" msgid "" @@ -3592,11 +3611,11 @@ msgid "" msgstr "" msgid "" -"The Win32 LastError variable is similarly supported by the ``DLL``, :func:" -"`~ctypes.OleDLL`, and :func:`~ctypes.WinDLL` functions. You supply " -"``use_last_error=True`` as a keyword parameter and then call the module-" -"level methods :func:`~ctypes.set_last_error` and :func:`~ctypes." -"get_last_error`." +"The Win32 LastError variable is similarly supported by the " +"``DLL``, :func:`~ctypes.OleDLL`, and :func:`~ctypes.WinDLL` functions. You " +"supply ``use_last_error=True`` as a keyword parameter and then call the " +"module-level methods :func:`~ctypes.set_last_error` " +"and :func:`~ctypes.get_last_error`." msgstr "" msgid "" @@ -3632,8 +3651,8 @@ msgid "Deprecations and Removals" msgstr "" msgid "" -"String exceptions have been removed. Attempting to use them raises a :exc:" -"`TypeError`." +"String exceptions have been removed. Attempting to use them raises " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -3649,13 +3668,13 @@ msgid "" msgstr "" 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`." +"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 "" msgid "The :mod:`!gopherlib` module has been removed." @@ -3702,8 +3721,8 @@ msgstr "" 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 " +"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 "" @@ -3714,11 +3733,11 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -3755,9 +3774,10 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -3782,11 +3802,11 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -3817,23 +3837,24 @@ msgstr "" 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.)" +"finally defines standard macros for adding values to a " +"module, :c:macro:`PyModule_AddStringMacro` " +"and :c:macro:`PyModule_AddIntMacro()`. (Contributed by Christian Heimes.)" msgstr "" 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`)" +"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 "" 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`.)" +"running on a debug version of Python. (Contributed by Collin " +"Winter; :issue:`1530959`.)" msgstr "" msgid "" @@ -3893,25 +3914,25 @@ msgid "" msgstr "" msgid "" -"The :mod:`socket` module's socket objects now have an :meth:`~socket.socket." -"ioctl` method that provides a limited interface to the :c:func:`!WSAIoctl` " -"system interface." +"The :mod:`socket` module's socket objects now have " +"an :meth:`~socket.socket.ioctl` method that provides a limited interface to " +"the :c:func:`!WSAIoctl` system interface." msgstr "" msgid "" -"The :mod:`_winreg ` module now has a function, :func:`~winreg." -"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.)" +"The :mod:`_winreg ` module now has a " +"function, :func:`~winreg.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 "" msgid "" ":mod:`_winreg ` also has better support for x64 systems, exposing " -"the :func:`~winreg.DisableReflectionKey`, :func:`~winreg." -"EnableReflectionKey`, and :func:`~winreg.QueryReflectionKey` functions, " -"which enable and disable registry reflection for 32-bit processes running on " -"64-bit systems. (:issue:`1753245`)" +"the :func:`~winreg.DisableReflectionKey`, :func:`~winreg.EnableReflectionKey`, " +"and :func:`~winreg.QueryReflectionKey` functions, which enable and disable " +"registry reflection for 32-bit processes running on 64-bit systems. " +"(:issue:`1753245`)" msgstr "" msgid "" @@ -3930,23 +3951,24 @@ msgid "" msgstr "" 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`)" +"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 "" 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`." +"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 "" msgid "Port-Specific Changes: IRIX" @@ -3956,10 +3978,10 @@ 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`." +"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 "" msgid "Porting to Python 2.6" @@ -3991,11 +4013,11 @@ msgstr "" msgid "" "The :class:`~decimal.Decimal` constructor now accepts leading and trailing " -"whitespace when passed a string. Previously it would raise an :exc:" -"`~decimal.InvalidOperation` exception. On the other hand, the :meth:" -"`~decimal.Context.create_decimal` method of :class:`~decimal.Context` " -"objects now explicitly disallows extra whitespace, raising a :exc:`!" -"ConversionSyntax` exception." +"whitespace when passed a string. Previously it would raise " +"an :exc:`~decimal.InvalidOperation` exception. On the other hand, " +"the :meth:`~decimal.Context.create_decimal` method " +"of :class:`~decimal.Context` objects now explicitly disallows extra " +"whitespace, raising a :exc:`!ConversionSyntax` exception." msgstr "" msgid "" @@ -4017,19 +4039,19 @@ msgid "" msgstr "" 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`.)" +"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 "" 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:`~datetime.date` and :class:`~datetime." -"time` instances. (:issue:`1330538`)" +"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:`~datetime.date` " +"and :class:`~datetime.time` instances. (:issue:`1330538`)" msgstr "" msgid "" diff --git a/whatsnew/2.7.po b/whatsnew/2.7.po index c7471e5..21fa06f 100644 --- a/whatsnew/2.7.po +++ b/whatsnew/2.7.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,11 +35,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -53,9 +53,9 @@ msgid "" "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." +"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 "" msgid "The Future for Python 2.x" @@ -149,10 +149,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -214,8 +215,8 @@ msgid "" msgstr "" msgid "" -"Float-to-string and string-to-float conversions are correctly rounded. The :" -"func:`round` function is also now correctly rounded." +"Float-to-string and string-to-float conversions are correctly rounded. " +"The :func:`round` function is also now correctly rounded." msgstr "" msgid "" @@ -246,8 +247,8 @@ 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." +"the experiences from those implementations, 2.7 introduces a " +"new :class:`~collections.OrderedDict` class in the :mod:`collections` module." msgstr "" msgid "" @@ -350,9 +351,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -424,14 +425,14 @@ msgstr "" 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` " +"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.)" +"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 "" msgid "" @@ -513,9 +514,9 @@ msgid "" "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." +"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 "" msgid ":mod:`argparse` documentation" @@ -528,8 +529,8 @@ msgid ":ref:`upgrading-optparse-code`" msgstr "" msgid "" -"Part of the Python documentation, describing how to convert code that uses :" -"mod:`optparse`." +"Part of the Python documentation, describing how to convert code that " +"uses :mod:`optparse`." msgstr "" msgid ":pep:`389` - argparse - New Command Line Parsing Module" @@ -551,10 +552,10 @@ msgstr "" 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.config.fileConfig` function that parses a file, but the file " -"format doesn't support configuring filters, and it's messier to generate " -"programmatically." +"set-up requires verbose but boring code. :mod:`logging` also supports " +"a :func:`~logging.config.fileConfig` function that parses a file, but the " +"file format doesn't support configuring filters, and it's messier to " +"generate programmatically." msgstr "" msgid "" @@ -625,22 +626,23 @@ msgstr "" 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." +"socket to use, either :const:`socket.SOCK_DGRAM` for UDP " +"or :const:`socket.SOCK_STREAM` for TCP. The default protocol remains UDP." msgstr "" 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')``." +"calling ``log.getChild('network.listen')`` is equivalent to " +"``getLogger('app.network.listen')``." msgstr "" msgid "" -"The :class:`~logging.LoggerAdapter` class gained an :meth:`~logging.Logger." -"isEnabledFor` method that takes a *level* and returns whether the underlying " -"logger would process a message of that level of importance." +"The :class:`~logging.LoggerAdapter` class gained " +"an :meth:`~logging.Logger.isEnabledFor` method that takes a *level* and " +"returns whether the underlying logger would process a message of that level " +"of importance." msgstr "" msgid ":pep:`391` - Dictionary-Based Configuration For Logging" @@ -653,16 +655,17 @@ msgid "PEP 3106: Dictionary Views" msgstr "" 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." +"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 "" 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:" -"`!viewkeys`, :meth:`!viewvalues`, and :meth:`!viewitems`." +"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:`!viewkeys`, :meth:`!viewvalues`, " +"and :meth:`!viewitems`." msgstr "" msgid "" @@ -717,16 +720,16 @@ msgstr "" 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." +"change them to the standard :meth:`~dict.keys`, :meth:`~dict.values`, " +"and :meth:`~dict.items` methods." msgstr "" msgid ":pep:`3106` - Revamping dict.keys(), .values() and .items()" msgstr "" msgid "" -"PEP written by Guido van Rossum. Backported to 2.7 by Alexandre Vassalotti; :" -"issue:`1967`." +"PEP written by Guido van Rossum. Backported to 2.7 by Alexandre " +"Vassalotti; :issue:`1967`." msgstr "" msgid "PEP 3137: The memoryview Object" @@ -867,11 +870,12 @@ msgstr "" 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." +"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 "" msgid "" @@ -891,8 +895,8 @@ msgid "" msgstr "" msgid "" -"Implemented by Eric Smith and Mark Dickinson, using David Gay's :file:`dtoa." -"c` library; :issue:`7117`." +"Implemented by Eric Smith and Mark Dickinson, using David " +"Gay's :file:`dtoa.c` library; :issue:`7117`." msgstr "" msgid "" @@ -976,9 +980,9 @@ msgid "" msgstr "" 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 " +"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 " @@ -1016,14 +1020,14 @@ msgstr "" 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`.)" +"override the :meth:`!__unicode__` method. (Implemented by Victor " +"Stinner; :issue:`1583863`.)" msgstr "" msgid "" "The :class:`bytearray` type's :meth:`~bytearray.translate` method now " -"accepts ``None`` as its first argument. (Fixed by Georg Brandl; :issue:" -"`4759`.)" +"accepts ``None`` as its first argument. (Fixed by Georg " +"Brandl; :issue:`4759`.)" msgstr "" msgid "" @@ -1042,8 +1046,8 @@ msgstr "" 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`.)" +"contributed by Alexander Belchenko and Amaury Forgeot d'Arc " +"in :issue:`1616979`; CP858 contributed by Tim Hatch in :issue:`8016`.)" msgstr "" msgid "" @@ -1051,13 +1055,13 @@ msgid "" "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`)." +"the C library to catch and report the error (fixed by Stefan " +"Krah; :issue:`5677`)." msgstr "" msgid "" -"The Python tokenizer now translates line endings itself, so the :func:" -"`compile` built-in function now accepts code using any line-ending " +"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 "" @@ -1071,14 +1075,14 @@ msgstr "" 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`.)" +"style classes were always weak-referenceable. (Fixed by Antoine " +"Pitrou; :issue:`8268`.)" msgstr "" 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`)." +"only cleared if no one else is holding a reference to the dictionary " +"(:issue:`7140`)." msgstr "" msgid "Interpreter Changes" @@ -1109,8 +1113,8 @@ msgstr "" msgid "" "A new opcode was added to perform the initial setup for :keyword:`with` " -"statements, looking up the :meth:`~object.__enter__` and :meth:`~object." -"__exit__` methods. (Contributed by Benjamin Peterson.)" +"statements, looking up the :meth:`~object.__enter__` " +"and :meth:`~object.__exit__` methods. (Contributed by Benjamin Peterson.)" msgstr "" msgid "" @@ -1187,8 +1191,8 @@ msgstr "" 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`.)" +"bytecode. (Patch by Antoine Pitrou, back-ported to 2.7 by Jeffrey " +"Yasskin; :issue:`4715`.)" msgstr "" msgid "" @@ -1213,8 +1217,8 @@ msgstr "" msgid "" "The :mod:`!cPickle` module now special-cases dictionaries, nearly halving " -"the time required to pickle them. (Contributed by Collin Winter; :issue:" -"`5670`.)" +"the time required to pickle them. (Contributed by Collin " +"Winter; :issue:`5670`.)" msgstr "" msgid "New and Improved Modules" @@ -1233,8 +1237,8 @@ msgid "" "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`.)" +"(Contributed by Maru Newby after a suggestion by Senthil " +"Kumaran; :issue:`5142`.)" msgstr "" msgid "" @@ -1282,13 +1286,13 @@ msgid "" msgstr "" 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. ::" +"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 "" msgid "" @@ -1315,13 +1319,13 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1389,26 +1393,28 @@ msgstr "" 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`.)" +"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 "" 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`.)" +"number of seconds in the duration. (Contributed by Brian " +"Quinlan; :issue:`5788`.)" msgstr "" 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`. 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 " +"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`. 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 "" @@ -1427,29 +1433,30 @@ msgstr "" 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`)." +"characters such as Arabic-Indic digits (contributed by Mark " +"Dickinson; :issue:`6595`)." msgstr "" 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`.)" +"are the :meth:`~decimal.Context.canonical` " +"and :meth:`~decimal.Context.is_canonical` methods. (Patch by Juan José " +"Conti; :issue:`7633`.)" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "" @@ -1475,15 +1482,15 @@ msgstr "" 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`.)" +"encoding specified by :attr:`!output_charset`. (Added by R. David " +"Murray; :issue:`1368247`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -1495,33 +1502,34 @@ msgstr "" 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`.)" +"subsequent control and data transfers. (Contributed by Giampaolo " +"Rodola; :issue:`2054`.)" msgstr "" 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`.)" +"uploads thanks to an added *rest* parameter (patch by Pablo " +"Mouzo; :issue:`6845`.)" msgstr "" msgid "" -"New class decorator: :deco:`~functools.total_ordering` in the :mod:" -"`functools` module takes a class that defines an :meth:`~object.__eq__` " -"method and one of :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:" -"`~object.__gt__`, or :meth:`~object.__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`.)" +"New class decorator: :deco:`~functools.total_ordering` in " +"the :mod:`functools` module takes a class that defines " +"an :meth:`~object.__eq__` method and one " +"of :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object.__gt__`, " +"or :meth:`~object.__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 "" 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.)" +"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 "" msgid "" @@ -1533,12 +1541,12 @@ msgstr "" 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`.)" +"(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 "" msgid "" @@ -1555,17 +1563,18 @@ msgid "" msgstr "" msgid "" -"The default :class:`~http.client.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`.)" +"The default :class:`~http.client.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 "" msgid "" -"The :class:`~http.client.HTTPConnection` and :class:`~http.client." -"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`.)" +"The :class:`~http.client.HTTPConnection` " +"and :class:`~http.client.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 "" msgid "" @@ -1613,18 +1622,18 @@ msgid "" msgstr "" msgid "" -"One minor resulting change: the :class:`io.TextIOBase` class now has an :" -"attr:`~io.TextIOBase.errors` attribute giving the error setting used for " +"One minor resulting change: the :class:`io.TextIOBase` class now has " +"an :attr:`~io.TextIOBase.errors` attribute giving the error setting used for " "encoding and decoding errors (one of ``'strict'``, ``'replace'``, " "``'ignore'``)." msgstr "" 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`.)" +"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 "" msgid "" @@ -1659,9 +1668,9 @@ msgstr "" 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`.)" +"allows keyword arguments, and using non-integer values such as floats " +"or :class:`~decimal.Decimal` instances. (Implemented by Raymond " +"Hettinger; :issue:`5032`.)" msgstr "" msgid "" @@ -1693,13 +1702,13 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1724,13 +1733,14 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1740,11 +1750,12 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1754,23 +1765,25 @@ msgid "" msgstr "" 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.)" +"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 "" 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`.)" +"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 "" msgid "" @@ -1791,25 +1804,26 @@ msgstr "" 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`.)" +"catch the EINTR signal robustly. (Fixed by Charles-Francois " +"Natali; :issue:`8354`.)" msgstr "" 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 :data:`~site." -"USER_BASE` environment variable, giving the path to a directory that can be " -"used to store data. (Contributed by Tarek Ziadé; :issue:`6693`.)" +"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 :data:`~site.USER_BASE` environment variable, giving the path " +"to a directory that can be used to store data. (Contributed by Tarek " +"Ziadé; :issue:`6693`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -1819,24 +1833,26 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" -"The :mod:`SocketServer ` module's :class:`~socketserver." -"TCPServer` class now supports socket timeouts and disabling the Nagle " -"algorithm. The :attr:`!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`.)" +"The :mod:`SocketServer ` " +"module's :class:`~socketserver.TCPServer` class now supports socket timeouts " +"and disabling the Nagle algorithm. The :attr:`!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 "" msgid "" @@ -1844,18 +1860,18 @@ msgid "" "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.)" +"method to enable extensions, and then " +"call :meth:`~sqlite3.Connection.load_extension` to load a particular shared " +"library. (Updated by Gerhard Häring.)" msgstr "" 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`)." +"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 "" msgid "" @@ -1874,10 +1890,11 @@ msgid "" msgstr "" msgid "" -"The version of OpenSSL being used is now available as the module attributes :" -"const:`ssl.OPENSSL_VERSION` (a string), :const:`ssl.OPENSSL_VERSION_INFO` (a " -"5-tuple), and :const:`ssl.OPENSSL_VERSION_NUMBER` (an integer). (Added by " -"Antoine Pitrou; :issue:`8321`.)" +"The version of OpenSSL being used is now available as the module " +"attributes :const:`ssl.OPENSSL_VERSION` (a " +"string), :const:`ssl.OPENSSL_VERSION_INFO` (a 5-tuple), " +"and :const:`ssl.OPENSSL_VERSION_NUMBER` (an integer). (Added by Antoine " +"Pitrou; :issue:`8321`.)" msgstr "" msgid "" @@ -1891,10 +1908,11 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -1918,10 +1936,10 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" @@ -1938,8 +1956,8 @@ msgstr "" 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:`!" +"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 "" @@ -1962,8 +1980,8 @@ msgid "" "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`.)" +"also now supports the context management protocol. (Added by Lars " +"Gustäbel; :issue:`7232`.)" msgstr "" msgid "" @@ -1978,10 +1996,10 @@ msgstr "" 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`)." +"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 "" msgid "" @@ -2015,8 +2033,8 @@ msgstr "" msgid "" "The :mod:`urlparse ` module also supports IPv6 literal " -"addresses as defined by :rfc:`2732` (contributed by Senthil Kumaran; :issue:" -"`2987`)." +"addresses as defined by :rfc:`2732` (contributed by Senthil " +"Kumaran; :issue:`2987`)." msgstr "" msgid "" @@ -2041,13 +2059,13 @@ msgid "" msgstr "" msgid "" -"The XML-RPC client and server, provided by the :mod:`xmlrpclib ` and :mod:`SimpleXMLRPCServer ` modules, have " +"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:`~xmlrpc.server.SimpleXMLRPCRequestHandler`, which contains a size in " -"bytes; responses larger than this will be compressed. (Contributed by " +"compression is controlled by the :attr:`!encode_threshold` attribute " +"of :class:`~xmlrpc.server.SimpleXMLRPCRequestHandler`, which contains a size " +"in bytes; responses larger than this will be compressed. (Contributed by " "Kristján Valur Jónsson; :issue:`6267`.)" msgstr "" @@ -2060,9 +2078,9 @@ msgstr "" 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:`read() ` and :meth:`readline() ` now works correctly. " -"(Contributed by Nir Aides; :issue:`7610`.)" +"of an archive is faster, and interleaving :meth:`read() " +"` and :meth:`readline() ` now " +"works correctly. (Contributed by Nir Aides; :issue:`7610`.)" msgstr "" msgid "" @@ -2087,8 +2105,8 @@ msgid "" "useful for implementers 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`." +"tiny subset that contains a single " +"function, :func:`~importlib.import_module`." msgstr "" msgid "" @@ -2187,10 +2205,10 @@ msgid "" msgstr "" msgid "" -"The :mod:`tkinter.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 " +"The :mod:`tkinter.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 "" @@ -2252,8 +2270,8 @@ msgstr "" 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`.)" +"tests. (Suggested by Cliff Dyer and implemented by Michael " +"Foord; :issue:`8074`.)" msgstr "" msgid "" @@ -2268,13 +2286,13 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -2293,21 +2311,23 @@ msgstr "" 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." +"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 "" 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`)." +"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 "" msgid "" @@ -2318,28 +2338,28 @@ msgid "" msgstr "" msgid "" -":meth:`~unittest.TestCase.assertIsNone` and :meth:`~unittest.TestCase." -"assertIsNotNone` take one expression and verify that the result is or is not " -"``None``." +":meth:`~unittest.TestCase.assertIsNone` " +"and :meth:`~unittest.TestCase.assertIsNotNone` take one expression and " +"verify that the result is or is not ``None``." msgstr "" 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`.)" +":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 "" 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`.)" +":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 "" msgid "" -":meth:`~unittest.TestCase.assertGreater`, :meth:`~unittest.TestCase." -"assertGreaterEqual`, :meth:`~unittest.TestCase.assertLess`, and :meth:" -"`~unittest.TestCase.assertLessEqual` compare two quantities." +":meth:`~unittest.TestCase.assertGreater`, :meth:`~unittest.TestCase.assertGreaterEqual`, :meth:`~unittest.TestCase.assertLess`, " +"and :meth:`~unittest.TestCase.assertLessEqual` compare two quantities." msgstr "" msgid "" @@ -2350,10 +2370,10 @@ msgid "" msgstr "" msgid "" -":meth:`assertRegexpMatches() ` and :meth:" -"`assertNotRegexpMatches() ` checks whether " -"the first argument is a string matching or not matching the regular " -"expression provided as the second argument (:issue:`8038`)." +":meth:`assertRegexpMatches() ` " +"and :meth:`assertNotRegexpMatches() ` " +"checks whether the first argument is a string matching or not matching the " +"regular expression provided as the second argument (:issue:`8038`)." msgstr "" msgid "" @@ -2364,8 +2384,9 @@ msgid "" msgstr "" msgid "" -":meth:`~unittest.TestCase.assertIn` and :meth:`~unittest.TestCase." -"assertNotIn` tests whether *first* is or is not in *second*." +":meth:`~unittest.TestCase.assertIn` " +"and :meth:`~unittest.TestCase.assertNotIn` tests whether *first* is or is " +"not in *second*." msgstr "" msgid "" @@ -2379,13 +2400,14 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -2397,41 +2419,43 @@ msgid "" msgstr "" 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." +":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 "" msgid "" -":meth:`~unittest.TestLoader.loadTestsFromName` properly honors the :attr:" -"`~unittest.TestLoader.suiteClass` attribute of the :class:`~unittest." -"TestLoader`. (Fixed by Mark Roddy; :issue:`6866`.)" +":meth:`~unittest.TestLoader.loadTestsFromName` properly honors " +"the :attr:`~unittest.TestLoader.suiteClass` attribute of " +"the :class:`~unittest.TestLoader`. (Fixed by Mark Roddy; :issue:`6866`.)" msgstr "" 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." +"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 "" 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`.)" +":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 "" 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 " +":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 "" @@ -2479,32 +2503,33 @@ msgstr "" 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 " +"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:" -"`~xml.etree.ElementTree.Element.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." +"skip over elements and only output the text chunks. If you set " +"the :attr:`~xml.etree.ElementTree.Element.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 "" 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." +"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 "" 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::" +"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 "" msgid "" @@ -2521,18 +2546,18 @@ msgid "" msgstr "" msgid "" -"New :class:`~xml.etree.ElementTree.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." +"New :class:`~xml.etree.ElementTree.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 "" msgid "" -"New :class:`~xml.etree.ElementTree.Element` method: :meth:`~xml.etree." -"ElementTree.Element.itertext` yields all chunks of text that are descendants " -"of the element. For example::" +"New :class:`~xml.etree.ElementTree.Element` " +"method: :meth:`~xml.etree.ElementTree.Element.itertext` yields all chunks of " +"text that are descendants of the element. For example::" msgstr "" msgid "" @@ -2555,8 +2580,8 @@ msgstr "" msgid "" "Fredrik Lundh develops ElementTree and produced the 1.3 version; you can " -"read his article describing 1.3 at https://web.archive.org/" -"web/20200703234532/http://effbot.org/zone/elementtree-13-intro.htm. Florent " +"read his article describing 1.3 at https://web.archive.org/web/" +"20200703234532/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 "" @@ -2590,8 +2615,8 @@ msgstr "" 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`.)" +"for asynchronous IO operations. (Contributed by Kristján Valur " +"Jónsson; :issue:`4293`.)" msgstr "" msgid "" @@ -2618,11 +2643,12 @@ msgid "" msgstr "" msgid "" -"New functions: :c:func:`PyLong_AsLongAndOverflow` and :c:func:" -"`PyLong_AsLongLongAndOverflow` approximates a Python long integer as a C :c:" -"expr:`long` or :c:expr:`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`.)" +"New functions: :c:func:`PyLong_AsLongAndOverflow` " +"and :c:func:`PyLong_AsLongLongAndOverflow` approximates a Python long " +"integer as a C :c:expr:`long` or :c:expr:`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 "" msgid "" @@ -2662,14 +2688,12 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -2708,9 +2732,10 @@ msgid "(Fixed by Thomas Wouters; :issue:`1590864`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -2727,16 +2752,16 @@ msgstr "" 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`.)" +"Expat library. (Contributed by Arfrever Frehtes Taifersar " +"Arahesis; :issue:`7609`.)" msgstr "" 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`.)" +"detecting memory leaks and overruns. (Contributed by James " +"Henstridge; :issue:`2422`.)" msgstr "" msgid "" @@ -2749,8 +2774,8 @@ 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`.)" +"available if anyone wishes to use it. (Added by Mark " +"Dickinson; :issue:`2937`.)" msgstr "" msgid "" @@ -2775,12 +2800,12 @@ msgstr "" 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." +"*`` 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 "" msgid "" @@ -2814,8 +2839,8 @@ 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:`!" -"PyCObject` interface. Use of :c:func:`!PyCObject_AsVoidPtr` will signal a :" -"exc:`PendingDeprecationWarning`, which is silent by default." +"PyCObject` interface. Use of :c:func:`!PyCObject_AsVoidPtr` will signal " +"a :exc:`PendingDeprecationWarning`, which is silent by default." msgstr "" msgid "" @@ -2827,20 +2852,21 @@ msgid "Port-Specific Changes: Windows" msgstr "" msgid "" -"The :mod:`msvcrt` module now contains some constants from the :file:" -"`crtassem.h` header file: :data:`~msvcrt.CRT_ASSEMBLY_VERSION`, :data:" -"`~msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN`, and :data:`~msvcrt." -"LIBRARIES_ASSEMBLY_NAME_PREFIX`. (Contributed by David Cournapeau; :issue:" -"`4365`.)" +"The :mod:`msvcrt` module now contains some constants from " +"the :file:`crtassem.h` header " +"file: :data:`~msvcrt.CRT_ASSEMBLY_VERSION`, :data:`~msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN`, " +"and :data:`~msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX`. (Contributed by David " +"Cournapeau; :issue:`4365`.)" msgstr "" 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`.)" +"arguments. " +"The :func:`~winreg.DisableReflectionKey`, :func:`~winreg.EnableReflectionKey`, " +"and :func:`~winreg.QueryReflectionKey` were also tested and documented. " +"(Implemented by Brian Curtin: :issue:`7347`.)" msgstr "" msgid "" @@ -2851,11 +2877,12 @@ msgstr "" msgid "" "The :func:`os.kill` function now works on Windows. The signal value can be " -"the constants :const:`~signal.CTRL_C_EVENT`, :const:`~signal." -"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`.)" +"the " +"constants :const:`~signal.CTRL_C_EVENT`, :const:`~signal.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 "" msgid "" @@ -2872,10 +2899,10 @@ msgid "Port-Specific Changes: Mac OS X" msgstr "" 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`.)" +"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 "" msgid "" @@ -2893,10 +2920,11 @@ msgid "Port-Specific Changes: FreeBSD" msgstr "" msgid "" -"FreeBSD 7.1's :const:`!SO_SETFIB` constant, used with the :func:`~socket." -"socket` methods :func:`~socket.socket.getsockopt`/:func:`~socket.socket." -"setsockopt` to select an alternate routing table, is now available in the :" -"mod:`socket` module. (Added by Kyle VanderBeek; :issue:`8235`.)" +"FreeBSD 7.1's :const:`!SO_SETFIB` constant, used with " +"the :func:`~socket.socket` " +"methods :func:`~socket.socket.getsockopt`/:func:`~socket.socket.setsockopt` " +"to select an alternate routing table, is now available in the :mod:`socket` " +"module. (Added by Kyle VanderBeek; :issue:`8235`.)" msgstr "" msgid "Other Changes and Fixes" @@ -2912,8 +2940,8 @@ msgid "" msgstr "" msgid "" -"The :file:`Tools/i18n/msgfmt.py` script now understands plural forms in :" -"file:`.po` files. (Fixed by Martin von Löwis; :issue:`5464`.)" +"The :file:`Tools/i18n/msgfmt.py` script now understands plural forms " +"in :file:`.po` files. (Fixed by Martin von Löwis; :issue:`5464`.)" msgstr "" msgid "" @@ -2927,9 +2955,9 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -2965,8 +2993,8 @@ msgstr "" 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`.)" +"matches the precision used by :func:`str`. (Changed by Eric " +"Smith; :issue:`5920`.)" msgstr "" msgid "" @@ -2978,10 +3006,10 @@ msgid "" msgstr "" msgid "" -"Due to a bug in Python 2.6, the *exc_value* parameter to :meth:`~object." -"__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`.)" +"Due to a bug in Python 2.6, the *exc_value* parameter " +"to :meth:`~object.__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 "" msgid "In the standard library:" @@ -2989,17 +3017,17 @@ msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "" @@ -3025,9 +3053,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "For applications that embed Python:" @@ -3062,8 +3090,8 @@ msgid "Two new environment variables for debug mode" msgstr "" msgid "" -"In debug mode, the ``[xxx refs]`` statistic is not written by default, the :" -"envvar:`!PYTHONSHOWREFCOUNT` environment variable now must also be set. " +"In debug mode, the ``[xxx refs]`` statistic is not written by default, " +"the :envvar:`!PYTHONSHOWREFCOUNT` environment variable now must also be set. " "(Contributed by Victor Stinner; :issue:`31733`.)" msgstr "" @@ -3071,8 +3099,8 @@ msgid "" "When Python is compiled with ``COUNT_ALLOC`` defined, allocation counts are " "no longer dumped by default anymore: the :envvar:`!PYTHONSHOWALLOCCOUNT` " "environment variable must now also be set. Moreover, allocation counts are " -"now dumped into stderr, rather than stdout. (Contributed by Victor Stinner; :" -"issue:`31692`.)" +"now dumped into stderr, rather than stdout. (Contributed by Victor " +"Stinner; :issue:`31692`.)" msgstr "" msgid "PEP 434: IDLE Enhancement Exception for All Branches" @@ -3124,8 +3152,8 @@ msgstr "" 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`.)" +"python.org. (Contributed by Zachary Ware in :issue:`21671` " +"for :cve:`2014-0224`.)" msgstr "" msgid ":pep:`466` related features added in Python 2.7.9:" @@ -3150,10 +3178,10 @@ msgid "" msgstr "" msgid "" -":data:`hashlib.algorithms_guaranteed` and :data:`hashlib." -"algorithms_available` were backported from Python 3 to make it easier for " -"Python 2 applications to select the strongest available hash algorithm. " -"(Contributed by Alex Gaynor in :issue:`21307`)" +":data:`hashlib.algorithms_guaranteed` " +"and :data:`hashlib.algorithms_available` were backported from Python 3 to " +"make it easier for Python 2 applications to select the strongest available " +"hash algorithm. (Contributed by Alex Gaynor in :issue:`21307`)" msgstr "" msgid "PEP 477: Backport ensurepip (PEP 453) to Python 2.7" @@ -3221,8 +3249,8 @@ msgstr "" msgid "" "However, as this migration is currently still incomplete, the legacy " -"versions of those guides remaining available as :ref:`install-index` and :" -"ref:`setuptools-index`." +"versions of those guides remaining available as :ref:`install-index` " +"and :ref:`setuptools-index`." msgstr "" msgid ":pep:`453` -- Explicit bootstrapping of pip in Python installations" @@ -3238,9 +3266,9 @@ msgid "" msgstr "" msgid "" -":pep:`476` updated :mod:`httplib ` and modules which use it, such as :" -"mod:`urllib2 ` and :mod:`xmlrpclib `, to now " -"verify that the server presents a certificate which is signed by a " +":pep:`476` updated :mod:`httplib ` and modules which use it, such " +"as :mod:`urllib2 ` and :mod:`xmlrpclib `, to " +"now verify that the server presents a certificate which is signed by a " "Certificate Authority in the platform trust store and whose hostname matches " "the hostname being requested by default, significantly improving security " "for many applications. This change was made in the Python 2.7.9 release." @@ -3312,8 +3340,8 @@ msgid "" msgstr "" msgid "" -"More selective regeneration targets are also defined - see :source:`Makefile." -"pre.in` for details." +"More selective regeneration targets are also defined - " +"see :source:`Makefile.pre.in` for details." msgstr "" msgid "(Contributed by Victor Stinner in :issue:`23404`.)" diff --git a/whatsnew/3.0.po b/whatsnew/3.0.po index 3f01911..4a82a27 100644 --- a/whatsnew/3.0.po +++ b/whatsnew/3.0.po @@ -8,10 +8,10 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -129,34 +129,34 @@ msgid "Some well-known APIs no longer return lists:" msgstr "" 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)." +":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 "" msgid "" -"Also, the :meth:`!dict.iterkeys`, :meth:`!dict.iteritems` and :meth:`!dict." -"itervalues` methods are no longer supported." +"Also, the :meth:`!dict.iterkeys`, :meth:`!dict.iteritems` and :meth:`!" +"dict.itervalues` methods are no longer supported." msgstr "" 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 " +"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 "" 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)))``." +"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 "" msgid "" @@ -218,9 +218,9 @@ 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)." +"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 "" msgid "" @@ -243,14 +243,14 @@ msgstr "" 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." +"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 "" msgid "" @@ -258,9 +258,9 @@ msgid "" "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." +"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 "" msgid "" @@ -270,18 +270,18 @@ msgstr "" 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." +"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 "" 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 `." +"The mutable API is based on :class:`collections.MutableSequence " +"`." msgstr "" msgid "" @@ -294,11 +294,11 @@ msgid "" msgstr "" 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`." +"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 "" msgid "" @@ -319,10 +319,10 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -330,14 +330,14 @@ msgid "" "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`." +"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 "" msgid "" @@ -364,8 +364,8 @@ msgstr "" 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." +"import the :mod:`io` module and use :class:`io.StringIO` " +"or :class:`io.BytesIO` for text and data respectively." msgstr "" msgid "See also the :ref:`unicode-howto`, which was updated for Python 3.0." @@ -408,8 +408,8 @@ msgstr "" 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." +"now assign directly to a variable in an outer (but non-global) " +"scope. :keyword:`!nonlocal` is a new reserved word." msgstr "" msgid "" @@ -456,8 +456,8 @@ msgid "Changed Syntax" msgstr "" msgid "" -":pep:`3109` and :pep:`3134`: new :keyword:`raise` statement syntax: :samp:" -"`raise [{expr} [from {expr}]]`. See below." +":pep:`3109` and :pep:`3134`: new :keyword:`raise` statement " +"syntax: :samp:`raise [{expr} [from {expr}]]`. See below." msgstr "" msgid "" @@ -471,8 +471,8 @@ msgid "" msgstr "" msgid "" -"Change from :keyword:`except` *exc*, *var* to :keyword:`!except` *exc* :" -"keyword:`!as` *var*. See :pep:`3110`." +"Change from :keyword:`except` *exc*, *var* to :keyword:`!except` " +"*exc* :keyword:`!as` *var*. See :pep:`3110`." msgstr "" msgid ":pep:`3115`: New Metaclass Syntax. Instead of::" @@ -586,9 +586,10 @@ msgstr "" 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." +"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 "" msgid "" @@ -612,11 +613,11 @@ 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)." +"*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 "" msgid "" @@ -625,12 +626,12 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -669,8 +670,8 @@ 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." +"However, the package is alive and well, externally maintained at https://" +"www.jcea.es/programacion/pybsddb.htm." msgstr "" msgid "" @@ -752,8 +753,8 @@ msgid "" msgstr "" msgid "" -":mod:`dbm` (:mod:`!anydbm`, :mod:`!dbhash`, :mod:`!dbm`, :mod:`!dumbdbm`, :" -"mod:`!gdbm`, :mod:`!whichdb`)." +":mod:`dbm` (:mod:`!anydbm`, :mod:`!dbhash`, :mod:`!dbm`, :mod:`!" +"dumbdbm`, :mod:`!gdbm`, :mod:`!whichdb`)." msgstr "" msgid ":mod:`html` (:mod:`!HTMLParser`, :mod:`!htmlentitydefs`)." @@ -789,16 +790,17 @@ msgid "Killed :mod:`!sets`. Use the built-in :func:`set` class." msgstr "" 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.)" +"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 "" msgid "" "Cleanup of the :class:`array.array` type: the :meth:`!read` and :meth:`!" -"write` methods are gone; use :meth:`~array.array.fromfile` and :meth:`~array." -"array.tofile` instead. Also, the ``'c'`` typecode for array is gone -- use " -"either ``'b'`` for bytes or ``'u'`` for Unicode characters." +"write` methods are gone; use :meth:`~array.array.fromfile` " +"and :meth:`~array.array.tofile` instead. Also, the ``'c'`` typecode for " +"array is gone -- use either ``'b'`` for bytes or ``'u'`` for Unicode " +"characters." msgstr "" msgid "" @@ -808,8 +810,8 @@ msgstr "" msgid "" "Cleanup of the :mod:`!thread` module: :func:`!acquire_lock` and :func:`!" -"release_lock` are gone; use :meth:`~threading.Lock.acquire` and :meth:" -"`~threading.Lock.release` instead." +"release_lock` are gone; use :meth:`~threading.Lock.acquire` " +"and :meth:`~threading.Lock.release` instead." msgstr "" msgid "" @@ -820,8 +822,8 @@ msgid "The :mod:`!new` module is gone." msgstr "" msgid "" -"The functions :func:`!os.tmpnam`, :func:`!os.tempnam` and :func:`!os." -"tmpfile` have been removed in favor of the :mod:`tempfile` module." +"The functions :func:`!os.tmpnam`, :func:`!os.tempnam` and :func:`!" +"os.tmpfile` have been removed in favor of the :mod:`tempfile` module." msgstr "" msgid "" @@ -830,18 +832,18 @@ msgid "" msgstr "" 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 " +":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 "" 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__`!" +"most global namespaces is unchanged. To modify a builtin, you should " +"use :mod:`builtins`, not :data:`!__builtins__`!" msgstr "" msgid ":pep:`3101`: A New Approach To String Formatting" @@ -863,28 +865,29 @@ msgid "" msgstr "" 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." +":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 "" 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`." +"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 "" msgid ":exc:`!StandardError` was removed." msgstr "" msgid "" -"Exceptions no longer behave as sequences. Use the :attr:`~BaseException." -"args` attribute instead." +"Exceptions no longer behave as sequences. Use " +"the :attr:`~BaseException.args` attribute instead." msgstr "" msgid "" @@ -898,8 +901,8 @@ msgstr "" 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." +"{variable}`. Moreover, the *variable* is explicitly deleted when " +"the :keyword:`except` block is left." msgstr "" msgid "" @@ -920,18 +923,18 @@ msgid "" "object, probably an exception that was previously caught). In this case, the " "primary exception is stored on the :attr:`~BaseException.__cause__` " "attribute of the secondary exception. The traceback printed when an " -"unhandled exception occurs walks the chain of :attr:`!__cause__` and :attr:" -"`~BaseException.__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.)" +"unhandled exception occurs walks the chain of :attr:`!__cause__` " +"and :attr:`~BaseException.__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 "" msgid "" -":pep:`3134`: Exception objects now store their traceback as the :attr:" -"`~BaseException.__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)." +":pep:`3134`: Exception objects now store their traceback as " +"the :attr:`~BaseException.__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 "" msgid "" @@ -947,8 +950,8 @@ msgid "Operators And Special Methods" msgstr "" msgid "" -"``!=`` now returns the opposite of ``==``, unless ``==`` returns :data:" -"`NotImplemented`." +"``!=`` now returns the opposite of ``==``, unless ``==`` " +"returns :data:`NotImplemented`." msgstr "" msgid "" @@ -965,28 +968,28 @@ msgid "" msgstr "" msgid "" -":pep:`3114`: the standard :meth:`next` method has been renamed to :meth:" -"`~iterator.__next__`." +":pep:`3114`: the standard :meth:`next` method has been renamed " +"to :meth:`~iterator.__next__`." msgstr "" msgid "" -"The :meth:`!__oct__` and :meth:`!__hex__` special methods are removed -- :" -"func:`oct` and :func:`hex` use :meth:`~object.__index__` now to convert the " -"argument to an integer." +"The :meth:`!__oct__` and :meth:`!__hex__` special methods are removed " +"-- :func:`oct` and :func:`hex` use :meth:`~object.__index__` now to convert " +"the argument to an integer." msgstr "" msgid "Removed support for :attr:`!__members__` and :attr:`!__methods__`." msgstr "" msgid "" -"The function attributes named :attr:`!func_X` have been renamed to use the :" -"attr:`!__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:" -"`~function.__closure__`, :attr:`~function.__code__`, :attr:`~function." -"__defaults__`, :attr:`~function.__dict__`, :attr:`~function.__doc__`, :attr:" -"`~function.__globals__`, :attr:`~function.__name__`, respectively." +"The function attributes named :attr:`!func_X` have been renamed to use " +"the :attr:`!__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:`~function.__closure__`, :attr:`~function.__code__`, :attr:`~function.__defaults__`, :attr:`~function.__dict__`, :attr:`~function.__doc__`, :attr:`~function.__globals__`, :attr:`~function.__name__`, " +"respectively." msgstr "" msgid ":meth:`!__nonzero__` is now :meth:`~object.__bool__`." @@ -1012,8 +1015,8 @@ msgid "" msgstr "" msgid "" -"A new built-in function :func:`next` was added to call the :meth:`~iterator." -"__next__` method on an object." +"A new built-in function :func:`next` was added to call " +"the :meth:`~iterator.__next__` method on an object." msgstr "" msgid "" @@ -1045,8 +1048,8 @@ msgid "" msgstr "" msgid "" -"Removed :func:`!execfile`. Instead of ``execfile(fn)`` use ``exec(open(fn)." -"read())``." +"Removed :func:`!execfile`. Instead of ``execfile(fn)`` use " +"``exec(open(fn).read())``." msgstr "" msgid "" @@ -1098,9 +1101,9 @@ msgid "" msgstr "" 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)." +"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 "" msgid "" @@ -1154,8 +1157,8 @@ msgstr "" 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 " +"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 " diff --git a/whatsnew/3.1.po b/whatsnew/3.1.po index a980dc6..5f57e23 100644 --- a/whatsnew/3.1.po +++ b/whatsnew/3.1.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -43,8 +43,8 @@ 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." +"the experiences from those implementations, a " +"new :class:`collections.OrderedDict` class has been introduced." msgstr "" msgid "" @@ -125,8 +125,8 @@ msgid "" msgstr "" msgid "" -"The supported types are :class:`int`, :class:`float`, :class:`complex` and :" -"class:`decimal.Decimal`." +"The supported types are :class:`int`, :class:`float`, :class:`complex` " +"and :class:`decimal.Decimal`." msgstr "" msgid "" @@ -201,10 +201,10 @@ msgstr "" 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." +"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 "" msgid "(Contributed by Georg Brandl; :issue:`5675`.)" @@ -355,13 +355,13 @@ msgid "(Contributed by Raymond Hettinger and Mark Dickinson.)" msgstr "" 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`::" +"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 "" msgid "" @@ -412,10 +412,11 @@ msgid "(Contributed by Gregory Smith.)" msgstr "" 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\"::" +"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 "" msgid "" @@ -436,8 +437,8 @@ msgid "(Contributed by Andi Vajda; :issue:`4195`.)" msgstr "" msgid "" -"The :mod:`pdb` module can now access and display source code loaded via :mod:" -"`zipimport` (or any other conformant :pep:`302` loader)." +"The :mod:`pdb` module can now access and display source code loaded " +"via :mod:`zipimport` (or any other conformant :pep:`302` loader)." msgstr "" msgid "(Contributed by Alexander Belopolsky; :issue:`4201`.)" @@ -491,13 +492,11 @@ msgid "" msgstr "" msgid "" -"In addition, several new assertion methods were added including :meth:" -"`~unittest.TestCase.assertSetEqual`, :meth:`~unittest.TestCase." -"assertDictEqual`, :meth:`!assertDictContainsSubset`, :meth:`~unittest." -"TestCase.assertListEqual`, :meth:`~unittest.TestCase.assertTupleEqual`, :" -"meth:`~unittest.TestCase.assertSequenceEqual`, :meth:`assertRaisesRegexp() " -"`, :meth:`~unittest.TestCase." -"assertIsNone`, and :meth:`~unittest.TestCase.assertIsNotNone`." +"In addition, several new assertion methods were added " +"including :meth:`~unittest.TestCase.assertSetEqual`, :meth:`~unittest.TestCase.assertDictEqual`, :meth:`!" +"assertDictContainsSubset`, :meth:`~unittest.TestCase.assertListEqual`, :meth:`~unittest.TestCase.assertTupleEqual`, :meth:`~unittest.TestCase.assertSequenceEqual`, :meth:`assertRaisesRegexp() " +"`, :meth:`~unittest.TestCase.assertIsNone`, " +"and :meth:`~unittest.TestCase.assertIsNotNone`." msgstr "" msgid "(Contributed by Benjamin Peterson and Antoine Pitrou.)" @@ -603,8 +602,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Antoine Pitrou along with a number of other participants, :" -"issue:`4753`)." +"(Contributed by Antoine Pitrou along with a number of other " +"participants, :issue:`4753`)." msgstr "" msgid "" diff --git a/whatsnew/3.10.po b/whatsnew/3.10.po index 25fa87d..6e36558 100644 --- a/whatsnew/3.10.po +++ b/whatsnew/3.10.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.10, compared to 3.9. " -"Python 3.10 was released on October 4, 2021. For full details, see the :ref:" -"`changelog `." +"Python 3.10 was released on October 4, 2021. For full details, see " +"the :ref:`changelog `." msgstr "" msgid "Summary -- Release highlights" @@ -156,13 +156,13 @@ msgid "" msgstr "" msgid "" -"This new syntax uses the non LL(1) capacities of the new parser. Check :pep:" -"`617` for more details." +"This new syntax uses the non LL(1) capacities of the new parser. " +"Check :pep:`617` for more details." msgstr "" msgid "" -"(Contributed by Guido van Rossum, Pablo Galindo and Lysandros Nikolaou in :" -"issue:`12782` and :issue:`40334`.)" +"(Contributed by Guido van Rossum, Pablo Galindo and Lysandros Nikolaou " +"in :issue:`12782` and :issue:`40334`.)" msgstr "" msgid "Better error messages" @@ -218,8 +218,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Pablo Galindo in :issue:`42864` and Batuhan Taskaya in :" -"issue:`40176`.)" +"(Contributed by Pablo Galindo in :issue:`42864` and Batuhan Taskaya " +"in :issue:`40176`.)" msgstr "" msgid "" @@ -474,8 +474,8 @@ msgstr "" msgid "" "The :attr:`!codeobject.co_lnotab` attribute of :ref:`code objects ` is deprecated and will be removed in 3.12. Code that needs to " -"convert from offset to line number should use the new :meth:`~codeobject." -"co_lines` method instead." +"convert from offset to line number should use the " +"new :meth:`~codeobject.co_lines` method instead." msgstr "" msgid "PEP 634: Structural Pattern Matching" @@ -840,8 +840,8 @@ msgid "" msgstr "" msgid "" -"For the full specification see :pep:`634`. Motivation and rationale are in :" -"pep:`635`, and a longer tutorial is in :pep:`636`." +"For the full specification see :pep:`634`. Motivation and rationale are " +"in :pep:`635`, and a longer tutorial is in :pep:`636`." msgstr "" msgid "Optional ``EncodingWarning`` and ``encoding=\"locale\"`` option" @@ -878,8 +878,8 @@ msgid "New Features Related to Type Hints" msgstr "" msgid "" -"This section covers major changes affecting :pep:`484` type hints and the :" -"mod:`typing` module." +"This section covers major changes affecting :pep:`484` type hints and " +"the :mod:`typing` module." msgstr "" msgid "PEP 604: New Type Union Operator" @@ -910,8 +910,8 @@ msgid "" msgstr "" msgid "" -"This new syntax is also accepted as the second argument to :func:" -"`isinstance` and :func:`issubclass`::" +"This new syntax is also accepted as the second argument " +"to :func:`isinstance` and :func:`issubclass`::" msgstr "" msgid "" @@ -951,9 +951,8 @@ msgid "" msgstr "" msgid "" -"See :class:`typing.Callable`, :class:`typing.ParamSpec`, :class:`typing." -"Concatenate`, :class:`typing.ParamSpecArgs`, :class:`typing." -"ParamSpecKwargs`, and :pep:`612` for more details." +"See :class:`typing.Callable`, :class:`typing.ParamSpec`, :class:`typing.Concatenate`, :class:`typing.ParamSpecArgs`, :class:`typing.ParamSpecKwargs`, " +"and :pep:`612` for more details." msgstr "" msgid "" @@ -999,8 +998,8 @@ msgstr "" msgid "" ":data:`~typing.TypeGuard` has been added to the :mod:`typing` module to " "annotate type guard functions and improve information provided to static " -"type checkers during type narrowing. For more information, please see :data:" -"`~typing.TypeGuard`\\ 's documentation, and :pep:`647`." +"type checkers during type narrowing. For more information, please " +"see :data:`~typing.TypeGuard`\\ 's documentation, and :pep:`647`." msgstr "" msgid "" @@ -1018,10 +1017,10 @@ msgid "" msgstr "" msgid "" -"The views returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:`dict." -"items` now all have a ``mapping`` attribute that gives a :class:`types." -"MappingProxyType` object wrapping the original dictionary. (Contributed by " -"Dennis Sweeney in :issue:`40890`.)" +"The views returned by :meth:`dict.keys`, :meth:`dict.values` " +"and :meth:`dict.items` now all have a ``mapping`` attribute that gives " +"a :class:`types.MappingProxyType` object wrapping the original dictionary. " +"(Contributed by Dennis Sweeney in :issue:`40890`.)" msgstr "" msgid "" @@ -1033,8 +1032,9 @@ msgid "" "Builtin and extension functions that take integer arguments no longer " "accept :class:`~decimal.Decimal`\\ s, :class:`~fractions.Fraction`\\ s and " "other objects that can be converted to integers only with a loss (e.g. that " -"have the :meth:`~object.__int__` method but do not have the :meth:`~object." -"__index__` method). (Contributed by Serhiy Storchaka in :issue:`37999`.)" +"have the :meth:`~object.__int__` method but do not have " +"the :meth:`~object.__index__` method). (Contributed by Serhiy Storchaka " +"in :issue:`37999`.)" msgstr "" msgid "" @@ -1064,8 +1064,8 @@ msgid "" msgstr "" msgid "" -"Static methods (:deco:`staticmethod`) and class methods (:deco:" -"`classmethod`) now inherit the method attributes (``__module__``, " +"Static methods (:deco:`staticmethod`) and class methods " +"(:deco:`classmethod`) now inherit the method attributes (``__module__``, " "``__name__``, ``__qualname__``, ``__doc__``, ``__annotations__``) and have a " "new ``__wrapped__`` attribute. Moreover, static methods are now callable as " "regular functions. (Contributed by Victor Stinner in :issue:`43682`.)" @@ -1074,8 +1074,8 @@ msgstr "" msgid "" "Annotations for complex targets (everything beside ``simple name`` targets " "defined by :pep:`526`) no longer cause any runtime effects with ``from " -"__future__ import annotations``. (Contributed by Batuhan Taskaya in :issue:" -"`42737`.)" +"__future__ import annotations``. (Contributed by Batuhan Taskaya " +"in :issue:`42737`.)" msgstr "" msgid "" @@ -1089,8 +1089,8 @@ msgstr "" msgid "" "Annotations consist of ``yield``, ``yield from``, ``await`` or named " "expressions are now forbidden under ``from __future__ import annotations`` " -"due to their side effects. (Contributed by Batuhan Taskaya in :issue:" -"`42725`.)" +"due to their side effects. (Contributed by Batuhan Taskaya " +"in :issue:`42725`.)" msgstr "" msgid "" @@ -1101,18 +1101,18 @@ msgid "" msgstr "" msgid "" -"Hashes of NaN values of both :class:`float` type and :class:`decimal." -"Decimal` type now depend on object identity. Formerly, they always hashed to " -"``0`` even though NaN values are not equal to one another. This caused " -"potentially quadratic runtime behavior due to excessive hash collisions when " -"creating dictionaries and sets containing multiple NaNs. (Contributed by " -"Raymond Hettinger in :issue:`43475`.)" +"Hashes of NaN values of both :class:`float` type " +"and :class:`decimal.Decimal` type now depend on object identity. Formerly, " +"they always hashed to ``0`` even though NaN values are not equal to one " +"another. This caused potentially quadratic runtime behavior due to excessive " +"hash collisions when creating dictionaries and sets containing multiple " +"NaNs. (Contributed by Raymond Hettinger in :issue:`43475`.)" msgstr "" msgid "" "A :exc:`SyntaxError` (instead of a :exc:`NameError`) will be raised when " -"deleting the :const:`__debug__` constant. (Contributed by Donghee Na in :" -"issue:`45000`.)" +"deleting the :const:`__debug__` constant. (Contributed by Donghee Na " +"in :issue:`45000`.)" msgstr "" msgid "" @@ -1185,8 +1185,9 @@ msgid "bisect" msgstr "" msgid "" -"Added the possibility of providing a *key* function to the APIs in the :mod:" -"`bisect` module. (Contributed by Raymond Hettinger in :issue:`4356`.)" +"Added the possibility of providing a *key* function to the APIs in " +"the :mod:`bisect` module. (Contributed by Raymond Hettinger " +"in :issue:`4356`.)" msgstr "" msgid "codecs" @@ -1202,17 +1203,17 @@ msgstr "" msgid "" "The ``__args__`` of the :ref:`parameterized generic ` " -"for :class:`collections.abc.Callable` are now consistent with :data:`typing." -"Callable`. :class:`collections.abc.Callable` generic now flattens type " -"parameters, similar to what :data:`typing.Callable` currently does. This " -"means that ``collections.abc.Callable[[int, str], str]`` will have " -"``__args__`` of ``(int, str, str)``; previously this was ``([int, str], " +"for :class:`collections.abc.Callable` are now consistent " +"with :data:`typing.Callable`. :class:`collections.abc.Callable` generic now " +"flattens type parameters, similar to what :data:`typing.Callable` currently " +"does. This means that ``collections.abc.Callable[[int, str], str]`` will " +"have ``__args__`` of ``(int, str, str)``; previously this was ``([int, str], " "str)``. To allow this change, :class:`types.GenericAlias` can now be " -"subclassed, and a subclass will be returned when subscripting the :class:" -"`collections.abc.Callable` type. Note that a :exc:`TypeError` may be raised " -"for invalid forms of parameterizing :class:`collections.abc.Callable` which " -"may have passed silently in Python 3.9. (Contributed by Ken Jin in :issue:" -"`42195`.)" +"subclassed, and a subclass will be returned when subscripting " +"the :class:`collections.abc.Callable` type. Note that a :exc:`TypeError` " +"may be raised for invalid forms of " +"parameterizing :class:`collections.abc.Callable` which may have passed " +"silently in Python 3.9. (Contributed by Ken Jin in :issue:`42195`.)" msgstr "" msgid "contextlib" @@ -1239,11 +1240,11 @@ msgstr "" msgid "" "The extended color functions added in ncurses 6.1 will be used transparently " -"by :func:`curses.color_content`, :func:`curses.init_color`, :func:`curses." -"init_pair`, and :func:`curses.pair_content`. A new function, :func:`curses." -"has_extended_color_support`, indicates whether extended color support is " -"provided by the underlying ncurses library. (Contributed by Jeffrey " -"Kintscher and Hans Petter Jansson in :issue:`36982`.)" +"by :func:`curses.color_content`, :func:`curses.init_color`, :func:`curses.init_pair`, " +"and :func:`curses.pair_content`. A new " +"function, :func:`curses.has_extended_color_support`, indicates whether " +"extended color support is provided by the underlying ncurses library. " +"(Contributed by Jeffrey Kintscher and Hans Petter Jansson in :issue:`36982`.)" msgstr "" msgid "" @@ -1338,11 +1339,11 @@ msgid "" "3.12. Its functionality for specifying package builds has already been " "completely replaced by third-party packages ``setuptools`` and " "``packaging``, and most other commonly used APIs are available elsewhere in " -"the standard library (such as :mod:`platform`, :mod:`shutil`, :mod:" -"`subprocess` or :mod:`sysconfig`). There are no plans to migrate any other " -"functionality from ``distutils``, and applications that are using other " -"functions should plan to make private copies of the code. Refer to :pep:" -"`632` for discussion." +"the standard library (such " +"as :mod:`platform`, :mod:`shutil`, :mod:`subprocess` or :mod:`sysconfig`). " +"There are no plans to migrate any other functionality from ``distutils``, " +"and applications that are using other functions should plan to make private " +"copies of the code. Refer to :pep:`632` for discussion." msgstr "" msgid "" @@ -1355,8 +1356,8 @@ msgid "doctest" msgstr "" msgid "" -"When a module does not define ``__loader__``, fall back to ``__spec__." -"loader``. (Contributed by Brett Cannon in :issue:`42133`.)" +"When a module does not define ``__loader__``, fall back to " +"``__spec__.loader``. (Contributed by Brett Cannon in :issue:`42133`.)" msgstr "" msgid "encodings" @@ -1371,10 +1372,11 @@ msgid "enum" msgstr "" msgid "" -":class:`~enum.Enum` :func:`~object.__repr__` now returns ``enum_name." -"member_name`` and :func:`~object.__str__` now returns ``member_name``. " -"Stdlib enums available as module constants have a :func:`repr` of " -"``module_name.member_name``. (Contributed by Ethan Furman in :issue:`40066`.)" +":class:`~enum.Enum` :func:`~object.__repr__` now returns " +"``enum_name.member_name`` and :func:`~object.__str__` now returns " +"``member_name``. Stdlib enums available as module constants have " +"a :func:`repr` of ``module_name.member_name``. (Contributed by Ethan Furman " +"in :issue:`40066`.)" msgstr "" msgid "" @@ -1386,8 +1388,9 @@ msgid "fileinput" msgstr "" msgid "" -"Add *encoding* and *errors* parameters in :func:`fileinput.input` and :class:" -"`fileinput.FileInput`. (Contributed by Inada Naoki in :issue:`43712`.)" +"Add *encoding* and *errors* parameters in :func:`fileinput.input` " +"and :class:`fileinput.FileInput`. (Contributed by Inada Naoki " +"in :issue:`43712`.)" msgstr "" msgid "" @@ -1401,25 +1404,26 @@ msgstr "" msgid "" "The :mod:`faulthandler` module now detects if a fatal error occurs during a " -"garbage collector collection. (Contributed by Victor Stinner in :issue:" -"`44466`.)" +"garbage collector collection. (Contributed by Victor Stinner " +"in :issue:`44466`.)" msgstr "" msgid "gc" msgstr "" msgid "" -"Add audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` and :" -"func:`gc.get_referents`. (Contributed by Pablo Galindo in :issue:`43439`.)" +"Add audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` " +"and :func:`gc.get_referents`. (Contributed by Pablo Galindo " +"in :issue:`43439`.)" msgstr "" msgid "glob" msgstr "" msgid "" -"Add the *root_dir* and *dir_fd* parameters in :func:`~glob.glob` and :func:" -"`~glob.iglob` which allow to specify the root directory for searching. " -"(Contributed by Serhiy Storchaka in :issue:`38144`.)" +"Add the *root_dir* and *dir_fd* parameters in :func:`~glob.glob` " +"and :func:`~glob.iglob` which allow to specify the root directory for " +"searching. (Contributed by Serhiy Storchaka in :issue:`38144`.)" msgstr "" msgid "hashlib" @@ -1454,18 +1458,18 @@ msgstr "" msgid "" "Make IDLE invoke :func:`sys.excepthook` (when started without '-n'). User " -"hooks were previously ignored. (Contributed by Ken Hilton in :issue:" -"`43008`.)" +"hooks were previously ignored. (Contributed by Ken Hilton " +"in :issue:`43008`.)" msgstr "" msgid "" "Rearrange the settings dialog. Split the General tab into Windows and Shell/" "Ed tabs. Move help sources, which extend the Help menu, to the Extensions " "tab. Make space for new options and shorten the dialog. The latter makes " -"the dialog better fit small screens. (Contributed by Terry Jan Reedy in :" -"issue:`40468`.) Move the indent space setting from the Font tab to the new " -"Windows tab. (Contributed by Mark Roseman and Terry Jan Reedy in :issue:" -"`33962`.)" +"the dialog better fit small screens. (Contributed by Terry Jan Reedy " +"in :issue:`40468`.) Move the indent space setting from the Font tab to the " +"new Windows tab. (Contributed by Mark Roseman and Terry Jan Reedy " +"in :issue:`33962`.)" msgstr "" msgid "The changes above were backported to a 3.9 maintenance release." @@ -1489,11 +1493,12 @@ msgid "" msgstr "" msgid "" -"Highlight the new :ref:`soft keywords ` :keyword:`match`, :" -"keyword:`case `, and :keyword:`_ ` in pattern-" -"matching statements. However, this highlighting is not perfect and will be " -"incorrect in some rare cases, including some ``_``-s in ``case`` patterns. " -"(Contributed by Tal Einat in :issue:`44010`.)" +"Highlight the new :ref:`soft keywords ` :keyword:`match`, :keyword:`case `, and :keyword:`_ " +"` in pattern-matching statements. However, this " +"highlighting is not perfect and will be incorrect in some rare cases, " +"including some ``_``-s in ``case`` patterns. (Contributed by Tal Einat " +"in :issue:`44010`.)" msgstr "" msgid "New in 3.10 maintenance releases." @@ -1519,9 +1524,9 @@ msgstr "" msgid "" ":ref:`importlib.metadata entry points ` now provide a nicer " -"experience for selecting entry points by group and name through a new :ref:" -"`importlib.metadata.EntryPoints ` class. See the Compatibility " -"Note in the docs for more info on the deprecation and usage." +"experience for selecting entry points by group and name through a " +"new :ref:`importlib.metadata.EntryPoints ` class. See the " +"Compatibility Note in the docs for more info on the deprecation and usage." msgstr "" msgid "" @@ -1538,24 +1543,25 @@ msgid "" "defined on an object. It works around the quirks of accessing the " "annotations on various types of objects, and makes very few assumptions " "about the object it examines. :func:`inspect.get_annotations` can also " -"correctly un-stringize stringized annotations. :func:`inspect." -"get_annotations` is now considered best practice for accessing the " -"annotations dict defined on any Python object; for more information on best " -"practices for working with annotations, please see :ref:`annotations-howto`. " -"Relatedly, :func:`inspect.signature`, :func:`inspect.Signature." -"from_callable`, and :func:`!inspect.Signature.from_function` now call :func:" -"`inspect.get_annotations` to retrieve annotations. This means :func:`inspect." -"signature` and :func:`inspect.Signature.from_callable` can also now un-" -"stringize stringized annotations. (Contributed by Larry Hastings in :issue:" -"`43817`.)" +"correctly un-stringize stringized " +"annotations. :func:`inspect.get_annotations` is now considered best " +"practice for accessing the annotations dict defined on any Python object; " +"for more information on best practices for working with annotations, please " +"see :ref:`annotations-howto`. " +"Relatedly, :func:`inspect.signature`, :func:`inspect.Signature.from_callable`, " +"and :func:`!inspect.Signature.from_function` now " +"call :func:`inspect.get_annotations` to retrieve annotations. This " +"means :func:`inspect.signature` and :func:`inspect.Signature.from_callable` " +"can also now un-stringize stringized annotations. (Contributed by Larry " +"Hastings in :issue:`43817`.)" msgstr "" msgid "itertools" msgstr "" msgid "" -"Add :func:`itertools.pairwise`. (Contributed by Raymond Hettinger in :issue:" -"`38200`.)" +"Add :func:`itertools.pairwise`. (Contributed by Raymond Hettinger " +"in :issue:`38200`.)" msgstr "" msgid "linecache" @@ -1571,8 +1577,8 @@ msgstr "" msgid "" "Add a new function :func:`os.eventfd` and related helpers to wrap the " -"``eventfd2`` syscall on Linux. (Contributed by Christian Heimes in :issue:" -"`41001`.)" +"``eventfd2`` syscall on Linux. (Contributed by Christian Heimes " +"in :issue:`41001`.)" msgstr "" msgid "" @@ -1584,8 +1590,8 @@ msgstr "" msgid "" "Add :const:`~os.O_EVTONLY`, :const:`~os.O_FSYNC`, :const:`~os.O_SYMLINK` " -"and :const:`~os.O_NOFOLLOW_ANY` for macOS. (Contributed by Donghee Na in :" -"issue:`43106`.)" +"and :const:`~os.O_NOFOLLOW_ANY` for macOS. (Contributed by Donghee Na " +"in :issue:`43106`.)" msgstr "" msgid "os.path" @@ -1606,22 +1612,23 @@ msgid "" msgstr "" msgid "" -"Add negative indexing support to :attr:`PurePath.parents `. (Contributed by Yaroslav Pankovych in :issue:`21041`.)" +"Add negative indexing support to :attr:`PurePath.parents " +"`. (Contributed by Yaroslav Pankovych " +"in :issue:`21041`.)" msgstr "" msgid "" "Add :meth:`Path.hardlink_to ` method that " -"supersedes :meth:`!link_to`. The new method has the same argument order as :" -"meth:`~pathlib.Path.symlink_to`. (Contributed by Barney Gale in :issue:" -"`39950`.)" +"supersedes :meth:`!link_to`. The new method has the same argument order " +"as :meth:`~pathlib.Path.symlink_to`. (Contributed by Barney Gale " +"in :issue:`39950`.)" msgstr "" msgid "" ":meth:`pathlib.Path.stat` and :meth:`~pathlib.Path.chmod` now accept a " "*follow_symlinks* keyword-only argument for consistency with corresponding " -"functions in the :mod:`os` module. (Contributed by Barney Gale in :issue:" -"`39906`.)" +"functions in the :mod:`os` module. (Contributed by Barney Gale " +"in :issue:`39906`.)" msgstr "" msgid "platform" @@ -1660,9 +1667,9 @@ msgstr "" msgid "" "Add an ``end_lineno`` attribute to the ``Function`` and ``Class`` objects in " -"the tree returned by :func:`pyclbr.readmodule` and :func:`pyclbr." -"readmodule_ex`. It matches the existing (start) ``lineno``. (Contributed by " -"Aviral Srivastava in :issue:`38307`.)" +"the tree returned by :func:`pyclbr.readmodule` " +"and :func:`pyclbr.readmodule_ex`. It matches the existing (start) " +"``lineno``. (Contributed by Aviral Srivastava in :issue:`38307`.)" msgstr "" msgid "shelve" @@ -1678,9 +1685,10 @@ msgid "statistics" msgstr "" msgid "" -"Add :func:`~statistics.covariance`, Pearson's :func:`~statistics." -"correlation`, and simple :func:`~statistics.linear_regression` functions. " -"(Contributed by Tymoteusz Wołodźko in :issue:`38490`.)" +"Add :func:`~statistics.covariance`, " +"Pearson's :func:`~statistics.correlation`, and " +"simple :func:`~statistics.linear_regression` functions. (Contributed by " +"Tymoteusz Wołodźko in :issue:`38490`.)" msgstr "" msgid "site" @@ -1713,28 +1721,29 @@ msgid "" msgstr "" msgid "" -"The ssl module has preliminary support for OpenSSL 3.0.0 and new option :" -"const:`~ssl.OP_IGNORE_UNEXPECTED_EOF`. (Contributed by Christian Heimes in :" -"issue:`38820`, :issue:`43794`, :issue:`43788`, :issue:`43791`, :issue:" -"`43799`, :issue:`43920`, :issue:`43789`, and :issue:`43811`.)" +"The ssl module has preliminary support for OpenSSL 3.0.0 and new " +"option :const:`~ssl.OP_IGNORE_UNEXPECTED_EOF`. (Contributed by Christian " +"Heimes " +"in :issue:`38820`, :issue:`43794`, :issue:`43788`, :issue:`43791`, :issue:`43799`, :issue:`43920`, :issue:`43789`, " +"and :issue:`43811`.)" msgstr "" msgid "" -"Deprecated function and use of deprecated constants now result in a :exc:" -"`DeprecationWarning`. :attr:`ssl.SSLContext.options` has :data:`~ssl." -"OP_NO_SSLv2` and :data:`~ssl.OP_NO_SSLv3` set by default and therefore " -"cannot warn about setting the flag again. The :ref:`deprecation section " -"` has a list of deprecated features. (Contributed by " -"Christian Heimes in :issue:`43880`.)" +"Deprecated function and use of deprecated constants now result in " +"a :exc:`DeprecationWarning`. :attr:`ssl.SSLContext.options` " +"has :data:`~ssl.OP_NO_SSLv2` and :data:`~ssl.OP_NO_SSLv3` set by default and " +"therefore cannot warn about setting the flag again. The :ref:`deprecation " +"section ` has a list of deprecated features. " +"(Contributed by Christian Heimes in :issue:`43880`.)" msgstr "" msgid "" "The ssl module now has more secure default settings. Ciphers without forward " "secrecy or SHA-1 MAC are disabled by default. Security level 2 prohibits " -"weak RSA, DH, and ECC keys with less than 112 bits of security. :class:`~ssl." -"SSLContext` defaults to minimum protocol version TLS 1.2. Settings are based " -"on Hynek Schlawack's research. (Contributed by Christian Heimes in :issue:" -"`43998`.)" +"weak RSA, DH, and ECC keys with less than 112 bits of " +"security. :class:`~ssl.SSLContext` defaults to minimum protocol version TLS " +"1.2. Settings are based on Hynek Schlawack's research. (Contributed by " +"Christian Heimes in :issue:`43998`.)" msgstr "" msgid "" @@ -1763,9 +1772,10 @@ msgid "sqlite3" msgstr "" msgid "" -"Add audit events for :func:`~sqlite3.connect`, :meth:`~sqlite3.Connection." -"enable_load_extension`, and :meth:`~sqlite3.Connection.load_extension`. " -"(Contributed by Erlend E. Aasland in :issue:`43762`.)" +"Add audit events " +"for :func:`~sqlite3.connect`, :meth:`~sqlite3.Connection.enable_load_extension`, " +"and :meth:`~sqlite3.Connection.load_extension`. (Contributed by Erlend E. " +"Aasland in :issue:`43762`.)" msgstr "" msgid "sys" @@ -1796,8 +1806,9 @@ msgstr "" msgid "" "Add :func:`threading.gettrace` and :func:`threading.getprofile` to retrieve " -"the functions set by :func:`threading.settrace` and :func:`threading." -"setprofile` respectively. (Contributed by Mario Corchero in :issue:`42251`.)" +"the functions set by :func:`threading.settrace` " +"and :func:`threading.setprofile` respectively. (Contributed by Mario " +"Corchero in :issue:`42251`.)" msgstr "" msgid "" @@ -1810,20 +1821,20 @@ msgid "traceback" msgstr "" msgid "" -"The :func:`~traceback.format_exception`, :func:`~traceback." -"format_exception_only`, and :func:`~traceback.print_exception` functions can " -"now take an exception object as a positional-only argument. (Contributed by " -"Zackery Spytz and Matthias Bussonnier in :issue:`26389`.)" +"The :func:`~traceback.format_exception`, :func:`~traceback.format_exception_only`, " +"and :func:`~traceback.print_exception` functions can now take an exception " +"object as a positional-only argument. (Contributed by Zackery Spytz and " +"Matthias Bussonnier in :issue:`26389`.)" msgstr "" msgid "types" msgstr "" msgid "" -"Reintroduce the :class:`types.EllipsisType`, :class:`types.NoneType` and :" -"class:`types.NotImplementedType` classes, providing a new set of types " -"readily interpretable by type checkers. (Contributed by Bas van Beek in :" -"issue:`41810`.)" +"Reintroduce the :class:`types.EllipsisType`, :class:`types.NoneType` " +"and :class:`types.NotImplementedType` classes, providing a new set of types " +"readily interpretable by type checkers. (Contributed by Bas van Beek " +"in :issue:`41810`.)" msgstr "" msgid "typing" @@ -1833,8 +1844,9 @@ msgid "For major changes, see :ref:`new-feat-related-type-hints`." msgstr "" msgid "" -"The behavior of :class:`typing.Literal` was changed to conform with :pep:" -"`586` and to match the behavior of static type checkers specified in the PEP." +"The behavior of :class:`typing.Literal` was changed to conform " +"with :pep:`586` and to match the behavior of static type checkers specified " +"in the PEP." msgstr "" msgid "``Literal`` now de-duplicates parameters." @@ -1872,22 +1884,22 @@ msgstr "" msgid "" "Add new function :func:`typing.is_typeddict` to introspect if an annotation " -"is a :class:`typing.TypedDict`. (Contributed by Patrick Reader in :issue:" -"`41792`.)" +"is a :class:`typing.TypedDict`. (Contributed by Patrick Reader " +"in :issue:`41792`.)" msgstr "" msgid "" "Subclasses of ``typing.Protocol`` which only have data variables declared " "will now raise a ``TypeError`` when checked with ``isinstance`` unless they " "are decorated with :deco:`~typing.runtime_checkable`. Previously, these " -"checks passed silently. Users should decorate their subclasses with the :" -"deco:`!runtime_checkable` decorator if they want runtime protocols. " +"checks passed silently. Users should decorate their subclasses with " +"the :deco:`!runtime_checkable` decorator if they want runtime protocols. " "(Contributed by Yurii Karabas in :issue:`38908`.)" msgstr "" msgid "" -"Importing from the ``typing.io`` and ``typing.re`` submodules will now emit :" -"exc:`DeprecationWarning`. These submodules have been deprecated since " +"Importing from the ``typing.io`` and ``typing.re`` submodules will now " +"emit :exc:`DeprecationWarning`. These submodules have been deprecated since " "Python 3.8 and will be removed in a future version of Python. Anything " "belonging to those submodules should be imported directly from :mod:`typing` " "instead. (Contributed by Sebastian Rittau in :issue:`38291`.)" @@ -1907,42 +1919,43 @@ msgstr "" msgid "" "Python versions earlier than Python 3.10 allowed using both ``;`` and ``&`` " -"as query parameter separators in :func:`urllib.parse.parse_qs` and :func:" -"`urllib.parse.parse_qsl`. Due to security concerns, and to conform with " -"newer W3C recommendations, this has been changed to allow only a single " -"separator key, with ``&`` as the default. This change also affects :func:`!" -"cgi.parse` and :func:`!cgi.parse_multipart` as they use the affected " -"functions internally. For more details, please see their respective " -"documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran and Ken Jin " -"in :issue:`42967`.)" +"as query parameter separators in :func:`urllib.parse.parse_qs` " +"and :func:`urllib.parse.parse_qsl`. Due to security concerns, and to " +"conform with newer W3C recommendations, this has been changed to allow only " +"a single separator key, with ``&`` as the default. This change also " +"affects :func:`!cgi.parse` and :func:`!cgi.parse_multipart` as they use the " +"affected functions internally. For more details, please see their " +"respective documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran " +"and Ken Jin in :issue:`42967`.)" msgstr "" msgid "" "The presence of newline or tab characters in parts of a URL allows for some " -"forms of attacks. Following the WHATWG specification that updates :rfc:" -"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are " -"stripped from the URL by the parser in :mod:`urllib.parse` preventing such " -"attacks. The removal characters are controlled by a new module level " -"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" +"forms of attacks. Following the WHATWG specification that " +"updates :rfc:`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` " +"characters are stripped from the URL by the parser in :mod:`urllib.parse` " +"preventing such attacks. The removal characters are controlled by a new " +"module level variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. " +"(See :gh:`88048`)" msgstr "" msgid "xml" msgstr "" msgid "" -"Add a :class:`~xml.sax.handler.LexicalHandler` class to the :mod:`xml.sax." -"handler` module. (Contributed by Jonathan Gossage and Zackery Spytz in :" -"issue:`35018`.)" +"Add a :class:`~xml.sax.handler.LexicalHandler` class to " +"the :mod:`xml.sax.handler` module. (Contributed by Jonathan Gossage and " +"Zackery Spytz in :issue:`35018`.)" msgstr "" msgid "zipimport" msgstr "" msgid "" -"Add methods related to :pep:`451`: :meth:`~zipimport.zipimporter." -"find_spec`, :meth:`zipimport.zipimporter.create_module`, and :meth:" -"`zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon in :issue:" -"`42131`.)" +"Add methods related " +"to :pep:`451`: :meth:`~zipimport.zipimporter.find_spec`, :meth:`zipimport.zipimporter.create_module`, " +"and :meth:`zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon " +"in :issue:`42131`.)" msgstr "" msgid "" @@ -1955,16 +1968,16 @@ msgstr "" msgid "" "Constructors :func:`str`, :func:`bytes` and :func:`bytearray` are now faster " -"(around 30--40% for small objects). (Contributed by Serhiy Storchaka in :" -"issue:`41334`.)" +"(around 30--40% for small objects). (Contributed by Serhiy Storchaka " +"in :issue:`41334`.)" msgstr "" msgid "" "The :mod:`runpy` module now imports fewer modules. The ``python3 -m module-" -"name`` command startup time is 1.4x faster in average. On Linux, ``python3 -" -"I -m module-name`` imports 69 modules on Python 3.9, whereas it only imports " -"51 modules (-18) on Python 3.10. (Contributed by Victor Stinner in :issue:" -"`41006` and :issue:`41718`.)" +"name`` command startup time is 1.4x faster in average. On Linux, ``python3 " +"-I -m module-name`` imports 69 modules on Python 3.9, whereas it only " +"imports 51 modules (-18) on Python 3.10. (Contributed by Victor Stinner " +"in :issue:`41006` and :issue:`41718`.)" msgstr "" msgid "" @@ -1979,19 +1992,19 @@ msgid "" "When building Python with :option:`--enable-optimizations` now ``-fno-" "semantic-interposition`` is added to both the compile and link line. This " "speeds builds of the Python interpreter created with :option:`--enable-" -"shared` with ``gcc`` by up to 30%. See `this article `_ for more details. (Contributed by Victor Stinner " -"and Pablo Galindo in :issue:`38980`.)" +"shared` with ``gcc`` by up to 30%. See `this article `_ for more details. (Contributed by Victor " +"Stinner and Pablo Galindo in :issue:`38980`.)" msgstr "" msgid "" -"Use a new output buffer management code for :mod:`bz2` / :mod:`lzma` / :mod:" -"`zlib` modules, and add ``.readall()`` function to ``_compression." -"DecompressReader`` class. bz2 decompression is now 1.09x ~ 1.17x faster, " -"lzma decompression 1.20x ~ 1.32x faster, ``GzipFile.read(-1)`` 1.11x ~ 1.18x " -"faster. (Contributed by Ma Lin, reviewed by Gregory P. Smith, in :issue:" -"`41486`)" +"Use a new output buffer management code " +"for :mod:`bz2` / :mod:`lzma` / :mod:`zlib` modules, and add ``.readall()`` " +"function to ``_compression.DecompressReader`` class. bz2 decompression is " +"now 1.09x ~ 1.17x faster, lzma decompression 1.20x ~ 1.32x faster, " +"``GzipFile.read(-1)`` 1.11x ~ 1.18x faster. (Contributed by Ma Lin, reviewed " +"by Gregory P. Smith, in :issue:`41486`)" msgstr "" msgid "" @@ -2013,16 +2026,17 @@ msgstr "" msgid "" "Add micro-optimizations to ``_PyType_Lookup()`` to improve type attribute " "cache lookup performance in the common case of cache hits. This makes the " -"interpreter 1.04 times faster on average. (Contributed by Dino Viehland in :" -"issue:`43452`.)" +"interpreter 1.04 times faster on average. (Contributed by Dino Viehland " +"in :issue:`43452`.)" msgstr "" msgid "" "The following built-in functions now support the faster :pep:`590` " -"vectorcall calling convention: :func:`map`, :func:`filter`, :func:" -"`reversed`, :func:`bool` and :func:`float`. (Contributed by Donghee Na and " -"Jeroen Demeyer in :issue:`43575`, :issue:`43287`, :issue:`41922`, :issue:" -"`41873` and :issue:`41870`.)" +"vectorcall calling " +"convention: :func:`map`, :func:`filter`, :func:`reversed`, :func:`bool` " +"and :func:`float`. (Contributed by Donghee Na and Jeroen Demeyer " +"in :issue:`43575`, :issue:`43287`, :issue:`41922`, :issue:`41873` " +"and :issue:`41870`.)" msgstr "" msgid "" @@ -2042,26 +2056,27 @@ msgid "" "ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " "``[0x1 for x in y]`` or ``[0x1f or x in y]``). Starting in this release, a " "deprecation warning is raised if the numeric literal is immediately followed " -"by one of keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:" -"`if`, :keyword:`in`, :keyword:`is` and :keyword:`or`. In future releases it " -"will be changed to syntax warning, and finally to syntax error. (Contributed " -"by Serhiy Storchaka in :issue:`43833`.)" +"by one of " +"keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :keyword:`is` " +"and :keyword:`or`. In future releases it will be changed to syntax warning, " +"and finally to syntax error. (Contributed by Serhiy Storchaka " +"in :issue:`43833`.)" msgstr "" msgid "" "Starting in this release, there will be a concerted effort to begin cleaning " "up old import semantics that were kept for Python 2.7 compatibility. " -"Specifically, :meth:`!find_loader`/:meth:`!find_module` (superseded by :meth:" -"`~importlib.abc.MetaPathFinder.find_spec`), ``importlib.abc.Loader." -"load_module`` (superseded by :meth:`~importlib.abc.Loader.exec_module`), :" -"meth:`!module_repr` (which the import system takes care of for you), the " -"``__package__`` attribute (superseded by ``__spec__.parent``), the " -"``__loader__`` attribute (superseded by ``__spec__.loader``), and the " -"``__cached__`` attribute (superseded by ``__spec__.cached``) will slowly be " -"removed (as well as other classes and methods in :mod:`importlib`). :exc:" -"`ImportWarning` and/or :exc:`DeprecationWarning` will be raised as " -"appropriate to help identify code which needs updating during this " -"transition." +"Specifically, :meth:`!find_loader`/:meth:`!find_module` (superseded " +"by :meth:`~importlib.abc.MetaPathFinder.find_spec`), " +"``importlib.abc.Loader.load_module`` (superseded " +"by :meth:`~importlib.abc.Loader.exec_module`), :meth:`!module_repr` (which " +"the import system takes care of for you), the ``__package__`` attribute " +"(superseded by ``__spec__.parent``), the ``__loader__`` attribute " +"(superseded by ``__spec__.loader``), and the ``__cached__`` attribute " +"(superseded by ``__spec__.cached``) will slowly be removed (as well as other " +"classes and methods in :mod:`importlib`). :exc:`ImportWarning` and/" +"or :exc:`DeprecationWarning` will be raised as appropriate to help identify " +"code which needs updating during this transition." msgstr "" msgid "" @@ -2071,28 +2086,29 @@ msgid "" msgstr "" msgid "" -"Non-integer arguments to :func:`random.randrange` are deprecated. The :exc:" -"`ValueError` is deprecated in favor of a :exc:`TypeError`. (Contributed by " -"Serhiy Storchaka and Raymond Hettinger in :issue:`37319`.)" +"Non-integer arguments to :func:`random.randrange` are deprecated. " +"The :exc:`ValueError` is deprecated in favor of a :exc:`TypeError`. " +"(Contributed by Serhiy Storchaka and Raymond Hettinger in :issue:`37319`.)" msgstr "" msgid "" "The various ``load_module()`` methods of :mod:`importlib` have been " -"documented as deprecated since Python 3.6, but will now also trigger a :exc:" -"`DeprecationWarning`. Use :meth:`~importlib.abc.Loader.exec_module` instead. " -"(Contributed by Brett Cannon in :issue:`26131`.)" +"documented as deprecated since Python 3.6, but will now also trigger " +"a :exc:`DeprecationWarning`. Use :meth:`~importlib.abc.Loader.exec_module` " +"instead. (Contributed by Brett Cannon in :issue:`26131`.)" msgstr "" msgid "" -":meth:`!zimport.zipimporter.load_module` has been deprecated in preference " +":meth:`!zipimport.zipimporter.load_module` has been deprecated in preference " "for :meth:`~zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon " "in :issue:`26131`.)" msgstr "" msgid "" "The use of ``importlib.abc.Loader.load_module`` by the import system now " -"triggers an :exc:`ImportWarning` as :meth:`~importlib.abc.Loader." -"exec_module` is preferred. (Contributed by Brett Cannon in :issue:`26131`.)" +"triggers an :exc:`ImportWarning` " +"as :meth:`~importlib.abc.Loader.exec_module` is preferred. (Contributed by " +"Brett Cannon in :issue:`26131`.)" msgstr "" msgid "" @@ -2106,42 +2122,46 @@ msgstr "" msgid "" "The use of :meth:`!importlib.abc.PathEntryFinder.find_loader` by the import " -"system now triggers an :exc:`ImportWarning` as :meth:`importlib.abc." -"PathEntryFinder.find_spec` is preferred. You can use :func:`importlib.util." -"spec_from_loader` to help in porting. (Contributed by Brett Cannon in :issue:" -"`43672`.)" -msgstr "" - -msgid "" -"The various implementations of :meth:`!importlib.abc.MetaPathFinder." -"find_module` ( :meth:`!importlib.machinery.BuiltinImporter.find_module`, :" -"meth:`!importlib.machinery.FrozenImporter.find_module`, :meth:`!importlib." -"machinery.WindowsRegistryFinder.find_module`, :meth:`!importlib.machinery." -"PathFinder.find_module`, :meth:`!importlib.abc.MetaPathFinder." -"find_module` ), :meth:`!importlib.abc.PathEntryFinder.find_module` ( :meth:`!" -"importlib.machinery.FileFinder.find_module` ), and :meth:`!importlib.abc." -"PathEntryFinder.find_loader` ( :meth:`!importlib.machinery.FileFinder." -"find_loader` ) now raise :exc:`DeprecationWarning` and are slated for " -"removal in Python 3.12 (previously they were documented as deprecated in " -"Python 3.4). (Contributed by Brett Cannon in :issue:`42135`.)" -msgstr "" - -msgid "" -":class:`!importlib.abc.Finder` is deprecated (including its sole method, :" -"meth:`!find_module`). Both :class:`importlib.abc.MetaPathFinder` and :class:" -"`importlib.abc.PathEntryFinder` no longer inherit from the class. Users " -"should inherit from one of these two classes as appropriate instead. " +"system now triggers an :exc:`ImportWarning` " +"as :meth:`importlib.abc.PathEntryFinder.find_spec` is preferred. You can " +"use :func:`importlib.util.spec_from_loader` to help in porting. (Contributed " +"by Brett Cannon in :issue:`43672`.)" +msgstr "" + +msgid "" +"The various implementations of :meth:`!" +"importlib.abc.MetaPathFinder.find_module` ( :meth:`!" +"importlib.machinery.BuiltinImporter.find_module`, :meth:`!" +"importlib.machinery.FrozenImporter.find_module`, :meth:`!" +"importlib.machinery.WindowsRegistryFinder.find_module`, :meth:`!" +"importlib.machinery.PathFinder.find_module`, :meth:`!" +"importlib.abc.MetaPathFinder.find_module` ), :meth:`!" +"importlib.abc.PathEntryFinder.find_module` ( :meth:`!" +"importlib.machinery.FileFinder.find_module` ), and :meth:`!" +"importlib.abc.PathEntryFinder.find_loader` ( :meth:`!" +"importlib.machinery.FileFinder.find_loader` ) now " +"raise :exc:`DeprecationWarning` and are slated for removal in Python 3.12 " +"(previously they were documented as deprecated in Python 3.4). (Contributed " +"by Brett Cannon in :issue:`42135`.)" +msgstr "" + +msgid "" +":class:`!importlib.abc.Finder` is deprecated (including its sole " +"method, :meth:`!find_module`). Both :class:`importlib.abc.MetaPathFinder` " +"and :class:`importlib.abc.PathEntryFinder` no longer inherit from the class. " +"Users should inherit from one of these two classes as appropriate instead. " "(Contributed by Brett Cannon in :issue:`42135`.)" msgstr "" msgid "" "The deprecations of :mod:`!imp`, :func:`!importlib.find_loader`, :func:`!" -"importlib.util.set_package_wrapper`, :func:`!importlib.util." -"set_loader_wrapper`, :func:`!importlib.util.module_for_loader`, :class:`!" -"pkgutil.ImpImporter`, and :class:`!pkgutil.ImpLoader` have all been updated " -"to list Python 3.12 as the slated version of removal (they began raising :" -"exc:`DeprecationWarning` in previous versions of Python). (Contributed by " -"Brett Cannon in :issue:`43720`.)" +"importlib.util.set_package_wrapper`, :func:`!" +"importlib.util.set_loader_wrapper`, :func:`!" +"importlib.util.module_for_loader`, :class:`!pkgutil.ImpImporter`, " +"and :class:`!pkgutil.ImpLoader` have all been updated to list Python 3.12 as " +"the slated version of removal (they began raising :exc:`DeprecationWarning` " +"in previous versions of Python). (Contributed by Brett Cannon " +"in :issue:`43720`.)" msgstr "" msgid "" @@ -2152,17 +2172,17 @@ msgid "" msgstr "" msgid "" -":meth:`!importlib.abc.Loader.module_repr`, :meth:`!importlib.machinery." -"FrozenLoader.module_repr`, and :meth:`!importlib.machinery.BuiltinLoader." -"module_repr` are deprecated and slated for removal in Python 3.12. " -"(Contributed by Brett Cannon in :issue:`42136`.)" +":meth:`!importlib.abc.Loader.module_repr`, :meth:`!" +"importlib.machinery.FrozenImporter.module_repr`, and :meth:`!" +"importlib.machinery.BuiltinImporter.module_repr` are deprecated and slated " +"for removal in Python 3.12. (Contributed by Brett Cannon in :issue:`42136`.)" msgstr "" msgid "" "``sqlite3.OptimizedUnicode`` has been undocumented and obsolete since Python " "3.3, when it was made an alias to :class:`str`. It is now deprecated, " -"scheduled for removal in Python 3.12. (Contributed by Erlend E. Aasland in :" -"issue:`42264`.)" +"scheduled for removal in Python 3.12. (Contributed by Erlend E. Aasland " +"in :issue:`42264`.)" msgstr "" msgid "" @@ -2193,7 +2213,7 @@ msgstr "" msgid "``threading.Thread.setName`` => :attr:`threading.Thread.name`" msgstr "" -msgid "``threading.thread.getName`` => :attr:`threading.Thread.name`" +msgid "``threading.Thread.getName`` => :attr:`threading.Thread.name`" msgstr "" msgid "``threading.Thread.isDaemon`` => :attr:`threading.Thread.daemon`" @@ -2224,15 +2244,16 @@ msgstr "" msgid "" ":data:`!OP_NO_SSLv2`, :data:`!OP_NO_SSLv3`, :data:`!OP_NO_TLSv1`, :data:`!" "OP_NO_TLSv1_1`, :data:`!OP_NO_TLSv1_2`, and :data:`!OP_NO_TLSv1_3` are " -"replaced by :attr:`~ssl.SSLContext.minimum_version` and :attr:`~ssl." -"SSLContext.maximum_version`." +"replaced by :attr:`~ssl.SSLContext.minimum_version` " +"and :attr:`~ssl.SSLContext.maximum_version`." msgstr "" msgid "" -":data:`!PROTOCOL_SSLv2`, :data:`!PROTOCOL_SSLv3`, :data:`!PROTOCOL_SSLv23`, :" -"data:`!PROTOCOL_TLSv1`, :data:`!PROTOCOL_TLSv1_1`, :data:`!" -"PROTOCOL_TLSv1_2`, and :const:`!PROTOCOL_TLS` are deprecated in favor of :" -"const:`~ssl.PROTOCOL_TLS_CLIENT` and :const:`~ssl.PROTOCOL_TLS_SERVER`" +":data:`!PROTOCOL_SSLv2`, :data:`!PROTOCOL_SSLv3`, :data:`!" +"PROTOCOL_SSLv23`, :data:`!PROTOCOL_TLSv1`, :data:`!" +"PROTOCOL_TLSv1_1`, :data:`!PROTOCOL_TLSv1_2`, and :const:`!PROTOCOL_TLS` are " +"deprecated in favor of :const:`~ssl.PROTOCOL_TLS_CLIENT` " +"and :const:`~ssl.PROTOCOL_TLS_SERVER`" msgstr "" msgid ":func:`!wrap_socket` is replaced by :meth:`ssl.SSLContext.wrap_socket`" @@ -2245,8 +2266,8 @@ msgid ":func:`!RAND_pseudo_bytes`, :func:`!RAND_egd`" msgstr "" msgid "" -"NPN features like :meth:`ssl.SSLSocket.selected_npn_protocol` and :meth:`ssl." -"SSLContext.set_npn_protocols` are replaced by ALPN." +"NPN features like :meth:`ssl.SSLSocket.selected_npn_protocol` " +"and :meth:`ssl.SSLContext.set_npn_protocols` are replaced by ALPN." msgstr "" msgid "" @@ -2257,9 +2278,9 @@ msgid "" msgstr "" msgid "" -"Importing from the ``typing.io`` and ``typing.re`` submodules will now emit :" -"exc:`DeprecationWarning`. These submodules will be removed in a future " -"version of Python. Anything belonging to these submodules should be " +"Importing from the ``typing.io`` and ``typing.re`` submodules will now " +"emit :exc:`DeprecationWarning`. These submodules will be removed in a " +"future version of Python. Anything belonging to these submodules should be " "imported directly from :mod:`typing` instead. (Contributed by Sebastian " "Rittau in :issue:`38291`.)" msgstr "" @@ -2270,23 +2291,23 @@ msgstr "" msgid "" "Removed special methods ``__int__``, ``__float__``, ``__floordiv__``, " "``__mod__``, ``__divmod__``, ``__rfloordiv__``, ``__rmod__`` and " -"``__rdivmod__`` of the :class:`complex` class. They always raised a :exc:" -"`TypeError`. (Contributed by Serhiy Storchaka in :issue:`41974`.)" +"``__rdivmod__`` of the :class:`complex` class. They always raised " +"a :exc:`TypeError`. (Contributed by Serhiy Storchaka in :issue:`41974`.)" msgstr "" msgid "" "The ``ParserBase.error()`` method from the private and undocumented " "``_markupbase`` module has been removed. :class:`html.parser.HTMLParser` is " "the only subclass of ``ParserBase`` and its ``error()`` implementation was " -"already removed in Python 3.5. (Contributed by Berker Peksag in :issue:" -"`31844`.)" +"already removed in Python 3.5. (Contributed by Berker Peksag " +"in :issue:`31844`.)" msgstr "" msgid "" "Removed the ``unicodedata.ucnhash_CAPI`` attribute which was an internal " "PyCapsule object. The related private ``_PyUnicode_Name_CAPI`` structure was " -"moved to the internal C API. (Contributed by Victor Stinner in :issue:" -"`42157`.)" +"moved to the internal C API. (Contributed by Victor Stinner " +"in :issue:`42157`.)" msgstr "" msgid "" @@ -2319,14 +2340,14 @@ msgstr "" msgid "" "Remove deprecated aliases to :ref:`collections-abstract-base-classes` from " -"the :mod:`collections` module. (Contributed by Victor Stinner in :issue:" -"`37324`.)" +"the :mod:`collections` module. (Contributed by Victor Stinner " +"in :issue:`37324`.)" msgstr "" msgid "" -"The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ 's :" -"doc:`high-level API <../library/asyncio-api-index>` following deprecation in " -"Python 3.8. The motivation behind this change is multifold:" +"The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ " +"'s :doc:`high-level API <../library/asyncio-api-index>` following " +"deprecation in Python 3.8. The motivation behind this change is multifold:" msgstr "" msgid "This simplifies the high-level API." @@ -2377,17 +2398,18 @@ msgid "Changes in the Python API" msgstr "" msgid "" -"The *etype* parameters of the :func:`~traceback.format_exception`, :func:" -"`~traceback.format_exception_only`, and :func:`~traceback.print_exception` " -"functions in the :mod:`traceback` module have been renamed to *exc*. " -"(Contributed by Zackery Spytz and Matthias Bussonnier in :issue:`26389`.)" +"The *etype* parameters of " +"the :func:`~traceback.format_exception`, :func:`~traceback.format_exception_only`, " +"and :func:`~traceback.print_exception` functions in the :mod:`traceback` " +"module have been renamed to *exc*. (Contributed by Zackery Spytz and " +"Matthias Bussonnier in :issue:`26389`.)" msgstr "" msgid "" -":mod:`atexit`: At Python exit, if a callback registered with :func:`atexit." -"register` fails, its exception is now logged. Previously, only some " -"exceptions were logged, and the last exception was always silently ignored. " -"(Contributed by Victor Stinner in :issue:`42639`.)" +":mod:`atexit`: At Python exit, if a callback registered " +"with :func:`atexit.register` fails, its exception is now logged. Previously, " +"only some exceptions were logged, and the last exception was always silently " +"ignored. (Contributed by Victor Stinner in :issue:`42639`.)" msgstr "" msgid "" @@ -2398,21 +2420,21 @@ msgid "" "accesses the arguments via :func:`typing.get_args` or ``__args__`` need to " "account for this change. Furthermore, :exc:`TypeError` may be raised for " "invalid forms of parameterizing :class:`collections.abc.Callable` which may " -"have passed silently in Python 3.9. (Contributed by Ken Jin in :issue:" -"`42195`.)" +"have passed silently in Python 3.9. (Contributed by Ken Jin " +"in :issue:`42195`.)" msgstr "" msgid "" ":meth:`socket.htons` and :meth:`socket.ntohs` now raise :exc:`OverflowError` " "instead of :exc:`DeprecationWarning` if the given parameter will not fit in " -"a 16-bit unsigned integer. (Contributed by Erlend E. Aasland in :issue:" -"`42393`.)" +"a 16-bit unsigned integer. (Contributed by Erlend E. Aasland " +"in :issue:`42393`.)" msgstr "" msgid "" -"The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ 's :" -"doc:`high-level API <../library/asyncio-api-index>` following deprecation in " -"Python 3.8." +"The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ " +"'s :doc:`high-level API <../library/asyncio-api-index>` following " +"deprecation in Python 3.8." msgstr "" msgid "A coroutine that currently looks like this::" @@ -2481,13 +2503,14 @@ msgstr "" msgid "" "To compile a file given a ``char *`` filename, explicitly open the file, " "read it and compile the result. One way to do this is using the :py:mod:`io` " -"module with :c:func:`PyImport_ImportModule`, :c:func:`PyObject_CallMethod`, :" -"c:func:`PyBytes_AsString` and :c:func:`Py_CompileString`, as sketched below. " -"(Declarations and error handling are omitted.) ::" +"module " +"with :c:func:`PyImport_ImportModule`, :c:func:`PyObject_CallMethod`, :c:func:`PyBytes_AsString` " +"and :c:func:`Py_CompileString`, as sketched below. (Declarations and error " +"handling are omitted.) ::" msgstr "" msgid "" -"io_module = Import_ImportModule(\"io\");\n" +"io_module = PyImport_ImportModule(\"io\");\n" "fileobject = PyObject_CallMethod(io_module, \"open\", \"ss\", filename, " "\"rb\");\n" "source_bytes_object = PyObject_CallMethod(fileobject, \"read\", \"\");\n" @@ -2502,8 +2525,8 @@ msgid "" "string. This means that this number needs to be multiplied by 2 to be used " "with APIs that expect a byte offset instead (like :c:func:`PyCode_Addr2Line` " "for example). Notice as well that the :attr:`!f_lasti` member of " -"``FrameObject`` objects is not considered stable: please use :c:func:" -"`PyFrame_GetLineNumber` instead." +"``FrameObject`` objects is not considered stable: please " +"use :c:func:`PyFrame_GetLineNumber` instead." msgstr "" msgid "CPython bytecode changes" @@ -2555,8 +2578,8 @@ msgstr "" msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" -"share/python-wheels/`` directory and don't install the ``ensurepip." -"_bundled`` package." +"share/python-wheels/`` directory and don't install the " +"``ensurepip._bundled`` package." msgstr "" msgid "(Contributed by Victor Stinner in :issue:`42856`.)" @@ -2603,9 +2626,9 @@ msgid "(Contributed by Petr Viktorin in :pep:`652` and :issue:`43795`.)" msgstr "" msgid "" -"The result of :c:func:`PyNumber_Index` now always has exact type :class:" -"`int`. Previously, the result could have been an instance of a subclass of " -"``int``. (Contributed by Serhiy Storchaka in :issue:`40792`.)" +"The result of :c:func:`PyNumber_Index` now always has exact " +"type :class:`int`. Previously, the result could have been an instance of a " +"subclass of ``int``. (Contributed by Serhiy Storchaka in :issue:`40792`.)" msgstr "" msgid "" @@ -2615,10 +2638,11 @@ msgid "" msgstr "" msgid "" -"The :c:func:`PyDateTime_DATE_GET_TZINFO` and :c:func:" -"`PyDateTime_TIME_GET_TZINFO` macros have been added for accessing the " -"``tzinfo`` attributes of :class:`datetime.datetime` and :class:`datetime." -"time` objects. (Contributed by Zackery Spytz in :issue:`30155`.)" +"The :c:func:`PyDateTime_DATE_GET_TZINFO` " +"and :c:func:`PyDateTime_TIME_GET_TZINFO` macros have been added for " +"accessing the ``tzinfo`` attributes of :class:`datetime.datetime` " +"and :class:`datetime.time` objects. (Contributed by Zackery Spytz " +"in :issue:`30155`.)" msgstr "" msgid "" @@ -2638,9 +2662,9 @@ msgid "" msgstr "" msgid "" -"Add :c:func:`PyModule_AddObjectRef` function: similar to :c:func:" -"`PyModule_AddObject` but don't steal a reference to the value on success. " -"(Contributed by Victor Stinner in :issue:`1635741`.)" +"Add :c:func:`PyModule_AddObjectRef` function: similar " +"to :c:func:`PyModule_AddObject` but don't steal a reference to the value on " +"success. (Contributed by Victor Stinner in :issue:`1635741`.)" msgstr "" msgid "" @@ -2650,9 +2674,9 @@ msgid "" msgstr "" msgid "" -"The :c:func:`PyType_FromSpecWithBases` and :c:func:" -"`PyType_FromModuleAndSpec` functions now accept a single class as the " -"*bases* argument. (Contributed by Serhiy Storchaka in :issue:`42423`.)" +"The :c:func:`PyType_FromSpecWithBases` " +"and :c:func:`PyType_FromModuleAndSpec` functions now accept a single class " +"as the *bases* argument. (Contributed by Serhiy Storchaka in :issue:`42423`.)" msgstr "" msgid "" @@ -2680,34 +2704,34 @@ msgid "" "The limited C API is now supported if :ref:`Python is built in debug mode " "` (if the ``Py_DEBUG`` macro is defined). In the limited C API, " "the :c:func:`Py_INCREF` and :c:func:`Py_DECREF` functions are now " -"implemented as opaque function calls, rather than accessing directly the :c:" -"member:`PyObject.ob_refcnt` member, if Python is built in debug mode and the " -"``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became possible to " -"support the limited C API in debug mode because the :c:type:`PyObject` " -"structure is the same in release and debug mode since Python 3.8 (see :issue:" -"`36465`)." +"implemented as opaque function calls, rather than accessing directly " +"the :c:member:`PyObject.ob_refcnt` member, if Python is built in debug mode " +"and the ``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became " +"possible to support the limited C API in debug mode because " +"the :c:type:`PyObject` structure is the same in release and debug mode since " +"Python 3.8 (see :issue:`36465`)." msgstr "" msgid "" "The limited C API is still not supported in the :option:`--with-trace-refs` " -"special build (``Py_TRACE_REFS`` macro). (Contributed by Victor Stinner in :" -"issue:`43688`.)" +"special build (``Py_TRACE_REFS`` macro). (Contributed by Victor Stinner " +"in :issue:`43688`.)" msgstr "" msgid "" "Add the :c:func:`Py_Is(x, y) ` function to test if the *x* object is " -"the *y* object, the same as ``x is y`` in Python. Add also the :c:func:" -"`Py_IsNone`, :c:func:`Py_IsTrue`, :c:func:`Py_IsFalse` functions to test if " -"an object is, respectively, the ``None`` singleton, the ``True`` singleton " -"or the ``False`` singleton. (Contributed by Victor Stinner in :issue:" -"`43753`.)" +"the *y* object, the same as ``x is y`` in Python. Add also " +"the :c:func:`Py_IsNone`, :c:func:`Py_IsTrue`, :c:func:`Py_IsFalse` functions " +"to test if an object is, respectively, the ``None`` singleton, the ``True`` " +"singleton or the ``False`` singleton. (Contributed by Victor Stinner " +"in :issue:`43753`.)" msgstr "" msgid "" -"Add new functions to control the garbage collector from C code: :c:func:" -"`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()`. These " -"functions allow to activate, deactivate and query the state of the garbage " -"collector from C code without having to import the :mod:`gc` module." +"Add new functions to control the garbage collector from C " +"code: :c:func:`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()`. " +"These functions allow to activate, deactivate and query the state of the " +"garbage collector from C code without having to import the :mod:`gc` module." msgstr "" msgid "" @@ -2722,11 +2746,11 @@ msgid "" msgstr "" msgid "" -"The ``PY_SSIZE_T_CLEAN`` macro must now be defined to use :c:func:" -"`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use ``#``: " -"``es#``, ``et#``, ``s#``, ``u#``, ``y#``, ``z#``, ``U#`` and ``Z#``. See :" -"ref:`arg-parsing` and :pep:`353`. (Contributed by Victor Stinner in :issue:" -"`40943`.)" +"The ``PY_SSIZE_T_CLEAN`` macro must now be defined to " +"use :c:func:`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use " +"``#``: ``es#``, ``et#``, ``s#``, ``u#``, ``y#``, ``z#``, ``U#`` and ``Z#``. " +"See :ref:`arg-parsing` and :pep:`353`. (Contributed by Victor Stinner " +"in :issue:`40943`.)" msgstr "" msgid "" @@ -2774,30 +2798,30 @@ msgid "" msgstr "" msgid "" -":c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and :c:func:" -"`PyCell_SET` macros can no longer be used as l-value or r-value. For " -"example, ``x = PyList_SET_ITEM(a, b, c)`` and ``PyList_SET_ITEM(a, b, c) = " -"x`` now fail with a compiler error. It prevents bugs like ``if " +":c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` " +"and :c:func:`PyCell_SET` macros can no longer be used as l-value or r-value. " +"For example, ``x = PyList_SET_ITEM(a, b, c)`` and ``PyList_SET_ITEM(a, b, c) " +"= x`` now fail with a compiler error. It prevents bugs like ``if " "(PyList_SET_ITEM (a, b, c) < 0) ...`` test. (Contributed by Zackery Spytz " "and Victor Stinner in :issue:`30459`.)" msgstr "" msgid "" "The non-limited API files ``odictobject.h``, ``parser_interface.h``, " -"``picklebufobject.h``, ``pyarena.h``, ``pyctype.h``, ``pydebug.h``, ``pyfpe." -"h``, and ``pytime.h`` have been moved to the ``Include/cpython`` directory. " -"These files must not be included directly, as they are already included in " -"``Python.h``; see :ref:`api-includes`. If they have been included directly, " -"consider including ``Python.h`` instead. (Contributed by Nicholas Sim in :" -"issue:`35134`.)" +"``picklebufobject.h``, ``pyarena.h``, ``pyctype.h``, ``pydebug.h``, " +"``pyfpe.h``, and ``pytime.h`` have been moved to the ``Include/cpython`` " +"directory. These files must not be included directly, as they are already " +"included in ``Python.h``; see :ref:`api-includes`. If they have been " +"included directly, consider including ``Python.h`` instead. (Contributed by " +"Nicholas Sim in :issue:`35134`.)" msgstr "" msgid "" "Use the :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` type flag to create immutable " "type objects. Do not rely on :c:macro:`Py_TPFLAGS_HEAPTYPE` to decide if a " "type object is mutable or not; check if :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` " -"is set instead. (Contributed by Victor Stinner and Erlend E. Aasland in :" -"issue:`43908`.)" +"is set instead. (Contributed by Victor Stinner and Erlend E. Aasland " +"in :issue:`43908`.)" msgstr "" msgid "" @@ -2818,18 +2842,18 @@ msgid "" msgstr "" msgid "" -"``Py_UNICODE_strlen``: use :c:func:`PyUnicode_GetLength` or :c:macro:" -"`PyUnicode_GET_LENGTH`" +"``Py_UNICODE_strlen``: use :c:func:`PyUnicode_GetLength` " +"or :c:macro:`PyUnicode_GET_LENGTH`" msgstr "" msgid "" -"``Py_UNICODE_strcat``: use :c:func:`PyUnicode_CopyCharacters` or :c:func:" -"`PyUnicode_FromFormat`" +"``Py_UNICODE_strcat``: use :c:func:`PyUnicode_CopyCharacters` " +"or :c:func:`PyUnicode_FromFormat`" msgstr "" msgid "" -"``Py_UNICODE_strcpy``, ``Py_UNICODE_strncpy``: use :c:func:" -"`PyUnicode_CopyCharacters` or :c:func:`PyUnicode_Substring`" +"``Py_UNICODE_strcpy``, ``Py_UNICODE_strncpy``: " +"use :c:func:`PyUnicode_CopyCharacters` or :c:func:`PyUnicode_Substring`" msgstr "" msgid "``Py_UNICODE_strcmp``: use :c:func:`PyUnicode_Compare`" @@ -2839,8 +2863,8 @@ msgid "``Py_UNICODE_strncmp``: use :c:func:`PyUnicode_Tailmatch`" msgstr "" msgid "" -"``Py_UNICODE_strchr``, ``Py_UNICODE_strrchr``: use :c:func:" -"`PyUnicode_FindChar`" +"``Py_UNICODE_strchr``, ``Py_UNICODE_strrchr``: " +"use :c:func:`PyUnicode_FindChar`" msgstr "" msgid "" @@ -2849,14 +2873,15 @@ msgid "" msgstr "" msgid "" -"Removed ``PyLong_FromUnicode()``. Please migrate to :c:func:" -"`PyLong_FromUnicodeObject`. (Contributed by Inada Naoki in :issue:`41103`.)" +"Removed ``PyLong_FromUnicode()``. Please migrate " +"to :c:func:`PyLong_FromUnicodeObject`. (Contributed by Inada Naoki " +"in :issue:`41103`.)" msgstr "" msgid "" -"Removed ``PyUnicode_AsUnicodeCopy()``. Please use :c:func:" -"`PyUnicode_AsUCS4Copy` or :c:func:`PyUnicode_AsWideCharString` (Contributed " -"by Inada Naoki in :issue:`41103`.)" +"Removed ``PyUnicode_AsUnicodeCopy()``. Please " +"use :c:func:`PyUnicode_AsUCS4Copy` or :c:func:`PyUnicode_AsWideCharString` " +"(Contributed by Inada Naoki in :issue:`41103`.)" msgstr "" msgid "" @@ -2867,15 +2892,16 @@ msgstr "" msgid "" "Removed undocumented macros ``Py_ALLOW_RECURSION`` and " -"``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of the :c:" -"type:`PyInterpreterState` structure. (Contributed by Serhiy Storchaka in :" -"issue:`41936`.)" +"``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of " +"the :c:type:`PyInterpreterState` structure. (Contributed by Serhiy Storchaka " +"in :issue:`41936`.)" msgstr "" msgid "" "Removed the undocumented ``PyOS_InitInterrupts()`` function. Initializing " -"Python already implicitly installs signal handlers: see :c:member:`PyConfig." -"install_signal_handlers`. (Contributed by Victor Stinner in :issue:`41713`.)" +"Python already implicitly installs signal handlers: " +"see :c:member:`PyConfig.install_signal_handlers`. (Contributed by Victor " +"Stinner in :issue:`41713`.)" msgstr "" msgid "" @@ -2991,8 +3017,8 @@ msgstr "" msgid "" "These functions were undocumented, excluded from the limited C API, and were " -"only used internally by the compiler. (Contributed by Victor Stinner in :" -"issue:`43244`.)" +"only used internally by the compiler. (Contributed by Victor Stinner " +"in :issue:`43244`.)" msgstr "" msgid "" @@ -3022,8 +3048,8 @@ msgid "" "The deprecated :mod:`!mailcap` module now refuses to inject unsafe text " "(filenames, MIME types, parameters) into shell commands. Instead of using " "such text, it will warn and act as if a match was not found (or for test " -"commands, as if the test failed). (Contributed by Petr Viktorin in :gh:" -"`98966`.)" +"commands, as if the test failed). (Contributed by Petr Viktorin " +"in :gh:`98966`.)" msgstr "" msgid "Notable changes in 3.10.12" diff --git a/whatsnew/3.11.po b/whatsnew/3.11.po index 8a411a8..2c1531a 100644 --- a/whatsnew/3.11.po +++ b/whatsnew/3.11.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.11, compared to 3.10. " -"Python 3.11 was released on October 24, 2022. For full details, see the :ref:" -"`changelog `." +"Python 3.11 was released on October 24, 2022. For full details, see " +"the :ref:`changelog `." msgstr "" msgid "Summary -- Release highlights" @@ -42,8 +42,8 @@ msgstr "" msgid "" "Python 3.11 is between 10-60% faster than Python 3.10. On average, we " -"measured a 1.25x speedup on the standard benchmark suite. See :ref:" -"`whatsnew311-faster-cpython` for details." +"measured a 1.25x speedup on the standard benchmark suite. " +"See :ref:`whatsnew311-faster-cpython` for details." msgstr "" msgid "New syntax features:" @@ -172,9 +172,9 @@ msgstr "" msgid "" "Additionally, the information used by the enhanced traceback feature is made " -"available via a general API, that can be used to correlate :term:`bytecode` :" -"ref:`instructions ` with source code location. This information " -"can be retrieved using:" +"available via a general API, that can be used to " +"correlate :term:`bytecode` :ref:`instructions ` with source code " +"location. This information can be retrieved using:" msgstr "" msgid "The :meth:`codeobject.co_positions` method in Python." @@ -193,8 +193,8 @@ msgid "" "may result in a small increase in interpreter memory usage and disk usage " "for compiled Python files. To avoid storing the extra information and " "deactivate printing the extra traceback information, use the :option:`-X " -"no_debug_ranges <-X>` command line option or the :envvar:" -"`PYTHONNODEBUGRANGES` environment variable." +"no_debug_ranges <-X>` command line option or " +"the :envvar:`PYTHONNODEBUGRANGES` environment variable." msgstr "" msgid "PEP 654: Exception Groups and ``except*``" @@ -202,9 +202,9 @@ msgstr "" msgid "" ":pep:`654` introduces language features that enable a program to raise and " -"handle multiple unrelated exceptions simultaneously. The builtin types :exc:" -"`ExceptionGroup` and :exc:`BaseExceptionGroup` make it possible to group " -"exceptions and raise them together, and the new :keyword:`except* " +"handle multiple unrelated exceptions simultaneously. The builtin " +"types :exc:`ExceptionGroup` and :exc:`BaseExceptionGroup` make it possible " +"to group exceptions and raise them together, and the new :keyword:`except* " "` syntax generalizes :keyword:`except` to match subgroups of " "exception groups." msgstr "" @@ -240,24 +240,24 @@ msgstr "" msgid "" "The copy of the :ref:`launcher` included with Python 3.11 has been " -"significantly updated. It now supports company/tag syntax as defined in :pep:" -"`514` using the :samp:`-V:{}/{}` argument instead of the " -"limited :samp:`-{}.{}`. This allows launching distributions " -"other than ``PythonCore``, the one hosted on `python.org `_." +"significantly updated. It now supports company/tag syntax as defined " +"in :pep:`514` using the :samp:`-V:{}/{}` argument instead of " +"the limited :samp:`-{}.{}`. This allows launching " +"distributions other than ``PythonCore``, the one hosted on `python.org " +"`_." msgstr "" msgid "" "When using ``-V:`` selectors, either company or tag can be omitted, but all " "installs will be searched. For example, ``-V:OtherPython/`` will select the " -"\"best\" tag registered for ``OtherPython``, while ``-V:3.11`` or ``-" -"V:/3.11`` will select the \"best\" distribution with tag ``3.11``." +"\"best\" tag registered for ``OtherPython``, while ``-V:3.11`` or ``-V:/" +"3.11`` will select the \"best\" distribution with tag ``3.11``." msgstr "" msgid "" -"When using the legacy :samp:`-{}`, :samp:`-{}.{}`, :" -"samp:`-{}-{}` or :samp:`-{}.{}-{}` " -"arguments, all existing behaviour should be preserved from past versions, " +"When using the legacy :samp:`-{}`, :samp:`-{}.{}" +"`, :samp:`-{}-{}` or :samp:`-{}.{}-{}" +"` arguments, all existing behaviour should be preserved from past versions, " "and only releases from ``PythonCore`` will be selected. However, the ``-64`` " "suffix now implies \"not 32-bit\" (not necessarily x86-64), as there are " "multiple supported 64-bit platforms. 32-bit runtimes are detected by " @@ -269,8 +269,8 @@ msgid "New Features Related to Type Hints" msgstr "" msgid "" -"This section covers major changes affecting :pep:`484` type hints and the :" -"mod:`typing` module." +"This section covers major changes affecting :pep:`484` type hints and " +"the :mod:`typing` module." msgstr "" msgid "PEP 646: Variadic generics" @@ -278,10 +278,10 @@ msgstr "" msgid "" ":pep:`484` previously introduced :data:`~typing.TypeVar`, enabling creation " -"of generics parameterised with a single type. :pep:`646` adds :data:`~typing." -"TypeVarTuple`, enabling parameterisation with an *arbitrary* number of " -"types. In other words, a :data:`~typing.TypeVarTuple` is a *variadic* type " -"variable, enabling *variadic* generics." +"of generics parameterised with a single type. :pep:`646` " +"adds :data:`~typing.TypeVarTuple`, enabling parameterisation with an " +"*arbitrary* number of types. In other words, a :data:`~typing.TypeVarTuple` " +"is a *variadic* type variable, enabling *variadic* generics." msgstr "" msgid "" @@ -307,9 +307,9 @@ msgstr "" msgid "" ":data:`~typing.Required` and :data:`~typing.NotRequired` provide a " -"straightforward way to mark whether individual items in a :class:`~typing." -"TypedDict` must be present. Previously, this was only possible using " -"inheritance." +"straightforward way to mark whether individual items in " +"a :class:`~typing.TypedDict` must be present. Previously, this was only " +"possible using inheritance." msgstr "" msgid "" @@ -358,9 +358,9 @@ msgid "" msgstr "" msgid "" -"Common use cases include alternative constructors provided as :func:" -"`classmethod `\\s, and :meth:`~object.__enter__` methods that " -"return ``self``::" +"Common use cases include alternative constructors provided " +"as :func:`classmethod `\\s, and :meth:`~object.__enter__` " +"methods that return ``self``::" msgstr "" msgid "" @@ -409,7 +409,7 @@ msgid "For example, a SQL query function could be annotated as follows::" msgstr "" msgid "" -"def run_query(sql: LiteralString) -> ...\n" +"def run_query(sql: LiteralString) -> ...:\n" " ...\n" "\n" "def caller(\n" @@ -441,8 +441,8 @@ msgid "" ":deco:`~typing.dataclass_transform` may be used to decorate a class, " "metaclass, or a function that is itself a decorator. The presence of " "``@dataclass_transform()`` tells a static type checker that the decorated " -"object performs runtime \"magic\" that transforms a class, giving it :func:" -"`dataclass `-like behaviors." +"object performs runtime \"magic\" that transforms a class, giving " +"it :func:`dataclass `-like behaviors." msgstr "" msgid "For example::" @@ -502,37 +502,37 @@ msgid "" msgstr "" msgid "" -"A :exc:`TypeError` is now raised instead of an :exc:`AttributeError` in :" -"keyword:`with` statements and :meth:`contextlib.ExitStack.enter_context` for " -"objects that do not support the :term:`context manager` protocol, and in :" -"keyword:`async with` statements and :meth:`contextlib.AsyncExitStack." -"enter_async_context` for objects not supporting the :term:`asynchronous " -"context manager` protocol. (Contributed by Serhiy Storchaka in :issue:" -"`12022` and :issue:`44471`.)" +"A :exc:`TypeError` is now raised instead of an :exc:`AttributeError` " +"in :keyword:`with` statements and :meth:`contextlib.ExitStack.enter_context` " +"for objects that do not support the :term:`context manager` protocol, and " +"in :keyword:`async with` statements " +"and :meth:`contextlib.AsyncExitStack.enter_async_context` for objects not " +"supporting the :term:`asynchronous context manager` protocol. (Contributed " +"by Serhiy Storchaka in :issue:`12022` and :issue:`44471`.)" msgstr "" msgid "" "Added :meth:`object.__getstate__`, which provides the default implementation " "of the :meth:`!__getstate__` method. :mod:`copy`\\ing and :mod:`pickle`\\ing " -"instances of subclasses of builtin types :class:`bytearray`, :class:`set`, :" -"class:`frozenset`, :class:`collections.OrderedDict`, :class:`collections." -"deque`, :class:`weakref.WeakSet`, and :class:`datetime.tzinfo` now copies " -"and pickles instance attributes implemented as :term:`slots <__slots__>`. " -"This change has an unintended side effect: It trips up a small minority of " -"existing Python projects not expecting :meth:`object.__getstate__` to exist. " -"See the later comments on :gh:`70766` for discussions of what workarounds " -"such code may need. (Contributed by Serhiy Storchaka in :issue:`26579`.)" +"instances of subclasses of builtin " +"types :class:`bytearray`, :class:`set`, :class:`frozenset`, :class:`collections.OrderedDict`, :class:`collections.deque`, :class:`weakref.WeakSet`, " +"and :class:`datetime.tzinfo` now copies and pickles instance attributes " +"implemented as :term:`slots <__slots__>`. This change has an unintended side " +"effect: It trips up a small minority of existing Python projects not " +"expecting :meth:`object.__getstate__` to exist. See the later comments " +"on :gh:`70766` for discussions of what workarounds such code may need. " +"(Contributed by Serhiy Storchaka in :issue:`26579`.)" msgstr "" msgid "" "Added a :option:`-P` command line option and a :envvar:`PYTHONSAFEPATH` " -"environment variable, which disable the automatic prepending to :data:`sys." -"path` of the script's directory when running a script, or the current " -"directory when using :option:`-c` and :option:`-m`. This ensures only stdlib " -"and installed modules are picked up by :keyword:`import`, and avoids " -"unintentionally or maliciously shadowing modules with those in a local (and " -"typically user-writable) directory. (Contributed by Victor Stinner in :gh:" -"`57684`.)" +"environment variable, which disable the automatic prepending " +"to :data:`sys.path` of the script's directory when running a script, or the " +"current directory when using :option:`-c` and :option:`-m`. This ensures " +"only stdlib and installed modules are picked up by :keyword:`import`, and " +"avoids unintentionally or maliciously shadowing modules with those in a " +"local (and typically user-writable) directory. (Contributed by Victor " +"Stinner in :gh:`57684`.)" msgstr "" msgid "" @@ -554,10 +554,10 @@ msgid "Other CPython Implementation Changes" msgstr "" msgid "" -"The special methods :meth:`~object.__complex__` for :class:`complex` and :" -"meth:`~object.__bytes__` for :class:`bytes` are implemented to support the :" -"class:`typing.SupportsComplex` and :class:`typing.SupportsBytes` protocols. " -"(Contributed by Mark Dickinson and Donghee Na in :issue:`24234`.)" +"The special methods :meth:`~object.__complex__` for :class:`complex` " +"and :meth:`~object.__bytes__` for :class:`bytes` are implemented to support " +"the :class:`typing.SupportsComplex` and :class:`typing.SupportsBytes` " +"protocols. (Contributed by Mark Dickinson and Donghee Na in :issue:`24234`.)" msgstr "" msgid "" @@ -571,10 +571,10 @@ msgstr "" msgid "" "When an active exception is re-raised by a :keyword:`raise` statement with " -"no parameters, the traceback attached to this exception is now always ``sys." -"exc_info()[1].__traceback__``. This means that changes made to the traceback " -"in the current :keyword:`except` clause are reflected in the re-raised " -"exception. (Contributed by Irit Katriel in :issue:`45711`.)" +"no parameters, the traceback attached to this exception is now always " +"``sys.exc_info()[1].__traceback__``. This means that changes made to the " +"traceback in the current :keyword:`except` clause are reflected in the re-" +"raised exception. (Contributed by Irit Katriel in :issue:`45711`.)" msgstr "" msgid "" @@ -640,16 +640,16 @@ msgstr "" msgid "" "Added the :class:`~asyncio.TaskGroup` class, an :ref:`asynchronous context " "manager ` holding a group of tasks that will wait " -"for all of them upon exit. For new code this is recommended over using :func:" -"`~asyncio.create_task` and :func:`~asyncio.gather` directly. (Contributed by " -"Yury Selivanov and others in :gh:`90908`.)" +"for all of them upon exit. For new code this is recommended over " +"using :func:`~asyncio.create_task` and :func:`~asyncio.gather` directly. " +"(Contributed by Yury Selivanov and others in :gh:`90908`.)" msgstr "" msgid "" "Added :func:`~asyncio.timeout`, an asynchronous context manager for setting " "a timeout on asynchronous operations. For new code this is recommended over " -"using :func:`~asyncio.wait_for` directly. (Contributed by Andrew Svetlov in :" -"gh:`90927`.)" +"using :func:`~asyncio.wait_for` directly. (Contributed by Andrew Svetlov " +"in :gh:`90927`.)" msgstr "" msgid "" @@ -664,23 +664,24 @@ msgid "" msgstr "" msgid "" -"Added keyword argument *all_errors* to :meth:`asyncio.loop." -"create_connection` so that multiple connection errors can be raised as an :" -"exc:`ExceptionGroup`." +"Added keyword argument *all_errors* " +"to :meth:`asyncio.loop.create_connection` so that multiple connection errors " +"can be raised as an :exc:`ExceptionGroup`." msgstr "" msgid "" "Added the :meth:`asyncio.StreamWriter.start_tls` method for upgrading " -"existing stream-based connections to TLS. (Contributed by Ian Good in :issue:" -"`34975`.)" +"existing stream-based connections to TLS. (Contributed by Ian Good " +"in :issue:`34975`.)" msgstr "" msgid "" -"Added raw datagram socket functions to the event loop: :meth:`~asyncio.loop." -"sock_sendto`, :meth:`~asyncio.loop.sock_recvfrom` and :meth:`~asyncio.loop." -"sock_recvfrom_into`. These have implementations in :class:`~asyncio." -"SelectorEventLoop` and :class:`~asyncio.ProactorEventLoop`. (Contributed by " -"Alex Grönholm in :issue:`46805`.)" +"Added raw datagram socket functions to the event " +"loop: :meth:`~asyncio.loop.sock_sendto`, :meth:`~asyncio.loop.sock_recvfrom` " +"and :meth:`~asyncio.loop.sock_recvfrom_into`. These have implementations " +"in :class:`~asyncio.SelectorEventLoop` " +"and :class:`~asyncio.ProactorEventLoop`. (Contributed by Alex Grönholm " +"in :issue:`46805`.)" msgstr "" msgid "" @@ -702,18 +703,19 @@ msgid "dataclasses" msgstr "" msgid "" -"Change field default mutability check, allowing only defaults which are :" -"term:`hashable` instead of any object which is not an instance of :class:" -"`dict`, :class:`list` or :class:`set`. (Contributed by Eric V. Smith in :" -"issue:`44674`.)" +"Change field default mutability check, allowing only defaults which " +"are :term:`hashable` instead of any object which is not an instance " +"of :class:`dict`, :class:`list` or :class:`set`. (Contributed by Eric V. " +"Smith in :issue:`44674`.)" msgstr "" msgid "datetime" msgstr "" msgid "" -"Add :const:`datetime.UTC`, a convenience alias for :attr:`datetime.timezone." -"utc`. (Contributed by Kabir Kwatra in :gh:`91973`.)" +"Add :const:`datetime.UTC`, a convenience alias " +"for :attr:`datetime.timezone.utc`. (Contributed by Kabir Kwatra " +"in :gh:`91973`.)" msgstr "" msgid "" @@ -737,30 +739,31 @@ msgid "" msgstr "" msgid "" -"Added :class:`~enum.ReprEnum`, which only modifies the :meth:`~object." -"__repr__` of members while returning their literal values (rather than " -"names) for :meth:`~object.__str__` and :meth:`~object.__format__` (used by :" -"func:`str`, :func:`format` and :term:`f-string`\\s)." +"Added :class:`~enum.ReprEnum`, which only modifies " +"the :meth:`~object.__repr__` of members while returning their literal values " +"(rather than names) for :meth:`~object.__str__` " +"and :meth:`~object.__format__` (used by :func:`str`, :func:`format` " +"and :term:`f-string`\\s)." msgstr "" msgid "" -"Changed :meth:`Enum.__format__() ` (the default for :" -"func:`format`, :meth:`str.format` and :term:`f-string`\\s) to always produce " -"the same result as :meth:`Enum.__str__() `: for enums " -"inheriting from :class:`~enum.ReprEnum` it will be the member's value; for " -"all other enums it will be the enum and member name (e.g. ``Color.RED``)." +"Changed :meth:`Enum.__format__() ` (the default " +"for :func:`format`, :meth:`str.format` and :term:`f-string`\\s) to always " +"produce the same result as :meth:`Enum.__str__() `: for " +"enums inheriting from :class:`~enum.ReprEnum` it will be the member's value; " +"for all other enums it will be the enum and member name (e.g. ``Color.RED``)." msgstr "" msgid "" -"Added a new *boundary* class parameter to :class:`~enum.Flag` enums and the :" -"class:`~enum.FlagBoundary` enum with its options, to control how to handle " -"out-of-range flag values." +"Added a new *boundary* class parameter to :class:`~enum.Flag` enums and " +"the :class:`~enum.FlagBoundary` enum with its options, to control how to " +"handle out-of-range flag values." msgstr "" msgid "" -"Added the :func:`~enum.verify` enum decorator and the :class:`~enum." -"EnumCheck` enum with its options, to check enum classes against several " -"specific constraints." +"Added the :func:`~enum.verify` enum decorator and " +"the :class:`~enum.EnumCheck` enum with its options, to check enum classes " +"against several specific constraints." msgstr "" msgid "" @@ -769,23 +772,24 @@ msgid "" msgstr "" msgid "" -"Added the :deco:`~enum.property` decorator, which works like :deco:" -"`property` except for enums. Use this instead of :func:`types." -"DynamicClassAttribute`." +"Added the :deco:`~enum.property` decorator, which works " +"like :deco:`property` except for enums. Use this instead " +"of :func:`types.DynamicClassAttribute`." msgstr "" msgid "" -"Added the :func:`~enum.global_enum` enum decorator, which adjusts :meth:" -"`~object.__repr__` and :meth:`~object.__str__` to show values as members of " -"their module rather than the enum class. For example, ``'re.ASCII'`` for " -"the :const:`~re.ASCII` member of :class:`re.RegexFlag` rather than " -"``'RegexFlag.ASCII'``." +"Added the :func:`~enum.global_enum` enum decorator, which " +"adjusts :meth:`~object.__repr__` and :meth:`~object.__str__` to show values " +"as members of their module rather than the enum class. For example, " +"``'re.ASCII'`` for the :const:`~re.ASCII` member of :class:`re.RegexFlag` " +"rather than ``'RegexFlag.ASCII'``." msgstr "" msgid "" -"Enhanced :class:`~enum.Flag` to support :func:`len`, iteration and :keyword:" -"`in`/:keyword:`not in` on its members. For example, the following now works: " -"``len(AFlag(3)) == 2 and list(AFlag(3)) == (AFlag.ONE, AFlag.TWO)``" +"Enhanced :class:`~enum.Flag` to support :func:`len`, iteration " +"and :keyword:`in`/:keyword:`not in` on its members. For example, the " +"following now works: ``len(AFlag(3)) == 2 and list(AFlag(3)) == (AFlag.ONE, " +"AFlag.TWO)``" msgstr "" msgid "" @@ -827,8 +831,8 @@ msgid "functools" msgstr "" msgid "" -":deco:`functools.singledispatch` now supports :class:`types.UnionType` and :" -"class:`typing.Union` as annotations to the dispatch argument.::" +":deco:`functools.singledispatch` now supports :class:`types.UnionType` " +"and :class:`typing.Union` as annotations to the dispatch argument.::" msgstr "" msgid "" @@ -863,13 +867,14 @@ msgstr "" msgid "" "The :func:`gzip.compress` function is now faster when used with the " -"**mtime=0** argument as it delegates the compression entirely to a single :" -"func:`zlib.compress` operation. There is one side effect of this change: The " -"gzip file header contains an \"OS\" byte in its header. That was " -"traditionally always set to a value of 255 representing \"unknown\" by the :" -"mod:`gzip` module. Now, when using :func:`~gzip.compress` with **mtime=0**, " -"it may be set to a different value by the underlying zlib C library Python " -"was linked against. (See :gh:`112346` for details on the side effect.)" +"**mtime=0** argument as it delegates the compression entirely to a " +"single :func:`zlib.compress` operation. There is one side effect of this " +"change: The gzip file header contains an \"OS\" byte in its header. That was " +"traditionally always set to a value of 255 representing \"unknown\" by " +"the :mod:`gzip` module. Now, when using :func:`~gzip.compress` with " +"**mtime=0**, it may be set to a different value by the underlying zlib C " +"library Python was linked against. (See :gh:`112346` for details on the side " +"effect.)" msgstr "" msgid "hashlib" @@ -917,8 +922,8 @@ msgstr "" msgid "" "Add :func:`~inspect.ismethodwrapper` for checking if the type of an object " -"is a :class:`~types.MethodWrapperType`. (Contributed by Hakan Çelik in :" -"issue:`29418`.)" +"is a :class:`~types.MethodWrapperType`. (Contributed by Hakan Çelik " +"in :issue:`29418`.)" msgstr "" msgid "" @@ -952,8 +957,8 @@ msgstr "" msgid "" "Add :func:`locale.getencoding` to get the current locale encoding. It is " -"similar to ``locale.getpreferredencoding(False)`` but ignores the :ref:" -"`Python UTF-8 Mode `." +"similar to ``locale.getpreferredencoding(False)`` but ignores " +"the :ref:`Python UTF-8 Mode `." msgstr "" msgid "logging" @@ -961,17 +966,18 @@ msgstr "" msgid "" "Added :func:`~logging.getLevelNamesMapping` to return a mapping from logging " -"level names (e.g. ``'CRITICAL'``) to the values of their corresponding :ref:" -"`levels` (e.g. ``50``, by default). (Contributed by Andrei Kulakovin in :gh:" -"`88024`.)" +"level names (e.g. ``'CRITICAL'``) to the values of their " +"corresponding :ref:`levels` (e.g. ``50``, by default). (Contributed by " +"Andrei Kulakovin in :gh:`88024`.)" msgstr "" msgid "" -"Added a :meth:`~logging.handlers.SysLogHandler.createSocket` method to :" -"class:`~logging.handlers.SysLogHandler`, to match :meth:`SocketHandler." -"createSocket() `. It is called " -"automatically during handler initialization and when emitting an event, if " -"there is no active socket. (Contributed by Kirill Pinchuk in :gh:`88457`.)" +"Added a :meth:`~logging.handlers.SysLogHandler.createSocket` method " +"to :class:`~logging.handlers.SysLogHandler`, to " +"match :meth:`SocketHandler.createSocket() " +"`. It is called automatically " +"during handler initialization and when emitting an event, if there is no " +"active socket. (Contributed by Kirill Pinchuk in :gh:`88457`.)" msgstr "" msgid "math" @@ -989,10 +995,10 @@ msgstr "" msgid "" "The behaviour of two :func:`math.pow` corner cases was changed, for " -"consistency with the IEEE 754 specification. The operations ``math.pow(0.0, -" -"math.inf)`` and ``math.pow(-0.0, -math.inf)`` now return ``inf``. Previously " -"they raised :exc:`ValueError`. (Contributed by Mark Dickinson in :issue:" -"`44339`.)" +"consistency with the IEEE 754 specification. The operations ``math.pow(0.0, " +"-math.inf)`` and ``math.pow(-0.0, -math.inf)`` now return ``inf``. " +"Previously they raised :exc:`ValueError`. (Contributed by Mark Dickinson " +"in :issue:`44339`.)" msgstr "" msgid "" @@ -1004,9 +1010,9 @@ msgid "operator" msgstr "" msgid "" -"A new function ``operator.call`` has been added, such that ``operator." -"call(obj, *args, **kwargs) == obj(*args, **kwargs)``. (Contributed by Antony " -"Lee in :issue:`44019`.)" +"A new function ``operator.call`` has been added, such that " +"``operator.call(obj, *args, **kwargs) == obj(*args, **kwargs)``. " +"(Contributed by Antony Lee in :issue:`44019`.)" msgstr "" msgid "os" @@ -1014,8 +1020,8 @@ msgstr "" msgid "" "On Windows, :func:`os.urandom` now uses ``BCryptGenRandom()``, instead of " -"``CryptGenRandom()`` which is deprecated. (Contributed by Donghee Na in :" -"issue:`44611`.)" +"``CryptGenRandom()`` which is deprecated. (Contributed by Donghee Na " +"in :issue:`44611`.)" msgstr "" msgid "pathlib" @@ -1023,9 +1029,9 @@ msgstr "" msgid "" ":meth:`~pathlib.Path.glob` and :meth:`~pathlib.Path.rglob` return only " -"directories if *pattern* ends with a pathname components separator: :data:" -"`~os.sep` or :data:`~os.altsep`. (Contributed by Eisuke Kawasima in :issue:" -"`22276` and :issue:`33392`.)" +"directories if *pattern* ends with a pathname components " +"separator: :data:`~os.sep` or :data:`~os.altsep`. (Contributed by Eisuke " +"Kawasima in :issue:`22276` and :issue:`33392`.)" msgstr "" msgid "re" @@ -1049,8 +1055,8 @@ msgid "socket" msgstr "" msgid "" -"Add CAN Socket support for NetBSD. (Contributed by Thomas Klausner in :issue:" -"`30512`.)" +"Add CAN Socket support for NetBSD. (Contributed by Thomas Klausner " +"in :issue:`30512`.)" msgstr "" msgid "" @@ -1063,30 +1069,30 @@ msgid "sqlite3" msgstr "" msgid "" -"You can now disable the authorizer by passing :const:`None` to :meth:" -"`~sqlite3.Connection.set_authorizer`. (Contributed by Erlend E. Aasland in :" -"issue:`44491`.)" +"You can now disable the authorizer by passing :const:`None` " +"to :meth:`~sqlite3.Connection.set_authorizer`. (Contributed by Erlend E. " +"Aasland in :issue:`44491`.)" msgstr "" msgid "" "Collation name :meth:`~sqlite3.Connection.create_collation` can now contain " -"any Unicode character. Collation names with invalid characters now raise :" -"exc:`UnicodeEncodeError` instead of :exc:`sqlite3.ProgrammingError`. " +"any Unicode character. Collation names with invalid characters now " +"raise :exc:`UnicodeEncodeError` instead of :exc:`sqlite3.ProgrammingError`. " "(Contributed by Erlend E. Aasland in :issue:`44688`.)" msgstr "" msgid "" -":mod:`sqlite3` exceptions now include the SQLite extended error code as :" -"attr:`~sqlite3.Error.sqlite_errorcode` and the SQLite error name as :attr:" -"`~sqlite3.Error.sqlite_errorname`. (Contributed by Aviv Palivoda, Daniel " -"Shahaf, and Erlend E. Aasland in :issue:`16379` and :issue:`24139`.)" +":mod:`sqlite3` exceptions now include the SQLite extended error code " +"as :attr:`~sqlite3.Error.sqlite_errorcode` and the SQLite error name " +"as :attr:`~sqlite3.Error.sqlite_errorname`. (Contributed by Aviv Palivoda, " +"Daniel Shahaf, and Erlend E. Aasland in :issue:`16379` and :issue:`24139`.)" msgstr "" msgid "" -"Add :meth:`~sqlite3.Connection.setlimit` and :meth:`~sqlite3.Connection." -"getlimit` to :class:`sqlite3.Connection` for setting and getting SQLite " -"limits by connection basis. (Contributed by Erlend E. Aasland in :issue:" -"`45243`.)" +"Add :meth:`~sqlite3.Connection.setlimit` " +"and :meth:`~sqlite3.Connection.getlimit` to :class:`sqlite3.Connection` for " +"setting and getting SQLite limits by connection basis. (Contributed by " +"Erlend E. Aasland in :issue:`45243`.)" msgstr "" msgid "" @@ -1109,32 +1115,33 @@ msgid "" msgstr "" msgid "" -"Add :meth:`~sqlite3.Connection.serialize` and :meth:`~sqlite3.Connection." -"deserialize` to :class:`sqlite3.Connection` for serializing and " -"deserializing databases. (Contributed by Erlend E. Aasland in :issue:" -"`41930`.)" +"Add :meth:`~sqlite3.Connection.serialize` " +"and :meth:`~sqlite3.Connection.deserialize` to :class:`sqlite3.Connection` " +"for serializing and deserializing databases. (Contributed by Erlend E. " +"Aasland in :issue:`41930`.)" msgstr "" msgid "" -"Add :meth:`~sqlite3.Connection.create_window_function` to :class:`sqlite3." -"Connection` for creating aggregate window functions. (Contributed by Erlend " -"E. Aasland in :issue:`34916`.)" +"Add :meth:`~sqlite3.Connection.create_window_function` " +"to :class:`sqlite3.Connection` for creating aggregate window functions. " +"(Contributed by Erlend E. Aasland in :issue:`34916`.)" msgstr "" msgid "" -"Add :meth:`~sqlite3.Connection.blobopen` to :class:`sqlite3.Connection`. :" -"class:`sqlite3.Blob` allows incremental I/O operations on blobs. " -"(Contributed by Aviv Palivoda and Erlend E. Aasland in :issue:`24905`.)" +"Add :meth:`~sqlite3.Connection.blobopen` " +"to :class:`sqlite3.Connection`. :class:`sqlite3.Blob` allows incremental I/O " +"operations on blobs. (Contributed by Aviv Palivoda and Erlend E. Aasland " +"in :issue:`24905`.)" msgstr "" msgid "string" msgstr "" msgid "" -"Add :meth:`~string.Template.get_identifiers` and :meth:`~string.Template." -"is_valid` to :class:`string.Template`, which respectively return all valid " -"placeholders, and whether any invalid placeholders are present. (Contributed " -"by Ben Kehoe in :gh:`90465`.)" +"Add :meth:`~string.Template.get_identifiers` " +"and :meth:`~string.Template.is_valid` to :class:`string.Template`, which " +"respectively return all valid placeholders, and whether any invalid " +"placeholders are present. (Contributed by Ben Kehoe in :gh:`90465`.)" msgstr "" msgid "sys" @@ -1144,14 +1151,14 @@ msgid "" ":func:`sys.exc_info` now derives the ``type`` and ``traceback`` fields from " "the ``value`` (the exception instance), so when an exception is modified " "while it is being handled, the changes are reflected in the results of " -"subsequent calls to :func:`!exc_info`. (Contributed by Irit Katriel in :" -"issue:`45711`.)" +"subsequent calls to :func:`!exc_info`. (Contributed by Irit Katriel " +"in :issue:`45711`.)" msgstr "" msgid "" "Add :func:`sys.exception` which returns the active exception instance " -"(equivalent to ``sys.exc_info()[1]``). (Contributed by Irit Katriel in :" -"issue:`46328`.)" +"(equivalent to ``sys.exc_info()[1]``). (Contributed by Irit Katriel " +"in :issue:`46328`.)" msgstr "" msgid "" @@ -1182,8 +1189,8 @@ msgid "" ":class:`~tempfile.SpooledTemporaryFile` objects now fully implement the " "methods of :class:`io.BufferedIOBase` or :class:`io.TextIOBase` (depending " "on file mode). This lets them work correctly with APIs that expect file-like " -"objects, such as compression modules. (Contributed by Carey Metcalfe in :gh:" -"`70363`.)" +"objects, such as compression modules. (Contributed by Carey Metcalfe " +"in :gh:`70363`.)" msgstr "" msgid "threading" @@ -1194,8 +1201,8 @@ msgid "" "(glibc 2.30 and newer), the :meth:`threading.Lock.acquire` method now uses " "the monotonic clock (:const:`time.CLOCK_MONOTONIC`) for the timeout, rather " "than using the system clock (:const:`time.CLOCK_REALTIME`), to not be " -"affected by system clock changes. (Contributed by Victor Stinner in :issue:" -"`41710`.)" +"affected by system clock changes. (Contributed by Victor Stinner " +"in :issue:`41710`.)" msgstr "" msgid "time" @@ -1215,8 +1222,8 @@ msgid "" "hardware/drivers/kernel/high-resolution-timers>`_ which has a resolution of " "100 nanoseconds (10\\ :sup:`-7` seconds). Previously, it had a resolution of " "1 millisecond (10\\ :sup:`-3` seconds). (Contributed by Benjamin Szőke, " -"Donghee Na, Eryk Sun and Victor Stinner in :issue:`21302` and :issue:" -"`45429`.)" +"Donghee Na, Eryk Sun and Victor Stinner in :issue:`21302` " +"and :issue:`45429`.)" msgstr "" msgid "tkinter" @@ -1238,9 +1245,9 @@ msgid "" msgstr "" msgid "" -"Add :func:`traceback.TracebackException.print`, which prints the formatted :" -"exc:`~traceback.TracebackException` instance to a file. (Contributed by Irit " -"Katriel in :issue:`33809`.)" +"Add :func:`traceback.TracebackException.print`, which prints the " +"formatted :exc:`~traceback.TracebackException` instance to a file. " +"(Contributed by Irit Katriel in :issue:`33809`.)" msgstr "" msgid "typing" @@ -1250,10 +1257,11 @@ msgid "For major changes, see :ref:`new-feat-related-type-hints-311`." msgstr "" msgid "" -"Add :func:`typing.assert_never` and :class:`typing.Never`. :func:`typing." -"assert_never` is useful for asking a type checker to confirm that a line of " -"code is not reachable. At runtime, it raises an :exc:`AssertionError`. " -"(Contributed by Jelle Zijlstra in :gh:`90633`.)" +"Add :func:`typing.assert_never` " +"and :class:`typing.Never`. :func:`typing.assert_never` is useful for asking " +"a type checker to confirm that a line of code is not reachable. At runtime, " +"it raises an :exc:`AssertionError`. (Contributed by Jelle Zijlstra " +"in :gh:`90633`.)" msgstr "" msgid "" @@ -1293,8 +1301,8 @@ msgstr "" msgid "" "The :func:`typing.get_overloads` function can be used for introspecting the " "overloads of a function. :func:`typing.clear_overloads` can be used to clear " -"all registered overloads of a function. (Contributed by Jelle Zijlstra in :" -"gh:`89263`.)" +"all registered overloads of a function. (Contributed by Jelle Zijlstra " +"in :gh:`89263`.)" msgstr "" msgid "" @@ -1322,14 +1330,14 @@ msgstr "" msgid "" ":func:`typing.get_type_hints` no longer adds :data:`~typing.Optional` to " -"parameters with ``None`` as a default. (Contributed by Nikita Sobolev in :gh:" -"`90353`.)" +"parameters with ``None`` as a default. (Contributed by Nikita Sobolev " +"in :gh:`90353`.)" msgstr "" msgid "" -":func:`typing.get_type_hints` now supports evaluating bare stringified :data:" -"`~typing.ClassVar` annotations. (Contributed by Gregory Beauregard in :gh:" -"`90711`.)" +":func:`typing.get_type_hints` now supports evaluating bare " +"stringified :data:`~typing.ClassVar` annotations. (Contributed by Gregory " +"Beauregard in :gh:`90711`.)" msgstr "" msgid "" @@ -1350,11 +1358,13 @@ msgid "unittest" msgstr "" msgid "" -"Added methods :meth:`~unittest.TestCase.enterContext` and :meth:`~unittest." -"TestCase.enterClassContext` of class :class:`~unittest.TestCase`, method :" -"meth:`~unittest.IsolatedAsyncioTestCase.enterAsyncContext` of class :class:" -"`~unittest.IsolatedAsyncioTestCase` and function :func:`unittest." -"enterModuleContext`. (Contributed by Serhiy Storchaka in :issue:`45046`.)" +"Added methods :meth:`~unittest.TestCase.enterContext` " +"and :meth:`~unittest.TestCase.enterClassContext` of " +"class :class:`~unittest.TestCase`, " +"method :meth:`~unittest.IsolatedAsyncioTestCase.enterAsyncContext` of " +"class :class:`~unittest.IsolatedAsyncioTestCase` and " +"function :func:`unittest.enterModuleContext`. (Contributed by Serhiy " +"Storchaka in :issue:`45046`.)" msgstr "" msgid "venv" @@ -1367,26 +1377,26 @@ msgid "" "installation scheme is the default. That means that downstream distributors " "can change the default sysconfig install scheme without changing behavior of " "virtual environments. Third party code that also creates new virtual " -"environments should do the same. (Contributed by Miro Hrončok in :issue:" -"`45413`.)" +"environments should do the same. (Contributed by Miro Hrončok " +"in :issue:`45413`.)" msgstr "" msgid "warnings" msgstr "" msgid "" -":func:`warnings.catch_warnings` now accepts arguments for :func:`warnings." -"simplefilter`, providing a more concise way to locally ignore warnings or " -"convert them to errors. (Contributed by Zac Hatfield-Dodds in :issue:" -"`47074`.)" +":func:`warnings.catch_warnings` now accepts arguments " +"for :func:`warnings.simplefilter`, providing a more concise way to locally " +"ignore warnings or convert them to errors. (Contributed by Zac Hatfield-" +"Dodds in :issue:`47074`.)" msgstr "" msgid "zipfile" msgstr "" msgid "" -"Added support for specifying member name encoding for reading metadata in a :" -"class:`~zipfile.ZipFile`'s directory and file headers. (Contributed by " +"Added support for specifying member name encoding for reading metadata in " +"a :class:`~zipfile.ZipFile`'s directory and file headers. (Contributed by " "Stephen J. Turnbull and Serhiy Storchaka in :issue:`28080`.)" msgstr "" @@ -1396,17 +1406,18 @@ msgid "" msgstr "" msgid "" -"Added :attr:`~zipfile.Path.stem`, :attr:`~zipfile.Path.suffix` and :attr:" -"`~zipfile.Path.suffixes` to :class:`zipfile.Path`. (Contributed by Miguel " -"Brito in :gh:`88261`.)" +"Added :attr:`~zipfile.Path.stem`, :attr:`~zipfile.Path.suffix` " +"and :attr:`~zipfile.Path.suffixes` to :class:`zipfile.Path`. (Contributed by " +"Miguel Brito in :gh:`88261`.)" msgstr "" msgid "Optimizations" msgstr "" msgid "" -"This section covers specific optimizations independent of the :ref:" -"`whatsnew311-faster-cpython` project, which is covered in its own section." +"This section covers specific optimizations independent of " +"the :ref:`whatsnew311-faster-cpython` project, which is covered in its own " +"section." msgstr "" msgid "" @@ -1419,8 +1430,8 @@ msgstr "" msgid "" "Integer division (``//``) is better tuned for optimization by compilers. It " "is now around 20% faster on x86-64 when dividing an :class:`int` by a value " -"smaller than ``2**30``. (Contributed by Gregory P. Smith and Tim Peters in :" -"gh:`90564`.)" +"smaller than ``2**30``. (Contributed by Gregory P. Smith and Tim Peters " +"in :gh:`90564`.)" msgstr "" msgid "" @@ -1429,16 +1440,17 @@ msgid "" msgstr "" msgid "" -"Resizing lists is streamlined for the common case, speeding up :meth:`list." -"append` by ≈15% and simple :term:`list comprehension`\\s by up to 20-30% " -"(Contributed by Dennis Sweeney in :gh:`91165`.)" +"Resizing lists is streamlined for the common case, speeding " +"up :meth:`list.append` by ≈15% and simple :term:`list comprehension`\\s by " +"up to 20-30% (Contributed by Dennis Sweeney in :gh:`91165`.)" msgstr "" msgid "" "Dictionaries don't store hash values when all keys are Unicode objects, " -"decreasing :class:`dict` size. For example, ``sys.getsizeof(dict." -"fromkeys(\"abcdefg\"))`` is reduced from 352 bytes to 272 bytes (23% " -"smaller) on 64-bit platforms. (Contributed by Inada Naoki in :issue:`46845`.)" +"decreasing :class:`dict` size. For example, " +"``sys.getsizeof(dict.fromkeys(\"abcdefg\"))`` is reduced from 352 bytes to " +"272 bytes (23% smaller) on 64-bit platforms. (Contributed by Inada Naoki " +"in :issue:`46845`.)" msgstr "" msgid "" @@ -1454,11 +1466,11 @@ msgid "" msgstr "" msgid "" -"The :mod:`statistics` functions :func:`~statistics.mean`, :func:`~statistics." -"variance` and :func:`~statistics.stdev` now consume iterators in one pass " -"rather than converting them to a :class:`list` first. This is twice as fast " -"and can save substantial memory. (Contributed by Raymond Hettinger in :gh:" -"`90415`.)" +"The :mod:`statistics` " +"functions :func:`~statistics.mean`, :func:`~statistics.variance` " +"and :func:`~statistics.stdev` now consume iterators in one pass rather than " +"converting them to a :class:`list` first. This is twice as fast and can save " +"substantial memory. (Contributed by Raymond Hettinger in :gh:`90415`.)" msgstr "" msgid "" @@ -1544,10 +1556,10 @@ msgstr "" msgid "" "Old-style :ref:`frame objects ` are now created only when " -"requested by debuggers or by Python introspection functions such as :func:" -"`sys._getframe` and :func:`inspect.currentframe`. For most user code, no " -"frame objects are created at all. As a result, nearly all Python functions " -"calls have sped up significantly. We measured a 3-7% speedup in " +"requested by debuggers or by Python introspection functions such " +"as :func:`sys._getframe` and :func:`inspect.currentframe`. For most user " +"code, no frame objects are created at all. As a result, nearly all Python " +"functions calls have sped up significantly. We measured a 3-7% speedup in " "pyperformance." msgstr "" @@ -1573,8 +1585,9 @@ msgid "" "Most Python function calls now consume no C stack space, speeding them up. " "In simple recursive functions like fibonacci or factorial, we observed a " "1.7x speedup. This also means recursive functions can recurse significantly " -"deeper (if the user increases the recursion limit with :func:`sys." -"setrecursionlimit`). We measured a 1-3% improvement in pyperformance." +"deeper (if the user increases the recursion limit " +"with :func:`sys.setrecursionlimit`). We measured a 1-3% improvement in " +"pyperformance." msgstr "" msgid "(Contributed by Pablo Galindo and Mark Shannon in :issue:`45256`.)" @@ -1596,8 +1609,8 @@ msgid "" "more specialized one. This specialized operation uses fast paths available " "only to those use cases/types, which generally outperform their generic " "counterparts. This also brings in another concept called *inline caching*, " -"where Python caches the results of expensive operations directly in the :" -"term:`bytecode`." +"where Python caches the results of expensive operations directly in " +"the :term:`bytecode`." msgstr "" msgid "" @@ -1615,9 +1628,9 @@ msgid "" msgstr "" msgid "" -"(PEP written by Mark Shannon, with ideas inspired by Stefan Brunthaler. See :" -"pep:`659` for more information. Implementation by Mark Shannon and Brandt " -"Bucher, with additional help from Irit Katriel and Dennis Sweeney.)" +"(PEP written by Mark Shannon, with ideas inspired by Stefan Brunthaler. " +"See :pep:`659` for more information. Implementation by Mark Shannon and " +"Brandt Bucher, with additional help from Irit Katriel and Dennis Sweeney.)" msgstr "" msgid "Operation" @@ -1648,9 +1661,9 @@ msgid "``x * x``" msgstr "" msgid "" -"Binary add, multiply and subtract for common types such as :class:`int`, :" -"class:`float` and :class:`str` take custom fast paths for their underlying " -"types." +"Binary add, multiply and subtract for common types such " +"as :class:`int`, :class:`float` and :class:`str` take custom fast paths for " +"their underlying types." msgstr "" msgid "10%" @@ -1666,13 +1679,13 @@ msgid "``a[i]``" msgstr "" msgid "" -"Subscripting container types such as :class:`list`, :class:`tuple` and :" -"class:`dict` directly index the underlying data structures." +"Subscripting container types such as :class:`list`, :class:`tuple` " +"and :class:`dict` directly index the underlying data structures." msgstr "" msgid "" -"Subscripting custom :meth:`~object.__getitem__` is also inlined similar to :" -"ref:`inline-calls`." +"Subscripting custom :meth:`~object.__getitem__` is also inlined similar " +"to :ref:`inline-calls`." msgstr "" msgid "10-25%" @@ -1703,8 +1716,8 @@ msgid "``C(arg)``" msgstr "" msgid "" -"Calls to common builtin (C) functions and types such as :func:`len` and :" -"class:`str` directly call their underlying C version. This avoids going " +"Calls to common builtin (C) functions and types such as :func:`len` " +"and :class:`str` directly call their underlying C version. This avoids going " "through the internal calling convention." msgstr "" @@ -1802,8 +1815,8 @@ msgstr "" msgid "" "A similar optimization already existed since Python 3.10. 3.11 specializes " -"for more forms. Furthermore, all attribute loads should be sped up by :issue:" -"`45947`." +"for more forms. Furthermore, all attribute loads should be sped up " +"by :issue:`45947`." msgstr "" msgid "Misc" @@ -1816,9 +1829,9 @@ msgid "" msgstr "" msgid "" -"\"Zero-cost\" exceptions are implemented, eliminating the cost of :keyword:" -"`try` statements when no exception is raised. (Contributed by Mark Shannon " -"in :issue:`40222`.)" +"\"Zero-cost\" exceptions are implemented, eliminating the cost " +"of :keyword:`try` statements when no exception is raised. (Contributed by " +"Mark Shannon in :issue:`40222`.)" msgstr "" msgid "" @@ -1831,9 +1844,9 @@ msgid "" ":mod:`re`'s regular expression matching engine has been partially " "refactored, and now uses computed gotos (or \"threaded code\") on supported " "platforms. As a result, Python 3.11 executes the `pyperformance regular " -"expression benchmarks `_ up to 10% faster than Python 3.10. (Contributed by Brandt " -"Bucher in :gh:`91404`.)" +"expression benchmarks `_ up to 10% faster than Python 3.10. (Contributed " +"by Brandt Bucher in :gh:`91404`.)" msgstr "" msgid "FAQ" @@ -1923,9 +1936,9 @@ msgid ":opcode:`MAKE_CELL`, to create :ref:`cell-objects`." msgstr "" msgid "" -":opcode:`CHECK_EG_MATCH` and :opcode:`!PREP_RERAISE_STAR`, to handle the :" -"ref:`new exception groups and except* ` added in :pep:" -"`654`." +":opcode:`CHECK_EG_MATCH` and :opcode:`!PREP_RERAISE_STAR`, to handle " +"the :ref:`new exception groups and except* ` added " +"in :pep:`654`." msgstr "" msgid ":opcode:`PUSH_EXC_INFO`, for use in exception handlers." @@ -2099,26 +2112,27 @@ msgstr "" msgid "" "Chaining :class:`classmethod` descriptors (introduced in :issue:`19072`) is " -"now deprecated. It can no longer be used to wrap other descriptors such as :" -"class:`property`. The core design of this feature was flawed and caused a " -"number of downstream problems. To \"pass-through\" a :class:`classmethod`, " -"consider using the :attr:`!__wrapped__` attribute that was added in Python " -"3.10. (Contributed by Raymond Hettinger in :gh:`89519`.)" +"now deprecated. It can no longer be used to wrap other descriptors such " +"as :class:`property`. The core design of this feature was flawed and caused " +"a number of downstream problems. To \"pass-through\" " +"a :class:`classmethod`, consider using the :attr:`!__wrapped__` attribute " +"that was added in Python 3.10. (Contributed by Raymond Hettinger " +"in :gh:`89519`.)" msgstr "" msgid "" "Octal escapes in string and bytes literals with values larger than ``0o377`` " "(255 in decimal) now produce a :exc:`DeprecationWarning`. In a future Python " -"version, they will raise a :exc:`SyntaxWarning` and eventually a :exc:" -"`SyntaxError`. (Contributed by Serhiy Storchaka in :gh:`81548`.)" +"version, they will raise a :exc:`SyntaxWarning` and eventually " +"a :exc:`SyntaxError`. (Contributed by Serhiy Storchaka in :gh:`81548`.)" msgstr "" msgid "" "The delegation of :func:`int` to :meth:`~object.__trunc__` is now " "deprecated. Calling ``int(a)`` when ``type(a)`` implements :meth:`!" "__trunc__` but not :meth:`~object.__int__` or :meth:`~object.__index__` now " -"raises a :exc:`DeprecationWarning`. (Contributed by Zackery Spytz in :issue:" -"`44977`.)" +"raises a :exc:`DeprecationWarning`. (Contributed by Zackery Spytz " +"in :issue:`44977`.)" msgstr "" msgid "Modules" @@ -2187,8 +2201,8 @@ msgid ":mod:`!sunau`" msgstr "" msgid "" -"(Contributed by Brett Cannon in :issue:`47061` and Victor Stinner in :gh:" -"`68966`.)" +"(Contributed by Brett Cannon in :issue:`47061` and Victor Stinner " +"in :gh:`68966`.)" msgstr "" msgid "" @@ -2206,8 +2220,8 @@ msgstr "" msgid "" "Undocumented modules :mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!" -"sre_parse` are now deprecated. (Contributed by Serhiy Storchaka in :issue:" -"`47152`.)" +"sre_parse` are now deprecated. (Contributed by Serhiy Storchaka " +"in :issue:`47152`.)" msgstr "" msgid "Standard Library" @@ -2235,9 +2249,9 @@ msgid "" ":class:`!configparser.LegacyInterpolation` has been deprecated in the " "docstring since Python 3.2, and is not listed in the :mod:`configparser` " "documentation. It now emits a :exc:`DeprecationWarning` and will be removed " -"in Python 3.13. Use :class:`configparser.BasicInterpolation` or :class:" -"`configparser.ExtendedInterpolation` instead. (Contributed by Hugo van " -"Kemenade in :issue:`46607`.)" +"in Python 3.13. Use :class:`configparser.BasicInterpolation` " +"or :class:`configparser.ExtendedInterpolation` instead. (Contributed by Hugo " +"van Kemenade in :issue:`46607`.)" msgstr "" msgid "" @@ -2270,9 +2284,10 @@ msgstr "" msgid "" "The :func:`locale.getdefaultlocale` function is deprecated and will be " -"removed in Python 3.15. Use :func:`locale.setlocale`, :func:`locale." -"getpreferredencoding(False) ` and :func:`locale." -"getlocale` functions instead. (Contributed by Victor Stinner in :gh:`90817`.)" +"removed in Python 3.15. " +"Use :func:`locale.setlocale`, :func:`locale.getpreferredencoding(False) " +"` and :func:`locale.getlocale` functions " +"instead. (Contributed by Victor Stinner in :gh:`90817`.)" msgstr "" msgid "" @@ -2284,11 +2299,11 @@ msgstr "" msgid "" "Stricter rules will now be applied for numerical group references and group " "names in :ref:`regular expressions `. Only sequences of ASCII " -"digits will now be accepted as a numerical reference, and the group name in :" -"class:`bytes` patterns and replacement strings can only contain ASCII " +"digits will now be accepted as a numerical reference, and the group name " +"in :class:`bytes` patterns and replacement strings can only contain ASCII " "letters, digits and underscores. For now, a deprecation warning is raised " -"for syntax violating these rules. (Contributed by Serhiy Storchaka in :gh:" -"`91760`.)" +"for syntax violating these rules. (Contributed by Serhiy Storchaka " +"in :gh:`91760`.)" msgstr "" msgid "" @@ -2301,10 +2316,10 @@ msgstr "" msgid "" ":func:`!turtle.settiltangle` has been deprecated since Python 3.1; it now " -"emits a deprecation warning and will be removed in Python 3.13. Use :func:" -"`turtle.tiltangle` instead (it was earlier incorrectly marked as deprecated, " -"and its docstring is now corrected). (Contributed by Hugo van Kemenade in :" -"issue:`45837`.)" +"emits a deprecation warning and will be removed in Python 3.13. " +"Use :func:`turtle.tiltangle` instead (it was earlier incorrectly marked as " +"deprecated, and its docstring is now corrected). (Contributed by Hugo van " +"Kemenade in :issue:`45837`.)" msgstr "" msgid "" @@ -2327,8 +2342,8 @@ msgid "" msgstr "" msgid "" -"The behavior of returning a value from a :class:`~unittest.TestCase` and :" -"class:`~unittest.IsolatedAsyncioTestCase` test methods (other than the " +"The behavior of returning a value from a :class:`~unittest.TestCase` " +"and :class:`~unittest.IsolatedAsyncioTestCase` test methods (other than the " "default ``None`` value) is now deprecated." msgstr "" @@ -2418,7 +2433,7 @@ msgstr "" msgid ":meth:`!importlib.machinery.BuiltinImporter.find_module`" msgstr "" -msgid ":meth:`!importlib.machinery.BuiltinLoader.module_repr`" +msgid ":meth:`!importlib.machinery.BuiltinImporter.module_repr`" msgstr "" msgid ":meth:`!importlib.machinery.FileFinder.find_loader`" @@ -2430,7 +2445,7 @@ msgstr "" msgid ":meth:`!importlib.machinery.FrozenImporter.find_module`" msgstr "" -msgid ":meth:`!importlib.machinery.FrozenLoader.module_repr`" +msgid ":meth:`!importlib.machinery.FrozenImporter.module_repr`" msgstr "" msgid ":meth:`!importlib.machinery.PathFinder.find_module`" @@ -2574,10 +2589,11 @@ msgstr "" msgid "" "Removed the :func:`!@asyncio.coroutine` :term:`decorator` enabling legacy " -"generator-based coroutines to be compatible with :keyword:`async` / :keyword:" -"`await` code. The function has been deprecated since Python 3.8 and the " -"removal was initially scheduled for Python 3.10. Use :keyword:`async def` " -"instead. (Contributed by Illia Volochii in :issue:`43216`.)" +"generator-based coroutines to be compatible " +"with :keyword:`async` / :keyword:`await` code. The function has been " +"deprecated since Python 3.8 and the removal was initially scheduled for " +"Python 3.10. Use :keyword:`async def` instead. (Contributed by Illia " +"Volochii in :issue:`43216`.)" msgstr "" msgid "" @@ -2587,11 +2603,11 @@ msgid "" msgstr "" msgid "" -"Due to significant security concerns, the *reuse_address* parameter of :meth:" -"`asyncio.loop.create_datagram_endpoint`, disabled in Python 3.9, is now " -"entirely removed. This is because of the behavior of the socket option " -"``SO_REUSEADDR`` in UDP. (Contributed by Hugo van Kemenade in :issue:" -"`45129`.)" +"Due to significant security concerns, the *reuse_address* parameter " +"of :meth:`asyncio.loop.create_datagram_endpoint`, disabled in Python 3.9, is " +"now entirely removed. This is because of the behavior of the socket option " +"``SO_REUSEADDR`` in UDP. (Contributed by Hugo van Kemenade " +"in :issue:`45129`.)" msgstr "" msgid "" @@ -2624,49 +2640,51 @@ msgid "" msgstr "" msgid "" -"Removed the :meth:`~object.__getitem__` methods of :class:`xml.dom.pulldom." -"DOMEventStream`, :class:`wsgiref.util.FileWrapper` and :class:`fileinput." -"FileInput`, deprecated since Python 3.9. (Contributed by Hugo van Kemenade " -"in :issue:`45132`.)" +"Removed the :meth:`~object.__getitem__` methods " +"of :class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` " +"and :class:`fileinput.FileInput`, deprecated since Python 3.9. (Contributed " +"by Hugo van Kemenade in :issue:`45132`.)" msgstr "" msgid "" "Removed the deprecated :mod:`gettext` functions :func:`!lgettext`, :func:`!" -"ldgettext`, :func:`!lngettext` and :func:`!ldngettext`. Also removed the :" -"func:`!bind_textdomain_codeset` function, the :meth:`!NullTranslations." -"output_charset` and :meth:`!NullTranslations.set_output_charset` methods, " -"and the *codeset* parameter of :func:`!translation` and :func:`!install`, " -"since they are only used for the :func:`!l*gettext` functions. (Contributed " -"by Donghee Na and Serhiy Storchaka in :issue:`44235`.)" +"ldgettext`, :func:`!lngettext` and :func:`!ldngettext`. Also removed " +"the :func:`!bind_textdomain_codeset` function, the :meth:`!" +"NullTranslations.output_charset` and :meth:`!" +"NullTranslations.set_output_charset` methods, and the *codeset* parameter " +"of :func:`!translation` and :func:`!install`, since they are only used for " +"the :func:`!l*gettext` functions. (Contributed by Donghee Na and Serhiy " +"Storchaka in :issue:`44235`.)" msgstr "" msgid "Removed from the :mod:`inspect` module:" msgstr "" msgid "" -"The :func:`!getargspec` function, deprecated since Python 3.0; use :func:" -"`inspect.signature` or :func:`inspect.getfullargspec` instead." +"The :func:`!getargspec` function, deprecated since Python 3.0; " +"use :func:`inspect.signature` or :func:`inspect.getfullargspec` instead." msgstr "" msgid "" -"The :func:`!formatargspec` function, deprecated since Python 3.5; use the :" -"func:`inspect.signature` function or the :class:`inspect.Signature` object " -"directly." +"The :func:`!formatargspec` function, deprecated since Python 3.5; use " +"the :func:`inspect.signature` function or the :class:`inspect.Signature` " +"object directly." msgstr "" msgid "" -"The undocumented :meth:`!Signature.from_builtin` and :meth:`!Signature." -"from_function` methods, deprecated since Python 3.5; use the :meth:" -"`Signature.from_callable() ` method instead." +"The undocumented :meth:`!Signature.from_builtin` and :meth:`!" +"Signature.from_function` methods, deprecated since Python 3.5; use " +"the :meth:`Signature.from_callable() ` " +"method instead." msgstr "" msgid "(Contributed by Hugo van Kemenade in :issue:`45320`.)" msgstr "" msgid "" -"Removed the :meth:`~object.__class_getitem__` method from :class:`pathlib." -"PurePath`, because it was not used and added by mistake in previous " -"versions. (Contributed by Nikita Sobolev in :issue:`46483`.)" +"Removed the :meth:`~object.__class_getitem__` method " +"from :class:`pathlib.PurePath`, because it was not used and added by mistake " +"in previous versions. (Contributed by Nikita Sobolev in :issue:`46483`.)" msgstr "" msgid "" @@ -2676,8 +2694,8 @@ msgid "" msgstr "" msgid "" -"Removed the deprecated :meth:`!split` method of :class:`!_tkinter." -"TkappType`. (Contributed by Erlend E. Aasland in :issue:`38371`.)" +"Removed the deprecated :meth:`!split` method of :class:`!" +"_tkinter.TkappType`. (Contributed by Erlend E. Aasland in :issue:`38371`.)" msgstr "" msgid "" @@ -2720,20 +2738,20 @@ msgid "" msgstr "" msgid "" -":func:`open`, :func:`io.open`, :func:`codecs.open` and :class:`fileinput." -"FileInput` no longer accept ``'U'`` (\"universal newline\") in the file " -"mode. In Python 3, \"universal newline\" mode is used by default whenever a " -"file is opened in text mode, and the ``'U'`` flag has been deprecated since " -"Python 3.3. The :ref:`newline parameter ` to these " -"functions controls how universal newlines work. (Contributed by Victor " -"Stinner in :issue:`37330`.)" +":func:`open`, :func:`io.open`, :func:`codecs.open` " +"and :class:`fileinput.FileInput` no longer accept ``'U'`` (\"universal " +"newline\") in the file mode. In Python 3, \"universal newline\" mode is used " +"by default whenever a file is opened in text mode, and the ``'U'`` flag has " +"been deprecated since Python 3.3. The :ref:`newline parameter ` to these functions controls how universal newlines work. " +"(Contributed by Victor Stinner in :issue:`37330`.)" msgstr "" msgid "" -":class:`ast.AST` node positions are now validated when provided to :func:" -"`compile` and other related functions. If invalid positions are detected, a :" -"exc:`ValueError` will be raised. (Contributed by Pablo Galindo in :gh:" -"`93351`)" +":class:`ast.AST` node positions are now validated when provided " +"to :func:`compile` and other related functions. If invalid positions are " +"detected, a :exc:`ValueError` will be raised. (Contributed by Pablo Galindo " +"in :gh:`93351`)" msgstr "" msgid "" @@ -2743,9 +2761,10 @@ msgid "" msgstr "" msgid "" -":mod:`calendar`: The :class:`calendar.LocaleTextCalendar` and :class:" -"`calendar.LocaleHTMLCalendar` classes now use :func:`locale.getlocale`, " -"instead of using :func:`locale.getdefaultlocale`, if no locale is specified. " +":mod:`calendar`: The :class:`calendar.LocaleTextCalendar` " +"and :class:`calendar.LocaleHTMLCalendar` classes now " +"use :func:`locale.getlocale`, instead of " +"using :func:`locale.getdefaultlocale`, if no locale is specified. " "(Contributed by Victor Stinner in :issue:`46659`.)" msgstr "" @@ -2758,22 +2777,22 @@ msgstr "" msgid "" "The *population* parameter of :func:`random.sample` must be a sequence, and " "automatic conversion of :class:`set`\\s to :class:`list`\\s is no longer " -"supported. Also, if the sample size is larger than the population size, a :" -"exc:`ValueError` is raised. (Contributed by Raymond Hettinger in :issue:" -"`40465`.)" +"supported. Also, if the sample size is larger than the population size, " +"a :exc:`ValueError` is raised. (Contributed by Raymond Hettinger " +"in :issue:`40465`.)" msgstr "" msgid "" "The *random* optional parameter of :func:`random.shuffle` was removed. It " -"was previously an arbitrary random function to use for the shuffle; now, :" -"func:`random.random` (its previous default) will always be used." +"was previously an arbitrary random function to use for the shuffle; " +"now, :func:`random.random` (its previous default) will always be used." msgstr "" msgid "" "In :mod:`re` :ref:`re-syntax`, global inline flags (e.g. ``(?i)``) can now " "only be used at the start of regular expressions. Using them elsewhere has " -"been deprecated since Python 3.6. (Contributed by Serhiy Storchaka in :issue:" -"`47066`.)" +"been deprecated since Python 3.6. (Contributed by Serhiy Storchaka " +"in :issue:`47066`.)" msgstr "" msgid "" @@ -2796,8 +2815,8 @@ msgid "" "limited subset of POSIX APIs; Python standard libraries features and modules " "related to networking, processes, threading, signals, mmap, and users/groups " "are not available or don't work. (Emscripten contributed by Christian Heimes " -"and Ethan Smith in :gh:`84461` and WASI contributed by Christian Heimes in :" -"gh:`90473`; platforms promoted in :gh:`95085`)" +"and Ethan Smith in :gh:`84461` and WASI contributed by Christian Heimes " +"in :gh:`90473`; platforms promoted in :gh:`95085`)" msgstr "" msgid "Building CPython now requires:" @@ -2807,8 +2826,8 @@ msgid "" "A `C11 `_ compiler and standard library. " "`Optional C11 features `_ are not required. " -"(Contributed by Victor Stinner in :issue:`46656`, :issue:`45440` and :issue:" -"`46640`.)" +"(Contributed by Victor Stinner in :issue:`46656`, :issue:`45440` " +"and :issue:`46640`.)" msgstr "" msgid "" @@ -2834,8 +2853,8 @@ msgid "" "detected by `pkg-config `_ (when available). :mod:`tkinter` now requires a pkg-config " "command to detect development settings for `Tcl/Tk`_ headers and libraries. " -"(Contributed by Christian Heimes and Erlend Egeberg Aasland in :issue:" -"`45847`, :issue:`45747`, and :issue:`45763`.)" +"(Contributed by Christian Heimes and Erlend Egeberg Aasland " +"in :issue:`45847`, :issue:`45747`, and :issue:`45763`.)" msgstr "" msgid "" @@ -2846,8 +2865,8 @@ msgstr "" msgid "" "CPython can now be built with the `ThinLTO `_ option via passing ``thin`` to :option:`--with-lto`, i.e. " -"``--with-lto=thin``. (Contributed by Donghee Na and Brett Holman in :issue:" -"`44340`.)" +"``--with-lto=thin``. (Contributed by Donghee Na and Brett Holman " +"in :issue:`44340`.)" msgstr "" msgid "" @@ -2860,8 +2879,8 @@ msgid "" "``Modules/Setup`` and ``Modules/makesetup`` have been improved and tied up. " "Extension modules can now be built through ``makesetup``. All except some " "test modules can be linked statically into a main binary or library. " -"(Contributed by Brett Cannon and Christian Heimes in :issue:`45548`, :issue:" -"`45570`, :issue:`45571`, and :issue:`43974`.)" +"(Contributed by Brett Cannon and Christian Heimes " +"in :issue:`45548`, :issue:`45570`, :issue:`45571`, and :issue:`43974`.)" msgstr "" msgid "" @@ -2882,11 +2901,11 @@ msgid "" "CPython will now use 30-bit digits by default for the Python :class:`int` " "implementation. Previously, the default was to use 30-bit digits on " "platforms with ``SIZEOF_VOID_P >= 8``, and 15-bit digits otherwise. It's " -"still possible to explicitly request use of 15-bit digits via either the :" -"option:`--enable-big-digits` option to the configure script or (for Windows) " -"the ``PYLONG_BITS_IN_DIGIT`` variable in ``PC/pyconfig.h``, but this option " -"may be removed at some point in the future. (Contributed by Mark Dickinson " -"in :issue:`45569`.)" +"still possible to explicitly request use of 15-bit digits via either " +"the :option:`--enable-big-digits` option to the configure script or (for " +"Windows) the ``PYLONG_BITS_IN_DIGIT`` variable in ``PC/pyconfig.h``, but " +"this option may be removed at some point in the future. (Contributed by Mark " +"Dickinson in :issue:`45569`.)" msgstr "" msgid "C API Changes" @@ -2903,16 +2922,16 @@ msgid "" msgstr "" msgid "" -"Add new :c:func:`PyThreadState_EnterTracing` and :c:func:" -"`PyThreadState_LeaveTracing` functions to the limited C API to suspend and " -"resume tracing and profiling. (Contributed by Victor Stinner in :issue:" -"`43760`.)" +"Add new :c:func:`PyThreadState_EnterTracing` " +"and :c:func:`PyThreadState_LeaveTracing` functions to the limited C API to " +"suspend and resume tracing and profiling. (Contributed by Victor Stinner " +"in :issue:`43760`.)" msgstr "" msgid "" -"Added the :c:data:`Py_Version` constant which bears the same value as :c:" -"macro:`PY_VERSION_HEX`. (Contributed by Gabriele N. Tornetta in :issue:" -"`43931`.)" +"Added the :c:data:`Py_Version` constant which bears the same value " +"as :c:macro:`PY_VERSION_HEX`. (Contributed by Gabriele N. Tornetta " +"in :issue:`43931`.)" msgstr "" msgid "" @@ -2957,8 +2976,8 @@ msgid ":c:func:`PyMemoryView_FromBuffer`" msgstr "" msgid "" -":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs." -"bf_releasebuffer` type slots" +":c:member:`~PyBufferProcs.bf_getbuffer` " +"and :c:member:`~PyBufferProcs.bf_releasebuffer` type slots" msgstr "" msgid "(Contributed by Christian Heimes in :issue:`45459`.)" @@ -2972,24 +2991,24 @@ msgid "" msgstr "" msgid "" -"Add new functions to pack and unpack C double (serialize and deserialize): :" -"c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`, :c:" -"func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` and :c:func:" -"`PyFloat_Unpack8`. (Contributed by Victor Stinner in :issue:`46906`.)" +"Add new functions to pack and unpack C double (serialize and " +"deserialize): :c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`, :c:func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` " +"and :c:func:`PyFloat_Unpack8`. (Contributed by Victor Stinner " +"in :issue:`46906`.)" msgstr "" msgid "" -"Add new functions to get frame object attributes: :c:func:" -"`PyFrame_GetBuiltins`, :c:func:`PyFrame_GetGenerator`, :c:func:" -"`PyFrame_GetGlobals`, :c:func:`PyFrame_GetLasti`." +"Add new functions to get frame object " +"attributes: :c:func:`PyFrame_GetBuiltins`, :c:func:`PyFrame_GetGenerator`, :c:func:`PyFrame_GetGlobals`, :c:func:`PyFrame_GetLasti`." msgstr "" msgid "" -"Added two new functions to get and set the active exception instance: :c:" -"func:`PyErr_GetHandledException` and :c:func:`PyErr_SetHandledException`. " -"These are alternatives to :c:func:`PyErr_SetExcInfo()` and :c:func:" -"`PyErr_GetExcInfo()` which work with the legacy 3-tuple representation of " -"exceptions. (Contributed by Irit Katriel in :issue:`46343`.)" +"Added two new functions to get and set the active exception " +"instance: :c:func:`PyErr_GetHandledException` " +"and :c:func:`PyErr_SetHandledException`. These are alternatives " +"to :c:func:`PyErr_SetExcInfo()` and :c:func:`PyErr_GetExcInfo()` which work " +"with the legacy 3-tuple representation of exceptions. (Contributed by Irit " +"Katriel in :issue:`46343`.)" msgstr "" msgid "" @@ -3044,8 +3063,8 @@ msgstr "" msgid "" ":c:type:`PyCodeObject` no longer has the ``co_code``, ``co_varnames``, " -"``co_cellvars`` and ``co_freevars`` fields. Instead, use :c:func:" -"`PyCode_GetCode`, :c:func:`PyCode_GetVarnames`, :c:func:`PyCode_GetCellvars` " +"``co_cellvars`` and ``co_freevars`` fields. Instead, " +"use :c:func:`PyCode_GetCode`, :c:func:`PyCode_GetVarnames`, :c:func:`PyCode_GetCellvars` " "and :c:func:`PyCode_GetFreevars` respectively to access them via the C API. " "(Contributed by Brandt Bucher in :issue:`46841` and Ken Jin in :gh:`92154` " "and :gh:`94936`.)" @@ -3067,7 +3086,7 @@ msgid "" " PyObject_GC_UnTrack(p);\n" " Py_TRASHCAN_SAFE_BEGIN(p);\n" " ...\n" -" Py_TRASHCAN_SAFE_END\n" +" Py_TRASHCAN_SAFE_END(p)\n" "}" msgstr "" @@ -3109,15 +3128,15 @@ msgstr "" msgid "" "The :c:func:`PyType_Ready` function now raises an error if a type is defined " "with the :c:macro:`Py_TPFLAGS_HAVE_GC` flag set but has no traverse function " -"(:c:member:`PyTypeObject.tp_traverse`). (Contributed by Victor Stinner in :" -"issue:`44263`.)" +"(:c:member:`PyTypeObject.tp_traverse`). (Contributed by Victor Stinner " +"in :issue:`44263`.)" msgstr "" msgid "" "Heap types with the :c:macro:`Py_TPFLAGS_IMMUTABLETYPE` flag can now inherit " -"the :pep:`590` vectorcall protocol. Previously, this was only possible for :" -"ref:`static types `. (Contributed by Erlend E. Aasland in :" -"issue:`43908`)" +"the :pep:`590` vectorcall protocol. Previously, this was only possible " +"for :ref:`static types `. (Contributed by Erlend E. Aasland " +"in :issue:`43908`)" msgstr "" msgid "" @@ -3154,9 +3173,9 @@ msgid "" msgstr "" msgid "" -"```` no longer includes the header files ````, ````, ```` and ```` when the ``Py_LIMITED_API`` macro is " -"set to ``0x030b0000`` (Python 3.11) or higher. C extensions should " +"```` no longer includes the header files ````, " +"````, ```` and ```` when the ``Py_LIMITED_API`` " +"macro is set to ``0x030b0000`` (Python 3.11) or higher. C extensions should " "explicitly include the header files after ``#include ``. " "(Contributed by Victor Stinner in :issue:`45434`.)" msgstr "" @@ -3290,18 +3309,18 @@ msgid "``f_valuestack``: removed." msgstr "" msgid "" -"The Python frame object is now created lazily. A side effect is that the :" -"attr:`~frame.f_back` member must not be accessed directly, since its value " -"is now also computed lazily. The :c:func:`PyFrame_GetBack` function must be " -"called instead." +"The Python frame object is now created lazily. A side effect is that " +"the :attr:`~frame.f_back` member must not be accessed directly, since its " +"value is now also computed lazily. The :c:func:`PyFrame_GetBack` function " +"must be called instead." msgstr "" msgid "" -"Debuggers that accessed the :attr:`~frame.f_locals` directly *must* call :c:" -"func:`PyFrame_GetLocals` instead. They no longer need to call :c:func:`!" -"PyFrame_FastToLocalsWithError` or :c:func:`!PyFrame_LocalsToFast`, in fact " -"they should not call those functions. The necessary updating of the frame is " -"now managed by the virtual machine." +"Debuggers that accessed the :attr:`~frame.f_locals` directly *must* " +"call :c:func:`PyFrame_GetLocals` instead. They no longer need to " +"call :c:func:`!PyFrame_FastToLocalsWithError` or :c:func:`!" +"PyFrame_LocalsToFast`, in fact they should not call those functions. The " +"necessary updating of the frame is now managed by the virtual machine." msgstr "" msgid "Code defining ``PyFrame_GetCode()`` on Python 3.8 and older::" @@ -3345,9 +3364,9 @@ msgid "" msgstr "" msgid "" -"``tracing``: changed, use :c:func:`PyThreadState_EnterTracing` and :c:func:" -"`PyThreadState_LeaveTracing` (functions added to Python 3.11 by :issue:" -"`43760`)." +"``tracing``: changed, use :c:func:`PyThreadState_EnterTracing` " +"and :c:func:`PyThreadState_LeaveTracing` (functions added to Python 3.11 " +"by :issue:`43760`)." msgstr "" msgid "" @@ -3422,8 +3441,8 @@ msgstr "" msgid "" ":c:func:`PyConfig_Read` no longer calculates the initial search path, and " "will not fill any values into :c:member:`PyConfig.module_search_paths`. To " -"calculate default paths and then modify them, finish initialization and use :" -"c:func:`PySys_GetObject` to retrieve :data:`sys.path` as a Python list " +"calculate default paths and then modify them, finish initialization and " +"use :c:func:`PySys_GetObject` to retrieve :data:`sys.path` as a Python list " "object and modify it directly." msgstr "" @@ -3474,8 +3493,9 @@ msgid "" msgstr "" msgid "" -"Deprecate the ``ob_shash`` member of the :c:type:`PyBytesObject`. Use :c:" -"func:`PyObject_Hash` instead. (Contributed by Inada Naoki in :issue:`46864`.)" +"Deprecate the ``ob_shash`` member of the :c:type:`PyBytesObject`. " +"Use :c:func:`PyObject_Hash` instead. (Contributed by Inada Naoki " +"in :issue:`46864`.)" msgstr "" msgid "" @@ -3572,8 +3592,8 @@ msgstr "" msgid "" "Remove the ``Py_FORCE_DOUBLE()`` macro. It was used by the " -"``Py_IS_INFINITY()`` macro. (Contributed by Victor Stinner in :issue:" -"`45440`.)" +"``Py_IS_INFINITY()`` macro. (Contributed by Victor Stinner " +"in :issue:`45440`.)" msgstr "" msgid "" diff --git a/whatsnew/3.12.po b/whatsnew/3.12.po index 17a7ab1..d9c3911 100644 --- a/whatsnew/3.12.po +++ b/whatsnew/3.12.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Lakshdeep Kashyap, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +34,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.12, compared to 3.11. " -"Python 3.12 was released on October 2, 2023. For full details, see the :ref:" -"`changelog `." +"Python 3.12 was released on October 2, 2023. For full details, see " +"the :ref:`changelog `." msgstr "" msgid ":pep:`693` -- Python 3.12 Release Schedule" @@ -56,9 +57,9 @@ msgid "" "The language changes focus on usability, as :term:`f-strings ` " "have had many limitations removed and 'Did you mean ...' suggestions " "continue to improve. The new :ref:`type parameter syntax ` and :keyword:`type` statement improve ergonomics for using :term:" -"`generic types ` and :term:`type aliases ` with " -"static type checkers." +"pep695>` and :keyword:`type` statement improve ergonomics for " +"using :term:`generic types ` and :term:`type aliases ` with static type checkers." msgstr "" msgid "" @@ -75,8 +76,8 @@ msgid "New syntax features:" msgstr "" msgid "" -":ref:`PEP 695 `, type parameter syntax and the :keyword:" -"`type` statement" +":ref:`PEP 695 `, type parameter syntax and " +"the :keyword:`type` statement" msgstr "" msgid "New grammar features:" @@ -99,8 +100,8 @@ msgid ":ref:`PEP 669 `, low impact monitoring" msgstr "" msgid "" -"`Improved 'Did you mean ...' suggestions `_ for :" -"exc:`NameError`, :exc:`ImportError`, and :exc:`SyntaxError` exceptions" +"`Improved 'Did you mean ...' suggestions `_ " +"for :exc:`NameError`, :exc:`ImportError`, and :exc:`SyntaxError` exceptions" msgstr "" msgid "Python data model improvements:" @@ -121,13 +122,13 @@ msgid "The :mod:`os` module received several improvements for Windows support" msgstr "" msgid "" -"A :ref:`command-line interface ` has been added to the :mod:" -"`sqlite3` module" +"A :ref:`command-line interface ` has been added to " +"the :mod:`sqlite3` module" msgstr "" msgid "" -":func:`isinstance` checks against :func:`runtime-checkable protocols ` enjoy a speed up of between two and 20 times" +":func:`isinstance` checks against :func:`runtime-checkable protocols " +"` enjoy a speed up of between two and 20 times" msgstr "" msgid "" @@ -230,8 +231,8 @@ msgid "" msgstr "" msgid "" -":pep:`695` introduces a new, more compact and explicit way to create :ref:" -"`generic classes ` and :ref:`functions ` and :ref:`functions `::" msgstr "" @@ -263,9 +264,9 @@ msgid "type Point[T] = tuple[T, T]" msgstr "" msgid "" -"The new syntax allows declaring :class:`~typing.TypeVarTuple` and :class:" -"`~typing.ParamSpec` parameters, as well as :class:`~typing.TypeVar` " -"parameters with bounds or constraints::" +"The new syntax allows declaring :class:`~typing.TypeVarTuple` " +"and :class:`~typing.ParamSpec` parameters, as well " +"as :class:`~typing.TypeVar` parameters with bounds or constraints::" msgstr "" msgid "" @@ -348,10 +349,11 @@ msgstr "" msgid "" "Backslashes and unicode characters: before Python 3.12 f-string expressions " -"couldn't contain any ``\\`` character. This also affected unicode :ref:" -"`escape sequences ` (such as ``\\N{snowman}``) as these " -"contain the ``\\N`` part that previously could not be part of expression " -"components of f-strings. Now, you can define expressions like this:" +"couldn't contain any ``\\`` character. This also affected " +"unicode :ref:`escape sequences ` (such as ``\\N{snowman}" +"``) as these contain the ``\\N`` part that previously could not be part of " +"expression components of f-strings. Now, you can define expressions like " +"this:" msgstr "" msgid "See :pep:`701` for more details." @@ -450,15 +452,16 @@ msgstr "" msgid "" ":pep:`688` introduces a way to use the :ref:`buffer protocol " -"` from Python code. Classes that implement the :meth:`~object." -"__buffer__` method are now usable as buffer types." +"` from Python code. Classes that implement " +"the :meth:`~object.__buffer__` method are now usable as buffer types." msgstr "" msgid "" "The new :class:`collections.abc.Buffer` ABC provides a standard way to " -"represent buffer objects, for example in type annotations. The new :class:" -"`inspect.BufferFlags` enum represents the flags that can be used to " -"customize buffer creation. (Contributed by Jelle Zijlstra in :gh:`102500`.)" +"represent buffer objects, for example in type annotations. The " +"new :class:`inspect.BufferFlags` enum represents the flags that can be used " +"to customize buffer creation. (Contributed by Jelle Zijlstra " +"in :gh:`102500`.)" msgstr "" msgid "PEP 709: Comprehension inlining" @@ -525,8 +528,8 @@ msgstr "" msgid "" "Improve the :exc:`SyntaxError` error message when the user types ``import x " -"from y`` instead of ``from y import x``. (Contributed by Pablo Galindo in :" -"gh:`98931`.)" +"from y`` instead of ``from y import x``. (Contributed by Pablo Galindo " +"in :gh:`98931`.)" msgstr "" msgid "" @@ -540,8 +543,8 @@ msgid "New Features Related to Type Hints" msgstr "" msgid "" -"This section covers major changes affecting :pep:`type hints <484>` and the :" -"mod:`typing` module." +"This section covers major changes affecting :pep:`type hints <484>` and " +"the :mod:`typing` module." msgstr "" msgid "PEP 692: Using ``TypedDict`` for more precise ``**kwargs`` typing" @@ -625,16 +628,17 @@ msgid "" "a :exc:`SyntaxWarning`, instead of :exc:`DeprecationWarning`. For example, " "``re.compile(\"\\d+\\.\\d+\")`` now emits a :exc:`SyntaxWarning` " "(``\"\\d\"`` is an invalid escape sequence, use raw strings for regular " -"expression: ``re.compile(r\"\\d+\\.\\d+\")``). In a future Python version, :" -"exc:`SyntaxError` will eventually be raised, instead of :exc:" -"`SyntaxWarning`. (Contributed by Victor Stinner in :gh:`98401`.)" +"expression: ``re.compile(r\"\\d+\\.\\d+\")``). In a future Python " +"version, :exc:`SyntaxError` will eventually be raised, instead " +"of :exc:`SyntaxWarning`. (Contributed by Victor Stinner in :gh:`98401`.)" msgstr "" msgid "" "Octal escapes with value larger than ``0o377`` (ex: ``\"\\477\"``), " -"deprecated in Python 3.11, now produce a :exc:`SyntaxWarning`, instead of :" -"exc:`DeprecationWarning`. In a future Python version they will be eventually " -"a :exc:`SyntaxError`. (Contributed by Victor Stinner in :gh:`98401`.)" +"deprecated in Python 3.11, now produce a :exc:`SyntaxWarning`, instead " +"of :exc:`DeprecationWarning`. In a future Python version they will be " +"eventually a :exc:`SyntaxError`. (Contributed by Victor Stinner " +"in :gh:`98401`.)" msgstr "" msgid "" @@ -654,9 +658,9 @@ msgstr "" msgid "" "When a ``try-except*`` construct handles the entire :exc:`ExceptionGroup` " -"and raises one other exception, that exception is no longer wrapped in an :" -"exc:`ExceptionGroup`. Also changed in version 3.11.4. (Contributed by Irit " -"Katriel in :gh:`103590`.)" +"and raises one other exception, that exception is no longer wrapped in " +"an :exc:`ExceptionGroup`. Also changed in version 3.11.4. (Contributed by " +"Irit Katriel in :gh:`103590`.)" msgstr "" msgid "" @@ -664,8 +668,8 @@ msgid "" "Python bytecode evaluation loop instead of object allocations. The GC can " "also run when :c:func:`PyErr_CheckSignals` is called so C extensions that " "need to run for a long time without executing any Python code also have a " -"chance to execute the GC periodically. (Contributed by Pablo Galindo in :gh:" -"`97922`.)" +"chance to execute the GC periodically. (Contributed by Pablo Galindo " +"in :gh:`97922`.)" msgstr "" msgid "" @@ -713,12 +717,13 @@ msgstr "" msgid "" "Add :ref:`support for the perf profiler ` through the new " -"environment variable :envvar:`PYTHONPERFSUPPORT` and command-line option :" -"option:`-X perf <-X>`, as well as the new :func:`sys." -"activate_stack_trampoline`, :func:`sys.deactivate_stack_trampoline`, and :" -"func:`sys.is_stack_trampoline_active` functions. (Design by Pablo Galindo. " -"Contributed by Pablo Galindo and Christian Heimes with contributions from " -"Gregory P. Smith [Google] and Mark Shannon in :gh:`96123`.)" +"environment variable :envvar:`PYTHONPERFSUPPORT` and command-line " +"option :option:`-X perf <-X>`, as well as the " +"new :func:`sys.activate_stack_trampoline`, :func:`sys.deactivate_stack_trampoline`, " +"and :func:`sys.is_stack_trampoline_active` functions. (Design by Pablo " +"Galindo. Contributed by Pablo Galindo and Christian Heimes with " +"contributions from Gregory P. Smith [Google] and Mark Shannon " +"in :gh:`96123`.)" msgstr "" msgid "New Modules" @@ -734,8 +739,8 @@ msgid "array" msgstr "" msgid "" -"The :class:`array.array` class now supports subscripting, making it a :term:" -"`generic type`. (Contributed by Jelle Zijlstra in :gh:`98658`.)" +"The :class:`array.array` class now supports subscripting, making it " +"a :term:`generic type`. (Contributed by Jelle Zijlstra in :gh:`98658`.)" msgstr "" msgid "asyncio" @@ -749,10 +754,11 @@ msgid "" msgstr "" msgid "" -"Add :func:`asyncio.eager_task_factory` and :func:`asyncio." -"create_eager_task_factory` functions to allow opting an event loop in to " -"eager task execution, making some use-cases 2x to 5x faster. (Contributed by " -"Jacob Bower & Itamar Oren in :gh:`102853`, :gh:`104140`, and :gh:`104138`)" +"Add :func:`asyncio.eager_task_factory` " +"and :func:`asyncio.create_eager_task_factory` functions to allow opting an " +"event loop in to eager task execution, making some use-cases 2x to 5x " +"faster. (Contributed by Jacob Bower & Itamar Oren " +"in :gh:`102853`, :gh:`104140`, and :gh:`104138`)" msgstr "" msgid "" @@ -762,10 +768,10 @@ msgid "" msgstr "" msgid "" -"The event loop now uses the best available child watcher for each platform (:" -"class:`!asyncio.PidfdChildWatcher` if supported and :class:`!asyncio." -"ThreadedChildWatcher` otherwise), so manually configuring a child watcher is " -"not recommended. (Contributed by Kumar Aditya in :gh:`94597`.)" +"The event loop now uses the best available child watcher for each platform " +"(:class:`!asyncio.PidfdChildWatcher` if supported and :class:`!" +"asyncio.ThreadedChildWatcher` otherwise), so manually configuring a child " +"watcher is not recommended. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" msgid "" @@ -779,9 +785,9 @@ msgid "" msgstr "" msgid "" -":func:`asyncio.iscoroutine` now returns ``False`` for generators as :mod:" -"`asyncio` does not support legacy generator-based coroutines. (Contributed " -"by Kumar Aditya in :gh:`102748`.)" +":func:`asyncio.iscoroutine` now returns ``False`` for generators " +"as :mod:`asyncio` does not support legacy generator-based coroutines. " +"(Contributed by Kumar Aditya in :gh:`102748`.)" msgstr "" msgid "" @@ -794,8 +800,8 @@ msgstr "" msgid "" "Add enums :data:`calendar.Month` and :data:`calendar.Day` defining months of " -"the year and days of the week. (Contributed by Prince Roshan in :gh:" -"`103636`.)" +"the year and days of the week. (Contributed by Prince Roshan " +"in :gh:`103636`.)" msgstr "" msgid "csv" @@ -803,8 +809,8 @@ msgstr "" msgid "" "Add :const:`csv.QUOTE_NOTNULL` and :const:`csv.QUOTE_STRINGS` flags to " -"provide finer grained control of ``None`` and empty strings by :class:`~csv." -"reader` and :class:`~csv.writer` objects." +"provide finer grained control of ``None`` and empty strings " +"by :class:`~csv.reader` and :class:`~csv.writer` objects." msgstr "" msgid "dis" @@ -812,10 +818,10 @@ msgstr "" msgid "" "Pseudo instruction opcodes (which are used by the compiler but do not appear " -"in executable bytecode) are now exposed in the :mod:`dis` module. :opcode:" -"`HAVE_ARGUMENT` is still relevant to real opcodes, but it is not useful for " -"pseudo instructions. Use the new :data:`dis.hasarg` collection instead. " -"(Contributed by Irit Katriel in :gh:`94216`.)" +"in executable bytecode) are now exposed in the :mod:`dis` " +"module. :opcode:`HAVE_ARGUMENT` is still relevant to real opcodes, but it is " +"not useful for pseudo instructions. Use the new :data:`dis.hasarg` " +"collection instead. (Contributed by Irit Katriel in :gh:`94216`.)" msgstr "" msgid "" @@ -892,15 +898,15 @@ msgid "os" msgstr "" msgid "" -"Add :const:`os.PIDFD_NONBLOCK` to open a file descriptor for a process with :" -"func:`os.pidfd_open` in non-blocking mode. (Contributed by Kumar Aditya in :" -"gh:`93312`.)" +"Add :const:`os.PIDFD_NONBLOCK` to open a file descriptor for a process " +"with :func:`os.pidfd_open` in non-blocking mode. (Contributed by Kumar " +"Aditya in :gh:`93312`.)" msgstr "" msgid "" ":class:`os.DirEntry` now includes an :meth:`os.DirEntry.is_junction` method " -"to check if the entry is a junction. (Contributed by Charles Machalow in :gh:" -"`99547`.)" +"to check if the entry is a junction. (Contributed by Charles Machalow " +"in :gh:`99547`.)" msgstr "" msgid "" @@ -917,8 +923,8 @@ msgid "" "with other platforms). ``st_dev`` may be up to 64 bits and ``st_ino`` up to " "128 bits depending on your file system, and ``st_rdev`` is always set to " "zero rather than incorrect values. Both functions may be significantly " -"faster on newer releases of Windows. (Contributed by Steve Dower in :gh:" -"`99726`.)" +"faster on newer releases of Windows. (Contributed by Steve Dower " +"in :gh:`99726`.)" msgstr "" msgid "os.path" @@ -938,10 +944,10 @@ msgid "pathlib" msgstr "" msgid "" -"Add support for subclassing :class:`pathlib.PurePath` and :class:`pathlib." -"Path`, plus their Posix- and Windows-specific variants. Subclasses may " -"override the :meth:`pathlib.PurePath.with_segments` method to pass " -"information between path instances." +"Add support for subclassing :class:`pathlib.PurePath` " +"and :class:`pathlib.Path`, plus their Posix- and Windows-specific variants. " +"Subclasses may override the :meth:`pathlib.PurePath.with_segments` method to " +"pass information between path instances." msgstr "" msgid "" @@ -953,20 +959,21 @@ msgstr "" msgid "" "Add *walk_up* optional parameter to :meth:`pathlib.PurePath.relative_to` to " "allow the insertion of ``..`` entries in the result; this behavior is more " -"consistent with :func:`os.path.relpath`. (Contributed by Domenico Ragusa in :" -"gh:`84538`.)" +"consistent with :func:`os.path.relpath`. (Contributed by Domenico Ragusa " +"in :gh:`84538`.)" msgstr "" msgid "" -"Add :meth:`pathlib.Path.is_junction` as a proxy to :func:`os.path." -"isjunction`. (Contributed by Charles Machalow in :gh:`99547`.)" +"Add :meth:`pathlib.Path.is_junction` as a proxy " +"to :func:`os.path.isjunction`. (Contributed by Charles Machalow " +"in :gh:`99547`.)" msgstr "" msgid "" -"Add *case_sensitive* optional parameter to :meth:`pathlib.Path.glob`, :meth:" -"`pathlib.Path.rglob` and :meth:`pathlib.PurePath.match` for matching the " -"path's case sensitivity, allowing for more precise control over the matching " -"process." +"Add *case_sensitive* optional parameter " +"to :meth:`pathlib.Path.glob`, :meth:`pathlib.Path.rglob` " +"and :meth:`pathlib.PurePath.match` for matching the path's case sensitivity, " +"allowing for more precise control over the matching process." msgstr "" msgid "platform" @@ -992,8 +999,8 @@ msgid "random" msgstr "" msgid "" -"Add :func:`random.binomialvariate`. (Contributed by Raymond Hettinger in :gh:" -"`81620`.)" +"Add :func:`random.binomialvariate`. (Contributed by Raymond Hettinger " +"in :gh:`81620`.)" msgstr "" msgid "" @@ -1046,22 +1053,24 @@ msgid "" msgstr "" msgid "" -"Add the :attr:`sqlite3.Connection.autocommit` attribute to :class:`sqlite3." -"Connection` and the *autocommit* parameter to :func:`sqlite3.connect` to " -"control :pep:`249`-compliant :ref:`transaction handling `. (Contributed by Erlend E. Aasland in :gh:`83638`.)" +"Add the :attr:`sqlite3.Connection.autocommit` attribute " +"to :class:`sqlite3.Connection` and the *autocommit* parameter " +"to :func:`sqlite3.connect` to control :pep:`249`-compliant :ref:`transaction " +"handling `. (Contributed by Erlend " +"E. Aasland in :gh:`83638`.)" msgstr "" msgid "" -"Add *entrypoint* keyword-only parameter to :meth:`sqlite3.Connection." -"load_extension`, for overriding the SQLite extension entry point. " -"(Contributed by Erlend E. Aasland in :gh:`103015`.)" +"Add *entrypoint* keyword-only parameter " +"to :meth:`sqlite3.Connection.load_extension`, for overriding the SQLite " +"extension entry point. (Contributed by Erlend E. Aasland in :gh:`103015`.)" msgstr "" msgid "" -"Add :meth:`sqlite3.Connection.getconfig` and :meth:`sqlite3.Connection." -"setconfig` to :class:`sqlite3.Connection` to make configuration changes to a " -"database connection. (Contributed by Erlend E. Aasland in :gh:`103489`.)" +"Add :meth:`sqlite3.Connection.getconfig` " +"and :meth:`sqlite3.Connection.setconfig` to :class:`sqlite3.Connection` to " +"make configuration changes to a database connection. (Contributed by Erlend " +"E. Aasland in :gh:`103489`.)" msgstr "" msgid "statistics" @@ -1078,25 +1087,26 @@ msgstr "" msgid "" "Add the :mod:`sys.monitoring` namespace to expose the new :ref:`PEP 669 " -"` monitoring API. (Contributed by Mark Shannon in :gh:" -"`103082`.)" +"` monitoring API. (Contributed by Mark Shannon " +"in :gh:`103082`.)" msgstr "" msgid "" -"Add :func:`sys.activate_stack_trampoline` and :func:`sys." -"deactivate_stack_trampoline` for activating and deactivating stack profiler " -"trampolines, and :func:`sys.is_stack_trampoline_active` for querying if " -"stack profiler trampolines are active. (Contributed by Pablo Galindo and " -"Christian Heimes with contributions from Gregory P. Smith [Google] and Mark " -"Shannon in :gh:`96123`.)" +"Add :func:`sys.activate_stack_trampoline` " +"and :func:`sys.deactivate_stack_trampoline` for activating and deactivating " +"stack profiler trampolines, and :func:`sys.is_stack_trampoline_active` for " +"querying if stack profiler trampolines are active. (Contributed by Pablo " +"Galindo and Christian Heimes with contributions from Gregory P. Smith " +"[Google] and Mark Shannon in :gh:`96123`.)" msgstr "" msgid "" "Add :data:`sys.last_exc` which holds the last unhandled exception that was " "raised (for post-mortem debugging use cases). Deprecate the three fields " -"that have the same information in its legacy form: :data:`sys.last_type`, :" -"data:`sys.last_value` and :data:`sys.last_traceback`. (Contributed by Irit " -"Katriel in :gh:`102778`.)" +"that have the same information in its legacy " +"form: :data:`sys.last_type`, :data:`sys.last_value` " +"and :data:`sys.last_traceback`. (Contributed by Irit Katriel " +"in :gh:`102778`.)" msgstr "" msgid "" @@ -1129,10 +1139,10 @@ msgid "threading" msgstr "" msgid "" -"Add :func:`threading.settrace_all_threads` and :func:`threading." -"setprofile_all_threads` that allow to set tracing and profiling functions in " -"all running threads in addition to the calling one. (Contributed by Pablo " -"Galindo in :gh:`93503`.)" +"Add :func:`threading.settrace_all_threads` " +"and :func:`threading.setprofile_all_threads` that allow to set tracing and " +"profiling functions in all running threads in addition to the calling one. " +"(Contributed by Pablo Galindo in :gh:`93503`.)" msgstr "" msgid "tkinter" @@ -1152,33 +1162,34 @@ msgstr "" msgid "" "The :mod:`tokenize` module includes the changes introduced in :pep:`701`. " -"(Contributed by Marta Gómez Macías and Pablo Galindo in :gh:`102856`.) See :" -"ref:`whatsnew312-porting-to-python312` for more information on the changes " -"to the :mod:`tokenize` module." +"(Contributed by Marta Gómez Macías and Pablo Galindo in :gh:`102856`.) " +"See :ref:`whatsnew312-porting-to-python312` for more information on the " +"changes to the :mod:`tokenize` module." msgstr "" msgid "types" msgstr "" msgid "" -"Add :func:`types.get_original_bases` to allow for further introspection of :" -"ref:`user-defined-generics` when subclassed. (Contributed by James Hilton-" -"Balfe and Alex Waygood in :gh:`101827`.)" +"Add :func:`types.get_original_bases` to allow for further introspection " +"of :ref:`user-defined-generics` when subclassed. (Contributed by James " +"Hilton-Balfe and Alex Waygood in :gh:`101827`.)" msgstr "" msgid "typing" msgstr "" msgid "" -":func:`isinstance` checks against :func:`runtime-checkable protocols ` now use :func:`inspect.getattr_static` rather than :func:" -"`hasattr` to lookup whether attributes exist. This means that descriptors " -"and :meth:`~object.__getattr__` methods are no longer unexpectedly evaluated " -"during ``isinstance()`` checks against runtime-checkable protocols. However, " -"it may also mean that some objects which used to be considered instances of " -"a runtime-checkable protocol may no longer be considered instances of that " -"protocol on Python 3.12+, and vice versa. Most users are unlikely to be " -"affected by this change. (Contributed by Alex Waygood in :gh:`102433`.)" +":func:`isinstance` checks against :func:`runtime-checkable protocols " +"` now use :func:`inspect.getattr_static` rather " +"than :func:`hasattr` to lookup whether attributes exist. This means that " +"descriptors and :meth:`~object.__getattr__` methods are no longer " +"unexpectedly evaluated during ``isinstance()`` checks against runtime-" +"checkable protocols. However, it may also mean that some objects which used " +"to be considered instances of a runtime-checkable protocol may no longer be " +"considered instances of that protocol on Python 3.12+, and vice versa. Most " +"users are unlikely to be affected by this change. (Contributed by Alex " +"Waygood in :gh:`102433`.)" msgstr "" msgid "" @@ -1219,8 +1230,8 @@ msgid "" "Most ``isinstance()`` checks against protocols with only a few members " "should be at least 2x faster than in 3.11, and some may be 20x faster or " "more. However, ``isinstance()`` checks against protocols with many members " -"may be slower than in Python 3.11. (Contributed by Alex Waygood in :gh:" -"`74690` and :gh:`103193`.)" +"may be slower than in Python 3.11. (Contributed by Alex Waygood " +"in :gh:`74690` and :gh:`103193`.)" msgstr "" msgid "" @@ -1292,8 +1303,8 @@ msgid "" msgstr "" msgid "" -"Speed up the regular expression substitution (functions :func:`re.sub` and :" -"func:`re.subn` and corresponding :class:`!re.Pattern` methods) for " +"Speed up the regular expression substitution (functions :func:`re.sub` " +"and :func:`re.subn` and corresponding :class:`!re.Pattern` methods) for " "replacement strings containing group references by 2--3 times. (Contributed " "by Serhiy Storchaka in :gh:`91524`.)" msgstr "" @@ -1305,36 +1316,36 @@ msgstr "" msgid "" "The :func:`tokenize.tokenize` and :func:`tokenize.generate_tokens` functions " -"are up to 64% faster as a side effect of the changes required to cover :pep:" -"`701` in the :mod:`tokenize` module. (Contributed by Marta Gómez Macías and " -"Pablo Galindo in :gh:`102856`.)" +"are up to 64% faster as a side effect of the changes required to " +"cover :pep:`701` in the :mod:`tokenize` module. (Contributed by Marta Gómez " +"Macías and Pablo Galindo in :gh:`102856`.)" msgstr "" msgid "" -"Speed up :func:`super` method calls and attribute loads via the new :opcode:" -"`LOAD_SUPER_ATTR` instruction. (Contributed by Carl Meyer and Vladimir " -"Matveev in :gh:`103497`.)" +"Speed up :func:`super` method calls and attribute loads via the " +"new :opcode:`LOAD_SUPER_ATTR` instruction. (Contributed by Carl Meyer and " +"Vladimir Matveev in :gh:`103497`.)" msgstr "" msgid "CPython bytecode changes" msgstr "" msgid "" -"Remove the :opcode:`!LOAD_METHOD` instruction. It has been merged into :" -"opcode:`LOAD_ATTR`. :opcode:`LOAD_ATTR` will now behave like the old :opcode:" -"`!LOAD_METHOD` instruction if the low bit of its oparg is set. (Contributed " -"by Ken Jin in :gh:`93429`.)" +"Remove the :opcode:`!LOAD_METHOD` instruction. It has been merged " +"into :opcode:`LOAD_ATTR`. :opcode:`LOAD_ATTR` will now behave like the " +"old :opcode:`!LOAD_METHOD` instruction if the low bit of its oparg is set. " +"(Contributed by Ken Jin in :gh:`93429`.)" msgstr "" msgid "" "Remove the :opcode:`!JUMP_IF_FALSE_OR_POP` and :opcode:`!" -"JUMP_IF_TRUE_OR_POP` instructions. (Contributed by Irit Katriel in :gh:" -"`102859`.)" +"JUMP_IF_TRUE_OR_POP` instructions. (Contributed by Irit Katriel " +"in :gh:`102859`.)" msgstr "" msgid "" -"Remove the :opcode:`!PRECALL` instruction. (Contributed by Mark Shannon in :" -"gh:`92925`.)" +"Remove the :opcode:`!PRECALL` instruction. (Contributed by Mark Shannon " +"in :gh:`92925`.)" msgstr "" msgid "" @@ -1358,8 +1369,8 @@ msgid "" msgstr "" msgid "" -"Add the :opcode:`!END_SEND` instruction. (Contributed by Mark Shannon in :gh:" -"`103082`.)" +"Add the :opcode:`!END_SEND` instruction. (Contributed by Mark Shannon " +"in :gh:`103082`.)" msgstr "" msgid "" @@ -1373,11 +1384,12 @@ msgid "" msgstr "" msgid "" -"Add the :opcode:`LOAD_FROM_DICT_OR_DEREF`, :opcode:" -"`LOAD_FROM_DICT_OR_GLOBALS`, and :opcode:`LOAD_LOCALS` opcodes as part of " -"the implementation of :pep:`695`. Remove the :opcode:`!LOAD_CLASSDEREF` " -"opcode, which can be replaced with :opcode:`LOAD_LOCALS` plus :opcode:" -"`LOAD_FROM_DICT_OR_DEREF`. (Contributed by Jelle Zijlstra in :gh:`103764`.)" +"Add " +"the :opcode:`LOAD_FROM_DICT_OR_DEREF`, :opcode:`LOAD_FROM_DICT_OR_GLOBALS`, " +"and :opcode:`LOAD_LOCALS` opcodes as part of the implementation " +"of :pep:`695`. Remove the :opcode:`!LOAD_CLASSDEREF` opcode, which can be " +"replaced with :opcode:`LOAD_LOCALS` plus :opcode:`LOAD_FROM_DICT_OR_DEREF`. " +"(Contributed by Jelle Zijlstra in :gh:`103764`.)" msgstr "" msgid "" @@ -1386,8 +1398,8 @@ msgid "" msgstr "" msgid "" -"Add the ``RETURN_CONST`` instruction. (Contributed by Wenyang Wang in :gh:" -"`101632`.)" +"Add the ``RETURN_CONST`` instruction. (Contributed by Wenyang Wang " +"in :gh:`101632`.)" msgstr "" msgid "Demos and Tools" @@ -1437,8 +1449,8 @@ msgid ":class:`!ast.Ellipsis`" msgstr "" msgid "" -"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" -"`90953`.)" +"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka " +"in :gh:`90953`.)" msgstr "" msgid ":mod:`asyncio`:" @@ -1446,14 +1458,15 @@ msgstr "" msgid "" "The child watcher classes :class:`!asyncio.MultiLoopChildWatcher`, :class:`!" -"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` and :class:" -"`!asyncio.SafeChildWatcher` are deprecated and will be removed in Python " -"3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" +"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` " +"and :class:`!asyncio.SafeChildWatcher` are deprecated and will be removed in " +"Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" msgid "" -":func:`!asyncio.set_child_watcher`, :func:`!asyncio.get_child_watcher`, :" -"meth:`!asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" +":func:`!asyncio.set_child_watcher`, :func:`!" +"asyncio.get_child_watcher`, :meth:`!" +"asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" "asyncio.AbstractEventLoopPolicy.get_child_watcher` are deprecated and will " "be removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" @@ -1467,8 +1480,9 @@ msgstr "" msgid "" ":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" +"are deprecated and replaced by :data:`calendar.JANUARY` " +"and :data:`calendar.FEBRUARY`. (Contributed by Prince Roshan " +"in :gh:`103636`.)" msgstr "" msgid ":mod:`collections.abc`: Deprecated :class:`collections.abc.ByteString`." @@ -1498,17 +1512,19 @@ msgid "" msgstr "" msgid "" -":mod:`datetime`: :class:`datetime.datetime`'s :meth:`~datetime.datetime." -"utcnow` and :meth:`~datetime.datetime.utcfromtimestamp` are deprecated and " -"will be removed in a future version. Instead, use timezone-aware objects to " -"represent datetimes in UTC: respectively, call :meth:`~datetime.datetime." -"now` and :meth:`~datetime.datetime.fromtimestamp` with the *tz* parameter " -"set to :const:`datetime.UTC`. (Contributed by Paul Ganssle in :gh:`103857`.)" +":mod:`datetime`: :class:`datetime.datetime`'s :meth:`~datetime.datetime.utcnow` " +"and :meth:`~datetime.datetime.utcfromtimestamp` are deprecated and will be " +"removed in a future version. Instead, use timezone-aware objects to " +"represent datetimes in UTC: respectively, " +"call :meth:`~datetime.datetime.now` " +"and :meth:`~datetime.datetime.fromtimestamp` with the *tz* parameter set " +"to :const:`datetime.UTC`. (Contributed by Paul Ganssle in :gh:`103857`.)" msgstr "" msgid "" -":mod:`email`: Deprecate the *isdst* parameter in :func:`email.utils." -"localtime`. (Contributed by Alan Williams in :gh:`72346`.)" +":mod:`email`: Deprecate the *isdst* parameter " +"in :func:`email.utils.localtime`. (Contributed by Alan Williams " +"in :gh:`72346`.)" msgstr "" msgid "" @@ -1541,8 +1557,8 @@ msgid "" ":mod:`itertools`: Deprecate the support for copy, deepcopy, and pickle " "operations, which is undocumented, inefficient, historically buggy, and " "inconsistent. This will be removed in 3.14 for a significant reduction in " -"code volume and maintenance burden. (Contributed by Raymond Hettinger in :gh:" -"`101588`.)" +"code volume and maintenance burden. (Contributed by Raymond Hettinger " +"in :gh:`101588`.)" msgstr "" msgid "" @@ -1550,16 +1566,18 @@ msgid "" "start method will change to a safer one on Linux, BSDs, and other non-macOS " "POSIX platforms where ``'fork'`` is currently the default (:gh:`84559`). " "Adding a runtime warning about this was deemed too disruptive as the " -"majority of code is not expected to care. Use the :func:`~multiprocessing." -"get_context` or :func:`~multiprocessing.set_start_method` APIs to explicitly " -"specify when your code *requires* ``'fork'``. See :ref:`contexts and start " -"methods `." +"majority of code is not expected to care. Use " +"the :func:`~multiprocessing.get_context` " +"or :func:`~multiprocessing.set_start_method` APIs to explicitly specify when " +"your code *requires* ``'fork'``. See :ref:`contexts and start methods " +"`." msgstr "" msgid "" ":mod:`pkgutil`: :func:`!pkgutil.find_loader` and :func:`!pkgutil.get_loader` " -"are deprecated and will be removed in Python 3.14; use :func:`importlib.util." -"find_spec` instead. (Contributed by Nikita Sobolev in :gh:`97850`.)" +"are deprecated and will be removed in Python 3.14; " +"use :func:`importlib.util.find_spec` instead. (Contributed by Nikita Sobolev " +"in :gh:`97850`.)" msgstr "" msgid "" @@ -1581,28 +1599,29 @@ msgid "" msgstr "" msgid "" -"On POSIX platforms, :func:`os.fork` can now raise a :exc:" -"`DeprecationWarning` when it can detect being called from a multithreaded " -"process. There has always been a fundamental incompatibility with the POSIX " -"platform when doing so. Even if such code *appeared* to work. We added the " -"warning to raise awareness as issues encountered by code doing this are " -"becoming more frequent. See the :func:`os.fork` documentation for more " -"details along with `this discussion on fork being incompatible with threads " -"`_ for *why* we're now surfacing this longstanding " +"On POSIX platforms, :func:`os.fork` can now raise " +"a :exc:`DeprecationWarning` when it can detect being called from a " +"multithreaded process. There has always been a fundamental incompatibility " +"with the POSIX platform when doing so. Even if such code *appeared* to work. " +"We added the warning to raise awareness as issues encountered by code doing " +"this are becoming more frequent. See the :func:`os.fork` documentation for " +"more details along with `this discussion on fork being incompatible with " +"threads `_ for *why* we're now surfacing this longstanding " "platform compatibility problem to developers." msgstr "" msgid "" -"When this warning appears due to usage of :mod:`multiprocessing` or :mod:" -"`concurrent.futures` the fix is to use a different :mod:`multiprocessing` " -"start method such as ``\"spawn\"`` or ``\"forkserver\"``." +"When this warning appears due to usage of :mod:`multiprocessing` " +"or :mod:`concurrent.futures` the fix is to use a " +"different :mod:`multiprocessing` start method such as ``\"spawn\"`` or " +"``\"forkserver\"``." msgstr "" msgid "" ":mod:`shutil`: The *onerror* argument of :func:`shutil.rmtree` is " -"deprecated; use *onexc* instead. (Contributed by Irit Katriel in :gh:" -"`102828`.)" +"deprecated; use *onexc* instead. (Contributed by Irit Katriel " +"in :gh:`102828`.)" msgstr "" msgid ":mod:`sqlite3`:" @@ -1624,9 +1643,10 @@ msgid "" msgstr "" msgid "" -":mod:`sys`: The :data:`sys.last_type`, :data:`sys.last_value` and :data:`sys." -"last_traceback` fields are deprecated. Use :data:`sys.last_exc` instead. " -"(Contributed by Irit Katriel in :gh:`102778`.)" +":mod:`sys`: The :data:`sys.last_type`, :data:`sys.last_value` " +"and :data:`sys.last_traceback` fields are deprecated. " +"Use :data:`sys.last_exc` instead. (Contributed by Irit Katriel " +"in :gh:`102778`.)" msgstr "" msgid "" @@ -1639,15 +1659,15 @@ msgid ":mod:`typing`:" msgstr "" msgid "" -":class:`typing.Hashable` and :class:`typing.Sized`, aliases for :class:" -"`collections.abc.Hashable` and :class:`collections.abc.Sized` respectively, " -"are deprecated. (:gh:`94309`.)" +":class:`typing.Hashable` and :class:`typing.Sized`, aliases " +"for :class:`collections.abc.Hashable` and :class:`collections.abc.Sized` " +"respectively, are deprecated. (:gh:`94309`.)" msgstr "" msgid "" -":class:`typing.ByteString`, deprecated since Python 3.9, now causes a :exc:" -"`DeprecationWarning` to be emitted when it is used. (Contributed by Alex " -"Waygood in :gh:`91896`.)" +":class:`typing.ByteString`, deprecated since Python 3.9, now causes " +"a :exc:`DeprecationWarning` to be emitted when it is used. (Contributed by " +"Alex Waygood in :gh:`91896`.)" msgstr "" msgid "" @@ -1659,17 +1679,17 @@ msgstr "" msgid "" "The 3-arg signatures (type, value, traceback) of :meth:`coroutine throw() " -"`, :meth:`generator throw() ` and :meth:" -"`async generator throw() ` are deprecated and may be removed in " -"a future version of Python. Use the single-arg versions of these functions " -"instead. (Contributed by Ofey Chan in :gh:`89874`.)" +"`, :meth:`generator throw() ` " +"and :meth:`async generator throw() ` are deprecated and may be " +"removed in a future version of Python. Use the single-arg versions of these " +"functions instead. (Contributed by Ofey Chan in :gh:`89874`.)" msgstr "" msgid "" ":exc:`DeprecationWarning` is now raised when :attr:`~module.__package__` on " -"a module differs from :attr:`__spec__.parent ` (previously it was :exc:`ImportWarning`). (Contributed by Brett " -"Cannon in :gh:`65961`.)" +"a module differs from :attr:`__spec__.parent " +"` (previously it " +"was :exc:`ImportWarning`). (Contributed by Brett Cannon in :gh:`65961`.)" msgstr "" msgid "" @@ -1688,9 +1708,9 @@ msgstr "" msgid "" "Accessing :attr:`!codeobject.co_lnotab` on code objects was deprecated in " -"Python 3.10 via :pep:`626`, but it only got a proper :exc:" -"`DeprecationWarning` in 3.12. May be removed in 3.15. (Contributed by Nikita " -"Sobolev in :gh:`101866`.)" +"Python 3.10 via :pep:`626`, but it only got a " +"proper :exc:`DeprecationWarning` in 3.12. May be removed in 3.15. " +"(Contributed by Nikita Sobolev in :gh:`101866`.)" msgstr "" msgid "Pending removal in Python 3.13" @@ -1802,8 +1822,9 @@ msgid "" msgstr "" msgid "" -":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." -"localtime`. (Contributed by Alan Williams in :gh:`72346`.)" +":mod:`email`: Deprecated the *isdst* parameter " +"in :func:`email.utils.localtime`. (Contributed by Alan Williams " +"in :gh:`72346`.)" msgstr "" msgid ":mod:`importlib.abc` deprecated classes:" @@ -1821,14 +1842,15 @@ msgid "" "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " "currently the default (:gh:`84559`). Adding a runtime warning about this was " "deemed too disruptive as the majority of code is not expected to care. Use " -"the :func:`~multiprocessing.get_context` or :func:`~multiprocessing." -"set_start_method` APIs to explicitly specify when your code *requires* " -"``'fork'``. See :ref:`multiprocessing-start-methods`." +"the :func:`~multiprocessing.get_context` " +"or :func:`~multiprocessing.set_start_method` APIs to explicitly specify when " +"your code *requires* ``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" -":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." -"PurePath.relative_to`: passing additional arguments is deprecated." +":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` " +"and :meth:`~pathlib.PurePath.relative_to`: passing additional arguments is " +"deprecated." msgstr "" msgid "" @@ -1850,15 +1872,15 @@ msgid ":data:`!version` and :data:`!version_info`." msgstr "" msgid "" -":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" -"ref:`named placeholders ` are used and *parameters* is " -"a sequence instead of a :class:`dict`." +":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` " +"if :ref:`named placeholders ` are used and " +"*parameters* is a sequence instead of a :class:`dict`." msgstr "" msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " -"intended to be a public API. (Contributed by Gregory P. Smith in :gh:" -"`88168`.)" +"intended to be a public API. (Contributed by Gregory P. Smith " +"in :gh:`88168`.)" msgstr "" msgid "Pending removal in Python 3.15" @@ -1868,17 +1890,18 @@ msgid "The import system:" msgstr "" msgid "" -"Setting ``__cached__`` on a module while failing to set :attr:`__spec__." -"cached ` is deprecated. In Python " -"3.15, ``__cached__`` will cease to be set or take into consideration by the " -"import system or standard library. (:gh:`97879`)" +"Setting ``__cached__`` on a module while failing to " +"set :attr:`__spec__.cached ` is " +"deprecated. In Python 3.15, ``__cached__`` will cease to be set or take into " +"consideration by the import system or standard library. (:gh:`97879`)" msgstr "" msgid "" -"Setting :attr:`~module.__package__` on a module while failing to set :attr:" -"`__spec__.parent ` is deprecated. In " -"Python 3.15, :attr:`!__package__` will cease to be set or take into " -"consideration by the import system or standard library. (:gh:`97879`)" +"Setting :attr:`~module.__package__` on a module while failing to " +"set :attr:`__spec__.parent ` is " +"deprecated. In Python 3.15, :attr:`!__package__` will cease to be set or " +"take into consideration by the import system or standard library. " +"(:gh:`97879`)" msgstr "" msgid ":mod:`ctypes`:" @@ -1913,8 +1936,8 @@ msgid ":mod:`pathlib`:" msgstr "" msgid "" -":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows." +":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. " +"Use :func:`os.path.isreserved` to detect reserved paths on Windows." msgstr "" msgid ":mod:`platform`:" @@ -1955,10 +1978,10 @@ msgid "" msgstr "" msgid "" -"The undocumented keyword argument syntax for creating :class:`~typing." -"NamedTuple` classes (for example, ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``) has been deprecated since Python 3.13. Use the class-based syntax " -"or the functional syntax instead." +"The undocumented keyword argument syntax for " +"creating :class:`~typing.NamedTuple` classes (for example, ``Point = " +"NamedTuple(\"Point\", x=int, y=int)``) has been deprecated since Python " +"3.13. Use the class-based syntax or the functional syntax instead." msgstr "" msgid "" @@ -1983,9 +2006,9 @@ msgid ":mod:`wave`:" msgstr "" msgid "" -"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of the :class:" -"`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been deprecated " -"since Python 3.13." +"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of " +"the :class:`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been " +"deprecated since Python 3.13." msgstr "" msgid ":mod:`zipimport`:" @@ -2000,10 +2023,10 @@ msgid "Pending removal in Python 3.16" msgstr "" msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." +"Setting :attr:`~module.__loader__` on a module while failing to " +"set :attr:`__spec__.loader ` is " +"deprecated. In Python 3.16, :attr:`!__loader__` will cease to be set or " +"taken into consideration by the import system or the standard library." msgstr "" msgid ":mod:`array`:" @@ -2097,10 +2120,10 @@ msgid ":mod:`mimetypes`:" msgstr "" msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" +"Valid extensions start with a '.' or are empty " +"for :meth:`mimetypes.MimeTypes.add_type`. Undotted extensions are deprecated " +"and will raise a :exc:`ValueError` in Python 3.16. (Contributed by Hugo van " +"Kemenade in :gh:`75223`.)" msgstr "" msgid ":mod:`shutil`:" @@ -2176,9 +2199,9 @@ msgstr "" msgid "" "The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" +"Use :mod:`profiling.tracing` instead, which provides a compatible API. " +"See :pep:`799` for details. (Contributed by Pablo Galindo and László Kiss " +"Kollár in :gh:`138122`.)" msgstr "" msgid ":mod:`webbrowser`:" @@ -2208,19 +2231,20 @@ msgstr "" msgid "" "The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" +"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` " +"and :meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for " +"removal in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` " +"and :meth:`!trace_info` instead. (Contributed by Serhiy Storchaka " +"in :gh:`120220`.)" msgstr "" msgid "Pending removal in Python 3.19" msgstr "" msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." +"Implicitly switching to the MSVC-compatible struct layout by " +"setting :attr:`~ctypes.Structure._pack_` but " +"not :attr:`~ctypes.Structure._layout_` on non-Windows platforms." msgstr "" msgid ":mod:`hashlib`:" @@ -2228,10 +2252,10 @@ msgstr "" msgid "" "In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." +"hash-named constructors such as :func:`~hashlib.md5` " +"and :func:`~hashlib.sha256`, their optional initial data parameter could " +"also be passed a keyword argument named ``data=`` or ``string=`` in " +"various :mod:`!hashlib` implementations." msgstr "" msgid "" @@ -2280,8 +2304,9 @@ msgstr "" msgid "" "Calling the ``__new__()`` method of :class:`struct.Struct` without the " "*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." +"Calling :meth:`~object.__init__` method on " +"initialized :class:`~struct.Struct` objects is deprecated and will be " +"removed in Python 3.20." msgstr "" msgid "" @@ -2388,8 +2413,8 @@ msgid ":mod:`ast`:" msgstr "" msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." +"Creating instances of abstract AST nodes (such as :class:`ast.AST` " +"or :class:`!ast.expr`) is deprecated and will raise an error in Python 3.20." msgstr "" msgid "" @@ -2418,8 +2443,8 @@ msgid "" msgstr "" msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." +"Passing the undocumented keyword argument *prefix_chars* " +"to :meth:`~argparse.ArgumentParser.add_argument_group` is now deprecated." msgstr "" msgid "The :class:`argparse.FileType` type converter is deprecated." @@ -2436,10 +2461,10 @@ msgid "" "for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " "ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " "``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" +"if the numeric literal is immediately followed by one of " +"keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :keyword:`is` " +"and :keyword:`or`. In a future release it will be changed to a syntax " +"error. (:gh:`87999`)" msgstr "" msgid "" @@ -2449,27 +2474,27 @@ msgid "" msgstr "" msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." +"Support for ``__float__()`` method returning a strict subclass " +"of :class:`float`: these methods will be required to return an instance " +"of :class:`float`." msgstr "" msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." +"Support for ``__complex__()`` method returning a strict subclass " +"of :class:`complex`: these methods will be required to return an instance " +"of :class:`complex`." msgstr "" msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" +"Passing a complex number as the *real* or *imag* argument in " +"the :func:`complex` constructor is now deprecated; it should only be passed " +"as a single positional argument. (Contributed by Serhiy Storchaka " +"in :gh:`109218`.)" msgstr "" msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" +":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. " +"(:gh:`133038`)" msgstr "" msgid "" @@ -2478,13 +2503,13 @@ msgid "" msgstr "" msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." +":meth:`~datetime.datetime.utcnow`: use " +"``datetime.datetime.now(tz=datetime.UTC)``." msgstr "" msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." +":meth:`~datetime.datetime.utcfromtimestamp`: use " +"``datetime.datetime.fromtimestamp(timestamp, tz=datetime.UTC)``." msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." @@ -2519,12 +2544,13 @@ msgid "" msgstr "" msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." +":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, " +"use :func:`os.path.commonpath` for path prefixes. " +"The :func:`os.path.commonprefix` function is being deprecated due to having " +"a misleading name and module. The function is not safe to use for path " +"prefixes despite being included in a module about path manipulation, meaning " +"it is easy to accidentally introduce path traversal vulnerabilities into " +"Python programs by using this function." msgstr "" msgid "" @@ -2552,8 +2578,8 @@ msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." +":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` " +"and :meth:`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" msgid "``ssl.OP_NO_SSL*`` options" @@ -2590,21 +2616,21 @@ msgid ":mod:`threading` methods:" msgstr "" msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." +":meth:`!threading.Condition.notifyAll`: " +"use :meth:`~threading.Condition.notify_all`." msgstr "" msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." +":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: " +"use :attr:`threading.Thread.daemon` attribute." msgstr "" msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." +":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: " +"use :attr:`threading.Thread.name` attribute." msgstr "" msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." @@ -2672,15 +2698,15 @@ msgid "" msgstr "" msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." +":mod:`xml.etree.ElementTree`: Testing the truth value of " +"an :class:`~xml.etree.ElementTree.Element` is deprecated. In a future " +"release it will always return ``True``. Prefer explicit ``len(elem)`` or " +"``elem is not None`` tests instead." msgstr "" msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." +":func:`sys._clear_type_cache` is deprecated: " +"use :func:`sys._clear_internal_caches` instead." msgstr "" msgid "Removed" @@ -2714,8 +2740,8 @@ msgid "" msgstr "" msgid "" -":class:`configparser.ConfigParser` no longer has a ``readfp`` method. Use :" -"meth:`~configparser.ConfigParser.read_file` instead." +":class:`configparser.ConfigParser` no longer has a ``readfp`` method. " +"Use :meth:`~configparser.ConfigParser.read_file` instead." msgstr "" msgid "distutils" @@ -2779,19 +2805,19 @@ msgid "" "Remove the ``filename`` attribute of :mod:`gzip`'s :class:`gzip.GzipFile`, " "deprecated since Python 2.6, use the :attr:`~gzip.GzipFile.name` attribute " "instead. In write mode, the ``filename`` attribute added ``'.gz'`` file " -"extension if it was not present. (Contributed by Victor Stinner in :gh:" -"`94196`.)" +"extension if it was not present. (Contributed by Victor Stinner " +"in :gh:`94196`.)" msgstr "" msgid "hashlib" msgstr "" msgid "" -"Remove the pure Python implementation of :mod:`hashlib`'s :func:`hashlib." -"pbkdf2_hmac`, deprecated in Python 3.10. Python 3.10 and newer requires " -"OpenSSL 1.1.1 (:pep:`644`): this OpenSSL version provides a C implementation " -"of :func:`~hashlib.pbkdf2_hmac` which is faster. (Contributed by Victor " -"Stinner in :gh:`94199`.)" +"Remove the pure Python implementation " +"of :mod:`hashlib`'s :func:`hashlib.pbkdf2_hmac`, deprecated in Python 3.10. " +"Python 3.10 and newer requires OpenSSL 1.1.1 (:pep:`644`): this OpenSSL " +"version provides a C implementation of :func:`~hashlib.pbkdf2_hmac` which is " +"faster. (Contributed by Victor Stinner in :gh:`94199`.)" msgstr "" msgid "importlib" @@ -2827,8 +2853,8 @@ msgid "imp" msgstr "" msgid "" -"The :mod:`!imp` module has been removed. (Contributed by Barry Warsaw in :" -"gh:`98040`.)" +"The :mod:`!imp` module has been removed. (Contributed by Barry Warsaw " +"in :gh:`98040`.)" msgstr "" msgid "To migrate, consult the following correspondence table:" @@ -2862,8 +2888,8 @@ msgid "``imp.get_suffixes()``" msgstr "" msgid "" -":const:`importlib.machinery.SOURCE_SUFFIXES`, :const:`importlib.machinery." -"EXTENSION_SUFFIXES`, and :const:`importlib.machinery.BYTECODE_SUFFIXES`" +":const:`importlib.machinery.SOURCE_SUFFIXES`, :const:`importlib.machinery.EXTENSION_SUFFIXES`, " +"and :const:`importlib.machinery.BYTECODE_SUFFIXES`" msgstr "" msgid "``imp.get_tag()``" @@ -2955,10 +2981,10 @@ msgstr "" msgid "" "Remove :mod:`io`'s ``io.OpenWrapper`` and ``_pyio.OpenWrapper``, deprecated " -"in Python 3.10: just use :func:`open` instead. The :func:`open` (:func:`io." -"open`) function is a built-in function. Since Python 3.10, :func:`!_pyio." -"open` is also a static method. (Contributed by Victor Stinner in :gh:" -"`94169`.)" +"in Python 3.10: just use :func:`open` instead. The :func:`open` " +"(:func:`io.open`) function is a built-in function. Since Python " +"3.10, :func:`!_pyio.open` is also a static method. (Contributed by Victor " +"Stinner in :gh:`94169`.)" msgstr "" msgid "locale" @@ -2974,10 +3000,10 @@ msgid "smtpd" msgstr "" msgid "" -"The ``smtpd`` module has been removed according to the schedule in :pep:" -"`594`, having been deprecated in Python 3.4.7 and 3.5.4. Use the :pypi:" -"`aiosmtpd` PyPI module or any other :mod:`asyncio`-based server instead. " -"(Contributed by Oleg Iarygin in :gh:`93243`.)" +"The ``smtpd`` module has been removed according to the schedule " +"in :pep:`594`, having been deprecated in Python 3.4.7 and 3.5.4. Use " +"the :pypi:`aiosmtpd` PyPI module or any other :mod:`asyncio`-based server " +"instead. (Contributed by Oleg Iarygin in :gh:`93243`.)" msgstr "" msgid "" @@ -2997,9 +3023,9 @@ msgid "" msgstr "" msgid "" -"The ``sqlite3.OptimizedUnicode`` text factory has been an alias for :class:" -"`str` since Python 3.3. Code that previously set the text factory to " -"``OptimizedUnicode`` can either use ``str`` explicitly, or rely on the " +"The ``sqlite3.OptimizedUnicode`` text factory has been an alias " +"for :class:`str` since Python 3.3. Code that previously set the text factory " +"to ``OptimizedUnicode`` can either use ``str`` explicitly, or rely on the " "default value which is also ``str``." msgstr "" @@ -3024,12 +3050,12 @@ msgstr "" msgid "" "Remove the :func:`!ssl.wrap_socket` function, deprecated in Python 3.7: " -"instead, create a :class:`ssl.SSLContext` object and call its :class:`ssl." -"SSLContext.wrap_socket` method. Any package that still uses :func:`!ssl." -"wrap_socket` is broken and insecure. The function neither sends a SNI TLS " -"extension nor validates the server hostname. Code is subject to :cwe:`295` " -"(Improper Certificate Validation). (Contributed by Victor Stinner in :gh:" -"`94199`.)" +"instead, create a :class:`ssl.SSLContext` object and call " +"its :class:`ssl.SSLContext.wrap_socket` method. Any package that still " +"uses :func:`!ssl.wrap_socket` is broken and insecure. The function neither " +"sends a SNI TLS extension nor validates the server hostname. Code is subject " +"to :cwe:`295` (Improper Certificate Validation). (Contributed by Victor " +"Stinner in :gh:`94199`.)" msgstr "" msgid "Remove many long-deprecated :mod:`unittest` features:" @@ -3142,9 +3168,9 @@ msgid "" msgstr "" msgid "" -"Undocumented :meth:`TestLoader.loadTestsFromModule ` parameter *use_load_tests* (deprecated and ignored " -"since Python 3.5)." +"Undocumented :meth:`TestLoader.loadTestsFromModule " +"` parameter *use_load_tests* " +"(deprecated and ignored since Python 3.5)." msgstr "" msgid "" @@ -3180,27 +3206,28 @@ msgstr "" msgid "" "Remove :mod:`zipimport`'s ``find_loader()`` and ``find_module()`` methods, " -"deprecated in Python 3.10: use the ``find_spec()`` method instead. See :pep:" -"`451` for the rationale. (Contributed by Victor Stinner in :gh:`94379`.)" +"deprecated in Python 3.10: use the ``find_spec()`` method instead. " +"See :pep:`451` for the rationale. (Contributed by Victor Stinner " +"in :gh:`94379`.)" msgstr "" msgid "Others" msgstr "" msgid "" -"Remove the ``suspicious`` rule from the documentation :file:`Makefile` and :" -"file:`Doc/tools/rstlint.py`, both in favor of `sphinx-lint `_. (Contributed by Julien Palard in :gh:" -"`98179`.)" +"Remove the ``suspicious`` rule from the documentation :file:`Makefile` " +"and :file:`Doc/tools/rstlint.py`, both in favor of `sphinx-lint `_. (Contributed by Julien Palard " +"in :gh:`98179`.)" msgstr "" msgid "" -"Remove the *keyfile* and *certfile* parameters from the :mod:`ftplib`, :mod:" -"`imaplib`, :mod:`poplib` and :mod:`smtplib` modules, and the *key_file*, " -"*cert_file* and *check_hostname* parameters from the :mod:`http.client` " -"module, all deprecated since Python 3.6. Use the *context* parameter " -"(*ssl_context* in :mod:`imaplib`) instead. (Contributed by Victor Stinner " -"in :gh:`94172`.)" +"Remove the *keyfile* and *certfile* parameters from " +"the :mod:`ftplib`, :mod:`imaplib`, :mod:`poplib` and :mod:`smtplib` modules, " +"and the *key_file*, *cert_file* and *check_hostname* parameters from " +"the :mod:`http.client` module, all deprecated since Python 3.6. Use the " +"*context* parameter (*ssl_context* in :mod:`imaplib`) instead. (Contributed " +"by Victor Stinner in :gh:`94172`.)" msgstr "" msgid "" @@ -3209,8 +3236,8 @@ msgid "" msgstr "" msgid "" -"Remove ``_use_broken_old_ctypes_structure_semantics_`` flag from :mod:" -"`ctypes` module. (Contributed by Nikita Sobolev in :gh:`99285`.)" +"Remove ``_use_broken_old_ctypes_structure_semantics_`` flag " +"from :mod:`ctypes` module. (Contributed by Nikita Sobolev in :gh:`99285`.)" msgstr "" msgid "Porting to Python 3.12" @@ -3239,8 +3266,8 @@ msgid "" "integer values such as ``randrange(10.5)`` or ``randrange('10')`` has been " "changed from :exc:`ValueError` to :exc:`TypeError`. This also prevents bugs " "where ``randrange(1e25)`` would silently select from a larger range than " -"``randrange(10**25)``. (Originally suggested by Serhiy Storchaka :gh:" -"`86388`.)" +"``randrange(10**25)``. (Originally suggested by Serhiy " +"Storchaka :gh:`86388`.)" msgstr "" msgid "" @@ -3254,8 +3281,8 @@ msgstr "" msgid "" "Remove the ``asyncore``-based ``smtpd`` module deprecated in Python 3.4.7 " -"and 3.5.4. A recommended replacement is the :mod:`asyncio`-based :pypi:" -"`aiosmtpd` PyPI module." +"and 3.5.4. A recommended replacement is the :mod:`asyncio`-" +"based :pypi:`aiosmtpd` PyPI module." msgstr "" msgid "" @@ -3265,10 +3292,10 @@ msgid "" msgstr "" msgid "" -"The :mod:`os` module no longer accepts bytes-like paths, like :class:" -"`bytearray` and :class:`memoryview` types: only the exact :class:`bytes` " -"type is accepted for bytes strings. (Contributed by Victor Stinner in :gh:" -"`98393`.)" +"The :mod:`os` module no longer accepts bytes-like paths, " +"like :class:`bytearray` and :class:`memoryview` types: only the " +"exact :class:`bytes` type is accepted for bytes strings. (Contributed by " +"Victor Stinner in :gh:`98393`.)" msgstr "" msgid "" @@ -3294,20 +3321,22 @@ msgid "" msgstr "" msgid "" -"When extracting tar files using :mod:`tarfile` or :func:`shutil." -"unpack_archive`, pass the *filter* argument to limit features that may be " -"surprising or dangerous. See :ref:`tarfile-extraction-filter` for details." +"When extracting tar files using :mod:`tarfile` " +"or :func:`shutil.unpack_archive`, pass the *filter* argument to limit " +"features that may be surprising or dangerous. See :ref:`tarfile-extraction-" +"filter` for details." msgstr "" msgid "" -"The output of the :func:`tokenize.tokenize` and :func:`tokenize." -"generate_tokens` functions is now changed due to the changes introduced in :" -"pep:`701`. This means that ``STRING`` tokens are not emitted any more for f-" -"strings and the tokens described in :pep:`701` are now produced instead: " -"``FSTRING_START``, ``FSTRING_MIDDLE`` and ``FSTRING_END`` are now emitted " -"for f-string \"string\" parts in addition to the appropriate tokens for the " -"tokenization in the expression components. For example for the f-string " -"``f\"start {1+1} end\"`` the old version of the tokenizer emitted::" +"The output of the :func:`tokenize.tokenize` " +"and :func:`tokenize.generate_tokens` functions is now changed due to the " +"changes introduced in :pep:`701`. This means that ``STRING`` tokens are not " +"emitted any more for f-strings and the tokens described in :pep:`701` are " +"now produced instead: ``FSTRING_START``, ``FSTRING_MIDDLE`` and " +"``FSTRING_END`` are now emitted for f-string \"string\" parts in addition to " +"the appropriate tokens for the tokenization in the expression components. " +"For example for the f-string ``f\"start {1+1} end\"`` the old version of the " +"tokenizer emitted::" msgstr "" msgid "1,0-1,18: STRING 'f\"start {1+1} end\"'" @@ -3388,11 +3417,11 @@ msgid "" msgstr "" msgid "" -"Add ``COMPILEALL_OPTS`` variable in :file:`Makefile` to override :mod:" -"`compileall` options (default: ``-j0``) in ``make install``. Also merged the " -"3 ``compileall`` commands into a single command to build .pyc files for all " -"optimization levels (0, 1, 2) at once. (Contributed by Victor Stinner in :gh:" -"`99289`.)" +"Add ``COMPILEALL_OPTS`` variable in :file:`Makefile` to " +"override :mod:`compileall` options (default: ``-j0``) in ``make install``. " +"Also merged the 3 ``compileall`` commands into a single command to " +"build .pyc files for all optimization levels (0, 1, 2) at once. (Contributed " +"by Victor Stinner in :gh:`99289`.)" msgstr "" msgid "Add platform triplets for 64-bit LoongArch:" @@ -3414,8 +3443,9 @@ msgid "``PYTHON_FOR_REGEN`` now require Python 3.10 or newer." msgstr "" msgid "" -"Autoconf 2.71 and aclocal 1.16.4 is now required to regenerate :file:" -"`configure`. (Contributed by Christian Heimes in :gh:`89886`.)" +"Autoconf 2.71 and aclocal 1.16.4 is now required to " +"regenerate :file:`configure`. (Contributed by Christian Heimes " +"in :gh:`89886`.)" msgstr "" msgid "" @@ -3482,8 +3512,8 @@ msgstr "" msgid "" ":c:macro:`Py_TPFLAGS_ITEMS_AT_END` and :c:func:`PyObject_GetItemData` added " -"to allow safely extending certain variable-sized types, including :c:var:" -"`PyType_Type`." +"to allow safely extending certain variable-sized types, " +"including :c:var:`PyType_Type`." msgstr "" msgid "" @@ -3495,10 +3525,10 @@ msgid "(Contributed by Petr Viktorin in :gh:`103509`.)" msgstr "" msgid "" -"Add the new :ref:`limited C API ` function :c:func:" -"`PyType_FromMetaclass`, which generalizes the existing :c:func:" -"`PyType_FromModuleAndSpec` using an additional metaclass argument. " -"(Contributed by Wenzel Jakob in :gh:`93012`.)" +"Add the new :ref:`limited C API ` " +"function :c:func:`PyType_FromMetaclass`, which generalizes the " +"existing :c:func:`PyType_FromModuleAndSpec` using an additional metaclass " +"argument. (Contributed by Wenzel Jakob in :gh:`93012`.)" msgstr "" msgid "" @@ -3524,15 +3554,15 @@ msgid "" "makes vectorcall safe to use with mutable types (i.e. heap types without the " "immutable flag, :c:macro:`Py_TPFLAGS_IMMUTABLETYPE`). Mutable types that do " "not override :c:member:`~PyTypeObject.tp_call` now inherit the " -"``Py_TPFLAGS_HAVE_VECTORCALL`` flag. (Contributed by Petr Viktorin in :gh:" -"`93274`.)" +"``Py_TPFLAGS_HAVE_VECTORCALL`` flag. (Contributed by Petr Viktorin " +"in :gh:`93274`.)" msgstr "" msgid "" -"The :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" -"`Py_TPFLAGS_MANAGED_WEAKREF` flags have been added. This allows extensions " -"classes to support object :attr:`~object.__dict__` and weakrefs with less " -"bookkeeping, using less memory and with faster access." +"The :c:macro:`Py_TPFLAGS_MANAGED_DICT` " +"and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` flags have been added. This allows " +"extensions classes to support object :attr:`~object.__dict__` and weakrefs " +"with less bookkeeping, using less memory and with faster access." msgstr "" msgid "" @@ -3556,9 +3586,9 @@ msgid "" msgstr "" msgid "" -"Add two new public functions, :c:func:`PyEval_SetProfileAllThreads` and :c:" -"func:`PyEval_SetTraceAllThreads`, that allow to set tracing and profiling " -"functions in all running threads in addition to the calling one. " +"Add two new public functions, :c:func:`PyEval_SetProfileAllThreads` " +"and :c:func:`PyEval_SetTraceAllThreads`, that allow to set tracing and " +"profiling functions in all running threads in addition to the calling one. " "(Contributed by Pablo Galindo in :gh:`93503`.)" msgstr "" @@ -3569,11 +3599,11 @@ msgid "" msgstr "" msgid "" -"The C API now permits registering callbacks via :c:func:" -"`PyDict_AddWatcher`, :c:func:`PyDict_Watch` and related APIs to be called " -"whenever a dictionary is modified. This is intended for use by optimizing " -"interpreters, JIT compilers, or debuggers. (Contributed by Carl Meyer in :gh:" -"`91052`.)" +"The C API now permits registering callbacks " +"via :c:func:`PyDict_AddWatcher`, :c:func:`PyDict_Watch` and related APIs to " +"be called whenever a dictionary is modified. This is intended for use by " +"optimizing interpreters, JIT compilers, or debuggers. (Contributed by Carl " +"Meyer in :gh:`91052`.)" msgstr "" msgid "" @@ -3590,17 +3620,17 @@ msgstr "" msgid "" "Add :c:func:`PyFrame_GetVar` and :c:func:`PyFrame_GetVarString` functions to " -"get a frame variable by its name. (Contributed by Victor Stinner in :gh:" -"`91248`.)" +"get a frame variable by its name. (Contributed by Victor Stinner " +"in :gh:`91248`.)" msgstr "" msgid "" -"Add :c:func:`PyErr_GetRaisedException` and :c:func:" -"`PyErr_SetRaisedException` for saving and restoring the current exception. " -"These functions return and accept a single exception object, rather than the " -"triple arguments of the now-deprecated :c:func:`PyErr_Fetch` and :c:func:" -"`PyErr_Restore`. This is less error prone and a bit more efficient. " -"(Contributed by Mark Shannon in :gh:`101578`.)" +"Add :c:func:`PyErr_GetRaisedException` " +"and :c:func:`PyErr_SetRaisedException` for saving and restoring the current " +"exception. These functions return and accept a single exception object, " +"rather than the triple arguments of the now-deprecated :c:func:`PyErr_Fetch` " +"and :c:func:`PyErr_Restore`. This is less error prone and a bit more " +"efficient. (Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" msgid "" @@ -3611,9 +3641,9 @@ msgstr "" msgid "" "Add :c:func:`PyException_GetArgs` and :c:func:`PyException_SetArgs` as " -"convenience functions for retrieving and modifying the :attr:`~BaseException." -"args` passed to the exception's constructor. (Contributed by Mark Shannon " -"in :gh:`101578`.)" +"convenience functions for retrieving and modifying " +"the :attr:`~BaseException.args` passed to the exception's constructor. " +"(Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" msgid "" @@ -3627,38 +3657,32 @@ msgid "" "reference counts, and related changes to the C-API:" msgstr "" -msgid "``_Py_IMMORTAL_REFCNT``: The reference count that defines an object" -msgstr "" - -msgid "as immortal." +msgid "" +"``_Py_IMMORTAL_REFCNT``: The reference count that defines an object as " +"immortal." msgstr "" msgid "" "``_Py_IsImmortal`` Checks if an object has the immortal reference count." msgstr "" -msgid "``PyObject_HEAD_INIT`` This will now initialize reference count to" -msgstr "" - -msgid "``_Py_IMMORTAL_REFCNT`` when used with ``Py_BUILD_CORE``." -msgstr "" - -msgid "``SSTATE_INTERNED_IMMORTAL`` An identifier for interned unicode objects" -msgstr "" - -msgid "that are immortal." -msgstr "" - -msgid "``SSTATE_INTERNED_IMMORTAL_STATIC`` An identifier for interned unicode" +msgid "" +"``PyObject_HEAD_INIT`` This will now initialize reference count to " +"``_Py_IMMORTAL_REFCNT`` when used with ``Py_BUILD_CORE``." msgstr "" -msgid "objects that are immortal and static" +msgid "" +"``SSTATE_INTERNED_IMMORTAL`` An identifier for interned unicode objects that " +"are immortal." msgstr "" -msgid "``sys.getunicodeinternedsize`` This returns the total number of unicode" +msgid "" +"``SSTATE_INTERNED_IMMORTAL_STATIC`` An identifier for interned unicode " +"objects that are immortal and static" msgstr "" msgid "" +"``sys.getunicodeinternedsize`` This returns the total number of unicode " "objects that have been interned. This is now needed for :file:`refleak.py` " "to correctly track reference counts and allocated blocks" msgstr "" @@ -3667,16 +3691,17 @@ msgid "(Contributed by Eddie Elizondo in :gh:`84436`.)" msgstr "" msgid "" -":pep:`684`: Add the new :c:func:`Py_NewInterpreterFromConfig` function and :" -"c:type:`PyInterpreterConfig`, which may be used to create sub-interpreters " -"with their own GILs. (See :ref:`whatsnew312-pep684` for more info.) " -"(Contributed by Eric Snow in :gh:`104110`.)" +":pep:`684`: Add the new :c:func:`Py_NewInterpreterFromConfig` function " +"and :c:type:`PyInterpreterConfig`, which may be used to create sub-" +"interpreters with their own GILs. (See :ref:`whatsnew312-pep684` for more " +"info.) (Contributed by Eric Snow in :gh:`104110`.)" msgstr "" msgid "" -"In the limited C API version 3.12, :c:func:`Py_INCREF` and :c:func:" -"`Py_DECREF` functions are now implemented as opaque function calls to hide " -"implementation details. (Contributed by Victor Stinner in :gh:`105387`.)" +"In the limited C API version 3.12, :c:func:`Py_INCREF` " +"and :c:func:`Py_DECREF` functions are now implemented as opaque function " +"calls to hide implementation details. (Contributed by Victor Stinner " +"in :gh:`105387`.)" msgstr "" msgid "" @@ -3706,42 +3731,44 @@ msgid "" msgstr "" msgid "" -"To get a list of subclasses, call the Python method :py:meth:`~type." -"__subclasses__` (using :c:func:`PyObject_CallMethod`, for example)." +"To get a list of subclasses, call the Python " +"method :py:meth:`~type.__subclasses__` (using :c:func:`PyObject_CallMethod`, " +"for example)." msgstr "" msgid "" "Add support of more formatting options (left aligning, octals, uppercase " "hexadecimals, :c:type:`intmax_t`, :c:type:`ptrdiff_t`, :c:type:`wchar_t` C " "strings, variable width and precision) in :c:func:`PyUnicode_FromFormat` " -"and :c:func:`PyUnicode_FromFormatV`. (Contributed by Serhiy Storchaka in :gh:" -"`98836`.)" +"and :c:func:`PyUnicode_FromFormatV`. (Contributed by Serhiy Storchaka " +"in :gh:`98836`.)" msgstr "" msgid "" -"An unrecognized format character in :c:func:`PyUnicode_FromFormat` and :c:" -"func:`PyUnicode_FromFormatV` now sets a :exc:`SystemError`. In previous " -"versions it caused all the rest of the format string to be copied as-is to " -"the result string, and any extra arguments discarded. (Contributed by Serhiy " -"Storchaka in :gh:`95781`.)" +"An unrecognized format character in :c:func:`PyUnicode_FromFormat` " +"and :c:func:`PyUnicode_FromFormatV` now sets a :exc:`SystemError`. In " +"previous versions it caused all the rest of the format string to be copied " +"as-is to the result string, and any extra arguments discarded. (Contributed " +"by Serhiy Storchaka in :gh:`95781`.)" msgstr "" msgid "" -"Fix wrong sign placement in :c:func:`PyUnicode_FromFormat` and :c:func:" -"`PyUnicode_FromFormatV`. (Contributed by Philip Georgi in :gh:`95504`.)" +"Fix wrong sign placement in :c:func:`PyUnicode_FromFormat` " +"and :c:func:`PyUnicode_FromFormatV`. (Contributed by Philip Georgi " +"in :gh:`95504`.)" msgstr "" msgid "" "Extension classes wanting to add a :attr:`~object.__dict__` or weak " -"reference slot should use :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" -"`Py_TPFLAGS_MANAGED_WEAKREF` instead of ``tp_dictoffset`` and " +"reference slot should use :c:macro:`Py_TPFLAGS_MANAGED_DICT` " +"and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead of ``tp_dictoffset`` and " "``tp_weaklistoffset``, respectively. The use of ``tp_dictoffset`` and " "``tp_weaklistoffset`` is still supported, but does not fully support " "multiple inheritance (:gh:`95589`), and performance may be worse. Classes " "declaring :c:macro:`Py_TPFLAGS_MANAGED_DICT` must call :c:func:`!" "_PyObject_VisitManagedDict` and :c:func:`!_PyObject_ClearManagedDict` to " -"traverse and clear their instance's dictionaries. To clear weakrefs, call :c:" -"func:`PyObject_ClearWeakRefs`, as before." +"traverse and clear their instance's dictionaries. To clear weakrefs, " +"call :c:func:`PyObject_ClearWeakRefs`, as before." msgstr "" msgid "" @@ -3759,10 +3786,10 @@ msgid "" msgstr "" msgid "" -"The interpreter's error indicator is now always normalized. This means that :" -"c:func:`PyErr_SetObject`, :c:func:`PyErr_SetString` and the other functions " -"that set the error indicator now normalize the exception before storing it. " -"(Contributed by Mark Shannon in :gh:`101578`.)" +"The interpreter's error indicator is now always normalized. This means " +"that :c:func:`PyErr_SetObject`, :c:func:`PyErr_SetString` and the other " +"functions that set the error indicator now normalize the exception before " +"storing it. (Contributed by Mark Shannon in :gh:`101578`.)" msgstr "" msgid "" @@ -3795,8 +3822,8 @@ msgstr "" msgid "" "Note that :c:func:`PyType_FromMetaclass` (added in Python 3.12) already " -"disallows creating classes whose metaclass overrides ``tp_new`` (:meth:" -"`~object.__new__` in Python)." +"disallows creating classes whose metaclass overrides ``tp_new`` " +"(:meth:`~object.__new__` in Python)." msgstr "" msgid "" @@ -3811,15 +3838,15 @@ msgid "If you control the metaclass, avoid using ``tp_new`` in it:" msgstr "" msgid "" -"If initialization can be skipped, it can be done in :c:member:`~PyTypeObject." -"tp_init` instead." +"If initialization can be skipped, it can be done " +"in :c:member:`~PyTypeObject.tp_init` instead." msgstr "" msgid "" "If the metaclass doesn't need to be instantiated from Python, set its " -"``tp_new`` to ``NULL`` using the :c:macro:" -"`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag. This makes it acceptable for " -"``PyType_From*`` functions." +"``tp_new`` to ``NULL`` using " +"the :c:macro:`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag. This makes it " +"acceptable for ``PyType_From*`` functions." msgstr "" msgid "" @@ -3850,10 +3877,10 @@ msgid "" ":c:struct:`PyLongObject` has had its internals changed for better " "performance. Although the internals of :c:struct:`PyLongObject` are private, " "they are used by some extension modules. The internal fields should no " -"longer be accessed directly, instead the API functions beginning ``PyLong_..." -"`` should be used instead. Two new *unstable* API functions are provided for " -"efficient access to the value of :c:struct:`PyLongObject`\\s which fit into " -"a single machine word:" +"longer be accessed directly, instead the API functions beginning " +"``PyLong_...`` should be used instead. Two new *unstable* API functions are " +"provided for efficient access to the value of :c:struct:`PyLongObject`\\s " +"which fit into a single machine word:" msgstr "" msgid ":c:func:`PyUnstable_Long_IsCompact`" @@ -3871,11 +3898,11 @@ msgid "" msgstr "" msgid "" -"In accordance with :pep:`699`, the ``ma_version_tag`` field in :c:type:" -"`PyDictObject` is deprecated for extension modules. Accessing this field " -"will generate a compiler warning at compile time. This field will be removed " -"in Python 3.14. (Contributed by Ramvikrams and Kumar Aditya in :gh:`101193`. " -"PEP by Ken Jin.)" +"In accordance with :pep:`699`, the ``ma_version_tag`` field " +"in :c:type:`PyDictObject` is deprecated for extension modules. Accessing " +"this field will generate a compiler warning at compile time. This field will " +"be removed in Python 3.14. (Contributed by Ramvikrams and Kumar Aditya " +"in :gh:`101193`. PEP by Ken Jin.)" msgstr "" msgid "Deprecate global configuration variable:" @@ -3933,38 +3960,39 @@ msgid ":c:var:`Py_IsolatedFlag`: use :c:member:`PyConfig.isolated`" msgstr "" msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding`" +":c:var:`Py_LegacyWindowsFSEncodingFlag`: " +"use :c:member:`PyPreConfig.legacy_windows_fs_encoding`" msgstr "" msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: use :c:member:`PyConfig." -"legacy_windows_stdio`" +":c:var:`Py_LegacyWindowsStdioFlag`: " +"use :c:member:`PyConfig.legacy_windows_stdio`" msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncoding`: use :c:member:`PyConfig." -"filesystem_encoding`" +":c:var:`!Py_FileSystemDefaultEncoding`: " +"use :c:member:`PyConfig.filesystem_encoding`" msgstr "" msgid "" -":c:var:`!Py_HasFileSystemDefaultEncoding`: use :c:member:`PyConfig." -"filesystem_encoding`" +":c:var:`!Py_HasFileSystemDefaultEncoding`: " +"use :c:member:`PyConfig.filesystem_encoding`" msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: use :c:member:`PyConfig." -"filesystem_errors`" +":c:var:`!Py_FileSystemDefaultEncodeErrors`: " +"use :c:member:`PyConfig.filesystem_errors`" msgstr "" msgid "" -":c:var:`!Py_UTF8Mode`: use :c:member:`PyPreConfig.utf8_mode` (see :c:func:" -"`Py_PreInitialize`)" +":c:var:`!Py_UTF8Mode`: use :c:member:`PyPreConfig.utf8_mode` " +"(see :c:func:`Py_PreInitialize`)" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead. (Contributed by Victor Stinner in :gh:`77782`.)" +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` instead. (Contributed by Victor Stinner " +"in :gh:`77782`.)" msgstr "" msgid "" @@ -3983,8 +4011,8 @@ msgid "" msgstr "" msgid "" -":c:struct:`PyMemberDef`, :c:func:`PyMember_GetOne` and :c:func:" -"`PyMember_SetOne`" +":c:struct:`PyMemberDef`, :c:func:`PyMember_GetOne` " +"and :c:func:`PyMember_SetOne`" msgstr "" msgid "" @@ -3993,8 +4021,8 @@ msgid "" msgstr "" msgid "" -"The flags :c:macro:`Py_READONLY` (previously ``READONLY``) and :c:macro:" -"`Py_AUDIT_READ` (previously all uppercase)" +"The flags :c:macro:`Py_READONLY` (previously ``READONLY``) " +"and :c:macro:`Py_AUDIT_READ` (previously all uppercase)" msgstr "" msgid "Several items are not exposed from :file:`Python.h`:" @@ -4010,13 +4038,14 @@ msgid "The macro ``WRITE_RESTRICTED`` which does nothing." msgstr "" msgid "" -"The macros ``RESTRICTED`` and ``READ_RESTRICTED``, equivalents of :c:macro:" -"`Py_AUDIT_READ`." +"The macros ``RESTRICTED`` and ``READ_RESTRICTED``, equivalents " +"of :c:macro:`Py_AUDIT_READ`." msgstr "" msgid "" -"In some configurations, ```` is not included from :file:`Python." -"h`. It should be included manually when using ``offsetof()``." +"In some configurations, ```` is not included " +"from :file:`Python.h`. It should be included manually when using " +"``offsetof()``." msgstr "" msgid "" @@ -4031,9 +4060,10 @@ msgid "" msgstr "" msgid "" -":c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` are deprecated. Use :c:" -"func:`PyErr_GetRaisedException` and :c:func:`PyErr_SetRaisedException` " -"instead. (Contributed by Mark Shannon in :gh:`101578`.)" +":c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` are deprecated. " +"Use :c:func:`PyErr_GetRaisedException` " +"and :c:func:`PyErr_SetRaisedException` instead. (Contributed by Mark Shannon " +"in :gh:`101578`.)" msgstr "" msgid "" @@ -4047,9 +4077,10 @@ msgid "" msgstr "" msgid "" -"Using :c:func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases` or :c:" -"func:`PyType_FromModuleAndSpec` to create a class whose metaclass overrides :" -"c:member:`~PyTypeObject.tp_new` is deprecated. Call the metaclass instead." +"Using :c:func:`PyType_FromSpec`, :c:func:`PyType_FromSpecWithBases` " +"or :c:func:`PyType_FromModuleAndSpec` to create a class whose metaclass " +"overrides :c:member:`~PyTypeObject.tp_new` is deprecated. Call the metaclass " +"instead." msgstr "" msgid "" @@ -4063,15 +4094,15 @@ msgid "" msgstr "" msgid "" -"The :c:func:`!PyImport_ImportModuleNoBlock`: Use :c:func:" -"`PyImport_ImportModule` instead." +"The :c:func:`!PyImport_ImportModuleNoBlock`: " +"Use :c:func:`PyImport_ImportModule` instead." msgstr "" msgid "" -":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: Use :c:" -"func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project `__ can be used to get :c:func:" -"`PyWeakref_GetRef` on Python 3.12 and older." +":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: " +"Use :c:func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project " +"`__ can be used to " +"get :c:func:`PyWeakref_GetRef` on Python 3.12 and older." msgstr "" msgid "" @@ -4104,16 +4135,17 @@ msgstr "" msgid "" ":c:func:`!Py_GetPrefix`: Use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." +"` (:data:`sys.base_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) " +"if :ref:`virtual environments ` need to be handled." msgstr "" msgid "" ":c:func:`!Py_GetExecPrefix`: Use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." +"` (:data:`sys.base_exec_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"exec_prefix\") ` " +"(:data:`sys.exec_prefix`) if :ref:`virtual environments ` need to " +"be handled." msgstr "" msgid "" @@ -4160,56 +4192,56 @@ msgid "" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` instead." msgstr "" msgid "Global configuration variables:" msgstr "" msgid "" -":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` or :c:func:" -"`PyConfig_Get(\"parser_debug\") ` instead." +":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` " +"or :c:func:`PyConfig_Get(\"parser_debug\") ` instead." msgstr "" msgid "" -":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` or :c:func:" -"`PyConfig_Get(\"verbose\") ` instead." +":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` " +"or :c:func:`PyConfig_Get(\"verbose\") ` instead." msgstr "" msgid "" -":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` or :c:func:" -"`PyConfig_Get(\"quiet\") ` instead." +":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` " +"or :c:func:`PyConfig_Get(\"quiet\") ` instead." msgstr "" msgid "" -":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` or :c:func:" -"`PyConfig_Get(\"interactive\") ` instead." +":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` " +"or :c:func:`PyConfig_Get(\"interactive\") ` instead." msgstr "" msgid "" -":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` or :c:func:" -"`PyConfig_Get(\"inspect\") ` instead." +":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` " +"or :c:func:`PyConfig_Get(\"inspect\") ` instead." msgstr "" msgid "" -":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` or :c:" -"func:`PyConfig_Get(\"optimization_level\") ` instead." +":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` " +"or :c:func:`PyConfig_Get(\"optimization_level\") ` instead." msgstr "" msgid "" -":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` or :c:func:" -"`PyConfig_Get(\"site_import\") ` instead." +":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` " +"or :c:func:`PyConfig_Get(\"site_import\") ` instead." msgstr "" msgid "" -":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` or :c:" -"func:`PyConfig_Get(\"bytes_warning\") ` instead." +":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` " +"or :c:func:`PyConfig_Get(\"bytes_warning\") ` instead." msgstr "" msgid "" -":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` or :c:" -"func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." +":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` " +"or :c:func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." msgstr "" msgid "" @@ -4223,14 +4255,14 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_NoUserSiteDirectory`: Use :c:member:`PyConfig." -"user_site_directory` or :c:func:`PyConfig_Get(\"user_site_directory\") " -"` instead." +":c:var:`Py_NoUserSiteDirectory`: " +"Use :c:member:`PyConfig.user_site_directory` " +"or :c:func:`PyConfig_Get(\"user_site_directory\") ` instead." msgstr "" msgid "" -":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` or :" -"c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." +":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` " +"or :c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." msgstr "" msgid "" @@ -4240,45 +4272,46 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` or :c:func:" -"`PyConfig_Get(\"isolated\") ` instead." +":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` " +"or :c:func:`PyConfig_Get(\"isolated\") ` instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: Use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` or :c:func:" -"`PyConfig_Get(\"legacy_windows_fs_encoding\") ` instead." +":c:var:`Py_LegacyWindowsFSEncodingFlag`: " +"Use :c:member:`PyPreConfig.legacy_windows_fs_encoding` " +"or :c:func:`PyConfig_Get(\"legacy_windows_fs_encoding\") ` " +"instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: Use :c:member:`PyConfig." -"legacy_windows_stdio` or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") " -"` instead." +":c:var:`Py_LegacyWindowsStdioFlag`: " +"Use :c:member:`PyConfig.legacy_windows_stdio` " +"or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") ` instead." msgstr "" msgid "" ":c:var:`!Py_FileSystemDefaultEncoding`, :c:var:`!" -"Py_HasFileSystemDefaultEncoding`: Use :c:member:`PyConfig." -"filesystem_encoding` or :c:func:`PyConfig_Get(\"filesystem_encoding\") " -"` instead." +"Py_HasFileSystemDefaultEncoding`: " +"Use :c:member:`PyConfig.filesystem_encoding` " +"or :c:func:`PyConfig_Get(\"filesystem_encoding\") ` instead." msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: Use :c:member:`PyConfig." -"filesystem_errors` or :c:func:`PyConfig_Get(\"filesystem_errors\") " -"` instead." +":c:var:`!Py_FileSystemDefaultEncodeErrors`: " +"Use :c:member:`PyConfig.filesystem_errors` " +"or :c:func:`PyConfig_Get(\"filesystem_errors\") ` instead." msgstr "" msgid "" -":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` or :c:func:" -"`PyConfig_Get(\"utf8_mode\") ` instead. (see :c:func:" -"`Py_PreInitialize`)" +":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` " +"or :c:func:`PyConfig_Get(\"utf8_mode\") ` instead. " +"(see :c:func:`Py_PreInitialize`)" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can be used to " -"get these options at runtime." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can " +"be used to get these options at runtime." msgstr "" msgid "The bundled copy of ``libmpdec``." @@ -4313,8 +4346,8 @@ msgid ":c:func:`PyOS_AfterFork`: Use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" msgid "" -":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` instead." +":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices` instead." msgstr "" msgid ":c:func:`PyUnicode_READY`: Unneeded since Python 3.12" diff --git a/whatsnew/3.13.po b/whatsnew/3.13.po index 2d9cfcc..bb02b12 100644 --- a/whatsnew/3.13.po +++ b/whatsnew/3.13.po @@ -5,17 +5,18 @@ # # Translators: # Bhuvansh Kataria, 2026 +# Lakshdeep Kashyap, 2026 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" +"POT-Creation-Date: 2026-10-31 18:01+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Last-Translator: Lakshdeep Kashyap, 2026\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +34,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.13, compared to 3.12. " -"Python 3.13 was released on October 7, 2024. For full details, see the :ref:" -"`changelog `." +"Python 3.13 was released on October 7, 2024. For full details, see " +"the :ref:`changelog `." msgstr "" msgid ":pep:`719` -- Python 3.13 Release Schedule" @@ -69,8 +70,8 @@ msgstr "" msgid "" "This article doesn't attempt to provide a complete specification of all new " "features, but instead gives a convenient overview. For full details refer to " -"the documentation, such as the :ref:`Library Reference ` and :" -"ref:`Language Reference `. To understand the complete " +"the documentation, such as the :ref:`Library Reference ` " +"and :ref:`Language Reference `. To understand the complete " "implementation and design rationale for a change, refer to the PEP for a " "particular new feature; but note that PEPs usually are not kept up-to-date " "once a feature has been fully implemented. See `Porting to Python 3.13`_ for " @@ -94,9 +95,9 @@ msgid "" msgstr "" msgid "" -":pep:`703`: CPython 3.13 has experimental support for running with the :term:" -"`global interpreter lock` disabled. See :ref:`Free-threaded CPython " -"` for more details." +":pep:`703`: CPython 3.13 has experimental support for running with " +"the :term:`global interpreter lock` disabled. See :ref:`Free-threaded " +"CPython ` for more details." msgstr "" msgid "" @@ -147,8 +148,8 @@ msgstr "" msgid "" "The :mod:`copy` module now has a :func:`copy.replace` function, with support " -"for many builtin types and any class defining the :func:`~object." -"__replace__` method." +"for many builtin types and any class defining " +"the :func:`~object.__replace__` method." msgstr "" msgid "" @@ -169,9 +170,9 @@ msgid "Security improvements:" msgstr "" msgid "" -":func:`ssl.create_default_context` sets :data:`ssl." -"VERIFY_X509_PARTIAL_CHAIN` and :data:`ssl.VERIFY_X509_STRICT` as default " -"flags." +":func:`ssl.create_default_context` " +"sets :data:`ssl.VERIFY_X509_PARTIAL_CHAIN` " +"and :data:`ssl.VERIFY_X509_STRICT` as default flags." msgstr "" msgid "C API improvements:" @@ -192,16 +193,17 @@ msgid "" msgstr "" msgid "" -"There is a new :ref:`suite of functions ` for generating :" -"pep:`669` monitoring events in the C API." +"There is a new :ref:`suite of functions ` for " +"generating :pep:`669` monitoring events in the C API." msgstr "" msgid "New typing features:" msgstr "" msgid "" -":pep:`696`: Type parameters (:data:`typing.TypeVar`, :data:`typing." -"ParamSpec`, and :data:`typing.TypeVarTuple`) now support defaults." +":pep:`696`: Type parameters " +"(:data:`typing.TypeVar`, :data:`typing.ParamSpec`, " +"and :data:`typing.TypeVarTuple`) now support defaults." msgstr "" msgid "" @@ -210,8 +212,8 @@ msgid "" msgstr "" msgid "" -":pep:`705`: :data:`typing.ReadOnly` can be used to mark an item of a :class:" -"`typing.TypedDict` as read-only for type checkers." +":pep:`705`: :data:`typing.ReadOnly` can be used to mark an item of " +"a :class:`typing.TypedDict` as read-only for type checkers." msgstr "" msgid "" @@ -243,13 +245,12 @@ msgid "Important removals:" msgstr "" msgid "" -":ref:`PEP 594 `: The remaining 19 \"dead " -"batteries\" (legacy stdlib modules) have been removed from the standard " -"library: :mod:`!aifc`, :mod:`!audioop`, :mod:`!cgi`, :mod:`!cgitb`, :mod:`!" -"chunk`, :mod:`!crypt`, :mod:`!imghdr`, :mod:`!mailcap`, :mod:`!msilib`, :mod:" -"`!nis`, :mod:`!nntplib`, :mod:`!ossaudiodev`, :mod:`!pipes`, :mod:`!" -"sndhdr`, :mod:`!spwd`, :mod:`!sunau`, :mod:`!telnetlib`, :mod:`!uu` and :mod:" -"`!xdrlib`." +":ref:`PEP 594 `: The remaining 19 \"dead batteries\" " +"(legacy stdlib modules) have been removed from the standard library: :mod:`!" +"aifc`, :mod:`!audioop`, :mod:`!cgi`, :mod:`!cgitb`, :mod:`!chunk`, :mod:`!" +"crypt`, :mod:`!imghdr`, :mod:`!mailcap`, :mod:`!msilib`, :mod:`!nis`, :mod:`!" +"nntplib`, :mod:`!ossaudiodev`, :mod:`!pipes`, :mod:`!sndhdr`, :mod:`!" +"spwd`, :mod:`!sunau`, :mod:`!telnetlib`, :mod:`!uu` and :mod:`!xdrlib`." msgstr "" msgid "" @@ -318,8 +319,8 @@ msgid "" msgstr "" msgid "" -"History browsing using :kbd:`F2` that skips output as well as the :term:" -"`>>>` and :term:`...` prompts." +"History browsing using :kbd:`F2` that skips output as well as " +"the :term:`>>>` and :term:`...` prompts." msgstr "" msgid "" @@ -567,34 +568,34 @@ msgid "Defined mutation semantics for :py:func:`locals`" msgstr "" msgid "" -"Historically, the expected result of mutating the return value of :func:" -"`locals` has been left to individual Python implementations to define. " -"Starting from Python 3.13, :pep:`667` standardises the historical behavior " -"of CPython for most code execution scopes, but changes :term:`optimized " -"scopes ` (functions, generators, coroutines, " -"comprehensions, and generator expressions) to explicitly return independent " -"snapshots of the currently assigned local variables, including locally " -"referenced nonlocal variables captured in closures." +"Historically, the expected result of mutating the return value " +"of :func:`locals` has been left to individual Python implementations to " +"define. Starting from Python 3.13, :pep:`667` standardises the historical " +"behavior of CPython for most code execution scopes, but " +"changes :term:`optimized scopes ` (functions, generators, " +"coroutines, comprehensions, and generator expressions) to explicitly return " +"independent snapshots of the currently assigned local variables, including " +"locally referenced nonlocal variables captured in closures." msgstr "" msgid "" "This change to the semantics of :func:`locals` in optimized scopes also " "affects the default behavior of code execution functions that implicitly " -"target :func:`!locals` if no explicit namespace is provided (such as :func:" -"`exec` and :func:`eval`). In previous versions, whether or not changes could " -"be accessed by calling :func:`!locals` after calling the code execution " -"function was implementation-dependent. In CPython specifically, such code " -"would typically appear to work as desired, but could sometimes fail in " -"optimized scopes based on other code (including debuggers and code execution " -"tracing tools) potentially resetting the shared snapshot in that scope. Now, " -"the code will always run against an independent snapshot of the local " -"variables in optimized scopes, and hence the changes will never be visible " -"in subsequent calls to :func:`!locals`. To access the changes made in these " -"cases, an explicit namespace reference must now be passed to the relevant " -"function. Alternatively, it may make sense to update affected code to use a " -"higher level code execution API that returns the resulting code execution " -"namespace (e.g. :func:`runpy.run_path` when executing Python files from " -"disk)." +"target :func:`!locals` if no explicit namespace is provided (such " +"as :func:`exec` and :func:`eval`). In previous versions, whether or not " +"changes could be accessed by calling :func:`!locals` after calling the code " +"execution function was implementation-dependent. In CPython specifically, " +"such code would typically appear to work as desired, but could sometimes " +"fail in optimized scopes based on other code (including debuggers and code " +"execution tracing tools) potentially resetting the shared snapshot in that " +"scope. Now, the code will always run against an independent snapshot of the " +"local variables in optimized scopes, and hence the changes will never be " +"visible in subsequent calls to :func:`!locals`. To access the changes made " +"in these cases, an explicit namespace reference must now be passed to the " +"relevant function. Alternatively, it may make sense to update affected code " +"to use a higher level code execution API that returns the resulting code " +"execution namespace (e.g. :func:`runpy.run_path` when executing Python files " +"from disk)." msgstr "" msgid "" @@ -608,15 +609,15 @@ msgstr "" msgid "" "See :pep:`667` for more details, including related C API changes and " -"deprecations. Porting notes are also provided below for the affected :ref:" -"`Python APIs ` and :ref:`C APIs `." +"deprecations. Porting notes are also provided below for the " +"affected :ref:`Python APIs ` and :ref:`C APIs " +"`." msgstr "" msgid "" -"(PEP and implementation contributed by Mark Shannon and Tian Gao in :gh:" -"`74929`. Documentation updates provided by Guido van Rossum and Alyssa " -"Coghlan.)" +"(PEP and implementation contributed by Mark Shannon and Tian Gao " +"in :gh:`74929`. Documentation updates provided by Guido van Rossum and " +"Alyssa Coghlan.)" msgstr "" msgid "Support for mobile platforms" @@ -696,8 +697,8 @@ msgstr "" msgid "" ":keyword:`global` declarations are now permitted in :keyword:`except` blocks " "when that global is used in the :keyword:`else` block. Previously this " -"raised an erroneous :exc:`SyntaxError`. (Contributed by Irit Katriel in :gh:" -"`111123`.)" +"raised an erroneous :exc:`SyntaxError`. (Contributed by Irit Katriel " +"in :gh:`111123`.)" msgstr "" msgid "" @@ -711,14 +712,14 @@ msgid "" "Add :ref:`support for the perf profiler ` working without " "`frame pointers `_ through the new " "environment variable :envvar:`PYTHON_PERF_JIT_SUPPORT` and command-line " -"option :option:`-X perf_jit <-X>`. (Contributed by Pablo Galindo in :gh:" -"`118518`.)" +"option :option:`-X perf_jit <-X>`. (Contributed by Pablo Galindo " +"in :gh:`118518`.)" msgstr "" msgid "" -"The location of a :file:`.python_history` file can be changed via the new :" -"envvar:`PYTHON_HISTORY` environment variable. (Contributed by Levi Sabah, " -"Zackery Spytz and Hugo van Kemenade in :gh:`73965`.)" +"The location of a :file:`.python_history` file can be changed via the " +"new :envvar:`PYTHON_HISTORY` environment variable. (Contributed by Levi " +"Sabah, Zackery Spytz and Hugo van Kemenade in :gh:`73965`.)" msgstr "" msgid "" @@ -736,14 +737,14 @@ msgstr "" msgid "" "The :func:`exec` and :func:`eval` builtins now accept the *globals* and " -"*locals* arguments as keywords. (Contributed by Raphael Gaschignard in :gh:" -"`105879`)" +"*locals* arguments as keywords. (Contributed by Raphael Gaschignard " +"in :gh:`105879`)" msgstr "" msgid "" -"The :func:`compile` builtin now accepts a new flag, ``ast." -"PyCF_OPTIMIZED_AST``, which is similar to ``ast.PyCF_ONLY_AST`` except that " -"the returned AST is optimized according to the value of the *optimize* " +"The :func:`compile` builtin now accepts a new flag, " +"``ast.PyCF_OPTIMIZED_AST``, which is similar to ``ast.PyCF_ONLY_AST`` except " +"that the returned AST is optimized according to the value of the *optimize* " "argument. (Contributed by Irit Katriel in :gh:`108113`)." msgstr "" @@ -753,10 +754,10 @@ msgid "" msgstr "" msgid "" -"Add :exc:`PythonFinalizationError`, a new exception derived from :exc:" -"`RuntimeError` and used to signal when operations are blocked during :term:" -"`finalization `. The following callables now raise :" -"exc:`!PythonFinalizationError`, instead of :exc:`RuntimeError`:" +"Add :exc:`PythonFinalizationError`, a new exception derived " +"from :exc:`RuntimeError` and used to signal when operations are blocked " +"during :term:`finalization `. The following callables " +"now raise :exc:`!PythonFinalizationError`, instead of :exc:`RuntimeError`:" msgstr "" msgid ":func:`_thread.start_new_thread`" @@ -787,8 +788,9 @@ msgstr "" msgid "" "Added :attr:`!name` and :attr:`!mode` attributes for compressed and archived " -"file-like objects in the :mod:`bz2`, :mod:`lzma`, :mod:`tarfile`, and :mod:" -"`zipfile` modules. (Contributed by Serhiy Storchaka in :gh:`115961`.)" +"file-like objects in the :mod:`bz2`, :mod:`lzma`, :mod:`tarfile`, " +"and :mod:`zipfile` modules. (Contributed by Serhiy Storchaka " +"in :gh:`115961`.)" msgstr "" msgid "New Modules" @@ -806,10 +808,10 @@ msgid "argparse" msgstr "" msgid "" -"Add the *deprecated* parameter to the :meth:`~argparse.ArgumentParser." -"add_argument` and :meth:`!add_parser` methods, to enable deprecating command-" -"line options, positional arguments, and subcommands. (Contributed by Serhiy " -"Storchaka in :gh:`83648`.)" +"Add the *deprecated* parameter to " +"the :meth:`~argparse.ArgumentParser.add_argument` and :meth:`!add_parser` " +"methods, to enable deprecating command-line options, positional arguments, " +"and subcommands. (Contributed by Serhiy Storchaka in :gh:`83648`.)" msgstr "" msgid "array" @@ -855,13 +857,13 @@ msgstr "" msgid "" "These changes do not apply to user-defined subclasses of :class:`ast.AST` " -"unless the class opts in to the new behavior by defining the :attr:`.AST." -"_field_types` mapping." +"unless the class opts in to the new behavior by defining " +"the :attr:`.AST._field_types` mapping." msgstr "" msgid "" -"(Contributed by Jelle Zijlstra in :gh:`105858`, :gh:`117486`, and :gh:" -"`118851`.)" +"(Contributed by Jelle Zijlstra in :gh:`105858`, :gh:`117486`, " +"and :gh:`118851`.)" msgstr "" msgid "" @@ -874,18 +876,18 @@ msgid "asyncio" msgstr "" msgid "" -":func:`asyncio.as_completed` now returns an object that is both an :term:" -"`asynchronous iterator` and a plain :term:`iterator` of :term:`awaitables " -"`. The awaitables yielded by asynchronous iteration include " -"original task or future objects that were passed in, making it easier to " -"associate results with the tasks being completed. (Contributed by Justin " -"Arthur in :gh:`77714`.)" +":func:`asyncio.as_completed` now returns an object that is both " +"an :term:`asynchronous iterator` and a plain :term:`iterator` " +"of :term:`awaitables `. The awaitables yielded by asynchronous " +"iteration include original task or future objects that were passed in, " +"making it easier to associate results with the tasks being completed. " +"(Contributed by Justin Arthur in :gh:`77714`.)" msgstr "" msgid "" ":meth:`asyncio.loop.create_unix_server` will now automatically remove the " -"Unix socket when the server is closed. (Contributed by Pierre Ossman in :gh:" -"`111246`.)" +"Unix socket when the server is closed. (Contributed by Pierre Ossman " +"in :gh:`111246`.)" msgstr "" msgid "" @@ -896,9 +898,9 @@ msgid "" msgstr "" msgid "" -"Add :meth:`Queue.shutdown ` and :exc:`~asyncio." -"QueueShutDown` to manage queue termination. (Contributed by Laurie Opperman " -"and Yves Duprat in :gh:`104228`.)" +"Add :meth:`Queue.shutdown ` " +"and :exc:`~asyncio.QueueShutDown` to manage queue termination. (Contributed " +"by Laurie Opperman and Yves Duprat in :gh:`104228`.)" msgstr "" msgid "" @@ -909,8 +911,8 @@ msgstr "" msgid "" "Accept a tuple of separators in :meth:`.StreamReader.readuntil`, stopping " -"when any one of them is encountered. (Contributed by Bruce Merry in :gh:" -"`81322`.)" +"when any one of them is encountered. (Contributed by Bruce Merry " +"in :gh:`81322`.)" msgstr "" msgid "" @@ -923,9 +925,10 @@ msgstr "" msgid "" "In the case where a task group is cancelled externally and also must raise " -"an :exc:`ExceptionGroup`, it will now call the parent task's :meth:`~asyncio." -"Task.cancel` method. This ensures that a :exc:`~asyncio.CancelledError` will " -"be raised at the next :keyword:`await`, so the cancellation is not lost." +"an :exc:`ExceptionGroup`, it will now call the parent " +"task's :meth:`~asyncio.Task.cancel` method. This ensures that " +"a :exc:`~asyncio.CancelledError` will be raised at the " +"next :keyword:`await`, so the cancellation is not lost." msgstr "" msgid "" @@ -943,10 +946,11 @@ msgid "(Inspired by an issue reported by Arthur Tacca in :gh:`116720`.)" msgstr "" msgid "" -"When :meth:`.TaskGroup.create_task` is called on an inactive :class:" -"`~asyncio.TaskGroup`, the given coroutine will be closed (which prevents a :" -"exc:`RuntimeWarning` about the given coroutine being never awaited). " -"(Contributed by Arthur Tacca and Jason Zhang in :gh:`115957`.)" +"When :meth:`.TaskGroup.create_task` is called on an " +"inactive :class:`~asyncio.TaskGroup`, the given coroutine will be closed " +"(which prevents a :exc:`RuntimeWarning` about the given coroutine being " +"never awaited). (Contributed by Arthur Tacca and Jason Zhang " +"in :gh:`115957`.)" msgstr "" msgid "" @@ -961,9 +965,9 @@ msgid "" msgstr "" msgid "" -"This affects the following function and methods: :meth:`asyncio." -"create_task`, :meth:`asyncio.loop.create_task`, :meth:`asyncio.TaskGroup." -"create_task`. (Contributed by Thomas Grainger in :gh:`128307`.)" +"This affects the following function and " +"methods: :meth:`asyncio.create_task`, :meth:`asyncio.loop.create_task`, :meth:`asyncio.TaskGroup.create_task`. " +"(Contributed by Thomas Grainger in :gh:`128307`.)" msgstr "" msgid "base64" @@ -971,17 +975,17 @@ msgstr "" msgid "" "Add :func:`~base64.z85encode` and :func:`~base64.z85decode` functions for " -"encoding :class:`bytes` as `Z85 data`_ and decoding Z85-encoded data to :" -"class:`!bytes`. (Contributed by Matan Perelman in :gh:`75299`.)" +"encoding :class:`bytes` as `Z85 data`_ and decoding Z85-encoded data " +"to :class:`!bytes`. (Contributed by Matan Perelman in :gh:`75299`.)" msgstr "" msgid "compileall" msgstr "" msgid "" -"The default number of worker threads and processes is now selected using :" -"func:`os.process_cpu_count` instead of :func:`os.cpu_count`. (Contributed by " -"Victor Stinner in :gh:`109649`.)" +"The default number of worker threads and processes is now selected " +"using :func:`os.process_cpu_count` instead of :func:`os.cpu_count`. " +"(Contributed by Victor Stinner in :gh:`109649`.)" msgstr "" msgid "concurrent.futures" @@ -993,8 +997,8 @@ msgstr "" msgid "" ":class:`~configparser.ConfigParser` now has support for unnamed sections, " "which allows for top-level key-value pairs. This can be enabled with the new " -"*allow_unnamed_section* parameter. (Contributed by Pedro Sousa Lacerda in :" -"gh:`66449`.)" +"*allow_unnamed_section* parameter. (Contributed by Pedro Sousa Lacerda " +"in :gh:`66449`.)" msgstr "" msgid "copy" @@ -1014,8 +1018,7 @@ msgstr "" msgid ":class:`dataclasses.dataclass`" msgstr "" -msgid "" -":class:`datetime.datetime`, :class:`datetime.date`, :class:`datetime.time`" +msgid ":class:`datetime.datetime`, :class:`datetime.date`, :class:`datetime.time`" msgstr "" msgid ":class:`inspect.Signature`, :class:`inspect.Parameter`" @@ -1029,8 +1032,8 @@ msgstr "" msgid "" "Any user-defined class can also support :func:`copy.replace` by defining " -"the :meth:`~object.__replace__` method. (Contributed by Serhiy Storchaka in :" -"gh:`108751`.)" +"the :meth:`~object.__replace__` method. (Contributed by Serhiy Storchaka " +"in :gh:`108751`.)" msgstr "" msgid "ctypes" @@ -1059,10 +1062,10 @@ msgid "" msgstr "" msgid "" -":class:`ctypes.Structure` objects have a new :attr:`~ctypes.Structure." -"_align_` attribute which allows the alignment of the structure being packed " -"to/from memory to be specified explicitly. (Contributed by Matt Sanderson " -"in :gh:`112433`)" +":class:`ctypes.Structure` objects have a " +"new :attr:`~ctypes.Structure._align_` attribute which allows the alignment " +"of the structure being packed to/from memory to be specified explicitly. " +"(Contributed by Matt Sanderson in :gh:`112433`)" msgstr "" msgid "dbm" @@ -1092,10 +1095,10 @@ msgstr "" msgid "" ":meth:`~dis.get_instructions` no longer represents cache entries as separate " -"instructions. Instead, it returns them as part of the :class:`~dis." -"Instruction`, in the new *cache_info* field. The *show_caches* argument to :" -"meth:`~dis.get_instructions` is deprecated and no longer has any effect. " -"(Contributed by Irit Katriel in :gh:`112962`.)" +"instructions. Instead, it returns them as part of " +"the :class:`~dis.Instruction`, in the new *cache_info* field. The " +"*show_caches* argument to :meth:`~dis.get_instructions` is deprecated and no " +"longer has any effect. (Contributed by Irit Katriel in :gh:`112962`.)" msgstr "" msgid "doctest" @@ -1104,9 +1107,9 @@ msgstr "" msgid "" ":mod:`doctest` output is now colored by default. This can be controlled via " "the new :envvar:`PYTHON_COLORS` environment variable as well as the " -"canonical |NO_COLOR|_ and |FORCE_COLOR|_ environment variables. See also :" -"ref:`using-on-controlling-color`. (Contributed by Hugo van Kemenade in :gh:" -"`117225`.)" +"canonical |NO_COLOR|_ and |FORCE_COLOR|_ environment variables. See " +"also :ref:`using-on-controlling-color`. (Contributed by Hugo van Kemenade " +"in :gh:`117225`.)" msgstr "" msgid "" @@ -1119,12 +1122,13 @@ msgid "email" msgstr "" msgid "" -"Headers with embedded newlines are now quoted on output. The :mod:`~email." -"generator` will now refuse to serialize (write) headers that are improperly " -"folded or delimited, such that they would be parsed as multiple headers or " -"joined with adjacent data. If you need to turn this safety feature off, set :" -"attr:`~email.policy.Policy.verify_generated_headers`. (Contributed by Bas " -"Bloemsaat and Petr Viktorin in :gh:`121650`.)" +"Headers with embedded newlines are now quoted on output. " +"The :mod:`~email.generator` will now refuse to serialize (write) headers " +"that are improperly folded or delimited, such that they would be parsed as " +"multiple headers or joined with adjacent data. If you need to turn this " +"safety feature off, " +"set :attr:`~email.policy.Policy.verify_generated_headers`. (Contributed by " +"Bas Bloemsaat and Petr Viktorin in :gh:`121650`.)" msgstr "" msgid "" @@ -1132,18 +1136,18 @@ msgid "" "return ``('', '')`` pairs in more situations where invalid email addresses " "are encountered instead of potentially inaccurate values. The two functions " "have a new optional *strict* parameter (default ``True``). To get the old " -"behavior (accepting malformed input), use ``strict=False``. ``getattr(email." -"utils, 'supports_strict_parsing', False)`` can be used to check if the " -"*strict* parameter is available. (Contributed by Thomas Dwyer and Victor " -"Stinner for :gh:`102988` to improve the :cve:`2023-27043` fix.)" +"behavior (accepting malformed input), use ``strict=False``. " +"``getattr(email.utils, 'supports_strict_parsing', False)`` can be used to " +"check if the *strict* parameter is available. (Contributed by Thomas Dwyer " +"and Victor Stinner for :gh:`102988` to improve the :cve:`2023-27043` fix.)" msgstr "" msgid "enum" msgstr "" msgid "" -":class:`~enum.EnumDict` has been made public to better support subclassing :" -"class:`~enum.EnumType`." +":class:`~enum.EnumDict` has been made public to better support " +"subclassing :class:`~enum.EnumType`." msgstr "" msgid "fractions" @@ -1152,8 +1156,8 @@ msgstr "" msgid "" ":class:`~fractions.Fraction` objects now support the standard :ref:`format " "specification mini-language ` rules for fill, alignment, sign " -"handling, minimum width, and grouping. (Contributed by Mark Dickinson in :gh:" -"`111320`.)" +"handling, minimum width, and grouping. (Contributed by Mark Dickinson " +"in :gh:`111320`.)" msgstr "" msgid "glob" @@ -1201,19 +1205,19 @@ msgstr "" msgid "" ":func:`~importlib.resources.contents` remains deprecated in favor of the " "fully-featured :class:`~importlib.resources.abc.Traversable` API. However, " -"there is now no plan to remove it. (Contributed by Petr Viktorin in :gh:" -"`116608`.)" +"there is now no plan to remove it. (Contributed by Petr Viktorin " +"in :gh:`116608`.)" msgstr "" msgid "io" msgstr "" msgid "" -"The :class:`~io.IOBase` finalizer now logs any errors raised by the :meth:" -"`~io.IOBase.close` method with :data:`sys.unraisablehook`. Previously, " -"errors were ignored silently by default, and only logged in :ref:`Python " -"Development Mode ` or when using a :ref:`Python debug build `. (Contributed by Victor Stinner in :gh:`62948`.)" +"The :class:`~io.IOBase` finalizer now logs any errors raised by " +"the :meth:`~io.IOBase.close` method with :data:`sys.unraisablehook`. " +"Previously, errors were ignored silently by default, and only logged " +"in :ref:`Python Development Mode ` or when using a :ref:`Python " +"debug build `. (Contributed by Victor Stinner in :gh:`62948`.)" msgstr "" msgid "ipaddress" @@ -1225,19 +1229,19 @@ msgid "" msgstr "" msgid "" -"Fix ``is_global`` and ``is_private`` behavior in :class:`~ipaddress." -"IPv4Address`, :class:`~ipaddress.IPv6Address`, :class:`~ipaddress." -"IPv4Network`, and :class:`~ipaddress.IPv6Network`. (Contributed by Jakub " -"Stasiak in :gh:`113171`.)" +"Fix ``is_global`` and ``is_private`` behavior " +"in :class:`~ipaddress.IPv4Address`, :class:`~ipaddress.IPv6Address`, :class:`~ipaddress.IPv4Network`, " +"and :class:`~ipaddress.IPv6Network`. (Contributed by Jakub Stasiak " +"in :gh:`113171`.)" msgstr "" msgid "itertools" msgstr "" msgid "" -":func:`~itertools.batched` has a new *strict* parameter, which raises a :exc:" -"`ValueError` if the final batch is shorter than the specified batch size. " -"(Contributed by Raymond Hettinger in :gh:`113202`.)" +":func:`~itertools.batched` has a new *strict* parameter, which raises " +"a :exc:`ValueError` if the final batch is shorter than the specified batch " +"size. (Contributed by Raymond Hettinger in :gh:`113202`.)" msgstr "" msgid "marshal" @@ -1268,8 +1272,8 @@ msgstr "" msgid "" "Add the :func:`~mimetypes.guess_file_type` function to guess a MIME type " "from a filesystem path. Using paths with :func:`~mimetypes.guess_type` is " -"now :term:`soft deprecated`. (Contributed by Serhiy Storchaka in :gh:" -"`66543`.)" +"now :term:`soft deprecated`. (Contributed by Serhiy Storchaka " +"in :gh:`66543`.)" msgstr "" msgid "mmap" @@ -1283,16 +1287,16 @@ msgstr "" msgid "" ":class:`~mmap.mmap` has a new :meth:`~mmap.mmap.seekable` method that can be " -"used when a seekable file-like object is required. The :meth:`~mmap.mmap." -"seek` method now returns the new absolute position. (Contributed by Donghee " -"Na and Sylvie Liberman in :gh:`111835`.)" +"used when a seekable file-like object is required. " +"The :meth:`~mmap.mmap.seek` method now returns the new absolute position. " +"(Contributed by Donghee Na and Sylvie Liberman in :gh:`111835`.)" msgstr "" msgid "" "The new UNIX-only *trackfd* parameter for :class:`~mmap.mmap` controls file " "descriptor duplication; if false, the file descriptor specified by *fileno* " -"will not be duplicated. (Contributed by Zackery Spytz and Petr Viktorin in :" -"gh:`78502`.)" +"will not be duplicated. (Contributed by Zackery Spytz and Petr Viktorin " +"in :gh:`78502`.)" msgstr "" msgid "multiprocessing" @@ -1318,10 +1322,8 @@ msgstr "" msgid "" "Add a :ref:`low level interface ` to Linux's :manpage:`timer " -"file descriptors ` via :func:`~os.timerfd_create`, :func:" -"`~os.timerfd_settime`, :func:`~os.timerfd_settime_ns`, :func:`~os." -"timerfd_gettime`, :func:`~os.timerfd_gettime_ns`, :const:`~os." -"TFD_NONBLOCK`, :const:`~os.TFD_CLOEXEC`, :const:`~os.TFD_TIMER_ABSTIME`, " +"file descriptors ` " +"via :func:`~os.timerfd_create`, :func:`~os.timerfd_settime`, :func:`~os.timerfd_settime_ns`, :func:`~os.timerfd_gettime`, :func:`~os.timerfd_gettime_ns`, :const:`~os.TFD_NONBLOCK`, :const:`~os.TFD_CLOEXEC`, :const:`~os.TFD_TIMER_ABSTIME`, " "and :const:`~os.TFD_TIMER_CANCEL_ON_SET` (Contributed by Masaru Tsuchiyama " "in :gh:`108277`.)" msgstr "" @@ -1335,16 +1337,16 @@ msgstr "" msgid "" ":func:`~os.fchmod` and support for file descriptors in :func:`~os.chmod` are " -"both now available on Windows. (Contributed by Serhiy Storchaka in :gh:" -"`113191`.)" +"both now available on Windows. (Contributed by Serhiy Storchaka " +"in :gh:`113191`.)" msgstr "" msgid "" "On Windows, :func:`~os.mkdir` and :func:`~os.makedirs` now support passing a " "*mode* value of ``0o700`` to apply access control to the new directory. This " -"implicitly affects :func:`tempfile.mkdtemp` and is a mitigation for :cve:" -"`2024-4030`. Other values for *mode* continue to be ignored. (Contributed by " -"Steve Dower in :gh:`118486`.)" +"implicitly affects :func:`tempfile.mkdtemp` and is a mitigation " +"for :cve:`2024-4030`. Other values for *mode* continue to be ignored. " +"(Contributed by Steve Dower in :gh:`118486`.)" msgstr "" msgid "" @@ -1355,9 +1357,9 @@ msgstr "" msgid "" ":func:`~os.posix_spawn` can now use the :const:`~os.POSIX_SPAWN_CLOSEFROM` " -"attribute in the *file_actions* parameter on platforms that support :c:func:" -"`!posix_spawn_file_actions_addclosefrom_np`. (Contributed by Jakub Kulik in :" -"gh:`113117`.)" +"attribute in the *file_actions* parameter on platforms that " +"support :c:func:`!posix_spawn_file_actions_addclosefrom_np`. (Contributed by " +"Jakub Kulik in :gh:`113117`.)" msgstr "" msgid "os.path" @@ -1384,9 +1386,9 @@ msgid "pathlib" msgstr "" msgid "" -"Add :exc:`~pathlib.UnsupportedOperation`, which is raised instead of :exc:" -"`NotImplementedError` when a path operation isn't supported. (Contributed by " -"Barney Gale in :gh:`89812`.)" +"Add :exc:`~pathlib.UnsupportedOperation`, which is raised instead " +"of :exc:`NotImplementedError` when a path operation isn't supported. " +"(Contributed by Barney Gale in :gh:`89812`.)" msgstr "" msgid "" @@ -1408,8 +1410,8 @@ msgid "" msgstr "" msgid "" -"Add *recurse_symlinks* keyword-only argument to :meth:`.Path.glob` and :meth:" -"`~pathlib.Path.rglob`. (Contributed by Barney Gale in :gh:`77609`.)" +"Add *recurse_symlinks* keyword-only argument to :meth:`.Path.glob` " +"and :meth:`~pathlib.Path.rglob`. (Contributed by Barney Gale in :gh:`77609`.)" msgstr "" msgid "" @@ -1420,9 +1422,9 @@ msgstr "" msgid "" "Add the *follow_symlinks* keyword-only argument to :meth:`Path.is_file " -"`, :meth:`Path.is_dir `, :meth:`." -"Path.owner`, and :meth:`.Path.group`. (Contributed by Barney Gale in :gh:" -"`105793` and Kamil Turek in :gh:`107962`.)" +"`, :meth:`Path.is_dir " +"`, :meth:`.Path.owner`, and :meth:`.Path.group`. " +"(Contributed by Barney Gale in :gh:`105793` and Kamil Turek in :gh:`107962`.)" msgstr "" msgid "pdb" @@ -1450,8 +1452,8 @@ msgstr "" msgid "" "Add ability to move between chained exceptions during post-mortem debugging " "in :func:`~pdb.pm` using the new :pdbcmd:`exceptions [exc_number] " -"` command for Pdb. (Contributed by Matthias Bussonnier in :gh:" -"`106676`.)" +"` command for Pdb. (Contributed by Matthias Bussonnier " +"in :gh:`106676`.)" msgstr "" msgid "" @@ -1480,25 +1482,26 @@ msgid "re" msgstr "" msgid "" -"Rename :exc:`!re.error` to :exc:`~re.PatternError` for improved clarity. :" -"exc:`!re.error` is kept for backward compatibility." +"Rename :exc:`!re.error` to :exc:`~re.PatternError` for improved " +"clarity. :exc:`!re.error` is kept for backward compatibility." msgstr "" msgid "shutil" msgstr "" msgid "" -"Support the *dir_fd* and *follow_symlinks* keyword arguments in :func:" -"`~shutil.chown`. (Contributed by Berker Peksag and Tahia K in :gh:`62308`)" +"Support the *dir_fd* and *follow_symlinks* keyword arguments " +"in :func:`~shutil.chown`. (Contributed by Berker Peksag and Tahia K " +"in :gh:`62308`)" msgstr "" msgid "site" msgstr "" msgid "" -":file:`.pth` files are now decoded using UTF-8 first, and then with the :" -"term:`locale encoding` if UTF-8 decoding fails. (Contributed by Inada Naoki " -"in :gh:`117802`.)" +":file:`.pth` files are now decoded using UTF-8 first, and then with " +"the :term:`locale encoding` if UTF-8 decoding fails. (Contributed by Inada " +"Naoki in :gh:`117802`.)" msgstr "" msgid "sqlite3" @@ -1512,17 +1515,17 @@ msgstr "" msgid "" "Add the *filter* keyword-only parameter to :meth:`.Connection.iterdump` for " -"filtering database objects to dump. (Contributed by Mariusz Felisiak in :gh:" -"`91602`.)" +"filtering database objects to dump. (Contributed by Mariusz Felisiak " +"in :gh:`91602`.)" msgstr "" msgid "ssl" msgstr "" msgid "" -"The :func:`~ssl.create_default_context` API now includes :data:`~ssl." -"VERIFY_X509_PARTIAL_CHAIN` and :data:`~ssl.VERIFY_X509_STRICT` in its " -"default flags." +"The :func:`~ssl.create_default_context` API now " +"includes :data:`~ssl.VERIFY_X509_PARTIAL_CHAIN` " +"and :data:`~ssl.VERIFY_X509_STRICT` in its default flags." msgstr "" msgid "" @@ -1547,8 +1550,8 @@ msgstr "" msgid "" "Add :func:`~statistics.kde` for kernel density estimation. This makes it " "possible to estimate a continuous probability density function from a fixed " -"number of discrete samples. (Contributed by Raymond Hettinger in :gh:" -"`115863`.)" +"number of discrete samples. (Contributed by Raymond Hettinger " +"in :gh:`115863`.)" msgstr "" msgid "" @@ -1575,11 +1578,11 @@ msgstr "" msgid "" "A private control knob :attr:`!subprocess._USE_POSIX_SPAWN` can be set to " -"``False`` if you need to force :mod:`subprocess` to never use :func:`~os." -"posix_spawn`. Please report your reason and platform details in the :ref:" -"`issue tracker ` if you set this so that we can improve " -"our API selection logic for everyone. (Contributed by Jakub Kulik in :gh:" -"`113117`.)" +"``False`` if you need to force :mod:`subprocess` to never " +"use :func:`~os.posix_spawn`. Please report your reason and platform details " +"in the :ref:`issue tracker ` if you set this so that we " +"can improve our API selection logic for everyone. (Contributed by Jakub " +"Kulik in :gh:`113117`.)" msgstr "" msgid "sys" @@ -1597,8 +1600,8 @@ msgstr "" msgid "" "On Windows, the default mode ``0o700`` used by :func:`tempfile.mkdtemp` now " "limits access to the new directory due to changes to :func:`os.mkdir`. This " -"is a mitigation for :cve:`2024-4030`. (Contributed by Steve Dower in :gh:" -"`118486`.)" +"is a mitigation for :cve:`2024-4030`. (Contributed by Steve Dower " +"in :gh:`118486`.)" msgstr "" msgid "time" @@ -1615,8 +1618,8 @@ msgid "" "On Windows, :func:`~time.time` now uses the " "``GetSystemTimePreciseAsFileTime()`` clock for a resolution of 1 " "microsecond, instead of the ``GetSystemTimeAsFileTime()`` clock which has a " -"resolution of 15.6 milliseconds. (Contributed by Victor Stinner in :gh:" -"`63207`.)" +"resolution of 15.6 milliseconds. (Contributed by Victor Stinner " +"in :gh:`63207`.)" msgstr "" msgid "tkinter" @@ -1633,8 +1636,9 @@ msgid "" "The :mod:`tkinter` widget method :meth:`!wm_attributes` now accepts the " "attribute name without the minus prefix to get window attributes, for " "example ``w.wm_attributes('alpha')`` and allows specifying attributes and " -"values to set as keyword arguments, for example ``w." -"wm_attributes(alpha=0.5)``. (Contributed by Serhiy Storchaka in :gh:`43457`.)" +"values to set as keyword arguments, for example " +"``w.wm_attributes(alpha=0.5)``. (Contributed by Serhiy Storchaka " +"in :gh:`43457`.)" msgstr "" msgid "" @@ -1651,9 +1655,10 @@ msgid "" msgstr "" msgid "" -"Support the \"vsapi\" element type in the :meth:`~tkinter.ttk.Style." -"element_create` method of :class:`tkinter.ttk.Style`. (Contributed by Serhiy " -"Storchaka in :gh:`68166`.)" +"Support the \"vsapi\" element type in " +"the :meth:`~tkinter.ttk.Style.element_create` method " +"of :class:`tkinter.ttk.Style`. (Contributed by Serhiy Storchaka " +"in :gh:`68166`.)" msgstr "" msgid "" @@ -1685,19 +1690,19 @@ msgid "traceback" msgstr "" msgid "" -"Add the :attr:`~traceback.TracebackException.exc_type_str` attribute to :" -"class:`~traceback.TracebackException`, which holds a string display of the " -"*exc_type*. Deprecate the :attr:`~traceback.TracebackException.exc_type` " +"Add the :attr:`~traceback.TracebackException.exc_type_str` attribute " +"to :class:`~traceback.TracebackException`, which holds a string display of " +"the *exc_type*. Deprecate the :attr:`~traceback.TracebackException.exc_type` " "attribute, which holds the type object itself. Add parameter *save_exc_type* " "(default ``True``) to indicate whether ``exc_type`` should be saved. " "(Contributed by Irit Katriel in :gh:`112332`.)" msgstr "" msgid "" -"Add a new *show_group* keyword-only parameter to :meth:`.TracebackException." -"format_exception_only` to (recursively) format the nested exceptions of a :" -"exc:`BaseExceptionGroup` instance. (Contributed by Irit Katriel in :gh:" -"`105292`.)" +"Add a new *show_group* keyword-only parameter " +"to :meth:`.TracebackException.format_exception_only` to (recursively) format " +"the nested exceptions of a :exc:`BaseExceptionGroup` instance. (Contributed " +"by Irit Katriel in :gh:`105292`.)" msgstr "" msgid "types" @@ -1706,8 +1711,8 @@ msgstr "" msgid "" ":class:`~types.SimpleNamespace` can now take a single positional argument to " "initialise the namespace's arguments. This argument must either be a mapping " -"or an iterable of key-value pairs. (Contributed by Serhiy Storchaka in :gh:" -"`108191`.)" +"or an iterable of key-value pairs. (Contributed by Serhiy Storchaka " +"in :gh:`108191`.)" msgstr "" msgid "typing" @@ -1731,13 +1736,13 @@ msgstr "" msgid "" "Add :func:`~typing.get_protocol_members` to return the set of members " -"defining a :class:`typing.Protocol`. (Contributed by Jelle Zijlstra in :gh:" -"`104873`.)" +"defining a :class:`typing.Protocol`. (Contributed by Jelle Zijlstra " +"in :gh:`104873`.)" msgstr "" msgid "" -"Add :func:`~typing.is_protocol` to check whether a class is a :class:" -"`~typing.Protocol`. (Contributed by Jelle Zijlstra in :gh:`104873`.)" +"Add :func:`~typing.is_protocol` to check whether a class is " +"a :class:`~typing.Protocol`. (Contributed by Jelle Zijlstra in :gh:`104873`.)" msgstr "" msgid "" @@ -1803,9 +1808,9 @@ msgid "(Contributed by Sebastian Pipping in :gh:`115623`.)" msgstr "" msgid "" -"Add the :meth:`!close` method for the iterator returned by :func:`~xml.etree." -"ElementTree.iterparse` for explicit cleanup. (Contributed by Serhiy " -"Storchaka in :gh:`69893`.)" +"Add the :meth:`!close` method for the iterator returned " +"by :func:`~xml.etree.ElementTree.iterparse` for explicit cleanup. " +"(Contributed by Serhiy Storchaka in :gh:`69893`.)" msgstr "" msgid "zipimport" @@ -1822,9 +1827,9 @@ msgstr "" msgid "" "Several standard library modules have had their import times significantly " "improved. For example, the import time of the :mod:`typing` module has been " -"reduced by around a third by removing dependencies on :mod:`re` and :mod:" -"`contextlib`. Other modules to enjoy import-time speedups include :mod:" -"`email.utils`, :mod:`enum`, :mod:`functools`, :mod:`importlib.metadata`, " +"reduced by around a third by removing dependencies on :mod:`re` " +"and :mod:`contextlib`. Other modules to enjoy import-time speedups " +"include :mod:`email.utils`, :mod:`enum`, :mod:`functools`, :mod:`importlib.metadata`, " "and :mod:`threading`. (Contributed by Alex Waygood, Shantanu Jain, Adam " "Turner, Daniel Hollas, and others in :gh:`109653`.)" msgstr "" @@ -1881,23 +1886,23 @@ msgid ":mod:`!cgi` and :mod:`!cgitb`" msgstr "" msgid "" -":class:`!cgi.FieldStorage` can typically be replaced with :func:`urllib." -"parse.parse_qsl` for ``GET`` and ``HEAD`` requests, and the :mod:`email." -"message` module or the :pypi:`multipart` library for ``POST`` and ``PUT`` " -"requests." +":class:`!cgi.FieldStorage` can typically be replaced " +"with :func:`urllib.parse.parse_qsl` for ``GET`` and ``HEAD`` requests, and " +"the :mod:`email.message` module or the :pypi:`multipart` library for " +"``POST`` and ``PUT`` requests." msgstr "" msgid "" ":func:`!cgi.parse` can be replaced by calling :func:`urllib.parse.parse_qs` " "directly on the desired query string, unless the input is ``multipart/form-" -"data``, which should be replaced as described below for :func:`!cgi." -"parse_multipart`." +"data``, which should be replaced as described below for :func:`!" +"cgi.parse_multipart`." msgstr "" msgid "" -":func:`!cgi.parse_header` can be replaced with the functionality in the :mod:" -"`email` package, which implements the same MIME RFCs. For example, with :" -"class:`email.message.EmailMessage`:" +":func:`!cgi.parse_header` can be replaced with the functionality in " +"the :mod:`email` package, which implements the same MIME RFCs. For example, " +"with :class:`email.message.EmailMessage`:" msgstr "" msgid "" @@ -1909,10 +1914,11 @@ msgid "" msgstr "" msgid "" -":func:`!cgi.parse_multipart` can be replaced with the functionality in the :" -"mod:`email` package, which implements the same MIME RFCs, or with the :pypi:" -"`multipart` library. For example, the :class:`email.message.EmailMessage` " -"and :class:`email.message.Message` classes." +":func:`!cgi.parse_multipart` can be replaced with the functionality in " +"the :mod:`email` package, which implements the same MIME RFCs, or with " +"the :pypi:`multipart` library. For example, " +"the :class:`email.message.EmailMessage` and :class:`email.message.Message` " +"classes." msgstr "" msgid "" @@ -1939,8 +1945,8 @@ msgid "" msgstr "" msgid "" -":pypi:`crypt_r`: Fork of the :mod:`!crypt` module, wrapper to the :manpage:" -"`crypt_r(3)` library call and associated functionality." +":pypi:`crypt_r`: Fork of the :mod:`!crypt` module, wrapper to " +"the :manpage:`crypt_r(3)` library call and associated functionality." msgstr "" msgid "" @@ -1989,8 +1995,8 @@ msgid "" msgstr "" msgid "" -":mod:`!pipes`: Use the :mod:`subprocess` module instead. Use :func:`shlex." -"quote` to replace the undocumented ``pipes.quote`` function." +":mod:`!pipes`: Use the :mod:`subprocess` module instead. " +"Use :func:`shlex.quote` to replace the undocumented ``pipes.quote`` function." msgstr "" msgid "" @@ -2046,8 +2052,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Victor Stinner and Zachary Ware in :gh:`104773` and :gh:" -"`104780`.)" +"(Contributed by Victor Stinner and Zachary Ware in :gh:`104773` " +"and :gh:`104780`.)" msgstr "" msgid "2to3" @@ -2055,17 +2061,17 @@ msgstr "" msgid "" "Remove the :program:`2to3` program and the :mod:`!lib2to3` module, " -"previously deprecated in Python 3.11. (Contributed by Victor Stinner in :gh:" -"`104780`.)" +"previously deprecated in Python 3.11. (Contributed by Victor Stinner " +"in :gh:`104780`.)" msgstr "" msgid "builtins" msgstr "" msgid "" -"Remove support for chained :class:`classmethod` descriptors (introduced in :" -"gh:`63272`). These can no longer be used to wrap other descriptors, such as :" -"class:`property`. The core design of this feature was flawed and led to " +"Remove support for chained :class:`classmethod` descriptors (introduced " +"in :gh:`63272`). These can no longer be used to wrap other descriptors, such " +"as :class:`property`. The core design of this feature was flawed and led to " "several problems. To \"pass-through\" a :class:`classmethod`, consider using " "the :attr:`!__wrapped__` attribute that was added in Python 3.10. " "(Contributed by Raymond Hettinger in :gh:`89519`.)" @@ -2087,9 +2093,9 @@ msgid "importlib.metadata" msgstr "" msgid "" -"Remove deprecated subscript (:meth:`~object.__getitem__`) access for :ref:" -"`EntryPoint ` objects. (Contributed by Jason R. Coombs in :gh:" -"`113175`.)" +"Remove deprecated subscript (:meth:`~object.__getitem__`) access " +"for :ref:`EntryPoint ` objects. (Contributed by Jason R. " +"Coombs in :gh:`113175`.)" msgstr "" msgid "locale" @@ -2105,29 +2111,30 @@ msgid "opcode" msgstr "" msgid "" -"Move :attr:`!opcode.ENABLE_SPECIALIZATION` to :attr:`!_opcode." -"ENABLE_SPECIALIZATION`. This field was added in 3.12, it was never " +"Move :attr:`!opcode.ENABLE_SPECIALIZATION` to :attr:`!" +"_opcode.ENABLE_SPECIALIZATION`. This field was added in 3.12, it was never " "documented, and is not intended for external use. (Contributed by Irit " "Katriel in :gh:`105481`.)" msgstr "" msgid "" -"Remove :func:`!opcode.is_pseudo`, :attr:`!opcode.MIN_PSEUDO_OPCODE`, and :" -"attr:`!opcode.MAX_PSEUDO_OPCODE`, which were added in Python 3.12, but were " -"neither documented nor exposed through :mod:`dis`, and were not intended to " -"be used externally. (Contributed by Irit Katriel in :gh:`105481`.)" +"Remove :func:`!opcode.is_pseudo`, :attr:`!opcode.MIN_PSEUDO_OPCODE`, " +"and :attr:`!opcode.MAX_PSEUDO_OPCODE`, which were added in Python 3.12, but " +"were neither documented nor exposed through :mod:`dis`, and were not " +"intended to be used externally. (Contributed by Irit Katriel " +"in :gh:`105481`.)" msgstr "" msgid "optparse" msgstr "" msgid "" -"This module is no longer considered :term:`soft deprecated`. While :mod:" -"`argparse` remains preferred for new projects that aren't using a third " -"party command line argument processing library, there are aspects of the way " -"``argparse`` works that mean the lower level ``optparse`` module may provide " -"a better foundation for *writing* argument processing libraries, and for " -"implementing command line applications which adhere more strictly than " +"This module is no longer considered :term:`soft deprecated`. " +"While :mod:`argparse` remains preferred for new projects that aren't using a " +"third party command line argument processing library, there are aspects of " +"the way ``argparse`` works that mean the lower level ``optparse`` module may " +"provide a better foundation for *writing* argument processing libraries, and " +"for implementing command line applications which adhere more strictly than " "``argparse`` does to various Unix command line processing conventions that " "originate in the behaviour of the C :c:func:`!getopt` function . " "(Contributed by Alyssa Coghlan and Serhiy Storchaka in :gh:`126180`.)" @@ -2166,14 +2173,14 @@ msgstr "" msgid "" "Remove the :mod:`!typing.io` and :mod:`!typing.re` namespaces, deprecated " "since Python 3.8. The items in those namespaces can be imported directly " -"from the :mod:`typing` module. (Contributed by Sebastian Rittau in :gh:" -"`92871`.)" +"from the :mod:`typing` module. (Contributed by Sebastian Rittau " +"in :gh:`92871`.)" msgstr "" msgid "" "Remove the keyword-argument method of creating :class:`~typing.TypedDict` " -"types, deprecated in Python 3.11. (Contributed by Tomas Roun in :gh:" -"`104786`.)" +"types, deprecated in Python 3.11. (Contributed by Tomas Roun " +"in :gh:`104786`.)" msgstr "" msgid "unittest" @@ -2209,21 +2216,21 @@ msgstr "" msgid "" "Remove the untested and undocumented :meth:`!TestProgram.usageExit` method, " -"deprecated in Python 3.11. (Contributed by Hugo van Kemenade in :gh:" -"`104992`.)" +"deprecated in Python 3.11. (Contributed by Hugo van Kemenade " +"in :gh:`104992`.)" msgstr "" msgid "urllib" msgstr "" msgid "" -"Remove the *cafile*, *capath*, and *cadefault* parameters of the :func:" -"`urllib.request.urlopen` function, deprecated in Python 3.6. Use the " -"*context* parameter instead with an :class:`~ssl.SSLContext` instance. The :" -"meth:`ssl.SSLContext.load_cert_chain` function can be used to load specific " -"certificates, or let :func:`ssl.create_default_context` select the operating " -"system's trusted certificate authority (CA) certificates. (Contributed by " -"Victor Stinner in :gh:`105382`.)" +"Remove the *cafile*, *capath*, and *cadefault* parameters of " +"the :func:`urllib.request.urlopen` function, deprecated in Python 3.6. Use " +"the *context* parameter instead with an :class:`~ssl.SSLContext` instance. " +"The :meth:`ssl.SSLContext.load_verify_locations` method can be used to load " +"specific CA certificates, or let :func:`ssl.create_default_context` select " +"the operating system's trusted certificate authority (CA) certificates. " +"(Contributed by Victor Stinner in :gh:`105382`.)" msgstr "" msgid "webbrowser" @@ -2236,9 +2243,9 @@ msgid "" msgstr "" msgid "" -"Remove the deprecated :attr:`!MacOSXOSAScript._name` attribute. Use the :" -"attr:`MacOSXOSAScript.name ` attribute instead. " -"(Contributed by Nikita Sobolev in :gh:`105546`.)" +"Remove the deprecated :attr:`!MacOSXOSAScript._name` attribute. Use " +"the :attr:`MacOSXOSAScript.name ` attribute " +"instead. (Contributed by Nikita Sobolev in :gh:`105546`.)" msgstr "" msgid "New Deprecations" @@ -2261,8 +2268,8 @@ msgid "" "Deprecate the ``'u'`` format code (:c:type:`wchar_t`) at runtime. This " "format code has been deprecated in documentation since Python 3.3, and will " "be removed in Python 3.16. Use the ``'w'`` format code (:c:type:`Py_UCS4`) " -"for Unicode characters instead. (Contributed by Hugo van Kemenade in :gh:" -"`80480`.)" +"for Unicode characters instead. (Contributed by Hugo van Kemenade " +"in :gh:`80480`.)" msgstr "" msgid ":mod:`ctypes`:" @@ -2293,8 +2300,9 @@ msgid ":mod:`dis`:" msgstr "" msgid "" -"Deprecate the :attr:`!HAVE_ARGUMENT` separator. Check membership in :data:" -"`~dis.hasarg` instead. (Contributed by Irit Katriel in :gh:`109319`.)" +"Deprecate the :attr:`!HAVE_ARGUMENT` separator. Check membership " +"in :data:`~dis.hasarg` instead. (Contributed by Irit Katriel " +"in :gh:`109319`.)" msgstr "" msgid ":mod:`gettext`:" @@ -2310,10 +2318,10 @@ msgid ":mod:`glob`:" msgstr "" msgid "" -"Deprecate the undocumented :func:`!glob0` and :func:`!glob1` functions. Use :" -"func:`~glob.glob` and pass a :term:`path-like object` specifying the root " -"directory to the *root_dir* parameter instead. (Contributed by Barney Gale " -"in :gh:`117337`.)" +"Deprecate the undocumented :func:`!glob0` and :func:`!glob1` functions. " +"Use :func:`~glob.glob` and pass a :term:`path-like object` specifying the " +"root directory to the *root_dir* parameter instead. (Contributed by Barney " +"Gale in :gh:`117337`.)" msgstr "" msgid ":mod:`http.server`:" @@ -2337,9 +2345,9 @@ msgid ":mod:`mimetypes`:" msgstr "" msgid "" -":term:`Soft-deprecate ` file path arguments to :func:" -"`~mimetypes.guess_type`, use :func:`~mimetypes.guess_file_type` instead. " -"(Contributed by Serhiy Storchaka in :gh:`66543`.)" +":term:`Soft-deprecate ` file path arguments " +"to :func:`~mimetypes.guess_type`, use :func:`~mimetypes.guess_file_type` " +"instead. (Contributed by Serhiy Storchaka in :gh:`66543`.)" msgstr "" msgid ":mod:`re`:" @@ -2357,9 +2365,9 @@ msgid ":mod:`pathlib`:" msgstr "" msgid "" -"Deprecate :meth:`!.PurePath.is_reserved`, to be removed in Python 3.15. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows. (Contributed " -"by Barney Gale in :gh:`88569`.)" +"Deprecate :meth:`!.PurePath.is_reserved`, to be removed in Python 3.15. " +"Use :func:`os.path.isreserved` to detect reserved paths on Windows. " +"(Contributed by Barney Gale in :gh:`88569`.)" msgstr "" msgid ":mod:`platform`:" @@ -2383,26 +2391,26 @@ msgid ":mod:`sqlite3`:" msgstr "" msgid "" -"Deprecate passing more than one positional argument to the :func:`~sqlite3." -"connect` function and the :class:`~sqlite3.Connection` constructor. The " -"remaining parameters will become keyword-only in Python 3.15. (Contributed " -"by Erlend E. Aasland in :gh:`107948`.)" +"Deprecate passing more than one positional argument to " +"the :func:`~sqlite3.connect` function and the :class:`~sqlite3.Connection` " +"constructor. The remaining parameters will become keyword-only in Python " +"3.15. (Contributed by Erlend E. Aasland in :gh:`107948`.)" msgstr "" msgid "" "Deprecate passing name, number of arguments, and the callable as keyword " -"arguments for :meth:`.Connection.create_function` and :meth:`.Connection." -"create_aggregate` These parameters will become positional-only in Python " -"3.15. (Contributed by Erlend E. Aasland in :gh:`108278`.)" +"arguments for :meth:`.Connection.create_function` " +"and :meth:`.Connection.create_aggregate` These parameters will become " +"positional-only in Python 3.15. (Contributed by Erlend E. Aasland " +"in :gh:`108278`.)" msgstr "" msgid "" -"Deprecate passing the callback callable by keyword for the :meth:`~sqlite3." -"Connection.set_authorizer`, :meth:`~sqlite3.Connection." -"set_progress_handler`, and :meth:`~sqlite3.Connection.set_trace_callback` :" -"class:`~sqlite3.Connection` methods. The callback callables will become " -"positional-only in Python 3.15. (Contributed by Erlend E. Aasland in :gh:" -"`108278`.)" +"Deprecate passing the callback callable by keyword for " +"the :meth:`~sqlite3.Connection.set_authorizer`, :meth:`~sqlite3.Connection.set_progress_handler`, " +"and :meth:`~sqlite3.Connection.set_trace_callback` :class:`~sqlite3.Connection` " +"methods. The callback callables will become positional-only in Python 3.15. " +"(Contributed by Erlend E. Aasland in :gh:`108278`.)" msgstr "" msgid ":mod:`sys`:" @@ -2426,30 +2434,31 @@ msgid ":mod:`traceback`:" msgstr "" msgid "" -"Deprecate the :attr:`.TracebackException.exc_type` attribute. Use :attr:`." -"TracebackException.exc_type_str` instead. (Contributed by Irit Katriel in :" -"gh:`112332`.)" +"Deprecate the :attr:`.TracebackException.exc_type` attribute. " +"Use :attr:`.TracebackException.exc_type_str` instead. (Contributed by Irit " +"Katriel in :gh:`112332`.)" msgstr "" msgid ":mod:`typing`:" msgstr "" msgid "" -"Deprecate the undocumented keyword argument syntax for creating :class:" -"`~typing.NamedTuple` classes (e.g. ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``), to be removed in Python 3.15. Use the class-based syntax or the " -"functional syntax instead. (Contributed by Alex Waygood in :gh:`105566`.)" +"Deprecate the undocumented keyword argument syntax for " +"creating :class:`~typing.NamedTuple` classes (e.g. ``Point = " +"NamedTuple(\"Point\", x=int, y=int)``), to be removed in Python 3.15. Use " +"the class-based syntax or the functional syntax instead. (Contributed by " +"Alex Waygood in :gh:`105566`.)" msgstr "" msgid "" -"Deprecate omitting the *fields* parameter when creating a :class:`~typing." -"NamedTuple` or :class:`typing.TypedDict` class, and deprecate passing " -"``None`` to the *fields* parameter of both types. Python 3.15 will require a " -"valid sequence for the *fields* parameter. To create a NamedTuple class with " -"zero fields, use ``class NT(NamedTuple): pass`` or ``NT = NamedTuple(\"NT\", " -"())``. To create a TypedDict class with zero fields, use ``class " -"TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", {})``. (Contributed by " -"Alex Waygood in :gh:`105566` and :gh:`105570`.)" +"Deprecate omitting the *fields* parameter when creating " +"a :class:`~typing.NamedTuple` or :class:`typing.TypedDict` class, and " +"deprecate passing ``None`` to the *fields* parameter of both types. Python " +"3.15 will require a valid sequence for the *fields* parameter. To create a " +"NamedTuple class with zero fields, use ``class NT(NamedTuple): pass`` or " +"``NT = NamedTuple(\"NT\", ())``. To create a TypedDict class with zero " +"fields, use ``class TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", {})``. " +"(Contributed by Alex Waygood in :gh:`105566` and :gh:`105570`.)" msgstr "" msgid "" @@ -2507,8 +2516,8 @@ msgid ":class:`!ast.Ellipsis`" msgstr "" msgid "" -"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka in :gh:" -"`90953`.)" +"Use :class:`ast.Constant` instead. (Contributed by Serhiy Storchaka " +"in :gh:`90953`.)" msgstr "" msgid ":mod:`asyncio`:" @@ -2516,14 +2525,15 @@ msgstr "" msgid "" "The child watcher classes :class:`!asyncio.MultiLoopChildWatcher`, :class:`!" -"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` and :class:" -"`!asyncio.SafeChildWatcher` are deprecated and will be removed in Python " -"3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" +"asyncio.FastChildWatcher`, :class:`!asyncio.AbstractChildWatcher` " +"and :class:`!asyncio.SafeChildWatcher` are deprecated and will be removed in " +"Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" msgid "" -":func:`!asyncio.set_child_watcher`, :func:`!asyncio.get_child_watcher`, :" -"meth:`!asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" +":func:`!asyncio.set_child_watcher`, :func:`!" +"asyncio.get_child_watcher`, :meth:`!" +"asyncio.AbstractEventLoopPolicy.set_child_watcher` and :meth:`!" "asyncio.AbstractEventLoopPolicy.get_child_watcher` are deprecated and will " "be removed in Python 3.14. (Contributed by Kumar Aditya in :gh:`94597`.)" msgstr "" @@ -2536,8 +2546,9 @@ msgid "" msgstr "" msgid "" -":mod:`email`: Deprecated the *isdst* parameter in :func:`email.utils." -"localtime`. (Contributed by Alan Williams in :gh:`72346`.)" +":mod:`email`: Deprecated the *isdst* parameter " +"in :func:`email.utils.localtime`. (Contributed by Alan Williams " +"in :gh:`72346`.)" msgstr "" msgid ":mod:`importlib.abc` deprecated classes:" @@ -2576,14 +2587,15 @@ msgid "" "on Linux, BSDs, and other non-macOS POSIX platforms where ``'fork'`` is " "currently the default (:gh:`84559`). Adding a runtime warning about this was " "deemed too disruptive as the majority of code is not expected to care. Use " -"the :func:`~multiprocessing.get_context` or :func:`~multiprocessing." -"set_start_method` APIs to explicitly specify when your code *requires* " -"``'fork'``. See :ref:`multiprocessing-start-methods`." +"the :func:`~multiprocessing.get_context` " +"or :func:`~multiprocessing.set_start_method` APIs to explicitly specify when " +"your code *requires* ``'fork'``. See :ref:`multiprocessing-start-methods`." msgstr "" msgid "" -":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` and :meth:`~pathlib." -"PurePath.relative_to`: passing additional arguments is deprecated." +":mod:`pathlib`: :meth:`~pathlib.PurePath.is_relative_to` " +"and :meth:`~pathlib.PurePath.relative_to`: passing additional arguments is " +"deprecated." msgstr "" msgid "" @@ -2605,15 +2617,15 @@ msgid ":data:`!version` and :data:`!version_info`." msgstr "" msgid "" -":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` if :" -"ref:`named placeholders ` are used and *parameters* is " -"a sequence instead of a :class:`dict`." +":meth:`~sqlite3.Cursor.execute` and :meth:`~sqlite3.Cursor.executemany` " +"if :ref:`named placeholders ` are used and " +"*parameters* is a sequence instead of a :class:`dict`." msgstr "" msgid "" ":mod:`urllib`: :class:`!urllib.parse.Quoter` is deprecated: it was not " -"intended to be a public API. (Contributed by Gregory P. Smith in :gh:" -"`88168`.)" +"intended to be a public API. (Contributed by Gregory P. Smith " +"in :gh:`88168`.)" msgstr "" msgid "Pending removal in Python 3.15" @@ -2623,17 +2635,18 @@ msgid "The import system:" msgstr "" msgid "" -"Setting ``__cached__`` on a module while failing to set :attr:`__spec__." -"cached ` is deprecated. In Python " -"3.15, ``__cached__`` will cease to be set or take into consideration by the " -"import system or standard library. (:gh:`97879`)" +"Setting ``__cached__`` on a module while failing to " +"set :attr:`__spec__.cached ` is " +"deprecated. In Python 3.15, ``__cached__`` will cease to be set or take into " +"consideration by the import system or standard library. (:gh:`97879`)" msgstr "" msgid "" -"Setting :attr:`~module.__package__` on a module while failing to set :attr:" -"`__spec__.parent ` is deprecated. In " -"Python 3.15, :attr:`!__package__` will cease to be set or take into " -"consideration by the import system or standard library. (:gh:`97879`)" +"Setting :attr:`~module.__package__` on a module while failing to " +"set :attr:`__spec__.parent ` is " +"deprecated. In Python 3.15, :attr:`!__package__` will cease to be set or " +"take into consideration by the import system or standard library. " +"(:gh:`97879`)" msgstr "" msgid "" @@ -2659,8 +2672,8 @@ msgid "``load_module()`` method: use ``exec_module()`` instead." msgstr "" msgid "" -":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows." +":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. " +"Use :func:`os.path.isreserved` to detect reserved paths on Windows." msgstr "" msgid "" @@ -2698,10 +2711,10 @@ msgid "" msgstr "" msgid "" -"The undocumented keyword argument syntax for creating :class:`~typing." -"NamedTuple` classes (for example, ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``) has been deprecated since Python 3.13. Use the class-based syntax " -"or the functional syntax instead." +"The undocumented keyword argument syntax for " +"creating :class:`~typing.NamedTuple` classes (for example, ``Point = " +"NamedTuple(\"Point\", x=int, y=int)``) has been deprecated since Python " +"3.13. Use the class-based syntax or the functional syntax instead." msgstr "" msgid "" @@ -2723,9 +2736,9 @@ msgid "" msgstr "" msgid "" -"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of the :class:" -"`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been deprecated " -"since Python 3.13." +"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of " +"the :class:`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been " +"deprecated since Python 3.13." msgstr "" msgid ":mod:`zipimport`:" @@ -2740,10 +2753,10 @@ msgid "Pending removal in Python 3.16" msgstr "" msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." +"Setting :attr:`~module.__loader__` on a module while failing to " +"set :attr:`__spec__.loader ` is " +"deprecated. In Python 3.16, :attr:`!__loader__` will cease to be set or " +"taken into consideration by the import system or the standard library." msgstr "" msgid "" @@ -2831,10 +2844,10 @@ msgid "" msgstr "" msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" +"Valid extensions start with a '.' or are empty " +"for :meth:`mimetypes.MimeTypes.add_type`. Undotted extensions are deprecated " +"and will raise a :exc:`ValueError` in Python 3.16. (Contributed by Hugo van " +"Kemenade in :gh:`75223`.)" msgstr "" msgid ":mod:`shutil`:" @@ -2927,9 +2940,9 @@ msgstr "" msgid "" "The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" +"Use :mod:`profiling.tracing` instead, which provides a compatible API. " +"See :pep:`799` for details. (Contributed by Pablo Galindo and László Kiss " +"Kollár in :gh:`138122`.)" msgstr "" msgid ":mod:`webbrowser`:" @@ -2959,10 +2972,11 @@ msgstr "" msgid "" "The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" +"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` " +"and :meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for " +"removal in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` " +"and :meth:`!trace_info` instead. (Contributed by Serhiy Storchaka " +"in :gh:`120220`.)" msgstr "" msgid "Pending removal in Python 3.18" @@ -2993,9 +3007,9 @@ msgid "Pending removal in Python 3.19" msgstr "" msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." +"Implicitly switching to the MSVC-compatible struct layout by " +"setting :attr:`~ctypes.Structure._pack_` but " +"not :attr:`~ctypes.Structure._layout_` on non-Windows platforms." msgstr "" msgid ":mod:`hashlib`:" @@ -3003,10 +3017,10 @@ msgstr "" msgid "" "In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." +"hash-named constructors such as :func:`~hashlib.md5` " +"and :func:`~hashlib.sha256`, their optional initial data parameter could " +"also be passed a keyword argument named ``data=`` or ``string=`` in " +"various :mod:`!hashlib` implementations." msgstr "" msgid "" @@ -3055,8 +3069,9 @@ msgstr "" msgid "" "Calling the ``__new__()`` method of :class:`struct.Struct` without the " "*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." +"Calling :meth:`~object.__init__` method on " +"initialized :class:`~struct.Struct` objects is deprecated and will be " +"removed in Python 3.20." msgstr "" msgid "" @@ -3157,8 +3172,8 @@ msgid ":mod:`ast`:" msgstr "" msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." +"Creating instances of abstract AST nodes (such as :class:`ast.AST` " +"or :class:`!ast.expr`) is deprecated and will raise an error in Python 3.20." msgstr "" msgid "" @@ -3187,8 +3202,8 @@ msgid "" msgstr "" msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." +"Passing the undocumented keyword argument *prefix_chars* " +"to :meth:`~argparse.ArgumentParser.add_argument_group` is now deprecated." msgstr "" msgid "The :class:`argparse.FileType` type converter is deprecated." @@ -3205,10 +3220,10 @@ msgid "" "for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " "ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " "``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" +"if the numeric literal is immediately followed by one of " +"keywords :keyword:`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :keyword:`is` " +"and :keyword:`or`. In a future release it will be changed to a syntax " +"error. (:gh:`87999`)" msgstr "" msgid "" @@ -3218,33 +3233,34 @@ msgid "" msgstr "" msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." +"Support for ``__float__()`` method returning a strict subclass " +"of :class:`float`: these methods will be required to return an instance " +"of :class:`float`." msgstr "" msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." +"Support for ``__complex__()`` method returning a strict subclass " +"of :class:`complex`: these methods will be required to return an instance " +"of :class:`complex`." msgstr "" msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" +"Passing a complex number as the *real* or *imag* argument in " +"the :func:`complex` constructor is now deprecated; it should only be passed " +"as a single positional argument. (Contributed by Serhiy Storchaka " +"in :gh:`109218`.)" msgstr "" msgid "" ":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" +"are deprecated and replaced by :data:`calendar.JANUARY` " +"and :data:`calendar.FEBRUARY`. (Contributed by Prince Roshan " +"in :gh:`103636`.)" msgstr "" msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" +":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. " +"(:gh:`133038`)" msgstr "" msgid "" @@ -3253,13 +3269,13 @@ msgid "" msgstr "" msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." +":meth:`~datetime.datetime.utcnow`: use " +"``datetime.datetime.now(tz=datetime.UTC)``." msgstr "" msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." +":meth:`~datetime.datetime.utcfromtimestamp`: use " +"``datetime.datetime.fromtimestamp(timestamp, tz=datetime.UTC)``." msgstr "" msgid ":mod:`gettext`: Plural value must be an integer." @@ -3294,12 +3310,13 @@ msgid "" msgstr "" msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." +":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, " +"use :func:`os.path.commonpath` for path prefixes. " +"The :func:`os.path.commonprefix` function is being deprecated due to having " +"a misleading name and module. The function is not safe to use for path " +"prefixes despite being included in a module about path manipulation, meaning " +"it is easy to accidentally introduce path traversal vulnerabilities into " +"Python programs by using this function." msgstr "" msgid "" @@ -3327,8 +3344,8 @@ msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." msgstr "" msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." +":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` " +"and :meth:`!selected_npn_protocol` are deprecated: use ALPN instead." msgstr "" msgid "``ssl.OP_NO_SSL*`` options" @@ -3365,21 +3382,21 @@ msgid ":mod:`threading` methods:" msgstr "" msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." +":meth:`!threading.Condition.notifyAll`: " +"use :meth:`~threading.Condition.notify_all`." msgstr "" msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." msgstr "" msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." +":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: " +"use :attr:`threading.Thread.daemon` attribute." msgstr "" msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." +":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: " +"use :attr:`threading.Thread.name` attribute." msgstr "" msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." @@ -3447,15 +3464,15 @@ msgid "" msgstr "" msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." +":mod:`xml.etree.ElementTree`: Testing the truth value of " +"an :class:`~xml.etree.ElementTree.Element` is deprecated. In a future " +"release it will always return ``True``. Prefer explicit ``len(elem)`` or " +"``elem is not None`` tests instead." msgstr "" msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." +":func:`sys._clear_type_cache` is deprecated: " +"use :func:`sys._clear_internal_caches` instead." msgstr "" msgid "CPython Bytecode Changes" @@ -3465,16 +3482,16 @@ msgid "" "The oparg of :opcode:`YIELD_VALUE` is now ``1`` if the yield is part of a " "yield-from or await, and ``0`` otherwise. The oparg of :opcode:`RESUME` was " "changed to add a bit indicating if the except-depth is 1, which is needed to " -"optimize closing of generators. (Contributed by Irit Katriel in :gh:" -"`111354`.)" +"optimize closing of generators. (Contributed by Irit Katriel " +"in :gh:`111354`.)" msgstr "" msgid "C API Changes" msgstr "" msgid "" -"Add the :ref:`PyMonitoring C API ` for generating :pep:" -"`669` monitoring events:" +"Add the :ref:`PyMonitoring C API ` for " +"generating :pep:`669` monitoring events:" msgstr "" msgid ":c:type:`PyMonitoringState`" @@ -3539,9 +3556,10 @@ msgstr "" msgid "" "Add :c:type:`PyMutex`, a lightweight mutex that occupies a single byte, and " -"the new :c:func:`PyMutex_Lock` and :c:func:`PyMutex_Unlock` functions. :c:" -"func:`!PyMutex_Lock` will release the :term:`GIL` (if currently held) if the " -"operation needs to block. (Contributed by Sam Gross in :gh:`108724`.)" +"the new :c:func:`PyMutex_Lock` and :c:func:`PyMutex_Unlock` " +"functions. :c:func:`!PyMutex_Lock` will release the :term:`GIL` (if " +"currently held) if the operation needs to block. (Contributed by Sam Gross " +"in :gh:`108724`.)" msgstr "" msgid "" @@ -3579,10 +3597,10 @@ msgid "(Contributed by Victor Stinner and Petr Viktorin in :gh:`110850`.)" msgstr "" msgid "" -"Add the :c:func:`PyDict_ContainsString` function with the same behavior as :" -"c:func:`PyDict_Contains`, but *key* is specified as a :c:expr:`const char*` " -"UTF-8 encoded bytes string, rather than a :c:expr:`PyObject*`. (Contributed " -"by Victor Stinner in :gh:`108314`.)" +"Add the :c:func:`PyDict_ContainsString` function with the same behavior " +"as :c:func:`PyDict_Contains`, but *key* is specified as a :c:expr:`const " +"char*` UTF-8 encoded bytes string, rather than a :c:expr:`PyObject*`. " +"(Contributed by Victor Stinner in :gh:`108314`.)" msgstr "" msgid "" @@ -3590,56 +3608,56 @@ msgid "" "functions, which behave similarly to :c:func:`PyDict_GetItemWithError`, but " "return a :term:`strong reference` instead of a :term:`borrowed reference`. " "Moreover, these functions return ``-1`` on error, removing the need to " -"check :c:func:`!PyErr_Occurred`. (Contributed by Victor Stinner in :gh:" -"`106004`.)" +"check :c:func:`!PyErr_Occurred`. (Contributed by Victor Stinner " +"in :gh:`106004`.)" msgstr "" msgid "" -"Add the :c:func:`PyDict_SetDefaultRef` function, which behaves similarly to :" -"c:func:`PyDict_SetDefault`, but returns a :term:`strong reference` instead " -"of a :term:`borrowed reference`. This function returns ``-1`` on error, " -"``0`` on insertion, and ``1`` if the key was already present in the " +"Add the :c:func:`PyDict_SetDefaultRef` function, which behaves similarly " +"to :c:func:`PyDict_SetDefault`, but returns a :term:`strong reference` " +"instead of a :term:`borrowed reference`. This function returns ``-1`` on " +"error, ``0`` on insertion, and ``1`` if the key was already present in the " "dictionary. (Contributed by Sam Gross in :gh:`112066`.)" msgstr "" msgid "" "Add the :c:func:`PyDict_Pop` and :c:func:`PyDict_PopString` functions to " "remove a key from a dictionary and optionally return the removed value. This " -"is similar to :meth:`dict.pop`, though there is no default value, and :exc:" -"`KeyError` is not raised for missing keys. (Contributed by Stefan Behnel and " -"Victor Stinner in :gh:`111262`.)" +"is similar to :meth:`dict.pop`, though there is no default value, " +"and :exc:`KeyError` is not raised for missing keys. (Contributed by Stefan " +"Behnel and Victor Stinner in :gh:`111262`.)" msgstr "" msgid "" -"Add the :c:func:`PyMapping_GetOptionalItem` and :c:func:" -"`PyMapping_GetOptionalItemString` functions as alternatives to :c:func:" -"`PyObject_GetItem` and :c:func:`PyMapping_GetItemString` respectively. The " -"new functions do not raise :exc:`KeyError` if the requested key is missing " -"from the mapping. These variants are more convenient and faster if a missing " -"key should not be treated as a failure. (Contributed by Serhiy Storchaka in :" -"gh:`106307`.)" +"Add the :c:func:`PyMapping_GetOptionalItem` " +"and :c:func:`PyMapping_GetOptionalItemString` functions as alternatives " +"to :c:func:`PyObject_GetItem` and :c:func:`PyMapping_GetItemString` " +"respectively. The new functions do not raise :exc:`KeyError` if the " +"requested key is missing from the mapping. These variants are more " +"convenient and faster if a missing key should not be treated as a failure. " +"(Contributed by Serhiy Storchaka in :gh:`106307`.)" msgstr "" msgid "" -"Add the :c:func:`PyObject_GetOptionalAttr` and :c:func:" -"`PyObject_GetOptionalAttrString` functions as alternatives to :c:func:" -"`PyObject_GetAttr` and :c:func:`PyObject_GetAttrString` respectively. The " -"new functions do not raise :exc:`AttributeError` if the requested attribute " -"is not found on the object. These variants are more convenient and faster if " -"the missing attribute should not be treated as a failure. (Contributed by " -"Serhiy Storchaka in :gh:`106521`.)" +"Add the :c:func:`PyObject_GetOptionalAttr` " +"and :c:func:`PyObject_GetOptionalAttrString` functions as alternatives " +"to :c:func:`PyObject_GetAttr` and :c:func:`PyObject_GetAttrString` " +"respectively. The new functions do not raise :exc:`AttributeError` if the " +"requested attribute is not found on the object. These variants are more " +"convenient and faster if the missing attribute should not be treated as a " +"failure. (Contributed by Serhiy Storchaka in :gh:`106521`.)" msgstr "" msgid "" -"Add the :c:func:`PyErr_FormatUnraisable` function as an extension to :c:func:" -"`PyErr_WriteUnraisable` that allows customizing the warning message. " -"(Contributed by Serhiy Storchaka in :gh:`108082`.)" +"Add the :c:func:`PyErr_FormatUnraisable` function as an extension " +"to :c:func:`PyErr_WriteUnraisable` that allows customizing the warning " +"message. (Contributed by Serhiy Storchaka in :gh:`108082`.)" msgstr "" msgid "" -"Add new functions that return a :term:`strong reference` instead of a :term:" -"`borrowed reference` for frame locals, globals, and builtins, as part of :" -"ref:`PEP 667 `:" +"Add new functions that return a :term:`strong reference` instead of " +"a :term:`borrowed reference` for frame locals, globals, and builtins, as " +"part of :ref:`PEP 667 `:" msgstr "" msgid ":c:func:`PyEval_GetFrameBuiltins` replaces :c:func:`PyEval_GetBuiltins`" @@ -3663,10 +3681,10 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PyImport_AddModuleRef` function as a replacement for :c:" -"func:`PyImport_AddModule` that returns a :term:`strong reference` instead of " -"a :term:`borrowed reference`. (Contributed by Victor Stinner in :gh:" -"`105922`.)" +"Add the :c:func:`PyImport_AddModuleRef` function as a replacement " +"for :c:func:`PyImport_AddModule` that returns a :term:`strong reference` " +"instead of a :term:`borrowed reference`. (Contributed by Victor Stinner " +"in :gh:`105922`.)" msgstr "" msgid "" @@ -3676,9 +3694,9 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PyList_GetItemRef` function as a replacement for :c:func:" -"`PyList_GetItem` that returns a :term:`strong reference` instead of a :term:" -"`borrowed reference`. (Contributed by Sam Gross in :gh:`114329`.)" +"Add the :c:func:`PyList_GetItemRef` function as a replacement " +"for :c:func:`PyList_GetItem` that returns a :term:`strong reference` instead " +"of a :term:`borrowed reference`. (Contributed by Sam Gross in :gh:`114329`.)" msgstr "" msgid "" @@ -3688,9 +3706,10 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PyLong_AsInt` function. It behaves similarly to :c:func:" -"`PyLong_AsLong`, but stores the result in a C :c:expr:`int` instead of a C :" -"c:expr:`long`. (Contributed by Victor Stinner in :gh:`108014`.)" +"Add the :c:func:`PyLong_AsInt` function. It behaves similarly " +"to :c:func:`PyLong_AsLong`, but stores the result in a C :c:expr:`int` " +"instead of a C :c:expr:`long`. (Contributed by Victor Stinner " +"in :gh:`108014`.)" msgstr "" msgid "" @@ -3701,15 +3720,16 @@ msgid "" msgstr "" msgid "" -"Add :c:func:`PyModule_Add` function, which is similar to :c:func:" -"`PyModule_AddObjectRef` and :c:func:`PyModule_AddObject`, but always steals " -"a reference to the value. (Contributed by Serhiy Storchaka in :gh:`86493`.)" +"Add :c:func:`PyModule_Add` function, which is similar " +"to :c:func:`PyModule_AddObjectRef` and :c:func:`PyModule_AddObject`, but " +"always steals a reference to the value. (Contributed by Serhiy Storchaka " +"in :gh:`86493`.)" msgstr "" msgid "" "Add the :c:func:`PyObject_GenericHash` function that implements the default " -"hashing function of a Python object. (Contributed by Serhiy Storchaka in :gh:" -"`113024`.)" +"hashing function of a Python object. (Contributed by Serhiy Storchaka " +"in :gh:`113024`.)" msgstr "" msgid "" @@ -3718,11 +3738,12 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PyObject_VisitManagedDict` and :c:func:" -"`PyObject_ClearManagedDict` functions. which must be called by the traverse " -"and clear functions of a type using the :c:macro:`Py_TPFLAGS_MANAGED_DICT` " -"flag. The `pythoncapi-compat project`_ can be used to use these functions " -"with Python 3.11 and 3.12. (Contributed by Victor Stinner in :gh:`107073`.)" +"Add the :c:func:`PyObject_VisitManagedDict` " +"and :c:func:`PyObject_ClearManagedDict` functions. which must be called by " +"the traverse and clear functions of a type using " +"the :c:macro:`Py_TPFLAGS_MANAGED_DICT` flag. The `pythoncapi-compat " +"project`_ can be used to use these functions with Python 3.11 and 3.12. " +"(Contributed by Victor Stinner in :gh:`107073`.)" msgstr "" msgid "" @@ -3733,9 +3754,9 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PySys_AuditTuple` function as an alternative to :c:func:" -"`PySys_Audit` that takes event arguments as a Python :class:`tuple` object. " -"(Contributed by Victor Stinner in :gh:`85283`.)" +"Add the :c:func:`PySys_AuditTuple` function as an alternative " +"to :c:func:`PySys_Audit` that takes event arguments as a " +"Python :class:`tuple` object. (Contributed by Victor Stinner in :gh:`85283`.)" msgstr "" msgid "" @@ -3747,9 +3768,10 @@ msgstr "" msgid "" "Add the :c:func:`PyType_GetFullyQualifiedName` function to get the type's " -"fully qualified name. The module name is prepended if :attr:`type." -"__module__` is a string and is not equal to either ``'builtins'`` or " -"``'__main__'``. (Contributed by Victor Stinner in :gh:`111696`.)" +"fully qualified name. The module name is prepended " +"if :attr:`type.__module__` is a string and is not equal to either " +"``'builtins'`` or ``'__main__'``. (Contributed by Victor Stinner " +"in :gh:`111696`.)" msgstr "" msgid "" @@ -3759,18 +3781,18 @@ msgid "" msgstr "" msgid "" -"Add the :c:func:`PyUnicode_EqualToUTF8AndSize` and :c:func:" -"`PyUnicode_EqualToUTF8` functions to compare a Unicode object with a :c:expr:" -"`const char*` UTF-8 encoded string and ``1`` if they are equal or ``0`` " -"otherwise. These functions do not raise exceptions. (Contributed by Serhiy " -"Storchaka in :gh:`110289`.)" +"Add the :c:func:`PyUnicode_EqualToUTF8AndSize` " +"and :c:func:`PyUnicode_EqualToUTF8` functions to compare a Unicode object " +"with a :c:expr:`const char*` UTF-8 encoded string and ``1`` if they are " +"equal or ``0`` otherwise. These functions do not raise exceptions. " +"(Contributed by Serhiy Storchaka in :gh:`110289`.)" msgstr "" msgid "" "Add the :c:func:`PyWeakref_GetRef` function as an alternative to :c:func:`!" "PyWeakref_GetObject` that returns a :term:`strong reference` or ``NULL`` if " -"the referent is no longer live. (Contributed by Victor Stinner in :gh:" -"`105927`.)" +"the referent is no longer live. (Contributed by Victor Stinner " +"in :gh:`105927`.)" msgstr "" msgid "Add fixed variants of functions which silently ignore errors:" @@ -3781,8 +3803,8 @@ msgid "" msgstr "" msgid "" -":c:func:`PyObject_HasAttrStringWithError` replaces :c:func:" -"`PyObject_HasAttrString`." +":c:func:`PyObject_HasAttrStringWithError` " +"replaces :c:func:`PyObject_HasAttrString`." msgstr "" msgid "" @@ -3790,8 +3812,8 @@ msgid "" msgstr "" msgid "" -":c:func:`PyMapping_HasKeyStringWithError` replaces :c:func:" -"`PyMapping_HasKeyString`." +":c:func:`PyMapping_HasKeyStringWithError` " +"replaces :c:func:`PyMapping_HasKeyString`." msgstr "" msgid "" @@ -3806,15 +3828,15 @@ msgid "Changed C APIs" msgstr "" msgid "" -"The *keywords* parameter of :c:func:`PyArg_ParseTupleAndKeywords` and :c:" -"func:`PyArg_VaParseTupleAndKeywords` now has type :c:expr:`char * const *` " -"in C and :c:expr:`const char * const *` in C++, instead of :c:expr:`char " -"**`. In C++, this makes these functions compatible with arguments of type :c:" -"expr:`const char * const *`, :c:expr:`const char **`, or :c:expr:`char * " -"const *` without an explicit type cast. In C, the functions only support " -"arguments of type :c:expr:`char * const *`. This can be overridden with the :" -"c:macro:`PY_CXX_CONST` macro. (Contributed by Serhiy Storchaka in :gh:" -"`65210`.)" +"The *keywords* parameter of :c:func:`PyArg_ParseTupleAndKeywords` " +"and :c:func:`PyArg_VaParseTupleAndKeywords` now has type :c:expr:`char * " +"const *` in C and :c:expr:`const char * const *` in C++, instead " +"of :c:expr:`char **`. In C++, this makes these functions compatible with " +"arguments of type :c:expr:`const char * const *`, :c:expr:`const char **`, " +"or :c:expr:`char * const *` without an explicit type cast. In C, the " +"functions only support arguments of type :c:expr:`char * const *`. This can " +"be overridden with the :c:macro:`PY_CXX_CONST` macro. (Contributed by Serhiy " +"Storchaka in :gh:`65210`.)" msgstr "" msgid "" @@ -3829,18 +3851,17 @@ msgid "" msgstr "" msgid "" -"The :c:func:`PyDict_GetItem`, :c:func:`PyDict_GetItemString`, :c:func:" -"`PyMapping_HasKey`, :c:func:`PyMapping_HasKeyString`, :c:func:" -"`PyObject_HasAttr`, :c:func:`PyObject_HasAttrString`, and :c:func:" -"`PySys_GetObject` functions, each of which clears all errors which occurred " -"when calling them now reports these errors using :func:`sys.unraisablehook`. " -"You may replace them with other functions as recommended in the " -"documentation. (Contributed by Serhiy Storchaka in :gh:`106672`.)" +"The :c:func:`PyDict_GetItem`, :c:func:`PyDict_GetItemString`, :c:func:`PyMapping_HasKey`, :c:func:`PyMapping_HasKeyString`, :c:func:`PyObject_HasAttr`, :c:func:`PyObject_HasAttrString`, " +"and :c:func:`PySys_GetObject` functions, each of which clears all errors " +"which occurred when calling them now reports these errors " +"using :func:`sys.unraisablehook`. You may replace them with other functions " +"as recommended in the documentation. (Contributed by Serhiy Storchaka " +"in :gh:`106672`.)" msgstr "" msgid "" -"Add support for the ``%T``, ``%#T``, ``%N`` and ``%#N`` formats to :c:func:" -"`PyUnicode_FromFormat`:" +"Add support for the ``%T``, ``%#T``, ``%N`` and ``%#N`` formats " +"to :c:func:`PyUnicode_FromFormat`:" msgstr "" msgid "``%T``: Get the fully qualified name of an object type" @@ -3856,23 +3877,23 @@ msgid "``%#N``: As above, but use a colon as the separator" msgstr "" msgid "" -"See :pep:`737` for more information. (Contributed by Victor Stinner in :gh:" -"`111696`.)" +"See :pep:`737` for more information. (Contributed by Victor Stinner " +"in :gh:`111696`.)" msgstr "" msgid "" "You no longer have to define the ``PY_SSIZE_T_CLEAN`` macro before " "including :file:`Python.h` when using ``#`` formats in :ref:`format codes " "`. APIs accepting the format codes always " -"use ``Py_ssize_t`` for ``#`` formats. (Contributed by Inada Naoki in :gh:" -"`104922`.)" +"use ``Py_ssize_t`` for ``#`` formats. (Contributed by Inada Naoki " +"in :gh:`104922`.)" msgstr "" msgid "" "If Python is built in :ref:`debug mode ` or :option:`with " -"assertions <--with-assertions>`, :c:func:`PyTuple_SET_ITEM` and :c:func:" -"`PyList_SET_ITEM` now check the index argument with an assertion. " -"(Contributed by Victor Stinner in :gh:`106168`.)" +"assertions <--with-assertions>`, :c:func:`PyTuple_SET_ITEM` " +"and :c:func:`PyList_SET_ITEM` now check the index argument with an " +"assertion. (Contributed by Victor Stinner in :gh:`106168`.)" msgstr "" msgid "Limited C API Changes" @@ -3924,21 +3945,21 @@ msgid "" msgstr "" msgid "" -"Remove old buffer protocols deprecated in Python 3.0. Use :ref:" -"`bufferobjects` instead." +"Remove old buffer protocols deprecated in Python 3.0. " +"Use :ref:`bufferobjects` instead." msgstr "" msgid "" ":c:func:`!PyObject_CheckReadBuffer`: Use :c:func:`PyObject_CheckBuffer` to " -"test whether the object supports the buffer protocol. Note that :c:func:" -"`PyObject_CheckBuffer` doesn't guarantee that :c:func:`PyObject_GetBuffer` " -"will succeed. To test if the object is actually readable, see the next " -"example of :c:func:`PyObject_GetBuffer`." +"test whether the object supports the buffer protocol. Note " +"that :c:func:`PyObject_CheckBuffer` doesn't guarantee " +"that :c:func:`PyObject_GetBuffer` will succeed. To test if the object is " +"actually readable, see the next example of :c:func:`PyObject_GetBuffer`." msgstr "" msgid "" -":c:func:`!PyObject_AsCharBuffer`, :c:func:`!PyObject_AsReadBuffer`: Use :c:" -"func:`PyObject_GetBuffer` and :c:func:`PyBuffer_Release` instead:" +":c:func:`!PyObject_AsCharBuffer`, :c:func:`!PyObject_AsReadBuffer`: " +"Use :c:func:`PyObject_GetBuffer` and :c:func:`PyBuffer_Release` instead:" msgstr "" msgid "" @@ -3952,8 +3973,8 @@ msgid "" msgstr "" msgid "" -":c:func:`!PyObject_AsWriteBuffer`: Use :c:func:`PyObject_GetBuffer` and :c:" -"func:`PyBuffer_Release` instead:" +":c:func:`!PyObject_AsWriteBuffer`: Use :c:func:`PyObject_GetBuffer` " +"and :c:func:`PyBuffer_Release` instead:" msgstr "" msgid "" @@ -3972,8 +3993,8 @@ msgid "Remove various functions deprecated in Python 3.9:" msgstr "" msgid "" -":c:func:`!PyEval_CallObject`, :c:func:`!PyEval_CallObjectWithKeywords`: Use :" -"c:func:`PyObject_CallNoArgs` or :c:func:`PyObject_Call` instead." +":c:func:`!PyEval_CallObject`, :c:func:`!PyEval_CallObjectWithKeywords`: " +"Use :c:func:`PyObject_CallNoArgs` or :c:func:`PyObject_Call` instead." msgstr "" msgid "" @@ -3981,9 +4002,9 @@ msgid "" "and must not be ``NULL``, and keyword arguments must be a :class:`dict` or " "``NULL``, whereas the removed functions checked argument types and accepted " "``NULL`` positional and keyword arguments. To replace " -"``PyEval_CallObjectWithKeywords(func, NULL, kwargs)`` with :c:func:" -"`PyObject_Call`, pass an empty tuple as positional arguments using :c:func:" -"`PyTuple_New(0) `." +"``PyEval_CallObjectWithKeywords(func, NULL, kwargs)`` " +"with :c:func:`PyObject_Call`, pass an empty tuple as positional arguments " +"using :c:func:`PyTuple_New(0) `." msgstr "" msgid "" @@ -4018,7 +4039,8 @@ msgid ":c:func:`!PySys_AddXOption`: Use :c:member:`PyConfig.xoptions` instead." msgstr "" msgid "" -":c:func:`!PySys_HasWarnOptions`: Use :c:member:`PyConfig.xoptions` instead." +":c:func:`!PySys_HasWarnOptions`: Use :c:member:`PyConfig.warnoptions` " +"instead." msgstr "" msgid "" @@ -4031,9 +4053,9 @@ msgid "" msgstr "" msgid "" -":c:func:`!Py_SetStandardStreamEncoding`: Set :c:member:`PyConfig." -"stdio_encoding` instead, and set also maybe :c:member:`PyConfig." -"legacy_windows_stdio` (on Windows)." +":c:func:`!Py_SetStandardStreamEncoding`: " +"Set :c:member:`PyConfig.stdio_encoding` instead, and set also " +"maybe :c:member:`PyConfig.legacy_windows_stdio` (on Windows)." msgstr "" msgid "" @@ -4057,7 +4079,7 @@ msgid ":c:func:`PyEval_SaveThread` and :c:func:`PyEval_RestoreThread`;" msgstr "" msgid "" -"low-level :c:func:`PyEval_AcquireThread` and :c:func:`PyEval_RestoreThread`;" +"low-level :c:func:`PyEval_AcquireThread` and :c:func:`PyEval_ReleaseThread`;" msgstr "" msgid "or :c:func:`PyGILState_Ensure` and :c:func:`PyGILState_Release`." @@ -4075,11 +4097,11 @@ msgid "" msgstr "" msgid "" -"Remove the :c:func:`!_PyInterpreterState_Get` alias to :c:func:" -"`PyInterpreterState_Get()` which was kept for backward compatibility with " -"Python 3.8. The `pythoncapi-compat project`_ can be used to get :c:func:" -"`PyInterpreterState_Get()` on Python 3.8 and older. (Contributed by Victor " -"Stinner in :gh:`106320`.)" +"Remove the :c:func:`!_PyInterpreterState_Get` alias " +"to :c:func:`PyInterpreterState_Get()` which was kept for backward " +"compatibility with Python 3.8. The `pythoncapi-compat project`_ can be used " +"to get :c:func:`PyInterpreterState_Get()` on Python 3.8 and older. " +"(Contributed by Victor Stinner in :gh:`106320`.)" msgstr "" msgid "" @@ -4132,17 +4154,18 @@ msgid ":c:func:`!Py_GetProgramName`: Get :data:`sys.executable` instead." msgstr "" msgid "" -":c:func:`!Py_GetPythonHome`: Get :c:member:`PyConfig.home` or the :envvar:" -"`PYTHONHOME` environment variable instead." +":c:func:`!Py_GetPythonHome`: Get :c:member:`PyConfig.home` or " +"the :envvar:`PYTHONHOME` environment variable instead." msgstr "" msgid "(Contributed by Victor Stinner in :gh:`105145`.)" msgstr "" msgid "" -":term:`Soft deprecate ` the :c:func:`PyEval_GetBuiltins`, :" -"c:func:`PyEval_GetGlobals`, and :c:func:`PyEval_GetLocals` functions, which " -"return a :term:`borrowed reference`. (Soft deprecated as part of :pep:`667`.)" +":term:`Soft deprecate ` " +"the :c:func:`PyEval_GetBuiltins`, :c:func:`PyEval_GetGlobals`, " +"and :c:func:`PyEval_GetLocals` functions, which return a :term:`borrowed " +"reference`. (Soft deprecated as part of :pep:`667`.)" msgstr "" msgid "" @@ -4153,16 +4176,17 @@ msgstr "" msgid "" ":term:`Soft deprecate ` the :c:func:`PyModule_AddObject` " -"function. It should be replaced with :c:func:`PyModule_Add` or :c:func:" -"`PyModule_AddObjectRef`. (Contributed by Serhiy Storchaka in :gh:`86493`.)" +"function. It should be replaced with :c:func:`PyModule_Add` " +"or :c:func:`PyModule_AddObjectRef`. (Contributed by Serhiy Storchaka " +"in :gh:`86493`.)" msgstr "" msgid "" -"Deprecate the old ``Py_UNICODE`` and ``PY_UNICODE_TYPE`` types and the :c:" -"macro:`!Py_UNICODE_WIDE` define. Use the :c:type:`wchar_t` type directly " -"instead. Since Python 3.3, ``Py_UNICODE`` and ``PY_UNICODE_TYPE`` are just " -"aliases to :c:type:`!wchar_t`. (Contributed by Victor Stinner in :gh:" -"`105156`.)" +"Deprecate the old ``Py_UNICODE`` and ``PY_UNICODE_TYPE`` types and " +"the :c:macro:`!Py_UNICODE_WIDE` define. Use the :c:type:`wchar_t` type " +"directly instead. Since Python 3.3, ``Py_UNICODE`` and ``PY_UNICODE_TYPE`` " +"are just aliases to :c:type:`!wchar_t`. (Contributed by Victor Stinner " +"in :gh:`105156`.)" msgstr "" msgid "" @@ -4185,15 +4209,15 @@ msgid "" msgstr "" msgid "" -"The :c:func:`!PyImport_ImportModuleNoBlock`: Use :c:func:" -"`PyImport_ImportModule` instead." +"The :c:func:`!PyImport_ImportModuleNoBlock`: " +"Use :c:func:`PyImport_ImportModule` instead." msgstr "" msgid "" -":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: Use :c:" -"func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project `__ can be used to get :c:func:" -"`PyWeakref_GetRef` on Python 3.12 and older." +":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: " +"Use :c:func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project " +"`__ can be used to " +"get :c:func:`PyWeakref_GetRef` on Python 3.12 and older." msgstr "" msgid "" @@ -4226,16 +4250,17 @@ msgstr "" msgid "" ":c:func:`!Py_GetPrefix`: Use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." +"` (:data:`sys.base_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) " +"if :ref:`virtual environments ` need to be handled." msgstr "" msgid "" ":c:func:`!Py_GetExecPrefix`: Use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." +"` (:data:`sys.base_exec_prefix`) instead. " +"Use :c:func:`PyConfig_Get(\"exec_prefix\") ` " +"(:data:`sys.exec_prefix`) if :ref:`virtual environments ` need to " +"be handled." msgstr "" msgid "" @@ -4277,56 +4302,56 @@ msgid ":c:func:`!Py_SetPythonHome()`: Set :c:member:`PyConfig.home` instead." msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` instead." msgstr "" msgid "Global configuration variables:" msgstr "" msgid "" -":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` or :c:func:" -"`PyConfig_Get(\"parser_debug\") ` instead." +":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` " +"or :c:func:`PyConfig_Get(\"parser_debug\") ` instead." msgstr "" msgid "" -":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` or :c:func:" -"`PyConfig_Get(\"verbose\") ` instead." +":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` " +"or :c:func:`PyConfig_Get(\"verbose\") ` instead." msgstr "" msgid "" -":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` or :c:func:" -"`PyConfig_Get(\"quiet\") ` instead." +":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` " +"or :c:func:`PyConfig_Get(\"quiet\") ` instead." msgstr "" msgid "" -":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` or :c:func:" -"`PyConfig_Get(\"interactive\") ` instead." +":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` " +"or :c:func:`PyConfig_Get(\"interactive\") ` instead." msgstr "" msgid "" -":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` or :c:func:" -"`PyConfig_Get(\"inspect\") ` instead." +":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` " +"or :c:func:`PyConfig_Get(\"inspect\") ` instead." msgstr "" msgid "" -":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` or :c:" -"func:`PyConfig_Get(\"optimization_level\") ` instead." +":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` " +"or :c:func:`PyConfig_Get(\"optimization_level\") ` instead." msgstr "" msgid "" -":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` or :c:func:" -"`PyConfig_Get(\"site_import\") ` instead." +":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` " +"or :c:func:`PyConfig_Get(\"site_import\") ` instead." msgstr "" msgid "" -":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` or :c:" -"func:`PyConfig_Get(\"bytes_warning\") ` instead." +":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` " +"or :c:func:`PyConfig_Get(\"bytes_warning\") ` instead." msgstr "" msgid "" -":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` or :c:" -"func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." +":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` " +"or :c:func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." msgstr "" msgid "" @@ -4340,14 +4365,14 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_NoUserSiteDirectory`: Use :c:member:`PyConfig." -"user_site_directory` or :c:func:`PyConfig_Get(\"user_site_directory\") " -"` instead." +":c:var:`Py_NoUserSiteDirectory`: " +"Use :c:member:`PyConfig.user_site_directory` " +"or :c:func:`PyConfig_Get(\"user_site_directory\") ` instead." msgstr "" msgid "" -":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` or :" -"c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." +":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` " +"or :c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." msgstr "" msgid "" @@ -4357,45 +4382,46 @@ msgid "" msgstr "" msgid "" -":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` or :c:func:" -"`PyConfig_Get(\"isolated\") ` instead." +":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` " +"or :c:func:`PyConfig_Get(\"isolated\") ` instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: Use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` or :c:func:" -"`PyConfig_Get(\"legacy_windows_fs_encoding\") ` instead." +":c:var:`Py_LegacyWindowsFSEncodingFlag`: " +"Use :c:member:`PyPreConfig.legacy_windows_fs_encoding` " +"or :c:func:`PyConfig_Get(\"legacy_windows_fs_encoding\") ` " +"instead." msgstr "" msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: Use :c:member:`PyConfig." -"legacy_windows_stdio` or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") " -"` instead." +":c:var:`Py_LegacyWindowsStdioFlag`: " +"Use :c:member:`PyConfig.legacy_windows_stdio` " +"or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") ` instead." msgstr "" msgid "" ":c:var:`!Py_FileSystemDefaultEncoding`, :c:var:`!" -"Py_HasFileSystemDefaultEncoding`: Use :c:member:`PyConfig." -"filesystem_encoding` or :c:func:`PyConfig_Get(\"filesystem_encoding\") " -"` instead." +"Py_HasFileSystemDefaultEncoding`: " +"Use :c:member:`PyConfig.filesystem_encoding` " +"or :c:func:`PyConfig_Get(\"filesystem_encoding\") ` instead." msgstr "" msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: Use :c:member:`PyConfig." -"filesystem_errors` or :c:func:`PyConfig_Get(\"filesystem_errors\") " -"` instead." +":c:var:`!Py_FileSystemDefaultEncodeErrors`: " +"Use :c:member:`PyConfig.filesystem_errors` " +"or :c:func:`PyConfig_Get(\"filesystem_errors\") ` instead." msgstr "" msgid "" -":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` or :c:func:" -"`PyConfig_Get(\"utf8_mode\") ` instead. (see :c:func:" -"`Py_PreInitialize`)" +":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` " +"or :c:func:`PyConfig_Get(\"utf8_mode\") ` instead. " +"(see :c:func:`Py_PreInitialize`)" msgstr "" msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can be used to " -"get these options at runtime." +"The :c:func:`Py_InitializeFromConfig` API should be used " +"with :c:type:`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can " +"be used to get these options at runtime." msgstr "" msgid "The bundled copy of ``libmpdec``." @@ -4410,8 +4436,8 @@ msgid ":c:func:`!_PyBytes_Join`: use :c:func:`PyBytes_Join`." msgstr "" msgid "" -":c:func:`!_PyDict_GetItemStringWithError`: use :c:func:" -"`PyDict_GetItemStringRef`." +":c:func:`!_PyDict_GetItemStringWithError`: " +"use :c:func:`PyDict_GetItemStringRef`." msgstr "" msgid ":c:func:`!_PyDict_Pop()`: use :c:func:`PyDict_Pop`." @@ -4421,13 +4447,13 @@ msgid ":c:func:`!_PyLong_Sign()`: use :c:func:`PyLong_GetSign`." msgstr "" msgid "" -":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: use :c:func:" -"`PyLongWriter_Create`." +":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: " +"use :c:func:`PyLongWriter_Create`." msgstr "" msgid "" -":c:func:`!_PyThreadState_UncheckedGet`: use :c:func:" -"`PyThreadState_GetUnchecked`." +":c:func:`!_PyThreadState_UncheckedGet`: " +"use :c:func:`PyThreadState_GetUnchecked`." msgstr "" msgid ":c:func:`!_PyUnicode_AsString`: use :c:func:`PyUnicode_AsUTF8`." @@ -4440,45 +4466,50 @@ msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Finish`: replace " -"``_PyUnicodeWriter_Finish(&writer)`` with :c:func:" -"`PyUnicodeWriter_Finish(writer) `." +"``_PyUnicodeWriter_Finish(&writer)`` " +"with :c:func:`PyUnicodeWriter_Finish(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Dealloc`: replace " -"``_PyUnicodeWriter_Dealloc(&writer)`` with :c:func:" -"`PyUnicodeWriter_Discard(writer) `." +"``_PyUnicodeWriter_Dealloc(&writer)`` " +"with :c:func:`PyUnicodeWriter_Discard(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteChar`: replace " -"``_PyUnicodeWriter_WriteChar(&writer, ch)`` with :c:func:" -"`PyUnicodeWriter_WriteChar(writer, ch) `." +"``_PyUnicodeWriter_WriteChar(&writer, ch)`` " +"with :c:func:`PyUnicodeWriter_WriteChar(writer, ch) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteStr`: replace " -"``_PyUnicodeWriter_WriteStr(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteStr(writer, str) `." +"``_PyUnicodeWriter_WriteStr(&writer, str)`` " +"with :c:func:`PyUnicodeWriter_WriteStr(writer, str) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteSubstring`: replace " -"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` with :c:func:" -"`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " +"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` " +"with :c:func:`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " "`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteASCIIString`: replace " -"``_PyUnicodeWriter_WriteASCIIString(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteASCII(writer, str) `." +"``_PyUnicodeWriter_WriteASCIIString(&writer, str, size)`` " +"with :c:func:`PyUnicodeWriter_WriteASCII(writer, str, size) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteLatin1String`: replace " -"``_PyUnicodeWriter_WriteLatin1String(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." +"``_PyUnicodeWriter_WriteLatin1String(&writer, str, size)`` by decoding the " +"string with :c:func:`PyUnicode_DecodeLatin1`, writing the result " +"with :c:func:`PyUnicodeWriter_WriteStr`, and releasing the result " +"with :c:func:`Py_DECREF`." msgstr "" msgid ":c:func:`!_PyUnicodeWriter_Prepare`: (no replacement)." @@ -4528,8 +4559,8 @@ msgid ":c:func:`PyOS_AfterFork`: Use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" msgid "" -":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` instead." +":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices` instead." msgstr "" msgid ":c:func:`PyUnicode_READY`: Unneeded since Python 3.12" @@ -4584,9 +4615,10 @@ msgid "" msgstr "" msgid "" -"``aarch64-linux-android`` and ``x86_64-linux-android`` are both now :pep:" -"`11` tier 3 platforms. (:ref:`PEP 738 ` " -"written and implementation contributed by Malcolm Smith in :gh:`116622`.)" +"``aarch64-linux-android`` and ``x86_64-linux-android`` are both " +"now :pep:`11` tier 3 platforms. (:ref:`PEP 738 ` written and implementation contributed by Malcolm Smith " +"in :gh:`116622`.)" msgstr "" msgid "" @@ -4605,9 +4637,9 @@ msgid "" msgstr "" msgid "" -"Autoconf 2.71 and aclocal 1.16.5 are now required to regenerate the :file:" -"`configure` script. (Contributed by Christian Heimes in :gh:`89886` and by " -"Victor Stinner in :gh:`112090`.)" +"Autoconf 2.71 and aclocal 1.16.5 are now required to regenerate " +"the :file:`configure` script. (Contributed by Christian Heimes " +"in :gh:`89886` and by Victor Stinner in :gh:`112090`.)" msgstr "" msgid "" @@ -4629,8 +4661,9 @@ msgstr "" msgid "" "Python built with :file:`configure` :option:`--with-trace-refs` (tracing " -"references) is now ABI compatible with the Python release build and :ref:" -"`debug build `. (Contributed by Victor Stinner in :gh:`108634`.)" +"references) is now ABI compatible with the Python release build " +"and :ref:`debug build `. (Contributed by Victor Stinner " +"in :gh:`108634`.)" msgstr "" msgid "" @@ -4641,11 +4674,11 @@ msgstr "" msgid "" "The ``errno``, ``fcntl``, ``grp``, ``md5``, ``pwd``, ``resource``, " -"``termios``, ``winsound``, ``_ctypes_test``, ``_multiprocessing." -"posixshmem``, ``_scproxy``, ``_stat``, ``_statistics``, ``_testconsole``, " -"``_testimportmultiple`` and ``_uuid`` C extensions are now built with the :" -"ref:`limited C API `. (Contributed by Victor Stinner in :gh:" -"`85283`.)" +"``termios``, ``winsound``, ``_ctypes_test``, " +"``_multiprocessing.posixshmem``, ``_scproxy``, ``_stat``, ``_statistics``, " +"``_testconsole``, ``_testimportmultiple`` and ``_uuid`` C extensions are now " +"built with the :ref:`limited C API `. (Contributed by Victor " +"Stinner in :gh:`85283`.)" msgstr "" msgid "Porting to Python 3.13" @@ -4694,9 +4727,9 @@ msgstr "" msgid "" ":class:`functools.partial` now emits a :exc:`FutureWarning` when used as a " -"method. The behavior will change in future Python versions. Wrap it in :func:" -"`staticmethod` if you want to preserve the old behavior. (Contributed by " -"Serhiy Storchaka in :gh:`121027`.)" +"method. The behavior will change in future Python versions. Wrap it " +"in :func:`staticmethod` if you want to preserve the old behavior. " +"(Contributed by Serhiy Storchaka in :gh:`121027`.)" msgstr "" msgid "" @@ -4744,8 +4777,8 @@ msgid "" "``Python.h`` no longer includes the ```` standard header. It was " "included for the :c:func:`!finite` function which is now provided by the " "```` header. It should now be included explicitly if needed. Remove " -"also the ``HAVE_IEEEFP_H`` macro. (Contributed by Victor Stinner in :gh:" -"`108765`.)" +"also the ``HAVE_IEEEFP_H`` macro. (Contributed by Victor Stinner " +"in :gh:`108765`.)" msgstr "" msgid "" @@ -4753,9 +4786,9 @@ msgid "" "```` and ````. If needed, they should now be " "included explicitly. For example, ```` provides the :c:func:`!clock` " "and :c:func:`!gmtime` functions, ```` provides the :c:func:`!" -"select` function, and ```` provides the :c:func:`!futimes`, :c:" -"func:`!gettimeofday` and :c:func:`!setitimer` functions. (Contributed by " -"Victor Stinner in :gh:`108765`.)" +"select` function, and ```` provides the :c:func:`!" +"futimes`, :c:func:`!gettimeofday` and :c:func:`!setitimer` functions. " +"(Contributed by Victor Stinner in :gh:`108765`.)" msgstr "" msgid "" @@ -4790,7 +4823,7 @@ msgid "" " PyObject_GC_UnTrack(p);\n" " Py_TRASHCAN_SAFE_BEGIN(p);\n" " ...\n" -" Py_TRASHCAN_SAFE_END\n" +" Py_TRASHCAN_SAFE_END(p)\n" "}" msgstr "" @@ -4821,24 +4854,24 @@ msgid "" msgstr "" msgid "" -"The effects of mutating the dictionary returned from :c:func:" -"`PyEval_GetLocals` in an :term:`optimized scope` have changed. New dict " -"entries added this way will now *only* be visible to subsequent :c:func:" -"`PyEval_GetLocals` calls in that frame, as :c:func:`PyFrame_GetLocals`, :" -"func:`locals`, and :attr:`FrameType.f_locals ` no longer " -"access the same underlying cached dictionary. Changes made to entries for " -"actual variable names and names added via the write-through proxy interfaces " -"will be overwritten on subsequent calls to :c:func:`PyEval_GetLocals` in " -"that frame. The recommended code update depends on how the function was " -"being used, so refer to the deprecation notice on the function for details." +"The effects of mutating the dictionary returned " +"from :c:func:`PyEval_GetLocals` in an :term:`optimized scope` have changed. " +"New dict entries added this way will now *only* be visible to " +"subsequent :c:func:`PyEval_GetLocals` calls in that frame, " +"as :c:func:`PyFrame_GetLocals`, :func:`locals`, " +"and :attr:`FrameType.f_locals ` no longer access the same " +"underlying cached dictionary. Changes made to entries for actual variable " +"names and names added via the write-through proxy interfaces will be " +"overwritten on subsequent calls to :c:func:`PyEval_GetLocals` in that frame. " +"The recommended code update depends on how the function was being used, so " +"refer to the deprecation notice on the function for details." msgstr "" msgid "" "Calling :c:func:`PyFrame_GetLocals` in an :term:`optimized scope` now " "returns a write-through proxy rather than a snapshot that gets updated at " -"ill-specified times. If a snapshot is desired, it must be created explicitly " -"(e.g. with :c:func:`PyDict_Copy`), or by calling the new :c:func:" -"`PyEval_GetFrameLocals` API." +"ill-specified times. If a snapshot is desired, it must be created " +"explicitly, or by calling the new :c:func:`PyEval_GetFrameLocals` API." msgstr "" msgid "" @@ -4868,8 +4901,8 @@ msgid "``_PyErr_WriteUnraisableMsg()``: :c:func:`PyErr_FormatUnraisable`;" msgstr "" msgid "" -"``_PyEval_SetTrace()``: :c:func:`PyEval_SetTrace` or :c:func:" -"`PyEval_SetTraceAllThreads`;" +"``_PyEval_SetTrace()``: :c:func:`PyEval_SetTrace` " +"or :c:func:`PyEval_SetTraceAllThreads`;" msgstr "" msgid "``_PyList_Extend()``: :c:func:`PyList_Extend`;" @@ -4890,26 +4923,25 @@ msgstr "" msgid "``_PyObject_VisitManagedDict()``: :c:func:`PyObject_VisitManagedDict`;" msgstr "" -msgid "" -"``_PyThreadState_UncheckedGet()``: :c:func:`PyThreadState_GetUnchecked()`;" +msgid "``_PyThreadState_UncheckedGet()``: :c:func:`PyThreadState_GetUnchecked()`;" msgstr "" msgid "``_PyTime_AsSecondsDouble()``: :c:func:`PyTime_AsSecondsDouble`;" msgstr "" msgid "" -"``_PyTime_GetMonotonicClock()``: :c:func:`PyTime_Monotonic` or :c:func:" -"`PyTime_MonotonicRaw`;" +"``_PyTime_GetMonotonicClock()``: :c:func:`PyTime_Monotonic` " +"or :c:func:`PyTime_MonotonicRaw`;" msgstr "" msgid "" -"``_PyTime_GetPerfCounter()``: :c:func:`PyTime_PerfCounter` or :c:func:" -"`PyTime_PerfCounterRaw`;" +"``_PyTime_GetPerfCounter()``: :c:func:`PyTime_PerfCounter` " +"or :c:func:`PyTime_PerfCounterRaw`;" msgstr "" msgid "" -"``_PyTime_GetSystemClock()``: :c:func:`PyTime_Time` or :c:func:" -"`PyTime_TimeRaw`;" +"``_PyTime_GetSystemClock()``: :c:func:`PyTime_Time` " +"or :c:func:`PyTime_TimeRaw`;" msgstr "" msgid "``_PyTime_MAX``: :c:var:`PyTime_MAX`;" @@ -4936,8 +4968,8 @@ msgid "Regression Test Changes" msgstr "" msgid "" -"Python built with :file:`configure` :option:`--with-pydebug` now supports a :" -"option:`-X presite=package.module <-X>` command-line option. If used, it " +"Python built with :file:`configure` :option:`--with-pydebug` now supports " +"a :option:`-X presite=package.module <-X>` command-line option. If used, it " "specifies a module that should be imported early in the lifecycle of the " "interpreter, before ``site.py`` is executed. (Contributed by Łukasz Langa " "in :gh:`110769`.)" diff --git a/whatsnew/3.14.po b/whatsnew/3.14.po deleted file mode 100644 index e6c1c6e..0000000 --- a/whatsnew/3.14.po +++ /dev/null @@ -1,5563 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" -"PO-Revision-Date: 2025-09-16 00:02+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "What's new in Python 3.14" -msgstr "" - -msgid "Editors" -msgstr "" - -msgid "Adam Turner and Hugo van Kemenade" -msgstr "" - -msgid "" -"This article explains the new features in Python 3.14, compared to 3.13. " -"Python 3.14 was released on 7 October 2025. For full details, see the :ref:" -"`changelog `." -msgstr "" - -msgid ":pep:`745` -- Python 3.14 release schedule" -msgstr "" - -msgid "Summary -- Release highlights" -msgstr "" - -msgid "" -"Python 3.14 is the latest stable release of the Python programming language, " -"with a mix of changes to the language, the implementation, and the standard " -"library. The biggest changes include :ref:`template string literals " -"`, :ref:`deferred evaluation of " -"annotations `, and support for :ref:" -"`subinterpreters ` in the standard " -"library." -msgstr "" - -msgid "" -"The library changes include significantly improved capabilities for :ref:" -"`introspection in asyncio `, :ref:" -"`support for Zstandard ` via a new :mod:`compression." -"zstd` module, syntax highlighting in the REPL, as well as the usual " -"deprecations and removals, and improvements in user-friendliness and " -"correctness." -msgstr "" - -msgid "" -"This article doesn't attempt to provide a complete specification of all new " -"features, but instead gives a convenient overview. For full details refer to " -"the documentation, such as the :ref:`Library Reference ` and :" -"ref:`Language Reference `. To understand the complete " -"implementation and design rationale for a change, refer to the PEP for a " -"particular new feature; but note that PEPs usually are not kept up-to-date " -"once a feature has been fully implemented. See `Porting to Python 3.14`_ for " -"guidance on upgrading from earlier versions of Python." -msgstr "" - -msgid "Interpreter improvements:" -msgstr "" - -msgid "" -":pep:`649` and :pep:`749`: :ref:`Deferred evaluation of annotations " -"`" -msgstr "" - -msgid "" -":pep:`734`: :ref:`Multiple interpreters in the standard library `" -msgstr "" - -msgid "" -":pep:`750`: :ref:`Template strings `" -msgstr "" - -msgid "" -":pep:`758`: :ref:`Allow except and except* expressions without brackets " -"`" -msgstr "" - -msgid "" -":pep:`765`: :ref:`Control flow in finally blocks `" -msgstr "" - -msgid "" -":pep:`768`: :ref:`Safe external debugger interface for CPython `" -msgstr "" - -msgid ":ref:`A new type of interpreter `" -msgstr "" - -msgid "" -":ref:`Free-threaded mode improvements `" -msgstr "" - -msgid ":ref:`Improved error messages `" -msgstr "" - -msgid ":ref:`Incremental garbage collection `" -msgstr "" - -msgid "Significant improvements in the standard library:" -msgstr "" - -msgid "" -":pep:`784`: :ref:`Zstandard support in the standard library `" -msgstr "" - -msgid ":ref:`whatsnew314-asyncio-introspection`" -msgstr "" - -msgid ":ref:`whatsnew314-concurrent-warnings-control`" -msgstr "" - -msgid "" -":ref:`Syntax highlighting in the default interactive shell `, and color output in several standard library CLIs" -msgstr "" - -msgid "C API improvements:" -msgstr "" - -msgid ":pep:`741`: :ref:`Python configuration C API `" -msgstr "" - -msgid "Platform support:" -msgstr "" - -msgid "" -":pep:`776`: Emscripten is now an :ref:`officially supported platform " -"`, at :pep:`tier 3 <11#tier-3>`." -msgstr "" - -msgid "Release changes:" -msgstr "" - -msgid "" -":pep:`779`: :ref:`Free-threaded Python is officially supported `" -msgstr "" - -msgid "" -":pep:`761`: :ref:`PGP signatures have been discontinued for official " -"releases `" -msgstr "" - -msgid "" -":ref:`Windows and macOS binary releases now support the experimental just-in-" -"time compiler `" -msgstr "" - -msgid "" -":ref:`Binary releases for Android are now provided `" -msgstr "" - -msgid "New features" -msgstr "" - -msgid ":pep:`649` & :pep:`749`: Deferred evaluation of annotations" -msgstr "" - -msgid "" -"The :term:`annotations ` on functions, classes, and modules are " -"no longer evaluated eagerly. Instead, annotations are stored in special-" -"purpose :term:`annotate functions ` and evaluated only " -"when necessary (except if ``from __future__ import annotations`` is used)." -msgstr "" - -msgid "" -"This change is designed to improve performance and usability of annotations " -"in Python in most circumstances. The runtime cost for defining annotations " -"is minimized, but it remains possible to introspect annotations at runtime. " -"It is no longer necessary to enclose annotations in strings if they contain " -"forward references." -msgstr "" - -msgid "" -"The new :mod:`annotationlib` module provides tools for inspecting deferred " -"annotations. Annotations may be evaluated in the :attr:`~annotationlib." -"Format.VALUE` format (which evaluates annotations to runtime values, similar " -"to the behavior in earlier Python versions), the :attr:`~annotationlib." -"Format.FORWARDREF` format (which replaces undefined names with special " -"markers), and the :attr:`~annotationlib.Format.STRING` format (which returns " -"annotations as strings)." -msgstr "" - -msgid "This example shows how these formats behave:" -msgstr "" - -msgid "" -">>> from annotationlib import get_annotations, Format\n" -">>> def func(arg: Undefined):\n" -"... pass\n" -">>> get_annotations(func, format=Format.VALUE)\n" -"Traceback (most recent call last):\n" -" ...\n" -"NameError: name 'Undefined' is not defined\n" -">>> get_annotations(func, format=Format.FORWARDREF)\n" -"{'arg': ForwardRef('Undefined', owner=)}\n" -">>> get_annotations(func, format=Format.STRING)\n" -"{'arg': 'Undefined'}" -msgstr "" - -msgid "" -"The :ref:`porting ` section contains " -"guidance on changes that may be needed due to these changes, though in the " -"majority of cases, code will continue working as-is." -msgstr "" - -msgid "" -"(Contributed by Jelle Zijlstra in :pep:`749` and :gh:`119180`; :pep:`649` " -"was written by Larry Hastings.)" -msgstr "" - -msgid ":pep:`649`" -msgstr "" - -msgid "Deferred Evaluation Of Annotations Using Descriptors" -msgstr "" - -msgid ":pep:`749`" -msgstr "" - -msgid "Implementing PEP 649" -msgstr "" - -msgid ":pep:`734`: Multiple interpreters in the standard library" -msgstr "" - -msgid "" -"The CPython runtime supports running multiple copies of Python in the same " -"process simultaneously and has done so for over 20 years. Each of these " -"separate copies is called an 'interpreter'. However, the feature had been " -"available only through the :ref:`C-API `." -msgstr "" - -msgid "" -"That limitation is removed in Python 3.14, with the new :mod:`concurrent." -"interpreters` module." -msgstr "" - -msgid "" -"There are at least two notable reasons why using multiple interpreters has " -"significant benefits:" -msgstr "" - -msgid "they support a new (to Python), human-friendly concurrency model" -msgstr "" - -msgid "true multi-core parallelism" -msgstr "" - -msgid "" -"For some use cases, concurrency in software improves efficiency and can " -"simplify design, at a high level. At the same time, implementing and " -"maintaining all but the simplest concurrency is often a struggle for the " -"human brain. That especially applies to plain threads (for example, :mod:" -"`threading`), where all memory is shared between all threads." -msgstr "" - -msgid "" -"With multiple isolated interpreters, you can take advantage of a class of " -"concurrency models, like Communicating Sequential Processes (CSP) or the " -"actor model, that have found success in other programming languages, like " -"Smalltalk, Erlang, Haskell, and Go. Think of multiple interpreters as " -"threads but with opt-in sharing." -msgstr "" - -msgid "" -"Regarding multi-core parallelism: as of Python 3.12, interpreters are now " -"sufficiently isolated from one another to be used in parallel (see :pep:" -"`684`). This unlocks a variety of CPU-intensive use cases for Python that " -"were limited by the :term:`GIL`." -msgstr "" - -msgid "" -"Using multiple interpreters is similar in many ways to :mod:" -"`multiprocessing`, in that they both provide isolated logical \"processes\" " -"that can run in parallel, with no sharing by default. However, when using " -"multiple interpreters, an application will use fewer system resources and " -"will operate more efficiently (since it stays within the same process). " -"Think of multiple interpreters as having the isolation of processes with the " -"efficiency of threads." -msgstr "" - -msgid "" -"While the feature has been around for decades, multiple interpreters have " -"not been used widely, due to low awareness and the lack of a standard " -"library module. Consequently, they currently have several notable " -"limitations, which are expected to improve significantly now that the " -"feature is going mainstream." -msgstr "" - -msgid "Current limitations:" -msgstr "" - -msgid "starting each interpreter has not been optimized yet" -msgstr "" - -msgid "" -"each interpreter uses more memory than necessary (work continues on " -"extensive internal sharing between interpreters)" -msgstr "" - -msgid "" -"there aren't many options *yet* for truly sharing objects or other data " -"between interpreters (other than :type:`memoryview`)" -msgstr "" - -msgid "" -"many third-party extension modules on PyPI are not yet compatible with " -"multiple interpreters (all standard library extension modules *are* " -"compatible)" -msgstr "" - -msgid "" -"the approach to writing applications that use multiple isolated interpreters " -"is mostly unfamiliar to Python users, for now" -msgstr "" - -msgid "" -"The impact of these limitations will depend on future CPython improvements, " -"how interpreters are used, and what the community solves through PyPI " -"packages. Depending on the use case, the limitations may not have much " -"impact, so try it out!" -msgstr "" - -msgid "" -"Furthermore, future CPython releases will reduce or eliminate overhead and " -"provide utilities that are less appropriate on PyPI. In the meantime, most " -"of the limitations can also be addressed through extension modules, meaning " -"PyPI packages can fill any gap for 3.14, and even back to 3.12 where " -"interpreters were finally properly isolated and stopped sharing the :term:" -"`GIL`. Likewise, libraries on PyPI are expected to emerge for high-level " -"abstractions on top of interpreters." -msgstr "" - -msgid "" -"Regarding extension modules, work is in progress to update some PyPI " -"projects, as well as tools like Cython, pybind11, nanobind, and PyO3. The " -"steps for isolating an extension module are found at :ref:`isolating-" -"extensions-howto`. Isolating a module has a lot of overlap with what is " -"required to support :ref:`free-threading `, so the ongoing work in the community in that area will help " -"accelerate support for multiple interpreters." -msgstr "" - -msgid "" -"Also added in 3.14: :ref:`concurrent.futures.InterpreterPoolExecutor " -"`." -msgstr "" - -msgid "(Contributed by Eric Snow in :gh:`134939`.)" -msgstr "" - -msgid ":pep:`734`" -msgstr "" - -msgid ":pep:`750`: Template string literals" -msgstr "" - -msgid "" -"Template strings are a new mechanism for custom string processing. They " -"share the familiar syntax of f-strings but, unlike f-strings, return an " -"object representing the static and interpolated parts of the string, instead " -"of a simple :class:`str`." -msgstr "" - -msgid "To write a t-string, use a ``'t'`` prefix instead of an ``'f'``:" -msgstr "" - -msgid "" -">>> variety = 'Stilton'\n" -">>> template = t'Try some {variety} cheese!'\n" -">>> type(template)\n" -"" -msgstr "" - -msgid "" -":class:`~string.templatelib.Template` objects provide access to the static " -"and interpolated (in curly braces) parts of a string *before* they are " -"combined. Iterate over :class:`!Template` instances to access their parts in " -"order:" -msgstr "" - -msgid "" -">>> list(template)\n" -"['Try some ', Interpolation('Stilton', 'variety', None, ''), ' cheese!']" -msgstr "" - -msgid "" -"It's easy to write (or call) code to process :class:`!Template` instances. " -"For example, here's a function that renders static parts lowercase and :" -"class:`~string.templatelib.Interpolation` instances uppercase:" -msgstr "" - -msgid "" -"from string.templatelib import Interpolation\n" -"\n" -"def lower_upper(template):\n" -" \"\"\"Render static parts lowercase and interpolations uppercase.\"\"\"\n" -" parts = []\n" -" for part in template:\n" -" if isinstance(part, Interpolation):\n" -" parts.append(str(part.value).upper())\n" -" else:\n" -" parts.append(part.lower())\n" -" return ''.join(parts)\n" -"\n" -"name = 'Wenslydale'\n" -"template = t'Mister {name}'\n" -"assert lower_upper(template) == 'mister WENSLYDALE'" -msgstr "" - -msgid "" -"Because :class:`!Template` instances distinguish between static strings and " -"interpolations at runtime, they can be useful for sanitising user input. " -"Writing a :func:`!html` function that escapes user input in HTML is an " -"exercise left to the reader! Template processing code can provide improved " -"flexibility. For instance, a more advanced :func:`!html` function could " -"accept a :class:`!dict` of HTML attributes directly in the template:" -msgstr "" - -msgid "" -"attributes = {'src': 'limburger.jpg', 'alt': 'lovely cheese'}\n" -"template = t''\n" -"assert html(template) == '\"lovely'" -msgstr "" - -msgid "" -"Of course, template processing code does not need to return a string-like " -"result. An even *more* advanced :func:`!html` could return a custom type " -"representing a DOM-like structure." -msgstr "" - -msgid "" -"With t-strings in place, developers can write systems that sanitise SQL, " -"make safe shell operations, improve logging, tackle modern ideas in web " -"development (HTML, CSS, and so on), and implement lightweight custom " -"business DSLs." -msgstr "" - -msgid "" -"(Contributed by Jim Baker, Guido van Rossum, Paul Everitt, Koudai Aono, " -"Lysandros Nikolaou, Dave Peck, Adam Turner, Jelle Zijlstra, Bénédikt Tran, " -"and Pablo Galindo Salgado in :gh:`132661`.)" -msgstr "" - -msgid ":pep:`750`." -msgstr "" - -msgid ":pep:`768`: Safe external debugger interface" -msgstr "" - -msgid "" -"Python 3.14 introduces a zero-overhead debugging interface that allows " -"debuggers and profilers to safely attach to running Python processes without " -"stopping or restarting them. This is a significant enhancement to Python's " -"debugging capabilities, meaning that unsafe alternatives are no longer " -"required." -msgstr "" - -msgid "" -"The new interface provides safe execution points for attaching debugger code " -"without modifying the interpreter's normal execution path or adding any " -"overhead at runtime. Due to this, tools can now inspect and interact with " -"Python applications in real-time, which is a crucial capability for high-" -"availability systems and production environments." -msgstr "" - -msgid "" -"For convenience, this interface is implemented in the :func:`sys." -"remote_exec` function. For example:" -msgstr "" - -msgid "" -"import sys\n" -"from tempfile import NamedTemporaryFile\n" -"\n" -"with NamedTemporaryFile(mode='w', suffix='.py', delete=False) as f:\n" -" script_path = f.name\n" -" f.write(f'import my_debugger; my_debugger.connect({os.getpid()})')\n" -"\n" -"# Execute in process with PID 1234\n" -"print('Behold! An offering:')\n" -"sys.remote_exec(1234, script_path)" -msgstr "" - -msgid "" -"This function allows sending Python code to be executed in a target process " -"at the next safe execution point. However, tool authors can also implement " -"the protocol directly as described in the PEP, which details the underlying " -"mechanisms used to safely attach to running processes." -msgstr "" - -msgid "" -"The debugging interface has been carefully designed with security in mind " -"and includes several mechanisms to control access:" -msgstr "" - -msgid "A :envvar:`PYTHON_DISABLE_REMOTE_DEBUG` environment variable." -msgstr "" - -msgid "A :option:`-X disable-remote-debug` command-line option." -msgstr "" - -msgid "" -"A :option:`--without-remote-debug` configure flag to completely disable the " -"feature at build time." -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo Salgado, Matt Wozniski, and Ivona Stojanovic " -"in :gh:`131591`.)" -msgstr "" - -msgid ":pep:`768`." -msgstr "" - -msgid "A new type of interpreter" -msgstr "" - -msgid "" -"A new type of interpreter has been added to CPython. It uses tail calls " -"between small C functions that implement individual Python opcodes, rather " -"than one large C ``case`` statement. For certain newer compilers, this " -"interpreter provides significantly better performance. Preliminary " -"benchmarks suggest a geometric mean of 3-5% faster on the standard " -"``pyperformance`` benchmark suite, depending on platform and architecture. " -"The baseline is Python 3.14 built with Clang 19, without this new " -"interpreter." -msgstr "" - -msgid "" -"This interpreter currently only works with Clang 19 and newer on x86-64 and " -"AArch64 architectures. However, a future release of GCC is expected to " -"support this as well." -msgstr "" - -msgid "" -"This feature is opt-in for now. Enabling profile-guided optimization is " -"highly recommended when using the new interpreter as it is the only " -"configuration that has been tested and validated for improved performance. " -"For further information, see :option:`--with-tail-call-interp`." -msgstr "" - -msgid "" -"This is not to be confused with `tail call optimization`__ of Python " -"functions, which is currently not implemented in CPython." -msgstr "" - -msgid "" -"This new interpreter type is an internal implementation detail of the " -"CPython interpreter. It doesn't change the visible behavior of Python " -"programs at all. It can improve their performance, but doesn't change " -"anything else." -msgstr "" - -msgid "" -"(Contributed by Ken Jin in :gh:`128563`, with ideas on how to implement this " -"in CPython by Mark Shannon, Garrett Gu, Haoran Xu, and Josh Haberman.)" -msgstr "" - -msgid "Free-threaded mode improvements" -msgstr "" - -msgid "" -"CPython's free-threaded mode (:pep:`703`), initially added in 3.13, has been " -"significantly improved in Python 3.14. The implementation described in PEP " -"703 has been finished, including C API changes, and temporary workarounds in " -"the interpreter were replaced with more permanent solutions. The " -"specializing adaptive interpreter (:pep:`659`) is now enabled in free-" -"threaded mode, which along with many other optimizations greatly improves " -"its performance. The performance penalty on single-threaded code in free-" -"threaded mode is now roughly 5-10%, depending on the platform and C compiler " -"used." -msgstr "" - -msgid "" -"From Python 3.14, when compiling extension modules for the free-threaded " -"build of CPython on Windows, the preprocessor variable ``Py_GIL_DISABLED`` " -"now needs to be specified by the build backend, as it will no longer be " -"determined automatically by the C compiler. For a running interpreter, the " -"setting that was used at compile time can be found using :func:`sysconfig." -"get_config_var`." -msgstr "" - -msgid "" -"The new :option:`-X context_aware_warnings <-X>` flag controls if :ref:" -"`concurrent safe warnings control ` " -"is enabled. The flag defaults to true for the free-threaded build and false " -"for the GIL-enabled build." -msgstr "" - -msgid "" -"A new :data:`~sys.flags.thread_inherit_context` flag has been added, which " -"if enabled means that threads created with :class:`threading.Thread` start " -"with a copy of the :class:`~contextvars.Context()` of the caller of :meth:" -"`~threading.Thread.start`. Most significantly, this makes the warning " -"filtering context established by :class:`~warnings.catch_warnings` be " -"\"inherited\" by threads (or asyncio tasks) started within that context. It " -"also affects other modules that use context variables, such as the :mod:" -"`decimal` context manager. This flag defaults to true for the free-threaded " -"build and false for the GIL-enabled build." -msgstr "" - -msgid "" -"(Contributed by Sam Gross, Matt Page, Neil Schemenauer, Thomas Wouters, " -"Donghee Na, Kirill Podoprigora, Ken Jin, Itamar Oren, Brett Simmers, Dino " -"Viehland, Nathan Goldbaum, Ralf Gommers, Lysandros Nikolaou, Kumar Aditya, " -"Edgar Margffoy, and many others. Some of these contributors are employed by " -"Meta, which has continued to provide significant engineering resources to " -"support this project.)" -msgstr "" - -msgid "Improved error messages" -msgstr "" - -msgid "" -"The interpreter now provides helpful suggestions when it detects typos in " -"Python keywords. When a word that closely resembles a Python keyword is " -"encountered, the interpreter will suggest the correct keyword in the error " -"message. This feature helps programmers quickly identify and fix common " -"typing mistakes. For example:" -msgstr "" - -msgid "" -">>> whille True:\n" -"... pass\n" -"Traceback (most recent call last):\n" -" File \"\", line 1\n" -" whille True:\n" -" ^^^^^^\n" -"SyntaxError: invalid syntax. Did you mean 'while'?" -msgstr "" - -msgid "" -"While the feature focuses on the most common cases, some variations of " -"misspellings may still result in regular syntax errors. (Contributed by " -"Pablo Galindo in :gh:`132449`.)" -msgstr "" - -msgid "" -":keyword:`elif` statements that follow an :keyword:`else` block now have a " -"specific error message. (Contributed by Steele Farnsworth in :gh:`129902`.)" -msgstr "" - -msgid "" -">>> if who == \"me\":\n" -"... print(\"It's me!\")\n" -"... else:\n" -"... print(\"It's not me!\")\n" -"... elif who is None:\n" -"... print(\"Who is it?\")\n" -"File \"\", line 5\n" -" elif who is None:\n" -" ^^^^\n" -"SyntaxError: 'elif' block follows an 'else' block" -msgstr "" - -msgid "" -"If a statement is passed to the :ref:`if_expr` after :keyword:`else`, or one " -"of :keyword:`pass`, :keyword:`break`, or :keyword:`continue` is passed " -"before :keyword:`if`, then the error message highlights where the :token:" -"`~python-grammar:expression` is required. (Contributed by Sergey Miryanov " -"in :gh:`129515`.)" -msgstr "" - -msgid "" -">>> x = 1 if True else pass\n" -"Traceback (most recent call last):\n" -" File \"\", line 1\n" -" x = 1 if True else pass\n" -" ^^^^\n" -"SyntaxError: expected expression after 'else', but statement is given\n" -"\n" -">>> x = continue if True else break\n" -"Traceback (most recent call last):\n" -" File \"\", line 1\n" -" x = continue if True else break\n" -" ^^^^^^^^\n" -"SyntaxError: expected expression before 'if', but statement is given" -msgstr "" - -msgid "" -"When incorrectly closed strings are detected, the error message suggests " -"that the string may be intended to be part of the string. (Contributed by " -"Pablo Galindo in :gh:`88535`.)" -msgstr "" - -msgid "" -">>> \"The interesting object \"The important object\" is very important\"\n" -"Traceback (most recent call last):\n" -"SyntaxError: invalid syntax. Is this intended to be part of the string?" -msgstr "" - -msgid "" -"When strings have incompatible prefixes, the error now shows which prefixes " -"are incompatible. (Contributed by Nikita Sobolev in :gh:`133197`.)" -msgstr "" - -msgid "" -">>> ub'abc'\n" -" File \"\", line 1\n" -" ub'abc'\n" -" ^^\n" -"SyntaxError: 'u' and 'b' prefixes are incompatible" -msgstr "" - -msgid "Improved error messages when using ``as`` with incompatible targets in:" -msgstr "" - -msgid "Imports: ``import ... as ...``" -msgstr "" - -msgid "From imports: ``from ... import ... as ...``" -msgstr "" - -msgid "Except handlers: ``except ... as ...``" -msgstr "" - -msgid "Pattern-match cases: ``case ... as ...``" -msgstr "" - -msgid "" -"(Contributed by Nikita Sobolev in :gh:`123539`, :gh:`123562`, and :gh:" -"`123440`.)" -msgstr "" - -msgid "" -"Improved error message when trying to add an instance of an unhashable type " -"to a :class:`dict` or :class:`set`. (Contributed by CF Bolz-Tereick and " -"Victor Stinner in :gh:`132828`.)" -msgstr "" - -msgid "" -">>> s = set()\n" -">>> s.add({'pages': 12, 'grade': 'A'})\n" -"Traceback (most recent call last):\n" -" File \"\", line 1, in \n" -" s.add({'pages': 12, 'grade': 'A'})\n" -" ~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" -"TypeError: cannot use 'dict' as a set element (unhashable type: 'dict')\n" -">>> d = {}\n" -">>> l = [1, 2, 3]\n" -">>> d[l] = 12\n" -"Traceback (most recent call last):\n" -" File \"\", line 1, in \n" -" d[l] = 12\n" -" ~^^^\n" -"TypeError: cannot use 'list' as a dict key (unhashable type: 'list')" -msgstr "" - -msgid "" -"Improved error message when an object supporting the synchronous context " -"manager protocol is entered using :keyword:`async with` instead of :keyword:" -"`with`, and vice versa for the asynchronous context manager protocol. " -"(Contributed by Bénédikt Tran in :gh:`128398`.)" -msgstr "" - -msgid ":pep:`784`: Zstandard support in the standard library" -msgstr "" - -msgid "" -"The new :mod:`!compression` package contains modules :mod:`!compression." -"lzma`, :mod:`!compression.bz2`, :mod:`!compression.gzip` and :mod:`!" -"compression.zlib` which re-export the :mod:`lzma`, :mod:`bz2`, :mod:`gzip` " -"and :mod:`zlib` modules respectively. The new import names under :mod:`!" -"compression` are the preferred names for importing these compression modules " -"from Python 3.14. However, the existing modules names have not been " -"deprecated. Any deprecation or removal of the existing compression modules " -"will occur no sooner than five years after the release of 3.14." -msgstr "" - -msgid "" -"The new :mod:`!compression.zstd` module provides compression and " -"decompression APIs for the Zstandard format via bindings to `Meta's zstd " -"library `__. Zstandard is a widely " -"adopted, highly efficient, and fast compression format. In addition to the " -"APIs introduced in :mod:`!compression.zstd`, support for reading and writing " -"Zstandard compressed archives has been added to the :mod:`tarfile`, :mod:" -"`zipfile`, and :mod:`shutil` modules." -msgstr "" - -msgid "Here's an example of using the new module to compress some data:" -msgstr "" - -msgid "" -"from compression import zstd\n" -"import math\n" -"\n" -"data = str(math.pi).encode() * 20\n" -"compressed = zstd.compress(data)\n" -"ratio = len(compressed) / len(data)\n" -"print(f\"Achieved compression ratio of {ratio}\")" -msgstr "" - -msgid "" -"As can be seen, the API is similar to the APIs of the :mod:`!lzma` and :mod:" -"`!bz2` modules." -msgstr "" - -msgid "" -"(Contributed by Emma Harper Smith, Adam Turner, Gregory P. Smith, Tomas " -"Roun, Victor Stinner, and Rogdham in :gh:`132983`.)" -msgstr "" - -msgid ":pep:`784`." -msgstr "" - -msgid "Asyncio introspection capabilities" -msgstr "" - -msgid "" -"Added a new command-line interface to inspect running Python processes using " -"asynchronous tasks, available via ``python -m asyncio ps PID`` or ``python -" -"m asyncio pstree PID``." -msgstr "" - -msgid "" -"The ``ps`` subcommand inspects the given process ID (PID) and displays " -"information about currently running asyncio tasks. It outputs a task table: " -"a flat listing of all tasks, their names, their coroutine stacks, and which " -"tasks are awaiting them." -msgstr "" - -msgid "" -"The ``pstree`` subcommand fetches the same information, but instead renders " -"a visual async call tree, showing coroutine relationships in a hierarchical " -"format. This command is particularly useful for debugging long-running or " -"stuck asynchronous programs. It can help developers quickly identify where a " -"program is blocked, what tasks are pending, and how coroutines are chained " -"together." -msgstr "" - -msgid "For example given this code:" -msgstr "" - -msgid "" -"import asyncio\n" -"\n" -"async def play_track(track):\n" -" await asyncio.sleep(5)\n" -" print(f'🎵 Finished: {track}')\n" -"\n" -"async def play_album(name, tracks):\n" -" async with asyncio.TaskGroup() as tg:\n" -" for track in tracks:\n" -" tg.create_task(play_track(track), name=track)\n" -"\n" -"async def main():\n" -" async with asyncio.TaskGroup() as tg:\n" -" tg.create_task(\n" -" play_album('Sundowning', ['TNDNBTG', 'Levitate']),\n" -" name='Sundowning')\n" -" tg.create_task(\n" -" play_album('TMBTE', ['DYWTYLM', 'Aqua Regia']),\n" -" name='TMBTE')\n" -"\n" -"if __name__ == '__main__':\n" -" asyncio.run(main())" -msgstr "" - -msgid "" -"Executing the new tool on the running process will yield a table like this:" -msgstr "" - -msgid "" -"python -m asyncio ps 12345\n" -"\n" -"tid task id task name coroutine " -"stack awaiter " -"chain awaiter name awaiter id\n" -"------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n" -"1935500 0x7fc930c18050 Task-1 TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> " -"main " -"0x0\n" -"1935500 0x7fc930c18230 Sundowning TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> album TaskGroup._aexit -> TaskGroup.__aexit__ -> " -"main Task-1 0x7fc930c18050\n" -"1935500 0x7fc93173fa50 TMBTE TaskGroup._aexit -> " -"TaskGroup.__aexit__ -> album TaskGroup._aexit -> TaskGroup.__aexit__ -> " -"main Task-1 0x7fc930c18050\n" -"1935500 0x7fc93173fdf0 TNDNBTG sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album Sundowning 0x7fc930c18230\n" -"1935500 0x7fc930d32510 Levitate sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album Sundowning 0x7fc930c18230\n" -"1935500 0x7fc930d32890 DYWTYLM sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album TMBTE 0x7fc93173fa50\n" -"1935500 0x7fc93161ec30 Aqua Regia sleep -> " -"play TaskGroup._aexit -> TaskGroup." -"__aexit__ -> album TMBTE 0x7fc93173fa50" -msgstr "" - -msgid "or a tree like this:" -msgstr "" - -msgid "" -"python -m asyncio pstree 12345\n" -"\n" -"└── (T) Task-1\n" -" └── main example.py:13\n" -" └── TaskGroup.__aexit__ Lib/asyncio/taskgroups.py:72\n" -" └── TaskGroup._aexit Lib/asyncio/taskgroups.py:121\n" -" ├── (T) Sundowning\n" -" │ └── album example.py:8\n" -" │ └── TaskGroup.__aexit__ Lib/asyncio/taskgroups." -"py:72\n" -" │ └── TaskGroup._aexit Lib/asyncio/taskgroups." -"py:121\n" -" │ ├── (T) TNDNBTG\n" -" │ │ └── play example.py:4\n" -" │ │ └── sleep Lib/asyncio/tasks.py:702\n" -" │ └── (T) Levitate\n" -" │ └── play example.py:4\n" -" │ └── sleep Lib/asyncio/tasks.py:702\n" -" └── (T) TMBTE\n" -" └── album example.py:8\n" -" └── TaskGroup.__aexit__ Lib/asyncio/taskgroups." -"py:72\n" -" └── TaskGroup._aexit Lib/asyncio/taskgroups." -"py:121\n" -" ├── (T) DYWTYLM\n" -" │ └── play example.py:4\n" -" │ └── sleep Lib/asyncio/tasks.py:702\n" -" └── (T) Aqua Regia\n" -" └── play example.py:4\n" -" └── sleep Lib/asyncio/tasks.py:702" -msgstr "" - -msgid "" -"If a cycle is detected in the async await graph (which could indicate a " -"programming issue), the tool raises an error and lists the cycle paths that " -"prevent tree construction:" -msgstr "" - -msgid "" -"python -m asyncio pstree 12345\n" -"\n" -"ERROR: await-graph contains cycles - cannot print a tree!\n" -"\n" -"cycle: Task-2 → Task-3 → Task-2" -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo, Łukasz Langa, Yury Selivanov, and Marta Gomez " -"Macias in :gh:`91048`.)" -msgstr "" - -msgid "Concurrent safe warnings control" -msgstr "" - -msgid "" -"The :class:`warnings.catch_warnings` context manager will now optionally use " -"a context variable for warning filters. This is enabled by setting the :data:" -"`~sys.flags.context_aware_warnings` flag, either with the ``-X`` command-" -"line option or an environment variable. This gives predictable warnings " -"control when using :class:`~warnings.catch_warnings` combined with multiple " -"threads or asynchronous tasks. The flag defaults to true for the free-" -"threaded build and false for the GIL-enabled build." -msgstr "" - -msgid "(Contributed by Neil Schemenauer and Kumar Aditya in :gh:`130010`.)" -msgstr "" - -msgid "Other language changes" -msgstr "" - -msgid "" -"All Windows code pages are now supported as 'cpXXX' codecs on Windows. " -"(Contributed by Serhiy Storchaka in :gh:`123803`.)" -msgstr "" - -msgid "" -"Implement mixed-mode arithmetic rules combining real and complex numbers as " -"specified by the C standard since C99. (Contributed by Sergey B Kirpichev " -"in :gh:`69639`.)" -msgstr "" - -msgid "" -"More syntax errors are now detected regardless of optimisation and the :" -"option:`-O` command-line option. This includes writes to ``__debug__``, " -"incorrect use of :keyword:`await`, and asynchronous comprehensions outside " -"asynchronous functions. For example, ``python -O -c 'assert (__debug__ := " -"1)'`` or ``python -O -c 'assert await 1'`` now produce :exc:`SyntaxError`\\ " -"s. (Contributed by Irit Katriel and Jelle Zijlstra in :gh:`122245` & :gh:" -"`121637`.)" -msgstr "" - -msgid "" -"When subclassing a pure C type, the C slots for the new type are no longer " -"replaced with a wrapped version on class creation if they are not explicitly " -"overridden in the subclass. (Contributed by Tomasz Pytel in :gh:`132284`.)" -msgstr "" - -msgid "Built-ins" -msgstr "" - -msgid "" -"The :meth:`bytes.fromhex` and :meth:`bytearray.fromhex` methods now accept " -"ASCII :class:`bytes` and :term:`bytes-like objects `. " -"(Contributed by Daniel Pope in :gh:`129349`.)" -msgstr "" - -msgid "" -"Add class methods :meth:`float.from_number` and :meth:`complex.from_number` " -"to convert a number to :class:`float` or :class:`complex` type " -"correspondingly. They raise a :exc:`TypeError` if the argument is not a real " -"number. (Contributed by Serhiy Storchaka in :gh:`84978`.)" -msgstr "" - -msgid "" -"Support underscore and comma as thousands separators in the fractional part " -"for floating-point presentation types of the new-style string formatting " -"(with :func:`format` or :ref:`f-strings`). (Contributed by Sergey B " -"Kirpichev in :gh:`87790`.)" -msgstr "" - -msgid "" -"The :func:`int` function no longer delegates to :meth:`~object.__trunc__`. " -"Classes that want to support conversion to :func:`!int` must implement " -"either :meth:`~object.__int__` or :meth:`~object.__index__`. (Contributed by " -"Mark Dickinson in :gh:`119743`.)" -msgstr "" - -msgid "" -"The :func:`map` function now has an optional keyword-only *strict* flag " -"like :func:`zip` to check that all the iterables are of equal length. " -"(Contributed by Wannes Boeykens in :gh:`119793`.)" -msgstr "" - -msgid "" -"The :class:`memoryview` type now supports subscription, making it a :term:" -"`generic type`. (Contributed by Brian Schubert in :gh:`126012`.)" -msgstr "" - -msgid "" -"Using :data:`NotImplemented` in a boolean context will now raise a :exc:" -"`TypeError`. This has raised a :exc:`DeprecationWarning` since Python 3.9. " -"(Contributed by Jelle Zijlstra in :gh:`118767`.)" -msgstr "" - -msgid "" -"Three-argument :func:`pow` now tries calling :meth:`~object.__rpow__` if " -"necessary. Previously it was only called in two-argument :func:`!pow` and " -"the binary power operator. (Contributed by Serhiy Storchaka in :gh:`130104`.)" -msgstr "" - -msgid "" -":class:`super` objects are now :mod:`copyable ` and :mod:`pickleable " -"`. (Contributed by Serhiy Storchaka in :gh:`125767`.)" -msgstr "" - -msgid "Command line and environment" -msgstr "" - -msgid "" -"The import time flag can now track modules that are already loaded " -"('cached'), via the new :option:`-X importtime=2 <-X>`. When such a module " -"is imported, the ``self`` and ``cumulative`` times are replaced by the " -"string ``cached``." -msgstr "" - -msgid "" -"Values above ``2`` for ``-X importtime`` are now reserved for future use." -msgstr "" - -msgid "(Contributed by Noah Kim and Adam Turner in :gh:`118655`.)" -msgstr "" - -msgid "" -"The command-line option :option:`-c` now automatically dedents its code " -"argument before execution. (Contributed by Jon Crall and Steven Sun in :gh:" -"`103998`.)" -msgstr "" - -msgid "" -":option:`!-J` is no longer a reserved flag for Jython_, and now has no " -"special meaning. (Contributed by Adam Turner in :gh:`133336`.)" -msgstr "" - -msgid "PEP 758: Allow ``except`` and ``except*`` expressions without brackets" -msgstr "" - -msgid "" -"The :keyword:`except` and :keyword:`except* ` expressions now " -"allow brackets to be omitted when there are multiple exception types and the " -"``as`` clause is not used. For example:" -msgstr "" - -msgid "" -"try:\n" -" connect_to_server()\n" -"except TimeoutError, ConnectionRefusedError:\n" -" print('The network has ceased to be!')" -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo and Brett Cannon in :pep:`758` and :gh:" -"`131831`.)" -msgstr "" - -msgid "PEP 765: Control flow in :keyword:`finally` blocks" -msgstr "" - -msgid "" -"The compiler now emits a :exc:`SyntaxWarning` when a :keyword:`return`, :" -"keyword:`break`, or :keyword:`continue` statement have the effect of leaving " -"a :keyword:`finally` block. This change is specified in :pep:`765`." -msgstr "" - -msgid "" -"In situations where this change is inconvenient (such as those where the " -"warnings are redundant due to code linting), the :ref:`warning filter " -"` can be used to turn off all syntax warnings by adding " -"``ignore::SyntaxWarning`` as a filter. This can be specified in combination " -"with a filter that converts other warnings to errors (for example, passing " -"``-Werror -Wignore::SyntaxWarning`` as CLI options, or setting " -"``PYTHONWARNINGS=error,ignore::SyntaxWarning``)." -msgstr "" - -msgid "" -"Note that applying such a filter at runtime using the :mod:`warnings` module " -"will only suppress the warning in code that is compiled *after* the filter " -"is adjusted. Code that is compiled prior to the filter adjustment (for " -"example, when a module is imported) will still emit the syntax warning." -msgstr "" - -msgid "(Contributed by Irit Katriel in :gh:`130080`.)" -msgstr "" - -msgid "Garbage collection" -msgstr "" - -msgid "**From Python 3.14.5 onwards:**" -msgstr "" - -msgid "The garbage collector (GC) has changed in Python 3.14.5." -msgstr "" - -msgid "" -"Python 3.14.0-3.14.4 shipped with a new incremental GC. However, due to a " -"number of `reports `__ of " -"significant memory pressure in production environments, it has been reverted " -"back to the generational GC from 3.13. This is the GC now used in Python " -"3.14.5 and later." -msgstr "" - -msgid "**Previously in Python 3.14.0-3.14.4:**" -msgstr "" - -msgid "" -"The cycle garbage collector is now incremental. This means that maximum " -"pause times are reduced by an order of magnitude or more for larger heaps." -msgstr "" - -msgid "" -"There are now only two generations: young and old. When :func:`gc.collect` " -"is not called directly, the GC is invoked a little less frequently. When " -"invoked, it collects the young generation and an increment of the old " -"generation, instead of collecting one or more generations." -msgstr "" - -msgid "The behavior of :func:`!gc.collect` changes slightly:" -msgstr "" - -msgid "" -"``gc.collect(1)``: Performs an increment of garbage collection, rather than " -"collecting generation 1." -msgstr "" - -msgid "Other calls to :func:`!gc.collect` are unchanged." -msgstr "" - -msgid "(Contributed by Mark Shannon in :gh:`108362`.)" -msgstr "" - -msgid "Default interactive shell" -msgstr "" - -msgid "" -"The default :term:`interactive` shell now highlights Python syntax. The " -"feature is enabled by default, save if :envvar:`PYTHON_BASIC_REPL` or any " -"other environment variable that disables colour is set. See :ref:`using-on-" -"controlling-color` for details." -msgstr "" - -msgid "" -"The default color theme for syntax highlighting strives for good contrast " -"and exclusively uses the 4-bit VGA standard ANSI color codes for maximum " -"compatibility. The theme can be customized using an experimental API :func:`!" -"_colorize.set_theme`. This can be called interactively or in the :envvar:" -"`PYTHONSTARTUP` script. Note that this function has no stability guarantees, " -"and may change or be removed." -msgstr "" - -msgid "(Contributed by Łukasz Langa in :gh:`131507`.)" -msgstr "" - -msgid "" -"The default :term:`interactive` shell now supports import auto-completion. " -"This means that typing ``import co`` and pressing :kbd:`` will suggest " -"modules starting with ``co``. Similarly, typing ``from concurrent import i`` " -"will suggest submodules of ``concurrent`` starting with ``i``. Note that " -"autocompletion of module attributes is not currently supported. (Contributed " -"by Tomas Roun in :gh:`69605`.)" -msgstr "" - -msgid "New modules" -msgstr "" - -msgid "" -":mod:`annotationlib`: For introspecting :term:`annotations `. " -"See :ref:`PEP 749 ` for more details. " -"(Contributed by Jelle Zijlstra in :gh:`119180`.)" -msgstr "" - -msgid "" -":mod:`compression` (including :mod:`compression.zstd`): A package for " -"compression-related modules, including a new module to support the Zstandard " -"compression format. See :ref:`PEP 784 ` for more " -"details. (Contributed by Emma Harper Smith, Adam Turner, Gregory P. Smith, " -"Tomas Roun, Victor Stinner, and Rogdham in :gh:`132983`.)" -msgstr "" - -msgid "" -":mod:`concurrent.interpreters`: Support for multiple interpreters in the " -"standard library. See :ref:`PEP 734 ` for " -"more details. (Contributed by Eric Snow in :gh:`134939`.)" -msgstr "" - -msgid "" -":mod:`string.templatelib`: Support for template string literals (t-strings). " -"See :ref:`PEP 750 ` for more details. " -"(Contributed by Jim Baker, Guido van Rossum, Paul Everitt, Koudai Aono, " -"Lysandros Nikolaou, Dave Peck, Adam Turner, Jelle Zijlstra, Bénédikt Tran, " -"and Pablo Galindo Salgado in :gh:`132661`.)" -msgstr "" - -msgid "Improved modules" -msgstr "" - -msgid "argparse" -msgstr "" - -msgid "" -"The default value of the :ref:`program name ` for :class:`argparse." -"ArgumentParser` now reflects the way the Python interpreter was instructed " -"to find the ``__main__`` module code. (Contributed by Serhiy Storchaka and " -"Alyssa Coghlan in :gh:`66436`.)" -msgstr "" - -msgid "" -"Introduced the optional *suggest_on_error* parameter to :class:`argparse." -"ArgumentParser`, enabling suggestions for argument choices and subparser " -"names if mistyped by the user. (Contributed by Savannah Ostrowski in :gh:" -"`124456`.)" -msgstr "" - -msgid "" -"Enable color for help text, which can be disabled with the optional *color* " -"parameter to :class:`argparse.ArgumentParser`. This can also be controlled " -"by :ref:`environment variables `. (Contributed " -"by Hugo van Kemenade in :gh:`130645`.)" -msgstr "" - -msgid "ast" -msgstr "" - -msgid "" -"Add :func:`~ast.compare`, a function for comparing two ASTs. (Contributed by " -"Batuhan Taskaya and Jeremy Hylton in :gh:`60191`.)" -msgstr "" - -msgid "" -"Add support for :func:`copy.replace` for AST nodes. (Contributed by Bénédikt " -"Tran in :gh:`121141`.)" -msgstr "" - -msgid "" -"Docstrings are now removed from an optimized AST in optimization level 2. " -"(Contributed by Irit Katriel in :gh:`123958`.)" -msgstr "" - -msgid "" -"The :func:`repr` output for AST nodes now includes more information. " -"(Contributed by Tomas Roun in :gh:`116022`.)" -msgstr "" - -msgid "" -"When called with an AST as input, the :func:`~ast.parse` function now always " -"verifies that the root node type is appropriate. (Contributed by Irit " -"Katriel in :gh:`130139`.)" -msgstr "" - -msgid "" -"Add new options to the command-line interface: :option:`--feature-version " -"`, :option:`--optimize `, and :option:" -"`--show-empty `. (Contributed by Semyon Moroz in :gh:" -"`133367`.)" -msgstr "" - -msgid "asyncio" -msgstr "" - -msgid "" -"The function and methods named :func:`!create_task` now take an arbitrary " -"list of keyword arguments. All keyword arguments are passed to the :class:" -"`~asyncio.Task` constructor or the custom task factory. (See :meth:`~asyncio." -"loop.set_task_factory` for details.) The ``name`` and ``context`` keyword " -"arguments are no longer special; the name should now be set using the " -"``name`` keyword argument of the factory, and ``context`` may be ``None``." -msgstr "" - -msgid "" -"This affects the following function and methods: :meth:`asyncio." -"create_task`, :meth:`asyncio.loop.create_task`, :meth:`asyncio.TaskGroup." -"create_task`." -msgstr "" - -msgid "(Contributed by Thomas Grainger in :gh:`128307`.)" -msgstr "" - -msgid "" -"There are two new utility functions for introspecting and printing a " -"program's call graph: :func:`~asyncio.capture_call_graph` and :func:" -"`~asyncio.print_call_graph`. See :ref:`Asyncio introspection capabilities " -"` for more details. (Contributed by Yury " -"Selivanov, Pablo Galindo Salgado, and Łukasz Langa in :gh:`91048`.)" -msgstr "" - -msgid "calendar" -msgstr "" - -msgid "" -"By default, today's date is highlighted in color in :mod:`calendar`'s :ref:" -"`command-line ` text output. This can be controlled by :ref:" -"`environment variables `. (Contributed by Hugo " -"van Kemenade in :gh:`128317`.)" -msgstr "" - -msgid "concurrent.futures" -msgstr "" - -msgid "" -"Add a new executor class, :class:`~concurrent.futures." -"InterpreterPoolExecutor`, which exposes multiple Python interpreters in the " -"same process ('subinterpreters') to Python code. This uses a pool of " -"independent Python interpreters to execute calls asynchronously." -msgstr "" - -msgid "" -"This is separate from the new :mod:`~concurrent.interpreters` module " -"introduced by :ref:`PEP 734 `. " -"(Contributed by Eric Snow in :gh:`124548`.)" -msgstr "" - -msgid "" -"On Unix platforms other than macOS, :ref:`'forkserver' ` is now the default :ref:`start method " -"` for :class:`~concurrent.futures." -"ProcessPoolExecutor` (replacing :ref:`'fork' `). This change does not affect Windows or macOS, where :ref:`'spawn' " -"` remains the default start method." -msgstr "" - -msgid "" -"If the threading incompatible *fork* method is required, you must explicitly " -"request it by supplying a multiprocessing context *mp_context* to :class:" -"`~concurrent.futures.ProcessPoolExecutor`." -msgstr "" - -msgid "" -"See :ref:`forkserver restrictions ` " -"for information and differences with the *fork* method and how this change " -"may affect existing code with mutable global shared variables and/or shared " -"objects that can not be automatically :mod:`pickled `." -msgstr "" - -msgid "(Contributed by Gregory P. Smith in :gh:`84559`.)" -msgstr "" - -msgid "" -"Add two new methods to :class:`~concurrent.futures.ProcessPoolExecutor`, :" -"meth:`~concurrent.futures.ProcessPoolExecutor.terminate_workers` and :meth:" -"`~concurrent.futures.ProcessPoolExecutor.kill_workers`, as ways to terminate " -"or kill all living worker processes in the given pool. (Contributed by " -"Charles Machalow in :gh:`130849`.)" -msgstr "" - -msgid "" -"Add the optional *buffersize* parameter to :meth:`Executor.map ` to limit the number of submitted tasks whose results " -"have not yet been yielded. If the buffer is full, iteration over the " -"*iterables* pauses until a result is yielded from the buffer. (Contributed " -"by Enzo Bonnal and Josh Rosenberg in :gh:`74028`.)" -msgstr "" - -msgid "configparser" -msgstr "" - -msgid "" -":mod:`!configparser` will no longer write config files it cannot read, to " -"improve security. Attempting to :meth:`~configparser.ConfigParser.write` " -"keys containing delimiters or beginning with the section header pattern will " -"raise an :class:`~configparser.InvalidWriteError`. (Contributed by Jacob " -"Lincoln in :gh:`129270`.)" -msgstr "" - -msgid "contextvars" -msgstr "" - -msgid "" -"Support the :term:`context manager` protocol for :class:`~contextvars.Token` " -"objects. (Contributed by Andrew Svetlov in :gh:`129889`.)" -msgstr "" - -msgid "ctypes" -msgstr "" - -msgid "" -"The layout of :ref:`bit fields ` in :" -"class:`~ctypes.Structure` and :class:`~ctypes.Union` objects is now a closer " -"match to platform defaults (GCC/Clang or MSVC). In particular, fields no " -"longer overlap. (Contributed by Matthias Görgens in :gh:`97702`.)" -msgstr "" - -msgid "" -"The :attr:`.Structure._layout_` class attribute can now be set to help match " -"a non-default ABI. (Contributed by Petr Viktorin in :gh:`97702`.)" -msgstr "" - -msgid "" -"The class of :class:`~ctypes.Structure`/:class:`~ctypes.Union` field " -"descriptors is now available as :class:`~ctypes.CField`, and has new " -"attributes to aid debugging and introspection. (Contributed by Petr Viktorin " -"in :gh:`128715`.)" -msgstr "" - -msgid "" -"On Windows, the :exc:`~ctypes.COMError` exception is now public. " -"(Contributed by Jun Komoda in :gh:`126686`.)" -msgstr "" - -msgid "" -"On Windows, the :func:`~ctypes.CopyComPointer` function is now public. " -"(Contributed by Jun Komoda in :gh:`127275`.)" -msgstr "" - -msgid "" -"Add :func:`~ctypes.memoryview_at`, a function to create a :class:" -"`memoryview` object that refers to the supplied pointer and length. This " -"works like :func:`ctypes.string_at` except it avoids a buffer copy, and is " -"typically useful when implementing pure Python callback functions that are " -"passed dynamically-sized buffers. (Contributed by Rian Hunter in :gh:" -"`112018`.)" -msgstr "" - -msgid "" -"Complex types, :class:`~ctypes.c_float_complex`, :class:`~ctypes." -"c_double_complex`, and :class:`~ctypes.c_longdouble_complex`, are now " -"available if both the compiler and the ``libffi`` library support complex C " -"types. (Contributed by Sergey B Kirpichev in :gh:`61103`.)" -msgstr "" - -msgid "" -"Add :func:`ctypes.util.dllist` for listing the shared libraries loaded by " -"the current process. (Contributed by Brian Ward in :gh:`119349`.)" -msgstr "" - -msgid "" -"Move :func:`ctypes.POINTER` types cache from a global internal cache " -"(``_pointer_type_cache``) to the :attr:`_CData.__pointer_type__ ` attribute of the corresponding :mod:`!ctypes` " -"types. This will stop the cache from growing without limits in some " -"situations. (Contributed by Sergey Miryanov in :gh:`100926`.)" -msgstr "" - -msgid "" -"The :class:`~ctypes.py_object` type now supports subscription, making it a :" -"term:`generic type`. (Contributed by Brian Schubert in :gh:`132168`.)" -msgstr "" - -msgid "" -":mod:`!ctypes` now supports :term:`free-threading builds `. " -"(Contributed by Kumar Aditya and Peter Bierma in :gh:`127945`.)" -msgstr "" - -msgid "curses" -msgstr "" - -msgid "" -"Add the :func:`~curses.assume_default_colors` function, a refinement of the :" -"func:`~curses.use_default_colors` function which allows changing the color " -"pair ``0``. (Contributed by Serhiy Storchaka in :gh:`133139`.)" -msgstr "" - -msgid "datetime" -msgstr "" - -msgid "" -"Add the :meth:`~datetime.date.strptime` method to the :class:`datetime.date` " -"and :class:`datetime.time` classes. (Contributed by Wannes Boeykens in :gh:" -"`41431`.)" -msgstr "" - -msgid "decimal" -msgstr "" - -msgid "" -"Add :meth:`.Decimal.from_number` as an alternative constructor for :class:" -"`~decimal.Decimal`. (Contributed by Serhiy Storchaka in :gh:`121798`.)" -msgstr "" - -msgid "" -"Expose :func:`~decimal.IEEEContext` to support creation of contexts " -"corresponding to the IEEE 754 (2008) decimal interchange formats. " -"(Contributed by Sergey B Kirpichev in :gh:`53032`.)" -msgstr "" - -msgid "difflib" -msgstr "" - -msgid "" -"Comparison pages with highlighted changes generated by the :class:`~difflib." -"HtmlDiff` class now support 'dark mode'. (Contributed by Jiahao Li in :gh:" -"`129939`.)" -msgstr "" - -msgid "dis" -msgstr "" - -msgid "" -"Add support for rendering full source location information of :class:" -"`instructions `, rather than only the line number. This " -"feature is added to the following interfaces via the *show_positions* " -"keyword argument:" -msgstr "" - -msgid ":class:`dis.Bytecode`" -msgstr "" - -msgid ":func:`dis.dis`" -msgstr "" - -msgid ":func:`dis.distb`" -msgstr "" - -msgid ":func:`dis.disassemble`" -msgstr "" - -msgid "" -"This feature is also exposed via :option:`dis --show-positions`. " -"(Contributed by Bénédikt Tran in :gh:`123165`.)" -msgstr "" - -msgid "" -"Add the :option:`dis --specialized` command-line option to show specialized " -"bytecode. (Contributed by Bénédikt Tran in :gh:`127413`.)" -msgstr "" - -msgid "errno" -msgstr "" - -msgid "" -"Add the :data:`~errno.EHWPOISON` error code constant. (Contributed by James " -"Roy in :gh:`126585`.)" -msgstr "" - -msgid "faulthandler" -msgstr "" - -msgid "" -"Add support for printing the C stack trace on systems that :ref:`support it " -"` via the new :func:`~faulthandler.dump_c_stack` " -"function or via the *c_stack* argument in :func:`faulthandler.enable`. " -"(Contributed by Peter Bierma in :gh:`127604`.)" -msgstr "" - -msgid "fnmatch" -msgstr "" - -msgid "" -"Add :func:`~fnmatch.filterfalse`, a function to reject names matching a " -"given pattern. (Contributed by Bénédikt Tran in :gh:`74598`.)" -msgstr "" - -msgid "fractions" -msgstr "" - -msgid "" -"A :class:`~fractions.Fraction` object may now be constructed from any object " -"with the :meth:`!as_integer_ratio` method. (Contributed by Serhiy Storchaka " -"in :gh:`82017`.)" -msgstr "" - -msgid "" -"Add :meth:`.Fraction.from_number` as an alternative constructor for :class:" -"`~fractions.Fraction`. (Contributed by Serhiy Storchaka in :gh:`121797`.)" -msgstr "" - -msgid "functools" -msgstr "" - -msgid "" -"Add the :data:`~functools.Placeholder` sentinel. This may be used with the :" -"func:`~functools.partial` or :func:`~functools.partialmethod` functions to " -"reserve a place for positional arguments in the returned :ref:`partial " -"object `. (Contributed by Dominykas Grigonis in :gh:" -"`119127`.)" -msgstr "" - -msgid "" -"Allow the *initial* parameter of :func:`~functools.reduce` to be passed as a " -"keyword argument. (Contributed by Sayandip Dutta in :gh:`125916`.)" -msgstr "" - -msgid "getopt" -msgstr "" - -msgid "" -"Add support for options with optional arguments. (Contributed by Serhiy " -"Storchaka in :gh:`126374`.)" -msgstr "" - -msgid "" -"Add support for returning intermixed options and non-option arguments in " -"order. (Contributed by Serhiy Storchaka in :gh:`126390`.)" -msgstr "" - -msgid "getpass" -msgstr "" - -msgid "" -"Support keyboard feedback in the :func:`~getpass.getpass` function via the " -"keyword-only optional argument *echo_char*. Placeholder characters are " -"rendered whenever a character is entered, and removed when a character is " -"deleted. (Contributed by Semyon Moroz in :gh:`77065`.)" -msgstr "" - -msgid "graphlib" -msgstr "" - -msgid "" -"Allow :meth:`.TopologicalSorter.prepare` to be called more than once as long " -"as sorting has not started. (Contributed by Daniel Pope in :gh:`130914`.)" -msgstr "" - -msgid "heapq" -msgstr "" - -msgid "" -"The :mod:`!heapq` module has improved support for working with max-heaps, " -"via the following new functions:" -msgstr "" - -msgid ":func:`~heapq.heapify_max`" -msgstr "" - -msgid ":func:`~heapq.heappush_max`" -msgstr "" - -msgid ":func:`~heapq.heappop_max`" -msgstr "" - -msgid ":func:`~heapq.heapreplace_max`" -msgstr "" - -msgid ":func:`~heapq.heappushpop_max`" -msgstr "" - -msgid "hmac" -msgstr "" - -msgid "" -"Add a built-in implementation for HMAC (:rfc:`2104`) using formally verified " -"code from the `HACL* `__ project. " -"This implementation is used as a fallback when the OpenSSL implementation of " -"HMAC is not available. (Contributed by Bénédikt Tran in :gh:`99108`.)" -msgstr "" - -msgid "http" -msgstr "" - -msgid "" -"Directory lists and error pages generated by the :mod:`http.server` module " -"allow the browser to apply its default dark mode. (Contributed by Yorik " -"Hansen in :gh:`123430`.)" -msgstr "" - -msgid "" -"The :mod:`http.server` module now supports serving over HTTPS using the :" -"class:`http.server.HTTPSServer` class. This functionality is exposed by the " -"command-line interface (``python -m http.server``) through the following " -"options:" -msgstr "" - -msgid "" -":option:`--tls-cert \\ `: Path to the TLS " -"certificate file." -msgstr "" - -msgid "" -":option:`--tls-key \\ `: Optional path to the " -"private key file." -msgstr "" - -msgid "" -":option:`--tls-password-file \\ `: " -"Optional path to the password file for the private key." -msgstr "" - -msgid "(Contributed by Semyon Moroz in :gh:`85162`.)" -msgstr "" - -msgid "imaplib" -msgstr "" - -msgid "" -"Add :meth:`.IMAP4.idle`, implementing the IMAP4 ``IDLE`` command as defined " -"in :rfc:`2177`. (Contributed by Forest in :gh:`55454`.)" -msgstr "" - -msgid "inspect" -msgstr "" - -msgid "" -":func:`~inspect.signature` takes a new argument *annotation_format* to " -"control the :class:`annotationlib.Format` used for representing annotations. " -"(Contributed by Jelle Zijlstra in :gh:`101552`.)" -msgstr "" - -msgid "" -":meth:`.Signature.format` takes a new argument *unquote_annotations*. If " -"true, string :term:`annotations ` are displayed without " -"surrounding quotes. (Contributed by Jelle Zijlstra in :gh:`101552`.)" -msgstr "" - -msgid "" -"Add function :func:`~inspect.ispackage` to determine whether an object is a :" -"term:`package` or not. (Contributed by Zhikang Yan in :gh:`125634`.)" -msgstr "" - -msgid "io" -msgstr "" - -msgid "" -"Reading text from a non-blocking stream with ``read`` may now raise a :exc:" -"`BlockingIOError` if the operation cannot immediately return bytes. " -"(Contributed by Giovanni Siragusa in :gh:`109523`.)" -msgstr "" - -msgid "" -"Add the :class:`~io.Reader` and :class:`~io.Writer` protocols as simpler " -"alternatives to the pseudo-protocols :class:`typing.IO`, :class:`typing." -"TextIO`, and :class:`typing.BinaryIO`. (Contributed by Sebastian Rittau in :" -"gh:`127648`.)" -msgstr "" - -msgid "json" -msgstr "" - -msgid "" -"Add exception notes for JSON serialization errors that allow identifying the " -"source of the error. (Contributed by Serhiy Storchaka in :gh:`122163`.)" -msgstr "" - -msgid "" -"Allow using the :mod:`json` module as a script using the :option:`-m` " -"switch: :program:`python -m json`. This is now preferred to :program:`python " -"-m json.tool`, which is :term:`soft deprecated`. See the :ref:`JSON command-" -"line interface ` documentation. (Contributed by Trey " -"Hunner in :gh:`122873`.)" -msgstr "" - -msgid "" -"By default, the output of the :ref:`JSON command-line interface ` is highlighted in color. This can be controlled by :ref:" -"`environment variables `. (Contributed by Tomas " -"Roun in :gh:`131952`.)" -msgstr "" - -msgid "linecache" -msgstr "" - -msgid "" -":func:`~linecache.getline` can now retrieve source code for frozen modules. " -"(Contributed by Tian Gao in :gh:`131638`.)" -msgstr "" - -msgid "logging.handlers" -msgstr "" - -msgid "" -":class:`~logging.handlers.QueueListener` objects now support the :term:" -"`context manager` protocol. (Contributed by Charles Machalow in :gh:" -"`132106`.)" -msgstr "" - -msgid "" -":meth:`QueueListener.start ` now " -"raises a :exc:`RuntimeError` if the listener is already started. " -"(Contributed by Charles Machalow in :gh:`132106`.)" -msgstr "" - -msgid "math" -msgstr "" - -msgid "" -"Added more detailed error messages for domain errors in the module. " -"(Contributed by Charlie Zhao and Sergey B Kirpichev in :gh:`101410`.)" -msgstr "" - -msgid "mimetypes" -msgstr "" - -msgid "" -"Add a public :ref:`command-line ` for the module, invoked " -"via :program:`python -m mimetypes`. (Contributed by Oleg Iarygin and Hugo " -"van Kemenade in :gh:`93096`.)" -msgstr "" - -msgid "Add several new MIME types based on RFCs and common usage:" -msgstr "" - -msgid "Microsoft and :rfc:`8081` MIME types for fonts" -msgstr "" - -msgid "Embedded OpenType: ``application/vnd.ms-fontobject``" -msgstr "" - -msgid "OpenType Layout (OTF) ``font/otf``" -msgstr "" - -msgid "TrueType: ``font/ttf``" -msgstr "" - -msgid "WOFF 1.0 ``font/woff``" -msgstr "" - -msgid "WOFF 2.0 ``font/woff2``" -msgstr "" - -msgid "" -":rfc:`9559` MIME types for Matroska audiovisual data container structures" -msgstr "" - -msgid "audio with no video: ``audio/matroska`` (``.mka``)" -msgstr "" - -msgid "video: ``video/matroska`` (``.mkv``)" -msgstr "" - -msgid "stereoscopic video: ``video/matroska-3d`` (``.mk3d``)" -msgstr "" - -msgid "Images with RFCs" -msgstr "" - -msgid ":rfc:`1494`: CCITT Group 3 (``.g3``)" -msgstr "" - -msgid ":rfc:`3362`: Real-time Facsimile, T.38 (``.t38``)" -msgstr "" - -msgid "" -":rfc:`3745`: JPEG 2000 (``.jp2``), extension (``.jpx``) and compound (``." -"jpm``)" -msgstr "" - -msgid ":rfc:`3950`: Tag Image File Format Fax eXtended, TIFF-FX (``.tfx``)" -msgstr "" - -msgid ":rfc:`4047`: Flexible Image Transport System (``.fits``)" -msgstr "" - -msgid "" -":rfc:`7903`: Enhanced Metafile (``.emf``) and Windows Metafile (``.wmf``)" -msgstr "" - -msgid "Other MIME type additions and changes" -msgstr "" - -msgid "" -":rfc:`2361`: Change type for ``.avi`` to ``video/vnd.avi`` and for ``.wav`` " -"to ``audio/vnd.wave``" -msgstr "" - -msgid ":rfc:`4337`: Add MPEG-4 ``audio/mp4`` (``.m4a``)" -msgstr "" - -msgid ":rfc:`5334`: Add Ogg media (``.oga``, ``.ogg`` and ``.ogx``)" -msgstr "" - -msgid ":rfc:`6713`: Add gzip ``application/gzip`` (``.gz``)" -msgstr "" - -msgid ":rfc:`9639`: Add FLAC ``audio/flac`` (``.flac``)" -msgstr "" - -msgid "" -":rfc:`9512` ``application/yaml`` MIME type for YAML files (``.yaml`` and ``." -"yml``)" -msgstr "" - -msgid "Add 7z ``application/x-7z-compressed`` (``.7z``)" -msgstr "" - -msgid "" -"Add Android Package ``application/vnd.android.package-archive`` (``.apk``) " -"when not strict" -msgstr "" - -msgid "Add deb ``application/x-debian-package`` (``.deb``)" -msgstr "" - -msgid "Add glTF binary ``model/gltf-binary`` (``.glb``)" -msgstr "" - -msgid "Add glTF JSON/ASCII ``model/gltf+json`` (``.gltf``)" -msgstr "" - -msgid "Add M4V ``video/x-m4v`` (``.m4v``)" -msgstr "" - -msgid "Add PHP ``application/x-httpd-php`` (``.php``)" -msgstr "" - -msgid "Add RAR ``application/vnd.rar`` (``.rar``)" -msgstr "" - -msgid "Add RPM ``application/x-rpm`` (``.rpm``)" -msgstr "" - -msgid "Add STL ``model/stl`` (``.stl``)" -msgstr "" - -msgid "Add Windows Media Video ``video/x-ms-wmv`` (``.wmv``)" -msgstr "" - -msgid "De facto: Add WebM ``audio/webm`` (``.weba``)" -msgstr "" - -msgid "" -"`ECMA-376 `__: Add ``.docx``, ``.pptx`` and ``.xlsx`` types" -msgstr "" - -msgid "" -"`OASIS `__: Add OpenDocument ``.odg``, ``.odp``, ``.ods`` and " -"``.odt`` types" -msgstr "" - -msgid "" -"`W3C `__: Add EPUB " -"``application/epub+zip`` (``.epub``)" -msgstr "" - -msgid "" -"(Contributed by Sahil Prajapati and Hugo van Kemenade in :gh:`84852`, by " -"Sasha \"Nelie\" Chernykh and Hugo van Kemenade in :gh:`132056`, and by Hugo " -"van Kemenade in :gh:`89416`, :gh:`85957`, and :gh:`129965`.)" -msgstr "" - -msgid "multiprocessing" -msgstr "" - -msgid "" -"On Unix platforms other than macOS, :ref:`'forkserver' ` is now the default :ref:`start method " -"` (replacing :ref:`'fork' `). This change does not affect Windows or macOS, where :" -"ref:`'spawn' ` remains the default start " -"method." -msgstr "" - -msgid "" -"If the threading incompatible *fork* method is required, you must explicitly " -"request it via a context from :func:`~multiprocessing.get_context` " -"(preferred) or change the default via :func:`~multiprocessing." -"set_start_method`." -msgstr "" - -msgid "" -":mod:`multiprocessing`'s ``'forkserver'`` start method now authenticates its " -"control socket to avoid solely relying on filesystem permissions to restrict " -"what other processes could cause the forkserver to spawn workers and run " -"code. (Contributed by Gregory P. Smith for :gh:`97514`.)" -msgstr "" - -msgid "" -"The :ref:`multiprocessing proxy objects ` for " -"*list* and *dict* types gain previously overlooked missing methods:" -msgstr "" - -msgid ":meth:`!clear` and :meth:`!copy` for proxies of :class:`list`" -msgstr "" - -msgid "" -":meth:`~dict.fromkeys`, ``reversed(d)``, ``d | {}``, ``{} | d``, ``d |= " -"{'b': 2}`` for proxies of :class:`dict`" -msgstr "" - -msgid "(Contributed by Roy Hyunjin Han for :gh:`103134`.)" -msgstr "" - -msgid "" -"Add support for shared :class:`set` objects via :meth:`.SyncManager.set`. " -"The :func:`set` in :func:`~multiprocessing.Manager` method is now available. " -"(Contributed by Mingyu Park in :gh:`129949`.)" -msgstr "" - -msgid "" -"Add the :meth:`~multiprocessing.Process.interrupt` to :class:" -"`multiprocessing.Process` objects, which terminates the child process by " -"sending :py:const:`~signal.SIGINT`. This enables :keyword:`finally` clauses " -"to print a stack trace for the terminated process. (Contributed by Artem " -"Pulkin in :gh:`131913`.)" -msgstr "" - -msgid "operator" -msgstr "" - -msgid "" -"Add :func:`~operator.is_none` and :func:`~operator.is_not_none` as a pair of " -"functions, such that ``operator.is_none(obj)`` is equivalent to ``obj is " -"None`` and ``operator.is_not_none(obj)`` is equivalent to ``obj is not " -"None``. (Contributed by Raymond Hettinger and Nico Mexis in :gh:`115808`.)" -msgstr "" - -msgid "os" -msgstr "" - -msgid "" -"Add the :func:`~os.reload_environ` function to update :data:`os.environ` " -"and :data:`os.environb` with changes to the environment made by :func:`os." -"putenv`, by :func:`os.unsetenv`, or made outside Python in the same process. " -"(Contributed by Victor Stinner in :gh:`120057`.)" -msgstr "" - -msgid "" -"Add the :data:`~os.SCHED_DEADLINE` and :data:`~os.SCHED_NORMAL` constants to " -"the :mod:`!os` module. (Contributed by James Roy in :gh:`127688`.)" -msgstr "" - -msgid "" -"Add the :func:`~os.readinto` function to read into a :ref:`buffer object " -"` from a file descriptor. (Contributed by Cody Maloney in :gh:" -"`129205`.)" -msgstr "" - -msgid "os.path" -msgstr "" - -msgid "" -"The *strict* parameter to :func:`~os.path.realpath` accepts a new value, :" -"data:`~os.path.ALLOW_MISSING`. If used, errors other than :exc:" -"`FileNotFoundError` will be re-raised; the resulting path can be missing but " -"it will be free of symlinks. (Contributed by Petr Viktorin for :cve:" -"`2025-4517`.)" -msgstr "" - -msgid "pathlib" -msgstr "" - -msgid "" -"Add methods to :class:`pathlib.Path` to recursively copy or move files and " -"directories:" -msgstr "" - -msgid "" -":meth:`~pathlib.Path.copy` copies a file or directory tree to a destination." -msgstr "" - -msgid ":meth:`~pathlib.Path.copy_into` copies *into* a destination directory." -msgstr "" - -msgid "" -":meth:`~pathlib.Path.move` moves a file or directory tree to a destination." -msgstr "" - -msgid ":meth:`~pathlib.Path.move_into` moves *into* a destination directory." -msgstr "" - -msgid "(Contributed by Barney Gale in :gh:`73991`.)" -msgstr "" - -msgid "" -"Add the :attr:`~pathlib.Path.info` attribute, which stores an object " -"implementing the new :class:`pathlib.types.PathInfo` protocol. The object " -"supports querying the file type and internally caching :func:`~os.stat` " -"results. Path objects generated by :meth:`~pathlib.Path.iterdir` are " -"initialized with file type information gleaned from scanning the parent " -"directory. (Contributed by Barney Gale in :gh:`125413`.)" -msgstr "" - -msgid "pdb" -msgstr "" - -msgid "" -"The :mod:`pdb` module now supports remote attaching to a running Python " -"process using a new :option:`-p PID ` command-line option:" -msgstr "" - -msgid "python -m pdb -p 1234" -msgstr "" - -msgid "" -"This will connect to the Python process with the given PID and allow you to " -"debug it interactively. Notice that due to how the Python interpreter works " -"attaching to a remote process that is blocked in a system call or waiting " -"for I/O will only work once the next bytecode instruction is executed or " -"when the process receives a signal." -msgstr "" - -msgid "" -"This feature uses :ref:`PEP 768 ` and the new :" -"func:`sys.remote_exec` function to attach to the remote process and send the " -"PDB commands to it." -msgstr "" - -msgid "(Contributed by Matt Wozniski and Pablo Galindo in :gh:`131591`.)" -msgstr "" - -msgid "" -"Hardcoded breakpoints (:func:`breakpoint` and :func:`~pdb.set_trace`) now " -"reuse the most recent :class:`~pdb.Pdb` instance that calls :meth:`~pdb.Pdb." -"set_trace`, instead of creating a new one each time. As a result, all the " -"instance specific data like :pdbcmd:`display` and :pdbcmd:`commands` are " -"preserved across hardcoded breakpoints. (Contributed by Tian Gao in :gh:" -"`121450`.)" -msgstr "" - -msgid "" -"Add a new argument *mode* to :class:`pdb.Pdb`. Disable the ``restart`` " -"command when :mod:`pdb` is in ``inline`` mode. (Contributed by Tian Gao in :" -"gh:`123757`.)" -msgstr "" - -msgid "" -"A confirmation prompt will be shown when the user tries to quit :mod:`pdb` " -"in ``inline`` mode. ``y``, ``Y``, ```` or ``EOF`` will confirm the " -"quit and call :func:`sys.exit`, instead of raising :exc:`bdb.BdbQuit`. " -"(Contributed by Tian Gao in :gh:`124704`.)" -msgstr "" - -msgid "" -"Inline breakpoints like :func:`breakpoint` or :func:`pdb.set_trace` will " -"always stop the program at calling frame, ignoring the ``skip`` pattern (if " -"any). (Contributed by Tian Gao in :gh:`130493`.)" -msgstr "" - -msgid "" -"```` at the beginning of the line in :mod:`pdb` multi-line input will " -"fill in a 4-space indentation now, instead of inserting a ``\\t`` character. " -"(Contributed by Tian Gao in :gh:`130471`.)" -msgstr "" - -msgid "" -"Auto-indent is introduced in :mod:`pdb` multi-line input. It will either " -"keep the indentation of the last line or insert a 4-space indentation when " -"it detects a new code block. (Contributed by Tian Gao in :gh:`133350`.)" -msgstr "" - -msgid "" -"``$_asynctask`` is added to access the current asyncio task if applicable. " -"(Contributed by Tian Gao in :gh:`124367`.)" -msgstr "" - -msgid "" -":func:`pdb.set_trace_async` is added to support debugging asyncio " -"coroutines. :keyword:`await` statements are supported with this function. " -"(Contributed by Tian Gao in :gh:`132576`.)" -msgstr "" - -msgid "" -"Source code displayed in :mod:`pdb` will be syntax-highlighted. This feature " -"can be controlled using the same methods as the default :term:`interactive` " -"shell, in addition to the newly added ``colorize`` argument of :class:`pdb." -"Pdb`. (Contributed by Tian Gao and Łukasz Langa in :gh:`133355`.)" -msgstr "" - -msgid "pickle" -msgstr "" - -msgid "" -"Set the default protocol version on the :mod:`pickle` module to 5. For more " -"details, see :ref:`pickle protocols `." -msgstr "" - -msgid "" -"Add exception notes for pickle serialization errors that allow identifying " -"the source of the error. (Contributed by Serhiy Storchaka in :gh:`122213`.)" -msgstr "" - -msgid "platform" -msgstr "" - -msgid "" -"Add :func:`~platform.invalidate_caches`, a function to invalidate cached " -"results in the :mod:`!platform` module. (Contributed by Bénédikt Tran in :gh:" -"`122549`.)" -msgstr "" - -msgid "pydoc" -msgstr "" - -msgid "" -":term:`Annotations ` in help output are now usually displayed in " -"a format closer to that in the original source. (Contributed by Jelle " -"Zijlstra in :gh:`101552`.)" -msgstr "" - -msgid "re" -msgstr "" - -msgid "" -"Support ``\\z`` as a synonym for ``\\Z`` in :mod:`regular expressions `. " -"It is interpreted unambiguously in many other regular expression engines, " -"unlike ``\\Z``, which has subtly different behavior. (Contributed by Serhiy " -"Storchaka in :gh:`133306`.)" -msgstr "" - -msgid "" -"``\\B`` in :mod:`regular expression ` now matches the empty input " -"string, meaning that it is now always the opposite of ``\\b``. (Contributed " -"by Serhiy Storchaka in :gh:`124130`.)" -msgstr "" - -msgid "socket" -msgstr "" - -msgid "Improve and fix support for Bluetooth sockets." -msgstr "" - -msgid "" -"Fix support of Bluetooth sockets on NetBSD and DragonFly BSD. (Contributed " -"by Serhiy Storchaka in :gh:`132429`.)" -msgstr "" - -msgid "" -"Fix support for :const:`~socket.BTPROTO_HCI` on FreeBSD. (Contributed by " -"Victor Stinner in :gh:`111178`.)" -msgstr "" - -msgid "" -"Add support for :const:`~socket.BTPROTO_SCO` on FreeBSD. (Contributed by " -"Serhiy Storchaka in :gh:`85302`.)" -msgstr "" - -msgid "" -"Add support for *cid* and *bdaddr_type* in the address for :const:`~socket." -"BTPROTO_L2CAP` on FreeBSD. (Contributed by Serhiy Storchaka in :gh:`132429`.)" -msgstr "" - -msgid "" -"Add support for *channel* in the address for :const:`~socket.BTPROTO_HCI` on " -"Linux. (Contributed by Serhiy Storchaka in :gh:`70145`.)" -msgstr "" - -msgid "" -"Accept an integer as the address for :const:`~socket.BTPROTO_HCI` on Linux. " -"(Contributed by Serhiy Storchaka in :gh:`132099`.)" -msgstr "" - -msgid "" -"Return *cid* in :meth:`~socket.socket.getsockname` for :const:`~socket." -"BTPROTO_L2CAP`. (Contributed by Serhiy Storchaka in :gh:`132429`.)" -msgstr "" - -msgid "" -"Add many new constants. (Contributed by Serhiy Storchaka in :gh:`132734`.)" -msgstr "" - -msgid "ssl" -msgstr "" - -msgid "" -"Indicate through the :data:`~ssl.HAS_PHA` Boolean whether the :mod:`!ssl` " -"module supports TLSv1.3 post-handshake client authentication (PHA). " -"(Contributed by Will Childs-Klein in :gh:`128036`.)" -msgstr "" - -msgid "struct" -msgstr "" - -msgid "" -"Support the :c:expr:`float complex` and :c:expr:`double complex` C types in " -"the :mod:`struct` module (formatting characters ``'F'`` and ``'D'`` " -"respectively). (Contributed by Sergey B Kirpichev in :gh:`121249`.)" -msgstr "" - -msgid "symtable" -msgstr "" - -msgid "Expose the following :class:`~symtable.Symbol` methods:" -msgstr "" - -msgid ":meth:`~symtable.Symbol.is_comp_cell`" -msgstr "" - -msgid ":meth:`~symtable.Symbol.is_comp_iter`" -msgstr "" - -msgid ":meth:`~symtable.Symbol.is_free_class`" -msgstr "" - -msgid "(Contributed by Bénédikt Tran in :gh:`120029`.)" -msgstr "" - -msgid "sys" -msgstr "" - -msgid "" -"The previously undocumented special function :func:`sys.getobjects`, which " -"only exists in specialized builds of Python, may now return objects from " -"other interpreters than the one it's called in. (Contributed by Eric Snow " -"in :gh:`125286`.)" -msgstr "" - -msgid "" -"Add :func:`sys._is_immortal` for determining if an object is :term:" -"`immortal`. (Contributed by Peter Bierma in :gh:`128509`.)" -msgstr "" - -msgid "" -"On FreeBSD, :data:`sys.platform` no longer contains the major version " -"number. It is always ``'freebsd'``, instead of ``'freebsd13'`` or " -"``'freebsd14'``. (Contributed by Michael Osipov in :gh:`129393`.)" -msgstr "" - -msgid "" -"Raise :exc:`DeprecationWarning` for :func:`sys._clear_type_cache`. This " -"function was deprecated in Python 3.13 but it didn't raise a runtime warning." -msgstr "" - -msgid "" -"Add :func:`sys.remote_exec` to implement the new external debugger " -"interface. See :ref:`PEP 768 ` for details. " -"(Contributed by Pablo Galindo Salgado, Matt Wozniski, and Ivona Stojanovic " -"in :gh:`131591`.)" -msgstr "" - -msgid "" -"Add the :data:`sys._jit` namespace, containing utilities for introspecting " -"just-in-time compilation. (Contributed by Brandt Bucher in :gh:`133231`.)" -msgstr "" - -msgid "sys.monitoring" -msgstr "" - -msgid "" -"Add two new monitoring events, :monitoring-event:`BRANCH_LEFT` and :" -"monitoring-event:`BRANCH_RIGHT`. These replace and deprecate the :monitoring-" -"event:`!BRANCH` event. (Contributed by Mark Shannon in :gh:`122548`.)" -msgstr "" - -msgid "sysconfig" -msgstr "" - -msgid "" -"Add ``ABIFLAGS`` key to :func:`~sysconfig.get_config_vars` on Windows. " -"(Contributed by Xuehai Pan in :gh:`131799`.)" -msgstr "" - -msgid "tarfile" -msgstr "" - -msgid "" -":func:`~tarfile.data_filter` now normalizes symbolic link targets in order " -"to avoid path traversal attacks. (Contributed by Petr Viktorin in :gh:" -"`127987` and :cve:`2025-4138`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extractall` now skips fixing up directory attributes " -"when a directory was removed or replaced by another kind of file. " -"(Contributed by Petr Viktorin in :gh:`127987` and :cve:`2024-12718`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extract` and :func:`~tarfile.TarFile.extractall` now " -"(re-)apply the extraction filter when substituting a link (hard or symbolic) " -"with a copy of another archive member, and when fixing up directory " -"attributes. The former raises a new exception, :exc:`~tarfile." -"LinkFallbackError`. (Contributed by Petr Viktorin for :cve:`2025-4330` and :" -"cve:`2024-12718`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extract` and :func:`~tarfile.TarFile.extractall` no " -"longer extract rejected members when :func:`~tarfile.TarFile.errorlevel` is " -"zero. (Contributed by Matt Prodani and Petr Viktorin in :gh:`112887` and :" -"cve:`2025-4435`.)" -msgstr "" - -msgid "threading" -msgstr "" - -msgid "" -":meth:`threading.Thread.start` now sets the operating system thread name to :" -"attr:`threading.Thread.name`. (Contributed by Victor Stinner in :gh:`59705`.)" -msgstr "" - -msgid "tkinter" -msgstr "" - -msgid "" -"Make :mod:`tkinter` widget methods :meth:`!after` and :meth:`!after_idle` " -"accept keyword arguments. (Contributed by Zhikang Yan in :gh:`126899`.)" -msgstr "" - -msgid "" -"Add ability to specify a name for :class:`!tkinter.OptionMenu` and :class:`!" -"tkinter.ttk.OptionMenu`. (Contributed by Zhikang Yan in :gh:`130482`.)" -msgstr "" - -msgid "turtle" -msgstr "" - -msgid "" -"Add context managers for :func:`turtle.fill`, :func:`turtle.poly`, and :func:" -"`turtle.no_animation`. (Contributed by Marie Roald and Yngve Mardal Moe in :" -"gh:`126350`.)" -msgstr "" - -msgid "types" -msgstr "" - -msgid "" -":class:`types.UnionType` is now an alias for :class:`typing.Union`. See :ref:" -"`below ` for more details. (Contributed by Jelle " -"Zijlstra in :gh:`105499`.)" -msgstr "" - -msgid "typing" -msgstr "" - -msgid "" -"The :class:`types.UnionType` and :class:`typing.Union` types are now aliases " -"for each other, meaning that both old-style unions (created with " -"``Union[int, str]``) and new-style unions (``int | str``) now create " -"instances of the same runtime type. This unifies the behavior between the " -"two syntaxes, but leads to some differences in behavior that may affect " -"users who introspect types at runtime:" -msgstr "" - -msgid "" -"Both syntaxes for creating a union now produce the same string " -"representation in :func:`repr`. For example, ``repr(Union[int, str])`` is " -"now ``\"int | str\"`` instead of ``\"typing.Union[int, str]\"``." -msgstr "" - -msgid "" -"Unions created using the old syntax are no longer cached. Previously, " -"running ``Union[int, str]`` multiple times would return the same object " -"(``Union[int, str] is Union[int, str]`` would be ``True``), but now it will " -"return two different objects. Use ``==`` to compare unions for equality, not " -"``is``. New-style unions have never been cached this way. This change could " -"increase memory usage for some programs that use a large number of unions " -"created by subscripting ``typing.Union``. However, several factors offset " -"this cost: unions used in annotations are no longer evaluated by default in " -"Python 3.14 because of :pep:`649`; an instance of :class:`types.UnionType` " -"is itself much smaller than the object returned by ``Union[]`` was on prior " -"Python versions; and removing the cache also saves some space. It is " -"therefore unlikely that this change will cause a significant increase in " -"memory usage for most users." -msgstr "" - -msgid "" -"Previously, old-style unions were implemented using the private class " -"``typing._UnionGenericAlias``. This class is no longer needed for the " -"implementation, but it has been retained for backward compatibility, with " -"removal scheduled for Python 3.17. Users should use documented introspection " -"helpers like :func:`~typing.get_origin` and :func:`typing.get_args` instead " -"of relying on private implementation details." -msgstr "" - -msgid "" -"It is now possible to use :class:`typing.Union` itself in :func:`isinstance` " -"checks. For example, ``isinstance(int | str, typing.Union)`` will return " -"``True``; previously this raised :exc:`TypeError`." -msgstr "" - -msgid "" -"The :attr:`!__args__` attribute of :class:`typing.Union` objects is no " -"longer writable." -msgstr "" - -msgid "" -"It is no longer possible to set any attributes on :class:`~typing.Union` " -"objects. This only ever worked for dunder attributes on previous versions, " -"was never documented to work, and was subtly broken in many cases." -msgstr "" - -msgid "(Contributed by Jelle Zijlstra in :gh:`105499`.)" -msgstr "" - -msgid ":class:`~typing.TypeAliasType` now supports star unpacking." -msgstr "" - -msgid "unicodedata" -msgstr "" - -msgid "The Unicode database has been updated to Unicode 16.0.0." -msgstr "" - -msgid "unittest" -msgstr "" - -msgid "" -":mod:`unittest` output is now colored by default. This can be controlled by :" -"ref:`environment variables `. (Contributed by " -"Hugo van Kemenade in :gh:`127221`.)" -msgstr "" - -msgid "" -"unittest discovery supports :term:`namespace package` as start directory " -"again. It was removed in Python 3.11. (Contributed by Jacob Walls in :gh:" -"`80958`.)" -msgstr "" - -msgid "" -"A number of new methods were added in the :class:`~unittest.TestCase` class " -"that provide more specialized tests." -msgstr "" - -msgid "" -":meth:`~unittest.TestCase.assertHasAttr` and :meth:`~unittest.TestCase." -"assertNotHasAttr` check whether the object has a particular attribute." -msgstr "" - -msgid "" -":meth:`~unittest.TestCase.assertIsSubclass` and :meth:`~unittest.TestCase." -"assertNotIsSubclass` check whether the object is a subclass of a particular " -"class, or of one of a tuple of classes." -msgstr "" - -msgid "" -":meth:`~unittest.TestCase.assertStartsWith`, :meth:`~unittest.TestCase." -"assertNotStartsWith`, :meth:`~unittest.TestCase.assertEndsWith` and :meth:" -"`~unittest.TestCase.assertNotEndsWith` check whether the Unicode or byte " -"string starts or ends with particular strings." -msgstr "" - -msgid "(Contributed by Serhiy Storchaka in :gh:`71339`.)" -msgstr "" - -msgid "urllib" -msgstr "" - -msgid "" -"Upgrade HTTP digest authentication algorithm for :mod:`urllib.request` by " -"supporting SHA-256 digest authentication as specified in :rfc:`7616`. " -"(Contributed by Calvin Bui in :gh:`128193`.)" -msgstr "" - -msgid "" -"Improve ergonomics and standards compliance when parsing and emitting ``file:" -"`` URLs." -msgstr "" - -msgid "In :func:`~urllib.request.url2pathname`:" -msgstr "" - -msgid "" -"Accept a complete URL when the new *require_scheme* argument is set to true." -msgstr "" - -msgid "Discard URL authority if it matches the local hostname." -msgstr "" - -msgid "" -"Discard URL authority if it resolves to a local IP address when the new " -"*resolve_host* argument is set to true." -msgstr "" - -msgid "Discard URL query and fragment components." -msgstr "" - -msgid "" -"Raise :exc:`~urllib.error.URLError` if a URL authority isn't local, except " -"on Windows where we return a UNC path as before." -msgstr "" - -msgid "In :func:`~urllib.request.pathname2url`:" -msgstr "" - -msgid "" -"Return a complete URL when the new *add_scheme* argument is set to true." -msgstr "" - -msgid "" -"Include an empty URL authority when a path begins with a slash. For example, " -"the path ``/etc/hosts`` is converted to the URL ``///etc/hosts``." -msgstr "" - -msgid "" -"On Windows, drive letters are no longer converted to uppercase, and ``:`` " -"characters not following a drive letter no longer cause an :exc:`OSError` " -"exception to be raised." -msgstr "" - -msgid "(Contributed by Barney Gale in :gh:`125866`.)" -msgstr "" - -msgid "uuid" -msgstr "" - -msgid "" -"Add support for UUID versions 6, 7, and 8 via :func:`~uuid.uuid6`, :func:" -"`~uuid.uuid7`, and :func:`~uuid.uuid8` respectively, as specified in :rfc:" -"`9562`. (Contributed by Bénédikt Tran in :gh:`89083`.)" -msgstr "" - -msgid "" -":const:`~uuid.NIL` and :const:`~uuid.MAX` are now available to represent the " -"Nil and Max UUID formats as defined by :rfc:`9562`. (Contributed by Nick " -"Pope in :gh:`128427`.)" -msgstr "" - -msgid "" -"Allow generating multiple UUIDs simultaneously on the command-line via :" -"option:`python -m uuid --count `. (Contributed by Simon Legner " -"in :gh:`131236`.)" -msgstr "" - -msgid "webbrowser" -msgstr "" - -msgid "" -"Names in the :envvar:`BROWSER` environment variable can now refer to already " -"registered browsers for the :mod:`webbrowser` module, instead of always " -"generating a new browser command." -msgstr "" - -msgid "" -"This makes it possible to set :envvar:`BROWSER` to the value of one of the " -"supported browsers on macOS." -msgstr "" - -msgid "zipfile" -msgstr "" - -msgid "" -"Added :meth:`ZipInfo._for_archive `, a method " -"to resolve suitable defaults for a :class:`~zipfile.ZipInfo` object as used " -"by :func:`ZipFile.writestr `. (Contributed by " -"Bénédikt Tran in :gh:`123424`.)" -msgstr "" - -msgid "" -":meth:`.ZipFile.writestr` now respects the :envvar:`SOURCE_DATE_EPOCH` " -"environment variable in order to better support reproducible builds. " -"(Contributed by Jiahao Li in :gh:`91279`.)" -msgstr "" - -msgid "Optimizations" -msgstr "" - -msgid "" -"The import time for several standard library modules has been improved, " -"including :mod:`annotationlib`, :mod:`ast`, :mod:`asyncio`, :mod:`base64`, :" -"mod:`cmd`, :mod:`csv`, :mod:`gettext`, :mod:`importlib.util`, :mod:" -"`locale`, :mod:`mimetypes`, :mod:`optparse`, :mod:`pickle`, :mod:`pprint`, :" -"mod:`pstats`, :mod:`shlex`, :mod:`socket`, :mod:`string`, :mod:" -"`subprocess`, :mod:`threading`, :mod:`tomllib`, :mod:`types`, and :mod:" -"`zipfile`." -msgstr "" - -msgid "" -"(Contributed by Adam Turner, Bénédikt Tran, Chris Markiewicz, Eli Schwartz, " -"Hugo van Kemenade, Jelle Zijlstra, and others in :gh:`118761`.)" -msgstr "" - -msgid "" -"The interpreter now avoids some reference count modifications internally " -"when it's safe to do so. This can lead to different values being returned " -"from :func:`sys.getrefcount` and :c:func:`Py_REFCNT` compared to previous " -"versions of Python. See :ref:`below ` for details." -msgstr "" - -msgid "" -"Standard benchmark results have improved by 10-20% following the " -"implementation of a new per-thread doubly linked list for :class:`native " -"tasks `, also reducing memory usage. This enables external " -"introspection tools such as :ref:`python -m asyncio pstree ` to introspect the call graph of asyncio tasks " -"running in all threads. (Contributed by Kumar Aditya in :gh:`107803`.)" -msgstr "" - -msgid "" -"The module now has first class support for :term:`free-threading builds " -"`. This enables parallel execution of multiple event loops " -"across different threads, scaling linearly with the number of threads. " -"(Contributed by Kumar Aditya in :gh:`128002`.)" -msgstr "" - -msgid "base64" -msgstr "" - -msgid "" -":func:`~base64.b16decode` is now up to six times faster. (Contributed by " -"Bénédikt Tran, Chris Markiewicz, and Adam Turner in :gh:`118761`.)" -msgstr "" - -msgid "bdb" -msgstr "" - -msgid "" -"The basic debugger now has a :mod:`sys.monitoring`-based backend, which can " -"be selected via the passing ``'monitoring'`` to the :class:`~bdb.Bdb` " -"class's new *backend* parameter. (Contributed by Tian Gao in :gh:`124533`.)" -msgstr "" - -msgid "" -"The :func:`~difflib.IS_LINE_JUNK` function is now up to twice as fast. " -"(Contributed by Adam Turner and Semyon Moroz in :gh:`130167`.)" -msgstr "" - -msgid "gc" -msgstr "" - -msgid "" -"Python 3.14.0-3.14.4 shipped with a new incremental garbage collector. " -"However, due to a number of `reports `__ of significant memory pressure in production environments, " -"it has been reverted back to the generational GC from 3.13. This is the GC " -"now used in Python 3.14.5 and later." -msgstr "" - -msgid "" -"The new :ref:`incremental garbage collector ` " -"means that maximum pause times are reduced by an order of magnitude or more " -"for larger heaps." -msgstr "" - -msgid "" -"Because of this optimization, the meaning of the results of :meth:`~gc." -"get_threshold` and :meth:`~gc.set_threshold` have changed, along with :meth:" -"`~gc.get_count` and :meth:`~gc.get_stats`." -msgstr "" - -msgid "" -"For backwards compatibility, :meth:`~gc.get_threshold` continues to return a " -"three-item tuple. The first value is the threshold for young collections, as " -"before; the second value determines the rate at which the old collection is " -"scanned (the default is 10, and higher values mean that the old collection " -"is scanned more slowly). The third value is now meaningless and is always " -"zero." -msgstr "" - -msgid ":meth:`~gc.set_threshold` now ignores any items after the second." -msgstr "" - -msgid "" -":meth:`~gc.get_count` and :meth:`~gc.get_stats` continue to return the same " -"format of results. The only difference is that instead of the results " -"referring to the young, aging and old generations, the results refer to the " -"young generation and the aging and collecting spaces of the old generation." -msgstr "" - -msgid "" -"In summary, code that attempted to manipulate the behavior of the cycle GC " -"may not work exactly as intended, but it is very unlikely to be harmful. All " -"other code will work just fine." -msgstr "" - -msgid "" -"Opening and reading files now executes fewer system calls. Reading a small " -"operating system cached file in full is up to 15% faster. (Contributed by " -"Cody Maloney and Victor Stinner in :gh:`120754` and :gh:`90102`.)" -msgstr "" - -msgid "" -":func:`Path.read_bytes ` now uses unbuffered mode " -"to open files, which is between 9% and 17% faster to read in full. " -"(Contributed by Cody Maloney in :gh:`120754`.)" -msgstr "" - -msgid "" -":mod:`pdb` now supports two backends, based on either :func:`sys.settrace` " -"or :mod:`sys.monitoring`. Using the :ref:`pdb CLI ` or :func:" -"`breakpoint` will always use the :mod:`sys.monitoring` backend. Explicitly " -"instantiating :class:`pdb.Pdb` and its derived classes will use the :func:" -"`sys.settrace` backend by default, which is configurable. (Contributed by " -"Tian Gao in :gh:`124533`.)" -msgstr "" - -msgid "textwrap" -msgstr "" - -msgid "" -"Optimize the :func:`~textwrap.dedent` function, improving performance by an " -"average of 2.4x, with larger improvements for bigger inputs, and fix a bug " -"with incomplete normalization of blank lines with whitespace characters " -"other than space and tab." -msgstr "" - -msgid "" -":func:`~uuid.uuid3` and :func:`~uuid.uuid5` are now both roughly 40% faster " -"for 16-byte names and 20% faster for 1024-byte names. Performance for longer " -"names remains unchanged. (Contributed by Bénédikt Tran in :gh:`128150`.)" -msgstr "" - -msgid "" -":func:`~uuid.uuid4` is now c. 30% faster. (Contributed by Bénédikt Tran in :" -"gh:`128150`.)" -msgstr "" - -msgid "zlib" -msgstr "" - -msgid "" -"On Windows, `zlib-ng `__ is now used as " -"the implementation of the :mod:`zlib` module in the default binaries. There " -"are no known incompatibilities between ``zlib-ng`` and the previously-used " -"``zlib`` implementation. This should result in better performance at all " -"compression levels." -msgstr "" - -msgid "" -"It is worth noting that ``zlib.Z_BEST_SPEED`` (``1``) may result in " -"significantly less compression than the previous implementation, whilst also " -"significantly reducing the time taken to compress." -msgstr "" - -msgid "(Contributed by Steve Dower in :gh:`91349`.)" -msgstr "" - -msgid "Removed" -msgstr "" - -msgid "" -"Remove the *type*, *choices*, and *metavar* parameters of :class:`!" -"BooleanOptionalAction`. These have been deprecated since Python 3.12. " -"(Contributed by Nikita Sobolev in :gh:`118805`.)" -msgstr "" - -msgid "" -"Calling :meth:`~argparse.ArgumentParser.add_argument_group` on an argument " -"group now raises a :exc:`ValueError`. Similarly, :meth:`~argparse." -"ArgumentParser.add_argument_group` or :meth:`~argparse.ArgumentParser." -"add_mutually_exclusive_group` on a mutually exclusive group now both raise :" -"exc:`ValueError`\\ s. This 'nesting' was never supported, often failed to " -"work correctly, and was unintentionally exposed through inheritance. This " -"functionality has been deprecated since Python 3.11. (Contributed by " -"Savannah Ostrowski in :gh:`127186`.)" -msgstr "" - -msgid "" -"Remove the following classes, which have been deprecated aliases of :class:" -"`~ast.Constant` since Python 3.8 and have emitted deprecation warnings since " -"Python 3.12:" -msgstr "" - -msgid ":class:`!Bytes`" -msgstr "" - -msgid ":class:`!Ellipsis`" -msgstr "" - -msgid ":class:`!NameConstant`" -msgstr "" - -msgid ":class:`!Num`" -msgstr "" - -msgid ":class:`!Str`" -msgstr "" - -msgid "" -"As a consequence of these removals, user-defined ``visit_Num``, " -"``visit_Str``, ``visit_Bytes``, ``visit_NameConstant`` and " -"``visit_Ellipsis`` methods on custom :class:`~ast.NodeVisitor` subclasses " -"will no longer be called when the :class:`!NodeVisitor` subclass is visiting " -"an AST. Define a ``visit_Constant`` method instead." -msgstr "" - -msgid "(Contributed by Alex Waygood in :gh:`119562`.)" -msgstr "" - -msgid "" -"Remove the following deprecated properties on :class:`ast.Constant`, which " -"were present for compatibility with the now-removed AST classes:" -msgstr "" - -msgid ":attr:`!Constant.n`" -msgstr "" - -msgid ":attr:`!Constant.s`" -msgstr "" - -msgid "" -"Use :attr:`!Constant.value` instead. (Contributed by Alex Waygood in :gh:" -"`119562`.)" -msgstr "" - -msgid "" -"Remove the following classes, methods, and functions, which have been " -"deprecated since Python 3.12:" -msgstr "" - -msgid ":class:`!AbstractChildWatcher`" -msgstr "" - -msgid ":class:`!FastChildWatcher`" -msgstr "" - -msgid ":class:`!MultiLoopChildWatcher`" -msgstr "" - -msgid ":class:`!PidfdChildWatcher`" -msgstr "" - -msgid ":class:`!SafeChildWatcher`" -msgstr "" - -msgid ":class:`!ThreadedChildWatcher`" -msgstr "" - -msgid ":meth:`!AbstractEventLoopPolicy.get_child_watcher`" -msgstr "" - -msgid ":meth:`!AbstractEventLoopPolicy.set_child_watcher`" -msgstr "" - -msgid ":func:`!get_child_watcher`" -msgstr "" - -msgid ":func:`!set_child_watcher`" -msgstr "" - -msgid "(Contributed by Kumar Aditya in :gh:`120804`.)" -msgstr "" - -msgid "" -":func:`asyncio.get_event_loop` now raises a :exc:`RuntimeError` if there is " -"no current event loop, and no longer implicitly creates an event loop." -msgstr "" - -msgid "(Contributed by Kumar Aditya in :gh:`126353`.)" -msgstr "" - -msgid "" -"There's a few patterns that use :func:`asyncio.get_event_loop`, most of them " -"can be replaced with :func:`asyncio.run`." -msgstr "" - -msgid "If you're running an async function, simply use :func:`asyncio.run`." -msgstr "" - -msgid "Before:" -msgstr "" - -msgid "" -"async def main():\n" -" ...\n" -"\n" -"\n" -"loop = asyncio.get_event_loop()\n" -"try:\n" -" loop.run_until_complete(main())\n" -"finally:\n" -" loop.close()" -msgstr "" - -msgid "After:" -msgstr "" - -msgid "" -"async def main():\n" -" ...\n" -"\n" -"asyncio.run(main())" -msgstr "" - -msgid "" -"If you need to start something, for example, a server listening on a socket " -"and then run forever, use :func:`asyncio.run` and an :class:`asyncio.Event`." -msgstr "" - -msgid "" -"def start_server(loop): ...\n" -"\n" -"loop = asyncio.get_event_loop()\n" -"try:\n" -" start_server(loop)\n" -" loop.run_forever()\n" -"finally:\n" -" loop.close()" -msgstr "" - -msgid "" -"def start_server(loop): ...\n" -"\n" -"async def main():\n" -" start_server(asyncio.get_running_loop())\n" -" await asyncio.Event().wait()\n" -"\n" -"asyncio.run(main())" -msgstr "" - -msgid "" -"If you need to run something in an event loop, then run some blocking code " -"around it, use :class:`asyncio.Runner`." -msgstr "" - -msgid "" -"async def operation_one(): ...\n" -"def blocking_code(): ...\n" -"async def operation_two(): ...\n" -"\n" -"loop = asyncio.get_event_loop()\n" -"try:\n" -" loop.run_until_complete(operation_one())\n" -" blocking_code()\n" -" loop.run_until_complete(operation_two())\n" -"finally:\n" -" loop.close()" -msgstr "" - -msgid "" -"async def operation_one(): ...\n" -"def blocking_code(): ...\n" -"async def operation_two(): ...\n" -"\n" -"with asyncio.Runner() as runner:\n" -" runner.run(operation_one())\n" -" blocking_code()\n" -" runner.run(operation_two())" -msgstr "" - -msgid "email" -msgstr "" - -msgid "" -"Remove :func:`email.utils.localtime`'s *isdst* parameter, which was " -"deprecated in and has been ignored since Python 3.12. (Contributed by Hugo " -"van Kemenade in :gh:`118798`.)" -msgstr "" - -msgid "importlib.abc" -msgstr "" - -msgid "Remove deprecated :mod:`importlib.abc` classes:" -msgstr "" - -msgid "" -":class:`!ResourceReader` (use :class:`~importlib.resources.abc." -"TraversableResources`)" -msgstr "" - -msgid "" -":class:`!Traversable` (use :class:`~importlib.resources.abc.Traversable`)" -msgstr "" - -msgid "" -":class:`!TraversableResources` (use :class:`~importlib.resources.abc." -"TraversableResources`)" -msgstr "" - -msgid "(Contributed by Jason R. Coombs and Hugo van Kemenade in :gh:`93963`.)" -msgstr "" - -msgid "itertools" -msgstr "" - -msgid "" -"Remove support for copy, deepcopy, and pickle operations from :mod:" -"`itertools` iterators. These have emitted a :exc:`DeprecationWarning` since " -"Python 3.12. (Contributed by Raymond Hettinger in :gh:`101588`.)" -msgstr "" - -msgid "" -"Remove support for passing additional keyword arguments to :class:`~pathlib." -"Path`. In previous versions, any such arguments are ignored. (Contributed by " -"Barney Gale in :gh:`74033`.)" -msgstr "" - -msgid "" -"Remove support for passing additional positional arguments to :meth:`." -"PurePath.relative_to` and :meth:`~pathlib.PurePath.is_relative_to`. In " -"previous versions, any such arguments are joined onto *other*. (Contributed " -"by Barney Gale in :gh:`78707`.)" -msgstr "" - -msgid "pkgutil" -msgstr "" - -msgid "" -"Remove the :func:`!get_loader` and :func:`!find_loader` functions, which " -"have been deprecated since Python 3.12. (Contributed by Bénédikt Tran in :gh:" -"`97850`.)" -msgstr "" - -msgid "pty" -msgstr "" - -msgid "" -"Remove the :func:`!master_open` and :func:`!slave_open` functions, which " -"have been deprecated since Python 3.12. Use :func:`pty.openpty` instead. " -"(Contributed by Nikita Sobolev in :gh:`118824`.)" -msgstr "" - -msgid "sqlite3" -msgstr "" - -msgid "" -"Remove :data:`!version` and :data:`!version_info` from the :mod:`sqlite3` " -"module; use :data:`~sqlite3.sqlite_version` and :data:`~sqlite3." -"sqlite_version_info` for the actual version number of the runtime SQLite " -"library. (Contributed by Hugo van Kemenade in :gh:`118924`.)" -msgstr "" - -msgid "" -"Using a sequence of parameters with named placeholders now raises a :exc:" -"`~sqlite3.ProgrammingError`, having been deprecated since Python 3.12. " -"(Contributed by Erlend E. Aasland in :gh:`118928` and :gh:`101693`.)" -msgstr "" - -msgid "" -"Remove the :class:`!Quoter` class from :mod:`urllib.parse`, which has been " -"deprecated since Python 3.11. (Contributed by Nikita Sobolev in :gh:" -"`118827`.)" -msgstr "" - -msgid "" -"Remove the :class:`!URLopener` and :class:`!FancyURLopener` classes from :" -"mod:`urllib.request`, which have been deprecated since Python 3.3." -msgstr "" - -msgid "" -"``myopener.open()`` can be replaced with :func:`~urllib.request.urlopen`. " -"``myopener.retrieve()`` can be replaced with :func:`~urllib.request." -"urlretrieve`. Customisations to the opener classes can be replaced by " -"passing customized handlers to :func:`~urllib.request.build_opener`. " -"(Contributed by Barney Gale in :gh:`84850`.)" -msgstr "" - -msgid "Deprecated" -msgstr "" - -msgid "New deprecations" -msgstr "" - -msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; complex numbers should only be " -"passed as a single positional argument. (Contributed by Serhiy Storchaka in :" -"gh:`109218`.)" -msgstr "" - -msgid ":mod:`argparse`:" -msgstr "" - -msgid "" -"Passing the undocumented keyword argument *prefix_chars* to the :meth:" -"`~argparse.ArgumentParser.add_argument_group` method is now deprecated. " -"(Contributed by Savannah Ostrowski in :gh:`125563`.)" -msgstr "" - -msgid "" -"Deprecated the :class:`argparse.FileType` type converter. Anything relating " -"to resource management should be handled downstream, after the arguments " -"have been parsed. (Contributed by Serhiy Storchaka in :gh:`58032`.)" -msgstr "" - -msgid ":mod:`asyncio`:" -msgstr "" - -msgid "" -"The :func:`!asyncio.iscoroutinefunction` is now deprecated and will be " -"removed in Python 3.16; use :func:`inspect.iscoroutinefunction` instead. " -"(Contributed by Jiahao Li and Kumar Aditya in :gh:`122875`.)" -msgstr "" - -msgid "" -"The :mod:`asyncio` policy system is deprecated and will be removed in Python " -"3.16. In particular, the following classes and functions are deprecated:" -msgstr "" - -msgid ":class:`asyncio.AbstractEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.DefaultEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.WindowsSelectorEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.WindowsProactorEventLoopPolicy`" -msgstr "" - -msgid ":func:`asyncio.get_event_loop_policy`" -msgstr "" - -msgid ":func:`asyncio.set_event_loop_policy`" -msgstr "" - -msgid "" -"Users should use :func:`asyncio.run` or :class:`asyncio.Runner` with the " -"*loop_factory* argument to use the desired event loop implementation." -msgstr "" - -msgid "For example, to use :class:`asyncio.SelectorEventLoop` on Windows:" -msgstr "" - -msgid "" -"import asyncio\n" -"\n" -"async def main():\n" -" ...\n" -"\n" -"asyncio.run(main(), loop_factory=asyncio.SelectorEventLoop)" -msgstr "" - -msgid "(Contributed by Kumar Aditya in :gh:`127949`.)" -msgstr "" - -msgid "" -":mod:`codecs`: The :func:`codecs.open` function is now deprecated, and will " -"be removed in a future version of Python. Use :func:`open` instead. " -"(Contributed by Inada Naoki in :gh:`133036`.)" -msgstr "" - -msgid ":mod:`ctypes`:" -msgstr "" - -msgid "" -"On non-Windows platforms, setting :attr:`.Structure._pack_` to use a MSVC-" -"compatible default memory layout is now deprecated in favor of setting :attr:" -"`.Structure._layout_` to ``'ms'``, and will be removed in Python 3.19. " -"(Contributed by Petr Viktorin in :gh:`131747`.)" -msgstr "" - -msgid "" -"Calling :func:`ctypes.POINTER` on a string is now deprecated. Use :ref:" -"`incomplete types ` for self-referential " -"structures. Also, the internal ``ctypes._pointer_type_cache`` is deprecated. " -"See :func:`ctypes.POINTER` for updated implementation details. (Contributed " -"by Sergey Myrianov in :gh:`100926`.)" -msgstr "" - -msgid "" -":mod:`functools`: Calling the Python implementation of :func:`functools." -"reduce` with *function* or *sequence* as keyword arguments is now " -"deprecated; the parameters will be made positional-only in Python 3.16. " -"(Contributed by Kirill Podoprigora in :gh:`121676`.)" -msgstr "" - -msgid "" -":mod:`logging`: Support for custom logging handlers with the *strm* argument " -"is now deprecated and scheduled for removal in Python 3.16. Define handlers " -"with the *stream* argument instead. (Contributed by Mariusz Felisiak in :gh:" -"`115032`.)" -msgstr "" - -msgid "" -":mod:`mimetypes`: Valid extensions are either empty or must start with '.' " -"for :meth:`mimetypes.MimeTypes.add_type`. Undotted extensions are deprecated " -"and will raise a :exc:`ValueError` in Python 3.16. (Contributed by Hugo van " -"Kemenade in :gh:`75223`.)" -msgstr "" - -msgid "" -":mod:`!nturl2path`: This module is now deprecated. Call :func:`urllib." -"request.url2pathname` and :func:`~urllib.request.pathname2url` instead. " -"(Contributed by Barney Gale in :gh:`125866`.)" -msgstr "" - -msgid "" -":mod:`os`: The :func:`os.popen` and :func:`os.spawn* ` functions " -"are now :term:`soft deprecated`. They should no longer be used to write new " -"code. The :mod:`subprocess` module is recommended instead. (Contributed by " -"Victor Stinner in :gh:`120743`.)" -msgstr "" - -msgid "" -":mod:`pathlib`: :meth:`!pathlib.PurePath.as_uri` is now deprecated and " -"scheduled for removal in Python 3.19. Use :meth:`pathlib.Path.as_uri` " -"instead. (Contributed by Barney Gale in :gh:`123599`.)" -msgstr "" - -msgid "" -":mod:`pdb`: The undocumented ``pdb.Pdb.curframe_locals`` attribute is now a " -"deprecated read-only property, which will be removed in a future version of " -"Python. The low overhead dynamic frame locals access added in Python 3.13 " -"by :pep:`667` means the frame locals cache reference previously stored in " -"this attribute is no longer needed. Derived debuggers should access ``pdb." -"Pdb.curframe.f_locals`` directly in Python 3.13 and later versions. " -"(Contributed by Tian Gao in :gh:`124369` and :gh:`125951`.)" -msgstr "" - -msgid "" -":mod:`symtable`: Deprecate :meth:`symtable.Class.get_methods` due to the " -"lack of interest, scheduled for removal in Python 3.16. (Contributed by " -"Bénédikt Tran in :gh:`119698`.)" -msgstr "" - -msgid "" -":mod:`tkinter`: The :class:`!tkinter.Variable` methods :meth:`!" -"trace_variable`, :meth:`!trace_vdelete` and :meth:`!trace_vinfo` are now " -"deprecated. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" -msgstr "" - -msgid "" -":mod:`urllib.parse`: Accepting objects with false values (like ``0`` and " -"``[]``) except empty strings, bytes-like objects and ``None`` in :func:" -"`~urllib.parse.parse_qsl` and :func:`~urllib.parse.parse_qs` is now " -"deprecated. (Contributed by Serhiy Storchaka in :gh:`116897`.)" -msgstr "" - -msgid "Pending removal in Python 3.15" -msgstr "" - -msgid "The import system:" -msgstr "" - -msgid "" -"Setting ``__cached__`` on a module while failing to set :attr:`__spec__." -"cached ` is deprecated. In Python " -"3.15, ``__cached__`` will cease to be set or take into consideration by the " -"import system or standard library. (:gh:`97879`)" -msgstr "" - -msgid "" -"Setting :attr:`~module.__package__` on a module while failing to set :attr:" -"`__spec__.parent ` is deprecated. In " -"Python 3.15, :attr:`!__package__` will cease to be set or take into " -"consideration by the import system or standard library. (:gh:`97879`)" -msgstr "" - -msgid "" -"The undocumented :func:`!ctypes.SetPointerType` function has been deprecated " -"since Python 3.13." -msgstr "" - -msgid ":mod:`http.server`:" -msgstr "" - -msgid "" -"The obsolete and rarely used :class:`!CGIHTTPRequestHandler` has been " -"deprecated since Python 3.13. No direct replacement exists. *Anything* is " -"better than CGI to interface a web server with a request handler." -msgstr "" - -msgid "" -"The :option:`!--cgi` flag to the :program:`python -m http.server` command-" -"line interface has been deprecated since Python 3.13." -msgstr "" - -msgid ":mod:`importlib`:" -msgstr "" - -msgid "``load_module()`` method: use ``exec_module()`` instead." -msgstr "" - -msgid ":mod:`pathlib`:" -msgstr "" - -msgid "" -":meth:`!.PurePath.is_reserved` has been deprecated since Python 3.13. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows." -msgstr "" - -msgid ":mod:`platform`:" -msgstr "" - -msgid "" -":func:`!platform.java_ver` has been deprecated since Python 3.13. This " -"function is only useful for Jython support, has a confusing API, and is " -"largely untested." -msgstr "" - -msgid ":mod:`sysconfig`:" -msgstr "" - -msgid "" -"The *check_home* argument of :func:`sysconfig.is_python_build` has been " -"deprecated since Python 3.12." -msgstr "" - -msgid ":mod:`threading`:" -msgstr "" - -msgid "" -":func:`~threading.RLock` will take no arguments in Python 3.15. Passing any " -"arguments has been deprecated since Python 3.14, as the Python version does " -"not permit any arguments, but the C version allows any number of positional " -"or keyword arguments, ignoring every argument." -msgstr "" - -msgid ":mod:`types`:" -msgstr "" - -msgid "" -":class:`types.CodeType`: Accessing :attr:`!codeobject.co_lnotab` was " -"deprecated in :pep:`626` since 3.10 and was planned to be removed in 3.12, " -"but it only got a proper :exc:`DeprecationWarning` in 3.12. May be removed " -"in 3.15. (Contributed by Nikita Sobolev in :gh:`101866`.)" -msgstr "" - -msgid ":mod:`typing`:" -msgstr "" - -msgid "" -"The undocumented keyword argument syntax for creating :class:`~typing." -"NamedTuple` classes (for example, ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``) has been deprecated since Python 3.13. Use the class-based syntax " -"or the functional syntax instead." -msgstr "" - -msgid "" -"When using the functional syntax of :class:`~typing.TypedDict`\\s, failing " -"to pass a value to the *fields* parameter (``TD = TypedDict(\"TD\")``) or " -"passing ``None`` (``TD = TypedDict(\"TD\", None)``) has been deprecated " -"since Python 3.13. Use ``class TD(TypedDict): pass`` or ``TD = " -"TypedDict(\"TD\", {})`` to create a TypedDict with zero field." -msgstr "" - -msgid "" -"The :deco:`!typing.no_type_check_decorator` decorator function has been " -"deprecated since Python 3.13. After eight years in the :mod:`typing` module, " -"it has yet to be supported by any major type checker." -msgstr "" - -msgid "" -":mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse` modules." -msgstr "" - -msgid ":mod:`wave`:" -msgstr "" - -msgid "" -"The ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of the :class:" -"`~wave.Wave_read` and :class:`~wave.Wave_write` classes have been deprecated " -"since Python 3.13." -msgstr "" - -msgid ":mod:`zipimport`:" -msgstr "" - -msgid "" -":meth:`!zipimport.zipimporter.load_module` has been deprecated since Python " -"3.10. Use :meth:`~zipimport.zipimporter.exec_module` instead. (:gh:`125746`.)" -msgstr "" - -msgid "Pending removal in Python 3.16" -msgstr "" - -msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." -msgstr "" - -msgid ":mod:`array`:" -msgstr "" - -msgid "" -"The ``'u'`` format code (:c:type:`wchar_t`) has been deprecated in " -"documentation since Python 3.3 and at runtime since Python 3.13. Use the " -"``'w'`` format code (:c:type:`Py_UCS4`) for Unicode characters instead." -msgstr "" - -msgid "" -":func:`!asyncio.iscoroutinefunction` is deprecated and will be removed in " -"Python 3.16; use :func:`inspect.iscoroutinefunction` instead. (Contributed " -"by Jiahao Li and Kumar Aditya in :gh:`122875`.)" -msgstr "" - -msgid "" -":mod:`asyncio` policy system is deprecated and will be removed in Python " -"3.16. In particular, the following classes and functions are deprecated:" -msgstr "" - -msgid "" -"Users should use :func:`asyncio.run` or :class:`asyncio.Runner` with " -"*loop_factory* to use the desired event loop implementation." -msgstr "" - -msgid "For example, to use :class:`asyncio.SelectorEventLoop` on Windows::" -msgstr "" - -msgid ":mod:`builtins`:" -msgstr "" - -msgid "" -"Bitwise inversion on boolean types, ``~True`` or ``~False`` has been " -"deprecated since Python 3.12, as it produces surprising and unintuitive " -"results (``-2`` and ``-1``). Use ``not x`` instead for the logical negation " -"of a Boolean. In the rare case that you need the bitwise inversion of the " -"underlying integer, convert to ``int`` explicitly (``~int(x)``)." -msgstr "" - -msgid ":mod:`functools`:" -msgstr "" - -msgid "" -"Calling the Python implementation of :func:`functools.reduce` with " -"*function* or *sequence* as keyword arguments has been deprecated since " -"Python 3.14." -msgstr "" - -msgid ":mod:`logging`:" -msgstr "" - -msgid "" -"Support for custom logging handlers with the *strm* argument is deprecated " -"and scheduled for removal in Python 3.16. Define handlers with the *stream* " -"argument instead. (Contributed by Mariusz Felisiak in :gh:`115032`.)" -msgstr "" - -msgid ":mod:`mimetypes`:" -msgstr "" - -msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" -msgstr "" - -msgid ":mod:`shutil`:" -msgstr "" - -msgid "" -"The :class:`!ExecError` exception has been deprecated since Python 3.14. It " -"has not been used by any function in :mod:`!shutil` since Python 3.4, and is " -"now an alias of :exc:`RuntimeError`." -msgstr "" - -msgid ":mod:`symtable`:" -msgstr "" - -msgid "" -"The :meth:`Class.get_methods ` method has been " -"deprecated since Python 3.14." -msgstr "" - -msgid ":mod:`sys`:" -msgstr "" - -msgid "" -"The :func:`~sys._enablelegacywindowsfsencoding` function has been deprecated " -"since Python 3.13. Use the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " -"environment variable instead." -msgstr "" - -msgid "" -"The :func:`!sysconfig.expand_makefile_vars` function has been deprecated " -"since Python 3.14. Use the ``vars`` argument of :func:`sysconfig.get_paths` " -"instead." -msgstr "" - -msgid ":mod:`tarfile`:" -msgstr "" - -msgid "" -"The undocumented and unused :attr:`!TarFile.tarfile` attribute has been " -"deprecated since Python 3.13." -msgstr "" - -msgid "Pending removal in Python 3.17" -msgstr "" - -msgid ":mod:`datetime`:" -msgstr "" - -msgid "" -":meth:`~datetime.datetime.strptime` calls using a format string containing " -"``%e`` (day of month) without a year. This has been deprecated since Python " -"3.15. (Contributed by Stan Ulbrych in :gh:`70647`.)" -msgstr "" - -msgid ":mod:`collections.abc`:" -msgstr "" - -msgid "" -":class:`collections.abc.ByteString` is scheduled for removal in Python 3.17." -msgstr "" - -msgid "" -"Use ``isinstance(obj, collections.abc.Buffer)`` to test if ``obj`` " -"implements the :ref:`buffer protocol ` at runtime. For use in " -"type annotations, either use :class:`~collections.abc.Buffer` or a union " -"that explicitly specifies the types your code supports (e.g., ``bytes | " -"bytearray | memoryview``)." -msgstr "" - -msgid "" -":class:`!ByteString` was originally intended to be an abstract class that " -"would serve as a supertype of both :class:`bytes` and :class:`bytearray`. " -"However, since the ABC never had any methods, knowing that an object was an " -"instance of :class:`!ByteString` never actually told you anything useful " -"about the object. Other common buffer types such as :class:`memoryview` were " -"also never understood as subtypes of :class:`!ByteString` (either at runtime " -"or by static type checkers)." -msgstr "" - -msgid "" -"See :pep:`PEP 688 <688#current-options>` for more details. (Contributed by " -"Shantanu Jain in :gh:`91896`.)" -msgstr "" - -msgid ":mod:`encodings`:" -msgstr "" - -msgid "" -"Passing non-ascii *encoding* names to :func:`encodings.normalize_encoding` " -"is deprecated and scheduled for removal in Python 3.17. (Contributed by Stan " -"Ulbrych in :gh:`136702`.)" -msgstr "" - -msgid ":mod:`profile`:" -msgstr "" - -msgid "" -"The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" -msgstr "" - -msgid ":mod:`webbrowser`:" -msgstr "" - -msgid "" -":class:`!webbrowser.MacOSXOSAScript` is deprecated in favour of :class:`!" -"webbrowser.MacOS`. (:gh:`137586`)" -msgstr "" - -msgid "" -"Before Python 3.14, old-style unions were implemented using the private " -"class ``typing._UnionGenericAlias``. This class is no longer needed for the " -"implementation, but it has been retained for backward compatibility, with " -"removal scheduled for Python 3.17. Users should use documented introspection " -"helpers like :func:`typing.get_origin` and :func:`typing.get_args` instead " -"of relying on private implementation details." -msgstr "" - -msgid "" -":class:`typing.ByteString`, deprecated since Python 3.9, is scheduled for " -"removal in Python 3.17." -msgstr "" - -msgid ":mod:`tkinter`:" -msgstr "" - -msgid "" -"The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" -msgstr "" - -msgid "Pending removal in Python 3.18" -msgstr "" - -msgid "" -"No longer accept a boolean value when a file descriptor is expected. " -"(Contributed by Serhiy Storchaka in :gh:`82626`.)" -msgstr "" - -msgid ":mod:`decimal`:" -msgstr "" - -msgid "" -"The non-standard and undocumented :class:`~decimal.Decimal` format specifier " -"``'N'``, which is only supported in the :mod:`!decimal` module's C " -"implementation, has been deprecated since Python 3.13. (Contributed by " -"Serhiy Storchaka in :gh:`89902`.)" -msgstr "" - -msgid "Deprecations defined by :pep:`829`:" -msgstr "" - -msgid "``import`` lines in :file:`{name}.pth` files are silently ignored." -msgstr "" - -msgid "(Contributed by Barry Warsaw in :gh:`148641`.)" -msgstr "" - -msgid "Pending removal in Python 3.19" -msgstr "" - -msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." -msgstr "" - -msgid ":mod:`hashlib`:" -msgstr "" - -msgid "" -"In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." -msgstr "" - -msgid "" -"Support for the ``string`` keyword argument name is now deprecated and " -"slated for removal in Python 3.19." -msgstr "" - -msgid "" -"Before Python 3.13, the ``string`` keyword parameter was not correctly " -"supported depending on the backend implementation of hash functions. Prefer " -"passing the initial data as a positional argument for maximum backwards " -"compatibility." -msgstr "" - -msgid ":mod:`http.cookies`:" -msgstr "" - -msgid "" -":meth:`http.cookies.Morsel.js_output` is deprecated and will be removed in " -"Python 3.19." -msgstr "" - -msgid "" -":meth:`http.cookies.BaseCookie.js_output` is deprecated and will be removed " -"in Python 3.19." -msgstr "" - -msgid ":mod:`imaplib`:" -msgstr "" - -msgid "" -"Altering :attr:`IMAP4.file ` is now deprecated and " -"slated for removal in Python 3.19. This property is now unused and changing " -"its value does not automatically close the current file." -msgstr "" - -msgid "" -"Before Python 3.14, this property was used to implement the corresponding " -"``read()`` and ``readline()`` methods for :class:`~imaplib.IMAP4` but this " -"is no longer the case since then." -msgstr "" - -msgid "Pending removal in Python 3.20" -msgstr "" - -msgid "" -"Calling the ``__new__()`` method of :class:`struct.Struct` without the " -"*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." -msgstr "" - -msgid "" -"(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)" -msgstr "" - -msgid "" -"The ``__version__``, ``version`` and ``VERSION`` attributes have been " -"deprecated in these standard library modules and will be removed in Python " -"3.20. Use :py:data:`sys.version_info` instead." -msgstr "" - -msgid ":mod:`argparse`" -msgstr "" - -msgid ":mod:`csv`" -msgstr "" - -msgid ":mod:`ctypes`" -msgstr "" - -msgid ":mod:`!ctypes.macholib`" -msgstr "" - -msgid ":mod:`decimal` (use :data:`decimal.SPEC_VERSION` instead)" -msgstr "" - -msgid ":mod:`http.server`" -msgstr "" - -msgid ":mod:`imaplib`" -msgstr "" - -msgid ":mod:`ipaddress`" -msgstr "" - -msgid ":mod:`json`" -msgstr "" - -msgid ":mod:`logging` (``__date__`` also deprecated)" -msgstr "" - -msgid ":mod:`optparse`" -msgstr "" - -msgid ":mod:`pickle`" -msgstr "" - -msgid ":mod:`platform`" -msgstr "" - -msgid ":mod:`re`" -msgstr "" - -msgid ":mod:`socketserver`" -msgstr "" - -msgid ":mod:`tabnanny`" -msgstr "" - -msgid ":mod:`tarfile`" -msgstr "" - -msgid ":mod:`tkinter.font`" -msgstr "" - -msgid ":mod:`tkinter.ttk`" -msgstr "" - -msgid ":mod:`wsgiref.simple_server`" -msgstr "" - -msgid ":mod:`xml.etree.ElementTree`" -msgstr "" - -msgid ":mod:`!xml.sax.expatreader`" -msgstr "" - -msgid ":mod:`xml.sax.handler`" -msgstr "" - -msgid ":mod:`zlib`" -msgstr "" - -msgid "(Contributed by Hugo van Kemenade and Stan Ulbrych in :gh:`76007`.)" -msgstr "" - -msgid "" -"Warnings are produced for ``import`` lines found in :file:`{name}.pth` files." -msgstr "" - -msgid "" -":file:`{name}.pth` files are no longer decoded in the locale encoding by " -"default. They **MUST** be encoded in ``utf-8-sig``." -msgstr "" - -msgid ":mod:`ast`:" -msgstr "" - -msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." -msgstr "" - -msgid "" -"It is deprecated to call :func:`isinstance` and :func:`issubclass` checks on " -"protocol classes that were not explicitly decorated with :func:`!" -"runtime_checkable` but that inherit from a runtime-checkable protocol class. " -"This will raise a :exc:`TypeError` in Python 3.20." -msgstr "" - -msgid "(Contributed by Bartosz Sławecki in :gh:`132604`.)" -msgstr "" - -msgid "Pending removal in future versions" -msgstr "" - -msgid "" -"The following APIs will be removed in the future, although there is " -"currently no date scheduled for their removal." -msgstr "" - -msgid "" -"Nesting argument groups and nesting mutually exclusive groups are deprecated." -msgstr "" - -msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." -msgstr "" - -msgid "The :class:`argparse.FileType` type converter is deprecated." -msgstr "" - -msgid "" -"Generators: ``throw(type, exc, tb)`` and ``athrow(type, exc, tb)`` signature " -"is deprecated: use ``throw(exc)`` and ``athrow(exc)`` instead, the single " -"argument signature." -msgstr "" - -msgid "" -"Currently Python accepts numeric literals immediately followed by keywords, " -"for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " -"ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " -"``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" -msgstr "" - -msgid "" -"Support for ``__index__()`` and ``__int__()`` method returning non-int type: " -"these methods will be required to return an instance of a strict subclass " -"of :class:`int`." -msgstr "" - -msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." -msgstr "" - -msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." -msgstr "" - -msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" -msgstr "" - -msgid "" -":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" -msgstr "" - -msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" -msgstr "" - -msgid "" -":attr:`!codeobject.co_lnotab`: use the :meth:`codeobject.co_lines` method " -"instead." -msgstr "" - -msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." -msgstr "" - -msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." -msgstr "" - -msgid ":mod:`gettext`: Plural value must be an integer." -msgstr "" - -msgid "" -":func:`~importlib.util.cache_from_source` *debug_override* parameter is " -"deprecated: use the *optimization* parameter instead." -msgstr "" - -msgid ":mod:`importlib.metadata`:" -msgstr "" - -msgid "``EntryPoints`` tuple interface." -msgstr "" - -msgid "Implicit ``None`` on return values." -msgstr "" - -msgid "" -":mod:`logging`: the ``warn()`` method has been deprecated since Python 3.3, " -"use :meth:`~logging.warning` instead." -msgstr "" - -msgid "" -":mod:`mailbox`: Use of StringIO input and text mode is deprecated, use " -"BytesIO and binary mode instead." -msgstr "" - -msgid "" -":mod:`os`: Calling :func:`os.register_at_fork` in a multi-threaded process." -msgstr "" - -msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." -msgstr "" - -msgid "" -":class:`!pydoc.ErrorDuringImport`: A tuple value for *exc_info* parameter is " -"deprecated, use an exception instance." -msgstr "" - -msgid "" -":mod:`re`: More strict rules are now applied for numerical group references " -"and group names in regular expressions. Only sequence of ASCII digits is " -"now accepted as a numerical reference. The group name in bytes patterns and " -"replacement strings can now only contain ASCII letters and digits and " -"underscore. (Contributed by Serhiy Storchaka in :gh:`91760`.)" -msgstr "" - -msgid "" -":mod:`shutil`: :func:`~shutil.rmtree`'s *onerror* parameter is deprecated in " -"Python 3.12; use the *onexc* parameter instead." -msgstr "" - -msgid ":mod:`ssl` options and protocols:" -msgstr "" - -msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." -msgstr "" - -msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." -msgstr "" - -msgid "``ssl.OP_NO_SSL*`` options" -msgstr "" - -msgid "``ssl.OP_NO_TLS*`` options" -msgstr "" - -msgid "``ssl.PROTOCOL_SSLv3``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLS``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1_1``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1_2``" -msgstr "" - -msgid "``ssl.TLSVersion.SSLv3``" -msgstr "" - -msgid "``ssl.TLSVersion.TLSv1``" -msgstr "" - -msgid "``ssl.TLSVersion.TLSv1_1``" -msgstr "" - -msgid ":mod:`threading` methods:" -msgstr "" - -msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." -msgstr "" - -msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." -msgstr "" - -msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." -msgstr "" - -msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." -msgstr "" - -msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." -msgstr "" - -msgid ":meth:`!threading.activeCount`: use :meth:`threading.active_count`." -msgstr "" - -msgid ":class:`typing.Text` (:gh:`92332`)." -msgstr "" - -msgid "" -"The internal class ``typing._UnionGenericAlias`` is no longer used to " -"implement :class:`typing.Union`. To preserve compatibility with users using " -"this private class, a compatibility shim will be provided until at least " -"Python 3.17. (Contributed by Jelle Zijlstra in :gh:`105499`.)" -msgstr "" - -msgid "" -":class:`unittest.IsolatedAsyncioTestCase`: it is deprecated to return a " -"value that is not ``None`` from a test case." -msgstr "" - -msgid "" -":mod:`urllib.parse` deprecated functions: :func:`~urllib.parse.urlparse` " -"instead" -msgstr "" - -msgid "``splitattr()``" -msgstr "" - -msgid "``splithost()``" -msgstr "" - -msgid "``splitnport()``" -msgstr "" - -msgid "``splitpasswd()``" -msgstr "" - -msgid "``splitport()``" -msgstr "" - -msgid "``splitquery()``" -msgstr "" - -msgid "``splittag()``" -msgstr "" - -msgid "``splittype()``" -msgstr "" - -msgid "``splituser()``" -msgstr "" - -msgid "``splitvalue()``" -msgstr "" - -msgid "``to_bytes()``" -msgstr "" - -msgid "" -":mod:`wsgiref`: ``SimpleHandler.stdout.write()`` should not do partial " -"writes." -msgstr "" - -msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." -msgstr "" - -msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." -msgstr "" - -msgid "CPython bytecode changes" -msgstr "" - -msgid "" -"Replaced the opcode :opcode:`!BINARY_SUBSCR` by the :opcode:`BINARY_OP` " -"opcode with the ``NB_SUBSCR`` oparg. (Contributed by Irit Katriel in :gh:" -"`100239`.)" -msgstr "" - -msgid "" -"Add the :opcode:`BUILD_INTERPOLATION` and :opcode:`BUILD_TEMPLATE` opcodes " -"to construct new :class:`~string.templatelib.Interpolation` and :class:" -"`~string.templatelib.Template` instances, respectively. (Contributed by " -"Lysandros Nikolaou and others in :gh:`132661`; see also :ref:`PEP 750: " -"Template strings `)." -msgstr "" - -msgid "" -"Remove the :opcode:`!BUILD_CONST_KEY_MAP` opcode. Use :opcode:`BUILD_MAP` " -"instead. (Contributed by Mark Shannon in :gh:`122160`.)" -msgstr "" - -msgid "" -"Replace the :opcode:`!LOAD_ASSERTION_ERROR` opcode with :opcode:" -"`LOAD_COMMON_CONSTANT` and add support for loading :exc:" -"`NotImplementedError`." -msgstr "" - -msgid "" -"Add the :opcode:`LOAD_FAST_BORROW` and :opcode:" -"`LOAD_FAST_BORROW_LOAD_FAST_BORROW` opcodes to reduce reference counting " -"overhead when the interpreter can prove that the reference in the frame " -"outlives the reference loaded onto the stack. (Contributed by Matt Page in :" -"gh:`130704`.)" -msgstr "" - -msgid "" -"Add the :opcode:`LOAD_SMALL_INT` opcode, which pushes a small integer equal " -"to the ``oparg`` to the stack. The :opcode:`!RETURN_CONST` opcode is removed " -"as it is no longer used. (Contributed by Mark Shannon in :gh:`125837`.)" -msgstr "" - -msgid "" -"Add the new :opcode:`LOAD_SPECIAL` instruction. Generate code for :keyword:" -"`with` and :keyword:`async with` statements using the new instruction. " -"Removed the :opcode:`!BEFORE_WITH` and :opcode:`!BEFORE_ASYNC_WITH` " -"instructions. (Contributed by Mark Shannon in :gh:`120507`.)" -msgstr "" - -msgid "" -"Add the :opcode:`POP_ITER` opcode to support 'virtual' iterators. " -"(Contributed by Mark Shannon in :gh:`132554`.)" -msgstr "" - -msgid "Pseudo-instructions" -msgstr "" - -msgid "" -"Add the :opcode:`!ANNOTATIONS_PLACEHOLDER` pseudo instruction to support " -"partially executed module-level annotations with :ref:`deferred evaluation " -"of annotations `. (Contributed by Jelle " -"Zijlstra in :gh:`130907`.)" -msgstr "" - -msgid "" -"Add the :opcode:`!BINARY_OP_EXTEND` pseudo instruction, which executes a " -"pair of functions (guard and specialization functions) accessed from the " -"inline cache. (Contributed by Irit Katriel in :gh:`100239`.)" -msgstr "" - -msgid "" -"Add three specializations for :opcode:`CALL_KW`; :opcode:`!CALL_KW_PY` for " -"calls to Python functions, :opcode:`!CALL_KW_BOUND_METHOD` for calls to " -"bound methods, and :opcode:`!CALL_KW_NON_PY` for all other calls. " -"(Contributed by Mark Shannon in :gh:`118093`.)" -msgstr "" - -msgid "" -"Add the :opcode:`JUMP_IF_TRUE` and :opcode:`JUMP_IF_FALSE` pseudo " -"instructions, conditional jumps which do not impact the stack. Replaced by " -"the sequence ``COPY 1``, ``TO_BOOL``, ``POP_JUMP_IF_TRUE/FALSE``. " -"(Contributed by Irit Katriel in :gh:`124285`.)" -msgstr "" - -msgid "" -"Add the :opcode:`!LOAD_CONST_MORTAL` pseudo instruction. (Contributed by " -"Mark Shannon in :gh:`128685`.)" -msgstr "" - -msgid "" -"Add the :opcode:`!LOAD_CONST_IMMORTAL` pseudo instruction, which does the " -"same as :opcode:`!LOAD_CONST`, but is more efficient for immortal objects. " -"(Contributed by Mark Shannon in :gh:`125837`.)" -msgstr "" - -msgid "" -"Add the :opcode:`NOT_TAKEN` pseudo instruction, used by :mod:`sys." -"monitoring` to record branch events (such as :monitoring-event:" -"`BRANCH_LEFT`). (Contributed by Mark Shannon in :gh:`122548`.)" -msgstr "" - -msgid "C API changes" -msgstr "" - -msgid "Python configuration C API" -msgstr "" - -msgid "" -"Add a :ref:`PyInitConfig C API ` to configure the Python " -"initialization without relying on C structures and the ability to make ABI-" -"compatible changes in the future." -msgstr "" - -msgid "" -"Complete the :pep:`587` :ref:`PyConfig C API ` by adding :c:" -"func:`PyInitConfig_AddModule` which can be used to add a built-in extension " -"module; a feature previously referred to as the \"inittab\"." -msgstr "" - -msgid "" -"Add :c:func:`PyConfig_Get` and :c:func:`PyConfig_Set` functions to get and " -"set the current runtime configuration." -msgstr "" - -msgid "" -":pep:`587` 'Python Initialization Configuration' unified all the ways to " -"configure Python's initialization. This PEP also unifies the configuration " -"of Python's preinitialization and initialization in a single API. Moreover, " -"this PEP only provides a single choice to embed Python, instead of having " -"two 'Python' and 'Isolated' choices (PEP 587), to further simplify the API." -msgstr "" - -msgid "" -"The lower level PEP 587 PyConfig API remains available for use cases with an " -"intentionally higher level of coupling to CPython implementation details " -"(such as emulating the full functionality of CPython's CLI, including its " -"configuration mechanisms)." -msgstr "" - -msgid "(Contributed by Victor Stinner in :gh:`107954`.)" -msgstr "" - -msgid ":pep:`741` and :pep:`587`" -msgstr "" - -msgid "New features in the C API" -msgstr "" - -msgid "" -"Add :c:func:`Py_PACK_VERSION` and :c:func:`Py_PACK_FULL_VERSION`, two new " -"macros for bit-packing Python version numbers. This is useful for " -"comparisons with :c:var:`Py_Version` or :c:macro:`PY_VERSION_HEX`. " -"(Contributed by Petr Viktorin in :gh:`128629`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyBytes_Join(sep, iterable) ` function, similar " -"to ``sep.join(iterable)`` in Python. (Contributed by Victor Stinner in :gh:" -"`121645`.)" -msgstr "" - -msgid "" -"Add functions to manipulate the configuration of the current runtime Python " -"interpreter (:ref:`PEP 741: Python configuration C API `):" -msgstr "" - -msgid ":c:func:`PyConfig_Get`" -msgstr "" - -msgid ":c:func:`PyConfig_GetInt`" -msgstr "" - -msgid ":c:func:`PyConfig_Set`" -msgstr "" - -msgid ":c:func:`PyConfig_Names`" -msgstr "" - -msgid "" -"Add functions to configure Python initialization (:ref:`PEP 741: Python " -"configuration C API `):" -msgstr "" - -msgid ":c:func:`Py_InitializeFromInitConfig`" -msgstr "" - -msgid ":c:func:`PyInitConfig_AddModule`" -msgstr "" - -msgid ":c:func:`PyInitConfig_Create`" -msgstr "" - -msgid ":c:func:`PyInitConfig_Free`" -msgstr "" - -msgid ":c:func:`PyInitConfig_FreeStrList`" -msgstr "" - -msgid ":c:func:`PyInitConfig_GetError`" -msgstr "" - -msgid ":c:func:`PyInitConfig_GetExitCode`" -msgstr "" - -msgid ":c:func:`PyInitConfig_GetInt`" -msgstr "" - -msgid ":c:func:`PyInitConfig_GetStr`" -msgstr "" - -msgid ":c:func:`PyInitConfig_GetStrList`" -msgstr "" - -msgid ":c:func:`PyInitConfig_HasOption`" -msgstr "" - -msgid ":c:func:`PyInitConfig_SetInt`" -msgstr "" - -msgid ":c:func:`PyInitConfig_SetStr`" -msgstr "" - -msgid ":c:func:`PyInitConfig_SetStrList`" -msgstr "" - -msgid "" -"Add :c:func:`Py_fopen` function to open a file. This works similarly to the " -"standard C :c:func:`!fopen` function, instead accepting a Python object for " -"the *path* parameter and setting an exception on error. The corresponding " -"new :c:func:`Py_fclose` function should be used to close a file. " -"(Contributed by Victor Stinner in :gh:`127350`.)" -msgstr "" - -msgid "" -"Add :c:func:`Py_HashBuffer` to compute and return the hash value of a " -"buffer. (Contributed by Antoine Pitrou and Victor Stinner in :gh:`122854`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyImport_ImportModuleAttr` and :c:func:" -"`PyImport_ImportModuleAttrString` helper functions to import a module and " -"get an attribute of the module. (Contributed by Victor Stinner in :gh:" -"`128911`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyIter_NextItem` to replace :c:func:`PyIter_Next`, which has an " -"ambiguous return value. (Contributed by Irit Katriel and Erlend Aasland in :" -"gh:`105201`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyLong_GetSign` function to get the sign of :class:`int` " -"objects. (Contributed by Sergey B Kirpichev in :gh:`116560`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyLong_IsPositive`, :c:func:`PyLong_IsNegative` and :c:func:" -"`PyLong_IsZero` for checking if :c:type:`PyLongObject` is positive, " -"negative, or zero, respectively. (Contributed by James Roy and Sergey B " -"Kirpichev in :gh:`126061`.)" -msgstr "" - -msgid "" -"Add new functions to convert C ```` numbers to/from Python :class:" -"`int` objects:" -msgstr "" - -msgid ":c:func:`PyLong_AsInt32`" -msgstr "" - -msgid ":c:func:`PyLong_AsInt64`" -msgstr "" - -msgid ":c:func:`PyLong_AsUInt32`" -msgstr "" - -msgid ":c:func:`PyLong_AsUInt64`" -msgstr "" - -msgid ":c:func:`PyLong_FromInt32`" -msgstr "" - -msgid ":c:func:`PyLong_FromInt64`" -msgstr "" - -msgid ":c:func:`PyLong_FromUInt32`" -msgstr "" - -msgid ":c:func:`PyLong_FromUInt64`" -msgstr "" - -msgid "(Contributed by Victor Stinner in :gh:`120389`.)" -msgstr "" - -msgid "" -"Add a new import and export API for Python :class:`int` objects (:pep:`757`):" -msgstr "" - -msgid ":c:func:`PyLong_GetNativeLayout`" -msgstr "" - -msgid ":c:func:`PyLong_Export`" -msgstr "" - -msgid ":c:func:`PyLong_FreeExport`" -msgstr "" - -msgid ":c:func:`PyLongWriter_Create`" -msgstr "" - -msgid ":c:func:`PyLongWriter_Finish`" -msgstr "" - -msgid ":c:func:`PyLongWriter_Discard`" -msgstr "" - -msgid "(Contributed by Sergey B Kirpichev and Victor Stinner in :gh:`102471`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyMonitoring_FireBranchLeftEvent` and :c:func:" -"`PyMonitoring_FireBranchRightEvent` for generating :monitoring-event:" -"`BRANCH_LEFT` and :monitoring-event:`BRANCH_RIGHT` events, respectively. " -"(Contributed by Mark Shannon in :gh:`122548`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyType_Freeze` function to make a type immutable. (Contributed " -"by Victor Stinner in :gh:`121654`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyType_GetBaseByToken` and :c:data:`Py_tp_token` slot for " -"easier superclass identification, which attempts to resolve the type " -"checking issue mentioned in :pep:`PEP 630 <630#type-checking>`. (Contributed " -"in :gh:`124153`.)" -msgstr "" - -msgid "" -"Add a new :c:func:`PyUnicode_Equal` function to test if two strings are " -"equal. The function is also added to the Limited C API. (Contributed by " -"Victor Stinner in :gh:`124502`.)" -msgstr "" - -msgid "" -"Add a new :c:type:`PyUnicodeWriter` API to create a Python :class:`str` " -"object, with the following functions:" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_Create`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_DecodeUTF8Stateful`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_Discard`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_Finish`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_Format`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteASCII`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteChar`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteRepr`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteStr`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteSubstring`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteUCS4`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteUTF8`" -msgstr "" - -msgid ":c:func:`PyUnicodeWriter_WriteWideChar`" -msgstr "" - -msgid "(Contributed by Victor Stinner in :gh:`119182`.)" -msgstr "" - -msgid "" -"The ``k`` and ``K`` formats in :c:func:`PyArg_ParseTuple` and similar " -"functions now use :meth:`~object.__index__` if available, like all other " -"integer formats. (Contributed by Serhiy Storchaka in :gh:`112068`.)" -msgstr "" - -msgid "" -"Add support for a new ``p`` format unit in :c:func:`Py_BuildValue` that " -"produces a Python :class:`bool` object from a C integer. (Contributed by " -"Pablo Galindo in :issue:`45325`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_IsImmortal` for determining if an object is :term:" -"`immortal`, for debugging purposes. (Contributed by Peter Bierma in :gh:" -"`128509`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_Object_EnableDeferredRefcount` for enabling deferred " -"reference counting, as outlined in :pep:`703`." -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_Object_IsUniquelyReferenced` as a replacement for " -"``Py_REFCNT(op) == 1`` on :term:`free threaded ` builds. " -"(Contributed by Peter Bierma in :gh:`133140`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_Object_IsUniqueReferencedTemporary` to determine if " -"an object is a unique temporary object on the interpreter's operand stack. " -"This can be used in some cases as a replacement for checking if :c:func:" -"`Py_REFCNT` is ``1`` for Python objects passed as arguments to C API " -"functions. (Contributed by Sam Gross in :gh:`133164`.)" -msgstr "" - -msgid "Limited C API changes" -msgstr "" - -msgid "" -"In the limited C API version 3.14 and newer, :c:func:`Py_TYPE` and :c:func:" -"`Py_REFCNT` are now implemented as an opaque function call to hide " -"implementation details. (Contributed by Victor Stinner in :gh:`120600` and :" -"gh:`124127`.)" -msgstr "" - -msgid "" -"Remove the :c:macro:`PySequence_Fast_GET_SIZE`, :c:macro:" -"`PySequence_Fast_GET_ITEM`, and :c:macro:`PySequence_Fast_ITEMS` macros from " -"the limited C API, since they have always been broken in the limited C API. " -"(Contributed by Victor Stinner in :gh:`91417`.)" -msgstr "" - -msgid "Removed C APIs" -msgstr "" - -msgid "" -"Creating :c:data:`immutable types ` with mutable " -"bases was deprecated in Python 3.12, and now raises a :exc:`TypeError`. " -"(Contributed by Nikita Sobolev in :gh:`119775`.)" -msgstr "" - -msgid "" -"Remove ``PyDictObject.ma_version_tag`` member, which was deprecated in " -"Python 3.12. Use the :c:func:`PyDict_AddWatcher` API instead. (Contributed " -"by Sam Gross in :gh:`124296`.)" -msgstr "" - -msgid "" -"Remove the private ``_Py_InitializeMain()`` function. It was a :term:" -"`provisional API` added to Python 3.8 by :pep:`587`. (Contributed by Victor " -"Stinner in :gh:`129033`.)" -msgstr "" - -msgid "" -"Remove the undocumented APIs :c:macro:`!Py_C_RECURSION_LIMIT` and :c:member:" -"`!PyThreadState.c_recursion_remaining`. These were added in 3.13 and have " -"been removed without deprecation. Use :c:func:`Py_EnterRecursiveCall` to " -"guard against runaway recursion in C code. (Removed by Petr Viktorin in :gh:" -"`133079`, see also :gh:`130396`.)" -msgstr "" - -msgid "Deprecated C APIs" -msgstr "" - -msgid "" -"The :c:macro:`!Py_HUGE_VAL` macro is now :term:`soft deprecated`. Use :c:" -"macro:`!INFINITY` instead. (Contributed by Sergey B Kirpichev in :gh:" -"`120026`.)" -msgstr "" - -msgid "" -"The :c:macro:`!Py_IS_NAN`, :c:macro:`!Py_IS_INFINITY`, and :c:macro:`!" -"Py_IS_FINITE` macros are now :term:`soft deprecated`. Use :c:macro:`!" -"isnan`, :c:macro:`!isinf` and :c:macro:`!isfinite` instead, available from :" -"file:`math.h` since C99. (Contributed by Sergey B Kirpichev in :gh:`119613`.)" -msgstr "" - -msgid "" -"Non-tuple sequences are now deprecated as argument for the ``(items)`` " -"format unit in :c:func:`PyArg_ParseTuple` and other :ref:`argument parsing " -"` functions if *items* contains format units which store a :ref:" -"`borrowed buffer ` or a :term:`borrowed reference`. " -"(Contributed by Serhiy Storchaka in :gh:`50333`.)" -msgstr "" - -msgid "" -"The ``_PyMonitoring_FireBranchEvent`` function is now deprecated and should " -"be replaced with calls to :c:func:`PyMonitoring_FireBranchLeftEvent` and :c:" -"func:`PyMonitoring_FireBranchRightEvent`." -msgstr "" - -msgid "" -"The previously undocumented function :c:func:`PySequence_In` is now :term:" -"`soft deprecated`. Use :c:func:`PySequence_Contains` instead. (Contributed " -"by Yuki Kobayashi in :gh:`127896`.)" -msgstr "" - -msgid "" -"The :c:func:`!PyImport_ImportModuleNoBlock`: Use :c:func:" -"`PyImport_ImportModule` instead." -msgstr "" - -msgid "" -":c:func:`!PyWeakref_GetObject` and :c:func:`!PyWeakref_GET_OBJECT`: Use :c:" -"func:`PyWeakref_GetRef` instead. The `pythoncapi-compat project `__ can be used to get :c:func:" -"`PyWeakref_GetRef` on Python 3.12 and older." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsDecodedObject`: Use :c:func:`PyCodec_Decode` instead." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsDecodedUnicode`: Use :c:func:`PyCodec_Decode` instead; " -"Note that some codecs (for example, \"base64\") may return a type other " -"than :class:`str`, such as :class:`bytes`." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsEncodedObject`: Use :c:func:`PyCodec_Encode` instead." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsEncodedUnicode`: Use :c:func:`PyCodec_Encode` instead; " -"Note that some codecs (for example, \"base64\") may return a type other " -"than :class:`bytes`, such as :class:`str`." -msgstr "" - -msgid "Python initialization functions, deprecated in Python 3.13:" -msgstr "" - -msgid "" -":c:func:`!Py_GetPath`: Use :c:func:`PyConfig_Get(\"module_search_paths\") " -"` (:data:`sys.path`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetPrefix`: Use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." -msgstr "" - -msgid "" -":c:func:`!Py_GetExecPrefix`: Use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." -msgstr "" - -msgid "" -":c:func:`!Py_GetProgramFullPath`: Use :c:func:`PyConfig_Get(\"executable\") " -"` (:data:`sys.executable`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetProgramName`: Use :c:func:`PyConfig_Get(\"executable\") " -"` (:data:`sys.executable`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetPythonHome`: Use :c:func:`PyConfig_Get(\"home\") " -"` or the :envvar:`PYTHONHOME` environment variable instead." -msgstr "" - -msgid "" -"The `pythoncapi-compat project `__ can be used to get :c:func:`PyConfig_Get` on Python 3.13 and older." -msgstr "" - -msgid "" -"Functions to configure Python's initialization, deprecated in Python 3.11:" -msgstr "" - -msgid ":c:func:`!PySys_SetArgvEx()`: Set :c:member:`PyConfig.argv` instead." -msgstr "" - -msgid ":c:func:`!PySys_SetArgv()`: Set :c:member:`PyConfig.argv` instead." -msgstr "" - -msgid "" -":c:func:`!Py_SetProgramName()`: Set :c:member:`PyConfig.program_name` " -"instead." -msgstr "" - -msgid ":c:func:`!Py_SetPythonHome()`: Set :c:member:`PyConfig.home` instead." -msgstr "" - -msgid "" -":c:func:`!PySys_ResetWarnOptions`: Clear :data:`sys.warnoptions` and :data:`!" -"warnings.filters` instead." -msgstr "" - -msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` instead." -msgstr "" - -msgid "Global configuration variables:" -msgstr "" - -msgid "" -":c:var:`Py_DebugFlag`: Use :c:member:`PyConfig.parser_debug` or :c:func:" -"`PyConfig_Get(\"parser_debug\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_VerboseFlag`: Use :c:member:`PyConfig.verbose` or :c:func:" -"`PyConfig_Get(\"verbose\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_QuietFlag`: Use :c:member:`PyConfig.quiet` or :c:func:" -"`PyConfig_Get(\"quiet\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_InteractiveFlag`: Use :c:member:`PyConfig.interactive` or :c:func:" -"`PyConfig_Get(\"interactive\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_InspectFlag`: Use :c:member:`PyConfig.inspect` or :c:func:" -"`PyConfig_Get(\"inspect\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_OptimizeFlag`: Use :c:member:`PyConfig.optimization_level` or :c:" -"func:`PyConfig_Get(\"optimization_level\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_NoSiteFlag`: Use :c:member:`PyConfig.site_import` or :c:func:" -"`PyConfig_Get(\"site_import\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_BytesWarningFlag`: Use :c:member:`PyConfig.bytes_warning` or :c:" -"func:`PyConfig_Get(\"bytes_warning\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_FrozenFlag`: Use :c:member:`PyConfig.pathconfig_warnings` or :c:" -"func:`PyConfig_Get(\"pathconfig_warnings\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_IgnoreEnvironmentFlag`: Use :c:member:`PyConfig.use_environment` " -"or :c:func:`PyConfig_Get(\"use_environment\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_DontWriteBytecodeFlag`: Use :c:member:`PyConfig.write_bytecode` " -"or :c:func:`PyConfig_Get(\"write_bytecode\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_NoUserSiteDirectory`: Use :c:member:`PyConfig." -"user_site_directory` or :c:func:`PyConfig_Get(\"user_site_directory\") " -"` instead." -msgstr "" - -msgid "" -":c:var:`Py_UnbufferedStdioFlag`: Use :c:member:`PyConfig.buffered_stdio` or :" -"c:func:`PyConfig_Get(\"buffered_stdio\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_HashRandomizationFlag`: Use :c:member:`PyConfig.use_hash_seed` " -"and :c:member:`PyConfig.hash_seed` or :c:func:`PyConfig_Get(\"hash_seed\") " -"` instead." -msgstr "" - -msgid "" -":c:var:`Py_IsolatedFlag`: Use :c:member:`PyConfig.isolated` or :c:func:" -"`PyConfig_Get(\"isolated\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_LegacyWindowsFSEncodingFlag`: Use :c:member:`PyPreConfig." -"legacy_windows_fs_encoding` or :c:func:" -"`PyConfig_Get(\"legacy_windows_fs_encoding\") ` instead." -msgstr "" - -msgid "" -":c:var:`Py_LegacyWindowsStdioFlag`: Use :c:member:`PyConfig." -"legacy_windows_stdio` or :c:func:`PyConfig_Get(\"legacy_windows_stdio\") " -"` instead." -msgstr "" - -msgid "" -":c:var:`!Py_FileSystemDefaultEncoding`, :c:var:`!" -"Py_HasFileSystemDefaultEncoding`: Use :c:member:`PyConfig." -"filesystem_encoding` or :c:func:`PyConfig_Get(\"filesystem_encoding\") " -"` instead." -msgstr "" - -msgid "" -":c:var:`!Py_FileSystemDefaultEncodeErrors`: Use :c:member:`PyConfig." -"filesystem_errors` or :c:func:`PyConfig_Get(\"filesystem_errors\") " -"` instead." -msgstr "" - -msgid "" -":c:var:`!Py_UTF8Mode`: Use :c:member:`PyPreConfig.utf8_mode` or :c:func:" -"`PyConfig_Get(\"utf8_mode\") ` instead. (see :c:func:" -"`Py_PreInitialize`)" -msgstr "" - -msgid "" -"The :c:func:`Py_InitializeFromConfig` API should be used with :c:type:" -"`PyConfig` to set these options. Or :c:func:`PyConfig_Get` can be used to " -"get these options at runtime." -msgstr "" - -msgid "The bundled copy of ``libmpdec``." -msgstr "" - -msgid "" -"The following private functions are deprecated and planned for removal in " -"Python 3.18:" -msgstr "" - -msgid ":c:func:`!_PyBytes_Join`: use :c:func:`PyBytes_Join`." -msgstr "" - -msgid "" -":c:func:`!_PyDict_GetItemStringWithError`: use :c:func:" -"`PyDict_GetItemStringRef`." -msgstr "" - -msgid ":c:func:`!_PyDict_Pop()`: use :c:func:`PyDict_Pop`." -msgstr "" - -msgid ":c:func:`!_PyLong_Sign()`: use :c:func:`PyLong_GetSign`." -msgstr "" - -msgid "" -":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: use :c:func:" -"`PyLongWriter_Create`." -msgstr "" - -msgid "" -":c:func:`!_PyThreadState_UncheckedGet`: use :c:func:" -"`PyThreadState_GetUnchecked`." -msgstr "" - -msgid ":c:func:`!_PyUnicode_AsString`: use :c:func:`PyUnicode_AsUTF8`." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Init`: replace ``_PyUnicodeWriter_Init(&writer)`` " -"with :c:func:`writer = PyUnicodeWriter_Create(0) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Finish`: replace " -"``_PyUnicodeWriter_Finish(&writer)`` with :c:func:" -"`PyUnicodeWriter_Finish(writer) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_Dealloc`: replace " -"``_PyUnicodeWriter_Dealloc(&writer)`` with :c:func:" -"`PyUnicodeWriter_Discard(writer) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteChar`: replace " -"``_PyUnicodeWriter_WriteChar(&writer, ch)`` with :c:func:" -"`PyUnicodeWriter_WriteChar(writer, ch) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteStr`: replace " -"``_PyUnicodeWriter_WriteStr(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteStr(writer, str) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteSubstring`: replace " -"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` with :c:func:" -"`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " -"`." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteASCIIString`: replace " -"``_PyUnicodeWriter_WriteASCIIString(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteASCII(writer, str) `." -msgstr "" - -msgid "" -":c:func:`!_PyUnicodeWriter_WriteLatin1String`: replace " -"``_PyUnicodeWriter_WriteLatin1String(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." -msgstr "" - -msgid ":c:func:`!_PyUnicodeWriter_Prepare`: (no replacement)." -msgstr "" - -msgid ":c:func:`!_PyUnicodeWriter_PrepareKind`: (no replacement)." -msgstr "" - -msgid ":c:func:`!_Py_HashPointer`: use :c:func:`Py_HashPointer`." -msgstr "" - -msgid ":c:func:`!_Py_fopen_obj`: use :c:func:`Py_fopen`." -msgstr "" - -msgid "" -"The `pythoncapi-compat project `__ can be used to get these new public functions on Python 3.13 and older. " -"(Contributed by Victor Stinner in :gh:`128863`.)" -msgstr "" - -msgid "" -"The following APIs are deprecated and will be removed, although there is " -"currently no date scheduled for their removal." -msgstr "" - -msgid ":c:macro:`Py_TPFLAGS_HAVE_FINALIZE`: Unneeded since Python 3.8." -msgstr "" - -msgid ":c:func:`PyErr_Fetch`: Use :c:func:`PyErr_GetRaisedException` instead." -msgstr "" - -msgid "" -":c:func:`PyErr_NormalizeException`: Use :c:func:`PyErr_GetRaisedException` " -"instead." -msgstr "" - -msgid "" -":c:func:`PyErr_Restore`: Use :c:func:`PyErr_SetRaisedException` instead." -msgstr "" - -msgid "" -":c:func:`PyModule_GetFilename`: Use :c:func:`PyModule_GetFilenameObject` " -"instead." -msgstr "" - -msgid ":c:func:`PyOS_AfterFork`: Use :c:func:`PyOS_AfterFork_Child` instead." -msgstr "" - -msgid "" -":c:func:`PySlice_GetIndicesEx`: Use :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices` instead." -msgstr "" - -msgid ":c:func:`PyUnicode_READY`: Unneeded since Python 3.12" -msgstr "" - -msgid ":c:func:`!PyErr_Display`: Use :c:func:`PyErr_DisplayException` instead." -msgstr "" - -msgid "" -":c:func:`!_PyErr_ChainExceptions`: Use :c:func:`!_PyErr_ChainExceptions1` " -"instead." -msgstr "" - -msgid "" -":c:member:`!PyBytesObject.ob_shash` member: call :c:func:`PyObject_Hash` " -"instead." -msgstr "" - -msgid "Thread Local Storage (TLS) API:" -msgstr "" - -msgid "" -":c:func:`PyThread_create_key`: Use :c:func:`PyThread_tss_alloc` instead." -msgstr "" - -msgid ":c:func:`PyThread_delete_key`: Use :c:func:`PyThread_tss_free` instead." -msgstr "" - -msgid "" -":c:func:`PyThread_set_key_value`: Use :c:func:`PyThread_tss_set` instead." -msgstr "" - -msgid "" -":c:func:`PyThread_get_key_value`: Use :c:func:`PyThread_tss_get` instead." -msgstr "" - -msgid "" -":c:func:`PyThread_delete_key_value`: Use :c:func:`PyThread_tss_delete` " -"instead." -msgstr "" - -msgid ":c:func:`PyThread_ReInitTLS`: Unneeded since Python 3.7." -msgstr "" - -msgid "Build changes" -msgstr "" - -msgid "" -":pep:`776`: Emscripten is now an officially supported platform at :pep:`tier " -"3 <11#tier-3>`. As a part of this effort, more than 25 bugs in `Emscripten " -"libc`__ were fixed. Emscripten now includes support for :mod:`ctypes`, :mod:" -"`termios`, and :mod:`fcntl`, as well as experimental support for the new :" -"ref:`default interactive shell `. (Contributed by R. Hood " -"Chatham in :gh:`127146`, :gh:`127683`, and :gh:`136931`.)" -msgstr "" - -msgid "Official Android binary releases are now provided on python.org__." -msgstr "" - -msgid "" -"GNU Autoconf 2.72 is now required to generate :file:`configure`. " -"(Contributed by Erlend Aasland in :gh:`115765`.)" -msgstr "" - -msgid "" -"``wasm32-unknown-emscripten`` is now a :pep:`11` tier 3 platform. " -"(Contributed by R. Hood Chatham in :gh:`127146`, :gh:`127683`, and :gh:" -"`136931`.)" -msgstr "" - -msgid "" -"``#pragma``-based linking with ``python3*.lib`` can now be switched off " -"with :c:expr:`Py_NO_LINK_LIB`. (Contributed by Jean-Christophe Fillion-Robin " -"in :gh:`82909`.)" -msgstr "" - -msgid "" -"CPython now enables a set of recommended compiler options by default for " -"improved security. Use the :option:`--disable-safety` :file:`configure` " -"option to disable them, or the :option:`--enable-slower-safety` option for a " -"larger set of compiler options, albeit with a performance cost." -msgstr "" - -msgid "" -"The ``WITH_FREELISTS`` macro and ``--without-freelists`` :file:`configure` " -"option have been removed." -msgstr "" - -msgid "" -"The new :file:`configure` option :option:`--with-tail-call-interp` may be " -"used to enable the experimental tail call interpreter. See :ref:`whatsnew314-" -"tail-call-interpreter` for further details." -msgstr "" - -msgid "" -"To disable the new remote debugging support, use the :option:`--without-" -"remote-debug` :file:`configure` option. This may be useful for security " -"reasons." -msgstr "" - -msgid "" -"iOS and macOS apps can now be configured to redirect ``stdout`` and " -"``stderr`` content to the system log. (Contributed by Russell Keith-Magee " -"in :gh:`127592`.)" -msgstr "" - -msgid "" -"The iOS testbed is now able to stream test output while the test is running. " -"The testbed can also be used to run the test suite of projects other than " -"CPython itself. (Contributed by Russell Keith-Magee in :gh:`127592`.)" -msgstr "" - -msgid ":file:`build-details.json`" -msgstr "" - -msgid "" -"Installations of Python now contain a new file, :file:`build-details.json`. " -"This is a static JSON document containing build details for CPython, to " -"allow for introspection without needing to run code. This is helpful for use-" -"cases such as Python launchers, cross-compilation, and so on." -msgstr "" - -msgid "" -":file:`build-details.json` must be installed in the platform-independent " -"standard library directory. This corresponds to the :ref:`'stdlib' " -"` :mod:`sysconfig` installation path, which can be found " -"by running ``sysconfig.get_path('stdlib')``." -msgstr "" - -msgid "" -":pep:`739` -- ``build-details.json`` 1.0 -- a static description file for " -"Python build details" -msgstr "" - -msgid "Discontinuation of PGP signatures" -msgstr "" - -msgid "" -"PGP (Pretty Good Privacy) signatures will not be provided for releases of " -"Python 3.14 or future versions. To verify CPython artifacts, users must use " -"`Sigstore verification materials `__. Releases have been signed using Sigstore_ since Python 3.11." -msgstr "" - -msgid "This change in release process was specified in :pep:`761`." -msgstr "" - -msgid "Free-threaded Python is officially supported" -msgstr "" - -msgid "" -"The free-threaded build of Python is now supported and no longer " -"experimental. This is the start of `phase II `__ where free-threaded Python is officially supported but still " -"optional." -msgstr "" - -msgid "" -"The free-threading team are confident that the project is on the right path, " -"and appreciate the continued dedication from everyone working to make free-" -"threading ready for broader adoption across the Python community." -msgstr "" - -msgid "" -"With these recommendations and the acceptance of this PEP, the Python " -"developer community should broadly advertise that free-threading is a " -"supported Python build option now and into the future, and that it will not " -"be removed without a proper deprecation schedule." -msgstr "" - -msgid "" -"Any decision to transition to `phase III `__, with free-threading as the default or sole build of Python is " -"still undecided, and dependent on many factors both within CPython itself " -"and the community. This decision is for the future." -msgstr "" - -msgid ":pep:`779`" -msgstr "" - -msgid "`PEP 779's acceptance `__" -msgstr "" - -msgid "Binary releases for the experimental just-in-time compiler" -msgstr "" - -msgid "" -"The official macOS and Windows release binaries now include an " -"*experimental* just-in-time (JIT) compiler. Although it is **not** " -"recommended for production use, it can be tested by setting :envvar:" -"`PYTHON_JIT=1 ` as an environment variable. Downstream source " -"builds and redistributors can use the :option:`--enable-experimental-jit=yes-" -"off` configuration option for similar behavior." -msgstr "" - -msgid "" -"The JIT is at an early stage and still in active development. As such, the " -"typical performance impact of enabling it can range from 10% slower to 20% " -"faster, depending on workload. To aid in testing and evaluation, a set of " -"introspection functions has been provided in the :data:`sys._jit` " -"namespace. :func:`sys._jit.is_available` can be used to determine if the " -"current executable supports JIT compilation, while :func:`sys._jit." -"is_enabled` can be used to tell if JIT compilation has been enabled for the " -"current process." -msgstr "" - -msgid "" -"Currently, the most significant missing functionality is that native " -"debuggers and profilers like ``gdb`` and ``perf`` are unable to unwind " -"through JIT frames (Python debuggers and profilers, like :mod:`pdb` or :mod:" -"`profile`, continue to work without modification). Free-threaded builds do " -"not support JIT compilation." -msgstr "" - -msgid "" -"Please report any bugs or major performance regressions that you encounter!" -msgstr "" - -msgid ":pep:`744`" -msgstr "" - -msgid "Porting to Python 3.14" -msgstr "" - -msgid "" -"This section lists previously described changes and other bugfixes that may " -"require changes to your code." -msgstr "" - -msgid "Changes in the Python API" -msgstr "" - -msgid "" -"On Unix platforms other than macOS, *forkserver* is now the default :ref:" -"`start method ` for :mod:`multiprocessing` " -"and :class:`~concurrent.futures.ProcessPoolExecutor`, instead of *fork*." -msgstr "" - -msgid "" -"See :ref:`(1) ` and :ref:`(2) " -"` for details." -msgstr "" - -msgid "" -"If you encounter :exc:`NameError`\\s or pickling errors coming out of :mod:" -"`multiprocessing` or :mod:`concurrent.futures`, see the :ref:`forkserver " -"restrictions `." -msgstr "" - -msgid "" -"This change does not affect Windows or macOS, where :ref:`'spawn' " -"` remains the default start method." -msgstr "" - -msgid "" -":class:`functools.partial` is now a method descriptor. Wrap it in :func:" -"`staticmethod` if you want to preserve the old behavior. (Contributed by " -"Serhiy Storchaka and Dominykas Grigonis in :gh:`121027`.)" -msgstr "" - -msgid "" -"The :ref:`garbage collector is now incremental `, which means that the behavior of :func:`gc.collect` changes slightly:" -msgstr "" - -msgid "" -"The :func:`locale.nl_langinfo` function now temporarily sets the " -"``LC_CTYPE`` locale in some cases. This temporary change affects other " -"threads. (Contributed by Serhiy Storchaka in :gh:`69998`.)" -msgstr "" - -msgid "" -":func:`pickle.dump` and :func:`pickle.dumps` now raise :exc:`~pickle." -"PicklingError` for some failures that previously raised :exc:" -"`AttributeError`, :exc:`ImportError`, :exc:`ValueError`, :exc:" -"`UnicodeEncodeError` or :exc:`!PicklingError`, depending on the " -"implementation (for example, pickling a local object, or an object whose " -"module cannot be imported). The original exception is chained to the :exc:`!" -"PicklingError`. Code that caught these exceptions should also catch :exc:`!" -"PicklingError`. (Contributed by Serhiy Storchaka in :gh:`122311`.)" -msgstr "" - -msgid "" -":class:`types.UnionType` is now an alias for :class:`typing.Union`, causing " -"changes in some behaviors. See :ref:`above ` for " -"more details. (Contributed by Jelle Zijlstra in :gh:`105499`.)" -msgstr "" - -msgid "" -"The runtime behavior of annotations has changed in various ways; see :ref:" -"`above ` for details. While most code that " -"interacts with annotations should continue to work, some undocumented " -"details may behave differently." -msgstr "" - -msgid "" -"As part of making the :mod:`mimetypes` CLI public, it now exits with ``1`` " -"on failure instead of ``0`` and ``2`` on incorrect command-line parameters " -"instead of ``1``. Error messages are now printed to stderr." -msgstr "" - -msgid "" -"The ``\\B`` pattern in regular expression now matches the empty string when " -"given as the entire pattern, which may cause behavioural changes." -msgstr "" - -msgid "" -"On FreeBSD, :data:`sys.platform` no longer contains the major version number." -msgstr "" - -msgid "Changes in annotations (:pep:`649` and :pep:`749`)" -msgstr "" - -msgid "" -"This section contains guidance on changes that may be needed to annotations " -"or Python code that interacts with or introspects annotations, due to the " -"changes related to :ref:`deferred evaluation of annotations `." -msgstr "" - -msgid "" -"In the majority of cases, working code from older versions of Python will " -"not require any changes." -msgstr "" - -msgid "Implications for annotated code" -msgstr "" - -msgid "" -"If you define annotations in your code (for example, for use with a static " -"type checker), then this change probably does not affect you: you can keep " -"writing annotations the same way you did with previous versions of Python." -msgstr "" - -msgid "" -"You will likely be able to remove quoted strings in annotations, which are " -"frequently used for forward references. Similarly, if you use ``from " -"__future__ import annotations`` to avoid having to write strings in " -"annotations, you may well be able to remove that import once you support " -"only Python 3.14 and newer. However, if you rely on third-party libraries " -"that read annotations, those libraries may need changes to support unquoted " -"annotations before they work as expected." -msgstr "" - -msgid "Implications for readers of ``__annotations__``" -msgstr "" - -msgid "" -"If your code reads the :attr:`~object.__annotations__` attribute on objects, " -"you may want to make changes in order to support code that relies on " -"deferred evaluation of annotations. For example, you may want to use :func:" -"`annotationlib.get_annotations` with the :attr:`~annotationlib.Format." -"FORWARDREF` format, as the :mod:`dataclasses` module now does." -msgstr "" - -msgid "" -"The external :pypi:`typing_extensions` package provides partial backports of " -"some of the functionality of the :mod:`annotationlib` module, such as the :" -"class:`~annotationlib.Format` enum and the :func:`~annotationlib." -"get_annotations` function. These can be used to write cross-version code " -"that takes advantage of the new behavior in Python 3.14." -msgstr "" - -msgid "Related changes" -msgstr "" - -msgid "" -"The changes in Python 3.14 are designed to rework how :attr:`!" -"__annotations__` works at runtime while minimizing breakage to code that " -"contains annotations in source code and to code that reads :attr:`!" -"__annotations__`. However, if you rely on undocumented details of the " -"annotation behavior or on private functions in the standard library, there " -"are many ways in which your code may not work in Python 3.14. To safeguard " -"your code against future changes, only use the documented functionality of " -"the :mod:`annotationlib` module." -msgstr "" - -msgid "" -"In particular, do not read annotations directly from the namespace " -"dictionary attribute of type objects. Use :func:`annotationlib." -"get_annotate_from_class_namespace` during class construction and :func:" -"`annotationlib.get_annotations` afterwards." -msgstr "" - -msgid "" -"In previous releases, it was sometimes possible to access class annotations " -"from an instance of an annotated class. This behavior was undocumented and " -"accidental, and will no longer work in Python 3.14." -msgstr "" - -msgid "``from __future__ import annotations``" -msgstr "" - -msgid "" -"In Python 3.7, :pep:`563` introduced the ``from __future__ import " -"annotations`` :ref:`future statement `, which turns all annotations " -"into strings." -msgstr "" - -msgid "" -"However, this statement is now deprecated and it is expected to be removed " -"in a future version of Python. This removal will not happen until after " -"Python 3.13 reaches its end of life in 2029, being the last version of " -"Python without support for deferred evaluation of annotations." -msgstr "" - -msgid "" -"In Python 3.14, the behavior of code using ``from __future__ import " -"annotations`` is unchanged." -msgstr "" - -msgid "Changes in the C API" -msgstr "" - -msgid "" -":c:func:`Py_Finalize` now deletes all interned strings. This is backwards " -"incompatible to any C extension that holds onto an interned string after a " -"call to :c:func:`Py_Finalize` and is then reused after a call to :c:func:" -"`Py_Initialize`. Any issues arising from this behavior will normally result " -"in crashes during the execution of the subsequent call to :c:func:" -"`Py_Initialize` from accessing uninitialized memory. To fix, use an address " -"sanitizer to identify any use-after-free coming from an interned string and " -"deallocate it during module shutdown. (Contributed by Eddie Elizondo in :gh:" -"`113601`.)" -msgstr "" - -msgid "" -"The :ref:`Unicode Exception Objects ` C API now raises a :" -"exc:`TypeError` if its exception argument is not a :exc:`UnicodeError` " -"object. (Contributed by Bénédikt Tran in :gh:`127691`.)" -msgstr "" - -msgid "" -"The interpreter internally avoids some reference count modifications when " -"loading objects onto the operands stack by :term:`borrowing ` references when possible. This can lead to smaller reference " -"count values compared to previous Python versions. C API extensions that " -"checked :c:func:`Py_REFCNT` of ``1`` to determine if an function argument is " -"not referenced by any other code should instead use :c:func:" -"`PyUnstable_Object_IsUniqueReferencedTemporary` as a safer replacement." -msgstr "" - -msgid "Private functions promoted to public C APIs:" -msgstr "" - -msgid "``_PyBytes_Join()``: :c:func:`PyBytes_Join`" -msgstr "" - -msgid "``_PyLong_IsNegative()``: :c:func:`PyLong_IsNegative`" -msgstr "" - -msgid "``_PyLong_IsPositive()``: :c:func:`PyLong_IsPositive`" -msgstr "" - -msgid "``_PyLong_IsZero()``: :c:func:`PyLong_IsZero`" -msgstr "" - -msgid "``_PyLong_Sign()``: :c:func:`PyLong_GetSign`" -msgstr "" - -msgid "``_PyUnicodeWriter_Dealloc()``: :c:func:`PyUnicodeWriter_Discard`" -msgstr "" - -msgid "``_PyUnicodeWriter_Finish()``: :c:func:`PyUnicodeWriter_Finish`" -msgstr "" - -msgid "``_PyUnicodeWriter_Init()``: use :c:func:`PyUnicodeWriter_Create`" -msgstr "" - -msgid "``_PyUnicodeWriter_Prepare()``: (no replacement)" -msgstr "" - -msgid "``_PyUnicodeWriter_PrepareKind()``: (no replacement)" -msgstr "" - -msgid "``_PyUnicodeWriter_WriteChar()``: :c:func:`PyUnicodeWriter_WriteChar`" -msgstr "" - -msgid "``_PyUnicodeWriter_WriteStr()``: :c:func:`PyUnicodeWriter_WriteStr`" -msgstr "" - -msgid "" -"``_PyUnicodeWriter_WriteSubstring()``: :c:func:" -"`PyUnicodeWriter_WriteSubstring`" -msgstr "" - -msgid "``_PyUnicode_EQ()``: :c:func:`PyUnicode_Equal`" -msgstr "" - -msgid "``_PyUnicode_Equal()``: :c:func:`PyUnicode_Equal`" -msgstr "" - -msgid "" -"``_Py_GetConfig()``: :c:func:`PyConfig_Get` and :c:func:`PyConfig_GetInt`" -msgstr "" - -msgid "``_Py_HashBytes()``: :c:func:`Py_HashBuffer`" -msgstr "" - -msgid "``_Py_fopen_obj()``: :c:func:`Py_fopen`" -msgstr "" - -msgid "``PyMutex_IsLocked()`` : :c:func:`PyMutex_IsLocked`" -msgstr "" - -msgid "" -"The `pythoncapi-compat project`_ can be used to get most of these new " -"functions on Python 3.13 and older." -msgstr "" - -msgid "Notable changes in 3.14.5" -msgstr "" - -msgid "" -"The incremental garbage collector shipped in Python 3.14.0-3.14.4 has been " -"reverted back to the generational garbage collector from 3.13, due to a " -"number of `reports `__ of " -"significant memory pressure in production environments. See :ref:" -"`whatsnew314-incremental-gc` for details." -msgstr "" diff --git a/whatsnew/3.15.po b/whatsnew/3.15.po deleted file mode 100644 index 1f5ed68..0000000 --- a/whatsnew/3.15.po +++ /dev/null @@ -1,4142 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001 Python Software Foundation -# This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Bhuvansh Kataria, 2026 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Python 3.15\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-01 14:54+0000\n" -"PO-Revision-Date: 2026-05-08 18:37+0000\n" -"Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pa\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -msgid "What's new in Python 3.15" -msgstr "" - -msgid "Editor" -msgstr "" - -msgid "Hugo van Kemenade" -msgstr "" - -msgid "" -"This article explains the new features in Python 3.15, compared to 3.14." -msgstr "" - -msgid "For full details, see the :ref:`changelog `." -msgstr "" - -msgid "" -"Prerelease users should be aware that this document is currently in draft " -"form. It will be updated substantially as Python 3.15 moves towards release, " -"so it's worth checking back even after reading earlier versions." -msgstr "" - -msgid "Summary -- Release highlights" -msgstr "" - -msgid "" -":pep:`810`: :ref:`Explicit lazy imports for faster startup times " -"`" -msgstr "" - -msgid "" -":pep:`814`: :ref:`Add frozendict built-in type `" -msgstr "" - -msgid ":pep:`661`: :ref:`Add sentinel built-in type `" -msgstr "" - -msgid "" -":pep:`799`: :ref:`A dedicated profiling package for organizing Python " -"profiling tools `" -msgstr "" - -msgid "" -":pep:`799`: :ref:`Tachyon: High frequency statistical sampling profiler " -"`" -msgstr "" - -msgid "" -":pep:`831`: :ref:`Frame pointers are enabled by default for improved system-" -"level observability `" -msgstr "" - -msgid "" -":pep:`798`: :ref:`Unpacking in comprehensions `" -msgstr "" - -msgid "" -":pep:`686`: :ref:`Python now uses UTF-8 as the default encoding `" -msgstr "" - -msgid "" -":pep:`829`: :ref:`Package startup configuration files `" -msgstr "" - -msgid "" -":pep:`728`: :ref:`TypedDict with typed extra items `" -msgstr "" - -msgid "" -":pep:`747`: :ref:`Annotating type forms with TypeForm `" -msgstr "" - -msgid "" -":pep:`800`: :ref:`Disjoint bases in the type system `" -msgstr "" - -msgid "" -":pep:`782`: :ref:`A new PyBytesWriter C API to create a Python bytes object " -"`" -msgstr "" - -msgid "" -":pep:`803`, :pep:`820 <820>`, :pep:`793 <793>`: :ref:`Stable ABI for free-" -"threaded builds ` and related C API" -msgstr "" - -msgid "" -":pep:`788`: :ref:`Protection against finalization in the C API `" -msgstr "" - -msgid "" -":ref:`The JIT compiler has been significantly upgraded `" -msgstr "" - -msgid "" -":ref:`The official Windows 64-bit binaries now use the tail-calling " -"interpreter `" -msgstr "" - -msgid ":ref:`Improved error messages `" -msgstr "" - -msgid ":ref:`More color `" -msgstr "" - -msgid "New features" -msgstr "" - -msgid ":pep:`810`: Explicit lazy imports" -msgstr "" - -msgid "" -"Large Python applications often suffer from slow startup times. A " -"significant contributor to this problem is the import system: when a module " -"is imported, Python must locate the file, read it from disk, compile it to " -"bytecode, and execute all top-level code. For applications with deep " -"dependency trees, this process can take seconds, even when most of the " -"imported code is never actually used during a particular run." -msgstr "" - -msgid "" -"Developers have worked around this by moving imports inside functions, " -"using :mod:`importlib` to load modules on demand, or restructuring code to " -"avoid unnecessary dependencies. These approaches work but make code harder " -"to read and maintain, scatter import statements throughout the codebase, and " -"require discipline to apply consistently." -msgstr "" - -msgid "" -"Python now provides a cleaner solution through explicit :keyword:`lazy` " -"imports using the new ``lazy`` soft keyword. When you mark an import as " -"lazy, Python defers the actual module loading until the imported name is " -"first used. This gives you the organizational benefits of declaring all " -"imports at the top of the file while only paying the loading cost for " -"modules you actually use." -msgstr "" - -msgid "" -"The ``lazy`` keyword works with both ``import`` and ``from ... import`` " -"statements. When you write ``lazy import heavy_module``, Python does not " -"immediately load the module. Instead, it creates a lightweight proxy object. " -"The actual module loading happens transparently when you first access the " -"name:" -msgstr "" - -msgid "" -"lazy import json\n" -"lazy from pathlib import Path\n" -"\n" -"print(\"Starting up...\") # json and pathlib not loaded yet\n" -"\n" -"data = json.loads('{\"key\": \"value\"}') # json loads here\n" -"p = Path(\".\") # pathlib loads here" -msgstr "" - -msgid "" -"This mechanism is particularly useful for applications that import many " -"modules at the top level but may only use a subset of them in any given run. " -"The deferred loading reduces startup latency without requiring code " -"restructuring or conditional imports scattered throughout the codebase." -msgstr "" - -msgid "" -"In the case where loading a lazily imported module fails (for example, if " -"the module does not exist), Python raises the exception at the point of " -"first use rather than at import time. The associated traceback includes both " -"the location where the name was accessed and the original import statement, " -"making it straightforward to diagnose and debug the failure." -msgstr "" - -msgid "" -"For cases where you want to enable lazy loading globally without modifying " -"source code, Python provides the :option:`-X lazy_imports <-X>` command-line " -"option and the :envvar:`PYTHON_LAZY_IMPORTS` environment variable. Both " -"accept two values: ``all`` makes all imports lazy by default, and ``normal`` " -"(the default) respects the ``lazy`` keyword in source code. The :func:`sys." -"set_lazy_imports` and :func:`sys.get_lazy_imports` functions allow changing " -"and querying this mode at runtime." -msgstr "" - -msgid "" -"For more selective control, :func:`sys.set_lazy_imports_filter` accepts a " -"callable that determines whether a specific module should be loaded lazily. " -"The filter receives three arguments: the importing module's name (or " -"``None``), the imported module's name, and the fromlist (or ``None`` for " -"regular imports). It should return ``True`` to allow the import to be lazy, " -"or ``False`` to force eager loading. This allows patterns like making only " -"your own application's modules lazy while keeping third-party dependencies " -"eager:" -msgstr "" - -msgid "" -"import sys\n" -"\n" -"def myapp_filter(importing, imported, fromlist):\n" -" return imported.startswith(\"myapp.\")\n" -"sys.set_lazy_imports_filter(myapp_filter)\n" -"sys.set_lazy_imports(\"all\")\n" -"\n" -"import myapp.slow_module # lazy (matches filter)\n" -"import json # eager (does not match filter)" -msgstr "" - -msgid "" -"The proxy type itself is available as :class:`types.LazyImportType` for code " -"that needs to detect lazy imports programmatically." -msgstr "" - -msgid "" -"There are some restrictions on where the ``lazy`` keyword can be used. Lazy " -"imports are only permitted at module scope; using ``lazy`` inside a " -"function, class body, or ``try``/``except``/``finally`` block raises a :exc:" -"`SyntaxError`. Neither star imports nor future imports can be lazy (``lazy " -"from module import *`` and ``lazy from __future__ import ...`` both raise :" -"exc:`SyntaxError`)." -msgstr "" - -msgid "" -"For code that cannot use the ``lazy`` keyword directly (for example, when " -"supporting Python versions older than 3.15 while still using lazy imports on " -"3.15+), a module can define :attr:`~module.__lazy_modules__` as a container " -"of fully qualified module name strings. Regular ``import`` statements for " -"those modules are then treated as lazy, with the same semantics as the " -"``lazy`` keyword::" -msgstr "" - -msgid "" -"__lazy_modules__ = [\"json\", \"pathlib\"]\n" -"\n" -"import json # lazy\n" -"import os # still eager" -msgstr "" - -msgid ":pep:`810` for the full specification and rationale." -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo Salgado and Dino Viehland in :gh:`142349`.)" -msgstr "" - -msgid ":pep:`814`: Add frozendict built-in type" -msgstr "" - -msgid "" -"A new :term:`immutable` type, :class:`frozendict`, is added to the :mod:" -"`builtins` module. It does not allow modification after creation. A :class:`!" -"frozendict` is not a subclass of ``dict``; it inherits directly from " -"``object``. A :class:`!frozendict` is :term:`hashable` as long as all of its " -"keys and values are hashable. A :class:`!frozendict` preserves insertion " -"order, but comparison does not take order into account." -msgstr "" - -msgid "For example::" -msgstr "" - -msgid "" -">>> a = frozendict(x=1, y=2)\n" -">>> a\n" -"frozendict({'x': 1, 'y': 2})\n" -">>> a['z'] = 3\n" -"Traceback (most recent call last):\n" -" File \"\", line 1, in \n" -" a['z'] = 3\n" -" ~^^^^^\n" -"TypeError: 'frozendict' object does not support item assignment\n" -">>> b = frozendict(y=2, x=1)\n" -">>> hash(a) == hash(b)\n" -"True\n" -">>> a == b\n" -"True" -msgstr "" - -msgid "" -"The following standard library modules have been updated to accept :class:`!" -"frozendict`: :mod:`copy`, :mod:`decimal`, :mod:`json`, :mod:`marshal`, :mod:" -"`plistlib` (only for serialization), :mod:`pickle`, :mod:`pprint` and :mod:" -"`xml.etree.ElementTree`." -msgstr "" - -msgid "" -":func:`eval` and :func:`exec` accept :class:`!frozendict` for *globals*, " -"and :func:`type` and :meth:`str.maketrans` accept :class:`!frozendict` for " -"*dict*." -msgstr "" - -msgid "" -"Code checking for :class:`dict` type using ``isinstance(arg, dict)`` can be " -"updated to ``isinstance(arg, (dict, frozendict))`` to accept also the :class:" -"`!frozendict` type, or to ``isinstance(arg, collections.abc.Mapping)`` to " -"accept also other mapping types such as :class:`~types.MappingProxyType`." -msgstr "" - -msgid ":pep:`814` for the full specification and rationale." -msgstr "" - -msgid "(Contributed by Victor Stinner and Donghee Na in :gh:`141510`.)" -msgstr "" - -msgid ":pep:`661`: Add sentinel built-in type" -msgstr "" - -msgid "" -"A new :class:`sentinel` type is added to the :mod:`builtins` module for " -"creating unique sentinel values with a concise representation. Sentinel " -"objects preserve identity when copied, support use in type expressions with " -"the ``|`` operator, and can be pickled when they are importable by module " -"and name." -msgstr "" - -msgid "(PEP by Tal Einat; contributed by Jelle Zijlstra in :gh:`148829`.)" -msgstr "" - -msgid ":pep:`661` for further details." -msgstr "" - -msgid ":pep:`799`: A dedicated profiling package" -msgstr "" - -msgid "" -"A new :mod:`profiling` module has been added to organize Python's built-in " -"profiling tools under a single, coherent namespace. This module contains:" -msgstr "" - -msgid "" -":mod:`profiling.tracing`: deterministic function-call tracing (relocated " -"from ``cProfile``)." -msgstr "" - -msgid "" -":mod:`profiling.sampling`: a new statistical sampling profiler (named " -"Tachyon)." -msgstr "" - -msgid "" -"The ``cProfile`` module remains as an alias for backwards compatibility. " -"The :mod:`profile` module is deprecated and will be removed in Python 3.17." -msgstr "" - -msgid ":pep:`799` for further details." -msgstr "" - -msgid "(Contributed by Pablo Galindo and László Kiss Kollár in :gh:`138122`.)" -msgstr "" - -msgid "Tachyon: High frequency statistical sampling profiler" -msgstr "" - -msgid "Tachyon profiler logo" -msgstr "" - -msgid "" -"A new statistical sampling profiler (Tachyon) has been added as :mod:" -"`profiling.sampling`. This profiler enables low-overhead performance " -"analysis of running Python processes without requiring code modification or " -"process restart." -msgstr "" - -msgid "" -"Unlike deterministic profilers (such as :mod:`profiling.tracing`) that " -"instrument every function call, the sampling profiler periodically captures " -"stack traces from running processes. This approach provides virtually zero " -"overhead while achieving sampling rates of **up to 1,000,000 Hz**, making it " -"the fastest sampling profiler available for Python (at the time of its " -"contribution) and ideal for debugging performance issues in production " -"environments. This capability is particularly valuable for debugging " -"performance issues in production systems where traditional profiling " -"approaches would be too intrusive." -msgstr "" - -msgid "Key features include:" -msgstr "" - -msgid "" -"**Zero-overhead profiling**: Attach to any running Python process without " -"affecting its performance. Ideal for production debugging where you can't " -"afford to restart or slow down your application." -msgstr "" - -msgid "" -"**No code modification required**: Profile existing applications without " -"restart. Simply point the profiler at a running process by PID and start " -"collecting data." -msgstr "" - -msgid "**Flexible target modes**:" -msgstr "" - -msgid "" -"Profile running processes by PID (``attach``) - attach to already-running " -"applications" -msgstr "" - -msgid "" -"Run and profile scripts directly (``run``) - profile from the very start of " -"execution" -msgstr "" - -msgid "" -"Execute and profile modules (``run -m``) - profile packages run as ``python -" -"m module``" -msgstr "" - -msgid "" -"Capture a one-shot snapshot of a running process (``dump``) - print a " -"traceback-style stack of every thread (or all asyncio tasks with ``--async-" -"aware``). Useful for investigating hung processes." -msgstr "" - -msgid "" -"**Multiple profiling modes**: Choose what to measure based on your " -"performance investigation:" -msgstr "" - -msgid "" -"**Wall-clock time** (``--mode wall``, default): Measures real elapsed time " -"including I/O, network waits, and blocking operations. Use this to " -"understand where your program spends calendar time, including when waiting " -"for external resources." -msgstr "" - -msgid "" -"**CPU time** (``--mode cpu``): Measures only active CPU execution time, " -"excluding I/O waits and blocking. Use this to identify CPU-bound bottlenecks " -"and optimize computational work." -msgstr "" - -msgid "" -"**GIL-holding time** (``--mode gil``): Measures time spent holding Python's " -"Global Interpreter Lock. Use this to identify which threads dominate GIL " -"usage in multi-threaded applications." -msgstr "" - -msgid "" -"**Exception handling time** (``--mode exception``): Captures samples only " -"from threads with an active exception. Use this to analyze exception " -"handling overhead." -msgstr "" - -msgid "" -"**Thread-aware profiling**: Option to profile all threads (``-a``) or just " -"the main thread, essential for understanding multi-threaded application " -"behavior." -msgstr "" - -msgid "" -"**Multiple output formats**: Choose the visualization that best fits your " -"workflow:" -msgstr "" - -msgid "" -"``--pstats``: Detailed tabular statistics compatible with :mod:`pstats`. " -"Shows function-level timing with direct and cumulative samples. Best for " -"detailed analysis and integration with existing Python profiling tools." -msgstr "" - -msgid "" -"``--collapsed``: Generates collapsed stack traces (one line per stack). This " -"format is specifically designed for creating flame graphs with external " -"tools like Brendan Gregg's FlameGraph scripts or speedscope." -msgstr "" - -msgid "" -"``--flamegraph``: Generates a self-contained interactive HTML flame graph " -"using D3.js. Opens directly in your browser for immediate visual analysis. " -"Flame graphs show the call hierarchy where width represents time spent, " -"making it easy to spot bottlenecks at a glance." -msgstr "" - -msgid "" -"``--gecko``: Generates Gecko Profiler format compatible with `Firefox " -"Profiler `__. Upload the output to Firefox " -"Profiler for advanced timeline-based analysis with features like stack " -"charts, markers, and network activity." -msgstr "" - -msgid "" -"``--heatmap``: Generates an interactive HTML heatmap visualization with line-" -"level sample counts. Creates a directory with per-file heatmaps showing " -"exactly where time is spent at the source code level." -msgstr "" - -msgid "" -"**Live interactive mode**: Real-time TUI profiler with a top-like interface " -"(``--live``). Monitor performance as your application runs with interactive " -"sorting and filtering." -msgstr "" - -msgid "" -"**Async-aware profiling**: Profile async/await code with task-based stack " -"reconstruction (``--async-aware``). See which coroutines are consuming time, " -"with options to show only running tasks or all tasks including those waiting." -msgstr "" - -msgid "" -"**Opcode-level profiling**: Gather bytecode opcode information for " -"instruction-level profiling (``--opcodes``). Shows which bytecode " -"instructions are executing, including specializations from the adaptive " -"interpreter." -msgstr "" - -msgid "" -"See :mod:`profiling.sampling` for the complete documentation, including all " -"available output formats, profiling modes, and configuration options." -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo and László Kiss Kollár in :gh:`135953` and :gh:" -"`138122`.)" -msgstr "" - -msgid ":pep:`831`: Frame pointers enabled by default" -msgstr "" - -msgid "" -"CPython is now built with frame pointers by default on platforms that " -"support them. This uses the compiler flags ``-fno-omit-frame-pointer`` and " -"``-mno-omit-leaf-frame-pointer``, making native stack unwinding faster and " -"more reliable for system profilers, debuggers, crash analysis tools, and " -"eBPF-based observability tools." -msgstr "" - -msgid "" -"The flags are exposed through :mod:`sysconfig`, so extension modules built " -"by tools that consume Python's build configuration inherit frame pointers by " -"default. This propagation is intentional: mixed Python/native profiling " -"needs an unbroken frame-pointer chain through the interpreter, extension " -"modules, embedding applications, and native libraries." -msgstr "" - -msgid "" -"Third-party build backends and native build systems should preserve these " -"flags when they consume Python's :mod:`sysconfig` values. Build systems " -"that compile C, C++, Rust, or other native code without inheriting Python's " -"compiler flags should enable equivalent frame-pointer flags themselves. A " -"single native component built without frame pointers can break stack " -"unwinding for the whole Python process." -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo Salgado and Savannah Ostrowski in :gh:" -"`149201`; PEP 831 written by Pablo Galindo Salgado, Ken Jin, Savannah " -"Ostrowski, and Diego Russo.)" -msgstr "" - -msgid ":pep:`831` for further details." -msgstr "" - -msgid ":pep:`798`: Unpacking in comprehensions" -msgstr "" - -msgid "" -"List, set, and dictionary comprehensions, as well as generator expressions, " -"now support unpacking with ``*`` and ``**``. This extends the unpacking " -"syntax from :pep:`448` to comprehensions, providing a new syntax for " -"combining an arbitrary number of iterables or dictionaries into a single " -"flat structure. This new syntax is a direct alternative to nested " -"comprehensions, :func:`itertools.chain`, and :meth:`itertools.chain." -"from_iterable`. For example::" -msgstr "" - -msgid "" -">>> lists = [[1, 2], [3, 4], [5]]\n" -">>> [*L for L in lists] # equivalent to [x for L in lists for x in L]\n" -"[1, 2, 3, 4, 5]\n" -"\n" -">>> sets = [{1, 2}, {2, 3}, {3, 4}]\n" -">>> {*s for s in sets} # equivalent to {x for s in sets for x in s}\n" -"{1, 2, 3, 4}\n" -"\n" -">>> dicts = [{'a': 1}, {'b': 2}, {'a': 3}]\n" -">>> {**d for d in dicts} # equivalent to {k: v for d in dicts for k,v in d." -"items()}\n" -"{'a': 3, 'b': 2}" -msgstr "" - -msgid "" -"Generator expressions can similarly use unpacking to yield values from " -"multiple iterables::" -msgstr "" - -msgid "" -">>> gen = (*L for L in lists) # equivalent to (x for L in lists for x in " -"L)\n" -">>> list(gen)\n" -"[1, 2, 3, 4, 5]" -msgstr "" - -msgid "" -"This change also extends to asynchronous generator expressions, such that, " -"for example, ``(*a async for a in agen())`` is equivalent to ``(x async for " -"a in agen() for x in a)``." -msgstr "" - -msgid ":pep:`798` for further details." -msgstr "" - -msgid "(Contributed by Adam Hartz in :gh:`143055`.)" -msgstr "" - -msgid ":pep:`829`: Package startup configuration files" -msgstr "" - -msgid "" -"Loaded by the :mod:`site` module when ``-S`` is not given, :ref:`.pth files " -"` can contain lines that both extend :data:`sys.path` and " -"execute arbitrary code when the line starts with ``import`` (followed by a " -"space or tab). The latter functionality can be problematic, since it is " -"difficult to know exactly what gets executed when Python starts up." -msgstr "" - -msgid "" -"As a step towards improving the ability to audit pre-start executable code, " -"Python 3.15 introduces :ref:`.start files ` which contain " -"entry point specifications of the form ``pkg.mod:callable`` where ``pkg." -"mod`` is the import path to the given callable. When Python starts up, the " -"callable is located and called with no arguments." -msgstr "" - -msgid "" -"``import`` lines in :file:`.pth` files are silently deprecated. When a " -"matching :file:`.start` file is found, ``import`` lines in :file:`.pth` " -"files are ignored. There is no change to :data:`sys.path` extension lines " -"in :file:`.pth` files." -msgstr "" - -msgid "" -"The :mod:`site` module also provides :class:`site.StartupState` to batch " -"startup processing for multiple site directories, ensuring all static path " -"extensions are applied before any startup code is executed. :func:`site." -"main` uses an instance of this class implicitly to batch process all startup " -"configuration files during normal interpreter startup. Callers needing the " -"same batching behavior can build a :class:`~site.StartupState` directly and " -"drive it with :meth:`~site.StartupState.addsitedir`, :meth:`~site." -"StartupState.addusersitepackages`, and :meth:`~site.StartupState." -"addsitepackages`, then call :meth:`~site.StartupState.process` once at the " -"end of the batch." -msgstr "" - -msgid "(Contributed by Barry Warsaw in :gh:`148641` and :gh:`150228`.)" -msgstr "" - -msgid ":pep:`803`: Stable ABI for free-threaded builds" -msgstr "" - -msgid "" -"C extensions that target the :ref:`Stable ABI ` can now be " -"compiled for the new *Stable ABI for Free-Threaded Builds* (also known as " -"``abi3t``), which makes them compatible with :term:`free-threaded builds " -"` of CPython. This usually requires some non-trivial " -"changes to the source code; specifically:" -msgstr "" - -msgid "" -"Switching to API introduced in :pep:`697` (Python 3.12), such as negative :c:" -"member:`~PyType_Spec.basicsize` and :c:func:`PyObject_GetTypeData`, rather " -"than making :c:type:`PyObject` part of the instance struct; and" -msgstr "" - -msgid "" -"Switching from a ``PyInit_`` function to a new export hook, :c:func:" -"`PyModExport_* `, introduced for this purpose in :" -"pep:`793`, with a new :c:type:`PySlot` structure introduced in :pep:`820`." -msgstr "" - -msgid "" -"Note that Stable ABI does not offer all the functionality that CPython has " -"to offer. Extensions that cannot switch to ``abi3t`` should continue to " -"build for the existing Stable ABI (``abi3``) and the version-specific ABI " -"for free-threading (``cp315t``) separately." -msgstr "" - -msgid "" -"Stable ABI for Free-Threaded Builds should typically be selected in a build " -"tool (such as, for example, Setuptools, meson-python, scikit-build-core, or " -"Maturin). At the time of writing, these tools do **not** support ``abi3t``. " -"If this is the case for your tool, compile for ``cp315t`` separately. If not " -"using a build tool -- or when writing such a tool -- you can select " -"``abi3t`` by setting the macro :c:macro:`!Py_TARGET_ABI3T` as discussed in :" -"ref:`abi3-compiling`." -msgstr "" - -msgid "" -"A practical :ref:`migration guide ` for switching to " -"``abi3t`` is available." -msgstr "" - -msgid ":pep:`803` for further details." -msgstr "" - -msgid ":pep:`788`: Protecting the C API from interpreter finalization" -msgstr "" - -msgid "" -"In the C API, :term:`interpreter finalization ` can be " -"problematic for many extensions, because :term:`attaching ` a thread state will permanently hang the thread, resulting in " -"deadlocks and other spurious issues. Additionally, it has historically been " -"impossible to safely check whether an interpreter is alive before using it, " -"leading to crashes when a thread concurrently deletes an interpreter while " -"another thread is trying to attach to it." -msgstr "" - -msgid "There are now several new suites of APIs to circumvent these problems:" -msgstr "" - -msgid "" -":ref:`Interpreter guards `, which prevent an interpreter " -"from finalizing." -msgstr "" - -msgid "" -":ref:`Interpreter views `, which allow thread-safe access " -"to an interpreter that may be concurrently finalizing or deleted." -msgstr "" - -msgid "" -":ref:`New APIs ` to automatically attach and detach " -"thread states that come with built-in protection against finalization." -msgstr "" - -msgid "" -"In addition, APIs in the ``PyGILState`` family (most notably :c:func:" -"`PyGILState_Ensure` and :c:func:`PyGILState_Release`) have been :term:`soft " -"deprecated`. There is **no** plan to remove them, and existing code will " -"continue to work, but there will be no new ``PyGILState`` APIs in future " -"versions of Python." -msgstr "" - -msgid ":pep:`788` for further details." -msgstr "" - -msgid "(Contributed by Peter Bierma in :gh:`149101`.)" -msgstr "" - -msgid "Improved error messages" -msgstr "" - -msgid "" -"The interpreter now provides more helpful suggestions in :exc:" -"`AttributeError` exceptions when accessing an attribute on an object that " -"does not exist, but a similar attribute is available through one of its " -"members." -msgstr "" - -msgid "" -"For example, if the object has an attribute that itself exposes the " -"requested name, the error message will suggest accessing it via that inner " -"attribute:" -msgstr "" - -msgid "" -"@dataclass\n" -"class Circle:\n" -" radius: float\n" -"\n" -" @property\n" -" def area(self) -> float:\n" -" return pi * self.radius**2\n" -"\n" -"class Container:\n" -" def __init__(self, inner: Circle) -> None:\n" -" self.inner = inner\n" -"\n" -"circle = Circle(radius=4.0)\n" -"container = Container(circle)\n" -"print(container.area)" -msgstr "" - -msgid "Running this code now produces a clearer suggestion:" -msgstr "" - -msgid "" -"Traceback (most recent call last):\n" -" File \"/home/pablogsal/github/python/main/lel.py\", line 42, in \n" -" print(container.area)\n" -" ^^^^^^^^^^^^^^\n" -"AttributeError: 'Container' object has no attribute 'area'. Did you mean '." -"inner.area' instead of '.area'?" -msgstr "" - -msgid "" -"When an :exc:`AttributeError` on a builtin type has no close match via " -"Levenshtein distance, the error message now checks a static table of common " -"method names from other languages (JavaScript, Java, Ruby, C#) and suggests " -"the Python equivalent:" -msgstr "" - -msgid "" -">>> [1, 2, 3].push(4)\n" -"Traceback (most recent call last):\n" -"...\n" -"AttributeError: 'list' object has no attribute 'push'. Did you mean '." -"append'?\n" -"\n" -">>> 'hello'.toUpperCase()\n" -"Traceback (most recent call last):\n" -"...\n" -"AttributeError: 'str' object has no attribute 'toUpperCase'. Did you mean '." -"upper'?" -msgstr "" - -msgid "" -"When the Python equivalent is a language construct rather than a method, the " -"hint describes the construct directly:" -msgstr "" - -msgid "" -">>> {}.put(\"a\", 1)\n" -"Traceback (most recent call last):\n" -"...\n" -"AttributeError: 'dict' object has no attribute 'put'. Use d[k] = v." -msgstr "" - -msgid "" -"When a mutable method is called on an immutable type, the hint suggests the " -"mutable counterpart:" -msgstr "" - -msgid "" -">>> (1, 2, 3).append(4)\n" -"Traceback (most recent call last):\n" -"...\n" -"AttributeError: 'tuple' object has no attribute 'append'. Did you mean to " -"use a 'list' object?" -msgstr "" - -msgid "These hints also work for subclasses of builtin types." -msgstr "" - -msgid "(Contributed by Matt Van Horn in :gh:`146406`.)" -msgstr "" - -msgid "" -"The interpreter now tries to provide a suggestion when :func:`delattr` fails " -"due to a missing attribute. When an attribute name that closely resembles an " -"existing attribute is used, the interpreter will suggest the correct " -"attribute name in the error message. For example:" -msgstr "" - -msgid "" -">>> class A:\n" -"... pass\n" -">>> a = A()\n" -">>> a.abcde = 1\n" -">>> del a.abcdf\n" -"Traceback (most recent call last):\n" -"...\n" -"AttributeError: 'A' object has no attribute 'abcdf'. Did you mean: 'abcde'?" -msgstr "" - -msgid "(Contributed by Nikita Sobolev and Pranjal Prajapati in :gh:`136588`.)" -msgstr "" - -msgid "" -"Several error messages incorrectly using the term \"argument\" have been " -"corrected. (Contributed by Stan Ulbrych in :gh:`133382`.)" -msgstr "" - -msgid "Other language changes" -msgstr "" - -msgid "" -"Python now uses UTF-8_ as the default encoding, independent of the system's " -"environment. This means that I/O operations without an explicit encoding, " -"for example, ``open('flying-circus.txt')``, will use UTF-8. UTF-8 is a " -"widely-supported Unicode_ character encoding that has become a *de facto* " -"standard for representing text, including nearly every webpage on the " -"internet, many common file formats, programming languages, and more." -msgstr "" - -msgid "" -"This only applies when no ``encoding`` argument is given. For best " -"compatibility between versions of Python, ensure that an explicit " -"``encoding`` argument is always provided. The :ref:`opt-in encoding warning " -"` can be used to identify code that may be affected by " -"this change. The special ``encoding='locale'`` argument uses the current " -"locale encoding, and has been supported since Python 3.10." -msgstr "" - -msgid "" -"To retain the previous behaviour, Python's UTF-8 mode may be disabled with " -"the :envvar:`PYTHONUTF8=0 ` environment variable or the :option:" -"`-X utf8=0 <-X>` command-line option." -msgstr "" - -msgid ":pep:`686` for further details." -msgstr "" - -msgid "" -"(Contributed by Adam Turner in :gh:`133711`; PEP 686 written by Inada Naoki.)" -msgstr "" - -msgid "" -"The interpreter help (such as ``python --help``) is now in color. This can " -"be controlled by :ref:`environment variables `. " -"(Contributed by Hugo van Kemenade in :gh:`148766`.)" -msgstr "" - -msgid "" -"Unraisable exceptions are now highlighted with color by default. This can be " -"controlled by :ref:`environment variables `. " -"(Contributed by Peter Bierma in :gh:`134170`.)" -msgstr "" - -msgid "" -"More color in :ref:`argparse `, :ref:`ast " -"`, :ref:`calendar `, :ref:" -"`difflib `, :ref:`http.server `, :ref:`pickletools `, :ref:" -"`PyREPL tab completion `, :ref:`python --help " -"`, :ref:`sqlite3 `, :ref:`timeit `, :ref:`tokenize " -"`, :ref:`unraisable exceptions ` and :term:`stdlib` (ast, compileall, doctest, gzip, " -"inspect, json.tool, pdb, profiling.sampling, random, regrtest, sqlite3, " -"timeit, tokenize, trace, unittest, uuid, zipapp, zipfile) CLI help." -msgstr "" - -msgid "" -"The :meth:`~object.__repr__` of :class:`ImportError` and :class:" -"`ModuleNotFoundError` now shows \"name\" and \"path\" as ``name=`` and " -"``path=`` if they were given as keyword arguments at construction " -"time. (Contributed by Serhiy Storchaka, Oleg Iarygin, and Yoav Nir in :gh:" -"`74185`.)" -msgstr "" - -msgid "" -"The :attr:`~object.__dict__` and :attr:`!__weakref__` descriptors now use a " -"single descriptor instance per interpreter, shared across all types that " -"need them. This speeds up class creation, and helps avoid reference cycles. " -"(Contributed by Petr Viktorin in :gh:`135228`.)" -msgstr "" - -msgid "" -"The :option:`-W` option and the :envvar:`PYTHONWARNINGS` environment " -"variable can now specify regular expressions instead of literal strings to " -"match the warning message and the module name, if the corresponding field " -"starts and ends with a forward slash (``/``). (Contributed by Serhiy " -"Storchaka in :gh:`134716`.)" -msgstr "" - -msgid "" -"Functions that take timestamp or timeout arguments now accept any real " -"numbers (such as :class:`~decimal.Decimal` and :class:`~fractions." -"Fraction`), not only integers or floats, although this does not improve " -"precision. (Contributed by Serhiy Storchaka in :gh:`67795`.)" -msgstr "" - -msgid "" -"Added :meth:`bytearray.take_bytes(n=None, /) ` to take " -"bytes out of a :class:`bytearray` without copying. This enables optimizing " -"code which must return :class:`bytes` after working with a mutable buffer of " -"bytes such as data buffering, network protocol parsing, encoding, decoding, " -"and compression. Common code patterns which can be optimized with :func:" -"`~bytearray.take_bytes` are listed below." -msgstr "" - -msgid "Suggested optimizing refactors" -msgstr "" - -msgid "Description" -msgstr "" - -msgid "Old" -msgstr "" - -msgid "New" -msgstr "" - -msgid "Return :class:`bytes` after working with :class:`bytearray`" -msgstr "" - -msgid "" -"def read() -> bytes:\n" -" buffer = bytearray(1024)\n" -" ...\n" -" return bytes(buffer)" -msgstr "" - -msgid "" -"def read() -> bytes:\n" -" buffer = bytearray(1024)\n" -" ...\n" -" return buffer.take_bytes()" -msgstr "" - -msgid "Empty a buffer getting the bytes" -msgstr "" - -msgid "" -"buffer = bytearray(1024)\n" -"...\n" -"data = bytes(buffer)\n" -"buffer.clear()" -msgstr "" - -msgid "" -"buffer = bytearray(1024)\n" -"...\n" -"data = buffer.take_bytes()" -msgstr "" - -msgid "Split a buffer at a specific separator" -msgstr "" - -msgid "" -"buffer = bytearray(b'abc\\ndef')\n" -"n = buffer.find(b'\\n')\n" -"data = bytes(buffer[:n + 1])\n" -"del buffer[:n + 1]\n" -"assert data == b'abc\\n'\n" -"assert buffer == bytearray(b'def')" -msgstr "" - -msgid "" -"buffer = bytearray(b'abc\\ndef')\n" -"n = buffer.find(b'\\n')\n" -"data = buffer.take_bytes(n + 1)" -msgstr "" - -msgid "Split a buffer at a specific separator; discard after the separator" -msgstr "" - -msgid "" -"buffer = bytearray(b'abc\\ndef')\n" -"n = buffer.find(b'\\n')\n" -"data = bytes(buffer[:n])\n" -"buffer.clear()\n" -"assert data == b'abc'\n" -"assert len(buffer) == 0" -msgstr "" - -msgid "" -"buffer = bytearray(b'abc\\ndef')\n" -"n = buffer.find(b'\\n')\n" -"buffer.resize(n)\n" -"data = buffer.take_bytes()" -msgstr "" - -msgid "(Contributed by Cody Maloney in :gh:`139871`.)" -msgstr "" - -msgid "" -"Many functions related to compiling or parsing Python code, such as :func:" -"`compile`, :func:`ast.parse`, :func:`symtable.symtable`, and :func:" -"`importlib.abc.InspectLoader.source_to_code`, now allow the module name to " -"be passed. It is needed to unambiguously :ref:`filter ` " -"syntax warnings by module name. (Contributed by Serhiy Storchaka in :gh:" -"`135801`.)" -msgstr "" - -msgid "" -"Allowed defining the *__dict__* and *__weakref__* :ref:`__slots__ ` " -"for any class. (Contributed by Serhiy Storchaka in :gh:`41779`.)" -msgstr "" - -msgid "" -"Allowed defining any :ref:`__slots__ ` for a class derived from :" -"class:`tuple` (including classes created by :func:`collections.namedtuple`). " -"(Contributed by Serhiy Storchaka in :gh:`41779`.)" -msgstr "" - -msgid "" -"The :class:`slice` type now supports subscription, making it a :term:" -"`generic type`. (Contributed by James Hilton-Balfe in :gh:`128335`.)" -msgstr "" - -msgid "" -"The class :class:`memoryview` now supports the :c:expr:`float complex` and :" -"c:expr:`double complex` C types: formatting characters ``'Zf'`` and ``'Zd'`` " -"respectively. (Contributed by Victor Stinner in :gh:`146151` and :gh:" -"`148675`.)" -msgstr "" - -msgid "" -"Allow the *count* argument of :meth:`bytes.replace` to be a keyword. " -"(Contributed by Stan Ulbrych in :gh:`147856`.)" -msgstr "" - -msgid "" -"Unary plus is now accepted in :keyword:`match` literal patterns, mirroring " -"the existing support for unary minus. (Contributed by Bartosz Sławecki in :" -"gh:`145239`.)" -msgstr "" - -msgid "" -"The import system now acquires per-module locks in hierarchical order " -"(parent packages before their submodules). This fixes a long-standing " -"deadlock where one thread importing ``pkg.sub`` and another importing ``pkg." -"sub.mod`` could each block the other when ``pkg/sub/__init__.py`` imports " -"``pkg.sub.mod``. (Contributed by Gregory P. Smith in :gh:`83065`.)" -msgstr "" - -msgid "" -"File names of Stable ABI extensions that use the ``.so`` suffix may now " -"include a multiarch tuple, for example, ``foo.abi3-x86-64-linux-gnu.so``. " -"This permits stable ABI extensions for multiple architectures to be co-" -"installed into the same directory, without clashing with each other, as " -"regular dynamic extensions do. (Contributed by Stefano Rivera in :gh:" -"`122931`.)" -msgstr "" - -msgid "Default interactive shell" -msgstr "" - -msgid "" -"Tab completions are now colored by object kind, based on :pypi:" -"`fancycompleter`. Set :envvar:`PYTHON_BASIC_COMPLETER` to fall back to :mod:" -"`rlcompleter`. Color can also be controlled by :ref:`environment variables " -"`. (Contributed by Antonio Cuni and Pablo " -"Galindo in :gh:`130472`.)" -msgstr "" - -msgid "New modules" -msgstr "" - -msgid "math.integer" -msgstr "" - -msgid "" -"This module provides access to the mathematical functions for integer " -"arguments (:pep:`791`). (Contributed by Serhiy Storchaka in :gh:`81313`.)" -msgstr "" - -msgid "Improved modules" -msgstr "" - -msgid "argparse" -msgstr "" - -msgid "" -"The :class:`~argparse.BooleanOptionalAction` action now supports single-dash " -"long options and alternate prefix characters. (Contributed by Serhiy " -"Storchaka in :gh:`138525`.)" -msgstr "" - -msgid "" -"Changed the *suggest_on_error* parameter of :class:`argparse.ArgumentParser` " -"to default to ``True``. This enables suggestions for mistyped arguments by " -"default. (Contributed by Jakob Schluse in :gh:`140450`.)" -msgstr "" - -msgid "" -"Added backtick markup support in :class:`~argparse.ArgumentParser` " -"description and epilog text to highlight inline code when color output is " -"enabled. (Contributed by Savannah Ostrowski in :gh:`142390`.)" -msgstr "" - -msgid "" -"Extended backtick markup to argument ``help`` text and added support for " -"double backticks (RST inline-literal style). (Contributed by Hugo van " -"Kemenade in :gh:`149375`.)" -msgstr "" - -msgid "array" -msgstr "" - -msgid "" -"Support the :c:expr:`float complex` and :c:expr:`double complex` C types: " -"formatting characters ``'Zf'`` and ``'Zd'`` respectively. (Contributed by " -"Victor Stinner in :gh:`146151` and :gh:`148675`.)" -msgstr "" - -msgid "" -"Support half-floats (16-bit IEEE 754 binary interchange format): formatting " -"character ``'e'``. (Contributed by Sergey B Kirpichev in :gh:`146238`.)" -msgstr "" - -msgid "" -"The :data:`array.typecodes` type changed from :class:`str` to :class:`tuple` " -"to support type codes longer than 1 character (``Zf`` and ``Zd``). " -"(Contributed by Victor Stinner in :gh:`148675`.)" -msgstr "" - -msgid "ast" -msgstr "" - -msgid "" -"Add *color* parameter to :func:`~ast.dump`. If ``True``, the returned string " -"is syntax highlighted using ANSI escape sequences. If ``False`` (the " -"default), colored output is always disabled. (Contributed by Stan Ulbrych " -"in :gh:`148981`.)" -msgstr "" - -msgid "" -"The :ref:`command-line ` output is now syntax highlighted by " -"default. This can be :ref:`controlled using environment variables `. (Contributed by Stan Ulbrych in :gh:`148981`.)" -msgstr "" - -msgid "asyncio" -msgstr "" - -msgid "" -"Added :meth:`TaskGroup.cancel ` to allow early " -"termination of a task group, for instance, when the goal of the tasks has " -"been achieved or their services are no longer needed. Previously this would " -"involve unintuitive boilerplate such as an extra task raising a custom " -"exception which is then suppressed as it exits the task group. (Contributed " -"by John Belmonte in :gh:`127214`.)" -msgstr "" - -msgid "base64" -msgstr "" - -msgid "" -"Added the *pad* parameter in :func:`~base64.z85encode`. (Contributed by " -"Hauke Dämpfling in :gh:`143103`.)" -msgstr "" - -msgid "" -"Added the *padded* parameter in :func:`~base64.b32encode`, :func:`~base64." -"b32decode`, :func:`~base64.b32hexencode`, :func:`~base64.b32hexdecode`, :" -"func:`~base64.b64encode`, :func:`~base64.b64decode`, :func:`~base64." -"urlsafe_b64encode`, and :func:`~base64.urlsafe_b64decode`. (Contributed by " -"Serhiy Storchaka in :gh:`73613`.)" -msgstr "" - -msgid "" -"Added the *wrapcol* parameter in :func:`~base64.b16encode`, :func:`~base64." -"b32encode`, :func:`~base64.b32hexencode`, :func:`~base64.b64encode`, :func:" -"`~base64.b85encode`, and :func:`~base64.z85encode`. (Contributed by Serhiy " -"Storchaka in :gh:`143214` and :gh:`146431`.)" -msgstr "" - -msgid "" -"Added the *ignorechars* parameter in :func:`~base64.b16decode`, :func:" -"`~base64.b32decode`, :func:`~base64.b32hexdecode`, :func:`~base64." -"b64decode`, :func:`~base64.b85decode`, and :func:`~base64.z85decode`. " -"(Contributed by Serhiy Storchaka in :gh:`144001` and :gh:`146431`.)" -msgstr "" - -msgid "" -"Added the *canonical* parameter in :func:`~base64.b32decode`, :func:`~base64." -"b32hexdecode`, :func:`~base64.b64decode`, :func:`~base64." -"urlsafe_b64decode`, :func:`~base64.a85decode`, :func:`~base64.b85decode`, " -"and :func:`~base64.z85decode`, to reject encodings with non-zero padding " -"bits or other non-canonical forms. (Contributed by Gregory P. Smith in :gh:" -"`146311`.)" -msgstr "" - -msgid "binascii" -msgstr "" - -msgid "Added functions for Base32 encoding:" -msgstr "" - -msgid ":func:`~binascii.b2a_base32` and :func:`~binascii.a2b_base32`" -msgstr "" - -msgid "(Contributed by James Seo in :gh:`146192`.)" -msgstr "" - -msgid "Added functions for Ascii85, Base85, and Z85 encoding:" -msgstr "" - -msgid ":func:`~binascii.b2a_ascii85` and :func:`~binascii.a2b_ascii85`" -msgstr "" - -msgid ":func:`~binascii.b2a_base85` and :func:`~binascii.a2b_base85`" -msgstr "" - -msgid "(Contributed by James Seo and Serhiy Storchaka in :gh:`101178`.)" -msgstr "" - -msgid "" -"Added the *padded* parameter in :func:`~binascii.b2a_base32`, :func:" -"`~binascii.a2b_base32`, :func:`~binascii.b2a_base64`, and :func:`~binascii." -"a2b_base64`. (Contributed by Serhiy Storchaka in :gh:`73613`.)" -msgstr "" - -msgid "" -"Added the *wrapcol* parameter in :func:`~binascii.b2a_base64`. (Contributed " -"by Serhiy Storchaka in :gh:`143214`.)" -msgstr "" - -msgid "" -"Added the *alphabet* parameter in :func:`~binascii.b2a_base64` and :func:" -"`~binascii.a2b_base64`. (Contributed by Serhiy Storchaka in :gh:`145980`.)" -msgstr "" - -msgid "" -"Added the *ignorechars* parameter in :func:`~binascii.a2b_hex`, :func:" -"`~binascii.unhexlify`, and :func:`~binascii.a2b_base64`. (Contributed by " -"Serhiy Storchaka in :gh:`144001` and :gh:`146431`.)" -msgstr "" - -msgid "" -"Added the *canonical* parameter in :func:`~binascii.a2b_base64`, to reject " -"encodings with non-zero padding bits. (Contributed by Gregory P. Smith in :" -"gh:`146311`.)" -msgstr "" - -msgid "calendar" -msgstr "" - -msgid "" -":mod:`calendar`'s :ref:`command-line ` text output has more " -"color. This can be controlled with :ref:`environment variables `. (Contributed by Hugo van Kemenade in :gh:`148352`.)" -msgstr "" - -msgid "" -"The :mod:`calendar`'s :ref:`command-line ` HTML output now " -"accepts the year-month option: ``python -m calendar -t html 2009 06``. " -"(Contributed by Pål Grønås Drange in :gh:`140212`.)" -msgstr "" - -msgid "" -"Calendar pages generated by the :class:`calendar.HTMLCalendar` class now " -"support dark mode and have been migrated to the HTML5 standard for improved " -"accessibility. (Contributed by Jiahao Li and Hugo van Kemenade in :gh:" -"`137634`.)" -msgstr "" - -msgid "collections" -msgstr "" - -msgid "" -"Added :meth:`!collections.Counter.__xor__` and :meth:`!collections.Counter." -"__ixor__` to compute the symmetric difference between :class:`~collections." -"Counter` objects. (Contributed by Raymond Hettinger in :gh:`138682`.)" -msgstr "" - -msgid "concurrent.futures" -msgstr "" - -msgid "" -"Improved error reporting when a child process in a :class:`concurrent." -"futures.ProcessPoolExecutor` terminates abruptly. The resulting traceback " -"will now tell you the PID and exit code of the terminated process. " -"(Contributed by Jonathan Berg in :gh:`139486`.)" -msgstr "" - -msgid "contextlib" -msgstr "" - -msgid "" -"Added support for arbitrary descriptors :meth:`!__enter__`, :meth:`!" -"__exit__`, :meth:`!__aenter__`, and :meth:`!__aexit__` in :class:" -"`~contextlib.ExitStack` and :class:`contextlib.AsyncExitStack`, for " -"consistency with the :keyword:`with` and :keyword:`async with` statements. " -"(Contributed by Serhiy Storchaka in :gh:`144386`.)" -msgstr "" - -msgid "" -":class:`~contextlib.ContextDecorator` and :class:`~contextlib." -"AsyncContextDecorator` (and therefore :func:`~contextlib.contextmanager` " -"and :func:`~contextlib.asynccontextmanager` used as decorators) now detect " -"generator functions, coroutine functions, and asynchronous generator " -"functions and keep the context manager open across iteration or await. " -"Previously the context manager exited as soon as the generator or coroutine " -"object was created. (Contributed by Alex Grönholm & Gregory P. Smith in :gh:" -"`125862`.)" -msgstr "" - -msgid "ctypes" -msgstr "" - -msgid "" -"Change the :py:attr:`~ctypes._SimpleCData._type_` of :class:`~ctypes." -"c_float_complex`, :class:`~ctypes.c_double_complex` and :class:`~ctypes." -"c_longdouble_complex` from ``F``, ``D`` and ``G`` to ``Zf``, ``Zd`` and " -"``Zg`` for compatibility with NumPy. (Contributed by Victor Stinner in :gh:" -"`148675`.)" -msgstr "" - -msgid "dataclasses" -msgstr "" - -msgid "" -"Annotations for generated ``__init__`` methods no longer include internal " -"type names." -msgstr "" - -msgid "dbm" -msgstr "" - -msgid "" -"Added new :meth:`!reorganize` methods to :mod:`dbm.dumb` and :mod:`dbm." -"sqlite3` to recover unused free space previously occupied by deleted " -"entries. (Contributed by Andrea Oliveri in :gh:`134004`.)" -msgstr "" - -msgid "difflib" -msgstr "" - -msgid "" -"Introduced the optional *color* parameter to :func:`difflib.unified_diff`, " -"enabling color output similar to :program:`git diff`. This can be controlled " -"by :ref:`environment variables `. (Contributed " -"by Douglas Thor in :gh:`133725`.)" -msgstr "" - -msgid "" -"Improved the styling of HTML diff pages generated by the :class:`difflib." -"HtmlDiff` class, and migrated the output to the HTML5 standard. (Contributed " -"by Jiahao Li in :gh:`134580`.)" -msgstr "" - -msgid "email" -msgstr "" - -msgid "" -"Email generators now raise an error when an :class:`.EmailMessage` cannot be " -"accurately flattened due to a non-ASCII email address (mailbox) in an " -"address header. Options for supporting Email Address Internationalization " -"(EAI) are discussed in :attr:`.EmailPolicy.utf8`. (Contributed by R David " -"Murray and Mike Edmunds in :gh:`122540`.)" -msgstr "" - -msgid "faulthandler" -msgstr "" - -msgid "" -"Added the *max_threads* parameter in :func:`faulthandler.enable`, :func:" -"`faulthandler.dump_traceback`, :func:`faulthandler.dump_traceback_later`, " -"and :func:`faulthandler.register`. (Contributed by Eric Froemling in :gh:" -"`149085`.)" -msgstr "" - -msgid "functools" -msgstr "" - -msgid "" -":func:`~functools.singledispatchmethod` now supports non-:term:`descriptor` " -"callables. (Contributed by Serhiy Storchaka in :gh:`140873`.)" -msgstr "" - -msgid "" -":func:`~functools.singledispatchmethod` now dispatches on the second " -"argument if it wraps a regular method and is called as a class attribute. " -"(Contributed by Bartosz Sławecki in :gh:`143535`.)" -msgstr "" - -msgid "gc" -msgstr "" - -msgid "" -"Python 3.14.0-3.14.4 shipped with a new incremental garbage collector. " -"However, due to a number of `reports `__ of significant memory pressure in production environments, " -"it has been reverted back to the generational GC from 3.13. This is the GC " -"now used in Python 3.14.5 and later and Python 3.15." -msgstr "" - -msgid "hashlib" -msgstr "" - -msgid "" -"Ensure that hash functions guaranteed to be always *available* exist as " -"attributes of :mod:`hashlib` even if they will not work at runtime due to " -"missing backend implementations. For instance, ``hashlib.md5`` will no " -"longer raise :exc:`AttributeError` if OpenSSL is not available and Python " -"has been built without MD5 support. (Contributed by Bénédikt Tran in :gh:" -"`136929`.)" -msgstr "" - -msgid "http.client" -msgstr "" - -msgid "" -"A new *max_response_headers* keyword-only parameter has been added to :class:" -"`~http.client.HTTPConnection` and :class:`~http.client.HTTPSConnection` " -"constructors. This parameter overrides the default maximum number of allowed " -"response headers. (Contributed by Alexander Enrique Urieles Nieto in :gh:" -"`131724`.)" -msgstr "" - -msgid "http.server" -msgstr "" - -msgid "" -"The logging of :mod:`~http.server.BaseHTTPRequestHandler`, as used by the :" -"ref:`command-line interface `, is colored by default. This " -"can be controlled with :ref:`environment variables `. (Contributed by Hugo van Kemenade in :gh:`146292`.)" -msgstr "" - -msgid "" -"Added :attr:`~http.server.SimpleHTTPRequestHandler.default_content_type` and " -"the :option:`--content-type ` command-line " -"option to allow customizing the default ``Content-Type`` header for files " -"with unknown extensions. (Contributed by John Comeau and Hugo van Kemenade " -"in :gh:`113471`.)" -msgstr "" - -msgid "" -"Add a new ``extra_response_headers`` keyword argument to :class:`~http." -"server.SimpleHTTPRequestHandler` to support custom headers in HTTP " -"responses. (Contributed by Anton I. Sipos in :gh:`135057`.)" -msgstr "" - -msgid "" -"Add a ``-H/--header`` option to the :program:`python -m http.server` command-" -"line interface to support custom headers in HTTP responses. (Contributed by " -"Anton I. Sipos in :gh:`135057`.)" -msgstr "" - -msgid "importlib.metadata" -msgstr "" - -msgid "" -"Previously, when accessing a distribution metadata directory not containing " -"a metadata file, ``metadata()`` and ``Distribution.metadata`` would return " -"an empty ``PackageMetadata`` object as if the file was present but empty. " -"Now, a ``MetadataNotFound`` exception is raised. See `importlib_metadata#493 " -"`_ for background " -"and rationale and :gh:`143387` for rationale on the compatibility concerns. " -"(Contributed by Jason R. Coombs.)" -msgstr "" - -msgid "inspect" -msgstr "" - -msgid "" -"Add parameters *inherit_class_doc* and *fallback_to_class_doc* for :func:" -"`~inspect.getdoc`. (Contributed by Serhiy Storchaka in :gh:`132686`.)" -msgstr "" - -msgid "json" -msgstr "" - -msgid "" -"Add the *array_hook* parameter to :func:`~json.load` and :func:`~json.loads` " -"functions: allow a callback for JSON literal array types to customize Python " -"lists in the resulting decoded object. Passing combined :class:`frozendict` " -"to *object_pairs_hook* param and :class:`tuple` to ``array_hook`` will yield " -"a deeply nested immutable Python structure representing the JSON data. " -"(Contributed by Joao S. O. Bueno in :gh:`146440`.)" -msgstr "" - -msgid "locale" -msgstr "" - -msgid "" -":func:`~locale.setlocale` now supports language codes with ``@``-modifiers. " -"``@``-modifiers are no longer silently removed in :func:`~locale.getlocale`, " -"but included in the language code. (Contributed by Serhiy Storchaka in :gh:" -"`137729`.)" -msgstr "" - -msgid "" -"Undeprecate the :func:`locale.getdefaultlocale` function. (Contributed by " -"Victor Stinner in :gh:`130796`.)" -msgstr "" - -msgid "math" -msgstr "" - -msgid "" -"Add :func:`math.isnormal` and :func:`math.issubnormal` functions. " -"(Contributed by Sergey B Kirpichev in :gh:`132908`.)" -msgstr "" - -msgid "" -"Add :func:`math.fmax`, :func:`math.fmin` and :func:`math.signbit` functions. " -"(Contributed by Bénédikt Tran in :gh:`135853`.)" -msgstr "" - -msgid "mimetypes" -msgstr "" - -msgid "" -"Add more MIME types. (Contributed by Benedikt Johannes, Charlie Lin, " -"Foolbar, Gil Forcada and John Franey in :gh:`144217`, :gh:`145720`, :gh:" -"`140937`, :gh:`139959`, :gh:`145698`, :gh:`145718`, :gh:`145918`, and :gh:" -"`144213`.)" -msgstr "" - -msgid "" -"Rename ``application/x-texinfo`` to ``application/texinfo``. (Contributed by " -"Charlie Lin in :gh:`140165`.)" -msgstr "" - -msgid "" -"Changed the MIME type for ``.ai`` files to ``application/pdf``. (Contributed " -"by Stan Ulbrych in :gh:`141239`.)" -msgstr "" - -msgid "mmap" -msgstr "" - -msgid "" -":class:`mmap.mmap` now has a *trackfd* parameter on Windows; if it is " -"``False``, the file handle corresponding to *fileno* will not be duplicated. " -"(Contributed by Serhiy Storchaka in :gh:`78502`.)" -msgstr "" - -msgid "" -"Added the :meth:`mmap.mmap.set_name` method to annotate an anonymous memory " -"mapping if Linux kernel supports :manpage:`PR_SET_VMA_ANON_NAME " -"` (Linux 5.17 or newer). (Contributed by Donghee Na in :" -"gh:`142419`.)" -msgstr "" - -msgid "os" -msgstr "" - -msgid "" -"Add :func:`os.statx` on Linux kernel versions 4.11 and later with glibc " -"versions 2.28 and later. (Contributed by Jeffrey Bosboom and Victor Stinner " -"in :gh:`83714`.)" -msgstr "" - -msgid "" -":func:`os.makedirs` function now has a *parent_mode* parameter that allows " -"specifying the mode for intermediate directories. This can be used to match " -"the behavior from Python 3.6 and earlier by passing ``parent_mode=mode``. " -"(Contributed by Zackery Spytz and Gregory P. Smith in :gh:`86533`.)" -msgstr "" - -msgid "os.path" -msgstr "" - -msgid "" -"Add support of the all-but-last mode in :func:`~os.path.realpath`. " -"(Contributed by Serhiy Storchaka in :gh:`71189`.)" -msgstr "" - -msgid "" -"The *strict* parameter to :func:`os.path.realpath` accepts a new value, :" -"data:`os.path.ALLOW_MISSING`. If used, errors other than :exc:" -"`FileNotFoundError` will be re-raised; the resulting path can be missing but " -"it will be free of symlinks. (Contributed by Petr Viktorin for :cve:" -"`2025-4517`.)" -msgstr "" - -msgid "pathlib" -msgstr "" - -msgid "" -":meth:`pathlib.Path.mkdir` now has a *parent_mode* parameter that allows " -"specifying the mode for intermediate directories when ``parents=True``. " -"(Contributed by Gregory P. Smith in :gh:`86533`.)" -msgstr "" - -msgid "pdb" -msgstr "" - -msgid "" -"Use the new interactive shell as the default input shell for :mod:`pdb`. " -"(Contributed by Tian Gao in :gh:`145379`.)" -msgstr "" - -msgid "pickle" -msgstr "" - -msgid "" -"Add support for pickling private methods and nested classes. (Contributed by " -"Zackery Spytz and Serhiy Storchaka in :gh:`77188`.)" -msgstr "" - -msgid "pickletools" -msgstr "" - -msgid "" -"The output of the :mod:`pickletools` command-line interface is colored by " -"default. This can be controlled with :ref:`environment variables `. (Contributed by Hugo van Kemenade in :gh:`149026`.)" -msgstr "" - -msgid "pprint" -msgstr "" - -msgid "" -"Add an *expand* keyword argument for :func:`pprint.pprint`, :func:`pprint." -"pformat`, :func:`pprint.pp`. If true, the output will be formatted similar " -"to pretty-printed :func:`json.dumps` when *indent* is supplied. (Contributed " -"by Stefan Todoran, Semyon Moroz and Hugo van Kemenade in :gh:`112632`.)" -msgstr "" - -msgid "" -"Add t-string support to :mod:`pprint`. (Contributed by Loïc Simon and Hugo " -"van Kemenade in :gh:`134551`.)" -msgstr "" - -msgid "re" -msgstr "" - -msgid "" -":func:`re.prefixmatch` and a corresponding :meth:`re.Pattern.prefixmatch` " -"have been added as alternate, more explicit names for the existing and now :" -"term:`soft deprecated` :func:`re.match` and :meth:`re.Pattern.match` APIs. " -"These are intended to be used to alleviate confusion around what *match* " -"means by following the Zen of Python's *\"Explicit is better than " -"implicit\"* mantra. Most other language regular expression libraries use an " -"API named *match* to mean what Python has always called *search*. " -"(Contributed by Gregory P. Smith in :gh:`86519`.)" -msgstr "" - -msgid "resource" -msgstr "" - -msgid "" -"Add new constants: :data:`~resource.RLIMIT_NTHR`, :data:`~resource." -"RLIMIT_UMTXP`, :data:`~resource.RLIMIT_THREADS`, :data:`~resource." -"RLIM_SAVED_CUR`, and :data:`~resource.RLIM_SAVED_MAX`. (Contributed by " -"Serhiy Storchaka in :gh:`137512`.)" -msgstr "" - -msgid "shelve" -msgstr "" - -msgid "" -"Added new :meth:`!reorganize` method to :mod:`shelve` used to recover unused " -"free space previously occupied by deleted entries. (Contributed by Andrea " -"Oliveri in :gh:`134004`.)" -msgstr "" - -msgid "" -"Add support for custom serialization and deserialization functions in the :" -"mod:`shelve` module. (Contributed by Furkan Onder in :gh:`99631`.)" -msgstr "" - -msgid "socket" -msgstr "" - -msgid "" -"Add constants for the ISO-TP CAN protocol. (Contributed by Patrick Menschel " -"and Stefan Tatschner in :gh:`86819`.)" -msgstr "" - -msgid "sqlite3" -msgstr "" - -msgid "" -"The :ref:`command-line interface ` has several new features:" -msgstr "" - -msgid "" -"SQL keyword completion on . (Contributed by Long Tan in :gh:`133393`.)" -msgstr "" - -msgid "" -"Prompts, error messages, and help text are now colored. This is enabled by " -"default, see :ref:`using-on-controlling-color` for details. (Contributed by " -"Stan Ulbrych and Łukasz Langa in :gh:`133461`.)" -msgstr "" - -msgid "" -"Table, index, trigger, view, column, function, and schema completion on " -". (Contributed by Long Tan in :gh:`136101`.)" -msgstr "" - -msgid "ssl" -msgstr "" - -msgid "" -"Indicate through :data:`ssl.HAS_PSK_TLS13` whether the :mod:`ssl` module " -"supports \"External PSKs\" in TLSv1.3, as described in :rfc:`9258`. " -"(Contributed by Will Childs-Klein in :gh:`133624`.)" -msgstr "" - -msgid "Added new methods for managing groups used for SSL key agreement:" -msgstr "" - -msgid "" -":meth:`ssl.SSLContext.set_groups` sets the groups allowed for doing key " -"agreement, extending the previous :meth:`ssl.SSLContext.set_ecdh_curve` " -"method. This new API provides the ability to list multiple groups and " -"supports fixed-field and post-quantum groups in addition to ECDH curves. " -"This method can also be used to control what key shares are sent in the TLS " -"handshake." -msgstr "" - -msgid "" -":meth:`ssl.SSLSocket.group` returns the group selected for doing key " -"agreement on the current connection after the TLS handshake completes. This " -"call requires OpenSSL 3.2 or later." -msgstr "" - -msgid "" -":meth:`ssl.SSLContext.get_groups` returns a list of all available key " -"agreement groups compatible with the minimum and maximum TLS versions " -"currently set in the context. This call requires OpenSSL 3.5 or later." -msgstr "" - -msgid "(Contributed by Ron Frederick in :gh:`136306`.)" -msgstr "" - -msgid "" -"Added a new method :meth:`ssl.SSLContext.set_ciphersuites` for setting TLS " -"1.3 ciphers. For TLS 1.2 or earlier, :meth:`ssl.SSLContext.set_ciphers` " -"should continue to be used. Both calls can be made on the same context and " -"the selected cipher suite will depend on the TLS version negotiated when a " -"connection is made. (Contributed by Ron Frederick in :gh:`137197`.)" -msgstr "" - -msgid "Added new methods for managing signature algorithms:" -msgstr "" - -msgid "" -":func:`ssl.get_sigalgs` returns a list of all available TLS signature " -"algorithms. This call requires OpenSSL 3.4 or later." -msgstr "" - -msgid "" -":meth:`ssl.SSLContext.set_client_sigalgs` sets the signature algorithms " -"allowed for certificate-based client authentication." -msgstr "" - -msgid "" -":meth:`ssl.SSLContext.set_server_sigalgs` sets the signature algorithms " -"allowed for the server to complete the TLS handshake." -msgstr "" - -msgid "" -":meth:`ssl.SSLSocket.client_sigalg` returns the signature algorithm selected " -"for client authentication on the current connection. This call requires " -"OpenSSL 3.5 or later." -msgstr "" - -msgid "" -":meth:`ssl.SSLSocket.server_sigalg` returns the signature algorithm selected " -"for the server to complete the TLS handshake on the current connection. This " -"call requires OpenSSL 3.5 or later." -msgstr "" - -msgid "(Contributed by Ron Frederick in :gh:`138252`.)" -msgstr "" - -msgid "subprocess" -msgstr "" - -msgid "" -":meth:`subprocess.Popen.wait`: when ``timeout`` is not ``None`` and the " -"platform supports it, an efficient event-driven mechanism is used to wait " -"for process termination:" -msgstr "" - -msgid "Linux >= 5.3 uses :func:`os.pidfd_open` + :func:`select.poll`." -msgstr "" - -msgid "" -"macOS and other BSD variants use :func:`select.kqueue` + ``KQ_FILTER_PROC`` " -"+ ``KQ_NOTE_EXIT``." -msgstr "" - -msgid "Windows keeps using ``WaitForSingleObject`` (unchanged)." -msgstr "" - -msgid "" -"If none of these mechanisms are available, the function falls back to the " -"traditional busy loop (non-blocking call and short sleeps). (Contributed by " -"Giampaolo Rodola in :gh:`83069`.)" -msgstr "" - -msgid "symtable" -msgstr "" - -msgid "" -"Add :meth:`symtable.Function.get_cells` and :meth:`symtable.Symbol.is_cell` " -"methods. (Contributed by Yashp002 in :gh:`143504`.)" -msgstr "" - -msgid "sys" -msgstr "" - -msgid "" -"Add :data:`sys.abi_info` namespace to improve access to ABI information. " -"(Contributed by Klaus Zimmermann in :gh:`137476`.)" -msgstr "" - -msgid "sys.monitoring" -msgstr "" - -msgid "" -"The :ref:`other events ` (:monitoring-event:" -"`PY_THROW`, :monitoring-event:`PY_UNWIND`, :monitoring-event:`RAISE`, :" -"monitoring-event:`EXCEPTION_HANDLED`, and :monitoring-event:`RERAISE`) can " -"now be turned on and disabled on a per code object basis. Returning :data:" -"`~sys.monitoring.DISABLE` from a callback for one of these events disables " -"the event for the entire code object (for the current tool), rather than " -"raising :exc:`ValueError` as in prior versions. (Contributed by Gabriele N. " -"Tornetta in :gh:`146182`.)" -msgstr "" - -msgid "tarfile" -msgstr "" - -msgid "" -":func:`~tarfile.data_filter` now normalizes symbolic link targets in order " -"to avoid path traversal attacks. (Contributed by Petr Viktorin in :gh:" -"`127987` and :cve:`2025-4138`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extractall` now skips fixing up directory attributes " -"when a directory was removed or replaced by another kind of file. " -"(Contributed by Petr Viktorin in :gh:`127987` and :cve:`2024-12718`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extract` and :func:`~tarfile.TarFile.extractall` now " -"(re-)apply the extraction filter when substituting a link (hard or symbolic) " -"with a copy of another archive member, and when fixing up directory " -"attributes. The former raises a new exception, :exc:`~tarfile." -"LinkFallbackError`. (Contributed by Petr Viktorin for :cve:`2025-4330` and :" -"cve:`2024-12718`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extract` and :func:`~tarfile.TarFile.extractall` no " -"longer extract rejected members when :func:`~tarfile.TarFile.errorlevel` is " -"zero. (Contributed by Matt Prodani and Petr Viktorin in :gh:`112887` and :" -"cve:`2025-4435`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.extract` and :func:`~tarfile.TarFile.extractall` now " -"replace slashes with backslashes in symlink targets on Windows to prevent " -"creation of corrupted links. (Contributed by Christoph Walcher in :gh:" -"`57911`.)" -msgstr "" - -msgid "" -":func:`~tarfile.TarFile.gettarinfo` now replaces backslashes with slashes in " -"symlink targets on Windows to conform to the tar format standard. " -"(Contributed by Daniele Nicolodi in :gh:`151669`.)" -msgstr "" - -msgid "threading" -msgstr "" - -msgid "" -"Added :class:`~threading.serialize_iterator`, :func:`~threading." -"synchronized_iterator`, and :func:`~threading.concurrent_tee` to support " -"concurrent access to generators and iterators. (Contributed by Raymond " -"Hettinger in :gh:`124397`.)" -msgstr "" - -msgid "timeit" -msgstr "" - -msgid "" -"The output of the :mod:`timeit` command-line interface is colored by " -"default. This can be controlled with :ref:`environment variables `. (Contributed by Hugo van Kemenade in :gh:`146609`.)" -msgstr "" - -msgid "" -"The command-line interface now colorizes error tracebacks by default. This " -"can be controlled with :ref:`environment variables `. (Contributed by Yi Hong in :gh:`139374`.)" -msgstr "" - -msgid "" -"Make the target time of :meth:`timeit.Timer.autorange` configurable and add " -"``--target-time`` option to the command-line interface. (Contributed by " -"Alessandro Cucci and Miikka Koskinen in :gh:`80642`.)" -msgstr "" - -msgid "tkinter" -msgstr "" - -msgid "" -"The :meth:`!tkinter.Text.search` method now supports two additional " -"arguments: *nolinestop* which allows the search to continue across line " -"boundaries; and *strictlimits* which restricts the search to within the " -"specified range. (Contributed by Rihaan Meher in :gh:`130848`.)" -msgstr "" - -msgid "" -"A new method :meth:`!tkinter.Text.search_all` has been introduced. This " -"method allows for searching for all matches of a pattern using Tcl's ``-" -"all`` and ``-overlap`` options. (Contributed by Rihaan Meher in :gh:" -"`130848`.)" -msgstr "" - -msgid "" -"Added new methods :meth:`!pack_content`, :meth:`!place_content` and :meth:`!" -"grid_content` which use Tk commands with new names (introduced in Tk 8.6) " -"instead of :meth:`!*_slaves` methods which use Tk commands with outdated " -"names. (Contributed by Serhiy Storchaka in :gh:`143754`.)" -msgstr "" - -msgid "" -"Added :class:`!Event` attributes :attr:`!user_data` for Tk virtual events " -"and :attr:`!detail` for ``Enter``, ``Leave``, ``FocusIn``, ``FocusOut``, and " -"``ConfigureRequest`` events. (Contributed by Matthias Kievernagel and Serhiy " -"Storchaka in :gh:`47655`.)" -msgstr "" - -msgid "tokenize" -msgstr "" - -msgid "" -"The output of the :mod:`tokenize` :ref:`command-line interface ` is colored by default. This can be controlled with :ref:`environment " -"variables `. (Contributed by Hugo van Kemenade " -"in :gh:`148991`.)" -msgstr "" - -msgid "tomllib" -msgstr "" - -msgid "" -"The :mod:`tomllib` module now supports TOML 1.1.0. This is a backwards " -"compatible update, meaning that all valid TOML 1.0.0 documents are parsed " -"the same way." -msgstr "" - -msgid "The changes, according to the `official TOML changelog`_, are:" -msgstr "" - -msgid "Allow newlines and trailing commas in inline tables." -msgstr "" - -msgid "" -"Previously an inline table had to be on a single line and couldn't end with " -"a trailing comma. This is now relaxed so that the following is valid:" -msgstr "" - -msgid "" -"tbl = {\n" -" key = \"a string\",\n" -" moar-tbl = {\n" -" key = 1,\n" -" },\n" -"}" -msgstr "" - -msgid "" -"Add ``\\xHH`` notation to basic strings for codepoints under 255, and the " -"``\\e`` escape for the escape character:" -msgstr "" - -msgid "" -"null = \"null byte: \\x00; letter a: \\x61\"\n" -"csi = \"\\e[\"" -msgstr "" - -msgid "" -"Seconds in datetime and time values are now optional. The following are now " -"valid:" -msgstr "" - -msgid "" -"dt = 2010-02-03 14:15\n" -"t = 14:15" -msgstr "" - -msgid "(Contributed by Taneli Hukkinen in :gh:`142956`.)" -msgstr "" - -msgid "types" -msgstr "" - -msgid "" -"Expose the write-through :func:`locals` proxy type as :class:`types." -"FrameLocalsProxyType`. This represents the type of the :attr:`frame." -"f_locals` attribute, as described in :pep:`667`." -msgstr "" - -msgid "typing" -msgstr "" - -msgid "" -":pep:`747`: Add :data:`~typing.TypeForm`, a new special form for annotating " -"values that are themselves type expressions. ``TypeForm[T]`` means \"a type " -"form object describing ``T`` (or a type assignable to ``T``)\". At runtime, " -"``TypeForm(x)`` simply returns ``x``, which allows explicit annotation of " -"type-form values without changing behavior." -msgstr "" - -msgid "" -"This helps libraries that accept user-provided type expressions (for example " -"``int``, ``str | None``, :class:`~typing.TypedDict` classes, or " -"``list[int]``) expose precise signatures:" -msgstr "" - -msgid "" -"from typing import Any, TypeForm\n" -"\n" -"def cast[T](typ: TypeForm[T], value: Any) -> T: ..." -msgstr "" - -msgid "(Contributed by Jelle Zijlstra in :gh:`145033`.)" -msgstr "" - -msgid "" -":pep:`728`: Add support in :class:`~typing.TypedDict` for the *closed* and " -"*extra_items* class arguments. A closed :class:`~typing.TypedDict` does not " -"allow extra keys beyond those specified in the class body, while a :class:" -"`~typing.TypedDict` with ``extra_items`` allows arbitrary extra items where " -"the values are of the specified type. (Contributed by Angela Liss in :gh:" -"`137840`.)" -msgstr "" - -msgid "" -"Code like ``class ExtraTypeVars(P1[S], Protocol[T, T2]): ...`` now raises a :" -"exc:`TypeError`, because ``S`` is not listed in ``Protocol`` parameters. " -"(Contributed by Nikita Sobolev in :gh:`137191`.)" -msgstr "" - -msgid "" -"Code like ``class B2(A[T2], Protocol[T1, T2]): ...`` now correctly handles " -"type parameters order: it is ``(T1, T2)``, not ``(T2, T1)`` as it was " -"incorrectly inferred at runtime before. (Contributed by Nikita Sobolev in :" -"gh:`137191`.)" -msgstr "" - -msgid "" -":pep:`800`: Add :deco:`typing.disjoint_base`, a new decorator marking a " -"class as a disjoint base. This is an advanced feature primarily intended to " -"allow type checkers to faithfully reflect the runtime semantics of types " -"defined as builtins or in compiled extensions. If a class ``C`` is a " -"disjoint base, then child classes of that class cannot inherit from other " -"disjoint bases that are not parent or child classes of ``C``. (Contributed " -"by Jelle Zijlstra in :gh:`148639`.)" -msgstr "" - -msgid "" -":class:`~typing.TypeVarTuple` now accepts ``bound``, ``covariant``, " -"``contravariant``, and ``infer_variance`` keyword arguments, matching the " -"interface of :class:`~typing.TypeVar` and :class:`~typing.ParamSpec`. " -"``bound`` semantics remain undefined in the specification." -msgstr "" - -msgid "unicodedata" -msgstr "" - -msgid "The Unicode database has been updated to Unicode 17.0.0." -msgstr "" - -msgid "" -"Add :func:`unicodedata.isxidstart` and :func:`unicodedata.isxidcontinue` " -"functions to check whether a character can start or continue a `Unicode " -"Standard Annex #31 `_ identifier. " -"(Contributed by Stan Ulbrych in :gh:`129117`.)" -msgstr "" - -msgid "" -"Add the :func:`~unicodedata.iter_graphemes` function to iterate over " -"grapheme clusters according to rules defined in `Unicode Standard Annex #29, " -"\"Unicode Text Segmentation\" `_. " -"Add :func:`~unicodedata.grapheme_cluster_break`, :func:`~unicodedata." -"indic_conjunct_break` and :func:`~unicodedata.extended_pictographic` " -"functions to get the properties of the character which are related to the " -"above algorithm. (Contributed by Serhiy Storchaka and Guillaume Sanchez in :" -"gh:`74902`.)" -msgstr "" - -msgid "" -"Add :func:`~unicodedata.block` function to return the `Unicode block " -"`_ assigned to a character. (Contributed by Stan Ulbrych in :gh:" -"`66802`.)" -msgstr "" - -msgid "unittest" -msgstr "" - -msgid "" -":meth:`unittest.TestCase.assertLogs` will now accept a formatter to control " -"how messages are formatted. (Contributed by Garry Cairns in :gh:`134567`.)" -msgstr "" - -msgid "" -":meth:`unittest.TestCase.assertWarns` and :meth:`unittest.TestCase." -"assertWarnsRegex` no longer swallow warnings that do not match the specified " -"category or regex. Nested context managers are now supported. (Contributed " -"by Serhiy Storchaka in :gh:`143231`.)" -msgstr "" - -msgid "urllib.parse" -msgstr "" - -msgid "" -"Add the *missing_as_none* parameter to :func:`~urllib.parse.urlsplit`, :func:" -"`~urllib.parse.urlparse` and :func:`~urllib.parse.urldefrag` functions. Add " -"the *keep_empty* parameter to :func:`~urllib.parse.urlunsplit` and :func:" -"`~urllib.parse.urlunparse` functions. This allows distinguishing between " -"empty and undefined URI components and preserving empty components. " -"(Contributed by Serhiy Storchaka in :gh:`67041`.)" -msgstr "" - -msgid "venv" -msgstr "" - -msgid "" -"On POSIX platforms, platlib directories will be created if needed when " -"creating virtual environments, instead of using a ``lib64 -> lib`` symlink. " -"This means purelib and platlib of virtual environments no longer share the " -"same ``lib`` directory on platforms where :data:`sys.platlibdir` is not " -"equal to ``lib``. (Contributed by Rui Xi in :gh:`133951`.)" -msgstr "" - -msgid "warnings" -msgstr "" - -msgid "" -"Improve filtering by module in :func:`warnings.warn_explicit` if no *module* " -"argument is passed. It now tests the module regular expression in the " -"warnings filter not only against the filename with ``.py`` stripped, but " -"also against module names constructed starting from different parent " -"directories of the filename (with ``/__init__.py``, ``.py`` and, on Windows, " -"``.pyw`` stripped). (Contributed by Serhiy Storchaka in :gh:`135801`.)" -msgstr "" - -msgid "wave" -msgstr "" - -msgid "" -"Added support for IEEE floating-point WAVE audio " -"(``WAVE_FORMAT_IEEE_FLOAT``) in :mod:`wave`." -msgstr "" - -msgid "" -"Added :meth:`wave.Wave_read.getformat`, :meth:`wave.Wave_write.getformat`, " -"and :meth:`wave.Wave_write.setformat` for explicit frame format handling." -msgstr "" - -msgid "" -":meth:`wave.Wave_write.setparams` accepts both 7-item tuples including " -"``format`` and 6-item tuples for backwards compatibility (defaulting to " -"``WAVE_FORMAT_PCM``)." -msgstr "" - -msgid "" -"``WAVE_FORMAT_IEEE_FLOAT`` output now includes a ``fact`` chunk, as required " -"for non-PCM WAVE formats." -msgstr "" - -msgid "(Contributed by Lionel Koenig and Michiel W. Beijen in :gh:`60729`.)" -msgstr "" - -msgid "webbrowser" -msgstr "" - -msgid "" -"On macOS, the new :class:`!webbrowser.MacOS` class opens URLs via :program:`/" -"usr/bin/open` instead of constructing and executing AppleScript via :program:" -"`osascript`. The default browser is detected from the LaunchServices " -"preferences file using :mod:`plistlib`, with :class:`!com.apple.Safari` as " -"the fallback on fresh installations. For non-HTTP(S) URLs, :program:`open -b " -"` is used to route the URL through a browser rather than the OS " -"file handler, preventing file injection attacks. (Contributed by Jeff Lyon " -"in :gh:`137586`.)" -msgstr "" - -msgid "xml" -msgstr "" - -msgid "" -"Add the :func:`xml.is_valid_name` function to check whether a string can be " -"used as an element or attribute name in XML. (Contributed by Serhiy " -"Storchaka in :gh:`139489`.)" -msgstr "" - -msgid "" -"Add the :func:`xml.is_valid_text` function to check whether a string can be " -"used in an XML document. (Contributed by Serhiy Storchaka in :gh:`139489`.)" -msgstr "" - -msgid "xml.parsers.expat" -msgstr "" - -msgid "" -"Add :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerActivationThreshold` " -"and :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerMaximumAmplification` " -"to :ref:`xmlparser ` objects to tune protections against " -"disproportional amounts of dynamic memory usage from within an Expat parser. " -"(Contributed by Bénédikt Tran in :gh:`90949`.)" -msgstr "" - -msgid "" -"Add :meth:`~xml.parsers.expat.xmlparser." -"SetBillionLaughsAttackProtectionActivationThreshold` and :meth:`~xml.parsers." -"expat.xmlparser.SetBillionLaughsAttackProtectionMaximumAmplification` to :" -"ref:`xmlparser ` objects to tune protections against " -"`billion laughs`_ attacks. (Contributed by Bénédikt Tran in :gh:`90949`.)" -msgstr "" - -msgid "zlib" -msgstr "" - -msgid "" -"Allow combining two Adler-32 checksums via :func:`~zlib.adler32_combine`. " -"(Contributed by Callum Attryde and Bénédikt Tran in :gh:`134635`.)" -msgstr "" - -msgid "" -"Allow combining two CRC-32 checksums via :func:`~zlib.crc32_combine`. " -"(Contributed by Bénédikt Tran in :gh:`134635`.)" -msgstr "" - -msgid "Optimizations" -msgstr "" - -msgid "" -"``mimalloc`` is now used as the default allocator for raw memory allocations " -"such as via :c:func:`PyMem_RawMalloc` for better performance on :term:`free-" -"threaded builds `. (Contributed by Kumar Aditya in :gh:" -"`144914`.)" -msgstr "" - -msgid "base64 & binascii" -msgstr "" - -msgid "" -"CPython's underlying base64 implementation now encodes 2x faster and decodes " -"3x faster thanks to simple CPU pipelining optimizations. (Contributed by " -"Gregory P. Smith and Serhiy Storchaka in :gh:`143262`.)" -msgstr "" - -msgid "" -"Implementation for Ascii85, Base85, and Z85 encoding has been rewritten in " -"C. Encoding and decoding is now two orders of magnitude faster and consumes " -"two orders of magnitude less memory. (Contributed by James Seo and Serhiy " -"Storchaka in :gh:`101178`.)" -msgstr "" - -msgid "" -"Implementation for Base32 has been rewritten in C. Encoding and decoding is " -"now two orders of magnitude faster. (Contributed by James Seo in :gh:" -"`146192`.)" -msgstr "" - -msgid "csv" -msgstr "" - -msgid "" -":meth:`csv.Sniffer.sniff` delimiter detection is now up to 1.6x faster. " -"(Contributed by Maurycy Pawłowski-Wieroński in :gh:`137628`.)" -msgstr "" - -msgid "Upgraded JIT compiler" -msgstr "" - -msgid "" -"Results from the `pyperformance `__ " -"benchmark suite report `8-9% `__ geometric mean performance improvement for the JIT over " -"the standard CPython interpreter built with all optimizations enabled on " -"x86-64 Linux. On AArch64 macOS, the JIT has a `12-13% `__ speedup over the :ref:`tail calling " -"interpreter ` with all optimizations " -"enabled. The speedups for JIT builds versus no JIT builds range from roughly " -"15% slowdown to over 100% speedup (ignoring the ``unpack_sequence`` " -"microbenchmark) on x86-64 Linux and AArch64 macOS systems." -msgstr "" - -msgid "These results are not yet final." -msgstr "" - -msgid "The major upgrades to the JIT are:" -msgstr "" - -msgid "LLVM 21 build-time dependency" -msgstr "" - -msgid "New tracing frontend" -msgstr "" - -msgid "Basic register allocation in the JIT" -msgstr "" - -msgid "More JIT optimizations" -msgstr "" - -msgid "GDB and GNU ``backtrace()`` unwinding support" -msgstr "" - -msgid "Better machine code generation" -msgstr "" - -msgid "" -"The JIT compiler now uses LLVM 21 for build-time stencil generation. As " -"always, LLVM is only needed when building CPython with the JIT enabled; end " -"users running Python do not need LLVM installed. Instructions for installing " -"LLVM can be found in the `JIT compiler documentation `__ for all supported " -"platforms. (Contributed by Savannah Ostrowski in :gh:`140973`.)" -msgstr "" - -msgid "A new tracing frontend" -msgstr "" - -msgid "" -"The JIT compiler now supports significantly more bytecode operations and " -"control flow than in Python 3.14, enabling speedups on a wider variety of " -"code. For example, simple Python object creation is now understood by the " -"3.15 JIT compiler. Overloaded operations and generators are also partially " -"supported. This was made possible by an overhauled JIT tracing frontend that " -"records actual execution paths through code, rather than estimating them as " -"the previous implementation did. (Contributed by Ken Jin in :gh:`139109`. " -"Support for Windows added by Mark Shannon in :gh:`141703`.)" -msgstr "" - -msgid "" -"A basic form of register allocation has been added to the JIT compiler's " -"optimizer. This allows the JIT compiler to avoid certain stack operations " -"altogether and instead operate on registers. This allows the JIT to produce " -"more efficient traces by avoiding reads and writes to memory. (Contributed " -"by Mark Shannon in :gh:`135379`.)" -msgstr "" - -msgid "" -"More `constant-propagation `__ is now performed. This means when the JIT compiler " -"detects that certain user code results in constants, the code can be " -"simplified by the JIT. (Contributed by Ken Jin and Savannah Ostrowski in :gh:" -"`132732`.)" -msgstr "" - -msgid "" -":term:`Reference counts ` are avoided whenever it is safe " -"to do so. This generally reduces the cost of most operations in Python. " -"(Contributed by Ken Jin, Donghee Na, Zheao Li, Hai Zhu, Savannah Ostrowski, " -"Reiden Ong, Noam Cohen, Tomas Roun, PuQing, Cajetan Rodrigues, and Sacul in :" -"gh:`134584`.)" -msgstr "" - -msgid "" -"By tracking unique references to objects, the JIT optimizer can now " -"eliminate reference count updates and perform in-place operations on ints " -"and floats. (Contributed by Reiden Ong, and Pieter Eendebak in :gh:`143414` " -"and :gh:`146306`.)" -msgstr "" - -msgid "" -"The JIT optimizer now supports significantly more operations than in 3.14. " -"(Contributed by Kumar Aditya, Ken Jin, Jiahao Li, and Sacul in :gh:`131798`.)" -msgstr "" - -msgid "" -"The JIT compiler now publishes unwind information for generated machine code " -"to the GDB interface on supported Linux ELF platforms. When libgcc frame " -"registration is available, the same unwind information is also registered " -"for GNU ``backtrace()`` stack walkers. This allows native debuggers, crash " -"handlers, and diagnostic tools using these mechanisms to unwind through JIT " -"frames instead of stopping at generated code. (Contributed by Diego Russo " -"and Pablo Galindo Salgado in :gh:`146071` and :gh:`149104`.)" -msgstr "" - -msgid "" -"The JIT compiler's machine code generator now produces better machine code " -"for x86-64 and AArch64 macOS and Linux targets. In general, users should " -"experience lower memory usage for generated machine code and more efficient " -"machine code versus 3.14. (Contributed by Brandt Bucher in :gh:`136528` and :" -"gh:`135905`. Implementation for AArch64 contributed by Mark Shannon in :gh:" -"`139855`. Additional optimizations for AArch64 contributed by Mark Shannon " -"and Diego Russo in :gh:`140683` and :gh:`142305`.)" -msgstr "" - -msgid "Maintainability" -msgstr "" - -msgid "" -"The JIT optimizer's operations have been simplified. This was made possible " -"by a refactoring of JIT data structures. (Contributed by Zhongtian Zheng in :" -"gh:`148211` and Hai Zhu in :gh:`143421`.)" -msgstr "" - -msgid "Removed" -msgstr "" - -msgid "" -"The constructors of :ref:`AST nodes ` now raise a :exc:" -"`TypeError` when a required argument is omitted or when a keyword argument " -"that does not map to a field on the AST node is passed. These cases had " -"previously raised a :exc:`DeprecationWarning` since Python 3.13. " -"(Contributed by Brian Schubert and Jelle Zijlstra in :gh:`137600` and :gh:" -"`105858`.)" -msgstr "" - -msgid "collections.abc" -msgstr "" - -msgid "" -":class:`collections.abc.ByteString` has been removed from ``collections.abc." -"__all__``. :class:`!collections.abc.ByteString` has been deprecated since " -"Python 3.12, and is scheduled for removal in Python 3.17." -msgstr "" - -msgid "" -"Removed the undocumented function :func:`!ctypes.SetPointerType`, which has " -"been deprecated since Python 3.13. (Contributed by Bénédikt Tran in :gh:" -"`133866`.)" -msgstr "" - -msgid "datetime" -msgstr "" - -msgid "" -":meth:`~datetime.datetime.strptime` now raises :exc:`ValueError` when the " -"format string contains ``%d`` (day of month) without a year directive. This " -"has been deprecated since Python 3.13. (Contributed by Stan Ulbrych and " -"Gregory P. Smith in :gh:`70647`.)" -msgstr "" - -msgid "glob" -msgstr "" - -msgid "" -"Removed the undocumented :func:`!glob.glob0` and :func:`!glob.glob1` " -"functions, which have been deprecated since Python 3.13. Use :func:`glob." -"glob` and pass a directory to its *root_dir* argument instead. (Contributed " -"by Barney Gale in :gh:`137466`.)" -msgstr "" - -msgid "" -"Removed the :class:`!CGIHTTPRequestHandler` class and the ``--cgi`` flag " -"from the :program:`python -m http.server` command-line interface. They were " -"deprecated in Python 3.13. (Contributed by Bénédikt Tran in :gh:`133810`.)" -msgstr "" - -msgid "importlib.resources" -msgstr "" - -msgid "" -"Removed deprecated ``package`` parameter from :func:`importlib.resources." -"files` function. (Contributed by Semyon Moroz in :gh:`138044`.)" -msgstr "" - -msgid "" -"Removed deprecated :meth:`!pathlib.PurePath.is_reserved`. Use :func:`os.path." -"isreserved` to detect reserved paths on Windows. (Contributed by Nikita " -"Sobolev in :gh:`133875`.)" -msgstr "" - -msgid "platform" -msgstr "" - -msgid "" -"Removed the :func:`!platform.java_ver` function, which was deprecated since " -"Python 3.13. (Contributed by Alexey Makridenko in :gh:`133604`.)" -msgstr "" - -msgid "sre_*" -msgstr "" - -msgid "" -"Removed :mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse` " -"modules. (Contributed by Stan Ulbrych in :gh:`135994`.)" -msgstr "" - -msgid "sysconfig" -msgstr "" - -msgid "" -"Removed the *check_home* parameter of :func:`sysconfig.is_python_build`. " -"(Contributed by Filipe Laíns in :gh:`92897`.)" -msgstr "" - -msgid "" -"Remove support for arbitrary positional or keyword arguments in the C " -"implementation of :class:`~threading.RLock` objects. This was deprecated in " -"Python 3.14. (Contributed by Bénédikt Tran in :gh:`134087`.)" -msgstr "" - -msgid "" -"Removed :attr:`!codeobject.co_lnotab` from :class:`types.CodeType`, " -"deprecated since Python 3.12 by :pep:`626`. (Contributed by Nikita Sobolev " -"in :gh:`134690`.)" -msgstr "" - -msgid "" -":class:`typing.ByteString` has been removed from ``typing.__all__``. :class:" -"`!typing.ByteString` has been deprecated since Python 3.9, and is scheduled " -"for removal in Python 3.17." -msgstr "" - -msgid "" -"The undocumented keyword argument syntax for creating :class:`~typing." -"NamedTuple` classes (for example, ``Point = NamedTuple(\"Point\", x=int, " -"y=int)``) is no longer supported. Use the class-based syntax or the " -"functional syntax instead. (Contributed by Bénédikt Tran in :gh:`133817`.)" -msgstr "" - -msgid "" -"Using ``TD = TypedDict(\"TD\")`` or ``TD = TypedDict(\"TD\", None)`` to " -"construct a :class:`~typing.TypedDict` type with zero fields is no longer " -"supported. Use ``class TD(TypedDict): pass`` or ``TD = TypedDict(\"TD\", " -"{})`` instead. (Contributed by Bénédikt Tran in :gh:`133823`.)" -msgstr "" - -msgid "" -"Deprecated :deco:`!typing.no_type_check_decorator` has been removed. " -"(Contributed by Nikita Sobolev in :gh:`133601`.)" -msgstr "" - -msgid "" -"Removed the ``getmark()``, ``setmark()`` and ``getmarkers()`` methods of " -"the :class:`~wave.Wave_read` and :class:`~wave.Wave_write` classes, which " -"were deprecated since Python 3.13. (Contributed by Bénédikt Tran in :gh:" -"`133873`.)" -msgstr "" - -msgid "zipimport" -msgstr "" - -msgid "" -"Remove deprecated :meth:`!zipimport.zipimporter.load_module`. Use :meth:" -"`zipimport.zipimporter.exec_module` instead. (Contributed by Jiahao Li in :" -"gh:`133656`.)" -msgstr "" - -msgid "Deprecated" -msgstr "" - -msgid "New deprecations" -msgstr "" - -msgid ":mod:`ast`" -msgstr "" - -msgid "" -"Creating instances of abstract AST nodes (such as :class:`ast.AST` or :class:" -"`!ast.expr`) is deprecated and will raise an error in Python 3.20." -msgstr "" - -msgid "(Contributed by Brian Schubert in :gh:`116021`.)" -msgstr "" - -msgid ":mod:`base64`:" -msgstr "" - -msgid "" -"Accepting the ``+`` and ``/`` characters with an alternative alphabet in :" -"func:`~base64.b64decode` and :func:`~base64.urlsafe_b64decode` is now " -"deprecated. In future Python versions they will be errors in the strict mode " -"and discarded in the non-strict mode. (Contributed by Serhiy Storchaka in :" -"gh:`125346`.)" -msgstr "" - -msgid "CLI:" -msgstr "" - -msgid "" -"Deprecate :option:`-b` and :option:`!-bb` command-line options and schedule " -"them to become no-ops in Python 3.17. These were primarily helpers for the " -"Python 2 -> 3 transition. Starting with Python 3.17, no :exc:`BytesWarning` " -"will be raised for these cases; use a type checker instead." -msgstr "" - -msgid "(Contributed by Nikita Sobolev in :gh:`136355`.)" -msgstr "" - -msgid ":mod:`collections.abc`" -msgstr "" - -msgid "" -"The following statements now cause ``DeprecationWarning``\\ s to be emitted " -"at runtime:" -msgstr "" - -msgid "``from collections.abc import ByteString``" -msgstr "" - -msgid "``import collections.abc; collections.abc.ByteString``." -msgstr "" - -msgid "" -"``DeprecationWarning``\\ s were already emitted if :class:`collections.abc." -"ByteString` was subclassed or used as the second argument to :func:" -"`isinstance` or :func:`issubclass`, but warnings were not previously emitted " -"if it was merely imported or accessed from the :mod:`!collections.abc` " -"module." -msgstr "" - -msgid ":mod:`hashlib`:" -msgstr "" - -msgid "" -"In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, the optional initial data parameter could also be passed as a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`hashlib` " -"implementations." -msgstr "" - -msgid "" -"Support for the ``string`` keyword argument name is now deprecated and is " -"slated for removal in Python 3.19. Prefer passing the initial data as a " -"positional argument for maximum backwards compatibility." -msgstr "" - -msgid "(Contributed by Bénédikt Tran in :gh:`134978`.)" -msgstr "" - -msgid ":mod:`http.cookies`:" -msgstr "" - -msgid "" -":meth:`Morsel.js_output ` and :meth:" -"`BaseCookie.js_output ` are deprecated " -"and will be removed in Python 3.19. Use :meth:`Morsel.output ` or :meth:`BaseCookie.output ` instead. (Contributed by kishorhange111 in :gh:`148849`.)" -msgstr "" - -msgid ":mod:`imaplib`:" -msgstr "" - -msgid "" -"Altering :attr:`IMAP4.file ` is now deprecated and " -"slated for removal in Python 3.19. This property is now unused and changing " -"its value does *not* explicitly close the current file." -msgstr "" - -msgid ":mod:`profile`:" -msgstr "" - -msgid "" -"The :mod:`!profile` module is deprecated and will be removed in Python 3.17. " -"Use :mod:`profiling.tracing` instead, which provides a compatible API. See :" -"pep:`799` for details. (Contributed by Pablo Galindo and László Kiss Kollár " -"in :gh:`138122`.)" -msgstr "" - -msgid ":mod:`re`:" -msgstr "" - -msgid "" -":func:`re.match` and :meth:`re.Pattern.match` are now :term:`soft " -"deprecated` in favor of the new :func:`re.prefixmatch` and :meth:`re.Pattern." -"prefixmatch` APIs, which have been added as alternate, more explicit names. " -"These are intended to be used to alleviate confusion around what *match* " -"means by following the Zen of Python's *\"Explicit is better than " -"implicit\"* mantra. Most other language regular expression libraries use an " -"API named *match* to mean what Python has always called *search*." -msgstr "" - -msgid "" -"We **do not** plan to remove the older :func:`!match` name, as it has been " -"used in code for over 30 years. Code supporting older versions of Python " -"should continue to use :func:`!match`, while new code should prefer :func:`!" -"prefixmatch`. See :ref:`prefixmatch-vs-match`." -msgstr "" - -msgid "" -"(Contributed by Gregory P. Smith in :gh:`86519` and Hugo van Kemenade in :gh:" -"`148100`.)" -msgstr "" - -msgid ":mod:`struct`:" -msgstr "" - -msgid "" -"Calling ``Struct.__new__()`` without a required argument is now deprecated " -"and will be removed in Python 3.20. Calling the :meth:`~object.__init__` " -"method on an initialized :class:`~struct.Struct` object is deprecated and " -"will be removed in Python 3.20." -msgstr "" - -msgid "" -"(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)" -msgstr "" - -msgid "" -"The ``'F'`` and ``'D'`` type codes are now :term:`soft deprecated` in favor " -"of the two-letter forms ``'Zf'`` and ``'Zd'``. (Contributed by Sergey B " -"Kirpichev in :gh:`121249`.)" -msgstr "" - -msgid ":mod:`typing`:" -msgstr "" - -msgid "``from typing import ByteString``" -msgstr "" - -msgid "``import typing; typing.ByteString``." -msgstr "" - -msgid "" -"``DeprecationWarning``\\ s were already emitted if :class:`typing." -"ByteString` was subclassed or used as the second argument to :func:" -"`isinstance` or :func:`issubclass`, but warnings were not previously emitted " -"if it was merely imported or accessed from the :mod:`!typing` module." -msgstr "" - -msgid "" -"It is deprecated to call :func:`isinstance` and :func:`issubclass` checks on " -"protocol classes that were not explicitly decorated with :func:`!" -"runtime_checkable` but that inherit from a runtime-checkable protocol class. " -"This will raise a :exc:`TypeError` in Python 3.20." -msgstr "" - -msgid "(Contributed by Bartosz Sławecki in :gh:`132604`.)" -msgstr "" - -msgid ":mod:`webbrowser`:" -msgstr "" - -msgid "" -":class:`!webbrowser.MacOSXOSAScript` is deprecated in favour of :class:`!" -"webbrowser.MacOS` and scheduled for removal in Python 3.17. (Contributed by " -"Jeff Lyon in :gh:`137586`.)" -msgstr "" - -msgid "``__version__``" -msgstr "" - -msgid "" -"The ``__version__``, ``version`` and ``VERSION`` attributes have been " -"deprecated in these standard library modules and will be removed in Python " -"3.20. Use :py:data:`sys.version_info` instead." -msgstr "" - -msgid ":mod:`argparse`" -msgstr "" - -msgid ":mod:`csv`" -msgstr "" - -msgid ":mod:`ctypes`" -msgstr "" - -msgid ":mod:`!ctypes.macholib`" -msgstr "" - -msgid ":mod:`decimal` (use :data:`decimal.SPEC_VERSION` instead)" -msgstr "" - -msgid ":mod:`http.server`" -msgstr "" - -msgid ":mod:`imaplib`" -msgstr "" - -msgid ":mod:`ipaddress`" -msgstr "" - -msgid ":mod:`json`" -msgstr "" - -msgid ":mod:`logging` (``__date__`` also deprecated)" -msgstr "" - -msgid ":mod:`optparse`" -msgstr "" - -msgid ":mod:`pickle`" -msgstr "" - -msgid ":mod:`platform`" -msgstr "" - -msgid ":mod:`re`" -msgstr "" - -msgid ":mod:`socketserver`" -msgstr "" - -msgid ":mod:`tabnanny`" -msgstr "" - -msgid ":mod:`tarfile`" -msgstr "" - -msgid ":mod:`tkinter.font`" -msgstr "" - -msgid ":mod:`tkinter.ttk`" -msgstr "" - -msgid ":mod:`wsgiref.simple_server`" -msgstr "" - -msgid ":mod:`xml.etree.ElementTree`" -msgstr "" - -msgid ":mod:`!xml.sax.expatreader`" -msgstr "" - -msgid ":mod:`xml.sax.handler`" -msgstr "" - -msgid ":mod:`zlib`" -msgstr "" - -msgid "(Contributed by Hugo van Kemenade and Stan Ulbrych in :gh:`76007`.)" -msgstr "" - -msgid "Pending removal in Python 3.16" -msgstr "" - -msgid "The import system:" -msgstr "" - -msgid "" -"Setting :attr:`~module.__loader__` on a module while failing to set :attr:" -"`__spec__.loader ` is deprecated. In " -"Python 3.16, :attr:`!__loader__` will cease to be set or taken into " -"consideration by the import system or the standard library." -msgstr "" - -msgid ":mod:`array`:" -msgstr "" - -msgid "" -"The ``'u'`` format code (:c:type:`wchar_t`) has been deprecated in " -"documentation since Python 3.3 and at runtime since Python 3.13. Use the " -"``'w'`` format code (:c:type:`Py_UCS4`) for Unicode characters instead." -msgstr "" - -msgid ":mod:`asyncio`:" -msgstr "" - -msgid "" -":func:`!asyncio.iscoroutinefunction` is deprecated and will be removed in " -"Python 3.16; use :func:`inspect.iscoroutinefunction` instead. (Contributed " -"by Jiahao Li and Kumar Aditya in :gh:`122875`.)" -msgstr "" - -msgid "" -":mod:`asyncio` policy system is deprecated and will be removed in Python " -"3.16. In particular, the following classes and functions are deprecated:" -msgstr "" - -msgid ":class:`asyncio.AbstractEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.DefaultEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.WindowsSelectorEventLoopPolicy`" -msgstr "" - -msgid ":class:`asyncio.WindowsProactorEventLoopPolicy`" -msgstr "" - -msgid ":func:`asyncio.get_event_loop_policy`" -msgstr "" - -msgid ":func:`asyncio.set_event_loop_policy`" -msgstr "" - -msgid "" -"Users should use :func:`asyncio.run` or :class:`asyncio.Runner` with " -"*loop_factory* to use the desired event loop implementation." -msgstr "" - -msgid "For example, to use :class:`asyncio.SelectorEventLoop` on Windows::" -msgstr "" - -msgid "" -"import asyncio\n" -"\n" -"async def main():\n" -" ...\n" -"\n" -"asyncio.run(main(), loop_factory=asyncio.SelectorEventLoop)" -msgstr "" - -msgid "(Contributed by Kumar Aditya in :gh:`127949`.)" -msgstr "" - -msgid ":mod:`builtins`:" -msgstr "" - -msgid "" -"Bitwise inversion on boolean types, ``~True`` or ``~False`` has been " -"deprecated since Python 3.12, as it produces surprising and unintuitive " -"results (``-2`` and ``-1``). Use ``not x`` instead for the logical negation " -"of a Boolean. In the rare case that you need the bitwise inversion of the " -"underlying integer, convert to ``int`` explicitly (``~int(x)``)." -msgstr "" - -msgid ":mod:`functools`:" -msgstr "" - -msgid "" -"Calling the Python implementation of :func:`functools.reduce` with " -"*function* or *sequence* as keyword arguments has been deprecated since " -"Python 3.14." -msgstr "" - -msgid ":mod:`logging`:" -msgstr "" - -msgid "" -"Support for custom logging handlers with the *strm* argument is deprecated " -"and scheduled for removal in Python 3.16. Define handlers with the *stream* " -"argument instead. (Contributed by Mariusz Felisiak in :gh:`115032`.)" -msgstr "" - -msgid ":mod:`mimetypes`:" -msgstr "" - -msgid "" -"Valid extensions start with a '.' or are empty for :meth:`mimetypes." -"MimeTypes.add_type`. Undotted extensions are deprecated and will raise a :" -"exc:`ValueError` in Python 3.16. (Contributed by Hugo van Kemenade in :gh:" -"`75223`.)" -msgstr "" - -msgid ":mod:`shutil`:" -msgstr "" - -msgid "" -"The :class:`!ExecError` exception has been deprecated since Python 3.14. It " -"has not been used by any function in :mod:`!shutil` since Python 3.4, and is " -"now an alias of :exc:`RuntimeError`." -msgstr "" - -msgid ":mod:`symtable`:" -msgstr "" - -msgid "" -"The :meth:`Class.get_methods ` method has been " -"deprecated since Python 3.14." -msgstr "" - -msgid ":mod:`sys`:" -msgstr "" - -msgid "" -"The :func:`~sys._enablelegacywindowsfsencoding` function has been deprecated " -"since Python 3.13. Use the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " -"environment variable instead." -msgstr "" - -msgid ":mod:`sysconfig`:" -msgstr "" - -msgid "" -"The :func:`!sysconfig.expand_makefile_vars` function has been deprecated " -"since Python 3.14. Use the ``vars`` argument of :func:`sysconfig.get_paths` " -"instead." -msgstr "" - -msgid ":mod:`tarfile`:" -msgstr "" - -msgid "" -"The undocumented and unused :attr:`!TarFile.tarfile` attribute has been " -"deprecated since Python 3.13." -msgstr "" - -msgid "Pending removal in Python 3.17" -msgstr "" - -msgid ":mod:`datetime`:" -msgstr "" - -msgid "" -":meth:`~datetime.datetime.strptime` calls using a format string containing " -"``%e`` (day of month) without a year. This has been deprecated since Python " -"3.15. (Contributed by Stan Ulbrych in :gh:`70647`.)" -msgstr "" - -msgid ":mod:`collections.abc`:" -msgstr "" - -msgid "" -":class:`collections.abc.ByteString` is scheduled for removal in Python 3.17." -msgstr "" - -msgid "" -"Use ``isinstance(obj, collections.abc.Buffer)`` to test if ``obj`` " -"implements the :ref:`buffer protocol ` at runtime. For use in " -"type annotations, either use :class:`~collections.abc.Buffer` or a union " -"that explicitly specifies the types your code supports (e.g., ``bytes | " -"bytearray | memoryview``)." -msgstr "" - -msgid "" -":class:`!ByteString` was originally intended to be an abstract class that " -"would serve as a supertype of both :class:`bytes` and :class:`bytearray`. " -"However, since the ABC never had any methods, knowing that an object was an " -"instance of :class:`!ByteString` never actually told you anything useful " -"about the object. Other common buffer types such as :class:`memoryview` were " -"also never understood as subtypes of :class:`!ByteString` (either at runtime " -"or by static type checkers)." -msgstr "" - -msgid "" -"See :pep:`PEP 688 <688#current-options>` for more details. (Contributed by " -"Shantanu Jain in :gh:`91896`.)" -msgstr "" - -msgid ":mod:`encodings`:" -msgstr "" - -msgid "" -"Passing non-ascii *encoding* names to :func:`encodings.normalize_encoding` " -"is deprecated and scheduled for removal in Python 3.17. (Contributed by Stan " -"Ulbrych in :gh:`136702`.)" -msgstr "" - -msgid "" -":class:`!webbrowser.MacOSXOSAScript` is deprecated in favour of :class:`!" -"webbrowser.MacOS`. (:gh:`137586`)" -msgstr "" - -msgid "" -"Before Python 3.14, old-style unions were implemented using the private " -"class ``typing._UnionGenericAlias``. This class is no longer needed for the " -"implementation, but it has been retained for backward compatibility, with " -"removal scheduled for Python 3.17. Users should use documented introspection " -"helpers like :func:`typing.get_origin` and :func:`typing.get_args` instead " -"of relying on private implementation details." -msgstr "" - -msgid "" -":class:`typing.ByteString`, deprecated since Python 3.9, is scheduled for " -"removal in Python 3.17." -msgstr "" - -msgid ":mod:`tkinter`:" -msgstr "" - -msgid "" -"The :class:`!tkinter.Variable` methods :meth:`!trace_variable`, :meth:`!" -"trace` (an alias of :meth:`!trace_variable`), :meth:`!trace_vdelete` and :" -"meth:`!trace_vinfo`, deprecated since Python 3.14, are scheduled for removal " -"in Python 3.17. Use :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!" -"trace_info` instead. (Contributed by Serhiy Storchaka in :gh:`120220`.)" -msgstr "" - -msgid "Pending removal in Python 3.18" -msgstr "" - -msgid "" -"No longer accept a boolean value when a file descriptor is expected. " -"(Contributed by Serhiy Storchaka in :gh:`82626`.)" -msgstr "" - -msgid ":mod:`decimal`:" -msgstr "" - -msgid "" -"The non-standard and undocumented :class:`~decimal.Decimal` format specifier " -"``'N'``, which is only supported in the :mod:`!decimal` module's C " -"implementation, has been deprecated since Python 3.13. (Contributed by " -"Serhiy Storchaka in :gh:`89902`.)" -msgstr "" - -msgid "Deprecations defined by :pep:`829`:" -msgstr "" - -msgid "``import`` lines in :file:`{name}.pth` files are silently ignored." -msgstr "" - -msgid "(Contributed by Barry Warsaw in :gh:`148641`.)" -msgstr "" - -msgid "Pending removal in Python 3.19" -msgstr "" - -msgid ":mod:`ctypes`:" -msgstr "" - -msgid "" -"Implicitly switching to the MSVC-compatible struct layout by setting :attr:" -"`~ctypes.Structure._pack_` but not :attr:`~ctypes.Structure._layout_` on non-" -"Windows platforms." -msgstr "" - -msgid "" -"In hash function constructors such as :func:`~hashlib.new` or the direct " -"hash-named constructors such as :func:`~hashlib.md5` and :func:`~hashlib." -"sha256`, their optional initial data parameter could also be passed a " -"keyword argument named ``data=`` or ``string=`` in various :mod:`!hashlib` " -"implementations." -msgstr "" - -msgid "" -"Support for the ``string`` keyword argument name is now deprecated and " -"slated for removal in Python 3.19." -msgstr "" - -msgid "" -"Before Python 3.13, the ``string`` keyword parameter was not correctly " -"supported depending on the backend implementation of hash functions. Prefer " -"passing the initial data as a positional argument for maximum backwards " -"compatibility." -msgstr "" - -msgid "" -":meth:`http.cookies.Morsel.js_output` is deprecated and will be removed in " -"Python 3.19." -msgstr "" - -msgid "" -":meth:`http.cookies.BaseCookie.js_output` is deprecated and will be removed " -"in Python 3.19." -msgstr "" - -msgid "" -"Altering :attr:`IMAP4.file ` is now deprecated and " -"slated for removal in Python 3.19. This property is now unused and changing " -"its value does not automatically close the current file." -msgstr "" - -msgid "" -"Before Python 3.14, this property was used to implement the corresponding " -"``read()`` and ``readline()`` methods for :class:`~imaplib.IMAP4` but this " -"is no longer the case since then." -msgstr "" - -msgid "Pending removal in Python 3.20" -msgstr "" - -msgid "" -"Calling the ``__new__()`` method of :class:`struct.Struct` without the " -"*format* argument is deprecated and will be removed in Python 3.20. " -"Calling :meth:`~object.__init__` method on initialized :class:`~struct." -"Struct` objects is deprecated and will be removed in Python 3.20." -msgstr "" - -msgid "" -"Warnings are produced for ``import`` lines found in :file:`{name}.pth` files." -msgstr "" - -msgid "" -":file:`{name}.pth` files are no longer decoded in the locale encoding by " -"default. They **MUST** be encoded in ``utf-8-sig``." -msgstr "" - -msgid ":mod:`ast`:" -msgstr "" - -msgid "Pending removal in future versions" -msgstr "" - -msgid "" -"The following APIs will be removed in the future, although there is " -"currently no date scheduled for their removal." -msgstr "" - -msgid ":mod:`argparse`:" -msgstr "" - -msgid "" -"Nesting argument groups and nesting mutually exclusive groups are deprecated." -msgstr "" - -msgid "" -"Passing the undocumented keyword argument *prefix_chars* to :meth:`~argparse." -"ArgumentParser.add_argument_group` is now deprecated." -msgstr "" - -msgid "The :class:`argparse.FileType` type converter is deprecated." -msgstr "" - -msgid "" -"Generators: ``throw(type, exc, tb)`` and ``athrow(type, exc, tb)`` signature " -"is deprecated: use ``throw(exc)`` and ``athrow(exc)`` instead, the single " -"argument signature." -msgstr "" - -msgid "" -"Currently Python accepts numeric literals immediately followed by keywords, " -"for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " -"ambiguous expressions like ``[0x1for x in y]`` (which can be interpreted as " -"``[0x1 for x in y]`` or ``[0x1f or x in y]``). A syntax warning is raised " -"if the numeric literal is immediately followed by one of keywords :keyword:" -"`and`, :keyword:`else`, :keyword:`for`, :keyword:`if`, :keyword:`in`, :" -"keyword:`is` and :keyword:`or`. In a future release it will be changed to a " -"syntax error. (:gh:`87999`)" -msgstr "" - -msgid "" -"Support for ``__index__()`` and ``__int__()`` method returning non-int type: " -"these methods will be required to return an instance of a strict subclass " -"of :class:`int`." -msgstr "" - -msgid "" -"Support for ``__float__()`` method returning a strict subclass of :class:" -"`float`: these methods will be required to return an instance of :class:" -"`float`." -msgstr "" - -msgid "" -"Support for ``__complex__()`` method returning a strict subclass of :class:" -"`complex`: these methods will be required to return an instance of :class:" -"`complex`." -msgstr "" - -msgid "" -"Passing a complex number as the *real* or *imag* argument in the :func:" -"`complex` constructor is now deprecated; it should only be passed as a " -"single positional argument. (Contributed by Serhiy Storchaka in :gh:" -"`109218`.)" -msgstr "" - -msgid "" -":mod:`calendar`: ``calendar.January`` and ``calendar.February`` constants " -"are deprecated and replaced by :data:`calendar.JANUARY` and :data:`calendar." -"FEBRUARY`. (Contributed by Prince Roshan in :gh:`103636`.)" -msgstr "" - -msgid "" -":mod:`codecs`: use :func:`open` instead of :func:`codecs.open`. (:gh:" -"`133038`)" -msgstr "" - -msgid "" -":attr:`!codeobject.co_lnotab`: use the :meth:`codeobject.co_lines` method " -"instead." -msgstr "" - -msgid "" -":meth:`~datetime.datetime.utcnow`: use ``datetime.datetime.now(tz=datetime." -"UTC)``." -msgstr "" - -msgid "" -":meth:`~datetime.datetime.utcfromtimestamp`: use ``datetime.datetime." -"fromtimestamp(timestamp, tz=datetime.UTC)``." -msgstr "" - -msgid ":mod:`gettext`: Plural value must be an integer." -msgstr "" - -msgid ":mod:`importlib`:" -msgstr "" - -msgid "" -":func:`~importlib.util.cache_from_source` *debug_override* parameter is " -"deprecated: use the *optimization* parameter instead." -msgstr "" - -msgid ":mod:`importlib.metadata`:" -msgstr "" - -msgid "``EntryPoints`` tuple interface." -msgstr "" - -msgid "Implicit ``None`` on return values." -msgstr "" - -msgid "" -":mod:`logging`: the ``warn()`` method has been deprecated since Python 3.3, " -"use :meth:`~logging.warning` instead." -msgstr "" - -msgid "" -":mod:`mailbox`: Use of StringIO input and text mode is deprecated, use " -"BytesIO and binary mode instead." -msgstr "" - -msgid "" -":mod:`os`: Calling :func:`os.register_at_fork` in a multi-threaded process." -msgstr "" - -msgid "" -":mod:`os.path`: :func:`os.path.commonprefix` is deprecated, use :func:`os." -"path.commonpath` for path prefixes. The :func:`os.path.commonprefix` " -"function is being deprecated due to having a misleading name and module. The " -"function is not safe to use for path prefixes despite being included in a " -"module about path manipulation, meaning it is easy to accidentally introduce " -"path traversal vulnerabilities into Python programs by using this function." -msgstr "" - -msgid "" -":class:`!pydoc.ErrorDuringImport`: A tuple value for *exc_info* parameter is " -"deprecated, use an exception instance." -msgstr "" - -msgid "" -":mod:`re`: More strict rules are now applied for numerical group references " -"and group names in regular expressions. Only sequence of ASCII digits is " -"now accepted as a numerical reference. The group name in bytes patterns and " -"replacement strings can now only contain ASCII letters and digits and " -"underscore. (Contributed by Serhiy Storchaka in :gh:`91760`.)" -msgstr "" - -msgid "" -":mod:`shutil`: :func:`~shutil.rmtree`'s *onerror* parameter is deprecated in " -"Python 3.12; use the *onexc* parameter instead." -msgstr "" - -msgid ":mod:`ssl` options and protocols:" -msgstr "" - -msgid ":class:`ssl.SSLContext` without protocol argument is deprecated." -msgstr "" - -msgid "" -":class:`ssl.SSLContext`: :meth:`~ssl.SSLContext.set_npn_protocols` and :meth:" -"`!selected_npn_protocol` are deprecated: use ALPN instead." -msgstr "" - -msgid "``ssl.OP_NO_SSL*`` options" -msgstr "" - -msgid "``ssl.OP_NO_TLS*`` options" -msgstr "" - -msgid "``ssl.PROTOCOL_SSLv3``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLS``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1_1``" -msgstr "" - -msgid "``ssl.PROTOCOL_TLSv1_2``" -msgstr "" - -msgid "``ssl.TLSVersion.SSLv3``" -msgstr "" - -msgid "``ssl.TLSVersion.TLSv1``" -msgstr "" - -msgid "``ssl.TLSVersion.TLSv1_1``" -msgstr "" - -msgid ":mod:`threading` methods:" -msgstr "" - -msgid "" -":meth:`!threading.Condition.notifyAll`: use :meth:`~threading.Condition." -"notify_all`." -msgstr "" - -msgid ":meth:`!threading.Event.isSet`: use :meth:`~threading.Event.is_set`." -msgstr "" - -msgid "" -":meth:`!threading.Thread.isDaemon`, :meth:`threading.Thread.setDaemon`: use :" -"attr:`threading.Thread.daemon` attribute." -msgstr "" - -msgid "" -":meth:`!threading.Thread.getName`, :meth:`threading.Thread.setName`: use :" -"attr:`threading.Thread.name` attribute." -msgstr "" - -msgid ":meth:`!threading.currentThread`: use :meth:`threading.current_thread`." -msgstr "" - -msgid ":meth:`!threading.activeCount`: use :meth:`threading.active_count`." -msgstr "" - -msgid ":class:`typing.Text` (:gh:`92332`)." -msgstr "" - -msgid "" -"The internal class ``typing._UnionGenericAlias`` is no longer used to " -"implement :class:`typing.Union`. To preserve compatibility with users using " -"this private class, a compatibility shim will be provided until at least " -"Python 3.17. (Contributed by Jelle Zijlstra in :gh:`105499`.)" -msgstr "" - -msgid "" -":class:`unittest.IsolatedAsyncioTestCase`: it is deprecated to return a " -"value that is not ``None`` from a test case." -msgstr "" - -msgid "" -":mod:`urllib.parse` deprecated functions: :func:`~urllib.parse.urlparse` " -"instead" -msgstr "" - -msgid "``splitattr()``" -msgstr "" - -msgid "``splithost()``" -msgstr "" - -msgid "``splitnport()``" -msgstr "" - -msgid "``splitpasswd()``" -msgstr "" - -msgid "``splitport()``" -msgstr "" - -msgid "``splitquery()``" -msgstr "" - -msgid "``splittag()``" -msgstr "" - -msgid "``splittype()``" -msgstr "" - -msgid "``splituser()``" -msgstr "" - -msgid "``splitvalue()``" -msgstr "" - -msgid "``to_bytes()``" -msgstr "" - -msgid "" -":mod:`wsgiref`: ``SimpleHandler.stdout.write()`` should not do partial " -"writes." -msgstr "" - -msgid "" -":mod:`xml.etree.ElementTree`: Testing the truth value of an :class:`~xml." -"etree.ElementTree.Element` is deprecated. In a future release it will always " -"return ``True``. Prefer explicit ``len(elem)`` or ``elem is not None`` tests " -"instead." -msgstr "" - -msgid "" -":func:`sys._clear_type_cache` is deprecated: use :func:`sys." -"_clear_internal_caches` instead." -msgstr "" - -msgid "Soft deprecations" -msgstr "" - -msgid "There are no plans to remove :term:`soft deprecated` APIs." -msgstr "" - -msgid "" -"Using ``'F'`` and ``'D'`` format type codes of the :mod:`struct` module now " -"are :term:`soft deprecated` in favor of two-letter forms ``'Zf'`` and " -"``'Zd'``. (Contributed by Sergey B Kirpichev in :gh:`121249`.)" -msgstr "" - -msgid "C API changes" -msgstr "" - -msgid "" -"Add :c:func:`PyArg_ParseArray` and :c:func:`PyArg_ParseArrayAndKeywords` " -"functions to parse arguments of functions using the :c:macro:`METH_FASTCALL` " -"calling convention. (Contributed by Victor Stinner in :gh:`144175`.)" -msgstr "" - -msgid "Add the following functions for the new :class:`frozendict` type:" -msgstr "" - -msgid ":c:func:`PyAnyDict_Check`" -msgstr "" - -msgid ":c:func:`PyAnyDict_CheckExact`" -msgstr "" - -msgid ":c:func:`PyFrozenDict_Check`" -msgstr "" - -msgid ":c:func:`PyFrozenDict_CheckExact`" -msgstr "" - -msgid ":c:func:`PyFrozenDict_New`" -msgstr "" - -msgid "(Contributed by Victor Stinner in :gh:`141510`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyObject_CallFinalizerFromDealloc` function to the limited C " -"API. (Contributed by Victor Stinner in :gh:`146063`.)" -msgstr "" - -msgid "" -"Add :c:func:`PySys_GetAttr`, :c:func:`PySys_GetAttrString`, :c:func:" -"`PySys_GetOptionalAttr`, and :c:func:`PySys_GetOptionalAttrString` functions " -"as replacements for :c:func:`PySys_GetObject`. (Contributed by Serhiy " -"Storchaka in :gh:`108512`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_Unicode_GET_CACHED_HASH` to get the cached hash of a " -"string. See the documentation for caveats. (Contributed by Petr Viktorin in :" -"gh:`131510`.)" -msgstr "" - -msgid "" -"Add API for checking an extension module's ABI compatibility: :c:data:" -"`Py_mod_abi`, :c:func:`PyABIInfo_Check`, and :c:macro:`PyABIInfo_VAR`. " -"(Contributed by Petr Viktorin in :gh:`137210`.)" -msgstr "" - -msgid "" -"Implement :pep:`782`, the :ref:`PyBytesWriter API `. Add " -"functions:" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Create`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Discard`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Finish`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_FinishWithPointer`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_FinishWithSize`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Format`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_GetData`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_GetSize`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Grow`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_GrowAndUpdatePointer`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_Resize`" -msgstr "" - -msgid ":c:func:`PyBytesWriter_WriteBytes`" -msgstr "" - -msgid "(Contributed by Victor Stinner in :gh:`129813`.)" -msgstr "" - -msgid "" -":c:type:`PyCriticalSection` and related functions are added to the Stable " -"ABI." -msgstr "" - -msgid "(Contributed in :gh:`149227`.)" -msgstr "" - -msgid "" -"Add a new :c:func:`PyImport_CreateModuleFromInitfunc` C API for creating a " -"module from a *spec* and *initfunc*. (Contributed by Itamar Oren in :gh:" -"`116146`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyTuple_FromArray` to create a :class:`tuple` from an array. " -"(Contributed by Victor Stinner in :gh:`111489`.)" -msgstr "" - -msgid "" -"Add a new module export hook, :c:func:`PyModExport_* " -"`." -msgstr "" - -msgid "(Contributed by Petr Viktorin in :pep:`793` and :gh:`140550`.)" -msgstr "" - -msgid "" -"Add functions that are guaranteed to be safe for use in :c:member:" -"`~PyTypeObject.tp_traverse` handlers: :c:func:" -"`PyObject_GetTypeData_DuringGC`, :c:func:`PyObject_GetItemData_DuringGC`, :c:" -"func:`PyType_GetModuleState_DuringGC`, :c:func:" -"`PyModule_GetState_DuringGC`, :c:func:`PyModule_GetToken_DuringGC`, :c:func:" -"`PyType_GetBaseByToken_DuringGC`, :c:func:`PyType_GetModule_DuringGC`, :c:" -"func:`PyType_GetModuleByToken_DuringGC`. (Contributed by Petr Viktorin in :" -"gh:`145925`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyObject_Dump` to dump an object to ``stderr``. It should only " -"be used for debugging. (Contributed by Victor Stinner in :gh:`141070`.)" -msgstr "" - -msgid "" -"Implement :pep:`820`: ``PySlot`` -- Unified slot system for the C API. See :" -"ref:`capi-slots` for documentation." -msgstr "" - -msgid "This adds:" -msgstr "" - -msgid "The :c:type:`PySlot` struct;" -msgstr "" - -msgid "the :c:func:`PyType_FromSlots` function;" -msgstr "" - -msgid "" -"new slot IDs: :c:macro:`Py_slot_end`, :c:macro:`Py_slot_invalid`; :c:macro:" -"`Py_slot_subslots`, :c:macro:`Py_tp_slots`, :c:macro:`Py_mod_slots`; :c:" -"macro:`Py_tp_name`, :c:macro:`Py_tp_basicsize`, :c:macro:" -"`Py_tp_extra_basicsize`, :c:macro:`Py_tp_itemsize`, :c:macro:`Py_tp_flags`, :" -"c:macro:`Py_tp_metaclass`, :c:macro:`Py_tp_module`;" -msgstr "" - -msgid "" -"convenience macros: :c:macro:`PySlot_DATA`, :c:macro:`PySlot_FUNC`, :c:macro:" -"`PySlot_SIZE`, :c:macro:`PySlot_INT64`, :c:macro:`PySlot_UINT64`, :c:macro:" -"`PySlot_STATIC_DATA`, :c:macro:`PySlot_END`, :c:macro:`PySlot_PTR`, :c:macro:" -"`PySlot_PTR_STATIC`." -msgstr "" - -msgid "" -"The :c:func:`PyModule_FromSlotsAndSpec` function and ``PyModExport`` :ref:" -"`module export hook ` also use the new :c:type:`!" -"PySlot` struct." -msgstr "" - -msgid "These following functions are :term:`soft deprecated`:" -msgstr "" - -msgid ":c:func:`PyType_FromSpec`" -msgstr "" - -msgid ":c:func:`PyType_FromSpecWithBases`" -msgstr "" - -msgid ":c:func:`PyType_FromModuleAndSpec`" -msgstr "" - -msgid ":c:func:`PyType_FromMetaclass`" -msgstr "" - -msgid ":c:func:`PyModule_FromDefAndSpec`" -msgstr "" - -msgid ":c:func:`PyModule_FromDefAndSpec2`" -msgstr "" - -msgid ":c:func:`PyModule_ExecDef`" -msgstr "" - -msgid "" -"The slots :c:macro:`Py_tp_bases` and :c:macro:`Py_tp_base` are now " -"equivalent: they can be set either to a single type or a tuple of types. " -"The :c:macro:`Py_tp_bases` slot is preferred; the other is ignored if both " -"are specified." -msgstr "" - -msgid "(Contributed by Petr Viktorin in :gh:`149044`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_ThreadState_SetStackProtection` and :c:func:" -"`PyUnstable_ThreadState_ResetStackProtection` functions to set the stack " -"protection base address and stack protection size of a Python thread state. " -"(Contributed by Victor Stinner in :gh:`139653`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_SetImmortal` C API function to mark objects as :term:" -"`immortal`. (Contributed by Kumar Aditya in :gh:`143300`.)" -msgstr "" - -msgid "" -"Restore private provisional ``_Py_InitializeMain()`` function removed in " -"Python 3.14. (Contributed by Victor Stinner in :gh:`142417`.)" -msgstr "" - -msgid "" -"Add :c:func:`PyUnstable_DumpTraceback` and :c:func:" -"`PyUnstable_DumpTracebackThreads` functions to output Python stacktraces. " -"(Contributed by Alex Malyshev in :gh:`145559`.)" -msgstr "" - -msgid "Changed C APIs" -msgstr "" - -msgid "" -"If the :c:macro:`Py_TPFLAGS_MANAGED_DICT` or :c:macro:" -"`Py_TPFLAGS_MANAGED_WEAKREF` flag is set then :c:macro:`Py_TPFLAGS_HAVE_GC` " -"must be set too. (Contributed by Sergey Miryanov in :gh:`134786`.)" -msgstr "" - -msgid "" -":c:macro:`PyDateTime_IMPORT` is now thread safe. Code that directly checks " -"``PyDateTimeAPI`` for ``NULL`` should be updated to call :c:macro:" -"`PyDateTime_IMPORT` instead. (Contributed by Kumar Aditya in :gh:`141563`.)" -msgstr "" - -msgid "Removed C APIs" -msgstr "" - -msgid "Remove deprecated ``PyUnicode`` functions:" -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsDecodedObject`: Use :c:func:`PyCodec_Decode` instead." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsDecodedUnicode`: Use :c:func:`PyCodec_Decode` instead; " -"note that some codecs (for example, \"base64\") may return a type other " -"than :class:`str`, such as :class:`bytes`." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsEncodedObject`: Use :c:func:`PyCodec_Encode` instead." -msgstr "" - -msgid "" -":c:func:`!PyUnicode_AsEncodedUnicode`: Use :c:func:`PyCodec_Encode` instead; " -"note that some codecs (for example, \"base64\") may return a type other " -"than :class:`bytes`, such as :class:`str`." -msgstr "" - -msgid "(Contributed by Stan Ulbrych in :gh:`133612`.)" -msgstr "" - -msgid "" -":c:func:`!PyImport_ImportModuleNoBlock`: deprecated alias of :c:func:" -"`PyImport_ImportModule`. (Contributed by Bénédikt Tran in :gh:`133644`.)" -msgstr "" - -msgid "" -":c:func:`!PyWeakref_GetObject` and :c:macro:`!PyWeakref_GET_OBJECT`: use :c:" -"func:`PyWeakref_GetRef` instead. The |pythoncapi_compat_project| can be used " -"to get :c:func:`!PyWeakref_GetRef` on Python 3.12 and older. (Contributed by " -"Bénédikt Tran in :gh:`133644`.)" -msgstr "" - -msgid "" -"Remove deprecated :c:func:`!PySys_ResetWarnOptions`. Clear :data:`sys." -"warnoptions` and :data:`!warnings.filters` instead." -msgstr "" - -msgid "(Contributed by Nikita Sobolev in :gh:`138886`.)" -msgstr "" - -msgid "" -"The following functions are removed in favor of :c:func:`PyConfig_Get`. The |" -"pythoncapi_compat_project| can be used to get :c:func:`!PyConfig_Get` on " -"Python 3.13 and older." -msgstr "" - -msgid "Python initialization functions:" -msgstr "" - -msgid "" -":c:func:`!Py_GetExecPrefix`: use :c:func:`PyConfig_Get(\"base_exec_prefix\") " -"` (:data:`sys.base_exec_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"exec_prefix\") ` (:data:`sys.exec_prefix`) if :" -"ref:`virtual environments ` need to be handled." -msgstr "" - -msgid "" -":c:func:`!Py_GetPath`: use :c:func:`PyConfig_Get(\"module_search_paths\") " -"` (:data:`sys.path`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetPrefix`: use :c:func:`PyConfig_Get(\"base_prefix\") " -"` (:data:`sys.base_prefix`) instead. Use :c:func:" -"`PyConfig_Get(\"prefix\") ` (:data:`sys.prefix`) if :ref:" -"`virtual environments ` need to be handled." -msgstr "" - -msgid "" -":c:func:`!Py_GetProgramFullPath`: use :c:func:`PyConfig_Get(\"executable\") " -"` (:data:`sys.executable`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetProgramName`: use :c:func:`PyConfig_Get(\"executable\") " -"` (:data:`sys.executable`) instead." -msgstr "" - -msgid "" -":c:func:`!Py_GetPythonHome`: use :c:func:`PyConfig_Get(\"home\") " -"` or the :envvar:`PYTHONHOME` environment variable instead." -msgstr "" - -msgid "(Contributed by Bénédikt Tran in :gh:`133644`.)" -msgstr "" - -msgid "Deprecated C APIs" -msgstr "" - -msgid "" -"Deprecate :pep:`456` support for providing an external definition of the " -"string hashing scheme. Removal is scheduled for Python 3.19." -msgstr "" - -msgid "" -"Previously, embedders could define :c:macro:`Py_HASH_ALGORITHM` to be " -"``Py_HASH_EXTERNAL`` to indicate that the hashing scheme was provided " -"externally but this feature was undocumented, untested and most likely " -"unused." -msgstr "" - -msgid "(Contributed by Bénédikt Tran in :gh:`141226`.)" -msgstr "" - -msgid "" -"For unsigned integer formats in :c:func:`PyArg_ParseTuple`, accepting Python " -"integers with value that is larger than the maximal value for the C type or " -"less than the minimal value for the corresponding signed integer type of the " -"same size is now deprecated. (Contributed by Serhiy Storchaka in :gh:" -"`132629`.)" -msgstr "" - -msgid "" -":c:func:`PyBytes_FromStringAndSize(NULL, len) ` " -"and :c:func:`_PyBytes_Resize` are :term:`soft deprecated`, use the :c:type:" -"`PyBytesWriter` API instead. (Contributed by Victor Stinner in :gh:`129813`.)" -msgstr "" - -msgid "" -":c:func:`!_PyObject_CallMethodId`, :c:func:`!_PyObject_GetAttrId` and :c:" -"func:`!_PyUnicode_FromId` are deprecated since 3.15 and will be removed in " -"3.20. Instead, use :c:func:`PyUnicode_InternFromString()` and cache the " -"result in the module state, then call :c:func:`PyObject_CallMethod` or :c:" -"func:`PyObject_GetAttr`. (Contributed by Victor Stinner in :gh:`141049`.)" -msgstr "" - -msgid "" -"Deprecate :c:member:`~PyComplexObject.cval` field of the :c:type:" -"`PyComplexObject` type. Use :c:func:`PyComplex_AsCComplex` and :c:func:" -"`PyComplex_FromCComplex` to convert a Python complex number to/from the C :c:" -"type:`Py_complex` representation. (Contributed by Sergey B Kirpichev in :gh:" -"`128813`.)" -msgstr "" - -msgid "" -"Functions :c:func:`_Py_c_sum`, :c:func:`_Py_c_diff`, :c:func:`_Py_c_neg`, :c:" -"func:`_Py_c_prod`, :c:func:`_Py_c_quot`, :c:func:`_Py_c_pow` and :c:func:" -"`_Py_c_abs` are :term:`soft deprecated`. (Contributed by Sergey B Kirpichev " -"in :gh:`128813`.)" -msgstr "" - -msgid "" -":c:member:`~PyConfig.bytes_warning` is deprecated since 3.15 and will be " -"removed in 3.17. (Contributed by Nikita Sobolev in :gh:`136355`.)" -msgstr "" - -msgid "" -":c:macro:`!Py_INFINITY` macro is :term:`soft deprecated`, use the C11 " -"standard ```` :c:macro:`!INFINITY` instead. (Contributed by Sergey B " -"Kirpichev in :gh:`141004`.)" -msgstr "" - -msgid "The following macros are :term:`soft deprecated`:" -msgstr "" - -msgid ":c:macro:`Py_ALIGNED`: Prefer ``alignas`` instead." -msgstr "" - -msgid ":c:macro:`PY_FORMAT_SIZE_T`: Use ``\"z\"`` directly." -msgstr "" - -msgid "" -":c:macro:`Py_LL` and :c:macro:`Py_ULL`: Use standard suffixes, ``LL`` and " -"``ULL``." -msgstr "" - -msgid "" -":c:macro:`PY_LONG_LONG`, :c:macro:`PY_LLONG_MIN`, :c:macro:`PY_LLONG_MAX`, :" -"c:macro:`PY_ULLONG_MAX`, :c:macro:`PY_INT32_T`, :c:macro:`PY_UINT32_T`, :c:" -"macro:`PY_INT64_T`, :c:macro:`PY_UINT64_T`, :c:macro:`PY_SIZE_MAX`: Use C99 " -"types/limits." -msgstr "" - -msgid ":c:macro:`Py_UNICODE_SIZE`: Use ``sizeof(wchar_t)`` directly." -msgstr "" - -msgid ":c:macro:`Py_VA_COPY`: Use ``va_copy`` directly." -msgstr "" - -msgid "" -"The macro :c:macro:`Py_UNICODE_WIDE`, which was scheduled for removal, is :" -"term:`soft deprecated` instead." -msgstr "" - -msgid "(Contributed by Petr Viktorin in :gh:`146175`.)" -msgstr "" - -msgid "" -":c:macro:`!Py_MATH_El` and :c:macro:`!Py_MATH_PIl` are deprecated since 3.15 " -"and will be removed in 3.20. (Contributed by Sergey B Kirpichev in :gh:" -"`141004`.)" -msgstr "" - -msgid "Build changes" -msgstr "" - -msgid "" -"Removed implicit fallback to the bundled copy of the ``libmpdec`` library. " -"Now this should be explicitly enabled with :option:`--with-system-libmpdec` " -"set to ``no`` or with :option:`!--without-system-libmpdec`. (Contributed by " -"Sergey B Kirpichev in :gh:`115119`.)" -msgstr "" - -msgid "" -"The new configure option :option:`--with-missing-stdlib-config=FILE` allows " -"distributors to pass a `JSON `_ " -"configuration file containing custom error messages for :term:`standard " -"library` modules that are missing or packaged separately. (Contributed by " -"Stan Ulbrych and Petr Viktorin in :gh:`139707`.)" -msgstr "" - -msgid "" -"The new configure option :option:`--with-pymalloc-hugepages` enables huge " -"page support for :ref:`pymalloc ` arenas. When enabled, arena size " -"increases to 2 MiB and allocation uses ``MAP_HUGETLB`` (Linux) or " -"``MEM_LARGE_PAGES`` (Windows) with automatic fallback to regular pages. On " -"Windows, use ``build.bat --pymalloc-hugepages``. At runtime, huge pages must " -"be explicitly enabled by setting the :envvar:`PYTHON_PYMALLOC_HUGEPAGES` " -"environment variable to ``1``." -msgstr "" - -msgid "" -"Annotating anonymous mmap usage is now supported if the Linux kernel " -"supports :manpage:`PR_SET_VMA_ANON_NAME ` (Linux 5.17 or " -"newer). Annotations are visible in ``/proc//maps`` if the kernel " -"supports the feature and :option:`-X dev <-X>` is passed to Python, or " -"Python is built in :ref:`debug mode `. (Contributed by Donghee " -"Na in :gh:`141770`.)" -msgstr "" - -msgid "" -"CPython is now built with frame pointers enabled by default (:pep:`831`). " -"Pass :option:`--without-frame-pointers` to opt out." -msgstr "" - -msgid "" -"Authors of C extensions and native libraries built with custom build systems " -"should ensure the unwind chain is intact. This is usually done by adding ``-" -"fno-omit-frame-pointer`` and similar flags to ``CFLAGS``. See :option:`--" -"without-frame-pointers` documentation for the specific flags Python uses." -msgstr "" - -msgid "" -"(Contributed by Pablo Galindo Salgado and Savannah Ostrowski in :gh:" -"`149201`.)" -msgstr "" - -msgid "" -"64-bit builds using Visual Studio 2026 (MSVC 18) may now use the new :ref:" -"`tail-calling interpreter `. Results on " -"Visual Studio 18.1.1 report between `15-20% `__ " -"speedup on the geometric mean of pyperformance on Windows x86-64 over the " -"switch-case interpreter on an AMD Ryzen 7 5800X. We have observed speedups " -"ranging from 14% for large pure-Python libraries to 40% for long-running " -"small pure-Python scripts on Windows. This was made possible by a new " -"feature introduced in MSVC 18, which the official Windows 64-bit binaries on " -"python.org__ now use. (Contributed by Chris Eibl, Ken Jin, and Brandt Bucher " -"in :gh:`143068`. Special thanks to Steve Dower, and the MSVC team including " -"Hulon Jenkins.)" -msgstr "" - -msgid "Porting to Python 3.15" -msgstr "" - -msgid "" -"This section lists previously described changes and other bugfixes that may " -"require changes to your code." -msgstr "" - -msgid ":class:`sqlite3.Connection` APIs have been cleaned up." -msgstr "" - -msgid "" -"All parameters of :func:`sqlite3.connect` except *database* are now keyword-" -"only." -msgstr "" - -msgid "" -"The first three parameters of methods :meth:`~sqlite3.Connection." -"create_function` and :meth:`~sqlite3.Connection.create_aggregate` are now " -"positional-only." -msgstr "" - -msgid "" -"The first parameter of methods :meth:`~sqlite3.Connection.set_authorizer`, :" -"meth:`~sqlite3.Connection.set_progress_handler` and :meth:`~sqlite3." -"Connection.set_trace_callback` is now positional-only." -msgstr "" - -msgid "(Contributed by Serhiy Storchaka in :gh:`133595`.)" -msgstr "" - -msgid "" -":data:`resource.RLIM_INFINITY` is now always positive. Passing a negative " -"integer value that corresponded to its old value (such as ``-1`` or ``-3``, " -"depending on platform) to :func:`resource.setrlimit` and :func:`resource." -"prlimit` is now deprecated. (Contributed by Serhiy Storchaka in :gh:" -"`137044`.)" -msgstr "" - -msgid "" -":meth:`mmap.mmap.resize` has been removed on platforms that don't support " -"the underlying syscall, instead of raising a :exc:`SystemError`." -msgstr "" - -msgid "" -"A resource warning is now emitted for an unclosed :func:`xml.etree." -"ElementTree.iterparse` iterator if it opened a file. Use its :meth:`!close` " -"method or the :func:`contextlib.closing` context manager to close it. " -"(Contributed by Osama Abdelkader and Serhiy Storchaka in :gh:`140601`.)" -msgstr "" - -msgid "" -"If a short option and a single-dash long option are passed to :meth:" -"`argparse.ArgumentParser.add_argument`, *dest* is now inferred from the " -"single-dash long option. For example, in ``add_argument('-f', '-foo')``, " -"*dest* is now ``'foo'`` instead of ``'f'``. Pass an explicit *dest* argument " -"to preserve the old behavior. (Contributed by Serhiy Storchaka in :gh:" -"`138697`.)" -msgstr "" - -msgid "" -"Padding of input no longer required in :func:`base64.urlsafe_b64decode`. " -"Pass a new argument ``padded=True`` or use :func:`base64.b64decode` with " -"argument ``altchars=b'-_'`` (this works with older Python versions) to make " -"padding required. (Contributed by Serhiy Storchaka in :gh:`73613`.)" -msgstr "" - -msgid "" -"Since :meth:`unittest.TestCase.assertWarns` and :meth:`unittest.TestCase." -"assertWarnsRegex` no longer swallow warnings that do not match the specified " -"category or regex, your tests may start leaking some warnings that were " -"previously masked. Use warning filters to silence them or additional :meth:`!" -"assertWarns*` to catch and check them. (Contributed by Serhiy Storchaka in :" -"gh:`143231`.)" -msgstr "" diff --git a/whatsnew/3.2.po b/whatsnew/3.2.po index 5422170..e303396 100644 --- a/whatsnew/3.2.po +++ b/whatsnew/3.2.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -82,10 +82,10 @@ msgstr "" 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." +"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 "" msgid "" @@ -190,8 +190,8 @@ msgid "PEP written by Steven Bethard." msgstr "" msgid "" -":ref:`upgrading-optparse-code` for details on the differences from :mod:" -"`optparse`." +":ref:`upgrading-optparse-code` for details on the differences " +"from :mod:`optparse`." msgstr "" msgid "PEP 391: Dictionary Based Configuration for Logging" @@ -207,19 +207,19 @@ msgid "" msgstr "" 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::" +"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 "" msgid "" "{\"version\": 1,\n" -" \"formatters\": {\"brief\": {\"format\": \"%(levelname)-8s: %(name)-15s: " -"%(message)s\"},\n" -" \"full\": {\"format\": \"%(asctime)s %(name)-15s " -"%(levelname)-8s %(message)s\"}\n" +" \"formatters\": {\"brief\": {\"format\": \"%(levelname)-8s: %(name)-15s: %" +"(message)s\"},\n" +" \"full\": {\"format\": \"%(asctime)s %(name)-15s %" +"(levelname)-8s %(message)s\"}\n" " },\n" " \"handlers\": {\"console\": {\n" " \"class\": \"logging.StreamHandler\",\n" @@ -270,12 +270,12 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -295,14 +295,15 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -332,8 +333,8 @@ msgstr "" msgid "" ":ref:`Code for computing prime numbers in parallel`, an example demonstrating :class:`~concurrent.futures." -"ProcessPoolExecutor`." +"example>`, an example " +"demonstrating :class:`~concurrent.futures.ProcessPoolExecutor`." msgstr "" msgid "PEP 3147: PYC Repository Directories" @@ -358,10 +359,11 @@ 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." +"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 "" msgid "" @@ -431,8 +433,8 @@ msgid "" msgstr "" msgid "" -"In Python itself, the tags are accessible from functions in the :mod:" -"`sysconfig` module::" +"In Python itself, the tags are accessible from functions in " +"the :mod:`sysconfig` module::" msgstr "" msgid "" @@ -534,11 +536,11 @@ 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:`~object.__missing__` method for unknown keys::" +"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:`~object.__missing__` " +"method for unknown keys::" msgstr "" msgid "" @@ -564,15 +566,15 @@ msgid "" msgstr "" msgid "" -"(Suggested by Raymond Hettinger and implemented by Eric Smith in :issue:" -"`6081`.)" +"(Suggested by Raymond Hettinger and implemented by Eric Smith " +"in :issue:`6081`.)" msgstr "" 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 :data:`sys." -"flags` attribute:" +"interactive mode. The option can be introspected using " +"the :data:`sys.flags` attribute:" msgstr "" msgid "" @@ -589,11 +591,11 @@ msgstr "" 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:`~object.__getattr__` or :meth:`~object." -"__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::" +"created dynamically by :meth:`~object.__getattr__` " +"or :meth:`~object.__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 "" msgid "" @@ -614,10 +616,10 @@ msgid "" msgstr "" 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:" +"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 "" msgid "(Proposed and implemented by Mark Dickinson; :issue:`9337`.)" @@ -668,11 +670,11 @@ msgstr "" msgid "" ":ref:`Struct sequence types ` are now subclasses of " -"tuple. This means that C structures like those returned by :func:`os.stat`, :" -"func:`time.gmtime`, and :data:`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:" +"tuple. This means that C structures like those returned " +"by :func:`os.stat`, :func:`time.gmtime`, and :data:`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 "" msgid "" @@ -690,8 +692,8 @@ msgid "" msgstr "" msgid "" -"(Suggested by Barry Warsaw and implemented by Philip Jenvey in :issue:" -"`7301`.)" +"(Suggested by Barry Warsaw and implemented by Philip Jenvey " +"in :issue:`7301`.)" msgstr "" msgid "" @@ -703,10 +705,11 @@ msgid "" msgstr "" msgid "" -"A :exc:`ResourceWarning` is issued at interpreter shutdown if the :data:`gc." -"garbage` list isn't empty, and if :const:`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." +"A :exc:`ResourceWarning` is issued at interpreter shutdown if " +"the :data:`gc.garbage` list isn't empty, and " +"if :const:`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 "" msgid "" @@ -726,18 +729,18 @@ msgid "" msgstr "" msgid "" -"(Added by Antoine Pitrou and Georg Brandl in :issue:`10093` and :issue:" -"`477863`.)" +"(Added by Antoine Pitrou and Georg Brandl in :issue:`10093` " +"and :issue:`477863`.)" msgstr "" 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 :data:`sys.maxsize`. This makes *range* more interoperable with " -"lists::" +"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 :data:`sys.maxsize`. This makes *range* more " +"interoperable with lists::" msgstr "" msgid "" @@ -783,10 +786,10 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -812,17 +815,18 @@ msgstr "" 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." +"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 "" 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." +"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 "" msgid "" @@ -839,36 +843,36 @@ msgid "" msgstr "" msgid "" -"Headers with unencoded non-ASCII bytes are deemed to be :rfc:`2047`\\ -" -"encoded using the *unknown-8bit* character set." +"Headers with unencoded non-ASCII bytes are deemed to be :rfc:`2047`\\ " +"-encoded using the *unknown-8bit* character set." msgstr "" 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*." +"input used to build the model, including message bodies with " +"a :mailheader:`Content-Transfer-Encoding` of *8bit*." msgstr "" 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." +"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 "" msgid "" -"(Proposed and implemented by R. David Murray, :issue:`4661` and :issue:" -"`10321`.)" +"(Proposed and implemented by R. David Murray, :issue:`4661` " +"and :issue:`10321`.)" msgstr "" msgid "elementtree" msgstr "" msgid "" -"The :mod:`xml.etree.ElementTree` package and its :mod:`!xml.etree." -"cElementTree` counterpart have been updated to version 1.3." +"The :mod:`xml.etree.ElementTree` package and its :mod:`!" +"xml.etree.cElementTree` counterpart have been updated to version 1.3." msgstr "" msgid "Several new and useful functions and methods have been added:" @@ -924,9 +928,9 @@ msgid "" msgstr "" msgid "" -"For details of the update, see `Introducing ElementTree `_ on " -"Fredrik Lundh's website." +"For details of the update, see `Introducing ElementTree `_ on Fredrik Lundh's website." msgstr "" msgid "(Contributed by Florent Xicluna and Fredrik Lundh, :issue:`6472`.)" @@ -958,19 +962,19 @@ msgstr "" 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`.)" +"Baker, Miki Tebeka, and Nick Coghlan; see `recipe 498245 `_\\, " +"`recipe 577479 `_\\, :issue:`10586`, and :issue:`10593`.)" msgstr "" msgid "" "The :deco:`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:`~function." -"__annotations__` if defined. And now it also gracefully skips over missing " -"attributes such as :attr:`~function.__doc__` which might not be defined for " -"the wrapped callable." +"functions to be introspected. It also " +"copies :attr:`~function.__annotations__` if defined. And now it also " +"gracefully skips over missing attributes such as :attr:`~function.__doc__` " +"which might not be defined for the wrapped callable." msgstr "" msgid "" @@ -979,19 +983,20 @@ msgid "" msgstr "" msgid "" -"(By Nick Coghlan and Terrence Cole; :issue:`9567`, :issue:`3445`, and :issue:" -"`8814`.)" +"(By Nick Coghlan and Terrence Cole; :issue:`9567`, :issue:`3445`, " +"and :issue:`8814`.)" msgstr "" msgid "" -"To help write classes with rich comparison methods, a new decorator :deco:" -"`functools.total_ordering` will use existing equality and inequality methods " -"to fill in the remaining methods." +"To help write classes with rich comparison methods, a new " +"decorator :deco:`functools.total_ordering` will use existing equality and " +"inequality methods to fill in the remaining methods." msgstr "" msgid "" -"For example, supplying *__eq__* and *__lt__* will enable :deco:`~functools." -"total_ordering` to fill-in *__le__*, *__gt__* and *__ge__*::" +"For example, supplying *__eq__* and *__lt__* will " +"enable :deco:`~functools.total_ordering` to fill-in *__le__*, *__gt__* and " +"*__ge__*::" msgstr "" msgid "" @@ -1049,17 +1054,18 @@ msgstr "" 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:" +"en.wikipedia.org/wiki/Saturation_arithmetic>`_ 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 "" 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." +"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 "" msgid "" @@ -1074,9 +1080,10 @@ msgid "" msgstr "" 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:" +"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 "" msgid "threading" @@ -1185,17 +1192,17 @@ msgid "" ">>> import datetime as dt\n" "\n" ">>> dt.datetime.now(dt.timezone.utc)\n" -"datetime.datetime(2010, 12, 8, 21, 4, 2, 923754, tzinfo=datetime.timezone." -"utc)\n" +"datetime.datetime(2010, 12, 8, 21, 4, 2, 923754, " +"tzinfo=datetime.timezone.utc)\n" "\n" ">>> dt.datetime.strptime(\"01/01/2000 12:00 +0000\", \"%m/%d/%Y %H:%M %z\")\n" "datetime.datetime(2000, 1, 1, 12, 0, tzinfo=datetime.timezone.utc)" msgstr "" 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." +"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 "" msgid "" @@ -1211,9 +1218,9 @@ msgid "" msgstr "" msgid "" -"Starting with Py3.2, use of the century guessing heuristic will emit a :exc:" -"`DeprecationWarning`. Instead, it is recommended that :data:`!time." -"accept2dyear` be set to ``False`` so that large date ranges can be used " +"Starting with Py3.2, use of the century guessing heuristic will emit " +"a :exc:`DeprecationWarning`. Instead, it is recommended that :data:`!" +"time.accept2dyear` be set to ``False`` so that large date ranges can be used " "without guesswork::" msgstr "" @@ -1236,15 +1243,15 @@ msgstr "" msgid "" "Several functions now have significantly expanded date ranges. When :data:`!" "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." +"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 "" msgid "" -"(Contributed by Alexander Belopolsky and Victor Stinner in :issue:" -"`1289118`, :issue:`5094`, :issue:`6641`, :issue:`2706`, :issue:`1777412`, :" -"issue:`8013`, and :issue:`10827`.)" +"(Contributed by Alexander Belopolsky and Victor Stinner " +"in :issue:`1289118`, :issue:`5094`, :issue:`6641`, :issue:`2706`, :issue:`1777412`, :issue:`8013`, " +"and :issue:`10827`.)" msgstr "" msgid "math" @@ -1300,8 +1307,8 @@ msgid "abc" msgstr "" msgid "" -"The :mod:`abc` module now supports :deco:`~abc.abstractclassmethod` and :" -"deco:`~abc.abstractstaticmethod`." +"The :mod:`abc` module now supports :deco:`~abc.abstractclassmethod` " +"and :deco:`~abc.abstractstaticmethod`." msgstr "" msgid "" @@ -1365,9 +1372,9 @@ msgstr "" msgid "" "When writing a :meth:`~object.__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." +"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 "" msgid "" @@ -1397,8 +1404,8 @@ msgid "logging" msgstr "" msgid "" -"In addition to dictionary-based configuration described above, the :mod:" -"`logging` package has many other improvements." +"In addition to dictionary-based configuration described above, " +"the :mod:`logging` package has many other improvements." msgstr "" msgid "" @@ -1411,34 +1418,34 @@ msgstr "" 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::" +"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 "" msgid "" ">>> from logging import basicConfig\n" -">>> basicConfig(style='%', format=\"%(name)s -> %(levelname)s: " -"%(message)s\")\n" +">>> basicConfig(style='%', format=\"%(name)s -> %(levelname)s: %" +"(message)s\")\n" ">>> basicConfig(style='{', format=\"{name} -> {levelname} {message}\")\n" ">>> basicConfig(style='$', format=\"$name -> $levelname: $message\")" msgstr "" 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 :" -"data:`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 :data:" -"`logging.raiseExceptions`. The new default handler is stored in :data:" -"`logging.lastResort`." +"default configuration using a :class:`~logging.StreamHandler` directed " +"to :data:`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 :data:`logging.raiseExceptions`. The new default handler is stored " +"in :data:`logging.lastResort`." msgstr "" 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``." +"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 "" msgid "" @@ -1451,15 +1458,16 @@ msgid "csv" msgstr "" 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``." +"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 "" msgid "" -"The :class:`csv.DictWriter` has a new method, :meth:`~csv.DictWriter." -"writeheader` for writing-out an initial row to document the field names::" +"The :class:`csv.DictWriter` has a new " +"method, :meth:`~csv.DictWriter.writeheader` for writing-out an initial row " +"to document the field names::" msgstr "" msgid "" @@ -1483,14 +1491,15 @@ msgid "contextlib" msgstr "" 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." +"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 "" msgid "" -"As a convenience, this new functionality is used by :deco:`~contextlib." -"contextmanager` so that no extra effort is needed to support both roles." +"As a convenience, this new functionality is used " +"by :deco:`~contextlib.contextmanager` so that no extra effort is needed to " +"support both roles." msgstr "" msgid "" @@ -1573,10 +1582,10 @@ msgid "" msgstr "" msgid "" -"Some of the hashing details are exposed through a new attribute, :data:`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:" +"Some of the hashing details are exposed through a new " +"attribute, :data:`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 "" msgid "" @@ -1591,27 +1600,29 @@ msgstr "" 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`)." +"directly so there in no longer a need to use " +"the :meth:`~decimal.Decimal.from_float` method (:issue:`8257`)." msgstr "" 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`)." +"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 "" 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`):" +"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 "" 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`)." +"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 "" msgid "(Contributed by Mark Dickinson and Raymond Hettinger.)" @@ -1629,9 +1640,9 @@ msgstr "" msgid "" ">>> from ftplib import FTP\n" ">>> with FTP(\"ftp1.at.proftpd.org\") as ftp:\n" -" ftp.login()\n" -" ftp.dir()\n" -"\n" +"... ftp.login()\n" +"... ftp.dir()\n" +"...\n" "'230 Anonymous login ok, restrictions apply.'\n" "dr-xr-xr-x 9 ftp ftp 154 May 6 10:43 .\n" "dr-xr-xr-x 9 ftp ftp 154 May 6 10:43 ..\n" @@ -1640,8 +1651,8 @@ msgid "" msgstr "" msgid "" -"Other file-like objects such as :class:`mmap.mmap` and :func:`fileinput." -"input` also grew auto-closing context managers::" +"Other file-like objects such as :class:`mmap.mmap` " +"and :func:`fileinput.input` also grew auto-closing context managers::" msgstr "" msgid "" @@ -1669,23 +1680,23 @@ msgid "popen" msgstr "" msgid "" -"The :func:`os.popen` and :func:`subprocess.Popen` functions now support :" -"keyword:`with` statements for auto-closing of the file descriptors." +"The :func:`os.popen` and :func:`subprocess.Popen` functions now " +"support :keyword:`with` statements for auto-closing of the file descriptors." msgstr "" msgid "" -"(Contributed by Antoine Pitrou and Brian Curtin in :issue:`7461` and :issue:" -"`10554`.)" +"(Contributed by Antoine Pitrou and Brian Curtin in :issue:`7461` " +"and :issue:`10554`.)" msgstr "" msgid "select" msgstr "" msgid "" -"The :mod:`select` module now exposes a new, constant attribute, :const:" -"`~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." +"The :mod:`select` module now exposes a new, constant " +"attribute, :const:`~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 "" msgid "(Available on Unix systems. Patch by Sébastien Sablé in :issue:`9862`)" @@ -1695,15 +1706,15 @@ msgid "gzip and zipfile" msgstr "" 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." +":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 "" msgid "" -"The :mod:`gzip` module also gains the :func:`~gzip.compress` and :func:" -"`~gzip.decompress` functions for easier in-memory compression and " +"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 "" @@ -1717,9 +1728,10 @@ msgstr "" 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." +"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 "" msgid "(Patch submitted by Nir Aides in :issue:`7610`.)" @@ -1739,9 +1751,9 @@ 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``::" +"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 "" msgid "" @@ -1798,11 +1810,12 @@ msgstr "" 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``." +"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 "" msgid "" @@ -1827,9 +1840,9 @@ msgstr "" 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:" +"environment variables. The :mod:`os` module provides two new " +"functions, :func:`~os.fsencode` and :func:`~os.fsdecode`, for encoding and " +"decoding filenames:" msgstr "" msgid "" @@ -1860,8 +1873,8 @@ msgid "" msgstr "" msgid "" -"*copy_function*: is a callable that will be used to copy files. :func:" -"`shutil.copy2` is used by default." +"*copy_function*: is a callable that will be used to copy " +"files. :func:`shutil.copy2` is used by default." msgstr "" msgid "(Contributed by Tarek Ziadé.)" @@ -1876,11 +1889,11 @@ msgid "" msgstr "" 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)." +"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 "" msgid "" @@ -1922,10 +1935,10 @@ msgid "" msgstr "" 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." +"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 "" msgid "(Contributed by R. David Murray and Shashwat Anand; :issue:`8845`.)" @@ -1935,9 +1948,9 @@ msgid "html" msgstr "" 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:" +"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 "" msgid "socket" @@ -1997,8 +2010,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -2009,14 +2023,15 @@ msgstr "" msgid "" "The version of OpenSSL being used is now accessible using the module " -"attributes :const:`ssl.OPENSSL_VERSION` (a string), :const:`ssl." -"OPENSSL_VERSION_INFO` (a 5-tuple), and :const:`ssl.OPENSSL_VERSION_NUMBER` " -"(an integer)." +"attributes :const:`ssl.OPENSSL_VERSION` (a " +"string), :const:`ssl.OPENSSL_VERSION_INFO` (a 5-tuple), " +"and :const:`ssl.OPENSSL_VERSION_NUMBER` (an integer)." msgstr "" msgid "" -"(Contributed by Antoine Pitrou in :issue:`8850`, :issue:`1589`, :issue:" -"`8322`, :issue:`5639`, :issue:`4870`, :issue:`8484`, and :issue:`8321`.)" +"(Contributed by Antoine Pitrou " +"in :issue:`8850`, :issue:`1589`, :issue:`8322`, :issue:`5639`, :issue:`4870`, :issue:`8484`, " +"and :issue:`8321`.)" msgstr "" msgid "nntp" @@ -2030,14 +2045,14 @@ msgid "" msgstr "" 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." +"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 "" msgid "" -"(Contributed by Antoine Pitrou in :issue:`9360` and Andrew Vant in :issue:" -"`1926`.)" +"(Contributed by Antoine Pitrou in :issue:`9360` and Andrew Vant " +"in :issue:`1926`.)" msgstr "" msgid "certificates" @@ -2074,14 +2089,15 @@ msgid "" msgstr "" 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." +"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 "" msgid "" -"Support for certificate checking and HTTPS virtual hosts were added to :" -"class:`~http.client.HTTPSConnection`." +"Support for certificate checking and HTTPS virtual hosts were added " +"to :class:`~http.client.HTTPSConnection`." msgstr "" msgid "" @@ -2094,17 +2110,17 @@ msgid "" msgstr "" 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." +"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 "" 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`.)" +"incoming and outgoing traffic. (See work by Armin Ronacher " +"in :issue:`10980`.)" msgstr "" msgid "unittest" @@ -2133,14 +2149,16 @@ msgid "(Contributed by Michael Foord.)" msgstr "" msgid "" -"Experimentation at the interactive prompt is now easier because the :class:" -"`unittest.TestCase` class can now be instantiated without arguments:" +"Experimentation at the interactive prompt is now easier because " +"the :class:`unittest.TestCase` class can now be instantiated without " +"arguments:" msgstr "" 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::" +"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 "" msgid "" @@ -2178,12 +2196,13 @@ msgid "" msgstr "" msgid "" -"For example, :meth:`~unittest.TestCase.assertRegex` is the new name for :" -"meth:`!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." +"For example, :meth:`~unittest.TestCase.assertRegex` is the new name " +"for :meth:`!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 "" msgid "(Contributed by Raymond Hettinger and implemented by Ezio Melotti.)" @@ -2241,8 +2260,8 @@ msgstr "" msgid "" "The :meth:`!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." +"debug optical illusions where tests like " +"``TestCase().assertDictContainsSubset({'a':1, 'b':2}, {'a':1})`` would fail." msgstr "" msgid "random" @@ -2254,9 +2273,9 @@ msgid "" "``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`." +"n``. The functions and methods affected " +"are :func:`~random.randrange`, :func:`~random.randint`, :func:`~random.choice`, :func:`~random.shuffle` " +"and :func:`~random.sample`." msgstr "" msgid "(Contributed by Raymond Hettinger; :issue:`9025`.)" @@ -2293,9 +2312,9 @@ msgid "tempfile" msgstr "" msgid "" -"The :mod:`tempfile` module has a new context manager, :class:`~tempfile." -"TemporaryDirectory` which provides easy deterministic cleanup of temporary " -"directories::" +"The :mod:`tempfile` module has a new context " +"manager, :class:`~tempfile.TemporaryDirectory` which provides easy " +"deterministic cleanup of temporary directories::" msgstr "" msgid "" @@ -2310,9 +2329,9 @@ msgid "inspect" msgstr "" msgid "" -"The :mod:`inspect` module has a new function :func:`~inspect." -"getgeneratorstate` to easily identify the current state of a generator-" -"iterator::" +"The :mod:`inspect` module has a new " +"function :func:`~inspect.getgeneratorstate` to easily identify the current " +"state of a generator-iterator::" msgstr "" msgid "" @@ -2337,9 +2356,9 @@ msgstr "" 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::" +"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 "" msgid "" @@ -2376,10 +2395,11 @@ msgid "dis" msgstr "" 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::" +"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 "" msgid "" @@ -2603,8 +2623,8 @@ msgid "" msgstr "" msgid "" -":file:`pdb.py` now has a ``-c`` option that executes commands as given in a :" -"file:`.pdbrc` script file." +":file:`pdb.py` now has a ``-c`` option that executes commands as given in " +"a :file:`.pdbrc` script file." msgstr "" msgid "" @@ -2642,12 +2662,12 @@ msgstr "" 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." +"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 "" msgid "Config parsers gained a new API based on the mapping protocol::" @@ -2747,8 +2767,8 @@ msgid "" msgstr "" msgid "" -"The :func:`~urllib.parse.urlparse` function now supports `IPv6 `_ addresses as described in :rfc:`2732`:" +"The :func:`~urllib.parse.urlparse` function now supports `IPv6 `_ addresses as described in :rfc:`2732`:" msgstr "" msgid "" @@ -2769,8 +2789,8 @@ msgstr "" 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::" +"a string, then the *safe*, *encoding*, and *error* parameters are sent " +"to :func:`~urllib.parse.quote_plus` for encoding::" msgstr "" msgid "" @@ -2782,16 +2802,16 @@ msgid "" msgstr "" 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:" +"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 "" msgid "" -"(Work by Nick Coghlan, Dan Mahn, and Senthil Kumaran in :issue:`2987`, :" -"issue:`5468`, and :issue:`9873`.)" +"(Work by Nick Coghlan, Dan Mahn, and Senthil Kumaran " +"in :issue:`2987`, :issue:`5468`, and :issue:`9873`.)" msgstr "" msgid "mailbox" @@ -2812,8 +2832,8 @@ msgid "" msgstr "" msgid "" -"As expected, the :meth:`~mailbox.Mailbox.add` method for :class:`mailbox." -"Mailbox` objects now accepts binary input." +"As expected, the :meth:`~mailbox.Mailbox.add` method " +"for :class:`mailbox.Mailbox` objects now accepts binary input." msgstr "" msgid "" @@ -2823,18 +2843,18 @@ msgid "" msgstr "" 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*." +"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 "" 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." +"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 "" msgid "" @@ -2869,8 +2889,9 @@ msgid "" "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." +"in seconds. This parameter is tunable " +"through :func:`sys.setswitchinterval`. It currently defaults to 5 " +"milliseconds." msgstr "" msgid "" @@ -2941,8 +2962,8 @@ msgid "" msgstr "" msgid "" -"The `Timsort algorithm `_ used in :" -"meth:`list.sort` and :func:`sorted` now runs faster and uses less memory " +"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 " @@ -2974,11 +2995,12 @@ msgid "(Contributed by Antoine Pitrou; :issue:`3001`.)" msgstr "" msgid "" -"The fast-search algorithm in stringlib is now used by the :meth:`~str." -"split`, :meth:`~str.rsplit`, :meth:`~str.splitlines` and :meth:`~str." -"replace` methods on :class:`bytes`, :class:`bytearray` and :class:`str` " -"objects. Likewise, the algorithm is also used by :meth:`~str.rfind`, :meth:" -"`~str.rindex`, :meth:`~str.rsplit` and :meth:`~str.rpartition`." +"The fast-search algorithm in stringlib is now used by " +"the :meth:`~str.split`, :meth:`~str.rsplit`, :meth:`~str.splitlines` " +"and :meth:`~str.replace` methods on :class:`bytes`, :class:`bytearray` " +"and :class:`str` objects. Likewise, the algorithm is also used " +"by :meth:`~str.rfind`, :meth:`~str.rindex`, :meth:`~str.rsplit` " +"and :meth:`~str.rpartition`." msgstr "" msgid "(Patch by Florent Xicluna in :issue:`7622` and :issue:`7462`.)" @@ -2996,12 +3018,12 @@ 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:`~http." -"server.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." -"ConfigParser` loads multi-line arguments a bit faster (:issue:`7113` by " -"Łukasz Langa)." +"implementation (:issue:`1569291` by Alexander Belopolsky). " +"The :class:`~http.server.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.ConfigParser` loads multi-line arguments a bit " +"faster (:issue:`7113` by Łukasz Langa)." msgstr "" msgid "Unicode" @@ -3081,14 +3103,15 @@ msgid "**Source code** :source:`Lib/functools.py`." msgstr "" msgid "" -"(Contributed by Raymond Hettinger; see `rationale `_.)" +"(Contributed by Raymond Hettinger; see `rationale `_.)" msgstr "" 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`." +"module has an extensive section, :ref:`re-examples`. Likewise, " +"the :mod:`itertools` module continues to be updated with new :ref:`itertools-" +"recipes`." msgstr "" msgid "" @@ -3131,16 +3154,16 @@ msgid "Code Repository" msgstr "" msgid "" -"In addition to the existing Subversion code repository at https://svn.python." -"org there is now a `Mercurial `_ repository " -"at https://hg.python.org/\\ ." +"In addition to the existing Subversion code repository at https://" +"svn.python.org there is now a `Mercurial `_ " +"repository at https://hg.python.org/\\ ." msgstr "" 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." +"for members of the community to create and share external changesets. " +"See :pep:`385` for details." msgstr "" msgid "" @@ -3200,8 +3223,8 @@ msgid "" msgstr "" msgid "" -"(Suggested by Raymond Hettinger and implemented by Benjamin Peterson; :issue:" -"`9778`.)" +"(Suggested by Raymond Hettinger and implemented by Benjamin " +"Peterson; :issue:`9778`.)" msgstr "" msgid "" @@ -3235,10 +3258,10 @@ msgid "" msgstr "" 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`)." +"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 "" msgid "" @@ -3266,8 +3289,8 @@ msgid "" "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." +"https://www.activestate.com/activetcl/downloads>`_\\. See https://" +"www.python.org/download/mac/tcltk/ for additional details." msgstr "" msgid "Porting to Python 3.2" @@ -3286,23 +3309,25 @@ msgid "" msgstr "" 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." +"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 "" 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." +"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 "" 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." +"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 "" msgid "" @@ -3333,9 +3358,9 @@ msgstr "" 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`.)" +"to :meth:`array.tobytes() ` " +"and :meth:`array.frombytes() ` for clarity. The old " +"names have been deprecated. (See :issue:`8990`.)" msgstr "" msgid "``PyArg_Parse*()`` functions:" @@ -3362,18 +3387,18 @@ msgstr "" 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)``." +"reproduce Python 3.1 sequences, set the *version* argument to *1*, " +"``random.seed(s, version=1)``." msgstr "" 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." +"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 "" msgid "(Contributed by Georg Brandl; :issue:`5675`.)" @@ -3418,9 +3443,9 @@ msgid "" msgstr "" 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`." +"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 "" msgid "" @@ -3437,9 +3462,9 @@ msgid "" msgstr "" 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`)." +"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 "" msgid "(Contributed by Antoine Pitrou, :issue:`10711`.)" @@ -3456,8 +3481,8 @@ msgstr "" 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." +"APIs (such as :c:func:`PyEval_SaveThread` " +"and :c:func:`PyEval_RestoreThread`) should be used instead." msgstr "" msgid "" diff --git a/whatsnew/3.3.po b/whatsnew/3.3.po index 7688010..e2efde7 100644 --- a/whatsnew/3.3.po +++ b/whatsnew/3.3.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -96,8 +96,8 @@ msgid "C Accelerator for the :ref:`decimal ` module." msgstr "" msgid "" -"Better unicode handling in the :ref:`email ` module (:term:" -"`provisional `)." +"Better unicode handling in the :ref:`email ` module " +"(:term:`provisional `)." msgstr "" msgid "Security improvements:" @@ -141,8 +141,8 @@ msgstr "" 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`)" +"various third party approaches to namespace packages, as described " +"in :pep:`420`)" msgstr "" msgid ":pep:`420` - Implicit Namespace Packages" @@ -411,17 +411,19 @@ msgstr "" 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." +"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 "" 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:" +"constant from the :mod:`errno` module, you can catch the " +"adequate :exc:`OSError` subclass. The available subclasses are the " +"following:" msgstr "" msgid ":exc:`BlockingIOError`" @@ -696,10 +698,10 @@ msgstr "" msgid "" "Functions and class objects have a new :attr:`~definition.__qualname__` " "attribute representing the \"path\" from the module top-level to their " -"definition. For global functions and classes, this is the same as :attr:" -"`~definition.__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." +"definition. For global functions and classes, this is the same " +"as :attr:`~definition.__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 "" msgid "Example with (non-bound) methods::" @@ -790,10 +792,11 @@ msgstr "" 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 " +"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 "" @@ -839,10 +842,10 @@ msgstr "" 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." +"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 "" msgid ":pep:`421` - Adding sys.implementation" @@ -862,14 +865,15 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -891,11 +895,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -907,10 +911,11 @@ msgstr "" 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." +"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 "" msgid "" @@ -936,9 +941,9 @@ msgstr "" msgid "" "Beyond the expanse of what :mod:`importlib` now exposes, there are other " -"visible changes to import. The biggest is that :data:`sys.meta_path` and :" -"data:`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 " +"visible changes to import. The biggest is that :data:`sys.meta_path` " +"and :data:`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." @@ -954,9 +959,10 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -982,9 +988,9 @@ msgid "Some smaller changes made to the core Python language are:" msgstr "" 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." +"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 "" msgid "(Contributed by Ezio Melotti in :issue:`12753`.)" @@ -995,8 +1001,8 @@ msgstr "" 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`)" +"the equality of the underlying sequences generated by those range objects. " +"(:issue:`13201`)" msgstr "" msgid "" @@ -1016,9 +1022,9 @@ msgstr "" 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:`!clear` method " -"(:issue:`11388`)." +"``copy()`` and ``clear()`` (:issue:`10516`). " +"Consequently, :class:`~collections.abc.MutableSequence` now also defines " +"a :meth:`!clear` method (:issue:`11388`)." msgstr "" msgid "" @@ -1082,8 +1088,8 @@ msgid "" msgstr "" msgid "" -":func:`hash`: hash randomization is enabled by default, see :meth:`object." -"__hash__` and :envvar:`PYTHONHASHSEED`." +":func:`hash`: hash randomization is enabled by default, " +"see :meth:`object.__hash__` and :envvar:`PYTHONHASHSEED`." msgstr "" msgid "" @@ -1095,8 +1101,8 @@ msgstr "" 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`)." +"documentation sections for the individual builtin sequence types " +"(:issue:`4966`)." msgstr "" msgid "New Modules" @@ -1109,11 +1115,11 @@ 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:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :" -"const:`~signal.SIGABRT`, :const:`~signal.SIGBUS`, and :const:`~signal." -"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." +"fault handlers for " +"the :const:`~signal.SIGSEGV`, :const:`~signal.SIGFPE`, :const:`~signal.SIGABRT`, :const:`~signal.SIGBUS`, " +"and :const:`~signal.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 "" msgid "Example of a segmentation fault on Linux:" @@ -1170,8 +1176,8 @@ msgid "" msgstr "" msgid "" -":deco:`abc.abstractproperty` has been deprecated, use :deco:`property` with :" -"deco:`abc.abstractmethod` instead." +":deco:`abc.abstractproperty` has been deprecated, use :deco:`property` " +"with :deco:`abc.abstractmethod` instead." msgstr "" msgid "" @@ -1180,8 +1186,8 @@ msgid "" msgstr "" msgid "" -":deco:`abc.abstractstaticmethod` has been deprecated, use :deco:" -"`staticmethod` with :deco:`abc.abstractmethod` instead." +":deco:`abc.abstractstaticmethod` has been deprecated, " +"use :deco:`staticmethod` with :deco:`abc.abstractmethod` instead." msgstr "" msgid "(Contributed by Darren Dale in :issue:`11610`.)" @@ -1208,9 +1214,9 @@ msgstr "" 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`.)" +"the :mod:`base64` modern interface. For example, " +"``base64.b64decode('YWJj')`` returns ``b'abc'``. (Contributed by Catalin " +"Iacob in :issue:`13641`.)" msgstr "" msgid "binascii" @@ -1245,9 +1251,9 @@ msgstr "" 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." +"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 "" msgid "(Contributed by Nir Aides in :issue:`1625`.)" @@ -1263,9 +1269,9 @@ msgstr "" 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." +"``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 "" msgid "" @@ -1277,9 +1283,9 @@ msgstr "" 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." +"byte of an invalid byte sequence. For example, " +"``b'\\xff\\n'.decode('gb2312', 'replace')`` now returns a ``\\n`` after the " +"replacement character." msgstr "" msgid "(:issue:`12016`)" @@ -1314,15 +1320,15 @@ msgstr "" 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`.)" +"number of mappings as a single unit. (Written by Raymond Hettinger " +"for :issue:`11089`, made public in :issue:`11297`.)" msgstr "" 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`)" +"collections classes. Aliases for ABCs are still present in " +"the :mod:`collections` module to preserve existing imports. (:issue:`11085`)" msgstr "" msgid "" @@ -1394,8 +1400,8 @@ msgstr "" msgid "" "Equality comparisons between naive and aware :class:`~datetime.datetime` " -"instances now return :const:`False` instead of raising :exc:`TypeError` (:" -"issue:`15006`)." +"instances now return :const:`False` instead of raising :exc:`TypeError` " +"(:issue:`15006`)." msgstr "" msgid "" @@ -1494,8 +1500,8 @@ msgstr "" msgid "" "If Python is compiled without threads, the C version automatically disables " -"the expensive thread local context machinery. In this case, the variable :" -"const:`~decimal.HAVE_THREADS` is set to ``False``." +"the expensive thread local context machinery. In this case, the " +"variable :const:`~decimal.HAVE_THREADS` is set to ``False``." msgstr "" msgid "" @@ -1531,37 +1537,40 @@ msgid "``-999999999999999999``" msgstr "" msgid "" -"In the context templates (:const:`~decimal.DefaultContext`, :const:`~decimal." -"BasicContext` and :const:`~decimal.ExtendedContext`) the magnitude of :attr:" -"`~decimal.Context.Emax` and :attr:`~decimal.Context.Emin` has changed to " -"``999999``." +"In the context templates " +"(:const:`~decimal.DefaultContext`, :const:`~decimal.BasicContext` " +"and :const:`~decimal.ExtendedContext`) the magnitude " +"of :attr:`~decimal.Context.Emax` and :attr:`~decimal.Context.Emin` has " +"changed to ``999999``." msgstr "" 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." +"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 "" 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\"." +"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 "" 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." +"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 "" msgid "" @@ -1586,18 +1595,18 @@ msgid "Policy Framework" msgstr "" 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`." +"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 "" msgid "The minimum set of controls implemented by all ``policy`` objects are:" @@ -1637,11 +1646,11 @@ msgid "" msgstr "" 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::" +"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 "" msgid "mypolicy = compat32.clone(linesep='\\r\\n')" @@ -1667,10 +1676,10 @@ msgid "" "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." +"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 "" msgid "" @@ -1721,8 +1730,8 @@ msgid "" "'Éric'\n" ">>> m['Date'] = email.utils.localtime()\n" ">>> m['Date'].datetime\n" -"datetime.datetime(2012, 5, 25, 21, 39, 24, 465484, tzinfo=datetime." -"timezone(datetime.timedelta(-1, 72000), 'EDT'))\n" +"datetime.datetime(2012, 5, 25, 21, 39, 24, 465484, " +"tzinfo=datetime.timezone(datetime.timedelta(-1, 72000), 'EDT'))\n" ">>> m['Date']\n" "'Fri, 25 May 2012 21:44:27 -0400'\n" ">>> print(m)\n" @@ -1734,8 +1743,8 @@ 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." +"deal with the :mod:`email.header` :meth:`~email.header.decode_header` " +"or :meth:`~email.header.make_header` functions." msgstr "" msgid "You can also create addresses from parts::" @@ -1776,8 +1785,8 @@ msgid "" "(Group(display_name='pals', addresses=(Address(display_name='Bob', " "username='bob', domain='example.com'), Address(display_name='Sally', " "username='sally', domain='example.com')), Group(display_name=None, " -"addresses=(Address(display_name='Bonzo', username='bonz', domain='laugh." -"com'),))" +"addresses=(Address(display_name='Bonzo', username='bonz', " +"domain='laugh.com'),))" msgstr "" msgid "" @@ -1791,9 +1800,9 @@ msgid "Other API Changes" msgstr "" msgid "" -"New :class:`~email.parser.BytesHeaderParser`, added to the :mod:`~email." -"parser` module to complement :class:`~email.parser.HeaderParser` and " -"complete the Bytes API." +"New :class:`~email.parser.BytesHeaderParser`, added to " +"the :mod:`~email.parser` module to " +"complement :class:`~email.parser.HeaderParser` and complete the Bytes API." msgstr "" msgid "New utility functions:" @@ -1812,10 +1821,11 @@ msgstr "" 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`." +"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 "" msgid "ftplib" @@ -1824,22 +1834,23 @@ msgstr "" 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`.)" +"when creating the outgoing socket. (Contributed by Giampaolo Rodolà " +"in :issue:`8594`.)" msgstr "" 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`.)" +"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 "" 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`.)" +"listing format and deprecates :meth:`ftplib.FTP.nlst` " +"and :meth:`ftplib.FTP.dir`. (Contributed by Giampaolo Rodolà " +"in :issue:`11072`.)" msgstr "" msgid "functools" @@ -1874,11 +1885,11 @@ msgstr "" 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 accumulated headers are sent. (Contributed by Andrew Schaaf in :issue:" -"`3709`.)" +"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 accumulated headers are sent. (Contributed " +"by Andrew Schaaf in :issue:`3709`.)" msgstr "" msgid "" @@ -1887,9 +1898,10 @@ msgid "" msgstr "" 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`.)" +":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 "" msgid "html" @@ -1897,14 +1909,12 @@ msgstr "" 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:`!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`.)" +"raising errors, therefore the *strict* argument of the constructor and " +"the :exc:`!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 "" msgid "" @@ -1963,10 +1973,10 @@ msgstr "" msgid "" "The constructor of the :class:`~io.TextIOWrapper` class has a new " -"*write_through* optional argument. If *write_through* is ``True``, calls to :" -"meth:`!write` are guaranteed not to be buffered: any data written on the :" -"class:`~io.TextIOWrapper` object is immediately handled to its underlying " -"binary buffer." +"*write_through* optional argument. If *write_through* is ``True``, calls " +"to :meth:`!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 "" msgid "itertools" @@ -1987,10 +1997,10 @@ msgid "" msgstr "" msgid "" -"A class level attribute :attr:`!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 daemons it is " -"required while for others it is passed through to the log." +"A class level attribute :attr:`!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 " +"daemons it is required while for others it is passed through to the log." msgstr "" msgid "math" @@ -2042,11 +2052,12 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "nntplib" @@ -2063,8 +2074,8 @@ msgid "" ">>> with NNTP('news.gmane.org') as n:\n" "... n.group('gmane.comp.python.committers')\n" "...\n" -"('211 1755 1 1755 gmane.comp.python.committers', 1755, 1, 1755, 'gmane.comp." -"python.committers')\n" +"('211 1755 1 1755 gmane.comp.python.committers', 1755, 1, 1755, " +"'gmane.comp.python.committers')\n" ">>>" msgstr "" @@ -2076,9 +2087,9 @@ msgstr "" msgid "" "The :mod:`os` module has a new :func:`~os.pipe2` function that makes it " -"possible to create a pipe with :const:`~os.O_CLOEXEC` or :const:`~os." -"O_NONBLOCK` flags set atomically. This is especially useful to avoid race " -"conditions in multi-threaded programs." +"possible to create a pipe with :const:`~os.O_CLOEXEC` " +"or :const:`~os.O_NONBLOCK` flags set atomically. This is especially useful " +"to avoid race conditions in multi-threaded programs." msgstr "" msgid "" @@ -2099,47 +2110,41 @@ 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`)." +"functions and introduces new functions to work on file descriptors " +"(:issue:`4761`, :issue:`10755` and :issue:`14626`)." msgstr "" 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." +"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 "" 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_follow_symlinks`." +"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_follow_symlinks`." msgstr "" 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." +"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 "" 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." +"check. Platform support for this can be checked via " +"the :data:`~os.supports_effective_ids` set." msgstr "" 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/" +"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 "" @@ -2155,34 +2160,29 @@ msgid "" msgstr "" 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`.)" +"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 "" 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`.)" +"terminal attached to a file descriptor. See " +"also :func:`shutil.get_terminal_size`. (Contributed by Zbigniew Jędrzejewski-" +"Szmek in :issue:`13609`.)" msgstr "" msgid "" -"New functions to support Linux extended attributes (:issue:`12720`): :func:" -"`~os.getxattr`, :func:`~os.listxattr`, :func:`~os.removexattr`, :func:`~os." -"setxattr`." +"New functions to support Linux extended attributes " +"(:issue:`12720`): :func:`~os.getxattr`, :func:`~os.listxattr`, :func:`~os.removexattr`, :func:`~os.setxattr`." msgstr "" 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`," +"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 "" msgid "New functions to control the file system:" @@ -2254,12 +2254,12 @@ msgid "" msgstr "" msgid "" -"New constants :const:`~os.RTLD_LAZY`, :const:`~os.RTLD_NOW`, :const:`~os." -"RTLD_GLOBAL`, :const:`~os.RTLD_LOCAL`, :const:`~os.RTLD_NODELETE`, :const:" -"`~os.RTLD_NOLOAD`, and :const:`~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`.)" +"New " +"constants :const:`~os.RTLD_LAZY`, :const:`~os.RTLD_NOW`, :const:`~os.RTLD_GLOBAL`, :const:`~os.RTLD_LOCAL`, :const:`~os.RTLD_NODELETE`, :const:`~os.RTLD_NOLOAD`, " +"and :const:`~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 "" msgid "" @@ -2283,8 +2283,9 @@ msgid "pickle" msgstr "" msgid "" -":class:`pickle.Pickler` objects now have an optional :attr:`~pickle.Pickler." -"dispatch_table` attribute allowing per-pickler reduction functions to be set." +":class:`pickle.Pickler` objects now have an " +"optional :attr:`~pickle.Pickler.dispatch_table` attribute allowing per-" +"pickler reduction functions to be set." msgstr "" msgid "(Contributed by Richard Oudkerk in :issue:`14166`.)" @@ -2294,9 +2295,9 @@ msgid "pydoc" msgstr "" msgid "" -"The Tk GUI and the :func:`!serve` function have been removed from the :mod:" -"`pydoc` module: ``pydoc -g`` and :func:`!serve` have been deprecated in " -"Python 3.2." +"The Tk GUI and the :func:`!serve` function have been removed from " +"the :mod:`pydoc` module: ``pydoc -g`` and :func:`!serve` have been " +"deprecated in Python 3.2." msgstr "" msgid "re" @@ -2322,20 +2323,21 @@ msgstr "" msgid "" ":class:`~sched.scheduler` class can now be safely used in multi-threaded " -"environments. (Contributed by Josiah Carlson and Giampaolo Rodolà in :issue:" -"`8684`.)" +"environments. (Contributed by Josiah Carlson and Giampaolo Rodolà " +"in :issue:`8684`.)" msgstr "" 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`.)" +"constructor are now optional and defaults to :func:`time.time` " +"and :func:`time.sleep` respectively. (Contributed by Chris Clark " +"in :issue:`13245`.)" msgstr "" msgid "" ":meth:`~sched.scheduler.enter` and :meth:`~sched.scheduler.enterabs` " -"*argument* parameter is now optional. (Contributed by Chris Clark in :issue:" -"`13245`.)" +"*argument* parameter is now optional. (Contributed by Chris Clark " +"in :issue:`13245`.)" msgstr "" msgid "" @@ -2357,9 +2359,9 @@ msgstr "" 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." +"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 "" msgid "shutil" @@ -2409,9 +2411,9 @@ msgstr "" 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`.)" +"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 "" msgid "signal" @@ -2459,9 +2461,10 @@ msgid "smtpd" msgstr "" 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." +"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 "" msgid "" @@ -2474,11 +2477,11 @@ msgid "smtplib" msgstr "" 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`.)" +"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 "" msgid "" @@ -2488,9 +2491,10 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "socket" @@ -2522,15 +2526,15 @@ msgid "" msgstr "" msgid "" -"(Contributed by Matthias Fuchs, updated by Tiago Gonçalves in :issue:" -"`10141`.)" +"(Contributed by Matthias Fuchs, updated by Tiago Gonçalves " +"in :issue:`10141`.)" msgstr "" 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 `__)." +"(https://en.wikipedia.org/wiki/Reliable_Datagram_Sockets and `https://" +"oss.oracle.com/projects/rds `__)." msgstr "" msgid "" @@ -2548,20 +2552,21 @@ msgid "socketserver" msgstr "" 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`.)" +":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 "" msgid "sqlite3" msgstr "" 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`.)" +"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 "" msgid "ssl" @@ -2589,15 +2594,15 @@ msgstr "" 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`.)" +"be used if the private key is encrypted. (Contributed by Adam Simpkins " +"in :issue:`12803`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -2608,9 +2613,9 @@ msgstr "" 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 :const:" -"`~ssl.OP_NO_COMPRESSION` can be used to disable compression. (Contributed by " -"Antoine Pitrou in :issue:`13634`.)" +"its new :meth:`~ssl.SSLSocket.compression` method. The new " +"attribute :const:`~ssl.OP_NO_COMPRESSION` can be used to disable " +"compression. (Contributed by Antoine Pitrou in :issue:`13634`.)" msgstr "" msgid "" @@ -2620,9 +2625,9 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -2640,9 +2645,9 @@ msgid "stat" msgstr "" 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'." +"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 "" msgid "(Contributed by Giampaolo Rodolà in :issue:`14807`.)" @@ -2667,8 +2672,8 @@ msgstr "" msgid "" "A new constant :const:`~subprocess.DEVNULL` allows suppressing output in a " -"platform-independent fashion. (Contributed by Ross Lagerwall in :issue:" -"`5870`.)" +"platform-independent fashion. (Contributed by Ross Lagerwall " +"in :issue:`5870`.)" msgstr "" msgid "sys" @@ -2708,11 +2713,10 @@ msgid "threading" msgstr "" 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`.)" +":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 "" msgid "" @@ -2757,15 +2761,15 @@ msgid "Other new functions:" msgstr "" msgid "" -":func:`~time.clock_getres`, :func:`~time.clock_gettime` and :func:`~time." -"clock_settime` functions with :samp:`CLOCK_{xxx}` constants. (Contributed by " -"Victor Stinner in :issue:`10278`.)" +":func:`~time.clock_getres`, :func:`~time.clock_gettime` " +"and :func:`~time.clock_settime` functions with :samp:`CLOCK_{xxx}` " +"constants. (Contributed by Victor Stinner in :issue:`10278`.)" msgstr "" 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." +"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 "" msgid "types" @@ -2778,8 +2782,8 @@ msgstr "" msgid "" "The new functions :func:`types.new_class` and :func:`types.prepare_class` " -"provide support for :pep:`3115` compliant dynamic type creation. (:issue:" -"`14588`)" +"provide support for :pep:`3115` compliant dynamic type creation. " +"(:issue:`14588`)" msgstr "" msgid "unittest" @@ -2788,8 +2792,8 @@ msgstr "" 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`.)" +"as context managers. (Contributed by Ezio Melotti and Winston Ewert " +"in :issue:`10775`.)" msgstr "" msgid "" @@ -2817,12 +2821,12 @@ msgstr "" 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`.)" +"(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 "" msgid "xml.etree.ElementTree" @@ -2830,12 +2834,12 @@ msgstr "" 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." +"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 "" msgid "zlib" @@ -2883,8 +2887,8 @@ msgid "UTF-8 is now 2x to 4x faster. UTF-16 encoding is now up to 10x faster." msgstr "" msgid "" -"(Contributed by Serhiy Storchaka, :issue:`14624`, :issue:`14738` and :issue:" -"`15026`.)" +"(Contributed by Serhiy Storchaka, :issue:`14624`, :issue:`14738` " +"and :issue:`15026`.)" msgstr "" msgid "Build and C API Changes" @@ -2941,20 +2945,15 @@ msgstr "" msgid ":c:func:`PyUnicode_AsUCS4`, :c:func:`PyUnicode_AsUCS4Copy`" msgstr "" -msgid "" -":c:macro:`PyUnicode_DATA`, :c:macro:`PyUnicode_1BYTE_DATA`, :c:macro:" -"`PyUnicode_2BYTE_DATA`, :c:macro:`PyUnicode_4BYTE_DATA`" +msgid ":c:macro:`PyUnicode_DATA`, :c:macro:`PyUnicode_1BYTE_DATA`, :c:macro:`PyUnicode_2BYTE_DATA`, :c:macro:`PyUnicode_4BYTE_DATA`" msgstr "" msgid "" ":c:macro:`PyUnicode_KIND` with :c:enum:`!PyUnicode_Kind` enum: :c:data:`!" -"PyUnicode_WCHAR_KIND`, :c:data:`PyUnicode_1BYTE_KIND`, :c:data:" -"`PyUnicode_2BYTE_KIND`, :c:data:`PyUnicode_4BYTE_KIND`" +"PyUnicode_WCHAR_KIND`, :c:data:`PyUnicode_1BYTE_KIND`, :c:data:`PyUnicode_2BYTE_KIND`, :c:data:`PyUnicode_4BYTE_KIND`" msgstr "" -msgid "" -":c:macro:`PyUnicode_READ`, :c:macro:`PyUnicode_READ_CHAR`, :c:macro:" -"`PyUnicode_WRITE`" +msgid ":c:macro:`PyUnicode_READ`, :c:macro:`PyUnicode_READ_CHAR`, :c:macro:`PyUnicode_WRITE`" msgstr "" msgid ":c:macro:`PyUnicode_MAX_CHAR_VALUE`" @@ -2991,14 +2990,14 @@ msgid "" msgstr "" 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``)" +"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 "" msgid "" -":meth:`ftplib.FTP.nlst` and :meth:`ftplib.FTP.dir`: use :meth:`ftplib.FTP." -"mlsd`" +":meth:`ftplib.FTP.nlst` and :meth:`ftplib.FTP.dir`: " +"use :meth:`ftplib.FTP.mlsd`" msgstr "" msgid "" @@ -3018,8 +3017,8 @@ msgid "" msgstr "" 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, " +"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 "" @@ -3048,13 +3047,13 @@ msgid "" msgstr "" msgid "" -"Unicode functions and methods using :c:type:`Py_UNICODE` and :c:expr:" -"`Py_UNICODE*` types:" +"Unicode functions and methods using :c:type:`Py_UNICODE` " +"and :c:expr:`Py_UNICODE*` types:" msgstr "" msgid "" -":c:macro:`!PyUnicode_FromUnicode`: use :c:func:`PyUnicode_FromWideChar` or :" -"c:func:`PyUnicode_FromKindAndData`" +":c:macro:`!PyUnicode_FromUnicode`: use :c:func:`PyUnicode_FromWideChar` " +"or :c:func:`PyUnicode_FromKindAndData`" msgstr "" msgid "" @@ -3063,13 +3062,13 @@ msgid "" msgstr "" msgid "" -":c:macro:`!PyUnicode_AS_DATA`: use :c:macro:`PyUnicode_DATA` with :c:macro:" -"`PyUnicode_READ` and :c:macro:`PyUnicode_WRITE`" +":c:macro:`!PyUnicode_AS_DATA`: use :c:macro:`PyUnicode_DATA` " +"with :c:macro:`PyUnicode_READ` and :c:macro:`PyUnicode_WRITE`" msgstr "" msgid "" -":c:macro:`!PyUnicode_GET_SIZE`, :c:func:`!PyUnicode_GetSize`: use :c:macro:" -"`PyUnicode_GET_LENGTH` or :c:func:`PyUnicode_GetLength`" +":c:macro:`!PyUnicode_GET_SIZE`, :c:func:`!PyUnicode_GetSize`: " +"use :c:macro:`PyUnicode_GET_LENGTH` or :c:func:`PyUnicode_GetLength`" msgstr "" msgid "" @@ -3078,8 +3077,8 @@ msgid "" msgstr "" msgid "" -":c:func:`!PyUnicode_AsUnicodeCopy`: use :c:func:`PyUnicode_AsUCS4Copy` or :c:" -"func:`PyUnicode_AsWideCharString`" +":c:func:`!PyUnicode_AsUnicodeCopy`: use :c:func:`PyUnicode_AsUCS4Copy` " +"or :c:func:`PyUnicode_AsWideCharString`" msgstr "" msgid ":c:func:`!PyUnicode_GetMax`" @@ -3089,19 +3088,19 @@ msgid "Functions and macros manipulating Py_UNICODE* strings:" msgstr "" msgid "" -":c:macro:`!Py_UNICODE_strlen()`: use :c:func:`PyUnicode_GetLength` or :c:" -"macro:`PyUnicode_GET_LENGTH`" +":c:macro:`!Py_UNICODE_strlen()`: use :c:func:`PyUnicode_GetLength` " +"or :c:macro:`PyUnicode_GET_LENGTH`" msgstr "" msgid "" -":c:macro:`!Py_UNICODE_strcat()`: use :c:func:`PyUnicode_CopyCharacters` or :" -"c:func:`PyUnicode_FromFormat`" +":c:macro:`!Py_UNICODE_strcat()`: use :c:func:`PyUnicode_CopyCharacters` " +"or :c:func:`PyUnicode_FromFormat`" msgstr "" 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`" +":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 "" msgid ":c:macro:`!Py_UNICODE_strcmp()`: use :c:func:`PyUnicode_Compare`" @@ -3111,8 +3110,8 @@ msgid ":c:macro:`!Py_UNICODE_strncmp()`: use :c:func:`PyUnicode_Tailmatch`" msgstr "" msgid "" -":c:macro:`!Py_UNICODE_strchr()`, :c:macro:`!Py_UNICODE_strrchr()`: use :c:" -"func:`PyUnicode_FindChar`" +":c:macro:`!Py_UNICODE_strchr()`, :c:macro:`!Py_UNICODE_strrchr()`: " +"use :c:func:`PyUnicode_FindChar`" msgstr "" msgid ":c:macro:`!Py_UNICODE_FILL()`: use :c:func:`PyUnicode_Fill`" @@ -3131,8 +3130,8 @@ msgid ":c:func:`!PyUnicode_EncodeUTF7`" msgstr "" msgid "" -":c:func:`!PyUnicode_EncodeUTF8`: use :c:func:`PyUnicode_AsUTF8` or :c:func:" -"`PyUnicode_AsUTF8String`" +":c:func:`!PyUnicode_EncodeUTF8`: use :c:func:`PyUnicode_AsUTF8` " +"or :c:func:`PyUnicode_AsUTF8String`" msgstr "" msgid ":c:func:`!PyUnicode_EncodeUTF32`" @@ -3142,13 +3141,13 @@ msgid ":c:func:`!PyUnicode_EncodeUTF16`" msgstr "" msgid "" -":c:func:`!PyUnicode_EncodeUnicodeEscape` use :c:func:" -"`PyUnicode_AsUnicodeEscapeString`" +":c:func:`!PyUnicode_EncodeUnicodeEscape` " +"use :c:func:`PyUnicode_AsUnicodeEscapeString`" msgstr "" msgid "" -":c:func:`!PyUnicode_EncodeRawUnicodeEscape` use :c:func:" -"`PyUnicode_AsRawUnicodeEscapeString`" +":c:func:`!PyUnicode_EncodeRawUnicodeEscape` " +"use :c:func:`PyUnicode_AsRawUnicodeEscapeString`" msgstr "" msgid "" @@ -3165,8 +3164,8 @@ msgid ":c:func:`!PyUnicode_TranslateCharmap`" msgstr "" msgid "" -":c:func:`!PyUnicode_EncodeMBCS`: use :c:func:`PyUnicode_AsMBCSString` or :c:" -"func:`PyUnicode_EncodeCodePage` (with ``CP_ACP`` code_page)" +":c:func:`!PyUnicode_EncodeMBCS`: use :c:func:`PyUnicode_AsMBCSString` " +"or :c:func:`PyUnicode_EncodeCodePage` (with ``CP_ACP`` code_page)" msgstr "" msgid "" @@ -3195,8 +3194,8 @@ msgstr "" 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." +"environment variable to ``0`` to disable hash randomization. See also " +"the :meth:`object.__hash__` method." msgstr "" msgid "" @@ -3208,18 +3207,18 @@ msgid "" msgstr "" 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." +":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 "" 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." +"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 "" msgid "" @@ -3235,8 +3234,9 @@ msgid "" "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." +"index of 0. It is preferred, though, that you " +"use :func:`importlib.import_module` rather than call :func:`__import__` " +"directly." msgstr "" msgid "" @@ -3253,10 +3253,10 @@ msgstr "" msgid "" "Because ``None`` is now inserted into :data:`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 :" -"data:`sys.path_importer_cache` where it represents the use of implicit " +"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 :data:`sys.path_importer_cache` where it represents the use of implicit " "finders, but semantically it should not change anything." msgstr "" @@ -3272,15 +3272,15 @@ 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." +"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 "" 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 " +"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 " @@ -3300,9 +3300,9 @@ msgstr "" 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`)." +"``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 "" msgid "" @@ -3319,9 +3319,9 @@ msgid "The deprecated variable ``time.accept2dyear`` has been removed." msgstr "" 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`.)" +"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 "" msgid "" @@ -3373,15 +3373,15 @@ msgid "" "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>`." +"reduction provided by :pep:`393`, you have to convert your code to the " +"new :doc:`Unicode API <../c-api/unicode>`." msgstr "" 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." +"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 "" msgid ":c:func:`PyImport_GetMagicNumber` now returns ``-1`` upon failure." @@ -3390,8 +3390,8 @@ msgstr "" 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``." +"This also means that the value of *level* used " +"by :c:func:`PyImport_ImportModuleEx` is now ``0`` instead of ``-1``." msgstr "" msgid "Building C extensions" diff --git a/whatsnew/3.4.po b/whatsnew/3.4.po index 7846ced..93ddda2 100644 --- a/whatsnew/3.4.po +++ b/whatsnew/3.4.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-29 19:20+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -61,8 +61,8 @@ msgid "" msgstr "" msgid "" -"command line option for :ref:`isolated mode ` (:" -"issue:`16499`)." +"command line option for :ref:`isolated mode ` " +"(:issue:`16499`)." msgstr "" msgid "" @@ -71,8 +71,8 @@ msgid "" msgstr "" msgid "" -":ref:`A ModuleSpec Type ` for the Import System (:pep:" -"`451`). (Affects importer authors.)" +":ref:`A ModuleSpec Type ` for the Import System " +"(:pep:`451`). (Affects importer authors.)" msgstr "" msgid "" @@ -94,19 +94,19 @@ msgid "" msgstr "" msgid "" -":mod:`enum`: :ref:`Support for enumeration types ` (:pep:" -"`435`)." +":mod:`enum`: :ref:`Support for enumeration types ` " +"(:pep:`435`)." msgstr "" msgid "" -":mod:`pathlib`: :ref:`Object-oriented filesystem paths ` (:" -"pep:`428`)." +":mod:`pathlib`: :ref:`Object-oriented filesystem paths ` " +"(:pep:`428`)." msgstr "" msgid "" ":mod:`selectors`: :ref:`High-level and efficient I/O multiplexing `, built upon the :mod:`select` module primitives (part of :pep:" -"`3156`)." +"selectors>`, built upon the :mod:`select` module primitives (part " +"of :pep:`3156`)." msgstr "" msgid "" @@ -123,8 +123,8 @@ msgid "Significantly improved library modules:" msgstr "" msgid "" -":ref:`Single-dispatch generic functions ` in :mod:" -"`functools` (:pep:`443`)." +":ref:`Single-dispatch generic functions ` " +"in :mod:`functools` (:pep:`443`)." msgstr "" msgid "" @@ -137,10 +137,10 @@ msgid "" msgstr "" msgid "" -":mod:`email` has a new submodule, :mod:`~email.contentmanager`, and a new :" -"mod:`~email.message.Message` subclass (:class:`~email.message.EmailMessage`) " -"that :ref:`simplify MIME handling ` (:issue:" -"`18891`)." +":mod:`email` has a new submodule, :mod:`~email.contentmanager`, and a " +"new :mod:`~email.message.Message` subclass " +"(:class:`~email.message.EmailMessage`) that :ref:`simplify MIME handling " +"` (:issue:`18891`)." msgstr "" msgid "" @@ -156,8 +156,8 @@ msgid "Security improvements:" msgstr "" msgid "" -":ref:`Secure and interchangeable hash algorithm ` (:pep:" -"`456`)." +":ref:`Secure and interchangeable hash algorithm ` " +"(:pep:`456`)." msgstr "" msgid "" @@ -166,8 +166,8 @@ msgid "" msgstr "" msgid "" -"New command line option for :ref:`isolated mode `, (:" -"issue:`16499`)." +"New command line option for :ref:`isolated mode `, " +"(:issue:`16499`)." msgstr "" msgid "" @@ -206,9 +206,9 @@ msgstr "" 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`)." +"certificate verification, including hostname matching (:func:`!" +"ssl.match_hostname`) and CRLs (Certificate Revocation lists, " +"see :func:`ssl.SSLContext.load_verify_locations`)." msgstr "" msgid "CPython implementation improvements:" @@ -319,8 +319,8 @@ msgstr "" msgid "" "However, as this migration is currently still incomplete, the legacy " -"versions of those guides remaining available as :ref:`install-index` and :" -"ref:`setuptools-index`." +"versions of those guides remaining available as :ref:`install-index` " +"and :ref:`setuptools-index`." msgstr "" msgid ":pep:`453` -- Explicit bootstrapping of pip in Python installations" @@ -353,8 +353,7 @@ msgstr "" msgid ":func:`os.get_handle_inheritable`, :func:`os.set_handle_inheritable`" msgstr "" -msgid "" -":meth:`socket.socket.get_inheritable`, :meth:`socket.socket.set_inheritable`" +msgid ":meth:`socket.socket.get_inheritable`, :meth:`socket.socket.set_inheritable`" msgstr "" msgid ":pep:`446` -- Make newly created file descriptors non-inheritable" @@ -375,18 +374,19 @@ msgid "" msgstr "" 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." +"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 "" 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`` " +"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 "" @@ -478,8 +478,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Nick Coghlan in :issue:`7475`, :issue:`17827`, :issue:" -"`17828` and :issue:`19619`.)" +"(Contributed by Nick Coghlan " +"in :issue:`7475`, :issue:`17827`, :issue:`17828` and :issue:`19619`.)" msgstr "" msgid "PEP 451: A ModuleSpec Type for the Import System" @@ -498,9 +498,9 @@ msgid "" "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." +"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 "" msgid "Other Language Changes" @@ -515,8 +515,8 @@ msgstr "" 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`.)" +"evaluating has no elements. (Contributed by Julian Berman " +"in :issue:`18111`.)" msgstr "" msgid "Module objects are now :ref:`weakly referenceable `." @@ -524,9 +524,9 @@ msgstr "" 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`.)" +"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 "" msgid "" @@ -550,8 +550,8 @@ msgstr "" msgid "" ":class:`bytes`.join() and :class:`bytearray`.join() now accept arbitrary " -"buffer objects as arguments. (Contributed by Antoine Pitrou in :issue:" -"`15958`.)" +"buffer objects as arguments. (Contributed by Antoine Pitrou " +"in :issue:`15958`.)" msgstr "" msgid "" @@ -567,9 +567,10 @@ msgid "" msgstr "" 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`.)" +":class:`memoryview` is now registered as " +"a :class:`~collections.abc.Sequence`, and supports the :func:`reversed` " +"builtin. (Contributed by Nick Coghlan and Claudiu Popa in :issue:`18690` " +"and :issue:`19078`.)" msgstr "" msgid "" @@ -580,8 +581,8 @@ msgstr "" msgid "" ":meth:`~object.__length_hint__` is now part of the formal language " -"specification (see :pep:`424`). (Contributed by Armin Ronacher in :issue:" -"`16148`.)" +"specification (see :pep:`424`). (Contributed by Armin Ronacher " +"in :issue:`16148`.)" msgstr "" msgid "New Modules" @@ -610,11 +611,11 @@ msgid "ensurepip" msgstr "" 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." +"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 "" msgid "" @@ -640,10 +641,10 @@ msgstr "" 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." +"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 "" msgid ":pep:`435` -- Adding an Enum type to the Python standard library" @@ -675,9 +676,9 @@ msgid "selectors" msgstr "" 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." +"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 "" msgid "statistics" @@ -758,9 +759,9 @@ msgid "" msgstr "" msgid "" -"The :meth:`!writeframesraw` and :meth:`!writeframes` methods now accept any :" -"term:`bytes-like object`. (Contributed by Serhiy Storchaka in :issue:" -"`8311`.)" +"The :meth:`!writeframesraw` and :meth:`!writeframes` methods now accept " +"any :term:`bytes-like object`. (Contributed by Serhiy Storchaka " +"in :issue:`8311`.)" msgstr "" msgid "argparse" @@ -795,20 +796,21 @@ msgid "base64" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "collections" @@ -843,20 +845,20 @@ msgstr "" 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 " +"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`.)" +"recommended only for utility scripts because it affects the global state " +"of :data:`sys.stdout`. (Contributed by Raymond Hettinger in :issue:`15805`.)" msgstr "" 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." +"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 "" msgid "dbm" @@ -873,8 +875,8 @@ msgid "dis" msgstr "" msgid "" -"Functions :func:`~dis.show_code`, :func:`~dis.dis`, :func:`~dis.distb`, and :" -"func:`~dis.disassemble` now accept a keyword-only *file* argument that " +"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 "" @@ -910,13 +912,13 @@ msgstr "" 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_instructions` 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::" +"readable form and for iterating over instructions. " +"The :class:`~dis.Bytecode` constructor takes the same arguments " +"that :func:`~dis.get_instructions` 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 "" msgid "" @@ -935,15 +937,15 @@ msgid "" msgstr "" 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)``)." +":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 "" msgid "" -"(Contributed by Nick Coghlan, Ryan Kelly and Thomas Kluyver in :issue:" -"`11816` and Claudiu Popa in :issue:`17916`.)" +"(Contributed by Nick Coghlan, Ryan Kelly and Thomas Kluyver " +"in :issue:`11816` and Claudiu Popa in :issue:`17916`.)" msgstr "" msgid "" @@ -966,8 +968,8 @@ msgid "" "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`.)" +"the :mod:`unittest` CLI). (Contributed by R. David Murray " +"in :issue:`11390`.)" msgstr "" msgid "" @@ -991,10 +993,10 @@ 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. " +"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 "" @@ -1002,8 +1004,8 @@ 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`.)" +"the default is ``False``. (Contributed by R. David Murray " +"in :issue:`18891`.)" msgstr "" msgid "" @@ -1014,12 +1016,13 @@ msgid "" "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`.)" +"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 "" msgid "filecmp" @@ -1037,8 +1040,8 @@ msgstr "" msgid "" "New module attribute :const:`~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`.)" +"the :func:`~filecmp.dircmp` function. (Contributed by Eli Bendersky " +"in :issue:`15442`.)" msgstr "" msgid "functools" @@ -1069,9 +1072,9 @@ msgid "PEP written and implemented by Łukasz Langa." msgstr "" msgid "" -":deco:`~functools.total_ordering` now supports a return value of :data:" -"`NotImplemented` from the underlying comparison function. (Contributed by " -"Katie Miller in :issue:`10042`.)" +":deco:`~functools.total_ordering` now supports a return value " +"of :data:`NotImplemented` from the underlying comparison function. " +"(Contributed by Katie Miller in :issue:`10042`.)" msgstr "" msgid "" @@ -1111,11 +1114,11 @@ msgstr "" 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`.)" +"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 "" msgid "hmac" @@ -1138,10 +1141,11 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "html" @@ -1174,10 +1178,10 @@ 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.BaseHTTPRequestHandler.error_message_format` attribute and " -"sent as the body of the error response. (Contributed by Karl Cow in :issue:" -"`12921`.)" +"one. This extended error description will be formatted using " +"the :attr:`~http.server.BaseHTTPRequestHandler.error_message_format` " +"attribute and sent as the body of the error response. (Contributed by Karl " +"Cow in :issue:`12921`.)" msgstr "" msgid "" @@ -1191,21 +1195,22 @@ msgstr "" 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." +"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 "" msgid "importlib" msgstr "" 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`.)" +"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 "" msgid "" @@ -1216,9 +1221,9 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1229,31 +1234,32 @@ msgid "" msgstr "" 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`.)" +"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 "" 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 " +"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 "" 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." +":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 "" 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`.)" +":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 "" msgid "inspect" @@ -1274,20 +1280,22 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" -":func:`~inspect.getfullargspec` and :func:`!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 " +":func:`~inspect.getfullargspec` and :func:`!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 "" @@ -1302,16 +1310,17 @@ msgid "ipaddress" msgstr "" 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." +":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 "" msgid "" "A new :attr:`~ipaddress.IPv4Address.is_global` property is ``True`` if an " -"address is globally routeable. (Contributed by Peter Moody in :issue:" -"`17400`.)" +"address is globally routeable. (Contributed by Peter Moody " +"in :issue:`17400`.)" msgstr "" msgid "logging" @@ -1324,25 +1333,27 @@ msgid "" msgstr "" 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.)" +":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 "" 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`.)" +":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 "" 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`.)" +"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 "" msgid "marshal" @@ -1353,11 +1364,11 @@ msgid "" "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`.)" +"(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 "" msgid "mmap" @@ -1373,32 +1384,34 @@ msgstr "" 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, " +"``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 "" 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`.)" +"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 "" 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`)." +"inherit unneeded handles/file descriptors from their parents (part " +"of :issue:`8713`)." msgstr "" msgid "" @@ -1431,9 +1444,9 @@ msgstr "" 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`)." +"` 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 "" msgid "" @@ -1441,13 +1454,13 @@ msgid "" "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`.)" +"Yogesh Chaudhari, Victor Stinner, and Charles-François Natali " +"in :issue:`17914`.)" msgstr "" 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 " +":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 "" @@ -1457,12 +1470,12 @@ msgid "" msgstr "" msgid "" -":func:`os.open` supports two new flags on platforms that provide them, :" -"const:`~os.O_PATH` (un-opened file descriptor), and :const:`~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.)" +":func:`os.open` supports two new flags on platforms that provide " +"them, :const:`~os.O_PATH` (un-opened file descriptor), " +"and :const:`~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 "" msgid "pdb" @@ -1494,9 +1507,9 @@ 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:`~object." -"__new__` method takes keyword-only arguments. It also provides some " -"efficiency improvements." +"classes, very large strings and containers, and classes " +"whose :meth:`~object.__new__` method takes keyword-only arguments. It also " +"provides some efficiency improvements." msgstr "" msgid ":pep:`3154` -- Pickle protocol 4" @@ -1510,12 +1523,13 @@ msgstr "" 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 (:const:`~plistlib.FMT_XML`), it also now " -"supports the binary plist format (:const:`~plistlib.FMT_BINARY`). " -"(Contributed by Ronald Oussoren and others in :issue:`14455`.)" +"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 " +"(:const:`~plistlib.FMT_XML`), it also now supports the binary plist format " +"(:const:`~plistlib.FMT_BINARY`). (Contributed by Ronald Oussoren and others " +"in :issue:`14455`.)" msgstr "" msgid "poplib" @@ -1523,9 +1537,9 @@ msgstr "" 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 " +"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 "" @@ -1533,8 +1547,8 @@ msgid "pprint" msgstr "" msgid "" -"The :mod:`pprint` module's :class:`~pprint.PrettyPrinter` class and its :" -"func:`~pprint.pformat`, and :func:`~pprint.pprint` functions have a new " +"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. " @@ -1558,25 +1572,26 @@ msgid "pydoc" msgstr "" 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`.)" +"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 "" 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`.)" +"signature of the supplied callable. (Contributed by Larry Hastings " +"in :issue:`20710`.)" msgstr "" 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." +"also been improved substantially by the underlying changes in " +"the :mod:`inspect` module." msgstr "" msgid "" @@ -1615,16 +1630,17 @@ msgstr "" msgid "" "On Linux kernel version 2.6.36 or later, there are also some new Linux " -"specific constants: :const:`~resource.RLIMIT_MSGQUEUE`, :const:`~resource." -"RLIMIT_NICE`, :const:`~resource.RLIMIT_RTPRIO`, :const:`~resource." -"RLIMIT_RTTIME`, and :const:`~resource.RLIMIT_SIGPENDING`. (Contributed by " -"Christian Heimes in :issue:`19324`.)" +"specific " +"constants: :const:`~resource.RLIMIT_MSGQUEUE`, :const:`~resource.RLIMIT_NICE`, :const:`~resource.RLIMIT_RTPRIO`, :const:`~resource.RLIMIT_RTTIME`, " +"and :const:`~resource.RLIMIT_SIGPENDING`. (Contributed by Christian Heimes " +"in :issue:`19324`.)" msgstr "" msgid "" -"On FreeBSD version 9 and later, there some new FreeBSD specific constants: :" -"const:`~resource.RLIMIT_SBSIZE`, :const:`~resource.RLIMIT_SWAP`, and :const:" -"`~resource.RLIMIT_NPTS`. (Contributed by Claudiu Popa in :issue:`19343`.)" +"On FreeBSD version 9 and later, there some new FreeBSD specific " +"constants: :const:`~resource.RLIMIT_SBSIZE`, :const:`~resource.RLIMIT_SWAP`, " +"and :const:`~resource.RLIMIT_NPTS`. (Contributed by Claudiu Popa " +"in :issue:`19343`.)" msgstr "" msgid "select" @@ -1639,8 +1655,9 @@ msgstr "" 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`.)" +"and :meth:`~select.devpoll.close` methods, as well as a new " +"attribute :attr:`~select.devpoll.closed`. (Contributed by Victor Stinner " +"in :issue:`18794`.)" msgstr "" msgid "shelve" @@ -1659,8 +1676,8 @@ 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`.)" +"this specific error. (Contributed by Atsuo Ishimoto and Hynek Schlawack " +"in :issue:`1492704`.)" msgstr "" msgid "smtpd" @@ -1670,8 +1687,8 @@ msgid "" "The :class:`!SMTPServer` and :class:`!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`.)" +"avoid affecting the global socket map. (Contributed by Vinay Sajip " +"in :issue:`11959`.)" msgstr "" msgid "smtplib" @@ -1694,8 +1711,8 @@ msgstr "" 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`." +"`, :meth:`~socket.socket.get_inheritable` " +"and :meth:`~socket.socket.set_inheritable`." msgstr "" msgid "" @@ -1739,75 +1756,79 @@ msgid "" "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`.)" +"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 "" 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`.)" +":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 "" 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`.)" +"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 "" 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`.)" +":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 "" 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 :const:`~ssl.VERIFY_DEFAULT`, :const:`~ssl." -"VERIFY_CRL_CHECK_LEAF`, :const:`~ssl.VERIFY_CRL_CHECK_CHAIN`, or :const:" -"`~ssl.VERIFY_X509_STRICT`. OpenSSL does not do any CRL verification by " -"default. (Contributed by Christien Heimes in :issue:`8813`.)" +"the new " +"constants :const:`~ssl.VERIFY_DEFAULT`, :const:`~ssl.VERIFY_CRL_CHECK_LEAF`, :const:`~ssl.VERIFY_CRL_CHECK_CHAIN`, " +"or :const:`~ssl.VERIFY_X509_STRICT`. OpenSSL does not do any CRL " +"verification by default. (Contributed by Christien Heimes in :issue:`8813`.)" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" 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`.)" +"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 "" 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`.)" +"``calIssuers``, and ``OCSP`` URIs. (Contributed by Christian Heimes " +"in :issue:`18379`.)" msgstr "" msgid "stat" @@ -1820,19 +1841,20 @@ msgid "" msgstr "" msgid "" -"The module supports new :mod:`~stat.ST_MODE` flags, :mod:`~stat.S_IFDOOR`, :" -"const:`~stat.S_IFPORT`, and :const:`~stat.S_IFWHT`. (Contributed by " -"Christian Hiemes in :issue:`11016`.)" +"The module supports new :mod:`~stat.ST_MODE` " +"flags, :mod:`~stat.S_IFDOOR`, :const:`~stat.S_IFPORT`, " +"and :const:`~stat.S_IFWHT`. (Contributed by Christian Hiemes " +"in :issue:`11016`.)" msgstr "" msgid "struct" msgstr "" 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`.)" +"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 "" msgid "subprocess" @@ -1877,10 +1899,10 @@ msgstr "" 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`.)" +"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 "" msgid "" @@ -1892,10 +1914,10 @@ msgid "" "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`.)" +"(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 "" msgid "tarfile" @@ -1904,8 +1926,8 @@ msgstr "" 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`.)" +"and extract tarfile archives. (Contributed by Berker Peksag " +"in :issue:`13477`.)" msgstr "" msgid "textwrap" @@ -1920,8 +1942,8 @@ msgid "" "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`.)" +"(Contributed by Antoine Pitrou and Serhiy Storchaka in :issue:`18585` " +"and :issue:`18725`.)" msgstr "" msgid "threading" @@ -1940,8 +1962,8 @@ msgstr "" 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`.)" +"amount of memory consumed. (Contributed by Andrew Kuchling " +"in :issue:`1565525`.)" msgstr "" msgid "types" @@ -1960,50 +1982,51 @@ msgid "urllib" msgstr "" msgid "" -":mod:`urllib.request` now supports ``data:`` URLs via the :class:`~urllib." -"request.DataHandler` class. (Contributed by Mathias Panzenböck in :issue:" -"`16423`.)" +":mod:`urllib.request` now supports ``data:`` URLs via " +"the :class:`~urllib.request.DataHandler` class. (Contributed by Mathias " +"Panzenböck in :issue:`16423`.)" msgstr "" 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`.)" +"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 "" 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`.)" +":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 "" 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`.)" +":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 "" msgid "unittest" msgstr "" 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::" +"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 "" msgid "" @@ -2051,9 +2074,9 @@ msgstr "" 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 " +"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 " @@ -2089,8 +2112,8 @@ 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.)" +"installed in the virtual environment. (Contributed by Nick Coghlan " +"in :issue:`19552` as part of the :pep:`453` implementation.)" msgstr "" msgid "wave" @@ -2113,9 +2136,9 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "weakref" @@ -2144,37 +2167,37 @@ msgstr "" 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`.)" +"blocking applications to parse XML documents. An example can be seen " +"at :ref:`elementtree-pull-parsing`. (Contributed by Antoine Pitrou " +"in :issue:`17741`.)" msgstr "" 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`.)" +"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 "" msgid "zipfile" msgstr "" 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`.)" +"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 "" msgid "" -"The *allowZip64* parameter to :class:`~zipfile.ZipFile` and :class:`~zipfile." -"PyZipFile` is now ``True`` by default. (Contributed by William Mallard in :" -"issue:`17201`.)" +"The *allowZip64* parameter to :class:`~zipfile.ZipFile` " +"and :class:`~zipfile.PyZipFile` is now ``True`` by default. (Contributed by " +"William Mallard in :issue:`17201`.)" msgstr "" msgid "CPython Implementation Changes" @@ -2202,11 +2225,12 @@ msgid "" msgstr "" 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." +"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 "" msgid ":pep:`442` -- Safe object finalization" @@ -2301,28 +2325,30 @@ msgid "" msgstr "" 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." +"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 "" 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`.)" +"object allocator have been silenced. (Contributed by Dhiru Kholia " +"in :issue:`18596`.)" msgstr "" msgid "" -"The Windows build now uses `Address Space Layout Randomization `_ and `Data Execution " -"Prevention `_. " -"(Contributed by Christian Heimes in :issue:`16632`.)" +"The Windows build now uses `Address Space Layout Randomization `_ and `Data " +"Execution Prevention `_. (Contributed by Christian Heimes " +"in :issue:`16632`.)" msgstr "" msgid "" -"New function :c:func:`PyObject_LengthHint` is the C API equivalent of :func:" -"`operator.length_hint`. (Contributed by Armin Ronacher in :issue:`16148`.)" +"New function :c:func:`PyObject_LengthHint` is the C API equivalent " +"of :func:`operator.length_hint`. (Contributed by Armin Ronacher " +"in :issue:`16148`.)" msgstr "" msgid "Other Improvements" @@ -2358,8 +2384,8 @@ msgstr "" 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`.)" +"script at the windows command prompt by just typing its name without the " +"``.py`` extension. (Contributed by Paul Moore in :issue:`18569`.)" msgstr "" msgid "" @@ -2371,8 +2397,9 @@ msgstr "" 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`.)" +"also checks for memory allocation leaks, " +"using :func:`sys.getallocatedblocks`. (Contributed by Antoine Pitrou " +"in :issue:`13390`.)" msgstr "" msgid "``python -m`` now works with namespace packages." @@ -2393,14 +2420,14 @@ msgstr "" 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`.)" +"uses of :ref:`__prepare__ `. (Contributed by Benjamin Peterson " +"in :issue:`17853`.)" msgstr "" 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`)." +"Stinner using his :pep:`445`-based ``pyfailmalloc`` tool " +"(:issue:`18408`, :issue:`18520`)." msgstr "" msgid "" @@ -2417,10 +2444,10 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -2451,12 +2478,13 @@ msgstr "" 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`.)" +"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 "" msgid "" @@ -2484,8 +2512,8 @@ msgid "" msgstr "" msgid "" -":func:`html.escape` is now 10x faster. (Contributed by Matt Bryant in :" -"issue:`18020`.)" +":func:`html.escape` is now 10x faster. (Contributed by Matt Bryant " +"in :issue:`18020`.)" msgstr "" msgid "" @@ -2506,9 +2534,9 @@ msgstr "" 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``)." +"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 "" msgid "Deprecations in the Python API" @@ -2517,23 +2545,25 @@ msgstr "" 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:`!find_module` are replaced by :meth:" -"`importlib.abc.PathEntryFinder.find_spec`; all of the :samp:`{xxx}Loader` " -"ABC ``load_module`` methods (``importlib.abc.Loader.load_module``, " -"``importlib.abc.InspectLoader.load_module``, ``importlib.abc.FileLoader." -"load_module``, ``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." +"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:`!find_module` are " +"replaced by :meth:`importlib.abc.PathEntryFinder.find_spec`; all of " +"the :samp:`{xxx}Loader` ABC ``load_module`` methods " +"(``importlib.abc.Loader.load_module``, " +"``importlib.abc.InspectLoader.load_module``, " +"``importlib.abc.FileLoader.load_module``, " +"``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 "" msgid "" @@ -2554,8 +2584,8 @@ msgstr "" 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." +"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 "" msgid "" @@ -2571,10 +2601,10 @@ msgstr "" msgid "" "The :mod:`plistlib` :func:`!readPlist`, :func:`!writePlist`, :func:`!" "readPlistFromBytes`, and :func:`!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:`!Data` is deprecated in favor of just using the :class:`bytes` " -"constructor." +"in favor of the corresponding new " +"functions :func:`~plistlib.load`, :func:`~plistlib.dump`, :func:`~plistlib.loads`, " +"and :func:`~plistlib.dumps`. :func:`!Data` is deprecated in favor of just " +"using the :class:`bytes` constructor." msgstr "" msgid "" @@ -2591,9 +2621,9 @@ msgstr "" 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." +"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 "" msgid "Deprecated Features" @@ -2654,8 +2684,8 @@ msgstr "" 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`)." +"been meaningless since Python 3.2, when the \"new GIL\" was introduced " +"(:issue:`19199`)." msgstr "" msgid "" @@ -2664,9 +2694,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -2677,8 +2707,8 @@ msgid "" msgstr "" msgid "" -"Support for loading the deprecated ``TYPE_INT64`` has been removed from :mod:" -"`marshal`. (Contributed by Dan Riti in :issue:`15480`.)" +"Support for loading the deprecated ``TYPE_INT64`` has been removed " +"from :mod:`marshal`. (Contributed by Dan Riti in :issue:`15480`.)" msgstr "" msgid "" @@ -2693,15 +2723,15 @@ msgid "" "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." +"objects that do not have a __format__ method that handles it. " +"See :issue:`7994` for background." msgstr "" 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`)." +":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 "" msgid "Code Cleanups" @@ -2737,12 +2767,12 @@ msgstr "" 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`." +"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 "" msgid "" @@ -2762,17 +2792,19 @@ msgstr "" 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." +"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 "" msgid "" -"The module type now initializes the :attr:`~module.__package__` and :attr:" -"`~module.__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`.)" +"The module type now initializes the :attr:`~module.__package__` " +"and :attr:`~module.__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 "" msgid "" @@ -2803,9 +2835,9 @@ msgid "" "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`." +"``'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 "" msgid "" @@ -2816,14 +2848,14 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -2838,12 +2870,13 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -2855,8 +2888,8 @@ msgid "" "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`)." +"Cannon in :issue:`18416`). is specified on the command-line) " +"(:issue:`18416`)." msgstr "" msgid "" @@ -2871,59 +2904,62 @@ 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`)." +"compliance with the language spec; Jython and PyPy already were. " +"(:issue:`17434`)." msgstr "" 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." +"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 "" 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." +"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 "" msgid "" -"The :attr:`!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." +"The :attr:`!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 "" 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`)." +"informative :exc:`ValueError` rather than the previous more " +"mysterious :exc:`AttributeError` (:issue:`9177`)." msgstr "" 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`)." +"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 "" 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`.)" +"special method returned one. This now raises a :exc:`TypeError`. " +"(:issue:`16290`.)" msgstr "" 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`)." +"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 "" msgid "" @@ -2959,8 +2995,8 @@ msgid "" "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`)." +"``_removeTestAtIndex`` method that does nothing " +"(see :meth:`.TestSuite.__iter__`) (:issue:`11798`)." msgstr "" msgid "" @@ -2989,8 +3025,8 @@ 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`)." +"add this keyword, with the appropriate value, to " +"any :class:`~html.parser.HTMLParser` calls in your code (:issue:`13633`)." msgstr "" msgid "" @@ -3011,8 +3047,8 @@ msgid "" "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`)." +"stream in :mod:`~io.TextIOWrapper` to use its *newline* argument " +"(:issue:`15204`)." msgstr "" msgid "" @@ -3038,26 +3074,26 @@ msgstr "" 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`)." +"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 "" msgid "Changes in the C API" msgstr "" 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." +":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 "" msgid "" @@ -3068,10 +3104,10 @@ msgstr "" 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`)" +"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 "" msgid "" diff --git a/whatsnew/3.5.po b/whatsnew/3.5.po index c0f36bc..9e98f1a 100644 --- a/whatsnew/3.5.po +++ b/whatsnew/3.5.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -103,10 +103,10 @@ msgid "CPython implementation improvements:" msgstr "" 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`.)" +"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 "" msgid "" @@ -159,8 +159,9 @@ msgstr "" 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.)" +"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 "" msgid "" @@ -297,9 +298,10 @@ msgid "" msgstr "" 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`." +"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 "" msgid "See more details in the :ref:`async-iterators` documentation section." @@ -317,10 +319,11 @@ msgstr "" 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:`~object.__matmul__`, :meth:`~object." -"__rmatmul__`, and :meth:`~object.__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." +"can be implemented by " +"defining :meth:`~object.__matmul__`, :meth:`~object.__rmatmul__`, " +"and :meth:`~object.__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 "" msgid "" @@ -475,8 +478,8 @@ msgid "PEP 484 - Type Hints" msgstr "" msgid "" -"Function annotation syntax has been a Python feature since version 3.0 (:pep:" -"`3107`), however the semantics of annotations has been left undefined." +"Function annotation syntax has been a Python feature since version 3.0 " +"(:pep:`3107`), however the semantics of annotations has been left undefined." msgstr "" msgid "" @@ -503,17 +506,17 @@ msgid "" msgstr "" msgid "" -"While these annotations are available at runtime through the usual :attr:" -"`~object.__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." +"While these annotations are available at runtime through the " +"usual :attr:`~object.__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 "" 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." +"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 "" msgid ":mod:`typing` module documentation" @@ -632,34 +635,29 @@ msgid "functions of the :mod:`faulthandler` module;" msgstr "" 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`;" +":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 "" msgid "" -"special cases: :func:`os.close` and :func:`os.dup2` now ignore :py:const:" -"`~errno.EINTR` errors; the syscall is not retried (see the PEP for the " -"rationale);" +"special cases: :func:`os.close` and :func:`os.dup2` now " +"ignore :py:const:`~errno.EINTR` errors; the syscall is not retried (see the " +"PEP for the rationale);" msgstr "" msgid "" -":mod:`select` functions: :func:`devpoll.poll() `, :func:" -"`epoll.poll() `, :func:`kqueue.control() `, :func:`poll.poll() `, :func:`~select.select`;" +":mod:`select` functions: :func:`devpoll.poll() " +"`, :func:`epoll.poll() " +"`, :func:`kqueue.control() " +"`, :func:`poll.poll() " +"`, :func:`~select.select`;" msgstr "" 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`;" +"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 "" msgid ":func:`signal.sigtimedwait` and :func:`signal.sigwaitinfo`;" @@ -689,17 +687,17 @@ msgstr "" 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." +"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 "" msgid "" -"This is a backwards incompatible change, so to enable the new behavior, a :" -"term:`__future__` import is necessary::" +"This is a backwards incompatible change, so to enable the new behavior, " +"a :term:`__future__` import is necessary::" msgstr "" msgid "" @@ -799,15 +797,15 @@ msgid "PEP 488: Elimination of PYO files" msgstr "" msgid "" -":pep:`488` does away with the concept of ``.pyo`` files. This means that ``." -"pyc`` files represent both unoptimized and optimized bytecode. To prevent " +":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." +"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 "" msgid ":pep:`488` -- Elimination of PYO files" @@ -852,20 +850,20 @@ msgid "" msgstr "" msgid "" -"The :option:`-b` option now affects comparisons of :class:`bytes` with :" -"class:`int`. (Contributed by Serhiy Storchaka in :issue:`23681`.)" +"The :option:`-b` option now affects comparisons of :class:`bytes` " +"with :class:`int`. (Contributed by Serhiy Storchaka in :issue:`23681`.)" msgstr "" msgid "" "New Kazakh ``kz1048`` and Tajik ``koi8_t`` :ref:`codecs `. (Contributed by Serhiy Storchaka in :issue:`22682` and :issue:" -"`22681`.)" +"encodings>`. (Contributed by Serhiy Storchaka in :issue:`22682` " +"and :issue:`22681`.)" msgstr "" msgid "" -"Property docstrings are now writable. This is especially useful for :func:" -"`collections.namedtuple` docstrings. (Contributed by Berker Peksag in :issue:" -"`24064`.)" +"Property docstrings are now writable. This is especially useful " +"for :func:`collections.namedtuple` docstrings. (Contributed by Berker Peksag " +"in :issue:`24064`.)" msgstr "" msgid "" @@ -907,8 +905,8 @@ msgid "" msgstr "" msgid "" -"The module implementation has been contributed by Paul Moore in :issue:" -"`23491`." +"The module implementation has been contributed by Paul Moore " +"in :issue:`23491`." msgstr "" msgid ":pep:`441` -- Improving Python ZIP Application Support" @@ -921,10 +919,10 @@ msgid "argparse" msgstr "" 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`.)" +"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 "" msgid "asyncio" @@ -932,17 +930,17 @@ msgstr "" 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." +"all changes introduced in Python 3.5 have also been backported to Python " +"3.4.x." msgstr "" msgid "Notable changes in the :mod:`asyncio` module since Python 3.4.0:" msgstr "" msgid "" -"New debugging APIs: :meth:`loop.set_debug() ` and :" -"meth:`loop.get_debug() ` methods. (Contributed by " -"Victor Stinner.)" +"New debugging APIs: :meth:`loop.set_debug() ` " +"and :meth:`loop.get_debug() ` methods. (Contributed " +"by Victor Stinner.)" msgstr "" msgid "" @@ -964,21 +962,22 @@ msgid "" msgstr "" 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.)" +"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 "" msgid "" -"The :func:`!async` function is deprecated in favor of :func:`~asyncio." -"ensure_future`. (Contributed by Yury Selivanov.)" +"The :func:`!async` function is deprecated in favor " +"of :func:`~asyncio.ensure_future`. (Contributed by Yury Selivanov.)" msgstr "" 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.)" +"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 "" msgid "" @@ -987,8 +986,8 @@ msgid "" msgstr "" msgid "" -"The ``JoinableQueue`` class was removed, in favor of the :class:`asyncio." -"Queue` class. (Contributed by Victor Stinner.)" +"The ``JoinableQueue`` class was removed, in favor of " +"the :class:`asyncio.Queue` class. (Contributed by Victor Stinner.)" msgstr "" msgid "Updates in 3.5.1:" @@ -1029,9 +1028,9 @@ msgid "" msgstr "" msgid "" -"New :meth:`loop.get_exception_handler() ` method to get the current exception handler. " -"(Contributed by Yury Selivanov.)" +"New :meth:`loop.get_exception_handler() " +"` method to get the current exception " +"handler. (Contributed by Yury Selivanov.)" msgstr "" msgid "" @@ -1041,8 +1040,8 @@ msgid "" msgstr "" msgid "" -"The :meth:`loop.create_connection() ` and :" -"meth:`loop.create_server() ` methods are " +"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 "" @@ -1082,10 +1081,10 @@ msgid "code" msgstr "" msgid "" -"The :func:`InteractiveInterpreter.showtraceback() ` method now prints the full chained " -"traceback, just like the interactive interpreter. (Contributed by Claudiu " -"Popa in :issue:`17442`.)" +"The :func:`InteractiveInterpreter.showtraceback() " +"` method now prints the full " +"chained traceback, just like the interactive interpreter. (Contributed by " +"Claudiu Popa in :issue:`17442`.)" msgstr "" msgid "collections" @@ -1093,8 +1092,8 @@ msgstr "" 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`.)" +"makes it 4 to 100 times faster. (Contributed by Eric Snow " +"in :issue:`16991`.)" msgstr "" msgid "" @@ -1104,12 +1103,13 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1127,11 +1127,10 @@ msgid "(Contributed by Berker Peksag in :issue:`24064`.)" msgstr "" msgid "" -"The :class:`~collections.UserString` class now implements the :meth:`~object." -"__getnewargs__`, :meth:`~object.__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`.)" +"The :class:`~collections.UserString` class now implements " +"the :meth:`~object.__getnewargs__`, :meth:`~object.__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 "" msgid "collections.abc" @@ -1149,10 +1148,9 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1165,8 +1163,8 @@ msgstr "" 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`` " +"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 "" @@ -1178,10 +1176,11 @@ msgstr "" 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`.)" +"``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 "" msgid "concurrent.futures" @@ -1205,10 +1204,10 @@ msgstr "" 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." +"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 "" msgid "Example::" @@ -1270,10 +1269,10 @@ msgid "curses" msgstr "" msgid "" -"The new :func:`~curses.update_lines_cols` function updates the :data:" -"`~curses.LINES` and :data:`~curses.COLS` module variables. This is useful " -"for detecting manual screen resizing. (Contributed by Arnon Yaari in :issue:" -"`4254`.)" +"The new :func:`~curses.update_lines_cols` function updates " +"the :data:`~curses.LINES` and :data:`~curses.COLS` module variables. This " +"is useful for detecting manual screen resizing. (Contributed by Arnon Yaari " +"in :issue:`4254`.)" msgstr "" msgid "dbm" @@ -1281,8 +1280,8 @@ msgstr "" msgid "" ":func:`dumb.open ` always creates a new database when the " -"flag has the value ``\"n\"``. (Contributed by Claudiu Popa in :issue:" -"`18039`.)" +"flag has the value ``\"n\"``. (Contributed by Claudiu Popa " +"in :issue:`18039`.)" msgstr "" msgid "difflib" @@ -1292,8 +1291,8 @@ 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`.)" +"``\"ISO-8859-1\"`` to ``\"utf-8\"``. (Contributed by Berker Peksag " +"in :issue:`2052`.)" msgstr "" msgid "" @@ -1321,36 +1320,38 @@ msgid "doctest" msgstr "" 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`.)" +"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 "" msgid "email" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "" @@ -1382,10 +1383,10 @@ msgid "faulthandler" msgstr "" 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`.)" +"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 "" msgid "functools" @@ -1411,8 +1412,8 @@ msgstr "" msgid "" "The *mode* argument of the :class:`~gzip.GzipFile` constructor now accepts " -"``\"x\"`` to request exclusive creation. (Contributed by Tim Heaney in :" -"issue:`19222`.)" +"``\"x\"`` to request exclusive creation. (Contributed by Tim Heaney " +"in :issue:`19222`.)" msgstr "" msgid "heapq" @@ -1451,10 +1452,11 @@ msgid "http.client" msgstr "" 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 " +":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 "" @@ -1478,10 +1480,10 @@ msgstr "" 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." +"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 "" msgid "imaplib" @@ -1495,12 +1497,12 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1513,10 +1515,10 @@ msgid "imghdr" msgstr "" msgid "" -"The :func:`!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`.)" +"The :func:`!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 "" msgid "importlib" @@ -1529,11 +1531,11 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1549,14 +1551,14 @@ msgstr "" 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`.)" +"are now picklable and hashable. (Contributed by Yury Selivanov " +"in :issue:`20726` and :issue:`20334`.)" msgstr "" msgid "" -"A new :meth:`BoundArguments.apply_defaults() ` method provides a way to set default values for missing " -"arguments::" +"A new :meth:`BoundArguments.apply_defaults() " +"` method provides a way to set " +"default values for missing arguments::" msgstr "" msgid "" @@ -1571,31 +1573,31 @@ msgid "(Contributed by Yury Selivanov in :issue:`24190`.)" msgstr "" 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`.)" +"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 "" 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`.)" +"following of ``__wrapped__`` links. (Contributed by Yury Selivanov " +"in :issue:`20691`.)" msgstr "" 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`.)" +"function>` 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 "" 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`.)" +"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 "" msgid "io" @@ -1603,10 +1605,10 @@ msgstr "" 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`.)" +"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 "" msgid "ipaddress" @@ -1630,9 +1632,9 @@ msgid "(Contributed by Peter Moody and Antoine Pitrou in :issue:`16531`.)" msgstr "" msgid "" -"A new :attr:`~ipaddress.IPv4Address.reverse_pointer` attribute for the :" -"class:`~ipaddress.IPv4Address` and :class:`~ipaddress.IPv6Address` classes " -"returns the name of the reverse DNS PTR record::" +"A new :attr:`~ipaddress.IPv4Address.reverse_pointer` attribute for " +"the :class:`~ipaddress.IPv4Address` and :class:`~ipaddress.IPv6Address` " +"classes returns the name of the reverse DNS PTR record::" msgstr "" msgid "" @@ -1654,13 +1656,13 @@ msgstr "" 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`.)" +"to sort the keys alphabetically. (Contributed by Berker Peksag " +"in :issue:`21650`.)" msgstr "" msgid "" -"JSON decoder now raises :exc:`~json.JSONDecodeError` instead of :exc:" -"`ValueError` to provide better context information about the error. " +"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 "" @@ -1703,10 +1705,10 @@ msgid "logging" msgstr "" 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::" +"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 "" msgid "" @@ -1724,8 +1726,8 @@ msgstr "" 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`.)" +"settings used in an HTTP connection. (Contributed by Alex Gaynor " +"in :issue:`22788`.)" msgstr "" msgid "" @@ -1748,9 +1750,9 @@ msgid "math" msgstr "" 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`.)" +"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 "" msgid "" @@ -1768,44 +1770,46 @@ msgid "multiprocessing" msgstr "" msgid "" -":func:`sharedctypes.synchronized() ` objects now support the :term:`context manager` protocol. " -"(Contributed by Charles-François Natali in :issue:`21565`.)" +":func:`sharedctypes.synchronized() " +"` objects now support " +"the :term:`context manager` protocol. (Contributed by Charles-François " +"Natali in :issue:`21565`.)" msgstr "" msgid "operator" msgstr "" 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`.)" +":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 "" msgid "" "New :func:`~operator.matmul` and :func:`~operator.imatmul` functions to " -"perform matrix multiplication. (Contributed by Benjamin Peterson in :issue:" -"`21176`.)" +"perform matrix multiplication. (Contributed by Benjamin Peterson " +"in :issue:`21176`.)" msgstr "" msgid "os" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "" @@ -1817,8 +1821,8 @@ msgstr "" msgid "" "New :func:`~os.get_blocking` and :func:`~os.set_blocking` functions allow " -"getting and setting a file descriptor's blocking mode (:const:`~os." -"O_NONBLOCK`.) (Contributed by Victor Stinner in :issue:`22054`.)" +"getting and setting a file descriptor's blocking mode " +"(:const:`~os.O_NONBLOCK`.) (Contributed by Victor Stinner in :issue:`22054`.)" msgstr "" msgid "" @@ -1828,8 +1832,8 @@ msgstr "" 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::" +"common sub-path of each passed pathname. Unlike " +"the :func:`os.path.commonprefix` function, it always returns a valid path::" msgstr "" msgid "" @@ -1878,15 +1882,17 @@ msgstr "" 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`.)" +"directory. (Contributed by Victor Salgado and Mayank Tripathi " +"in :issue:`19777`.)" msgstr "" 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." +"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 "" msgid "" @@ -1955,11 +1961,10 @@ msgid "" msgstr "" msgid "" -"The :class:`re.error ` exceptions have new attributes, :" -"attr:`~re.PatternError.msg`, :attr:`~re.PatternError.pattern`, :attr:`~re." -"PatternError.pos`, :attr:`~re.PatternError.lineno`, and :attr:`~re." -"PatternError.colno`, that provide better context information about the " -"error::" +"The :class:`re.error ` exceptions have new " +"attributes, :attr:`~re.PatternError.msg`, :attr:`~re.PatternError.pattern`, :attr:`~re.PatternError.pos`, :attr:`~re.PatternError.lineno`, " +"and :attr:`~re.PatternError.colno`, that provide better context information " +"about the error::" msgstr "" msgid "" @@ -2037,9 +2042,9 @@ msgid "" msgstr "" msgid "" -"The :class:`!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:`!" +"The :class:`!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 "" @@ -2071,23 +2076,24 @@ msgstr "" 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`.)" +"messages. (Contributed by Gavin Chappell and Maciej Szulik " +"in :issue:`16914`.)" msgstr "" 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`.)" +"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 "" msgid "sndhdr" msgstr "" msgid "" -"The :func:`!what` and :func:`!whathdr` functions now return a :func:" -"`~collections.namedtuple`. (Contributed by Claudiu Popa in :issue:`18615`.)" +"The :func:`!what` and :func:`!whathdr` functions now return " +"a :func:`~collections.namedtuple`. (Contributed by Claudiu Popa " +"in :issue:`18615`.)" msgstr "" msgid "socket" @@ -2100,10 +2106,10 @@ msgstr "" 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`.)" +"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 "" msgid "" @@ -2115,9 +2121,9 @@ msgstr "" 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`.)" +"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 "" msgid "ssl" @@ -2131,11 +2137,12 @@ msgstr "" 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." +"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 "" msgid "" @@ -2157,21 +2164,21 @@ msgstr "" msgid "" "Where OpenSSL support is present, the :mod:`ssl` module now implements the " -"*Application-Layer Protocol Negotiation* TLS extension as described in :rfc:" -"`7301`." +"*Application-Layer Protocol Negotiation* TLS extension as described " +"in :rfc:`7301`." msgstr "" msgid "" -"The new :meth:`SSLContext.set_alpn_protocols() ` can be used to specify which protocols a socket should " -"advertise during the TLS handshake." +"The new :meth:`SSLContext.set_alpn_protocols() " +"` can be used to specify which protocols " +"a socket should advertise during the TLS handshake." msgstr "" msgid "" -"The new :meth:`SSLSocket.selected_alpn_protocol() ` returns the protocol that was selected during the " -"TLS handshake. The :const:`~ssl.HAS_ALPN` flag indicates whether ALPN " -"support is present." +"The new :meth:`SSLSocket.selected_alpn_protocol() " +"` returns the protocol that was " +"selected during the TLS handshake. The :const:`~ssl.HAS_ALPN` flag indicates " +"whether ALPN support is present." msgstr "" msgid "Other Changes" @@ -2179,20 +2186,21 @@ msgstr "" msgid "" "There is a new :meth:`SSLSocket.version() ` method to " -"query the actual protocol version in use. (Contributed by Antoine Pitrou in :" -"issue:`20421`.)" +"query the actual protocol version in use. (Contributed by Antoine Pitrou " +"in :issue:`20421`.)" msgstr "" msgid "" -"The :class:`~ssl.SSLSocket` class now implements a :meth:`!SSLSocket." -"sendfile` method. (Contributed by Giampaolo Rodola' in :issue:`17552`.)" +"The :class:`~ssl.SSLSocket` class now implements a :meth:`!" +"SSLSocket.sendfile` method. (Contributed by Giampaolo Rodola' " +"in :issue:`17552`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -2204,17 +2212,18 @@ msgstr "" 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`.)" +"the client during the handshake. (Contributed by Benjamin Peterson " +"in :issue:`23186`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -2282,8 +2291,8 @@ msgstr "" 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`.)" +"components of the Python version. (Contributed by Paul Moore " +"in :issue:`23437`.)" msgstr "" msgid "tarfile" @@ -2291,15 +2300,15 @@ msgstr "" msgid "" "The *mode* argument of the :func:`~tarfile.open` function now accepts " -"``\"x\"`` to request exclusive creation. (Contributed by Berker Peksag in :" -"issue:`21717`.)" +"``\"x\"`` to request exclusive creation. (Contributed by Berker Peksag " +"in :issue:`21717`.)" msgstr "" msgid "" -"The :meth:`TarFile.extractall() ` and :meth:" -"`TarFile.extract() ` methods now take a keyword " -"argument *numeric_owner*. If set to ``True``, the extracted files and " -"directories will be owned by the numeric ``uid`` and ``gid`` from the " +"The :meth:`TarFile.extractall() ` " +"and :meth:`TarFile.extract() ` methods now take a " +"keyword argument *numeric_owner*. 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`.)" @@ -2316,9 +2325,10 @@ msgid "threading" msgstr "" 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`.)" +"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 "" msgid "time" @@ -2364,9 +2374,10 @@ msgid "" msgstr "" msgid "" -"New lightweight classes: :class:`~traceback.TracebackException`, :class:" -"`~traceback.StackSummary`, and :class:`~traceback.FrameSummary`. " -"(Contributed by Robert Collins in :issue:`17911`.)" +"New lightweight " +"classes: :class:`~traceback.TracebackException`, :class:`~traceback.StackSummary`, " +"and :class:`~traceback.FrameSummary`. (Contributed by Robert Collins " +"in :issue:`17911`.)" msgstr "" msgid "" @@ -2380,15 +2391,15 @@ msgstr "" 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`.)" +"` and :class:`generator-like " +"` objects into :term:`awaitables `. " +"(Contributed by Yury Selivanov in :issue:`24017`.)" msgstr "" 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`.)" +"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 "" msgid "unicodedata" @@ -2403,13 +2414,13 @@ msgid "unittest" msgstr "" 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`.)" +"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 "" msgid "" @@ -2436,63 +2447,66 @@ msgid "" msgstr "" msgid "" -"A new :meth:`Mock.assert_not_called() ` method to check if the mock object was called. " -"(Contributed by Kushal Das in :issue:`21262`.)" +"A new :meth:`Mock.assert_not_called() " +"` method to check if the mock object " +"was called. (Contributed by Kushal Das in :issue:`21262`.)" msgstr "" msgid "" -"The :class:`~unittest.mock.MagicMock` class now supports :meth:`~object." -"__truediv__`, :meth:`~object.__divmod__` and :meth:`~object.__matmul__` " -"operators. (Contributed by Johannes Baiter in :issue:`20968`, and Håkan " -"Lövdahl in :issue:`23581` and :issue:`23568`.)" +"The :class:`~unittest.mock.MagicMock` class now " +"supports :meth:`~object.__truediv__`, :meth:`~object.__divmod__` " +"and :meth:`~object.__matmul__` operators. (Contributed by Johannes Baiter " +"in :issue:`20968`, and Håkan Lövdahl in :issue:`23581` and :issue:`23568`.)" msgstr "" 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`.)" +"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 "" msgid "urllib" msgstr "" 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`.)" +"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 "" 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`.)" +"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 "" 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`.)" +"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 "" 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`.)" +"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 "" msgid "wsgiref" msgstr "" msgid "" -"The *headers* argument of the :class:`headers.Headers ` class constructor is now optional. (Contributed by Pablo Torres " -"Navarrete and SilentGhost in :issue:`5800`.)" +"The *headers* argument of the :class:`headers.Headers " +"` class constructor is now optional. (Contributed " +"by Pablo Torres Navarrete and SilentGhost in :issue:`5800`.)" msgstr "" msgid "xmlrpc" @@ -2514,9 +2528,9 @@ msgid "xml.sax" msgstr "" msgid "" -"SAX parsers now support a character stream of the :class:`xmlreader." -"InputSource ` object. (Contributed by Serhiy " -"Storchaka in :issue:`2175`.)" +"SAX parsers now support a character stream of " +"the :class:`xmlreader.InputSource ` object. " +"(Contributed by Serhiy Storchaka in :issue:`2175`.)" msgstr "" msgid "" @@ -2542,10 +2556,10 @@ msgid "Other module-level changes" msgstr "" 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`.)" +"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 "" msgid "Optimizations" @@ -2553,27 +2567,26 @@ msgstr "" 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. " +"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 "" 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`.)" +"to allocate memory for these objects. (Contributed by Victor Stinner " +"in :issue:`21233`.)" msgstr "" 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`.)" +"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 "" msgid "" @@ -2583,15 +2596,15 @@ msgstr "" 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`.)" +"(Contributed by Serhiy Storchaka in :issue:`15381` and David Wilson " +"in :issue:`22003`.)" msgstr "" 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`.)" +"best cases. (Contributed by Serhiy Storchaka in :issue:`20416` " +"and :issue:`23344`.)" msgstr "" msgid "" @@ -2612,15 +2625,15 @@ msgstr "" 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`.)" +"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 "" msgid "" "Method caching was slightly improved, yielding up to 5% performance " -"improvement in some benchmarks. (Contributed by Antoine Pitrou in :issue:" -"`22847`.)" +"improvement in some benchmarks. (Contributed by Antoine Pitrou " +"in :issue:`22847`.)" msgstr "" msgid "" @@ -2639,10 +2652,11 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "Build and C API Changes" @@ -2677,14 +2691,14 @@ msgstr "" msgid "" "A new :c:func:`PyCodec_NameReplaceErrors` function to replace the unicode " -"encode error with ``\\N{...}`` escapes. (Contributed by Serhiy Storchaka in :" -"issue:`19676`.)" +"encode error with ``\\N{...}`` escapes. (Contributed by Serhiy Storchaka " +"in :issue:`19676`.)" msgstr "" msgid "" "A new :c:func:`PyErr_FormatV` function similar to :c:func:`PyErr_Format`, " -"but accepts a :c:type:`va_list` argument. (Contributed by Antoine Pitrou in :" -"issue:`18711`.)" +"but accepts a :c:type:`va_list` argument. (Contributed by Antoine Pitrou " +"in :issue:`18711`.)" msgstr "" msgid "" @@ -2695,15 +2709,15 @@ msgstr "" 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`.)" +"phase extension module initialization. (Contributed by Petr Viktorin " +"in :issue:`24268`.)" msgstr "" 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.)" +"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 "" msgid "" @@ -2793,8 +2807,8 @@ msgstr "" 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 " +"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 "" @@ -2815,8 +2829,8 @@ msgid "" msgstr "" msgid "" -"The :func:`!asyncio.async` function is deprecated in favor of :func:" -"`~asyncio.ensure_future`." +"The :func:`!asyncio.async` function is deprecated in favor " +"of :func:`~asyncio.ensure_future`." msgstr "" msgid "" @@ -2828,18 +2842,19 @@ msgid "" msgstr "" 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." +"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 "" 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`.)" +"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 "" msgid "" @@ -2851,9 +2866,9 @@ msgstr "" 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`.)" +"of :class:`inspect.Signature` are deprecated. Use the " +"new :meth:`Signature.from_callable() ` " +"method instead. (Contributed by Yury Selivanov in :issue:`24248`.)" msgstr "" msgid "" @@ -2862,10 +2877,10 @@ msgid "" msgstr "" msgid "" -"The :mod:`inspect` :func:`~inspect.getfullargspec`, :func:`~inspect." -"getcallargs`, and :func:`!formatargspec` functions are deprecated in favor " -"of the :func:`inspect.signature` API. (Contributed by Yury Selivanov in :" -"issue:`20438`.)" +"The :mod:`inspect` :func:`~inspect.getfullargspec`, :func:`~inspect.getcallargs`, " +"and :func:`!formatargspec` functions are deprecated in favor of " +"the :func:`inspect.signature` API. (Contributed by Yury Selivanov " +"in :issue:`20438`.)" msgstr "" msgid "" @@ -2886,10 +2901,10 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "Removed" @@ -2961,15 +2976,15 @@ msgstr "" 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." +"obscure and error-prone and has been removed in Python 3.5. " +"See :issue:`13936` for full details." msgstr "" 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`.)" +"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 "" msgid "" @@ -2981,12 +2996,12 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -2998,11 +3013,11 @@ msgid "" msgstr "" 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`)." +"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 "" msgid "" @@ -3033,27 +3048,28 @@ msgstr "" 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`.)" +"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 "" 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. sourceless 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." +"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. sourceless " +"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 "" msgid "" @@ -3091,15 +3107,16 @@ msgid "" "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`.)" +"module and the :func:`help` function. (Contributed by Serhiy Storchaka " +"in :issue:`15582`.)" msgstr "" 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`.)" +"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 "" msgid "Changes in the C API" @@ -3112,8 +3129,8 @@ msgid "" msgstr "" msgid "" -"The :c:type:`!PyMemAllocator` structure was renamed to :c:type:" -"`PyMemAllocatorEx` and a new ``calloc`` field was added." +"The :c:type:`!PyMemAllocator` structure was renamed " +"to :c:type:`PyMemAllocatorEx` and a new ``calloc`` field was added." msgstr "" msgid "" @@ -3126,16 +3143,16 @@ msgstr "" msgid "" "Because the lack of the :attr:`~type.__module__` attribute breaks pickling " "and introspection, a deprecation warning is now raised for builtin types " -"without the :attr:`~type.__module__` attribute. This will be an :exc:" -"`AttributeError` in the future. (Contributed by Serhiy Storchaka in :issue:" -"`20204`.)" +"without the :attr:`~type.__module__` attribute. This will be " +"an :exc:`AttributeError` in the future. (Contributed by Serhiy Storchaka " +"in :issue:`20204`.)" msgstr "" msgid "" -"As part of the :pep:`492` implementation, the ``tp_reserved`` slot of :c:" -"type:`PyTypeObject` was replaced with a :c:member:`~PyTypeObject." -"tp_as_async` slot. Refer to :ref:`coro-objects` for new types, structures " -"and functions." +"As part of the :pep:`492` implementation, the ``tp_reserved`` slot " +"of :c:type:`PyTypeObject` was replaced with " +"a :c:member:`~PyTypeObject.tp_as_async` slot. Refer to :ref:`coro-objects` " +"for new types, structures and functions." msgstr "" msgid "Notable changes in Python 3.5.4" @@ -3158,8 +3175,8 @@ msgid "" msgstr "" msgid "" -"More selective regeneration targets are also defined - see :source:`Makefile." -"pre.in` for details." +"More selective regeneration targets are also defined - " +"see :source:`Makefile.pre.in` for details." msgstr "" msgid "(Contributed by Victor Stinner in :issue:`23404`.)" diff --git a/whatsnew/3.6.po b/whatsnew/3.6.po index 7df65af..e0f7d32 100644 --- a/whatsnew/3.6.po +++ b/whatsnew/3.6.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -73,12 +73,12 @@ msgid "CPython implementation improvements:" msgstr "" msgid "" -"The :ref:`dict ` type has been reimplemented to use a :ref:" -"`more compact representation ` based on `a proposal " -"by Raymond Hettinger `_ and similar to the `PyPy dict implementation`_. " -"This resulted in dictionaries using 20% to 25% less memory when compared to " -"Python 3.5." +"The :ref:`dict ` type has been reimplemented to use " +"a :ref:`more compact representation ` based on `a " +"proposal by Raymond Hettinger `_ and similar to the `PyPy dict " +"implementation`_. This resulted in dictionaries using 20% to 25% less " +"memory when compared to Python 3.5." msgstr "" msgid "" @@ -185,8 +185,8 @@ msgstr "" msgid "" "``python.exe`` and ``pythonw.exe`` have been marked as long-path aware, " -"which means that the 260 character path limit may no longer apply. See :ref:" -"`removing the MAX_PATH limitation ` for details." +"which means that the 260 character path limit may no longer apply. " +"See :ref:`removing the MAX_PATH limitation ` for details." msgstr "" msgid "" @@ -196,9 +196,9 @@ msgid "" msgstr "" msgid "" -"A ``python36.zip`` file now works as a landmark to infer :envvar:" -"`PYTHONHOME`. See :ref:`the documentation ` for " -"more information." +"A ``python36.zip`` file now works as a landmark to " +"infer :envvar:`PYTHONHOME`. See :ref:`the documentation " +"` for more information." msgstr "" msgid "New Features" @@ -208,8 +208,8 @@ msgid "PEP 498: Formatted string literals" msgstr "" msgid "" -":pep:`498` introduces a new kind of string literals: *f-strings*, or :ref:" -"`formatted string literals `." +":pep:`498` introduces a new kind of string literals: *f-strings*, " +"or :ref:`formatted string literals `." msgstr "" msgid "" @@ -400,9 +400,9 @@ msgid "" msgstr "" msgid "" -"In order to allow zero-argument :func:`super` calls to work correctly from :" -"meth:`~object.__init_subclass__` implementations, custom metaclasses must " -"ensure that the new ``__classcell__`` namespace entry is propagated to " +"In order to allow zero-argument :func:`super` calls to work correctly " +"from :meth:`~object.__init_subclass__` implementations, custom metaclasses " +"must ensure that the new ``__classcell__`` namespace entry is propagated to " "``type.__new__`` (as described in :ref:`class-object-creation`)." msgstr "" @@ -419,13 +419,13 @@ msgid "PEP 487: Descriptor Protocol Enhancements" msgstr "" msgid "" -":pep:`487` extends the descriptor protocol to include the new optional :meth:" -"`~object.__set_name__` method. 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. In other words, " -"instances of descriptors can now know the attribute name of the descriptor " -"in the owner class::" +":pep:`487` extends the descriptor protocol to include the new " +"optional :meth:`~object.__set_name__` method. 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. In other " +"words, instances of descriptors can now know the attribute name of the " +"descriptor in the owner class::" msgstr "" msgid "" @@ -453,13 +453,13 @@ msgid "PEP 519: Adding a file system path protocol" msgstr "" 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." +"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 "" msgid "" @@ -468,32 +468,34 @@ msgid "" "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. " +"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 "" 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, and most other functions and classes in the standard " -"library. The :class:`os.DirEntry` class and relevant classes in :mod:" -"`pathlib` have also been updated to implement :class:`os.PathLike`." +"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, and most other functions and " +"classes in the standard library. The :class:`os.DirEntry` class and " +"relevant classes in :mod:`pathlib` have also been updated to " +"implement :class:`os.PathLike`." msgstr "" msgid "" "The hope 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)." +"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 "" 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::" +"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 "" msgid "" @@ -534,9 +536,10 @@ msgid "" msgstr "" msgid "" -":pep:`495` adds the new *fold* attribute to instances of :class:`datetime." -"datetime` and :class:`datetime.time` classes to differentiate between two " -"moments in time for which local times are the same::" +":pep:`495` adds the new *fold* attribute to instances " +"of :class:`datetime.datetime` and :class:`datetime.time` classes to " +"differentiate between two moments in time for which local times are the " +"same::" msgstr "" msgid "" @@ -578,16 +581,16 @@ msgstr "" 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'``." +"on Windows, provided those bytes are encoded with the encoding returned " +"by :func:`sys.getfilesystemencoding`, which now defaults to ``'utf-8'``." msgstr "" 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`." +"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 "" msgid "" @@ -600,8 +603,8 @@ msgstr "" 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." +"provide correctly read str objects to Python code. ``sys.stdin``, " +"``sys.stdout`` and ``sys.stderr`` now default to utf-8 encoding." msgstr "" msgid "" @@ -626,8 +629,9 @@ msgid "" msgstr "" msgid "" -"Also, the effective default class *execution* namespace (returned from :ref:" -"`type.__prepare__() `) is now an insertion-order-preserving mapping." +"Also, the effective default class *execution* namespace (returned " +"from :ref:`type.__prepare__() `) is now an insertion-order-" +"preserving mapping." msgstr "" msgid ":pep:`520` -- Preserving Class Attribute Definition Order" @@ -654,9 +658,9 @@ msgid "" "The :ref:`dict ` type now uses a \"compact\" representation " "based on `a proposal by Raymond Hettinger `_ which was `first implemented by PyPy " -"`_. The memory usage of the new :func:`dict` is between 20% and 25% " -"smaller compared to Python 3.5." +"`_. The memory usage of the new :func:`dict` is between 20% and " +"25% smaller compared to Python 3.5." msgstr "" msgid "" @@ -666,8 +670,8 @@ msgid "" "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)." +"versions of the language where random iteration order is still in effect, " +"e.g. Python 3.5)." msgstr "" msgid "" @@ -729,8 +733,9 @@ msgid "Freed memory is filled with the byte ``0xDB``" msgstr "" msgid "" -"Detect violations of the Python memory allocator API. For example, :c:func:" -"`PyObject_Free` called on a memory block allocated by :c:func:`PyMem_Malloc`." +"Detect violations of the Python memory allocator API. For " +"example, :c:func:`PyObject_Free` called on a memory block allocated " +"by :c:func:`PyMem_Malloc`." msgstr "" msgid "Detect writes before the start of a buffer (buffer underflows)" @@ -762,8 +767,9 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -855,16 +861,16 @@ msgstr "" 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 :exc:" -"`SyntaxWarning`." +"first use of the affected name in the same scope. Previously this was " +"a :exc:`SyntaxWarning`." msgstr "" msgid "" "It is now possible to set a :ref:`special method ` to ``None`` " "to indicate that the corresponding operation is not available. For example, " "if a class sets :meth:`~object.__iter__` to ``None``, the class is not " -"iterable. (Contributed by Andrew Barnert and Ivan Levkivskyi in :issue:" -"`25958`.)" +"iterable. (Contributed by Andrew Barnert and Ivan Levkivskyi " +"in :issue:`25958`.)" msgstr "" msgid "" @@ -874,10 +880,10 @@ msgid "" msgstr "" msgid "" -"Import now raises the new exception :exc:`ModuleNotFoundError` (subclass of :" -"exc:`ImportError`) when it cannot find a module. Code that currently checks " -"for ImportError (in try-except) will still work. (Contributed by Eric Snow " -"in :issue:`15767`.)" +"Import now raises the new exception :exc:`ModuleNotFoundError` (subclass " +"of :exc:`ImportError`) when it cannot find a module. Code that currently " +"checks for ImportError (in try-except) will still work. (Contributed by Eric " +"Snow in :issue:`15767`.)" msgstr "" msgid "" @@ -901,8 +907,8 @@ msgstr "" msgid "" "Note that the pseudo-random generators in the :mod:`random` module should " -"*NOT* be used for security purposes. Use :mod:`secrets` on Python 3.6+ and :" -"func:`os.urandom` on Python 3.5 and earlier." +"*NOT* be used for security purposes. Use :mod:`secrets` on Python 3.6+ " +"and :func:`os.urandom` on Python 3.5 and earlier." msgstr "" msgid ":pep:`506` -- Adding A Secrets Module To The Standard Library" @@ -988,9 +994,9 @@ msgid "" msgstr "" msgid "" -"New :meth:`loop.get_exception_handler() ` method to get the current exception handler. " -"(Contributed by Yury Selivanov in :issue:`27040`.)" +"New :meth:`loop.get_exception_handler() " +"` method to get the current exception " +"handler. (Contributed by Yury Selivanov in :issue:`27040`.)" msgstr "" msgid "" @@ -1000,9 +1006,9 @@ msgid "" msgstr "" msgid "" -"The performance of :meth:`StreamReader.readexactly() ` has been improved. (Contributed by Mark Korenberg in :issue:" -"`28370`.)" +"The performance of :meth:`StreamReader.readexactly() " +"` has been improved. (Contributed by Mark " +"Korenberg in :issue:`28370`.)" msgstr "" msgid "" @@ -1019,15 +1025,15 @@ msgid "" msgstr "" msgid "" -":meth:`Future.set_exception ` will now raise :" -"exc:`TypeError` when passed an instance of the :exc:`StopIteration` " +":meth:`Future.set_exception ` will now " +"raise :exc:`TypeError` when passed an instance of the :exc:`StopIteration` " "exception. (Contributed by Chris Angelico in :issue:`26221`.)" msgstr "" msgid "" -"New :meth:`loop.connect_accepted_socket() ` method to be used by servers that accept " -"connections outside of asyncio, but that use asyncio to handle them. " +"New :meth:`loop.connect_accepted_socket() " +"` method to be used by servers that " +"accept connections outside of asyncio, but that use asyncio to handle them. " "(Contributed by Jim Fulton in :issue:`27392`.)" msgstr "" @@ -1067,10 +1073,10 @@ msgid "" msgstr "" msgid "" -"New constants: :const:`cmath.inf` and :const:`cmath.nan` to match :const:" -"`math.inf` and :const:`math.nan`, and also :const:`cmath.infj` and :const:" -"`cmath.nanj` to match the format used by complex repr. (Contributed by Mark " -"Dickinson in :issue:`23229`.)" +"New constants: :const:`cmath.inf` and :const:`cmath.nan` to " +"match :const:`math.inf` and :const:`math.nan`, and also :const:`cmath.infj` " +"and :const:`cmath.nanj` to match the format used by complex repr. " +"(Contributed by Mark Dickinson in :issue:`23229`.)" msgstr "" msgid "collections" @@ -1090,15 +1096,15 @@ msgstr "" msgid "" "The new :class:`~collections.abc.AsyncGenerator` abstract base class " -"represents asynchronous generators. (Contributed by Yury Selivanov in :issue:" -"`28720`.)" +"represents asynchronous generators. (Contributed by Yury Selivanov " +"in :issue:`28720`.)" msgstr "" msgid "" "The :func:`~collections.namedtuple` function now accepts an optional keyword " -"argument *module*, which, when specified, is used for the :attr:`~type." -"__module__` attribute of the returned named tuple class. (Contributed by " -"Raymond Hettinger in :issue:`17941`.)" +"argument *module*, which, when specified, is used for " +"the :attr:`~type.__module__` attribute of the returned named tuple class. " +"(Contributed by Raymond Hettinger in :issue:`17941`.)" msgstr "" msgid "" @@ -1128,9 +1134,9 @@ 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`.)" +"``__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 "" msgid "datetime" @@ -1146,10 +1152,10 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "" @@ -1161,8 +1167,8 @@ msgstr "" msgid "" "The :meth:`datetime.combine() ` now accepts an " -"optional *tzinfo* argument. (Contributed by Alexander Belopolsky in :issue:" -"`27661`.)" +"optional *tzinfo* argument. (Contributed by Alexander Belopolsky " +"in :issue:`27661`.)" msgstr "" msgid "decimal" @@ -1170,9 +1176,9 @@ msgstr "" msgid "" "New :meth:`Decimal.as_integer_ratio() ` " -"method that returns a pair ``(n, d)`` of integers that represent the given :" -"class:`~decimal.Decimal` instance as a fraction, in lowest terms and with a " -"positive denominator::" +"method that returns a pair ``(n, d)`` of integers that represent the " +"given :class:`~decimal.Decimal` instance as a fraction, in lowest terms and " +"with a positive denominator::" msgstr "" msgid "" @@ -1187,9 +1193,9 @@ msgid "distutils" msgstr "" msgid "" -"The ``default_format`` attribute has been removed from ``distutils.command." -"sdist.sdist`` and the ``formats`` attribute defaults to ``['gztar']``. " -"Although not anticipated, any code relying on the presence of " +"The ``default_format`` attribute has been removed from " +"``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 "" @@ -1201,8 +1207,8 @@ 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`.)" +"documentation for the legacy API. (Contributed by R. David Murray " +"in :issue:`24277`.)" msgstr "" msgid "" @@ -1216,12 +1222,13 @@ msgid "" msgstr "" 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`.)" +"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 "" msgid "encodings" @@ -1237,15 +1244,15 @@ msgid "enum" msgstr "" msgid "" -"Two new enumeration base classes have been added to the :mod:`enum` module: :" -"class:`~enum.Flag` and :class:`~enum.IntFlag`. Both are used to define " -"constants that can be combined using the bitwise operators. (Contributed by " -"Ethan Furman in :issue:`23591`.)" +"Two new enumeration base classes have been added to the :mod:`enum` " +"module: :class:`~enum.Flag` and :class:`~enum.IntFlag`. Both are used to " +"define constants that can be combined using the bitwise operators. " +"(Contributed by Ethan Furman in :issue:`23591`.)" msgstr "" msgid "" -"Many standard library modules have been updated to use the :class:`~enum." -"IntFlag` class for their constants." +"Many standard library modules have been updated to use " +"the :class:`~enum.IntFlag` class for their constants." msgstr "" msgid "" @@ -1298,28 +1305,28 @@ msgid "" msgstr "" 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.)" +"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 "" 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`.)" +"available with OpenSSL 1.1.0 and newer. (Contributed by Christian Heimes " +"in :issue:`27928`.)" msgstr "" msgid "http.client" msgstr "" 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`.)" +":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 "" msgid "idlelib and IDLE" @@ -1339,10 +1346,10 @@ msgid "" "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.)" +"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 "" msgid "" @@ -1355,8 +1362,8 @@ msgid "New in 3.6.2:" msgstr "" msgid "" -"Multiple fixes for autocompletion. (Contributed by Louie Lu in :issue:" -"`15786`.)" +"Multiple fixes for autocompletion. (Contributed by Louie Lu " +"in :issue:`15786`.)" msgstr "" msgid "New in 3.6.3:" @@ -1399,8 +1406,8 @@ msgid "" "Editor code context option revised. Box displays all context lines up to " "maxlines. Clicking on a context line jumps the editor to that line. " "Context colors for custom themes is added to Highlights tab of Settings " -"dialog. (Contributed by Cheryl Sabella and Terry Jan Reedy in :issue:" -"`33642`, :issue:`33768`, and :issue:`33679`.)" +"dialog. (Contributed by Cheryl Sabella and Terry Jan Reedy " +"in :issue:`33642`, :issue:`33768`, and :issue:`33679`.)" msgstr "" msgid "" @@ -1427,24 +1434,24 @@ msgid "importlib" msgstr "" 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. (Contributed by Eric " -"Snow in :issue:`15767`.)" +"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. (Contributed by " +"Eric Snow in :issue:`15767`.)" msgstr "" 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`." +":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 "" 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`." +":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 "" msgid "inspect" @@ -1459,11 +1466,11 @@ msgstr "" msgid "" "To reduce code churn when upgrading from Python 2.7 and the legacy :func:`!" -"inspect.getargspec` API, the previously documented deprecation of :func:" -"`inspect.getfullargspec` has been reversed. While this function is " -"convenient for single/source Python 2/3 code bases, the richer :func:" -"`inspect.signature` interface remains the recommended approach for new code. " -"(Contributed by Nick Coghlan in :issue:`27172`)" +"inspect.getargspec` API, the previously documented deprecation " +"of :func:`inspect.getfullargspec` has been reversed. While this function is " +"convenient for single/source Python 2/3 code bases, the " +"richer :func:`inspect.signature` interface remains the recommended approach " +"for new code. (Contributed by Nick Coghlan in :issue:`27172`)" msgstr "" msgid "json" @@ -1479,10 +1486,10 @@ msgid "logging" msgstr "" msgid "" -"The new :meth:`WatchedFileHandler.reopenIfNeeded() ` method has been added to add the ability " -"to check if the log file needs to be reopened. (Contributed by Marian Horban " -"in :issue:`24884`.)" +"The new :meth:`WatchedFileHandler.reopenIfNeeded() " +"` method has been added " +"to add the ability to check if the log file needs to be reopened. " +"(Contributed by Marian Horban in :issue:`24884`.)" msgstr "" msgid "math" @@ -1498,9 +1505,9 @@ msgid "multiprocessing" msgstr "" msgid "" -":ref:`Proxy Objects ` returned by :func:" -"`multiprocessing.Manager` can now be nested. (Contributed by Davin Potts in :" -"issue:`6766`.)" +":ref:`Proxy Objects ` returned " +"by :func:`multiprocessing.Manager` can now be nested. (Contributed by Davin " +"Potts in :issue:`6766`.)" msgstr "" msgid "os" @@ -1516,11 +1523,12 @@ msgid ":func:`~os.scandir` now supports :class:`bytes` paths on Windows." msgstr "" 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`.)" +"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 "" msgid "" @@ -1593,22 +1601,22 @@ msgid "re" msgstr "" 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'``. " +"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 "" 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`.)" +"to ``group()``. So ``mo['name']`` is now equivalent to " +"``mo.group('name')``. (Contributed by Eric Smith in :issue:`24454`.)" msgstr "" msgid "" -":class:`~re.Match` objects now support :meth:`index-like objects ` as group indices. (Contributed by Jeroen Demeyer and Xiang Zhang " -"in :issue:`27177`.)" +":class:`~re.Match` objects now support :meth:`index-like objects " +"` as group indices. (Contributed by Jeroen Demeyer and " +"Xiang Zhang in :issue:`27177`.)" msgstr "" msgid "readline" @@ -1616,8 +1624,8 @@ msgstr "" 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`.)" +"addition of input to the history list. (Contributed by Tyler Crompton " +"in :issue:`26870`.)" msgstr "" msgid "rlcompleter" @@ -1626,8 +1634,8 @@ msgstr "" 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`.)" +"keywords. (Contributed by Serhiy Storchaka in :issue:`25011` " +"and :issue:`25209`.)" msgstr "" msgid "shlex" @@ -1661,9 +1669,9 @@ msgid "socket" msgstr "" msgid "" -"The :func:`~socket.socket.ioctl` function now supports the :const:`~socket." -"SIO_LOOPBACK_FAST_PATH` control code. (Contributed by Daniel Stokes in :" -"issue:`26536`.)" +"The :func:`~socket.socket.ioctl` function now supports " +"the :const:`~socket.SIO_LOOPBACK_FAST_PATH` control code. (Contributed by " +"Daniel Stokes in :issue:`26536`.)" msgstr "" msgid "" @@ -1674,15 +1682,15 @@ msgstr "" msgid "" "The :meth:`~socket.socket.setsockopt` now supports the ``setsockopt(level, " -"optname, None, optlen: int)`` form. (Contributed by Christian Heimes in :" -"issue:`27744`.)" +"optname, None, optlen: int)`` form. (Contributed by Christian Heimes " +"in :issue:`27744`.)" msgstr "" msgid "" "The socket module now supports the address family :const:`~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.)" +"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 "" msgid "" @@ -1694,18 +1702,18 @@ msgid "socketserver" msgstr "" 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`.)" +"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 "" msgid "" -"The :attr:`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`.)" +"The :attr:`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 "" msgid "ssl" @@ -1718,8 +1726,8 @@ msgstr "" msgid "" "3DES has been removed from the default cipher suites and ChaCha20 Poly1305 " -"cipher suites have been added. (Contributed by Christian Heimes in :issue:" -"`27850` and :issue:`27766`.)" +"cipher suites have been added. (Contributed by Christian Heimes " +"in :issue:`27850` and :issue:`27766`.)" msgstr "" msgid "" @@ -1740,8 +1748,9 @@ msgid "" msgstr "" msgid "" -"All constants and flags have been converted to :class:`~enum.IntEnum` and :" -"class:`~enum.IntFlag`. (Contributed by Christian Heimes in :issue:`28025`.)" +"All constants and flags have been converted to :class:`~enum.IntEnum` " +"and :class:`~enum.IntFlag`. (Contributed by Christian Heimes " +"in :issue:`28025`.)" msgstr "" msgid "" @@ -1750,9 +1759,10 @@ msgid "" msgstr "" msgid "" -"Added :attr:`ssl.SSLContext.post_handshake_auth` to enable and :meth:`ssl." -"SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 post-handshake " -"authentication. (Contributed by Christian Heimes in :gh:`78851`.)" +"Added :attr:`ssl.SSLContext.post_handshake_auth` to enable " +"and :meth:`ssl.SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 " +"post-handshake authentication. (Contributed by Christian Heimes " +"in :gh:`78851`.)" msgstr "" msgid "statistics" @@ -1768,8 +1778,8 @@ msgstr "" msgid "" ":mod:`struct` now supports IEEE 754 half-precision floats via the ``'e'`` " -"format specifier. (Contributed by Eli Stevens, Mark Dickinson in :issue:" -"`11734`.)" +"format specifier. (Contributed by Eli Stevens, Mark Dickinson " +"in :issue:`11734`.)" msgstr "" msgid "subprocess" @@ -1778,9 +1788,9 @@ msgstr "" 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 explicitly call the :meth:`~subprocess." -"Popen.wait` method to read the exit status of the child process. " -"(Contributed by Victor Stinner in :issue:`26741`.)" +"protocol (``with proc: ...``) or explicitly call " +"the :meth:`~subprocess.Popen.wait` method to read the exit status of the " +"child process. (Contributed by Victor Stinner in :issue:`26741`.)" msgstr "" msgid "" @@ -1902,20 +1912,20 @@ msgstr "" msgid "" "The :mod:`typing` module has a much improved support for generic type " "aliases. For example ``Dict[str, Tuple[S, T]]`` is now a valid type " -"annotation. (Contributed by Guido van Rossum in `Github #195 `_.)" +"annotation. (Contributed by Guido van Rossum in `Github #195 `_.)" msgstr "" msgid "" -"The :class:`typing.ContextManager` class has been added for representing :" -"class:`contextlib.AbstractContextManager`. (Contributed by Brett Cannon in :" -"issue:`25609`.)" +"The :class:`typing.ContextManager` class has been added for " +"representing :class:`contextlib.AbstractContextManager`. (Contributed by " +"Brett Cannon in :issue:`25609`.)" msgstr "" msgid "" -"The :class:`typing.Collection` class has been added for representing :class:" -"`collections.abc.Collection`. (Contributed by Ivan Levkivskyi in :issue:" -"`27598`.)" +"The :class:`typing.Collection` class has been added for " +"representing :class:`collections.abc.Collection`. (Contributed by Ivan " +"Levkivskyi in :issue:`27598`.)" msgstr "" msgid "" @@ -1923,15 +1933,15 @@ msgid "" "variables. As introduced in :pep:`526`, a variable annotation wrapped in " "ClassVar indicates that a given attribute is intended to be used as a class " "variable and should not be set on instances of that class. (Contributed by " -"Ivan Levkivskyi in `Github #280 `_.)" +"Ivan Levkivskyi in `Github #280 `_.)" msgstr "" msgid "" "A new :const:`~typing.TYPE_CHECKING` constant that is assumed to be ``True`` " "by the static type checkers, but is ``False`` at runtime. (Contributed by " -"Guido van Rossum in `Github #230 `_.)" +"Guido van Rossum in `Github #230 `_.)" msgstr "" msgid "" @@ -1967,10 +1977,10 @@ msgid "The :class:`~unittest.mock.Mock` class has the following improvements:" msgstr "" 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`.)" +"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 "" msgid "" @@ -1984,10 +1994,10 @@ msgstr "" 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:" -"`AbstractHTTPHandler ` now falls back to use " -"chunked transfer encoding. (Contributed by Demian Brecht and Rolf Krahl in :" -"issue:`12319`.)" +"but no ``Content-Length`` header, rather than throwing an " +"error, :class:`AbstractHTTPHandler ` now falls " +"back to use chunked transfer encoding. (Contributed by Demian Brecht and " +"Rolf Krahl in :issue:`12319`.)" msgstr "" msgid "urllib.robotparser" @@ -2012,11 +2022,11 @@ msgid "warnings" msgstr "" 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`)." +"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 "" msgid "" @@ -2053,9 +2063,9 @@ msgid "" msgstr "" msgid "" -"The \"Object allocated at\" traceback is new and is only displayed if :mod:" -"`tracemalloc` is tracing Python memory allocations and if the :mod:" -"`warnings` module was already imported." +"The \"Object allocated at\" traceback is new and is only displayed " +"if :mod:`tracemalloc` is tracing Python memory allocations and if " +"the :mod:`warnings` module was already imported." msgstr "" msgid "winreg" @@ -2070,9 +2080,9 @@ msgid "winsound" msgstr "" msgid "" -"Allowed keyword arguments to be passed to :func:`Beep `, :" -"func:`MessageBeep `, and :func:`PlaySound ` (:issue:`27982`)." +"Allowed keyword arguments to be passed to :func:`Beep " +"`, :func:`MessageBeep `, " +"and :func:`PlaySound ` (:issue:`27982`)." msgstr "" msgid "xmlrpc.client" @@ -2116,8 +2126,8 @@ msgstr "" msgid "" "The Python interpreter now uses a 16-bit wordcode instead of bytecode which " "made a number of opcode optimizations possible. (Contributed by Demur Rumed " -"with input and reviews from Serhiy Storchaka and Victor Stinner in :issue:" -"`26647` and :issue:`28050`.)" +"with input and reviews from Serhiy Storchaka and Victor Stinner " +"in :issue:`26647` and :issue:`28050`.)" msgstr "" msgid "" @@ -2144,8 +2154,8 @@ msgstr "" 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`)." +"error handler ``surrogateescape`` (Contributed by Victor Stinner " +"in :issue:`25227`)." msgstr "" msgid "" @@ -2172,8 +2182,8 @@ msgstr "" 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`)." +"between 2x and 3.5x faster. (Contributed by Victor Stinner " +"in :issue:`25401`)." msgstr "" msgid "" @@ -2182,18 +2192,18 @@ msgid "" msgstr "" msgid "" -"Allocator functions of the :c:func:`PyMem_Malloc` domain (:c:macro:" -"`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. " +"Allocator functions of the :c:func:`PyMem_Malloc` domain " +"(:c:macro:`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 "" 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`)." +"deserializing many small objects (Contributed by Victor Stinner " +"in :issue:`27056`)." msgstr "" msgid "" @@ -2205,27 +2215,27 @@ msgid "" msgstr "" 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`)." +"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 "" 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`)." +"about 1.5--4 times faster. (Contributed by Serhiy Storchaka " +"in :issue:`26032`)." msgstr "" msgid "" ":class:`xml.etree.ElementTree` parsing, iteration and deepcopy performance " -"has been significantly improved. (Contributed by Serhiy Storchaka in :issue:" -"`25638`, :issue:`25873`, and :issue:`25869`.)" +"has been significantly improved. (Contributed by Serhiy Storchaka " +"in :issue:`25638`, :issue:`25873`, and :issue:`25869`.)" msgstr "" msgid "" "Creation of :class:`fractions.Fraction` instances from floats and decimals " -"is now 2 to 3 times faster. (Contributed by Serhiy Storchaka in :issue:" -"`25971`.)" +"is now 2 to 3 times faster. (Contributed by Serhiy Storchaka " +"in :issue:`25971`.)" msgstr "" msgid "Build and C API Changes" @@ -2234,16 +2244,16 @@ msgstr "" msgid "" "Python now requires some C99 support in the toolchain to build. Most " "notably, Python now uses standard integer types and macros in place of " -"custom macros like ``PY_LONG_LONG``. For more information, see :pep:`7` and :" -"issue:`17884`." +"custom macros like ``PY_LONG_LONG``. For more information, see :pep:`7` " +"and :issue:`17884`." msgstr "" msgid "" "Cross-compiling CPython with the Android NDK and the Android API level set " "to 21 (Android 5.0 Lollipop) 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`." +"emulator with only about 16 tests failures. See the Android meta-" +"issue :issue:`26865`." msgstr "" msgid "" @@ -2283,8 +2293,8 @@ msgid "" msgstr "" msgid "" -"The new :c:func:`PyErr_ResourceWarning` function can be used to generate a :" -"exc:`ResourceWarning` providing the source of the resource allocation. " +"The new :c:func:`PyErr_ResourceWarning` function can be used to generate " +"a :exc:`ResourceWarning` providing the source of the resource allocation. " "(Contributed by Victor Stinner in :issue:`26567`.)" msgstr "" @@ -2345,9 +2355,9 @@ msgstr "" msgid "" "A backslash-character pair that is not a valid escape sequence now generates " -"a :exc:`DeprecationWarning`. Although this will eventually become a :exc:" -"`SyntaxError`, that will not be for several Python releases. (Contributed by " -"Emanuel Barry in :issue:`27364`.)" +"a :exc:`DeprecationWarning`. Although this will eventually become " +"a :exc:`SyntaxError`, that will not be for several Python releases. " +"(Contributed by Emanuel Barry in :issue:`27364`.)" msgstr "" msgid "" @@ -2389,8 +2399,8 @@ msgstr "" msgid "" "The undocumented ``extra_path`` argument to the ``distutils.Distribution`` " "constructor is now considered deprecated and will raise a warning if set. " -"Support for this parameter will be removed in a future Python release. See :" -"issue:`27919` for details." +"Support for this parameter will be removed in a future Python release. " +"See :issue:`27919` for details." msgstr "" msgid "grp" @@ -2402,11 +2412,12 @@ msgid "" msgstr "" msgid "" -"The ``importlib.machinery.SourceFileLoader.load_module`` and ``importlib." -"machinery.SourcelessFileLoader.load_module`` methods are now deprecated. " -"They were the only remaining implementations of ``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`." +"The ``importlib.machinery.SourceFileLoader.load_module`` and " +"``importlib.machinery.SourcelessFileLoader.load_module`` methods are now " +"deprecated. They were the only remaining implementations of " +"``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 "" msgid "" @@ -2418,8 +2429,8 @@ msgstr "" 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`.)" +"functions is now deprecated. (Contributed by Serhiy Storchaka " +"in :issue:`25791` and :issue:`26754`.)" msgstr "" msgid "" @@ -2437,9 +2448,9 @@ msgstr "" 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`.)" +"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 "" msgid "" @@ -2465,9 +2476,10 @@ msgid "xml" msgstr "" msgid "" -"As mitigation against DTD and external entity retrieval, the :mod:`xml.dom." -"minidom` and :mod:`xml.sax` modules no longer process external entities by " -"default. (Contributed by Christian Heimes in :gh:`61441`.)" +"As mitigation against DTD and external entity retrieval, " +"the :mod:`xml.dom.minidom` and :mod:`xml.sax` modules no longer process " +"external entities by default. (Contributed by Christian Heimes " +"in :gh:`61441`.)" msgstr "" msgid "Deprecated functions and types of the C API" @@ -2475,9 +2487,9 @@ msgstr "" msgid "" "Undocumented functions :c:func:`!PyUnicode_AsEncodedObject`, :c:func:`!" -"PyUnicode_AsDecodedObject`, :c:func:`!PyUnicode_AsEncodedUnicode` and :c:" -"func:`!PyUnicode_AsDecodedUnicode` are deprecated now. Use the :ref:`generic " -"codec based API ` instead." +"PyUnicode_AsDecodedObject`, :c:func:`!PyUnicode_AsEncodedUnicode` " +"and :c:func:`!PyUnicode_AsDecodedUnicode` are deprecated now. Use " +"the :ref:`generic codec based API ` instead." msgstr "" msgid "Deprecated Build Options" @@ -2499,37 +2511,37 @@ msgstr "" msgid "" "Unknown escapes consisting of ``'\\'`` and an ASCII letter in regular " -"expressions will now cause an error. In replacement templates for :func:`re." -"sub` they are still allowed, but deprecated. The :const:`re.LOCALE` flag can " -"now only be used with binary patterns." +"expressions will now cause an error. In replacement templates " +"for :func:`re.sub` they are still allowed, but deprecated. " +"The :const:`re.LOCALE` flag can now only be used with binary patterns." msgstr "" 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. (Contributed by Yury Selivanov in :issue:`13248`.)" +"``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. (Contributed by Yury Selivanov in :issue:`13248`.)" msgstr "" 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." +"``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 "" 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)." +"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 "" 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." +"Use :class:`io.TextIOWrapper` for reading compressed text files " +"in :term:`universal newlines` mode." msgstr "" msgid "" @@ -2560,8 +2572,8 @@ 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`.)" +"to ``stderr`` instead of ``stdout``. (Contributed by Serhiy Storchaka " +"in :issue:`23034`.)" msgstr "" msgid "Changes in the Python API" @@ -2569,8 +2581,8 @@ msgstr "" msgid "" ":func:`open() ` will no longer allow combining the ``'U'`` mode flag " -"with ``'+'``. (Contributed by Jeff Balogh and John O'Connor in :issue:" -"`2091`.)" +"with ``'+'``. (Contributed by Jeff Balogh and John O'Connor " +"in :issue:`2091`.)" msgstr "" msgid "" @@ -2584,8 +2596,8 @@ msgid "" msgstr "" msgid "" -"When :meth:`importlib.abc.Loader.exec_module` is defined, :meth:`importlib." -"abc.Loader.create_module` must also be defined." +"When :meth:`importlib.abc.Loader.exec_module` is " +"defined, :meth:`importlib.abc.Loader.create_module` must also be defined." msgstr "" msgid "" @@ -2596,13 +2608,14 @@ msgstr "" msgid "" "The format of the :attr:`!codeobject.co_lnotab` attribute of code objects " "changed to support a negative line number delta. By default, Python does not " -"emit bytecode with a negative line number delta. Functions using :attr:" -"`frame.f_lineno`, ``PyFrame_GetLineNumber()`` or ``PyCode_Addr2Line()`` are " -"not affected. Functions directly decoding :attr:`!co_lnotab` should be " -"updated to use a signed 8-bit integer type for the line number delta, but " -"this is only required to support applications using a negative line number " -"delta. See ``Objects/lnotab_notes.txt`` for the :attr:`!co_lnotab` format " -"and how to decode it, and see the :pep:`511` for the rationale." +"emit bytecode with a negative line number delta. Functions " +"using :attr:`frame.f_lineno`, ``PyFrame_GetLineNumber()`` or " +"``PyCode_Addr2Line()`` are not affected. Functions directly decoding :attr:`!" +"co_lnotab` should be updated to use a signed 8-bit integer type for the line " +"number delta, but this is only required to support applications using a " +"negative line number delta. See ``Objects/lnotab_notes.txt`` for the :attr:`!" +"co_lnotab` format and how to decode it, and see the :pep:`511` for the " +"rationale." msgstr "" msgid "" @@ -2613,25 +2626,25 @@ msgid "" msgstr "" msgid "" -"Reading the :attr:`!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`." +"Reading the :attr:`!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 "" msgid "" -"The :mod:`!imp` module now raises a :exc:`DeprecationWarning` instead of :" -"exc:`PendingDeprecationWarning`." +"The :mod:`!imp` module now raises a :exc:`DeprecationWarning` instead " +"of :exc:`PendingDeprecationWarning`." msgstr "" msgid "" -"The following modules have had missing APIs added to their :attr:`~module." -"__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. (Contributed by Joel " -"Taddei and Jacek Kołodziej in :issue:`23883`.)" +"The following modules have had missing APIs added to " +"their :attr:`~module.__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. (Contributed by Joel Taddei and Jacek Kołodziej in :issue:`23883`.)" msgstr "" msgid "" @@ -2641,24 +2654,25 @@ msgid "" msgstr "" 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`.)" +"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 "" 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. " +"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 "" msgid "" -":func:`!spwd.getspnam` now raises a :exc:`PermissionError` instead of :exc:" -"`KeyError` if the user doesn't have privileges." +":func:`!spwd.getspnam` now raises a :exc:`PermissionError` instead " +"of :exc:`KeyError` if the user doesn't have privileges." msgstr "" msgid "" @@ -2677,11 +2691,12 @@ msgid "" msgstr "" msgid "" -"All optional arguments 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`.)" +"All optional arguments 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 "" msgid "" @@ -2690,15 +2705,16 @@ msgid "" msgstr "" 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." +"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 "" msgid "" @@ -2721,24 +2737,25 @@ msgid "" msgstr "" 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. (Contributed " -"by Demian Brecht and Rolf Krahl with tweaks from Martin Panter in :issue:" -"`12319`.)" +"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. (Contributed by Demian Brecht and Rolf Krahl with tweaks from Martin " +"Panter in :issue:`12319`.)" msgstr "" msgid "" -"The :class:`~csv.DictReader` now returns rows of type :class:`~collections." -"OrderedDict`. (Contributed by Steve Holden in :issue:`27842`.)" +"The :class:`~csv.DictReader` now returns rows of " +"type :class:`~collections.OrderedDict`. (Contributed by Steve Holden " +"in :issue:`27842`.)" msgstr "" msgid "" -"The :const:`!crypt.METHOD_CRYPT` will no longer be added to ``crypt." -"methods`` if unsupported by the platform. (Contributed by Victor Stinner in :" -"issue:`25287`.)" +"The :const:`!crypt.METHOD_CRYPT` will no longer be added to " +"``crypt.methods`` if unsupported by the platform. (Contributed by Victor " +"Stinner in :issue:`25287`.)" msgstr "" msgid "" @@ -2776,8 +2793,8 @@ msgid "" "unrecognized compression values. Previously a plain :exc:`RuntimeError` was " "raised. Additionally, calling :class:`~zipfile.ZipFile` methods on a closed " "ZipFile or calling the :meth:`~zipfile.ZipFile.write` method on a ZipFile " -"created with mode ``'r'`` will raise a :exc:`ValueError`. Previously, a :exc:" -"`RuntimeError` was raised in those scenarios." +"created with mode ``'r'`` will raise a :exc:`ValueError`. Previously, " +"a :exc:`RuntimeError` was raised in those scenarios." msgstr "" msgid "" @@ -2792,13 +2809,14 @@ msgstr "" msgid "" "With the introduction of :exc:`ModuleNotFoundError`, import system consumers " "may start expecting import system replacements to raise that more specific " -"exception when appropriate, rather than the less-specific :exc:" -"`ImportError`. To provide future compatibility with such consumers, " -"implementers of alternative import systems that completely replace :func:" -"`__import__` will need to update their implementations to raise the new " -"subclass when a module can't be found at all. Implementers of compliant " -"plugins to the default import system shouldn't need to make any changes, as " -"the default import system will raise the new subclass when appropriate." +"exception when appropriate, rather than the less-" +"specific :exc:`ImportError`. To provide future compatibility with such " +"consumers, implementers of alternative import systems that completely " +"replace :func:`__import__` will need to update their implementations to " +"raise the new subclass when a module can't be found at all. Implementers of " +"compliant plugins to the default import system shouldn't need to make any " +"changes, as the default import system will raise the new subclass when " +"appropriate." msgstr "" msgid "Changes in the C API" @@ -2833,25 +2851,25 @@ msgstr "" msgid "" "The new :opcode:`!FORMAT_VALUE` and :opcode:`BUILD_STRING` opcodes as part " "of the :ref:`formatted string literal ` implementation. " -"(Contributed by Eric Smith in :issue:`25483` and Serhiy Storchaka in :issue:" -"`27078`.)" +"(Contributed by Eric Smith in :issue:`25483` and Serhiy Storchaka " +"in :issue:`27078`.)" msgstr "" msgid "" "The new :opcode:`!BUILD_CONST_KEY_MAP` opcode to optimize the creation of " -"dictionaries with constant keys. (Contributed by Serhiy Storchaka in :issue:" -"`27140`.)" +"dictionaries with constant keys. (Contributed by Serhiy Storchaka " +"in :issue:`27140`.)" msgstr "" msgid "" "The function call opcodes have been heavily reworked for better performance " "and simpler implementation. The :opcode:`MAKE_FUNCTION`, :opcode:`!" "CALL_FUNCTION`, :opcode:`!CALL_FUNCTION_KW` and :opcode:`!" -"BUILD_MAP_UNPACK_WITH_CALL` opcodes have been modified, the new :opcode:" -"`CALL_FUNCTION_EX` and :opcode:`!BUILD_TUPLE_UNPACK_WITH_CALL` have been " -"added, and ``CALL_FUNCTION_VAR``, ``CALL_FUNCTION_VAR_KW`` and " -"``MAKE_CLOSURE`` opcodes have been removed. (Contributed by Demur Rumed in :" -"issue:`27095`, and Serhiy Storchaka in :issue:`27213`, :issue:`28257`.)" +"BUILD_MAP_UNPACK_WITH_CALL` opcodes have been modified, the " +"new :opcode:`CALL_FUNCTION_EX` and :opcode:`!BUILD_TUPLE_UNPACK_WITH_CALL` " +"have been added, and ``CALL_FUNCTION_VAR``, ``CALL_FUNCTION_VAR_KW`` and " +"``MAKE_CLOSURE`` opcodes have been removed. (Contributed by Demur Rumed " +"in :issue:`27095`, and Serhiy Storchaka in :issue:`27213`, :issue:`28257`.)" msgstr "" msgid "" @@ -2880,8 +2898,8 @@ msgid "" msgstr "" msgid "" -"More selective regeneration targets are also defined - see :source:`Makefile." -"pre.in` for details." +"More selective regeneration targets are also defined - " +"see :source:`Makefile.pre.in` for details." msgstr "" msgid "(Contributed by Victor Stinner in :issue:`23404`.)" @@ -2905,8 +2923,8 @@ msgstr "" msgid "" "The ``PyExc_RecursionErrorInst`` singleton that was part of the public API " "has been removed as its members being never cleared may cause a segfault " -"during finalization of the interpreter. (Contributed by Xavier de Gaye in :" -"issue:`22898` and :issue:`30697`.)" +"during finalization of the interpreter. (Contributed by Xavier de Gaye " +"in :issue:`22898` and :issue:`30697`.)" msgstr "" msgid "Notable changes in Python 3.6.5" @@ -2937,12 +2955,12 @@ msgid "Notable changes in Python 3.6.10" msgstr "" msgid "" -"Due to significant security concerns, the *reuse_address* parameter of :meth:" -"`asyncio.loop.create_datagram_endpoint` is no longer supported. This is " -"because of the behavior of the socket option ``SO_REUSEADDR`` in UDP. For " -"more details, see the documentation for ``loop.create_datagram_endpoint()``. " -"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:" -"`37228`.)" +"Due to significant security concerns, the *reuse_address* parameter " +"of :meth:`asyncio.loop.create_datagram_endpoint` is no longer supported. " +"This is because of the behavior of the socket option ``SO_REUSEADDR`` in " +"UDP. For more details, see the documentation for " +"``loop.create_datagram_endpoint()``. (Contributed by Kyle Stanley, Antoine " +"Pitrou, and Yury Selivanov in :issue:`37228`.)" msgstr "" msgid "Notable changes in Python 3.6.13" @@ -2950,13 +2968,14 @@ msgstr "" msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " -"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." -"parse.parse_qsl`. Due to security concerns, and to conform with newer W3C " -"recommendations, this has been changed to allow only a single separator key, " -"with ``&`` as the default. This change also affects :func:`!cgi.parse` and :" -"func:`!cgi.parse_multipart` as they use the affected functions internally. " -"For more details, please see their respective documentation. (Contributed by " -"Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)" +"parameter separators in :func:`urllib.parse.parse_qs` " +"and :func:`urllib.parse.parse_qsl`. Due to security concerns, and to " +"conform with newer W3C recommendations, this has been changed to allow only " +"a single separator key, with ``&`` as the default. This change also " +"affects :func:`!cgi.parse` and :func:`!cgi.parse_multipart` as they use the " +"affected functions internally. For more details, please see their respective " +"documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran and Ken Jin " +"in :issue:`42967`.)" msgstr "" msgid "Notable changes in Python 3.6.14" @@ -2975,6 +2994,6 @@ msgid "" "forms of attacks. Following the WHATWG specification that updates RFC 3986, " "ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are stripped from " "the URL by the parser :func:`urllib.parse` preventing such attacks. The " -"removal characters are controlled by a new module level variable ``urllib." -"parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" +"removal characters are controlled by a new module level variable " +"``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" msgstr "" diff --git a/whatsnew/3.7.po b/whatsnew/3.7.po index a97c96a..a98cd9a 100644 --- a/whatsnew/3.7.po +++ b/whatsnew/3.7.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-21 18:18+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.7, compared to 3.6. " -"Python 3.7 was released on June 27, 2018. For full details, see the :ref:" -"`changelog `." +"Python 3.7 was released on June 27, 2018. For full details, see " +"the :ref:`changelog `." msgstr "" msgid "Summary -- Release Highlights" @@ -96,8 +96,9 @@ msgid "Significant improvements in the standard library:" msgstr "" msgid "" -"The :mod:`asyncio` module has received new features, significant :ref:" -"`usability and performance improvements `." +"The :mod:`asyncio` module has received new features, " +"significant :ref:`usability and performance improvements " +"`." msgstr "" msgid "" @@ -142,13 +143,13 @@ msgstr "" msgid "" "New documentation translations: `Japanese `_, " -"`French `_, and `Korean `_." +"`French `_, and `Korean `_." msgstr "" msgid "" -"This release features notable performance improvements in many areas. The :" -"ref:`whatsnew37-perf` section lists them in detail." +"This release features notable performance improvements in many areas. " +"The :ref:`whatsnew37-perf` section lists them in detail." msgstr "" msgid "" @@ -239,9 +240,9 @@ msgid "" "automatically coerce that locale to an available UTF-8 based locale as " "described in the documentation of the new :envvar:`PYTHONCOERCECLOCALE` " "environment variable. Automatically setting ``LC_CTYPE`` this way means that " -"both the core interpreter and locale-aware C extensions (such as :mod:" -"`readline`) will assume the use of UTF-8 as the default text encoding, " -"rather than ASCII." +"both the core interpreter and locale-aware C extensions (such " +"as :mod:`readline`) will assume the use of UTF-8 as the default text " +"encoding, rather than ASCII." msgstr "" msgid "" @@ -252,15 +253,16 @@ msgstr "" msgid "" "As part of this change, the default error handler for :data:`~sys.stdin` " "and :data:`~sys.stdout` is now ``surrogateescape`` (rather than ``strict``) " -"when using any of the defined coercion target locales (currently ``C." -"UTF-8``, ``C.utf8``, and ``UTF-8``). The default error handler for :data:" -"`~sys.stderr` continues to be ``backslashreplace``, regardless of locale." +"when using any of the defined coercion target locales (currently " +"``C.UTF-8``, ``C.utf8``, and ``UTF-8``). The default error handler " +"for :data:`~sys.stderr` continues to be ``backslashreplace``, regardless of " +"locale." msgstr "" msgid "" "Locale coercion is silent by default, but to assist in debugging potentially " -"locale related integration problems, explicit warnings (emitted directly on :" -"data:`~sys.stderr`) can be requested by setting " +"locale related integration problems, explicit warnings (emitted directly " +"on :data:`~sys.stderr`) can be requested by setting " "``PYTHONCOERCECLOCALE=warn``. This setting will also cause the Python " "runtime to emit a warning if the legacy C locale remains active when the " "core interpreter is initialized." @@ -293,8 +295,8 @@ msgstr "" msgid "" "When in UTF-8 mode, CPython ignores the locale settings, and uses the UTF-8 " -"encoding by default. The error handlers for :data:`sys.stdin` and :data:" -"`sys.stdout` streams are set to ``surrogateescape``." +"encoding by default. The error handlers for :data:`sys.stdin` " +"and :data:`sys.stdout` streams are set to ``surrogateescape``." msgstr "" msgid "" @@ -337,9 +339,10 @@ msgid "" "Built-in ``breakpoint()`` calls :func:`sys.breakpointhook`. By default, the " "latter imports :mod:`pdb` and then calls ``pdb.set_trace()``, but by binding " "``sys.breakpointhook()`` to the function of your choosing, ``breakpoint()`` " -"can enter any debugger. Additionally, the environment variable :envvar:" -"`PYTHONBREAKPOINT` can be set to the callable of your debugger of choice. " -"Set ``PYTHONBREAKPOINT=0`` to completely disable built-in ``breakpoint()``." +"can enter any debugger. Additionally, the environment " +"variable :envvar:`PYTHONBREAKPOINT` can be set to the callable of your " +"debugger of choice. Set ``PYTHONBREAKPOINT=0`` to completely disable built-" +"in ``breakpoint()``." msgstr "" msgid ":pep:`553` -- Built-in breakpoint()" @@ -363,11 +366,11 @@ msgid "" ":pep:`539` changes this by providing a new :ref:`Thread Specific Storage " "(TSS) API ` to CPython which supersedes use of " "the existing TLS API within the CPython interpreter, while deprecating the " -"existing API. The TSS API uses a new type :c:type:`Py_tss_t` instead of :c:" -"expr:`int` to represent TSS keys--an opaque type the definition of which may " -"depend on the underlying TLS implementation. Therefore, this will allow to " -"build CPython on platforms where the native TLS key is defined in a way that " -"cannot be safely cast to :c:expr:`int`." +"existing API. The TSS API uses a new type :c:type:`Py_tss_t` instead " +"of :c:expr:`int` to represent TSS keys--an opaque type the definition of " +"which may depend on the underlying TLS implementation. Therefore, this will " +"allow to build CPython on platforms where the native TLS key is defined in a " +"way that cannot be safely cast to :c:expr:`int`." msgstr "" msgid "" @@ -389,8 +392,8 @@ msgstr "" msgid "" "Python 3.7 allows defining :meth:`~module.__getattr__` on modules and will " -"call it whenever a module attribute is otherwise not found. Defining :meth:" -"`~module.__dir__` on modules is now also allowed." +"call it whenever a module attribute is otherwise not found. " +"Defining :meth:`~module.__dir__` on modules is now also allowed." msgstr "" msgid "" @@ -483,10 +486,11 @@ msgid "" msgstr "" msgid "" -"Previously both :exc:`DeprecationWarning` and :exc:" -"`PendingDeprecationWarning` were only visible when running tests, which " -"meant that developers primarily writing single file scripts or using Python " -"interactively could be surprised by breaking changes in the APIs they used." +"Previously both :exc:`DeprecationWarning` " +"and :exc:`PendingDeprecationWarning` were only visible when running tests, " +"which meant that developers primarily writing single file scripts or using " +"Python interactively could be surprised by breaking changes in the APIs they " +"used." msgstr "" msgid ":pep:`565` -- Show DeprecationWarning in ``__main__``" @@ -500,14 +504,15 @@ msgstr "" msgid "" "Initially :pep:`484` was designed in such way that it would not introduce " -"*any* changes to the core CPython interpreter. Now type hints and the :mod:" -"`typing` module are extensively used by the community, so this restriction " -"is removed. The PEP introduces two special methods :meth:`~object." -"__class_getitem__` and :meth:`~object.__mro_entries__`, these methods are " -"now used by most classes and special constructs in :mod:`typing`. As a " -"result, the speed of various operations with types increased up to 7 times, " -"the generic types can be used without metaclass conflicts, and several long " -"standing bugs in :mod:`typing` module are fixed." +"*any* changes to the core CPython interpreter. Now type hints and " +"the :mod:`typing` module are extensively used by the community, so this " +"restriction is removed. The PEP introduces two special " +"methods :meth:`~object.__class_getitem__` " +"and :meth:`~object.__mro_entries__`, these methods are now used by most " +"classes and special constructs in :mod:`typing`. As a result, the speed of " +"various operations with types increased up to 7 times, the generic types can " +"be used without metaclass conflicts, and several long standing bugs " +"in :mod:`typing` module are fixed." msgstr "" msgid ":pep:`560` -- Core support for typing module and generic types" @@ -532,8 +537,8 @@ msgid "" "used for invalidation instead of the source timestamp. Such ``.pyc`` files " "are called \"hash-based\". By default, Python still uses timestamp-based " "invalidation and does not generate hash-based ``.pyc`` files at runtime. " -"Hash-based ``.pyc`` files may be generated with :mod:`py_compile` or :mod:" -"`compileall`." +"Hash-based ``.pyc`` files may be generated with :mod:`py_compile` " +"or :mod:`compileall`." msgstr "" msgid "" @@ -586,28 +591,28 @@ msgid "Python Development Mode (-X dev)" msgstr "" msgid "" -"The new :option:`-X` ``dev`` command line option or the new :envvar:" -"`PYTHONDEVMODE` environment variable can be used to enable :ref:`Python " -"Development Mode `. When in development mode, Python performs " -"additional runtime checks that are too expensive to be enabled by default. " -"See :ref:`Python Development Mode ` documentation for the full " -"description." +"The new :option:`-X` ``dev`` command line option or the " +"new :envvar:`PYTHONDEVMODE` environment variable can be used to " +"enable :ref:`Python Development Mode `. When in development mode, " +"Python performs additional runtime checks that are too expensive to be " +"enabled by default. See :ref:`Python Development Mode ` " +"documentation for the full description." msgstr "" msgid "Other Language Changes" msgstr "" msgid "" -"An :keyword:`await` expression and comprehensions containing an :keyword:" -"`async for` clause were illegal in the expressions in :ref:`formatted string " -"literals ` due to a problem with the implementation. In Python " -"3.7 this restriction was lifted." +"An :keyword:`await` expression and comprehensions containing " +"an :keyword:`async for` clause were illegal in the expressions " +"in :ref:`formatted string literals ` due to a problem with the " +"implementation. In Python 3.7 this restriction was lifted." msgstr "" msgid "" "More than 255 arguments can now be passed to a function, and a function can " -"now have more than 255 parameters. (Contributed by Serhiy Storchaka in :" -"issue:`12844` and :issue:`18896`.)" +"now have more than 255 parameters. (Contributed by Serhiy Storchaka " +"in :issue:`12844` and :issue:`18896`.)" msgstr "" msgid "" @@ -624,8 +629,8 @@ msgstr "" msgid "" ":exc:`ImportError` now displays module name and module ``__file__`` path " -"when ``from ... import ...`` fails. (Contributed by Matthias Bussonnier in :" -"issue:`29546`.)" +"when ``from ... import ...`` fails. (Contributed by Matthias Bussonnier " +"in :issue:`29546`.)" msgstr "" msgid "" @@ -635,15 +640,16 @@ msgstr "" msgid "" "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " -"``format(str(self), '')``. (Contributed by Serhiy Storchaka in :issue:" -"`28974`.)" +"``format(str(self), '')``. (Contributed by Serhiy Storchaka " +"in :issue:`28974`.)" msgstr "" msgid "" -"In order to better support dynamic creation of stack traces, :class:`types." -"TracebackType` can now be instantiated from Python code, and the :attr:" -"`~traceback.tb_next` attribute on :ref:`tracebacks ` is " -"now writable. (Contributed by Nathaniel J. Smith in :issue:`30579`.)" +"In order to better support dynamic creation of stack " +"traces, :class:`types.TracebackType` can now be instantiated from Python " +"code, and the :attr:`~traceback.tb_next` attribute on :ref:`tracebacks " +"` is now writable. (Contributed by Nathaniel J. Smith " +"in :issue:`30579`.)" msgstr "" msgid "" @@ -654,9 +660,10 @@ msgid "" msgstr "" msgid "" -"The new :option:`-X` ``importtime`` option or the :envvar:" -"`PYTHONPROFILEIMPORTTIME` environment variable can be used to show the " -"timing of each module import. (Contributed by Inada Naoki in :issue:`31415`.)" +"The new :option:`-X` ``importtime`` option or " +"the :envvar:`PYTHONPROFILEIMPORTTIME` environment variable can be used to " +"show the timing of each module import. (Contributed by Inada Naoki " +"in :issue:`31415`.)" msgstr "" msgid "New Modules" @@ -691,9 +698,9 @@ msgstr "" msgid "" "The new :deco:`~dataclasses.dataclass` decorator provides a way to declare " "*data classes*. A data class describes its attributes using class variable " -"annotations. Its constructor and other magic methods, such as :meth:" -"`~object.__repr__`, :meth:`~object.__eq__`, and :meth:`~object.__hash__` are " -"generated automatically." +"annotations. Its constructor and other magic methods, such " +"as :meth:`~object.__repr__`, :meth:`~object.__eq__`, " +"and :meth:`~object.__hash__` are generated automatically." msgstr "" msgid "Example::" @@ -723,10 +730,10 @@ msgid "" "The new :mod:`importlib.resources` module provides several new APIs and one " "new ABC for access to, opening, and reading *resources* inside packages. " "Resources are roughly similar to files inside packages, but they needn't be " -"actual files on the physical file system. Module loaders can provide a :" -"meth:`!get_resource_reader` function which returns a :class:`!importlib.abc." -"ResourceReader` instance to support this new API. Built-in file path " -"loaders and zip file loaders both support this." +"actual files on the physical file system. Module loaders can provide " +"a :meth:`!get_resource_reader` function which returns a :class:`!" +"importlib.abc.ResourceReader` instance to support this new API. Built-in " +"file path loaders and zip file loaders both support this." msgstr "" msgid "Contributed by Barry Warsaw and Brett Cannon in :issue:`32248`." @@ -744,36 +751,36 @@ msgid "argparse" msgstr "" msgid "" -"The new :meth:`ArgumentParser.parse_intermixed_args() ` method allows intermixing options and " -"positional arguments. (Contributed by paul.j3 in :issue:`14191`.)" +"The new :meth:`ArgumentParser.parse_intermixed_args() " +"` method allows intermixing " +"options and positional arguments. (Contributed by paul.j3 in :issue:`14191`.)" msgstr "" msgid "asyncio" msgstr "" msgid "" -"The :mod:`asyncio` module has received many new features, usability and :ref:" -"`performance improvements `. Notable changes " -"include:" +"The :mod:`asyncio` module has received many new features, usability " +"and :ref:`performance improvements `. Notable " +"changes include:" msgstr "" msgid "" "The new :term:`provisional ` :func:`asyncio.run` function " "can be used to run a coroutine from synchronous code by automatically " -"creating and destroying the event loop. (Contributed by Yury Selivanov in :" -"issue:`32314`.)" +"creating and destroying the event loop. (Contributed by Yury Selivanov " +"in :issue:`32314`.)" msgstr "" msgid "" "asyncio gained support for :mod:`contextvars`. :meth:`loop.call_soon() " -"`, :meth:`loop.call_soon_threadsafe() `, :meth:`loop.call_later() `, :meth:`loop.call_at() `, and :meth:" -"`Future.add_done_callback() ` have a new " -"optional keyword-only *context* parameter. :class:`Tasks ` now " -"track their context automatically. See :pep:`567` for more details. " -"(Contributed by Yury Selivanov in :issue:`32436`.)" +"`, :meth:`loop.call_soon_threadsafe() " +"`, :meth:`loop.call_later() " +"`, :meth:`loop.call_at() `, " +"and :meth:`Future.add_done_callback() ` " +"have a new optional keyword-only *context* parameter. :class:`Tasks " +"` now track their context automatically. See :pep:`567` for " +"more details. (Contributed by Yury Selivanov in :issue:`32436`.)" msgstr "" msgid "" @@ -784,23 +791,24 @@ msgstr "" msgid "" "The new :meth:`loop.start_tls() ` method can be used " -"to upgrade an existing connection to TLS. (Contributed by Yury Selivanov in :" -"issue:`23749`.)" +"to upgrade an existing connection to TLS. (Contributed by Yury Selivanov " +"in :issue:`23749`.)" msgstr "" msgid "" "The new :meth:`loop.sock_recv_into() ` method " "allows reading data from a socket directly into a provided buffer making it " -"possible to reduce data copies. (Contributed by Antoine Pitrou in :issue:" -"`31819`.)" +"possible to reduce data copies. (Contributed by Antoine Pitrou " +"in :issue:`31819`.)" msgstr "" msgid "" -"The new :func:`asyncio.current_task` function returns the currently running :" -"class:`~asyncio.Task` instance, and the new :func:`asyncio.all_tasks` " -"function returns a set of all existing ``Task`` instances in a given loop. " -"The :meth:`!Task.current_task` and :meth:`!Task.all_tasks` methods have been " -"deprecated. (Contributed by Andrew Svetlov in :issue:`32250`.)" +"The new :func:`asyncio.current_task` function returns the currently " +"running :class:`~asyncio.Task` instance, and the " +"new :func:`asyncio.all_tasks` function returns a set of all existing " +"``Task`` instances in a given loop. The :meth:`!Task.current_task` " +"and :meth:`!Task.all_tasks` methods have been deprecated. (Contributed by " +"Andrew Svetlov in :issue:`32250`.)" msgstr "" msgid "" @@ -813,16 +821,16 @@ msgid "" "The new :func:`asyncio.get_running_loop` function returns the currently " "running loop, and raises a :exc:`RuntimeError` if no loop is running. This " "is in contrast with :func:`asyncio.get_event_loop`, which will *create* a " -"new event loop if none is running. (Contributed by Yury Selivanov in :issue:" -"`32269`.)" +"new event loop if none is running. (Contributed by Yury Selivanov " +"in :issue:`32269`.)" msgstr "" msgid "" -"The new :meth:`StreamWriter.wait_closed() ` coroutine method allows waiting until the stream writer is " -"closed. The new :meth:`StreamWriter.is_closing() ` method can be used to determine if the writer is closing. " -"(Contributed by Andrew Svetlov in :issue:`32391`.)" +"The new :meth:`StreamWriter.wait_closed() " +"` coroutine method allows waiting until " +"the stream writer is closed. The new :meth:`StreamWriter.is_closing() " +"` method can be used to determine if the " +"writer is closing. (Contributed by Andrew Svetlov in :issue:`32391`.)" msgstr "" msgid "" @@ -832,26 +840,26 @@ msgid "" msgstr "" msgid "" -"The new :meth:`Future.get_loop() ` and ``Task." -"get_loop()`` methods return the instance of the loop on which a task or a " -"future were created. :meth:`Server.get_loop() ` " -"allows doing the same for :class:`asyncio.Server` objects. (Contributed by " -"Yury Selivanov in :issue:`32415` and Srinivas Reddy Thatiparthy in :issue:" -"`32418`.)" +"The new :meth:`Future.get_loop() ` and " +"``Task.get_loop()`` methods return the instance of the loop on which a task " +"or a future were created. :meth:`Server.get_loop() " +"` allows doing the same for :class:`asyncio.Server` " +"objects. (Contributed by Yury Selivanov in :issue:`32415` and Srinivas Reddy " +"Thatiparthy in :issue:`32418`.)" msgstr "" msgid "" "It is now possible to control how instances of :class:`asyncio.Server` begin " "serving. Previously, the server would start serving immediately when " -"created. The new *start_serving* keyword argument to :meth:`loop." -"create_server() ` and :meth:`loop." -"create_unix_server() `, as well as :meth:" -"`Server.start_serving() `, and :meth:`Server." -"serve_forever() ` can be used to decouple " -"server instantiation and serving. The new :meth:`Server.is_serving() " -"` method returns ``True`` if the server is " -"serving. :class:`~asyncio.Server` objects are now asynchronous context " -"managers::" +"created. The new *start_serving* keyword argument " +"to :meth:`loop.create_server() ` " +"and :meth:`loop.create_unix_server() `, as " +"well as :meth:`Server.start_serving() `, " +"and :meth:`Server.serve_forever() ` can be " +"used to decouple server instantiation and serving. The " +"new :meth:`Server.is_serving() ` method returns " +"``True`` if the server is serving. :class:`~asyncio.Server` objects are now " +"asynchronous context managers::" msgstr "" msgid "" @@ -867,25 +875,25 @@ msgid "(Contributed by Yury Selivanov in :issue:`32662`.)" msgstr "" msgid "" -"Callback objects returned by :func:`loop.call_later() ` gained the new :meth:`when() ` method " -"which returns an absolute scheduled callback timestamp. (Contributed by " -"Andrew Svetlov in :issue:`32741`.)" +"Callback objects returned by :func:`loop.call_later() " +"` gained the new :meth:`when() " +"` method which returns an absolute scheduled " +"callback timestamp. (Contributed by Andrew Svetlov in :issue:`32741`.)" msgstr "" msgid "" -"The :meth:`loop.create_datagram_endpoint() \\ ` method gained support for Unix sockets. " -"(Contributed by Quentin Dawans in :issue:`31245`.)" +"The :meth:`loop.create_datagram_endpoint() \\ " +"` method gained support for Unix " +"sockets. (Contributed by Quentin Dawans in :issue:`31245`.)" msgstr "" msgid "" "The :func:`asyncio.open_connection`, :func:`asyncio.start_server` " -"functions, :meth:`loop.create_connection() `, :meth:`loop.create_server() `, :meth:`loop.create_accepted_socket() ` methods and their corresponding UNIX socket " -"variants now accept the *ssl_handshake_timeout* keyword argument. " +"functions, :meth:`loop.create_connection() " +"`, :meth:`loop.create_server() " +"`, :meth:`loop.create_accepted_socket() " +"` methods and their corresponding UNIX " +"socket variants now accept the *ssl_handshake_timeout* keyword argument. " "(Contributed by Neil Aspinall in :issue:`29970`.)" msgstr "" @@ -896,29 +904,32 @@ msgid "" msgstr "" msgid "" -"The asyncio source has been converted to use the :keyword:`async`/:keyword:" -"`await` syntax. (Contributed by Andrew Svetlov in :issue:`32193`.)" +"The asyncio source has been converted to use " +"the :keyword:`async`/:keyword:`await` syntax. (Contributed by Andrew Svetlov " +"in :issue:`32193`.)" msgstr "" msgid "" -"The new :meth:`ReadTransport.is_reading() ` method can be used to determine the reading state of the " -"transport. Additionally, calls to :meth:`ReadTransport.resume_reading() " -"` and :meth:`ReadTransport." -"pause_reading() ` are now idempotent. " -"(Contributed by Yury Selivanov in :issue:`32356`.)" +"The new :meth:`ReadTransport.is_reading() " +"` method can be used to determine the " +"reading state of the transport. Additionally, calls " +"to :meth:`ReadTransport.resume_reading() " +"` " +"and :meth:`ReadTransport.pause_reading() " +"` are now idempotent. (Contributed by " +"Yury Selivanov in :issue:`32356`.)" msgstr "" msgid "" "Loop methods which accept socket paths now support passing :term:`path-like " -"objects `. (Contributed by Yury Selivanov in :issue:" -"`32066`.)" +"objects `. (Contributed by Yury Selivanov " +"in :issue:`32066`.)" msgstr "" msgid "" "In :mod:`asyncio` TCP sockets on Linux are now created with ``TCP_NODELAY`` " -"flag set by default. (Contributed by Yury Selivanov and Victor Stinner in :" -"issue:`27456`.)" +"flag set by default. (Contributed by Yury Selivanov and Victor Stinner " +"in :issue:`27456`.)" msgstr "" msgid "" @@ -978,8 +989,8 @@ msgid "concurrent.futures" msgstr "" msgid "" -":class:`ProcessPoolExecutor ` and :" -"class:`ThreadPoolExecutor ` now " +":class:`ProcessPoolExecutor ` " +"and :class:`ThreadPoolExecutor ` now " "support the new *initializer* and *initargs* constructor arguments. " "(Contributed by Antoine Pitrou in :issue:`21423`.)" msgstr "" @@ -1000,11 +1011,12 @@ msgid "" msgstr "" msgid "" -"The new :deco:`~contextlib.asynccontextmanager`, :class:`~contextlib." -"AbstractAsyncContextManager`, and :class:`~contextlib.AsyncExitStack` have " -"been added to complement their synchronous counterparts. (Contributed by " -"Jelle Zijlstra in :issue:`29679` and :issue:`30241`, and by Alexander Mohr " -"and Ilya Kulakov in :issue:`29302`.)" +"The " +"new :deco:`~contextlib.asynccontextmanager`, :class:`~contextlib.AbstractAsyncContextManager`, " +"and :class:`~contextlib.AsyncExitStack` have been added to complement their " +"synchronous counterparts. (Contributed by Jelle Zijlstra in :issue:`29679` " +"and :issue:`30241`, and by Alexander Mohr and Ilya Kulakov " +"in :issue:`29302`.)" msgstr "" msgid "cProfile" @@ -1012,8 +1024,8 @@ msgstr "" msgid "" "The :mod:`!cProfile` command line now accepts ``-m module_name`` as an " -"alternative to script path. (Contributed by Sanyam Khurana in :issue:" -"`21862`.)" +"alternative to script path. (Contributed by Sanyam Khurana " +"in :issue:`21862`.)" msgstr "" msgid "crypt" @@ -1035,8 +1047,9 @@ msgstr "" msgid "" "The new :meth:`datetime.fromisoformat() ` " "method constructs a :class:`~datetime.datetime` object from a string in one " -"of the formats output by :meth:`datetime.isoformat() `. (Contributed by Paul Ganssle in :issue:`15873`.)" +"of the formats output by :meth:`datetime.isoformat() " +"`. (Contributed by Paul Ganssle " +"in :issue:`15873`.)" msgstr "" msgid "" @@ -1057,8 +1070,8 @@ msgstr "" msgid "" "The :mod:`decimal` module now uses :ref:`context variables ` to store the decimal context. (Contributed by Yury Selivanov in :" -"issue:`32630`.)" +"pep567>` to store the decimal context. (Contributed by Yury Selivanov " +"in :issue:`32630`.)" msgstr "" msgid "dis" @@ -1091,12 +1104,12 @@ msgid "" msgstr "" msgid "" -"In Python 3.8, attempting to check for non-Enum objects in :class:`~enum." -"Enum` classes will raise a :exc:`TypeError` (e.g. ``1 in Color``); " -"similarly, attempting to check for non-Flag objects in a :class:`~enum.Flag` " -"member will raise :exc:`TypeError` (e.g. ``1 in Perm.RW``); currently, both " -"operations return :const:`False` instead and are deprecated. (Contributed by " -"Ethan Furman in :issue:`33217`.)" +"In Python 3.8, attempting to check for non-Enum objects " +"in :class:`~enum.Enum` classes will raise a :exc:`TypeError` (e.g. ``1 in " +"Color``); similarly, attempting to check for non-Flag objects in " +"a :class:`~enum.Flag` member will raise :exc:`TypeError` (e.g. ``1 in " +"Perm.RW``); currently, both operations return :const:`False` instead and are " +"deprecated. (Contributed by Ethan Furman in :issue:`33217`.)" msgstr "" msgid "functools" @@ -1116,8 +1129,8 @@ msgid "" "be used before a POSIX ``fork()`` call to make the GC copy-on-write friendly " "or to speed up collection. The new :func:`gc.unfreeze` functions reverses " "this operation. Additionally, :func:`gc.get_freeze_count` can be used to " -"obtain the number of frozen objects. (Contributed by Li Zekun in :issue:" -"`31558`.)" +"obtain the number of frozen objects. (Contributed by Li Zekun " +"in :issue:`31558`.)" msgstr "" msgid "hmac" @@ -1133,9 +1146,10 @@ msgid "http.client" msgstr "" msgid "" -":class:`~http.client.HTTPConnection` and :class:`~http.client." -"HTTPSConnection` now support the new *blocksize* argument for improved " -"upload throughput. (Contributed by Nir Soffer in :issue:`31945`.)" +":class:`~http.client.HTTPConnection` " +"and :class:`~http.client.HTTPSConnection` now support the new *blocksize* " +"argument for improved upload throughput. (Contributed by Nir Soffer " +"in :issue:`31945`.)" msgstr "" msgid "http.server" @@ -1167,8 +1181,8 @@ msgid "idlelib and IDLE" msgstr "" msgid "" -"Multiple fixes for autocompletion. (Contributed by Louie Lu in :issue:" -"`15786`.)" +"Multiple fixes for autocompletion. (Contributed by Louie Lu " +"in :issue:`15786`.)" msgstr "" msgid "" @@ -1202,8 +1216,8 @@ msgid "" "Editor code context option revised. Box displays all context lines up to " "maxlines. Clicking on a context line jumps the editor to that line. " "Context colors for custom themes is added to Highlights tab of Settings " -"dialog. (Contributed by Cheryl Sabella and Terry Jan Reedy in :issue:" -"`33642`, :issue:`33768`, and :issue:`33679`.)" +"dialog. (Contributed by Cheryl Sabella and Terry Jan Reedy " +"in :issue:`33642`, :issue:`33768`, and :issue:`33679`.)" msgstr "" msgid "" @@ -1247,8 +1261,8 @@ msgid "" "Add optional line numbers for IDLE editor windows. Windows open without line " "numbers unless set otherwise in the General tab of the configuration " "dialog. Line numbers for an existing window are shown and hidden in the " -"Options menu. (Contributed by Tal Einat and Saimadhav Heblikar in :issue:" -"`17535`.)" +"Options menu. (Contributed by Tal Einat and Saimadhav Heblikar " +"in :issue:`17535`.)" msgstr "" msgid "importlib" @@ -1256,9 +1270,9 @@ msgstr "" msgid "" "The :class:`!importlib.abc.ResourceReader` ABC was introduced to support the " -"loading of resources from packages. See also :ref:" -"`whatsnew37_importlib_resources`. (Contributed by Barry Warsaw, Brett Cannon " -"in :issue:`32248`.)" +"loading of resources from packages. See " +"also :ref:`whatsnew37_importlib_resources`. (Contributed by Barry Warsaw, " +"Brett Cannon in :issue:`32248`.)" msgstr "" msgid "" @@ -1285,27 +1299,27 @@ msgstr "" msgid "" "The new :meth:`TextIOWrapper.reconfigure() ` " "method can be used to reconfigure the text stream with the new settings. " -"(Contributed by Antoine Pitrou in :issue:`30526` and INADA Naoki in :issue:" -"`15216`.)" +"(Contributed by Antoine Pitrou in :issue:`30526` and INADA Naoki " +"in :issue:`15216`.)" msgstr "" msgid "ipaddress" msgstr "" msgid "" -"The new ``subnet_of()`` and ``supernet_of()`` methods of :class:`ipaddress." -"IPv6Network` and :class:`ipaddress.IPv4Network` can be used for network " -"containment tests. (Contributed by Michel Albert and Cheryl Sabella in :" -"issue:`20825`.)" +"The new ``subnet_of()`` and ``supernet_of()`` methods " +"of :class:`ipaddress.IPv6Network` and :class:`ipaddress.IPv4Network` can be " +"used for network containment tests. (Contributed by Michel Albert and Cheryl " +"Sabella in :issue:`20825`.)" msgstr "" msgid "itertools" msgstr "" msgid "" -":func:`itertools.islice` now accepts :meth:`integer-like objects ` as start, stop, and slice arguments. (Contributed by Will " -"Roberts in :issue:`30537`.)" +":func:`itertools.islice` now accepts :meth:`integer-like objects " +"` as start, stop, and slice arguments. (Contributed by " +"Will Roberts in :issue:`30537`.)" msgstr "" msgid "locale" @@ -1403,15 +1417,15 @@ msgstr "" msgid "" "The new :func:`~os.register_at_fork` function allows registering Python " -"callbacks to be executed at process fork. (Contributed by Antoine Pitrou in :" -"issue:`16500`.)" +"callbacks to be executed at process fork. (Contributed by Antoine Pitrou " +"in :issue:`16500`.)" msgstr "" msgid "" -"Added :func:`os.preadv` (combine the functionality of :func:`os.readv` and :" -"func:`os.pread`) and :func:`os.pwritev` functions (combine the functionality " -"of :func:`os.writev` and :func:`os.pwrite`). (Contributed by Pablo Galindo " -"in :issue:`31368`.)" +"Added :func:`os.preadv` (combine the functionality of :func:`os.readv` " +"and :func:`os.pread`) and :func:`os.pwritev` functions (combine the " +"functionality of :func:`os.writev` and :func:`os.pwrite`). (Contributed by " +"Pablo Galindo in :issue:`31368`.)" msgstr "" msgid "" @@ -1426,9 +1440,9 @@ msgid "" msgstr "" msgid "" -"The structure returned by :func:`os.stat` now contains the :attr:`~os." -"stat_result.st_fstype` attribute on Solaris and its derivatives. " -"(Contributed by Jesús Cea Avión in :issue:`32659`.)" +"The structure returned by :func:`os.stat` now contains " +"the :attr:`~os.stat_result.st_fstype` attribute on Solaris and its " +"derivatives. (Contributed by Jesús Cea Avión in :issue:`32659`.)" msgstr "" msgid "pathlib" @@ -1461,9 +1475,9 @@ msgid "" ":func:`py_compile.compile` -- and by extension, :mod:`compileall` -- now " "respects the :envvar:`SOURCE_DATE_EPOCH` environment variable by " "unconditionally creating ``.pyc`` files for hash-based validation. This " -"allows for guaranteeing `reproducible builds `_ of ``.pyc`` files when they are created eagerly. (Contributed by " -"Bernhard M. Wiedemann in :issue:`29708`.)" +"allows for guaranteeing `reproducible builds `_ of ``.pyc`` files when they are created eagerly. (Contributed " +"by Bernhard M. Wiedemann in :issue:`29708`.)" msgstr "" msgid "pydoc" @@ -1471,8 +1485,8 @@ msgstr "" msgid "" "The pydoc server can now bind to an arbitrary hostname specified by the new " -"``-n`` command-line argument. (Contributed by Feanil Patel in :issue:" -"`31128`.)" +"``-n`` command-line argument. (Contributed by Feanil Patel " +"in :issue:`31128`.)" msgstr "" msgid "queue" @@ -1488,8 +1502,8 @@ msgstr "" msgid "" "The flags :const:`re.ASCII`, :const:`re.LOCALE` and :const:`re.UNICODE` can " -"be set within the scope of a group. (Contributed by Serhiy Storchaka in :" -"issue:`31690`.)" +"be set within the scope of a group. (Contributed by Serhiy Storchaka " +"in :issue:`31690`.)" msgstr "" msgid "" @@ -1508,14 +1522,14 @@ msgstr "" msgid "" ":exc:`FutureWarning` is now emitted if a regular expression contains " "character set constructs that will change semantically in the future, such " -"as nested sets and set operations. (Contributed by Serhiy Storchaka in :" -"issue:`30349`.)" +"as nested sets and set operations. (Contributed by Serhiy Storchaka " +"in :issue:`30349`.)" msgstr "" msgid "" -"Compiled regular expression and match objects can now be copied using :func:" -"`copy.copy` and :func:`copy.deepcopy`. (Contributed by Serhiy Storchaka in :" -"issue:`10076`.)" +"Compiled regular expression and match objects can now be copied " +"using :func:`copy.copy` and :func:`copy.deepcopy`. (Contributed by Serhiy " +"Storchaka in :issue:`10076`.)" msgstr "" msgid "signal" @@ -1540,16 +1554,16 @@ msgstr "" msgid "" "The new :func:`socket.close` function closes the passed socket file " "descriptor. This function should be used instead of :func:`os.close` for " -"better compatibility across platforms. (Contributed by Christian Heimes in :" -"issue:`32454`.)" +"better compatibility across platforms. (Contributed by Christian Heimes " +"in :issue:`32454`.)" msgstr "" msgid "" "The :mod:`socket` module now exposes the :ref:`socket.TCP_CONGESTION ` (Linux 2.6.13), :ref:`socket.TCP_USER_TIMEOUT ` (Linux 2.6.37), and :ref:`socket.TCP_NOTSENT_LOWAT ` (Linux 3.12) constants. (Contributed by Omar Sandoval in :issue:" -"`26273` and Nathaniel J. Smith in :issue:`29728`.)" +"constants>` (Linux 3.12) constants. (Contributed by Omar Sandoval " +"in :issue:`26273` and Nathaniel J. Smith in :issue:`29728`.)" msgstr "" msgid "" @@ -1567,32 +1581,35 @@ msgid "socketserver" msgstr "" msgid "" -":meth:`socketserver.ThreadingMixIn.server_close ` now waits until all non-daemon threads complete. :meth:" -"`socketserver.ForkingMixIn.server_close ` now waits until all child processes complete." +":meth:`socketserver.ThreadingMixIn.server_close " +"` now waits until all non-daemon " +"threads complete. :meth:`socketserver.ForkingMixIn.server_close " +"` now waits until all child processes " +"complete." msgstr "" msgid "" -"Add a new :attr:`socketserver.ForkingMixIn.block_on_close ` class attribute to :class:`socketserver." -"ForkingMixIn` and :class:`socketserver.ThreadingMixIn` classes. Set the " -"class attribute to ``False`` to get the pre-3.7 behaviour." +"Add a new :attr:`socketserver.ForkingMixIn.block_on_close " +"` class attribute " +"to :class:`socketserver.ForkingMixIn` " +"and :class:`socketserver.ThreadingMixIn` classes. Set the class attribute to " +"``False`` to get the pre-3.7 behaviour." msgstr "" msgid "sqlite3" msgstr "" msgid "" -":class:`sqlite3.Connection` now exposes the :meth:`~sqlite3.Connection." -"backup` method when the underlying SQLite library is at version 3.6.11 or " -"higher. (Contributed by Lele Gaifax in :issue:`27645`.)" +":class:`sqlite3.Connection` now exposes " +"the :meth:`~sqlite3.Connection.backup` method when the underlying SQLite " +"library is at version 3.6.11 or higher. (Contributed by Lele Gaifax " +"in :issue:`27645`.)" msgstr "" msgid "" -"The *database* argument of :func:`sqlite3.connect` now accepts any :term:" -"`path-like object`, instead of just a string. (Contributed by Anders " -"Lorentsen in :issue:`31843`.)" +"The *database* argument of :func:`sqlite3.connect` now accepts " +"any :term:`path-like object`, instead of just a string. (Contributed by " +"Anders Lorentsen in :issue:`31843`.)" msgstr "" msgid "ssl" @@ -1605,9 +1622,9 @@ msgid "" "the host name check now raises :exc:`~ssl.SSLCertVerificationError` and " "aborts the handshake with a proper TLS Alert message. The new exception " "contains additional information. Host name validation can be customized " -"with :attr:`SSLContext.hostname_checks_common_name `. (Contributed by Christian Heimes in :issue:" -"`31399`.)" +"with :attr:`SSLContext.hostname_checks_common_name " +"`. (Contributed by Christian " +"Heimes in :issue:`31399`.)" msgstr "" msgid "" @@ -1623,9 +1640,9 @@ msgid "" msgstr "" msgid "" -":func:`!match_hostname` no longer supports partial wildcards like ``www*." -"example.org``. (Contributed by Mandeep Singh in :issue:`23033` and Christian " -"Heimes in :issue:`31399`.)" +":func:`!match_hostname` no longer supports partial wildcards like " +"``www*.example.org``. (Contributed by Mandeep Singh in :issue:`23033` and " +"Christian Heimes in :issue:`31399`.)" msgstr "" msgid "" @@ -1638,11 +1655,11 @@ msgstr "" msgid "" "Validation of server certificates containing internationalized domain names " -"(IDNs) is now supported. As part of this change, the :attr:`SSLSocket." -"server_hostname ` attribute now stores the " -"expected hostname in A-label form (``\"xn--pythn-mua.org\"``), rather than " -"the U-label form (``\"pythön.org\"``). (Contributed by Nathaniel J. Smith " -"and Christian Heimes in :issue:`28414`.)" +"(IDNs) is now supported. As part of this change, " +"the :attr:`SSLSocket.server_hostname ` " +"attribute now stores the expected hostname in A-label form (``\"xn--pythn-" +"mua.org\"``), rather than the U-label form (``\"pythön.org\"``). " +"(Contributed by Nathaniel J. Smith and Christian Heimes in :issue:`28414`.)" msgstr "" msgid "" @@ -1650,31 +1667,34 @@ msgid "" "OpenSSL 1.1.1. At the time of Python 3.7.0 release, OpenSSL 1.1.1 is still " "under development and TLS 1.3 hasn't been finalized yet. The TLS 1.3 " "handshake and protocol behaves slightly differently than TLS 1.2 and " -"earlier, see :ref:`ssl-tlsv1_3`. (Contributed by Christian Heimes in :issue:" -"`32947`, :issue:`20995`, :issue:`29136`, :issue:`30622` and :issue:`33618`)" +"earlier, see :ref:`ssl-tlsv1_3`. (Contributed by Christian Heimes " +"in :issue:`32947`, :issue:`20995`, :issue:`29136`, :issue:`30622` " +"and :issue:`33618`)" msgstr "" msgid "" ":class:`~ssl.SSLSocket` and :class:`~ssl.SSLObject` no longer have a public " "constructor. Direct instantiation was never a documented and supported " -"feature. Instances must be created with :class:`~ssl.SSLContext` methods :" -"meth:`~ssl.SSLContext.wrap_socket` and :meth:`~ssl.SSLContext.wrap_bio`. " -"(Contributed by Christian Heimes in :issue:`32951`)" +"feature. Instances must be created with :class:`~ssl.SSLContext` " +"methods :meth:`~ssl.SSLContext.wrap_socket` " +"and :meth:`~ssl.SSLContext.wrap_bio`. (Contributed by Christian Heimes " +"in :issue:`32951`)" msgstr "" msgid "" "OpenSSL 1.1 APIs for setting the minimum and maximum TLS protocol version " -"are available as :attr:`SSLContext.minimum_version ` and :attr:`SSLContext.maximum_version `. Supported protocols are indicated by several new flags, " -"such as :data:`~ssl.HAS_TLSv1_1`. (Contributed by Christian Heimes in :issue:" -"`32609`.)" +"are available as :attr:`SSLContext.minimum_version " +"` and :attr:`SSLContext.maximum_version " +"`. Supported protocols are indicated by " +"several new flags, such as :data:`~ssl.HAS_TLSv1_1`. (Contributed by " +"Christian Heimes in :issue:`32609`.)" msgstr "" msgid "" -"Added :attr:`ssl.SSLContext.post_handshake_auth` to enable and :meth:`ssl." -"SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 post-handshake " -"authentication. (Contributed by Christian Heimes in :gh:`78851`.)" +"Added :attr:`ssl.SSLContext.post_handshake_auth` to enable " +"and :meth:`ssl.SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 " +"post-handshake authentication. (Contributed by Christian Heimes " +"in :gh:`78851`.)" msgstr "" msgid "string" @@ -1705,26 +1725,28 @@ msgstr "" msgid "" "On Windows the default for *close_fds* was changed from ``False`` to " "``True`` when redirecting the standard handles. It's now possible to set " -"*close_fds* to true when redirecting the standard handles. See :class:" -"`subprocess.Popen`. This means that *close_fds* now defaults to ``True`` on " -"all supported platforms. (Contributed by Segev Finer in :issue:`19764`.)" +"*close_fds* to true when redirecting the standard handles. " +"See :class:`subprocess.Popen`. This means that *close_fds* now defaults to " +"``True`` on all supported platforms. (Contributed by Segev Finer " +"in :issue:`19764`.)" msgstr "" msgid "" -"The subprocess module is now more graceful when handling :exc:" -"`KeyboardInterrupt` during :func:`subprocess.call`, :func:`subprocess.run`, " -"or in a :class:`~subprocess.Popen` context manager. It now waits a short " -"amount of time for the child to exit, before continuing the handling of the " -"``KeyboardInterrupt`` exception. (Contributed by Gregory P. Smith in :issue:" -"`25942`.)" +"The subprocess module is now more graceful when " +"handling :exc:`KeyboardInterrupt` " +"during :func:`subprocess.call`, :func:`subprocess.run`, or in " +"a :class:`~subprocess.Popen` context manager. It now waits a short amount " +"of time for the child to exit, before continuing the handling of the " +"``KeyboardInterrupt`` exception. (Contributed by Gregory P. Smith " +"in :issue:`25942`.)" msgstr "" msgid "sys" msgstr "" msgid "" -"The new :func:`sys.breakpointhook` hook function is called by the built-in :" -"func:`breakpoint`. (Contributed by Barry Warsaw in :issue:`31353`.)" +"The new :func:`sys.breakpointhook` hook function is called by the built-" +"in :func:`breakpoint`. (Contributed by Barry Warsaw in :issue:`31353`.)" msgstr "" msgid "" @@ -1734,28 +1756,28 @@ msgstr "" msgid "" "The new :func:`sys.get_coroutine_origin_tracking_depth` function returns the " -"current coroutine origin tracking depth, as set by the new :func:`sys." -"set_coroutine_origin_tracking_depth`. :mod:`asyncio` has been converted to " -"use this new API instead of the deprecated :func:`!sys." -"set_coroutine_wrapper`. (Contributed by Nathaniel J. Smith in :issue:" -"`32591`.)" +"current coroutine origin tracking depth, as set by the " +"new :func:`sys.set_coroutine_origin_tracking_depth`. :mod:`asyncio` has " +"been converted to use this new API instead of the deprecated :func:`!" +"sys.set_coroutine_wrapper`. (Contributed by Nathaniel J. Smith " +"in :issue:`32591`.)" msgstr "" msgid "time" msgstr "" msgid "" -":pep:`564` adds six new functions with nanosecond resolution to the :mod:" -"`time` module:" +":pep:`564` adds six new functions with nanosecond resolution to " +"the :mod:`time` module:" msgstr "" msgid "New clock identifiers have been added:" msgstr "" msgid "" -":const:`time.CLOCK_BOOTTIME` (Linux): Identical to :const:`time." -"CLOCK_MONOTONIC`, except it also includes any time that the system is " -"suspended." +":const:`time.CLOCK_BOOTTIME` (Linux): Identical " +"to :const:`time.CLOCK_MONOTONIC`, except it also includes any time that the " +"system is suspended." msgstr "" msgid "" @@ -1804,17 +1826,17 @@ msgid "types" msgstr "" msgid "" -"The new :class:`~types.WrapperDescriptorType`, :class:`~types." -"MethodWrapperType`, :class:`~types.MethodDescriptorType`, and :class:`~types." -"ClassMethodDescriptorType` classes are now available. (Contributed by Manuel " -"Krebber and Guido van Rossum in :issue:`29377`, and Serhiy Storchaka in :" -"issue:`32265`.)" +"The " +"new :class:`~types.WrapperDescriptorType`, :class:`~types.MethodWrapperType`, :class:`~types.MethodDescriptorType`, " +"and :class:`~types.ClassMethodDescriptorType` classes are now available. " +"(Contributed by Manuel Krebber and Guido van Rossum in :issue:`29377`, and " +"Serhiy Storchaka in :issue:`32265`.)" msgstr "" msgid "" "The new :func:`types.resolve_bases` function resolves MRO entries " -"dynamically as specified by :pep:`560`. (Contributed by Ivan Levkivskyi in :" -"issue:`32717`.)" +"dynamically as specified by :pep:`560`. (Contributed by Ivan Levkivskyi " +"in :issue:`32717`.)" msgstr "" msgid "unicodedata" @@ -1832,9 +1854,10 @@ msgstr "" msgid "" "The new ``-k`` command-line option allows filtering tests by a name " "substring or a Unix shell-like pattern. For example, ``python -m unittest -k " -"foo`` runs ``foo_tests.SomeTest.test_something``, ``bar_tests.SomeTest." -"test_foo``, but not ``bar_tests.FooTest.test_something``. (Contributed by " -"Jonas Haag in :issue:`32071`.)" +"foo`` runs ``foo_tests.SomeTest.test_something``, " +"``bar_tests.SomeTest.test_foo``, but not " +"``bar_tests.FooTest.test_something``. (Contributed by Jonas Haag " +"in :issue:`32071`.)" msgstr "" msgid "unittest.mock" @@ -1847,10 +1870,11 @@ msgid "" msgstr "" msgid "" -"The new :func:`~unittest.mock.seal` function allows sealing :class:" -"`~unittest.mock.Mock` instances, which will disallow further creation of " -"attribute mocks. The seal is applied recursively to all attributes that are " -"themselves mocks. (Contributed by Mario Corchero in :issue:`30541`.)" +"The new :func:`~unittest.mock.seal` function allows " +"sealing :class:`~unittest.mock.Mock` instances, which will disallow further " +"creation of attribute mocks. The seal is applied recursively to all " +"attributes that are themselves mocks. (Contributed by Mario Corchero " +"in :issue:`30541`.)" msgstr "" msgid "urllib.parse" @@ -1877,8 +1901,8 @@ msgstr "" msgid "" "The new :attr:`UUID.is_safe ` attribute relays " "information from the platform about whether generated UUIDs are generated " -"with a multiprocessing-safe method. (Contributed by Barry Warsaw in :issue:" -"`22807`.)" +"with a multiprocessing-safe method. (Contributed by Barry Warsaw " +"in :issue:`22807`.)" msgstr "" msgid "" @@ -1931,8 +1955,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Nick Coghlan and Victor Stinner in :issue:`20361`, :issue:" -"`32043`, and :issue:`32230`.)" +"(Contributed by Nick Coghlan and Victor Stinner " +"in :issue:`20361`, :issue:`32043`, and :issue:`32230`.)" msgstr "" msgid "" @@ -1945,9 +1969,10 @@ msgid "xml" msgstr "" msgid "" -"As mitigation against DTD and external entity retrieval, the :mod:`xml.dom." -"minidom` and :mod:`xml.sax` modules no longer process external entities by " -"default. (Contributed by Christian Heimes in :gh:`61441`.)" +"As mitigation against DTD and external entity retrieval, " +"the :mod:`xml.dom.minidom` and :mod:`xml.sax` modules no longer process " +"external entities by default. (Contributed by Christian Heimes " +"in :gh:`61441`.)" msgstr "" msgid "xml.etree" @@ -2001,10 +2026,10 @@ msgid "C API Changes" msgstr "" msgid "" -"A new API for thread-local storage has been implemented. See :ref:" -"`whatsnew37-pep539` for an overview and :ref:`thread-specific-storage-api` " -"for a complete reference. (Contributed by Masayuki Yamamoto in :issue:" -"`25658`.)" +"A new API for thread-local storage has been implemented. " +"See :ref:`whatsnew37-pep539` for an overview and :ref:`thread-specific-" +"storage-api` for a complete reference. (Contributed by Masayuki Yamamoto " +"in :issue:`25658`.)" msgstr "" msgid "" @@ -2014,8 +2039,8 @@ msgstr "" msgid "" "The new :c:func:`PyImport_GetModule` function returns the previously " -"imported module with the given name. (Contributed by Eric Snow in :issue:" -"`28411`.)" +"imported module with the given name. (Contributed by Eric Snow " +"in :issue:`28411`.)" msgstr "" msgid "" @@ -2029,67 +2054,71 @@ msgid "" msgstr "" msgid "" -"The :mod:`tracemalloc` now exposes a C API through the new :c:func:" -"`PyTraceMalloc_Track` and :c:func:`PyTraceMalloc_Untrack` functions. " -"(Contributed by Victor Stinner in :issue:`30054`.)" +"The :mod:`tracemalloc` now exposes a C API through the " +"new :c:func:`PyTraceMalloc_Track` and :c:func:`PyTraceMalloc_Untrack` " +"functions. (Contributed by Victor Stinner in :issue:`30054`.)" msgstr "" msgid "" -"The new :ref:`import__find__load__start ` and :ref:" -"`import__find__load__done ` static markers can be used to " -"trace module imports. (Contributed by Christian Heimes in :issue:`31574`.)" +"The new :ref:`import__find__load__start ` " +"and :ref:`import__find__load__done ` static markers can be " +"used to trace module imports. (Contributed by Christian Heimes " +"in :issue:`31574`.)" msgstr "" msgid "" -"The fields :c:member:`!name` and :c:member:`!doc` of structures :c:type:" -"`PyMemberDef`, :c:type:`PyGetSetDef`, :c:type:`PyStructSequence_Field`, :c:" -"type:`PyStructSequence_Desc`, and :c:struct:`!wrapperbase` are now of type " -"``const char *`` rather of ``char *``. (Contributed by Serhiy Storchaka in :" -"issue:`28761`.)" +"The fields :c:member:`!name` and :c:member:`!doc` of " +"structures :c:type:`PyMemberDef`, :c:type:`PyGetSetDef`, :c:type:`PyStructSequence_Field`, :c:type:`PyStructSequence_Desc`, " +"and :c:struct:`!wrapperbase` are now of type ``const char *`` rather of " +"``char *``. (Contributed by Serhiy Storchaka in :issue:`28761`.)" msgstr "" msgid "" -"The result of :c:func:`PyUnicode_AsUTF8AndSize` and :c:func:" -"`PyUnicode_AsUTF8` is now of type ``const char *`` rather of ``char *``. " -"(Contributed by Serhiy Storchaka in :issue:`28769`.)" +"The result of :c:func:`PyUnicode_AsUTF8AndSize` " +"and :c:func:`PyUnicode_AsUTF8` is now of type ``const char *`` rather of " +"``char *``. (Contributed by Serhiy Storchaka in :issue:`28769`.)" msgstr "" msgid "" -"The result of :c:func:`PyMapping_Keys`, :c:func:`PyMapping_Values` and :c:" -"func:`PyMapping_Items` is now always a list, rather than a list or a tuple. " -"(Contributed by Oren Milman in :issue:`28280`.)" +"The result of :c:func:`PyMapping_Keys`, :c:func:`PyMapping_Values` " +"and :c:func:`PyMapping_Items` is now always a list, rather than a list or a " +"tuple. (Contributed by Oren Milman in :issue:`28280`.)" msgstr "" msgid "" -"Added functions :c:func:`PySlice_Unpack` and :c:func:" -"`PySlice_AdjustIndices`. (Contributed by Serhiy Storchaka in :issue:`27867`.)" +"Added functions :c:func:`PySlice_Unpack` " +"and :c:func:`PySlice_AdjustIndices`. (Contributed by Serhiy Storchaka " +"in :issue:`27867`.)" msgstr "" msgid "" -":c:func:`PyOS_AfterFork` is deprecated in favour of the new functions :c:" -"func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` and :c:func:" -"`PyOS_AfterFork_Child`. (Contributed by Antoine Pitrou in :issue:`16500`.)" +":c:func:`PyOS_AfterFork` is deprecated in favour of the new " +"functions :c:func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` " +"and :c:func:`PyOS_AfterFork_Child`. (Contributed by Antoine Pitrou " +"in :issue:`16500`.)" msgstr "" msgid "" "The ``PyExc_RecursionErrorInst`` singleton that was part of the public API " "has been removed as its members being never cleared may cause a segfault " -"during finalization of the interpreter. Contributed by Xavier de Gaye in :" -"issue:`22898` and :issue:`30697`." +"during finalization of the interpreter. Contributed by Xavier de Gaye " +"in :issue:`22898` and :issue:`30697`." msgstr "" msgid "" -"Added C API support for timezones with timezone constructors :c:func:" -"`PyTimeZone_FromOffset` and :c:func:`PyTimeZone_FromOffsetAndName`, and " -"access to the UTC singleton with :c:data:`PyDateTime_TimeZone_UTC`. " -"Contributed by Paul Ganssle in :issue:`10381`." +"Added C API support for timezones with timezone " +"constructors :c:func:`PyTimeZone_FromOffset` " +"and :c:func:`PyTimeZone_FromOffsetAndName`, and access to the UTC singleton " +"with :c:data:`PyDateTime_TimeZone_UTC`. Contributed by Paul Ganssle " +"in :issue:`10381`." msgstr "" msgid "" "The type of results of :c:func:`!PyThread_start_new_thread` and :c:func:`!" -"PyThread_get_thread_ident`, and the *id* parameter of :c:func:" -"`PyThreadState_SetAsyncExc` changed from :c:expr:`long` to :c:expr:`unsigned " -"long`. (Contributed by Serhiy Storchaka in :issue:`6532`.)" +"PyThread_get_thread_ident`, and the *id* parameter " +"of :c:func:`PyThreadState_SetAsyncExc` changed from :c:expr:`long` " +"to :c:expr:`unsigned long`. (Contributed by Serhiy Storchaka " +"in :issue:`6532`.)" msgstr "" msgid "" @@ -2100,12 +2129,12 @@ msgstr "" msgid "" "Changes to the startup sequence and the management of dynamic memory " -"allocators mean that the long documented requirement to call :c:func:" -"`Py_Initialize` before calling most C API functions is now relied on more " -"heavily, and failing to abide by it may lead to segfaults in embedding " -"applications. See the :ref:`porting-to-python-37` section in this document " -"and the :ref:`pre-init-safe` section in the C API documentation for more " -"details." +"allocators mean that the long documented requirement to " +"call :c:func:`Py_Initialize` before calling most C API functions is now " +"relied on more heavily, and failing to abide by it may lead to segfaults in " +"embedding applications. See the :ref:`porting-to-python-37` section in this " +"document and the :ref:`pre-init-safe` section in the C API documentation for " +"more details." msgstr "" msgid "" @@ -2127,23 +2156,23 @@ msgstr "" msgid "" "The *start* and *end* parameters of :c:func:`PyUnicode_FindChar` are now " -"adjusted to behave like string slices. (Contributed by Xiang Zhang in :issue:" -"`28822`.)" +"adjusted to behave like string slices. (Contributed by Xiang Zhang " +"in :issue:`28822`.)" msgstr "" msgid "Build Changes" msgstr "" msgid "" -"Support for building ``--without-threads`` has been removed. The :mod:" -"`threading` module is now always available. (Contributed by Antoine Pitrou " -"in :issue:`31370`.)." +"Support for building ``--without-threads`` has been removed. " +"The :mod:`threading` module is now always available. (Contributed by Antoine " +"Pitrou in :issue:`31370`.)." msgstr "" msgid "" -"A full copy of libffi is no longer bundled for use when building the :mod:" -"`_ctypes ` module on non-OSX UNIX platforms. An installed copy of " -"libffi is now required when building ``_ctypes`` on such platforms. " +"A full copy of libffi is no longer bundled for use when building " +"the :mod:`_ctypes ` module on non-OSX UNIX platforms. An installed " +"copy of libffi is now required when building ``_ctypes`` on such platforms. " "(Contributed by Zachary Ware in :issue:`27979`.)" msgstr "" @@ -2168,14 +2197,14 @@ msgstr "" msgid "" "The overhead of calling many methods of various standard library classes " "implemented in C has been significantly reduced by porting more code to use " -"the ``METH_FASTCALL`` convention. (Contributed by Victor Stinner in :issue:" -"`29300`, :issue:`29507`, :issue:`29452`, and :issue:`29286`.)" +"the ``METH_FASTCALL`` convention. (Contributed by Victor Stinner " +"in :issue:`29300`, :issue:`29507`, :issue:`29452`, and :issue:`29286`.)" msgstr "" msgid "" "Various optimizations have reduced Python startup time by 10% on Linux and " -"up to 30% on macOS. (Contributed by Victor Stinner, INADA Naoki in :issue:" -"`29585`, and Ivan Levkivskyi in :issue:`31333`.)" +"up to 30% on macOS. (Contributed by Victor Stinner, INADA Naoki " +"in :issue:`29585`, and Ivan Levkivskyi in :issue:`31333`.)" msgstr "" msgid "" @@ -2191,8 +2220,8 @@ msgstr "" msgid "" "The :func:`asyncio.get_event_loop` function has been reimplemented in C to " -"make it up to 15 times faster. (Contributed by Yury Selivanov in :issue:" -"`32296`.)" +"make it up to 15 times faster. (Contributed by Yury Selivanov " +"in :issue:`32296`.)" msgstr "" msgid "" @@ -2216,15 +2245,16 @@ msgid "" msgstr "" msgid "" -"As a result of :ref:`PEP 560 work `, the import time of :" -"mod:`typing` has been reduced by a factor of 7, and many typing operations " -"are now faster. (Contributed by Ivan Levkivskyi in :issue:`32226`.)" +"As a result of :ref:`PEP 560 work `, the import time " +"of :mod:`typing` has been reduced by a factor of 7, and many typing " +"operations are now faster. (Contributed by Ivan Levkivskyi " +"in :issue:`32226`.)" msgstr "" msgid "" ":func:`sorted` and :meth:`list.sort` have been optimized for common cases to " -"be up to 40-75% faster. (Contributed by Elliot Gorokhovsky in :issue:" -"`28685`.)" +"be up to 40-75% faster. (Contributed by Elliot Gorokhovsky " +"in :issue:`28685`.)" msgstr "" msgid "" @@ -2234,8 +2264,9 @@ msgstr "" msgid "" ":func:`hasattr` and :func:`getattr` are now about 4 times faster when *name* " -"is not found and *obj* does not override :meth:`object.__getattr__` or :meth:" -"`object.__getattribute__`. (Contributed by INADA Naoki in :issue:`32544`.)" +"is not found and *obj* does not override :meth:`object.__getattr__` " +"or :meth:`object.__getattribute__`. (Contributed by INADA Naoki " +"in :issue:`32544`.)" msgstr "" msgid "" @@ -2278,35 +2309,35 @@ msgstr "" msgid "" ":func:`re.compile` now converts ``flags`` parameter to int object if it is " "``RegexFlag``. It is now as fast as Python 3.5, and faster than Python 3.6 " -"by about 10% depending on the pattern. (Contributed by INADA Naoki in :issue:" -"`31671`.)" +"by about 10% depending on the pattern. (Contributed by INADA Naoki " +"in :issue:`31671`.)" msgstr "" msgid "" -"The :meth:`~selectors.BaseSelector.modify` methods of classes :class:" -"`selectors.EpollSelector`, :class:`selectors.PollSelector` and :class:" -"`selectors.DevpollSelector` may be around 10% faster under heavy loads. " -"(Contributed by Giampaolo Rodola' in :issue:`30014`)" +"The :meth:`~selectors.BaseSelector.modify` methods of " +"classes :class:`selectors.EpollSelector`, :class:`selectors.PollSelector` " +"and :class:`selectors.DevpollSelector` may be around 10% faster under heavy " +"loads. (Contributed by Giampaolo Rodola' in :issue:`30014`)" msgstr "" msgid "" "Constant folding has been moved from the peephole optimizer to the new AST " "optimizer, which is able perform optimizations more consistently. " -"(Contributed by Eugene Toder and INADA Naoki in :issue:`29469` and :issue:" -"`11549`.)" +"(Contributed by Eugene Toder and INADA Naoki in :issue:`29469` " +"and :issue:`11549`.)" msgstr "" msgid "" "Most functions and methods in :mod:`abc` have been rewritten in C. This " -"makes creation of abstract base classes, and calling :func:`isinstance` and :" -"func:`issubclass` on them 1.5x faster. This also reduces Python start-up " -"time by up to 10%. (Contributed by Ivan Levkivskyi and INADA Naoki in :issue:" -"`31333`)" +"makes creation of abstract base classes, and calling :func:`isinstance` " +"and :func:`issubclass` on them 1.5x faster. This also reduces Python start-" +"up time by up to 10%. (Contributed by Ivan Levkivskyi and INADA Naoki " +"in :issue:`31333`)" msgstr "" msgid "" -"Significant speed improvements to alternate constructors for :class:" -"`datetime.date` and :class:`datetime.datetime` by using fast-path " +"Significant speed improvements to alternate constructors " +"for :class:`datetime.date` and :class:`datetime.datetime` by using fast-path " "constructors when not constructing subclasses. (Contributed by Paul Ganssle " "in :issue:`32403`)" msgstr "" @@ -2329,9 +2360,10 @@ msgstr "" msgid "" "Trace hooks may now opt out of receiving the ``line`` and opt into receiving " -"the ``opcode`` events from the interpreter by setting the corresponding new :" -"attr:`~frame.f_trace_lines` and :attr:`~frame.f_trace_opcodes` attributes on " -"the frame being traced. (Contributed by Nick Coghlan in :issue:`31344`.)" +"the ``opcode`` events from the interpreter by setting the corresponding " +"new :attr:`~frame.f_trace_lines` and :attr:`~frame.f_trace_opcodes` " +"attributes on the frame being traced. (Contributed by Nick Coghlan " +"in :issue:`31344`.)" msgstr "" msgid "" @@ -2340,8 +2372,8 @@ msgid "" "(previously unset), and their ``__spec__.origin`` is also set to ``None`` " "(previously the string ``\"namespace\"``). See :issue:`32305`. Also, the " "namespace module object's ``__spec__.loader`` is set to the same value as " -"``__loader__`` (previously, the former was set to ``None``). See :issue:" -"`32303`." +"``__loader__`` (previously, the former was set to ``None``). " +"See :issue:`32303`." msgstr "" msgid "" @@ -2353,8 +2385,8 @@ msgstr "" msgid "" "The ``distutils`` ``upload`` command no longer tries to change CR end-of-" "line characters to CRLF. This fixes a corruption issue with sdists that " -"ended with a byte equivalent to CR. (Contributed by Bo Bayles in :issue:" -"`32304`.)" +"ended with a byte equivalent to CR. (Contributed by Bo Bayles " +"in :issue:`32304`.)" msgstr "" msgid "Deprecated Python Behavior" @@ -2376,8 +2408,9 @@ msgstr "" msgid "" "Returning a subclass of :class:`complex` from :meth:`object.__complex__` is " "deprecated and will be an error in future Python versions. This makes " -"``__complex__()`` consistent with :meth:`object.__int__` and :meth:`object." -"__float__`. (Contributed by Serhiy Storchaka in :issue:`28894`.)" +"``__complex__()`` consistent with :meth:`object.__int__` " +"and :meth:`object.__float__`. (Contributed by Serhiy Storchaka " +"in :issue:`28894`.)" msgstr "" msgid "Deprecated Python modules, functions and methods" @@ -2388,22 +2421,22 @@ msgstr "" msgid "" ":func:`!aifc.openfp` has been deprecated and will be removed in Python 3.9. " -"Use :func:`!aifc.open` instead. (Contributed by Brian Curtin in :issue:" -"`31985`.)" +"Use :func:`!aifc.open` instead. (Contributed by Brian Curtin " +"in :issue:`31985`.)" msgstr "" msgid "" "Support for directly ``await``-ing instances of :class:`asyncio.Lock` and " "other asyncio synchronization primitives has been deprecated. An " "asynchronous context manager must be used in order to acquire and release " -"the synchronization resource. (Contributed by Andrew Svetlov in :issue:" -"`32253`.)" +"the synchronization resource. (Contributed by Andrew Svetlov " +"in :issue:`32253`.)" msgstr "" msgid "" "The :meth:`!asyncio.Task.current_task` and :meth:`!asyncio.Task.all_tasks` " -"methods have been deprecated. (Contributed by Andrew Svetlov in :issue:" -"`32250`.)" +"methods have been deprecated. (Contributed by Andrew Svetlov " +"in :issue:`32250`.)" msgstr "" msgid "" @@ -2422,12 +2455,12 @@ msgid "" msgstr "" msgid "" -"In Python 3.8, attempting to check for non-Enum objects in :class:`~enum." -"Enum` classes will raise a :exc:`TypeError` (e.g. ``1 in Color``); " -"similarly, attempting to check for non-Flag objects in a :class:`~enum.Flag` " -"member will raise :exc:`TypeError` (e.g. ``1 in Perm.RW``); currently, both " -"operations return :const:`False` instead. (Contributed by Ethan Furman in :" -"issue:`33217`.)" +"In Python 3.8, attempting to check for non-Enum objects " +"in :class:`~enum.Enum` classes will raise a :exc:`TypeError` (e.g. ``1 in " +"Color``); similarly, attempting to check for non-Flag objects in " +"a :class:`~enum.Flag` member will raise :exc:`TypeError` (e.g. ``1 in " +"Perm.RW``); currently, both operations return :const:`False` instead. " +"(Contributed by Ethan Furman in :issue:`33217`.)" msgstr "" msgid "gettext" @@ -2435,17 +2468,18 @@ msgstr "" msgid "" "Using non-integer value for selecting a plural form in :mod:`gettext` is now " -"deprecated. It never correctly worked. (Contributed by Serhiy Storchaka in :" -"issue:`28692`.)" +"deprecated. It never correctly worked. (Contributed by Serhiy Storchaka " +"in :issue:`28692`.)" msgstr "" msgid "" -"Methods :meth:`!MetaPathFinder.find_module` (replaced by :meth:" -"`MetaPathFinder.find_spec() `) and :" -"meth:`!PathEntryFinder.find_loader` (replaced by :meth:`PathEntryFinder." -"find_spec() `) both deprecated in " -"Python 3.4 now emit :exc:`DeprecationWarning`. (Contributed by Matthias " -"Bussonnier in :issue:`29576`.)" +"Methods :meth:`!MetaPathFinder.find_module` (replaced " +"by :meth:`MetaPathFinder.find_spec() " +"`) and :meth:`!" +"PathEntryFinder.find_loader` (replaced by :meth:`PathEntryFinder.find_spec() " +"`) both deprecated in Python 3.4 " +"now emit :exc:`DeprecationWarning`. (Contributed by Matthias Bussonnier " +"in :issue:`29576`.)" msgstr "" msgid "" @@ -2471,20 +2505,22 @@ msgstr "" msgid "" ":mod:`!dummy_threading` and :mod:`!_dummy_thread` have been deprecated. It " -"is no longer possible to build Python with threading disabled. Use :mod:" -"`threading` instead. (Contributed by Antoine Pitrou in :issue:`31370`.)" +"is no longer possible to build Python with threading disabled. " +"Use :mod:`threading` instead. (Contributed by Antoine Pitrou " +"in :issue:`31370`.)" msgstr "" msgid "" -"The silent argument value truncation in :func:`socket.htons` and :func:" -"`socket.ntohs` has been deprecated. In future versions of Python, if the " -"passed argument is larger than 16 bits, an exception will be raised. " +"The silent argument value truncation in :func:`socket.htons` " +"and :func:`socket.ntohs` has been deprecated. In future versions of Python, " +"if the passed argument is larger than 16 bits, an exception will be raised. " "(Contributed by Oren Milman in :issue:`28332`.)" msgstr "" msgid "" -":func:`!ssl.wrap_socket` is deprecated. Use :meth:`ssl.SSLContext." -"wrap_socket` instead. (Contributed by Christian Heimes in :issue:`28124`.)" +":func:`!ssl.wrap_socket` is deprecated. " +"Use :meth:`ssl.SSLContext.wrap_socket` instead. (Contributed by Christian " +"Heimes in :issue:`28124`.)" msgstr "" msgid "sunau" @@ -2492,19 +2528,19 @@ msgstr "" msgid "" ":func:`!sunau.openfp` has been deprecated and will be removed in Python 3.9. " -"Use :func:`!sunau.open` instead. (Contributed by Brian Curtin in :issue:" -"`31985`.)" +"Use :func:`!sunau.open` instead. (Contributed by Brian Curtin " +"in :issue:`31985`.)" msgstr "" msgid "" -"Deprecated :func:`!sys.set_coroutine_wrapper` and :func:`!sys." -"get_coroutine_wrapper`." +"Deprecated :func:`!sys.set_coroutine_wrapper` and :func:`!" +"sys.get_coroutine_wrapper`." msgstr "" msgid "" "The undocumented ``sys.callstats()`` function has been deprecated and will " -"be removed in a future Python version. (Contributed by Victor Stinner in :" -"issue:`28799`.)" +"be removed in a future Python version. (Contributed by Victor Stinner " +"in :issue:`28799`.)" msgstr "" msgid "wave" @@ -2512,8 +2548,8 @@ msgstr "" msgid "" ":func:`!wave.openfp` has been deprecated and will be removed in Python 3.9. " -"Use :func:`wave.open` instead. (Contributed by Brian Curtin in :issue:" -"`31985`.)" +"Use :func:`wave.open` instead. (Contributed by Brian Curtin " +"in :issue:`31985`.)" msgstr "" msgid "Deprecated functions and types of the C API" @@ -2523,15 +2559,15 @@ msgid "" "Function :c:func:`PySlice_GetIndicesEx` is deprecated and replaced with a " "macro if ``Py_LIMITED_API`` is not set or set to a value in the range " "between ``0x03050400`` and ``0x03060000`` (not inclusive), or is " -"``0x03060100`` or higher. (Contributed by Serhiy Storchaka in :issue:" -"`27867`.)" +"``0x03060100`` or higher. (Contributed by Serhiy Storchaka " +"in :issue:`27867`.)" msgstr "" msgid "" -":c:func:`PyOS_AfterFork` has been deprecated. Use :c:func:" -"`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` or :c:func:" -"`PyOS_AfterFork_Child()` instead. (Contributed by Antoine Pitrou in :issue:" -"`16500`.)" +":c:func:`PyOS_AfterFork` has been deprecated. " +"Use :c:func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` " +"or :c:func:`PyOS_AfterFork_Child()` instead. (Contributed by Antoine Pitrou " +"in :issue:`16500`.)" msgstr "" msgid "Platform Support Removals" @@ -2569,10 +2605,10 @@ msgstr "" msgid "" "CPython's own `CI configuration file `_ provides an example of using the SSL :source:" -"`compatibility testing infrastructure ` in " -"CPython's test suite to build and link against OpenSSL 1.1.0 rather than an " -"outdated system provided OpenSSL." +"v3.7.13/.travis.yml>`_ provides an example of using the " +"SSL :source:`compatibility testing infrastructure ` in CPython's test suite to build and link against OpenSSL " +"1.1.0 rather than an outdated system provided OpenSSL." msgstr "" msgid "API and Feature Removals" @@ -2641,9 +2677,9 @@ msgstr "" msgid "" "Direct instantiation of :class:`ssl.SSLSocket` and :class:`ssl.SSLObject` " "objects is now prohibited. The constructors were never documented, tested, " -"or designed as public constructors. Users were supposed to use :func:`!ssl." -"wrap_socket` or :class:`ssl.SSLContext`. (Contributed by Christian Heimes " -"in :issue:`32951`.)" +"or designed as public constructors. Users were supposed to use :func:`!" +"ssl.wrap_socket` or :class:`ssl.SSLContext`. (Contributed by Christian " +"Heimes in :issue:`32951`.)" msgstr "" msgid "" @@ -2699,10 +2735,10 @@ msgid "" msgstr "" msgid "" -":pep:`479` is enabled for all code in Python 3.7, meaning that :exc:" -"`StopIteration` exceptions raised directly or indirectly in coroutines and " -"generators are transformed into :exc:`RuntimeError` exceptions. (Contributed " -"by Yury Selivanov in :issue:`32670`.)" +":pep:`479` is enabled for all code in Python 3.7, meaning " +"that :exc:`StopIteration` exceptions raised directly or indirectly in " +"coroutines and generators are transformed into :exc:`RuntimeError` " +"exceptions. (Contributed by Yury Selivanov in :issue:`32670`.)" msgstr "" msgid "" @@ -2726,8 +2762,8 @@ msgid "" "Python 3.7 now correctly raises a :exc:`SyntaxError`, as a generator " "expression always needs to be directly inside a set of parentheses and " "cannot have a comma on either side, and the duplication of the parentheses " -"can be omitted only on calls. (Contributed by Serhiy Storchaka in :issue:" -"`32012` and :issue:`32023`.)" +"can be omitted only on calls. (Contributed by Serhiy Storchaka " +"in :issue:`32012` and :issue:`32023`.)" msgstr "" msgid "" @@ -2745,19 +2781,21 @@ msgid "Changes in the Python API" msgstr "" msgid "" -":meth:`socketserver.ThreadingMixIn.server_close ` now waits until all non-daemon threads complete. Set the " +":meth:`socketserver.ThreadingMixIn.server_close " +"` now waits until all non-daemon " +"threads complete. Set the " "new :attr:`socketserver.ThreadingMixIn.block_on_close` class attribute to " -"``False`` to get the pre-3.7 behaviour. (Contributed by Victor Stinner in :" -"issue:`31233` and :issue:`33540`.)" +"``False`` to get the pre-3.7 behaviour. (Contributed by Victor Stinner " +"in :issue:`31233` and :issue:`33540`.)" msgstr "" msgid "" -":meth:`socketserver.ForkingMixIn.server_close ` now waits until all child processes complete. Set the new :" -"attr:`socketserver.ForkingMixIn.block_on_close ` class attribute to ``False`` to get the pre-3.7 behaviour. " -"(Contributed by Victor Stinner in :issue:`31151` and :issue:`33540`.)" +":meth:`socketserver.ForkingMixIn.server_close " +"` now waits until all child processes " +"complete. Set the new :attr:`socketserver.ForkingMixIn.block_on_close " +"` class attribute to ``False`` " +"to get the pre-3.7 behaviour. (Contributed by Victor Stinner " +"in :issue:`31151` and :issue:`33540`.)" msgstr "" msgid "" @@ -2773,18 +2811,18 @@ msgid "" msgstr "" msgid "" -"A format string argument for :meth:`string.Formatter.format` is now :ref:" -"`positional-only `. Passing it as a keyword " -"argument was deprecated in Python 3.5. (Contributed by Serhiy Storchaka in :" -"issue:`29193`.)" +"A format string argument for :meth:`string.Formatter.format` is " +"now :ref:`positional-only `. Passing it as a " +"keyword argument was deprecated in Python 3.5. (Contributed by Serhiy " +"Storchaka in :issue:`29193`.)" msgstr "" msgid "" -"Attributes :attr:`~http.cookies.Morsel.key`, :attr:`~http.cookies.Morsel." -"value` and :attr:`~http.cookies.Morsel.coded_value` of class :class:`http." -"cookies.Morsel` are now read-only. Assigning to them was deprecated in " -"Python 3.5. Use the :meth:`~http.cookies.Morsel.set` method for setting " -"them. (Contributed by Serhiy Storchaka in :issue:`29192`.)" +"Attributes :attr:`~http.cookies.Morsel.key`, :attr:`~http.cookies.Morsel.value` " +"and :attr:`~http.cookies.Morsel.coded_value` of " +"class :class:`http.cookies.Morsel` are now read-only. Assigning to them was " +"deprecated in Python 3.5. Use the :meth:`~http.cookies.Morsel.set` method " +"for setting them. (Contributed by Serhiy Storchaka in :issue:`29192`.)" msgstr "" msgid "" @@ -2795,8 +2833,8 @@ msgid "" msgstr "" msgid "" -"The :attr:`struct.Struct.format` type is now :class:`str` instead of :class:" -"`bytes`. (Contributed by Victor Stinner in :issue:`21071`.)" +"The :attr:`struct.Struct.format` type is now :class:`str` instead " +"of :class:`bytes`. (Contributed by Victor Stinner in :issue:`21071`.)" msgstr "" msgid "" @@ -2824,10 +2862,10 @@ msgid "" msgstr "" msgid "" -"Because :func:`shutil.rmtree` is now implemented using the :func:`os." -"scandir` function, the user specified handler *onerror* is now called with " -"the first argument ``os.scandir`` instead of ``os.listdir`` when listing the " -"directory is failed." +"Because :func:`shutil.rmtree` is now implemented using " +"the :func:`os.scandir` function, the user specified handler *onerror* is now " +"called with the first argument ``os.scandir`` instead of ``os.listdir`` when " +"listing the directory is failed." msgstr "" msgid "" @@ -2882,37 +2920,40 @@ msgid "" msgstr "" msgid "" -"On OSes that support :const:`socket.SOCK_NONBLOCK` or :const:`socket." -"SOCK_CLOEXEC` bit flags, the :attr:`socket.type ` no " -"longer has them applied. Therefore, checks like ``if sock.type == socket." -"SOCK_STREAM`` work as expected on all platforms. (Contributed by Yury " -"Selivanov in :issue:`32331`.)" +"On OSes that support :const:`socket.SOCK_NONBLOCK` " +"or :const:`socket.SOCK_CLOEXEC` bit flags, the :attr:`socket.type " +"` no longer has them applied. Therefore, checks like " +"``if sock.type == socket.SOCK_STREAM`` work as expected on all platforms. " +"(Contributed by Yury Selivanov in :issue:`32331`.)" msgstr "" msgid "" -"On Windows the default for the *close_fds* argument of :class:`subprocess." -"Popen` was changed from :const:`False` to :const:`True` when redirecting the " -"standard handles. If you previously depended on handles being inherited when " -"using :class:`subprocess.Popen` with standard io redirection, you will have " -"to pass ``close_fds=False`` to preserve the previous behaviour, or use :attr:" -"`STARTUPINFO.lpAttributeList `." +"On Windows the default for the *close_fds* argument " +"of :class:`subprocess.Popen` was changed from :const:`False` " +"to :const:`True` when redirecting the standard handles. If you previously " +"depended on handles being inherited when using :class:`subprocess.Popen` " +"with standard io redirection, you will have to pass ``close_fds=False`` to " +"preserve the previous behaviour, or use :attr:`STARTUPINFO.lpAttributeList " +"`." msgstr "" msgid "" ":meth:`importlib.machinery.PathFinder.invalidate_caches` -- which implicitly " -"affects :func:`importlib.invalidate_caches` -- now deletes entries in :data:" -"`sys.path_importer_cache` which are set to ``None``. (Contributed by Brett " -"Cannon in :issue:`33169`.)" +"affects :func:`importlib.invalidate_caches` -- now deletes entries " +"in :data:`sys.path_importer_cache` which are set to ``None``. (Contributed " +"by Brett Cannon in :issue:`33169`.)" msgstr "" msgid "" -"In :mod:`asyncio`, :meth:`loop.sock_recv() `, :meth:" -"`loop.sock_sendall() `, :meth:`loop.sock_accept() " -"`, :meth:`loop.getaddrinfo() `, :meth:`loop.getnameinfo() ` have " -"been changed to be proper coroutine methods to match their documentation. " -"Previously, these methods returned :class:`asyncio.Future` instances. " -"(Contributed by Yury Selivanov in :issue:`32327`.)" +"In :mod:`asyncio`, :meth:`loop.sock_recv() " +"`, :meth:`loop.sock_sendall() " +"`, :meth:`loop.sock_accept() " +"`, :meth:`loop.getaddrinfo() " +"`, :meth:`loop.getnameinfo() " +"` have been changed to be proper coroutine methods " +"to match their documentation. Previously, these methods " +"returned :class:`asyncio.Future` instances. (Contributed by Yury Selivanov " +"in :issue:`32327`.)" msgstr "" msgid "" @@ -2923,15 +2964,15 @@ msgstr "" msgid "" ":attr:`Struct.format ` is now a :class:`str` instance " -"instead of a :class:`bytes` instance. (Contributed by Victor Stinner in :" -"issue:`21071`.)" +"instead of a :class:`bytes` instance. (Contributed by Victor Stinner " +"in :issue:`21071`.)" msgstr "" msgid "" ":mod:`argparse` subparsers can now be made mandatory by passing " -"``required=True`` to :meth:`ArgumentParser.add_subparsers() `. (Contributed by Anthony Sottile in :issue:" -"`26510`.)" +"``required=True`` to :meth:`ArgumentParser.add_subparsers() " +"`. (Contributed by Anthony Sottile " +"in :issue:`26510`.)" msgstr "" msgid "" @@ -2947,8 +2988,9 @@ msgid "" "cannot tolerate such exceptions, the new :meth:`Calendar.itermonthdays3 " "` and :meth:`Calendar.itermonthdays4 " "` can be used. The new methods return " -"tuples and are not restricted by the range supported by :class:`datetime." -"date`. (Contributed by Alexander Belopolsky in :issue:`28292`.)" +"tuples and are not restricted by the range supported " +"by :class:`datetime.date`. (Contributed by Alexander Belopolsky " +"in :issue:`28292`.)" msgstr "" msgid "" @@ -2958,9 +3000,9 @@ msgstr "" msgid "" "The ``submit()`` method of :class:`concurrent.futures.ThreadPoolExecutor` " -"and :class:`concurrent.futures.ProcessPoolExecutor` now raises a :exc:" -"`RuntimeError` if called during interpreter shutdown. (Contributed by Mark " -"Nemec in :issue:`33097`.)" +"and :class:`concurrent.futures.ProcessPoolExecutor` now raises " +"a :exc:`RuntimeError` if called during interpreter shutdown. (Contributed by " +"Mark Nemec in :issue:`33097`.)" msgstr "" msgid "" @@ -2972,9 +3014,9 @@ msgid "" msgstr "" msgid "" -"Several undocumented internal imports were removed. One example is that ``os." -"errno`` is no longer available; use ``import errno`` directly instead. Note " -"that such undocumented internal imports may be removed any time without " +"Several undocumented internal imports were removed. One example is that " +"``os.errno`` is no longer available; use ``import errno`` directly instead. " +"Note that such undocumented internal imports may be removed any time without " "notice, even in micro version releases." msgstr "" @@ -2983,13 +3025,13 @@ msgstr "" msgid "" "The function :c:func:`PySlice_GetIndicesEx` is considered unsafe for " -"resizable sequences. If the slice indices are not instances of :class:" -"`int`, but objects that implement the :meth:`!__index__` method, the " -"sequence can be resized after passing its length to :c:func:`!" +"resizable sequences. If the slice indices are not instances " +"of :class:`int`, but objects that implement the :meth:`!__index__` method, " +"the sequence can be resized after passing its length to :c:func:`!" "PySlice_GetIndicesEx`. This can lead to returning indices out of the length " -"of the sequence. For avoiding possible problems use new functions :c:func:" -"`PySlice_Unpack` and :c:func:`PySlice_AdjustIndices`. (Contributed by Serhiy " -"Storchaka in :issue:`27867`.)" +"of the sequence. For avoiding possible problems use new " +"functions :c:func:`PySlice_Unpack` and :c:func:`PySlice_AdjustIndices`. " +"(Contributed by Serhiy Storchaka in :issue:`27867`.)" msgstr "" msgid "CPython bytecode changes" @@ -2997,8 +3039,8 @@ msgstr "" msgid "" "There are two new opcodes: :opcode:`!LOAD_METHOD` and :opcode:`!" -"CALL_METHOD`. (Contributed by Yury Selivanov and INADA Naoki in :issue:" -"`26110`.)" +"CALL_METHOD`. (Contributed by Yury Selivanov and INADA Naoki " +"in :issue:`26110`.)" msgstr "" msgid "" @@ -3008,9 +3050,9 @@ msgstr "" msgid "" "The file used to override :data:`sys.path` is now called ``._pth`` instead of ``'sys.path'``. See :ref:" -"`windows_finding_modules` for more information. (Contributed by Steve Dower " -"in :issue:`28137`.)" +"executable>._pth`` instead of ``'sys.path'``. " +"See :ref:`windows_finding_modules` for more information. (Contributed by " +"Steve Dower in :issue:`28137`.)" msgstr "" msgid "Other CPython implementation changes" @@ -3047,8 +3089,8 @@ msgid "" "setting :c:data:`Py_BytesWarningFlag` to a value greater than one is no " "longer sufficient to both emit :exc:`BytesWarning` messages and have them " "converted to exceptions. Instead, the flag must be set (to cause the " -"warnings to be emitted in the first place), and an explicit ``error::" -"BytesWarning`` warnings filter added to convert them to exceptions." +"warnings to be emitted in the first place), and an explicit " +"``error::BytesWarning`` warnings filter added to convert them to exceptions." msgstr "" msgid "" @@ -3073,8 +3115,9 @@ msgid "" "respects all of the same environment settings as :c:func:`Py_Main` (in " "earlier Python versions, it respected an ill-defined subset of those " "environment variables, while in Python 3.7.0 it didn't read any of them due " -"to :issue:`34247`). If this behavior is unwanted, set :c:data:" -"`Py_IgnoreEnvironmentFlag` to 1 before calling :c:func:`Py_Initialize`." +"to :issue:`34247`). If this behavior is unwanted, " +"set :c:data:`Py_IgnoreEnvironmentFlag` to 1 before " +"calling :c:func:`Py_Initialize`." msgstr "" msgid "" @@ -3106,12 +3149,12 @@ msgid "Notable changes in Python 3.7.6" msgstr "" msgid "" -"Due to significant security concerns, the *reuse_address* parameter of :meth:" -"`asyncio.loop.create_datagram_endpoint` is no longer supported. This is " -"because of the behavior of the socket option ``SO_REUSEADDR`` in UDP. For " -"more details, see the documentation for ``loop.create_datagram_endpoint()``. " -"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:" -"`37228`.)" +"Due to significant security concerns, the *reuse_address* parameter " +"of :meth:`asyncio.loop.create_datagram_endpoint` is no longer supported. " +"This is because of the behavior of the socket option ``SO_REUSEADDR`` in " +"UDP. For more details, see the documentation for " +"``loop.create_datagram_endpoint()``. (Contributed by Kyle Stanley, Antoine " +"Pitrou, and Yury Selivanov in :issue:`37228`.)" msgstr "" msgid "Notable changes in Python 3.7.10" @@ -3119,13 +3162,14 @@ msgstr "" msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " -"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." -"parse.parse_qsl`. Due to security concerns, and to conform with newer W3C " -"recommendations, this has been changed to allow only a single separator key, " -"with ``&`` as the default. This change also affects :func:`!cgi.parse` and :" -"func:`!cgi.parse_multipart` as they use the affected functions internally. " -"For more details, please see their respective documentation. (Contributed by " -"Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)" +"parameter separators in :func:`urllib.parse.parse_qs` " +"and :func:`urllib.parse.parse_qsl`. Due to security concerns, and to " +"conform with newer W3C recommendations, this has been changed to allow only " +"a single separator key, with ``&`` as the default. This change also " +"affects :func:`!cgi.parse` and :func:`!cgi.parse_multipart` as they use the " +"affected functions internally. For more details, please see their respective " +"documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran and Ken Jin " +"in :issue:`42967`.)" msgstr "" msgid "Notable changes in Python 3.7.11" @@ -3144,8 +3188,8 @@ msgid "" "forms of attacks. Following the WHATWG specification that updates RFC 3986, " "ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are stripped from " "the URL by the parser :func:`urllib.parse` preventing such attacks. The " -"removal characters are controlled by a new module level variable ``urllib." -"parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" +"removal characters are controlled by a new module level variable " +"``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" msgstr "" msgid "Notable security feature in 3.7.14" diff --git a/whatsnew/3.8.po b/whatsnew/3.8.po index 36949ec..788ce40 100644 --- a/whatsnew/3.8.po +++ b/whatsnew/3.8.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-31 15:58+0000\n" +"POT-Creation-Date: 2026-10-27 19:03+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.8, compared to 3.7. " -"Python 3.8 was released on October 14, 2019. For full details, see the :ref:" -"`changelog `." +"Python 3.8 was released on October 14, 2019. For full details, see " +"the :ref:`changelog `." msgstr "" msgid "Summary -- Release highlights" @@ -49,8 +49,9 @@ msgstr "" msgid "" "There is new syntax ``:=`` that assigns values to variables as part of a " "larger expression. It is affectionately known as \"the walrus operator\" due " -"to its resemblance to `the eyes and tusks of a walrus `_." +"to its resemblance to `the eyes and tusks of a walrus `_." msgstr "" msgid "" @@ -115,8 +116,8 @@ msgid "" "There is a new function parameter syntax ``/`` to indicate that some " "function parameters must be specified positionally and cannot be used as " "keyword arguments. This is the same notation shown by ``help()`` for C " -"functions annotated with Larry Hastings' `Argument Clinic `__ tool." +"functions annotated with Larry Hastings' `Argument Clinic `__ tool." msgstr "" msgid "" @@ -174,7 +175,7 @@ msgid "" msgstr "" msgid "" -"def quantiles(dist, /, *, n=4, method='exclusive')\n" +"def quantiles(dist, /, *, n=4, method='exclusive'):\n" " ..." msgstr "" @@ -221,8 +222,9 @@ msgid "" msgstr "" msgid "" -"The location of the cache is reported in :data:`sys.pycache_prefix` (:const:" -"`None` indicates the default location in ``__pycache__`` subdirectories)." +"The location of the cache is reported in :data:`sys.pycache_prefix` " +"(:const:`None` indicates the default location in ``__pycache__`` " +"subdirectories)." msgstr "" msgid "(Contributed by Carl Meyer in :issue:`33499`.)" @@ -242,10 +244,10 @@ msgstr "" msgid "" "Defining the ``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` " "macro, which introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` " -"macro, which adds the :func:`sys.getobjects` function and the :envvar:" -"`PYTHONDUMPREFS` environment variable, can be set using the new :option:`./" -"configure --with-trace-refs <--with-trace-refs>` build option. (Contributed " -"by Victor Stinner in :issue:`36465`.)" +"macro, which adds the :func:`sys.getobjects` function and " +"the :envvar:`PYTHONDUMPREFS` environment variable, can be set using the " +"new :option:`./configure --with-trace-refs <--with-trace-refs>` build " +"option. (Contributed by Victor Stinner in :issue:`36465`.)" msgstr "" msgid "" @@ -282,8 +284,8 @@ msgid "" "On the other hand, ``pkg-config python3.8 --libs`` no longer contains ``-" "lpython3.8``. C extensions must not be linked to libpython (except on " "Android and Cygwin, whose cases are handled by the script); this change is " -"backward incompatible on purpose. (Contributed by Victor Stinner in :issue:" -"`36721`.)" +"backward incompatible on purpose. (Contributed by Victor Stinner " +"in :issue:`36721`.)" msgstr "" msgid "f-strings support ``=`` for self-documenting expressions and debugging" @@ -462,8 +464,9 @@ msgstr "" msgid "" ":ref:`vectorcall` is added to the Python/C API. It is meant to formalize " -"existing optimizations which were already done for various classes. Any :ref:" -"`static type ` implementing a callable can use this protocol." +"existing optimizations which were already done for various classes. " +"Any :ref:`static type ` implementing a callable can use this " +"protocol." msgstr "" msgid "" @@ -475,8 +478,8 @@ msgid "See :pep:`590` for a full description." msgstr "" msgid "" -"(Contributed by Jeroen Demeyer, Mark Shannon and Petr Viktorin in :issue:" -"`36974`.)" +"(Contributed by Jeroen Demeyer, Mark Shannon and Petr Viktorin " +"in :issue:`36974`.)" msgstr "" msgid "Pickle protocol 5 with out-of-band data buffers" @@ -512,18 +515,18 @@ msgstr "" msgid "" "The :class:`bool`, :class:`int`, and :class:`fractions.Fraction` types now " -"have an :meth:`~int.as_integer_ratio` method like that found in :class:" -"`float` and :class:`decimal.Decimal`. This minor API extension makes it " -"possible to write ``numerator, denominator = x.as_integer_ratio()`` and have " -"it work across multiple numeric types. (Contributed by Lisa Roach in :issue:" -"`33073` and Raymond Hettinger in :issue:`37819`.)" +"have an :meth:`~int.as_integer_ratio` method like that found " +"in :class:`float` and :class:`decimal.Decimal`. This minor API extension " +"makes it possible to write ``numerator, denominator = x.as_integer_ratio()`` " +"and have it work across multiple numeric types. (Contributed by Lisa Roach " +"in :issue:`33073` and Raymond Hettinger in :issue:`37819`.)" msgstr "" msgid "" "Constructors of :class:`int`, :class:`float` and :class:`complex` will now " "use the :meth:`~object.__index__` special method, if available and the " -"corresponding method :meth:`~object.__int__`, :meth:`~object.__float__` or :" -"meth:`~object.__complex__` is not available. (Contributed by Serhiy " +"corresponding method :meth:`~object.__int__`, :meth:`~object.__float__` " +"or :meth:`~object.__complex__` is not available. (Contributed by Serhiy " "Storchaka in :issue:`20092`.)" msgstr "" @@ -544,16 +547,16 @@ msgid "" msgstr "" msgid "" -"Dict and dictviews are now iterable in reversed insertion order using :func:" -"`reversed`. (Contributed by Rémi Lapeyre in :issue:`33462`.)" +"Dict and dictviews are now iterable in reversed insertion order " +"using :func:`reversed`. (Contributed by Rémi Lapeyre in :issue:`33462`.)" msgstr "" msgid "" "The syntax allowed for keyword names in function calls was further " "restricted. In particular, ``f((keyword)=arg)`` is no longer allowed. It was " "never intended to permit more than a bare name on the left-hand side of a " -"keyword argument assignment term. (Contributed by Benjamin Peterson in :" -"issue:`34641`.)" +"keyword argument assignment term. (Contributed by Benjamin Peterson " +"in :issue:`34641`.)" msgstr "" msgid "" @@ -582,12 +585,13 @@ msgid "" msgstr "" msgid "" -"Arithmetic operations between subclasses of :class:`datetime.date` or :class:" -"`datetime.datetime` and :class:`datetime.timedelta` objects now return an " -"instance of the subclass, rather than the base class. This also affects the " -"return type of operations whose implementation (directly or indirectly) " -"uses :class:`datetime.timedelta` arithmetic, such as :meth:`~datetime." -"datetime.astimezone`. (Contributed by Paul Ganssle in :issue:`32417`.)" +"Arithmetic operations between subclasses of :class:`datetime.date` " +"or :class:`datetime.datetime` and :class:`datetime.timedelta` objects now " +"return an instance of the subclass, rather than the base class. This also " +"affects the return type of operations whose implementation (directly or " +"indirectly) uses :class:`datetime.timedelta` arithmetic, such " +"as :meth:`~datetime.datetime.astimezone`. (Contributed by Paul Ganssle " +"in :issue:`32417`.)" msgstr "" msgid "" @@ -600,12 +604,12 @@ msgid "" msgstr "" msgid "" -"Some advanced styles of programming require updating the :class:`types." -"CodeType` object for an existing function. Since code objects are " -"immutable, a new code object needs to be created, one that is modeled on the " -"existing code object. With 19 parameters, this was somewhat tedious. Now, " -"the new ``replace()`` method makes it possible to create a clone with a few " -"altered parameters." +"Some advanced styles of programming require updating " +"the :class:`types.CodeType` object for an existing function. Since code " +"objects are immutable, a new code object needs to be created, one that is " +"modeled on the existing code object. With 19 parameters, this was somewhat " +"tedious. Now, the new ``replace()`` method makes it possible to create a " +"clone with a few altered parameters." msgstr "" msgid "" @@ -696,9 +700,9 @@ msgid "" "elements long. Formerly, five was the limit. The new, optional sixth " "element is a callable with a ``(obj, state)`` signature. This allows the " "direct control over the state-updating behavior of a specific object. If " -"not *None*, this callable will have priority over the object's :meth:" -"`~object.__setstate__` method. (Contributed by Pierre Glaser and Olivier " -"Grisel in :issue:`35900`.)" +"not *None*, this callable will have priority over the " +"object's :meth:`~object.__setstate__` method. (Contributed by Pierre Glaser " +"and Olivier Grisel in :issue:`35900`.)" msgstr "" msgid "New Modules" @@ -754,8 +758,8 @@ msgid "The :func:`ast.parse` function has some new flags:" msgstr "" msgid "" -"``type_comments=True`` causes it to return the text of :pep:`484` and :pep:" -"`526` type comments associated with certain AST nodes;" +"``type_comments=True`` causes it to return the text of :pep:`484` " +"and :pep:`526` type comments associated with certain AST nodes;" msgstr "" msgid "" @@ -765,8 +769,8 @@ msgstr "" msgid "" "``feature_version=(3, N)`` allows specifying an earlier Python 3 version. " -"For example, ``feature_version=(3, 4)`` will treat :keyword:`async` and :" -"keyword:`await` as non-reserved words." +"For example, ``feature_version=(3, 4)`` will treat :keyword:`async` " +"and :keyword:`await` as non-reserved words." msgstr "" msgid "(Contributed by Guido van Rossum in :issue:`35766`.)" @@ -811,8 +815,9 @@ msgid "" msgstr "" msgid "" -"The actual implementation is significantly more complex. Thus, :func:" -"`asyncio.run` should be the preferred way of running asyncio programs." +"The actual implementation is significantly more complex. " +"Thus, :func:`asyncio.run` should be the preferred way of running asyncio " +"programs." msgstr "" msgid "(Contributed by Yury Selivanov in :issue:`32314`.)" @@ -840,15 +845,16 @@ msgid "(Contributed by Yury Selivanov in :issue:`37028`.)" msgstr "" msgid "" -"The exception :class:`asyncio.CancelledError` now inherits from :class:" -"`BaseException` rather than :class:`Exception` and no longer inherits from :" -"class:`concurrent.futures.CancelledError`. (Contributed by Yury Selivanov " -"in :issue:`32528`.)" +"The exception :class:`asyncio.CancelledError` now inherits " +"from :class:`BaseException` rather than :class:`Exception` and no longer " +"inherits from :class:`concurrent.futures.CancelledError`. (Contributed by " +"Yury Selivanov in :issue:`32528`.)" msgstr "" msgid "" -"On Windows, the default event loop is now :class:`~asyncio." -"ProactorEventLoop`. (Contributed by Victor Stinner in :issue:`34687`.)" +"On Windows, the default event loop is " +"now :class:`~asyncio.ProactorEventLoop`. (Contributed by Victor Stinner " +"in :issue:`34687`.)" msgstr "" msgid "" @@ -857,9 +863,9 @@ msgid "" msgstr "" msgid "" -":class:`~asyncio.ProactorEventLoop` can now be interrupted by :exc:" -"`KeyboardInterrupt` (\"CTRL+C\"). (Contributed by Vladimir Matveev in :issue:" -"`23057`.)" +":class:`~asyncio.ProactorEventLoop` can now be interrupted " +"by :exc:`KeyboardInterrupt` (\"CTRL+C\"). (Contributed by Vladimir Matveev " +"in :issue:`23057`.)" msgstr "" msgid "" @@ -869,12 +875,12 @@ msgstr "" msgid "" "Asyncio tasks can now be named, either by passing the ``name`` keyword " -"argument to :func:`asyncio.create_task` or the :meth:`~asyncio.loop." -"create_task` event loop method, or by calling the :meth:`~asyncio.Task." -"set_name` method on the task object. The task name is visible in the " -"``repr()`` output of :class:`asyncio.Task` and can also be retrieved using " -"the :meth:`~asyncio.Task.get_name` method. (Contributed by Alex Grönholm in :" -"issue:`34270`.)" +"argument to :func:`asyncio.create_task` or " +"the :meth:`~asyncio.loop.create_task` event loop method, or by calling " +"the :meth:`~asyncio.Task.set_name` method on the task object. The task name " +"is visible in the ``repr()`` output of :class:`asyncio.Task` and can also be " +"retrieved using the :meth:`~asyncio.Task.get_name` method. (Contributed by " +"Alex Grönholm in :issue:`34270`.)" msgstr "" msgid "" @@ -890,25 +896,25 @@ msgid "builtins" msgstr "" msgid "" -"The :func:`compile` built-in has been improved to accept the ``ast." -"PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag. With this new flag passed, :func:" -"`compile` will allow top-level ``await``, ``async for`` and ``async with`` " -"constructs that are usually considered invalid syntax. Asynchronous code " -"object marked with the ``CO_COROUTINE`` flag may then be returned. " -"(Contributed by Matthias Bussonnier in :issue:`34616`)" +"The :func:`compile` built-in has been improved to accept the " +"``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag. With this new flag " +"passed, :func:`compile` will allow top-level ``await``, ``async for`` and " +"``async with`` constructs that are usually considered invalid syntax. " +"Asynchronous code object marked with the ``CO_COROUTINE`` flag may then be " +"returned. (Contributed by Matthias Bussonnier in :issue:`34616`)" msgstr "" msgid "collections" msgstr "" msgid "" -"The :meth:`~collections.somenamedtuple._asdict` method for :func:" -"`collections.namedtuple` now returns a :class:`dict` instead of a :class:" -"`collections.OrderedDict`. This works because regular dicts have guaranteed " -"ordering since Python 3.7. If the extra features of :class:`OrderedDict` are " -"required, the suggested remediation is to cast the result to the desired " -"type: ``OrderedDict(nt._asdict())``. (Contributed by Raymond Hettinger in :" -"issue:`35864`.)" +"The :meth:`~collections.somenamedtuple._asdict` method " +"for :func:`collections.namedtuple` now returns a :class:`dict` instead of " +"a :class:`collections.OrderedDict`. This works because regular dicts have " +"guaranteed ordering since Python 3.7. If the extra features " +"of :class:`OrderedDict` are required, the suggested remediation is to cast " +"the result to the desired type: ``OrderedDict(nt._asdict())``. (Contributed " +"by Raymond Hettinger in :issue:`35864`.)" msgstr "" msgid "cProfile" @@ -957,19 +963,21 @@ msgid "" "parameter to specify flags for the underlying ``LoadLibraryEx`` call. The " "default flags are set to only load DLL dependencies from trusted locations, " "including the path where the DLL is stored (if a full or partial path is " -"used to load the initial DLL) and paths added by :func:`~os." -"add_dll_directory`. (Contributed by Steve Dower in :issue:`36085`.)" +"used to load the initial DLL) and paths added " +"by :func:`~os.add_dll_directory`. (Contributed by Steve Dower " +"in :issue:`36085`.)" msgstr "" msgid "datetime" msgstr "" msgid "" -"Added new alternate constructors :meth:`datetime.date.fromisocalendar` and :" -"meth:`datetime.datetime.fromisocalendar`, which construct :class:`~datetime." -"date` and :class:`~datetime.datetime` objects respectively from ISO year, " -"week number, and weekday; these are the inverse of each class's " -"``isocalendar`` method. (Contributed by Paul Ganssle in :issue:`36004`.)" +"Added new alternate constructors :meth:`datetime.date.fromisocalendar` " +"and :meth:`datetime.datetime.fromisocalendar`, which " +"construct :class:`~datetime.date` and :class:`~datetime.datetime` objects " +"respectively from ISO year, week number, and weekday; these are the inverse " +"of each class's ``isocalendar`` method. (Contributed by Paul Ganssle " +"in :issue:`36004`.)" msgstr "" msgid "functools" @@ -1017,8 +1025,8 @@ msgstr "" msgid "" "Added a new :func:`functools.singledispatchmethod` decorator that converts " -"methods into :term:`generic functions ` using :term:" -"`single dispatch`::" +"methods into :term:`generic functions ` " +"using :term:`single dispatch`::" msgstr "" msgid "" @@ -1099,8 +1107,8 @@ msgid "" "Added optional line numbers for IDLE editor windows. Windows open without " "line numbers unless set otherwise in the General tab of the configuration " "dialog. Line numbers for an existing window are shown and hidden in the " -"Options menu. (Contributed by Tal Einat and Saimadhav Heblikar in :issue:" -"`17535`.)" +"Options menu. (Contributed by Tal Einat and Saimadhav Heblikar " +"in :issue:`17535`.)" msgstr "" msgid "" @@ -1116,8 +1124,8 @@ msgid "New in 3.8.1:" msgstr "" msgid "" -"Add option to toggle cursor blink off. (Contributed by Zackery Spytz in :" -"issue:`4603`.)" +"Add option to toggle cursor blink off. (Contributed by Zackery Spytz " +"in :issue:`4603`.)" msgstr "" msgid "" @@ -1243,8 +1251,8 @@ msgid "(Contributed by Pablo Galindo in :issue:`35606`.)" msgstr "" msgid "" -"Added two new combinatoric functions :func:`math.perm` and :func:`math." -"comb`::" +"Added two new combinatoric functions :func:`math.perm` " +"and :func:`math.comb`::" msgstr "" msgid "" @@ -1288,8 +1296,8 @@ msgstr "" msgid "" "The :class:`mmap.mmap` class now has an :meth:`~mmap.mmap.madvise` method to " -"access the ``madvise()`` system call. (Contributed by Zackery Spytz in :" -"issue:`32941`.)" +"access the ``madvise()`` system call. (Contributed by Zackery Spytz " +"in :issue:`32941`.)" msgstr "" msgid "multiprocessing" @@ -1311,8 +1319,8 @@ msgstr "" msgid "" "Added new function :func:`~os.add_dll_directory` on Windows for providing " "additional search paths for native dependencies when importing extension " -"modules or loading DLLs using :mod:`ctypes`. (Contributed by Steve Dower in :" -"issue:`36085`.)" +"modules or loading DLLs using :mod:`ctypes`. (Contributed by Steve Dower " +"in :issue:`36085`.)" msgstr "" msgid "" @@ -1326,19 +1334,19 @@ msgid "" "symlinks and directory junctions) has been delegated to the operating " "system. Specifically, :func:`os.stat` will now traverse anything supported " "by the operating system, while :func:`os.lstat` will only open reparse " -"points that identify as \"name surrogates\" while others are opened as for :" -"func:`os.stat`. In all cases, :attr:`os.stat_result.st_mode` will only have " -"``S_IFLNK`` set for symbolic links and not other kinds of reparse points. To " -"identify other kinds of reparse point, check the new :attr:`os.stat_result." -"st_reparse_tag` attribute." +"points that identify as \"name surrogates\" while others are opened as " +"for :func:`os.stat`. In all cases, :attr:`os.stat_result.st_mode` will only " +"have ``S_IFLNK`` set for symbolic links and not other kinds of reparse " +"points. To identify other kinds of reparse point, check the " +"new :attr:`os.stat_result.st_reparse_tag` attribute." msgstr "" msgid "" "On Windows, :func:`os.readlink` is now able to read directory junctions. " "Note that :func:`~os.path.islink` will return ``False`` for directory " "junctions, and so code that checks ``islink`` first will continue to treat " -"junctions as directories, while code that handles errors from :func:`os." -"readlink` may now treat junctions as links." +"junctions as directories, while code that handles errors " +"from :func:`os.readlink` may now treat junctions as links." msgstr "" msgid "(Contributed by Steve Dower in :issue:`37834`.)" @@ -1348,20 +1356,20 @@ msgid "os.path" msgstr "" msgid "" -":mod:`os.path` functions that return a boolean result like :func:`~os.path." -"exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :func:`~os.path." -"isfile`, :func:`~os.path.islink`, and :func:`~os.path.ismount` now return " -"``False`` instead of raising :exc:`ValueError` or its subclasses :exc:" -"`UnicodeEncodeError` and :exc:`UnicodeDecodeError` for paths that contain " -"characters or bytes unrepresentable at the OS level. (Contributed by Serhiy " -"Storchaka in :issue:`33721`.)" +":mod:`os.path` functions that return a boolean result " +"like :func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :func:`~os.path.isfile`, :func:`~os.path.islink`, " +"and :func:`~os.path.ismount` now return ``False`` instead of " +"raising :exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` " +"and :exc:`UnicodeDecodeError` for paths that contain characters or bytes " +"unrepresentable at the OS level. (Contributed by Serhiy Storchaka " +"in :issue:`33721`.)" msgstr "" msgid "" ":func:`~os.path.expanduser` on Windows now prefers the :envvar:`USERPROFILE` " "environment variable and does not use :envvar:`HOME`, which is not normally " -"set for regular user accounts. (Contributed by Anthony Sottile in :issue:" -"`36264`.)" +"set for regular user accounts. (Contributed by Anthony Sottile " +"in :issue:`36264`.)" msgstr "" msgid "" @@ -1378,14 +1386,12 @@ msgid "pathlib" msgstr "" msgid "" -":mod:`pathlib.Path` methods that return a boolean result like :meth:" -"`~pathlib.Path.exists`, :meth:`~pathlib.Path.is_dir`, :meth:`~pathlib.Path." -"is_file`, :meth:`~pathlib.Path.is_mount`, :meth:`~pathlib.Path.is_symlink`, :" -"meth:`~pathlib.Path.is_block_device`, :meth:`~pathlib.Path.is_char_device`, :" -"meth:`~pathlib.Path.is_fifo`, :meth:`~pathlib.Path.is_socket` now return " -"``False`` instead of raising :exc:`ValueError` or its subclass :exc:" -"`UnicodeEncodeError` for paths that contain characters unrepresentable at " -"the OS level. (Contributed by Serhiy Storchaka in :issue:`33721`.)" +":mod:`pathlib.Path` methods that return a boolean result " +"like :meth:`~pathlib.Path.exists`, :meth:`~pathlib.Path.is_dir`, :meth:`~pathlib.Path.is_file`, :meth:`~pathlib.Path.is_mount`, :meth:`~pathlib.Path.is_symlink`, :meth:`~pathlib.Path.is_block_device`, :meth:`~pathlib.Path.is_char_device`, :meth:`~pathlib.Path.is_fifo`, :meth:`~pathlib.Path.is_socket` " +"now return ``False`` instead of raising :exc:`ValueError` or its " +"subclass :exc:`UnicodeEncodeError` for paths that contain characters " +"unrepresentable at the OS level. (Contributed by Serhiy Storchaka " +"in :issue:`33721`.)" msgstr "" msgid "" @@ -1400,10 +1406,11 @@ msgid "pickle" msgstr "" msgid "" -":mod:`pickle` extensions subclassing the C-optimized :class:`~pickle." -"Pickler` can now override the pickling logic of functions and classes by " -"defining the special :meth:`~pickle.Pickler.reducer_override` method. " -"(Contributed by Pierre Glaser and Olivier Grisel in :issue:`35900`.)" +":mod:`pickle` extensions subclassing the C-" +"optimized :class:`~pickle.Pickler` can now override the pickling logic of " +"functions and classes by defining the " +"special :meth:`~pickle.Pickler.reducer_override` method. (Contributed by " +"Pierre Glaser and Olivier Grisel in :issue:`35900`.)" msgstr "" msgid "plistlib" @@ -1411,8 +1418,8 @@ msgstr "" msgid "" "Added new :class:`plistlib.UID` and enabled support for reading and writing " -"NSKeyedArchiver-encoded binary plists. (Contributed by Jon Janzen in :issue:" -"`26707`.)" +"NSKeyedArchiver-encoded binary plists. (Contributed by Jon Janzen " +"in :issue:`26707`.)" msgstr "" msgid "pprint" @@ -1433,8 +1440,8 @@ msgstr "" msgid "" ">>> from pprint import pprint, pp\n" -">>> d = dict(source='input.txt', operation='filter', destination='output." -"txt')\n" +">>> d = dict(source='input.txt', operation='filter', " +"destination='output.txt')\n" ">>> pp(d, width=40) # Original order\n" "{'source': 'input.txt',\n" " 'operation': 'filter',\n" @@ -1460,8 +1467,8 @@ msgid "shlex" msgstr "" msgid "" -"The new :func:`shlex.join` function acts as the inverse of :func:`shlex." -"split`. (Contributed by Bo Bayles in :issue:`32102`.)" +"The new :func:`shlex.join` function acts as the inverse " +"of :func:`shlex.split`. (Contributed by Bo Bayles in :issue:`32102`.)" msgstr "" msgid "shutil" @@ -1481,8 +1488,8 @@ msgstr "" msgid "" ":func:`shutil.rmtree` on Windows now removes directory junctions without " -"recursively removing their contents first. (Contributed by Steve Dower in :" -"issue:`37834`.)" +"recursively removing their contents first. (Contributed by Steve Dower " +"in :issue:`37834`.)" msgstr "" msgid "socket" @@ -1496,27 +1503,28 @@ msgid "" msgstr "" msgid "" -"The :func:`socket.if_nameindex`, :func:`socket.if_nametoindex`, and :func:" -"`socket.if_indextoname` functions have been implemented on Windows. " -"(Contributed by Zackery Spytz in :issue:`37007`.)" +"The :func:`socket.if_nameindex`, :func:`socket.if_nametoindex`, " +"and :func:`socket.if_indextoname` functions have been implemented on " +"Windows. (Contributed by Zackery Spytz in :issue:`37007`.)" msgstr "" msgid "ssl" msgstr "" msgid "" -"Added :attr:`~ssl.SSLContext.post_handshake_auth` to enable and :meth:`~ssl." -"SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 post-handshake " -"authentication. (Contributed by Christian Heimes in :issue:`34670`.)" +"Added :attr:`~ssl.SSLContext.post_handshake_auth` to enable " +"and :meth:`~ssl.SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 " +"post-handshake authentication. (Contributed by Christian Heimes " +"in :issue:`34670`.)" msgstr "" msgid "statistics" msgstr "" msgid "" -"Added :func:`statistics.fmean` as a faster, floating-point variant of :func:" -"`statistics.mean`. (Contributed by Raymond Hettinger and Steven D'Aprano " -"in :issue:`35904`.)" +"Added :func:`statistics.fmean` as a faster, floating-point variant " +"of :func:`statistics.mean`. (Contributed by Raymond Hettinger and Steven " +"D'Aprano in :issue:`35904`.)" msgstr "" msgid "" @@ -1591,19 +1599,20 @@ msgid "threading" msgstr "" msgid "" -"Add a new :func:`threading.excepthook` function which handles uncaught :meth:" -"`threading.Thread.run` exception. It can be overridden to control how " -"uncaught :meth:`threading.Thread.run` exceptions are handled. (Contributed " -"by Victor Stinner in :issue:`1230540`.)" +"Add a new :func:`threading.excepthook` function which handles " +"uncaught :meth:`threading.Thread.run` exception. It can be overridden to " +"control how uncaught :meth:`threading.Thread.run` exceptions are handled. " +"(Contributed by Victor Stinner in :issue:`1230540`.)" msgstr "" msgid "" -"Add a new :func:`threading.get_native_id` function and a :data:`~threading." -"Thread.native_id` attribute to the :class:`threading.Thread` class. These " -"return the native integral Thread ID of the current thread assigned by the " -"kernel. This feature is only available on certain platforms, see :func:" -"`get_native_id ` for more information. (Contributed " -"by Jake Tesler in :issue:`36084`.)" +"Add a new :func:`threading.get_native_id` function and " +"a :data:`~threading.Thread.native_id` attribute to " +"the :class:`threading.Thread` class. These return the native integral Thread " +"ID of the current thread assigned by the kernel. This feature is only " +"available on certain platforms, see :func:`get_native_id " +"` for more information. (Contributed by Jake Tesler " +"in :issue:`36084`.)" msgstr "" msgid "tokenize" @@ -1632,8 +1641,8 @@ msgstr "" msgid "" "The :class:`!tkinter.PhotoImage` class now has :meth:`!transparency_get` " -"and :meth:`!transparency_set` methods. (Contributed by Zackery Spytz in :" -"issue:`25451`.)" +"and :meth:`!transparency_set` methods. (Contributed by Zackery Spytz " +"in :issue:`25451`.)" msgstr "" msgid "time" @@ -1651,10 +1660,10 @@ msgid "The :mod:`typing` module incorporates several new features:" msgstr "" msgid "" -"A dictionary type with per-key types. See :pep:`589` and :class:`typing." -"TypedDict`. TypedDict uses only string keys. By default, every key is " -"required to be present. Specify \"total=False\" to allow keys to be " -"optional::" +"A dictionary type with per-key types. See :pep:`589` " +"and :class:`typing.TypedDict`. TypedDict uses only string keys. By default, " +"every key is required to be present. Specify \"total=False\" to allow keys " +"to be optional::" msgstr "" msgid "" @@ -1676,18 +1685,19 @@ msgid "" msgstr "" msgid "" -"\"Final\" variables, functions, methods and classes. See :pep:`591`, :class:" -"`typing.Final` and :deco:`typing.final`. The final qualifier instructs a " -"static type checker to restrict subclassing, overriding, or reassignment::" +"\"Final\" variables, functions, methods and classes. " +"See :pep:`591`, :class:`typing.Final` and :deco:`typing.final`. The final " +"qualifier instructs a static type checker to restrict subclassing, " +"overriding, or reassignment::" msgstr "" msgid "pi: Final[float] = 3.1415926536" msgstr "" msgid "" -"Protocol definitions. See :pep:`544`, :class:`typing.Protocol` and :deco:" -"`typing.runtime_checkable`. Simple ABCs like :class:`typing.SupportsInt` " -"are now ``Protocol`` subclasses." +"Protocol definitions. See :pep:`544`, :class:`typing.Protocol` " +"and :deco:`typing.runtime_checkable`. Simple ABCs " +"like :class:`typing.SupportsInt` are now ``Protocol`` subclasses." msgstr "" msgid "New protocol class :class:`typing.SupportsIndex`." @@ -1717,15 +1727,16 @@ msgstr "" msgid "" "Added :class:`~unittest.mock.AsyncMock` to support an asynchronous version " "of :class:`~unittest.mock.Mock`. Appropriate new assert functions for " -"testing have been added as well. (Contributed by Lisa Roach in :issue:" -"`26467`)." +"testing have been added as well. (Contributed by Lisa Roach " +"in :issue:`26467`)." msgstr "" msgid "" -"Added :func:`~unittest.addModuleCleanup` and :meth:`~unittest.TestCase." -"addClassCleanup` to unittest to support cleanups for :func:`~unittest." -"setUpModule` and :meth:`~unittest.TestCase.setUpClass`. (Contributed by Lisa " -"Roach in :issue:`24412`.)" +"Added :func:`~unittest.addModuleCleanup` " +"and :meth:`~unittest.TestCase.addClassCleanup` to unittest to support " +"cleanups for :func:`~unittest.setUpModule` " +"and :meth:`~unittest.TestCase.setUpClass`. (Contributed by Lisa Roach " +"in :issue:`24412`.)" msgstr "" msgid "" @@ -1785,9 +1796,10 @@ msgid "xml" msgstr "" msgid "" -"As mitigation against DTD and external entity retrieval, the :mod:`xml.dom." -"minidom` and :mod:`xml.sax` modules no longer process external entities by " -"default. (Contributed by Christian Heimes in :issue:`17239`.)" +"As mitigation against DTD and external entity retrieval, " +"the :mod:`xml.dom.minidom` and :mod:`xml.sax` modules no longer process " +"external entities by default. (Contributed by Christian Heimes " +"in :issue:`17239`.)" msgstr "" msgid "" @@ -1798,18 +1810,19 @@ msgid "" msgstr "" msgid "" -"The :mod:`xml.etree.ElementTree` module provides a new function :func:`~xml." -"etree.ElementTree.canonicalize` that implements C14N 2.0. (Contributed by " -"Stefan Behnel in :issue:`13611`.)" +"The :mod:`xml.etree.ElementTree` module provides a new " +"function :func:`~xml.etree.ElementTree.canonicalize` that implements C14N " +"2.0. (Contributed by Stefan Behnel in :issue:`13611`.)" msgstr "" msgid "" "The target object of :class:`xml.etree.ElementTree.XMLParser` can receive " "namespace declaration events through the new callback methods ``start_ns()`` " -"and ``end_ns()``. Additionally, the :class:`xml.etree.ElementTree." -"TreeBuilder` target can be configured to process events about comments and " -"processing instructions to include them in the generated tree. (Contributed " -"by Stefan Behnel in :issue:`36676` and :issue:`36673`.)" +"and ``end_ns()``. Additionally, " +"the :class:`xml.etree.ElementTree.TreeBuilder` target can be configured to " +"process events about comments and processing instructions to include them in " +"the generated tree. (Contributed by Stefan Behnel in :issue:`36676` " +"and :issue:`36673`.)" msgstr "" msgid "xmlrpc" @@ -1847,15 +1860,15 @@ msgid "(Contributed by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)" msgstr "" msgid "" -":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" -"`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-" -"copy\" syscalls on Linux and macOS in order to copy the file more " -"efficiently. \"fast-copy\" means that the copying operation occurs within " -"the kernel, avoiding the use of userspace buffers in Python as in \"``outfd." -"write(infd.read())``\". On Windows :func:`shutil.copyfile` uses a bigger " -"default buffer size (1 MiB instead of 16 KiB) and a :func:`memoryview`-based " -"variant of :func:`shutil.copyfileobj` is used. The speedup for copying a 512 " -"MiB file within the same partition is about +26% on Linux, +50% on macOS and " +":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:`shutil.copytree` " +"and :func:`shutil.move` use platform-specific \"fast-copy\" syscalls on " +"Linux and macOS in order to copy the file more efficiently. \"fast-copy\" " +"means that the copying operation occurs within the kernel, avoiding the use " +"of userspace buffers in Python as in \"``outfd.write(infd.read())``\". On " +"Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB " +"instead of 16 KiB) and a :func:`memoryview`-based variant " +"of :func:`shutil.copyfileobj` is used. The speedup for copying a 512 MiB " +"file within the same partition is about +26% on Linux, +50% on macOS and " "+40% on Windows. Also, much less CPU cycles are consumed. See :ref:`shutil-" "platform-dependent-efficient-copy-operations` section. (Contributed by " "Giampaolo Rodolà in :issue:`33671`.)" @@ -1918,14 +1931,14 @@ msgstr "" msgid "" "Reduced an overhead of converting arguments passed to many builtin functions " "and methods. This sped up calling some simple builtin functions and methods " -"up to 20--50%. (Contributed by Serhiy Storchaka in :issue:`23867`, :issue:" -"`35582` and :issue:`36127`.)" +"up to 20--50%. (Contributed by Serhiy Storchaka " +"in :issue:`23867`, :issue:`35582` and :issue:`36127`.)" msgstr "" msgid "" "``LOAD_GLOBAL`` instruction now uses new \"per opcode cache\" mechanism. It " -"is about 40% faster now. (Contributed by Yury Selivanov and Inada Naoki in :" -"issue:`26219`.)" +"is about 40% faster now. (Contributed by Yury Selivanov and Inada Naoki " +"in :issue:`26219`.)" msgstr "" msgid "Build and C API Changes" @@ -1934,8 +1947,8 @@ msgstr "" msgid "" "Default :data:`sys.abiflags` became an empty string: the ``m`` flag for " "pymalloc became useless (builds with and without pymalloc are ABI " -"compatible) and so has been removed. (Contributed by Victor Stinner in :" -"issue:`36707`.)" +"compatible) and so has been removed. (Contributed by Victor Stinner " +"in :issue:`36707`.)" msgstr "" msgid "Example of changes:" @@ -2016,8 +2029,8 @@ msgstr "" msgid "" "The result of :c:func:`PyExceptionClass_Name` is now of type ``const char " -"*`` rather of ``char *``. (Contributed by Serhiy Storchaka in :issue:" -"`33818`.)" +"*`` rather of ``char *``. (Contributed by Serhiy Storchaka " +"in :issue:`33818`.)" msgstr "" msgid "" @@ -2041,26 +2054,27 @@ msgid "(Contributed by Antoine Pitrou in :issue:`32430`.)" msgstr "" msgid "" -"Functions that convert Python number to C integer like :c:func:" -"`PyLong_AsLong` and argument parsing functions like :c:func:" -"`PyArg_ParseTuple` with integer converting format units like ``'i'`` will " -"now use the :meth:`~object.__index__` special method instead of :meth:" -"`~object.__int__`, if available. The deprecation warning will be emitted " -"for objects with the ``__int__()`` method but without the ``__index__()`` " -"method (like :class:`~decimal.Decimal` and :class:`~fractions.Fraction`). :" -"c:func:`PyNumber_Check` will now return ``1`` for objects implementing " -"``__index__()``. :c:func:`PyNumber_Long`, :c:func:`PyNumber_Float` and :c:" -"func:`PyFloat_AsDouble` also now use the ``__index__()`` method if " -"available. (Contributed by Serhiy Storchaka in :issue:`36048` and :issue:" -"`20092`.)" +"Functions that convert Python number to C integer " +"like :c:func:`PyLong_AsLong` and argument parsing functions " +"like :c:func:`PyArg_ParseTuple` with integer converting format units like " +"``'i'`` will now use the :meth:`~object.__index__` special method instead " +"of :meth:`~object.__int__`, if available. The deprecation warning will be " +"emitted for objects with the ``__int__()`` method but without the " +"``__index__()`` method (like :class:`~decimal.Decimal` " +"and :class:`~fractions.Fraction`). :c:func:`PyNumber_Check` will now return " +"``1`` for objects implementing " +"``__index__()``. :c:func:`PyNumber_Long`, :c:func:`PyNumber_Float` " +"and :c:func:`PyFloat_AsDouble` also now use the ``__index__()`` method if " +"available. (Contributed by Serhiy Storchaka in :issue:`36048` " +"and :issue:`20092`.)" msgstr "" msgid "" -"Heap-allocated type objects will now increase their reference count in :c:" -"func:`PyObject_Init` (and its parallel macro ``PyObject_INIT``) instead of " -"in :c:func:`PyType_GenericAlloc`. Types that modify instance allocation or " -"deallocation may need to be adjusted. (Contributed by Eddie Elizondo in :" -"issue:`35810`.)" +"Heap-allocated type objects will now increase their reference count " +"in :c:func:`PyObject_Init` (and its parallel macro ``PyObject_INIT``) " +"instead of in :c:func:`PyType_GenericAlloc`. Types that modify instance " +"allocation or deallocation may need to be adjusted. (Contributed by Eddie " +"Elizondo in :issue:`35810`.)" msgstr "" msgid "" @@ -2072,9 +2086,9 @@ msgstr "" msgid "" ":c:func:`!Py_SetPath` now sets :data:`sys.executable` to the program full " -"path (:c:func:`!Py_GetProgramFullPath`) rather than to the program name (:c:" -"func:`!Py_GetProgramName`). (Contributed by Victor Stinner in :issue:" -"`38234`.)" +"path (:c:func:`!Py_GetProgramFullPath`) rather than to the program name " +"(:c:func:`!Py_GetProgramName`). (Contributed by Victor Stinner " +"in :issue:`38234`.)" msgstr "" msgid "Deprecated" @@ -2082,34 +2096,36 @@ msgstr "" msgid "" "The distutils ``bdist_wininst`` command is now deprecated, use " -"``bdist_wheel`` (wheel packages) instead. (Contributed by Victor Stinner in :" -"issue:`37481`.)" +"``bdist_wheel`` (wheel packages) instead. (Contributed by Victor Stinner " +"in :issue:`37481`.)" msgstr "" msgid "" -"Deprecated methods ``getchildren()`` and ``getiterator()`` in the :mod:`~xml." -"etree.ElementTree` module now emit a :exc:`DeprecationWarning` instead of :" -"exc:`PendingDeprecationWarning`. They will be removed in Python 3.9. " -"(Contributed by Serhiy Storchaka in :issue:`29209`.)" +"Deprecated methods ``getchildren()`` and ``getiterator()`` in " +"the :mod:`~xml.etree.ElementTree` module now emit " +"a :exc:`DeprecationWarning` instead of :exc:`PendingDeprecationWarning`. " +"They will be removed in Python 3.9. (Contributed by Serhiy Storchaka " +"in :issue:`29209`.)" msgstr "" msgid "" -"Passing an object that is not an instance of :class:`concurrent.futures." -"ThreadPoolExecutor` to :meth:`loop.set_default_executor() ` is deprecated and will be prohibited in Python 3.9. " -"(Contributed by Elvis Pranskevichus in :issue:`34075`.)" +"Passing an object that is not an instance " +"of :class:`concurrent.futures.ThreadPoolExecutor` " +"to :meth:`loop.set_default_executor() ` " +"is deprecated and will be prohibited in Python 3.9. (Contributed by Elvis " +"Pranskevichus in :issue:`34075`.)" msgstr "" msgid "" -"The :meth:`~object.__getitem__` methods of :class:`xml.dom.pulldom." -"DOMEventStream`, :class:`wsgiref.util.FileWrapper` and :class:`fileinput." -"FileInput` have been deprecated." +"The :meth:`~object.__getitem__` methods " +"of :class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` " +"and :class:`fileinput.FileInput` have been deprecated." msgstr "" msgid "" "Implementations of these methods have been ignoring their *index* parameter, " -"and returning the next item instead. (Contributed by Berker Peksag in :issue:" -"`9372`.)" +"and returning the next item instead. (Contributed by Berker Peksag " +"in :issue:`9372`.)" msgstr "" msgid "" @@ -2128,26 +2144,23 @@ msgstr "" msgid "" ":class:`ast.NodeVisitor` methods ``visit_Num()``, ``visit_Str()``, " "``visit_Bytes()``, ``visit_NameConstant()`` and ``visit_Ellipsis()`` are " -"deprecated now and will not be called in future Python versions. Add the :" -"meth:`~ast.NodeVisitor.visit_Constant` method to handle all constant nodes. " -"(Contributed by Serhiy Storchaka in :issue:`36917`.)" +"deprecated now and will not be called in future Python versions. Add " +"the :meth:`~ast.NodeVisitor.visit_Constant` method to handle all constant " +"nodes. (Contributed by Serhiy Storchaka in :issue:`36917`.)" msgstr "" msgid "" "The :deco:`!asyncio.coroutine` :term:`decorator` is deprecated and will be " -"removed in version 3.10. Instead of ``@asyncio.coroutine``, use :keyword:" -"`async def` instead. (Contributed by Andrew Svetlov in :issue:`36921`.)" +"removed in version 3.10. Instead of ``@asyncio.coroutine``, " +"use :keyword:`async def` instead. (Contributed by Andrew Svetlov " +"in :issue:`36921`.)" msgstr "" msgid "" "In :mod:`asyncio`, the explicit passing of a *loop* argument has been " -"deprecated and will be removed in version 3.10 for the following: :func:" -"`asyncio.sleep`, :func:`asyncio.gather`, :func:`asyncio.shield`, :func:" -"`asyncio.wait_for`, :func:`asyncio.wait`, :func:`asyncio.as_completed`, :" -"class:`asyncio.Task`, :class:`asyncio.Lock`, :class:`asyncio.Event`, :class:" -"`asyncio.Condition`, :class:`asyncio.Semaphore`, :class:`asyncio." -"BoundedSemaphore`, :class:`asyncio.Queue`, :func:`asyncio." -"create_subprocess_exec`, and :func:`asyncio.create_subprocess_shell`." +"deprecated and will be removed in version 3.10 for the " +"following: :func:`asyncio.sleep`, :func:`asyncio.gather`, :func:`asyncio.shield`, :func:`asyncio.wait_for`, :func:`asyncio.wait`, :func:`asyncio.as_completed`, :class:`asyncio.Task`, :class:`asyncio.Lock`, :class:`asyncio.Event`, :class:`asyncio.Condition`, :class:`asyncio.Semaphore`, :class:`asyncio.BoundedSemaphore`, :class:`asyncio.Queue`, :func:`asyncio.create_subprocess_exec`, " +"and :func:`asyncio.create_subprocess_shell`." msgstr "" msgid "" @@ -2158,21 +2171,21 @@ msgstr "" msgid "" "The following functions and methods are deprecated in the :mod:`gettext` " -"module: :func:`!lgettext`, :func:`!ldgettext`, :func:`!lngettext` and :func:" -"`!ldngettext`. They return encoded bytes, and it's possible that you will " -"get unexpected Unicode-related exceptions if there are encoding problems " -"with the translated strings. It's much better to use alternatives which " -"return Unicode strings in Python 3. These functions have been broken for a " -"long time." +"module: :func:`!lgettext`, :func:`!ldgettext`, :func:`!lngettext` " +"and :func:`!ldngettext`. They return encoded bytes, and it's possible that " +"you will get unexpected Unicode-related exceptions if there are encoding " +"problems with the translated strings. It's much better to use alternatives " +"which return Unicode strings in Python 3. These functions have been broken " +"for a long time." msgstr "" msgid "" -"Function :func:`!bind_textdomain_codeset`, methods :meth:`!NullTranslations." -"output_charset` and :meth:`!NullTranslations.set_output_charset`, and the " -"*codeset* parameter of functions :func:`~gettext.translation` and :func:" -"`~gettext.install` are also deprecated, since they are only used for the " -"``l*gettext()`` functions. (Contributed by Serhiy Storchaka in :issue:" -"`33710`.)" +"Function :func:`!bind_textdomain_codeset`, methods :meth:`!" +"NullTranslations.output_charset` and :meth:`!" +"NullTranslations.set_output_charset`, and the *codeset* parameter of " +"functions :func:`~gettext.translation` and :func:`~gettext.install` are also " +"deprecated, since they are only used for the ``l*gettext()`` functions. " +"(Contributed by Serhiy Storchaka in :issue:`33710`.)" msgstr "" msgid "" @@ -2182,40 +2195,43 @@ msgstr "" msgid "" "Many builtin and extension functions that take integer arguments will now " -"emit a deprecation warning for :class:`~decimal.Decimal`\\ s, :class:" -"`~fractions.Fraction`\\ s and any other objects that can be converted to " -"integers only with a loss (e.g. that have the :meth:`~object.__int__` method " -"but do not have the :meth:`~object.__index__` method). In future version " -"they will be errors. (Contributed by Serhiy Storchaka in :issue:`36048`.)" +"emit a deprecation warning for :class:`~decimal.Decimal`\\ " +"s, :class:`~fractions.Fraction`\\ s and any other objects that can be " +"converted to integers only with a loss (e.g. that have " +"the :meth:`~object.__int__` method but do not have " +"the :meth:`~object.__index__` method). In future version they will be " +"errors. (Contributed by Serhiy Storchaka in :issue:`36048`.)" msgstr "" msgid "Deprecated passing the following arguments as keyword arguments:" msgstr "" msgid "" -"*func* in :func:`functools.partialmethod`, :func:`weakref.finalize`, :meth:" -"`profile.Profile.runcall`, :meth:`!cProfile.Profile.runcall`, :meth:`bdb.Bdb." -"runcall`, :meth:`trace.Trace.runfunc` and :func:`curses.wrapper`." +"*func* " +"in :func:`functools.partialmethod`, :func:`weakref.finalize`, :meth:`profile.Profile.runcall`, :meth:`!" +"cProfile.Profile.runcall`, :meth:`bdb.Bdb.runcall`, :meth:`trace.Trace.runfunc` " +"and :func:`curses.wrapper`." msgstr "" msgid "*function* in :meth:`unittest.TestCase.addCleanup`." msgstr "" msgid "" -"*fn* in the :meth:`~concurrent.futures.Executor.submit` method of :class:" -"`concurrent.futures.ThreadPoolExecutor` and :class:`concurrent.futures." -"ProcessPoolExecutor`." +"*fn* in the :meth:`~concurrent.futures.Executor.submit` method " +"of :class:`concurrent.futures.ThreadPoolExecutor` " +"and :class:`concurrent.futures.ProcessPoolExecutor`." msgstr "" msgid "" -"*callback* in :meth:`contextlib.ExitStack.callback`, :meth:`!contextlib." -"AsyncExitStack.callback` and :meth:`contextlib.AsyncExitStack." -"push_async_callback`." +"*callback* in :meth:`contextlib.ExitStack.callback`, :meth:`!" +"contextlib.AsyncExitStack.callback` " +"and :meth:`contextlib.AsyncExitStack.push_async_callback`." msgstr "" msgid "" -"*c* and *typeid* in the :meth:`!create` method of :class:`!multiprocessing." -"managers.Server` and :class:`!multiprocessing.managers.SharedMemoryServer`." +"*c* and *typeid* in the :meth:`!create` method of :class:`!" +"multiprocessing.managers.Server` and :class:`!" +"multiprocessing.managers.SharedMemoryServer`." msgstr "" msgid "*obj* in :func:`weakref.finalize`." @@ -2252,9 +2268,10 @@ msgstr "" msgid "" "The function :func:`!time.clock` has been removed, after having been " -"deprecated since Python 3.3: use :func:`time.perf_counter` or :func:`time." -"process_time` instead, depending on your requirements, to have well-defined " -"behavior. (Contributed by Matthias Bussonnier in :issue:`36895`.)" +"deprecated since Python 3.3: use :func:`time.perf_counter` " +"or :func:`time.process_time` instead, depending on your requirements, to " +"have well-defined behavior. (Contributed by Matthias Bussonnier " +"in :issue:`36895`.)" msgstr "" msgid "" @@ -2282,13 +2299,14 @@ msgid "" msgstr "" msgid "" -"Removed the ``doctype()`` method of :class:`~xml.etree.ElementTree." -"XMLParser`. (Contributed by Serhiy Storchaka in :issue:`29209`.)" +"Removed the ``doctype()`` method " +"of :class:`~xml.etree.ElementTree.XMLParser`. (Contributed by Serhiy " +"Storchaka in :issue:`29209`.)" msgstr "" msgid "" -"\"unicode_internal\" codec is removed. (Contributed by Inada Naoki in :issue:" -"`36297`.)" +"\"unicode_internal\" codec is removed. (Contributed by Inada Naoki " +"in :issue:`36297`.)" msgstr "" msgid "" @@ -2297,15 +2315,16 @@ msgid "" msgstr "" msgid "" -"The ``bufsize`` keyword argument of :func:`fileinput.input` and :func:" -"`fileinput.FileInput` which was ignored and deprecated since Python 3.6 has " -"been removed. :issue:`36952` (Contributed by Matthias Bussonnier.)" +"The ``bufsize`` keyword argument of :func:`fileinput.input` " +"and :func:`fileinput.FileInput` which was ignored and deprecated since " +"Python 3.6 has been removed. :issue:`36952` (Contributed by Matthias " +"Bussonnier.)" msgstr "" msgid "" -"The functions :func:`!sys.set_coroutine_wrapper` and :func:`!sys." -"get_coroutine_wrapper` deprecated in Python 3.7 have been removed; :issue:" -"`36933` (Contributed by Matthias Bussonnier.)" +"The functions :func:`!sys.set_coroutine_wrapper` and :func:`!" +"sys.get_coroutine_wrapper` deprecated in Python 3.7 have been " +"removed; :issue:`36933` (Contributed by Matthias Bussonnier.)" msgstr "" msgid "Porting to Python 3.8" @@ -2331,8 +2350,8 @@ msgid "" "(``is`` and ``is not``) are used with certain types of literals (e.g. " "strings, numbers). These can often work by accident in CPython, but are not " "guaranteed by the language spec. The warning advises users to use equality " -"tests (``==`` and ``!=``) instead. (Contributed by Serhiy Storchaka in :" -"issue:`34850`.)" +"tests (``==`` and ``!=``) instead. (Contributed by Serhiy Storchaka " +"in :issue:`34850`.)" msgstr "" msgid "" @@ -2343,29 +2362,30 @@ msgid "" msgstr "" msgid "" -"Removed ``__str__`` implementations from builtin types :class:`bool`, :class:" -"`int`, :class:`float`, :class:`complex` and few classes from the standard " -"library. They now inherit ``__str__()`` from :class:`object`. As result, " -"defining the ``__repr__()`` method in the subclass of these classes will " -"affect their string representation. (Contributed by Serhiy Storchaka in :" -"issue:`36793`.)" +"Removed ``__str__`` implementations from builtin " +"types :class:`bool`, :class:`int`, :class:`float`, :class:`complex` and few " +"classes from the standard library. They now inherit ``__str__()`` " +"from :class:`object`. As result, defining the ``__repr__()`` method in the " +"subclass of these classes will affect their string representation. " +"(Contributed by Serhiy Storchaka in :issue:`36793`.)" msgstr "" msgid "" "On AIX, :data:`sys.platform` doesn't contain the major version anymore. It " "is always ``'aix'``, instead of ``'aix3'`` .. ``'aix7'``. Since older " "Python versions include the version number, so it is recommended to always " -"use ``sys.platform.startswith('aix')``. (Contributed by M. Felt in :issue:" -"`36588`.)" +"use ``sys.platform.startswith('aix')``. (Contributed by M. Felt " +"in :issue:`36588`.)" msgstr "" msgid "" ":c:func:`!PyEval_AcquireLock` and :c:func:`!PyEval_AcquireThread` now " "terminate the current thread if called while the interpreter is finalizing, " -"making them consistent with :c:func:`PyEval_RestoreThread`, :c:func:" -"`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`. If this behavior is " -"not desired, guard the call by checking :c:func:`!_Py_IsFinalizing` or :func:" -"`sys.is_finalizing`. (Contributed by Joannah Nanjekye in :issue:`36475`.)" +"making them consistent " +"with :c:func:`PyEval_RestoreThread`, :c:func:`Py_END_ALLOW_THREADS`, " +"and :c:func:`PyGILState_Ensure`. If this behavior is not desired, guard the " +"call by checking :c:func:`!_Py_IsFinalizing` or :func:`sys.is_finalizing`. " +"(Contributed by Joannah Nanjekye in :issue:`36475`.)" msgstr "" msgid "Changes in the Python API" @@ -2381,18 +2401,18 @@ msgstr "" msgid "" ":class:`subprocess.Popen` can now use :func:`os.posix_spawn` in some cases " "for better performance. On Windows Subsystem for Linux and QEMU User " -"Emulation, the :class:`~subprocess.Popen` constructor using :func:`os." -"posix_spawn` no longer raises an exception on errors like \"missing " -"program\". Instead the child process fails with a non-zero :attr:" -"`~subprocess.Popen.returncode`. (Contributed by Joannah Nanjekye and Victor " -"Stinner in :issue:`35537`.)" +"Emulation, the :class:`~subprocess.Popen` constructor " +"using :func:`os.posix_spawn` no longer raises an exception on errors like " +"\"missing program\". Instead the child process fails with a non-" +"zero :attr:`~subprocess.Popen.returncode`. (Contributed by Joannah Nanjekye " +"and Victor Stinner in :issue:`35537`.)" msgstr "" msgid "" "The *preexec_fn* argument of * :class:`subprocess.Popen` is no longer " "compatible with subinterpreters. The use of the parameter in a " -"subinterpreter now raises :exc:`RuntimeError`. (Contributed by Eric Snow in :" -"issue:`34651`, modified by Christian Heimes in :issue:`37951`.)" +"subinterpreter now raises :exc:`RuntimeError`. (Contributed by Eric Snow " +"in :issue:`34651`, modified by Christian Heimes in :issue:`37951`.)" msgstr "" msgid "" @@ -2407,42 +2427,44 @@ msgid "" msgstr "" msgid "" -"The :meth:`~tkinter.ttk.Treeview.selection` method of the :class:`tkinter." -"ttk.Treeview` class no longer takes arguments. Using it with arguments for " -"changing the selection was deprecated in Python 3.6. Use specialized " -"methods like :meth:`~tkinter.ttk.Treeview.selection_set` for changing the " -"selection. (Contributed by Serhiy Storchaka in :issue:`31508`.)" +"The :meth:`~tkinter.ttk.Treeview.selection` method of " +"the :class:`tkinter.ttk.Treeview` class no longer takes arguments. Using it " +"with arguments for changing the selection was deprecated in Python 3.6. Use " +"specialized methods like :meth:`~tkinter.ttk.Treeview.selection_set` for " +"changing the selection. (Contributed by Serhiy Storchaka in :issue:`31508`.)" msgstr "" msgid "" -"The :meth:`~xml.dom.minidom.Node.writexml`, :meth:`~xml.dom.minidom.Node." -"toxml` and :meth:`~xml.dom.minidom.Node.toprettyxml` methods of :mod:`xml." -"dom.minidom` and the :meth:`~xml.etree.ElementTree.ElementTree.write` method " +"The :meth:`~xml.dom.minidom.Node.writexml`, :meth:`~xml.dom.minidom.Node.toxml` " +"and :meth:`~xml.dom.minidom.Node.toprettyxml` methods " +"of :mod:`xml.dom.minidom` and " +"the :meth:`~xml.etree.ElementTree.ElementTree.write` method " "of :mod:`xml.etree.ElementTree` now preserve the attribute order specified " -"by the user. (Contributed by Diego Rojas and Raymond Hettinger in :issue:" -"`34160`.)" +"by the user. (Contributed by Diego Rojas and Raymond Hettinger " +"in :issue:`34160`.)" msgstr "" msgid "" -"A :mod:`dbm.dumb` database opened with flags ``'r'`` is now read-only. :func:" -"`dbm.dumb.open` with flags ``'r'`` and ``'w'`` no longer creates a database " -"if it does not exist. (Contributed by Serhiy Storchaka in :issue:`32749`.)" +"A :mod:`dbm.dumb` database opened with flags ``'r'`` is now read-" +"only. :func:`dbm.dumb.open` with flags ``'r'`` and ``'w'`` no longer creates " +"a database if it does not exist. (Contributed by Serhiy Storchaka " +"in :issue:`32749`.)" msgstr "" msgid "" -"The ``doctype()`` method defined in a subclass of :class:`~xml.etree." -"ElementTree.XMLParser` will no longer be called and will emit a :exc:" -"`RuntimeWarning` instead of a :exc:`DeprecationWarning`. Define the :meth:" -"`doctype() ` method on a target " -"for handling an XML doctype declaration. (Contributed by Serhiy Storchaka " -"in :issue:`29209`.)" +"The ``doctype()`` method defined in a subclass " +"of :class:`~xml.etree.ElementTree.XMLParser` will no longer be called and " +"will emit a :exc:`RuntimeWarning` instead of a :exc:`DeprecationWarning`. " +"Define the :meth:`doctype() ` " +"method on a target for handling an XML doctype declaration. (Contributed by " +"Serhiy Storchaka in :issue:`29209`.)" msgstr "" msgid "" "A :exc:`RuntimeError` is now raised when the custom metaclass doesn't " -"provide the ``__classcell__`` entry in the namespace passed to ``type." -"__new__``. A :exc:`DeprecationWarning` was emitted in Python 3.6--3.7. " -"(Contributed by Serhiy Storchaka in :issue:`23722`.)" +"provide the ``__classcell__`` entry in the namespace passed to " +"``type.__new__``. A :exc:`DeprecationWarning` was emitted in Python " +"3.6--3.7. (Contributed by Serhiy Storchaka in :issue:`23722`.)" msgstr "" msgid "" @@ -2451,10 +2473,9 @@ msgid "" msgstr "" msgid "" -":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" -"`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-" -"copy\" syscalls (see :ref:`shutil-platform-dependent-efficient-copy-" -"operations` section)." +":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:`shutil.copytree` " +"and :func:`shutil.move` use platform-specific \"fast-copy\" syscalls " +"(see :ref:`shutil-platform-dependent-efficient-copy-operations` section)." msgstr "" msgid "" @@ -2493,17 +2514,18 @@ msgid "" msgstr "" msgid "" -"Deleting a key from a read-only :mod:`dbm` database (:mod:`dbm.dumb`, :mod:" -"`dbm.gnu` or :mod:`dbm.ndbm`) raises :attr:`!error` (:exc:`dbm.dumb.error`, :" -"exc:`dbm.gnu.error` or :exc:`dbm.ndbm.error`) instead of :exc:`KeyError`. " -"(Contributed by Xiang Zhang in :issue:`33106`.)" +"Deleting a key from a read-only :mod:`dbm` database " +"(:mod:`dbm.dumb`, :mod:`dbm.gnu` or :mod:`dbm.ndbm`) raises :attr:`!error` " +"(:exc:`dbm.dumb.error`, :exc:`dbm.gnu.error` or :exc:`dbm.ndbm.error`) " +"instead of :exc:`KeyError`. (Contributed by Xiang Zhang in :issue:`33106`.)" msgstr "" msgid "" -"Simplified AST for literals. All constants will be represented as :class:" -"`ast.Constant` instances. Instantiating old classes ``Num``, ``Str``, " -"``Bytes``, ``NameConstant`` and ``Ellipsis`` will return an instance of " -"``Constant``. (Contributed by Serhiy Storchaka in :issue:`32892`.)" +"Simplified AST for literals. All constants will be represented " +"as :class:`ast.Constant` instances. Instantiating old classes ``Num``, " +"``Str``, ``Bytes``, ``NameConstant`` and ``Ellipsis`` will return an " +"instance of ``Constant``. (Contributed by Serhiy Storchaka " +"in :issue:`32892`.)" msgstr "" msgid "" @@ -2525,15 +2547,16 @@ msgstr "" msgid "" "DLL dependencies for extension modules and DLLs loaded with :mod:`ctypes` on " "Windows are now resolved more securely. Only the system paths, the directory " -"containing the DLL or PYD file, and directories added with :func:`~os." -"add_dll_directory` are searched for load-time dependencies. Specifically, :" -"envvar:`PATH` and the current working directory are no longer used, and " -"modifications to these will no longer have any effect on normal DLL " -"resolution. If your application relies on these mechanisms, you should check " -"for :func:`~os.add_dll_directory` and if it exists, use it to add your DLLs " -"directory while loading your library. Note that Windows 7 users will need to " -"ensure that Windows Update KB2533623 has been installed (this is also " -"verified by the installer). (Contributed by Steve Dower in :issue:`36085`.)" +"containing the DLL or PYD file, and directories added " +"with :func:`~os.add_dll_directory` are searched for load-time dependencies. " +"Specifically, :envvar:`PATH` and the current working directory are no longer " +"used, and modifications to these will no longer have any effect on normal " +"DLL resolution. If your application relies on these mechanisms, you should " +"check for :func:`~os.add_dll_directory` and if it exists, use it to add your " +"DLLs directory while loading your library. Note that Windows 7 users will " +"need to ensure that Windows Update KB2533623 has been installed (this is " +"also verified by the installer). (Contributed by Steve Dower " +"in :issue:`36085`.)" msgstr "" msgid "" @@ -2583,20 +2606,21 @@ msgid "" msgstr "" msgid "" -"Use of ``#`` variants of formats in parsing or building value (e.g. :c:func:" -"`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:" -"`PyObject_CallFunction`, etc.) without ``PY_SSIZE_T_CLEAN`` defined raises " -"``DeprecationWarning`` now. It will be removed in 3.10 or 4.0. Read :ref:" -"`arg-parsing` for detail. (Contributed by Inada Naoki in :issue:`36381`.)" +"Use of ``#`` variants of formats in parsing or building value " +"(e.g. :c:func:`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:`PyObject_CallFunction`, " +"etc.) without ``PY_SSIZE_T_CLEAN`` defined raises ``DeprecationWarning`` " +"now. It will be removed in 3.10 or 4.0. Read :ref:`arg-parsing` for detail. " +"(Contributed by Inada Naoki in :issue:`36381`.)" msgstr "" msgid "" -"Instances of heap-allocated types (such as those created with :c:func:" -"`PyType_FromSpec`) hold a reference to their type object. Increasing the " -"reference count of these type objects has been moved from :c:func:" -"`PyType_GenericAlloc` to the more low-level functions, :c:func:" -"`PyObject_Init` and :c:macro:`!PyObject_INIT`. This makes types created " -"through :c:func:`PyType_FromSpec` behave like other classes in managed code." +"Instances of heap-allocated types (such as those created " +"with :c:func:`PyType_FromSpec`) hold a reference to their type object. " +"Increasing the reference count of these type objects has been moved " +"from :c:func:`PyType_GenericAlloc` to the more low-level " +"functions, :c:func:`PyObject_Init` and :c:macro:`!PyObject_INIT`. This makes " +"types created through :c:func:`PyType_FromSpec` behave like other classes in " +"managed code." msgstr "" msgid ":ref:`Statically allocated types ` are not affected." @@ -2616,10 +2640,10 @@ msgstr "" msgid "" "Remove :c:macro:`Py_INCREF` on the type object after allocating an instance " -"- if any. This may happen after calling :c:macro:`PyObject_New`, :c:macro:" -"`PyObject_NewVar`, :c:func:`PyObject_GC_New`, :c:func:`PyObject_GC_NewVar`, " -"or any other custom allocator that uses :c:func:`PyObject_Init` or :c:macro:" -"`!PyObject_INIT`." +"- if any. This may happen after " +"calling :c:macro:`PyObject_New`, :c:macro:`PyObject_NewVar`, :c:func:`PyObject_GC_New`, :c:func:`PyObject_GC_NewVar`, " +"or any other custom allocator that uses :c:func:`PyObject_Init` " +"or :c:macro:`!PyObject_INIT`." msgstr "" msgid "Example:" @@ -2674,9 +2698,10 @@ msgid "" "The interpreter does not pretend to support binary compatibility of " "extension types across feature releases, anymore. A :c:type:`PyTypeObject` " "exported by a third-party extension module is supposed to have all the slots " -"expected in the current Python version, including :c:member:`~PyTypeObject." -"tp_finalize` (:c:macro:`Py_TPFLAGS_HAVE_FINALIZE` is not checked anymore " -"before reading :c:member:`~PyTypeObject.tp_finalize`)." +"expected in the current Python version, " +"including :c:member:`~PyTypeObject.tp_finalize` " +"(:c:macro:`Py_TPFLAGS_HAVE_FINALIZE` is not checked anymore before " +"reading :c:member:`~PyTypeObject.tp_finalize`)." msgstr "" msgid "(Contributed by Antoine Pitrou in :issue:`32388`.)" @@ -2703,10 +2728,10 @@ msgstr "" msgid "" "The location of an installed :file:`pythonXY.dll` will depend on the " -"installation options and the version and language of Windows. See :ref:" -"`using-on-windows` for more information. The resulting library should be " -"placed in the same directory as :file:`pythonXY.lib`, which is generally " -"the :file:`libs` directory under your Python installation." +"installation options and the version and language of Windows. " +"See :ref:`using-on-windows` for more information. The resulting library " +"should be placed in the same directory as :file:`pythonXY.lib`, which is " +"generally the :file:`libs` directory under your Python installation." msgstr "" msgid "(Contributed by Steve Dower in :issue:`37351`.)" @@ -2731,8 +2756,8 @@ msgid "" msgstr "" msgid "" -"(Contributed by Mark Shannon, Antoine Pitrou and Serhiy Storchaka in :issue:" -"`17611`.)" +"(Contributed by Mark Shannon, Antoine Pitrou and Serhiy Storchaka " +"in :issue:`17611`.)" msgstr "" msgid "" @@ -2847,12 +2872,12 @@ msgid "Notable changes in Python 3.8.1" msgstr "" msgid "" -"Due to significant security concerns, the *reuse_address* parameter of :meth:" -"`asyncio.loop.create_datagram_endpoint` is no longer supported. This is " -"because of the behavior of the socket option ``SO_REUSEADDR`` in UDP. For " -"more details, see the documentation for ``loop.create_datagram_endpoint()``. " -"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:" -"`37228`.)" +"Due to significant security concerns, the *reuse_address* parameter " +"of :meth:`asyncio.loop.create_datagram_endpoint` is no longer supported. " +"This is because of the behavior of the socket option ``SO_REUSEADDR`` in " +"UDP. For more details, see the documentation for " +"``loop.create_datagram_endpoint()``. (Contributed by Kyle Stanley, Antoine " +"Pitrou, and Yury Selivanov in :issue:`37228`.)" msgstr "" msgid "Notable changes in Python 3.8.2" @@ -2879,13 +2904,14 @@ msgstr "" msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " -"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." -"parse.parse_qsl`. Due to security concerns, and to conform with newer W3C " -"recommendations, this has been changed to allow only a single separator key, " -"with ``&`` as the default. This change also affects :func:`!cgi.parse` and :" -"func:`!cgi.parse_multipart` as they use the affected functions internally. " -"For more details, please see their respective documentation. (Contributed by " -"Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)" +"parameter separators in :func:`urllib.parse.parse_qs` " +"and :func:`urllib.parse.parse_qsl`. Due to security concerns, and to " +"conform with newer W3C recommendations, this has been changed to allow only " +"a single separator key, with ``&`` as the default. This change also " +"affects :func:`!cgi.parse` and :func:`!cgi.parse_multipart` as they use the " +"affected functions internally. For more details, please see their respective " +"documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran and Ken Jin " +"in :issue:`42967`.)" msgstr "" msgid "Notable changes in Python 3.8.9" @@ -2918,9 +2944,9 @@ msgid "" msgstr "" msgid "" -"(Originally contributed by Ronald Oussoren and Lawrence D'Anna in :gh:" -"`85272`, with fixes by FX Coudert and Eli Rykoff, and backported to 3.8 by " -"Maxime Bélanger and Ned Deily)" +"(Originally contributed by Ronald Oussoren and Lawrence D'Anna " +"in :gh:`85272`, with fixes by FX Coudert and Eli Rykoff, and backported to " +"3.8 by Maxime Bélanger and Ned Deily)" msgstr "" msgid "urllib.parse" @@ -2928,11 +2954,12 @@ msgstr "" msgid "" "The presence of newline or tab characters in parts of a URL allows for some " -"forms of attacks. Following the WHATWG specification that updates :rfc:" -"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are " -"stripped from the URL by the parser in :mod:`urllib.parse` preventing such " -"attacks. The removal characters are controlled by a new module level " -"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :issue:`43882`)" +"forms of attacks. Following the WHATWG specification that " +"updates :rfc:`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` " +"characters are stripped from the URL by the parser in :mod:`urllib.parse` " +"preventing such attacks. The removal characters are controlled by a new " +"module level variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. " +"(See :issue:`43882`)" msgstr "" msgid "Notable changes in Python 3.8.12" diff --git a/whatsnew/3.9.po b/whatsnew/3.9.po index ac731b8..f811417 100644 --- a/whatsnew/3.9.po +++ b/whatsnew/3.9.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,8 +33,8 @@ msgstr "" msgid "" "This article explains the new features in Python 3.9, compared to 3.8. " -"Python 3.9 was released on October 5, 2020. For full details, see the :ref:" -"`changelog `." +"Python 3.9 was released on October 5, 2020. For full details, see " +"the :ref:`changelog `." msgstr "" msgid ":pep:`596` - Python 3.9 Release Schedule" @@ -91,18 +91,18 @@ msgid "garbage collection does not block on resurrected objects;" msgstr "" msgid "" -"a number of Python modules (:mod:`!_abc`, :mod:`!audioop`, :mod:`!_bz2`, :" -"mod:`!_codecs`, :mod:`!_contextvars`, :mod:`!_crypt`, :mod:`!_functools`, :" -"mod:`!_json`, :mod:`!_locale`, :mod:`math`, :mod:`operator`, :mod:" -"`resource`, :mod:`time`, :mod:`!_weakref`) now use multiphase initialization " -"as defined by PEP 489;" +"a number of Python modules (:mod:`!_abc`, :mod:`!audioop`, :mod:`!" +"_bz2`, :mod:`!_codecs`, :mod:`!_contextvars`, :mod:`!_crypt`, :mod:`!" +"_functools`, :mod:`!_json`, :mod:`!" +"_locale`, :mod:`math`, :mod:`operator`, :mod:`resource`, :mod:`time`, :mod:`!" +"_weakref`) now use multiphase initialization as defined by PEP 489;" msgstr "" msgid "" -"a number of standard library modules (:mod:`!audioop`, :mod:`ast`, :mod:" -"`grp`, :mod:`!_hashlib`, :mod:`pwd`, :mod:`!_posixsubprocess`, :mod:" -"`random`, :mod:`select`, :mod:`struct`, :mod:`termios`, :mod:`zlib`) are now " -"using the stable ABI defined by PEP 384." +"a number of standard library modules (:mod:`!" +"audioop`, :mod:`ast`, :mod:`grp`, :mod:`!_hashlib`, :mod:`pwd`, :mod:`!" +"_posixsubprocess`, :mod:`random`, :mod:`select`, :mod:`struct`, :mod:`termios`, :mod:`zlib`) " +"are now using the stable ABI defined by PEP 384." msgstr "" msgid "New library modules:" @@ -153,9 +153,9 @@ msgstr "" msgid "" "Aliases to :ref:`Abstract Base Classes ` " -"in the :mod:`collections` module, like ``collections.Mapping`` alias to :" -"class:`collections.abc.Mapping`, are kept for one last release for backward " -"compatibility. They will be removed from Python 3.10." +"in the :mod:`collections` module, like ``collections.Mapping`` alias " +"to :class:`collections.abc.Mapping`, are kept for one last release for " +"backward compatibility. They will be removed from Python 3.10." msgstr "" msgid "" @@ -176,8 +176,8 @@ msgid "Dictionary Merge & Update Operators" msgstr "" msgid "" -"Merge (``|``) and update (``|=``) operators have been added to the built-in :" -"class:`dict` class. Those complement the existing ``dict.update`` and " +"Merge (``|``) and update (``|=``) operators have been added to the built-" +"in :class:`dict` class. Those complement the existing ``dict.update`` and " "``{**d1, **d2}`` methods of merging dictionaries." msgstr "" @@ -194,20 +194,20 @@ msgid "" msgstr "" msgid "" -"See :pep:`584` for a full description. (Contributed by Brandt Bucher in :" -"issue:`36144`.)" +"See :pep:`584` for a full description. (Contributed by Brandt Bucher " +"in :issue:`36144`.)" msgstr "" msgid "New String Methods to Remove Prefixes and Suffixes" msgstr "" msgid "" -":meth:`str.removeprefix(prefix)` and :meth:`str." -"removesuffix(suffix)` have been added to easily remove an " -"unneeded prefix or a suffix from a string. Corresponding ``bytes``, " -"``bytearray``, and ``collections.UserString`` methods have also been added. " -"See :pep:`616` for a full description. (Contributed by Dennis Sweeney in :" -"issue:`39939`.)" +":meth:`str.removeprefix(prefix)` " +"and :meth:`str.removesuffix(suffix)` have been added to " +"easily remove an unneeded prefix or a suffix from a string. Corresponding " +"``bytes``, ``bytearray``, and ``collections.UserString`` methods have also " +"been added. See :pep:`616` for a full description. (Contributed by Dennis " +"Sweeney in :issue:`39939`.)" msgstr "" msgid "Type Hinting Generics in Standard Collections" @@ -269,26 +269,26 @@ msgid "Other Language Changes" msgstr "" msgid "" -":func:`__import__` now raises :exc:`ImportError` instead of :exc:" -"`ValueError`, which used to occur when a relative import went past its top-" -"level package. (Contributed by Ngalim Siregar in :issue:`37444`.)" +":func:`__import__` now raises :exc:`ImportError` instead " +"of :exc:`ValueError`, which used to occur when a relative import went past " +"its top-level package. (Contributed by Ngalim Siregar in :issue:`37444`.)" msgstr "" msgid "" "Python now gets the absolute path of the script filename specified on the " -"command line (ex: ``python3 script.py``): the ``__file__`` attribute of the :" -"mod:`__main__` module became an absolute path, rather than a relative path. " -"These paths now remain valid after the current directory is changed by :func:" -"`os.chdir`. As a side effect, the traceback also displays the absolute path " -"for :mod:`__main__` module frames in this case. (Contributed by Victor " -"Stinner in :issue:`20443`.)" +"command line (ex: ``python3 script.py``): the ``__file__`` attribute of " +"the :mod:`__main__` module became an absolute path, rather than a relative " +"path. These paths now remain valid after the current directory is changed " +"by :func:`os.chdir`. As a side effect, the traceback also displays the " +"absolute path for :mod:`__main__` module frames in this case. (Contributed " +"by Victor Stinner in :issue:`20443`.)" msgstr "" msgid "" "In the :ref:`Python Development Mode ` and in :ref:`debug build " "`, the *encoding* and *errors* arguments are now checked for " -"string encoding and decoding operations. Examples: :func:`open`, :meth:`str." -"encode` and :meth:`bytes.decode`." +"string encoding and decoding operations. " +"Examples: :func:`open`, :meth:`str.encode` and :meth:`bytes.decode`." msgstr "" msgid "" @@ -319,23 +319,24 @@ msgid "" msgstr "" msgid "" -"Parallel running of :meth:`~agen.aclose` / :meth:`~agen.asend` / :meth:" -"`~agen.athrow` is now prohibited, and ``ag_running`` now reflects the actual " -"running status of the async generator. (Contributed by Yury Selivanov in :" -"issue:`30773`.)" +"Parallel running " +"of :meth:`~agen.aclose` / :meth:`~agen.asend` / :meth:`~agen.athrow` is now " +"prohibited, and ``ag_running`` now reflects the actual running status of the " +"async generator. (Contributed by Yury Selivanov in :issue:`30773`.)" msgstr "" msgid "" "Unexpected errors in calling the ``__iter__`` method are no longer masked by " -"``TypeError`` in the :keyword:`in` operator and functions :func:`~operator." -"contains`, :func:`~operator.indexOf` and :func:`~operator.countOf` of the :" -"mod:`operator` module. (Contributed by Serhiy Storchaka in :issue:`40824`.)" +"``TypeError`` in the :keyword:`in` operator and " +"functions :func:`~operator.contains`, :func:`~operator.indexOf` " +"and :func:`~operator.countOf` of the :mod:`operator` module. (Contributed by " +"Serhiy Storchaka in :issue:`40824`.)" msgstr "" msgid "" "Unparenthesized lambda expressions can no longer be the expression part in " -"an ``if`` clause in comprehensions and generator expressions. See :issue:" -"`41848` and :issue:`43755` for details." +"an ``if`` clause in comprehensions and generator expressions. " +"See :issue:`41848` and :issue:`43755` for details." msgstr "" msgid "New Modules" @@ -346,8 +347,9 @@ msgstr "" msgid "" "The :mod:`zoneinfo` module brings support for the IANA time zone database to " -"the standard library. It adds :class:`zoneinfo.ZoneInfo`, a concrete :class:" -"`datetime.tzinfo` implementation backed by the system's time zone data." +"the standard library. It adds :class:`zoneinfo.ZoneInfo`, a " +"concrete :class:`datetime.tzinfo` implementation backed by the system's time " +"zone data." msgstr "" msgid "" @@ -387,10 +389,10 @@ msgid "graphlib" msgstr "" msgid "" -"A new module, :mod:`graphlib`, was added that contains the :class:`graphlib." -"TopologicalSorter` class to offer functionality to perform topological " -"sorting of graphs. (Contributed by Pablo Galindo, Tim Peters and Larry " -"Hastings in :issue:`17005`.)" +"A new module, :mod:`graphlib`, was added that contains " +"the :class:`graphlib.TopologicalSorter` class to offer functionality to " +"perform topological sorting of graphs. (Contributed by Pablo Galindo, Tim " +"Peters and Larry Hastings in :issue:`17005`.)" msgstr "" msgid "Improved Modules" @@ -401,8 +403,8 @@ msgstr "" msgid "" "Added the *indent* option to :func:`~ast.dump` which allows it to produce a " -"multiline indented output. (Contributed by Serhiy Storchaka in :issue:" -"`37995`.)" +"multiline indented output. (Contributed by Serhiy Storchaka " +"in :issue:`37995`.)" msgstr "" msgid "" @@ -421,20 +423,21 @@ msgid "asyncio" msgstr "" msgid "" -"Due to significant security concerns, the *reuse_address* parameter of :meth:" -"`asyncio.loop.create_datagram_endpoint` is no longer supported. This is " -"because of the behavior of the socket option ``SO_REUSEADDR`` in UDP. For " -"more details, see the documentation for ``loop.create_datagram_endpoint()``. " -"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:" -"`37228`.)" +"Due to significant security concerns, the *reuse_address* parameter " +"of :meth:`asyncio.loop.create_datagram_endpoint` is no longer supported. " +"This is because of the behavior of the socket option ``SO_REUSEADDR`` in " +"UDP. For more details, see the documentation for " +"``loop.create_datagram_endpoint()``. (Contributed by Kyle Stanley, Antoine " +"Pitrou, and Yury Selivanov in :issue:`37228`.)" msgstr "" msgid "" -"Added a new :term:`coroutine` :meth:`~asyncio.loop." -"shutdown_default_executor` that schedules a shutdown for the default " -"executor that waits on the :class:`~concurrent.futures.ThreadPoolExecutor` " -"to finish closing. Also, :func:`asyncio.run` has been updated to use the " -"new :term:`coroutine`. (Contributed by Kyle Stanley in :issue:`34037`.)" +"Added a " +"new :term:`coroutine` :meth:`~asyncio.loop.shutdown_default_executor` that " +"schedules a shutdown for the default executor that waits on " +"the :class:`~concurrent.futures.ThreadPoolExecutor` to finish closing. " +"Also, :func:`asyncio.run` has been updated to use the new :term:`coroutine`. " +"(Contributed by Kyle Stanley in :issue:`34037`.)" msgstr "" msgid "" @@ -445,9 +448,10 @@ msgstr "" msgid "" "Added a new :term:`coroutine` :func:`asyncio.to_thread`. It is mainly used " "for running IO-bound functions in a separate thread to avoid blocking the " -"event loop, and essentially works as a high-level version of :meth:`~asyncio." -"loop.run_in_executor` that can directly take keyword arguments. (Contributed " -"by Kyle Stanley and Yury Selivanov in :issue:`32309`.)" +"event loop, and essentially works as a high-level version " +"of :meth:`~asyncio.loop.run_in_executor` that can directly take keyword " +"arguments. (Contributed by Kyle Stanley and Yury Selivanov " +"in :issue:`32309`.)" msgstr "" msgid "" @@ -459,8 +463,8 @@ msgstr "" msgid "" ":mod:`asyncio` now raises :exc:`TypeError` when calling incompatible methods " -"with an :class:`ssl.SSLSocket` socket. (Contributed by Ido Michael in :issue:" -"`37404`.)" +"with an :class:`ssl.SSLSocket` socket. (Contributed by Ido Michael " +"in :issue:`37404`.)" msgstr "" msgid "compileall" @@ -476,18 +480,19 @@ msgid "" "Added new options for path manipulation in resulting ``.pyc`` files: " "*stripdir*, *prependdir*, *limit_sl_dest* parameters and -s, -p, -e command " "line options. Added the possibility to specify the option for an " -"optimization level multiple times. (Contributed by Lumír 'Frenzy' Balhar in :" -"issue:`38112`.)" +"optimization level multiple times. (Contributed by Lumír 'Frenzy' Balhar " +"in :issue:`38112`.)" msgstr "" msgid "concurrent.futures" msgstr "" msgid "" -"Added a new *cancel_futures* parameter to :meth:`concurrent.futures.Executor." -"shutdown` that cancels all pending futures which have not started running, " -"instead of waiting for them to complete before shutting down the executor. " -"(Contributed by Kyle Stanley in :issue:`39349`.)" +"Added a new *cancel_futures* parameter " +"to :meth:`concurrent.futures.Executor.shutdown` that cancels all pending " +"futures which have not started running, instead of waiting for them to " +"complete before shutting down the executor. (Contributed by Kyle Stanley " +"in :issue:`39349`.)" msgstr "" msgid "" @@ -508,19 +513,19 @@ msgid "curses" msgstr "" msgid "" -"Added :func:`curses.get_escdelay`, :func:`curses.set_escdelay`, :func:" -"`curses.get_tabsize`, and :func:`curses.set_tabsize` functions. (Contributed " -"by Anthony Sottile in :issue:`38312`.)" +"Added :func:`curses.get_escdelay`, :func:`curses.set_escdelay`, :func:`curses.get_tabsize`, " +"and :func:`curses.set_tabsize` functions. (Contributed by Anthony Sottile " +"in :issue:`38312`.)" msgstr "" msgid "datetime" msgstr "" msgid "" -"The :meth:`~datetime.date.isocalendar` of :class:`datetime.date` and :meth:" -"`~datetime.datetime.isocalendar` of :class:`datetime.datetime` methods now " -"returns a :func:`~collections.namedtuple` instead of a :class:`tuple`. " -"(Contributed by Donghee Na in :issue:`24416`.)" +"The :meth:`~datetime.date.isocalendar` of :class:`datetime.date` " +"and :meth:`~datetime.datetime.isocalendar` of :class:`datetime.datetime` " +"methods now returns a :func:`~collections.namedtuple` instead of " +"a :class:`tuple`. (Contributed by Donghee Na in :issue:`24416`.)" msgstr "" msgid "distutils" @@ -537,18 +542,18 @@ msgstr "" msgid "" "Added constants :const:`!fcntl.F_OFD_GETLK`, :const:`!fcntl.F_OFD_SETLK` " -"and :const:`!fcntl.F_OFD_SETLKW`. (Contributed by Donghee Na in :issue:" -"`38602`.)" +"and :const:`!fcntl.F_OFD_SETLKW`. (Contributed by Donghee Na " +"in :issue:`38602`.)" msgstr "" msgid "ftplib" msgstr "" msgid "" -":class:`~ftplib.FTP` and :class:`~ftplib.FTP_TLS` now raise a :class:" -"`ValueError` if the given timeout for their constructor is zero to prevent " -"the creation of a non-blocking socket. (Contributed by Donghee Na in :issue:" -"`39259`.)" +":class:`~ftplib.FTP` and :class:`~ftplib.FTP_TLS` now raise " +"a :class:`ValueError` if the given timeout for their constructor is zero to " +"prevent the creation of a non-blocking socket. (Contributed by Donghee Na " +"in :issue:`39259`.)" msgstr "" msgid "gc" @@ -558,14 +563,14 @@ msgid "" "When the garbage collector makes a collection in which some objects " "resurrect (they are reachable from outside the isolated cycles after the " "finalizers have been executed), do not block the collection of all objects " -"that are still unreachable. (Contributed by Pablo Galindo and Tim Peters in :" -"issue:`38379`.)" +"that are still unreachable. (Contributed by Pablo Galindo and Tim Peters " +"in :issue:`38379`.)" msgstr "" msgid "" "Added a new function :func:`gc.is_finalized` to check if an object has been " -"finalized by the garbage collector. (Contributed by Pablo Galindo in :issue:" -"`39322`.)" +"finalized by the garbage collector. (Contributed by Pablo Galindo " +"in :issue:`39322`.)" msgstr "" msgid "hashlib" @@ -596,8 +601,8 @@ msgid "IDLE and idlelib" msgstr "" msgid "" -"Added option to toggle cursor blink off. (Contributed by Zackery Spytz in :" -"issue:`4603`.)" +"Added option to toggle cursor blink off. (Contributed by Zackery Spytz " +"in :issue:`4603`.)" msgstr "" msgid "" @@ -615,8 +620,8 @@ msgstr "" msgid "" "Make IDLE invoke :func:`sys.excepthook` (when started without '-n'). User " -"hooks were previously ignored. (Contributed by Ken Hilton in :issue:" -"`43008`.)" +"hooks were previously ignored. (Contributed by Ken Hilton " +"in :issue:`43008`.)" msgstr "" msgid "The changes above have been backported to 3.8 maintenance releases." @@ -626,10 +631,10 @@ msgid "" "Rearrange the settings dialog. Split the General tab into Windows and Shell/" "Ed tabs. Move help sources, which extend the Help menu, to the Extensions " "tab. Make space for new options and shorten the dialog. The latter makes " -"the dialog better fit small screens. (Contributed by Terry Jan Reedy in :" -"issue:`40468`.) Move the indent space setting from the Font tab to the new " -"Windows tab. (Contributed by Mark Roseman and Terry Jan Reedy in :issue:" -"`33962`.)" +"the dialog better fit small screens. (Contributed by Terry Jan Reedy " +"in :issue:`40468`.) Move the indent space setting from the Font tab to the " +"new Windows tab. (Contributed by Mark Roseman and Terry Jan Reedy " +"in :issue:`33962`.)" msgstr "" msgid "" @@ -642,11 +647,11 @@ msgstr "" msgid "" ":class:`~imaplib.IMAP4` and :class:`~imaplib.IMAP4_SSL` now have an optional " -"*timeout* parameter for their constructors. Also, the :meth:`~imaplib.IMAP4." -"open` method now has an optional *timeout* parameter with this change. The " -"overridden methods of :class:`~imaplib.IMAP4_SSL` and :class:`~imaplib." -"IMAP4_stream` were applied to this change. (Contributed by Donghee Na in :" -"issue:`38615`.)" +"*timeout* parameter for their constructors. Also, " +"the :meth:`~imaplib.IMAP4.open` method now has an optional *timeout* " +"parameter with this change. The overridden methods " +"of :class:`~imaplib.IMAP4_SSL` and :class:`~imaplib.IMAP4_stream` were " +"applied to this change. (Contributed by Donghee Na in :issue:`38615`.)" msgstr "" msgid "" @@ -662,10 +667,10 @@ msgid "importlib" msgstr "" msgid "" -"To improve consistency with import statements, :func:`importlib.util." -"resolve_name` now raises :exc:`ImportError` instead of :exc:`ValueError` for " -"invalid relative import attempts. (Contributed by Ngalim Siregar in :issue:" -"`37444`.)" +"To improve consistency with import " +"statements, :func:`importlib.util.resolve_name` now " +"raises :exc:`ImportError` instead of :exc:`ValueError` for invalid relative " +"import attempts. (Contributed by Ngalim Siregar in :issue:`37444`.)" msgstr "" msgid "" @@ -689,8 +694,8 @@ msgstr "" msgid "" ":attr:`inspect.BoundArguments.arguments` is changed from ``OrderedDict`` to " -"regular dict. (Contributed by Inada Naoki in :issue:`36350` and :issue:" -"`39775`.)" +"regular dict. (Contributed by Inada Naoki in :issue:`36350` " +"and :issue:`39775`.)" msgstr "" msgid "ipaddress" @@ -703,15 +708,15 @@ msgstr "" msgid "" "Scoped IPv6 addresses can be parsed using :class:`ipaddress.IPv6Address`. If " -"present, scope zone ID is available through the :attr:`~ipaddress." -"IPv6Address.scope_id` attribute. (Contributed by Oleksandr Pavliuk in :issue:" -"`34788`.)" +"present, scope zone ID is available through " +"the :attr:`~ipaddress.IPv6Address.scope_id` attribute. (Contributed by " +"Oleksandr Pavliuk in :issue:`34788`.)" msgstr "" msgid "" "Starting with Python 3.9.5 the :mod:`ipaddress` module no longer accepts any " -"leading zeros in IPv4 address strings. (Contributed by Christian Heimes in :" -"issue:`36384`)." +"leading zeros in IPv4 address strings. (Contributed by Christian Heimes " +"in :issue:`36384`)." msgstr "" msgid "math" @@ -743,9 +748,9 @@ msgid "multiprocessing" msgstr "" msgid "" -"The :class:`multiprocessing.SimpleQueue` class has a new :meth:" -"`~multiprocessing.SimpleQueue.close` method to explicitly close the queue. " -"(Contributed by Victor Stinner in :issue:`30966`.)" +"The :class:`multiprocessing.SimpleQueue` class has a " +"new :meth:`~multiprocessing.SimpleQueue.close` method to explicitly close " +"the queue. (Contributed by Victor Stinner in :issue:`30966`.)" msgstr "" msgid "nntplib" @@ -766,8 +771,9 @@ msgid "" msgstr "" msgid "" -"Exposed the Linux-specific :func:`os.pidfd_open` (:issue:`38692`) and :const:" -"`os.P_PIDFD` (:issue:`38713`) for process management with file descriptors." +"Exposed the Linux-specific :func:`os.pidfd_open` (:issue:`38692`) " +"and :const:`os.P_PIDFD` (:issue:`38713`) for process management with file " +"descriptors." msgstr "" msgid "" @@ -789,8 +795,8 @@ msgid "pathlib" msgstr "" msgid "" -"Added :meth:`pathlib.Path.readlink` which acts similarly to :func:`os." -"readlink`. (Contributed by Girts Folkmanis in :issue:`30618`)" +"Added :meth:`pathlib.Path.readlink` which acts similarly " +"to :func:`os.readlink`. (Contributed by Girts Folkmanis in :issue:`30618`)" msgstr "" msgid "pdb" @@ -805,10 +811,10 @@ msgid "poplib" msgstr "" msgid "" -":class:`~poplib.POP3` and :class:`~poplib.POP3_SSL` now raise a :class:" -"`ValueError` if the given timeout for their constructor is zero to prevent " -"the creation of a non-blocking socket. (Contributed by Donghee Na in :issue:" -"`39259`.)" +":class:`~poplib.POP3` and :class:`~poplib.POP3_SSL` now raise " +"a :class:`ValueError` if the given timeout for their constructor is zero to " +"prevent the creation of a non-blocking socket. (Contributed by Donghee Na " +"in :issue:`39259`.)" msgstr "" msgid "pprint" @@ -841,18 +847,18 @@ msgstr "" msgid "" "Exposed the Linux-specific :func:`signal.pidfd_send_signal` for sending to " -"signals to a process using a file descriptor instead of a pid. (:issue:" -"`38712`)" +"signals to a process using a file descriptor instead of a pid. " +"(:issue:`38712`)" msgstr "" msgid "smtplib" msgstr "" msgid "" -":class:`~smtplib.SMTP` and :class:`~smtplib.SMTP_SSL` now raise a :class:" -"`ValueError` if the given timeout for their constructor is zero to prevent " -"the creation of a non-blocking socket. (Contributed by Donghee Na in :issue:" -"`39259`.)" +":class:`~smtplib.SMTP` and :class:`~smtplib.SMTP_SSL` now raise " +"a :class:`ValueError` if the given timeout for their constructor is zero to " +"prevent the creation of a non-blocking socket. (Contributed by Donghee Na " +"in :issue:`39259`.)" msgstr "" msgid "" @@ -864,9 +870,9 @@ msgid "socket" msgstr "" msgid "" -"The :mod:`socket` module now exports the :const:`~socket." -"CAN_RAW_JOIN_FILTERS` constant on Linux 4.1 and greater. (Contributed by " -"Stefan Tatschner and Zackery Spytz in :issue:`25780`.)" +"The :mod:`socket` module now exports " +"the :const:`~socket.CAN_RAW_JOIN_FILTERS` constant on Linux 4.1 and greater. " +"(Contributed by Stefan Tatschner and Zackery Spytz in :issue:`25780`.)" msgstr "" msgid "" @@ -875,9 +881,9 @@ msgid "" msgstr "" msgid "" -"The socket module now has the :func:`socket.send_fds` and :func:`socket." -"recv_fds` functions. (Contributed by Joannah Nanjekye, Shinya Okano and " -"Victor Stinner in :issue:`28724`.)" +"The socket module now has the :func:`socket.send_fds` " +"and :func:`socket.recv_fds` functions. (Contributed by Joannah Nanjekye, " +"Shinya Okano and Victor Stinner in :issue:`28724`.)" msgstr "" msgid "time" @@ -950,10 +956,11 @@ msgid "xml" msgstr "" msgid "" -"White space characters within attributes are now preserved when serializing :" -"mod:`xml.etree.ElementTree` to XML file. EOLNs are no longer normalized to " -"\"\\n\". This is the result of discussion about how to interpret section " -"2.11 of XML spec. (Contributed by Mefistotelis in :issue:`39011`.)" +"White space characters within attributes are now preserved when " +"serializing :mod:`xml.etree.ElementTree` to XML file. EOLNs are no longer " +"normalized to \"\\n\". This is the result of discussion about how to " +"interpret section 2.11 of XML spec. (Contributed by Mefistotelis " +"in :issue:`39011`.)" msgstr "" msgid "Optimizations" @@ -986,8 +993,8 @@ msgstr "" msgid "" "Previously, the bytecode evaluation loop was interrupted at each instruction " -"until the main thread handles signals. (Contributed by Victor Stinner in :" -"issue:`40010`.)" +"until the main thread handles signals. (Contributed by Victor Stinner " +"in :issue:`40010`.)" msgstr "" msgid "" @@ -1002,10 +1009,11 @@ msgid "" msgstr "" msgid "" -"A number of Python builtins (:class:`range`, :class:`tuple`, :class:`set`, :" -"class:`frozenset`, :class:`list`, :class:`dict`) are now sped up by using :" -"pep:`590` vectorcall protocol. (Contributed by Donghee Na, Mark Shannon, " -"Jeroen Demeyer and Petr Viktorin in :issue:`37207`.)" +"A number of Python builtins " +"(:class:`range`, :class:`tuple`, :class:`set`, :class:`frozenset`, :class:`list`, :class:`dict`) " +"are now sped up by using :pep:`590` vectorcall protocol. (Contributed by " +"Donghee Na, Mark Shannon, Jeroen Demeyer and Petr Viktorin " +"in :issue:`37207`.)" msgstr "" msgid "" @@ -1117,10 +1125,10 @@ msgid "" "These results were generated from the variable access benchmark script at: " "``Tools/scripts/var_access_benchmark.py``. The benchmark script displays " "timings in nanoseconds. The benchmarks were measured on an `Intel® Core™ " -"i7-4960HQ processor `_ running the macOS 64-bit builds found at `python.org `_." +"i7-4960HQ processor `_ running " +"the macOS 64-bit builds found at `python.org `_." msgstr "" msgid "Deprecated" @@ -1128,8 +1136,8 @@ msgstr "" msgid "" "The distutils ``bdist_msi`` command is now deprecated, use ``bdist_wheel`` " -"(wheel packages) instead. (Contributed by Hugo van Kemenade in :issue:" -"`39586`.)" +"(wheel packages) instead. (Contributed by Hugo van Kemenade " +"in :issue:`39586`.)" msgstr "" msgid "" @@ -1148,8 +1156,9 @@ msgid "" msgstr "" msgid "" -"The Public C API functions :c:func:`!PyParser_SimpleParseStringFlags`, :c:" -"func:`!PyParser_SimpleParseStringFlagsFilename`, :c:func:`!" +"The Public C API functions :c:func:`!" +"PyParser_SimpleParseStringFlags`, :c:func:`!" +"PyParser_SimpleParseStringFlagsFilename`, :c:func:`!" "PyParser_SimpleParseFileFlags` and :c:func:`!PyNode_Compile` are deprecated " "and will be removed in Python 3.10 together with the old parser." msgstr "" @@ -1165,16 +1174,17 @@ msgid "" "The :mod:`random` module currently accepts any hashable type as a possible " "seed value. Unfortunately, some of those types are not guaranteed to have a " "deterministic hash value. After Python 3.9, the module will restrict its " -"seeds to :const:`None`, :class:`int`, :class:`float`, :class:`str`, :class:" -"`bytes`, and :class:`bytearray`." +"seeds " +"to :const:`None`, :class:`int`, :class:`float`, :class:`str`, :class:`bytes`, " +"and :class:`bytearray`." msgstr "" msgid "" "Opening the :class:`~gzip.GzipFile` file for writing without specifying the " "*mode* argument is deprecated. In future Python versions it will always be " "opened for reading by default. Specify the *mode* argument for opening it " -"for writing and silencing a warning. (Contributed by Serhiy Storchaka in :" -"issue:`28286`.)" +"for writing and silencing a warning. (Contributed by Serhiy Storchaka " +"in :issue:`28286`.)" msgstr "" msgid "" @@ -1215,16 +1225,16 @@ msgid "" ":mod:`ast` classes ``Suite``, ``Param``, ``AugLoad`` and ``AugStore`` are " "considered deprecated and will be removed in future Python versions. They " "were not generated by the parser and not accepted by the code generator in " -"Python 3. (Contributed by Batuhan Taskaya in :issue:`39639` and :issue:" -"`39969` and Serhiy Storchaka in :issue:`39988`.)" +"Python 3. (Contributed by Batuhan Taskaya in :issue:`39639` " +"and :issue:`39969` and Serhiy Storchaka in :issue:`39988`.)" msgstr "" msgid "" "The :c:func:`!PyEval_InitThreads` and :c:func:`!PyEval_ThreadsInitialized` " -"functions are now deprecated and will be removed in Python 3.11. Calling :c:" -"func:`!PyEval_InitThreads` now does nothing. The :term:`GIL` is initialized " -"by :c:func:`Py_Initialize` since Python 3.7. (Contributed by Victor Stinner " -"in :issue:`39877`.)" +"functions are now deprecated and will be removed in Python 3.11. " +"Calling :c:func:`!PyEval_InitThreads` now does nothing. The :term:`GIL` is " +"initialized by :c:func:`Py_Initialize` since Python 3.7. (Contributed by " +"Victor Stinner in :issue:`39877`.)" msgstr "" msgid "" @@ -1234,8 +1244,8 @@ msgstr "" msgid "" ":func:`!smtpd.MailmanProxy` is now deprecated as it is unusable without an " -"external module, ``mailman``. (Contributed by Samuel Colvin in :issue:" -"`35800`.)" +"external module, ``mailman``. (Contributed by Samuel Colvin " +"in :issue:`35800`.)" msgstr "" msgid "" @@ -1264,8 +1274,8 @@ msgid "" "removed. These methods are deprecated since Python 3.3. Generally, these " "extensions are not supported or not enabled by NNTP server administrators. " "For ``xgtitle()``, please use :meth:`!nntplib.NNTP.descriptions` or :meth:`!" -"nntplib.NNTP.description` instead. (Contributed by Donghee Na in :issue:" -"`39366`.)" +"nntplib.NNTP.description` instead. (Contributed by Donghee Na " +"in :issue:`39366`.)" msgstr "" msgid "" @@ -1283,9 +1293,9 @@ msgstr "" msgid "" "The ``sys.getcheckinterval()`` and ``sys.setcheckinterval()`` functions have " -"been removed. They were deprecated since Python 3.2. Use :func:`sys." -"getswitchinterval` and :func:`sys.setswitchinterval` instead. (Contributed " -"by Victor Stinner in :issue:`37392`.)" +"been removed. They were deprecated since Python 3.2. " +"Use :func:`sys.getswitchinterval` and :func:`sys.setswitchinterval` instead. " +"(Contributed by Victor Stinner in :issue:`37392`.)" msgstr "" msgid "" @@ -1314,20 +1324,22 @@ msgid "" msgstr "" msgid "" -"Methods ``getchildren()`` and ``getiterator()`` of classes :class:`~xml." -"etree.ElementTree.ElementTree` and :class:`~xml.etree.ElementTree.Element` " -"in the :mod:`~xml.etree.ElementTree` module have been removed. They were " -"deprecated in Python 3.2. Use ``iter(x)`` or ``list(x)`` instead of ``x." -"getchildren()`` and ``x.iter()`` or ``list(x.iter())`` instead of ``x." -"getiterator()``. (Contributed by Serhiy Storchaka in :issue:`36543`.)" +"Methods ``getchildren()`` and ``getiterator()`` of " +"classes :class:`~xml.etree.ElementTree.ElementTree` " +"and :class:`~xml.etree.ElementTree.Element` in " +"the :mod:`~xml.etree.ElementTree` module have been removed. They were " +"deprecated in Python 3.2. Use ``iter(x)`` or ``list(x)`` instead of " +"``x.getchildren()`` and ``x.iter()`` or ``list(x.iter())`` instead of " +"``x.getiterator()``. (Contributed by Serhiy Storchaka in :issue:`36543`.)" msgstr "" msgid "" "The old :mod:`plistlib` API has been removed, it was deprecated since Python " -"3.4. Use the :func:`~plistlib.load`, :func:`~plistlib.loads`, :func:" -"`~plistlib.dump`, and :func:`~plistlib.dumps` functions. Additionally, the " -"*use_builtin_types* parameter was removed, standard :class:`bytes` objects " -"are always used instead. (Contributed by Jon Janzen in :issue:`36409`.)" +"3.4. Use " +"the :func:`~plistlib.load`, :func:`~plistlib.loads`, :func:`~plistlib.dump`, " +"and :func:`~plistlib.dumps` functions. Additionally, the *use_builtin_types* " +"parameter was removed, standard :class:`bytes` objects are always used " +"instead. (Contributed by Jon Janzen in :issue:`36409`.)" msgstr "" msgid "" @@ -1339,9 +1351,9 @@ msgstr "" msgid "" "``base64.encodestring()`` and ``base64.decodestring()``, aliases deprecated " -"since Python 3.1, have been removed: use :func:`base64.encodebytes` and :" -"func:`base64.decodebytes` instead. (Contributed by Victor Stinner in :issue:" -"`39351`.)" +"since Python 3.1, have been removed: use :func:`base64.encodebytes` " +"and :func:`base64.decodebytes` instead. (Contributed by Victor Stinner " +"in :issue:`39351`.)" msgstr "" msgid "" @@ -1359,9 +1371,9 @@ msgstr "" msgid "" "The *encoding* parameter of :func:`json.loads` has been removed. As of " -"Python 3.1, it was deprecated and ignored; using it has emitted a :exc:" -"`DeprecationWarning` since Python 3.8. (Contributed by Inada Naoki in :issue:" -"`39377`)" +"Python 3.1, it was deprecated and ignored; using it has emitted " +"a :exc:`DeprecationWarning` since Python 3.8. (Contributed by Inada Naoki " +"in :issue:`39377`)" msgstr "" msgid "" @@ -1373,17 +1385,17 @@ msgstr "" msgid "" "The :func:`!sys.getcounts` function, the ``-X showalloccount`` command line " -"option and the ``show_alloc_count`` field of the C structure :c:type:" -"`PyConfig` have been removed. They required a special Python build by " -"defining ``COUNT_ALLOCS`` macro. (Contributed by Victor Stinner in :issue:" -"`39489`.)" +"option and the ``show_alloc_count`` field of the C " +"structure :c:type:`PyConfig` have been removed. They required a special " +"Python build by defining ``COUNT_ALLOCS`` macro. (Contributed by Victor " +"Stinner in :issue:`39489`.)" msgstr "" msgid "" "The ``_field_types`` attribute of the :class:`typing.NamedTuple` class has " "been removed. It was deprecated since Python 3.8. Use the " -"``__annotations__`` attribute instead. (Contributed by Serhiy Storchaka in :" -"issue:`40182`.)" +"``__annotations__`` attribute instead. (Contributed by Serhiy Storchaka " +"in :issue:`40182`.)" msgstr "" msgid "" @@ -1394,8 +1406,8 @@ msgstr "" msgid "" "The :meth:`!asyncio.Task.current_task` and :meth:`!asyncio.Task.all_tasks` " -"have been removed. They were deprecated since Python 3.7 and you can use :" -"func:`asyncio.current_task` and :func:`asyncio.all_tasks` instead. " +"have been removed. They were deprecated since Python 3.7 and you can " +"use :func:`asyncio.current_task` and :func:`asyncio.all_tasks` instead. " "(Contributed by Rémi Lapeyre in :issue:`40967`)" msgstr "" @@ -1418,10 +1430,11 @@ msgid "Changes in the Python API" msgstr "" msgid "" -":func:`__import__` and :func:`importlib.util.resolve_name` now raise :exc:" -"`ImportError` where it previously raised :exc:`ValueError`. Callers catching " -"the specific exception type and supporting both Python 3.9 and earlier " -"versions will need to catch both using ``except (ImportError, ValueError):``." +":func:`__import__` and :func:`importlib.util.resolve_name` now " +"raise :exc:`ImportError` where it previously raised :exc:`ValueError`. " +"Callers catching the specific exception type and supporting both Python 3.9 " +"and earlier versions will need to catch both using ``except (ImportError, " +"ValueError):``." msgstr "" msgid "" @@ -1430,8 +1443,9 @@ msgid "" msgstr "" msgid "" -"The :meth:`select.epoll.unregister` method no longer ignores the :const:" -"`~errno.EBADF` error. (Contributed by Victor Stinner in :issue:`39239`.)" +"The :meth:`select.epoll.unregister` method no longer ignores " +"the :const:`~errno.EBADF` error. (Contributed by Victor Stinner " +"in :issue:`39239`.)" msgstr "" msgid "" @@ -1460,10 +1474,10 @@ msgid "" msgstr "" msgid "" -":meth:`asyncio.loop.shutdown_default_executor` has been added to :class:" -"`~asyncio.AbstractEventLoop`, meaning alternative event loops that inherit " -"from it should have this method defined. (Contributed by Kyle Stanley in :" -"issue:`34037`.)" +":meth:`asyncio.loop.shutdown_default_executor` has been added " +"to :class:`~asyncio.AbstractEventLoop`, meaning alternative event loops that " +"inherit from it should have this method defined. (Contributed by Kyle " +"Stanley in :issue:`34037`.)" msgstr "" msgid "" @@ -1484,17 +1498,18 @@ msgid "" "The :func:`logging.getLogger` API now returns the root logger when passed " "the name ``'root'``, whereas previously it returned a non-root logger named " "``'root'``. This could affect cases where user code explicitly wants a non-" -"root logger named ``'root'``, or instantiates a logger using ``logging." -"getLogger(__name__)`` in some top-level module called ``'root.py'``. " -"(Contributed by Vinay Sajip in :issue:`37742`.)" +"root logger named ``'root'``, or instantiates a logger using " +"``logging.getLogger(__name__)`` in some top-level module called " +"``'root.py'``. (Contributed by Vinay Sajip in :issue:`37742`.)" msgstr "" msgid "" -"Division handling of :class:`~pathlib.PurePath` now returns :data:" -"`NotImplemented` instead of raising a :exc:`TypeError` when passed something " -"other than an instance of ``str`` or :class:`~pathlib.PurePath`. This " -"allows creating compatible classes that don't inherit from those mentioned " -"types. (Contributed by Roger Aiudi in :issue:`34775`)." +"Division handling of :class:`~pathlib.PurePath` now " +"returns :data:`NotImplemented` instead of raising a :exc:`TypeError` when " +"passed something other than an instance of ``str`` " +"or :class:`~pathlib.PurePath`. This allows creating compatible classes that " +"don't inherit from those mentioned types. (Contributed by Roger Aiudi " +"in :issue:`34775`)." msgstr "" msgid "" @@ -1507,11 +1522,11 @@ msgid "" msgstr "" msgid "" -":func:`codecs.lookup` now normalizes the encoding name the same way as :func:" -"`encodings.normalize_encoding`, except that :func:`codecs.lookup` also " -"converts the name to lower case. For example, ``\"latex+latin1\"`` encoding " -"name is now normalized to ``\"latex_latin1\"``. (Contributed by Jordon Xu " -"in :issue:`37751`.)" +":func:`codecs.lookup` now normalizes the encoding name the same way " +"as :func:`encodings.normalize_encoding`, except that :func:`codecs.lookup` " +"also converts the name to lower case. For example, ``\"latex+latin1\"`` " +"encoding name is now normalized to ``\"latex_latin1\"``. (Contributed by " +"Jordon Xu in :issue:`37751`.)" msgstr "" msgid "Changes in the C API" @@ -1522,9 +1537,10 @@ msgid "" "with :c:func:`PyType_FromSpec` and similar APIs) hold a reference to their " "type object since Python 3.8. As indicated in the \"Changes in the C API\" " "of Python 3.8, for the vast majority of cases, there should be no side " -"effect but for types that have a custom :c:member:`~PyTypeObject." -"tp_traverse` function, ensure that all custom ``tp_traverse`` functions of " -"heap-allocated types visit the object's type." +"effect but for types that have a " +"custom :c:member:`~PyTypeObject.tp_traverse` function, ensure that all " +"custom ``tp_traverse`` functions of heap-allocated types visit the object's " +"type." msgstr "" msgid "" @@ -1572,17 +1588,17 @@ msgstr "" msgid "" "The functions ``PyEval_CallObject``, ``PyEval_CallFunction``, " "``PyEval_CallMethod`` and ``PyEval_CallObjectWithKeywords`` are deprecated. " -"Use :c:func:`PyObject_Call` and its variants instead. (See more details in :" -"issue:`29548`.)" +"Use :c:func:`PyObject_Call` and its variants instead. (See more details " +"in :issue:`29548`.)" msgstr "" msgid "CPython bytecode changes" msgstr "" msgid "" -"The :opcode:`!LOAD_ASSERTION_ERROR` opcode was added for handling the :" -"keyword:`assert` statement. Previously, the assert statement would not work " -"correctly if the :exc:`AssertionError` exception was being shadowed. " +"The :opcode:`!LOAD_ASSERTION_ERROR` opcode was added for handling " +"the :keyword:`assert` statement. Previously, the assert statement would not " +"work correctly if the :exc:`AssertionError` exception was being shadowed. " "(Contributed by Zackery Spytz in :issue:`34880`.)" msgstr "" @@ -1611,10 +1627,10 @@ msgstr "" msgid "" "Added ``--with-platlibdir`` option to the ``configure`` script: name of the " -"platform-specific library directory, stored in the new :data:`sys." -"platlibdir` attribute. See :data:`sys.platlibdir` attribute for more " -"information. (Contributed by Jan Matějek, Matěj Cepl, Charalampos Stratakis " -"and Victor Stinner in :issue:`1294959`.)" +"platform-specific library directory, stored in the " +"new :data:`sys.platlibdir` attribute. See :data:`sys.platlibdir` attribute " +"for more information. (Contributed by Jan Matějek, Matěj Cepl, Charalampos " +"Stratakis and Victor Stinner in :issue:`1294959`.)" msgstr "" msgid "" @@ -1669,15 +1685,15 @@ msgstr "" msgid "" ":pep:`573`: Added :c:func:`PyType_FromModuleAndSpec` to associate a module " "with a class; :c:func:`PyType_GetModule` and :c:func:`PyType_GetModuleState` " -"to retrieve the module and its state; and :c:type:`PyCMethod` and :c:macro:" -"`METH_METHOD` to allow a method to access the class it was defined in. " -"(Contributed by Marcel Plch and Petr Viktorin in :issue:`38787`.)" +"to retrieve the module and its state; and :c:type:`PyCMethod` " +"and :c:macro:`METH_METHOD` to allow a method to access the class it was " +"defined in. (Contributed by Marcel Plch and Petr Viktorin in :issue:`38787`.)" msgstr "" msgid "" -"Added :c:func:`PyFrame_GetCode` function: get a frame code. Added :c:func:" -"`PyFrame_GetBack` function: get the frame next outer frame. (Contributed by " -"Victor Stinner in :issue:`40421`.)" +"Added :c:func:`PyFrame_GetCode` function: get a frame code. " +"Added :c:func:`PyFrame_GetBack` function: get the frame next outer frame. " +"(Contributed by Victor Stinner in :issue:`40421`.)" msgstr "" msgid "" @@ -1686,12 +1702,12 @@ msgid "" msgstr "" msgid "" -"Added :c:func:`PyThreadState_GetInterpreter` and :c:func:" -"`PyInterpreterState_Get` functions to get the interpreter. Added :c:func:" -"`PyThreadState_GetFrame` function to get the current frame of a Python " -"thread state. Added :c:func:`PyThreadState_GetID` function: get the unique " -"identifier of a Python thread state. (Contributed by Victor Stinner in :" -"issue:`39947`.)" +"Added :c:func:`PyThreadState_GetInterpreter` " +"and :c:func:`PyInterpreterState_Get` functions to get the interpreter. " +"Added :c:func:`PyThreadState_GetFrame` function to get the current frame of " +"a Python thread state. Added :c:func:`PyThreadState_GetID` function: get the " +"unique identifier of a Python thread state. (Contributed by Victor Stinner " +"in :issue:`39947`.)" msgstr "" msgid "" @@ -1726,17 +1742,17 @@ msgid "" msgstr "" msgid "" -"Added the functions :c:func:`PyObject_GC_IsTracked` and :c:func:" -"`PyObject_GC_IsFinalized` to the public API to allow to query if Python " -"objects are being currently tracked or have been already finalized by the " -"garbage collector respectively. (Contributed by Pablo Galindo Salgado in :" -"issue:`40241`.)" +"Added the functions :c:func:`PyObject_GC_IsTracked` " +"and :c:func:`PyObject_GC_IsFinalized` to the public API to allow to query if " +"Python objects are being currently tracked or have been already finalized by " +"the garbage collector respectively. (Contributed by Pablo Galindo Salgado " +"in :issue:`40241`.)" msgstr "" msgid "" "Added :c:func:`!_PyObject_FunctionStr` to get a user-friendly string " -"representation of a function-like object. (Patch by Jeroen Demeyer in :issue:" -"`37645`.)" +"representation of a function-like object. (Patch by Jeroen Demeyer " +"in :issue:`37645`.)" msgstr "" msgid "" @@ -1746,19 +1762,20 @@ msgstr "" msgid "" "``PyInterpreterState.eval_frame`` (:pep:`523`) now requires a new mandatory " -"*tstate* parameter (``PyThreadState*``). (Contributed by Victor Stinner in :" -"issue:`38500`.)" +"*tstate* parameter (``PyThreadState*``). (Contributed by Victor Stinner " +"in :issue:`38500`.)" msgstr "" msgid "" -"Extension modules: :c:member:`~PyModuleDef.m_traverse`, :c:member:" -"`~PyModuleDef.m_clear` and :c:member:`~PyModuleDef.m_free` functions of :c:" -"type:`PyModuleDef` are no longer called if the module state was requested " -"but is not allocated yet. This is the case immediately after the module is " -"created and before the module is executed (:c:data:`Py_mod_exec` function). " -"More precisely, these functions are not called if :c:member:`~PyModuleDef." -"m_size` is greater than 0 and the module state (as returned by :c:func:" -"`PyModule_GetState`) is ``NULL``." +"Extension " +"modules: :c:member:`~PyModuleDef.m_traverse`, :c:member:`~PyModuleDef.m_clear` " +"and :c:member:`~PyModuleDef.m_free` functions of :c:type:`PyModuleDef` are " +"no longer called if the module state was requested but is not allocated yet. " +"This is the case immediately after the module is created and before the " +"module is executed (:c:data:`Py_mod_exec` function). More precisely, these " +"functions are not called if :c:member:`~PyModuleDef.m_size` is greater than " +"0 and the module state (as returned by :c:func:`PyModule_GetState`) is " +"``NULL``." msgstr "" msgid "" @@ -1787,23 +1804,24 @@ msgstr "" msgid "" "The :c:type:`!PyGC_Head` structure is now opaque. It is only defined in the " -"internal C API (``pycore_gc.h``). (Contributed by Victor Stinner in :issue:" -"`40241`.)" +"internal C API (``pycore_gc.h``). (Contributed by Victor Stinner " +"in :issue:`40241`.)" msgstr "" msgid "" -"The ``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, :c:" -"func:`!PyUnicode_FromUnicode`, :c:func:`!PyUnicode_AsUnicode`, " -"``_PyUnicode_AsUnicode``, and :c:func:`!PyUnicode_AsUnicodeAndSize` are " -"marked as deprecated in C. They have been deprecated by :pep:`393` since " -"Python 3.3. (Contributed by Inada Naoki in :issue:`36346`.)" +"The ``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, " +"``PyUnicode_WSTR_LENGTH``, :c:func:`!PyUnicode_FromUnicode`, :c:func:`!" +"PyUnicode_AsUnicode`, ``_PyUnicode_AsUnicode``, and :c:func:`!" +"PyUnicode_AsUnicodeAndSize` are marked as deprecated in C. They have been " +"deprecated by :pep:`393` since Python 3.3. (Contributed by Inada Naoki " +"in :issue:`36346`.)" msgstr "" msgid "" "The :c:func:`Py_FatalError` function is replaced with a macro which logs " "automatically the name of the current function, unless the " -"``Py_LIMITED_API`` macro is defined. (Contributed by Victor Stinner in :" -"issue:`39882`.)" +"``Py_LIMITED_API`` macro is defined. (Contributed by Victor Stinner " +"in :issue:`39882`.)" msgstr "" msgid "" @@ -1819,10 +1837,10 @@ msgid ":c:func:`PyObject_IS_GC` macro was converted to a function." msgstr "" msgid "" -"The :c:func:`!PyObject_NEW` macro becomes an alias to the :c:macro:" -"`PyObject_New` macro, and the :c:func:`!PyObject_NEW_VAR` macro becomes an " -"alias to the :c:macro:`PyObject_NewVar` macro. They no longer access " -"directly the :c:member:`PyTypeObject.tp_basicsize` member." +"The :c:func:`!PyObject_NEW` macro becomes an alias to " +"the :c:macro:`PyObject_New` macro, and the :c:func:`!PyObject_NEW_VAR` macro " +"becomes an alias to the :c:macro:`PyObject_NewVar` macro. They no longer " +"access directly the :c:member:`PyTypeObject.tp_basicsize` member." msgstr "" msgid "" @@ -1847,8 +1865,8 @@ msgstr "" msgid "" "Excluded ``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros of " -"``pyfpe.h`` from the limited C API. (Contributed by Victor Stinner in :issue:" -"`38835`.)" +"``pyfpe.h`` from the limited C API. (Contributed by Victor Stinner " +"in :issue:`38835`.)" msgstr "" msgid "" @@ -1862,8 +1880,8 @@ msgid "Excluded the following functions from the limited C API:" msgstr "" msgid "" -"``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:" -"`37878`.)" +"``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye " +"in :issue:`37878`.)" msgstr "" msgid "``_Py_CheckRecursionLimit``" @@ -1987,16 +2005,17 @@ msgid "" "``_Py_InitializeFromWideArgs``, ``_PyFloat_Repr``, ``_PyFloat_Digits``, " "``_PyFloat_DigitsInit``, ``PyFrame_ExtendStack``, ``_PyAIterWrapper_Type``, " "``PyNullImporter_Type``, ``PyCmpWrapper_Type``, ``PySortWrapper_Type``, " -"``PyNoArgsFunction``. (Contributed by Pablo Galindo Salgado in :issue:" -"`39372`.)" +"``PyNoArgsFunction``. (Contributed by Pablo Galindo Salgado " +"in :issue:`39372`.)" msgstr "" msgid "Notable changes in Python 3.9.1" msgstr "" msgid "" -"The behavior of :class:`typing.Literal` was changed to conform with :pep:" -"`586` and to match the behavior of static type checkers specified in the PEP." +"The behavior of :class:`typing.Literal` was changed to conform " +"with :pep:`586` and to match the behavior of static type checkers specified " +"in the PEP." msgstr "" msgid "``Literal`` now de-duplicates parameters." @@ -2061,13 +2080,14 @@ msgid "" "``collections.abc.Callable[[int, str], str]`` will have ``__args__`` of " "``(int, str, str)``; previously this was ``([int, str], str)``. To allow " "this change, :class:`types.GenericAlias` can now be subclassed, and a " -"subclass will be returned when subscripting the :class:`collections.abc." -"Callable` type. Code which accesses the arguments via :func:`typing." -"get_args` or ``__args__`` need to account for this change. A :exc:" -"`DeprecationWarning` may be emitted for invalid forms of parameterizing :" -"class:`collections.abc.Callable` which may have passed silently in Python " -"3.9.1. This :exc:`DeprecationWarning` will become a :exc:`TypeError` in " -"Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)" +"subclass will be returned when subscripting " +"the :class:`collections.abc.Callable` type. Code which accesses the " +"arguments via :func:`typing.get_args` or ``__args__`` need to account for " +"this change. A :exc:`DeprecationWarning` may be emitted for invalid forms " +"of parameterizing :class:`collections.abc.Callable` which may have passed " +"silently in Python 3.9.1. This :exc:`DeprecationWarning` will become " +"a :exc:`TypeError` in Python 3.10. (Contributed by Ken Jin " +"in :issue:`42195`.)" msgstr "" msgid "urllib.parse" @@ -2075,13 +2095,14 @@ msgstr "" msgid "" "Earlier Python versions allowed using both ``;`` and ``&`` as query " -"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." -"parse.parse_qsl`. Due to security concerns, and to conform with newer W3C " -"recommendations, this has been changed to allow only a single separator key, " -"with ``&`` as the default. This change also affects :func:`!cgi.parse` and :" -"func:`!cgi.parse_multipart` as they use the affected functions internally. " -"For more details, please see their respective documentation. (Contributed by " -"Adam Goldschmidt, Senthil Kumaran and Ken Jin in :issue:`42967`.)" +"parameter separators in :func:`urllib.parse.parse_qs` " +"and :func:`urllib.parse.parse_qsl`. Due to security concerns, and to " +"conform with newer W3C recommendations, this has been changed to allow only " +"a single separator key, with ``&`` as the default. This change also " +"affects :func:`!cgi.parse` and :func:`!cgi.parse_multipart` as they use the " +"affected functions internally. For more details, please see their respective " +"documentation. (Contributed by Adam Goldschmidt, Senthil Kumaran and Ken Jin " +"in :issue:`42967`.)" msgstr "" msgid "Notable changes in Python 3.9.3" @@ -2100,11 +2121,12 @@ msgstr "" msgid "" "The presence of newline or tab characters in parts of a URL allows for some " -"forms of attacks. Following the WHATWG specification that updates :rfc:" -"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are " -"stripped from the URL by the parser in :mod:`urllib.parse` preventing such " -"attacks. The removal characters are controlled by a new module level " -"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :gh:`88048`)" +"forms of attacks. Following the WHATWG specification that " +"updates :rfc:`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` " +"characters are stripped from the URL by the parser in :mod:`urllib.parse` " +"preventing such attacks. The removal characters are controlled by a new " +"module level variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. " +"(See :gh:`88048`)" msgstr "" msgid "Notable security feature in 3.9.14" diff --git a/whatsnew/changelog.po b/whatsnew/changelog.po index 00162f1..e3bc4b3 100644 --- a/whatsnew/changelog.po +++ b/whatsnew/changelog.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-15 14:15+0000\n" +"POT-Creation-Date: 2026-11-01 18:39+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,23 +31,2863 @@ msgstr "" msgid "*Release date: XXXX-XX-XX*" msgstr "" +msgid "Security" +msgstr "" + +msgid "" +":gh:`160499`: Fix unbounded memory growth in :mod:`asyncio` TLS connections " +"when a peer stops reading but keeps sending records that make OpenSSL " +"generate its own replies (such as TLS 1.2 renegotiation alerts). Reading " +"from the peer is now paused when this output accumulates, instead of only " +"when application data does." +msgstr "" + +msgid "" +":gh:`160506`: Fix :func:`os.path.realpath` on Windows returning the wrong " +"path for a broken relative symbolic link reached through a symbolic link to " +"a directory. This allowed :mod:`tarfile` extraction with the ``'data'`` or " +"``'tar'`` filter to create a file outside the destination directory." +msgstr "" + +msgid "" +":gh:`160420`: Fix :class:`zoneinfo.ZoneInfo` on Windows accepting keys in " +"which a component after a ``/`` starts with a drive letter, such as " +"``America/C:\\file``. Such a key could open a file outside the ``tzdata`` " +"package; it now raises :exc:`ValueError`." +msgstr "" + +msgid "Core and Builtins" +msgstr "" + +msgid "" +":gh:`160773`: Fix a crash in :func:`str` of an :exc:`OSError` when " +"formatting one of its attributes modifies the others." +msgstr "" + +msgid "" +":gh:`159652`: Fix a hang when an import fails with :exc:`RecursionError` " +"because the C stack is nearly exhausted: releasing the import locks could " +"itself fail and leave the global import lock or a module lock held forever, " +"so that later imports in other threads blocked indefinitely. The import " +"system now raises :exc:`RecursionError` before taking an import lock when " +"there is not enough stack left to release it." +msgstr "" + +msgid "" +":gh:`159136`: Setting ``__name__``, ``__qualname__``, ``__doc__`` or " +"``__module__`` on a function no longer stops all threads in the free-" +"threaded build. This fixes a large slowdown in multi-threaded code " +"using :func:`functools.wraps` since 3.14.7." +msgstr "" + +msgid "" +":gh:`152631`: Fix :func:`ast.parse` ability to parse lazy imports with " +"*feature_version* older than 3.15, now it properly raises :exc:`SyntaxError`." +msgstr "" + +msgid "Library" +msgstr "" + +msgid "" +":gh:`137549`: :func:`asyncio.timeout` now inserts :exc:`TimeoutError` into " +"the context chain of sub-exceptions of a :exc:`BaseExceptionGroup`, as it " +"already did for :exc:`ExceptionGroup`." +msgstr "" + +msgid "" +":gh:`53089`: :class:`urllib.request.HTTPDigestAuthHandler` now sends " +"``uri=\"/\"`` in the Digest ``Authorization`` header for URLs with an empty " +"path, such as ``http://example.com``, matching the request-target sent " +"by :mod:`http.client`. Previously it sent ``uri=\"\"``, which servers could " +"reject. Patch by Senthil Kumaran." +msgstr "" + +msgid "" +":gh:`109564`: Fix a race in :mod:`asyncio` where closing a server after it " +"accepted a connection, but before the connection's transport was created, " +"reported an :exc:`AssertionError` to the exception handler. Such connections " +"are now closed quietly." +msgstr "" + +msgid "" +":gh:`53852`: :class:`urllib.request.ProxyDigestAuthHandler` now " +"raises :exc:`~urllib.error.HTTPError` with status code 407 (Proxy " +"Authentication Required) instead of 401 when proxy authentication fails." +msgstr "" + +msgid "" +":gh:`160806`: Fix the pure-Python implementation " +"of :class:`datetime.timedelta` losing sub-second precision with large float " +"arguments. It now gives the same results as the C implementation." +msgstr "" + +msgid "" +":gh:`160781`: Fix :class:`io.BytesIO` implementation " +"of :meth:`io.IOBase.truncate` rejecting sizes larger than ``2**31 - 1`` on " +"Windows." +msgstr "" + +msgid "" +":gh:`160781`: Fix :class:`io.StringIO` implementation " +"of :meth:`io.IOBase.truncate` rejecting sizes larger than ``2**31 - 1`` on " +"Windows." +msgstr "" + +msgid "" +":gh:`160781`: Fix :class:`io.BytesIO` raising :exc:`SystemError` instead " +"of :exc:`OverflowError` when writing at a position close " +"to :data:`sys.maxsize`." +msgstr "" + +msgid "" +":gh:`160596`: Fix the error message for invalid data passed to :meth:`!" +"asyncio.proactor_events.sendto`." +msgstr "" + +msgid "" +":gh:`160561`: Fix a descriptor leak in :func:`socket.fromfd` when the socket " +"constructor rejects its arguments. The duplicated descriptor was never " +"closed." +msgstr "" + +msgid "" +":gh:`60299`: Fix :class:`urllib.request.ProxyDigestAuthHandler` failing to " +"authenticate. It looked up credentials using the target request URL instead " +"of the proxy's authority, so passwords registered via ``add_password()`` " +"against the proxy never matched. Patch by Senthil Kumaran." +msgstr "" + +msgid "" +":gh:`160314`: Raise an error " +"in :class:`lzma.LZMAFile`, :func:`lzma.decompress`, :class:`bz2.BZ2File` " +"and :func:`bz2.decompress` for a damaged ``.xz`` or bzip2 stream that " +"follows another stream, instead of silently ignoring it and everything after " +"it as trailing data." +msgstr "" + +msgid "" +":gh:`159739`: Fix HZ encoding of a tilde at an output buffer boundary and " +"ISO-2022 decoding of split escape sequences. Reset ISO-2022 incremental " +"codecs to their initial state. Keep multibyte codec tables and custom " +"encoder error policies alive when Python code replaces them during use." +msgstr "" + +msgid "" +":gh:`160310`: Fix quadratic time complexity " +"of :func:`gzip.decompress`, :func:`bz2.decompress`, :func:`lzma.decompress` " +"and :func:`compression.zstd.decompress` on data consisting of many " +"concatenated members." +msgstr "" + +msgid "" +":gh:`160522`: Fix the incremental encoders and stream writers of the " +"stateful CJK codecs (``iso2022_*`` and ``hz``) keeping a changed shift state " +"after an :meth:`!encode` or :meth:`!write` call failed. The next call could " +"omit the escape sequence, writing multibyte characters in ASCII mode." +msgstr "" + +msgid "" +":gh:`160518`: Fix the ``hz`` codec sometimes encoding ``~`` as a single " +"``~`` instead of ``~~`` in text that mixes ASCII and Chinese characters, " +"which produced data that did not decode back to the original text." +msgstr "" + +msgid "" +":gh:`160513`: Fix :meth:`asyncio.loop.start_tls` " +"and :meth:`asyncio.StreamWriter.start_tls` not calling the " +"protocol's :meth:`~asyncio.BaseProtocol.connection_lost` when the connection " +"is lost, the handshake times out or the call is cancelled during the TLS " +"handshake. :meth:`asyncio.StreamWriter.wait_closed` no longer waits forever " +"after such a failure." +msgstr "" + +msgid "" +":gh:`160297`: Fix :meth:`tarfile.TarFile.extractall` " +"and :meth:`tarfile.TarFile.extract` changing the mode, modification time and " +"owner of a file outside the destination directory when a hard link member is " +"extracted as a copy of a symbolic link member, for example with the " +"``'tar'`` filter." +msgstr "" + +msgid "" +":gh:`160185`: Fix :meth:`codecs.StreamWriter.reset` of the stateful CJK " +"codecs (``hz`` and the ``iso2022_*`` family) not writing the sequence that " +"returns the output to ASCII. ``seek(0)`` " +"of :class:`codecs.StreamWriter`, :class:`codecs.StreamReaderWriter` " +"and :class:`codecs.StreamRecoder` now resets the writer before moving the " +"stream position." +msgstr "" + +msgid "" +":gh:`159398`: Fix the sampling profiler crashing when a string read from the " +"target process contains code points above ``U+10FFFF``." +msgstr "" + +msgid "" +":gh:`158998`: Fix :func:`os.statx` ignoring the *follow_symlinks* argument." +msgstr "" + +msgid ":gh:`157928`: Correctly detect and handle OSC sequences in PyREPL." +msgstr "" + +msgid "" +":gh:`157856`: Fix :func:`asyncio.as_completed` raising :exc:`RuntimeError` " +"(\"no running event loop\") when the iterator is created outside of a " +"running event loop and driven with :meth:`loop.run_until_complete() " +"`." +msgstr "" + +msgid "" +":gh:`151126`: Fix a crash caused by failing to set :exc:`MemoryError` on " +"allocation failure when first using a Chinese, Japanese or Korean codec." +msgstr "" + +msgid "" +":gh:`139105`: Correct the EOF key shown in the :mod:`sqlite3` CLI ``.help`` " +"text on Windows." +msgstr "" + +msgid "Tests" +msgstr "" + +msgid "" +":gh:`158975`: Replace fixed sleeps used for synchronization in " +"multiprocessing tests with bounded waits to avoid failures on slow or " +"overloaded systems." +msgstr "" + +msgid "Build" +msgstr "" + +msgid "" +":gh:`160704`: Fix C11-C17 builds with old C library headers that do not " +"define ``static_assert``, including glibc versions older than 2.16." +msgstr "" + +msgid "Python 3.15.2 final" +msgstr "" + +msgid "*Release date: 2026-10-25*" +msgstr "" + +msgid "" +":gh:`160300`: Fix :class:`http.cookiejar.DefaultCookiePolicy` accepting and " +"returning cookies with a negative ``Version`` attribute without checking " +"their domain against the request host. Such cookies are now ignored." +msgstr "" + +msgid "" +":cve:`2026-114583`, :gh:`160097`: :func:`tarfile.tar_filter` now rejects " +"link members whose path resolves to the destination directory itself, " +"as :func:`tarfile.data_filter` already did." +msgstr "" + +msgid "" +":cve:`2026-115557`, :gh:`160040`: :mod:`ssl` now rejects TLS certificate " +"chains that contain any of a set of compromised eMudhra intermediate CA " +"keys. This is an extraordinary measure and a last line of defense: removing " +"trust is primarily the job of the platform root store, and the built-in " +"denylist only blocks connections while that update has not yet reached the " +"OS, a container image, or a bundled trust store in various Python packages. " +"Entries are added to the denylist only under a very high threshold. The " +"denylist matches on the public key (the SHA-256 digest of the :rfc:`5280` " +"``SubjectPublicKeyInfo``), so it also covers the cross-signed certificates " +"that reuse one of the distrusted keys." +msgstr "" + +msgid "" +":gh:`160491`: Fix the location reported for invalid escape sequences in f-" +"strings and t-strings. The :exc:`SyntaxError` now points at the literal part " +"that contains the escape, instead of at the closing quote." +msgstr "" + +msgid "" +":gh:`160268`: Fix a crash in :mod:`tokenize` when a mismatched closing " +"bracket follows the opening brace of an f-string or t-string replacement " +"field, as in ``f'{]a'``. It now raises the same \"unmatched\" error as the " +"parser." +msgstr "" + +msgid "" +":gh:`106045`: Fix :mod:`venv` path discovery when the base executable " +"resolves to a location outside the installation pointed to by the ``home`` " +"key in ``pyvenv.cfg``. The standard library is now found from ``home``, and " +"extension modules from the resolved executable's installation, instead of " +"falling back to the compiled-in prefix." +msgstr "" + +msgid "" +":gh:`160162`: Fix a crash on 32-bit platforms when left shifting " +"an :class:`int` by a count close to ``sys.maxsize * " +"sys.int_info.bits_per_digit``. :exc:`OverflowError` is now raised, as for " +"other too large counts." +msgstr "" + +msgid "" +":gh:`160179`: Fix :meth:`!bytearray.__init__` leaving uninitialized memory " +"in the object when it fails on a :class:`list` or :class:`tuple` containing " +"an integer not in ``range(256)``. The object is now empty after the failed " +"call." +msgstr "" + +msgid "" +":gh:`159739`: Fix a possible crash when assigning metadata " +"to :class:`classmethod` or :class:`staticmethod` objects." +msgstr "" + +msgid "" +":gh:`159739`: Fix a race in ``list.__sizeof__()`` when a list is " +"concurrently resized on a free-threaded build." +msgstr "" + +msgid "" +":gh:`159739`: Fix a reference leak when the value of a type alias is " +"evaluated recursively or concurrently." +msgstr "" + +msgid "" +":gh:`159739`: Fix a crash in free-threaded builds " +"when :func:`codecs.unregister` is called concurrently." +msgstr "" + +msgid "" +":gh:`159963`: Fix a regression in Python 3.15.0 where threads importing " +"submodules of packages for the first time could raise ``_DeadlockError`` or " +"a spurious \"partially initialized module\" :exc:`ImportError`, or block one " +"another, with no circular import involved. :func:`importlib.import_module` " +"now returns the partially initialized module in a cross-thread circular " +"import, as the :keyword:`import` statement does, instead of raising " +"``_DeadlockError``." +msgstr "" + +msgid "" +":gh:`159739`: Fix reference leaks when free-threaded garbage collection " +"aborts early because of an allocation error." +msgstr "" + +msgid "" +":gh:`159739`: Prevent free-threaded builds from interning and immortalizing " +"complex subclasses in code object constants." +msgstr "" + +msgid "" +":gh:`159739`: Fix a reference leak in binary, ternary, and comparison " +"operations on weak reference proxies when another operand is a dead proxy." +msgstr "" + +msgid "" +":gh:`159739`: Fix a crash when constructing an error for invalid generic " +"alias arguments." +msgstr "" + +msgid "" +":gh:`159739`: Allow the garbage collector to break reference cycles " +"involving property accessors or names." +msgstr "" + +msgid "" +":gh:`159739`: Fix a crash in :func:`warnings.warn` when " +"``skip_file_prefixes`` is an empty tuple subclass. Propagate allocation " +"errors when creating the fallback filename." +msgstr "" + +msgid "" +":gh:`159431`: Fix an assertion failure, or an immortal object becoming " +"mortal, on the :term:`free threaded ` build when an object " +"passed to the internal delayed decref mechanism is immortal or becomes " +"immortal before the delayed decref is processed by the garbage collector." +msgstr "" + +msgid "" +":gh:`159294`: Fix a crash in a debug build when creating " +"an :exc:`ExceptionGroup` or :exc:`BaseExceptionGroup` fails " +"with :exc:`MemoryError`. Patch by Christian Aurich Zanettini Martins." +msgstr "" + +msgid "" +":gh:`159244`: Fix a crash in :class:`dict` and :meth:`dict.update` in " +"the :term:`free-threaded build` when another thread concurrently mutates a " +"list used as a key/value pair. Patch by Christian Aurich Zanettini Martins." +msgstr "" + +msgid "" +":gh:`159111`: Update mimalloc version from 2.1.2 to 2.5.2. Patch by Donghee " +"Na." +msgstr "" + +msgid "" +":gh:`154318`: Fix a crash when hashing a deeply nested :class:`tuple` " +"or :class:`frozendict`. A :exc:`RecursionError` is now raised instead of " +"overflowing the C stack." +msgstr "" + +msgid "" +":gh:`151818`: Fix a double-free crash in ``list.append()`` (the specialized " +"``CALL_LIST_APPEND`` instruction) when growing the list fails " +"with :exc:`MemoryError`." +msgstr "" + +msgid "" +":gh:`160549`: Fix a crash when a :class:`compression.zstd.ZstdCompressor` " +"that uses worker threads and a :class:`~compression.zstd.ZstdDict` is " +"deallocated, or the interpreter exits, while data passed " +"to :meth:`~compression.zstd.ZstdCompressor.compress` is still being " +"compressed." +msgstr "" + +msgid "" +":gh:`160535`: Fix a crash in :mod:`compression.zstd` when the garbage " +"collector frees a :class:`~compression.zstd.ZstdCompressor` that uses worker " +"threads together with its :class:`~compression.zstd.ZstdDict` before the " +"compression of already submitted data has finished." +msgstr "" + +msgid "" +":gh:`160520`: Fix :mod:`asyncio` SSL transports not applying " +"*ssl_shutdown_timeout* when the peer has sent EOF but does not read the data " +"still queued for it. Closing such a connection could wait indefinitely; it " +"is now aborted with :exc:`TimeoutError` once the timeout expires." +msgstr "" + +msgid "" +":gh:`160326`: Raise :exc:`ValueError` for a NaN *timeout* " +"in :meth:`threading.Condition.wait` and the blocking calls built on it, such " +"as :meth:`threading.Event.wait`, :meth:`threading.Semaphore.acquire` " +"and :meth:`queue.Queue.get`, instead of returning at once or looping without " +"ever timing out." +msgstr "" + +msgid "" +":gh:`159739`: Fix crashes in :mod:`profiling.tracing` when a custom timer " +"reinitializes the profiler or its result clears or disables the profiler " +"during conversion or cleanup." +msgstr "" + +msgid "" +":gh:`159739`: Fix crashes in :mod:`xml.parsers.expat` when a character data " +"callback disables buffering or clears another handler during a flush, or " +"when interning an attribute name " +"changes :attr:`~xml.parsers.expat.xmlparser.ordered_attributes`." +msgstr "" + +msgid "" +":gh:`160299`: Fix :meth:`symtable.Symbol.is_referenced` for local and " +"nonlocal symbols in function scopes when their only uses are in inlined " +"comprehensions." +msgstr "" + +msgid "" +":gh:`159739`: Fix a crash when a :mod:`ctypes` structure subclass cannot be " +"created due to an allocation failure." +msgstr "" + +msgid "" +":gh:`159739`: Fix clearing a :class:`pickle.Unpickler` memo so that the " +"unpickler can be reused for independent records." +msgstr "" + +msgid "" +":gh:`160171`: On the server side, :meth:`ssl.SSLSocket.get_unverified_chain` " +"now returns the client's certificate when the session was resumed from a " +"session ticket, instead of an empty list, and returns an empty list instead " +"of raising :exc:`AttributeError` when the client sent no certificate." +msgstr "" + +msgid "" +":gh:`159739`: Fix a possible crash in :class:`abc.ABCMeta` instance checks " +"when a subclass-checking callback changes the instance’s class." +msgstr "" + +msgid "" +":gh:`159739`: Fix the ``truncate`` method on :class:`io.BytesIO` when " +"converting its size argument closes the stream or exports its buffer." +msgstr "" + +msgid "" +":gh:`159739`: Fix :class:`contextvars.ContextVar` returning a stale value " +"after a reentrant finalizer changes it " +"during :meth:`~contextvars.ContextVar.reset`." +msgstr "" + +msgid "" +":gh:`159739`: Detect recursive ``_as_parameter_`` chains for :mod:`ctypes` " +"calls without argument types." +msgstr "" + +msgid "" +":gh:`159739`: Fix a possible crash when a list of :mod:`sqlite3` parameters " +"is modified concurrently on a free-threaded build." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash when a :class:`threading.local` subclass " +"finalizer accesses attributes after construction fails." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash when a :class:`queue.SimpleQueue` subclass " +"finalizer adds an item after construction fails." +msgstr "" + +msgid "" +":gh:`100609`: ``str()`` of a :class:`zipfile.Path` whose underlying zipfile " +"has no filename, such as one constructed from an :class:`io.BytesIO`, now " +"renders that filename as ``:zipfile:`` instead of raising :exc:`TypeError`. " +"The root of a zipfile is also no longer rendered with a trailing slash. " +"Synchronized with :pypi:`zipp` 3.23.1." +msgstr "" + +msgid "" +":gh:`159690`: Fix :class:`logging.handlers.TimedRotatingFileHandler` " +"permanently stopping rollover after a rollover failed or its backup file " +"already existed, for example at a DST change." +msgstr "" + +msgid "" +":gh:`159739`: Avoid undefined behavior when :func:`struct.pack_into` copies " +"a bytearray into overlapping output." +msgstr "" + +msgid "" +":gh:`159739`: Fix allocation error handling in the fallback implementation " +"of ``getaddrinfo()``." +msgstr "" + +msgid "" +":gh:`159739`: Fix a double free if remote unwinder initialization runs out " +"of memory." +msgstr "" + +msgid "" +":gh:`159739`: Fix :meth:`io.IOBase.readline` returning more bytes than " +"requested when a stream supports :meth:`!peek` and returns short reads." +msgstr "" + +msgid "" +":gh:`159739`: Fix multibyte encoders silently consuming a non-BMP character " +"when looking up a two-character mapping." +msgstr "" + +msgid "" +":gh:`159739`: Fix off-by-one output buffer checks in the fallback " +"implementation of ``getnameinfo()``." +msgstr "" + +msgid "" +":gh:`159739`: Fix reference cycles involving the types of grapheme iterators " +"and segments created by :func:`unicodedata.iter_graphemes`." +msgstr "" + +msgid "" +":gh:`159706`: Fix the pure-Python :class:`zoneinfo.ZoneInfo` setting " +"``fold=0`` in :meth:`~datetime.tzinfo.fromutc` for times in the fold created " +"by the only transition of a zone with a single transition." +msgstr "" + +msgid "" +":gh:`159714`: Fix :class:`zoneinfo.ZoneInfo` interpreting the Julian day " +"rule ``J59`` as February 29 in leap years instead of February 28." +msgstr "" + +msgid "" +":gh:`159304`: Fix :exc:`AttributeError` " +"in :meth:`email.message.EmailMessage.get_body` when a nested ``multipart`` " +"part is malformed and its payload is a string." +msgstr "" + +msgid "" +":gh:`158287`: Fix a bug in :mod:`asyncio` where stopping a child process " +"(such as with ``SIGSTOP``) on macOS caused the event loop to block " +"indefinitely." +msgstr "" + +msgid "" +":gh:`130698`: Fix PyREPL to convert :data:`sys.ps1` and :data:`sys.ps2` to " +"strings before use, and fall back to the default prompts if the conversion " +"raises." +msgstr "" + +msgid "" +":gh:`158126`: Speed up :func:`pickle.dumps` and creating " +"a :class:`pickle.Pickler` by avoiding the creation of " +"an :exc:`AttributeError` when looking up the optional ``reducer_override`` " +"and ``dispatch_table`` attributes." +msgstr "" + +msgid "" +":gh:`157880`: Fix :class:`mailbox.Babyl` to write the visible headers of " +"a :class:`mailbox.BabylMessage` to the mailbox file." +msgstr "" + +msgid "" +":gh:`156784`: :class:`asyncio.ProactorEventLoop` no longer silently " +"ignores :exc:`ConnectionResetError` on UDP sockets, " +"matching :class:`asyncio.SelectorEventLoop`." +msgstr "" + +msgid "" +":gh:`156078`: :meth:`zipfile.ZipFile.mkdir` now raises :exc:`ValueError` " +"when the archive is closed or when a writable member handle is open." +msgstr "" + +msgid "" +":gh:`155833`: Ensure that MD5 and SHA* objects are properly GC-untracked " +"before freeing their internal HACL* state. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`155428`: Ensure that :func:`hmac.digest` and :meth:`hmac.HMAC.digest` " +"output identical values when using a digest's block size smaller than 16. " +"Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`155152`: Improve performance of some :mod:`zipimport` archives that use " +"Zstandard compression." +msgstr "" + +msgid "" +":gh:`153679`: :class:`zipimport.zipimporter` now " +"raises :exc:`zipimport.ZipImportError` instead of :exc:`UnicodeDecodeError` " +"for a UTF-8-flagged file name that is not valid UTF-8. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`153319`: The :mod:`turtledemo` viewer now reads each demo script as " +"UTF-8 instead of the locale encoding." +msgstr "" + +msgid "" +":gh:`127636`: Fix :meth:`tarfile.TarFile.extract` to accept archive member " +"names with a trailing forward slash, including those returned " +"by :meth:`tarfile.TarFile.getnames`. Contributed by Xiao Yuan." +msgstr "" + +msgid "" +":gh:`149527`: :mod:`multiprocessing`: fix creation of temporary socket files " +"following :gh:`137335` (`PR#148578 `__ and corresponding backports). Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`146169`: :mod:`xml.parsers.expat`: raise :exc:`RuntimeError` when an " +"Expat handler calls :meth:`parser.Parse ` " +"or :meth:`parser.ParseFile ` on the " +"parser that called the handler. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`140036`: Avoid hanging in floor division of pure " +"Python :class:`decimal.Decimal` instances when the context precision is very " +"large. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`128883`: Fix crashes with ``-X perf`` and ``-X perf_jit`` in BOLT " +"builds. The ELF perf trampoline templates now use read-only data sections." +msgstr "" + +msgid "" +":gh:`160004`: Fix the paths in the :pep:`739` ``build-details.json`` file " +"generated by :file:`Tools/build/generate-build-details.py` with both ``--" +"relative-paths`` and ``--config-file-path``. Previously, every path except " +"``base_prefix`` was wrong and depended on the directory the script was run " +"from." +msgstr "" + +msgid "" +":gh:`159998`: Fix ``libpython.dynamic`` in the :pep:`739` ``build-" +"details.json`` file for macOS and iOS framework builds. It now points at the " +"framework's library instead of a nonexistent path under :file:`lib/`." +msgstr "" + +msgid "" +":gh:`144942`: Fix the macOS shared library and framework builds not linking " +"the libraries required by built-in modules, such as the HACL* objects needed " +"by ``_blake2`` when it is built in via :file:`Modules/Setup.local`." +msgstr "" + +msgid "" +":gh:`159819`: Fix the shell version of :program:`python3-config` (used on " +"all POSIX platforms except macOS) when the installation prefix contains " +"spaces or other characters special to the shell or :program:`sed`: it " +"printed an empty ``--prefix`` and wrong ``--includes``/``--ldflags`` paths " +"while exiting successfully. The script now also exits with status 1 if it " +"cannot determine its installation prefix." +msgstr "" + +msgid "" +":gh:`157354`: Fix the :samp:`--with-{name}-sanitizer=no` and :samp:`--" +"without-{name}-sanitizer` :program:`configure` options enabling the " +"sanitizer instead of disabling it." +msgstr "" + +msgid "" +":gh:`155813`: On macOS, :option:`LIBFFI_CFLAGS` and :option:`LIBFFI_LIBS` " +"are no longer ignored when the SDK provides ``libffi``, so :mod:`ctypes` can " +"again be built against a different ``libffi``. Patch by Advit Arora." +msgstr "" + +msgid "C API" +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash if a context watcher is cleared while other " +"context watchers are being notified." +msgstr "" + +msgid "Python 3.15.1 final" +msgstr "" + +msgid "*Release date: 2026-10-21*" +msgstr "" + +msgid "" +":gh:`159894`: Bump the version of :pypi:`pip` bundled in :mod:`ensurepip` to " +"version 26.2.2." +msgstr "" + +msgid "" +":gh:`159428`: :mod:`mimetypes` no longer reads the files listed " +"in :data:`mimetypes.knownfiles` by default on Windows, and uses only the " +"registry." +msgstr "" + +msgid "" +":gh:`157953`: Update bundled `libexpat `_ to " +"version 2.9.0." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash if allocation fails while creating " +"a :class:`string.templatelib.Template` iterator." +msgstr "" + +msgid "" +":gh:`159739`: Propagate errors during generic class construction and avoid a " +"crash after failed generic alias substitution." +msgstr "" + +msgid "" +":gh:`159739`: Raise :exc:`OverflowError` when the absolute value of a " +"dynamic printf-style formatting width is too large." +msgstr "" + +msgid "" +":gh:`159739`: Fix a reference leak in :func:`gc.get_objects` " +"and :func:`gc.get_referrers` when an internal allocation fails in the free-" +"threaded build." +msgstr "" + +msgid "" +":gh:`159739`: Fix memory leaks during interpreter startup when a path " +"configuration file is empty or too large, or when an audit hook rejects a " +"command." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash when an interpreter configuration string cannot " +"be encoded as UTF-8." +msgstr "" + +msgid "" +":gh:`159739`: Preserve the original :exc:`SyntaxError` if allocating " +"optional error metadata fails." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash if formatting an integer with the ``c`` " +"presentation type runs out of memory." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash when a module filename cannot be encoded as " +"UTF-8." +msgstr "" + +msgid "" +":gh:`159603`: On FreeBSD, call ``pthread_attr_get_np()`` to get the stack " +"size (and guard size) of the current thread. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`130279`: Fix bug where compiler did not set the right exception handler " +"for some jump instructions." +msgstr "" + +msgid "" +":gh:`159430`: Report the correct exception if looking " +"up :meth:`~object.__bytes__` raises an exception while performing %-" +"formatting of :class:`bytes`." +msgstr "" + +msgid "" +":gh:`159320`: Add dynamic detection of stack sizes on Android, allowing " +"safer deep recursion." +msgstr "" + +msgid "" +":gh:`159288`: Fix a crash when walking a very long chain of lazy import " +"placeholders, as created by an aliased dotted import such as ``lazy import " +"a.b.c as d``. :exc:`RecursionError` is now raised instead." +msgstr "" + +msgid "" +":gh:`159285`: Fix a crash in a debug build when copying an " +"empty :class:`dict` fails with :exc:`MemoryError`. Patch by Christian Aurich " +"Zanettini Martins." +msgstr "" + +msgid "" +":gh:`159041`: Fix a use-after-free in :mod:`asyncio` task bookkeeping when a " +"finalizer creates a task during thread shutdown." +msgstr "" + +msgid "" +":gh:`158973`: Reset the warnings lock in the child after :func:`os.fork`, " +"before clearing other threads' states, to avoid deadlocks when their " +"finalizers issue warnings. Preserve the lock's recursion depth if the " +"forking thread owns it." +msgstr "" + +msgid "" +":gh:`158918`: Reduce C stack usage of ``_PyModule_IsPossiblyShadowing``, " +"which could potentially cause stack overflows during module attribute access " +"while deeply recursing in agressively optimized builds." +msgstr "" + +msgid "" +":gh:`158803`: Fix a crash in :meth:`bytes.join` and :meth:`bytearray.join` " +"in the :term:`free-threaded build` when another thread concurrently mutates " +"the list being joined. Patch by Christian Aurich Zanettini Martins." +msgstr "" + +msgid "" +":gh:`158824`: Fix module-level :meth:`~module.__getattr__` being called " +"before a module's own lazy imports were resolved, which allowed it to shadow " +"them." +msgstr "" + +msgid "" +":gh:`158820`: Fix a crash when a :ref:`lazy import ` is " +"declared or resolved by a finalizer running during interpreter shutdown." +msgstr "" + +msgid "" +":gh:`158592`: Skip the array reallocation when shrinking a " +"small :class:`list`. Patch by Donghee Na." +msgstr "" + +msgid "" +":gh:`158583`: :meth:`bytes.fromhex` and :meth:`bytearray.fromhex`: Fix " +"uninitialized memory read. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`158197`: Fix crashes and debug-build assertion failures in " +"the :term:`free-threaded build` when iterating over a split dictionary while " +"another thread deletes entries or clears it. Publish insertion-order updates " +"atomically so readers cannot observe an increased size before the " +"corresponding order entry is initialized." +msgstr "" + +msgid "" +":gh:`158592`: ``del list[index]`` now triggers shrinking the list's internal " +"array." +msgstr "" + +msgid "" +":gh:`158486`: Fix the PowerSort mask calculation in :meth:`list.sort` for " +"very large lists." +msgstr "" + +msgid "" +":gh:`158121`: Fix missing :mod:`sys.monitoring` ``INSTRUCTION`` events when " +"a ``LINE`` callback returns :data:`sys.monitoring.DISABLE`." +msgstr "" + +msgid "" +":gh:`158219`: Fix :class:`bytearray` constructor: do not use a bytes object " +"if its hash value is already computed. Patch by Cody Maloney and Victor " +"Stinner." +msgstr "" + +msgid "" +":gh:`158072`: Fix a JIT crash when a class is instantiated with their " +"default arguments" +msgstr "" + +msgid "" +":gh:`157468`: Fix the JIT optimizer folding a builtin name to a constant " +"taken from the interpreter's builtins dictionary even when the running " +"function uses a different ``__builtins__`` mapping, such as one created with " +"``vars(builtins).copy()``. The optimizer now only folds when the function's " +"builtins is the interpreter's, and the folded constant is guarded at runtime " +"so that another function sharing the same code object but a different " +"builtins mapping does not use it." +msgstr "" + +msgid "" +":gh:`157242`: If :meth:`bytearray.resize` or :meth:`bytearray.take_bytes` " +"fails, leave the :class:`bytearray` unchanged, instead of clearing it. Patch " +"by Victor Stinner." +msgstr "" + +msgid "" +":gh:`156091`: Fix a crash when compiling deeply nested inlined list, set, or " +"dict comprehensions. A :exc:`SyntaxError` is now raised when the nesting " +"exceeds the compiler's static block limit." +msgstr "" + +msgid "" +":gh:`106045`: Fix standard library discovery in virtual environments created " +"from a Python executable symlink located outside its base installation." +msgstr "" + +msgid "" +":gh:`156459`: Fix cleanup on error in ``compiler_set_qualname``. Previously " +"it was called in ``_PyCompile_EnterScope``, after the scope had been " +"entered, and this was not reversed in case of an error." +msgstr "" + +msgid "" +":gh:`156371`: Fix missing ``PyRefTracer_DESTROY`` events for trashcan " +"deferred objects. Patch by Donghee Na." +msgstr "" + +msgid "" +":gh:`156204`: Fix a crash in :c:func:`PyErr_GivenExceptionMatches` when " +"evaluating deeply nested exception tuples. The recursion is now bounded, and " +"exceeding the limit is reported as an unraisable exception." +msgstr "" + +msgid "" +":gh:`155823`: Fix a JIT bug where the side exit taken when a virtual " +"iterator is exhausted left a stale value on the stack, so the tier one " +"interpreter resumed with corrupted state and ``yield from`` " +"raised :exc:`AttributeError` instead of finishing normally." +msgstr "" + +msgid "" +":gh:`155504`: Fix a crash when thread state creation fails before the thread " +"state is fully initialized." +msgstr "" + +msgid "" +":gh:`155315`: Fix :mod:`marshal` so that a ``frozendict`` referenced more " +"than once in the serialized data round-trips correctly, instead of failing " +"to load with :exc:`ValueError`. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`154937`: Fix a data race on thread handle identifiers when " +"``_thread._shutdown()`` runs concurrently with the startup of non-daemon " +"threads in the :term:`free-threaded build`." +msgstr "" + +msgid "" +":gh:`152075`: Reduced lock contention during LOAD_GLOBAL bytecode " +"specialization under free threading." +msgstr "" + +msgid "" +":gh:`153578`: Fix an out-of-bounds write in :meth:`bytearray.extend` when " +"the bytearray is resized while the argument's :meth:`~object.__buffer__` is " +"being acquired, for example by another thread. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`151895`: Fixed a crash in :func:`marshal.loads` when an allocation " +"failed while loading a reference-tracked dictionary; it now " +"raises :exc:`MemoryError`." +msgstr "" + +msgid "" +":gh:`151518`: Fix a free-threaded stop-the-world fairness issue that could " +"starve a thread reattaching after being suspended while detached." +msgstr "" + +msgid "" +":gh:`149816`: Fix a Use-After-Free race condition in " +"``subtype_getweakref()`` during concurrent weakref creation and destruction " +"in the free-threading build." +msgstr "" + +msgid "" +":gh:`149816`: Fix race conditions in ``invoke_gc_callback`` iterating " +"``gc.callbacks`` in free-threading mode." +msgstr "" + +msgid "" +":gh:`69605`: Fix :term:`REPL` completions inserted incorrectly when there " +"was spaces in import statements." +msgstr "" + +msgid "" +":gh:`138641`: Ignore :func:`pdb.set_trace` when called directly at " +"the :mod:`pdb` prompt." +msgstr "" + +msgid "" +":gh:`159864`: Fix a crash in :func:`syslog.openlog` under the free-threaded " +"build when :data:`sys.argv` is modified concurrently." +msgstr "" + +msgid "" +":gh:`159811`: Fix a crash in :mod:`hashlib` when the OpenSSL routine used " +"by :meth:`hash.update() ` or by hash object " +"constructors fails on data larger than 2048 bytes. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`159811`: Fix a crash in :mod:`hmac` when the OpenSSL routine used " +"by :meth:`hmac.HMAC.update` or by :func:`hmac.new` fails on data larger than " +"2048 bytes. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`159786`: Fix the error handling of the HACL* routine used " +"by :func:`hmac.new` and :meth:`hmac.HMAC.update`. If the maximum input " +"length of the underlying hash function is exceeded, an :exc:`OverflowError` " +"is now raised on all builds, instead of crashing on DEBUG builds and being " +"silently ignored otherwise. Code correctness. Realistically this can only " +"happen at implausible sizes. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`159739`: Fix copying :class:`collections.deque` subclasses with a large " +"maximum length." +msgstr "" + +msgid "" +":gh:`159739`: Allow cyclic garbage collection to reclaim group records " +"returned by :mod:`grp`." +msgstr "" + +msgid "" +":gh:`159739`: Fix :class:`io.BytesIO` reads into overlapping views of the " +"same buffer." +msgstr "" + +msgid "" +":gh:`159739`: Avoid a crash when memory allocation fails while creating " +"a :class:`collections.OrderedDict` items iterator." +msgstr "" + +msgid "" +":gh:`159739`: Avoid reading past the end of an encoding name when the " +"``surrogatepass`` error handler receives a truncated UTF-16 or UTF-32 name." +msgstr "" + +msgid "" +":gh:`159739`: Fix incorrect :mod:`ctypes` scalar values " +"after :func:`ctypes.resize` enlarges the object." +msgstr "" + +msgid "" +":gh:`159739`: Fix a memory leak when Unicode normalization cannot grow its " +"temporary buffer." +msgstr "" + +msgid "" +":gh:`159739`: Fix resource leaks in :mod:`ssl` when certificate conversion " +"or key log setup fails." +msgstr "" + +msgid "" +":gh:`149015`: Fix :meth:`bdb.Bdb.clear_all_file_breaks` leaving breakpoints " +"behind when multiple breakpoints are set on the same line." +msgstr "" + +msgid "" +":gh:`159620`: Fix ``python -m asyncio ps``, ``pstree`` and async-" +"aware :mod:`profiling.sampling` stacks stopping at asynchronous generators. " +"Patch by Timofei Ivankov." +msgstr "" + +msgid "" +":gh:`159458`: Fix a ThreadSanitizer data race on the static cache in " +"``normalize_century()`` of the datetime module under the free-threaded build." +msgstr "" + +msgid "" +":gh:`159430`: Report the correct exception if looking up ``__name__`` raises " +"an exception when calling :func:`repr` on a :class:`weakref.ref`." +msgstr "" + +msgid "" +":gh:`159225`: Prevent ``input`` calls in PyREPL from modifying readline " +"history." +msgstr "" + +msgid "" +":gh:`159044`: Restore the previous behaviour " +"of :meth:`http.client.HTTPConnection.set_tunnel` where header values that " +"are not strings (such as :const:`None`, :class:`int` or other objects) are " +"converted with :class:`str` instead of raising :exc:`AttributeError` when " +"the request is sent." +msgstr "" + +msgid "" +":gh:`159184`: Fix :func:`marshal.dumps` raising :exc:`MemoryError` for a set " +"or frozenset containing several complex NaNs, which also made it impossible " +"to write a :file:`.pyc` file for source code containing such a constant." +msgstr "" + +msgid "" +":gh:`159185`: Fix a crash in :func:`marshal.dumps` and :func:`marshal.dump` " +"when a set is modified while its elements are serialized, for example by " +"the :meth:`~object.__buffer__` method of one of its " +"elements. :exc:`RuntimeError` is now raised." +msgstr "" + +msgid "" +":gh:`159049`: Fix reference cycles in :meth:`asyncio.loop.create_connection` " +"and :meth:`asyncio.loop.start_tls` after a failed TLS handshake. Patch by " +"Timofei Ivankov." +msgstr "" + +msgid "" +":gh:`87720`: Fixed error in :mod:`email` new policies where header folding " +"failed to detect the need to re-quote text obtained from encoded words in " +"certain cases." +msgstr "" + +msgid "" +":gh:`158929`: Fix crash when calling :func:`syslog.syslog` while a " +"subinterpreter in another thread calls :func:`syslog.openlog` " +"or :func:`syslog.closelog`." +msgstr "" + +msgid "" +":gh:`158936`: :func:`~dataclasses.dataclass` no longer fails when a string " +"annotation names a :ref:`lazy import ` that cannot be " +"resolved, matching the behavior for non-string annotations." +msgstr "" + +msgid "" +":gh:`158893`: Make :func:`os.strerror` thread-safe: use the reentrant " +"``strerror_r()`` function if available. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`158539`: Fix macOS runtime section lookup for remote debugging when " +"virtual memory region sizes differ from Mach-O segment file sizes." +msgstr "" + +msgid "" +":gh:`156545`: Fix deep flamegraph exports on platforms with small C stacks " +"by falling back to the Python JSON encoder when the C encoder runs out of " +"stack space." +msgstr "" + +msgid "" +":gh:`158552`: Wait for Windows threads to finish suspending before reading " +"target memory in the sampling profiler's blocking mode. Resume the target if " +"waiting for suspension fails." +msgstr "" + +msgid "" +":gh:`156321`: Fix :func:`asyncio.shield` reporting an exception from the " +"inner future through the loop exception handler as soon as it completes " +"after the shield was cancelled, even when the exception is retrieved " +"afterwards. The exception is now reported only if it is never retrieved, as " +"with any other future." +msgstr "" + +msgid "" +":gh:`158539`: Fix :mod:`profiling.sampling` exception mode discarding " +"samples for code running inside an ``except`` block in a generator or " +"coroutine. The remote debugger now follows ``tstate->exc_info`` and its " +"``previous_item`` chain instead of only reading the embedded ``exc_state``, " +"matching the exception that :func:`sys.exception` reports." +msgstr "" + +msgid "" +":gh:`158563`: Fix :func:`turtle.undo` after :func:`turtle.teleport` and " +"after an exception in :func:`turtle.circle`, :func:`turtle.dot` " +"or :func:`turtle.write`. " +"Fix :func:`turtle.stamp`, :func:`turtle.clearstamp`, :func:`turtle.clear` " +"and :func:`turtle.reset` when the undo buffer is disabled." +msgstr "" + +msgid "" +":gh:`158540`: Fix :mod:`profiling.sampling` not adding the directory " +"containing the profiled script to :data:`sys.path`, which prevented the " +"script from importing modules placed next to it. The script's directory is " +"now added, matching the behavior of ``python script.py``." +msgstr "" + +msgid "" +":gh:`158522`: Fix :mod:`profiling.sampling` showing a single frame for a " +"task whose coroutine recurses. Patch by Timofei Ivankov." +msgstr "" + +msgid "" +":gh:`158169`: Fix :attr:`zlib.Decompress.unconsumed_tail` " +"duplicating :attr:`~zlib.Decompress.unused_data` after end of stream when " +"*max_length* was used." +msgstr "" + +msgid "" +":gh:`158004`: Fix :func:`asyncio.as_completed` to continue yielding every " +"awaitable after a pending iteration step is cancelled." +msgstr "" + +msgid "" +":gh:`153888`: Fix :func:`unittest.mock.patch` with ``autospec``, ``spec``, " +"or ``spec_set`` when used with lazy-imported objects." +msgstr "" + +msgid "" +":gh:`157672`: Fix :mod:`tkinter` on macOS: creating a :class:`~tkinter.Tk` " +"instance no longer replaces the Python handlers of SIGINT, SIGHUP and " +"SIGTERM with Tk's handler which exits the process, so Ctrl-C " +"raises :exc:`KeyboardInterrupt` again." +msgstr "" + +msgid "" +":gh:`157621`: Fix a crash when a weak-reference callback is attached to " +"a :class:`typing.ParamSpecArgs` or :class:`typing.ParamSpecKwargs` instance." +msgstr "" + +msgid "" +":gh:`69919`: :meth:`code.InteractiveInterpreter.runsource` and the REPL now " +"report any exception raised by compiling the source, such " +"as :exc:`MemoryError` or :exc:`RecursionError` for too deeply nested source, " +"instead of propagating it or printing a traceback of the REPL internals." +msgstr "" + +msgid "" +":gh:`157451`: Fix :mod:`gettext` plural form selection when the ``Plural-" +"Forms`` expression combines the unary ``!`` operator with a binary operator, " +"for example ``!n + 1`` or ``2 * !n``. The latter raised :exc:`SyntaxError`." +msgstr "" + +msgid "" +":gh:`157406`: Fix the Python implementation " +"of :class:`xml.etree.ElementTree.XMLParser`: the ``doctype()`` method of the " +"target is now called for a document type declaration without an external " +"identifier, like ````, as in the C implementation." +msgstr "" + +msgid "" +":gh:`157364`: Fix a use-after-free in :class:`io.TextIOWrapper` when a call " +"to the underlying buffer reentrantly detaches it. Patched by Shamil Abdulaev." +msgstr "" + +msgid "" +":gh:`157242`: :class:`io.BytesIO` is no longer closed on ``write()`` and " +"``truncate()`` failure (:exc:`MemoryError`). Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`157325`: Fix an out-of-bounds read in the ``hz`` incremental decoder " +"when the input ends with ``~``." +msgstr "" + +msgid "" +":gh:`123018`: Fix :func:`readline.write_history_file` " +"and :func:`readline.append_history_file` producing a history file " +"that :func:`readline.read_history_file` could not load when a limit was set " +"with :func:`readline.set_history_length` and Python was built against " +"``libedit``. This works around `NetBSD PR 60322 `_." +msgstr "" + +msgid "" +":gh:`157146`: :mod:`linecache` can now read the source of a module that was " +"imported from a zip archive on :data:`sys.path` when given only the file " +"name, as :mod:`pdb`, :mod:`warnings` and :mod:`doctest` do." +msgstr "" + +msgid "" +":gh:`157048`: Preserve the position and contents of :class:`io.BytesIO` " +"when :meth:`!BytesIO.__init__` fails because a buffer is exported." +msgstr "" + +msgid "" +":gh:`156961`: Fix :func:`tkinter.font.nametofont` and " +"the :class:`tkinter.font.Font` constructor for a font name returned by Tk as " +"a Tcl object, for example by :meth:`ttk.Style.lookup() " +"`." +msgstr "" + +msgid "" +":gh:`156946`: Fix a crash in :mod:`curses.panel` when the finalizer of a " +"panel's user pointer runs while the panel is being deallocated. The panel " +"is now taken off the panel stack before its user pointer is dropped." +msgstr "" + +msgid "" +":gh:`156920`: Fix :mod:`asyncio` on Windows: closing " +"a :class:`~asyncio.DatagramTransport` " +"under :class:`~asyncio.ProactorEventLoop` while datagrams were still queued, " +"or while an in-flight write failed right as ``close()`` was draining the " +"buffer, could strand the queued data and never call ``connection_lost()``, " +"hanging the close indefinitely." +msgstr "" + +msgid "" +":gh:`156810`: Fix a :exc:`UnicodeEncodeError` crash in the sampling " +"profiler's collapsed-stack export (``--collapsed``) when a sampled frame's " +"function or file name contains non-ASCII or surrogate-escaped characters. " +"The output file is now written as UTF-8." +msgstr "" + +msgid "" +":gh:`156797`: Fix :class:`xml.sax.saxutils.XMLGenerator`: the namespace URI " +"is now escaped in the namespace declaration. Previously a URI containing " +"``&``, ``<`` or a quote character produced a document which cannot be parsed." +msgstr "" + +msgid "" +":gh:`83895`: :mod:`xml.etree.ElementTree` now accepts input larger than 2 " +"GiB in the C implementation. The data is fed to Expat in chunks, " +"as :mod:`xml.parsers.expat` already did, instead of " +"raising :exc:`OverflowError`." +msgstr "" + +msgid "" +":gh:`99064`: Fix :func:`xml.etree.ElementTree.parse` with a text file or " +"other source of :class:`str` data in the C implementation. The encoding " +"declared in the document was applied to the already decoded text, which " +"produced mojibake. It is now ignored, as when parsing with :meth:`!" +"XMLParser.feed` or :func:`~xml.etree.ElementTree.fromstring`." +msgstr "" + +msgid "" +":gh:`156713`: Fix :func:`!nturl2path.pathname2url` and :func:`!" +"nturl2path.url2pathname`: the filesystem encoding and error handler are now " +"used for percent-encoding and decoding, as in :mod:`urllib.request`. " +"Previously paths containing surrogate characters " +"raised :exc:`UnicodeEncodeError`." +msgstr "" + +msgid "" +":gh:`156698`: Fix :class:`asyncio.ProactorEventLoop` UDP transports so that " +"a write error no longer strands a paused protocol: the write loop is now " +"rescheduled when data remains buffered, and the protocol is resumed when the " +"buffer has drained." +msgstr "" + +msgid "" +":gh:`156658`: :mod:`xml.dom` and :mod:`xml.etree.ElementTree` no longer " +"treat characters which are not white space in XML (such as U+00A0) as white " +"space. Previously they could be lost " +"in :func:`~xml.etree.ElementTree.indent`, :func:`~xml.etree.ElementTree.canonicalize` " +"with ``strip_text=True``, and when parsing with the ``whitespace-in-element-" +"content`` feature turned off." +msgstr "" + +msgid "" +":gh:`156568`: :func:`zipapp.create_archive` now correctly sets the " +"executable bit on the target archive when copying a zipapp where the target " +"is a path-like object." +msgstr "" + +msgid "" +":gh:`156545`: Fix the sampling profiler's flamegraph export so that " +"profiling a deeply recursive program no longer fails " +"with :exc:`RecursionError` instead of producing a flamegraph. Patch by " +"tonghuaroot." +msgstr "" + +msgid "" +":gh:`156476`: The pure Python implementation " +"of :meth:`queue.SimpleQueue.get` now ignores *timeout* when *block* is " +"false, matching the documented behavior and the C implementation. It " +"previously raised :exc:`ValueError`." +msgstr "" + +msgid "" +":gh:`156444`: Fix matching of a negated character set in a bytes pattern " +"compiled with both :const:`re.IGNORECASE` and :const:`re.LOCALE`. The case " +"closure is now applied to the members of the set, so that ``[^bc]`` no " +"longer matches ``b'B'``." +msgstr "" + +msgid "" +":gh:`156180`: :func:`zlib.adler32_combine` and :func:`zlib.crc32_combine` " +"now raise :exc:`ValueError` if the *len2* argument is negative, instead of " +"returning rubbish or hanging indefinitely, respectively." +msgstr "" + +msgid "" +":gh:`156166`: :mod:`ssl`: A failed assignment or deletion of the " +"``_msg_callback`` attribute of :class:`ssl.SSLContext` no longer removes the " +"current callback. Deleting it now raises :exc:`AttributeError` instead " +"of :exc:`TypeError`." +msgstr "" + +msgid "" +":gh:`156173`: Calling :meth:`zlib.Decompress.flush` on invalid compressed " +"data now raises :exc:`zlib.error` instead of being silently ignored." +msgstr "" + +msgid "" +":gh:`152817`: :mod:`sqlite3`: Disallow removing the ``row_factory`` " +"attribute of a cursor to prevent a crash on a query." +msgstr "" + +msgid "" +":gh:`156124`: Fix a crash in the free-threaded build when deleting " +"the :attr:`!contents` attribute of a :mod:`ctypes` pointer." +msgstr "" + +msgid "" +":gh:`156101`: Fix :attr:`sqlite3.Cursor.arraysize` being set to 0 if the " +"assigned value is too large. The attribute is now left unchanged if the " +"assignment fails." +msgstr "" + +msgid "" +":gh:`156100`: Fix crashes in :class:`sqlite3.Connection` when deleting " +"the :attr:`~sqlite3.Connection.autocommit` attribute or setting it to an " +"integer which does not fit in C :c:expr:`long`. Both now raise an exception." +msgstr "" + +msgid "" +":gh:`156099`: Fix a crash when deleting the ``keylog_filename`` attribute " +"of :class:`ssl.SSLContext`. It now raises :exc:`AttributeError`." +msgstr "" + +msgid "" +":gh:`156067`: Fix error handling in the :mod:`zoneinfo` accelerator module " +"when a transition index is ``-1`` or a TZ string's ``__bool__`` raises." +msgstr "" + +msgid "" +":gh:`155997`: Fix :func:`concurrent.interpreters.list_all`. It failed if an " +"interpreter was destroyed during the call, in particular by a garbage " +"collection which finalized the object owning the last reference to it." +msgstr "" + +msgid "" +":gh:`155941`: Fix :func:`asyncio.start_server` when a plain-function " +"*client_connected_cb* raises: the error is now reported like the coroutine " +"case and the transport is closed, instead of leaving the connection open " +"forever (which also made :meth:`asyncio.Server.wait_closed` hang)." +msgstr "" + +msgid "" +":gh:`155843`: :mod:`hmac`: ensure that HMAC objects are properly initialized " +"to prevent rare crashes on allocation failures. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`155835`: :mod:`hashlib`: Fix data races when " +"accessing :attr:`~hashlib.hash.digest_size` " +"and :attr:`~hashlib.hash.block_size` on SHA-3 objects. Patch by Bénédikt " +"Tran." +msgstr "" + +msgid "" +":gh:`155830`: :mod:`!_blake2`: Ensure that BLAKE-2 objects are correctly " +"initialized before being tracked by the garbage collector. Patch by Bénédikt " +"Tran." +msgstr "" + +msgid "" +":gh:`155782`: :mod:`ssl`: prevent a crash in :meth:`~ssl.SSLSocket.group` " +"for session-less objects on OpenSSL 3.2 and later. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`155811`: Add a sequence counter to GC statistics to prevent :mod:`!" +"_remote_debugging` returning inconsistent snapshots caused by non-atomic " +"reads. Patch by Maurycy Pawłowski-Wieroński." +msgstr "" + +msgid "" +":gh:`155717`: :mod:`multiprocessing`'s default start method is " +"now :ref:`\"spawn\" ` instead of " +"``\"forkserver\"`` when there is no writable temporary directory, such as on " +"a read-only file system. Previously starting a process failed with " +"an :exc:`OSError` there. Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`155775`: Fix a regression in :mod:`imaplib` introduced in the fix " +"for :gh:`63121`: refreshing the capabilities after a " +"successful :meth:`~imaplib.IMAP4.login` " +"or :meth:`~imaplib.IMAP4.authenticate` consumed the ``CAPABILITY`` response, " +"so it could no longer be read with :meth:`~imaplib.IMAP4.response`." +msgstr "" + +msgid "" +":gh:`113318`: Fix crashes when deleting an attribute whose setter is " +"generated by Argument Clinic and is not prepared for deletion, among " +"them :attr:`frame.f_trace_opcodes` and the ``context``, ``owner`` and " +"``session`` attributes of ``_ssl._SSLSocket``. Deleting such attribute now " +"raises :exc:`AttributeError`." +msgstr "" + +msgid "" +":gh:`150449`: Fix :class:`sqlite3.Blob` slices with a negative step. Reading " +"or writing such a slice raised :exc:`SystemError`. It now " +"raises :exc:`ValueError`." +msgstr "" + +msgid "" +":gh:`155336`: Fix error handling in :func:`socket.gethostbyaddr` " +"and :func:`socket.gethostbyname_ex` when hostname resolution fails." +msgstr "" + +msgid "" +":gh:`155426`: Make sure that the pure Python fallback of :func:`hmac.digest` " +"rejects keys that are neither :class:`bytes` or :class:`bytearray`. " +"Previously, an :exc:`AttributeError` was raised instead of :exc:`TypeError`. " +"Patch by Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`102475`: Fix :func:`os.path.realpath` on Windows: the unresolved part " +"of the path is now appended, not joined, so a file name which looks like a " +"drive (e.g. ``spam:eggs``) no longer discards the resolved part. A path " +"relative to another drive is now resolved against the root directory of that " +"drive." +msgstr "" + +msgid "" +":gh:`89760`: Fix :func:`os.path.realpath` on Windows: the ``\\\\?\\`` prefix " +"is no longer stripped from a volume GUID path, which made the result invalid." +msgstr "" + +msgid "" +":gh:`84419`: Fix :func:`os.stat` on Windows: trailing dots and spaces, which " +"are ignored by the operating system, are no longer taken into account when " +"the execute permissions are guessed from the file extension." +msgstr "" + +msgid "" +":gh:`155319`: :func:`warnings.warn_explicit` now displays the source line " +"taken from the loader of the module whose globals are passed as " +"*module_globals*. It also no longer raises :exc:`IndexError` if *lineno* is " +"out of the range of the module source." +msgstr "" + +msgid "" +":gh:`123011`: :func:`warnings.warn_explicit` no longer emits a " +"spurious :exc:`DeprecationWarning` or raises :exc:`ImportError` when it is " +"called with the globals of the :mod:`__main__` module." +msgstr "" + +msgid "" +":gh:`69370`: :program:`python -m inspect --details` no longer fails " +"with :exc:`UnicodeEncodeError` if the path of the module contains characters " +"unencodable in the encoding of :data:`sys.stdout`. Such characters are now " +"escaped with backslashes." +msgstr "" + +msgid "" +":gh:`69371`: Fix :mod:`pydoc` for modules whose path contains undecodable " +"bytes. :func:`!pydoc.writedoc` and the pydoc HTTP server no longer fail " +"with :exc:`UnicodeEncodeError`: the file URL is now percent-encoded using " +"the filesystem encoding, and characters unencodable in the generated HTML " +"page are escaped with backslashes." +msgstr "" + +msgid "" +":gh:`154855`: Fix :meth:`curses.window.instr` returning one character too " +"few when the :mod:`curses` module is built against a curses library that " +"counts the terminator in the requested length, such as the NetBSD one." +msgstr "" + +msgid "" +":gh:`154594`: Fix :func:`copy.deepcopy` so that an object whose deep copy is " +"``None`` is still memoized. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`154523`: Fixed data-race when calling :meth:`io.TextIOBase.detach` " +"in :term:`free-threaded build`." +msgstr "" + +msgid "" +":gh:`135683`: :class:`logging.FileHandler` " +"and :class:`logging.handlers.WatchedFileHandler` now " +"honor :data:`logging.raiseExceptions` for errors that occur while opening " +"the file, like for other errors during logging." +msgstr "" + +msgid "" +":gh:`82535`: :class:`logging.handlers.SysLogHandler` no longer fails if the " +"address cannot be resolved when the handler is created. The address is " +"resolved again when a record is emitted." +msgstr "" + +msgid "" +":gh:`153970`: Calling :func:`str` on a :exc:`subprocess.CalledProcessError` " +"no longer raises :exc:`TypeError` when its :attr:`!returncode` is not an " +"integer, such as ``None``." +msgstr "" + +msgid "" +":gh:`154194`: Fix the sampling profiler dropping entire samples when a non-" +"fatal read fails; frames now keep any readable metadata, and long funcnames " +"and filenames are truncated instead. Patch by Maurycy Pawłowski-Wieroński." +msgstr "" + +msgid "" +":gh:`153005`: :meth:`!concurrent.interpreters.Queue.get` and :meth:`!" +"concurrent.interpreters.Queue.put` now compute their ``timeout`` deadline " +"from :func:`time.monotonic` instead of the wall clock, so adjusting the " +"system clock during the call no longer makes them over- or under-wait." +msgstr "" + +msgid "" +":gh:`154062`: Stop normalizing differential flamegraph baselines to the " +"duration of the current profile." +msgstr "" + +msgid "" +":gh:`81241`: Fix :exc:`OSError` when importing :mod:`ctypes` from a " +"statically linked interpreter." +msgstr "" + +msgid "" +":gh:`153838`: Skip non-regular files in the ``profiling.sampling`` heatmap " +"exporter instead of reading them unconditionally. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`141276`: Fix duplicate :exc:`SyntaxWarning` messages when importing " +"source modules from ZIP " +"archives. :meth:`zipimport.zipimporter.get_filename`, and " +"therefore :meth:`~zipimport.zipimporter.find_spec`, no longer compile source " +"modules. A :exc:`SyntaxError` in a zipped source module is now raised when " +"the module is executed rather than when it is found, matching the behavior " +"of filesystem-based loaders." +msgstr "" + +msgid "" +":gh:`153603`: Fix a crash in the ISO-2022 decoders when decoding a byte " +"after an unknown charset designation is set via the decoder's ``setstate`` " +"method. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`153539`: Fix a crash in the C implementation " +"of :meth:`io.TextIOWrapper.tell` when the decoder's ``getstate`` method " +"triggers a reentrant seek, or when another thread seeks the same stream " +"concurrently. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`152754`: Fix a crash when the same :func:`os.scandir` iterator is used " +"concurrently from multiple threads. It no longer releases the directory " +"handle while another thread is reading from it. Sharing an iterator between " +"threads remains subject to race conditions: which entries each thread " +"receives is unspecified." +msgstr "" + +msgid "" +":gh:`153364`: Make frame, coroutine and task-waiter walks iterative and " +"bounded, avoiding potential hangs and stack overflows. Fix asyncio task " +"inspection when awaited-by sets contain removed entries. Patch by Maurycy " +"Pawłowski-Wieroński." +msgstr "" + +msgid "" +":gh:`149816`: :mod:`hashlib`: fix a crash arising from a race condition when " +"looking up an OpenSSL hash algorithm by name the first time. Patch by " +"Bénédikt Tran." +msgstr "" + +msgid "" +":gh:`151292`: Fix ``profiling.sampling --binary`` leaving unreadable profile " +"files when the binary format reaches a size limit. Preserve collected " +"samples when the writer can still finalize safely. Patch by Maurycy " +"Pawłowski-Wieroński." +msgstr "" + +msgid "" +":gh:`152721`: Fix quadratic replay time in the :mod:`profiling.sampling` " +"binary reader when a profile's run-length-encoded samples alternate thread " +"status." +msgstr "" + +msgid "" +":gh:`151126`: Fix a crash caused by failing to set :exc:`MemoryError` on " +"allocation failure when passing :class:`ctypes.Structure` " +"or :class:`ctypes.Union` instances by value to ctypes foreign functions." +msgstr "" + +msgid "" +":gh:`152692`: Fix :func:`annotationlib.type_repr` returning a string such as " +"``None.list.append`` for bound built-in methods, whose ``__module__`` is " +"``None``. It now returns the qualified name, as it already did for other " +"builtins." +msgstr "" + +msgid "" +":gh:`152490`: Fix :exc:`TypeError` when formatting a :exc:`SyntaxError` " +"raised with :data:`NotImplemented` as its argument, which caused unexpected " +"REPL exit and IDLE Shell restart." +msgstr "" + +msgid "" +":gh:`152373`: Fix the :mod:`pdb` ``until`` command not stepping over a list " +"comprehension when a breakpoint is set on it. Patch by tonghuaroot." +msgstr "" + +msgid "" +":gh:`152204`: Fix the pure-Python implementations " +"of :meth:`datetime.date.fromisoformat`, :meth:`datetime.time.fromisoformat` " +"and :meth:`datetime.datetime.fromisoformat` silently accepting some " +"malformed ISO 8601 strings, such as non-ASCII digits or a sign in a fixed-" +"width field (for example ``'2020+12'`` or ``'20201212T0102٣٤'``). Each field " +"is now required to be exactly *N* ASCII digits, matching the C " +"implementation." +msgstr "" + +msgid "" +":gh:`133998`: Fix :func:`tarfile.open` in streaming write mode (``w|gz``) " +"raising :exc:`struct.error` when given an *mtime* outside the range of the " +"gzip header's 32-bit timestamp field. Out-of-range values are now stored as " +"``0``, matching :mod:`gzip`." +msgstr "" + +msgid "" +":gh:`117807`: Fix :mod:`mimetypes` initialization from MIME map files " +"containing invalid UTF-8 bytes." +msgstr "" + +msgid "" +":gh:`143008`: Fix race conditions when re-initializing " +"a :class:`io.TextIOWrapper` object." +msgstr "" + +msgid "" +":gh:`145856`: Fix :func:`plistlib.dumps` and :func:`plistlib.dump` so that " +"``skipkeys=True`` together with ``sort_keys=True`` correctly drops non-" +"string keys when the dictionary contains a mix of string and non-string " +"keys. Previously the sort ran before the filter and raised :exc:`TypeError`." +msgstr "" + +msgid "" +":gh:`143376`: :mod:`concurrent.interpreters`: fix a crash when internal " +"cross-interpreter channel ends have incorrect channel IDs. Patch by Bénédikt " +"Tran." +msgstr "" + +msgid "" +":gh:`146065`: Fix a crash in asyncio.Future iterator when send() is called " +"after throw() or close()." +msgstr "" + +msgid "" +":gh:`143008`: Fix crash in :class:`io.TextIOWrapper` when " +"reentrant :meth:`io.TextIOBase.detach` is called reentrantly from the " +"underlying buffer." +msgstr "" + +msgid "" +":gh:`129605`: Improve exception handling when computing suggestions in " +"traceback.py. This fixes a bug that could cause PyREPL to exit unexpectedly." +msgstr "" + +msgid "" +":gh:`102967`: A bug in :func:`!doctest._SpoofOut.truncate` was causing None " +"to be passed to :func:`!StringIO.seek` when no size was given. A simple fix " +"skips the seek call when no size is given so the buffer can be truncated " +"from the current position." +msgstr "" + +msgid "" +":gh:`82039`: :meth:`http.cookiejar.FileCookieJar.load` now checks the first, " +"format signature line in a case-insensitive manner. Patch by Ashley Harvey." +msgstr "" + +msgid "" +":gh:`70758`: Creating a new :mod:`turtle` screen after the previous one was " +"closed no longer raises ``turtle.Terminator`` on the first turtle command." +msgstr "" + +msgid "" +":issue:`44012`: The ``exploded`` attribute of :class:`ipaddress.IPv6Address` " +"and :class:`ipaddress.IPv6Interface` now supports addresses with a scope ID " +"(link-local addresses). Previously the former " +"raised :exc:`~ipaddress.AddressValueError` and the latter omitted the scope " +"ID." +msgstr "" + +msgid "" +":gh:`83869`: Fix :mod:`tarfile` reading an archive with a GNU sparse 1.0 " +"member whose size is set in the pax extended header. The offset of the next " +"header was computed from the offset of the data, which is already past the " +"sparse map, and from the size of the member, which can be the apparent size " +"of the sparse file. All following members were unreachable." +msgstr "" + +msgid "" +":gh:`61366`: :class:`http.cookiejar.MozillaCookieJar` now reads session " +"cookies written by curl and Wget, which use ``0`` in the expiration time " +"field. Contributed by Jérémie Detrey." +msgstr "" + +msgid "Documentation" +msgstr "" + +msgid "" +":gh:`142083`: Document the ``'w'`` type code in the :class:`array.array` " +"docstring, so that it lists the same type codes as :data:`array.typecodes` " +"and the :mod:`array` module documentation." +msgstr "" + +msgid ":gh:`107689`: Added docstrings to abstract ctypes." +msgstr "" + +msgid "" +":gh:`159293`: Restore the recursion limit after the free-threading recursion-" +"limit race test to avoid failures in subsequent tests run in the same " +"process." +msgstr "" + +msgid "" +":gh:`159211`: The iOS testbed no longer gathers simulator diagnostics when a " +"test run fails." +msgstr "" + +msgid "" +":gh:`157628`: In regrtest, only consider that a test leaks if all test runs " +"leak at least one file descriptor. For example, ignore \"[0, 1, -1] file " +"descriptors, sum=0\" deltas, instead of reporting a leak. Patch by Victor " +"Stinner." +msgstr "" + +msgid "" +":gh:`140550`: Enable limited C API tests on Free Threading in test_cext and " +"test_cppext: test the :c:macro:`Py_TARGET_ABI3T` macro. Patch by Victor " +"Stinner." +msgstr "" + +msgid "" +":gh:`75876`: A test decorated with :func:`~test.support.bigmemtest` now runs " +"in a subprocess if it really allocates the memory it asks for (that is, if " +"the ``-M`` option is used), so that the memory it uses and the address space " +"it fragments are released when it ends. A dummy run stays in the process. " +"The separate memory watchdog process is no longer needed: the parent process " +"watches the memory usage of the subprocess." +msgstr "" + +msgid "" +":gh:`155411`: Fix :func:`!test.support.subTests` for asynchronous test " +"methods. They were wrapped in a synchronous function, which discarded the " +"coroutine without awaiting it, so the test silently did not run at all." +msgstr "" + +msgid "" +":gh:`132581`: The list of tests which altered the execution environment now " +"includes the reasons why the environment was considered altered, for example " +"an unraisable exception or a modified :data:`sys.path`. The final result no " +"longer repeats the same state twice (like ``ENV CHANGED then ENV CHANGED``)." +msgstr "" + +msgid "" +":gh:`155109`: Add ``test.support.run_with_limited_c_stack()`` and use it in " +"tests that exhaust the C stack with a fixed number of recursive calls, so " +"that their outcome no longer depends on the C stack size." +msgstr "" + +msgid "" +":gh:`143632`: Fix the check that disables ``PR_SET_VMA_ANON_NAME`` on musl " +"libc: it tested an unset variable, so it never had any effect and the build " +"could fail with a redefinition of ``struct prctl_mm_map``." +msgstr "" + +msgid "" +":gh:`159759`: Fix the ``libpython.static`` path in :pep:`739` ``build-" +"details.json``, which pointed to a file that is not installed when building " +"with :option:`--enable-shared`, and no longer list a static library for " +"framework builds, which do not install one." +msgstr "" + +msgid "" +":gh:`159440`: The version string reported by ``sys.version`` no longer " +"carries a spurious ``-dirty`` suffix when CPython is built out-of-tree from " +"a clean git checkout: the build stamp now checks the source tree instead of " +"the build directory." +msgstr "" + +msgid "" +":gh:`158683`: Fix the :file:`Modules/Setup` entry for the :mod:`!_zstd` " +"module by adding missing source files." +msgstr "" + +msgid "" +":gh:`157142`: Fix the link of ``Programs/_freeze_module`` when extension " +"modules are built in (``MODULE_BUILDTYPE=static``) and the test modules are " +"enabled: ``Modules/getpath_noop.c`` now defines " +"``_Py_Get_Getpath_CodeObject()``, which ``_testinternalcapi`` uses." +msgstr "" + +msgid "" +":gh:`155911`: Fix curses detection when a curses library is already in " +"``LIBS``. Patch by Shamil Abdulaev." +msgstr "" + +msgid "Windows" +msgstr "" + +msgid "" +":gh:`159880`: Fix a key handle leak " +"in :func:`winreg.CreateKey`, :func:`winreg.CreateKeyEx` " +"and :func:`winreg.OpenKey` when the ``winreg.OpenKey/result`` audit hook " +"fails." +msgstr "" + +msgid "" +":gh:`157906`: Fix an incorrect architecture macro check that prevented CPU " +"prefetching in the free-threaded garbage collector on 32-bit Windows builds." +msgstr "" + +msgid "" +":gh:`157789`: Use compiler option ``-Og`` in case of clang-cl debug builds " +"on Windows to reduce stack usage. Patch by Chris Eibl." +msgstr "" + +msgid "" +":gh:`72353`: Reading from the console on Windows now continues if the read " +"was cancelled by Ctrl+C, but the :const:`~signal.SIGINT` handler did not " +"raise an exception. Previously the read ended as if at end of file." +msgstr "" + +msgid "" +":gh:`86427`: Fix the encoding of the standard streams in the legacy Windows " +"stdio mode (:envvar:`PYTHONLEGACYWINDOWSSTDIO`). It is now the code page of " +"the console, as in Python 3.7, not the ANSI code page." +msgstr "" + +msgid "" +":gh:`87587`: :func:`os.device_encoding` on Windows now returns the code page " +"of any console file descriptor, not only 0, 1 and 2, and returns ``None`` " +"for other character devices like ``NUL``. The UTF-8 code page is now " +"reported as ``\"utf-8\"`` instead of ``\"cp65001\"``." +msgstr "" + +msgid "macOS" +msgstr "" + +msgid "" +":gh:`159739`: Propagate errors that occur while converting macOS system " +"proxy settings." +msgstr "" + +msgid "IDLE" +msgstr "" + +msgid "" +":gh:`159517`: Fix the completion list and the call tip grabbing the focus on " +"macOS with Tcl/Tk 9.1." +msgstr "" + +msgid "" +":gh:`56596`: Make IDLE keyboard shortcuts with ascii letters work when Caps " +"Lock is on even when only one of the upper and lowercase versions are " +"defined." +msgstr "" + +msgid "" +":gh:`64007`: IDLE no longer applies syntax coloring to the text entered " +"for :func:`input` in the Shell." +msgstr "" + +msgid "" +":gh:`85560`: Fix IDLE failing to find the opening parenthesis when a " +"continuation line inside the parentheses starts with ``else`` of a " +"conditional expression or with ``yield``." +msgstr "" + +msgid "" +":gh:`75487`: Fix saving a truncated number when an integer entry in the IDLE " +"Settings dialog is blanked with the Backspace key." +msgstr "" + +msgid "" +":gh:`74112`: Ctrl-C in the IDLE Shell now interrupts blocking calls such " +"as :func:`time.sleep` and :meth:`socket.recv `." +msgstr "" + +msgid ":gh:`151471`: Colorize the soft keyword ``type`` in IDLE." +msgstr "" + +msgid "" +":gh:`103089`: IDLE no longer hangs when opening a file with very long lines. " +"Only the first 2,000 characters of a line are colorized." +msgstr "" + +msgid "" +":gh:`70331`: IDLE no longer fails to start with ``python -m idlelib``, and " +"its user process no longer fails to start, when the current directory " +"contains user files with the same names as standard library modules that " +"IDLE imports, such as ``random.py`` or ``tkinter.py``." +msgstr "" + +msgid "" +":gh:`93016`: Fix parsing of command line arguments in the IDLE \"Run... " +"Customized\" dialog on Windows: backslashes are no longer treated as escape " +"characters. Fix also display of the previous arguments in the dialog." +msgstr "" + +msgid "" +":gh:`69365`: The IDLE search dialogs now show a regular expression error " +"below the entry instead of in a message box." +msgstr "" + +msgid "" +":gh:`105689`: Fix calltips, parenthesis matching and auto-indent in the IDLE " +"Shell after output containing unbalanced quotes or parentheses." +msgstr "" + +msgid "" +":gh:`60402`: In IDLE, Tab in a string that is not the start of a file name " +"inserts a tab instead of opening the completion list." +msgstr "" + +msgid "" +":gh:`68453`: Fix running IDLE with the -s option together with -c, -r or -: " +"the command or script now runs after the startup file, without an error " +"dialog and without restarting the shell." +msgstr "" + +msgid "" +":gh:`69919`: IDLE now reports any exception raised by compiling the source, " +"such as :exc:`MemoryError` for too deeply nested source, instead of hanging " +"the Shell." +msgstr "" + +msgid "" +":gh:`91398`: Remove the border around the IDLE Shell sidebar, which was " +"drawn in the window background color and stood out with dark themes." +msgstr "" + +msgid "" +":gh:`71136`: Fix a hang of the IDLE Shell when code run under the debugger " +"raises :exc:`KeyboardInterrupt`." +msgstr "" + +msgid "" +":gh:`154511`: Consolidate IDLE's mouse wheel handling in ``idlelib.util``. " +"``wheel_event`` moves there from ``idlelib.tree`` and joins ``x11_buttons``, " +"which tells whether Tk reports wheel rotations to a widget as ````/" +"```` events, and ``bind_wheel``, which binds whichever events Tk " +"sends." +msgstr "" + +msgid "" +":gh:`156896`: Stop deleting tkinter submodules when idlelib.run is imported." +msgstr "" + +msgid "" +":gh:`153480`: Fix IDLE failing to start when opening a file which does not " +"exist yet. Fix a traceback when a file open in the IDLE editor is deleted by " +"another program; IDLE now asks whether to close the window, save the file " +"elsewhere, or ignore it." +msgstr "" + +msgid "" +":gh:`66172`: IDLE no longer fails to start when a user configuration file is " +"corrupt. The unparsable file is renamed with a \".bad\" suffix, default " +"settings are used instead, and a warning lists the affected files." +msgstr "" + +msgid "" +":gh:`90304`: Prevent IDLE from failing to start when a font reports a zero " +"width for the ``'0'`` character. Such a broken font caused " +"a :exc:`ZeroDivisionError`; the editor now falls back to the configured " +"width." +msgstr "" + +msgid "" +":gh:`135511`: Fix display of :exc:`NameError` and :exc:`AttributeError` with " +"multi-line message." +msgstr "" + msgid "Tools/Demos" msgstr "" msgid "" -":gh:`154059`: Fix the time units in Tachyon flame graph tooltips by " -"accounting for the sampling interval when converting samples to milliseconds." +":gh:`158451`: ``python-gdb.py`` is now able to format an invalid Unicode " +"string: render invalid characters as ``\\Uhhhhhhhh`` instead of raising an " +"exception. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`156219`: Fix Argument Clinic generating code which reads an optional " +"positional argument which was not passed, if the function has a ``**kwds`` " +"parameter." +msgstr "" + +msgid "" +":gh:`113318`: Fix Argument Clinic for ``@getter`` and ``@setter`` in a " +"preprocessor conditional block. It failed with an internal error. Argument " +"Clinic now also rejects the accessors of the same attribute with different C " +"basenames, and the same accessor defined twice, which silently generated " +"invalid or duplicated entries of :c:type:`PyGetSetDef`." +msgstr "" + +msgid "" +":gh:`155218`: Fix Argument Clinic generating the flags of the optional " +"groups in different order on 32-bit and 64-bit platforms." +msgstr "" + +msgid "" +":gh:`155207`: Argument Clinic now supports the ``--dry-run`` and ``--diff`` " +"options. They list the files which would be changed, or write a unified diff " +"of the changes to the standard output, without modifying any file." +msgstr "" + +msgid "" +":gh:`64502`: Fix Argument Clinic support of parameters with a default value " +"used together with optional groups. Such parameters were always required in " +"the generated parsing code." +msgstr "" + +msgid "" +":gh:`159739`: Fix a crash in :c:func:`_PyTuple_Resize` when resizing a non-" +"empty tuple to a negative or too large size. It now " +"raises :exc:`SystemError` or :exc:`MemoryError` respectively." +msgstr "" + +msgid "" +":gh:`159739`: :c:func:`PyInitConfig_SetStr` now releases a previously " +"configured value and preserves it if conversion of the replacement fails." +msgstr "" + +msgid "" +":gh:`159739`: Fix a reference leak when :c:func:`_PyTuple_Resize` fails." +msgstr "" + +msgid "" +":gh:`149044`: Fix the :c:macro:`PySlot_END` macro for C++: initialize all " +"members to avoid compiler warnings. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`158810`: Fix :c:macro:`Py_ARRAY_LENGTH()` macro on C++: do not use " +"``__builtin_types_compatible_p()`` on C++. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`158451`: Fix :c:func:`!_PyUnicodeWriter_WriteLatin1String` when the " +"writer buffer kind is UCS-2 or UCS-4. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`157649`: Fix :c:macro:`Py_CLEAR` and :c:macro:`Py_SETREF` macros on C+" +"+: implement them using ``auto`` instead of ``decltype()``. Using " +"``decltype()`` produced invalid code when clearing/setting an array item. " +"Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`142217`: Add tests on the undocumented and deprecated " +"``_Py_Identifier`` C API. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`157384`: :c:func:`PyImport_CreateModuleFromInitfunc` now sets the " +"package context while calling *initfunc*, so that a single-phase init " +"submodule created with only the last component of its name gets the full " +"name from the spec." +msgstr "" + +msgid "" +":gh:`157242`: Fix :c:func:`PyBytesWriter_Resize` to handle properly memory " +"allocation failure. Leave the writer unchanged on error, instead of leaving " +"it in an inconsistent state. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`156101`: Don't set the result in error " +"in :c:func:`PyLong_AsInt32`, :c:func:`PyLong_AsUInt32`, :c:func:`PyLong_AsInt64` " +"and :c:func:`PyLong_AsUInt64`. Leave the result unchanged in this case. " +"Patch by Victor Stinner." +msgstr "" + +msgid "Python 3.15.0 final" +msgstr "" + +msgid "*Release date: 2026-10-09*" +msgstr "" + +msgid "There were no new changes in version 3.15.0." +msgstr "" + +msgid "Python 3.15.0 release candidate 3" +msgstr "" + +msgid "*Release date: 2026-10-02*" +msgstr "" + +msgid "" +":gh:`158446`: Fix a crash or incorrect output that could occur when " +"formatting a :class:`float` or :class:`complex` with a precision close to " +"the platform's ``INT_MAX``. :c:func:`PyOS_double_to_string` now " +"raises :exc:`ValueError` for any precision of that magnitude, regardless of " +"presentation type or value, as the format string parsers already did for " +"precisions above ``INT_MAX``." +msgstr "" + +msgid "" +":gh:`156793`: :mod:`asyncio`: :meth:`loop.start_tls() " +"` and :meth:`loop.create_connection() " +"` now validate the *server_hostname* " +"argument if an :class:`ssl.SSLContext` is passed with *check_hostname* set " +"to ``True``." +msgstr "" + +msgid "" +":gh:`156793`: :meth:`ssl.SSLContext.wrap_bio` now validates its " +"*server_side*, *server_hostname* and *session* arguments similar " +"to :meth:`ssl.SSLContext.wrap_socket`." +msgstr "" + +msgid "" +"In particular, a context with :attr:`~ssl.SSLContext.check_hostname` enabled " +"and no *server_hostname* passed to :meth:`!wrap_bio` now " +"raises :exc:`ValueError` instead of completing a handshake that verified the " +"certificate chain without verifying the peer's identity, with no indication " +"that the check had been skipped." +msgstr "" + +msgid "" +":gh:`157265`: In :mod:`tarfile`, when extracting a link falls back to " +"extracting a member of the archive, skip the member when the filter function " +"returns None when called with the extracted member's name replaced with the " +"link's." +msgstr "" + +msgid "" +":gh:`157953`: Update bundled `libexpat `_ to " +"version 2.8.5." +msgstr "" + +msgid "" +":gh:`157579`: Fix a race condition in the cleanup " +"of :class:`tempfile.TemporaryDirectory`. When working around file system " +"permission errors, files are now removed relative to open directory file " +"descriptors instead of resolving their path again, so that replacing a " +"directory of the tree with a symbolic link can no longer make the cleanup " +"delete files outside of the temporary directory. This " +"addresses :cve:`2026-12345`." +msgstr "" + +msgid "" +":gh:`156293`: Fix a crash in :mod:`ssl` when " +"an :attr:`~ssl.SSLContext.sni_callback` switches a connection to " +"another :class:`~ssl.SSLContext` and the context that carries the callback " +"is no longer referenced by the application. Servers that keep their " +"``sni_callback`` context alive (the usual case when it wraps the listening " +"socket or is stored on the server object) were not affected. This " +"addresses :cve:`2026-19445`." +msgstr "" + +msgid "" +":gh:`158140`: Resolve lazily imported sibling submodules independently, so " +"accessing one does not import another merely because its declaration came " +"last." +msgstr "" + +msgid "" +":gh:`158364`: Fix crash when :func:`sys._current_frames` " +"or :func:`sys._current_exceptions` is called while another interpreter is " +"running." +msgstr "" + +msgid "" +":gh:`158254`: Reverse iterators over a :class:`dict` and its views now " +"raise :exc:`RuntimeError` if the dictionary's keys change during iteration, " +"like forward iterators, instead of yielding entries for the new keys." +msgstr "" + +msgid "" +":gh:`157914`: Revert :gh:`146064`. The linked PyMutex change was causing a " +"significant performance regression in some cases." +msgstr "" + +msgid "" +":gh:`157838`: Merge biased reference counts on behalf of threads that are " +"detached instead of waiting for them to attach again, in the free-threaded " +"build." +msgstr "" + +msgid "" +":gh:`157778`: Include the line number of the opening brace in " +"the :exc:`SyntaxError` for an unclosed f-string or t-string replacement " +"field when a matching quote on a later line is interpreted as the start of " +"an unterminated string." +msgstr "" + +msgid "" +":gh:`157757`: Fix a lazy ``import a.b as c`` reading ``b`` off ``a`` instead " +"of importing the module ``a.b``. It now binds the submodule, and " +"raises :exc:`ModuleNotFoundError` when no module backs the name." +msgstr "" + +msgid "" +":gh:`155695`: Resolved names are now removed from :data:`sys.lazy_modules` " +"more consistently: a lazy import of an already loaded module is no longer " +"recorded, and reifying ``lazy from pkg import attr`` now discards the " +"``pkg.attr`` entry." +msgstr "" + +msgid "" +":gh:`157378`: Fix ``SyntaxError.offset`` and ``SyntaxError.end_offset`` for " +"the \"Non-UTF-8 code starting with ...\" error when a non-ASCII character " +"precedes the invalid byte on the same line. Patch by Shamil Abdulaev." +msgstr "" + +msgid "" +":gh:`156762`: Fix undefined behaviour in :class:`operator.methodcaller`: " +"its :c:member:`~PyTypeObject.tp_clear` slot function returned ``void`` " +"instead of ``int``, so the garbage collector called it through an " +"incompatible function type. Patched by Shamil Abdulaev." msgstr "" -msgid "Security" +msgid "" +":gh:`157377`: Fix :func:`gc.get_count` on the free-threaded build resetting " +"the thread-local allocation counter that schedules automatic garbage " +"collection. A thread that called it while allocating could prevent cyclic " +"garbage from ever being collected." msgstr "" msgid "" -":gh:`155558`: Update bundled `libexpat `_ to " -"version 2.8.3 for the fix to :cve:`2026-72522`." +":gh:`157247`: Fix :func:`sys.activate_stack_trampoline` allowing activation " +"from a subinterpreter while the JIT is enabled in the main interpreter." msgstr "" -msgid "Library" +msgid "" +":gh:`156995`: Fix :class:`bytearray` sharing its buffer with the single-" +"byte :class:`bytes` object of the same value, so that writing to the " +"bytearray modified that :class:`bytes` object. This happened " +"with :meth:`bytearray.take_bytes` when exactly one byte remained, and on the " +"free-threaded build when a bytearray was shrunk to one byte from another " +"thread." +msgstr "" + +msgid "" +":gh:`156910`: Fix a deadlock in the :term:`free threaded ` " +"build when setting ``__abstractmethods__`` on a type while another thread " +"holds the type lock." +msgstr "" + +msgid "" +":gh:`156894`: Fix the position of syntax errors which cover a range if the " +"line contains non-ASCII characters before the error." +msgstr "" + +msgid "" +":gh:`155525`: Fix quadratic-time tokenization of modules containing many f-" +"strings or t-strings." +msgstr "" + +msgid "" +":gh:`156689`: Fix an out-of-bounds read in :func:`compile` " +"and :func:`ast.parse` when an AST object is passed with ``mode='func_type'``." +msgstr "" + +msgid "" +":gh:`156114`: Fix a crash in the perf trampoline when a code object has a " +"name or filename that cannot be encoded to UTF-8. Patched by Shamil Abdulaev." +msgstr "" + +msgid "" +":gh:`156126`: Fix a crash when importing a module whose name contains " +"characters that cannot be encoded to UTF-8 (such as lone surrogates) " +"while :option:`-X importtime <-X>` is enabled." +msgstr "" + +msgid "" +":gh:`155526`: Fix spurious :exc:`OverflowError` for ``abs(nanj)`` in " +"case :c:data:`errno` was previously set to :c:macro:`!ERANGE` by some " +"library call. Patch by Sergey B Kirpichev." +msgstr "" + +msgid "" +":gh:`151464`: Exclude invalid token ``<>`` from :mod:`tokenize` " +"output. :exc:`SyntaxError` for ``<>`` now suggests ``!=``." +msgstr "" + +msgid "" +":gh:`154719`: Trailing whitespace in a t-string interpolation expression is " +"now preserved in :attr:`string.templatelib.Interpolation.expression`, up to " +"the closing ``}`` or the conversion (``!``), format (``:``), or debug " +"(``=``) delimiter. Explicit line continuations following a debug ``=`` " +"remain part of the debug text and are excluded " +"from :attr:`~string.templatelib.Interpolation.expression`." +msgstr "" + +msgid "" +":gh:`152708`: Fix AST generation asymmetry where unary positive ``+`` was " +"implicitly dropped in pattern match expressions, restoring parsing parity " +"with unary negative ``-``." +msgstr "" + +msgid "" +":gh:`157788`: Fix ``python -m asyncio ps`` failing on a process that has a " +"task with a name longer than 255 characters." +msgstr "" + +msgid "" +":gh:`157660`: Fix :mod:`profiling.sampling` reporting errors or incorrect " +"line numbers in free-threaded builds when a thread-local bytecode array " +"grows or gains entries after being cached." +msgstr "" + +msgid "" +":gh:`157639`: Fix a crash in :mod:`!cProfile` when an external timer re-" +"enters the profiler. Profiling events raised while the external timer runs " +"are now ignored." +msgstr "" + +msgid "" +":gh:`157335`: Fix out-of-bounds write in ``mmap.mmap.__setitem__`` that " +"could occur when converting the index or the assigned value " +"(via :meth:`~object.__index__` for a single item, or via the buffer protocol " +"for a slice) resized or closed the mmap object during the assignment." +msgstr "" + +msgid "" +":gh:`128509`: :func:`marshal.load` and :func:`marshal.loads` can now get 1-" +"byte string singletons. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`157301`: Fix :class:`asyncio.Task` hanging the event loop when an eager " +"start fails to enter the task's context." +msgstr "" + +msgid "" +":gh:`157213`: Fix :func:`asyncio.gather` leaving stale await-graph edges on " +"children that outlive it." +msgstr "" + +msgid "" +":gh:`156002`: :mod:`zipfile` again reads members through a third-party " +"decompressor installed by monkey-patching the private " +"``_get_decompressor()`` to return an object that only implements old " +"BZ2Decompressor API from Python 3.3. Note that decompressors without " +"``needs_input`` and two-argument ``decompress()`` are vulnerable " +"to :cve:`2026-15310`." +msgstr "" + +msgid "" +":gh:`157159`: The usage message printed by ``python -m tabnanny`` when no " +"arguments are given now suggests ``python -m`` instead of the source file." +msgstr "" + +msgid "" +":gh:`157058`: :func:`asyncio.wait_for` with a non-positive timeout now " +"records the waiter in the call graph." +msgstr "" + +msgid "" +":gh:`156933`: Fix incorrect integer return values from :mod:`ctypes` " +"callbacks on some platforms, such as s390x." +msgstr "" + +msgid "" +":gh:`156988`: :func:`asyncio.print_call_graph` no longer truncates the call " +"stack at a synchronous generator." +msgstr "" + +msgid "" +":gh:`156970`: Set the docstring of :attr:`unittest.mock.Mock.return_value`." +msgstr "" + +msgid "" +":gh:`156924`: :meth:`annotationlib.ForwardRef.evaluate` now " +"resolves :ref:`lazy import ` proxies found in the namespace. " +"With :attr:`~annotationlib.Format.FORWARDREF`, a lazy import that fails to " +"resolve now results in a :class:`~annotationlib.ForwardRef` instead of " +"the :class:`lazy import proxy `, and " +"with :attr:`~annotationlib.Format.VALUE` the underlying exception is " +"propagated." +msgstr "" + +msgid "" +":gh:`127057`: Fix :class:`asyncio.ProactorEventLoop` UDP transports so that " +"a :exc:`ConnectionResetError` raised by ``WSARecvFrom`` no longer stops the " +"read loop." +msgstr "" + +msgid "" +":gh:`156512`: Fix :mod:`asyncio` losing a connection twice when " +"``resume_writing()`` closes the transport." +msgstr "" + +msgid "" +":gh:`155596`: Fix :func:`pprint.pprint` and :func:`pprint.pformat` with " +"``expand=True`` not honouring *width* for nested values. The width of the " +"``'key':`` prefix was not counted when deciding whether a value fitted on " +"the current line, so values under long keys could overflow *width* instead " +"of being expanded." +msgstr "" + +msgid "" +":gh:`155433`: Fix :class:`asyncio.TaskGroup` losing outside cancellation " +"after ``cancel()``." +msgstr "" + +msgid "" +":gh:`155418`: Fix :class:`asyncio.TaskGroup` hang when a task created " +"by :func:`asyncio.eager_task_factory` cancels the group before suspending." +msgstr "" + +msgid "" +":gh:`155143`: Fix :func:`asyncio.shield` leaking the calling task via the " +"await-graph and callbacks when called on a future that never resolves." +msgstr "" + +msgid "" +":gh:`154470`: Fixed a spurious ``^J`` printed at the end of every source " +"line by the ``list`` command of :mod:`pdb` when the output is colorized (for " +"example when attaching to a running process). The source line is now " +"stripped before it is colorized, like the ``where`` command already did." +msgstr "" + +msgid "" +":gh:`154335`: The :mod:`profiling.sampling` profiler now respects " +"``NO_COLOR``, ``FORCE_COLOR``, and ``PYTHON_COLORS`` and avoids colored " +"output when not writing to a terminal." +msgstr "" + +msgid "" +":gh:`154090`: Record the profiling mode in Tachyon binary profiles and " +"reject differential comparisons whose known modes do not match." +msgstr "" + +msgid "" +":gh:`152907`: Restore cooked-mode terminal output flags " +"around :c:data:`PyOS_InputHook` callbacks in the new :term:`REPL` (:mod:`!" +"_pyrepl`), so that output written by an input hook (for example a GUI " +"toolkit event loop) is no longer emitted with ``OPOST`` disabled and keeps " +"its carriage returns." +msgstr "" + +msgid "" +":gh:`151179`: Fix a pidfd leak in ``_PidfdChildWatcher`` on Linux: the " +"watcher no longer leaks the process file descriptor when ``waitpid()`` fails " +"with an error other than :exc:`ChildProcessError`." +msgstr "" + +msgid "" +":gh:`57491`: Reduce the depth of the table of contents in the EPUB " +"documentation from three levels to two, making it much shorter and easier to " +"navigate in e-book readers." +msgstr "" + +msgid "" +":gh:`158051`: The iOS testbed has been updated for compatibilty with Xcode " +"27." +msgstr "" + +msgid "" +":gh:`158010`: Update Android and iOS build scripts to use OpenSSL 3.5.9." +msgstr "" + +msgid "" +":gh:`157549`: Use ``sysconf(_SC_PAGESIZE)`` instead of ``getpagesize()`` in " +"``remote_debug.h`` so ``_remote_debugging`` builds on Darwin with ``-" +"Werror=implicit-function-declaration``." +msgstr "" + +msgid "" +":gh:`152023`: Update Android builds to SQLite 3.53.4. Additionally, enable " +"the ``median()`` and ``percentile()`` functions." +msgstr "" + +msgid ":gh:`158010`: Updated Windows builds to use OpenSSL 3.5.9." +msgstr "" + +msgid "" +":gh:`157368`: Fix truncated :data:`sys.version` in the case of clang-cl " +"versions 22 or newer on Windows. Also fixes the Windows on Arm case, where " +"the Microsoft compiler was reported instead of clang. Patch by Chris Eibl." +msgstr "" + +msgid "" +":gh:`157212`: Fix ``_Py_ThreadId()`` compilation on Windows ARM64 with MinGW " +"toolchains, where ``__getReg()`` is unavailable. The TEB address is now read " +"directly from ``x18``. Patch by Christian Aurich." +msgstr "" + +msgid "" +":gh:`152023`: Update Windows builds to SQLite 3.53.4. Additionally, enable " +"the ``median()`` and ``percentile()`` functions." +msgstr "" + +msgid ":gh:`158010`: Update macOS installer to use OpenSSL 3.5.9." +msgstr "" + +msgid ":gh:`152023`: Update macOS installer builds to SQLite 3.53.4." +msgstr "" + +msgid "" +":gh:`158067`: Fix the IDLE File Open dialog listing text files before Python " +"files when opened from the Shell or an Output window." +msgstr "" + +msgid "" +":gh:`75512`: Output from a thread printed in the IDLE Shell while a " +"statement is being entered no longer takes over the prompt of the statement." +msgstr "" + +msgid "" +":gh:`89544`: Fix IDLE hanging after Restart Shell while receiving a large " +"output from the user process." +msgstr "" + +msgid "" +":gh:`59568`: Fix \"Save As\" and \"Open\" dialogs in IDLE for a file whose " +"name starts with ``~`` on Windows and X11 with Tcl/Tk older than 9." +msgstr "" + +msgid "" +":gh:`69004`: The Debugger item of the IDLE Debug menu is now disabled while " +"user code runs, like Stack Viewer." +msgstr "" + +msgid "" +":gh:`93966`: The highlighting of a syntax error in the IDLE Shell is now " +"removed when the next statement is entered, not only when the next syntax " +"error occurs." +msgstr "" + +msgid "" +":gh:`75234`: Fix editing help sources and key bindings in the IDLE Settings " +"dialog after selecting them with the keyboard." +msgstr "" + +msgid "" +":gh:`55646`: Fix IDLE crash at startup when the user configuration contains " +"an invalid key binding, such as ```` instead of ````. The invalid binding is now ignored with a warning." +msgstr "" + +msgid "" +":gh:`156939`: Fix :c:func:`PyBytesWriter_FinishWithSize` to return an empty " +"bytearray when :c:func:`!_PyBytesWriter_CreateByteArray` is used, instead of " +"returning an empty bytes string. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`156939`: Fix :c:func:`PyBytesWriter_Format` error handling: restore the " +"writer to its previous state on error. Patch by Victor Stinner." +msgstr "" + +msgid "" +":gh:`140550`: Fix the :c:macro:`PyABIInfo_VAR` macro: remove redundant " +"``;``. Before, ``PyABIInfo_VAR(abi_info);`` code added two ``;;`` which is " +"illegal in C++03. Patch by Victor Stinner." +msgstr "" + +msgid "Python 3.15.0 release candidate 2" +msgstr "" + +msgid "*Release date: 2026-09-01*" +msgstr "" + +msgid "" +":gh:`156723`: Update bundled `libexpat `_ to " +"version 2.8.4." +msgstr "" + +msgid "" +":gh:`156002`: Bound the amount of data :mod:`zipfile` decompresses per read " +"for members compressed with bzip2, LZMA, or Zstandard, matching the existing " +"limit for deflate. A small archive member could previously expand into an " +"unbounded allocation even when read in small chunks." +msgstr "" + +msgid "" +":gh:`155999`: Fix the :mod:`tarfile` ``tar`` and ``data`` extraction filters " +"creating directories outside the destination for members whose name leaves " +"the destination and returns to it, such as ``../evil/../dest/sub/file``. The " +"containment check used the resolved path, but intermediate directories were " +"created from the name as given." +msgstr "" + +msgid "" +":gh:`155292`: Change the :mod:`stringprep` module and :mod:`encodings.idna` " +"codec to not consider Unicode codepoint attributes beyond those defined " +"in :rfc:`3454`." +msgstr "" + +msgid "" +":gh:`155694`: Fix :cve:`2026-15806` by " +"scoping :class:`~urllib.request.HTTPPasswordMgr` credentials to the URL " +"scheme, preventing credentials stored for an HTTPS URL from being used for a " +"matching HTTP URL, while URIs without a scheme continue to match any scheme." +msgstr "" + +msgid "" +":gh:`155725`: :mod:`tracemalloc` no longer acquires the :term:`GIL` nor " +"creates a temporary thread state to trace memory allocations: traceback " +"frames now store plain UTF-8 strings instead of Python str objects, and " +"tracebacks are captured using the Python thread state already associated " +"with the calling thread, even if it is not attached. Threads without a " +"Python thread state record the traceback as ````." +msgstr "" + +msgid "" +":gh:`148750`: :mod:`encodings` is no longer frozen, due to issues importing " +"submodules when using a zipped standard library." +msgstr "" + +msgid "" +":gh:`155254`: Avoid warning about missing standard library when " +"using :ref:`sys-path-init-_pth-files`." +msgstr "" + +msgid "" +":gh:`155978`: Fix a memory leak in the free-threaded build when setting or " +"deleting a special method (such as ``__repr__``) on a class that has many " +"subclasses." +msgstr "" + +msgid "" +":gh:`155752`: Fix a crash when a :class:`types.GenericAlias` argument gains " +"a ``__typing_subst__`` hook after the alias parameters have been cached." +msgstr "" + +msgid "" +":gh:`129752`: Don't update adaptive counters in the free-threaded build when " +"thread-local bytecode is disabled (``-X tlbc=0``). Patch by Donghee Na." +msgstr "" + +msgid "" +":gh:`155515`: Track the internal HAMT iterators, which back iteration over " +"a :class:`contextvars.Context`, with the garbage collector. A reference " +"cycle running through such an iterator was never collected, leaking the " +"whole context it iterated over." +msgstr "" + +msgid "" +":gh:`155400`: Fix a deadlock in the free-threaded build between two threads " +"assigning to a special method of the same class. While applying the type " +"slot updates with the world stopped, only the type lock was prevented from " +"being released; the type dict mutex could still be released and re-acquired, " +"in the wrong order, if the thread blocked on the stop-the-world mutex." +msgstr "" + +msgid "" +":gh:`155363`: Fix a leak in the :term:`free-threaded build` when creating a " +"thread state fails after an internal QSBR slot has been reserved for it. The " +"slot could never be reclaimed, so the QSBR array grew without bound across " +"repeated failures." +msgstr "" + +msgid "" +":gh:`154701`: Fix an infinite loop in JIT when a ``FOR_ITER`` side exit " +"links an executor back to itself." +msgstr "" + +msgid "" +":gh:`154196`: Improve :exc:`AttributeError` messages from unresolved lazy " +"imports. Patch by Bartosz Sławecki." +msgstr "" + +msgid "" +":gh:`151377`: Fix races in free-threaded builds when updating type slots for " +"newly created classes and when removing entries from a base type's " +"subclasses dictionary." +msgstr "" + +msgid "" +":gh:`148817`: Fold large constant list and set literals used as the iterable " +"of a :keyword:`for` loop or ``in``/``not in`` test into a " +"constant :class:`tuple` or :class:`frozenset`, restoring an optimization " +"previously done by the AST optimizer that was lost when constant folding " +"moved to the CFG." +msgstr "" + +msgid "" +":gh:`85260`: :func:`compile` now raises :exc:`ValueError` instead of " +"crashing on a debug build if an identifier field of an AST node (such as the " +"name of a function, a class, an imported module or a caught exception) is " +"``\"None\"``, ``\"True\"`` or ``\"False\"``." +msgstr "" + +msgid "" +":gh:`156523`: Fix :func:`asyncio.as_completed` not recording the awaiting " +"task in the call graph." +msgstr "" + +msgid "" +":gh:`156408`: Fix :func:`asyncio.print_call_graph` " +"raising :exc:`AttributeError` when called on a task that has already " +"finished." +msgstr "" + +msgid "" +":gh:`156404`: Restore compatibility with :file:`.pth` files generated before " +"Python 3.15 in the :mod:`site` module. Inject the ``fullname`` variable in " +"the frame which executes pth code." +msgstr "" + +msgid "" +":gh:`156353`: Fix :mod:`configparser` parsing when using whitespace in " +"*delimiters*." +msgstr "" + +msgid "" +":gh:`156112`: :mod:`!_ios_support` no longer fails to import " +"when :func:`ctypes.util.find_library` cannot resolve the ObjC runtime " +"through the dyld shared cache, as is the case on iOS 13. The runtime is now " +"loaded by name, which dyld resolves against the cache directly." +msgstr "" + +msgid "" +":gh:`155974`: Fix a regression in Python " +"3.15: :meth:`~curses.window.addstr`, :meth:`~curses.window.addnstr`, :meth:`~curses.window.insstr` " +"and :meth:`~curses.window.insnstr` again restore the window attributes when " +"the write fails, instead of leaving the temporary *attr* applied." +msgstr "" + +msgid "" +":gh:`155952`: Fix the signatures " +"of :meth:`sqlite3.Connection.execute`, :func:`warnings.warn` " +"and :func:`locale.setlocale` which rendered ```` instead of " +"the correct defaults for parameters." +msgstr "" + +msgid "" +":gh:`155888`: Fix :meth:`asyncio.WriteTransport.writelines` hanging the " +"transport when the last data chunk is empty." +msgstr "" + +msgid "" +":gh:`155869`: Fix :meth:`!reorganize` in :mod:`dbm.dumb` failing to persist " +"updated value offsets, which could cause data loss after reopening the " +"database." +msgstr "" + +msgid "" +":gh:`155781`: Fix a possible crash in free-threaded builds when " +"the :mod:`sqlite3` converter registry is modified concurrently while a " +"cursor builds its row cast map." +msgstr "" + +msgid "" +":gh:`155702`: Fix :class:`sqlite3.Blob` slice assignment with a step. It " +"patched the bytes object read from the blob, which for a single byte is an " +"immortal singleton, so that the value of that byte was changed in the whole " +"process." +msgstr "" + +msgid "" +":gh:`155468`: Fix :mod:`netrc` to distinguish empty quoted tokens from end-" +"of-file, so malformed files no longer cause the remaining content to be " +"silently ignored." +msgstr "" + +msgid "" +":gh:`155519`: Avoid a data-race in free-threaded builds when reading and " +"writing context variables from different threads." msgstr "" msgid "" @@ -61,10 +2901,10 @@ msgid "" msgstr "" msgid "" -":gh:`153711`: On macOS, add run-time checks around the syscalls :manpage:" -"`pipe2 (2)` and :manpage:`dup3 (2)`, in addition to the existing build-time " -"checks. This means that Python built on macOS 27 (where these calls are " -"available) can run on macOS 26 (where they aren't)." +":gh:`153711`: On macOS, add run-time checks around the " +"syscalls :manpage:`pipe2 (2)` and :manpage:`dup3 (2)`, in addition to the " +"existing build-time checks. This means that Python built on macOS 27 (where " +"these calls are available) can run on macOS 26 (where they aren't)." msgstr "" msgid "" @@ -82,22 +2922,83 @@ msgid "" "after the first to be scrambled." msgstr "" +msgid "" +":gh:`154467`: Fixed :mod:`pdb` remote attaching (``python -m pdb -p PID``) " +"sending an empty prompt to the client instead of ``(Pdb)`` when the target " +"process has an interactive terminal." +msgstr "" + +msgid "" +":gh:`153772`: :func:`isinstance` checks against :mod:`collections.abc` " +"classes such as :class:`~collections.abc.Mapping` no longer " +"raise :exc:`AttributeError` when the instance has no ``__class__``. The " +"abstract base class machinery now falls back to the object's type in that " +"case, matching the behaviour of the built-in :func:`isinstance`." +msgstr "" + msgid "" ":gh:`154086`: Store per-thread sample counts in Tachyon flamegraphs so " "filtering a thread updates frame widths and totals." msgstr "" +msgid "" +":gh:`154060`: Store measured duration and sampling rate in Tachyon binary " +"profiles so they remain available in replayed flamegraphs." +msgstr "" + +msgid "" +":gh:`154085`: Prevent differential flamegraphs from duplicating self time " +"across line nodes for the same function." +msgstr "" + +msgid "" +":gh:`154088`: Make Tachyon count and render elided stacks consistently in " +"differential flamegraphs." +msgstr "" + +msgid "" +":gh:`154089`: Do not show unavailable sampling efficiency statistics in " +"replayed Tachyon flamegraphs." +msgstr "" + +msgid "" +":gh:`153158`: Remove the erroneous *width* argument of :meth:`!" +"calendar.HTMLCalendar.formatmonthpage`, which could drop the year from the " +"heading." +msgstr "" + msgid "" ":gh:`113329`: Fix :exc:`OSError` being raised when trying to run doctests on " "a class objects in the REPL. Patch by Sten Wessel." msgstr "" -msgid "Core and Builtins" +msgid "" +":gh:`156369`: Update Android and iOS build scripts to use OpenSSL 3.5.8." msgstr "" msgid "" -":gh:`155752`: Fix a crash when a :class:`types.GenericAlias` argument gains " -"a ``__typing_subst__`` hook after the alias parameters have been cached." +":gh:`156115`: iOS simulator builds are now configured with ``-mios-simulator-" +"version-min`` instead of the device's ``-mios-version-min``. The device flag " +"made the linker reject libraries resolved from the simulator SDK, so library " +"detection silently failed." +msgstr "" + +msgid ":gh:`156369`: Updated Windows builds to use OpenSSL 3.5.8." +msgstr "" + +msgid ":gh:`156369`: Update macOS installer to use OpenSSL 3.5.8." +msgstr "" + +msgid "" +":gh:`154059`: Fix the time units in Tachyon flame graph tooltips by " +"accounting for the sampling interval when converting samples to milliseconds." +msgstr "" + +msgid "" +":gh:`131740`: On the free-threaded " +"build, :c:func:`PyUnstable_GC_VisitObjects` now also visits frozen objects " +"(objects moved to the permanent generation by :func:`gc.freeze`), matching " +"the behavior of the default build." msgstr "" msgid "Python 3.15.0 release candidate 1" @@ -107,11 +3008,11 @@ msgid "*Release date: 2026-08-04*" msgstr "" msgid "" -":gh:`152674`: The :class:`xml.etree.ElementTree.Element` methods :meth:`~xml." -"etree.ElementTree.Element.findall`, :meth:`~xml.etree.ElementTree.Element." -"iterfind` and :meth:`~xml.etree.ElementTree.Element.find` avoid quadratic " -"behavior when using XPath index predicates (``[1]``, ``[last()]``, ``[last()-" -"N]``) on XML documents with many same-tag siblings." +":gh:`152674`: The :class:`xml.etree.ElementTree.Element` " +"methods :meth:`~xml.etree.ElementTree.Element.findall`, :meth:`~xml.etree.ElementTree.Element.iterfind` " +"and :meth:`~xml.etree.ElementTree.Element.find` avoid quadratic behavior " +"when using XPath index predicates (``[1]``, ``[last()]``, ``[last()-N]``) on " +"XML documents with many same-tag siblings." msgstr "" msgid "" @@ -142,8 +3043,9 @@ msgid "" msgstr "" msgid "" -":gh:`153809`: Fix interpreter crash while deallocating objects of :class:" -"`asyncio.Task` on free-threaded builds. Contributed by Sergey Miryanov." +":gh:`153809`: Fix interpreter crash while deallocating objects " +"of :class:`asyncio.Task` on free-threaded builds. Contributed by Sergey " +"Miryanov." msgstr "" msgid "" @@ -158,13 +3060,13 @@ msgid "" msgstr "" msgid "" -":gh:`153932`: Fix thread safety issue in the ``__reduce__`` method of :py:" -"class:`enumerate`." +":gh:`153932`: Fix thread safety issue in the ``__reduce__`` method " +"of :py:class:`enumerate`." msgstr "" msgid "" -":gh:`153881`: Fix potential data race when calling :meth:`~object." -"__getstate__` under the :term:`free-threaded build`." +":gh:`153881`: Fix potential data race when " +"calling :meth:`~object.__getstate__` under the :term:`free-threaded build`." msgstr "" msgid "" @@ -204,8 +3106,8 @@ msgid "" msgstr "" msgid "" -":gh:`154892`: Fix a bug in the C accelerator for :mod:`zoneinfo` where :" -"class:`datetime.datetime` subclasses returning ``-1`` for ``hour``, " +":gh:`154892`: Fix a bug in the C accelerator for :mod:`zoneinfo` " +"where :class:`datetime.datetime` subclasses returning ``-1`` for ``hour``, " "``minute``, or ``second`` could incorrectly raise a :exc:`SystemError`." msgstr "" @@ -260,9 +3162,10 @@ msgid "" msgstr "" msgid "" -":gh:`135736`: Fix ::class:`asyncio.TaskGroup` to not wrap a :exc:" -"`GeneratorExit` into a :exc:`BaseExceptionGroup` if it was raised by the " -"body of the task group and none of the tasks in the group raised exceptions." +":gh:`135736`: Fix ::class:`asyncio.TaskGroup` to not wrap " +"a :exc:`GeneratorExit` into a :exc:`BaseExceptionGroup` if it was raised by " +"the body of the task group and none of the tasks in the group raised " +"exceptions." msgstr "" msgid "" @@ -277,10 +3180,11 @@ msgid "" msgstr "" msgid "" -":gh:`154189`: Fixed a potential use-after-free when calling :func:`functools." -"partial`. Now, when invoking a :func:`~functools.partial` object, the stored " -"function, positional arguments, and keyword arguments are preserved for the " -"duration of the call in case of reentrancy." +":gh:`154189`: Fixed a potential use-after-free when " +"calling :func:`functools.partial`. Now, when invoking " +"a :func:`~functools.partial` object, the stored function, positional " +"arguments, and keyword arguments are preserved for the duration of the call " +"in case of reentrancy." msgstr "" msgid "" @@ -292,8 +3196,9 @@ msgid "" msgstr "" msgid "" -":gh:`154460`: Fix :func:`time.strftime` and :meth:`datetime.datetime." -"strftime` returning a wrong ISO 8601 week number (``%V``) on OpenBSD." +":gh:`154460`: Fix :func:`time.strftime` " +"and :meth:`datetime.datetime.strftime` returning a wrong ISO 8601 week " +"number (``%V``) on OpenBSD." msgstr "" msgid "" @@ -356,8 +3261,8 @@ msgid "" msgstr "" msgid "" -":gh:`154227`: Fix :func:`os.posix_openpt` on OpenBSD, where it rejected the :" -"data:`~os.O_CLOEXEC` flag." +":gh:`154227`: Fix :func:`os.posix_openpt` on OpenBSD, where it rejected " +"the :data:`~os.O_CLOEXEC` flag." msgstr "" msgid "" @@ -376,26 +3281,26 @@ msgid "" ":gh:`154836`: Fix :meth:`subprocess.Popen.wait` raising :exc:`TypeError` " "(macOS and other BSDs) or :exc:`OverflowError` (Linux) for very large " "*timeout* values such as ``float('inf')``, a 3.15 regression in the new " -"event-driven wait. Also fix :meth:`select.kqueue.control` masking :exc:" -"`OverflowError` for out-of-range timeouts as :exc:`TypeError`." +"event-driven wait. Also fix :meth:`select.kqueue.control` " +"masking :exc:`OverflowError` for out-of-range timeouts as :exc:`TypeError`." msgstr "" msgid "" ":gh:`154053`: Fix compilation of the :mod:`ssl` module against LibreSSL, " "which does not provide ``SSL_CTX_set1_sigalgs_list()`` and " -"``SSL_CTX_set1_client_sigalgs_list()``. The :meth:`!set_server_sigalgs` and :" -"meth:`!set_client_sigalgs` methods of :class:`ssl.SSLContext` now raise :exc:" -"`NotImplementedError` on LibreSSL." +"``SSL_CTX_set1_client_sigalgs_list()``. The :meth:`!set_server_sigalgs` " +"and :meth:`!set_client_sigalgs` methods of :class:`ssl.SSLContext` now " +"raise :exc:`NotImplementedError` on LibreSSL." msgstr "" msgid "" -":gh:`154001`: Fix :func:`random.binomialvariate` raising :exc:" -"`ZeroDivisionError` when :func:`random.random` returns zero." +":gh:`154001`: Fix :func:`random.binomialvariate` " +"raising :exc:`ZeroDivisionError` when :func:`random.random` returns zero." msgstr "" msgid "" -":gh:`153908`: Fix data race when calling :func:`repr` on :class:`itertools." -"count` under the :term:`free-threaded build`." +":gh:`153908`: Fix data race when calling :func:`repr` " +"on :class:`itertools.count` under the :term:`free-threaded build`." msgstr "" msgid ":gh:`153896`: Deduplicate unhashable args in :data:`typing.Literal`." @@ -410,14 +3315,15 @@ msgstr "" msgid "" ":gh:`153862`: On a wide :mod:`curses` build, :meth:`curses.window.inch` now " -"returns the locale-encoded byte of a non-ASCII character, matching :meth:" -"`~curses.window.instr`, instead of the low byte of its code point." +"returns the locale-encoded byte of a non-ASCII character, " +"matching :meth:`~curses.window.instr`, instead of the low byte of its code " +"point." msgstr "" msgid "" -":gh:`146011`: Fix a heap-use-after-free in the C implementation of :mod:" -"`decimal` when calling :func:`repr` after deleting the :class:`~decimal." -"Context`." +":gh:`146011`: Fix a heap-use-after-free in the C implementation " +"of :mod:`decimal` when calling :func:`repr` after deleting " +"the :class:`~decimal.Context`." msgstr "" msgid "" @@ -426,25 +3332,26 @@ msgid "" msgstr "" msgid "" -":gh:`127049`: Fix a race condition in :mod:`asyncio` on Unix where :meth:" -"`asyncio.subprocess.Process.send_signal`, :meth:`~asyncio.subprocess.Process." -"terminate` or :meth:`~asyncio.subprocess.Process.kill` could signal an " -"unrelated process that was recycled onto the PID of the already-reaped child " -"when ThreadedChildWatcher is used. Patch by Kumar Aditya." +":gh:`127049`: Fix a race condition in :mod:`asyncio` on Unix " +"where :meth:`asyncio.subprocess.Process.send_signal`, :meth:`~asyncio.subprocess.Process.terminate` " +"or :meth:`~asyncio.subprocess.Process.kill` could signal an unrelated " +"process that was recycled onto the PID of the already-reaped child when " +"ThreadedChildWatcher is used. Patch by Kumar Aditya." msgstr "" msgid "" ":gh:`153404`: :class:`urllib.robotparser.RobotFileParser` now silently " "ignores a ``Crawl-delay`` or ``Request-rate`` value written with non-decimal " -"digits (such as ``U+00B2 SUPERSCRIPT TWO``) instead of raising :exc:" -"`ValueError` and aborting the parse of the whole ``robots.txt`` file." +"digits (such as ``U+00B2 SUPERSCRIPT TWO``) instead of " +"raising :exc:`ValueError` and aborting the parse of the whole ``robots.txt`` " +"file." msgstr "" msgid "" -":gh:`153291`: Fix a data race in :func:`readline.get_completer` and :func:" -"`readline.get_pre_input_hook` on the :term:`free-threaded ` " -"build: the getters read the stored hook without the critical section that " -"the corresponding setters hold." +":gh:`153291`: Fix a data race in :func:`readline.get_completer` " +"and :func:`readline.get_pre_input_hook` on the :term:`free-threaded ` build: the getters read the stored hook without the critical " +"section that the corresponding setters hold." msgstr "" msgid "" @@ -458,16 +3365,16 @@ msgid "" msgstr "" msgid "" -":gh:`151955`: Allow more types to be used in the ``bound`` argument to :" -"class:`typing.ParamSpec` and :class:`typing.TypeVarTuple`." +":gh:`151955`: Allow more types to be used in the ``bound`` argument " +"to :class:`typing.ParamSpec` and :class:`typing.TypeVarTuple`." msgstr "" msgid "" -":gh:`119710`: Fix :mod:`asyncio` subprocess :meth:`~asyncio.subprocess." -"Process.wait` hanging when the process has exited but one of its pipes is " -"kept open by an inherited child process (so the pipe never reaches EOF). " -"``wait()`` now returns as soon as the process exits, regardless of the " -"pipes' state." +":gh:`119710`: Fix :mod:`asyncio` " +"subprocess :meth:`~asyncio.subprocess.Process.wait` hanging when the process " +"has exited but one of its pipes is kept open by an inherited child process " +"(so the pipe never reaches EOF). ``wait()`` now returns as soon as the " +"process exits, regardless of the pipes' state." msgstr "" msgid "" @@ -499,17 +3406,11 @@ msgid "" "as the delimiter." msgstr "" -msgid "Documentation" -msgstr "" - msgid "" ":gh:`118150`: Clarify in the :mod:`difflib` documentation what *junk* " "actually does, its drawbacks, and how to control it." msgstr "" -msgid "Tests" -msgstr "" - msgid ":gh:`76595`: Add C API tests for :c:func:`PyCapsule_Import`." msgstr "" @@ -534,9 +3435,6 @@ msgid "" "interpreter subprocess, isolated from the rest of the test run." msgstr "" -msgid "Build" -msgstr "" - msgid "" ":gh:`154070`: Build the :mod:`curses` module against a wide-character " "capable ncurses even when it is not named ``ncursesw`` -- for example the " @@ -547,9 +3445,6 @@ msgstr "" msgid ":gh:`138800`: Fix library name in python3.pc on Android." msgstr "" -msgid "Windows" -msgstr "" - msgid ":gh:`124111`: Updated Windows builds to use Tcl/Tk 9.0.4." msgstr "" @@ -570,9 +3465,6 @@ msgid "" "previous names." msgstr "" -msgid "C API" -msgstr "" - msgid "" ":gh:`122931`: Allow importing stable ABI C extensions that include a " "multiarch tuple in their filename, e.g. ``foo.abi3-x86-64-linux-gnu.so``." @@ -586,8 +3478,9 @@ msgstr "" msgid "" ":gh:`153030`: Fixed quadratic complexity in incremental parsing of long " -"unterminated constructs (such as tags or comments) in :class:`html.parser." -"HTMLParser`, which could be exploited for a denial of service." +"unterminated constructs (such as tags or comments) " +"in :class:`html.parser.HTMLParser`, which could be exploited for a denial of " +"service." msgstr "" msgid "" @@ -608,18 +3501,18 @@ msgstr "" msgid "" ":gh:`151558`: Fixed an vulnerability in the :mod:`tarfile` ``data`` and " "``tar`` extraction filters where crafted archives could create a symlink " -"pointing outside the destination directory. This was a bypass of :cve:" -"`2025-4330`." +"pointing outside the destination directory. This was a bypass " +"of :cve:`2025-4330`." msgstr "" msgid "" ":gh:`150743`: :mod:`http.client` now limits the number of chunked-response " -"trailer lines it will read to :attr:`~http.client.HTTPConnection." -"max_response_headers` (100 by default), and the number of interim (1xx) " -"responses it will skip to 100. A malicious or broken server could " -"previously stream trailer lines or ``100 Continue`` responses forever, " -"hanging the client even when a socket timeout was in use. Reported by " -"``@YLChen-007`` via GHSA-w4q2-g22w-6fr4." +"trailer lines it will read " +"to :attr:`~http.client.HTTPConnection.max_response_headers` (100 by " +"default), and the number of interim (1xx) responses it will skip to 100. A " +"malicious or broken server could previously stream trailer lines or ``100 " +"Continue`` responses forever, hanging the client even when a socket timeout " +"was in use. Reported by ``@YLChen-007`` via GHSA-w4q2-g22w-6fr4." msgstr "" msgid "" @@ -644,16 +3537,17 @@ msgid "" msgstr "" msgid "" -":gh:`152635`: Fix a crash caused when running out of memory creating a :mod:" -"`!_interpchannels` channel. Now a :exc:`MemoryError` is correctly raised." +":gh:`152635`: Fix a crash caused when running out of memory creating " +"a :mod:`!_interpchannels` channel. Now a :exc:`MemoryError` is correctly " +"raised." msgstr "" msgid "" -":gh:`152405`: Do not expose the internal mapping of :class:`types." -"MappingProxyType` when performing rich-compare operations with non-stdlib " -"types. Previously, it was possible to mutate the internal mapping of a proxy " -"there. Now we pass not the original :class:`dict` instance, but its copy, " -"when dealing with custom types." +":gh:`152405`: Do not expose the internal mapping " +"of :class:`types.MappingProxyType` when performing rich-compare operations " +"with non-stdlib types. Previously, it was possible to mutate the internal " +"mapping of a proxy there. Now we pass not the original :class:`dict` " +"instance, but its copy, when dealing with custom types." msgstr "" msgid "" @@ -667,9 +3561,9 @@ msgid "" msgstr "" msgid "" -":gh:`152235`: Defer GC tracking of :meth:`set.intersection`, :meth:`set." -"difference`, :meth:`set.symmetric_difference`, :meth:`set.union` and ``set." -"__sub__``. Patch by Donghee Na." +":gh:`152235`: Defer GC tracking " +"of :meth:`set.intersection`, :meth:`set.difference`, :meth:`set.symmetric_difference`, :meth:`set.union` " +"and ``set.__sub__``. Patch by Donghee Na." msgstr "" msgid "" @@ -683,9 +3577,9 @@ msgid "" msgstr "" msgid "" -":gh:`151722`: :meth:`!frozendict.fromkeys` now only tracks the :class:" -"`frozendict` in the garbage collector once the dictionary is fully " -"initialized. Patch by Donghee Na and Victor Stinner." +":gh:`151722`: :meth:`!frozendict.fromkeys` now only tracks " +"the :class:`frozendict` in the garbage collector once the dictionary is " +"fully initialized. Patch by Donghee Na and Victor Stinner." msgstr "" msgid "" @@ -699,9 +3593,10 @@ msgid "" msgstr "" msgid "" -":gh:`151763`: Fix a potential crash in :func:`compile`, :func:`exec`, :func:" -"`eval` and :func:`ast.parse` when an allocation fails: the parser or " -"compiler could return without setting an exception." +":gh:`151763`: Fix a potential crash " +"in :func:`compile`, :func:`exec`, :func:`eval` and :func:`ast.parse` when an " +"allocation fails: the parser or compiler could return without setting an " +"exception." msgstr "" msgid "" @@ -729,15 +3624,15 @@ msgstr "" msgid "" ":gh:`151126`: Fix a crash when sharing :class:`memoryview` objects between " -"interpreters fails due to running out of memory. It now raises a proper :exc:" -"`MemoryError`." +"interpreters fails due to running out of memory. It now raises a " +"proper :exc:`MemoryError`." msgstr "" msgid "" -":gh:`151644`: Fix a data race in :func:`sys.setdlopenflags` and :func:`sys." -"getdlopenflags` when called concurrently in the free-threaded build. The " -"underlying ``_PyImport_GetDLOpenFlags`` and ``_PyImport_SetDLOpenFlags`` " -"functions now use atomic load/store operations." +":gh:`151644`: Fix a data race in :func:`sys.setdlopenflags` " +"and :func:`sys.getdlopenflags` when called concurrently in the free-threaded " +"build. The underlying ``_PyImport_GetDLOpenFlags`` and " +"``_PyImport_SetDLOpenFlags`` functions now use atomic load/store operations." msgstr "" msgid "" @@ -767,9 +3662,9 @@ msgid "" msgstr "" msgid "" -":gh:`150411`: Fix a data race in the free-threaded build when :func:`gc." -"get_count` reads the young generation allocation count while another thread " -"updates it." +":gh:`150411`: Fix a data race in the free-threaded build " +"when :func:`gc.get_count` reads the young generation allocation count while " +"another thread updates it." msgstr "" msgid "" @@ -778,9 +3673,10 @@ msgid "" msgstr "" msgid "" -":gh:`149162`: Fix a potential deadlock in :c:func:" -"`PyUnicode_InternFromString` and other interning functions in the :term:" -"`free-threaded build` when called from C++ static local initializers." +":gh:`149162`: Fix a potential deadlock " +"in :c:func:`PyUnicode_InternFromString` and other interning functions in " +"the :term:`free-threaded build` when called from C++ static local " +"initializers." msgstr "" msgid ":gh:`148825`: Fix build error if specialization is disabled." @@ -793,9 +3689,9 @@ msgid "" msgstr "" msgid "" -":gh:`153658`: Fix :meth:`sqlite3.Connection.iterdump` raising :exc:`sqlite3." -"OperationalError` when a table name contains a single quote. Patch by " -"tonghuaroot." +":gh:`153658`: Fix :meth:`sqlite3.Connection.iterdump` " +"raising :exc:`sqlite3.OperationalError` when a table name contains a single " +"quote. Patch by tonghuaroot." msgstr "" msgid "" @@ -814,15 +3710,15 @@ msgid "" msgstr "" msgid "" -":gh:`153417`: Error messages from :meth:`imaplib.IMAP4.select` and :meth:" -"`imaplib.IMAP4.uid` no longer raise :exc:`BytesWarning` under :option:`!-bb` " -"when the mailbox or command argument is :class:`bytes`." +":gh:`153417`: Error messages from :meth:`imaplib.IMAP4.select` " +"and :meth:`imaplib.IMAP4.uid` no longer raise :exc:`BytesWarning` " +"under :option:`!-bb` when the mailbox or command argument is :class:`bytes`." msgstr "" msgid "" -":gh:`153406`: :func:`email.utils.parsedate_to_datetime` now raises :exc:" -"`ValueError` instead of :exc:`OverflowError` when the parsed year or " -"timezone offset is out of range, matching its documented behavior." +":gh:`153406`: :func:`email.utils.parsedate_to_datetime` now " +"raises :exc:`ValueError` instead of :exc:`OverflowError` when the parsed " +"year or timezone offset is out of range, matching its documented behavior." msgstr "" msgid "" @@ -854,9 +3750,9 @@ msgid "" msgstr "" msgid "" -":gh:`148286`: Fix undefined behavior in :attr:`compression.zstd." -"ZstdDecompressor.unused_data` when a complete frame was decompressed in a " -"single call." +":gh:`148286`: Fix undefined behavior " +"in :attr:`compression.zstd.ZstdDecompressor.unused_data` when a complete " +"frame was decompressed in a single call." msgstr "" msgid ":gh:`153210`: Fix crash on :mod:`array` import under a memory pressure." @@ -874,15 +3770,15 @@ msgid "" msgstr "" msgid "" -":gh:`153062`: Fix a crash when concurrently iterating an :func:`itertools." -"tee` iterator on the free-threaded build." +":gh:`153062`: Fix a crash when concurrently iterating " +"an :func:`itertools.tee` iterator on the free-threaded build." msgstr "" msgid "" -":gh:`153056`: Fix :class:`string.Template` raising a spurious :exc:" -"`ValueError` when the *pattern* attribute is a compiled regular expression " -"object, which the documentation allows. On the free-threaded build this " -"also occurred as a data race on the first concurrent use." +":gh:`153056`: Fix :class:`string.Template` raising a " +"spurious :exc:`ValueError` when the *pattern* attribute is a compiled " +"regular expression object, which the documentation allows. On the free-" +"threaded build this also occurred as a data race on the first concurrent use." msgstr "" msgid "" @@ -893,9 +3789,9 @@ msgid "" msgstr "" msgid "" -":gh:`153037`: Fix :class:`~compression.zstd.ZstdFile` raising :exc:" -"`AttributeError` instead of :exc:`io.UnsupportedOperation` when iterating " -"over a file that is not open for reading." +":gh:`153037`: Fix :class:`~compression.zstd.ZstdFile` " +"raising :exc:`AttributeError` instead of :exc:`io.UnsupportedOperation` when " +"iterating over a file that is not open for reading." msgstr "" msgid "" @@ -905,8 +3801,8 @@ msgid "" msgstr "" msgid "" -":gh:`152851`: Prevent a crash when allocation fails while copying a :func:" -"`BLAKE-2s/2b ` object. Patch by Bénédikt Tran." +":gh:`152851`: Prevent a crash when allocation fails while copying " +"a :func:`BLAKE-2s/2b ` object. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -919,12 +3815,13 @@ msgstr "" msgid "" ":gh:`119592`: Fix :class:`concurrent.futures.ProcessPoolExecutor` stranding " "submitted work forever when a worker process exited upon reaching its " -"*max_tasks_per_child* limit after :meth:`~concurrent.futures.Executor." -"shutdown` was called with ``wait=False``: a replacement worker is now " -"spawned and the remaining work executed as documented. If the executor has " -"instead been garbage collected without ``shutdown()`` (:gh:`152967`), or a " -"replacement worker cannot be started, the remaining futures now fail with :" -"exc:`~concurrent.futures.process.BrokenProcessPool` instead of never " +"*max_tasks_per_child* limit " +"after :meth:`~concurrent.futures.Executor.shutdown` was called with " +"``wait=False``: a replacement worker is now spawned and the remaining work " +"executed as documented. If the executor has instead been garbage collected " +"without ``shutdown()`` (:gh:`152967`), or a replacement worker cannot be " +"started, the remaining futures now fail " +"with :exc:`~concurrent.futures.process.BrokenProcessPool` instead of never " "resolving. A worker exit racing ``shutdown(wait=False)`` can also no longer " "crash the executor management thread." msgstr "" @@ -953,8 +3850,8 @@ msgid "" msgstr "" msgid "" -":gh:`152849`: Out-of-range float and integer timestamps now raise :exc:" -"`OverflowError` with the same message. Patch by tonghuaroot." +":gh:`152849`: Out-of-range float and integer timestamps now " +"raise :exc:`OverflowError` with the same message. Patch by tonghuaroot." msgstr "" msgid "" @@ -964,26 +3861,26 @@ msgid "" msgstr "" msgid "" -":gh:`152718`: Fix unbounded memory allocation in the :mod:`profiling." -"sampling` binary profile reader when a file declares more string or frame " -"entries than it contains." +":gh:`152718`: Fix unbounded memory allocation in " +"the :mod:`profiling.sampling` binary profile reader when a file declares " +"more string or frame entries than it contains." msgstr "" msgid "" ":gh:`108280`: Connecting :mod:`imaplib` to a server that does not send a " "valid IMAP4 greeting (for example a POP3 server answering on the IMAP port) " -"now raises an error reporting the server's response instead of ``imaplib." -"IMAP4.error: None``." +"now raises an error reporting the server's response instead of " +"``imaplib.IMAP4.error: None``." msgstr "" msgid "" ":gh:`63121`: :mod:`imaplib` now refreshes the cached capability list after a " -"successful :meth:`~imaplib.IMAP4.login` or :meth:`~imaplib.IMAP4." -"authenticate`, using the ``CAPABILITY`` response sent by the server or, if " -"none was sent, by querying it, so that capabilities that become available " -"only after authentication (such as ``ENABLE`` on Gmail) are recognized. " -"Capabilities advertised in the server greeting are now also used, avoiding a " -"redundant ``CAPABILITY`` command." +"successful :meth:`~imaplib.IMAP4.login` " +"or :meth:`~imaplib.IMAP4.authenticate`, using the ``CAPABILITY`` response " +"sent by the server or, if none was sent, by querying it, so that " +"capabilities that become available only after authentication (such as " +"``ENABLE`` on Gmail) are recognized. Capabilities advertised in the server " +"greeting are now also used, avoiding a redundant ``CAPABILITY`` command." msgstr "" msgid "" @@ -994,17 +3891,17 @@ msgid "" msgstr "" msgid "" -":gh:`152502`: Detect the :mod:`curses` mouse interface (:func:`~curses." -"getmouse`, the ``BUTTON*`` constants, and others) with a configure " -"capability probe or library macros instead of gating it on ncurses-specific " -"macros. It is now also available with other curses implementations that " -"provide it, such as NetBSD curses and PDCurses (the latter underpins " +":gh:`152502`: Detect the :mod:`curses` mouse interface " +"(:func:`~curses.getmouse`, the ``BUTTON*`` constants, and others) with a " +"configure capability probe or library macros instead of gating it on ncurses-" +"specific macros. It is now also available with other curses implementations " +"that provide it, such as NetBSD curses and PDCurses (the latter underpins " "``windows-curses``)." msgstr "" msgid "" -":gh:`151842`: Fix a crash in :func:`!_interpreters.capture_exception` when :" -"exc:`MemoryError` happens. Patch by Amrutha Modela." +":gh:`151842`: Fix a crash in :func:`!_interpreters.capture_exception` " +"when :exc:`MemoryError` happens. Patch by Amrutha Modela." msgstr "" msgid "" @@ -1033,10 +3930,10 @@ msgstr "" msgid "" ":gh:`110357`: Importing :mod:`hashlib` no longer logs an error to stderr " "when a normally guaranteed hash algorithm is unavailable in the current " -"runtime (for example under an OpenSSL FIPS configuration or a build using :" -"option:`--without-builtin-hashlib-hashes <--with-builtin-hashlib-hashes>`). " -"Code that actually uses the missing algorithm still gets a clear :exc:" -"`ValueError`." +"runtime (for example under an OpenSSL FIPS configuration or a build " +"using :option:`--without-builtin-hashlib-hashes <--with-builtin-hashlib-" +"hashes>`). Code that actually uses the missing algorithm still gets a " +"clear :exc:`ValueError`." msgstr "" msgid "" @@ -1085,10 +3982,10 @@ msgid "" msgstr "" msgid "" -":gh:`88758`: :meth:`!tkinter.Misc.focus_get`, :meth:`!focus_displayof`, :" -"meth:`!focus_lastfor` and :meth:`!winfo_containing` now return ``None`` " -"instead of raising :exc:`KeyError` when the widget was not created by :mod:" -"`tkinter` (for example a torn-off menu)." +":gh:`88758`: :meth:`!tkinter.Misc.focus_get`, :meth:`!" +"focus_displayof`, :meth:`!focus_lastfor` and :meth:`!winfo_containing` now " +"return ``None`` instead of raising :exc:`KeyError` when the widget was not " +"created by :mod:`tkinter` (for example a torn-off menu)." msgstr "" msgid "" @@ -1151,15 +4048,15 @@ msgid "" msgstr "" msgid "" -":gh:`152157`: The C implementations of :meth:`~datetime.datetime." -"fromisoformat` and :meth:`~datetime.time.fromisoformat` now reject a decimal " -"separator that is not followed by any fractional digit before a timezone " -"designator." +":gh:`152157`: The C implementations " +"of :meth:`~datetime.datetime.fromisoformat` " +"and :meth:`~datetime.time.fromisoformat` now reject a decimal separator that " +"is not followed by any fractional digit before a timezone designator." msgstr "" msgid "" -":gh:`151763`: Fix crash in :func:`!_interpqueues.create` whe :exc:" -"`MemoryError` happens on queue creation." +":gh:`151763`: Fix crash in :func:`!_interpqueues.create` " +"whe :exc:`MemoryError` happens on queue creation." msgstr "" msgid "" @@ -1191,9 +4088,10 @@ msgid "" msgstr "" msgid "" -":gh:`152060`: Fix :meth:`datetime.datetime.fromisoformat` raising :exc:" -"`AssertionError` instead of :exc:`ValueError` for some malformed strings in " -"the pure-Python implementation, matching the C implementation." +":gh:`152060`: Fix :meth:`datetime.datetime.fromisoformat` " +"raising :exc:`AssertionError` instead of :exc:`ValueError` for some " +"malformed strings in the pure-Python implementation, matching the C " +"implementation." msgstr "" msgid "" @@ -1258,19 +4156,15 @@ msgid "" "embedded null, are no longer replaced with a generic :exc:`TypeError`." msgstr "" -msgid "" -":gh:`150994`: Make type annotations in the private ``_colorize`` module " -"resolvable." -msgstr "" - msgid "" ":gh:`150994`: Make the type annotations in the private ``_colorize`` module " "resolvable." msgstr "" msgid "" -":gh:`150583`: Correctly set the default compression level in :mod:" -"`compression.zstd` when passing a digested dictionary during compression." +":gh:`150583`: Correctly set the default compression level " +"in :mod:`compression.zstd` when passing a digested dictionary during " +"compression." msgstr "" msgid "" @@ -1279,15 +4173,16 @@ msgid "" msgstr "" msgid "" -":gh:`149816`: Fix a potential use after free condition in :func:`pickle." -"dumps` in free-threaded mode when serializing lists." +":gh:`149816`: Fix a potential use after free condition " +"in :func:`pickle.dumps` in free-threaded mode when serializing lists." msgstr "" msgid "" ":gh:`47005`: Fix :meth:`!urllib.request.AbstractHTTPHandler.do_open` to give " "regular headers set via :meth:`~urllib.request.Request.add_header` priority " -"over unredirected headers, consistent with :meth:`~urllib.request.Request." -"get_header` and :meth:`~urllib.request.Request.header_items`." +"over unredirected headers, consistent " +"with :meth:`~urllib.request.Request.get_header` " +"and :meth:`~urllib.request.Request.header_items`." msgstr "" msgid "" @@ -1297,11 +4192,12 @@ msgid "" msgstr "" msgid "" -":gh:`115634`: Fix a deadlock in :class:`concurrent.futures." -"ProcessPoolExecutor` when using ``max_tasks_per_child``, present since the " -"feature was introduced in Python 3.11. The executor stopped scheduling " -"queued tasks after a worker process exited upon reaching its task limit. " -"Based on a fix proposed by Tabrez Mohammed." +":gh:`115634`: Fix a deadlock " +"in :class:`concurrent.futures.ProcessPoolExecutor` when using " +"``max_tasks_per_child``, present since the feature was introduced in Python " +"3.11. The executor stopped scheduling queued tasks after a worker process " +"exited upon reaching its task limit. Based on a fix proposed by Tabrez " +"Mohammed." msgstr "" msgid "" @@ -1310,16 +4206,16 @@ msgid "" msgstr "" msgid "" -":gh:`105708`: Accept an uppercase V prefix in IPvFuture addresses in :func:" -"`urllib.parse.urlsplit`." +":gh:`105708`: Accept an uppercase V prefix in IPvFuture addresses " +"in :func:`urllib.parse.urlsplit`." msgstr "" msgid "" -":gh:`151626`: Fix several tests in ``test.test_inspect``, ``test." -"test_import``, ``test.test_importlib``, ``test.test_py_compile`` and ``test." -"test_compileall`` that failed when the test suite was run with :envvar:" -"`PYTHONPYCACHEPREFIX` set. These tests now neutralize the pycache prefix " -"where they assume the default ``__pycache__`` bytecode layout." +":gh:`151626`: Fix several tests in ``test.test_inspect``, " +"``test.test_import``, ``test.test_importlib``, ``test.test_py_compile`` and " +"``test.test_compileall`` that failed when the test suite was run " +"with :envvar:`PYTHONPYCACHEPREFIX` set. These tests now neutralize the " +"pycache prefix where they assume the default ``__pycache__`` bytecode layout." msgstr "" msgid "" @@ -1339,10 +4235,10 @@ msgstr "" msgid "" ":gh:`152870`: Fix a compilation error in the :mod:`decimal` C extension " -"(``_decimal``) when it is built with ``EXTRA_FUNCTIONALITY``. ``Context." -"apply()`` called the internal ``_apply`` helper using its pre-Argument-" -"Clinic signature; the call is now made through the generated ``_impl`` " -"function." +"(``_decimal``) when it is built with ``EXTRA_FUNCTIONALITY``. " +"``Context.apply()`` called the internal ``_apply`` helper using its pre-" +"Argument-Clinic signature; the call is now made through the generated " +"``_impl`` function." msgstr "" msgid "" @@ -1354,8 +4250,8 @@ msgstr "" msgid "" ":gh:`152502`: The :mod:`curses` module now detects ``set_escdelay()``, " -"``set_tabsize()`` and the ``ESCDELAY`` and ``TABSIZE`` variables with :" -"program:`configure` capability probes instead of the ncurses-specific " +"``set_tabsize()`` and the ``ESCDELAY`` and ``TABSIZE`` variables " +"with :program:`configure` capability probes instead of the ncurses-specific " "``NCURSES_EXT_FUNCS`` macro, so they are exposed when building against other " "curses implementations such as NetBSD curses that provide them." msgstr "" @@ -1367,9 +4263,6 @@ msgid "" "cpython test suite." msgstr "" -msgid "macOS" -msgstr "" - msgid ":gh:`124111`: Update macOS installer to use Tcl/Tk 9.0.4." msgstr "" @@ -1378,9 +4271,6 @@ msgid "" "median() and percentile() functions." msgstr "" -msgid "IDLE" -msgstr "" - msgid "" ":gh:`82183`: When the shell is busy running code, using \"Run... " "Customized\" with \"Restart shell\" unchecked now reports that the shell is " @@ -1394,8 +4284,8 @@ msgid "" msgstr "" msgid "" -":gh:`65339`: Saving the IDLE Shell or an Output window now defaults to a ``." -"txt`` extension and lists text files before Python files, since their " +":gh:`65339`: Saving the IDLE Shell or an Output window now defaults to a " +"``.txt`` extension and lists text files before Python files, since their " "content is not Python source." msgstr "" @@ -1454,8 +4344,8 @@ msgstr "" msgid "" ":gh:`153300`: :c:func:`PyConfig_Set()` now also set global configuration " -"variables. For example, ``PyConfig_Set(\"inspect\", value)`` now also sets :" -"c:var:`Py_InspectFlag`. Patch by Victor Stinner." +"variables. For example, ``PyConfig_Set(\"inspect\", value)`` now also " +"sets :c:var:`Py_InspectFlag`. Patch by Victor Stinner." msgstr "" msgid "Python 3.15.0 beta 3" @@ -1478,15 +4368,15 @@ msgid ":gh:`151159`: Update Android and iOS installers to use OpenSSL 3.5.7." msgstr "" msgid "" -":gh:`150599`: Fix a possible stack buffer overflow in :mod:`bz2` when a :" -"class:`bz2.BZ2Decompressor` is reused after a decompression error. The " +":gh:`150599`: Fix a possible stack buffer overflow in :mod:`bz2` when " +"a :class:`bz2.BZ2Decompressor` is reused after a decompression error. The " "decompressor now becomes unusable after libbz2 reports an error." msgstr "" msgid "" -":gh:`149835`: :func:`shutil.move` now resolves symlinks via :func:`os.path." -"realpath` when checking whether the destination is inside the source " -"directory, preventing a symlink-based bypass of that guard." +":gh:`149835`: :func:`shutil.move` now resolves symlinks " +"via :func:`os.path.realpath` when checking whether the destination is inside " +"the source directory, preventing a symlink-based bypass of that guard." msgstr "" msgid "" @@ -1518,8 +4408,8 @@ msgstr "" msgid "" ":gh:`151218`: :c:func:`PyConfig_Set` and :func:`sys.set_int_max_str_digits` " -"now replace :data:`sys.flags` (create a new object), instead of modifying :" -"data:`sys.flags` in-place. Patch by Victor Stinner." +"now replace :data:`sys.flags` (create a new object), instead of " +"modifying :data:`sys.flags` in-place. Patch by Victor Stinner." msgstr "" msgid "" @@ -1599,8 +4489,9 @@ msgid "" msgstr "" msgid "" -":gh:`148613`: Fix a data race in the free-threaded build between :func:`gc." -"set_threshold` and garbage collection scheduling during object allocation." +":gh:`148613`: Fix a data race in the free-threaded build " +"between :func:`gc.set_threshold` and garbage collection scheduling during " +"object allocation." msgstr "" msgid "" @@ -1610,8 +4501,8 @@ msgstr "" msgid "" ":gh:`149805`: Fix a :exc:`SystemError` when compiling a compiling " -"``__classdict__`` class annotation. Found by OSS-Fuzz in :oss-fuzz:" -"`512907042`." +"``__classdict__`` class annotation. Found by OSS-Fuzz in :oss-" +"fuzz:`512907042`." msgstr "" msgid ":gh:`149321`: Do not support ``none`` as a lazy imports mode." @@ -1624,9 +4515,9 @@ msgid "" msgstr "" msgid "" -":gh:`151770`: Fix :meth:`datetime.datetime.fromisoformat` raising :exc:" -"`AssertionError` instead of :exc:`ValueError` for an out-of-range month " -"combined with a ``24:00`` time." +":gh:`151770`: Fix :meth:`datetime.datetime.fromisoformat` " +"raising :exc:`AssertionError` instead of :exc:`ValueError` for an out-of-" +"range month combined with a ``24:00`` time." msgstr "" msgid "" @@ -1636,9 +4527,9 @@ msgstr "" msgid "" ":gh:`151695`: Fix a use-after-free in the :mod:`curses` module. The " -"encoding of the initial screen, used by :func:`curses.unctrl` and :func:" -"`curses.ungetch` to encode non-ASCII characters, is now kept as a private " -"copy instead of a borrowed pointer to a window object that may be " +"encoding of the initial screen, used by :func:`curses.unctrl` " +"and :func:`curses.ungetch` to encode non-ASCII characters, is now kept as a " +"private copy instead of a borrowed pointer to a window object that may be " "deallocated." msgstr "" @@ -1659,8 +4550,9 @@ msgstr "" msgid "" ":gh:`151403`: Fixed a crash in :class:`subprocess.Popen` (and " -"``_posixsubprocess.fork_exec``) when an ``argv`` item's :meth:`~os.PathLike." -"__fspath__` concurrently mutates the ``args`` sequence being converted." +"``_posixsubprocess.fork_exec``) when an ``argv`` " +"item's :meth:`~os.PathLike.__fspath__` concurrently mutates the ``args`` " +"sequence being converted." msgstr "" msgid "" @@ -1677,8 +4569,8 @@ msgid ":gh:`151337`: Avoid possible memory leak in ``tkinter.c`` on Windows." msgstr "" msgid "" -":gh:`151126`: Fix a crash when :exc:`MemoryError` in :func:`!os." -"_path_splitroot` was not set properly." +":gh:`151126`: Fix a crash when :exc:`MemoryError` in :func:`!" +"os._path_splitroot` was not set properly." msgstr "" msgid "" @@ -1688,10 +4580,10 @@ msgid "" msgstr "" msgid "" -":gh:`151295`: Fixed a crash (use-after-free) in :meth:`bytes.join` and :meth:" -"`bytearray.join` that could occur if an item's :meth:`~object.__buffer__` " -"concurrently mutates the sequence being joined. The mutation is now reported " -"as a :exc:`RuntimeError` instead." +":gh:`151295`: Fixed a crash (use-after-free) in :meth:`bytes.join` " +"and :meth:`bytearray.join` that could occur if an " +"item's :meth:`~object.__buffer__` concurrently mutates the sequence being " +"joined. The mutation is now reported as a :exc:`RuntimeError` instead." msgstr "" msgid "" @@ -1702,8 +4594,8 @@ msgstr "" msgid "" ":gh:`150771`: Fix :mod:`email` messages created with ``shift_jis`` or ``euc-" "jp`` charsets. ``set_content()`` now stores the payload using the output " -"charset (``iso-2022-jp``) so printing the message no longer raises :exc:" -"`UnicodeEncodeError`." +"charset (``iso-2022-jp``) so printing the message no longer " +"raises :exc:`UnicodeEncodeError`." msgstr "" msgid "" @@ -1723,14 +4615,9 @@ msgid "" msgstr "" msgid "" -":gh:`150913`: Fix :class:`sqlite3.Blob` slice assignment to raise :exc:" -"`TypeError` and :exc:`IndexError` for type and size mismatches respectively, " -"even when the target slice is empty." -msgstr "" - -msgid "" -":gh:`143008`: Fix race conditions when re-initializing a :class:`io." -"TextIOWrapper` object." +":gh:`150913`: Fix :class:`sqlite3.Blob` slice assignment to " +"raise :exc:`TypeError` and :exc:`IndexError` for type and size mismatches " +"respectively, even when the target slice is empty." msgstr "" msgid "" @@ -1760,8 +4647,8 @@ msgstr "" msgid "" ":gh:`149891`: Add support for more encoding aliases `officially registered " -"in IANA `__." +"in IANA `__." msgstr "" msgid "" @@ -1776,9 +4663,9 @@ msgid "" msgstr "" msgid "" -":gh:`143988`: Fixed crashes in :meth:`socket.socket.sendmsg` and :meth:" -"`socket.socket.recvmsg_into` that could occur if buffer sequences are " -"concurrently mutated." +":gh:`143988`: Fixed crashes in :meth:`socket.socket.sendmsg` " +"and :meth:`socket.socket.recvmsg_into` that could occur if buffer sequences " +"are concurrently mutated." msgstr "" msgid "" @@ -1788,18 +4675,18 @@ msgid "" msgstr "" msgid "" -":gh:`91099`: :meth:`imaplib.IMAP4.login` now raises exceptions with :class:" -"`str` instead of :class:`bytes`. Patch by Florian Best." +":gh:`91099`: :meth:`imaplib.IMAP4.login` now raises exceptions " +"with :class:`str` instead of :class:`bytes`. Patch by Florian Best." msgstr "" msgid "" -":gh:`101267`: When a worker process terminates unexpectedly, :class:" -"`concurrent.futures.ProcessPoolExecutor` now sets a separate :exc:" -"`~concurrent.futures.process.BrokenProcessPool` exception on each pending " -"future instead of sharing a single instance among them all. Sharing one " -"exception produced malformed tracebacks: each :meth:`Future.result() " -"` call re-raised the same object, " -"appending another copy of the traceback to it." +":gh:`101267`: When a worker process terminates " +"unexpectedly, :class:`concurrent.futures.ProcessPoolExecutor` now sets a " +"separate :exc:`~concurrent.futures.process.BrokenProcessPool` exception on " +"each pending future instead of sharing a single instance among them all. " +"Sharing one exception produced malformed tracebacks: " +"each :meth:`Future.result() ` call re-" +"raised the same object, appending another copy of the traceback to it." msgstr "" msgid "" @@ -1815,9 +4702,9 @@ msgid "" msgstr "" msgid "" -":gh:`109503`: Fix documentation for :func:`shutil.move` on usage of :func:" -"`os.rename` since nonatomic move might be used even if the files are on the " -"same filesystem. Patch by Fang Li" +":gh:`109503`: Fix documentation for :func:`shutil.move` on usage " +"of :func:`os.rename` since nonatomic move might be used even if the files " +"are on the same filesystem. Patch by Fang Li" msgstr "" msgid ":gh:`151130`: Add more tests for ``PyWeakref_*`` C API." @@ -1854,21 +4741,21 @@ msgid ":issue:`6699`: Warn the user if a file will be overwritten when saving." msgstr "" msgid "" -":gh:`141510`: Add :class:`frozendict` to the fast paths of :c:func:" -"`PyMapping_GetOptionalItem`, :c:func:`PyMapping_Keys`, :c:func:" -"`PyMapping_Values`, and :c:func:`PyMapping_Items`." +":gh:`141510`: Add :class:`frozendict` to the fast paths " +"of :c:func:`PyMapping_GetOptionalItem`, :c:func:`PyMapping_Keys`, :c:func:`PyMapping_Values`, " +"and :c:func:`PyMapping_Items`." msgstr "" msgid "" ":gh:`123619`: :c:func:`PyUnstable_Object_EnableDeferredRefcount` now returns " -"``0`` if the object is not tracked by the garbage collector: if :func:`gc." -"is_tracked` is false. Patch by Victor Stinner." +"``0`` if the object is not tracked by the garbage collector: " +"if :func:`gc.is_tracked` is false. Patch by Victor Stinner." msgstr "" msgid "" ":gh:`149044`: Improved error message when specifying non-type base classes " -"in :c:macro:`Py_tp_bases`, :c:macro:`Py_tp_base`, and *bases* argument to :c:" -"func:`PyType_FromMetaclass` and other ``PyType_From*`` functions." +"in :c:macro:`Py_tp_bases`, :c:macro:`Py_tp_base`, and *bases* argument " +"to :c:func:`PyType_FromMetaclass` and other ``PyType_From*`` functions." msgstr "" msgid "" @@ -1891,10 +4778,10 @@ msgstr "" msgid "" ":gh:`87451`: The :mod:`ftplib` module's undocumented ``ftpcp`` function no " "longer trusts the IPv4 address value returned from the source server in " -"response to the ``PASV`` command by default, completing the fix for " -"CVE-2021-4189. As with :class:`ftplib.FTP`, the former behavior can be re-" -"enabled by setting the ``trust_server_pasv_ipv4_address`` attribute on the " -"source :class:`ftplib.FTP` instance to ``True``. Thanks to Qi Deng at " +"response to the ``PASV`` command by default, completing the fix " +"for :cve:`2021-4189`. As with :class:`ftplib.FTP`, the former behavior can " +"be re-enabled by setting the ``trust_server_pasv_ipv4_address`` attribute on " +"the source :class:`ftplib.FTP` instance to ``True``. Thanks to Qi Deng at " "Aurascape AI for the report." msgstr "" @@ -1914,18 +4801,18 @@ msgid "" msgstr "" msgid "" -":gh:`149079`: Fix a potential denial of service in :func:`unicodedata." -"normalize`. The canonical ordering step of Unicode normalization used a " -"quadratic-time insertion sort for reordering combining characters, which " -"could be exploited with crafted input containing many combining characters " -"in non-canonical order. Replaced with a linear-time counting sort for long " -"runs." +":gh:`149079`: Fix a potential denial of service " +"in :func:`unicodedata.normalize`. The canonical ordering step of Unicode " +"normalization used a quadratic-time insertion sort for reordering combining " +"characters, which could be exploited with crafted input containing many " +"combining characters in non-canonical order. Replaced with a linear-time " +"counting sort for long runs." msgstr "" msgid "" -":gh:`149018`: Improved protection against XML hash-flooding attacks in :mod:" -"`xml.parsers.expat` and :mod:`xml.etree.ElementTree` when Python is compiled " -"with libExpat 2.8.0 or later." +":gh:`149018`: Improved protection against XML hash-flooding attacks " +"in :mod:`xml.parsers.expat` and :mod:`xml.etree.ElementTree` when Python is " +"compiled with libExpat 2.8.0 or later." msgstr "" msgid "" @@ -1956,8 +4843,8 @@ msgid ":gh:`150146`: Fix a crash on a complex type variable substitution." msgstr "" msgid "" -"``from typing import TypeVar; memoryview[TypeVar(\"\")][*typing." -"Mapping[..., ...]]`` used to fail due to missing ``NULL`` check on " +"``from typing import TypeVar; memoryview[TypeVar(\"\")]" +"[*typing.Mapping[..., ...]]`` used to fail due to missing ``NULL`` check on " "``_unpack_args`` C function call." msgstr "" @@ -2034,13 +4921,13 @@ msgstr "" msgid "" ":gh:`150228`: The new :class:`site.StartupState` class lets callers batch-" "process :pep:`829` startup configuration files across multiple site " -"directories before any startup code runs, with public :meth:`~site." -"StartupState.addsitedir`, :meth:`~site.StartupState.addusersitepackages`, :" -"meth:`~site.StartupState.addsitepackages`, and :meth:`~site.StartupState." -"process` methods. The signature of :func:`site.addsitedir` is unchanged " -"from Python 3.14. The :data:`!defer_processing_start_files` argument and " -"the ``process_startup_files()`` function added earlier in the 3.15 cycle " -"have been removed; use :class:`!site.StartupState` instead." +"directories before any startup code runs, with " +"public :meth:`~site.StartupState.addsitedir`, :meth:`~site.StartupState.addusersitepackages`, :meth:`~site.StartupState.addsitepackages`, " +"and :meth:`~site.StartupState.process` methods. The signature " +"of :func:`site.addsitedir` is unchanged from Python 3.14. The :data:`!" +"defer_processing_start_files` argument and the ``process_startup_files()`` " +"function added earlier in the 3.15 cycle have been removed; use :class:`!" +"site.StartupState` instead." msgstr "" msgid "" @@ -2067,11 +4954,11 @@ msgid "" msgstr "" msgid "" -":gh:`84353`: Preserve non-UTF-8 encoded filenames when appending to a :class:" -"`zipfile.ZipFile`. Previously, non-ASCII names stored in a legacy encoding " -"(without the UTF-8 flag bit set) could be corrupted when the central " -"directory was rewritten: they were decoded as cp437 and then re-stored as " -"UTF-8." +":gh:`84353`: Preserve non-UTF-8 encoded filenames when appending to " +"a :class:`zipfile.ZipFile`. Previously, non-ASCII names stored in a legacy " +"encoding (without the UTF-8 flag bit set) could be corrupted when the " +"central directory was rewritten: they were decoded as cp437 and then re-" +"stored as UTF-8." msgstr "" msgid "" @@ -2089,9 +4976,9 @@ msgid "" msgstr "" msgid "" -":gh:`149571`: Fix the C implementation of :meth:`xml.etree.ElementTree." -"Element.itertext`: it no longer emits text for comments and processing " -"instructions." +":gh:`149571`: Fix the C implementation " +"of :meth:`xml.etree.ElementTree.Element.itertext`: it no longer emits text " +"for comments and processing instructions." msgstr "" msgid "" @@ -2100,15 +4987,15 @@ msgid "" msgstr "" msgid "" -":gh:`142349`: Add :keyword:`lazy` to the list of support topic by :func:" -"`help`." +":gh:`142349`: Add :keyword:`lazy` to the list of support topic " +"by :func:`help`." msgstr "" msgid "" ":gh:`149819`: Fix regression in :func:`site.addsitedir` where ``.pth`` files " -"were no longer processed in Python subprocesses. This happened because :func:" -"`site.main` seeded ``known_paths`` with entries inherited from the parent " -"process, causing ``addsitedir`` to skip ``.pth`` processing." +"were no longer processed in Python subprocesses. This happened " +"because :func:`site.main` seeded ``known_paths`` with entries inherited from " +"the parent process, causing ``addsitedir`` to skip ``.pth`` processing." msgstr "" msgid "" @@ -2154,8 +5041,8 @@ msgid ":gh:`139489`: Add :func:`xml.is_valid_text` to ``xml.__all__``." msgstr "" msgid "" -":gh:`149614`: Fix a regression that broke the ability to deepcopy :class:" -"`argparse.ArgumentParser` instances." +":gh:`149614`: Fix a regression that broke the ability to " +"deepcopy :class:`argparse.ArgumentParser` instances." msgstr "" msgid "" @@ -2166,8 +5053,8 @@ msgid "" msgstr "" msgid "" -":gh:`149534`: Fix merging of :class:`collections.defaultdict` and :class:" -"`frozendict`." +":gh:`149534`: Fix merging of :class:`collections.defaultdict` " +"and :class:`frozendict`." msgstr "" msgid "" @@ -2194,10 +5081,10 @@ msgid "" msgstr "" msgid "" -":gh:`148441`: :mod:`xml.parsers.expat`: prevent a crash in :meth:`~xml." -"parsers.expat.xmlparser.CharacterDataHandler` when the character data size " -"exceeds the parser's :attr:`buffer size `." +":gh:`148441`: :mod:`xml.parsers.expat`: prevent a crash " +"in :meth:`~xml.parsers.expat.xmlparser.CharacterDataHandler` when the " +"character data size exceeds the parser's :attr:`buffer size " +"`." msgstr "" msgid "" @@ -2218,11 +5105,11 @@ msgid "" msgstr "" msgid "" -":gh:`133998`: Fix :exc:`struct.error` exception when creating a file with :" -"class:`gzip.GzipFile` or compressing data with :func:`gzip.compress` if the " -"system time is outside the range 00:00:00 UTC, January 1, 1970 through " -"06:28:15 UTC, February 7, 2106, or explicitly passed *mtime* argument is " -"outside the range ``0`` to ``2**32-1``." +":gh:`133998`: Fix :exc:`struct.error` exception when creating a file " +"with :class:`gzip.GzipFile` or compressing data with :func:`gzip.compress` " +"if the system time is outside the range 00:00:00 UTC, January 1, 1970 " +"through 06:28:15 UTC, February 7, 2106, or explicitly passed *mtime* " +"argument is outside the range ``0`` to ``2**32-1``." msgstr "" msgid "" @@ -2249,9 +5136,9 @@ msgid "" msgstr "" msgid "" -":gh:`150387`: Fix hang in ``test.test_profiling.test_sampling_profiler." -"test_live_collector_ui.TestLiveModeErrors.test_run_failed_script_live`` on " -"slow buildbots. The test now always queues a final ``q`` keystroke so the " +":gh:`150387`: Fix hang in " +"``test.test_profiling.test_sampling_profiler.test_live_collector_ui.TestLiveModeErrors.test_run_failed_script_live`` " +"on slow buildbots. The test now always queues a final ``q`` keystroke so the " "live TUI loop exits even when the profiler collects enough samples to enter " "the post-finished input loop." msgstr "" @@ -2291,9 +5178,9 @@ msgid ":gh:`149029`: Update Windows installer to ship with SQLite 3.53.1." msgstr "" msgid "" -":gh:`150644`: When system logging is enabled (with ``config." -"use_system_logger``, messages are now tagged as public. This allows the " -"macOS 26 system logger to view messages without special configuration." +":gh:`150644`: When system logging is enabled (with " +"``config.use_system_logger``, messages are now tagged as public. This allows " +"the macOS 26 system logger to view messages without special configuration." msgstr "" msgid "" @@ -2306,14 +5193,16 @@ msgid "" msgstr "" msgid "" -":gh:`149725`: Add :c:func:`PySentinel_CheckExact` for exact :class:" -"`sentinel` type tests to accompany the existing :c:func:`PySentinel_Check`." +":gh:`149725`: Add :c:func:`PySentinel_CheckExact` for " +"exact :class:`sentinel` type tests to accompany the " +"existing :c:func:`PySentinel_Check`." msgstr "" msgid "" -":gh:`145235`: Made :c:func:`PyDict_AddWatcher`, :c:func:" -"`PyDict_ClearWatcher`, :c:func:`PyDict_Watch`, and :c:func:`PyDict_Unwatch` " -"thread-safe on the :term:`free threaded ` build." +":gh:`145235`: " +"Made :c:func:`PyDict_AddWatcher`, :c:func:`PyDict_ClearWatcher`, :c:func:`PyDict_Watch`, " +"and :c:func:`PyDict_Unwatch` thread-safe on the :term:`free threaded ` build." msgstr "" msgid "Python 3.15.0 beta 1" @@ -2349,11 +5238,12 @@ msgid "" msgstr "" msgid "" -":gh:`148395`: Fix a dangling input pointer in :class:`lzma." -"LZMADecompressor`, :class:`bz2.BZ2Decompressor`, and internal :class:`!zlib." -"_ZlibDecompressor` when memory allocation fails with :exc:`MemoryError`, " -"which could let a subsequent :meth:`!decompress` call read or write through " -"a stale pointer to the already-released caller buffer." +":gh:`148395`: Fix a dangling input pointer " +"in :class:`lzma.LZMADecompressor`, :class:`bz2.BZ2Decompressor`, and " +"internal :class:`!zlib._ZlibDecompressor` when memory allocation fails " +"with :exc:`MemoryError`, which could let a subsequent :meth:`!decompress` " +"call read or write through a stale pointer to the already-released caller " +"buffer." msgstr "" msgid "" @@ -2383,16 +5273,16 @@ msgstr "" msgid "" ":gh:`137586`: Fix a PATH-injection vulnerability in :mod:`webbrowser` on " -"macOS where ``osascript`` was invoked without an absolute path. The new :" -"class:`!MacOS` class uses ``/usr/bin/open`` directly, eliminating the " +"macOS where ``osascript`` was invoked without an absolute path. The " +"new :class:`!MacOS` class uses ``/usr/bin/open`` directly, eliminating the " "dependency on ``osascript`` entirely." msgstr "" msgid "" -":gh:`146333`: Fix quadratic backtracking in :class:`configparser." -"RawConfigParser` option parsing regexes (``OPTCRE`` and ``OPTCRE_NV``). A " -"crafted configuration line with many whitespace characters could cause " -"excessive CPU usage." +":gh:`146333`: Fix quadratic backtracking " +"in :class:`configparser.RawConfigParser` option parsing regexes (``OPTCRE`` " +"and ``OPTCRE_NV``). A crafted configuration line with many whitespace " +"characters could cause excessive CPU usage." msgstr "" msgid "" @@ -2401,10 +5291,10 @@ msgid "" msgstr "" msgid "" -":gh:`148940`: Revert the process size based deferral of garbage collection (:" -"gh:`133464`). The performance issue this change resolves is also fixed by :" -"gh:`142562`. This approach has the problem that process size as seen by the " -"OS (e.g. the resident size or RSS) does not immediately decrease after " +":gh:`148940`: Revert the process size based deferral of garbage collection " +"(:gh:`133464`). The performance issue this change resolves is also fixed " +"by :gh:`142562`. This approach has the problem that process size as seen by " +"the OS (e.g. the resident size or RSS) does not immediately decrease after " "cyclic garbage is freed since mimalloc defers returning memory of the OS. " "This change applies to the free-threaded GC only." msgstr "" @@ -2420,15 +5310,16 @@ msgid "" msgstr "" msgid "" -":gh:`149171`: Allow assignment to the ``__module__`` attribute of :class:" -"`typing.TypeAliasType` instances." +":gh:`149171`: Allow assignment to the ``__module__`` attribute " +"of :class:`typing.TypeAliasType` instances." msgstr "" msgid "" -":gh:`149122`: Fix a crash in optimized calls to :func:`all`, :func:`any`, :" -"func:`tuple`, :func:`list`, and :func:`set` with an async generator " -"expression argument (for example, ``tuple(await x for x in y)``). These " -"calls now correctly raise ``TypeError`` instead of crashing." +":gh:`149122`: Fix a crash in optimized calls " +"to :func:`all`, :func:`any`, :func:`tuple`, :func:`list`, and :func:`set` " +"with an async generator expression argument (for example, ``tuple(await x " +"for x in y)``). These calls now correctly raise ``TypeError`` instead of " +"crashing." msgstr "" msgid ":gh:`149049`: Fix stack underflow for ``BINARY_OP`` in tier 2." @@ -2451,8 +5342,8 @@ msgid "" msgstr "" msgid "" -":gh:`148850`: Fix the memory sanitizer false positive in :func:`os." -"getrandom`." +":gh:`148850`: Fix the memory sanitizer false positive " +"in :func:`os.getrandom`." msgstr "" msgid "" @@ -2482,9 +5373,9 @@ msgid "" msgstr "" msgid "" -":gh:`148653`: Forbid :mod:`marshalling ` recursive code objects, :" -"class:`slice` and :class:`frozendict` objects which cannot be correctly " -"unmarshalled." +":gh:`148653`: Forbid :mod:`marshalling ` recursive code " +"objects, :class:`slice` and :class:`frozendict` objects which cannot be " +"correctly unmarshalled." msgstr "" msgid "" @@ -2494,10 +5385,10 @@ msgid "" msgstr "" msgid "" -":gh:`146462`: Added ``PyTypeObject.tp_basicsize``, ``PyTypeObject." -"tp_dictoffset``, and ``PyHeapTypeObject.ht_cached_keys`` offsets to :c:type:" -"`!_Py_DebugOffsets` to support version-independent read-only dict " -"introspection tools." +":gh:`146462`: Added ``PyTypeObject.tp_basicsize``, " +"``PyTypeObject.tp_dictoffset``, and ``PyHeapTypeObject.ht_cached_keys`` " +"offsets to :c:type:`!_Py_DebugOffsets` to support version-independent read-" +"only dict introspection tools." msgstr "" msgid "" @@ -2525,9 +5416,9 @@ msgid "" msgstr "" msgid "" -":gh:`148393`: Fix data races between :c:func:`PyDict_Watch` / :c:func:" -"`PyDict_Unwatch` and concurrent dict mutation in the :term:`free-threaded " -"build`." +":gh:`148393`: Fix data races " +"between :c:func:`PyDict_Watch` / :c:func:`PyDict_Unwatch` and concurrent " +"dict mutation in the :term:`free-threaded build`." msgstr "" msgid "" @@ -2575,9 +5466,9 @@ msgid ":gh:`148208`: Fix recursion depth leak in :c:func:`PyObject_Print`" msgstr "" msgid "" -":gh:`95004`: The specializing interpreter now specializes for :class:`enum." -"Enum` improving performance and scaling in free-threading. Patch by Kumar " -"Aditya." +":gh:`95004`: The specializing interpreter now specializes " +"for :class:`enum.Enum` improving performance and scaling in free-threading. " +"Patch by Kumar Aditya." msgstr "" msgid "" @@ -2646,8 +5537,9 @@ msgstr "" msgid "" ":gh:`143886`: Reorder function annotations so positional-only arguments are " -"returned before other arguments. This fixes how :func:`functools." -"singledispatch` registers functions with positional-only arguments." +"returned before other arguments. This fixes " +"how :func:`functools.singledispatch` registers functions with positional-" +"only arguments." msgstr "" msgid "" @@ -2656,9 +5548,9 @@ msgid "" msgstr "" msgid "" -":gh:`116021`: Support for creating instances of abstract AST nodes from the :" -"mod:`ast` module is deprecated and scheduled for removal in Python 3.20. " -"Patch by Brian Schubert." +":gh:`116021`: Support for creating instances of abstract AST nodes from " +"the :mod:`ast` module is deprecated and scheduled for removal in Python " +"3.20. Patch by Brian Schubert." msgstr "" msgid "" @@ -2667,16 +5559,16 @@ msgid "" msgstr "" msgid "" -":gh:`137600`: :mod:`ast`: The constructors of AST nodes now raise a :exc:" -"`TypeError` when a required argument is omitted or when a keyword argument " -"that does not map to a field on the AST node is passed. These cases had " -"previously raised a :exc:`DeprecationWarning` since Python 3.13. Patch by " -"Brian Schubert." +":gh:`137600`: :mod:`ast`: The constructors of AST nodes now raise " +"a :exc:`TypeError` when a required argument is omitted or when a keyword " +"argument that does not map to a field on the AST node is passed. These cases " +"had previously raised a :exc:`DeprecationWarning` since Python 3.13. Patch " +"by Brian Schubert." msgstr "" msgid "" -":gh:`137293`: Fix :exc:`SystemError` when searching ELF Files in :func:`sys." -"remote_exec`." +":gh:`137293`: Fix :exc:`SystemError` when searching ELF Files " +"in :func:`sys.remote_exec`." msgstr "" msgid ":gh:`135357`: Add support for :data:`!socket.SO_PASSRIGHTS` on Linux." @@ -2699,8 +5591,8 @@ msgid "" msgstr "" msgid "" -":gh:`141560`: Add an *annotation_format* parameter to :func:`inspect." -"getfullargspec`." +":gh:`141560`: Add an *annotation_format* parameter " +"to :func:`inspect.getfullargspec`." msgstr "" msgid "" @@ -2723,8 +5615,8 @@ msgid "" msgstr "" msgid "" -":gh:`148675`: Remove ``F`` and ``D`` formats from :mod:`array` and :class:" -"`memoryview`. Patch by Victor Stinner." +":gh:`148675`: Remove ``F`` and ``D`` formats from :mod:`array` " +"and :class:`memoryview`. Patch by Victor Stinner." msgstr "" msgid "" @@ -2765,8 +5657,8 @@ msgid "" msgstr "" msgid "" -":gh:`145378`: Generate consistent colors for :mod:`pdb` commands in :mod:" -"`pdb` REPL." +":gh:`145378`: Generate consistent colors for :mod:`pdb` commands " +"in :mod:`pdb` REPL." msgstr "" msgid "" @@ -2778,27 +5670,28 @@ msgid "" msgstr "" msgid "" -":gh:`143231`: A *module* attribute has been added to :class:`!warnings." -"WarningMessage`." +":gh:`143231`: A *module* attribute has been added to :class:`!" +"warnings.WarningMessage`." msgstr "" msgid "" -":gh:`148675`: :mod:`ctypes`: Change the :py:attr:`~ctypes._SimpleCData." -"_type_` of :class:`~ctypes.c_float_complex`, :class:`~ctypes." -"c_double_complex` and :class:`~ctypes.c_longdouble_complex` from ``F``, " -"``D`` and ``G`` to ``Zf``, ``Zd`` and ``Zg`` for compatibility with numpy. " -"Patch by Victor Stinner." +":gh:`148675`: :mod:`ctypes`: Change " +"the :py:attr:`~ctypes._SimpleCData._type_` " +"of :class:`~ctypes.c_float_complex`, :class:`~ctypes.c_double_complex` " +"and :class:`~ctypes.c_longdouble_complex` from ``F``, ``D`` and ``G`` to " +"``Zf``, ``Zd`` and ``Zg`` for compatibility with numpy. Patch by Victor " +"Stinner." msgstr "" msgid "" -":gh:`148675`: The :data:`array.typecodes` type changed from :class:`str` to :" -"class:`tuple` to support type codes longer than 1 character (``Zf`` and " +":gh:`148675`: The :data:`array.typecodes` type changed from :class:`str` " +"to :class:`tuple` to support type codes longer than 1 character (``Zf`` and " "``Zd``). Patch by Victor Stinner." msgstr "" msgid "" -":gh:`149221`: Catch rare math domain error for :func:`random." -"binomialvariate`." +":gh:`149221`: Catch rare math domain error " +"for :func:`random.binomialvariate`." msgstr "" msgid "" @@ -2807,9 +5700,10 @@ msgid "" msgstr "" msgid "" -":gh:`143231`: :func:`unittest.TestCase.assertWarns` and :func:`unittest." -"TestCase.assertWarnsRegex` no longer swallow warnings that do not match the " -"specified category or regex. Nested context managers are now supported." +":gh:`143231`: :func:`unittest.TestCase.assertWarns` " +"and :func:`unittest.TestCase.assertWarnsRegex` no longer swallow warnings " +"that do not match the specified category or regex. Nested context managers " +"are now supported." msgstr "" msgid "" @@ -2852,19 +5746,21 @@ msgid "" msgstr "" msgid "" -":gh:`148292`: :mod:`ssl`: Update :class:`ssl.SSLSocket` and :class:`ssl." -"SSLObject` for OpenSSL 4. The classes now remember if they get a :exc:`ssl." -"SSLEOFError`. In this case, following :meth:`~ssl.SSLSocket.read`, :meth:`!" -"sendfile`, :meth:`~ssl.SSLSocket.write`, and :meth:`~ssl.SSLSocket." -"do_handshake` calls raise :exc:`ssl.SSLEOFError` without calling the " -"underlying OpenSSL function. Thanks to that, :class:`ssl.SSLSocket` behaves " -"the same on all OpenSSL versions on EOF. Patch by Victor Stinner." +":gh:`148292`: :mod:`ssl`: Update :class:`ssl.SSLSocket` " +"and :class:`ssl.SSLObject` for OpenSSL 4. The classes now remember if they " +"get a :exc:`ssl.SSLEOFError`. In this case, " +"following :meth:`~ssl.SSLSocket.read`, :meth:`!" +"sendfile`, :meth:`~ssl.SSLSocket.write`, " +"and :meth:`~ssl.SSLSocket.do_handshake` calls raise :exc:`ssl.SSLEOFError` " +"without calling the underlying OpenSSL function. Thanks to " +"that, :class:`ssl.SSLSocket` behaves the same on all OpenSSL versions on " +"EOF. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`149085`: Add a *max_threads* keyword argument to :func:`faulthandler." -"dump_traceback`, :func:`faulthandler.dump_traceback_later`, :func:" -"`faulthandler.enable`, and :func:`faulthandler.register`." +":gh:`149085`: Add a *max_threads* keyword argument " +"to :func:`faulthandler.dump_traceback`, :func:`faulthandler.dump_traceback_later`, :func:`faulthandler.enable`, " +"and :func:`faulthandler.register`." msgstr "" msgid "" @@ -2874,8 +5770,9 @@ msgid "" msgstr "" msgid "" -":gh:`148093`: Fix an out-of-bounds read of one byte in :func:`binascii." -"a2b_uu`. Raise :exc:`binascii.Error`, instead of reading past the buffer end." +":gh:`148093`: Fix an out-of-bounds read of one byte " +"in :func:`binascii.a2b_uu`. Raise :exc:`binascii.Error`, instead of reading " +"past the buffer end." msgstr "" msgid "" @@ -2908,20 +5805,21 @@ msgid ":gh:`148981`: Add *color* parameter to :func:`ast.dump`." msgstr "" msgid "" -":gh:`148849`: Deprecate :meth:`http.cookies.Morsel.js_output` and :meth:" -"`http.cookies.BaseCookie.js_output`, which will be removed in Python 3.19. " -"Use :meth:`http.cookies.Morsel.output` or :meth:`http.cookies.BaseCookie." -"output` instead." +":gh:`148849`: Deprecate :meth:`http.cookies.Morsel.js_output` " +"and :meth:`http.cookies.BaseCookie.js_output`, which will be removed in " +"Python 3.19. Use :meth:`http.cookies.Morsel.output` " +"or :meth:`http.cookies.BaseCookie.output` instead." msgstr "" msgid "" -":gh:`146311`: Add a *canonical* keyword-only parameter to the base16, " -"base32, base64, base85, ascii85, and Z85 decoders in :mod:`base64` and :mod:" -"`binascii`. When true, encodings with non-zero padding bits (base16/32/64) " -"or non-canonical encodings (base85/ascii85) are rejected. Single-character " -"final groups in :func:`binascii.a2b_ascii85` and :func:`binascii.a2b_base85` " -"are now always rejected as encoding violations, regardless of *canonical*; " -"previously they were silently ignored and produced no output bytes." +":gh:`146311`: Add a *canonical* keyword-only parameter to the base32, " +"base64, base85, ascii85, and Z85 decoders in :mod:`base64` " +"and :mod:`binascii`. When true, encodings with non-zero padding bits " +"(base32/64) or non-canonical encodings (base85/ascii85) are rejected. " +"Single-character final groups in :func:`binascii.a2b_ascii85` " +"and :func:`binascii.a2b_base85` are now always rejected as encoding " +"violations, regardless of *canonical*; previously they were silently ignored " +"and produced no output bytes." msgstr "" msgid "" @@ -2939,19 +5837,20 @@ msgstr "" msgid "" ":gh:`124397`: The threading module added tooling to support concurrent " -"iterator access: :class:`threading.serialize_iterator`, :func:`threading." -"synchronized_iterator`, and :func:`threading.concurrent_tee`." +"iterator " +"access: :class:`threading.serialize_iterator`, :func:`threading.synchronized_iterator`, " +"and :func:`threading.concurrent_tee`." msgstr "" msgid "" -":gh:`148801`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." -"__deepcopy__ ` on deeply nested trees." +":gh:`148801`: :mod:`xml.etree.ElementTree`: Fix a crash " +"in :meth:`Element.__deepcopy__ ` on deeply nested trees." msgstr "" msgid "" -":gh:`148735`: :mod:`xml.etree.ElementTree`: Fix a use-after-free in :meth:" -"`Element.findtext ` when the element " -"tree is mutated concurrently during the search." +":gh:`148735`: :mod:`xml.etree.ElementTree`: Fix a use-after-free " +"in :meth:`Element.findtext ` when " +"the element tree is mutated concurrently during the search." msgstr "" msgid "" @@ -2970,8 +5869,9 @@ msgid "" msgstr "" msgid "" -":gh:`148651`: Fix reference leak in :class:`compression.zstd." -"ZstdDecompressor` when an invalid option key is passed." +":gh:`148651`: Fix reference leak " +"in :class:`compression.zstd.ZstdDecompressor` when an invalid option key is " +"passed." msgstr "" msgid "" @@ -3021,14 +5921,14 @@ msgid "" msgstr "" msgid "" -":gh:`148464`: Add missing ``__ctype_le/be__`` attributes for :class:`~ctypes." -"c_float_complex` and :class:`~ctypes.c_double_complex`. Patch by Sergey B " -"Kirpichev." +":gh:`148464`: Add missing ``__ctype_le/be__`` attributes " +"for :class:`~ctypes.c_float_complex` and :class:`~ctypes.c_double_complex`. " +"Patch by Sergey B Kirpichev." msgstr "" msgid "" -":gh:`148370`: :mod:`configparser`: prevent quadratic behavior when a :exc:" -"`~configparser.ParsingError` is raised after a parser fails to parse " +":gh:`148370`: :mod:`configparser`: prevent quadratic behavior when " +"a :exc:`~configparser.ParsingError` is raised after a parser fails to parse " "multiple lines. Patch by Bénédikt Tran." msgstr "" @@ -3081,14 +5981,14 @@ msgstr "" msgid "" ":gh:`148207`: :class:`typing.TypeVarTuple` now accepts ``bound``, " "``covariant``, ``contravariant``, and ``infer_variance`` parameters, " -"matching the interface of :class:`typing.TypeVar` and :class:`typing." -"ParamSpec`." +"matching the interface of :class:`typing.TypeVar` " +"and :class:`typing.ParamSpec`." msgstr "" msgid "" -":gh:`148100`: :term:`Soft deprecate ` :func:`re.match` and :" -"meth:`re.Pattern.match` in favour of :func:`re.prefixmatch` and :meth:`re." -"Pattern.prefixmatch`. Patch by Hugo van Kemenade." +":gh:`148100`: :term:`Soft deprecate ` :func:`re.match` " +"and :meth:`re.Pattern.match` in favour of :func:`re.prefixmatch` " +"and :meth:`re.Pattern.prefixmatch`. Patch by Hugo van Kemenade." msgstr "" msgid "" @@ -3127,11 +6027,11 @@ msgid "" msgstr "" msgid "" -":gh:`146406`: Cross-language method suggestions are now shown for :exc:" -"`AttributeError` on builtin types and their subclasses. For example, ``[]." -"push()`` suggests ``append``, ``(1,2).append(3)`` suggests using a ``list``, " -"``None.keys()`` suggests expecting a ``dict``, and ``1.0.__or__`` suggests " -"using an ``int``." +":gh:`146406`: Cross-language method suggestions are now shown " +"for :exc:`AttributeError` on builtin types and their subclasses. For " +"example, ``[].push()`` suggests ``append``, ``(1,2).append(3)`` suggests " +"using a ``list``, ``None.keys()`` suggests expecting a ``dict``, and " +"``1.0.__or__`` suggests using an ``int``." msgstr "" msgid "" @@ -3147,8 +6047,8 @@ msgid "" msgstr "" msgid "" -":gh:`145917`: Add MIME types for TTC and Haptics formats to :mod:" -"`mimetypes`. (Contributed by Charlie Lin in :gh:`145918`.)" +":gh:`145917`: Add MIME types for TTC and Haptics formats " +"to :mod:`mimetypes`. (Contributed by Charlie Lin in :gh:`145918`.)" msgstr "" msgid "" @@ -3185,8 +6085,8 @@ msgid "" msgstr "" msgid "" -":gh:`145056`: Add support for :class:`frozendict` in :meth:`dataclasses." -"asdict` and :meth:`dataclasses.astuple`." +":gh:`145056`: Add support for :class:`frozendict` " +"in :meth:`dataclasses.asdict` and :meth:`dataclasses.astuple`." msgstr "" msgid "" @@ -3205,17 +6105,19 @@ msgid "" msgstr "" msgid "" -":gh:`70647`: :meth:`~datetime.datetime.strptime` now raises :exc:" -"`ValueError` when the format string contains ``%d`` without a year " -"directive. Using ``%e`` without a year now emits a :exc:`DeprecationWarning`." +":gh:`70647`: :meth:`~datetime.datetime.strptime` now " +"raises :exc:`ValueError` when the format string contains ``%d`` without a " +"year directive. Using ``%e`` without a year now emits " +"a :exc:`DeprecationWarning`." msgstr "" msgid "" -":gh:`105936`: Attempting to mutate non-field attributes of :mod:" -"`dataclasses` with both *frozen* and *slots* being ``True`` now raises :" -"class:`~dataclasses.FrozenInstanceError` instead of :class:`TypeError`. " -"Their non-dataclass subclasses can now freely mutate non-field attributes, " -"and the original non-slotted class can be garbage collected." +":gh:`105936`: Attempting to mutate non-field attributes " +"of :mod:`dataclasses` with both *frozen* and *slots* being ``True`` now " +"raises :class:`~dataclasses.FrozenInstanceError` instead " +"of :class:`TypeError`. Their non-dataclass subclasses can now freely mutate " +"non-field attributes, and the original non-slotted class can be garbage " +"collected." msgstr "" msgid "" @@ -3240,13 +6142,13 @@ msgid "" msgstr "" msgid "" -":gh:`141449`: Improve tests and documentation for non-function callables as :" -"term:`annotate functions `." +":gh:`141449`: Improve tests and documentation for non-function callables " +"as :term:`annotate functions `." msgstr "" msgid "" -":gh:`140287`: The :mod:`asyncio` REPL now handles exceptions when executing :" -"envvar:`PYTHONSTARTUP` scripts. Patch by Bartosz Sławecki." +":gh:`140287`: The :mod:`asyncio` REPL now handles exceptions when " +"executing :envvar:`PYTHONSTARTUP` scripts. Patch by Bartosz Sławecki." msgstr "" msgid "" @@ -3260,10 +6162,10 @@ msgid "" msgstr "" msgid "" -":gh:`125862`: The :func:`contextlib.contextmanager` and :func:`contextlib." -"asynccontextmanager` decorators now work correctly with generators, " -"coroutine functions, and async generators when the wrapped callables are " -"used as decorators." +":gh:`125862`: The :func:`contextlib.contextmanager` " +"and :func:`contextlib.asynccontextmanager` decorators now work correctly " +"with generators, coroutine functions, and async generators when the wrapped " +"callables are used as decorators." msgstr "" msgid "" @@ -3292,9 +6194,9 @@ msgid "" msgstr "" msgid "" -":gh:`108951`: :mod:`asyncio`: Add :meth:`TaskGroup.cancel ` which cancels unfinished tasks and exits the group without raising :" -"exc:`asyncio.CancelledError`." +":gh:`108951`: :mod:`asyncio`: Add :meth:`TaskGroup.cancel " +"` which cancels unfinished tasks and exits the " +"group without raising :exc:`asyncio.CancelledError`." msgstr "" msgid "" @@ -3307,30 +6209,32 @@ msgid "" ":gh:`122476`: The :mod:`email` module no longer incorrectly uses :rfc:`2047` " "encoding for a mailbox with non-ASCII characters in its local-part. Under a " "policy with :attr:`~email.policy.EmailPolicy.utf8` set ``False``, attempting " -"to serialize such a message will now raise an :exc:`~email.errors." -"HeaderWriteError`. There is no valid 7-bit encoding for an internationalized " -"local-part. Use :data:`email.policy.SMTPUTF8` (or another policy with " -"``utf8=True``) to correctly pass through the local-part as Unicode " -"characters." +"to serialize such a message will now raise " +"an :exc:`~email.errors.HeaderWriteError`. There is no valid 7-bit encoding " +"for an internationalized local-part. Use :data:`email.policy.SMTPUTF8` (or " +"another policy with ``utf8=True``) to correctly pass through the local-part " +"as Unicode characters." msgstr "" msgid "" ":gh:`83938`: The :mod:`email` module no longer incorrectly uses :rfc:`2047` " "encoding for a mailbox with non-ASCII characters in its domain. Under a " "policy with :attr:`~email.policy.EmailPolicy.utf8` set ``False``, attempting " -"to serialize such a message will now raise an :exc:`~email.errors." -"HeaderWriteError`. Either apply an appropriate IDNA encoding to convert the " -"domain to ASCII before serialization, or use :data:`email.policy.SMTPUTF8` " -"(or another policy with ``utf8=True``) to correctly pass through the " -"internationalized domain name as Unicode characters." +"to serialize such a message will now raise " +"an :exc:`~email.errors.HeaderWriteError`. Either apply an appropriate IDNA " +"encoding to convert the domain to ASCII before serialization, or " +"use :data:`email.policy.SMTPUTF8` (or another policy with ``utf8=True``) to " +"correctly pass through the internationalized domain name as Unicode " +"characters." msgstr "" msgid "" ":gh:`81074`: The :mod:`email` module no longer treats email addresses with " "non-ASCII characters as defects when parsing a Unicode string or in the " -"``addr_spec`` parameter to :class:`email.headerregistry.Address`. :rfc:" -"`5322` permits such addresses, and they were already supported when parsing " -"bytes and in the Address ``username`` parameter." +"``addr_spec`` parameter " +"to :class:`email.headerregistry.Address`. :rfc:`5322` permits such " +"addresses, and they were already supported when parsing bytes and in the " +"Address ``username`` parameter." msgstr "" msgid "" @@ -3339,8 +6243,8 @@ msgid "" msgstr "" msgid "" -":gh:`70039`: Fixed bug where :meth:`smtplib.SMTP.starttls` could fail if :" -"meth:`smtplib.SMTP.connect` is called explicitly rather than implicitly." +":gh:`70039`: Fixed bug where :meth:`smtplib.SMTP.starttls` could fail " +"if :meth:`smtplib.SMTP.connect` is called explicitly rather than implicitly." msgstr "" msgid "" @@ -3364,14 +6268,15 @@ msgid "" msgstr "" msgid "" -":gh:`146646`: Document that :func:`glob.glob`, :func:`glob.iglob`, :meth:" -"`pathlib.Path.glob`, and :meth:`pathlib.Path.rglob` silently suppress :exc:" -"`OSError` exceptions raised from scanning the filesystem." +":gh:`146646`: Document " +"that :func:`glob.glob`, :func:`glob.iglob`, :meth:`pathlib.Path.glob`, " +"and :meth:`pathlib.Path.rglob` silently suppress :exc:`OSError` exceptions " +"raised from scanning the filesystem." msgstr "" msgid "" -":gh:`149425`: Increase time delta in ``test.test_zipfile.test_core." -"OtherTests.test_write_without_source_date_epoch``" +":gh:`149425`: Increase time delta in " +"``test.test_zipfile.test_core.OtherTests.test_write_without_source_date_epoch``" msgstr "" msgid ":gh:`148600`: Add OpenSSL 4.0.0 support to test configurations." @@ -3493,11 +6398,11 @@ msgid "" msgstr "" msgid "" -":gh:`149216`: :c:type:`PyType_WatchCallback` callbacks registered via :c:" -"func:`PyType_AddWatcher` are now also invoked when a watched heap type is " -"deallocated. Previously, type watchers were only notified of modifications, " -"which could cause stale references when a type was freed and its address was " -"reused." +":gh:`149216`: :c:type:`PyType_WatchCallback` callbacks registered " +"via :c:func:`PyType_AddWatcher` are now also invoked when a watched heap " +"type is deallocated. Previously, type watchers were only notified of " +"modifications, which could cause stale references when a type was freed and " +"its address was reused." msgstr "" msgid ":gh:`149101`: Implement :pep:`788`." @@ -3513,8 +6418,8 @@ msgstr "" msgid "" ":gh:`145559`: Rename ``_Py_DumpTraceback`` and ``_Py_DumpTracebackThreads`` " -"to :c:func:`PyUnstable_DumpTraceback` and :c:func:" -"`PyUnstable_DumpTracebackThreads`." +"to :c:func:`PyUnstable_DumpTraceback` " +"and :c:func:`PyUnstable_DumpTracebackThreads`." msgstr "" msgid "" @@ -3534,13 +6439,9 @@ msgid "" msgstr "" msgid "" -":gh:`145921`: Add functions that are guaranteed to be safe for use in :c:" -"member:`~PyTypeObject.tp_traverse` handlers: :c:func:" -"`PyObject_GetTypeData_DuringGC`, :c:func:`PyObject_GetItemData_DuringGC`, :c:" -"func:`PyType_GetModuleState_DuringGC`, :c:func:" -"`PyModule_GetState_DuringGC`, :c:func:`PyModule_GetToken_DuringGC`, :c:func:" -"`PyType_GetBaseByToken_DuringGC`, :c:func:`PyType_GetModule_DuringGC`, :c:" -"func:`PyType_GetModuleByToken_DuringGC`." +":gh:`145921`: Add functions that are guaranteed to be safe for use " +"in :c:member:`~PyTypeObject.tp_traverse` " +"handlers: :c:func:`PyObject_GetTypeData_DuringGC`, :c:func:`PyObject_GetItemData_DuringGC`, :c:func:`PyType_GetModuleState_DuringGC`, :c:func:`PyModule_GetState_DuringGC`, :c:func:`PyModule_GetToken_DuringGC`, :c:func:`PyType_GetBaseByToken_DuringGC`, :c:func:`PyType_GetModule_DuringGC`, :c:func:`PyType_GetModuleByToken_DuringGC`." msgstr "" msgid "Python 3.15.0 alpha 8" @@ -3551,19 +6452,21 @@ msgstr "" msgid "" ":gh:`145986`: :mod:`xml.parsers.expat`: Fixed a crash caused by unbounded C " -"recursion when converting deeply nested XML content models with :meth:`~xml." -"parsers.expat.xmlparser.ElementDeclHandler`. This addresses :cve:`2026-4224`." +"recursion when converting deeply nested XML content models " +"with :meth:`~xml.parsers.expat.xmlparser.ElementDeclHandler`. This " +"addresses :cve:`2026-4224`." msgstr "" msgid "" -":gh:`145599`: Reject control characters in :class:`http.cookies.Morsel` :" -"meth:`~http.cookies.Morsel.update` and :meth:`~http.cookies.BaseCookie." -"js_output`. This addresses :cve:`2026-3644`." +":gh:`145599`: Reject control characters " +"in :class:`http.cookies.Morsel` :meth:`~http.cookies.Morsel.update` " +"and :meth:`~http.cookies.BaseCookie.js_output`. This " +"addresses :cve:`2026-3644`." msgstr "" msgid "" -":gh:`143930`: Reject leading dashes in URLs passed to :func:`webbrowser." -"open`." +":gh:`143930`: Reject leading dashes in URLs passed " +"to :func:`webbrowser.open`." msgstr "" msgid "" @@ -3586,9 +6489,9 @@ msgstr "" msgid "" ":gh:`148072`: Cache ``pickle.dumps`` and ``pickle.loads`` per interpreter in " "the XIData framework, avoiding repeated module lookups on every cross-" -"interpreter data transfer. This speeds up :class:`~concurrent.futures." -"InterpreterPoolExecutor` for mutable types (``list``, ``dict``) by " -"1.7x--3.3x." +"interpreter data transfer. This speeds " +"up :class:`~concurrent.futures.InterpreterPoolExecutor` for mutable types " +"(``list``, ``dict``) by 1.7x--3.3x." msgstr "" msgid "" @@ -3620,9 +6523,9 @@ msgid "" msgstr "" msgid "" -":gh:`146615`: Fix a crash in :meth:`~object.__get__` for :c:expr:" -"`METH_METHOD` descriptors when an invalid (non-type) object is passed as the " -"second argument. Patch by Steven Sun." +":gh:`146615`: Fix a crash in :meth:`~object.__get__` " +"for :c:expr:`METH_METHOD` descriptors when an invalid (non-type) object is " +"passed as the second argument. Patch by Steven Sun." msgstr "" msgid "" @@ -3685,9 +6588,9 @@ msgid "" msgstr "" msgid "" -":gh:`146196`: Fix potential Undefined Behavior in :c:func:" -"`PyUnicodeWriter_WriteASCII` by adding a zero-length check. Patch by Shamil " -"Abdulaev." +":gh:`146196`: Fix potential Undefined Behavior " +"in :c:func:`PyUnicodeWriter_WriteASCII` by adding a zero-length check. Patch " +"by Shamil Abdulaev." msgstr "" msgid "" @@ -3697,8 +6600,9 @@ msgid "" msgstr "" msgid "" -":gh:`146205`: Fixed a bug where :meth:`select.epoll.close`, :meth:`select." -"kqueue.close`, and :meth:`select.devpoll.close` silently ignored errors." +":gh:`146205`: Fixed a bug " +"where :meth:`select.epoll.close`, :meth:`select.kqueue.close`, " +"and :meth:`select.devpoll.close` silently ignored errors." msgstr "" msgid ":gh:`146199`: Comparison of code objects now handles errors correctly." @@ -3750,10 +6654,10 @@ msgid "" msgstr "" msgid "" -":gh:`145876`: :exc:`AttributeError`\\ s and :exc:`KeyError`\\ s raised in :" -"meth:`!keys` or :meth:`!__getitem__` during dictionary unpacking " -"(``{**mymapping}`` or ``func(**mymapping)``) are no longer masked by :exc:" -"`TypeError`." +":gh:`145876`: :exc:`AttributeError`\\ s and :exc:`KeyError`\\ s raised " +"in :meth:`!keys` or :meth:`!__getitem__` during dictionary unpacking " +"(``{**mymapping}`` or ``func(**mymapping)``) are no longer masked " +"by :exc:`TypeError`." msgstr "" msgid "" @@ -3775,9 +6679,9 @@ msgid "" msgstr "" msgid "" -":gh:`145779`: Improve scaling of :func:`classmethod` and :func:" -"`staticmethod` calls in the free-threaded build by avoiding the descriptor " -"``__get__`` call." +":gh:`145779`: Improve scaling of :func:`classmethod` " +"and :func:`staticmethod` calls in the free-threaded build by avoiding the " +"descriptor ``__get__`` call." msgstr "" msgid "" @@ -3797,8 +6701,8 @@ msgid "" msgstr "" msgid "" -":gh:`145036`: In free-threaded build, fix race condition when calling :meth:" -"`!__sizeof__` on a :class:`list`" +":gh:`145036`: In free-threaded build, fix race condition when " +"calling :meth:`!__sizeof__` on a :class:`list`" msgstr "" msgid "" @@ -3841,12 +6745,12 @@ msgid "" msgstr "" msgid "" -":gh:`144503`: Fix a regression introduced in 3.14.3 and 3.13.12 where the :" -"mod:`multiprocessing` ``forkserver`` start method would fail with :exc:" -"`BrokenPipeError` when the parent process had a very large :data:`sys." -"argv`. The argv is now passed to the forkserver as separate command-line " -"arguments rather than being embedded in the ``-c`` command string, avoiding " -"the operating system's per-argument length limit." +":gh:`144503`: Fix a regression introduced in 3.14.3 and 3.13.12 where " +"the :mod:`multiprocessing` ``forkserver`` start method would fail " +"with :exc:`BrokenPipeError` when the parent process had a very " +"large :data:`sys.argv`. The argv is now passed to the forkserver as " +"separate command-line arguments rather than being embedded in the ``-c`` " +"command string, avoiding the operating system's per-argument length limit." msgstr "" msgid "" @@ -3860,8 +6764,8 @@ msgid "" "Base64 codecs in the :mod:`binascii` and :mod:`base64` modules. In the " "encoding functions it controls whether the pad character can be added in " "the output, in the decoding functions it controls whether padding is " -"required in input. Padding of input no longer required in :func:`base64." -"urlsafe_b64decode` by default." +"required in input. Padding of input no longer required " +"in :func:`base64.urlsafe_b64decode` by default." msgstr "" msgid "" @@ -3870,10 +6774,10 @@ msgid "" msgstr "" msgid "" -":gh:`147944`: Accepted range for the *bytes_per_sep* argument of :meth:" -"`bytes.hex`, :meth:`bytearray.hex`, :meth:`memoryview.hex`, and :func:" -"`binascii.b2a_hex` is now increased, so passing ``sys.maxsize`` and ``-sys." -"maxsize`` is now valid." +":gh:`147944`: Accepted range for the *bytes_per_sep* argument " +"of :meth:`bytes.hex`, :meth:`bytearray.hex`, :meth:`memoryview.hex`, " +"and :func:`binascii.b2a_hex` is now increased, so passing ``sys.maxsize`` " +"and ``-sys.maxsize`` is now valid." msgstr "" msgid "" @@ -3890,31 +6794,32 @@ msgid "" msgstr "" msgid "" -":gh:`146090`: :mod:`sqlite3`: fix a crash when :meth:`sqlite3.Connection." -"create_collation` fails with `SQLITE_BUSY `__. Patch by Bénédikt Tran." +":gh:`146090`: :mod:`sqlite3`: fix a crash " +"when :meth:`sqlite3.Connection.create_collation` fails with `SQLITE_BUSY " +"`__. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`146090`: :mod:`sqlite3`: properly raise :exc:`MemoryError` instead of :" -"exc:`SystemError` when a context callback fails to be allocated. Patch by " -"Bénédikt Tran." +":gh:`146090`: :mod:`sqlite3`: properly raise :exc:`MemoryError` instead " +"of :exc:`SystemError` when a context callback fails to be allocated. Patch " +"by Bénédikt Tran." msgstr "" msgid "" -":gh:`146507`: Make :meth:`asyncio.SelectorEventLoop` stream transport's :" -"meth:`~asyncio.WriteTransport.get_write_buffer_size` O(1) by maintaining a " -"running byte counter instead of iterating the buffer on every call." +":gh:`146507`: Make :meth:`asyncio.SelectorEventLoop` stream " +"transport's :meth:`~asyncio.WriteTransport.get_write_buffer_size` O(1) by " +"maintaining a running byte counter instead of iterating the buffer on every " +"call." msgstr "" msgid "" -":gh:`145056`: Fix merging of :class:`collections.OrderedDict` and :class:" -"`frozendict`." +":gh:`145056`: Fix merging of :class:`collections.OrderedDict` " +"and :class:`frozendict`." msgstr "" msgid "" -":gh:`145056`: Add support for merging :class:`collections.UserDict` and :" -"class:`frozendict`." +":gh:`145056`: Add support for merging :class:`collections.UserDict` " +"and :class:`frozendict`." msgstr "" msgid "" @@ -3924,24 +6829,24 @@ msgid "" msgstr "" msgid "" -":gh:`146440`: :mod:`json`: Add the *array_hook* parameter to :func:`~json." -"load` and :func:`~json.loads` functions: allow a callback for JSON literal " -"array types to customize Python lists in the resulting decoded object. " -"Passing combined :class:`frozendict` to *object_pairs_hook* param and :class:" -"`tuple` to ``array_hook`` will yield a deeply nested immutable Python " -"structure representing the JSON data." +":gh:`146440`: :mod:`json`: Add the *array_hook* parameter " +"to :func:`~json.load` and :func:`~json.loads` functions: allow a callback " +"for JSON literal array types to customize Python lists in the resulting " +"decoded object. Passing combined :class:`frozendict` to *object_pairs_hook* " +"param and :class:`tuple` to ``array_hook`` will yield a deeply nested " +"immutable Python structure representing the JSON data." msgstr "" msgid "" -":gh:`146431`: Add the *wrapcol* parameter to :mod:`base64` functions :func:" -"`~base64.b16encode`, :func:`~base64.b32encode`, :func:`~base64." -"b32hexencode`, :func:`~base64.b85encode` and :func:`~base64.z85encode`, and :" -"mod:`binascii` functions :func:`~binascii.b2a_base32` and :func:`~binascii." -"b2a_base85`. Add the *ignorechars* parameter to :mod:`base64` functions :" -"func:`~base64.b16decode`, :func:`~base64.b32decode`, :func:`~base64." -"b32hexdecode`, :func:`~base64.b85decode` and :func:`~base64.z85decode`, and :" -"mod:`binascii` functions :func:`~binascii.a2b_hex`, :func:`~binascii." -"unhexlify`, :func:`~binascii.a2b_base32` and :func:`~binascii.a2b_base85`." +":gh:`146431`: Add the *wrapcol* parameter to :mod:`base64` " +"functions :func:`~base64.b16encode`, :func:`~base64.b32encode`, :func:`~base64.b32hexencode`, :func:`~base64.b85encode` " +"and :func:`~base64.z85encode`, and :mod:`binascii` " +"functions :func:`~binascii.b2a_base32` and :func:`~binascii.b2a_base85`. Add " +"the *ignorechars* parameter to :mod:`base64` " +"functions :func:`~base64.b16decode`, :func:`~base64.b32decode`, :func:`~base64.b32hexdecode`, :func:`~base64.b85decode` " +"and :func:`~base64.z85decode`, and :mod:`binascii` " +"functions :func:`~binascii.a2b_hex`, :func:`~binascii.unhexlify`, :func:`~binascii.a2b_base32` " +"and :func:`~binascii.a2b_base85`." msgstr "" msgid "" @@ -3960,8 +6865,8 @@ msgid "" msgstr "" msgid "" -":gh:`140947`: Fix incorrect contextvars handling in server tasks created by :" -"mod:`asyncio`. Patch by Kumar Aditya." +":gh:`140947`: Fix incorrect contextvars handling in server tasks created " +"by :mod:`asyncio`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -3992,14 +6897,14 @@ msgstr "" msgid "" ":gh:`145410`: On Windows, :func:`sysconfig.get_platform` now gets the " -"platform from the ``_sysconfig`` module instead of parsing :data:`sys." -"version` string. Patch by Victor Stinner." +"platform from the ``_sysconfig`` module instead of " +"parsing :data:`sys.version` string. Patch by Victor Stinner." msgstr "" msgid "" ":gh:`146091`: Fix a bug in :func:`termios.tcsetwinsize` where passing a " -"sequence that raises an exception in ``__getitem__`` would cause a :exc:" -"`SystemError` instead of propagating the original exception." +"sequence that raises an exception in ``__getitem__`` would cause " +"a :exc:`SystemError` instead of propagating the original exception." msgstr "" msgid "" @@ -4041,10 +6946,10 @@ msgid "" msgstr "" msgid "" -":gh:`145980`: Added the *alphabet* parameter in :func:`~binascii." -"b2a_base64`, :func:`~binascii.a2b_base64`, :func:`~binascii.b2a_base85` and :" -"func:`~binascii.a2b_base85` and a number of ``*_ALPHABET`` constants in the :" -"mod:`binascii` module. Removed :func:`!b2a_z85` and :func:`!a2b_z85`." +":gh:`145980`: Added the *alphabet* parameter " +"in :func:`~binascii.b2a_base64`, :func:`~binascii.a2b_base64`, :func:`~binascii.b2a_base85` " +"and :func:`~binascii.a2b_base85` and a number of ``*_ALPHABET`` constants in " +"the :mod:`binascii` module. Removed :func:`!b2a_z85` and :func:`!a2b_z85`." msgstr "" msgid "" @@ -4059,8 +6964,8 @@ msgstr "" msgid "" ":gh:`145883`: :mod:`zoneinfo`: Fix heap buffer overflow reads from malformed " -"TZif data. Found by OSS Fuzz, issues :oss-fuzz:`492245058` and :oss-fuzz:" -"`492230068`." +"TZif data. Found by OSS Fuzz, issues :oss-fuzz:`492245058` and :oss-" +"fuzz:`492230068`." msgstr "" msgid "" @@ -4068,8 +6973,8 @@ msgid "" "calling it with non-ASCII string format will now raise a :exc:`ValueError` " "instead of :exc:`UnicodeEncodeError`, calling it with non-ASCII bytes format " "will now raise a :exc:`ValueError` instead of :exc:`struct.error`, getting " -"the :attr:`!format` attribute of uninitialized object will now raise an :exc:" -"`AttributeError` instead of :exc:`RuntimeError`." +"the :attr:`!format` attribute of uninitialized object will now raise " +"an :exc:`AttributeError` instead of :exc:`RuntimeError`." msgstr "" msgid "" @@ -4097,8 +7002,8 @@ msgstr "" msgid "" ":gh:`145750`: Avoid undefined behaviour from signed integer overflow when " -"parsing format strings in the :mod:`struct` module. Found by OSS Fuzz in :" -"oss-fuzz:`488466741`." +"parsing format strings in the :mod:`struct` module. Found by OSS Fuzz " +"in :oss-fuzz:`488466741`." msgstr "" msgid ":gh:`145719`: Add ``application/efi`` MIME type to :mod:`mimetypes`." @@ -4108,9 +7013,10 @@ msgid ":gh:`145717`: Add a few Microsoft-specific MIME types." msgstr "" msgid "" -":gh:`145703`: :mod:`asyncio`: Make sure that :meth:`loop.call_at ` and :meth:`loop.call_later ` trigger " -"scheduled events on time when the clock resolution becomes too small." +":gh:`145703`: :mod:`asyncio`: Make sure that :meth:`loop.call_at " +"` and :meth:`loop.call_later " +"` trigger scheduled events on time when the clock " +"resolution becomes too small." msgstr "" msgid "" @@ -4125,16 +7031,16 @@ msgid "" msgstr "" msgid "" -":gh:`145650`: Add :meth:`~object.__repr__` support to :class:`logging." -"Formatter` and :class:`logging.Filter`, showing the format string and filter " -"name respectively." +":gh:`145650`: Add :meth:`~object.__repr__` support " +"to :class:`logging.Formatter` and :class:`logging.Filter`, showing the " +"format string and filter name respectively." msgstr "" msgid "" -":gh:`145587`: Resolved a performance regression in ``multiprocessing." -"connection.wait`` on Windows that caused infinite busy loops when called " -"with no objects. The function now properly yields control to the OS to " -"conserve CPU resources. Patch By Shrey Naithani" +":gh:`145587`: Resolved a performance regression in " +"``multiprocessing.connection.wait`` on Windows that caused infinite busy " +"loops when called with no objects. The function now properly yields control " +"to the OS to conserve CPU resources. Patch By Shrey Naithani" msgstr "" msgid "" @@ -4153,11 +7059,12 @@ msgid "" msgstr "" msgid "" -":gh:`145264`: Base64 decoder (see :func:`binascii.a2b_base64`, :func:`base64." -"b64decode`, etc) no longer ignores excess data after the first padded quad " -"in non-strict (default) mode. Instead, in conformance with :rfc:`4648`, " -"section 3.3, it now ignores the pad character, \"=\", if it is present " -"before the end of the encoded data." +":gh:`145264`: Base64 decoder " +"(see :func:`binascii.a2b_base64`, :func:`base64.b64decode`, etc) no longer " +"ignores excess data after the first padded quad in non-strict (default) " +"mode. Instead, in conformance with :rfc:`4648`, section 3.3, it now ignores " +"the pad character, \"=\", if it is present before the end of the encoded " +"data." msgstr "" msgid "" @@ -4168,17 +7075,17 @@ msgid "" msgstr "" msgid "" -":gh:`144270`: Made the *tag* parameter of :class:`xml.etree.ElementTree." -"Element` and the *parent* and *tag* parameters of :func:`xml.etree." -"ElementTree.SubElement` positional-only, matching the behavior of the C " -"accelerator." +":gh:`144270`: Made the *tag* parameter " +"of :class:`xml.etree.ElementTree.Element` and the *parent* and *tag* " +"parameters of :func:`xml.etree.ElementTree.SubElement` positional-only, " +"matching the behavior of the C accelerator." msgstr "" msgid "" -":gh:`144984`: Fix crash in :meth:`xml.parsers.expat.xmlparser." -"ExternalEntityParserCreate` when an allocation fails. The error paths could " -"dereference NULL ``handlers`` and double-decrement the parent parser's " -"reference count." +":gh:`144984`: Fix crash " +"in :meth:`xml.parsers.expat.xmlparser.ExternalEntityParserCreate` when an " +"allocation fails. The error paths could dereference NULL ``handlers`` and " +"double-decrement the parent parser's reference count." msgstr "" msgid "" @@ -4188,8 +7095,8 @@ msgid "" msgstr "" msgid "" -":gh:`140715`: Add ``%n`` and ``%t`` support to :meth:`~datetime.datetime." -"strptime`." +":gh:`140715`: Add ``%n`` and ``%t`` support " +"to :meth:`~datetime.datetime.strptime`." msgstr "" msgid "" @@ -4199,8 +7106,9 @@ msgstr "" msgid "" ":gh:`140814`: :func:`multiprocessing.freeze_support` no longer sets the " -"default start method as a side effect, which previously caused a subsequent :" -"func:`multiprocessing.set_start_method` call to raise :exc:`RuntimeError`." +"default start method as a side effect, which previously caused a " +"subsequent :func:`multiprocessing.set_start_method` call to " +"raise :exc:`RuntimeError`." msgstr "" msgid "" @@ -4210,14 +7118,14 @@ msgstr "" msgid "" ":gh:`143715`: Calling the ``Struct.__new__()`` without required argument now " -"is deprecated. Calling :meth:`~object.__init__` method on initialized :class:" -"`~struct.Struct` objects is deprecated." +"is deprecated. Calling :meth:`~object.__init__` method on " +"initialized :class:`~struct.Struct` objects is deprecated." msgstr "" msgid "" ":gh:`142763`: Fix a race condition between :class:`zoneinfo.ZoneInfo` " -"creation and :func:`zoneinfo.ZoneInfo.clear_cache` that could raise :exc:" -"`KeyError`." +"creation and :func:`zoneinfo.ZoneInfo.clear_cache` that could " +"raise :exc:`KeyError`." msgstr "" msgid "" @@ -4255,14 +7163,16 @@ msgid "" msgstr "" msgid "" -":gh:`112632`: Add an *expand* keyword argument for :func:`pprint.pprint`, :" -"func:`pprint.pformat`, :func:`pprint.pp` by passing on all *kwargs* and :" -"class:`pprint.PrettyPrinter`. Contributed by Stefan Todoran and Semyon Moroz." +":gh:`112632`: Add an *expand* keyword argument " +"for :func:`pprint.pprint`, :func:`pprint.pformat`, :func:`pprint.pp` by " +"passing on all *kwargs* and :class:`pprint.PrettyPrinter`. Contributed by " +"Stefan Todoran and Semyon Moroz." msgstr "" msgid "" -":gh:`66419`: Optional argument with :ref:`nargs` equals to ``argparse." -"REMAINDER`` now consumes all remaining arguments including ``'--'``." +":gh:`66419`: Optional argument with :ref:`nargs` equals to " +"``argparse.REMAINDER`` now consumes all remaining arguments including " +"``'--'``." msgstr "" msgid "" @@ -4356,8 +7266,8 @@ msgid "" msgstr "" msgid "" -":gh:`137586`: Invoke :program:`osascript` with absolute path in :mod:" -"`webbrowser` and :mod:`!turtledemo`." +":gh:`137586`: Invoke :program:`osascript` with absolute path " +"in :mod:`webbrowser` and :mod:`!turtledemo`." msgstr "" msgid "" @@ -4367,8 +7277,8 @@ msgid "" msgstr "" msgid "" -":gh:`145976`: Remove :file:`Misc/indent.pro`, a configuration file for GNU :" -"manpage:`indent(1)`." +":gh:`145976`: Remove :file:`Misc/indent.pro`, a configuration file for " +"GNU :manpage:`indent(1)`." msgstr "" msgid ":gh:`145976`: Remove :file:`Misc/vgrindefs` and :file:`Misc/Porting`." @@ -4381,17 +7291,13 @@ msgid "" msgstr "" msgid "" -":gh:`146175`: The following macros are :term:`soft deprecated`: :c:macro:" -"`Py_ALIGNED`, :c:macro:`PY_FORMAT_SIZE_T`, :c:macro:`Py_LL`, :c:macro:" -"`Py_ULL`, :c:macro:`PY_LONG_LONG`, :c:macro:`PY_LLONG_MIN`, :c:macro:" -"`PY_LLONG_MAX`, :c:macro:`PY_ULLONG_MAX`, :c:macro:`PY_INT32_T`, :c:macro:" -"`PY_UINT32_T`, :c:macro:`PY_INT64_T`, :c:macro:`PY_UINT64_T`, :c:macro:" -"`PY_SIZE_MAX`, :c:macro:`Py_UNICODE_SIZE`, :c:macro:`Py_VA_COPY`." +":gh:`146175`: The following macros are :term:`soft " +"deprecated`: :c:macro:`Py_ALIGNED`, :c:macro:`PY_FORMAT_SIZE_T`, :c:macro:`Py_LL`, :c:macro:`Py_ULL`, :c:macro:`PY_LONG_LONG`, :c:macro:`PY_LLONG_MIN`, :c:macro:`PY_LLONG_MAX`, :c:macro:`PY_ULLONG_MAX`, :c:macro:`PY_INT32_T`, :c:macro:`PY_UINT32_T`, :c:macro:`PY_INT64_T`, :c:macro:`PY_UINT64_T`, :c:macro:`PY_SIZE_MAX`, :c:macro:`Py_UNICODE_SIZE`, :c:macro:`Py_VA_COPY`." msgstr "" msgid "" -"The macro :c:macro:`Py_UNICODE_WIDE`, which was scheduled for removal, is :" -"term:`soft deprecated` instead." +"The macro :c:macro:`Py_UNICODE_WIDE`, which was scheduled for removal, " +"is :term:`soft deprecated` instead." msgstr "" msgid "" @@ -4405,8 +7311,9 @@ msgid "" msgstr "" msgid "" -":gh:`145010`: Use GCC dialect alternatives for inline assembly in ``object." -"h`` so that the Python headers compile correctly with ``-masm=intel``." +":gh:`145010`: Use GCC dialect alternatives for inline assembly in " +"``object.h`` so that the Python headers compile correctly with ``-" +"masm=intel``." msgstr "" msgid "Python 3.15.0 alpha 7" @@ -4429,15 +7336,15 @@ msgid ":gh:`144551`: Updated bundled version of OpenSSL to 3.5.5." msgstr "" msgid "" -":gh:`144741`: Fix ``test_frame_pointer_unwind`` when Python is built with :" -"option:`--enable-shared`. Classify also libpython frames as ``\"python\"``. " -"Patch by Victor Stinner." +":gh:`144741`: Fix ``test_frame_pointer_unwind`` when Python is built " +"with :option:`--enable-shared`. Classify also libpython frames as " +"``\"python\"``. Patch by Victor Stinner." msgstr "" msgid "" ":gh:`144739`: When Python was compiled with system expat older then 2.7.2 " -"but tests run with newer expat, still skip :class:`!test.test_pyexpat." -"MemoryProtectionTest`." +"but tests run with newer expat, still skip :class:`!" +"test.test_pyexpat.MemoryProtectionTest`." msgstr "" msgid "" @@ -4447,9 +7354,9 @@ msgid "" msgstr "" msgid "" -":gh:`144370`: Disallow usage of control characters in status in :mod:" -"`wsgiref.handlers` to prevent HTTP header injections. Patch by Benedikt " -"Johannes." +":gh:`144370`: Disallow usage of control characters in status " +"in :mod:`wsgiref.handlers` to prevent HTTP header injections. Patch by " +"Benedikt Johannes." msgstr "" msgid "" @@ -4459,9 +7366,9 @@ msgid "" msgstr "" msgid "" -":gh:`145551`: Fix InvalidStateError when cancelling process created by :func:" -"`asyncio.create_subprocess_exec` or :func:`asyncio.create_subprocess_shell`. " -"Patch by Daan De Meyer." +":gh:`145551`: Fix InvalidStateError when cancelling process created " +"by :func:`asyncio.create_subprocess_exec` " +"or :func:`asyncio.create_subprocess_shell`. Patch by Daan De Meyer." msgstr "" msgid "" @@ -4478,9 +7385,10 @@ msgstr "" msgid "" ":gh:`145335`: ``os.listdir(-1)`` and ``os.scandir(-1)`` now fail with " -"``OSError(errno.EBADF)`` rather than listing the current directory. ``os." -"listxattr(-1)`` now fails with ``OSError(errno.EBADF)`` rather than listing " -"extended attributes of the current directory. Patch by Victor Stinner." +"``OSError(errno.EBADF)`` rather than listing the current directory. " +"``os.listxattr(-1)`` now fails with ``OSError(errno.EBADF)`` rather than " +"listing extended attributes of the current directory. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -4509,8 +7417,8 @@ msgid "" msgstr "" msgid "" -":gh:`123853`: Removed Windows 95 compatibility for :func:`locale." -"getdefaultlocale`." +":gh:`123853`: Removed Windows 95 compatibility " +"for :func:`locale.getdefaultlocale`." msgstr "" msgid "" @@ -4536,14 +7444,14 @@ msgid "" msgstr "" msgid "" -":gh:`141510`: ``ParameterizedMIMEHeader.params`` of :mod:`email." -"headerregistry` is now a :class:`frozendict` instead of a :class:`types." -"MappingProxyType`. Patch by Victor Stinner." +":gh:`141510`: ``ParameterizedMIMEHeader.params`` " +"of :mod:`email.headerregistry` is now a :class:`frozendict` instead of " +"a :class:`types.MappingProxyType`. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`134872`: Add valid import name suggestions on :exc:" -"`ModuleNotFoundError`." +":gh:`134872`: Add valid import name suggestions " +"on :exc:`ModuleNotFoundError`." msgstr "" msgid "" @@ -4576,8 +7484,8 @@ msgid "" msgstr "" msgid "" -":gh:`144835`: Added missing explanations for some parameters in :func:`glob." -"glob` and :func:`glob.iglob`." +":gh:`144835`: Added missing explanations for some parameters " +"in :func:`glob.glob` and :func:`glob.iglob`." msgstr "" msgid "" @@ -4610,11 +7518,11 @@ msgid ":gh:`117865`: Reduce the import time of :mod:`inspect` module by ~20%." msgstr "" msgid "" -":gh:`144156`: Fix the folding of headers by the :mod:`email` library when :" -"rfc:`2047` encoded words are used. Now whitespace is correctly preserved " -"and also correctly added between adjacent encoded words. The latter " -"property was broken by the fix for :gh:`92081`, which mostly fixed previous " -"failures to preserve whitespace." +":gh:`144156`: Fix the folding of headers by the :mod:`email` library " +"when :rfc:`2047` encoded words are used. Now whitespace is correctly " +"preserved and also correctly added between adjacent encoded words. The " +"latter property was broken by the fix for :gh:`92081`, which mostly fixed " +"previous failures to preserve whitespace." msgstr "" msgid "" @@ -4624,9 +7532,10 @@ msgid "" msgstr "" msgid "" -":gh:`144615`: Methods directly decorated with :deco:`functools." -"singledispatchmethod` now dispatch on the second argument when called after " -"being accessed as class attributes. Patch by Bartosz Sławecki." +":gh:`144615`: Methods directly decorated " +"with :deco:`functools.singledispatchmethod` now dispatch on the second " +"argument when called after being accessed as class attributes. Patch by " +"Bartosz Sławecki." msgstr "" msgid "" @@ -4664,9 +7573,9 @@ msgid "" msgstr "" msgid "" -":gh:`143698`: Allow *scheduler* and *setpgroup* arguments to be explicitly :" -"const:`None` when calling :func:`os.posix_spawn` or :func:`os.posix_spawnp`. " -"Patch by Bénédikt Tran." +":gh:`143698`: Allow *scheduler* and *setpgroup* arguments to be " +"explicitly :const:`None` when calling :func:`os.posix_spawn` " +"or :func:`os.posix_spawnp`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -4681,8 +7590,8 @@ msgid "" msgstr "" msgid "" -":gh:`85809`: Added :term:`path-like object` support for :func:`shutil." -"make_archive`." +":gh:`85809`: Added :term:`path-like object` support " +"for :func:`shutil.make_archive`." msgstr "" msgid "" @@ -4691,9 +7600,9 @@ msgid "" msgstr "" msgid "" -":gh:`142781`: :mod:`zoneinfo`: fix a crash when instantiating :class:" -"`~zoneinfo.ZoneInfo` objects for which the internal class-level cache is " -"inconsistent." +":gh:`142781`: :mod:`zoneinfo`: fix a crash when " +"instantiating :class:`~zoneinfo.ZoneInfo` objects for which the internal " +"class-level cache is inconsistent." msgstr "" msgid "" @@ -4709,10 +7618,10 @@ msgid "" msgstr "" msgid "" -":gh:`139899`: Introduced :meth:`importlib.abc.MetaPathFinder.discover` and :" -"meth:`importlib.abc.PathEntryFinder.discover` to allow module and submodule " -"name discovery without assuming the use of traditional filesystem based " -"imports." +":gh:`139899`: Introduced :meth:`importlib.abc.MetaPathFinder.discover` " +"and :meth:`importlib.abc.PathEntryFinder.discover` to allow module and " +"submodule name discovery without assuming the use of traditional filesystem " +"based imports." msgstr "" msgid "" @@ -4726,8 +7635,8 @@ msgid "" msgstr "" msgid "" -":gh:`124748`: Improve :exc:`TypeError` error message when :meth:`!weakref." -"WeakKeyDictionary.update` is used with keyword-only parameters." +":gh:`124748`: Improve :exc:`TypeError` error message when :meth:`!" +"weakref.WeakKeyDictionary.update` is used with keyword-only parameters." msgstr "" msgid "" @@ -4736,9 +7645,9 @@ msgstr "" msgid "" ":issue:`42353`: The :mod:`re` module gains a new :func:`re.prefixmatch` " -"function as an explicit spelling of what has to date always been known as :" -"func:`re.match`. :class:`re.Pattern` similary gains a :meth:`re.Pattern." -"prefixmatch` method." +"function as an explicit spelling of what has to date always been known " +"as :func:`re.match`. :class:`re.Pattern` similary gains " +"a :meth:`re.Pattern.prefixmatch` method." msgstr "" msgid "" @@ -4758,8 +7667,8 @@ msgid "" msgstr "" msgid "" -":issue:`40212`: Re-enable :func:`os.posix_fallocate` and :func:`os." -"posix_fadvise` on AIX." +":issue:`40212`: Re-enable :func:`os.posix_fallocate` " +"and :func:`os.posix_fadvise` on AIX." msgstr "" msgid "" @@ -4780,9 +7689,9 @@ msgid "" msgstr "" msgid "" -":gh:`110937`: Document rest of full public :class:`importlib.metadata." -"Distribution` API. Also add the (already documented) :class:`~importlib." -"metadata.PackagePath` to ``__all__``." +":gh:`110937`: Document rest of full " +"public :class:`importlib.metadata.Distribution` API. Also add the (already " +"documented) :class:`~importlib.metadata.PackagePath` to ``__all__``." msgstr "" msgid "" @@ -4804,8 +7713,8 @@ msgid "" msgstr "" msgid "" -":gh:`116738`: Make :meth:`!mmap.mmap.set_name` thread-safe on the :term:" -"`free threaded ` build." +":gh:`116738`: Make :meth:`!mmap.mmap.set_name` thread-safe on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -4836,9 +7745,9 @@ msgid "Patch by Pablo Galindo." msgstr "" msgid "" -":gh:`145275`: Added the :option:`-X pathconfig_warnings<-X>` and :envvar:" -"`PYTHON_PATHCONFIG_WARNINGS` options, allowing to disable warnings from :ref:" -"`sys-path-init`." +":gh:`145275`: Added the :option:`-X pathconfig_warnings<-X>` " +"and :envvar:`PYTHON_PATHCONFIG_WARNINGS` options, allowing to disable " +"warnings from :ref:`sys-path-init`." msgstr "" msgid "" @@ -4878,12 +7787,12 @@ msgid ":gh:`145118`: :meth:`str.maketrans` now accepts :class:`frozendict`." msgstr "" msgid "" -":gh:`144015`: Speed up :meth:`bytes.hex`, :meth:`bytearray.hex`, :func:" -"`binascii.hexlify`, and :mod:`hashlib` ``.hexdigest()`` operations with SIMD " -"on x86-64, ARM64, and ARM32 with NEON when built with gcc (version 12 or " -"higher) or clang (version 3 or higher) compilers. Around 1.1-3x faster for " -"common 16-64 byte inputs such as hashlib hex digests, and up to 8x faster " -"for larger data." +":gh:`144015`: Speed " +"up :meth:`bytes.hex`, :meth:`bytearray.hex`, :func:`binascii.hexlify`, " +"and :mod:`hashlib` ``.hexdigest()`` operations with SIMD on x86-64, ARM64, " +"and ARM32 with NEON when built with gcc (version 12 or higher) or clang " +"(version 3 or higher) compilers. Around 1.1-3x faster for common 16-64 byte " +"inputs such as hashlib hex digests, and up to 8x faster for larger data." msgstr "" msgid "" @@ -4926,9 +7835,9 @@ msgid "" msgstr "" msgid "" -":gh:`144914`: Use ``mimalloc`` for raw memory allocations such as via :c:" -"func:`PyMem_RawMalloc` for better performance on :term:`free-threaded builds " -"`. Patch by Kumar Aditya." +":gh:`144914`: Use ``mimalloc`` for raw memory allocations such as " +"via :c:func:`PyMem_RawMalloc` for better performance on :term:`free-threaded " +"builds `. Patch by Kumar Aditya." msgstr "" msgid ":gh:`144872`: Fix heap buffer overflow in the parser found by OSS-Fuzz." @@ -5011,10 +7920,10 @@ msgid "" msgstr "" msgid "" -":gh:`144981`: Made :c:func:`PyUnstable_Code_SetExtra`, :c:func:" -"`PyUnstable_Code_GetExtra`, and :c:func:" -"`PyUnstable_Eval_RequestCodeExtraIndex` thread-safe on the :term:`free " -"threaded ` build." +":gh:`144981`: " +"Made :c:func:`PyUnstable_Code_SetExtra`, :c:func:`PyUnstable_Code_GetExtra`, " +"and :c:func:`PyUnstable_Eval_RequestCodeExtraIndex` thread-safe on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -5047,10 +7956,10 @@ msgid "" msgstr "" msgid "" -":gh:`144175`: Add :c:func:`PyArg_ParseArray` and :c:func:" -"`PyArg_ParseArrayAndKeywords` functions to parse arguments of functions " -"using the :c:macro:`METH_FASTCALL` calling convention. Patch by Victor " -"Stinner." +":gh:`144175`: Add :c:func:`PyArg_ParseArray` " +"and :c:func:`PyArg_ParseArrayAndKeywords` functions to parse arguments of " +"functions using the :c:macro:`METH_FASTCALL` calling convention. Patch by " +"Victor Stinner." msgstr "" msgid "" @@ -5093,8 +8002,9 @@ msgid ":gh:`144551`: Update macOS installer to use OpenSSL 3.5.5." msgstr "" msgid "" -":gh:`80620`: Support negative timestamps in :func:`time.gmtime`, :func:`time." -"localtime`, and various :mod:`datetime` functions." +":gh:`80620`: Support negative timestamps " +"in :func:`time.gmtime`, :func:`time.localtime`, and various :mod:`datetime` " +"functions." msgstr "" msgid "" @@ -5106,15 +8016,15 @@ msgstr "" msgid "" ":gh:`65784`: Add support for parametrized resource ``wantobjects`` in " -"regrtests, which allows to run Tkinter tests with the specified value of :" -"data:`!tkinter.wantobjects`, for example ``-u wantobjects=0``." +"regrtests, which allows to run Tkinter tests with the specified value " +"of :data:`!tkinter.wantobjects`, for example ``-u wantobjects=0``." msgstr "" msgid "" ":gh:`144125`: :mod:`~email.generator.BytesGenerator` will now refuse to " -"serialize (write) headers that are unsafely folded or delimited; see :attr:" -"`~email.policy.Policy.verify_generated_headers`. (Contributed by Bas " -"Bloemsaat and Petr Viktorin in :gh:`121650`)." +"serialize (write) headers that are unsafely folded or delimited; " +"see :attr:`~email.policy.Policy.verify_generated_headers`. (Contributed by " +"Bas Bloemsaat and Petr Viktorin in :gh:`121650`)." msgstr "" msgid "" @@ -5150,28 +8060,29 @@ msgid "" msgstr "" msgid "" -":gh:`144493`: Improve an exception error message in ``_overlapped." -"BindLocal()`` that is raised when :meth:`asyncio.loop.sock_connect` is " -"called on a :class:`asyncio.ProactorEventLoop` with a socket that has an " -"invalid address family." +":gh:`144493`: Improve an exception error message in " +"``_overlapped.BindLocal()`` that is raised " +"when :meth:`asyncio.loop.sock_connect` is called on " +"a :class:`asyncio.ProactorEventLoop` with a socket that has an invalid " +"address family." msgstr "" msgid "" -":gh:`144386`: Add support for arbitrary descriptors :meth:`!__enter__`, :" -"meth:`!__exit__`, :meth:`!__aenter__`, and :meth:`!__aexit__` in :class:" -"`contextlib.ExitStack` and :class:`contextlib.AsyncExitStack`, for " +":gh:`144386`: Add support for arbitrary descriptors :meth:`!" +"__enter__`, :meth:`!__exit__`, :meth:`!__aenter__`, and :meth:`!__aexit__` " +"in :class:`contextlib.ExitStack` and :class:`contextlib.AsyncExitStack`, for " "consistency with the :keyword:`with` and :keyword:`async with` statements." msgstr "" msgid "" -":gh:`123471`: Make concurrent iteration over :class:`itertools." -"combinations_with_replacement` and :class:`itertools.permutations` safe " -"under free-threading." +":gh:`123471`: Make concurrent iteration " +"over :class:`itertools.combinations_with_replacement` " +"and :class:`itertools.permutations` safe under free-threading." msgstr "" msgid "" -":gh:`74453`: Deprecate :func:`os.path.commonprefix` in favor of :func:`os." -"path.commonpath` for path segment prefixes." +":gh:`74453`: Deprecate :func:`os.path.commonprefix` in favor " +"of :func:`os.path.commonpath` for path segment prefixes." msgstr "" msgid "" @@ -5199,8 +8110,8 @@ msgid "" msgstr "" msgid "" -":gh:`144206`: Improve error messages for buffer overflow in :func:`fcntl." -"fcntl` and :func:`fcntl.ioctl`." +":gh:`144206`: Improve error messages for buffer overflow " +"in :func:`fcntl.fcntl` and :func:`fcntl.ioctl`." msgstr "" msgid "" @@ -5210,14 +8121,15 @@ msgid "" msgstr "" msgid "" -":gh:`144249`: Add filename context to :exc:`OSError` exceptions raised by :" -"func:`ssl.SSLContext.load_cert_chain`, allowing users to have more context." +":gh:`144249`: Add filename context to :exc:`OSError` exceptions raised " +"by :func:`ssl.SSLContext.load_cert_chain`, allowing users to have more " +"context." msgstr "" msgid "" ":gh:`132888`: Fix incorrect use of :func:`ctypes.GetLastError` and add " -"missing error checks for Windows API calls in :mod:`!_pyrepl." -"windows_console`." +"missing error checks for Windows API calls in :mod:`!" +"_pyrepl.windows_console`." msgstr "" msgid ":gh:`142956`: Updated :mod:`tomllib` to parse TOML 1.1.0." @@ -5234,8 +8146,8 @@ msgid "" msgstr "" msgid "" -":gh:`143594`: Add :meth:`symtable.Function.get_cells` and :meth:`symtable." -"Symbol.is_cell` methods." +":gh:`143594`: Add :meth:`symtable.Function.get_cells` " +"and :meth:`symtable.Symbol.is_cell` methods." msgstr "" msgid "" @@ -5244,8 +8156,9 @@ msgid "" msgstr "" msgid "" -":gh:`144128`: Fix a crash in :meth:`array.array.fromlist` when an element's :" -"meth:`~object.__index__` method mutates the input list during conversion." +":gh:`144128`: Fix a crash in :meth:`array.array.fromlist` when an " +"element's :meth:`~object.__index__` method mutates the input list during " +"conversion." msgstr "" msgid "" @@ -5255,9 +8168,10 @@ msgid "" msgstr "" msgid "" -":gh:`143658`: :mod:`importlib.metadata`: Use :meth:`str.lower` and :meth:" -"`str.replace` to further improve performance of :meth:`!importlib.metadata." -"Prepared.normalize`. Patch by Hugo van Kemenade and Henry Schreiner." +":gh:`143658`: :mod:`importlib.metadata`: Use :meth:`str.lower` " +"and :meth:`str.replace` to further improve performance of :meth:`!" +"importlib.metadata.Prepared.normalize`. Patch by Hugo van Kemenade and Henry " +"Schreiner." msgstr "" msgid "" @@ -5268,24 +8182,24 @@ msgstr "" msgid "" ":gh:`83069`: :meth:`subprocess.Popen.wait`: when ``timeout`` is not " "``None``, an efficient event-driven mechanism now waits for process " -"termination, if available. Linux >= 5.3 uses :func:`os.pidfd_open` + :func:" -"`select.poll`. macOS and other BSD variants use :func:`select.kqueue` + " -"``KQ_FILTER_PROC`` + ``KQ_NOTE_EXIT``. Windows keeps using " -"``WaitForSingleObject`` (unchanged). If none of these mechanisms are " -"available, the function falls back to the traditional busy loop (non-" +"termination, if available. Linux >= 5.3 uses :func:`os.pidfd_open` " +"+ :func:`select.poll`. macOS and other BSD variants " +"use :func:`select.kqueue` + ``KQ_FILTER_PROC`` + ``KQ_NOTE_EXIT``. Windows " +"keeps using ``WaitForSingleObject`` (unchanged). If none of these mechanisms " +"are available, the function falls back to the traditional busy loop (non-" "blocking call and short sleeps). Patch by Giampaolo Rodola." msgstr "" msgid "" ":gh:`144030`: The Python implementation of :func:`functools.lru_cache` " "differed from the default C implementation in that it did not check that its " -"argument is callable. This discrepancy is now fixed and both raise a :exc:" -"`TypeError`." +"argument is callable. This discrepancy is now fixed and both raise " +"a :exc:`TypeError`." msgstr "" msgid "" -":gh:`144001`: Added the *ignorechars* parameter in :func:`binascii." -"a2b_base64` and :func:`base64.b64decode`." +":gh:`144001`: Added the *ignorechars* parameter " +"in :func:`binascii.a2b_base64` and :func:`base64.b64decode`." msgstr "" msgid "" @@ -5294,9 +8208,9 @@ msgid "" msgstr "" msgid "" -":gh:`143999`: Fix an issue where :func:`inspect.getgeneratorstate` and :func:" -"`inspect.getcoroutinestate` could fail for generators wrapped by :func:" -"`types.coroutine` in the suspended state." +":gh:`143999`: Fix an issue where :func:`inspect.getgeneratorstate` " +"and :func:`inspect.getcoroutinestate` could fail for generators wrapped " +"by :func:`types.coroutine` in the suspended state." msgstr "" msgid "" @@ -5311,8 +8225,8 @@ msgstr "" msgid "" ":gh:`143897`: Remove the :meth:`!isxidstart` and :meth:`!isxidcontinue` " -"methods of :data:`unicodedata.ucd_3_2_0`. They are now only exposed as :func:" -"`unicodedata.isxidstart` and :func:`unicodedata.isxidcontinue`." +"methods of :data:`unicodedata.ucd_3_2_0`. They are now only exposed " +"as :func:`unicodedata.isxidstart` and :func:`unicodedata.isxidcontinue`." msgstr "" msgid "" @@ -5327,9 +8241,9 @@ msgid "" msgstr "" msgid "" -":gh:`143754`: Add new :mod:`tkinter` widget methods :meth:`!pack_content`, :" -"meth:`!place_content` and :meth:`!grid_content` which are alternative " -"spelling of old :meth:`!*_slaves` methods." +":gh:`143754`: Add new :mod:`tkinter` widget methods :meth:`!" +"pack_content`, :meth:`!place_content` and :meth:`!grid_content` which are " +"alternative spelling of old :meth:`!*_slaves` methods." msgstr "" msgid ":gh:`143756`: Fix potential thread safety issues in :mod:`ssl` module." @@ -5338,8 +8252,8 @@ msgstr "" msgid "" ":gh:`132604`: Previously, :class:`~typing.Protocol` classes that were not " "decorated with :deco:`~typing.runtime_checkable`, but that inherited from " -"another ``Protocol`` class that did have this decorator, could be used in :" -"func:`isinstance` and :func:`issubclass` checks. This behavior is now " +"another ``Protocol`` class that did have this decorator, could be used " +"in :func:`isinstance` and :func:`issubclass` checks. This behavior is now " "deprecated and such checks will throw a :exc:`TypeError` in Python 3.20. " "Patch by Bartosz Sławecki." msgstr "" @@ -5398,11 +8312,11 @@ msgid "" msgstr "" msgid "" -":gh:`141860`: Add an ``on_error`` keyword-only parameter to :func:" -"`multiprocessing.set_forkserver_preload` to control how import failures " -"during module preloading are handled. Accepts ``'ignore'`` (default, " -"silent), ``'warn'`` (emit :exc:`ImportWarning`), or ``'fail'`` (raise " -"exception). Contributed by Nick Neumann and Gregory P. Smith." +":gh:`141860`: Add an ``on_error`` keyword-only parameter " +"to :func:`multiprocessing.set_forkserver_preload` to control how import " +"failures during module preloading are handled. Accepts ``'ignore'`` " +"(default, silent), ``'warn'`` (emit :exc:`ImportWarning`), or ``'fail'`` " +"(raise exception). Contributed by Nick Neumann and Gregory P. Smith." msgstr "" msgid "" @@ -5417,12 +8331,12 @@ msgid "" msgstr "" msgid "" -":gh:`67041`: Add the *missing_as_none* parameter to :func:`~urllib.parse." -"urlparse`, :func:`~urllib.parse.urlsplit` and :func:`~urllib.parse." -"urldefrag` functions. Add the *keep_empty* parameter to :func:`~urllib.parse." -"urlunparse` and :func:`~urllib.parse.urlunsplit` functions. This allows to " -"distinguish between empty and not defined URI components and preserve empty " -"components." +":gh:`67041`: Add the *missing_as_none* parameter " +"to :func:`~urllib.parse.urlparse`, :func:`~urllib.parse.urlsplit` " +"and :func:`~urllib.parse.urldefrag` functions. Add the *keep_empty* " +"parameter to :func:`~urllib.parse.urlunparse` " +"and :func:`~urllib.parse.urlunsplit` functions. This allows to distinguish " +"between empty and not defined URI components and preserve empty components." msgstr "" msgid "" @@ -5477,9 +8391,9 @@ msgstr "" msgid "" ":gh:`120321`: Add ``gi_state``, ``cr_state``, and ``ag_state`` attributes to " "generators, coroutines, and async generators that return the current state " -"as a string (e.g., ``GEN_RUNNING``). The :mod:`inspect` module functions :" -"func:`~inspect.getgeneratorstate`, :func:`~inspect.getcoroutinestate`, and :" -"func:`~inspect.getasyncgenstate` now return these attributes directly." +"as a string (e.g., ``GEN_RUNNING``). The :mod:`inspect` module " +"functions :func:`~inspect.getgeneratorstate`, :func:`~inspect.getcoroutinestate`, " +"and :func:`~inspect.getasyncgenstate` now return these attributes directly." msgstr "" msgid ":gh:`141563`: Fix thread safety of :c:macro:`! PyDateTime_IMPORT`." @@ -5617,16 +8531,14 @@ msgid "" msgstr "" msgid "" -":gh:`143869`: Added :c:func:`PyLong_GetNativeLayout`, :c:struct:" -"`PyLongLayout`, :c:struct:`PyLongExport`, :c:func:`PyLong_Export`, :c:func:" -"`PyLong_FreeExport`, :c:struct:`PyLongWriter`, :c:func:" -"`PyLongWriter_Create`, :c:func:`PyLongWriter_Finish` and :c:func:" -"`PyLongWriter_Discard` to the limited API." +":gh:`143869`: " +"Added :c:func:`PyLong_GetNativeLayout`, :c:struct:`PyLongLayout`, :c:struct:`PyLongExport`, :c:func:`PyLong_Export`, :c:func:`PyLong_FreeExport`, :c:struct:`PyLongWriter`, :c:func:`PyLongWriter_Create`, :c:func:`PyLongWriter_Finish` " +"and :c:func:`PyLongWriter_Discard` to the limited API." msgstr "" msgid "" -":gh:`141070`: Renamed :c:func:`!PyUnstable_Object_Dump` to :c:func:" -"`PyObject_Dump`." +":gh:`141070`: Renamed :c:func:`!PyUnstable_Object_Dump` " +"to :c:func:`PyObject_Dump`." msgstr "" msgid "" @@ -5641,10 +8553,11 @@ msgstr "" msgid "" ":gh:`144278`: Enables defining the ``_PY_IMPL_NAME`` and " -"``_PY_IMPL_CACHE_TAG`` preprocessor definitions to override :data:`sys." -"implementation` at build time. Definitions need to include quotes when " -"setting to a string literal. Setting the cache tag to ``NULL`` has the " -"effect of completely disabling automatic creation and use of ``.pyc`` files." +"``_PY_IMPL_CACHE_TAG`` preprocessor definitions to " +"override :data:`sys.implementation` at build time. Definitions need to " +"include quotes when setting to a string literal. Setting the cache tag to " +"``NULL`` has the effect of completely disabling automatic creation and use " +"of ``.pyc`` files." msgstr "" msgid "" @@ -5701,17 +8614,18 @@ msgstr "" msgid "" ":gh:`143706`: Fix :mod:`multiprocessing` forkserver so that :data:`sys.argv` " -"is correctly set before ``__main__`` is preloaded. Previously, :data:`sys." -"argv` was empty during main module import in forkserver child processes. " -"This fixes a regression introduced in 3.13.8 and 3.14.1. Root caused by " -"Aaron Wieczorek, test provided by Thomas Watson, thanks!" +"is correctly set before ``__main__`` is preloaded. " +"Previously, :data:`sys.argv` was empty during main module import in " +"forkserver child processes. This fixes a regression introduced in 3.13.8 and " +"3.14.1. Root caused by Aaron Wieczorek, test provided by Thomas Watson, " +"thanks!" msgstr "" msgid "" -":gh:`143638`: Forbid reentrant calls of the :class:`pickle.Pickler` and :" -"class:`pickle.Unpickler` methods for the C implementation. Previously, this " -"could cause crash or data corruption, now concurrent calls of methods of the " -"same object raise :exc:`RuntimeError`." +":gh:`143638`: Forbid reentrant calls of the :class:`pickle.Pickler` " +"and :class:`pickle.Unpickler` methods for the C implementation. Previously, " +"this could cause crash or data corruption, now concurrent calls of methods " +"of the same object raise :exc:`RuntimeError`." msgstr "" msgid "" @@ -5750,10 +8664,10 @@ msgid "" msgstr "" msgid "" -":gh:`143517`: :func:`annotationlib.get_annotations` no longer raises a :exc:" -"`SyntaxError` when evaluating a stringified starred annotation that starts " -"with one or more whitespace characters followed by a ``*``. Patch by Bartosz " -"Sławecki." +":gh:`143517`: :func:`annotationlib.get_annotations` no longer raises " +"a :exc:`SyntaxError` when evaluating a stringified starred annotation that " +"starts with one or more whitespace characters followed by a ``*``. Patch by " +"Bartosz Sławecki." msgstr "" msgid ":gh:`143474`: Add :data:`os.RWF_ATOMIC` constant for Linux 6.11+." @@ -5764,8 +8678,8 @@ msgstr "" msgid "" ":gh:`143378`: Fix use-after-free crashes when a :class:`~io.BytesIO` object " -"is concurrently mutated during :meth:`~io.RawIOBase.write` or :meth:`~io." -"IOBase.writelines`." +"is concurrently mutated during :meth:`~io.RawIOBase.write` " +"or :meth:`~io.IOBase.writelines`." msgstr "" msgid "" @@ -5775,8 +8689,8 @@ msgid "" msgstr "" msgid "" -":gh:`143346`: Fix incorrect wrapping of the Base64 data in :class:`!plistlib." -"_PlistWriter` when the indent contains a mix of tabs and spaces." +":gh:`143346`: Fix incorrect wrapping of the Base64 data in :class:`!" +"plistlib._PlistWriter` when the indent contains a mix of tabs and spaces." msgstr "" msgid "" @@ -5796,9 +8710,9 @@ msgid "" msgstr "" msgid "" -":gh:`143308`: :mod:`pickle`: fix use-after-free crashes when a :class:" -"`~pickle.PickleBuffer` is concurrently mutated by a custom buffer callback " -"during pickling. Patch by Bénédikt Tran and Aaron Wieczorek." +":gh:`143308`: :mod:`pickle`: fix use-after-free crashes when " +"a :class:`~pickle.PickleBuffer` is concurrently mutated by a custom buffer " +"callback during pickling. Patch by Bénédikt Tran and Aaron Wieczorek." msgstr "" msgid "" @@ -5806,9 +8720,10 @@ msgid "" msgstr "" msgid "" -":gh:`124951`: The base64 implementation behind the :mod:`binascii`, :mod:" -"`base64`, and related codec has been optimized for modern pipelined CPU " -"architectures and now performs 2-3x faster across all platforms." +":gh:`124951`: The base64 implementation behind " +"the :mod:`binascii`, :mod:`base64`, and related codec has been optimized for " +"modern pipelined CPU architectures and now performs 2-3x faster across all " +"platforms." msgstr "" msgid "" @@ -5822,9 +8737,9 @@ msgid "" msgstr "" msgid "" -":gh:`143241`: :mod:`zoneinfo`: fix infinite loop in :meth:`ZoneInfo." -"from_file ` when parsing a malformed TZif file. " -"Patch by Fatih Celik." +":gh:`143241`: :mod:`zoneinfo`: fix infinite loop " +"in :meth:`ZoneInfo.from_file ` when parsing a " +"malformed TZif file. Patch by Fatih Celik." msgstr "" msgid "" @@ -5834,10 +8749,10 @@ msgid "" msgstr "" msgid "" -":gh:`143200`: :mod:`xml.etree.ElementTree`: fix use-after-free crashes in :" -"meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods of :class:" -"`~xml.etree.ElementTree.Element` when the element is concurrently mutated. " -"Patch by Bénédikt Tran." +":gh:`143200`: :mod:`xml.etree.ElementTree`: fix use-after-free crashes " +"in :meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods " +"of :class:`~xml.etree.ElementTree.Element` when the element is concurrently " +"mutated. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -5877,24 +8792,26 @@ msgid "" msgstr "" msgid "" -":gh:`74902`: Add the :func:`~unicodedata.iter_graphemes` function in the :" -"mod:`unicodedata` module to iterate over grapheme clusters according to " +":gh:`74902`: Add the :func:`~unicodedata.iter_graphemes` function in " +"the :mod:`unicodedata` module to iterate over grapheme clusters according to " "rules defined in `Unicode Standard Annex #29, \"Unicode Text Segmentation\" " -"`_. Add :func:`~unicodedata." -"grapheme_cluster_break`, :func:`~unicodedata.indic_conjunct_break` and :func:" -"`~unicodedata.extended_pictographic` functions to get the properties of the " -"character which are related to the above algorithm." +"`_. " +"Add :func:`~unicodedata.grapheme_cluster_break`, :func:`~unicodedata.indic_conjunct_break` " +"and :func:`~unicodedata.extended_pictographic` functions to get the " +"properties of the character which are related to the above algorithm." msgstr "" msgid "" -":gh:`143004`: Fix a potential use-after-free in :meth:`collections.Counter." -"update` when user code mutates the Counter during an update." +":gh:`143004`: Fix a potential use-after-free " +"in :meth:`collections.Counter.update` when user code mutates the Counter " +"during an update." msgstr "" msgid "" ":gh:`140648`: The :mod:`asyncio` REPL now respects the :option:`-I` flag " -"(isolated mode). Previously, it would load and execute :envvar:" -"`PYTHONSTARTUP` even if the flag was set. Contributed by Bartosz Sławecki." +"(isolated mode). Previously, it would load and " +"execute :envvar:`PYTHONSTARTUP` even if the flag was set. Contributed by " +"Bartosz Sławecki." msgstr "" msgid "" @@ -5903,8 +8820,8 @@ msgid "" msgstr "" msgid "" -":gh:`116738`: Make the attributes in :mod:`lzma` thread-safe on the :term:" -"`free threaded ` build." +":gh:`116738`: Make the attributes in :mod:`lzma` thread-safe on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -5933,14 +8850,14 @@ msgstr "" msgid "" ":gh:`138122`: The Tachyon profiler's live TUI now integrates with the " "experimental :mod:`!_colorize` theming system. Users can customize colors " -"via :func:`!_colorize.set_theme` (experimental API, subject to change). A :" -"class:`!LiveProfilerLight` theme is provided for light terminal backgrounds. " -"Patch by Pablo Galindo." +"via :func:`!_colorize.set_theme` (experimental API, subject to change). " +"A :class:`!LiveProfilerLight` theme is provided for light terminal " +"backgrounds. Patch by Pablo Galindo." msgstr "" msgid "" -":gh:`142306`: Improve errors for :meth:`Element.remove `." +":gh:`142306`: Improve errors for :meth:`Element.remove " +"`." msgstr "" msgid "" @@ -5959,15 +8876,15 @@ msgid "" msgstr "" msgid "" -":gh:`135852`: Add :func:`!_winapi.RegisterEventSource`, :func:`!_winapi." -"DeregisterEventSource` and :func:`!_winapi.ReportEvent`. Using these " +":gh:`135852`: Add :func:`!_winapi.RegisterEventSource`, :func:`!" +"_winapi.DeregisterEventSource` and :func:`!_winapi.ReportEvent`. Using these " "functions in :class:`~logging.handlers.NTEventLogHandler` to replace :mod:`!" "pywin32`." msgstr "" msgid "" -":gh:`109263`: Starting a process from spawn context in :mod:" -"`multiprocessing` no longer sets the start method globally." +":gh:`109263`: Starting a process from spawn context " +"in :mod:`multiprocessing` no longer sets the start method globally." msgstr "" msgid "" @@ -5989,8 +8906,8 @@ msgid "" msgstr "" msgid "" -":gh:`143469`: Enable :opcode:`!LOAD_ATTR_MODULE` specialization even if :" -"func:`!__getattr__` is defined in module." +":gh:`143469`: Enable :opcode:`!LOAD_ATTR_MODULE` specialization even " +"if :func:`!__getattr__` is defined in module." msgstr "" msgid ":gh:`134584`: Eliminate redundant refcounting from ``TO_BOOL_STR``." @@ -6066,9 +8983,9 @@ msgid "" msgstr "" msgid "" -":gh:`143195`: Fix use-after-free crashes in :meth:`bytearray.hex` and :meth:" -"`memoryview.hex` when the separator's :meth:`~object.__len__` mutates the " -"original object. Patch by Bénédikt Tran." +":gh:`143195`: Fix use-after-free crashes in :meth:`bytearray.hex` " +"and :meth:`memoryview.hex` when the separator's :meth:`~object.__len__` " +"mutates the original object. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -6082,8 +8999,9 @@ msgid "" msgstr "" msgid "" -":gh:`143135`: Set :data:`sys.flags.inspect` to ``1`` when :envvar:" -"`PYTHONINSPECT` is ``0``. Previously, it was set to ``0`` in this case." +":gh:`143135`: Set :data:`sys.flags.inspect` to ``1`` " +"when :envvar:`PYTHONINSPECT` is ``0``. Previously, it was set to ``0`` in " +"this case." msgstr "" msgid ":gh:`143123`: Protect the JIT against recursive tracing." @@ -6095,8 +9013,9 @@ msgid "" msgstr "" msgid "" -":gh:`143003`: Fix an overflow of the shared empty buffer in :meth:`bytearray." -"extend` when ``__length_hint__()`` returns 0 for non-empty iterator." +":gh:`143003`: Fix an overflow of the shared empty buffer " +"in :meth:`bytearray.extend` when ``__length_hint__()`` returns 0 for non-" +"empty iterator." msgstr "" msgid "" @@ -6110,24 +9029,24 @@ msgstr "" msgid "" ":gh:`142829`: Fix a use-after-free crash in :class:`contextvars.Context` " -"comparison when a custom ``__eq__`` method modifies the context via :meth:" -"`~contextvars.ContextVar.set`." +"comparison when a custom ``__eq__`` method modifies the context " +"via :meth:`~contextvars.ContextVar.set`." msgstr "" msgid "" -":gh:`142863`: Generate optimized bytecode when calling :class:`list` or :" -"class:`set` with generator expression." +":gh:`142863`: Generate optimized bytecode when calling :class:`list` " +"or :class:`set` with generator expression." msgstr "" msgid "" ":gh:`41779`: Allowed defining any :ref:`__slots__ ` for a class " -"derived from :class:`tuple` (including classes created by :func:`collections." -"namedtuple`)." +"derived from :class:`tuple` (including classes created " +"by :func:`collections.namedtuple`)." msgstr "" msgid "" -":gh:`69605`: Fix edge-cases around already imported modules in the :term:" -"`REPL` auto-completion of imports." +":gh:`69605`: Fix edge-cases around already imported modules in " +"the :term:`REPL` auto-completion of imports." msgstr "" msgid "" @@ -6146,8 +9065,9 @@ msgid "" msgstr "" msgid "" -":gh:`132108`: Speed up :meth:`int.from_bytes` when passed object supports :" -"ref:`buffer protocol `, like :class:`bytearray` by ~1.2x." +":gh:`132108`: Speed up :meth:`int.from_bytes` when passed object " +"supports :ref:`buffer protocol `, like :class:`bytearray` by " +"~1.2x." msgstr "" msgid "" @@ -6156,8 +9076,8 @@ msgid "" msgstr "" msgid "" -":gh:`141671`: :c:macro:`PyMODINIT_FUNC` (and the new :c:macro:" -"`PyMODEXPORT_FUNC`) now adds a linkage declaration " +":gh:`141671`: :c:macro:`PyMODINIT_FUNC` (and the " +"new :c:macro:`PyMODEXPORT_FUNC`) now adds a linkage declaration " "(``__declspec(dllexport)``) on Windows." msgstr "" @@ -6168,14 +9088,14 @@ msgid "*Release date: 2026-01-13*" msgstr "" msgid "" -":gh:`142836`: Accommodated Solaris in ``test_pdb." -"test_script_target_anonymous_pipe``." +":gh:`142836`: Accommodated Solaris in " +"``test_pdb.test_script_target_anonymous_pipe``." msgstr "" msgid "" -":gh:`122431`: Corrected the error message in :func:`readline." -"append_history_file` to state that ``nelements`` must be non-negative " -"instead of positive." +":gh:`122431`: Corrected the error message " +"in :func:`readline.append_history_file` to state that ``nelements`` must be " +"non-negative instead of positive." msgstr "" msgid "" @@ -6244,23 +9164,23 @@ msgid "" msgstr "" msgid "" -":gh:`142495`: :class:`collections.defaultdict` now prioritizes :meth:" -"`~object.__setitem__` when inserting default values from " +":gh:`142495`: :class:`collections.defaultdict` now " +"prioritizes :meth:`~object.__setitem__` when inserting default values from " "``default_factory``. This prevents race conditions where a default value " "would overwrite a value set before ``default_factory`` returns." msgstr "" msgid "" -":gh:`142654`: Show the clearer error message when using ``profiling." -"sampling`` on an unknown PID." +":gh:`142654`: Show the clearer error message when using " +"``profiling.sampling`` on an unknown PID." msgstr "" msgid "" -":gh:`142560`: Fix use-after-free in :class:`bytearray` search-like methods (:" -"meth:`~bytearray.find`, :meth:`~bytearray.count`, :meth:`~bytearray.index`, :" -"meth:`~bytearray.rindex`, and :meth:`~bytearray.rfind`) by marking the " -"storage as exported which causes reallocation attempts to raise :exc:" -"`BufferError`. For :func:`~operator.contains`, :meth:`~bytearray.split`, " +":gh:`142560`: Fix use-after-free in :class:`bytearray` search-like methods " +"(:meth:`~bytearray.find`, :meth:`~bytearray.count`, :meth:`~bytearray.index`, :meth:`~bytearray.rindex`, " +"and :meth:`~bytearray.rfind`) by marking the storage as exported which " +"causes reallocation attempts to raise :exc:`BufferError`. " +"For :func:`~operator.contains`, :meth:`~bytearray.split`, " "and :meth:`~bytearray.rsplit` the :ref:`buffer protocol ` is " "used for this." msgstr "" @@ -6279,8 +9199,9 @@ msgstr "" msgid "" ":gh:`124098`: Fix issue where methods in handlers that lacked the protocol " "name but matched a valid base handler method (e.g., ``_open()`` or " -"``error()``) were incorrectly added to :class:`urllib.request." -"OpenerDirector`'s handlers. Contributed by Andrea Mattei." +"``error()``) were incorrectly added " +"to :class:`urllib.request.OpenerDirector`'s handlers. Contributed by Andrea " +"Mattei." msgstr "" msgid "" @@ -6289,8 +9210,8 @@ msgid "" msgstr "" msgid "" -":gh:`143057`: Avoid locking in :c:func:`PyTraceMalloc_Track` and :c:func:" -"`PyTraceMalloc_Untrack` when :mod:`tracemalloc` is not enabled." +":gh:`143057`: Avoid locking in :c:func:`PyTraceMalloc_Track` " +"and :c:func:`PyTraceMalloc_Untrack` when :mod:`tracemalloc` is not enabled." msgstr "" msgid "" @@ -6388,19 +9309,20 @@ msgid "" msgstr "" msgid "" -":gh:`119451`: Fix a potential memory denial of service in the :mod:`http." -"client` module. When connecting to a malicious server, it could cause an " -"arbitrary amount of memory to be allocated. This could have led to symptoms " -"including a :exc:`MemoryError`, swapping, out of memory (OOM) killed " -"processes or containers, or even system crashes." +":gh:`119451`: Fix a potential memory denial of service in " +"the :mod:`http.client` module. When connecting to a malicious server, it " +"could cause an arbitrary amount of memory to be allocated. This could have " +"led to symptoms including a :exc:`MemoryError`, swapping, out of memory " +"(OOM) killed processes or containers, or even system crashes." msgstr "" msgid "" -":gh:`119342`: Fix a potential memory denial of service in the :mod:" -"`plistlib` module. When reading a Plist file received from untrusted source, " -"it could cause an arbitrary amount of memory to be allocated. This could " -"have led to symptoms including a :exc:`MemoryError`, swapping, out of memory " -"(OOM) killed processes or containers, or even system crashes." +":gh:`119342`: Fix a potential memory denial of service in " +"the :mod:`plistlib` module. When reading a Plist file received from " +"untrusted source, it could cause an arbitrary amount of memory to be " +"allocated. This could have led to symptoms including a :exc:`MemoryError`, " +"swapping, out of memory (OOM) killed processes or containers, or even system " +"crashes." msgstr "" msgid "" @@ -6427,9 +9349,9 @@ msgid "" msgstr "" msgid "" -":gh:`142651`: :mod:`unittest.mock`: fix a thread safety issue where :attr:" -"`Mock.call_count ` may return inaccurate " -"values when the mock is called concurrently from multiple threads." +":gh:`142651`: :mod:`unittest.mock`: fix a thread safety issue " +"where :attr:`Mock.call_count ` may return " +"inaccurate values when the mock is called concurrently from multiple threads." msgstr "" msgid "" @@ -6442,9 +9364,9 @@ msgid "" "to automatically profile subprocesses spawned by the target. When enabled, " "the profiler monitors for new Python subprocesses and profiles each one " "separately, writing results to individual output files. This is useful for " -"profiling applications that use :mod:`multiprocessing`, :class:`~concurrent." -"futures.ProcessPoolExecutor`, or other subprocess-based parallelism. Patch " -"by Pablo Galindo." +"profiling applications that " +"use :mod:`multiprocessing`, :class:`~concurrent.futures.ProcessPoolExecutor`, " +"or other subprocess-based parallelism. Patch by Pablo Galindo." msgstr "" msgid "" @@ -6465,13 +9387,13 @@ msgid "" msgstr "" msgid "" -":gh:`142539`: :mod:`traceback`: Fix location of carets in :exc:" -"`SyntaxError`\\s when the source contains wide characters." +":gh:`142539`: :mod:`traceback`: Fix location of carets " +"in :exc:`SyntaxError`\\s when the source contains wide characters." msgstr "" msgid "" -":gh:`123241`: Avoid reference count operations in garbage collection of :mod:" -"`ctypes` objects." +":gh:`123241`: Avoid reference count operations in garbage collection " +"of :mod:`ctypes` objects." msgstr "" msgid "" @@ -6514,9 +9436,9 @@ msgid "" msgstr "" msgid "" -":gh:`142346`: Fix usage formatting for mutually exclusive groups in :mod:" -"`argparse` when they are preceded by positional arguments or followed or " -"intermixed with other optional arguments." +":gh:`142346`: Fix usage formatting for mutually exclusive groups " +"in :mod:`argparse` when they are preceded by positional arguments or " +"followed or intermixed with other optional arguments." msgstr "" msgid "" @@ -6572,9 +9494,9 @@ msgid "" msgstr "" msgid "" -":gh:`139862`: Remove ``color`` parameter from :class:`!argparse." -"HelpFormatter` constructor. Color is controlled by :class:`~argparse." -"ArgumentParser`." +":gh:`139862`: Remove ``color`` parameter from :class:`!" +"argparse.HelpFormatter` constructor. Color is controlled " +"by :class:`~argparse.ArgumentParser`." msgstr "" msgid "" @@ -6611,8 +9533,9 @@ msgid "Patch by Jelle Zijlstra." msgstr "" msgid "" -":gh:`142203`: Remove the *debug_override* parameter from :func:`importlib." -"util.cache_from_source` which has been deprecated since Python 3.5." +":gh:`142203`: Remove the *debug_override* parameter " +"from :func:`importlib.util.cache_from_source` which has been deprecated " +"since Python 3.5." msgstr "" msgid "" @@ -6635,8 +9558,9 @@ msgstr "" msgid "" ":gh:`74389`: When the stdin being used by a :class:`subprocess.Popen` " -"instance is closed, this is now ignored in :meth:`subprocess.Popen." -"communicate` instead of leaving the class in an inconsistent state." +"instance is closed, this is now ignored " +"in :meth:`subprocess.Popen.communicate` instead of leaving the class in an " +"inconsistent state." msgstr "" msgid "" @@ -6654,9 +9578,9 @@ msgstr "" msgid "" ":gh:`141473`: When :meth:`subprocess.Popen.communicate` was called with " -"*input* and a *timeout* and is called for a second time after a :exc:" -"`~subprocess.TimeoutExpired` exception before the process has died, it " -"should no longer hang." +"*input* and a *timeout* and is called for a second time after " +"a :exc:`~subprocess.TimeoutExpired` exception before the process has died, " +"it should no longer hang." msgstr "" msgid "" @@ -6676,9 +9600,10 @@ msgid "" msgstr "" msgid "" -":gh:`141968`: Remove data copy from :mod:`encodings.idna` :meth:`~codecs." -"Codec.encode` and :meth:`~codecs.IncrementalEncoder.encode` by using :meth:" -"`bytearray.take_bytes`." +":gh:`141968`: Remove data copy " +"from :mod:`encodings.idna` :meth:`~codecs.Codec.encode` " +"and :meth:`~codecs.IncrementalEncoder.encode` by " +"using :meth:`bytearray.take_bytes`." msgstr "" msgid "" @@ -6687,13 +9612,14 @@ msgid "" msgstr "" msgid "" -":gh:`141968`: Remove data copy from :func:`wave.Wave_read.readframes` and :" -"func:`wave.Wave_write.writeframes` by using :meth:`bytearray.take_bytes`." +":gh:`141968`: Remove data copy from :func:`wave.Wave_read.readframes` " +"and :func:`wave.Wave_write.writeframes` by " +"using :meth:`bytearray.take_bytes`." msgstr "" msgid "" -":gh:`141968`: Remove a data copy from :func:`base64.b32decode` and :func:" -"`base64.b32encode` by using :meth:`bytearray.take_bytes`." +":gh:`141968`: Remove a data copy from :func:`base64.b32decode` " +"and :func:`base64.b32encode` by using :meth:`bytearray.take_bytes`." msgstr "" msgid "" @@ -6721,9 +9647,9 @@ msgid "" msgstr "" msgid "" -":gh:`141863`: Update :ref:`asyncio-streams` to use :meth:`bytearray." -"take_bytes` for a over 10% performance improvement on pyperformance " -"asyncio_tcp benchmark." +":gh:`141863`: Update :ref:`asyncio-streams` to " +"use :meth:`bytearray.take_bytes` for a over 10% performance improvement on " +"pyperformance asyncio_tcp benchmark." msgstr "" msgid ":gh:`141817`: Add :data:`!socket.IPV6_HDRINCL` constant." @@ -6735,9 +9661,10 @@ msgid "" msgstr "" msgid "" -":gh:`141570`: Support :term:`file-like object` raising :exc:`OSError` from :" -"meth:`~io.IOBase.fileno` in color detection (``_colorize.can_colorize()``). " -"This can occur when ``sys.stdout`` is redirected." +":gh:`141570`: Support :term:`file-like object` raising :exc:`OSError` " +"from :meth:`~io.IOBase.fileno` in color detection " +"(``_colorize.can_colorize()``). This can occur when ``sys.stdout`` is " +"redirected." msgstr "" msgid "" @@ -6746,8 +9673,8 @@ msgid "" msgstr "" msgid "" -":gh:`141686`: Break reference cycles created by each call to :func:`json." -"dump` or :meth:`json.JSONEncoder.iterencode`." +":gh:`141686`: Break reference cycles created by each call " +"to :func:`json.dump` or :meth:`json.JSONEncoder.iterencode`." msgstr "" msgid "" @@ -6763,8 +9690,8 @@ msgid "" msgstr "" msgid "" -":gh:`141615`: Check ``stdin`` instead of ``stdout`` for ``use_rawinput`` in :" -"mod:`pdb`." +":gh:`141615`: Check ``stdin`` instead of ``stdout`` for ``use_rawinput`` " +"in :mod:`pdb`." msgstr "" msgid "" @@ -6791,8 +9718,8 @@ msgstr "" msgid "" ":gh:`60107`: Remove a copy from :meth:`io.RawIOBase.read`. If the underlying " -"I/O class keeps a reference to the mutable memory, raise a :exc:" -"`BufferError`." +"I/O class keeps a reference to the mutable memory, raise " +"a :exc:`BufferError`." msgstr "" msgid "" @@ -6801,9 +9728,9 @@ msgid "" msgstr "" msgid "" -":gh:`140911`: :mod:`collections`: Ensure that the methods ``UserString." -"rindex()`` and ``UserString.index()`` accept :class:`collections.UserString` " -"instances as the sub argument." +":gh:`140911`: :mod:`collections`: Ensure that the methods " +"``UserString.rindex()`` and ``UserString.index()`` " +"accept :class:`collections.UserString` instances as the sub argument." msgstr "" msgid "" @@ -6830,10 +9757,10 @@ msgid "" msgstr "" msgid "" -":gh:`138697`: Fix inferring *dest* from a single-dash long option in :mod:" -"`argparse`. If a short option and a single-dash long option are passed to :" -"meth:`!add_argument`, *dest* is now inferred from the single-dash long " -"option." +":gh:`138697`: Fix inferring *dest* from a single-dash long option " +"in :mod:`argparse`. If a short option and a single-dash long option are " +"passed to :meth:`!add_argument`, *dest* is now inferred from the single-dash " +"long option." msgstr "" msgid "" @@ -6866,10 +9793,10 @@ msgid "" ":gh:`115952`: Fix a potential memory denial of service in the :mod:`pickle` " "module. When reading a pickled data received from untrusted source, it could " "cause an arbitrary amount of memory to be allocated, even if the code that " -"is allowed to execute is restricted by overriding the :meth:`~pickle." -"Unpickler.find_class` method. This could have led to symptoms including a :" -"exc:`MemoryError`, swapping, out of memory (OOM) killed processes or " -"containers, or even system crashes." +"is allowed to execute is restricted by overriding " +"the :meth:`~pickle.Unpickler.find_class` method. This could have led to " +"symptoms including a :exc:`MemoryError`, swapping, out of memory (OOM) " +"killed processes or containers, or even system crashes." msgstr "" msgid "" @@ -6877,10 +9804,10 @@ msgid "" msgstr "" msgid "" -":gh:`141994`: :mod:`xml.sax.handler`: Make Documentation of :data:`xml.sax." -"handler.feature_external_ges` warn of opening up to `external entity attacks " -"`_. Patch by " -"Sebastian Pipping." +":gh:`141994`: :mod:`xml.sax.handler`: Make Documentation " +"of :data:`xml.sax.handler.feature_external_ges` warn of opening up to " +"`external entity attacks `_. Patch by Sebastian Pipping." msgstr "" msgid "" @@ -6894,14 +9821,14 @@ msgid "" msgstr "" msgid "" -":gh:`142737`: Tracebacks will be displayed in fallback mode even if :func:" -"`io.open` is lost. Previously, this would crash the interpreter. Patch by " -"Bartosz Sławecki." +":gh:`142737`: Tracebacks will be displayed in fallback mode even " +"if :func:`io.open` is lost. Previously, this would crash the interpreter. " +"Patch by Bartosz Sławecki." msgstr "" msgid "" -":gh:`116738`: Make the attributes in :mod:`bz2` thread-safe on the :term:" -"`free threaded ` build." +":gh:`116738`: Make the attributes in :mod:`bz2` thread-safe on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -6928,8 +9855,8 @@ msgid "" msgstr "" msgid "" -":gh:`116738`: Make the attributes in :mod:`zlib` thread-safe on the :term:" -"`free threaded ` build." +":gh:`116738`: Make the attributes in :mod:`zlib` thread-safe on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -6944,10 +9871,10 @@ msgid "" msgstr "" msgid "" -":gh:`142236`: Fix incorrect keyword suggestions for syntax errors in :mod:" -"`traceback`. The keyword typo suggestion mechanism would incorrectly suggest " -"replacements when the extracted source code was incomplete rather than " -"containing an actual typo. Patch by Pablo Galindo." +":gh:`142236`: Fix incorrect keyword suggestions for syntax errors " +"in :mod:`traceback`. The keyword typo suggestion mechanism would incorrectly " +"suggest replacements when the extracted source code was incomplete rather " +"than containing an actual typo. Patch by Pablo Galindo." msgstr "" msgid "" @@ -7039,13 +9966,13 @@ msgid "" msgstr "" msgid "" -":gh:`140638`: Expose a ``\"candidates\"`` stat in :func:`gc.get_stats` and :" -"data:`gc.callbacks`." +":gh:`140638`: Expose a ``\"candidates\"`` stat in :func:`gc.get_stats` " +"and :data:`gc.callbacks`." msgstr "" msgid "" -":gh:`141780`: Fix :c:macro:`Py_mod_gil` with API added in :pep:`793`: :c:" -"func:`!PyModule_FromSlotsAndSpec` and ``PyModExport`` hooks" +":gh:`141780`: Fix :c:macro:`Py_mod_gil` with API added " +"in :pep:`793`: :c:func:`!PyModule_FromSlotsAndSpec` and ``PyModExport`` hooks" msgstr "" msgid "" @@ -7055,8 +9982,8 @@ msgid "" msgstr "" msgid "" -":gh:`140638`: Expose a ``\"duration\"`` stat in :func:`gc.get_stats` and :" -"data:`gc.callbacks`." +":gh:`140638`: Expose a ``\"duration\"`` stat in :func:`gc.get_stats` " +"and :data:`gc.callbacks`." msgstr "" msgid "" @@ -7067,8 +9994,8 @@ msgid "" msgstr "" msgid "" -":gh:`41779`: Allowed defining the *__dict__* and *__weakref__* :ref:" -"`__slots__ ` for any class." +":gh:`41779`: Allowed defining the *__dict__* and " +"*__weakref__* :ref:`__slots__ ` for any class." msgstr "" msgid "" @@ -7119,10 +10046,10 @@ msgstr "" msgid "" ":gh:`141049`: :c:func:`!_PyObject_CallMethodId`, :c:func:`!" "_PyObject_GetAttrId` and :c:func:`!_PyUnicode_FromId` are deprecated since " -"3.15 and will be removed in 3.20. Instead, use :c:func:" -"`PyUnicode_InternFromString()` and cache the result in the module state, " -"then call :c:func:`PyObject_CallMethod` or :c:func:`PyObject_GetAttr`. Patch " -"by Victor Stinner." +"3.15 and will be removed in 3.20. Instead, " +"use :c:func:`PyUnicode_InternFromString()` and cache the result in the " +"module state, then call :c:func:`PyObject_CallMethod` " +"or :c:func:`PyObject_GetAttr`. Patch by Victor Stinner." msgstr "" msgid "" @@ -7131,10 +10058,10 @@ msgid "" msgstr "" msgid "" -":gh:`137422`: Fix :term:`free threading` race condition in :c:func:" -"`PyImport_AddModuleRef`. It was previously possible for two calls to the " -"function return two different objects, only one of which was stored in :data:" -"`sys.modules`." +":gh:`137422`: Fix :term:`free threading` race condition " +"in :c:func:`PyImport_AddModuleRef`. It was previously possible for two calls " +"to the function return two different objects, only one of which was stored " +"in :data:`sys.modules`." msgstr "" msgid ":gh:`141726`: Add :c:func:`PyDict_SetDefaultRef` to the Stable ABI." @@ -7263,8 +10190,8 @@ msgid "" msgstr "" msgid "" -":gh:`136442`: Use exitcode ``1`` instead of ``5`` if :func:`unittest." -"TestCase.setUpClass` raises an exception" +":gh:`136442`: Use exitcode ``1`` instead of ``5`` " +"if :func:`unittest.TestCase.setUpClass` raises an exception" msgstr "" msgid "" @@ -7282,9 +10209,10 @@ msgid ":gh:`136065`: Fix quadratic complexity in :func:`os.path.expandvars`." msgstr "" msgid "" -":gh:`141497`: :mod:`ipaddress`: ensure that the methods :meth:`IPv4Network." -"hosts() ` and :meth:`IPv6Network.hosts() " -"` always return an iterator." +":gh:`141497`: :mod:`ipaddress`: ensure that the " +"methods :meth:`IPv4Network.hosts() ` " +"and :meth:`IPv6Network.hosts() ` always return " +"an iterator." msgstr "" msgid "" @@ -7301,8 +10229,9 @@ msgstr "" msgid "" ":gh:`137109`: The :mod:`os.fork` and related forking APIs will no longer " "warn in the common case where Linux or macOS platform APIs return the number " -"of threads in a process and find the answer to be 1 even when a :func:`os." -"register_at_fork` ``after_in_parent=`` callback (re)starts a thread." +"of threads in a process and find the answer to be 1 even when " +"a :func:`os.register_at_fork` ``after_in_parent=`` callback (re)starts a " +"thread." msgstr "" msgid "" @@ -7312,8 +10241,8 @@ msgstr "" msgid "" ":gh:`141311`: Fix assertion failure in :func:`!io.BytesIO.readinto` and " -"undefined behavior arising when read position is above capcity in :class:`io." -"BytesIO`." +"undefined behavior arising when read position is above capcity " +"in :class:`io.BytesIO`." msgstr "" msgid "" @@ -7322,10 +10251,10 @@ msgid "" msgstr "" msgid "" -":gh:`85524`: Update ``io.FileIO.readall``, an implementation of :meth:`io." -"RawIOBase.readall`, to follow :class:`io.IOBase` guidelines and raise :exc:" -"`io.UnsupportedOperation` when a file is in \"w\" mode rather than :exc:" -"`OSError`" +":gh:`85524`: Update ``io.FileIO.readall``, an implementation " +"of :meth:`io.RawIOBase.readall`, to follow :class:`io.IOBase` guidelines and " +"raise :exc:`io.UnsupportedOperation` when a file is in \"w\" mode rather " +"than :exc:`OSError`" msgstr "" msgid "" @@ -7339,8 +10268,9 @@ msgid "" msgstr "" msgid "" -":gh:`137969`: Fix :meth:`annotationlib.ForwardRef.evaluate` returning :class:" -"`~annotationlib.ForwardRef` objects which don't update with new globals." +":gh:`137969`: Fix :meth:`annotationlib.ForwardRef.evaluate` " +"returning :class:`~annotationlib.ForwardRef` objects which don't update with " +"new globals." msgstr "" msgid "" @@ -7366,9 +10296,9 @@ msgid "" msgstr "" msgid "" -":gh:`100218`: Correctly set :attr:`~OSError.errno` when :func:`socket." -"if_nametoindex` or :func:`socket.if_indextoname` raise an :exc:`OSError`. " -"Patch by Bénédikt Tran." +":gh:`100218`: Correctly set :attr:`~OSError.errno` " +"when :func:`socket.if_nametoindex` or :func:`socket.if_indextoname` raise " +"an :exc:`OSError`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -7377,8 +10307,8 @@ msgid "" msgstr "" msgid "" -":gh:`140873`: Add support of non-:term:`descriptor` callables in :func:" -"`functools.singledispatchmethod`." +":gh:`140873`: Add support of non-:term:`descriptor` callables " +"in :func:`functools.singledispatchmethod`." msgstr "" msgid "" @@ -7402,9 +10332,9 @@ msgid "" msgstr "" msgid "" -":gh:`103847`: Fix hang when cancelling process created by :func:`asyncio." -"create_subprocess_exec` or :func:`asyncio.create_subprocess_shell`. Patch by " -"Kumar Aditya." +":gh:`103847`: Fix hang when cancelling process created " +"by :func:`asyncio.create_subprocess_exec` " +"or :func:`asyncio.create_subprocess_shell`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -7418,16 +10348,16 @@ msgid "" msgstr "" msgid "" -":gh:`140766`: Add :func:`enum.show_flag_values` and ``enum.bin`` to ``enum." -"__all__``." +":gh:`140766`: Add :func:`enum.show_flag_values` and ``enum.bin`` to " +"``enum.__all__``." msgstr "" msgid ":gh:`120057`: Add :func:`os.reload_environ` to ``os.__all__``." msgstr "" msgid "" -":gh:`140741`: Fix ``profiling.sampling.sample()`` incorrectly handling a :" -"exc:`FileNotFoundError` or :exc:`PermissionError`." +":gh:`140741`: Fix ``profiling.sampling.sample()`` incorrectly handling " +"a :exc:`FileNotFoundError` or :exc:`PermissionError`." msgstr "" msgid "" @@ -7443,9 +10373,9 @@ msgid "" msgstr "" msgid "" -":gh:`140590`: Fix arguments checking for the :meth:`!functools.partial." -"__setstate__` that may lead to internal state corruption and crash. Patch by " -"Sergey Miryanov." +":gh:`140590`: Fix arguments checking for the :meth:`!" +"functools.partial.__setstate__` that may lead to internal state corruption " +"and crash. Patch by Sergey Miryanov." msgstr "" msgid "" @@ -7454,8 +10384,8 @@ msgid "" msgstr "" msgid "" -":gh:`140634`: Fix a reference counting bug in :meth:`!os.sched_param." -"__reduce__`." +":gh:`140634`: Fix a reference counting bug in :meth:`!" +"os.sched_param.__reduce__`." msgstr "" msgid "" @@ -7471,10 +10401,10 @@ msgid "" msgstr "" msgid "" -":gh:`140601`: :func:`xml.etree.ElementTree.iterparse` now emits a :exc:" -"`ResourceWarning` when the iterator is not explicitly closed and was opened " -"with a filename. This helps developers identify and fix resource leaks. " -"Patch by Osama Abdelkader." +":gh:`140601`: :func:`xml.etree.ElementTree.iterparse` now emits " +"a :exc:`ResourceWarning` when the iterator is not explicitly closed and was " +"opened with a filename. This helps developers identify and fix resource " +"leaks. Patch by Osama Abdelkader." msgstr "" msgid "" @@ -7528,8 +10458,8 @@ msgid "" msgstr "" msgid "" -":gh:`76007`: :mod:`decimal`: Deprecate ``__version__`` and replace with :" -"data:`decimal.SPEC_VERSION`." +":gh:`76007`: :mod:`decimal`: Deprecate ``__version__`` and replace " +"with :data:`decimal.SPEC_VERSION`." msgstr "" msgid "" @@ -7538,15 +10468,15 @@ msgid "" msgstr "" msgid "" -":gh:`140272`: Fix memory leak in the :meth:`!clear` method of the :mod:`dbm." -"gnu` database." +":gh:`140272`: Fix memory leak in the :meth:`!clear` method of " +"the :mod:`dbm.gnu` database." msgstr "" msgid "" -":gh:`129117`: :mod:`unicodedata`: Add :func:`~unicodedata.isxidstart` and :" -"func:`~unicodedata.isxidcontinue` functions to check whether a character can " -"start or continue a `Unicode Standard Annex #31 `_ identifier." +":gh:`129117`: :mod:`unicodedata`: Add :func:`~unicodedata.isxidstart` " +"and :func:`~unicodedata.isxidcontinue` functions to check whether a " +"character can start or continue a `Unicode Standard Annex #31 `_ identifier." msgstr "" msgid "" @@ -7571,8 +10501,8 @@ msgid "" msgstr "" msgid "" -":gh:`139707`: Improve :exc:`ModuleNotFoundError` error message when a :term:" -"`standard library` module is missing." +":gh:`139707`: Improve :exc:`ModuleNotFoundError` error message when " +"a :term:`standard library` module is missing." msgstr "" msgid "" @@ -7596,10 +10526,10 @@ msgid "Contributed by Bartosz Sławecki in :gh:`140142`." msgstr "" msgid "" -":gh:`140166`: :mod:`mimetypes`: Per the `IANA assignment `_, update the MIME type for " -"the ``.texi`` and ``.texinfo`` file formats to ``application/texinfo``, " -"instead of ``application/x-texinfo``." +":gh:`140166`: :mod:`mimetypes`: Per the `IANA assignment `_, update the MIME " +"type for the ``.texi`` and ``.texinfo`` file formats to ``application/" +"texinfo``, instead of ``application/x-texinfo``." msgstr "" msgid "" @@ -7624,10 +10554,10 @@ msgid "" msgstr "" msgid "" -":gh:`139462`: When a child process in a :class:`concurrent.futures." -"ProcessPoolExecutor` terminates abruptly, the resulting traceback will now " -"tell you the PID and exit code of the terminated process. Contributed by " -"Jonathan Berg." +":gh:`139462`: When a child process in " +"a :class:`concurrent.futures.ProcessPoolExecutor` terminates abruptly, the " +"resulting traceback will now tell you the PID and exit code of the " +"terminated process. Contributed by Jonathan Berg." msgstr "" msgid "" @@ -7751,8 +10681,8 @@ msgstr "" msgid "" ":gh:`130693`: Add support for ``-nolinestop``, and ``-strictlimits`` options " -"to :meth:`!tkinter.Text.search`. Also add the :meth:`!tkinter.Text." -"search_all` method for ``-all`` and ``-overlap`` options." +"to :meth:`!tkinter.Text.search`. Also add the :meth:`!" +"tkinter.Text.search_all` method for ``-all`` and ``-overlap`` options." msgstr "" msgid "" @@ -7768,13 +10698,13 @@ msgid "" msgstr "" msgid "" -":gh:`119668`: Publicly expose and document :class:`importlib.machinery." -"NamespacePath`." +":gh:`119668`: Publicly expose and " +"document :class:`importlib.machinery.NamespacePath`." msgstr "" msgid "" -":gh:`102431`: Clarify constraints for \"logical\" arguments in methods of :" -"class:`decimal.Context`." +":gh:`102431`: Clarify constraints for \"logical\" arguments in methods " +"of :class:`decimal.Context`." msgstr "" msgid ":gh:`81313`: Add the :mod:`math.integer` module (:pep:`791`)." @@ -7791,9 +10721,10 @@ msgid "" msgstr "" msgid "" -":gh:`141528`: Suggest using :meth:`concurrent.interpreters.Interpreter." -"close` instead of the private ``_interpreters.destroy`` function when " -"warning about remaining subinterpreters. Patch by Sergey Miryanov." +":gh:`141528`: Suggest " +"using :meth:`concurrent.interpreters.Interpreter.close` instead of the " +"private ``_interpreters.destroy`` function when warning about remaining " +"subinterpreters. Patch by Sergey Miryanov." msgstr "" msgid "" @@ -7823,8 +10754,8 @@ msgstr "" msgid "" ":gh:`140939`: Fix memory leak when :class:`bytearray` or :class:`bytes` is " -"formated with the ``%*b`` format with a large width that results in a :exc:" -"`MemoryError`." +"formated with the ``%*b`` format with a large width that results in " +"a :exc:`MemoryError`." msgstr "" msgid "" @@ -7839,8 +10770,8 @@ msgstr "" msgid "" ":gh:`90344`: Replace :class:`io.IncrementalNewlineDecoder` with non " -"incremental newline decoders in codebase where :meth:`!io." -"IncrementalNewlineDecoder.decode` was being called once." +"incremental newline decoders in codebase where :meth:`!" +"io.IncrementalNewlineDecoder.decode` was being called once." msgstr "" msgid "" @@ -7875,9 +10806,9 @@ msgid "" msgstr "" msgid "" -":gh:`140517`: Fixed a reference leak when iterating over the result of :func:" -"`map` with ``strict=True`` when the input iterables have different lengths. " -"Patch by Mikhail Efimov." +":gh:`140517`: Fixed a reference leak when iterating over the result " +"of :func:`map` with ``strict=True`` when the input iterables have different " +"lengths. Patch by Mikhail Efimov." msgstr "" msgid "" @@ -7893,23 +10824,23 @@ msgid "" msgstr "" msgid "" -":gh:`140443`: The logarithm functions (such as :func:`math.log10` and :func:" -"`math.log`) may now produce slightly different results for extremely large " -"integers that cannot be converted to floats without overflow. These results " -"are generally more accurate, with reduced worst-case error and a tighter " -"overall error distribution." +":gh:`140443`: The logarithm functions (such as :func:`math.log10` " +"and :func:`math.log`) may now produce slightly different results for " +"extremely large integers that cannot be converted to floats without " +"overflow. These results are generally more accurate, with reduced worst-case " +"error and a tighter overall error distribution." msgstr "" msgid "" ":gh:`140431`: Fix a crash in Python's :term:`garbage collector ` due to partially initialized :term:`coroutine` objects when " -"coroutine origin tracking depth is enabled (:func:`sys." -"set_coroutine_origin_tracking_depth`)." +"coroutine origin tracking depth is enabled " +"(:func:`sys.set_coroutine_origin_tracking_depth`)." msgstr "" msgid "" -":gh:`140476`: Optimize :c:func:`PySet_Add` for :class:`frozenset` in :term:" -"`free threaded ` build." +":gh:`140476`: Optimize :c:func:`PySet_Add` for :class:`frozenset` " +"in :term:`free threaded ` build." msgstr "" msgid "" @@ -7919,10 +10850,9 @@ msgid "" msgstr "" msgid "" -":gh:`140398`: Fix memory leaks in :mod:`readline` functions :func:`~readline." -"read_init_file`, :func:`~readline.read_history_file`, :func:`~readline." -"write_history_file`, and :func:`~readline.append_history_file` when :c:func:" -"`PySys_Audit` fails." +":gh:`140398`: Fix memory leaks in :mod:`readline` " +"functions :func:`~readline.read_init_file`, :func:`~readline.read_history_file`, :func:`~readline.write_history_file`, " +"and :func:`~readline.append_history_file` when :c:func:`PySys_Audit` fails." msgstr "" msgid "" @@ -8002,8 +10932,8 @@ msgid "" msgstr "" msgid "" -":gh:`140080`: Fix hang during finalization when attempting to call :mod:" -"`atexit` handlers under no memory." +":gh:`140080`: Fix hang during finalization when attempting to " +"call :mod:`atexit` handlers under no memory." msgstr "" msgid "" @@ -8020,15 +10950,15 @@ msgid "" msgstr "" msgid "" -":gh:`139817`: Attribute ``__qualname__`` is added to :class:`typing." -"TypeAliasType`. Patch by Mikhail Efimov." +":gh:`139817`: Attribute ``__qualname__`` is added " +"to :class:`typing.TypeAliasType`. Patch by Mikhail Efimov." msgstr "" msgid "" ":gh:`135801`: Many functions related to compiling or parsing Python code, " -"such as :func:`compile`, :func:`ast.parse`, :func:`symtable.symtable`, and :" -"func:`importlib.abc.InspectLoader.source_to_code` now allow to specify the " -"module name. It is needed to unambiguous :ref:`filter ` " +"such as :func:`compile`, :func:`ast.parse`, :func:`symtable.symtable`, " +"and :func:`importlib.abc.InspectLoader.source_to_code` now allow to specify " +"the module name. It is needed to unambiguous :ref:`filter ` " "syntax warnings by module name." msgstr "" @@ -8077,9 +11007,9 @@ msgid "" msgstr "" msgid "" -":gh:`134786`: If :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" -"`Py_TPFLAGS_MANAGED_WEAKREF` are used, then :c:macro:`Py_TPFLAGS_HAVE_GC` " -"must be used as well." +":gh:`134786`: If :c:macro:`Py_TPFLAGS_MANAGED_DICT` " +"and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` are used, " +"then :c:macro:`Py_TPFLAGS_HAVE_GC` must be used as well." msgstr "" msgid "" @@ -8093,10 +11023,10 @@ msgid "" msgstr "" msgid "" -":gh:`141042`: Make qNaN in :c:func:`PyFloat_Pack2` and :c:func:" -"`PyFloat_Pack4`, if while conversion to a narrower precision floating-point " -"format --- the remaining after truncation payload will be zero. Patch by " -"Sergey B Kirpichev." +":gh:`141042`: Make qNaN in :c:func:`PyFloat_Pack2` " +"and :c:func:`PyFloat_Pack4`, if while conversion to a narrower precision " +"floating-point format --- the remaining after truncation payload will be " +"zero. Patch by Sergey B Kirpichev." msgstr "" msgid "" @@ -8125,10 +11055,10 @@ msgid "" msgstr "" msgid "" -":gh:`139653`: Add :c:func:`PyUnstable_ThreadState_SetStackProtection` and :c:" -"func:`PyUnstable_ThreadState_ResetStackProtection` functions to set the " -"stack protection base address and stack protection size of a Python thread " -"state. Patch by Victor Stinner." +":gh:`139653`: Add :c:func:`PyUnstable_ThreadState_SetStackProtection` " +"and :c:func:`PyUnstable_ThreadState_ResetStackProtection` functions to set " +"the stack protection base address and stack protection size of a Python " +"thread state. Patch by Victor Stinner." msgstr "" msgid "" @@ -8268,8 +11198,8 @@ msgid "" msgstr "" msgid "" -":gh:`131942`: Use the Python-specific :c:macro:`Py_DEBUG` macro rather than :" -"c:macro:`!_DEBUG` in Windows-related C code. Patch by Xuehai Pan." +":gh:`131942`: Use the Python-specific :c:macro:`Py_DEBUG` macro rather " +"than :c:macro:`!_DEBUG` in Windows-related C code. Patch by Xuehai Pan." msgstr "" msgid "" @@ -8377,9 +11307,10 @@ msgid ":gh:`135120`: Add :func:`!test.support.subTests`." msgstr "" msgid "" -":gh:`134567`: Expose log formatter to users in TestCase.assertLogs. :func:" -"`unittest.TestCase.assertLogs` will now optionally accept a formatter that " -"will be used to format the strings in output if provided." +":gh:`134567`: Expose log formatter to users in " +"TestCase.assertLogs. :func:`unittest.TestCase.assertLogs` will now " +"optionally accept a formatter that will be used to format the strings in " +"output if provided." msgstr "" msgid "" @@ -8389,9 +11320,10 @@ msgid "" msgstr "" msgid "" -":gh:`133682`: Fixed test case ``test.test_annotationlib.TestStringFormat." -"test_displays`` which ensures proper handling of complex data structures " -"(lists, sets, dictionaries, and tuples) in string annotations." +":gh:`133682`: Fixed test case " +"``test.test_annotationlib.TestStringFormat.test_displays`` which ensures " +"proper handling of complex data structures (lists, sets, dictionaries, and " +"tuples) in string annotations." msgstr "" msgid "" @@ -8420,13 +11352,13 @@ msgid "" msgstr "" msgid "" -":gh:`136053`: :mod:`marshal`: fix a possible crash when deserializing :class:" -"`slice` objects." +":gh:`136053`: :mod:`marshal`: fix a possible crash when " +"deserializing :class:`slice` objects." msgstr "" msgid "" -":gh:`135661`: Fix parsing start and end tags in :class:`html.parser." -"HTMLParser` according to the HTML5 standard." +":gh:`135661`: Fix parsing start and end tags " +"in :class:`html.parser.HTMLParser` according to the HTML5 standard." msgstr "" msgid "" @@ -8454,8 +11386,8 @@ msgid "" msgstr "" msgid "" -"Multiple ``=`` between attribute name and value are no longer collapsed. E." -"g. ```` produces attribute \"foo\" with value \"=bar\"." +"Multiple ``=`` between attribute name and value are no longer collapsed. " +"E.g. ```` produces attribute \"foo\" with value \"=bar\"." msgstr "" msgid "" @@ -8492,8 +11424,8 @@ msgid "" msgstr "" msgid "" -"Addresses :cve:`2024-12718`, :cve:`2025-4138`, :cve:`2025-4330`, and :cve:" -"`2025-4517`." +"Addresses :cve:`2024-12718`, :cve:`2025-4138`, :cve:`2025-4330`, " +"and :cve:`2025-4517`." msgstr "" msgid "" @@ -8502,26 +11434,26 @@ msgid "" msgstr "" msgid "" -":gh:`133623`: Indicate through :data:`ssl.HAS_PSK_TLS13` whether the :mod:" -"`ssl` module supports \"External PSKs\" in TLSv1.3, as described in RFC " -"9258. Patch by Will Childs-Klein." +":gh:`133623`: Indicate through :data:`ssl.HAS_PSK_TLS13` whether " +"the :mod:`ssl` module supports \"External PSKs\" in TLSv1.3, as described in " +"RFC 9258. Patch by Will Childs-Klein." msgstr "" msgid "" -":gh:`128840`: Short-circuit the processing of long IPv6 addresses early in :" -"mod:`ipaddress` to prevent excessive memory consumption and a minor denial-" -"of-service." +":gh:`128840`: Short-circuit the processing of long IPv6 addresses early " +"in :mod:`ipaddress` to prevent excessive memory consumption and a minor " +"denial-of-service." msgstr "" msgid "" -":gh:`139482`: Optimize :data:`os.environ.clear() ` by calling :" -"manpage:`clearenv(3)` when this function is available. Patch by Victor " -"Stinner." +":gh:`139482`: Optimize :data:`os.environ.clear() ` by " +"calling :manpage:`clearenv(3)` when this function is available. Patch by " +"Victor Stinner." msgstr "" msgid "" -":gh:`139958`: The ``application/toml`` mime type is now supported by :mod:" -"`mimetypes`. Patch by Gil Forcada." +":gh:`139958`: The ``application/toml`` mime type is now supported " +"by :mod:`mimetypes`. Patch by Gil Forcada." msgstr "" msgid "" @@ -8532,8 +11464,8 @@ msgstr "" msgid "" ":gh:`139905`: Add suggestion to error message for :class:`typing.Generic` " "subclasses when ``cls.__parameters__`` is missing due to a parent class " -"failing to call :meth:`super().__init_subclass__() ` in its ``__init_subclass__``." +"failing to call :meth:`super().__init_subclass__() " +"` in its ``__init_subclass__``." msgstr "" msgid "" @@ -8552,14 +11484,14 @@ msgid "" msgstr "" msgid "" -":gh:`139809`: Prevent premature colorization of subparser ``prog`` in :meth:" -"`argparse.ArgumentParser.add_subparsers` to respect color environment " -"variable changes after parser creation." +":gh:`139809`: Prevent premature colorization of subparser ``prog`` " +"in :meth:`argparse.ArgumentParser.add_subparsers` to respect color " +"environment variable changes after parser creation." msgstr "" msgid "" -":gh:`139736`: Fix excessive indentation in the default :mod:`argparse` :" -"class:`!HelpFormatter`. Patch by Alexander Edland." +":gh:`139736`: Fix excessive indentation in the " +"default :mod:`argparse` :class:`!HelpFormatter`. Patch by Alexander Edland." msgstr "" msgid "" @@ -8594,10 +11526,10 @@ msgid ":gh:`139374`: :mod:`timeit`: Add color to error tracebacks." msgstr "" msgid "" -":gh:`90949`: Add :meth:`~xml.parsers.expat.xmlparser." -"SetBillionLaughsAttackProtectionActivationThreshold` and :meth:`~xml.parsers." -"expat.xmlparser.SetBillionLaughsAttackProtectionMaximumAmplification` to :" -"ref:`xmlparser ` objects to tune protections against " +":gh:`90949`: " +"Add :meth:`~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionActivationThreshold` " +"and :meth:`~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionMaximumAmplification` " +"to :ref:`xmlparser ` objects to tune protections against " "`billion laughs `_ " "attacks. Patch by Bénédikt Tran." msgstr "" @@ -8611,18 +11543,19 @@ msgid "" msgstr "" msgid "" -":gh:`90949`: Add :meth:`~xml.parsers.expat.xmlparser." -"SetAllocTrackerActivationThreshold` and :meth:`~xml.parsers.expat.xmlparser." -"SetAllocTrackerMaximumAmplification` to :ref:`xmlparser ` " -"objects to tune protections against disproportional amounts of dynamic " -"memory usage from within an Expat parser. Patch by Bénédikt Tran." +":gh:`90949`: " +"Add :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerActivationThreshold` " +"and :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerMaximumAmplification` " +"to :ref:`xmlparser ` objects to tune protections against " +"disproportional amounts of dynamic memory usage from within an Expat parser. " +"Patch by Bénédikt Tran." msgstr "" msgid "" ":gh:`67795`: Functions that take timestamp or timeout arguments now accept " -"any real numbers (such as :class:`~decimal.Decimal` and :class:`~fractions." -"Fraction`), not only integers or floats, although this does not improve " -"precision." +"any real numbers (such as :class:`~decimal.Decimal` " +"and :class:`~fractions.Fraction`), not only integers or floats, although " +"this does not improve precision." msgstr "" msgid "" @@ -8632,8 +11565,8 @@ msgid "" msgstr "" msgid "" -":gh:`139210`: Fix use-after-free when reporting unknown event in :func:`xml." -"etree.ElementTree.iterparse`. Patch by Ken Jin." +":gh:`139210`: Fix use-after-free when reporting unknown event " +"in :func:`xml.etree.ElementTree.iterparse`. Patch by Ken Jin." msgstr "" msgid "" @@ -8662,17 +11595,18 @@ msgstr "" msgid "" "Additionally, the following statements now cause ``DeprecationWarning``\\ s " "to be emitted at runtime: ``from collections.abc import ByteString``, ``from " -"typing import ByteString``, ``import collections.abc; collections.abc." -"ByteString`` and ``import typing; typing.ByteString``. Both classes already " -"caused ``DeprecationWarning``\\ s to be emitted if they were subclassed or " -"used as the second argument to ``isinstance()`` or ``issubclass()``, but " -"they did not previously lead to ``DeprecationWarning``\\ s if they were " -"merely imported or accessed from their respective modules." +"typing import ByteString``, ``import collections.abc; " +"collections.abc.ByteString`` and ``import typing; typing.ByteString``. Both " +"classes already caused ``DeprecationWarning``\\ s to be emitted if they were " +"subclassed or used as the second argument to ``isinstance()`` or " +"``issubclass()``, but they did not previously lead to " +"``DeprecationWarning``\\ s if they were merely imported or accessed from " +"their respective modules." msgstr "" msgid "" -":gh:`135729`: Fix unraisable exception during finalization when using :mod:" -"`concurrent.interpreters` in the REPL." +":gh:`135729`: Fix unraisable exception during finalization when " +"using :mod:`concurrent.interpreters` in the REPL." msgstr "" msgid "" @@ -8706,10 +11640,10 @@ msgid ":gh:`138993`: Dedent :data:`credits` text." msgstr "" msgid "" -":gh:`118803`: Add back :class:`collections.abc.ByteString` and :class:" -"`typing.ByteString`. Both had been removed in prior alpha, beta and release " -"candidates for Python 3.14, but their removal has now been postponed to " -"Python 3.17." +":gh:`118803`: Add back :class:`collections.abc.ByteString` " +"and :class:`typing.ByteString`. Both had been removed in prior alpha, beta " +"and release candidates for Python 3.14, but their removal has now been " +"postponed to Python 3.17." msgstr "" msgid "" @@ -8718,14 +11652,14 @@ msgid "" msgstr "" msgid "" -":gh:`137226`: Fix :func:`typing.get_type_hints` calls on generic :class:" -"`typing.TypedDict` classes defined with string annotations." +":gh:`137226`: Fix :func:`typing.get_type_hints` calls on " +"generic :class:`typing.TypedDict` classes defined with string annotations." msgstr "" msgid "" -":gh:`138899`: Executing ``quit`` command in :mod:`pdb` will raise :exc:`bdb." -"BdbQuit` when :mod:`pdb` is started from an asyncio console using :func:" -"`breakpoint` or :func:`pdb.set_trace`." +":gh:`138899`: Executing ``quit`` command in :mod:`pdb` will " +"raise :exc:`bdb.BdbQuit` when :mod:`pdb` is started from an asyncio console " +"using :func:`breakpoint` or :func:`pdb.set_trace`." msgstr "" msgid "" @@ -8735,13 +11669,14 @@ msgid "" msgstr "" msgid "" -":gh:`138779`: Support device numbers larger than ``2**63-1`` for the :attr:" -"`~os.stat_result.st_rdev` field of the :class:`os.stat_result` structure." +":gh:`138779`: Support device numbers larger than ``2**63-1`` for " +"the :attr:`~os.stat_result.st_rdev` field of the :class:`os.stat_result` " +"structure." msgstr "" msgid "" -":gh:`138682`: Added symmetric difference support to :class:`collections." -"Counter` objects." +":gh:`138682`: Added symmetric difference support " +"to :class:`collections.Counter` objects." msgstr "" msgid ":gh:`138712`: Add :const:`os.NODEV`." @@ -8753,10 +11688,11 @@ msgid "" msgstr "" msgid "" -":gh:`138720`: Fix an issue where :class:`io.BufferedWriter` and :class:`io." -"BufferedRandom` had different definitions of \"closed\" for :meth:`~io." -"IOBase.close` and :meth:`~io.IOBase.flush` which resulted in an exception " -"when close called flush but flush thought the file was already closed." +":gh:`138720`: Fix an issue where :class:`io.BufferedWriter` " +"and :class:`io.BufferedRandom` had different definitions of \"closed\" " +"for :meth:`~io.IOBase.close` and :meth:`~io.IOBase.flush` which resulted in " +"an exception when close called flush but flush thought the file was already " +"closed." msgstr "" msgid ":gh:`138706`: Update :mod:`unicodedata` database to Unicode 17.0.0." @@ -8773,25 +11709,25 @@ msgid "" msgstr "" msgid "" -":gh:`116946`: :mod:`curses.panel`: the type of :func:`curses.panel." -"new_panel` is now immutable. Patch by Bénédikt Tran." +":gh:`116946`: :mod:`curses.panel`: the type " +"of :func:`curses.panel.new_panel` is now immutable. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`116946`: :mod:`zlib`: the types of :func:`zlib.compressobj` and :func:" -"`zlib.decompressobj` are now immutable. Patch by Bénédikt Tran." +":gh:`116946`: :mod:`zlib`: the types of :func:`zlib.compressobj` " +"and :func:`zlib.decompressobj` are now immutable. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`116946`: :mod:`os`: the :class:`os.DirEntry` type and the type of :func:" -"`os.scandir` are now immutable. Patch by Bénédikt Tran." +":gh:`116946`: :mod:`os`: the :class:`os.DirEntry` type and the type " +"of :func:`os.scandir` are now immutable. Patch by Bénédikt Tran." msgstr "" msgid "" ":gh:`116946`: :mod:`tkinter`: the types :class:`!_tkinter.Tcl_Obj` (wrapper " "for Tcl objects), :class:`!_tkinter.tktimertoken` (obtained by calling " -"``createtimerhandler()`` on a :attr:`Tk ` application) and :" -"class:`!_tkinter.tkapp` (the runtime type of Tk applications) are now " +"``createtimerhandler()`` on a :attr:`Tk ` application) " +"and :class:`!_tkinter.tkapp` (the runtime type of Tk applications) are now " "immutable. Patch by Bénédikt Tran." msgstr "" @@ -8802,13 +11738,13 @@ msgid "" msgstr "" msgid "" -":gh:`137706`: Fix the partial evaluation of annotations that use ``typing." -"Annotated[T, x]`` where ``T`` is a forward reference." +":gh:`137706`: Fix the partial evaluation of annotations that use " +"``typing.Annotated[T, x]`` where ``T`` is a forward reference." msgstr "" msgid "" -":gh:`88375`: Fix normalization of the ``robots.txt`` rules and URLs in the :" -"mod:`urllib.robotparser` module. No longer ignore trailing ``?``. " +":gh:`88375`: Fix normalization of the ``robots.txt`` rules and URLs in " +"the :mod:`urllib.robotparser` module. No longer ignore trailing ``?``. " "Distinguish raw special characters ``?``, ``=`` and ``&`` from the percent-" "encoded ones." msgstr "" @@ -8827,17 +11763,17 @@ msgid "" msgstr "" msgid "" -":gh:`138432`: :meth:`zoneinfo.reset_tzpath` will now convert any :class:`os." -"PathLike` objects it receives into strings before adding them to ``TZPATH``. " -"It will raise ``TypeError`` if anything other than a string is found after " -"this conversion. If given an :class:`os.PathLike` object that represents a " -"relative path, it will now raise ``ValueError`` instead of ``TypeError``, " -"and present a more informative error message." +":gh:`138432`: :meth:`zoneinfo.reset_tzpath` will now convert " +"any :class:`os.PathLike` objects it receives into strings before adding them " +"to ``TZPATH``. It will raise ``TypeError`` if anything other than a string " +"is found after this conversion. If given an :class:`os.PathLike` object that " +"represents a relative path, it will now raise ``ValueError`` instead of " +"``TypeError``, and present a more informative error message." msgstr "" msgid "" -":gh:`132657`: Improve the scaling of :func:`copy.copy` and :func:`copy." -"deepcopy` in the free-threading build." +":gh:`132657`: Improve the scaling of :func:`copy.copy` " +"and :func:`copy.deepcopy` in the free-threading build." msgstr "" msgid "" @@ -8857,8 +11793,8 @@ msgstr "" msgid "" ":gh:`138205`: Removed the :meth:`~mmap.mmap.resize` method on platforms that " -"don't support the underlying syscall, instead of raising a :exc:" -"`SystemError`." +"don't support the underlying syscall, instead of raising " +"a :exc:`SystemError`." msgstr "" msgid "" @@ -8885,8 +11821,8 @@ msgid "" msgstr "" msgid "" -":gh:`138239`: The REPL now highlights :keyword:`type` as a soft keyword in :" -"ref:`type statements `." +":gh:`138239`: The REPL now highlights :keyword:`type` as a soft keyword " +"in :ref:`type statements `." msgstr "" msgid "" @@ -8901,10 +11837,10 @@ msgid "" msgstr "" msgid "" -":gh:`138010`: Fix an issue where defining a class with a :deco:`warnings." -"deprecated`-decorated base class may not invoke the correct :meth:`~object." -"__init_subclass__` method in cases involving multiple inheritance. Patch by " -"Brian Schubert." +":gh:`138010`: Fix an issue where defining a class with " +"a :deco:`warnings.deprecated`-decorated base class may not invoke the " +"correct :meth:`~object.__init_subclass__` method in cases involving multiple " +"inheritance. Patch by Brian Schubert." msgstr "" msgid "" @@ -8955,11 +11891,11 @@ msgstr "" msgid "" ":gh:`132947`: Applied changes to ``importlib.metadata`` from " "`importlib_metadata 8.7 `_, including ``dist`` now disallowed for ``EntryPoints." -"select``; deferred imports for faster import times; added support for " -"metadata with newlines (python/cpython#119650); and ``metadata()`` function " -"now returns ``None`` when a metadata directory is present but no metadata is " -"present." +"history.html#v8-7-0>`_, including ``dist`` now disallowed for " +"``EntryPoints.select``; deferred imports for faster import times; added " +"support for metadata with newlines (python/cpython#119650); and " +"``metadata()`` function now returns ``None`` when a metadata directory is " +"present but no metadata is present." msgstr "" msgid "" @@ -8979,14 +11915,14 @@ msgid "" msgstr "" msgid "" -":gh:`125854`: Improve error messages for invalid category in :func:`warnings." -"warn`." +":gh:`125854`: Improve error messages for invalid category " +"in :func:`warnings.warn`." msgstr "" msgid "" ":gh:`137729`: :func:`locale.setlocale` now supports language codes with " -"``@``-modifiers. ``@``-modifier are no longer silently removed in :func:" -"`locale.getlocale`, but included in the language code." +"``@``-modifiers. ``@``-modifier are no longer silently removed " +"in :func:`locale.getlocale`, but included in the language code." msgstr "" msgid "" @@ -9007,10 +11943,11 @@ msgid "" msgstr "" msgid "" -":gh:`137583`: Fix a deadlock introduced in 3.13.6 when a call to :meth:`ssl." -"SSLSocket.recv ` was blocked in one thread, and then " -"another method on the object (such as :meth:`ssl.SSLSocket.send `) was subsequently called in another thread." +":gh:`137583`: Fix a deadlock introduced in 3.13.6 when a call " +"to :meth:`ssl.SSLSocket.recv ` was blocked in one " +"thread, and then another method on the object (such " +"as :meth:`ssl.SSLSocket.send `) was subsequently called " +"in another thread." msgstr "" msgid "" @@ -9019,21 +11956,20 @@ msgid "" msgstr "" msgid "" -":gh:`137426`: Remove the code deprecation of ``importlib.abc." -"ResourceLoader``. It is documented as deprecated, but left for backwards " -"compatibility with other classes in ``importlib.abc``." +":gh:`137426`: Remove the code deprecation of " +"``importlib.abc.ResourceLoader``. It is documented as deprecated, but left " +"for backwards compatibility with other classes in ``importlib.abc``." msgstr "" msgid "" -":gh:`137490`: Handle :data:`~errno.ECANCELED` in the same way as :data:" -"`~errno.EINTR` in :func:`signal.sigwaitinfo` on NetBSD." +":gh:`137490`: Handle :data:`~errno.ECANCELED` in the same way " +"as :data:`~errno.EINTR` in :func:`signal.sigwaitinfo` on NetBSD." msgstr "" msgid "" -":gh:`137512`: Add new constants in the :mod:`resource` module: :data:" -"`~resource.RLIMIT_NTHR`, :data:`~resource.RLIMIT_UMTXP`, :data:`~resource." -"RLIMIT_PIPEBUF`, :data:`~resource.RLIMIT_THREADS`, :data:`~resource." -"RLIM_SAVED_CUR`, and :data:`~resource.RLIM_SAVED_MAX`." +":gh:`137512`: Add new constants in the :mod:`resource` " +"module: :data:`~resource.RLIMIT_NTHR`, :data:`~resource.RLIMIT_UMTXP`, :data:`~resource.RLIMIT_PIPEBUF`, :data:`~resource.RLIMIT_THREADS`, :data:`~resource.RLIM_SAVED_CUR`, " +"and :data:`~resource.RLIM_SAVED_MAX`." msgstr "" msgid "" @@ -9054,9 +11990,10 @@ msgid "" msgstr "" msgid "" -":gh:`137466`: Remove undocumented :func:`!glob.glob0` and :func:`!glob." -"glob1` functions, which have been deprecated since Python 3.13. Use :func:" -"`glob.glob` and pass a directory to its *root_dir* argument instead." +":gh:`137466`: Remove undocumented :func:`!glob.glob0` and :func:`!" +"glob.glob1` functions, which have been deprecated since Python 3.13. " +"Use :func:`glob.glob` and pass a directory to its *root_dir* argument " +"instead." msgstr "" msgid "" @@ -9070,16 +12007,16 @@ msgid ":gh:`115766`: Fix :attr:`!ipaddress.IPv4Interface.is_unspecified`." msgstr "" msgid "" -":gh:`75989`: :func:`tarfile.TarFile.extractall` and :func:`tarfile.TarFile." -"extract` now overwrite symlinks when extracting hardlinks. (Contributed by " -"Alexander Enrique Urieles Nieto in :gh:`75989`.)" +":gh:`75989`: :func:`tarfile.TarFile.extractall` " +"and :func:`tarfile.TarFile.extract` now overwrite symlinks when extracting " +"hardlinks. (Contributed by Alexander Enrique Urieles Nieto in :gh:`75989`.)" msgstr "" msgid "" ":gh:`137017`: Fix :obj:`threading.Thread.is_alive` to remain ``True`` until " "the underlying OS thread is fully cleaned up. This avoids false negatives in " -"edge cases involving thread monitoring or premature :obj:`threading.Thread." -"is_alive` calls." +"edge cases involving thread monitoring or " +"premature :obj:`threading.Thread.is_alive` calls." msgstr "" msgid "" @@ -9088,15 +12025,16 @@ msgid "" msgstr "" msgid "" -":gh:`137191`: Fix how type parameters are collected, when :class:`typing." -"Protocol` are specified with explicit parameters. Now, :class:`typing." -"Generic` and :class:`typing.Protocol` always dictate the parameter number " -"and parameter ordering of types. Previous behavior was a bug." +":gh:`137191`: Fix how type parameters are collected, " +"when :class:`typing.Protocol` are specified with explicit parameters. " +"Now, :class:`typing.Generic` and :class:`typing.Protocol` always dictate the " +"parameter number and parameter ordering of types. Previous behavior was a " +"bug." msgstr "" msgid "" -":gh:`137282`: Fix tab completion and :func:`dir` on :mod:`concurrent." -"futures`." +":gh:`137282`: Fix tab completion and :func:`dir` " +"on :mod:`concurrent.futures`." msgstr "" msgid "" @@ -9130,8 +12068,8 @@ msgid "" msgstr "" msgid "" -":gh:`137185`: Fix a potential async-signal-safety issue in :mod:" -"`faulthandler` when printing C stack traces." +":gh:`137185`: Fix a potential async-signal-safety issue " +"in :mod:`faulthandler` when printing C stack traces." msgstr "" msgid "" @@ -9140,8 +12078,8 @@ msgid "" msgstr "" msgid "" -":gh:`130522`: Fix unraisable :exc:`TypeError` raised during :term:" -"`interpreter shutdown` in the :mod:`threading` module." +":gh:`130522`: Fix unraisable :exc:`TypeError` raised " +"during :term:`interpreter shutdown` in the :mod:`threading` module." msgstr "" msgid "" @@ -9157,8 +12095,8 @@ msgstr "" msgid "" ":gh:`130577`: :mod:`tarfile` now validates archives to ensure member offsets " -"are non-negative. (Contributed by Alexander Enrique Urieles Nieto in :gh:" -"`130577`.)" +"are non-negative. (Contributed by Alexander Enrique Urieles Nieto " +"in :gh:`130577`.)" msgstr "" msgid "" @@ -9169,9 +12107,9 @@ msgid "" msgstr "" msgid "" -":gh:`121237`: Support ``%:z`` directive for :meth:`datetime.datetime." -"strptime`, :meth:`datetime.time.strptime` and :func:`time.strptime`. Patch " -"by Lucas Esposito and Semyon Moroz." +":gh:`121237`: Support ``%:z`` directive " +"for :meth:`datetime.datetime.strptime`, :meth:`datetime.time.strptime` " +"and :func:`time.strptime`. Patch by Lucas Esposito and Semyon Moroz." msgstr "" msgid "" @@ -9209,8 +12147,8 @@ msgid "" msgstr "" msgid "" -":gh:`136874`: Discard URL query and fragment in :func:`urllib.request." -"url2pathname`." +":gh:`136874`: Discard URL query and fragment " +"in :func:`urllib.request.url2pathname`." msgstr "" msgid "" @@ -9225,9 +12163,9 @@ msgstr "" msgid "" ":gh:`131724`: In :mod:`http.client`, a new *max_response_headers* keyword-" -"only parameter has been added to :class:`~http.client.HTTPConnection` and :" -"class:`~http.client.HTTPSConnection` constructors. This parameter sets the " -"maximum number of allowed response headers, helping to prevent denial-of-" +"only parameter has been added to :class:`~http.client.HTTPConnection` " +"and :class:`~http.client.HTTPSConnection` constructors. This parameter sets " +"the maximum number of allowed response headers, helping to prevent denial-of-" "service attacks." msgstr "" @@ -9240,8 +12178,8 @@ msgstr "" msgid "" ":gh:`136234`: Fix :meth:`asyncio.WriteTransport.writelines` to be robust to " -"connection failure, by using the same behavior as :meth:`~asyncio." -"WriteTransport.write`." +"connection failure, by using the same behavior " +"as :meth:`~asyncio.WriteTransport.write`." msgstr "" msgid ":gh:`53144`: :mod:`!encodings.aliases`: Add ``latin_N`` aliases" @@ -9253,11 +12191,11 @@ msgid "" msgstr "" msgid "" -":gh:`136134`: :meth:`!SMTP.auth_cram_md5` now raises an :exc:`~smtplib." -"SMTPException` instead of a :exc:`ValueError` if Python has been built " -"without MD5 support. In particular, :class:`~smtplib.SMTP` clients will not " -"attempt to use this method even if the remote server is assumed to support " -"it. Patch by Bénédikt Tran." +":gh:`136134`: :meth:`!SMTP.auth_cram_md5` now raises " +"an :exc:`~smtplib.SMTPException` instead of a :exc:`ValueError` if Python " +"has been built without MD5 support. In particular, :class:`~smtplib.SMTP` " +"clients will not attempt to use this method even if the remote server is " +"assumed to support it. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -9267,9 +12205,9 @@ msgid "" msgstr "" msgid "" -":gh:`136591`: :mod:`!_hashlib`: avoid using deprecated functions :manpage:" -"`ERR_func_error_string` and :manpage:`EVP_MD_CTX_md` when using OpenSSL 3.0 " -"and later. Patch by Bénédikt Tran." +":gh:`136591`: :mod:`!_hashlib`: avoid using deprecated " +"functions :manpage:`ERR_func_error_string` and :manpage:`EVP_MD_CTX_md` when " +"using OpenSSL 3.0 and later. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -9297,9 +12235,9 @@ msgid ":gh:`136507`: Fix mimetypes CLI to handle multiple file parameters." msgstr "" msgid "" -":gh:`52876`: Add missing ``keepends`` (default ``True``) parameter to :meth:" -"`!codecs.StreamReaderWriter.readline` and :meth:`!codecs.StreamReaderWriter." -"readlines`." +":gh:`52876`: Add missing ``keepends`` (default ``True``) parameter " +"to :meth:`!codecs.StreamReaderWriter.readline` and :meth:`!" +"codecs.StreamReaderWriter.readlines`." msgstr "" msgid "" @@ -9313,13 +12251,14 @@ msgid "" msgstr "" msgid "" -":gh:`136434`: Fix docs generation of ``UnboundItem`` in :mod:`concurrent." -"interpreters` when running with :option:`-OO`." +":gh:`136434`: Fix docs generation of ``UnboundItem`` " +"in :mod:`concurrent.interpreters` when running with :option:`-OO`." msgstr "" msgid "" -":gh:`136380`: Raises :exc:`AttributeError` when accessing :class:`concurrent." -"futures.InterpreterPoolExecutor` and subinterpreters are not available." +":gh:`136380`: Raises :exc:`AttributeError` when " +"accessing :class:`concurrent.futures.InterpreterPoolExecutor` and " +"subinterpreters are not available." msgstr "" msgid "" @@ -9340,9 +12279,9 @@ msgid "" msgstr "" msgid "" -":gh:`136021`: Make ``type_params`` parameter required in :func:`!typing." -"_eval_type` after a deprecation period for not providing this parameter. " -"Also remove the :exc:`DeprecationWarning` for the old behavior." +":gh:`136021`: Make ``type_params`` parameter required in :func:`!" +"typing._eval_type` after a deprecation period for not providing this " +"parameter. Also remove the :exc:`DeprecationWarning` for the old behavior." msgstr "" msgid "" @@ -9351,13 +12290,13 @@ msgid "" msgstr "" msgid "" -":gh:`136047`: Fix issues with :mod:`typing` when the C implementation of :" -"mod:`abc` is not available." +":gh:`136047`: Fix issues with :mod:`typing` when the C implementation " +"of :mod:`abc` is not available." msgstr "" msgid "" -":gh:`136316`: Improve support for evaluating nested forward references in :" -"func:`typing.evaluate_forward_ref`." +":gh:`136316`: Improve support for evaluating nested forward references " +"in :func:`typing.evaluate_forward_ref`." msgstr "" msgid "" @@ -9365,9 +12304,9 @@ msgid "" msgstr "" msgid "" -":gh:`136156`: :func:`tempfile.TemporaryFile` no longer uses :data:`os." -"O_EXCL` with :data:`os.O_TMPFILE`, so it's possible to use ``linkat()`` on " -"the file descriptor. Patch by Victor Stinner." +":gh:`136156`: :func:`tempfile.TemporaryFile` no longer " +"uses :data:`os.O_EXCL` with :data:`os.O_TMPFILE`, so it's possible to use " +"``linkat()`` on the file descriptor. Patch by Victor Stinner." msgstr "" msgid "" @@ -9387,19 +12326,19 @@ msgstr "" msgid "" ":gh:`85702`: If ``zoneinfo._common.load_tzdata`` is given a package without " -"a resource a :exc:`zoneinfo.ZoneInfoNotFoundError` is raised rather than a :" -"exc:`PermissionError`. Patch by Victor Stinner." +"a resource a :exc:`zoneinfo.ZoneInfoNotFoundError` is raised rather than " +"a :exc:`PermissionError`. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`90733`: Improve error messages when reporting invalid parameters in :" -"func:`hashlib.scrypt`. Patch by Bénédikt Tran." +":gh:`90733`: Improve error messages when reporting invalid parameters " +"in :func:`hashlib.scrypt`. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`134759`: Fix :exc:`UnboundLocalError` in :func:`email.message.Message." -"get_payload` when the payload to decode is a :class:`bytes` object. Patch by " -"Kliment Lamonov." +":gh:`134759`: Fix :exc:`UnboundLocalError` " +"in :func:`email.message.Message.get_payload` when the payload to decode is " +"a :class:`bytes` object. Patch by Kliment Lamonov." msgstr "" msgid "" @@ -9432,8 +12371,8 @@ msgstr "" msgid "" ":gh:`135878`: Fixes a crash of :class:`types.SimpleNamespace` on :term:`free " -"threading` builds, when several threads were calling its :meth:`~object." -"__repr__` method at the same time." +"threading` builds, when several threads were calling " +"its :meth:`~object.__repr__` method at the same time." msgstr "" msgid "" @@ -9442,9 +12381,10 @@ msgid "" msgstr "" msgid "" -":gh:`135836`: Fix :exc:`IndexError` in :meth:`asyncio.loop." -"create_connection` that could occur when non-\\ :exc:`OSError` exception is " -"raised during connection and socket's ``close()`` raises :exc:`!OSError`." +":gh:`135836`: Fix :exc:`IndexError` " +"in :meth:`asyncio.loop.create_connection` that could occur when non-" +"\\ :exc:`OSError` exception is raised during connection and socket's " +"``close()`` raises :exc:`!OSError`." msgstr "" msgid "" @@ -9461,15 +12401,16 @@ msgid "" msgstr "" msgid "" -":gh:`135836`: Fix :exc:`IndexError` in :meth:`asyncio.loop." -"create_connection` that could occur when the Happy Eyeballs algorithm " -"resulted in an empty exceptions list during connection attempts." +":gh:`135836`: Fix :exc:`IndexError` " +"in :meth:`asyncio.loop.create_connection` that could occur when the Happy " +"Eyeballs algorithm resulted in an empty exceptions list during connection " +"attempts." msgstr "" msgid "" -":gh:`135855`: Raise :exc:`TypeError` instead of :exc:`SystemError` when :" -"func:`!_interpreters.set___main___attrs` is passed a non-dict object. Patch " -"by Brian Schubert." +":gh:`135855`: Raise :exc:`TypeError` instead of :exc:`SystemError` " +"when :func:`!_interpreters.set___main___attrs` is passed a non-dict object. " +"Patch by Brian Schubert." msgstr "" msgid "" @@ -9484,10 +12425,10 @@ msgid "" msgstr "" msgid "" -":gh:`135640`: Address bug where it was possible to call :func:`xml.etree." -"ElementTree.ElementTree.write` on an ElementTree object with an invalid root " -"element. This behavior blanked the file passed to ``write`` if it already " -"existed." +":gh:`135640`: Address bug where it was possible to " +"call :func:`xml.etree.ElementTree.ElementTree.write` on an ElementTree " +"object with an invalid root element. This behavior blanked the file passed " +"to ``write`` if it already existed." msgstr "" msgid "" @@ -9497,8 +12438,8 @@ msgstr "" msgid "" ":gh:`135759`: :mod:`hashlib`: reject negative digest lengths in OpenSSL-" "based SHAKE objects by raising a :exc:`ValueError`. Previously, negative " -"lengths were implicitly rejected by raising a :exc:`MemoryError` or a :exc:" -"`SystemError`. Patch by Bénédikt Tran." +"lengths were implicitly rejected by raising a :exc:`MemoryError` or " +"a :exc:`SystemError`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -9507,13 +12448,13 @@ msgid "" msgstr "" msgid "" -":gh:`135645`: Added ``supports_isolated_interpreters`` field to :data:`sys." -"implementation`." +":gh:`135645`: Added ``supports_isolated_interpreters`` field " +"to :data:`sys.implementation`." msgstr "" msgid "" -":gh:`135646`: Raise consistent :exc:`NameError` exceptions in :func:" -"`annotationlib.ForwardRef.evaluate`" +":gh:`135646`: Raise consistent :exc:`NameError` exceptions " +"in :func:`annotationlib.ForwardRef.evaluate`" msgstr "" msgid "" @@ -9522,8 +12463,8 @@ msgid "" msgstr "" msgid "" -":gh:`119180`: Only fetch globals and locals if necessary in :func:" -"`annotationlib.get_annotations`" +":gh:`119180`: Only fetch globals and locals if necessary " +"in :func:`annotationlib.get_annotations`" msgstr "" msgid "" @@ -9562,9 +12503,9 @@ msgid "" msgstr "" msgid "" -":gh:`135368`: Fix :class:`unittest.mock.Mock` generation on :func:" -"`dataclasses.dataclass` objects. Now all special attributes are set as it " -"was before :gh:`124429`." +":gh:`135368`: Fix :class:`unittest.mock.Mock` generation " +"on :func:`dataclasses.dataclass` objects. Now all special attributes are set " +"as it was before :gh:`124429`." msgstr "" msgid "" @@ -9587,8 +12528,8 @@ msgid "" msgstr "" msgid "" -":gh:`130870`: Preserve :class:`types.GenericAlias` subclasses in :func:" -"`typing.get_type_hints`" +":gh:`130870`: Preserve :class:`types.GenericAlias` subclasses " +"in :func:`typing.get_type_hints`" msgstr "" msgid "" @@ -9604,26 +12545,26 @@ msgstr "" msgid "" ":gh:`135276`: Synchronized zipfile.Path with zipp 3.23, including improved " -"performance of :meth:`zipfile.Path.open` for non-reading modes, rely on :" -"func:`functools.cached_property` to cache values on the instance. Rely on " -"``save_method_args`` to save the initialization method arguments. Fixed ``." -"name``, ``.stem`` and other basename-based properties on Windows when " +"performance of :meth:`zipfile.Path.open` for non-reading modes, rely " +"on :func:`functools.cached_property` to cache values on the instance. Rely " +"on ``save_method_args`` to save the initialization method arguments. Fixed " +"``.name``, ``.stem`` and other basename-based properties on Windows when " "working with a zipfile on disk." msgstr "" msgid "" ":gh:`135234`: :mod:`hashlib`: improve exception messages when an OpenSSL " -"function failed. When memory allocation fails on OpenSSL's side, a :exc:" -"`MemoryError` is raised instead of a :exc:`ValueError`. Patch by Bénédikt " -"Tran." +"function failed. When memory allocation fails on OpenSSL's side, " +"a :exc:`MemoryError` is raised instead of a :exc:`ValueError`. Patch by " +"Bénédikt Tran." msgstr "" msgid "" ":gh:`135244`: :mod:`uuid`: when the MAC address cannot be determined, the 48-" "bit node ID is now generated with a cryptographically-secure pseudo-random " "number generator (CSPRNG) as per :rfc:`RFC 9562, §6.10.3 " -"<9562#section-6.10-3>`. This affects :func:`~uuid.uuid1` and :func:`~uuid." -"uuid6`." +"<9562#section-6.10-3>`. This affects :func:`~uuid.uuid1` " +"and :func:`~uuid.uuid6`." msgstr "" msgid "" @@ -9642,15 +12583,15 @@ msgid "" msgstr "" msgid "" -":gh:`130662`: +Accept leading zeros in precision and width fields for +:" -"class:`~decimal.Decimal` formatting, for example ``format(Decimal(1.25), " -"'.016f')``." +":gh:`130662`: Accept leading zeros in precision and width fields " +"for :class:`~decimal.Decimal` formatting, for example " +"``format(Decimal(1.25), '.016f')``." msgstr "" msgid "" -":gh:`130662`: Accept leading zeros in precision and width fields for :class:" -"`~fractions.Fraction` formatting, for example ``format(Fraction(1, 3), " -"'.016f')``." +":gh:`130662`: Accept leading zeros in precision and width fields " +"for :class:`~fractions.Fraction` formatting, for example " +"``format(Fraction(1, 3), '.016f')``." msgstr "" msgid "" @@ -9674,13 +12615,14 @@ msgid "" msgstr "" msgid "" -":gh:`134970`: Fix the \"unknown action\" exception in :meth:`argparse." -"ArgumentParser.add_argument_group` to correctly replace the action class." +":gh:`134970`: Fix the \"unknown action\" exception " +"in :meth:`argparse.ArgumentParser.add_argument_group` to correctly replace " +"the action class." msgstr "" msgid "" -":gh:`134718`: By default, omit optional ``Load()`` values in :func:`ast." -"dump`." +":gh:`134718`: By default, omit optional ``Load()`` values " +"in :func:`ast.dump`." msgstr "" msgid "" @@ -9693,9 +12635,9 @@ msgid "" msgstr "" msgid "" -":gh:`108885`: Run each example as a subtest in unit tests synthesized by :" -"func:`doctest.DocFileSuite` and :func:`doctest.DocTestSuite`. Add the :meth:" -"`doctest.DocTestRunner.report_skip` method." +":gh:`108885`: Run each example as a subtest in unit tests synthesized " +"by :func:`doctest.DocFileSuite` and :func:`doctest.DocTestSuite`. Add " +"the :meth:`doctest.DocTestRunner.report_skip` method." msgstr "" msgid "" @@ -9704,9 +12646,9 @@ msgid "" msgstr "" msgid "" -":gh:`134857`: Improve error report for :mod:`doctest`\\ s run with :mod:" -"`unittest`. Remove :mod:`!doctest` module frames from tracebacks and " -"redundant newline character from a failure message." +":gh:`134857`: Improve error report for :mod:`doctest`\\ s run " +"with :mod:`unittest`. Remove :mod:`!doctest` module frames from tracebacks " +"and redundant newline character from a failure message." msgstr "" msgid "" @@ -9716,28 +12658,23 @@ msgstr "" msgid "" ":gh:`133579`: :mod:`curses`: Consistently report failures of curses C API " "calls in module-level methods by raising a :exc:`curses.error`. This " -"affects :func:`~curses.assume_default_colors`, :func:`~curses.baudrate`, :" -"func:`~curses.cbreak`, :func:`~curses.echo`, :func:`~curses.longname`, :func:" -"`~curses.initscr`, :func:`~curses.nl`, :func:`~curses.raw`, :func:`~curses." -"termattrs`, :func:`~curses.termname` and :func:`~curses.unctrl`. Patch by " -"Bénédikt Tran." +"affects :func:`~curses.assume_default_colors`, :func:`~curses.baudrate`, :func:`~curses.cbreak`, :func:`~curses.echo`, :func:`~curses.longname`, :func:`~curses.initscr`, :func:`~curses.nl`, :func:`~curses.raw`, :func:`~curses.termattrs`, :func:`~curses.termname` " +"and :func:`~curses.unctrl`. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`133579`: :meth:`curses.window.refresh` and :meth:`curses.window." -"noutrefresh` now raise a :exc:`TypeError` instead of :exc:`curses.error` " -"when called with an incorrect number of arguments for :ref:`pads `. Patch by Bénédikt Tran." +":gh:`133579`: :meth:`curses.window.refresh` " +"and :meth:`curses.window.noutrefresh` now raise a :exc:`TypeError` instead " +"of :exc:`curses.error` when called with an incorrect number of arguments " +"for :ref:`pads `. Patch by Bénédikt Tran." msgstr "" msgid "" ":gh:`133579`: :ref:`curses.window `: Consistently " -"report failures of curses C API calls in Window methods by raising a :exc:" -"`curses.error`. This affects :meth:`~curses.window.addch`, :meth:`~curses." -"window.addnstr`, :meth:`~curses.window.addstr`, :meth:`~curses.window." -"border`, :meth:`~curses.window.box`, :meth:`~curses.window.chgat`, :meth:" -"`~curses.window.getbkgd`, :meth:`~curses.window.inch`, :meth:`~curses.window." -"insstr` and :meth:`~curses.window.insnstr`. Patch by Bénédikt Tran." +"report failures of curses C API calls in Window methods by raising " +"a :exc:`curses.error`. This " +"affects :meth:`~curses.window.addch`, :meth:`~curses.window.addnstr`, :meth:`~curses.window.addstr`, :meth:`~curses.window.border`, :meth:`~curses.window.box`, :meth:`~curses.window.chgat`, :meth:`~curses.window.getbkgd`, :meth:`~curses.window.inch`, :meth:`~curses.window.insstr` " +"and :meth:`~curses.window.insnstr`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -9776,9 +12713,9 @@ msgid "" msgstr "" msgid "" -":gh:`134151`: :mod:`email`: Fix :exc:`TypeError` in :func:`email.utils." -"decode_params` when sorting :rfc:`2231` continuations that contain an " -"unnumbered section." +":gh:`134151`: :mod:`email`: Fix :exc:`TypeError` " +"in :func:`email.utils.decode_params` when sorting :rfc:`2231` continuations " +"that contain an unnumbered section." msgstr "" msgid "" @@ -9788,8 +12725,8 @@ msgid "" msgstr "" msgid "" -":gh:`134657`: :mod:`asyncio`: Remove some private names from ``asyncio." -"__all__``." +":gh:`134657`: :mod:`asyncio`: Remove some private names from " +"``asyncio.__all__``." msgstr "" msgid "" @@ -9808,15 +12745,15 @@ msgid "" msgstr "" msgid "" -":gh:`134580`: Improved the styling of HTML diff pages generated by the :" -"class:`difflib.HtmlDiff` class, and migrated the output to the HTML5 " +":gh:`134580`: Improved the styling of HTML diff pages generated by " +"the :class:`difflib.HtmlDiff` class, and migrated the output to the HTML5 " "standard." msgstr "" msgid "" ":gh:`134565`: :func:`unittest.doModuleCleanups` no longer swallows all but " -"first exception raised in the cleanup code, but raises a :exc:" -"`ExceptionGroup` if multiple errors occurred." +"first exception raised in the cleanup code, but raises " +"a :exc:`ExceptionGroup` if multiple errors occurred." msgstr "" msgid "" @@ -9835,8 +12772,9 @@ msgid "" msgstr "" msgid "" -":gh:`90871`: Fixed an off by one error concerning the backlog parameter in :" -"meth:`~asyncio.loop.create_unix_server`. Contributed by Christian Harries." +":gh:`90871`: Fixed an off by one error concerning the backlog parameter " +"in :meth:`~asyncio.loop.create_unix_server`. Contributed by Christian " +"Harries." msgstr "" msgid ":gh:`134323`: Fix the :meth:`threading.RLock.locked` method." @@ -9849,21 +12787,21 @@ msgid "" msgstr "" msgid "" -":gh:`71189`: Add support of the all-but-last mode in :func:`os.path." -"realpath`." +":gh:`71189`: Add support of the all-but-last mode " +"in :func:`os.path.realpath`." msgstr "" msgid "" ":gh:`72902`: Improve speed (x1.1-1.8) of the :class:`~fractions.Fraction` " -"constructor for typical inputs (:class:`float`'s, :class:`~decimal." -"Decimal`'s or strings)." +"constructor for typical inputs " +"(:class:`float`'s, :class:`~decimal.Decimal`'s or strings)." msgstr "" msgid "" -":gh:`134209`: :mod:`curses`: The :meth:`curses.window.instr` and :meth:" -"`curses.window.getstr` methods now allocate their internal buffer on the " -"heap instead of the stack; in addition, the max buffer size is increased " -"from 1023 to 2047." +":gh:`134209`: :mod:`curses`: The :meth:`curses.window.instr` " +"and :meth:`curses.window.getstr` methods now allocate their internal buffer " +"on the heap instead of the stack; in addition, the max buffer size is " +"increased from 1023 to 2047." msgstr "" msgid "" @@ -9873,13 +12811,13 @@ msgid "" msgstr "" msgid "" -":gh:`80184`: The default queue size is now ``socket.SOMAXCONN`` for :class:" -"`socketserver.TCPServer`." +":gh:`80184`: The default queue size is now ``socket.SOMAXCONN`` " +"for :class:`socketserver.TCPServer`." msgstr "" msgid "" -":gh:`132983`: Add :mod:`!compression.zstd` version information to ``test." -"pythoninfo``." +":gh:`132983`: Add :mod:`!compression.zstd` version information to " +"``test.pythoninfo``." msgstr "" msgid "" @@ -9888,9 +12826,9 @@ msgid "" msgstr "" msgid "" -":gh:`134152`: Fixed :exc:`UnboundLocalError` that could occur during :mod:" -"`email` header parsing if an expected trailing delimiter is missing in some " -"contexts." +":gh:`134152`: Fixed :exc:`UnboundLocalError` that could occur " +"during :mod:`email` header parsing if an expected trailing delimiter is " +"missing in some contexts." msgstr "" msgid "" @@ -9921,15 +12859,15 @@ msgid "" msgstr "" msgid "" -":gh:`133982`: Emit :exc:`RuntimeWarning` in the Python implementation of :" -"mod:`io` when the :term:`file-like object ` is not closed " +":gh:`133982`: Emit :exc:`RuntimeWarning` in the Python implementation " +"of :mod:`io` when the :term:`file-like object ` is not closed " "explicitly in the presence of multiple I/O layers." msgstr "" msgid "" -":gh:`133890`: The :mod:`tarfile` module now handles :exc:" -"`UnicodeEncodeError` in the same way as :exc:`OSError` when cannot extract a " -"member." +":gh:`133890`: The :mod:`tarfile` module now " +"handles :exc:`UnicodeEncodeError` in the same way as :exc:`OSError` when " +"cannot extract a member." msgstr "" msgid "" @@ -9938,9 +12876,9 @@ msgid "" msgstr "" msgid "" -":gh:`133889`: The generated directory listing page in :class:`http.server." -"SimpleHTTPRequestHandler` now only shows the decoded path component of the " -"requested URL, and not the query and fragment." +":gh:`133889`: The generated directory listing page " +"in :class:`http.server.SimpleHTTPRequestHandler` now only shows the decoded " +"path component of the requested URL, and not the query and fragment." msgstr "" msgid "" @@ -9949,10 +12887,10 @@ msgid "" msgstr "" msgid "" -":gh:`132124`: On POSIX-compliant systems, :func:`!multiprocessing.util." -"get_temp_dir` now ignores :envvar:`TMPDIR` (and similar environment " -"variables) if the path length of ``AF_UNIX`` socket files exceeds the " -"platform-specific maximum length when using the :ref:`forkserver " +":gh:`132124`: On POSIX-compliant systems, :func:`!" +"multiprocessing.util.get_temp_dir` now ignores :envvar:`TMPDIR` (and similar " +"environment variables) if the path length of ``AF_UNIX`` socket files " +"exceeds the platform-specific maximum length when using the :ref:`forkserver " "` start method. Patch by Bénédikt " "Tran." msgstr "" @@ -9964,14 +12902,14 @@ msgid "" msgstr "" msgid "" -":gh:`134004`: :mod:`shelve` as well as underlying :mod:`!dbm.dumb` and :mod:" -"`!dbm.sqlite` now have :meth:`!reorganize` methods to recover unused free " -"space previously occupied by deleted entries." +":gh:`134004`: :mod:`shelve` as well as underlying :mod:`!dbm.dumb` " +"and :mod:`!dbm.sqlite` now have :meth:`!reorganize` methods to recover " +"unused free space previously occupied by deleted entries." msgstr "" msgid "" -":gh:`133970`: Make :class:`!string.templatelib.Template` and :class:`!string." -"templatelib.Interpolation` generic." +":gh:`133970`: Make :class:`!string.templatelib.Template` and :class:`!" +"string.templatelib.Interpolation` generic." msgstr "" msgid "" @@ -9997,21 +12935,21 @@ msgid "" msgstr "" msgid "" -":gh:`133875`: Removed deprecated :meth:`!pathlib.PurePath.is_reserved`. Use :" -"func:`os.path.isreserved` to detect reserved paths on Windows." +":gh:`133875`: Removed deprecated :meth:`!pathlib.PurePath.is_reserved`. " +"Use :func:`os.path.isreserved` to detect reserved paths on Windows." msgstr "" msgid "" ":gh:`133873`: Remove the deprecated ``getmark()``, ``setmark()`` and " -"``getmarkers()`` methods of the :class:`~wave.Wave_read` and :class:`~wave." -"Wave_write` classes, which were deprecated since Python 3.13. Patch by " -"Bénédikt Tran." +"``getmarkers()`` methods of the :class:`~wave.Wave_read` " +"and :class:`~wave.Wave_write` classes, which were deprecated since Python " +"3.13. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`133866`: Remove the undocumented function :func:`!ctypes." -"SetPointerType`, which has been deprecated since Python 3.13. Patch by " -"Bénédikt Tran." +":gh:`133866`: Remove the undocumented function :func:`!" +"ctypes.SetPointerType`, which has been deprecated since Python 3.13. Patch " +"by Bénédikt Tran." msgstr "" msgid "" @@ -10035,8 +12973,8 @@ msgid "" "*formatter_class* argument. Fix TypeError when *formatter_class* is a custom " "subclass of :class:`!HelpFormatter`. Fix TypeError when *formatter_class* is " "not a subclass of :class:`!HelpFormatter` and non-standard *prefix_char* is " -"used. Fix support of colorizing when *formatter_class* is not a subclass of :" -"class:`!HelpFormatter`." +"used. Fix support of colorizing when *formatter_class* is not a subclass " +"of :class:`!HelpFormatter`." msgstr "" msgid "" @@ -10063,8 +13001,8 @@ msgid "" msgstr "" msgid "" -":gh:`77057`: Fix handling of invalid markup declarations in :class:`html." -"parser.HTMLParser`." +":gh:`77057`: Fix handling of invalid markup declarations " +"in :class:`html.parser.HTMLParser`." msgstr "" msgid "" @@ -10089,18 +13027,19 @@ msgid "" msgstr "" msgid "" -":gh:`133489`: :func:`random.getrandbits` can now generate more that 2\\ :sup:" -"`31` bits. :func:`random.randbytes` can now generate more that 256 MiB." +":gh:`133489`: :func:`random.getrandbits` can now generate more that " +"2\\ :sup:`31` bits. :func:`random.randbytes` can now generate more that 256 " +"MiB." msgstr "" msgid "" -":gh:`133595`: Clean up :class:`sqlite3.Connection` APIs. All parameters of :" -"func:`sqlite3.connect` except *database* are now keyword-only. The first " -"three parameters of methods :meth:`~sqlite3.Connection.create_function` and :" -"meth:`~sqlite3.Connection.create_aggregate` are now positional-only. The " -"first parameter of methods :meth:`~sqlite3.Connection.set_authorizer`, :meth:" -"`~sqlite3.Connection.set_progress_handler` and :meth:`~sqlite3.Connection." -"set_trace_callback` is now positional-only." +":gh:`133595`: Clean up :class:`sqlite3.Connection` APIs. All parameters " +"of :func:`sqlite3.connect` except *database* are now keyword-only. The first " +"three parameters of methods :meth:`~sqlite3.Connection.create_function` " +"and :meth:`~sqlite3.Connection.create_aggregate` are now positional-only. " +"The first parameter of " +"methods :meth:`~sqlite3.Connection.set_authorizer`, :meth:`~sqlite3.Connection.set_progress_handler` " +"and :meth:`~sqlite3.Connection.set_trace_callback` is now positional-only." msgstr "" msgid "" @@ -10115,8 +13054,8 @@ msgid "" msgstr "" msgid "" -":gh:`92897`: Removed the ``check_home`` parameter from :func:`sysconfig." -"is_python_build`, deprecated since Python 3.12." +":gh:`92897`: Removed the ``check_home`` parameter " +"from :func:`sysconfig.is_python_build`, deprecated since Python 3.12." msgstr "" msgid "" @@ -10125,8 +13064,8 @@ msgid "" msgstr "" msgid "" -":gh:`133517`: Remove :func:`os.listdrives`, :func:`os.listvolumes` and :func:" -"`os.listmounts` in non Windows desktop builds since the underlying " +":gh:`133517`: Remove :func:`os.listdrives`, :func:`os.listvolumes` " +"and :func:`os.listmounts` in non Windows desktop builds since the underlying " "functionality is missing." msgstr "" @@ -10147,20 +13086,20 @@ msgid "" msgstr "" msgid "" -":gh:`132493`: Avoid accessing ``__annotations__`` unnecessarily in :func:" -"`inspect.signature`." +":gh:`132493`: Avoid accessing ``__annotations__`` unnecessarily " +"in :func:`inspect.signature`." msgstr "" msgid "" -":gh:`133017`: Improve the error message of :func:`multiprocessing." -"sharedctypes.Array`, :func:`multiprocessing.sharedctypes.RawArray`, :func:" -"`multiprocessing.sharedctypes.Value` and :func:`multiprocessing.sharedctypes." -"RawValue` when an invalid typecode is passed. Patch by Tomas Roun" +":gh:`133017`: Improve the error message " +"of :func:`multiprocessing.sharedctypes.Array`, :func:`multiprocessing.sharedctypes.RawArray`, :func:`multiprocessing.sharedctypes.Value` " +"and :func:`multiprocessing.sharedctypes.RawValue` when an invalid typecode " +"is passed. Patch by Tomas Roun" msgstr "" msgid "" -":gh:`132813`: Improve error messages for incorrect types and values of :" -"class:`csv.Dialect` attributes." +":gh:`132813`: Improve error messages for incorrect types and values " +"of :class:`csv.Dialect` attributes." msgstr "" msgid "" @@ -10182,9 +13121,9 @@ msgid "" msgstr "" msgid "" -":gh:`133009`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." -"__deepcopy__ ` when the element is concurrently " -"mutated. Patch by Bénédikt Tran." +":gh:`133009`: :mod:`xml.etree.ElementTree`: Fix a crash " +"in :meth:`Element.__deepcopy__ ` when the element is " +"concurrently mutated. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -10203,8 +13142,9 @@ msgid "" msgstr "" msgid "" -":gh:`123471`: Make concurrent iterations over :class:`itertools." -"combinations` and :class:`itertools.product` safe under free-threading." +":gh:`123471`: Make concurrent iterations " +"over :class:`itertools.combinations` and :class:`itertools.product` safe " +"under free-threading." msgstr "" msgid "" @@ -10257,16 +13197,17 @@ msgid "" msgstr "" msgid "" -":gh:`91349`: Adjust default ``compressionlevel=`` to 6 (down from 9) in :mod:" -"`gzip` and :mod:`tarfile`. It is the default level used by most compression " -"tools and a better tradeoff between speed and performance." +":gh:`91349`: Adjust default ``compressionlevel=`` to 6 (down from 9) " +"in :mod:`gzip` and :mod:`tarfile`. It is the default level used by most " +"compression tools and a better tradeoff between speed and performance." msgstr "" msgid "" -":gh:`131146`: Fix :class:`calendar.TextCalendar`, :class:`calendar." -"HTMLCalendar`, and the :mod:`calendar` CLI to display month names in the " -"nominative case by adding :data:`calendar.standalone_month_name` and :data:" -"`calendar.standalone_month_abbr`, which provide month names and " +":gh:`131146`: " +"Fix :class:`calendar.TextCalendar`, :class:`calendar.HTMLCalendar`, and " +"the :mod:`calendar` CLI to display month names in the nominative case by " +"adding :data:`calendar.standalone_month_name` " +"and :data:`calendar.standalone_month_abbr`, which provide month names and " "abbreviations in the grammatical form used when a month name stands by " "itself, if the locale supports it." msgstr "" @@ -10289,20 +13230,20 @@ msgid "" msgstr "" msgid "" -":gh:`88473`: Implement a fast path for :class:`datetime.date` objects in :" -"func:`datetime.date.today` which results in a 5x performance gain while " +":gh:`88473`: Implement a fast path for :class:`datetime.date` objects " +"in :func:`datetime.date.today` which results in a 5x performance gain while " "proper subclasses retain their previous performance." msgstr "" msgid "" -":gh:`126883`: Add check that timezone fields are in range for :meth:" -"`datetime.datetime.fromisoformat` and :meth:`datetime.time.fromisoformat`. " -"Patch by Semyon Moroz." +":gh:`126883`: Add check that timezone fields are in range " +"for :meth:`datetime.datetime.fromisoformat` " +"and :meth:`datetime.time.fromisoformat`. Patch by Semyon Moroz." msgstr "" msgid "" -":gh:`125028`: :data:`functools.Placeholder` cannot be passed to :func:" -"`functools.partial` as a keyword argument." +":gh:`125028`: :data:`functools.Placeholder` cannot be passed " +"to :func:`functools.partial` as a keyword argument." msgstr "" msgid "" @@ -10317,8 +13258,8 @@ msgid "" msgstr "" msgid "" -":gh:`124033`: ``SimplePath`` is now presented in ``importlib.metadata." -"__all__``." +":gh:`124033`: ``SimplePath`` is now presented in " +"``importlib.metadata.__all__``." msgstr "" msgid "" @@ -10337,8 +13278,8 @@ msgid "" msgstr "" msgid "" -":gh:`119186`: Slightly speed up :func:`os.walk` by calling :func:`os.path." -"join` less often." +":gh:`119186`: Slightly speed up :func:`os.walk` by " +"calling :func:`os.path.join` less often." msgstr "" msgid "" @@ -10379,9 +13320,9 @@ msgid "" msgstr "" msgid "" -":gh:`93334`: Reraise :exc:`KeyError` as :exc:`ModuleNotFoundError` when :" -"meth:`importlib.machinery.PathFinder.find_spec` is called on a submodule " -"without importing the parent (and without a ``path`` argument)." +":gh:`93334`: Reraise :exc:`KeyError` as :exc:`ModuleNotFoundError` " +"when :meth:`importlib.machinery.PathFinder.find_spec` is called on a " +"submodule without importing the parent (and without a ``path`` argument)." msgstr "" msgid "" @@ -10407,18 +13348,19 @@ msgid "" ":issue:`43429`: The :meth:`~mmap.mmap.size` method of the :class:`mmap.mmap` " "class now returns the size of an anonymous mapping on both Unix and Windows. " "Previously, the size would be returned on Windows and an :exc:`OSError` " -"would be raised on Unix. :exc:`ValueError` is now raised instead of :exc:" -"`OSError` when ``trackfd=False``." +"would be raised on Unix. :exc:`ValueError` is now raised instead " +"of :exc:`OSError` when ``trackfd=False``." msgstr "" msgid "" -":issue:`41839`: Allow negative priority values from :func:`os." -"sched_get_priority_min` and :func:`os.sched_get_priority_max` functions." +":issue:`41839`: Allow negative priority values " +"from :func:`os.sched_get_priority_min` and :func:`os.sched_get_priority_max` " +"functions." msgstr "" msgid "" -":issue:`28494`: Improve Zip file validation false positive rate in :func:" -"`zipfile.is_zipfile`." +":issue:`28494`: Improve Zip file validation false positive rate " +"in :func:`zipfile.is_zipfile`." msgstr "" msgid "" @@ -10447,9 +13389,10 @@ msgstr "" msgid "" ":gh:`140000`: Fix potential memory leak when a reference cycle exists " -"between an instance of :class:`typing.TypeAliasType`, :class:`typing." -"TypeVar`, :class:`typing.ParamSpec`, or :class:`typing.TypeVarTuple` and its " -"``__name__`` attribute. Patch by Mikhail Efimov." +"between an instance " +"of :class:`typing.TypeAliasType`, :class:`typing.TypeVar`, :class:`typing.ParamSpec`, " +"or :class:`typing.TypeVarTuple` and its ``__name__`` attribute. Patch by " +"Mikhail Efimov." msgstr "" msgid "" @@ -10457,8 +13400,8 @@ msgid "" msgstr "" msgid "" -":gh:`139988`: Fix a memory leak when failing to create a :class:`~typing." -"Union` type. Patch by Bénédikt Tran." +":gh:`139988`: Fix a memory leak when failing to create " +"a :class:`~typing.Union` type. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -10481,8 +13424,8 @@ msgid "" msgstr "" msgid "" -":gh:`139116`: Prevent a deadlock when multiple threads start, stop and use :" -"mod:`tracemalloc` simultaneously." +":gh:`139116`: Prevent a deadlock when multiple threads start, stop and " +"use :mod:`tracemalloc` simultaneously." msgstr "" msgid "" @@ -10516,11 +13459,11 @@ msgid "" msgstr "" msgid "" -":gh:`138794`: When a new tracing function is registered with :c:func:" -"`PyRefTracer_SetTracer`, replacing the current a call to the trace function " -"will be made with the object set to **NULL** and **event** set to :c:data:" -"`PyRefTracer_TRACKER_REMOVED`. This will happen just before the new function " -"is registered. Patch by Pablo Galindo" +":gh:`138794`: When a new tracing function is registered " +"with :c:func:`PyRefTracer_SetTracer`, replacing the current a call to the " +"trace function will be made with the object set to **NULL** and **event** " +"set to :c:data:`PyRefTracer_TRACKER_REMOVED`. This will happen just before " +"the new function is registered. Patch by Pablo Galindo" msgstr "" msgid "" @@ -10534,9 +13477,10 @@ msgid "" msgstr "" msgid "" -":gh:`105487`: Remove non-existent :meth:`~object.__copy__`, :meth:`~object." -"__deepcopy__`, and :attr:`~type.__bases__` from the :meth:`~object.__dir__` " -"entries of :class:`types.GenericAlias`." +":gh:`105487`: Remove non-" +"existent :meth:`~object.__copy__`, :meth:`~object.__deepcopy__`, " +"and :attr:`~type.__bases__` from the :meth:`~object.__dir__` entries " +"of :class:`types.GenericAlias`." msgstr "" msgid "" @@ -10560,8 +13504,8 @@ msgid "" msgstr "" msgid "" -":gh:`138401`: Add missing validation of argument ``count`` in :func:`os." -"sendfile` to be non-negative." +":gh:`138401`: Add missing validation of argument ``count`` " +"in :func:`os.sendfile` to be non-negative." msgstr "" msgid "" @@ -10588,8 +13532,8 @@ msgid "" msgstr "" msgid "" -":gh:`69605`: Fix some standard library submodules missing from the :term:" -"`REPL` auto-completion of imports." +":gh:`69605`: Fix some standard library submodules missing from " +"the :term:`REPL` auto-completion of imports." msgstr "" msgid "" @@ -10691,10 +13635,11 @@ msgstr "" msgid "" ":gh:`137400`: Fix a crash in the :term:`free threading` build when disabling " -"profiling or tracing across all threads with :c:func:" -"`PyEval_SetProfileAllThreads` or :c:func:`PyEval_SetTraceAllThreads` or " -"their Python equivalents :func:`threading.settrace_all_threads` and :func:" -"`threading.setprofile_all_threads`." +"profiling or tracing across all threads " +"with :c:func:`PyEval_SetProfileAllThreads` " +"or :c:func:`PyEval_SetTraceAllThreads` or their Python " +"equivalents :func:`threading.settrace_all_threads` " +"and :func:`threading.setprofile_all_threads`." msgstr "" msgid "" @@ -10729,8 +13674,8 @@ msgid "" msgstr "" msgid "" -":gh:`137308`: A standalone docstring in a node body is optimized as a :" -"keyword:`pass` statement to ensure that the node's body is never empty. " +":gh:`137308`: A standalone docstring in a node body is optimized as " +"a :keyword:`pass` statement to ensure that the node's body is never empty. " "There was a :exc:`ValueError` in :func:`compile` otherwise." msgstr "" @@ -10782,10 +13727,10 @@ msgid "" msgstr "" msgid "" -":gh:`74185`: The :meth:`~object.__repr__` of :class:`ImportError` and :class:" -"`ModuleNotFoundError` now shows \"name\" and \"path\" as ``name=`` and " -"``path=`` if they were given as keyword arguments at construction " -"time. Patch by Serhiy Storchaka, Oleg Iarygin, and Yoav Nir" +":gh:`74185`: The :meth:`~object.__repr__` of :class:`ImportError` " +"and :class:`ModuleNotFoundError` now shows \"name\" and \"path\" as " +"``name=`` and ``path=`` if they were given as keyword arguments " +"at construction time. Patch by Serhiy Storchaka, Oleg Iarygin, and Yoav Nir" msgstr "" msgid "" @@ -10799,8 +13744,8 @@ msgid "" msgstr "" msgid "" -":gh:`136616`: Improve :exc:`SyntaxError` error messages for invalid :keyword:" -"`assert` usages." +":gh:`136616`: Improve :exc:`SyntaxError` error messages for " +"invalid :keyword:`assert` usages." msgstr "" msgid ":gh:`136599`: Improve performance of :class:`int` hash calculations." @@ -10817,8 +13762,8 @@ msgid "" msgstr "" msgid "" -":gh:`107545`: Improve the error messages that may be raised by :meth:" -"`~socket.socket.setsockopt`." +":gh:`107545`: Improve the error messages that may be raised " +"by :meth:`~socket.socket.setsockopt`." msgstr "" msgid "" @@ -10887,8 +13832,8 @@ msgstr "" msgid "" ":gh:`136003`: Fix :class:`threading.Thread` objects becoming incorrectly " -"daemon when created from an :mod:`atexit` callback or a pending call (:c:" -"func:`Py_AddPendingCall`)." +"daemon when created from an :mod:`atexit` callback or a pending call " +"(:c:func:`Py_AddPendingCall`)." msgstr "" msgid "" @@ -10954,9 +13899,9 @@ msgid "" msgstr "" msgid "" -":gh:`135543`: Emit ``sys.remote_exec`` audit event when :func:`sys." -"remote_exec` is called and migrate ``remote_debugger_script`` to ``cpython." -"remote_debugger_script``." +":gh:`135543`: Emit ``sys.remote_exec`` audit event " +"when :func:`sys.remote_exec` is called and migrate " +"``remote_debugger_script`` to ``cpython.remote_debugger_script``." msgstr "" msgid "" @@ -10977,8 +13922,8 @@ msgid "" msgstr "" msgid "" -":gh:`135422`: Fix regression in :exc:`SyntaxError` messages after :gh:" -"`134036`." +":gh:`135422`: Fix regression in :exc:`SyntaxError` messages " +"after :gh:`134036`." msgstr "" msgid "" @@ -11051,8 +13996,8 @@ msgid "" msgstr "" msgid "" -":gh:`134908`: Fix crash when iterating over lines in a text file on the :" -"term:`free threaded ` build." +":gh:`134908`: Fix crash when iterating over lines in a text file on " +"the :term:`free threaded ` build." msgstr "" msgid ":gh:`117852`: Fix argument checking of :meth:`~agen.athrow`." @@ -11093,8 +14038,8 @@ msgid ":gh:`131798`: Optimize ``_POP_CALL_TWO_LOAD_CONST_INLINE_BORROW``." msgstr "" msgid "" -":gh:`134381`: Fix :exc:`RuntimeError` when using a not-started :class:" -"`threading.Thread` after calling :func:`os.fork`" +":gh:`134381`: Fix :exc:`RuntimeError` when using a not-" +"started :class:`threading.Thread` after calling :func:`os.fork`" msgstr "" msgid "" @@ -11171,8 +14116,8 @@ msgid "" msgstr "" msgid "" -":gh:`134036`: Improve :exc:`SyntaxError` message when using invalid :keyword:" -"`raise` statements." +":gh:`134036`: Improve :exc:`SyntaxError` message when using " +"invalid :keyword:`raise` statements." msgstr "" msgid "" @@ -11302,8 +14247,8 @@ msgstr "" msgid "" ":gh:`139924`: Function watchers can now receive a " -"PyFunction_PYFUNC_EVENT_MODIFY_QUALNAME event when a watched functions " -"qualname is changed." +"PyFunction_EVENT_MODIFY_QUALNAME event when a watched function's qualname is " +"changed." msgstr "" msgid "" @@ -11373,16 +14318,16 @@ msgid "" msgstr "" msgid "" -":gh:`128813`: Functions :c:func:`_Py_c_sum`, :c:func:`_Py_c_diff`, :c:func:" -"`_Py_c_neg`, :c:func:`_Py_c_prod`, :c:func:`_Py_c_quot`, :c:func:`_Py_c_pow` " +":gh:`128813`: " +"Functions :c:func:`_Py_c_sum`, :c:func:`_Py_c_diff`, :c:func:`_Py_c_neg`, :c:func:`_Py_c_prod`, :c:func:`_Py_c_quot`, :c:func:`_Py_c_pow` " "and previously undocumented :c:func:`_Py_c_abs` are :term:`soft deprecated`. " -"Deprecate also :c:member:`~PyComplexObject.cval` field of the :c:type:" -"`PyComplexObject` type. Patch by Sergey B Kirpichev." +"Deprecate also :c:member:`~PyComplexObject.cval` field of " +"the :c:type:`PyComplexObject` type. Patch by Sergey B Kirpichev." msgstr "" msgid "" -":gh:`137210`: Add API for checking an extension module's ABI compatibility: :" -"c:data:`Py_mod_abi`, :c:func:`PyABIInfo_Check`, :c:macro:`PyABIInfo_VAR` " +":gh:`137210`: Add API for checking an extension module's ABI " +"compatibility: :c:data:`Py_mod_abi`, :c:func:`PyABIInfo_Check`, :c:macro:`PyABIInfo_VAR` " "and :c:data:`Py_mod_abi`." msgstr "" @@ -11396,14 +14341,14 @@ msgid "" msgstr "" msgid "" -":gh:`136006`: On Solaris, the :c:macro:`!Py_NAN` macro now expands to a :c:" -"type:`!double` instead of a function address. Patch by Bénédikt Tran." +":gh:`136006`: On Solaris, the :c:macro:`!Py_NAN` macro now expands to " +"a :c:type:`!double` instead of a function address. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`135075`: Make :c:func:`PyObject_SetAttr` and :c:func:" -"`PyObject_SetAttrString` fail if called with ``NULL`` value and an exception " -"set. Patch by Victor Stinner." +":gh:`135075`: Make :c:func:`PyObject_SetAttr` " +"and :c:func:`PyObject_SetAttrString` fail if called with ``NULL`` value and " +"an exception set. Patch by Victor Stinner." msgstr "" msgid "" @@ -11430,9 +14375,9 @@ msgid "" msgstr "" msgid "" -":gh:`134989`: Implement :c:func:`PyObject_DelAttr` and :c:func:" -"`PyObject_DelAttrString` as macros in the limited C API 3.12 and older. " -"Patch by Victor Stinner." +":gh:`134989`: Implement :c:func:`PyObject_DelAttr` " +"and :c:func:`PyObject_DelAttrString` as macros in the limited C API 3.12 and " +"older. Patch by Victor Stinner." msgstr "" msgid "" @@ -11451,15 +14396,15 @@ msgid "" msgstr "" msgid "" -":gh:`134144`: Fix crash when calling :c:func:`Py_EndInterpreter` with a :" -"term:`thread state` that isn't the initial thread for the interpreter." +":gh:`134144`: Fix crash when calling :c:func:`Py_EndInterpreter` with " +"a :term:`thread state` that isn't the initial thread for the interpreter." msgstr "" msgid "" ":gh:`133968`: Add :c:func:`PyUnicodeWriter_WriteASCII` function to write an " -"ASCII string into a :c:type:`PyUnicodeWriter`. The function is faster than :" -"c:func:`PyUnicodeWriter_WriteUTF8`, but has an undefined behavior if the " -"input string contains non-ASCII characters. Patch by Victor Stinner." +"ASCII string into a :c:type:`PyUnicodeWriter`. The function is faster " +"than :c:func:`PyUnicodeWriter_WriteUTF8`, but has an undefined behavior if " +"the input string contains non-ASCII characters. Patch by Victor Stinner." msgstr "" msgid "" @@ -11498,9 +14443,9 @@ msgid "" msgstr "" msgid "" -":gh:`108512`: Add functions :c:func:`PySys_GetAttr`, :c:func:" -"`PySys_GetAttrString`, :c:func:`PySys_GetOptionalAttr` and :c:func:" -"`PySys_GetOptionalAttrString`." +":gh:`108512`: Add " +"functions :c:func:`PySys_GetAttr`, :c:func:`PySys_GetAttrString`, :c:func:`PySys_GetOptionalAttr` " +"and :c:func:`PySys_GetOptionalAttrString`." msgstr "" msgid "" @@ -11674,12 +14619,12 @@ msgid "" msgstr "" msgid "" -":gh:`115322`: The underlying extension modules behind :mod:`readline`:, :mod:" -"`subprocess`, and :mod:`ctypes` now raise audit events on previously " -"uncovered code paths that could lead to file system access related to C " -"function calling and external binary execution. The ``ctypes." -"call_function`` audit hook has also been fixed to use an unsigned value for " -"its ``function pointer``." +":gh:`115322`: The underlying extension modules " +"behind :mod:`readline`:, :mod:`subprocess`, and :mod:`ctypes` now raise " +"audit events on previously uncovered code paths that could lead to file " +"system access related to C function calling and external binary execution. " +"The ``ctypes.call_function`` audit hook has also been fixed to use an " +"unsigned value for its ``function pointer``." msgstr "" msgid ":gh:`133490`: Add color support to PDB in remote mode." @@ -11740,9 +14685,10 @@ msgid "" msgstr "" msgid "" -":gh:`133290`: Fix attribute caching issue when setting :attr:`ctypes." -"_Pointer._type_` in the undocumented and deprecated :func:`!ctypes." -"SetPointerType` function and the undocumented :meth:`!set_type` method." +":gh:`133290`: Fix attribute caching issue when " +"setting :attr:`ctypes._Pointer._type_` in the undocumented and " +"deprecated :func:`!ctypes.SetPointerType` function and the " +"undocumented :meth:`!set_type` method." msgstr "" msgid "" @@ -11751,8 +14697,8 @@ msgid "" msgstr "" msgid "" -":gh:`133153`: Do not complete :mod:`pdb` commands in ``interact`` mode of :" -"mod:`pdb`." +":gh:`133153`: Do not complete :mod:`pdb` commands in ``interact`` mode " +"of :mod:`pdb`." msgstr "" msgid "" @@ -11762,10 +14708,10 @@ msgid "" msgstr "" msgid "" -":gh:`133089`: Use original timeout value for :exc:`subprocess." -"TimeoutExpired` when the func :meth:`subprocess.run` is called with a " -"timeout instead of sometimes a confusing partial remaining time out value " -"used internally on the final ``wait()``." +":gh:`133089`: Use original timeout value " +"for :exc:`subprocess.TimeoutExpired` when the func :meth:`subprocess.run` is " +"called with a timeout instead of sometimes a confusing partial remaining " +"time out value used internally on the final ``wait()``." msgstr "" msgid "" @@ -11839,14 +14785,14 @@ msgid "" msgstr "" msgid "" -":gh:`93696`: Fixed the breakpoint display error for frozen modules in :mod:" -"`pdb`." +":gh:`93696`: Fixed the breakpoint display error for frozen modules " +"in :mod:`pdb`." msgstr "" msgid "" -":gh:`129965`: Add MIME types for ``.7z``, ``.apk``, ``.deb``, ``.glb``, ``." -"gltf``, ``.gz``, ``.m4v``, ``.php``, ``.rar``, ``.rpm``, ``.stl`` and ``." -"wmv``. Patch by Hugo van Kemenade." +":gh:`129965`: Add MIME types for ``.7z``, ``.apk``, ``.deb``, ``.glb``, " +"``.gltf``, ``.gz``, ``.m4v``, ``.php``, ``.rar``, ``.rpm``, ``.stl`` and " +"``.wmv``. Patch by Hugo van Kemenade." msgstr "" msgid "" @@ -11863,9 +14809,10 @@ msgid "" msgstr "" msgid "" -":gh:`125618`: Add a *format* parameter to :meth:`annotationlib.ForwardRef." -"evaluate`. Evaluating annotations in the ``FORWARDREF`` format now succeeds " -"in more cases that would previously have raised an exception." +":gh:`125618`: Add a *format* parameter " +"to :meth:`annotationlib.ForwardRef.evaluate`. Evaluating annotations in the " +"``FORWARDREF`` format now succeeds in more cases that would previously have " +"raised an exception." msgstr "" msgid "" @@ -11887,26 +14834,27 @@ msgid "" msgstr "" msgid "" -":gh:`132561`: Fix the public ``locked`` method of ``multiprocessing." -"SemLock`` class. Also adding 2 tests for the derivated :class:" -"`multiprocessing.Lock` and :class:`multiprocessing.RLock` classes." +":gh:`132561`: Fix the public ``locked`` method of " +"``multiprocessing.SemLock`` class. Also adding 2 tests for the " +"derivated :class:`multiprocessing.Lock` and :class:`multiprocessing.RLock` " +"classes." msgstr "" msgid "" -":gh:`121468`: Add :func:`pdb.set_trace_async` function to support :keyword:" -"`await` statements in :mod:`pdb`." +":gh:`121468`: Add :func:`pdb.set_trace_async` function to " +"support :keyword:`await` statements in :mod:`pdb`." msgstr "" msgid "" -":gh:`132493`: :class:`typing.Protocol` now uses :func:`annotationlib." -"get_annotations` when checking whether or not an instance implements the " -"protocol with :func:`isinstance`. This enables support for ``isinstance`` " -"checks against classes with deferred annotations." +":gh:`132493`: :class:`typing.Protocol` now " +"uses :func:`annotationlib.get_annotations` when checking whether or not an " +"instance implements the protocol with :func:`isinstance`. This enables " +"support for ``isinstance`` checks against classes with deferred annotations." msgstr "" msgid "" -":gh:`132536`: Do not disable :monitoring-event:`PY_THROW` event in :mod:" -"`bdb` because it can't be disabled." +":gh:`132536`: Do not disable :monitoring-event:`PY_THROW` event " +"in :mod:`bdb` because it can't be disabled." msgstr "" msgid "" @@ -11921,12 +14869,12 @@ msgid "" msgstr "" msgid "" -":gh:`81793`: Fix :func:`os.link` on platforms (like Linux) where the system :" -"c:func:`!link` function does not follow symlinks. On Linux, it now follows " -"symlinks by default or if ``follow_symlinks=True`` is specified. On Windows, " -"it now raises an error if ``follow_symlinks=True`` is passed. On macOS, it " -"now raises an error if ``follow_symlinks=False`` is passed and the system :c:" -"func:`!linkat` function is not available at runtime." +":gh:`81793`: Fix :func:`os.link` on platforms (like Linux) where the " +"system :c:func:`!link` function does not follow symlinks. On Linux, it now " +"follows symlinks by default or if ``follow_symlinks=True`` is specified. On " +"Windows, it now raises an error if ``follow_symlinks=True`` is passed. On " +"macOS, it now raises an error if ``follow_symlinks=False`` is passed and the " +"system :c:func:`!linkat` function is not available at runtime." msgstr "" msgid "" @@ -11935,8 +14883,9 @@ msgid "" msgstr "" msgid "" -":gh:`132491`: Rename ``annotationlib.value_to_string`` to :func:" -"`annotationlib.type_repr` and provide better handling for function objects." +":gh:`132491`: Rename ``annotationlib.value_to_string`` " +"to :func:`annotationlib.type_repr` and provide better handling for function " +"objects." msgstr "" msgid "" @@ -11946,13 +14895,14 @@ msgid "" msgstr "" msgid "" -":gh:`70145`: Add support for channels in Bluetooth HCI protocol (:const:" -"`~socket.BTPROTO_HCI`)." +":gh:`70145`: Add support for channels in Bluetooth HCI protocol " +"(:const:`~socket.BTPROTO_HCI`)." msgstr "" msgid "" -":gh:`131913`: Add a shortcut function :func:`multiprocessing.Process." -"interrupt` alongside the existing :func:`multiprocessing.Process.terminate` " +":gh:`131913`: Add a shortcut " +"function :func:`multiprocessing.Process.interrupt` alongside the " +"existing :func:`multiprocessing.Process.terminate` " "and :func:`multiprocessing.Process.kill` for an improved control over child " "process termination." msgstr "" @@ -11970,8 +14920,9 @@ msgid "" msgstr "" msgid "" -":gh:`132106`: :meth:`QueueListener.start ` now raises a :exc:`RuntimeError` if the listener is already started." +":gh:`132106`: :meth:`QueueListener.start " +"` now raises a :exc:`RuntimeError` if " +"the listener is already started." msgstr "" msgid "" @@ -11986,17 +14937,18 @@ msgid "" msgstr "" msgid "" -":gh:`125866`: Add optional *add_scheme* argument to :func:`urllib.request." -"pathname2url`; when set to true, a complete URL is returned. Likewise add " -"optional *require_scheme* argument to :func:`~urllib.request.url2pathname`; " -"when set to true, a complete URL is accepted." +":gh:`125866`: Add optional *add_scheme* argument " +"to :func:`urllib.request.pathname2url`; when set to true, a complete URL is " +"returned. Likewise add optional *require_scheme* argument " +"to :func:`~urllib.request.url2pathname`; when set to true, a complete URL is " +"accepted." msgstr "" msgid "" ":gh:`132308`: A :class:`traceback.TracebackException` now correctly renders " -"the ``__context__`` and ``__cause__`` attributes from :ref:`falsey ` :" -"class:`Exception`, and the ``exceptions`` attribute from falsey :class:" -"`ExceptionGroup`." +"the ``__context__`` and ``__cause__`` attributes from :ref:`falsey " +"` :class:`Exception`, and the ``exceptions`` attribute from " +"falsey :class:`ExceptionGroup`." msgstr "" msgid "" @@ -12041,8 +14993,8 @@ msgstr "" msgid "" ":gh:`132063`: Prevent exceptions that evaluate as falsey (namely, when their " "``__bool__`` method returns ``False`` or their ``__len__`` method returns 0) " -"from being ignored by :class:`concurrent.futures.ProcessPoolExecutor` and :" -"class:`concurrent.futures.ThreadPoolExecutor`." +"from being ignored by :class:`concurrent.futures.ProcessPoolExecutor` " +"and :class:`concurrent.futures.ThreadPoolExecutor`." msgstr "" msgid "" @@ -12059,9 +15011,9 @@ msgstr "" msgid "" ":gh:`119605`: Respect ``follow_wrapped`` for :meth:`!__init__` and :meth:`!" -"__new__` methods when getting the class signature for a class with :func:" -"`inspect.signature`. Preserve class signature after wrapping with :func:" -"`warnings.deprecated`. Patch by Xuehai Pan." +"__new__` methods when getting the class signature for a class " +"with :func:`inspect.signature`. Preserve class signature after wrapping " +"with :func:`warnings.deprecated`. Patch by Xuehai Pan." msgstr "" msgid "" @@ -12086,8 +15038,8 @@ msgid "" msgstr "" msgid "" -":gh:`131434`: Improve error reporting for incorrect format in :func:`time." -"strptime`." +":gh:`131434`: Improve error reporting for incorrect format " +"in :func:`time.strptime`." msgstr "" msgid "" @@ -12097,15 +15049,16 @@ msgstr "" msgid "" ":gh:`100926`: Move :func:`ctypes.POINTER` types cache from a global internal " -"cache (``_pointer_type_cache``) to the :attr:`ctypes._CData." -"__pointer_type__` attribute of the corresponding :mod:`ctypes` types. This " -"will stop the cache from growing without limits in some situations." +"cache (``_pointer_type_cache``) to " +"the :attr:`ctypes._CData.__pointer_type__` attribute of the " +"corresponding :mod:`ctypes` types. This will stop the cache from growing " +"without limits in some situations." msgstr "" msgid "" ":gh:`85702`: If ``zoneinfo._common.load_tzdata`` is given a package without " -"a resource a ``ZoneInfoNotFoundError`` is raised rather than a :exc:" -"`IsADirectoryError`." +"a resource a ``ZoneInfoNotFoundError`` is raised rather than " +"a :exc:`IsADirectoryError`." msgstr "" msgid "" @@ -12117,9 +15070,9 @@ msgid ":gh:`131127`: Systems using LibreSSL now successfully build." msgstr "" msgid "" -":gh:`89157`: Make the pure Python implementation of :func:`datetime.date." -"fromisoformat`, only accept ASCII strings for consistency with the C " -"implementation." +":gh:`89157`: Make the pure Python implementation " +"of :func:`datetime.date.fromisoformat`, only accept ASCII strings for " +"consistency with the C implementation." msgstr "" msgid "" @@ -12128,11 +15081,12 @@ msgid "" msgstr "" msgid "" -":gh:`110067`: Make :mod:`heapq` max-heap functions :func:`heapq." -"heapify_max`, :func:`heapq.heappush_max`, :func:`heapq.heappop_max`, and :" -"func:`heapq.heapreplace_max` public. Previous underscored naming is kept for " -"backwards compatibility. Additionally, the missing function :func:`heapq." -"heappushpop_max` has been added to both the C and Python implementations." +":gh:`110067`: Make :mod:`heapq` max-heap " +"functions :func:`heapq.heapify_max`, :func:`heapq.heappush_max`, :func:`heapq.heappop_max`, " +"and :func:`heapq.heapreplace_max` public. Previous underscored naming is " +"kept for backwards compatibility. Additionally, the missing " +"function :func:`heapq.heappushpop_max` has been added to both the C and " +"Python implementations." msgstr "" msgid "" @@ -12152,16 +15106,16 @@ msgid "" msgstr "" msgid "" -":gh:`77065`: Add keyword-only optional argument *echo_char* for :meth:" -"`getpass.getpass` for optional visual keyboard feedback support. Patch by " -"Semyon Moroz." +":gh:`77065`: Add keyword-only optional argument *echo_char* " +"for :meth:`getpass.getpass` for optional visual keyboard feedback support. " +"Patch by Semyon Moroz." msgstr "" msgid "" ":gh:`130317`: Fix :c:func:`PyFloat_Pack2` and :c:func:`PyFloat_Unpack2` for " -"NaN's with payload. This corrects round-trip for :func:`struct.unpack` and :" -"func:`struct.pack` in case of the IEEE 754 binary16 \"half precision\" type. " -"Patch by Sergey B Kirpichev." +"NaN's with payload. This corrects round-trip for :func:`struct.unpack` " +"and :func:`struct.pack` in case of the IEEE 754 binary16 \"half precision\" " +"type. Patch by Sergey B Kirpichev." msgstr "" msgid "" @@ -12175,19 +15129,19 @@ msgid "" msgstr "" msgid "" -":gh:`101410`: Added more detailed messages for domain errors in the :mod:" -"`math` module." +":gh:`101410`: Added more detailed messages for domain errors in " +"the :mod:`math` module." msgstr "" msgid "" ":gh:`128384`: Make :class:`warnings.catch_warnings` use a context variable " -"for holding the warning filtering state if the :data:`sys.flags." -"context_aware_warnings` flag is set to true. This makes using the context " -"manager thread-safe in multi-threaded programs. The flag is true by default " -"in free-threaded builds and is otherwise false. The value of the flag can be " -"overridden by the :option:`-X context_aware_warnings <-X>` command-line " -"option or by the :envvar:`PYTHON_CONTEXT_AWARE_WARNINGS` environment " -"variable." +"for holding the warning filtering state if " +"the :data:`sys.flags.context_aware_warnings` flag is set to true. This " +"makes using the context manager thread-safe in multi-threaded programs. The " +"flag is true by default in free-threaded builds and is otherwise false. The " +"value of the flag can be overridden by the :option:`-X " +"context_aware_warnings <-X>` command-line option or by " +"the :envvar:`PYTHON_CONTEXT_AWARE_WARNINGS` environment variable." msgstr "" msgid "" @@ -12196,14 +15150,14 @@ msgid "" msgstr "" msgid "" -":gh:`129027`: Raise :exc:`DeprecationWarning` for :func:`sys." -"_clear_type_cache`. This function was deprecated in Python 3.13 but it " -"didn't raise a runtime warning." +":gh:`129027`: Raise :exc:`DeprecationWarning` " +"for :func:`sys._clear_type_cache`. This function was deprecated in Python " +"3.13 but it didn't raise a runtime warning." msgstr "" msgid "" -":gh:`128307`: Add ``eager_start`` keyword argument to :meth:`asyncio.loop." -"create_task`" +":gh:`128307`: Add ``eager_start`` keyword argument " +"to :meth:`asyncio.loop.create_task`" msgstr "" msgid "" @@ -12217,23 +15171,24 @@ msgid "" msgstr "" msgid "" -":gh:`126838`: Add *resolve_host* keyword-only parameter to :func:`urllib." -"request.url2pathname`, and fix handling of file URLs with authorities." +":gh:`126838`: Add *resolve_host* keyword-only parameter " +"to :func:`urllib.request.url2pathname`, and fix handling of file URLs with " +"authorities." msgstr "" msgid "" ":gh:`82129`: Fix :exc:`NameError` when calling :func:`typing.get_type_hints` " -"on a :func:`dataclasses.dataclass` created by :func:`dataclasses." -"make_dataclass` with un-annotated fields." +"on a :func:`dataclasses.dataclass` created " +"by :func:`dataclasses.make_dataclass` with un-annotated fields." msgstr "" msgid "" ":gh:`122559`: Remove :meth:`!__reduce__` and :meth:`!__reduce_ex__` methods " -"that always raise :exc:`TypeError` in the C implementation of :class:`io." -"FileIO`, :class:`io.BufferedReader`, :class:`io.BufferedWriter` and :class:" -"`io.BufferedRandom` and replace them with default :meth:`!__getstate__` " -"methods that raise :exc:`!TypeError`. This restores fine details of behavior " -"of Python 3.11 and older versions." +"that always raise :exc:`TypeError` in the C implementation " +"of :class:`io.FileIO`, :class:`io.BufferedReader`, :class:`io.BufferedWriter` " +"and :class:`io.BufferedRandom` and replace them with default :meth:`!" +"__getstate__` methods that raise :exc:`!TypeError`. This restores fine " +"details of behavior of Python 3.11 and older versions." msgstr "" msgid "" @@ -12250,9 +15205,9 @@ msgstr "" msgid "" ":gh:`120220`: Deprecate the :class:`!tkinter.Variable` methods :meth:`!" -"trace_variable`, :meth:`!trace_vdelete` and :meth:`!trace_vinfo`. Methods :" -"meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!trace_info` can be used " -"instead." +"trace_variable`, :meth:`!trace_vdelete` and :meth:`!trace_vinfo`. " +"Methods :meth:`!trace_add`, :meth:`!trace_remove` and :meth:`!trace_info` " +"can be used instead." msgstr "" msgid "" @@ -12273,16 +15228,16 @@ msgid "" msgstr "" msgid "" -":gh:`75223`: Deprecate undotted extensions in :meth:`mimetypes.MimeTypes." -"add_type`. Patch by Hugo van Kemenade." +":gh:`75223`: Deprecate undotted extensions " +"in :meth:`mimetypes.MimeTypes.add_type`. Patch by Hugo van Kemenade." msgstr "" msgid ":gh:`112936`: fix IDLE: no Shell menu item in single-process mode." msgstr "" msgid "" -":gh:`107006`: Move documentation and example code for :class:`threading." -"local` from its docstring to the official docs." +":gh:`107006`: Move documentation and example code " +"for :class:`threading.local` from its docstring to the official docs." msgstr "" msgid "" @@ -12321,8 +15276,8 @@ msgid "" msgstr "" msgid "" -":gh:`133304`: Workaround NaN's \"canonicalization\" in :c:func:" -"`PyFloat_Pack4` and :c:func:`PyFloat_Unpack4` on RISC-V." +":gh:`133304`: Workaround NaN's \"canonicalization\" " +"in :c:func:`PyFloat_Pack4` and :c:func:`PyFloat_Unpack4` on RISC-V." msgstr "" msgid "" @@ -12331,9 +15286,9 @@ msgid "" msgstr "" msgid "" -":gh:`133231`: Add new utilities of observing JIT compilation: :func:`sys." -"_jit.is_available`, :func:`sys._jit.is_enabled`, and :func:`sys._jit." -"is_active`." +":gh:`133231`: Add new utilities of observing JIT " +"compilation: :func:`sys._jit.is_available`, :func:`sys._jit.is_enabled`, " +"and :func:`sys._jit.is_active`." msgstr "" msgid "" @@ -12385,8 +15340,8 @@ msgid "" msgstr "" msgid "" -":gh:`132825`: Enhance unhashable key/element error messages for :class:" -"`dict` and :class:`set`. Patch by Victor Stinner." +":gh:`132825`: Enhance unhashable key/element error messages " +"for :class:`dict` and :class:`set`. Patch by Victor Stinner." msgstr "" msgid "" @@ -12411,8 +15366,8 @@ msgid "" msgstr "" msgid "" -":gh:`132747`: Fix a crash when calling :meth:`~object.__get__` of a :term:" -"`method` with a :const:`None` second argument." +":gh:`132747`: Fix a crash when calling :meth:`~object.__get__` of " +"a :term:`method` with a :const:`None` second argument." msgstr "" msgid "" @@ -12427,14 +15382,14 @@ msgid "" msgstr "" msgid "" -":gh:`132737`: Support profiling code that requires ``__main__``, such as :" -"mod:`pickle`." +":gh:`132737`: Support profiling code that requires ``__main__``, such " +"as :mod:`pickle`." msgstr "" msgid "" -":gh:`132639`: Added :c:func:`PyLong_AsNativeBytes`, :c:func:" -"`PyLong_FromNativeBytes` and :c:func:`PyLong_FromUnsignedNativeBytes` to the " -"limited C API." +":gh:`132639`: " +"Added :c:func:`PyLong_AsNativeBytes`, :c:func:`PyLong_FromNativeBytes` " +"and :c:func:`PyLong_FromUnsignedNativeBytes` to the limited C API." msgstr "" msgid "" @@ -12507,8 +15462,8 @@ msgid "" msgstr "" msgid "" -":gh:`132286`: Fix that :attr:`type.__annotate__` was not deleted, when :attr:" -"`type.__annotations__` was deleted." +":gh:`132286`: Fix that :attr:`type.__annotate__` was not deleted, " +"when :attr:`type.__annotations__` was deleted." msgstr "" msgid "" @@ -12517,10 +15472,10 @@ msgid "" msgstr "" msgid "" -":gh:`124715`: Prevents against stack overflows when calling :c:func:" -"`Py_DECREF`. Third-party extension objects no longer need to use the " -"\"trashcan\" mechanism, as protection is now built into the :c:func:" -"`Py_DECREF` macro." +":gh:`124715`: Prevents against stack overflows when " +"calling :c:func:`Py_DECREF`. Third-party extension objects no longer need to " +"use the \"trashcan\" mechanism, as protection is now built into " +"the :c:func:`Py_DECREF` macro." msgstr "" msgid "" @@ -12530,9 +15485,9 @@ msgstr "" msgid "" ":gh:`128398`: Improve error message when an object supporting the " -"synchronous (resp. asynchronous) context manager protocol is entered using :" -"keyword:`async with` (resp. :keyword:`with`) instead of :keyword:`with` " -"(resp. :keyword:`async with`). Patch by Bénédikt Tran." +"synchronous (resp. asynchronous) context manager protocol is entered " +"using :keyword:`async with` (resp. :keyword:`with`) instead " +"of :keyword:`with` (resp. :keyword:`async with`). Patch by Bénédikt Tran." msgstr "" msgid "" @@ -12574,9 +15529,9 @@ msgid "" msgstr "" msgid "" -":gh:`130104`: Three-argument :func:`pow` now try calling :meth:`~object." -"__rpow__` if necessary. Previously it was only called in two-argument :func:" -"`!pow` and the binary power operator." +":gh:`130104`: Three-argument :func:`pow` now try " +"calling :meth:`~object.__rpow__` if necessary. Previously it was only called " +"in two-argument :func:`!pow` and the binary power operator." msgstr "" msgid "" @@ -12602,16 +15557,16 @@ msgstr "" msgid "" "This flag is set to true by default on the free-threaded build and false " -"otherwise. If the flag is true, starting a new thread using :class:" -"`threading.Thread` will, by default, use a copy of the :class:`contextvars." -"Context` from the caller of :meth:`threading.Thread.start` rather than using " -"an empty context." +"otherwise. If the flag is true, starting a new thread " +"using :class:`threading.Thread` will, by default, use a copy of " +"the :class:`contextvars.Context` from the caller " +"of :meth:`threading.Thread.start` rather than using an empty context." msgstr "" msgid "" -"Add the :option:`-X thread_inherit_context <-X>` command-line option and :" -"envvar:`PYTHON_THREAD_INHERIT_CONTEXT` environment variable, which set the :" -"data:`~sys.flags.thread_inherit_context` flag." +"Add the :option:`-X thread_inherit_context <-X>` command-line option " +"and :envvar:`PYTHON_THREAD_INHERIT_CONTEXT` environment variable, which set " +"the :data:`~sys.flags.thread_inherit_context` flag." msgstr "" msgid "" @@ -12634,8 +15589,8 @@ msgid "" msgstr "" msgid "" -":gh:`116436`: Improve error message when :exc:`TypeError` occurs during :" -"meth:`dict.update`" +":gh:`116436`: Improve error message when :exc:`TypeError` occurs " +"during :meth:`dict.update`" msgstr "" msgid "" @@ -12669,23 +15624,23 @@ msgid "" msgstr "" msgid "" -":gh:`131747`: On non-Windows platforms, deprecate using :attr:`ctypes." -"Structure._pack_` to use a Windows-compatible layout on non-Windows " -"platforms. The layout should be specified explicitly by setting :attr:" -"`ctypes.Structure._layout_` to ``'ms'``." +":gh:`131747`: On non-Windows platforms, deprecate " +"using :attr:`ctypes.Structure._pack_` to use a Windows-compatible layout on " +"non-Windows platforms. The layout should be specified explicitly by " +"setting :attr:`ctypes.Structure._layout_` to ``'ms'``." msgstr "" msgid "" -":gh:`128972`: For non-free-threaded builds, the memory layout of :c:struct:" -"`PyASCIIObject` is reverted to match Python 3.13. (Note that the structure " -"is not part of stable ABI and so its memory layout is *guaranteed* to remain " -"stable.)" +":gh:`128972`: For non-free-threaded builds, the memory layout " +"of :c:struct:`PyASCIIObject` is reverted to match Python 3.13. (Note that " +"the structure is not part of stable ABI and so its memory layout is " +"*guaranteed* to remain stable.)" msgstr "" msgid "" -":gh:`133079`: The undocumented APIs :c:macro:`!Py_C_RECURSION_LIMIT` and :c:" -"member:`!PyThreadState.c_recursion_remaining`, added in 3.13, are removed " -"without a deprecation period." +":gh:`133079`: The undocumented APIs :c:macro:`!Py_C_RECURSION_LIMIT` " +"and :c:member:`!PyThreadState.c_recursion_remaining`, added in 3.13, are " +"removed without a deprecation period." msgstr "" msgid "" @@ -12720,10 +15675,10 @@ msgstr "" msgid "" ":gh:`50333`: Non-tuple sequences are deprecated as argument for the " -"``(items)`` format unit in :c:func:`PyArg_ParseTuple` and other :ref:" -"`argument parsing ` functions if *items* contains format units " -"which store a :ref:`borrowed buffer ` or a :term:" -"`borrowed reference`." +"``(items)`` format unit in :c:func:`PyArg_ParseTuple` and " +"other :ref:`argument parsing ` functions if *items* contains " +"format units which store a :ref:`borrowed buffer ` or " +"a :term:`borrowed reference`." msgstr "" msgid "" @@ -12791,8 +15746,8 @@ msgid "" msgstr "" msgid "" -":gh:`131453`: Some :data:`!SND_*` and :data:`!MB_*` constants are added to :" -"mod:`winsound`." +":gh:`131453`: Some :data:`!SND_*` and :data:`!MB_*` constants are added " +"to :mod:`winsound`." msgstr "" msgid "" @@ -12804,8 +15759,8 @@ msgid ":gh:`131025`: Update Windows installer to ship with SQLite 3.49.1." msgstr "" msgid "" -":gh:`132121`: Always escape non-printable Unicode characters in :program:" -"`pygettext`." +":gh:`132121`: Always escape non-printable Unicode characters " +"in :program:`pygettext`." msgstr "" msgid "" @@ -12814,9 +15769,9 @@ msgid "" msgstr "" msgid "" -":gh:`131277`: Allow to unset one or more environment variables at once via :" -"meth:`EnvironmentVarGuard.unset() `. Patch by Bénédikt Tran." +":gh:`131277`: Allow to unset one or more environment variables at once " +"via :meth:`EnvironmentVarGuard.unset() " +"`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -12841,8 +15796,8 @@ msgid "" msgstr "" msgid "" -":gh:`132174`: Fix function name in error message of ``_interpreters." -"run_string``." +":gh:`132174`: Fix function name in error message of " +"``_interpreters.run_string``." msgstr "" msgid "" @@ -12851,8 +15806,8 @@ msgstr "" msgid "" ":gh:`129204`: Introduce new ``_PYTHON_SUBPROCESS_USE_POSIX_SPAWN`` " -"environment variable knob in :mod:`subprocess` to control the use of :func:" -"`os.posix_spawn`." +"environment variable knob in :mod:`subprocess` to control the use " +"of :func:`os.posix_spawn`." msgstr "" msgid "" @@ -12896,20 +15851,21 @@ msgstr "" msgid "" ":gh:`131938`: :mod:`xml.etree.ElementTree`: update the error message when an " -"element to remove via :meth:`Element.remove ` is not found. Patch by Bénédikt Tran." +"element to remove via :meth:`Element.remove " +"` is not found. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`115942`: Add :meth:`threading.RLock.locked`, :meth:`multiprocessing." -"Lock.locked`, :meth:`multiprocessing.RLock.locked`, and allow :meth:" -"`multiprocessing.managers.SyncManager.Lock` and :meth:`multiprocessing." -"managers.SyncManager.RLock` to proxy ``locked()`` call." +":gh:`115942`: " +"Add :meth:`threading.RLock.locked`, :meth:`multiprocessing.Lock.locked`, :meth:`multiprocessing.RLock.locked`, " +"and allow :meth:`multiprocessing.managers.SyncManager.Lock` " +"and :meth:`multiprocessing.managers.SyncManager.RLock` to proxy ``locked()`` " +"call." msgstr "" msgid "" -":gh:`131974`: Fix several thread-safety issues in :mod:`ctypes` on the :term:" -"`free threaded ` build." +":gh:`131974`: Fix several thread-safety issues in :mod:`ctypes` on " +"the :term:`free threaded ` build." msgstr "" msgid "" @@ -12946,19 +15902,20 @@ msgid ":gh:`131435`: 10-20% performance improvement of :func:`random.randint`." msgstr "" msgid "" -":gh:`131461`: Fix :exc:`ResourceWarning` when constructing a :class:`gzip." -"GzipFile` in write mode with a broken file object." +":gh:`131461`: Fix :exc:`ResourceWarning` when constructing " +"a :class:`gzip.GzipFile` in write mode with a broken file object." msgstr "" msgid "" -":gh:`125866`: Deprecate the :mod:`!nturl2path` module. Call :func:`urllib." -"request.url2pathname` and :func:`~urllib.request.pathname2url` instead." +":gh:`125866`: Deprecate the :mod:`!nturl2path` module. " +"Call :func:`urllib.request.url2pathname` " +"and :func:`~urllib.request.pathname2url` instead." msgstr "" msgid "" -":gh:`126367`: Fix issue where :func:`urllib.request.url2pathname` raised :" -"exc:`OSError` when given a Windows URI containing a colon character not " -"following a drive letter, such as before an NTFS alternate data stream." +":gh:`126367`: Fix issue where :func:`urllib.request.url2pathname` " +"raised :exc:`OSError` when given a Windows URI containing a colon character " +"not following a drive letter, such as before an NTFS alternate data stream." msgstr "" msgid "" @@ -12981,8 +15938,8 @@ msgid "" msgstr "" msgid "" -":gh:`129843`: Fix incorrect argument passing in :func:`warnings." -"warn_explicit`." +":gh:`129843`: Fix incorrect argument passing " +"in :func:`warnings.warn_explicit`." msgstr "" msgid "" @@ -12996,8 +15953,8 @@ msgid "" msgstr "" msgid "" -":gh:`131236`: Allow to generate multiple UUIDs at once via :option:`python -" -"m uuid --count `." +":gh:`131236`: Allow to generate multiple UUIDs at once via :option:`python " +"-m uuid --count `." msgstr "" msgid "" @@ -13023,21 +15980,21 @@ msgstr "" msgid "" ":gh:`85162`: The :mod:`http.server` module now includes built-in support for " "HTTPS servers exposed by :class:`http.server.HTTPSServer`. This " -"functionality is exposed by the command-line interface (``python -m http." -"server``) through the ``--tls-cert``, ``--tls-key`` and ``--tls-password-" -"file`` options. Patch by Semyon Moroz." +"functionality is exposed by the command-line interface (``python -m " +"http.server``) through the ``--tls-cert``, ``--tls-key`` and ``--tls-" +"password-file`` options. Patch by Semyon Moroz." msgstr "" msgid "" -":gh:`129463`: The implementations of equality and hashing for :class:" -"`annotationlib.ForwardRef` now use all attributes on the object. Two :class:" -"`!ForwardRef` objects are equal only if all attributes are equal." +":gh:`129463`: The implementations of equality and hashing " +"for :class:`annotationlib.ForwardRef` now use all attributes on the object. " +"Two :class:`!ForwardRef` objects are equal only if all attributes are equal." msgstr "" msgid "" ":gh:`128593`: :class:`annotationlib.ForwardRef` objects no longer cache " -"their value when they are successfully evaluated. Successive calls to :meth:" -"`annotationlib.ForwardRef.evaluate` may return different values." +"their value when they are successfully evaluated. Successive calls " +"to :meth:`annotationlib.ForwardRef.evaluate` may return different values." msgstr "" msgid "" @@ -13058,31 +16015,33 @@ msgid "" msgstr "" msgid "" -":gh:`126037`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." -"find `, :meth:`Element.findtext ` and :meth:`Element.findall ` when the tag to find implements an :meth:" -"`~object.__eq__` method mutating the element being queried. Patch by " -"Bénédikt Tran." +":gh:`126037`: :mod:`xml.etree.ElementTree`: Fix a crash " +"in :meth:`Element.find " +"`, :meth:`Element.findtext " +"` and :meth:`Element.findall " +"` when the tag to find implements " +"an :meth:`~object.__eq__` method mutating the element being queried. Patch " +"by Bénédikt Tran." msgstr "" msgid "" ":gh:`127794`: When headers are added to :class:`email.message.Message` " -"objects, either through :meth:`email.message.Message.__setitem__` or :meth:" -"`email.message.Message.add_header`, the field name is now validated " -"according to :rfc:`RFC 5322, Section 2.2 <5322#section-2.2>` and a :exc:" -"`ValueError` is raised if the field name contains any invalid characters." +"objects, either through :meth:`email.message.Message.__setitem__` " +"or :meth:`email.message.Message.add_header`, the field name is now validated " +"according to :rfc:`RFC 5322, Section 2.2 <5322#section-2.2>` and " +"a :exc:`ValueError` is raised if the field name contains any invalid " +"characters." msgstr "" msgid "" -":gh:`123599`: Deprecate :meth:`!pathlib.PurePath.as_uri`; use :meth:`pathlib." -"Path.as_uri` instead." +":gh:`123599`: Deprecate :meth:`!pathlib.PurePath.as_uri`; " +"use :meth:`pathlib.Path.as_uri` instead." msgstr "" msgid "" -":gh:`126033`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." -"remove ` when the element is " -"concurrently mutated. Patch by Bénédikt Tran." +":gh:`126033`: :mod:`xml.etree.ElementTree`: Fix a crash " +"in :meth:`Element.remove ` when the " +"element is concurrently mutated. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -13156,8 +16115,8 @@ msgid "" msgstr "" msgid "" -":gh:`131719`: Fix missing NULL check in ``_PyMem_FreeDelayed`` in :term:" -"`free-threaded ` build." +":gh:`131719`: Fix missing NULL check in ``_PyMem_FreeDelayed`` " +"in :term:`free-threaded ` build." msgstr "" msgid "" @@ -13174,8 +16133,8 @@ msgid ":gh:`130415`: Optimize comparison of two constants in JIT builds" msgstr "" msgid "" -":gh:`129149`: Add fast path for small and medium-size integers in :c:func:" -"`PyLong_FromInt32`, :c:func:`PyLong_FromUInt32`, :c:func:`PyLong_FromInt64` " +":gh:`129149`: Add fast path for small and medium-size integers " +"in :c:func:`PyLong_FromInt32`, :c:func:`PyLong_FromUInt32`, :c:func:`PyLong_FromInt64` " "and :c:func:`PyLong_FromUInt64`. Patch by Chris Eibl." msgstr "" @@ -13201,8 +16160,8 @@ msgid "" msgstr "" msgid "" -":gh:`130775`: Do not crash on negative ``column`` and ``end_column`` in :mod:" -"`ast` locations." +":gh:`130775`: Do not crash on negative ``column`` and ``end_column`` " +"in :mod:`ast` locations." msgstr "" msgid "" @@ -13305,18 +16264,18 @@ msgid "" msgstr "" msgid "" -":gh:`130453`: Make it possible to override default keywords in :program:" -"`pygettext`." +":gh:`130453`: Make it possible to override default keywords " +"in :program:`pygettext`." msgstr "" msgid "" -":gh:`85012`: Correctly reset ``msgctxt`` when compiling messages in :program:" -"`msgfmt`." +":gh:`85012`: Correctly reset ``msgctxt`` when compiling messages " +"in :program:`msgfmt`." msgstr "" msgid "" -":gh:`130453`: Extend support for specifying custom keywords in :program:" -"`pygettext`." +":gh:`130453`: Extend support for specifying custom keywords " +"in :program:`pygettext`." msgstr "" msgid "" @@ -13334,8 +16293,8 @@ msgid "" msgstr "" msgid "" -":gh:`129911`: Fix the keyword entry in the help output of :program:" -"`pygettext`." +":gh:`129911`: Fix the keyword entry in the help output " +"of :program:`pygettext`." msgstr "" msgid "" @@ -13362,10 +16321,10 @@ msgid ":gh:`126332`: Add unit tests for pyrepl." msgstr "" msgid "" -":gh:`127371`: Avoid unbounded buffering for :meth:`!tempfile." -"SpooledTemporaryFile.writelines`. Previously, disk spillover was only " -"checked after the lines iterator had been exhausted. This is now done after " -"each line is written." +":gh:`127371`: Avoid unbounded buffering for :meth:`!" +"tempfile.SpooledTemporaryFile.writelines`. Previously, disk spillover was " +"only checked after the lines iterator had been exhausted. This is now done " +"after each line is written." msgstr "" msgid "" @@ -13374,8 +16333,8 @@ msgid "" msgstr "" msgid "" -":gh:`131196`: Improve performance of :attr:`uuid.UUID.hex` and :meth:`uuid." -"UUID.__str__ `." +":gh:`131196`: Improve performance of :attr:`uuid.UUID.hex` " +"and :meth:`uuid.UUID.__str__ `." msgstr "" msgid "" @@ -13416,10 +16375,10 @@ msgid "" msgstr "" msgid "" -":gh:`130959`: Fix pure-Python implementation of :func:`datetime.time." -"fromisoformat` to reject times with spaces in fractional part (for example, " -"``12:34:56.400 +02:00``), matching the C implementation. Patch by Michał " -"Gorny." +":gh:`130959`: Fix pure-Python implementation " +"of :func:`datetime.time.fromisoformat` to reject times with spaces in " +"fractional part (for example, ``12:34:56.400 +02:00``), matching the C " +"implementation. Patch by Michał Gorny." msgstr "" msgid "" @@ -13438,8 +16397,8 @@ msgid "" msgstr "" msgid "" -":gh:`130660`: ``sys.ps1`` and ``sys.ps2`` are now restored after :func:`code." -"interact` call." +":gh:`130660`: ``sys.ps1`` and ``sys.ps2`` are now restored " +"after :func:`code.interact` call." msgstr "" msgid "" @@ -13450,9 +16409,9 @@ msgstr "" msgid "" ":gh:`130461`: Remove ``.. index::`` directives from the :mod:`uuid` module " "documentation. These directives previously created entries in the general " -"index for :func:`~uuid.getnode` as well as the :func:`~uuid.uuid1`, :func:" -"`~uuid.uuid3`, :func:`~uuid.uuid4`, :func:`~uuid.uuid5`, and :func:`~uuid." -"uuid8` constructor functions." +"index for :func:`~uuid.getnode` as well as " +"the :func:`~uuid.uuid1`, :func:`~uuid.uuid3`, :func:`~uuid.uuid4`, :func:`~uuid.uuid5`, " +"and :func:`~uuid.uuid8` constructor functions." msgstr "" msgid "" @@ -13462,9 +16421,9 @@ msgid "" msgstr "" msgid "" -":gh:`82987`: Inline breakpoints like :func:`breakpoint` or :func:`pdb." -"set_trace` will always stop the program at calling frame, ignoring the " -"``skip`` pattern (if any)." +":gh:`82987`: Inline breakpoints like :func:`breakpoint` " +"or :func:`pdb.set_trace` will always stop the program at calling frame, " +"ignoring the ``skip`` pattern (if any)." msgstr "" msgid "" @@ -13474,8 +16433,8 @@ msgid "" msgstr "" msgid "" -":gh:`125413`: Ensure the path returned from :meth:`pathlib.Path.copy` or :" -"meth:`~pathlib.Path.move` has fresh :attr:`~pathlib.Path.info`." +":gh:`125413`: Ensure the path returned from :meth:`pathlib.Path.copy` " +"or :meth:`~pathlib.Path.move` has fresh :attr:`~pathlib.Path.info`." msgstr "" msgid "" @@ -13498,9 +16457,9 @@ msgid "" msgstr "" msgid "" -":gh:`124703`: Executing ``quit`` command in :mod:`pdb` will raise :exc:`bdb." -"BdbQuit` when :mod:`pdb` is started from an interactive console using :func:" -"`breakpoint` or :func:`pdb.set_trace`." +":gh:`124703`: Executing ``quit`` command in :mod:`pdb` will " +"raise :exc:`bdb.BdbQuit` when :mod:`pdb` is started from an interactive " +"console using :func:`breakpoint` or :func:`pdb.set_trace`." msgstr "" msgid "" @@ -13536,11 +16495,12 @@ msgid "" msgstr "" msgid "" -":gh:`128520`: Apply type conversion consistently in :class:`pathlib." -"PurePath` and :class:`~pathlib.Path` methods can accept a path object as an " -"argument, such as :meth:`~pathlib.PurePath.match` and :meth:`~pathlib.Path." -"rename`. The argument is now converted to path object if it lacks a :meth:" -"`~pathlib.PurePath.with_segments` attribute, and not otherwise." +":gh:`128520`: Apply type conversion consistently " +"in :class:`pathlib.PurePath` and :class:`~pathlib.Path` methods can accept a " +"path object as an argument, such as :meth:`~pathlib.PurePath.match` " +"and :meth:`~pathlib.Path.rename`. The argument is now converted to path " +"object if it lacks a :meth:`~pathlib.PurePath.with_segments` attribute, and " +"not otherwise." msgstr "" msgid "" @@ -13551,9 +16511,9 @@ msgid "" msgstr "" msgid "" -":gh:`130164`: Fixed failure to raise :exc:`TypeError` in :meth:`inspect." -"Signature.bind` for positional-only arguments provided by keyword when a " -"variadic keyword argument (e.g. ``**kwargs``) is present." +":gh:`130164`: Fixed failure to raise :exc:`TypeError` " +"in :meth:`inspect.Signature.bind` for positional-only arguments provided by " +"keyword when a variadic keyword argument (e.g. ``**kwargs``) is present." msgstr "" msgid "" @@ -13574,20 +16534,20 @@ msgstr "" msgid "" ":gh:`127260`: Forbid the use of colon (\":\") as a fractional component " "separator and other improvements to the consistency of error raising between " -"the C and Python implementations of :meth:`datetime.time.fromisoformat` and :" -"meth:`datetime.datetime.fromisoformat`. Patch by Semyon Moroz." +"the C and Python implementations of :meth:`datetime.time.fromisoformat` " +"and :meth:`datetime.datetime.fromisoformat`. Patch by Semyon Moroz." msgstr "" msgid "" ":gh:`85795`: Using :func:`super` and ``__class__`` :term:`closure variable` " "in user-defined methods of :class:`typing.NamedTuple` subclasses is now " -"explicitly prohibited at runtime. Contributed by Bartosz Sławecki in :gh:" -"`130082`." +"explicitly prohibited at runtime. Contributed by Bartosz Sławecki " +"in :gh:`130082`." msgstr "" msgid "" -":gh:`118761`: Improve import time of :mod:`cmd` by lazy importing :mod:" -"`inspect` and removing :mod:`string`. Patch by Semyon Moroz." +":gh:`118761`: Improve import time of :mod:`cmd` by lazy " +"importing :mod:`inspect` and removing :mod:`string`. Patch by Semyon Moroz." msgstr "" msgid "" @@ -13603,26 +16563,26 @@ msgid "" msgstr "" msgid "" -":gh:`129948`: Add support for shared :class:`set` to :class:`multiprocessing." -"managers.SyncManager` via :meth:`SyncManager.set() `." +":gh:`129948`: Add support for shared :class:`set` " +"to :class:`multiprocessing.managers.SyncManager` " +"via :meth:`SyncManager.set() `." msgstr "" msgid "" ":gh:`129965`: Update MIME types for ``.avi`` and ``.wav``. Add MIME types " -"for ``.docx``, ``.pptx``, ``.xlsx``, ``.epub``, ``.flac``, ``.m4a``, ``." -"odg``, ``.odp``, ``.ods``, ``.odt``, ``.oga``, ``.ogg``, ``.ogx`` and ``." -"weba``. Patch by Hugo van Kemenade." +"for ``.docx``, ``.pptx``, ``.xlsx``, ``.epub``, ``.flac``, ``.m4a``, " +"``.odg``, ``.odp``, ``.ods``, ``.odt``, ``.oga``, ``.ogg``, ``.ogx`` and " +"``.weba``. Patch by Hugo van Kemenade." msgstr "" msgid "" -":gh:`129889`: Support context manager protocol by :class:`contextvars." -"Token`. Patch by Andrew Svetlov." +":gh:`129889`: Support context manager protocol " +"by :class:`contextvars.Token`. Patch by Andrew Svetlov." msgstr "" msgid "" -":gh:`97850`: Update the deprecation warning of ``importlib.abc.Loader." -"load_module``." +":gh:`97850`: Update the deprecation warning of " +"``importlib.abc.Loader.load_module``." msgstr "" msgid "" @@ -13635,8 +16595,8 @@ msgid "" msgstr "" msgid "" -":gh:`129569`: Fix :func:`unicodedata.normalize` to always return a built-in :" -"class:`str` object when given an input of a :class:`str` subclass, " +":gh:`129569`: Fix :func:`unicodedata.normalize` to always return a built-" +"in :class:`str` object when given an input of a :class:`str` subclass, " "regardless of whether the string is already normalized." msgstr "" @@ -13653,8 +16613,8 @@ msgid "" msgstr "" msgid "" -":gh:`129288`: Add optional ``l2_cid`` and ``l2_bdaddr_type`` fields to :mod:" -"`socket` ``BTPROTO_L2CAP`` sockaddr tuple." +":gh:`129288`: Add optional ``l2_cid`` and ``l2_bdaddr_type`` fields " +"to :mod:`socket` ``BTPROTO_L2CAP`` sockaddr tuple." msgstr "" msgid "" @@ -13663,35 +16623,37 @@ msgid "" msgstr "" msgid "" -":gh:`128647`: Eagerly write to buffers passed to :class:`gzip.GzipFile`'s :" -"meth:`~io.BufferedIOBase.readinto` and :meth:`~io.BufferedIOBase.readinto1` " -"implementations, avoiding unnecessary allocations. Patch by Chris Markiewicz." +":gh:`128647`: Eagerly write to buffers passed " +"to :class:`gzip.GzipFile`'s :meth:`~io.BufferedIOBase.readinto` " +"and :meth:`~io.BufferedIOBase.readinto1` implementations, avoiding " +"unnecessary allocations. Patch by Chris Markiewicz." msgstr "" msgid "" ":gh:`128184`: Improve display of :class:`annotationlib.ForwardRef` object " -"within :class:`inspect.Signature` representations. This also fixes a :exc:" -"`NameError` that was raised when using :func:`dataclasses.dataclass` on " -"classes with unresolvable forward references." +"within :class:`inspect.Signature` representations. This also fixes " +"a :exc:`NameError` that was raised when using :func:`dataclasses.dataclass` " +"on classes with unresolvable forward references." msgstr "" msgid "" -":gh:`128041`: Add :meth:`concurrent.futures.ProcessPoolExecutor." -"terminate_workers` and :meth:`concurrent.futures.ProcessPoolExecutor." -"kill_workers` as ways to terminate or kill all living worker processes in " -"the given pool. (Contributed by Charles Machalow in :gh:`130849`.)" +":gh:`128041`: " +"Add :meth:`concurrent.futures.ProcessPoolExecutor.terminate_workers` " +"and :meth:`concurrent.futures.ProcessPoolExecutor.kill_workers` as ways to " +"terminate or kill all living worker processes in the given pool. " +"(Contributed by Charles Machalow in :gh:`130849`.)" msgstr "" msgid "" ":gh:`127647`: Add protocols :class:`io.Reader` and :class:`io.Writer` as " -"alternatives to :class:`typing.IO`, :class:`typing.TextIO`, and :class:" -"`typing.BinaryIO`." +"alternatives to :class:`typing.IO`, :class:`typing.TextIO`, " +"and :class:`typing.BinaryIO`." msgstr "" msgid "" -":gh:`109798`: Added additional information into error messages in :mod:" -"`datetime`, and made the messages more consistent between the C and Python " -"implementations. Patch by Semyon Moroz." +":gh:`109798`: Added additional information into error messages " +"in :mod:`datetime`, and made the messages more consistent between the C and " +"Python implementations. Patch by Semyon Moroz." msgstr "" msgid "" @@ -13700,10 +16662,11 @@ msgid "" msgstr "" msgid "" -":gh:`74028`: Add the optional ``buffersize`` parameter to :meth:`concurrent." -"futures.Executor.map` to limit the number of submitted tasks whose results " -"have not yet been yielded. If the buffer is full, iteration over the " -"*iterables* pauses until a result is yielded from the buffer." +":gh:`74028`: Add the optional ``buffersize`` parameter " +"to :meth:`concurrent.futures.Executor.map` to limit the number of submitted " +"tasks whose results have not yet been yielded. If the buffer is full, " +"iteration over the *iterables* pauses until a result is yielded from the " +"buffer." msgstr "" msgid "" @@ -13730,15 +16693,15 @@ msgstr "" msgid "" ":gh:`117151`: Increase ``io.DEFAULT_BUFFER_SIZE`` from 8k to 128k and " "adjust :func:`open` on platforms where :meth:`os.fstat` provides a " -"``st_blksize`` field (such as Linux) to use ``max(min(blocksize, 8 MiB), io." -"DEFAULT_BUFFER_SIZE)`` rather than always using the device block size. This " -"should improve I/O performance. Patch by Romain Morotti." +"``st_blksize`` field (such as Linux) to use ``max(min(blocksize, 8 MiB), " +"io.DEFAULT_BUFFER_SIZE)`` rather than always using the device block size. " +"This should improve I/O performance. Patch by Romain Morotti." msgstr "" msgid "" -":gh:`105499`: Make :class:`types.UnionType` an alias for :class:`typing." -"Union`. Both ``int | str`` and ``Union[int, str]`` now create instances of " -"the same type. Patch by Jelle Zijlstra." +":gh:`105499`: Make :class:`types.UnionType` an alias " +"for :class:`typing.Union`. Both ``int | str`` and ``Union[int, str]`` now " +"create instances of the same type. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -13760,8 +16723,9 @@ msgid "" msgstr "" msgid "" -":gh:`46236`: C API: Document :c:func:`PyUnicode_RSplit`, :c:func:" -"`PyUnicode_Partition` and :c:func:`PyUnicode_RPartition`." +":gh:`46236`: C API: " +"Document :c:func:`PyUnicode_RSplit`, :c:func:`PyUnicode_Partition` " +"and :c:func:`PyUnicode_RPartition`." msgstr "" msgid "" @@ -13861,9 +16825,9 @@ msgid "" msgstr "" msgid "" -":gh:`130396`: Use actual stack limits (from :manpage:" -"`pthread_getattr_np(3)`) for linux, and other systems with ``_GNU_SOURCE`` " -"defined, when determining limits for C stack protection." +":gh:`130396`: Use actual stack limits " +"(from :manpage:`pthread_getattr_np(3)`) for linux, and other systems with " +"``_GNU_SOURCE`` defined, when determining limits for C stack protection." msgstr "" msgid "" @@ -13949,8 +16913,8 @@ msgid "" msgstr "" msgid "" -":gh:`129149`: Add fast path for medium-size integers in :c:func:" -"`PyLong_FromSsize_t`. Patch by Chris Eibl." +":gh:`129149`: Add fast path for medium-size integers " +"in :c:func:`PyLong_FromSsize_t`. Patch by Chris Eibl." msgstr "" msgid "" @@ -13989,8 +16953,8 @@ msgid "" msgstr "" msgid "" -":gh:`124445`: Fix specialization of generic aliases that are generic over a :" -"class:`typing.ParamSpec` and have been specialized with a nested type " +":gh:`124445`: Fix specialization of generic aliases that are generic over " +"a :class:`typing.ParamSpec` and have been specialized with a nested type " "variable." msgstr "" @@ -14034,45 +16998,50 @@ msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Finish`: replace " -"``_PyUnicodeWriter_Finish(&writer)`` with :c:func:" -"`PyUnicodeWriter_Finish(writer) `." +"``_PyUnicodeWriter_Finish(&writer)`` " +"with :c:func:`PyUnicodeWriter_Finish(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_Dealloc`: replace " -"``_PyUnicodeWriter_Dealloc(&writer)`` with :c:func:" -"`PyUnicodeWriter_Discard(writer) `." +"``_PyUnicodeWriter_Dealloc(&writer)`` " +"with :c:func:`PyUnicodeWriter_Discard(writer) `." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteChar`: replace " -"``_PyUnicodeWriter_WriteChar(&writer, ch)`` with :c:func:" -"`PyUnicodeWriter_WriteChar(writer, ch) `." +"``_PyUnicodeWriter_WriteChar(&writer, ch)`` " +"with :c:func:`PyUnicodeWriter_WriteChar(writer, ch) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteStr`: replace " -"``_PyUnicodeWriter_WriteStr(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteStr(writer, str) `." +"``_PyUnicodeWriter_WriteStr(&writer, str)`` " +"with :c:func:`PyUnicodeWriter_WriteStr(writer, str) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteSubstring`: replace " -"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` with :c:func:" -"`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " +"``_PyUnicodeWriter_WriteSubstring(&writer, str, start, end)`` " +"with :c:func:`PyUnicodeWriter_WriteSubstring(writer, str, start, end) " "`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteASCIIString`: replace " -"``_PyUnicodeWriter_WriteASCIIString(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." +"``_PyUnicodeWriter_WriteASCIIString(&writer, str, size)`` " +"with :c:func:`PyUnicodeWriter_WriteUTF8(writer, str, size) " +"`." msgstr "" msgid "" ":c:func:`!_PyUnicodeWriter_WriteLatin1String`: replace " -"``_PyUnicodeWriter_WriteLatin1String(&writer, str)`` with :c:func:" -"`PyUnicodeWriter_WriteUTF8(writer, str) `." +"``_PyUnicodeWriter_WriteLatin1String(&writer, str, size)`` by decoding the " +"string with :c:func:`PyUnicode_DecodeLatin1`, writing the result " +"with :c:func:`PyUnicodeWriter_WriteStr`, and releasing the result " +"with :c:func:`Py_DECREF`." msgstr "" msgid ":c:func:`!_PyUnicodeWriter_Prepare`: (no replacement)." @@ -14167,11 +17136,11 @@ msgid "" msgstr "" msgid "" -":gh:`105704`: When using :func:`urllib.parse.urlsplit` and :func:`urllib." -"parse.urlparse` host parsing would not reject domain names containing square " -"brackets (``[`` and ``]``). Square brackets are only valid for IPv6 and " -"IPvFuture hosts according to `RFC 3986 Section 3.2.2 `__." +":gh:`105704`: When using :func:`urllib.parse.urlsplit` " +"and :func:`urllib.parse.urlparse` host parsing would not reject domain names " +"containing square brackets (``[`` and ``]``). Square brackets are only valid " +"for IPv6 and IPvFuture hosts according to `RFC 3986 Section 3.2.2 `__." msgstr "" msgid "" @@ -14200,8 +17169,8 @@ msgid "" msgstr "" msgid "" -":gh:`129939`: Comparison pages with highlighted changes generated by the :" -"class:`difflib.HtmlDiff` class now support dark mode." +":gh:`129939`: Comparison pages with highlighted changes generated by " +"the :class:`difflib.HtmlDiff` class now support dark mode." msgstr "" msgid "" @@ -14255,8 +17224,8 @@ msgid "" msgstr "" msgid "" -":gh:`129403`: Corrected :exc:`ValueError` message for :class:`asyncio." -"Barrier` and :class:`threading.Barrier`." +":gh:`129403`: Corrected :exc:`ValueError` message " +"for :class:`asyncio.Barrier` and :class:`threading.Barrier`." msgstr "" msgid "" @@ -14265,8 +17234,8 @@ msgid "" msgstr "" msgid "" -":gh:`126400`: Add a socket *timeout* keyword argument to :class:`logging." -"handlers.SysLogHandler`." +":gh:`126400`: Add a socket *timeout* keyword argument " +"to :class:`logging.handlers.SysLogHandler`." msgstr "" msgid "" @@ -14290,8 +17259,8 @@ msgid "" msgstr "" msgid "" -":gh:`129195`: Support reporting call graph information from :func:`!asyncio." -"staggered.staggered_race`." +":gh:`129195`: Support reporting call graph information from :func:`!" +"asyncio.staggered.staggered_race`." msgstr "" msgid "" @@ -14310,8 +17279,8 @@ msgid "" msgstr "" msgid "" -":gh:`92897`: Scheduled the deprecation of the ``check_home`` argument of :" -"func:`sysconfig.is_python_build` to Python 3.15." +":gh:`92897`: Scheduled the deprecation of the ``check_home`` argument " +"of :func:`sysconfig.is_python_build` to Python 3.15." msgstr "" msgid "" @@ -14320,8 +17289,8 @@ msgid "" msgstr "" msgid "" -":gh:`128550`: Removed an incorrect optimization relating to eager tasks in :" -"class:`asyncio.TaskGroup` that resulted in cancellations being missed." +":gh:`128550`: Removed an incorrect optimization relating to eager tasks " +"in :class:`asyncio.TaskGroup` that resulted in cancellations being missed." msgstr "" msgid "" @@ -14335,13 +17304,13 @@ msgid "" msgstr "" msgid "" -":gh:`128978`: Fix a :exc:`NameError` in :func:`!sysconfig." -"expand_makefile_vars`. Patch by Bénédikt Tran." +":gh:`128978`: Fix a :exc:`NameError` in :func:`!" +"sysconfig.expand_makefile_vars`. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`128961`: Fix a crash when setting state on an exhausted :class:`array." -"array` iterator." +":gh:`128961`: Fix a crash when setting state on an " +"exhausted :class:`array.array` iterator." msgstr "" msgid "" @@ -14362,9 +17331,9 @@ msgid "" msgstr "" msgid "" -":gh:`128679`: :mod:`tracemalloc`: Fix race conditions when :func:" -"`tracemalloc.stop` is called by a thread, while other threads are tracing " -"memory allocations. Patch by Victor Stinner." +":gh:`128679`: :mod:`tracemalloc`: Fix race conditions " +"when :func:`tracemalloc.stop` is called by a thread, while other threads are " +"tracing memory allocations. Patch by Victor Stinner." msgstr "" msgid ":gh:`128891`: Add specialized opcodes to ``opcode.opname``." @@ -14382,8 +17351,8 @@ msgid "" msgstr "" msgid "" -":gh:`128657`: Fix possible extra reference when using objects returned by :" -"func:`hashlib.sha256` under :term:`free threading`." +":gh:`128657`: Fix possible extra reference when using objects returned " +"by :func:`hashlib.sha256` under :term:`free threading`." msgstr "" msgid "" @@ -14393,10 +17362,10 @@ msgid "" msgstr "" msgid "" -":gh:`128308`: Support the *name* keyword argument for eager tasks in :func:" -"`asyncio.loop.create_task`, :func:`asyncio.create_task` and :func:`asyncio." -"TaskGroup.create_task`, by passing on all *kwargs* to the task factory set " -"by :func:`asyncio.loop.set_task_factory`." +":gh:`128308`: Support the *name* keyword argument for eager tasks " +"in :func:`asyncio.loop.create_task`, :func:`asyncio.create_task` " +"and :func:`asyncio.TaskGroup.create_task`, by passing on all *kwargs* to the " +"task factory set by :func:`asyncio.loop.set_task_factory`." msgstr "" msgid "" @@ -14453,8 +17422,9 @@ msgid "" msgstr "" msgid "" -":gh:`112064`: Fix incorrect handling of negative read sizes in :meth:" -"`HTTPResponse.read `. Patch by Yury Manushkin." +":gh:`112064`: Fix incorrect handling of negative read sizes " +"in :meth:`HTTPResponse.read `. Patch by Yury " +"Manushkin." msgstr "" msgid ":gh:`58956`: Fixed a frame reference leak in :mod:`bdb`." @@ -14470,16 +17440,13 @@ msgid "" msgstr "" msgid "" -":gh:`115514`: Fix exceptions and incomplete writes after :class:`!asyncio." -"_SelectorTransport` is closed before writes are completed." +":gh:`115514`: Fix exceptions and incomplete writes after :class:`!" +"asyncio._SelectorTransport` is closed before writes are completed." msgstr "" msgid "" -":gh:`121604`: Add missing Deprecation warnings for :const:`importlib." -"machinery.DEBUG_BYTECODE_SUFFIXES`, :const:`importlib.machinery." -"OPTIMIZED_BYTECODE_SUFFIXES`, :class:`importlib.machinery." -"WindowsRegistryFinder`, :class:`importlib.abc.ResourceLoader`, :meth:" -"`importlib.abc.SourceLoader.path_mtime`." +":gh:`121604`: Add missing Deprecation warnings " +"for :const:`importlib.machinery.DEBUG_BYTECODE_SUFFIXES`, :const:`importlib.machinery.OPTIMIZED_BYTECODE_SUFFIXES`, :class:`importlib.machinery.WindowsRegistryFinder`, :class:`importlib.abc.ResourceLoader`, :meth:`importlib.abc.SourceLoader.path_mtime`." msgstr "" msgid "" @@ -14491,20 +17458,20 @@ msgstr "" msgid "" ":gh:`125413`: Add :attr:`pathlib.Path.info` attribute, which stores an " "object implementing the :class:`pathlib.types.PathInfo` protocol (also new). " -"The object supports querying the file type and internally caching :func:`~os." -"stat` results. Path objects generated by :meth:`~pathlib.Path.iterdir` are " -"initialized with file type information gleaned from scanning the parent " -"directory." +"The object supports querying the file type and internally " +"caching :func:`~os.stat` results. Path objects generated " +"by :meth:`~pathlib.Path.iterdir` are initialized with file type information " +"gleaned from scanning the parent directory." msgstr "" msgid "" -":gh:`127712`: Fix handling of the ``secure`` argument of :class:`logging." -"handlers.SMTPHandler`." +":gh:`127712`: Fix handling of the ``secure`` argument " +"of :class:`logging.handlers.SMTPHandler`." msgstr "" msgid "" -":gh:`127096`: Do not recreate unnamed section on every read in :class:" -"`configparser.ConfigParser`. Patch by Andrey Efremov." +":gh:`127096`: Do not recreate unnamed section on every read " +"in :class:`configparser.ConfigParser`. Patch by Andrey Efremov." msgstr "" msgid ":gh:`124369`: Deprecate ``pdb.Pdb.curframe_locals``" @@ -14516,13 +17483,13 @@ msgid "" msgstr "" msgid "" -":gh:`125553`: Fix round-trip invariance for backslash continuations in :func:" -"`tokenize.untokenize`." +":gh:`125553`: Fix round-trip invariance for backslash continuations " +"in :func:`tokenize.untokenize`." msgstr "" msgid "" -":gh:`91048`: Add :func:`asyncio.capture_call_graph` and :func:`asyncio." -"print_call_graph` functions." +":gh:`91048`: Add :func:`asyncio.capture_call_graph` " +"and :func:`asyncio.print_call_graph` functions." msgstr "" msgid "" @@ -14560,17 +17527,17 @@ msgid "" msgstr "" msgid "" -":gh:`81340`: Use :func:`os.copy_file_range` in :func:`shutil.copy`, :func:" -"`shutil.copy2`, and :func:`shutil.copyfile` functions by default. An " -"underlying Linux system call gives filesystems an opportunity to implement " -"the use of copy-on-write (in case of btrfs and XFS) or server-side copy (in " -"the case of NFS.) Patch by Illia Volochii." +":gh:`81340`: Use :func:`os.copy_file_range` " +"in :func:`shutil.copy`, :func:`shutil.copy2`, and :func:`shutil.copyfile` " +"functions by default. An underlying Linux system call gives filesystems an " +"opportunity to implement the use of copy-on-write (in case of btrfs and XFS) " +"or server-side copy (in the case of NFS.) Patch by Illia Volochii." msgstr "" msgid "" -":issue:`27307`: Add attribute and item access support to :class:`string." -"Formatter` in auto-numbering mode, which allows format strings like '{." -"name}' and '{[1]}'." +":issue:`27307`: Add attribute and item access support " +"to :class:`string.Formatter` in auto-numbering mode, which allows format " +"strings like '{.name}' and '{[1]}'." msgstr "" msgid "" @@ -14585,8 +17552,8 @@ msgstr "" msgid "" ":gh:`67206`: Document that :const:`string.printable` is not printable in the " -"POSIX sense. In particular, :meth:`string.printable.isprintable() ` returns :const:`False`. Patch by Bénédikt Tran." +"POSIX sense. In particular, :meth:`string.printable.isprintable() " +"` returns :const:`False`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -14642,9 +17609,9 @@ msgid ":gh:`129231`: Improve memory layout of JIT traces. Patch by Diego Russo" msgstr "" msgid "" -":gh:`129149`: Add fast path for medium-size integers in :c:func:" -"`PyLong_FromUnsignedLong`, :c:func:`PyLong_FromUnsignedLongLong` and :c:func:" -"`PyLong_FromSize_t`." +":gh:`129149`: Add fast path for medium-size integers " +"in :c:func:`PyLong_FromUnsignedLong`, :c:func:`PyLong_FromUnsignedLongLong` " +"and :c:func:`PyLong_FromSize_t`." msgstr "" msgid "" @@ -14724,8 +17691,8 @@ msgid "" msgstr "" msgid "" -":gh:`127953`: The time to handle a ``LINE`` event in sys.monitoring (and sys." -"settrace) is now independent of the number of lines in the code object." +":gh:`127953`: The time to handle a ``LINE`` event in sys.monitoring (and " +"sys.settrace) is now independent of the number of lines in the code object." msgstr "" msgid ":gh:`128330`: Restore terminal control characters on REPL exit." @@ -14739,21 +17706,23 @@ msgid "" msgstr "" msgid "" -":gh:`126004`: Fix handling of :attr:`UnicodeError.start` and :attr:" -"`UnicodeError.end` values in the :func:`codecs.replace_errors` error " -"handler. Patch by Bénédikt Tran." +":gh:`126004`: Fix handling of :attr:`UnicodeError.start` " +"and :attr:`UnicodeError.end` values in the :func:`codecs.replace_errors` " +"error handler. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`126004`: Fix handling of :attr:`UnicodeError.start` and :attr:" -"`UnicodeError.end` values in the :func:`codecs.backslashreplace_errors` " -"error handler. Patch by Bénédikt Tran." +":gh:`126004`: Fix handling of :attr:`UnicodeError.start` " +"and :attr:`UnicodeError.end` values in " +"the :func:`codecs.backslashreplace_errors` error handler. Patch by Bénédikt " +"Tran." msgstr "" msgid "" -":gh:`126004`: Fix handling of :attr:`UnicodeError.start` and :attr:" -"`UnicodeError.end` values in the :func:`codecs.xmlcharrefreplace_errors` " -"error handler. Patch by Bénédikt Tran." +":gh:`126004`: Fix handling of :attr:`UnicodeError.start` " +"and :attr:`UnicodeError.end` values in " +"the :func:`codecs.xmlcharrefreplace_errors` error handler. Patch by Bénédikt " +"Tran." msgstr "" msgid ":gh:`127119`: Slightly optimize the :class:`int` deallocator." @@ -14770,8 +17739,9 @@ msgid "" msgstr "" msgid "" -":gh:`126349`: Add :func:`turtle.fill`, :func:`turtle.poly` and :func:`turtle." -"no_animation` context managers. Patch by Marie Roald and Yngve Mardal Moe." +":gh:`126349`: Add :func:`turtle.fill`, :func:`turtle.poly` " +"and :func:`turtle.no_animation` context managers. Patch by Marie Roald and " +"Yngve Mardal Moe." msgstr "" msgid "" @@ -14781,14 +17751,15 @@ msgid "" msgstr "" msgid "" -":gh:`112713`: Added support for the ``Partitioned`` cookie flag in :mod:" -"`http.cookies`." +":gh:`112713`: Added support for the ``Partitioned`` cookie flag " +"in :mod:`http.cookies`." msgstr "" msgid "" -":gh:`129533`: Update :c:func:`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:" -"func:`PyGC_IsEnabled()` to use atomic operation for thread-safety at free-" -"threading build. Patch by Donghee Na." +":gh:`129533`: " +"Update :c:func:`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()` " +"to use atomic operation for thread-safety at free-threading build. Patch by " +"Donghee Na." msgstr "" msgid "" @@ -14810,9 +17781,9 @@ msgstr "" msgid "" ":gh:`129033`: Remove ``_PyInterpreterState_GetConfigCopy()`` and " -"``_PyInterpreterState_SetConfig()`` private functions. Use instead :c:func:" -"`PyConfig_Get` and :c:func:`PyConfig_Set`, public C API added by :pep:`741` " -"\"Python Configuration C API\". Patch by Victor Stinner." +"``_PyInterpreterState_SetConfig()`` private functions. Use " +"instead :c:func:`PyConfig_Get` and :c:func:`PyConfig_Set`, public C API " +"added by :pep:`741` \"Python Configuration C API\". Patch by Victor Stinner." msgstr "" msgid "" @@ -14822,24 +17793,24 @@ msgid "" msgstr "" msgid "" -":gh:`128844`: Add :c:func:`PyUnstable_TryIncRef` and :c:func:" -"`PyUnstable_EnableTryIncRef` unstable APIs. These are helpers for dealing " -"with unowned references in a thread-safe way, particularly in the free " -"threading build." +":gh:`128844`: Add :c:func:`PyUnstable_TryIncRef` " +"and :c:func:`PyUnstable_EnableTryIncRef` unstable APIs. These are helpers " +"for dealing with unowned references in a thread-safe way, particularly in " +"the free threading build." msgstr "" msgid "" -":gh:`128911`: Add :c:func:`PyImport_ImportModuleAttr` and :c:func:" -"`PyImport_ImportModuleAttrString` helper functions to import a module and " -"get an attribute of the module. Patch by Victor Stinner." +":gh:`128911`: Add :c:func:`PyImport_ImportModuleAttr` " +"and :c:func:`PyImport_ImportModuleAttrString` helper functions to import a " +"module and get an attribute of the module. Patch by Victor Stinner." msgstr "" msgid ":c:func:`!_PyBytes_Join`: use :c:func:`PyBytes_Join`." msgstr "" msgid "" -":c:func:`!_PyDict_GetItemStringWithError`: use :c:func:" -"`PyDict_GetItemStringRef`." +":c:func:`!_PyDict_GetItemStringWithError`: " +"use :c:func:`PyDict_GetItemStringRef`." msgstr "" msgid ":c:func:`!_PyDict_Pop()`: use :c:func:`PyDict_Pop`." @@ -14849,13 +17820,13 @@ msgid ":c:func:`!_PyLong_Sign()`: use :c:func:`PyLong_GetSign`." msgstr "" msgid "" -":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: use :c:func:" -"`PyLongWriter_Create`." +":c:func:`!_PyLong_FromDigits` and :c:func:`!_PyLong_New`: " +"use :c:func:`PyLongWriter_Create`." msgstr "" msgid "" -":c:func:`!_PyThreadState_UncheckedGet`: use :c:func:" -"`PyThreadState_GetUnchecked`." +":c:func:`!_PyThreadState_UncheckedGet`: " +"use :c:func:`PyThreadState_GetUnchecked`." msgstr "" msgid ":c:func:`!_PyUnicode_AsString`: use :c:func:`PyUnicode_AsUTF8`." @@ -14874,8 +17845,9 @@ msgstr "" msgid "" ":gh:`127925`: Convert the :mod:`decimal` module to use :pep:`757` C API " -"(export-import integers), offering some speed-up if the integer part of the :" -"class:`~decimal.Decimal` instance is small. Patch by Sergey B Kirpichev." +"(export-import integers), offering some speed-up if the integer part of " +"the :class:`~decimal.Decimal` instance is small. Patch by Sergey B " +"Kirpichev." msgstr "" msgid "" @@ -14911,17 +17883,14 @@ msgid "" msgstr "" msgid "" -":gh:`128731`: Fix :exc:`ResourceWarning` in :meth:`urllib.robotparser." -"RobotFileParser.read`." +":gh:`128731`: Fix :exc:`ResourceWarning` " +"in :meth:`urllib.robotparser.RobotFileParser.read`." msgstr "" msgid "" -":gh:`71339`: Add new assertion methods for :mod:`unittest`: :meth:`~unittest." -"TestCase.assertHasAttr`, :meth:`~unittest.TestCase.assertNotHasAttr`, :meth:" -"`~unittest.TestCase.assertIsSubclass`, :meth:`~unittest.TestCase." -"assertNotIsSubclass` :meth:`~unittest.TestCase.assertStartsWith`, :meth:" -"`~unittest.TestCase.assertNotStartsWith`, :meth:`~unittest.TestCase." -"assertEndsWith` and :meth:`~unittest.TestCase.assertNotEndsWith`." +":gh:`71339`: Add new assertion methods " +"for :mod:`unittest`: :meth:`~unittest.TestCase.assertHasAttr`, :meth:`~unittest.TestCase.assertNotHasAttr`, :meth:`~unittest.TestCase.assertIsSubclass`, :meth:`~unittest.TestCase.assertNotIsSubclass` :meth:`~unittest.TestCase.assertStartsWith`, :meth:`~unittest.TestCase.assertNotStartsWith`, :meth:`~unittest.TestCase.assertEndsWith` " +"and :meth:`~unittest.TestCase.assertNotEndsWith`." msgstr "" msgid "" @@ -14944,14 +17913,15 @@ msgid ":gh:`128559`: Improved import time of :mod:`asyncio`." msgstr "" msgid "" -":gh:`128552`: Fix cyclic garbage introduced by :meth:`asyncio.loop." -"create_task` and :meth:`asyncio.TaskGroup.create_task` holding a reference " -"to the created task if it is eager." +":gh:`128552`: Fix cyclic garbage introduced " +"by :meth:`asyncio.loop.create_task` " +"and :meth:`asyncio.TaskGroup.create_task` holding a reference to the created " +"task if it is eager." msgstr "" msgid "" -":gh:`128340`: Add internal thread safe handle to be used in :meth:`asyncio." -"loop.call_soon_threadsafe` for thread safe cancellation." +":gh:`128340`: Add internal thread safe handle to be used " +"in :meth:`asyncio.loop.call_soon_threadsafe` for thread safe cancellation." msgstr "" msgid "" @@ -14960,8 +17930,8 @@ msgid "" msgstr "" msgid "" -":gh:`128400`: Only show the current thread in :mod:`faulthandler` on the :" -"term:`free threaded ` build to prevent races." +":gh:`128400`: Only show the current thread in :mod:`faulthandler` on " +"the :term:`free threaded ` build to prevent races." msgstr "" msgid "" @@ -14972,19 +17942,20 @@ msgstr "" msgid "" ":gh:`128388`: Fix ``PyREPL`` on Windows to support more keybindings, like " "the :kbd:`Control-←` and :kbd:`Control-→` word-skipping keybindings and " -"those with meta (i.e. :kbd:`Alt`), e.g. :kbd:`Alt-d` to ``kill-word`` or :" -"kbd:`Alt-Backspace` ``backward-kill-word``." +"those with meta (i.e. :kbd:`Alt`), e.g. :kbd:`Alt-d` to ``kill-word`` " +"or :kbd:`Alt-Backspace` ``backward-kill-word``." msgstr "" msgid "" -":gh:`88834`: Unify the instance check for :class:`typing.Union` and :class:" -"`types.UnionType`: :class:`!Union` now uses the instance checks against its " -"parameters instead of the subclass checks." +":gh:`88834`: Unify the instance check for :class:`typing.Union` " +"and :class:`types.UnionType`: :class:`!Union` now uses the instance checks " +"against its parameters instead of the subclass checks." msgstr "" msgid "" -":gh:`128302`: Fix :meth:`!xml.dom.xmlbuilder.DOMEntityResolver." -"resolveEntity`, which was broken by the Python 3.0 transition." +":gh:`128302`: Fix :meth:`!" +"xml.dom.xmlbuilder.DOMEntityResolver.resolveEntity`, which was broken by the " +"Python 3.0 transition." msgstr "" msgid "" @@ -15024,9 +17995,9 @@ msgid "" msgstr "" msgid "" -":gh:`41872`: Fix quick extraction of module docstrings from a file in :mod:" -"`pydoc`. It now supports docstrings with single quotes, escape sequences, " -"raw string literals, and other Python syntax." +":gh:`41872`: Fix quick extraction of module docstrings from a file " +"in :mod:`pydoc`. It now supports docstrings with single quotes, escape " +"sequences, raw string literals, and other Python syntax." msgstr "" msgid "" @@ -15036,9 +18007,10 @@ msgid "" msgstr "" msgid "" -":gh:`126742`: Fix support of localized error messages reported by :manpage:" -"`dlerror(3)` and :manpage:`gdbm_strerror ` in :mod:`ctypes` and :" -"mod:`dbm.gnu` functions respectively. Patch by Bénédikt Tran." +":gh:`126742`: Fix support of localized error messages reported " +"by :manpage:`dlerror(3)` and :manpage:`gdbm_strerror ` " +"in :mod:`ctypes` and :mod:`dbm.gnu` functions respectively. Patch by " +"Bénédikt Tran." msgstr "" msgid "" @@ -15054,8 +18026,8 @@ msgid "" msgstr "" msgid "" -":gh:`127688`: Add the :data:`~os.SCHED_DEADLINE` and :data:`~os." -"SCHED_NORMAL` constants to the :mod:`os` module." +":gh:`127688`: Add the :data:`~os.SCHED_DEADLINE` " +"and :data:`~os.SCHED_NORMAL` constants to the :mod:`os` module." msgstr "" msgid "" @@ -15079,14 +18051,15 @@ msgid "" msgstr "" msgid "" -":gh:`127529`: Correct behavior of :func:`!asyncio.selector_events." -"BaseSelectorEventLoop._accept_connection` in handling :exc:" -"`ConnectionAbortedError` in a loop. This improves performance on OpenBSD." +":gh:`127529`: Correct behavior of :func:`!" +"asyncio.selector_events.BaseSelectorEventLoop._accept_connection` in " +"handling :exc:`ConnectionAbortedError` in a loop. This improves performance " +"on OpenBSD." msgstr "" msgid "" -":gh:`127360`: When a descriptive error message cannot be provided for an :" -"exc:`ssl.SSLError`, the \"unknown error\" message now shows the internal " +":gh:`127360`: When a descriptive error message cannot be provided for " +"an :exc:`ssl.SSLError`, the \"unknown error\" message now shows the internal " "error code (as retrieved by ``ERR_get_error`` and similar OpenSSL functions)." msgstr "" @@ -15103,14 +18076,15 @@ msgid "" msgstr "" msgid "" -":gh:`126639`: :class:`tempfile.NamedTemporaryFile` will now issue a :exc:" -"`ResourceWarning` when it is finalized by the garbage collector without " -"being explicitly closed." +":gh:`126639`: :class:`tempfile.NamedTemporaryFile` will now issue " +"a :exc:`ResourceWarning` when it is finalized by the garbage collector " +"without being explicitly closed." msgstr "" msgid "" -":gh:`126624`: Expose error code :data:`~xml.parsers.expat.errors." -"XML_ERROR_NOT_STARTED` of Expat >=2.6.4 in :mod:`xml.parsers.expat.errors`." +":gh:`126624`: Expose error " +"code :data:`~xml.parsers.expat.errors.XML_ERROR_NOT_STARTED` of Expat " +">=2.6.4 in :mod:`xml.parsers.expat.errors`." msgstr "" msgid "" @@ -15139,18 +18113,18 @@ msgid "" msgstr "" msgid "" -":gh:`121676`: Deprecate calling the Python implementation of :meth:" -"`functools.reduce` with a ``function`` or ``sequence`` as a :term:`keyword " -"argument`. This will be forbidden in Python 3.16 in order to match the C " -"implementation." +":gh:`121676`: Deprecate calling the Python implementation " +"of :meth:`functools.reduce` with a ``function`` or ``sequence`` as " +"a :term:`keyword argument`. This will be forbidden in Python 3.16 in order " +"to match the C implementation." msgstr "" msgid "" -":gh:`112015`: :func:`ctypes.memoryview_at` now exists to create a :class:" -"`memoryview` object that refers to the supplied pointer and length. This " -"works like :func:`ctypes.string_at` except it avoids a buffer copy, and is " -"typically useful when implementing pure Python callback functions that are " -"passed dynamically-sized buffers." +":gh:`112015`: :func:`ctypes.memoryview_at` now exists to create " +"a :class:`memoryview` object that refers to the supplied pointer and length. " +"This works like :func:`ctypes.string_at` except it avoids a buffer copy, and " +"is typically useful when implementing pure Python callback functions that " +"are passed dynamically-sized buffers." msgstr "" msgid "" @@ -15183,9 +18157,9 @@ msgid "" msgstr "" msgid "" -":gh:`128192`: Upgrade HTTP digest authentication algorithm for :mod:`urllib." -"request` by supporting SHA-256 digest authentication as specified in :rfc:" -"`7616`." +":gh:`128192`: Upgrade HTTP digest authentication algorithm " +"for :mod:`urllib.request` by supporting SHA-256 digest authentication as " +"specified in :rfc:`7616`." msgstr "" msgid ":gh:`126868`: Increase usage of freelist for :class:`int` allocation." @@ -15208,11 +18182,12 @@ msgstr "" msgid "" ":gh:`128079`: Fix a bug where :keyword:`except* ` does not " -"properly check the return value of an :exc:`ExceptionGroup`'s :meth:" -"`~BaseExceptionGroup.split` function, leading to a crash in some cases. Now " -"when :meth:`~BaseExceptionGroup.split` returns an invalid object, :keyword:" -"`except* ` raises a :exc:`TypeError` with the original raised :" -"exc:`ExceptionGroup` object chained to it." +"properly check the return value of " +"an :exc:`ExceptionGroup`'s :meth:`~BaseExceptionGroup.split` function, " +"leading to a crash in some cases. Now when :meth:`~BaseExceptionGroup.split` " +"returns an invalid object, :keyword:`except* ` raises " +"a :exc:`TypeError` with the original raised :exc:`ExceptionGroup` object " +"chained to it." msgstr "" msgid "" @@ -15242,10 +18217,10 @@ msgstr "" msgid "" ":gh:`127970`: We now use the location of the ``libpython`` runtime library " "used in the current process to determine :data:`sys.base_prefix` on all " -"platforms implementing the `dladdr `_ function defined by the UNIX " -"standard — this includes Linux, Android, macOS, iOS, FreeBSD, etc. This was " -"already the case on Windows and macOS Framework builds." +"platforms implementing the `dladdr `_ function defined by the UNIX standard — " +"this includes Linux, Android, macOS, iOS, FreeBSD, etc. This was already the " +"case on Windows and macOS Framework builds." msgstr "" msgid "" @@ -15271,13 +18246,13 @@ msgid "" msgstr "" msgid "" -":gh:`128400`: :c:func:`Py_FatalError` no longer shows all threads on the :" -"term:`free threaded ` build to prevent crashes." +":gh:`128400`: :c:func:`Py_FatalError` no longer shows all threads on " +"the :term:`free threaded ` build to prevent crashes." msgstr "" msgid "" -":gh:`128629`: Add macros :c:func:`Py_PACK_VERSION` and :c:func:" -"`Py_PACK_FULL_VERSION` for bit-packing Python version numbers." +":gh:`128629`: Add macros :c:func:`Py_PACK_VERSION` " +"and :c:func:`Py_PACK_FULL_VERSION` for bit-packing Python version numbers." msgstr "" msgid "" @@ -15304,8 +18279,8 @@ msgid "" msgstr "" msgid "" -":gh:`115765`: GNU Autoconf 2.72 is now required to generate :file:" -"`configure`. Patch by Erlend Aasland." +":gh:`115765`: GNU Autoconf 2.72 is now required to " +"generate :file:`configure`. Patch by Erlend Aasland." msgstr "" msgid "" @@ -15319,10 +18294,10 @@ msgid "" msgstr "" msgid "" -":gh:`128321`: Set ``LIBS`` instead of ``LDFLAGS`` when checking if :mod:" -"`sqlite3` library functions are available. This fixes the ordering of linked " -"libraries during checks, which was incorrect when using a statically linked " -"``libsqlite3``." +":gh:`128321`: Set ``LIBS`` instead of ``LDFLAGS`` when checking " +"if :mod:`sqlite3` library functions are available. This fixes the ordering " +"of linked libraries during checks, which was incorrect when using a " +"statically linked ``libsqlite3``." msgstr "" msgid "" @@ -15360,8 +18335,8 @@ msgid "" msgstr "" msgid "" -":gh:`126700`: Add support for multi-argument :mod:`gettext` functions in :" -"program:`pygettext.py`." +":gh:`126700`: Add support for multi-argument :mod:`gettext` functions " +"in :program:`pygettext.py`." msgstr "" msgid "" @@ -15389,15 +18364,15 @@ msgid "" msgstr "" msgid "" -":gh:`127655`: Fixed the :class:`!asyncio.selector_events." -"_SelectorSocketTransport` transport not pausing writes for the protocol when " -"the buffer reaches the high water mark when using :meth:`asyncio." -"WriteTransport.writelines`." +":gh:`127655`: Fixed the :class:`!" +"asyncio.selector_events._SelectorSocketTransport` transport not pausing " +"writes for the protocol when the buffer reaches the high water mark when " +"using :meth:`asyncio.WriteTransport.writelines`." msgstr "" msgid "" -":gh:`126907`: Fix crash when using :mod:`atexit` concurrently on the :term:" -"`free-threaded ` build." +":gh:`126907`: Fix crash when using :mod:`atexit` concurrently on " +"the :term:`free-threaded ` build." msgstr "" msgid "" @@ -15411,11 +18386,12 @@ msgid "" msgstr "" msgid "" -":gh:`126789`: Fixed :func:`sysconfig.get_config_vars`, :func:`sysconfig." -"get_paths`, and siblings, returning outdated cached data if the value of :" -"data:`sys.prefix` or :data:`sys.exec_prefix` changes. Overwriting :data:`sys." -"prefix` or :data:`sys.exec_prefix` still is discouraged, as that might break " -"other parts of the code." +":gh:`126789`: " +"Fixed :func:`sysconfig.get_config_vars`, :func:`sysconfig.get_paths`, and " +"siblings, returning outdated cached data if the value of :data:`sys.prefix` " +"or :data:`sys.exec_prefix` changes. Overwriting :data:`sys.prefix` " +"or :data:`sys.exec_prefix` still is discouraged, as that might break other " +"parts of the code." msgstr "" msgid "" @@ -15501,9 +18477,9 @@ msgstr "" msgid "" ":gh:`127178`: A ``_sysconfig_vars_(...).json`` file is now shipped in the " -"standard library directory. It contains the output of :func:`sysconfig." -"get_config_vars` on the default environment encoded as JSON data. This is an " -"implementation detail, and may change at any time." +"standard library directory. It contains the output " +"of :func:`sysconfig.get_config_vars` on the default environment encoded as " +"JSON data. This is an implementation detail, and may change at any time." msgstr "" msgid "" @@ -15517,8 +18493,8 @@ msgid "" msgstr "" msgid "" -":gh:`127182`: Fix :meth:`!io.StringIO.__setstate__` crash, when :const:" -"`None` was passed as the first value." +":gh:`127182`: Fix :meth:`!io.StringIO.__setstate__` crash, " +"when :const:`None` was passed as the first value." msgstr "" msgid "" @@ -15552,8 +18528,9 @@ msgid "" msgstr "" msgid "" -":gh:`125866`: :func:`urllib.request.pathname2url` and :func:`~urllib.request." -"url2pathname` no longer convert Windows drive letters to uppercase." +":gh:`125866`: :func:`urllib.request.pathname2url` " +"and :func:`~urllib.request.url2pathname` no longer convert Windows drive " +"letters to uppercase." msgstr "" msgid "" @@ -15572,8 +18549,8 @@ msgid "" msgstr "" msgid "" -":gh:`127090`: Fix value of :attr:`urllib.response.addinfourl.url` for ``file:" -"`` URLs that express relative paths and absolute Windows paths. The " +":gh:`127090`: Fix value of :attr:`urllib.response.addinfourl.url` for " +"``file:`` URLs that express relative paths and absolute Windows paths. The " "canonical URL generated by :func:`urllib.request.pathname2url` is now used." msgstr "" @@ -15621,15 +18598,16 @@ msgid "" msgstr "" msgid "" -":gh:`126947`: Raise :exc:`TypeError` in :meth:`!_pydatetime.timedelta." -"__new__` if the passed arguments are not :class:`int` or :class:`float`, so " -"that the Python implementation is in line with the C implementation." +":gh:`126947`: Raise :exc:`TypeError` in :meth:`!" +"_pydatetime.timedelta.__new__` if the passed arguments are not :class:`int` " +"or :class:`float`, so that the Python implementation is in line with the C " +"implementation." msgstr "" msgid "" ":gh:`126946`: Improve the :exc:`~getopt.GetoptError` error message when a " -"long option prefix matches multiple accepted options in :func:`getopt." -"getopt` and :func:`getopt.gnu_getopt`." +"long option prefix matches multiple accepted options " +"in :func:`getopt.getopt` and :func:`getopt.gnu_getopt`." msgstr "" msgid "" @@ -15638,9 +18616,10 @@ msgid "" msgstr "" msgid "" -":gh:`85168`: Fix issue where :func:`urllib.request.url2pathname` and :func:" -"`~urllib.request.pathname2url` always used UTF-8 when quoting and unquoting " -"file URIs. They now use the :term:`filesystem encoding and error handler`." +":gh:`85168`: Fix issue where :func:`urllib.request.url2pathname` " +"and :func:`~urllib.request.pathname2url` always used UTF-8 when quoting and " +"unquoting file URIs. They now use the :term:`filesystem encoding and error " +"handler`." msgstr "" msgid "" @@ -15654,9 +18633,9 @@ msgid "" msgstr "" msgid "" -":gh:`126601`: Fix issue where :func:`urllib.request.pathname2url` raised :" -"exc:`OSError` when given a Windows path containing a colon character not " -"following a drive letter, such as before an NTFS alternate data stream." +":gh:`126601`: Fix issue where :func:`urllib.request.pathname2url` " +"raised :exc:`OSError` when given a Windows path containing a colon character " +"not following a drive letter, such as before an NTFS alternate data stream." msgstr "" msgid "" @@ -15669,8 +18648,9 @@ msgid ":gh:`85046`: Add :data:`~errno.EHWPOISON` error code to :mod:`errno`." msgstr "" msgid "" -":gh:`118201`: Fixed intermittent failures of :any:`os.confstr`, :any:`os." -"pathconf` and :any:`os.sysconf` on iOS and Android." +":gh:`118201`: Fixed intermittent failures " +"of :any:`os.confstr`, :any:`os.pathconf` and :any:`os.sysconf` on iOS and " +"Android." msgstr "" msgid "" @@ -15685,19 +18665,19 @@ msgid "" msgstr "" msgid "" -":gh:`123401`: The :mod:`http.cookies` module now supports parsing obsolete :" -"rfc:`850` date formats, in accordance with :rfc:`9110` requirements. Patch " -"by Nano Zheng." +":gh:`123401`: The :mod:`http.cookies` module now supports parsing " +"obsolete :rfc:`850` date formats, in accordance with :rfc:`9110` " +"requirements. Patch by Nano Zheng." msgstr "" msgid "" -":gh:`122431`: :func:`readline.append_history_file` now raises a :exc:" -"`ValueError` when given a negative value." +":gh:`122431`: :func:`readline.append_history_file` now raises " +"a :exc:`ValueError` when given a negative value." msgstr "" msgid "" -":gh:`122356`: Guarantee that the position of a file-like object passed to :" -"func:`zipfile.is_zipfile` is left untouched after the call. Patch by " +":gh:`122356`: Guarantee that the position of a file-like object passed " +"to :func:`zipfile.is_zipfile` is left untouched after the call. Patch by " "Bénédikt Tran." msgstr "" @@ -15707,8 +18687,8 @@ msgid "" msgstr "" msgid "" -":gh:`88110`: Fixed :class:`multiprocessing.Process` reporting a ``." -"exitcode`` of 1 even on success when using the ``\"fork\"`` start method " +":gh:`88110`: Fixed :class:`multiprocessing.Process` reporting a " +"``.exitcode`` of 1 even on success when using the ``\"fork\"`` start method " "while using a :class:`concurrent.futures.ThreadPoolExecutor`." msgstr "" @@ -15752,8 +18732,8 @@ msgstr "" msgid "" ":gh:`127651`: When raising :exc:`ImportError` for missing symbols in " -"``from`` imports, use ``__file__`` in the error message if ``__spec__." -"origin`` is not a location" +"``from`` imports, use ``__file__`` in the error message if " +"``__spec__.origin`` is not a location" msgstr "" msgid "" @@ -15780,18 +18760,19 @@ msgid "" msgstr "" msgid "" -":gh:`113841`: Fix possible undefined behavior division by zero in :class:" -"`complex`'s :c:func:`_Py_c_pow`." +":gh:`113841`: Fix possible undefined behavior division by zero " +"in :class:`complex`'s :c:func:`_Py_c_pow`." msgstr "" msgid "" ":gh:`127133`: Calling :meth:`argparse.ArgumentParser.add_argument_group` on " -"an argument group, and calling :meth:`argparse.ArgumentParser." -"add_argument_group` or :meth:`argparse.ArgumentParser." -"add_mutually_exclusive_group` on a mutually exclusive group now raise " -"exceptions. This nesting was never supported, often failed to work " -"correctly, and was unintentionally exposed through inheritance. This " -"functionality has been deprecated since Python 3.11." +"an argument group, and " +"calling :meth:`argparse.ArgumentParser.add_argument_group` " +"or :meth:`argparse.ArgumentParser.add_mutually_exclusive_group` on a " +"mutually exclusive group now raise exceptions. This nesting was never " +"supported, often failed to work correctly, and was unintentionally exposed " +"through inheritance. This functionality has been deprecated since Python " +"3.11." msgstr "" msgid "" @@ -15802,10 +18783,10 @@ msgid "" msgstr "" msgid "" -":gh:`127020`: Fix a crash in the free threading build when :c:func:" -"`PyCode_GetCode`, :c:func:`PyCode_GetVarnames`, :c:func:" -"`PyCode_GetCellvars`, or :c:func:`PyCode_GetFreevars` were called from " -"multiple threads at the same time." +":gh:`127020`: Fix a crash in the free threading build " +"when :c:func:`PyCode_GetCode`, :c:func:`PyCode_GetVarnames`, :c:func:`PyCode_GetCellvars`, " +"or :c:func:`PyCode_GetFreevars` were called from multiple threads at the " +"same time." msgstr "" msgid "" @@ -15890,14 +18871,14 @@ msgid "" msgstr "" msgid "" -":gh:`127791`: Fix loss of callbacks after more than one call to :c:func:" -"`PyUnstable_AtExit`." +":gh:`127791`: Fix loss of callbacks after more than one call " +"to :c:func:`PyUnstable_AtExit`." msgstr "" msgid "" ":gh:`127691`: The :ref:`Unicode Exception Objects ` C API " -"now raises a :exc:`TypeError` if its exception argument is not a :exc:" -"`UnicodeError` object. Patch by Bénédikt Tran." +"now raises a :exc:`TypeError` if its exception argument is not " +"a :exc:`UnicodeError` object. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -15905,9 +18886,9 @@ msgid "" "` retrieved by :c:func:`PyUnicodeEncodeError_GetEnd` lies " "in ``[min(1, objlen), max(min(1, objlen), objlen)]`` where *objlen* is the " "length of :attr:`UnicodeEncodeError.object `. Similar " -"arguments apply to :exc:`UnicodeDecodeError` and :exc:" -"`UnicodeTranslateError` and their corresponding C interface. Patch by " -"Bénédikt Tran." +"arguments apply to :exc:`UnicodeDecodeError` " +"and :exc:`UnicodeTranslateError` and their corresponding C interface. Patch " +"by Bénédikt Tran." msgstr "" msgid "" @@ -15918,10 +18899,11 @@ msgstr "" msgid "" ":gh:`123378`: Ensure that the value of :attr:`UnicodeEncodeError.start " "` retrieved by :c:func:`PyUnicodeEncodeError_GetStart` " -"lies in ``[0, max(0, objlen - 1)]`` where *objlen* is the length of :attr:" -"`UnicodeEncodeError.object `. Similar arguments apply " -"to :exc:`UnicodeDecodeError` and :exc:`UnicodeTranslateError` and their " -"corresponding C interface. Patch by Bénédikt Tran." +"lies in ``[0, max(0, objlen - 1)]`` where *objlen* is the length " +"of :attr:`UnicodeEncodeError.object `. Similar " +"arguments apply to :exc:`UnicodeDecodeError` " +"and :exc:`UnicodeTranslateError` and their corresponding C interface. Patch " +"by Bénédikt Tran." msgstr "" msgid "" @@ -15954,8 +18936,8 @@ msgid ":c:func:`PyLongWriter_Discard`." msgstr "" msgid "" -":gh:`121058`: ``PyThreadState_Clear()`` now warns (and calls ``sys." -"excepthook``) if the thread state still has an active exception." +":gh:`121058`: ``PyThreadState_Clear()`` now warns (and calls " +"``sys.excepthook``) if the thread state still has an active exception." msgstr "" msgid "" @@ -16059,11 +19041,11 @@ msgid "" msgstr "" msgid "" -":gh:`126920`: Fix the ``prefix`` and ``exec_prefix`` keys from :py:func:" -"`sysconfig.get_config_vars` incorrectly having the same value as :py:const:" -"`sys.base_prefix` and :py:const:`sys.base_exec_prefix`, respectively, inside " -"virtual environments. They now accurately reflect :py:const:`sys.prefix` " -"and :py:const:`sys.exec_prefix`." +":gh:`126920`: Fix the ``prefix`` and ``exec_prefix`` keys " +"from :py:func:`sysconfig.get_config_vars` incorrectly having the same value " +"as :py:const:`sys.base_prefix` and :py:const:`sys.base_exec_prefix`, " +"respectively, inside virtual environments. They now accurately " +"reflect :py:const:`sys.prefix` and :py:const:`sys.exec_prefix`." msgstr "" msgid "" @@ -16078,10 +19060,11 @@ msgid "" msgstr "" msgid "" -":gh:`126789`: Fixed the values of :py:func:`sysconfig.get_config_vars`, :py:" -"func:`sysconfig.get_paths`, and their siblings when the :py:mod:`site` " -"initialization happens after :py:mod:`sysconfig` has built a cache for :py:" -"func:`sysconfig.get_config_vars`." +":gh:`126789`: Fixed the values " +"of :py:func:`sysconfig.get_config_vars`, :py:func:`sysconfig.get_paths`, and " +"their siblings when the :py:mod:`site` initialization happens " +"after :py:mod:`sysconfig` has built a cache " +"for :py:func:`sysconfig.get_config_vars`." msgstr "" msgid ":gh:`126188`: Update bundled pip to 24.3.1" @@ -16106,8 +19089,8 @@ msgid "" msgstr "" msgid "" -":gh:`104745`: Limit starting a patcher (from :func:`unittest.mock.patch` or :" -"func:`unittest.mock.patch.object`) more than once without stopping it" +":gh:`104745`: Limit starting a patcher (from :func:`unittest.mock.patch` " +"or :func:`unittest.mock.patch.object`) more than once without stopping it" msgstr "" msgid "" @@ -16150,8 +19133,9 @@ msgstr "" msgid "" "It could also have a side effect of ``\"\"`` remaining in :data:`sys.path` " -"during forkserver preload imports instead of the absolute path from :func:" -"`os.getcwd` at multiprocessing import time used in the worker ``sys.path``." +"during forkserver preload imports instead of the absolute path " +"from :func:`os.getcwd` at multiprocessing import time used in the worker " +"``sys.path``." msgstr "" msgid "" @@ -16161,24 +19145,26 @@ msgid "" msgstr "" msgid "" -":gh:`125679`: The :class:`multiprocessing.Lock` and :class:`multiprocessing." -"RLock` ``repr`` values no longer say \"unknown\" on macOS." +":gh:`125679`: The :class:`multiprocessing.Lock` " +"and :class:`multiprocessing.RLock` ``repr`` values no longer say \"unknown\" " +"on macOS." msgstr "" msgid "" -":gh:`126476`: Raise :class:`calendar.IllegalMonthError` (now a subclass of :" -"class:`IndexError`) for :func:`calendar.month` when the input month is not " -"correct." +":gh:`126476`: Raise :class:`calendar.IllegalMonthError` (now a subclass " +"of :class:`IndexError`) for :func:`calendar.month` when the input month is " +"not correct." msgstr "" msgid "" -":gh:`126489`: The Python implementation of :mod:`pickle` no longer calls :" -"meth:`pickle.Pickler.persistent_id` for the result of :meth:`!persistent_id`." +":gh:`126489`: The Python implementation of :mod:`pickle` no longer " +"calls :meth:`pickle.Pickler.persistent_id` for the result of :meth:`!" +"persistent_id`." msgstr "" msgid "" -":gh:`126451`: Register the :class:`contextvars.Context` type to :class:" -"`collections.abc.Mapping`." +":gh:`126451`: Register the :class:`contextvars.Context` type " +"to :class:`collections.abc.Mapping`." msgstr "" msgid "" @@ -16193,10 +19179,11 @@ msgid "" msgstr "" msgid "" -":gh:`126417`: Register the :class:`!multiprocessing.managers.DictProxy` and :" -"class:`!multiprocessing.managers.ListProxy` types in :mod:`multiprocessing." -"managers` to :class:`collections.abc.MutableMapping` and :class:`collections." -"abc.MutableSequence`, respectively." +":gh:`126417`: Register the :class:`!multiprocessing.managers.DictProxy` " +"and :class:`!multiprocessing.managers.ListProxy` types " +"in :mod:`multiprocessing.managers` " +"to :class:`collections.abc.MutableMapping` " +"and :class:`collections.abc.MutableSequence`, respectively." msgstr "" msgid "" @@ -16205,8 +19192,8 @@ msgid "" msgstr "" msgid "" -":gh:`126374`: Add support for options with optional arguments in the :mod:" -"`getopt` module." +":gh:`126374`: Add support for options with optional arguments in " +"the :mod:`getopt` module." msgstr "" msgid "" @@ -16221,8 +19208,8 @@ msgid "" msgstr "" msgid "" -":gh:`126313`: Fix an issue in :func:`curses.napms` when :func:`curses." -"initscr` has not yet been called. Patch by Bénédikt Tran." +":gh:`126313`: Fix an issue in :func:`curses.napms` " +"when :func:`curses.initscr` has not yet been called. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -16231,30 +19218,30 @@ msgstr "" msgid "" ":gh:`126138`: Fix a use-after-free crash on :class:`asyncio.Task` objects " -"whose underlying coroutine yields an object that implements an evil :meth:" -"`~object.__getattribute__`. Patch by Nico Posada." +"whose underlying coroutine yields an object that implements an " +"evil :meth:`~object.__getattribute__`. Patch by Nico Posada." msgstr "" msgid "" -":gh:`120057`: Replace the ``os.environ.refresh()`` method with a new :func:" -"`os.reload_environ` function. Patch by Victor Stinner." +":gh:`120057`: Replace the ``os.environ.refresh()`` method with a " +"new :func:`os.reload_environ` function. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`126220`: Fix crash in :class:`!cProfile.Profile` and :class:`!_lsprof." -"Profiler` when their callbacks were directly called with 0 arguments." +":gh:`126220`: Fix crash in :class:`!cProfile.Profile` and :class:`!" +"_lsprof.Profiler` when their callbacks were directly called with 0 arguments." msgstr "" msgid "" -":gh:`126212`: Fix issue where :func:`urllib.request.pathname2url` and :func:" -"`~urllib.request.url2pathname` removed slashes from Windows DOS drive paths " -"and URLs." +":gh:`126212`: Fix issue where :func:`urllib.request.pathname2url` " +"and :func:`~urllib.request.url2pathname` removed slashes from Windows DOS " +"drive paths and URLs." msgstr "" msgid "" -":gh:`126223`: Raise a :exc:`UnicodeEncodeError` instead of a :exc:" -"`SystemError` upon calling :func:`!_interpreters.create` with an invalid " -"Unicode character." +":gh:`126223`: Raise a :exc:`UnicodeEncodeError` instead of " +"a :exc:`SystemError` upon calling :func:`!_interpreters.create` with an " +"invalid Unicode character." msgstr "" msgid "" @@ -16264,8 +19251,8 @@ msgid "" msgstr "" msgid "" -":gh:`126156`: Improved performances of creating :py:class:`~http.cookies." -"Morsel` objects by a factor of 3.8x." +":gh:`126156`: Improved performances of " +"creating :py:class:`~http.cookies.Morsel` objects by a factor of 3.8x." msgstr "" msgid "" @@ -16279,8 +19266,9 @@ msgstr "" msgid "" ":gh:`126080`: Fix a use-after-free crash on :class:`asyncio.Task` objects " -"for which the underlying event loop implements an evil :meth:`~object." -"__getattribute__`. Reported by Nico-Posada. Patch by Bénédikt Tran." +"for which the underlying event loop implements an " +"evil :meth:`~object.__getattribute__`. Reported by Nico-Posada. Patch by " +"Bénédikt Tran." msgstr "" msgid ":gh:`125322`: Correct detection of complex numbers support in libffi." @@ -16302,14 +19290,15 @@ msgstr "" msgid "" ":gh:`125413`: Add :meth:`!pathlib.Path.scandir` method to efficiently fetch " -"directory children and their file attributes. This is a trivial wrapper of :" -"func:`os.scandir`." +"directory children and their file attributes. This is a trivial wrapper " +"of :func:`os.scandir`." msgstr "" msgid "" ":gh:`125984`: Fix use-after-free crashes on :class:`asyncio.Future` objects " -"for which the underlying event loop implements an evil :meth:`~object." -"__getattribute__`. Reported by Nico-Posada. Patch by Bénédikt Tran." +"for which the underlying event loop implements an " +"evil :meth:`~object.__getattribute__`. Reported by Nico-Posada. Patch by " +"Bénédikt Tran." msgstr "" msgid "" @@ -16320,14 +19309,14 @@ msgid "" msgstr "" msgid "" -":gh:`125969`: Fix an out-of-bounds crash when an evil :meth:`asyncio.loop." -"call_soon` mutates the length of the internal callbacks list. Patch by " -"Bénédikt Tran." +":gh:`125969`: Fix an out-of-bounds crash when an " +"evil :meth:`asyncio.loop.call_soon` mutates the length of the internal " +"callbacks list. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`125966`: Fix a use-after-free crash in :meth:`asyncio.Future." -"remove_done_callback`. Patch by Bénédikt Tran." +":gh:`125966`: Fix a use-after-free crash " +"in :meth:`asyncio.Future.remove_done_callback`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -16342,11 +19331,12 @@ msgid "" msgstr "" msgid "" -":gh:`124452`: Fix an issue in :meth:`email.policy.EmailPolicy." -"header_source_parse` and :meth:`email.policy.Compat32.header_source_parse` " -"that introduced spurious leading whitespaces into header values when the " -"header includes a newline character after the header name delimiter (``:``) " -"and before the value." +":gh:`124452`: Fix an issue " +"in :meth:`email.policy.EmailPolicy.header_source_parse` " +"and :meth:`email.policy.Compat32.header_source_parse` that introduced " +"spurious leading whitespaces into header values when the header includes a " +"newline character after the header name delimiter (``:``) and before the " +"value." msgstr "" msgid "" @@ -16360,8 +19350,8 @@ msgid "" msgstr "" msgid "" -":gh:`125355`: Fix several bugs in :meth:`argparse.ArgumentParser." -"parse_intermixed_args`." +":gh:`125355`: Fix several bugs " +"in :meth:`argparse.ArgumentParser.parse_intermixed_args`." msgstr "" msgid "The parser no longer changes temporarily during parsing." @@ -16386,8 +19376,8 @@ msgid "" msgstr "" msgid "" -":gh:`125767`: :class:`super` objects are now :mod:`pickleable ` and :" -"mod:`copyable `." +":gh:`125767`: :class:`super` objects are now :mod:`pickleable ` " +"and :mod:`copyable `." msgstr "" msgid "" @@ -16397,8 +19387,8 @@ msgstr "" msgid "" ":gh:`84850`: Remove :class:`!URLopener` and :class:`!FancyURLopener` classes " -"from :mod:`urllib.request`. They had previously raised :exc:" -"`DeprecationWarning` since Python 3.3." +"from :mod:`urllib.request`. They had previously " +"raised :exc:`DeprecationWarning` since Python 3.3." msgstr "" msgid "" @@ -16424,13 +19414,13 @@ msgid "" msgstr "" msgid "" -":gh:`125682`: Reject non-ASCII digits in the Python implementation of :func:" -"`json.loads` conforming to the JSON specification." +":gh:`125682`: Reject non-ASCII digits in the Python implementation " +"of :func:`json.loads` conforming to the JSON specification." msgstr "" msgid "" -":gh:`125660`: Reject invalid unicode escapes for Python implementation of :" -"func:`json.loads`." +":gh:`125660`: Reject invalid unicode escapes for Python implementation " +"of :func:`json.loads`." msgstr "" msgid "" @@ -16449,9 +19439,9 @@ msgid "" msgstr "" msgid "" -":gh:`125614`: In the :data:`~annotationlib.Format.FORWARDREF` format of :mod:" -"`annotationlib`, fix bug where nested expressions were not returned as :" -"class:`annotationlib.ForwardRef` format." +":gh:`125614`: In the :data:`~annotationlib.Format.FORWARDREF` format " +"of :mod:`annotationlib`, fix bug where nested expressions were not returned " +"as :class:`annotationlib.ForwardRef` format." msgstr "" msgid "" @@ -16465,16 +19455,16 @@ msgid "" msgstr "" msgid "" -":gh:`125542`: Deprecate passing keyword-only *prefix_chars* argument to :" -"meth:`argparse.ArgumentParser.add_argument_group`." +":gh:`125542`: Deprecate passing keyword-only *prefix_chars* argument " +"to :meth:`argparse.ArgumentParser.add_argument_group`." msgstr "" msgid "" -":gh:`125541`: Pressing :kbd:`Ctrl-C` while blocked in :meth:`threading.Lock." -"acquire`, :meth:`threading.RLock.acquire`, and :meth:`threading.Thread.join` " -"now interrupts the function call and raises a :exc:`KeyboardInterrupt` " -"exception on Windows, similar to how those functions behave on macOS and " -"Linux." +":gh:`125541`: Pressing :kbd:`Ctrl-C` while blocked " +"in :meth:`threading.Lock.acquire`, :meth:`threading.RLock.acquire`, " +"and :meth:`threading.Thread.join` now interrupts the function call and " +"raises a :exc:`KeyboardInterrupt` exception on Windows, similar to how those " +"functions behave on macOS and Linux." msgstr "" msgid "" @@ -16483,9 +19473,9 @@ msgid "" msgstr "" msgid "" -":gh:`125451`: Fix deadlock when :class:`concurrent.futures." -"ProcessPoolExecutor` shuts down concurrently with an error when feeding a " -"job to a worker process." +":gh:`125451`: Fix deadlock " +"when :class:`concurrent.futures.ProcessPoolExecutor` shuts down concurrently " +"with an error when feeding a job to a worker process." msgstr "" msgid "" @@ -16504,13 +19494,13 @@ msgid "" msgstr "" msgid "" -":gh:`52551`: Fix encoding issues in :func:`time.strftime`, the :meth:" -"`~datetime.datetime.strftime` method of the :mod:`datetime` classes :class:" -"`~datetime.datetime`, :class:`~datetime.date` and :class:`~datetime.time` " -"and formatting of these classes. Characters not encodable in the current " -"locale are now acceptable in the format string. Surrogate pairs and sequence " -"of surrogatescape-encoded bytes are no longer recombinated. Embedded null " -"character no longer terminates the format string." +":gh:`52551`: Fix encoding issues in :func:`time.strftime`, " +"the :meth:`~datetime.datetime.strftime` method of the :mod:`datetime` " +"classes :class:`~datetime.datetime`, :class:`~datetime.date` " +"and :class:`~datetime.time` and formatting of these classes. Characters not " +"encodable in the current locale are now acceptable in the format string. " +"Surrogate pairs and sequence of surrogatescape-encoded bytes are no longer " +"recombinated. Embedded null character no longer terminates the format string." msgstr "" msgid "" @@ -16524,10 +19514,11 @@ msgid "" msgstr "" msgid "" -":gh:`124694`: We've added :class:`concurrent.futures." -"InterpreterPoolExecutor`, which allows you to run code in multiple isolated " -"interpreters. This allows you to circumvent the limitations of CPU-bound " -"threads (due to the GIL). Patch by Eric Snow." +":gh:`124694`: We've " +"added :class:`concurrent.futures.InterpreterPoolExecutor`, which allows you " +"to run code in multiple isolated interpreters. This allows you to " +"circumvent the limitations of CPU-bound threads (due to the GIL). Patch by " +"Eric Snow." msgstr "" msgid "This addition is unrelated to :pep:`734`." @@ -16591,9 +19582,9 @@ msgid "" msgstr "" msgid "" -":gh:`118289`: :func:`!posixpath.realpath` now raises :exc:" -"`NotADirectoryError` when *strict* mode is enabled and a non-directory path " -"with a trailing slash is supplied." +":gh:`118289`: :func:`!posixpath.realpath` now " +"raises :exc:`NotADirectoryError` when *strict* mode is enabled and a non-" +"directory path with a trailing slash is supplied." msgstr "" msgid "" @@ -16695,8 +19686,8 @@ msgid "" msgstr "" msgid "" -":gh:`126312`: Fix crash during garbage collection on an object frozen by :" -"func:`gc.freeze` on the free-threaded build." +":gh:`126312`: Fix crash during garbage collection on an object frozen " +"by :func:`gc.freeze` on the free-threaded build." msgstr "" msgid "" @@ -16706,8 +19697,8 @@ msgstr "" msgid "" ":gh:`126072`: Following :gh:`126101`, for :ref:`codeobjects` like lambda, " -"annotation and type alias, we no longer add ``None`` to its :attr:" -"`~codeobject.co_consts`." +"annotation and type alias, we no longer add ``None`` to " +"its :attr:`~codeobject.co_consts`." msgstr "" msgid "" @@ -16716,8 +19707,8 @@ msgid "" msgstr "" msgid "" -":gh:`126139`: Provide better error location when attempting to use a :term:" -"`future statement <__future__>` with an unknown future feature." +":gh:`126139`: Provide better error location when attempting to use " +"a :term:`future statement <__future__>` with an unknown future feature." msgstr "" msgid "" @@ -16763,9 +19754,9 @@ msgid "" msgstr "" msgid "" -":gh:`125859`: Fix a crash in the free threading build when :func:`gc." -"get_objects` or :func:`gc.get_referrers` is called during an in-progress " -"garbage collection." +":gh:`125859`: Fix a crash in the free threading build " +"when :func:`gc.get_objects` or :func:`gc.get_referrers` is called during an " +"in-progress garbage collection." msgstr "" msgid "" @@ -16793,8 +19784,8 @@ msgid "" msgstr "" msgid "" -":gh:`125017`: Fix crash on certain accesses to the ``__annotations__`` of :" -"class:`staticmethod` and :class:`classmethod` objects." +":gh:`125017`: Fix crash on certain accesses to the ``__annotations__`` " +"of :class:`staticmethod` and :class:`classmethod` objects." msgstr "" msgid "" @@ -16861,9 +19852,10 @@ msgid "" msgstr "" msgid "" -":gh:`125608`: Fix a bug where dictionary watchers (e.g., :c:func:" -"`PyDict_Watch`) on an object's attribute dictionary (:attr:`~object." -"__dict__`) were not triggered when the object's attributes were modified." +":gh:`125608`: Fix a bug where dictionary watchers " +"(e.g., :c:func:`PyDict_Watch`) on an object's attribute dictionary " +"(:attr:`~object.__dict__`) were not triggered when the object's attributes " +"were modified." msgstr "" msgid "" @@ -16998,8 +19990,8 @@ msgid "" msgstr "" msgid "" -":gh:`119690`: Adds Unicode support and fixes audit events for ``_winapi." -"CreateNamedPipe``." +":gh:`119690`: Adds Unicode support and fixes audit events for " +"``_winapi.CreateNamedPipe``." msgstr "" msgid ":gh:`111201`: Add support for new pyrepl on Windows" @@ -17161,21 +20153,21 @@ msgid "" msgstr "" msgid "" -":gh:`122133`: Authenticate the socket connection for the ``socket." -"socketpair()`` fallback on platforms where ``AF_UNIX`` is not available like " -"Windows." +":gh:`122133`: Authenticate the socket connection for the " +"``socket.socketpair()`` fallback on platforms where ``AF_UNIX`` is not " +"available like Windows." msgstr "" msgid "" -"Patch by Gregory P. Smith and Seth Larson . Reported by Ellie " +"Patch by Gregory P. Smith and Seth Larson " +". Reported by Ellie " msgstr "" msgid "" ":gh:`121957`: Fixed missing audit events around interactive use of Python, " "now also properly firing for ``python -i``, as well as for ``python -m " -"asyncio``. The events in question are ``cpython.run_stdin`` and ``cpython." -"run_startup``." +"asyncio``. The events in question are ``cpython.run_stdin`` and " +"``cpython.run_startup``." msgstr "" msgid "" @@ -17189,8 +20181,8 @@ msgid "" msgstr "" msgid "" -":gh:`112301`: Add default compiler options to improve security. Enable -" -"Wimplicit-fallthrough, -fstack-protector-strong, -Wtrampolines." +":gh:`112301`: Add default compiler options to improve security. Enable " +"-Wimplicit-fallthrough, -fstack-protector-strong, -Wtrampolines." msgstr "" msgid "" @@ -17228,9 +20220,9 @@ msgid "" msgstr "" msgid "" -":gh:`89967`: Make :class:`~weakref.WeakKeyDictionary` and :class:`~weakref." -"WeakValueDictionary` safe against concurrent mutations from other threads. " -"Patch by Kumar Aditya." +":gh:`89967`: Make :class:`~weakref.WeakKeyDictionary` " +"and :class:`~weakref.WeakValueDictionary` safe against concurrent mutations " +"from other threads. Patch by Kumar Aditya." msgstr "" msgid "" @@ -17261,8 +20253,8 @@ msgid "" msgstr "" msgid "" -":gh:`125118`: Don't copy arbitrary values to :c:expr:`_Bool` in the :mod:" -"`struct` module." +":gh:`125118`: Don't copy arbitrary values to :c:expr:`_Bool` in " +"the :mod:`struct` module." msgstr "" msgid "" @@ -17300,8 +20292,9 @@ msgid "" msgstr "" msgid "" -":gh:`124958`: Fix refcycles in exceptions raised from :class:`asyncio." -"TaskGroup` and the python implementation of :class:`asyncio.Future`" +":gh:`124958`: Fix refcycles in exceptions raised " +"from :class:`asyncio.TaskGroup` and the python implementation " +"of :class:`asyncio.Future`" msgstr "" msgid "" @@ -17314,9 +20307,9 @@ msgid "" msgstr "" msgid "" -":gh:`123961`: Convert :mod:`curses` to multi-phase initialization (:pep:" -"`489`), thereby fixing reference leaks at interpreter shutdown. Patch by " -"Bénédikt Tran." +":gh:`123961`: Convert :mod:`curses` to multi-phase initialization " +"(:pep:`489`), thereby fixing reference leaks at interpreter shutdown. Patch " +"by Bénédikt Tran." msgstr "" msgid ":gh:`124944`: Add ``SO_ORIGINAL_DST`` to the :mod:`socket` module." @@ -17335,36 +20328,38 @@ msgid "" msgstr "" msgid "" -":gh:`124917`: Allow calling :func:`os.path.exists` and :func:`os.path." -"lexists` with keyword arguments on Windows. Fixes a regression in 3.13.0." +":gh:`124917`: Allow calling :func:`os.path.exists` " +"and :func:`os.path.lexists` with keyword arguments on Windows. Fixes a " +"regression in 3.13.0." msgstr "" msgid "" ":gh:`65865`: :mod:`argparse` now raises early error for invalid ``help`` " -"arguments to :meth:`~argparse.ArgumentParser.add_argument`, :meth:`~argparse." -"ArgumentParser.add_subparsers` and :meth:`!add_parser`." +"arguments " +"to :meth:`~argparse.ArgumentParser.add_argument`, :meth:`~argparse.ArgumentParser.add_subparsers` " +"and :meth:`!add_parser`." msgstr "" msgid "" -":gh:`124653`: Fix detection of the minimal Queue API needed by the :mod:" -"`logging` module. Patch by Bénédikt Tran." +":gh:`124653`: Fix detection of the minimal Queue API needed by " +"the :mod:`logging` module. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`91818`: The CLI of many modules (:mod:`ast`, :mod:`ensurepip`, :mod:" -"`json`, :mod:`pdb`, :mod:`sqlite3`, :mod:`tokenize`, :mod:`venv`) now uses " -"the actual executable name instead of simply \"python\" to display in the " -"usage message." +":gh:`91818`: The CLI of many modules " +"(:mod:`ast`, :mod:`ensurepip`, :mod:`json`, :mod:`pdb`, :mod:`sqlite3`, :mod:`tokenize`, :mod:`venv`) " +"now uses the actual executable name instead of simply \"python\" to display " +"in the usage message." msgstr "" msgid "" -":gh:`124858`: Fix reference cycles left in tracebacks in :func:`asyncio." -"open_connection` when used with ``happy_eyeballs_delay``" +":gh:`124858`: Fix reference cycles left in tracebacks " +"in :func:`asyncio.open_connection` when used with ``happy_eyeballs_delay``" msgstr "" msgid "" -":gh:`124390`: Fixed :exc:`AssertionError` when using :func:`!asyncio." -"staggered.staggered_race` with :data:`asyncio.eager_task_factory`." +":gh:`124390`: Fixed :exc:`AssertionError` when using :func:`!" +"asyncio.staggered.staggered_race` with :data:`asyncio.eager_task_factory`." msgstr "" msgid "" @@ -17375,9 +20370,9 @@ msgid "" msgstr "" msgid "" -":gh:`124835`: Make :func:`tomllib.loads` raise :exc:`TypeError` not :exc:" -"`AttributeError` on bad input types that do not have the ``replace`` " -"attribute. Improve error message when :class:`bytes` is received." +":gh:`124835`: Make :func:`tomllib.loads` raise :exc:`TypeError` " +"not :exc:`AttributeError` on bad input types that do not have the " +"``replace`` attribute. Improve error message when :class:`bytes` is received." msgstr "" msgid "" @@ -17393,10 +20388,11 @@ msgid "" msgstr "" msgid "" -":gh:`66436`: Improved :ref:`prog` default value for :class:`argparse." -"ArgumentParser`. It will now include the name of the Python executable along " -"with the module or package name, or the path to a directory, ZIP file, or " -"directory within a ZIP file if the code was run that way." +":gh:`66436`: Improved :ref:`prog` default value " +"for :class:`argparse.ArgumentParser`. It will now include the name of the " +"Python executable along with the module or package name, or the path to a " +"directory, ZIP file, or directory within a ZIP file if the code was run that " +"way." msgstr "" msgid "" @@ -17405,10 +20401,11 @@ msgid "" msgstr "" msgid "" -":gh:`101552`: Add an *annoation_format* parameter to :func:`inspect." -"signature`. Add an *quote_annotation_strings* parameter to :meth:`inspect." -"Signature.format`. Use the new functionality to improve the display of " -"annotations in signatures in :mod:`pydoc`. Patch by Jelle Zijlstra." +":gh:`101552`: Add an *annoation_format* parameter " +"to :func:`inspect.signature`. Add an *quote_annotation_strings* parameter " +"to :meth:`inspect.Signature.format`. Use the new functionality to improve " +"the display of annotations in signatures in :mod:`pydoc`. Patch by Jelle " +"Zijlstra." msgstr "" msgid "" @@ -17417,14 +20414,14 @@ msgid "" msgstr "" msgid "" -":gh:`124594`: All :mod:`asyncio` REPL prompts run in the same :class:" -"`context `. Contributed by Bartosz Sławecki." +":gh:`124594`: All :mod:`asyncio` REPL prompts run in the " +"same :class:`context `. Contributed by Bartosz Sławecki." msgstr "" msgid "" -":gh:`61181`: Fix support of :ref:`choices` with string value in :mod:" -"`argparse`. Substrings of the specified string no longer considered valid " -"values." +":gh:`61181`: Fix support of :ref:`choices` with string value " +"in :mod:`argparse`. Substrings of the specified string no longer considered " +"valid values." msgstr "" msgid "" @@ -17449,8 +20446,8 @@ msgid "" msgstr "" msgid "" -":gh:`120378`: Fix a crash related to an integer overflow in :func:`curses." -"resizeterm` and :func:`curses.resize_term`." +":gh:`120378`: Fix a crash related to an integer overflow " +"in :func:`curses.resizeterm` and :func:`curses.resize_term`." msgstr "" msgid "" @@ -17459,9 +20456,9 @@ msgid "" msgstr "" msgid "" -":gh:`53834`: Fix support of arguments with :ref:`choices` in :mod:" -"`argparse`. Positional arguments with :ref:`nargs` equal to ``'?'`` or " -"``'*'`` no longer check :ref:`default` against ``choices``. Optional " +":gh:`53834`: Fix support of arguments with :ref:`choices` " +"in :mod:`argparse`. Positional arguments with :ref:`nargs` equal to ``'?'`` " +"or ``'*'`` no longer check :ref:`default` against ``choices``. Optional " "arguments with ``nargs`` equal to ``'?'`` no longer check :ref:`const` " "against ``choices``." msgstr "" @@ -17474,8 +20471,8 @@ msgid "" msgstr "" msgid "" -":gh:`123017`: Due to unreliable results on some devices, :func:`time." -"strftime` no longer accepts negative years on Android." +":gh:`123017`: Due to unreliable results on some " +"devices, :func:`time.strftime` no longer accepts negative years on Android." msgstr "" msgid "" @@ -17485,9 +20482,9 @@ msgid "" msgstr "" msgid "" -":gh:`124176`: Add support for :func:`dataclasses.dataclass` in :func:" -"`unittest.mock.create_autospec`. Now ``create_autospec`` will check for " -"potential dataclasses and use :func:`dataclasses.fields` function to " +":gh:`124176`: Add support for :func:`dataclasses.dataclass` " +"in :func:`unittest.mock.create_autospec`. Now ``create_autospec`` will check " +"for potential dataclasses and use :func:`dataclasses.fields` function to " "retrieve the spec information." msgstr "" @@ -17510,8 +20507,8 @@ msgid "" msgstr "" msgid "" -":gh:`104860`: Fix disallowing abbreviation of single-dash long options in :" -"mod:`argparse` with ``allow_abbrev=False``." +":gh:`104860`: Fix disallowing abbreviation of single-dash long options " +"in :mod:`argparse` with ``allow_abbrev=False``." msgstr "" msgid "" @@ -17522,8 +20519,8 @@ msgid "" msgstr "" msgid "" -":gh:`72795`: Positional arguments with :ref:`nargs` equal to ``'*'`` or :" -"data:`!argparse.REMAINDER` are no longer required. This allows to use " +":gh:`72795`: Positional arguments with :ref:`nargs` equal to ``'*'`` " +"or :data:`!argparse.REMAINDER` are no longer required. This allows to use " "positional argument with ``nargs='*'`` and without ``default`` in mutually " "exclusive group and improves error message about required arguments." msgstr "" @@ -17535,9 +20532,9 @@ msgid "" msgstr "" msgid "" -":gh:`100980`: The :attr:`~ctypes.Structure._fields_` attribute of :class:" -"`ctypes.Structure` and :class:`~ctypes.Union` is no longer set if the " -"setattr operation raises an error." +":gh:`100980`: The :attr:`~ctypes.Structure._fields_` attribute " +"of :class:`ctypes.Structure` and :class:`~ctypes.Union` is no longer set if " +"the setattr operation raises an error." msgstr "" msgid "" @@ -17546,13 +20543,13 @@ msgid "" msgstr "" msgid "" -":gh:`124217`: Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:" -"`ipaddress` module." +":gh:`124217`: Add RFC 9637 reserved IPv6 block ``3fff::/20`` " +"in :mod:`ipaddress` module." msgstr "" msgid "" -":gh:`111513`: Improve the error message that may be raised by :meth:" -"`datetime.date.fromtimestamp`." +":gh:`111513`: Improve the error message that may be raised " +"by :meth:`datetime.date.fromtimestamp`." msgstr "" msgid "" @@ -17561,9 +20558,9 @@ msgid "" msgstr "" msgid "" -":gh:`81691`: Fix handling of multiple ``\"--\"`` (double dashes) in :mod:" -"`argparse`. Only the first one has now been removed, all subsequent ones are " -"now taken literally." +":gh:`81691`: Fix handling of multiple ``\"--\"`` (double dashes) " +"in :mod:`argparse`. Only the first one has now been removed, all subsequent " +"ones are now taken literally." msgstr "" msgid "" @@ -17591,8 +20588,8 @@ msgid "" msgstr "" msgid "" -":gh:`123978`: Remove broken :func:`time.thread_time` and :func:`time." -"thread_time_ns` on NetBSD." +":gh:`123978`: Remove broken :func:`time.thread_time` " +"and :func:`time.thread_time_ns` on NetBSD." msgstr "" msgid "" @@ -17624,20 +20621,20 @@ msgid "" msgstr "" msgid "" -":gh:`84808`: Fix error handling in :py:class:`~socket.socket` method :py:" -"func:`~socket.socket.connect_ex` on platforms where :c:data:`errno` can be " -"negative." +":gh:`84808`: Fix error handling in :py:class:`~socket.socket` " +"method :py:func:`~socket.socket.connect_ex` on platforms " +"where :c:data:`errno` can be negative." msgstr "" msgid "" -":gh:`123756`: Added a new argument ``mode`` to :class:`pdb.Pdb`. Only allow :" -"mod:`pdb` from command line to use ``restart`` command." +":gh:`123756`: Added a new argument ``mode`` to :class:`pdb.Pdb`. Only " +"allow :mod:`pdb` from command line to use ``restart`` command." msgstr "" msgid "" -":gh:`122765`: Fix unbalanced quote errors occurring when activate.csh in :" -"mod:`venv` was sourced with a custom prompt containing unpaired quotes or " -"newlines." +":gh:`122765`: Fix unbalanced quote errors occurring when activate.csh " +"in :mod:`venv` was sourced with a custom prompt containing unpaired quotes " +"or newlines." msgstr "" msgid "" @@ -17647,15 +20644,16 @@ msgid "" msgstr "" msgid "" -":gh:`123339`: Fix :func:`inspect.getsource` for classes in :mod:`collections." -"abc` and :mod:`decimal` (for pure Python implementation) modules. :func:" -"`inspect.getcomments` now raises OSError instead of IndexError if the " -"``__firstlineno__`` value for a class is out of bound." +":gh:`123339`: Fix :func:`inspect.getsource` for classes " +"in :mod:`collections.abc` and :mod:`decimal` (for pure Python " +"implementation) modules. :func:`inspect.getcomments` now raises OSError " +"instead of IndexError if the ``__firstlineno__`` value for a class is out of " +"bound." msgstr "" msgid "" -":gh:`123374`: Remove check for redefined memo entry in :func:`pickletools." -"dis`." +":gh:`123374`: Remove check for redefined memo entry " +"in :func:`pickletools.dis`." msgstr "" msgid "" @@ -17668,9 +20666,9 @@ msgid "" msgstr "" msgid "" -":gh:`123446`: Fix empty function name in :exc:`TypeError` when :func:`csv." -"reader`, :func:`csv.writer`, or :func:`csv.register_dialect` are used " -"without the required args." +":gh:`123446`: Fix empty function name in :exc:`TypeError` " +"when :func:`csv.reader`, :func:`csv.writer`, or :func:`csv.register_dialect` " +"are used without the required args." msgstr "" msgid "" @@ -17695,8 +20693,9 @@ msgid "" msgstr "" msgid "" -":gh:`123341`: Add :meth:`~object.__class_getitem__` to :class:`!tkinter." -"Event` for type subscript support at runtime. Patch by Adonis Rakateli." +":gh:`123341`: Add :meth:`~object.__class_getitem__` to :class:`!" +"tkinter.Event` for type subscript support at runtime. Patch by Adonis " +"Rakateli." msgstr "" msgid "" @@ -17705,37 +20704,38 @@ msgid "" msgstr "" msgid "" -":gh:`119518`: Speed up normalization of :class:`pathlib.PurePath` and :class:" -"`~pathlib.Path` objects by not interning string parts." +":gh:`119518`: Speed up normalization of :class:`pathlib.PurePath` " +"and :class:`~pathlib.Path` objects by not interning string parts." msgstr "" msgid "" -":gh:`123270`: Applied a more surgical fix for malformed payloads in :class:" -"`zipfile.Path` causing infinite loops (:gh:`122905`) without breaking " -"contents using legitimate characters." +":gh:`123270`: Applied a more surgical fix for malformed payloads " +"in :class:`zipfile.Path` causing infinite loops (:gh:`122905`) without " +"breaking contents using legitimate characters." msgstr "" msgid "" -":gh:`73991`: Add :meth:`pathlib.Path.copy_into` and :meth:`~pathlib.Path." -"move_into`, which copy and move files and directories into *existing* " -"directories." +":gh:`73991`: Add :meth:`pathlib.Path.copy_into` " +"and :meth:`~pathlib.Path.move_into`, which copy and move files and " +"directories into *existing* directories." msgstr "" msgid "" -":gh:`123228`: Fix return type for :func:`!_pyrepl.readline._ReadlineWrapper." -"get_line_buffer` to be :func:`str`. Patch by Sergey B Kirpichev." +":gh:`123228`: Fix return type for :func:`!" +"_pyrepl.readline._ReadlineWrapper.get_line_buffer` to be :func:`str`. Patch " +"by Sergey B Kirpichev." msgstr "" msgid ":gh:`123240`: Raise audit events for the :func:`input` in the new REPL." msgstr "" msgid "" -":gh:`76960`: Fix :func:`urllib.parse.urljoin` and :func:`urllib.parse." -"urldefrag` for URIs containing empty components. For example, :func:`!" -"urljoin` with relative reference \"?\" now sets empty query and removes " -"fragment. Preserve empty components (authority, params, query, fragment) in :" -"func:`!urljoin`. Preserve empty components (authority, params, query) in :" -"func:`!urldefrag`." +":gh:`76960`: Fix :func:`urllib.parse.urljoin` " +"and :func:`urllib.parse.urldefrag` for URIs containing empty components. For " +"example, :func:`!urljoin` with relative reference \"?\" now sets empty query " +"and removes fragment. Preserve empty components (authority, params, query, " +"fragment) in :func:`!urljoin`. Preserve empty components (authority, params, " +"query) in :func:`!urldefrag`." msgstr "" msgid "" @@ -17754,19 +20754,19 @@ msgid "" msgstr "" msgid "" -":gh:`123213`: :meth:`xml.etree.ElementTree.Element.extend` and :class:`~xml." -"etree.ElementTree.Element` assignment no longer hide the internal exception " -"if an erroneous generator is passed. Patch by Bar Harel." +":gh:`123213`: :meth:`xml.etree.ElementTree.Element.extend` " +"and :class:`~xml.etree.ElementTree.Element` assignment no longer hide the " +"internal exception if an erroneous generator is passed. Patch by Bar Harel." msgstr "" msgid "" -":gh:`85110`: Preserve relative path in URL without netloc in :func:`urllib." -"parse.urlunsplit` and :func:`urllib.parse.urlunparse`." +":gh:`85110`: Preserve relative path in URL without netloc " +"in :func:`urllib.parse.urlunsplit` and :func:`urllib.parse.urlunparse`." msgstr "" msgid "" -":gh:`123165`: Add support for rendering :class:`~dis.Positions` in :mod:" -"`dis`." +":gh:`123165`: Add support for rendering :class:`~dis.Positions` " +"in :mod:`dis`." msgstr "" msgid "" @@ -17777,8 +20777,8 @@ msgstr "" msgid "" ":gh:`123084`: Deprecate :class:`!shutil.ExecError`, which hasn't been raised " -"by any :mod:`shutil` function since Python 3.4. It's now an alias for :exc:" -"`RuntimeError`." +"by any :mod:`shutil` function since Python 3.4. It's now an alias " +"for :exc:`RuntimeError`." msgstr "" msgid "" @@ -17793,8 +20793,8 @@ msgid "" msgstr "" msgid "" -":gh:`123049`: Add support for :const:`~configparser.UNNAMED_SECTION` in :" -"meth:`configparser.ConfigParser.add_section`." +":gh:`123049`: Add support for :const:`~configparser.UNNAMED_SECTION` " +"in :meth:`configparser.ConfigParser.add_section`." msgstr "" msgid "" @@ -17819,14 +20819,14 @@ msgid "" msgstr "" msgid "" -":gh:`122873`: Enable :mod:`json` module to work as a script using the :" -"option:`-m` switch: ``python -m json``. See the :ref:`JSON command-line " +":gh:`122873`: Enable :mod:`json` module to work as a script using " +"the :option:`-m` switch: ``python -m json``. See the :ref:`JSON command-line " "interface ` documentation. Patch by Trey Hunner." msgstr "" msgid "" -":gh:`122858`: Deprecate :func:`!asyncio.iscoroutinefunction` in favor of :" -"func:`inspect.iscoroutinefunction`." +":gh:`122858`: Deprecate :func:`!asyncio.iscoroutinefunction` in favor " +"of :func:`inspect.iscoroutinefunction`." msgstr "" msgid "" @@ -17841,11 +20841,11 @@ msgid "" msgstr "" msgid "" -":gh:`122311`: Improve errors in the :mod:`pickle` module. :exc:`~pickle." -"PicklingError` is now raised more often instead of :exc:" -"`UnicodeEncodeError`, :exc:`ValueError` and :exc:`AttributeError`, and the " -"original exception is chained to it. Improve and unify error messages in " -"Python and C implementations." +":gh:`122311`: Improve errors in the :mod:`pickle` " +"module. :exc:`~pickle.PicklingError` is now raised more often instead " +"of :exc:`UnicodeEncodeError`, :exc:`ValueError` and :exc:`AttributeError`, " +"and the original exception is chained to it. Improve and unify error " +"messages in Python and C implementations." msgstr "" msgid "" @@ -17858,8 +20858,9 @@ msgid "" msgstr "" msgid "" -":gh:`118974`: Add ``decorator`` parameter to :func:`dataclasses." -"make_dataclass` to customize the functional creation of dataclasses." +":gh:`118974`: Add ``decorator`` parameter " +"to :func:`dataclasses.make_dataclass` to customize the functional creation " +"of dataclasses." msgstr "" msgid "" @@ -17873,11 +20874,11 @@ msgid "" msgstr "" msgid "" -":gh:`122478`: Remove internal frames from tracebacks shown in :class:`code." -"InteractiveInterpreter` with non-default :func:`sys.excepthook`. Save " -"correct tracebacks in :data:`sys.last_traceback` and update " -"``__traceback__`` attribute of :data:`sys.last_value` and :data:`sys." -"last_exc`." +":gh:`122478`: Remove internal frames from tracebacks shown " +"in :class:`code.InteractiveInterpreter` with non-" +"default :func:`sys.excepthook`. Save correct tracebacks " +"in :data:`sys.last_traceback` and update ``__traceback__`` attribute " +"of :data:`sys.last_value` and :data:`sys.last_exc`." msgstr "" msgid "" @@ -17886,8 +20887,9 @@ msgid "" msgstr "" msgid "" -":gh:`82378`: Make sure that the new :term:`REPL` interprets :data:`sys." -"tracebacklimit` in the same way that the classic REPL did." +":gh:`82378`: Make sure that the new :term:`REPL` " +"interprets :data:`sys.tracebacklimit` in the same way that the classic REPL " +"did." msgstr "" msgid "" @@ -17915,8 +20917,9 @@ msgid "" msgstr "" msgid "" -":gh:`122400`: Handle :exc:`ValueError`\\s raised by :func:`os.stat` in :" -"class:`filecmp.dircmp` and :func:`filecmp.cmpfiles`. Patch by Bénédikt Tran." +":gh:`122400`: Handle :exc:`ValueError`\\s raised by :func:`os.stat` " +"in :class:`filecmp.dircmp` and :func:`filecmp.cmpfiles`. Patch by Bénédikt " +"Tran." msgstr "" msgid ":gh:`122311`: Fix some error messages in :mod:`pickle`." @@ -17925,9 +20928,9 @@ msgstr "" msgid "" ":gh:`121650`: :mod:`email` headers with embedded newlines are now quoted on " "output. The :mod:`~email.generator` will now refuse to serialize (write) " -"headers that are unsafely folded or delimited; see :attr:`~email.policy." -"Policy.verify_generated_headers`. (Contributed by Bas Bloemsaat and Petr " -"Viktorin in :gh:`121650`.)" +"headers that are unsafely folded or delimited; " +"see :attr:`~email.policy.Policy.verify_generated_headers`. (Contributed by " +"Bas Bloemsaat and Petr Viktorin in :gh:`121650`.)" msgstr "" msgid "" @@ -17954,8 +20957,8 @@ msgid "``evaluate_value`` on :class:`typing.TypeAliasType`" msgstr "" msgid "" -"``evaluate_bound``, ``evaluate_constraints``, and ``evaluate_default`` on :" -"class:`typing.TypeVar`" +"``evaluate_bound``, ``evaluate_constraints``, and ``evaluate_default`` " +"on :class:`typing.TypeVar`" msgstr "" msgid "``evaluate_default`` on :class:`typing.ParamSpec`" @@ -17970,8 +20973,8 @@ msgid "" msgstr "" msgid "" -":gh:`122170`: Handle :exc:`ValueError`\\s raised by :func:`os.stat` in :mod:" -"`linecache`. Patch by Bénédikt Tran." +":gh:`122170`: Handle :exc:`ValueError`\\s raised by :func:`os.stat` " +"in :mod:`linecache`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -18034,9 +21037,9 @@ msgid "" msgstr "" msgid "" -":gh:`119698`: Due to the lack of interest for :meth:`symtable.Class." -"get_methods`, the method is marked as deprecated and will be removed in " -"Python 3.16. Patch by Bénédikt Tran." +":gh:`119698`: Due to the lack of interest " +"for :meth:`symtable.Class.get_methods`, the method is marked as deprecated " +"and will be removed in Python 3.16. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -18050,13 +21053,13 @@ msgid "" msgstr "" msgid "" -":gh:`121797`: Add alternative :class:`~fractions.Fraction` constructor :meth:" -"`Fraction.from_number() `." +":gh:`121797`: Add alternative :class:`~fractions.Fraction` " +"constructor :meth:`Fraction.from_number() `." msgstr "" msgid "" -":gh:`121798`: Add alternative :class:`~decimal.Decimal` constructor :meth:" -"`Decimal.from_number() `." +":gh:`121798`: Add alternative :class:`~decimal.Decimal` " +"constructor :meth:`Decimal.from_number() `." msgstr "" msgid "" @@ -18070,9 +21073,9 @@ msgid "" msgstr "" msgid "" -":gh:`121245`: Simplify handling of the history file in ``site." -"register_readline()`` helper. The ``CAN_USE_PYREPL`` variable now will be " -"initialized, when imported. Patch by Sergey B Kirpichev." +":gh:`121245`: Simplify handling of the history file in " +"``site.register_readline()`` helper. The ``CAN_USE_PYREPL`` variable now " +"will be initialized, when imported. Patch by Sergey B Kirpichev." msgstr "" msgid "" @@ -18082,22 +21085,24 @@ msgid "" msgstr "" msgid "" -":gh:`121486`: :mod:`math` functions :func:`~math.isqrt`, :func:`~math.log`, :" -"func:`~math.log2` and :func:`~math.log10` now support integers larger than " -"``2**2**32`` on 32-bit platforms." +":gh:`121486`: :mod:`math` " +"functions :func:`~math.isqrt`, :func:`~math.log`, :func:`~math.log2` " +"and :func:`~math.log10` now support integers larger than ``2**2**32`` on 32-" +"bit platforms." msgstr "" msgid "" -":gh:`121474`: Fix missing sanity check for ``parties`` arg in :class:" -"`threading.Barrier` constructor. Patch by Clinton Christian (pygeek)." +":gh:`121474`: Fix missing sanity check for ``parties`` arg " +"in :class:`threading.Barrier` constructor. Patch by Clinton Christian " +"(pygeek)." msgstr "" msgid "" -":gh:`121450`: Hard-coded breakpoints (:func:`breakpoint` and :func:`pdb." -"set_trace`) now reuse the most recent ``Pdb`` instance that calls ``Pdb." -"set_trace()``, instead of creating a new one each time. As a result, all the " -"instance specific data like ``display`` and ``commands`` are preserved " -"across Hard-coded breakpoints." +":gh:`121450`: Hard-coded breakpoints (:func:`breakpoint` " +"and :func:`pdb.set_trace`) now reuse the most recent ``Pdb`` instance that " +"calls ``Pdb.set_trace()``, instead of creating a new one each time. As a " +"result, all the instance specific data like ``display`` and ``commands`` are " +"preserved across Hard-coded breakpoints." msgstr "" msgid "" @@ -18122,31 +21127,32 @@ msgid "" msgstr "" msgid "" -":gh:`121313`: Limit the reading size in the :class:`multiprocessing." -"connection.Connection` class to 64 KiB to prevent memory overallocation and " -"unnecessary memory management system calls." +":gh:`121313`: Limit the reading size in " +"the :class:`multiprocessing.connection.Connection` class to 64 KiB to " +"prevent memory overallocation and unnecessary memory management system calls." msgstr "" msgid "" ":gh:`121332`: Fix constructor of :mod:`ast` nodes with custom " -"``_attributes``. Previously, passing custom attributes would raise a :py:exc:" -"`DeprecationWarning`. Passing arguments to the constructor that are not in " -"``_fields`` or ``_attributes`` remains deprecated. Patch by Jelle Zijlstra." +"``_attributes``. Previously, passing custom attributes would raise " +"a :py:exc:`DeprecationWarning`. Passing arguments to the constructor that " +"are not in ``_fields`` or ``_attributes`` remains deprecated. Patch by Jelle " +"Zijlstra." msgstr "" msgid "" -":gh:`121245`: Fix a bug in the handling of the command history of the new :" -"term:`REPL` that caused the history file to be wiped at REPL exit." +":gh:`121245`: Fix a bug in the handling of the command history of the " +"new :term:`REPL` that caused the history file to be wiped at REPL exit." msgstr "" msgid "" -":gh:`121210`: Handle AST nodes with missing runtime fields or attributes in :" -"func:`ast.compare`. Patch by Bénédikt Tran." +":gh:`121210`: Handle AST nodes with missing runtime fields or attributes " +"in :func:`ast.compare`. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`121163`: Add support for ``all`` as an valid ``action`` for :func:" -"`warnings.simplefilter` and :func:`warnings.filterwarnings`." +":gh:`121163`: Add support for ``all`` as an valid ``action`` " +"for :func:`warnings.simplefilter` and :func:`warnings.filterwarnings`." msgstr "" msgid "" @@ -18160,8 +21166,9 @@ msgid "" msgstr "" msgid "" -":gh:`87744`: Fix waitpid race while calling :meth:`~asyncio.subprocess." -"Process.send_signal` in asyncio. Patch by Kumar Aditya." +":gh:`87744`: Fix waitpid race while " +"calling :meth:`~asyncio.subprocess.Process.send_signal` in asyncio. Patch by " +"Kumar Aditya." msgstr "" msgid "" @@ -18181,8 +21188,8 @@ msgid "" msgstr "" msgid "" -":gh:`121025`: Improve the :meth:`~object.__repr__` of :class:`functools." -"partialmethod`. Patch by Bénédikt Tran." +":gh:`121025`: Improve the :meth:`~object.__repr__` " +"of :class:`functools.partialmethod`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -18202,11 +21209,11 @@ msgid "" msgstr "" msgid "" -":gh:`61103`: Support :c:expr:`float complex`, :c:expr:`double complex` and :" -"c:expr:`long double complex` C types in :mod:`ctypes` as :class:`~ctypes." -"c_float_complex`, :class:`~ctypes.c_double_complex` and :class:`~ctypes." -"c_longdouble_complex` if the compiler has C11 complex arithmetic. Patch by " -"Sergey B Kirpichev." +":gh:`61103`: Support :c:expr:`float complex`, :c:expr:`double complex` " +"and :c:expr:`long double complex` C types in :mod:`ctypes` " +"as :class:`~ctypes.c_float_complex`, :class:`~ctypes.c_double_complex` " +"and :class:`~ctypes.c_longdouble_complex` if the compiler has C11 complex " +"arithmetic. Patch by Sergey B Kirpichev." msgstr "" msgid ":gh:`120888`: Upgrade pip wheel bundled with ensurepip (pip 24.1.1)" @@ -18248,15 +21255,15 @@ msgid "" msgstr "" msgid "" -":gh:`41431`: Add :meth:`datetime.time.strptime` and :meth:`datetime.date." -"strptime`. Contributed by Wannes Boeykens." +":gh:`41431`: Add :meth:`datetime.time.strptime` " +"and :meth:`datetime.date.strptime`. Contributed by Wannes Boeykens." msgstr "" msgid "" -":gh:`120743`: :term:`Soft deprecate ` :func:`os.popen` and :" -"func:`os.spawn* ` functions. They should no longer be used to " -"write new code. The :mod:`subprocess` module is recommended instead. Patch " -"by Victor Stinner." +":gh:`120743`: :term:`Soft deprecate ` :func:`os.popen` " +"and :func:`os.spawn* ` functions. They should no longer be used " +"to write new code. The :mod:`subprocess` module is recommended instead. " +"Patch by Victor Stinner." msgstr "" msgid "" @@ -18278,17 +21285,17 @@ msgid "" msgstr "" msgid "" -":gh:`118710`: :class:`ipaddress.IPv4Address` and :class:`ipaddress." -"IPv6Address` attributes ``version`` and ``max_prefixlen`` are now available " -"on the class." +":gh:`118710`: :class:`ipaddress.IPv4Address` " +"and :class:`ipaddress.IPv6Address` attributes ``version`` and " +"``max_prefixlen`` are now available on the class." msgstr "" msgid ":gh:`120633`: Move scrollbar and remove tear-off menus in turtledemo." msgstr "" msgid "" -":gh:`120606`: Allow users to use EOF to exit ``commands`` definition in :mod:" -"`pdb`" +":gh:`120606`: Allow users to use EOF to exit ``commands`` definition " +"in :mod:`pdb`" msgstr "" msgid "" @@ -18307,9 +21314,9 @@ msgid "" msgstr "" msgid "" -":gh:`120388`: Improve a warning message when a test method in :mod:" -"`unittest` returns something other than ``None``. Now we show the returned " -"object type and optional asyncio-related tip." +":gh:`120388`: Improve a warning message when a test method " +"in :mod:`unittest` returns something other than ``None``. Now we show the " +"returned object type and optional asyncio-related tip." msgstr "" msgid "" @@ -18330,8 +21337,8 @@ msgstr "" msgid "" ":gh:`119180`: As part of implementing :pep:`649` and :pep:`749`, add a new " "module ``annotationlib``. Add support for unresolved forward references in " -"annotations to :mod:`dataclasses`, :class:`typing.TypedDict`, and :class:" -"`typing.NamedTuple`." +"annotations to :mod:`dataclasses`, :class:`typing.TypedDict`, " +"and :class:`typing.NamedTuple`." msgstr "" msgid "" @@ -18357,15 +21364,17 @@ msgid "" msgstr "" msgid "" -":gh:`114053`: Fix erroneous :exc:`NameError` when calling :func:`inspect." -"get_annotations` with ``eval_str=True``` on a class that made use of :pep:" -"`695` type parameters in a module that had ``from __future__ import " -"annotations`` at the top of the file. Patch by Alex Waygood." +":gh:`114053`: Fix erroneous :exc:`NameError` when " +"calling :func:`inspect.get_annotations` with ``eval_str=True``` on a class " +"that made use of :pep:`695` type parameters in a module that had ``from " +"__future__ import annotations`` at the top of the file. Patch by Alex " +"Waygood." msgstr "" msgid "" -":gh:`120268`: Prohibit passing ``None`` to pure-Python :meth:`datetime.date." -"fromtimestamp` to achieve consistency with C-extension implementation." +":gh:`120268`: Prohibit passing ``None`` to pure-" +"Python :meth:`datetime.date.fromtimestamp` to achieve consistency with C-" +"extension implementation." msgstr "" msgid "" @@ -18392,9 +21401,9 @@ msgid "" msgstr "" msgid "" -":gh:`120157`: Remove unused constant ``concurrent.futures._base." -"_FUTURE_STATES`` in :mod:`concurrent.futures`. Patch by Clinton Christian " -"(pygeek)." +":gh:`120157`: Remove unused constant " +"``concurrent.futures._base._FUTURE_STATES`` in :mod:`concurrent.futures`. " +"Patch by Clinton Christian (pygeek)." msgstr "" msgid "" @@ -18419,9 +21428,9 @@ msgid "" msgstr "" msgid "" -":gh:`120029`: Expose :class:`symtable.Symbol` methods :meth:`~symtable." -"Symbol.is_free_class`, :meth:`~symtable.Symbol.is_comp_iter` and :meth:" -"`~symtable.Symbol.is_comp_cell`. Patch by Bénédikt Tran." +":gh:`120029`: Expose :class:`symtable.Symbol` " +"methods :meth:`~symtable.Symbol.is_free_class`, :meth:`~symtable.Symbol.is_comp_iter` " +"and :meth:`~symtable.Symbol.is_comp_cell`. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -18432,8 +21441,8 @@ msgstr "" msgid "" ":gh:`120056`: Add :data:`!socket.IP_RECVERR` and :data:`!socket.IP_RECVTTL` " -"constants (both available since Linux 2.2). And :data:`!socket." -"IP_RECVORIGDSTADDR` constant (available since Linux 2.6.29)." +"constants (both available since Linux 2.2). And :data:`!" +"socket.IP_RECVORIGDSTADDR` constant (available since Linux 2.6.29)." msgstr "" msgid ":gh:`112672`: Support building :mod:`tkinter` with Tcl 9.0." @@ -18441,14 +21450,14 @@ msgstr "" msgid "" ":gh:`120057`: Added the :data:`os.environ.refresh() ` method to " -"update :data:`os.environ` with changes to the environment made by :func:`os." -"putenv`, by :func:`os.unsetenv`, or made outside Python in the same process. " -"Patch by Victor Stinner." +"update :data:`os.environ` with changes to the environment made " +"by :func:`os.putenv`, by :func:`os.unsetenv`, or made outside Python in the " +"same process. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`120029`: Expose :meth:`symtable.Symbol.is_type_parameter` in the :mod:" -"`symtable` module. Patch by Bénédikt Tran." +":gh:`120029`: Expose :meth:`symtable.Symbol.is_type_parameter` in " +"the :mod:`symtable` module. Patch by Bénédikt Tran." msgstr "" msgid "" @@ -18478,8 +21487,8 @@ msgid "" msgstr "" msgid "" -":gh:`117398`: The ``_datetime`` module (C implementation for :mod:" -"`datetime`) now supports being imported in multiple interpreters." +":gh:`117398`: The ``_datetime`` module (C implementation " +"for :mod:`datetime`) now supports being imported in multiple interpreters." msgstr "" msgid "" @@ -18488,9 +21497,9 @@ msgid "" msgstr "" msgid "" -":gh:`119838`: In mixed arithmetic operations with :class:`~fractions." -"Fraction` and complex, the fraction is now converted to :class:`float` " -"instead of :class:`complex`." +":gh:`119838`: In mixed arithmetic operations " +"with :class:`~fractions.Fraction` and complex, the fraction is now converted " +"to :class:`float` instead of :class:`complex`." msgstr "" msgid "" @@ -18499,8 +21508,8 @@ msgid "" msgstr "" msgid "" -":gh:`89727`: Fix issue with :func:`shutil.rmtree` where a :exc:" -"`RecursionError` is raised on deep directory trees." +":gh:`89727`: Fix issue with :func:`shutil.rmtree` where " +"a :exc:`RecursionError` is raised on deep directory trees." msgstr "" msgid "" @@ -18511,9 +21520,9 @@ msgid "" msgstr "" msgid "" -":gh:`89727`: Partially fix issue with :func:`shutil.rmtree` where a :exc:" -"`RecursionError` is raised on deep directory trees. A recursion error is no " -"longer raised when :data:`!rmtree.avoids_symlink_attacks` is false." +":gh:`89727`: Partially fix issue with :func:`shutil.rmtree` where " +"a :exc:`RecursionError` is raised on deep directory trees. A recursion error " +"is no longer raised when :data:`!rmtree.avoids_symlink_attacks` is false." msgstr "" msgid "" @@ -18546,9 +21555,9 @@ msgid "" msgstr "" msgid "" -":gh:`119562`: Remove :class:`!ast.Num`, :class:`!ast.Str`, :class:`!ast." -"Bytes`, :class:`!ast.NameConstant` and :class:`!ast.Ellipsis`. They had all " -"emitted deprecation warnings since Python 3.12. Patch by Alex Waygood." +":gh:`119562`: Remove :class:`!ast.Num`, :class:`!ast.Str`, :class:`!" +"ast.Bytes`, :class:`!ast.NameConstant` and :class:`!ast.Ellipsis`. They had " +"all emitted deprecation warnings since Python 3.12. Patch by Alex Waygood." msgstr "" msgid "" @@ -18573,9 +21582,9 @@ msgid "" msgstr "" msgid "" -":gh:`113892`: Now, the method ``sock_connect`` of :class:`asyncio." -"ProactorEventLoop` raises a :exc:`ValueError` if given socket is not in non-" -"blocking mode, as well as in other loop implementations." +":gh:`113892`: Now, the method ``sock_connect`` " +"of :class:`asyncio.ProactorEventLoop` raises a :exc:`ValueError` if given " +"socket is not in non-blocking mode, as well as in other loop implementations." msgstr "" msgid "" @@ -18585,9 +21594,9 @@ msgstr "" msgid "" ":gh:`69214`: Fix ``fcntl.ioctl()`` *request* parameter: use an ``unsigned " -"long`` instead of an ``unsigned int`` for the *request* parameter of :func:" -"`fcntl.ioctl` to support requests larger than ``UINT_MAX``. Patch by Victor " -"Stinner." +"long`` instead of an ``unsigned int`` for the *request* parameter " +"of :func:`fcntl.ioctl` to support requests larger than ``UINT_MAX``. Patch " +"by Victor Stinner." msgstr "" msgid "" @@ -18642,9 +21651,10 @@ msgid "" msgstr "" msgid "" -":gh:`119189`: When using the ``**`` operator or :func:`pow` with :class:" -"`~fractions.Fraction` as the base and an exponent that is not rational, a " -"float, or a complex, the fraction is no longer converted to a float." +":gh:`119189`: When using the ``**`` operator or :func:`pow` " +"with :class:`~fractions.Fraction` as the base and an exponent that is not " +"rational, a float, or a complex, the fraction is no longer converted to a " +"float." msgstr "" msgid "" @@ -18653,8 +21663,8 @@ msgid "" msgstr "" msgid "" -":gh:`119121`: Fix a NameError happening in ``asyncio.staggered." -"staggered_race``. This function is now tested." +":gh:`119121`: Fix a NameError happening in " +"``asyncio.staggered.staggered_race``. This function is now tested." msgstr "" msgid "" @@ -18684,16 +21694,16 @@ msgid "" msgstr "" msgid "" -":gh:`82805`: Support single-dot file extensions in :attr:`pathlib.PurePath." -"suffix` and related attributes and methods. For example, the :attr:`~pathlib." -"PurePath.suffixes` of ``PurePath('foo.bar.')`` are now ``['.bar', '.']`` " -"rather than ``[]``. This brings file extension splitting in line with :func:" -"`os.path.splitext`." +":gh:`82805`: Support single-dot file extensions " +"in :attr:`pathlib.PurePath.suffix` and related attributes and methods. For " +"example, the :attr:`~pathlib.PurePath.suffixes` of ``PurePath('foo.bar.')`` " +"are now ``['.bar', '.']`` rather than ``[]``. This brings file extension " +"splitting in line with :func:`os.path.splitext`." msgstr "" msgid "" -":gh:`118924`: Remove :data:`!version` and :data:`!version_info` from :mod:" -"`sqlite3`. Patch by Hugo van Kemenade." +":gh:`118924`: Remove :data:`!version` and :data:`!version_info` " +"from :mod:`sqlite3`. Patch by Hugo van Kemenade." msgstr "" msgid "" @@ -18702,8 +21712,8 @@ msgid "" msgstr "" msgid "" -":gh:`118895`: Setting attributes on :data:`typing.NoDefault` now raises :exc:" -"`AttributeError` instead of :exc:`TypeError`." +":gh:`118895`: Setting attributes on :data:`typing.NoDefault` now " +"raises :exc:`AttributeError` instead of :exc:`TypeError`." msgstr "" msgid "" @@ -18712,14 +21722,14 @@ msgid "" msgstr "" msgid "" -":gh:`118827`: Remove deprecated :class:`!Quoter` class from :mod:`urllib." -"parse`. It had previously raised a :exc:`DeprecationWarning` since Python " -"3.11. Patch by Nikita Sobolev." +":gh:`118827`: Remove deprecated :class:`!Quoter` class " +"from :mod:`urllib.parse`. It had previously raised " +"a :exc:`DeprecationWarning` since Python 3.11. Patch by Nikita Sobolev." msgstr "" msgid "" -":gh:`118824`: Remove deprecated :func:`!pty.master_open` and :func:`!pty." -"slave_open`. Use :func:`pty.openpty` instead. Patch by Nikita Sobolev." +":gh:`118824`: Remove deprecated :func:`!pty.master_open` and :func:`!" +"pty.slave_open`. Use :func:`pty.openpty` instead. Patch by Nikita Sobolev." msgstr "" msgid "" @@ -18739,14 +21749,14 @@ msgid "" msgstr "" msgid "" -":gh:`118803`: :class:`!typing.ByteString` and :class:`!collections.abc." -"ByteString` are removed. They had previously raised a :exc:" -"`DeprecationWarning` since Python 3.12." +":gh:`118803`: :class:`!typing.ByteString` and :class:`!" +"collections.abc.ByteString` are removed. They had previously raised " +"a :exc:`DeprecationWarning` since Python 3.12." msgstr "" msgid "" -":gh:`118798`: The *isdst* parameter has been removed from :func:`email.utils." -"localtime`. Patch by Hugo van Kemenade." +":gh:`118798`: The *isdst* parameter has been removed " +"from :func:`email.utils.localtime`. Patch by Hugo van Kemenade." msgstr "" msgid "" @@ -18757,28 +21767,29 @@ msgid ":gh:`118760`: Fix errors in calling Tkinter bindings on Windows." msgstr "" msgid "" -":gh:`74033`: Drop support for passing keyword arguments to :class:`pathlib." -"Path`." +":gh:`74033`: Drop support for passing keyword arguments " +"to :class:`pathlib.Path`." msgstr "" msgid "" -":gh:`101357`: Suppress all :exc:`OSError` exceptions from :meth:`pathlib." -"Path.exists` and ``is_*()`` methods, rather than a selection of more common " -"errors. The new behaviour is consistent with :func:`os.path.exists`, :func:" -"`os.path.isdir`, etc. Use :meth:`pathlib.Path.stat` to retrieve the file " -"status without suppressing exceptions." +":gh:`101357`: Suppress all :exc:`OSError` exceptions " +"from :meth:`pathlib.Path.exists` and ``is_*()`` methods, rather than a " +"selection of more common errors. The new behaviour is consistent " +"with :func:`os.path.exists`, :func:`os.path.isdir`, etc. " +"Use :meth:`pathlib.Path.stat` to retrieve the file status without " +"suppressing exceptions." msgstr "" msgid "" -":gh:`78707`: Drop support for passing additional positional arguments to :" -"meth:`pathlib.PurePath.relative_to` and :meth:`~pathlib.PurePath." -"is_relative_to`." +":gh:`78707`: Drop support for passing additional positional arguments " +"to :meth:`pathlib.PurePath.relative_to` " +"and :meth:`~pathlib.PurePath.is_relative_to`." msgstr "" msgid "" -":gh:`118507`: Fix :func:`os.path.isfile` on Windows for pipes. Speedup :func:" -"`os.path.isjunction` and :func:`os.path.lexists` on Windows with a native " -"implementation." +":gh:`118507`: Fix :func:`os.path.isfile` on Windows for pipes. " +"Speedup :func:`os.path.isjunction` and :func:`os.path.lexists` on Windows " +"with a native implementation." msgstr "" msgid "" @@ -18820,10 +21831,10 @@ msgstr "" msgid "" ":gh:`106531`: In :mod:`importlib.resources`, sync with `importlib_resources " -"6.3.2 `_, including: ``MultiplexedPath`` now expects ``Traversable`` " -"paths, deprecating string arguments to ``MultiplexedPath``; Enabled support " -"for resources in namespace packages in zip files; Fixed " +"6.3.2 `_, including: ``MultiplexedPath`` now expects " +"``Traversable`` paths, deprecating string arguments to ``MultiplexedPath``; " +"Enabled support for resources in namespace packages in zip files; Fixed " "``NotADirectoryError`` when calling files on a subdirectory of a namespace " "package." msgstr "" @@ -18873,23 +21884,23 @@ msgstr "" msgid "" ":gh:`109109`: You can now get the raw TLS certificate chains from TLS " -"connections via :meth:`ssl.SSLSocket.get_verified_chain` and :meth:`ssl." -"SSLSocket.get_unverified_chain` methods." +"connections via :meth:`ssl.SSLSocket.get_verified_chain` " +"and :meth:`ssl.SSLSocket.get_unverified_chain` methods." msgstr "" msgid "Contributed by Mateusz Nowak." msgstr "" msgid "" -":gh:`105623`: Fix performance degradation in :class:`logging.handlers." -"RotatingFileHandler`. Patch by Craig Robson." +":gh:`105623`: Fix performance degradation " +"in :class:`logging.handlers.RotatingFileHandler`. Patch by Craig Robson." msgstr "" msgid "" ":gh:`102450`: Add missing ISO-8601 24:00 alternative to midnight of next day " -"to :meth:`datetime.datetime.fromisoformat` and :meth:`datetime.time." -"fromisoformat`. Patch by Izan \"TizzySaurus\" Robinson (tizzysaurus@gmail." -"com)" +"to :meth:`datetime.datetime.fromisoformat` " +"and :meth:`datetime.time.fromisoformat`. Patch by Izan \"TizzySaurus\" " +"Robinson (tizzysaurus@gmail.com)" msgstr "" msgid "" @@ -18904,9 +21915,9 @@ msgid "" msgstr "" msgid "" -":gh:`103194`: Prepare Tkinter for C API changes in Tcl 8.7/9.0 to avoid :" -"class:`!_tkinter.Tcl_Obj` being unexpectedly returned instead of :class:" -"`bool`, :class:`str`, :class:`bytearray`, or :class:`int`." +":gh:`103194`: Prepare Tkinter for C API changes in Tcl 8.7/9.0 to " +"avoid :class:`!_tkinter.Tcl_Obj` being unexpectedly returned instead " +"of :class:`bool`, :class:`str`, :class:`bytearray`, or :class:`int`." msgstr "" msgid "" @@ -18929,14 +21940,15 @@ msgid "" msgstr "" msgid "" -":issue:`45767`: Fix integer conversion in :func:`os.major`, :func:`os." -"minor`, and :func:`os.makedev`. Support device numbers larger than " -"``2**63-1``. Support non-existent device number (``NODEV``)." +":issue:`45767`: Fix integer conversion " +"in :func:`os.major`, :func:`os.minor`, and :func:`os.makedev`. Support " +"device numbers larger than ``2**63-1``. Support non-existent device number " +"(``NODEV``)." msgstr "" msgid "" -":issue:`44864`: Do not translate user-provided strings in :class:`argparse." -"ArgumentParser`." +":issue:`44864`: Do not translate user-provided strings " +"in :class:`argparse.ArgumentParser`." msgstr "" msgid "" @@ -18950,9 +21962,9 @@ msgid "" msgstr "" msgid "" -":gh:`67693`: Fix :func:`urllib.parse.urlunparse` and :func:`urllib.parse." -"urlunsplit` for URIs with path starting with multiple slashes and no " -"authority. Based on patch by Ashwin Ramaswami." +":gh:`67693`: Fix :func:`urllib.parse.urlunparse` " +"and :func:`urllib.parse.urlunsplit` for URIs with path starting with " +"multiple slashes and no authority. Based on patch by Ashwin Ramaswami." msgstr "" msgid "" @@ -18976,8 +21988,8 @@ msgid "" msgstr "" msgid "" -":gh:`78889`: Stop Shell freezes by blocking user access to non-method sys." -"stdout.shell attributes, which are all private." +":gh:`78889`: Stop Shell freezes by blocking user access to non-method " +"sys.stdout.shell attributes, which are all private." msgstr "" msgid "" @@ -18992,8 +22004,8 @@ msgstr "" msgid "" ":gh:`124872`: Added definitions for :term:`context`, :term:`current " "context`, and :term:`context management protocol`, updated related " -"definitions to be consistent, and expanded the documentation for :class:" -"`contextvars.Context`." +"definitions to be consistent, and expanded the documentation " +"for :class:`contextvars.Context`." msgstr "" msgid "" @@ -19049,8 +22061,8 @@ msgid "" msgstr "" msgid "" -":gh:`119574`: Added some missing environment variables to the output of :" -"option:`--help-env`." +":gh:`119574`: Added some missing environment variables to the output " +"of :option:`--help-env`." msgstr "" msgid "" @@ -19071,8 +22083,9 @@ msgid "" msgstr "" msgid "" -":gh:`125221`: Fix possible race condition when calling :meth:`~object." -"__reduce_ex__` for the first time in the free threading build." +":gh:`125221`: Fix possible race condition when " +"calling :meth:`~object.__reduce_ex__` for the first time in the free " +"threading build." msgstr "" msgid "" @@ -19098,10 +22111,10 @@ msgid "" msgstr "" msgid "" -":gh:`123378`: Fix a crash in the :meth:`~object.__str__` method of :exc:" -"`UnicodeError` objects when the :attr:`UnicodeError.start` and :attr:" -"`UnicodeError.end` values are invalid or out-of-range. Patch by Bénédikt " -"Tran." +":gh:`123378`: Fix a crash in the :meth:`~object.__str__` method " +"of :exc:`UnicodeError` objects when the :attr:`UnicodeError.start` " +"and :attr:`UnicodeError.end` values are invalid or out-of-range. Patch by " +"Bénédikt Tran." msgstr "" msgid "" @@ -19145,8 +22158,8 @@ msgid "" msgstr "" msgid "" -":gh:`124442`: Fix nondeterminism in compilation by sorting the value of :" -"attr:`~type.__static_attributes__`. Patch by kp2pml30." +":gh:`124442`: Fix nondeterminism in compilation by sorting the value " +"of :attr:`~type.__static_attributes__`. Patch by kp2pml30." msgstr "" msgid "" @@ -19196,17 +22209,17 @@ msgid "" msgstr "" msgid "" -":gh:`123923`: The ``f_executable`` field in the internal :c:struct:" -"`_PyInterpreterFrame` struct now uses a tagged pointer. Profilers and " -"debuggers that uses this field should clear the least significant bit to " -"recover the :c:expr:`PyObject*` pointer." +":gh:`123923`: The ``f_executable`` field in the " +"internal :c:struct:`_PyInterpreterFrame` struct now uses a tagged pointer. " +"Profilers and debuggers that uses this field should clear the least " +"significant bit to recover the :c:expr:`PyObject*` pointer." msgstr "" msgid "" ":gh:`77894`: Fix possible crash in the garbage collector when it tries to " -"break a reference loop containing a :class:`memoryview` object. Now a :class:" -"`!memoryview` object can only be cleared if there are no buffers that refer " -"it." +"break a reference loop containing a :class:`memoryview` object. Now " +"a :class:`!memoryview` object can only be cleared if there are no buffers " +"that refer it." msgstr "" msgid "" @@ -19243,8 +22256,8 @@ msgid "" msgstr "" msgid "" -":gh:`123562`: Improve :exc:`SyntaxError` message for using ``case ... as ..." -"`` with not a name." +":gh:`123562`: Improve :exc:`SyntaxError` message for using ``case ... " +"as ...`` with not a name." msgstr "" msgid "" @@ -19311,9 +22324,9 @@ msgid "" msgstr "" msgid "" -":gh:`122298`: Restore printout of GC stats when ``gc.set_debug(gc." -"DEBUG_STATS)`` is called. This feature was accidentally removed when " -"implementing incremental GC." +":gh:`122298`: Restore printout of GC stats when " +"``gc.set_debug(gc.DEBUG_STATS)`` is called. This feature was accidentally " +"removed when implementing incremental GC." msgstr "" msgid "" @@ -19332,8 +22345,8 @@ msgid "" msgstr "" msgid "" -":gh:`123048`: Fix a bug where pattern matching code could emit a :opcode:" -"`JUMP_FORWARD` with no source location." +":gh:`123048`: Fix a bug where pattern matching code could emit " +"a :opcode:`JUMP_FORWARD` with no source location." msgstr "" msgid "" @@ -19352,8 +22365,8 @@ msgid "" msgstr "" msgid "" -":gh:`123022`: Fix crash in free-threaded build when calling :c:func:" -"`Py_Initialize` from a non-main thread." +":gh:`123022`: Fix crash in free-threaded build when " +"calling :c:func:`Py_Initialize` from a non-main thread." msgstr "" msgid ":gh:`118093`: Add three specializations for :opcode:`CALL_KW`:" @@ -19402,14 +22415,14 @@ msgstr "" msgid "" ":gh:`122527`: Fix a crash that occurred when a ``PyStructSequence`` was " -"deallocated after its type's dictionary was cleared by the GC. The type's :" -"c:member:`~PyTypeObject.tp_basicsize` now accounts for non-sequence fields " -"that aren't included in the :c:macro:`Py_SIZE` of the sequence." +"deallocated after its type's dictionary was cleared by the GC. The " +"type's :c:member:`~PyTypeObject.tp_basicsize` now accounts for non-sequence " +"fields that aren't included in the :c:macro:`Py_SIZE` of the sequence." msgstr "" msgid "" -":gh:`122445`: Add only fields which are modified via self.* to :attr:`~type." -"__static_attributes__`." +":gh:`122445`: Add only fields which are modified via self.* " +"to :attr:`~type.__static_attributes__`." msgstr "" msgid "" @@ -19448,10 +22461,10 @@ msgid "" msgstr "" msgid "" -":gh:`122234`: Specializations for sums with float and complex inputs in :" -"func:`sum` now always use compensated summation. Also, for integer items in " -"above specializations: :c:func:`PyLong_AsDouble` is used, instead of :c:func:" -"`PyLong_AsLongAndOverflow`. Patch by Sergey B Kirpichev." +":gh:`122234`: Specializations for sums with float and complex inputs " +"in :func:`sum` now always use compensated summation. Also, for integer " +"items in above specializations: :c:func:`PyLong_AsDouble` is used, instead " +"of :c:func:`PyLong_AsLongAndOverflow`. Patch by Sergey B Kirpichev." msgstr "" msgid "" @@ -19460,8 +22473,8 @@ msgid "" msgstr "" msgid "" -":gh:`122160`: Remove the ``BUILD_CONST_KEY_MAP`` opcode. Use :opcode:" -"`BUILD_MAP` instead." +":gh:`122160`: Remove the ``BUILD_CONST_KEY_MAP`` opcode. " +"Use :opcode:`BUILD_MAP` instead." msgstr "" msgid "" @@ -19504,8 +22517,8 @@ msgid "" msgstr "" msgid "" -":gh:`121795`: Improve performance of set membership testing, ``set." -"remove()`` and ``set.discard()`` when the argument is a set." +":gh:`121795`: Improve performance of set membership testing, " +"``set.remove()`` and ``set.discard()`` when the argument is a set." msgstr "" msgid "" @@ -19536,8 +22549,8 @@ msgstr "" msgid "" ":gh:`121297`: Previously, incorrect usage of :keyword:`await` or " "asynchronous comprehensions in code removed by the :option:`-O` option was " -"not flagged by the Python compiler. Now, such code raises :exc:" -"`SyntaxError`. Patch by Jelle Zijlstra." +"not flagged by the Python compiler. Now, such code " +"raises :exc:`SyntaxError`. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -19570,11 +22583,12 @@ msgid ":gh:`121439`: Allow tuples of length 20 in the freelist to be reused." msgstr "" msgid "" -":gh:`121288`: :exc:`ValueError` messages for :meth:`list.index`, :meth:" -"`range.index`, :meth:`!deque.index`, :meth:`!deque.remove` and :meth:`!" -"ShareableList.index` no longer contain the repr of the searched value (which " -"can be arbitrary large) and are consistent with error messages for other :" -"meth:`~sequence.index` and :meth:`~sequence.remove` methods." +":gh:`121288`: :exc:`ValueError` messages " +"for :meth:`list.index`, :meth:`range.index`, :meth:`!deque.index`, :meth:`!" +"deque.remove` and :meth:`!ShareableList.index` no longer contain the repr of " +"the searched value (which can be arbitrary large) and are consistent with " +"error messages for other :meth:`~sequence.index` " +"and :meth:`~sequence.remove` methods." msgstr "" msgid "" @@ -19606,9 +22620,9 @@ msgid "" msgstr "" msgid "" -":gh:`121115`: :c:func:`PyLong_AsNativeBytes` no longer uses :meth:`~object." -"__index__` methods by default. The ``Py_ASNATIVEBYTES_ALLOW_INDEX`` flag has " -"been added to allow it." +":gh:`121115`: :c:func:`PyLong_AsNativeBytes` no longer " +"uses :meth:`~object.__index__` methods by default. The " +"``Py_ASNATIVEBYTES_ALLOW_INDEX`` flag has been added to allow it." msgstr "" msgid "" @@ -19699,15 +22713,15 @@ msgid "" msgstr "" msgid "" -":gh:`120380`: Fix Python implementation of :class:`pickle.Pickler` for :" -"class:`bytes` and :class:`bytearray` objects when using protocol version 5. " -"Patch by Bénédikt Tran." +":gh:`120380`: Fix Python implementation of :class:`pickle.Pickler` " +"for :class:`bytes` and :class:`bytearray` objects when using protocol " +"version 5. Patch by Bénédikt Tran." msgstr "" msgid "" -":gh:`120397`: Improve the throughput by up to two times for the :meth:`str." -"count`, :meth:`bytes.count` and :meth:`bytearray.count` methods for counting " -"single characters." +":gh:`120397`: Improve the throughput by up to two times for " +"the :meth:`str.count`, :meth:`bytes.count` and :meth:`bytearray.count` " +"methods for counting single characters." msgstr "" msgid "" @@ -19756,8 +22770,9 @@ msgid "" msgstr "" msgid "" -":gh:`120097`: ``FrameLocalsProxy`` now subclasses ``collections.abc." -"Mapping`` and can be matched as a mapping in ``match`` statements" +":gh:`120097`: ``FrameLocalsProxy`` now subclasses " +"``collections.abc.Mapping`` and can be matched as a mapping in ``match`` " +"statements" msgstr "" msgid "" @@ -19788,9 +22803,10 @@ msgid "" msgstr "" msgid "" -":gh:`119180`: :func:`classmethod` and :func:`staticmethod` now wrap the :" -"attr:`~object.__annotations__` and :attr:`~object.__annotate__` attributes " -"of their underlying callable lazily. See :pep:`649`. Patch by Jelle Zijlstra." +":gh:`119180`: :func:`classmethod` and :func:`staticmethod` now wrap " +"the :attr:`~object.__annotations__` and :attr:`~object.__annotate__` " +"attributes of their underlying callable lazily. See :pep:`649`. Patch by " +"Jelle Zijlstra." msgstr "" msgid "" @@ -19803,8 +22819,8 @@ msgid ":gh:`118934`: Make ``PyEval_GetLocals`` return borrowed reference" msgstr "" msgid "" -":gh:`119740`: Remove the previously-deprecated delegation of :func:`int` to :" -"meth:`~object.__trunc__`." +":gh:`119740`: Remove the previously-deprecated delegation of :func:`int` " +"to :meth:`~object.__trunc__`." msgstr "" msgid "" @@ -19872,8 +22888,9 @@ msgid "" msgstr "" msgid "" -":gh:`119180`: Replace :opcode:`!LOAD_ASSERTION_ERROR` opcode with :opcode:" -"`LOAD_COMMON_CONSTANT` and add support for :exc:`NotImplementedError`." +":gh:`119180`: Replace :opcode:`!LOAD_ASSERTION_ERROR` opcode " +"with :opcode:`LOAD_COMMON_CONSTANT` and add support " +"for :exc:`NotImplementedError`." msgstr "" msgid "" @@ -19933,13 +22950,14 @@ msgid "" msgstr "" msgid "" -":gh:`118767`: Using :data:`NotImplemented` in a boolean context now raises :" -"exc:`TypeError`. Contributed by Jelle Zijlstra." +":gh:`118767`: Using :data:`NotImplemented` in a boolean context now " +"raises :exc:`TypeError`. Contributed by Jelle Zijlstra." msgstr "" msgid "" -":gh:`118561`: Fix race condition in free-threaded build where :meth:`list." -"extend` could expose uninitialised memory to concurrent readers." +":gh:`118561`: Fix race condition in free-threaded build " +"where :meth:`list.extend` could expose uninitialised memory to concurrent " +"readers." msgstr "" msgid "" @@ -19951,8 +22969,8 @@ msgid "" msgstr "" msgid "" -":gh:`115801`: Raise ``TypeError`` when passing a string to :func:`difflib." -"unified_diff` and :func:`difflib.context_diff`." +":gh:`115801`: Raise ``TypeError`` when passing a string " +"to :func:`difflib.unified_diff` and :func:`difflib.context_diff`." msgstr "" msgid "" @@ -19961,13 +22979,13 @@ msgid "" msgstr "" msgid "" -":gh:`117195`: Avoid assertion failure for debug builds when calling ``object." -"__sizeof__(1)``" +":gh:`117195`: Avoid assertion failure for debug builds when calling " +"``object.__sizeof__(1)``" msgstr "" msgid "" -":gh:`116022`: Improve the :meth:`~object.__repr__` output of :class:`~ast." -"AST` nodes." +":gh:`116022`: Improve the :meth:`~object.__repr__` output " +"of :class:`~ast.AST` nodes." msgstr "" msgid "" @@ -19980,8 +22998,8 @@ msgid ":gh:`113190`: :c:func:`Py_Finalize` now deletes all interned strings." msgstr "" msgid "" -":gh:`84978`: Add class methods :meth:`float.from_number` and :meth:`complex." -"from_number`." +":gh:`84978`: Add class methods :meth:`float.from_number` " +"and :meth:`complex.from_number`." msgstr "" msgid "" @@ -20040,8 +23058,8 @@ msgid "" msgstr "" msgid "" -":gh:`107954`: Add functions to configure the Python initialization (:pep:" -"`741`):" +":gh:`107954`: Add functions to configure the Python initialization " +"(:pep:`741`):" msgstr "" msgid ":c:func:`PyInitConfig_Create`" @@ -20104,17 +23122,18 @@ msgid ":c:func:`PyConfig_Names`" msgstr "" msgid "" -":gh:`123465`: :c:macro:`Py_RELATIVE_OFFSET` is now allowed in :c:type:" -"`PyMemberDef` for the special offset member ``\"__vectorcalloffset__\"``, as " -"well as the discouraged special offset members ``\"__dictoffset__\"`` and " -"``\"__weaklistoffset__\"``" +":gh:`123465`: :c:macro:`Py_RELATIVE_OFFSET` is now allowed " +"in :c:type:`PyMemberDef` for the special offset member " +"``\"__vectorcalloffset__\"``, as well as the discouraged special offset " +"members ``\"__dictoffset__\"`` and ``\"__weaklistoffset__\"``" msgstr "" msgid "" -":gh:`100554`: Added a slot ``Py_tp_vectorcall`` to set :c:member:" -"`~PyTypeObject.tp_vectorcall` via the :c:func:`PyType_FromSpec` function " -"family. Limited API extensions can use this feature to provide more " -"efficient vector call-based implementation of ``__new__`` and ``__init__``." +":gh:`100554`: Added a slot ``Py_tp_vectorcall`` to " +"set :c:member:`~PyTypeObject.tp_vectorcall` via " +"the :c:func:`PyType_FromSpec` function family. Limited API extensions can " +"use this feature to provide more efficient vector call-based implementation " +"of ``__new__`` and ``__init__``." msgstr "" msgid "" @@ -20134,9 +23153,9 @@ msgid "" msgstr "" msgid "" -":gh:`105201`: Add :c:func:`PyIter_NextItem` to replace :c:func:" -"`PyIter_Next`, which has an ambiguous return value. Patch by Irit Katriel " -"and Erlend Aasland." +":gh:`105201`: Add :c:func:`PyIter_NextItem` to " +"replace :c:func:`PyIter_Next`, which has an ambiguous return value. Patch by " +"Irit Katriel and Erlend Aasland." msgstr "" msgid ":gh:`121489`: Export private :c:func:`!_PyBytes_Join` again." @@ -20162,10 +23181,9 @@ msgstr "" msgid "" "Several functions that take ``char *`` are now documented as possibly " "preventing string objects from being garbage collected; refer to their " -"documentation for details: :c:func:`PyUnicode_InternFromString`, :c:func:" -"`PyDict_SetItemString`, :c:func:`PyObject_SetAttrString`, :c:func:" -"`PyObject_DelAttrString`, :c:func:`PyUnicode_InternFromString`, and " -"``PyModule_Add*`` convenience functions." +"documentation for " +"details: :c:func:`PyUnicode_InternFromString`, :c:func:`PyDict_SetItemString`, :c:func:`PyObject_SetAttrString`, :c:func:`PyObject_DelAttrString`, :c:func:`PyUnicode_InternFromString`, " +"and ``PyModule_Add*`` convenience functions." msgstr "" msgid "" @@ -20260,8 +23278,8 @@ msgid "" msgstr "" msgid "" -":gh:`119182`: Add a new :c:type:`PyUnicodeWriter` API to create a Python :" -"class:`str` object:" +":gh:`119182`: Add a new :c:type:`PyUnicodeWriter` API to create a " +"Python :class:`str` object:" msgstr "" msgid ":c:func:`PyUnicodeWriter_Create`." @@ -20307,17 +23325,17 @@ msgstr "" msgid "" ":gh:`119775`: Creating :c:data:`immutable types ` " -"with mutable bases was deprecated since 3.12 and now raises a :exc:" -"`TypeError`." +"with mutable bases was deprecated since 3.12 and now raises " +"a :exc:`TypeError`." msgstr "" msgid "" -":gh:`119585`: Fix crash when a thread state that was created by :c:func:" -"`PyGILState_Ensure` calls a destructor that during :c:func:" -"`PyThreadState_Clear` that calls back into :c:func:`PyGILState_Ensure` and :" -"c:func:`PyGILState_Release`. This might occur when in the free-threaded " -"build or when using thread-local variables whose destructors call :c:func:" -"`PyGILState_Ensure`." +":gh:`119585`: Fix crash when a thread state that was created " +"by :c:func:`PyGILState_Ensure` calls a destructor that " +"during :c:func:`PyThreadState_Clear` that calls back " +"into :c:func:`PyGILState_Ensure` and :c:func:`PyGILState_Release`. This " +"might occur when in the free-threaded build or when using thread-local " +"variables whose destructors call :c:func:`PyGILState_Ensure`." msgstr "" msgid "" @@ -20336,9 +23354,9 @@ msgid "" msgstr "" msgid "" -":gh:`119333`: Add :c:func:`PyContext_AddWatcher` and :c:func:" -"`PyContext_ClearWatcher` APIs to register callbacks to receive notification " -"on enter and exit of context objects." +":gh:`119333`: Add :c:func:`PyContext_AddWatcher` " +"and :c:func:`PyContext_ClearWatcher` APIs to register callbacks to receive " +"notification on enter and exit of context objects." msgstr "" msgid "" @@ -20440,8 +23458,8 @@ msgid ":gh:`123418`: Updated Android build to use OpenSSL 3.0.15." msgstr "" msgid "" -":gh:`123297`: Propagate the value of ``LDFLAGS`` to ``LDCXXSHARED`` in :mod:" -"`sysconfig`. Patch by Pablo Galindo" +":gh:`123297`: Propagate the value of ``LDFLAGS`` to ``LDCXXSHARED`` " +"in :mod:`sysconfig`. Patch by Pablo Galindo" msgstr "" msgid ":gh:`121634`: Allow for specifying the target compile triple for WASI." @@ -20519,9 +23537,9 @@ msgstr "" msgid "" ":gh:`118943`: Fix a possible race condition affecting parallel builds " -"configured with ``--enable-experimental-jit``, in which :exc:" -"`FileNotFoundError` could be caused by another process already moving " -"``jit_stencils.h.new`` to ``jit_stencils.h``." +"configured with ``--enable-experimental-jit``, in " +"which :exc:`FileNotFoundError` could be caused by another process already " +"moving ``jit_stencils.h.new`` to ``jit_stencils.h``." msgstr "" msgid "" @@ -20615,8 +23633,8 @@ msgstr "" msgid "" ":gh:`95382`: Improve performance of :func:`json.dumps` and :func:`json.dump` " -"when using the argument *indent*. Depending on the data the encoding using :" -"func:`json.dumps` with *indent* can be up to 2 to 3 times faster." +"when using the argument *indent*. Depending on the data the encoding " +"using :func:`json.dumps` with *indent* can be up to 2 to 3 times faster." msgstr "" msgid "" @@ -20649,10 +23667,10 @@ msgid "" msgstr "" msgid "" -":gh:`118164`: Break a loop between the Python implementation of the :mod:" -"`decimal` module and the Python code for integer to string conversion. Also " -"optimize integer to string conversion for values in the range from 9_000 to " -"135_000 decimal digits." +":gh:`118164`: Break a loop between the Python implementation of " +"the :mod:`decimal` module and the Python code for integer to string " +"conversion. Also optimize integer to string conversion for values in the " +"range from 9_000 to 135_000 decimal digits." msgstr "" msgid "" @@ -20684,9 +23702,9 @@ msgid "" msgstr "" msgid "" -":gh:`74929`: Implement PEP 667: converted :attr:`FrameType.f_locals ` and :c:func:`PyFrame_GetLocals` to return a write-through proxy " -"object when the frame refers to a function or comprehension." +":gh:`74929`: Implement PEP 667: converted :attr:`FrameType.f_locals " +"` and :c:func:`PyFrame_GetLocals` to return a write-through " +"proxy object when the frame refers to a function or comprehension." msgstr "" msgid "" @@ -20767,18 +23785,18 @@ msgid "" msgstr "" msgid "" -":gh:`117894`: Prevent ``agen.aclose()`` objects being re-used after ``." -"throw()``." +":gh:`117894`: Prevent ``agen.aclose()`` objects being re-used after " +"``.throw()``." msgstr "" msgid "" -":gh:`117881`: prevent concurrent access to an async generator via athrow()." -"throw() or asend().throw()" +":gh:`117881`: prevent concurrent access to an async generator via " +"athrow().throw() or asend().throw()" msgstr "" msgid "" -":gh:`117536`: Fix a :exc:`RuntimeWarning` when calling ``agen.aclose()." -"throw(Exception)``." +":gh:`117536`: Fix a :exc:`RuntimeWarning` when calling " +"``agen.aclose().throw(Exception)``." msgstr "" msgid "" @@ -20793,9 +23811,9 @@ msgid "" msgstr "" msgid "" -":gh:`117431`: Improve the performance of the following :class:`bytes` and :" -"class:`bytearray` methods by adapting them to the :c:macro:`METH_FASTCALL` " -"calling convention:" +":gh:`117431`: Improve the performance of the following :class:`bytes` " +"and :class:`bytearray` methods by adapting them to " +"the :c:macro:`METH_FASTCALL` calling convention:" msgstr "" msgid ":meth:`!count`" @@ -20849,10 +23867,10 @@ msgid "" msgstr "" msgid "" -":gh:`93502`: Add two new functions to the C-API, :c:func:" -"`PyRefTracer_SetTracer` and :c:func:`PyRefTracer_GetTracer`, that allows to " -"track object creation and destruction the same way the :mod:`tracemalloc` " -"module does. Patch by Pablo Galindo" +":gh:`93502`: Add two new functions to the C-" +"API, :c:func:`PyRefTracer_SetTracer` and :c:func:`PyRefTracer_GetTracer`, " +"that allows to track object creation and destruction the same way " +"the :mod:`tracemalloc` module does. Patch by Pablo Galindo" msgstr "" msgid "" @@ -20887,10 +23905,11 @@ msgid "" msgstr "" msgid "" -":gh:`118660`: Add an optional second type parameter to :class:`typing." -"ContextManager` and :class:`typing.AsyncContextManager`, representing the " -"return types of :meth:`~object.__exit__` and :meth:`~object.__aexit__` " -"respectively. This parameter defaults to ``bool | None``." +":gh:`118660`: Add an optional second type parameter " +"to :class:`typing.ContextManager` and :class:`typing.AsyncContextManager`, " +"representing the return types of :meth:`~object.__exit__` " +"and :meth:`~object.__aexit__` respectively. This parameter defaults to " +"``bool | None``." msgstr "" msgid "" @@ -20899,8 +23918,8 @@ msgid "" msgstr "" msgid "" -":gh:`118648`: Add type parameter defaults to :class:`typing.Generator` and :" -"class:`typing.AsyncGenerator`." +":gh:`118648`: Add type parameter defaults to :class:`typing.Generator` " +"and :class:`typing.AsyncGenerator`." msgstr "" msgid "" @@ -20936,8 +23955,8 @@ msgid "" msgstr "" msgid "" -":gh:`118402`: Fix :func:`inspect.signature` for the result of the :func:" -"`functools.cmp_to_key` call." +":gh:`118402`: Fix :func:`inspect.signature` for the result of " +"the :func:`functools.cmp_to_key` call." msgstr "" msgid "" @@ -20948,8 +23967,8 @@ msgstr "" msgid "" ":gh:`118285`: Allow to specify the signature of custom callable instances of " "extension type by the ``__text_signature__`` attribute. Specify signatures " -"of :class:`operator.attrgetter`, :class:`operator.itemgetter`, and :class:" -"`operator.methodcaller` instances." +"of :class:`operator.attrgetter`, :class:`operator.itemgetter`, " +"and :class:`operator.methodcaller` instances." msgstr "" msgid "" @@ -20966,8 +23985,8 @@ msgstr "" msgid "" ":gh:`118225`: Add the :class:`!PhotoImage` method :meth:`!copy_replace` to " "copy a region from one image to other image, possibly with pixel zooming and/" -"or subsampling. Add *from_coords* parameter to :class:`!PhotoImage` methods :" -"meth:`!copy`, :meth:`!zoom` and :meth:`!subsample`. Add *zoom* and " +"or subsampling. Add *from_coords* parameter to :class:`!PhotoImage` " +"methods :meth:`!copy`, :meth:`!zoom` and :meth:`!subsample`. Add *zoom* and " "*subsample* parameters to :class:`!PhotoImage` method :meth:`!copy`." msgstr "" @@ -20980,13 +23999,14 @@ msgstr "" msgid "" ":gh:`118013`: Fix regression introduced in :gh:`103193` that meant that " "calling :func:`inspect.getattr_static` on an instance would cause a strong " -"reference to that instance's class to persist in an internal cache in the :" -"mod:`inspect` module. This caused unexpected memory consumption if the class " -"was dynamically created, the class held strong references to other objects " -"which took up a significant amount of memory, and the cache contained the " -"sole strong reference to the class. The fix for the regression leads to a " -"slowdown in :func:`!getattr_static`, but the function should still be " -"significantly faster than it was in Python 3.11. Patch by Alex Waygood." +"reference to that instance's class to persist in an internal cache in " +"the :mod:`inspect` module. This caused unexpected memory consumption if the " +"class was dynamically created, the class held strong references to other " +"objects which took up a significant amount of memory, and the cache " +"contained the sole strong reference to the class. The fix for the regression " +"leads to a slowdown in :func:`!getattr_static`, but the function should " +"still be significantly faster than it was in Python 3.11. Patch by Alex " +"Waygood." msgstr "" msgid "" @@ -20995,10 +24015,10 @@ msgid "" msgstr "" msgid "" -":gh:`117486`: Improve the behavior of user-defined subclasses of :class:`ast." -"AST`. Such classes will now require no changes in the usual case to conform " -"with the behavior changes of the :mod:`ast` module in Python 3.13. Patch by " -"Jelle Zijlstra." +":gh:`117486`: Improve the behavior of user-defined subclasses " +"of :class:`ast.AST`. Such classes will now require no changes in the usual " +"case to conform with the behavior changes of the :mod:`ast` module in Python " +"3.13. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -21008,8 +24028,8 @@ msgstr "" msgid "" ":gh:`118168`: Fix incorrect argument substitution when :data:`typing.Unpack` " -"is used with the builtin :class:`tuple`. :data:`!typing.Unpack` now raises :" -"exc:`TypeError` when used with certain invalid types. Patch by Jelle " +"is used with the builtin :class:`tuple`. :data:`!typing.Unpack` now " +"raises :exc:`TypeError` when used with certain invalid types. Patch by Jelle " "Zijlstra." msgstr "" @@ -21034,21 +24054,21 @@ msgid "" msgstr "" msgid "" -":gh:`114053`: Fix erroneous :exc:`NameError` when calling :func:`typing." -"get_type_hints` on a class that made use of :pep:`695` type parameters in a " -"module that had ``from __future__ import annotations`` at the top of the " -"file. Patch by Alex Waygood." +":gh:`114053`: Fix erroneous :exc:`NameError` when " +"calling :func:`typing.get_type_hints` on a class that made use of :pep:`695` " +"type parameters in a module that had ``from __future__ import annotations`` " +"at the top of the file. Patch by Alex Waygood." msgstr "" msgid "" -":gh:`116931`: Add parameter *fileobj* check for :func:`tarfile.TarFile." -"addfile`" +":gh:`116931`: Add parameter *fileobj* check " +"for :func:`tarfile.TarFile.addfile`" msgstr "" msgid "" ":gh:`117995`: Don't raise :exc:`DeprecationWarning` when a :term:`sequence` " -"of parameters is used to bind indexed, nameless placeholders. See also :gh:" -"`100668`." +"of parameters is used to bind indexed, nameless placeholders. See " +"also :gh:`100668`." msgstr "" msgid "" @@ -21075,9 +24095,9 @@ msgid "" msgstr "" msgid "" -":gh:`115060`: Speed up :meth:`pathlib.Path.glob` by omitting an initial :" -"meth:`~pathlib.Path.is_dir` call. As a result of this change, :meth:" -"`~pathlib.Path.glob` can no longer raise :exc:`OSError`." +":gh:`115060`: Speed up :meth:`pathlib.Path.glob` by omitting an " +"initial :meth:`~pathlib.Path.is_dir` call. As a result of this " +"change, :meth:`~pathlib.Path.glob` can no longer raise :exc:`OSError`." msgstr "" msgid "" @@ -21091,8 +24111,8 @@ msgid "" "the sake of the PyPI implementation of :pep:`734`. It was sometimes " "available as the :mod:`!_xxsubinterpreters` module and was formerly used " "only for testing. For the most part, it should be considered an internal " -"module, like :mod:`!_thread` and :mod:`!_imp`. See https://discuss.python." -"org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26." +"module, like :mod:`!_thread` and :mod:`!_imp`. See https://" +"discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26." msgstr "" msgid "" @@ -21101,8 +24121,8 @@ msgid "" msgstr "" msgid "" -":gh:`117727`: Speed up :meth:`pathlib.Path.iterdir` by using :func:`os." -"scandir` internally." +":gh:`117727`: Speed up :meth:`pathlib.Path.iterdir` by " +"using :func:`os.scandir` internally." msgstr "" msgid "" @@ -21111,9 +24131,9 @@ msgid "" msgstr "" msgid "" -":gh:`117722`: Change the new multi-separator support in :meth:`asyncio." -"StreamReader.readuntil` to only accept tuples of separators rather than " -"arbitrary iterables." +":gh:`117722`: Change the new multi-separator support " +"in :meth:`asyncio.StreamReader.readuntil` to only accept tuples of " +"separators rather than arbitrary iterables." msgstr "" msgid "" @@ -21165,8 +24185,8 @@ msgstr "" msgid "" ":gh:`117566`: :meth:`ipaddress.IPv6Address.is_loopback` will now return " -"``True`` for IPv4-mapped loopback addresses, i.e. addresses in the ``::" -"ffff:127.0.0.0/104`` address space." +"``True`` for IPv4-mapped loopback addresses, i.e. addresses in the " +"``::ffff:127.0.0.0/104`` address space." msgstr "" msgid "" @@ -21185,9 +24205,10 @@ msgstr "" msgid "" "In the case where a task group is cancelled externally and also must raise " -"an :exc:`ExceptionGroup`, it will now call the parent task's :meth:`~asyncio." -"Task.cancel` method. This ensures that a :exc:`asyncio.CancelledError` will " -"be raised at the next :keyword:`await`, so the cancellation is not lost." +"an :exc:`ExceptionGroup`, it will now call the parent " +"task's :meth:`~asyncio.Task.cancel` method. This ensures that " +"a :exc:`asyncio.CancelledError` will be raised at the next :keyword:`await`, " +"so the cancellation is not lost." msgstr "" msgid "" @@ -21207,8 +24228,8 @@ msgid "" msgstr "" msgid "" -":gh:`117503`: Fix support of non-ASCII user names in bytes paths in :func:" -"`os.path.expanduser` on Posix." +":gh:`117503`: Fix support of non-ASCII user names in bytes paths " +"in :func:`os.path.expanduser` on Posix." msgstr "" msgid "" @@ -21225,14 +24246,14 @@ msgid "" msgstr "" msgid "" -":gh:`117142`: Convert :mod:`!_ctypes` to multi-phase initialisation (:pep:" -"`489`)." +":gh:`117142`: Convert :mod:`!_ctypes` to multi-phase initialisation " +"(:pep:`489`)." msgstr "" msgid "" ":gh:`66543`: Add the :func:`mimetypes.guess_file_type` function which works " -"with file path. Passing file path instead of URL in :func:`~mimetypes." -"guess_type` is :term:`soft deprecated`." +"with file path. Passing file path instead of URL " +"in :func:`~mimetypes.guess_type` is :term:`soft deprecated`." msgstr "" msgid "" @@ -21241,25 +24262,25 @@ msgid "" msgstr "" msgid "" -":gh:`116871`: Name suggestions for :exc:`AttributeError` and :exc:" -"`ImportError` now only include underscored names if the original name was " -"underscored." +":gh:`116871`: Name suggestions for :exc:`AttributeError` " +"and :exc:`ImportError` now only include underscored names if the original " +"name was underscored." msgstr "" msgid "" -":gh:`116023`: Don't show empty fields (value ``None`` or ``[]``) in :func:" -"`ast.dump` by default. Add ``show_empty=False`` parameter to optionally show " -"them." +":gh:`116023`: Don't show empty fields (value ``None`` or ``[]``) " +"in :func:`ast.dump` by default. Add ``show_empty=False`` parameter to " +"optionally show them." msgstr "" msgid "" ":gh:`115961`: Added :attr:`!name` and :attr:`!mode` attributes for " -"compressed and archived file-like objects in modules :mod:`bz2`, :mod:" -"`lzma`, :mod:`tarfile` and :mod:`zipfile`. The value of the :attr:`!mode` " -"attribute of :class:`gzip.GzipFile` was changed from integer (``1`` or " -"``2``) to string (``'rb'`` or ``'wb'``). The value of the :attr:`!mode` " -"attribute of the readable file-like object returned by :meth:`zipfile." -"ZipFile.open` was changed from ``'r'`` to ``'rb'``." +"compressed and archived file-like objects in " +"modules :mod:`bz2`, :mod:`lzma`, :mod:`tarfile` and :mod:`zipfile`. The " +"value of the :attr:`!mode` attribute of :class:`gzip.GzipFile` was changed " +"from integer (``1`` or ``2``) to string (``'rb'`` or ``'wb'``). The value of " +"the :attr:`!mode` attribute of the readable file-like object returned " +"by :meth:`zipfile.ZipFile.open` was changed from ``'r'`` to ``'rb'``." msgstr "" msgid "" @@ -21273,8 +24294,8 @@ msgid "" msgstr "" msgid "" -":gh:`113081`: Print colorized exception just like built-in traceback in :mod:" -"`pdb`" +":gh:`113081`: Print colorized exception just like built-in traceback " +"in :mod:`pdb`" msgstr "" msgid "" @@ -21297,9 +24318,9 @@ msgid "" msgstr "" msgid "" -":gh:`110209`: Add :meth:`~object.__class_getitem__` to :class:`types." -"GeneratorType` and :class:`types.CoroutineType` for type hinting purposes. " -"Patch by James Hilton-Balfe." +":gh:`110209`: Add :meth:`~object.__class_getitem__` " +"to :class:`types.GeneratorType` and :class:`types.CoroutineType` for type " +"hinting purposes. Patch by James Hilton-Balfe." msgstr "" msgid "" @@ -21369,8 +24390,8 @@ msgid "" msgstr "" msgid "" -":gh:`118734`: Fixes Windows build when invoked directly (not through the :" -"file:`build.bat` script) without specifying a value for ``UseTIER2``." +":gh:`118734`: Fixes Windows build when invoked directly (not through " +"the :file:`build.bat` script) without specifying a value for ``UseTIER2``." msgstr "" msgid "" @@ -21394,9 +24415,9 @@ msgid "" msgstr "" msgid "" -":gh:`115119`: :program:`configure` now uses :program:`pkg-config` to detect :" -"mod:`decimal` dependencies if the :option:`--with-system-libmpdec` option is " -"given." +":gh:`115119`: :program:`configure` now uses :program:`pkg-config` to " +"detect :mod:`decimal` dependencies if the :option:`--with-system-libmpdec` " +"option is given." msgstr "" msgid ":gh:`115119`: Update Windows installer to use libmpdecimal 4.0.0." @@ -21444,17 +24465,18 @@ msgid ":gh:`115009`: Update macOS installer to use SQLite 3.45.3." msgstr "" msgid "" -":gh:`91629`: Use :file:`~/.config/fish/conf.d` configs and :program:" -"`fish_add_path` to set :envvar:`PATH` when installing for the Fish shell." +":gh:`91629`: Use :file:`~/.config/fish/conf.d` configs " +"and :program:`fish_add_path` to set :envvar:`PATH` when installing for the " +"Fish shell." msgstr "" msgid ":issue:`34774`: Use user-selected color theme for Help => IDLE Doc." msgstr "" msgid "" -":gh:`118124`: Fix :c:macro:`Py_BUILD_ASSERT` and :c:macro:" -"`Py_BUILD_ASSERT_EXPR` for non-constant expressions: use ``static_assert()`` " -"on C11 and newer. Patch by Victor Stinner." +":gh:`118124`: Fix :c:macro:`Py_BUILD_ASSERT` " +"and :c:macro:`Py_BUILD_ASSERT_EXPR` for non-constant expressions: use " +"``static_assert()`` on C11 and newer. Patch by Victor Stinner." msgstr "" msgid ":gh:`110850`: Add \"Raw\" variant of PyTime functions" @@ -21490,9 +24512,9 @@ msgid "" msgstr "" msgid "" -":gh:`117534`: Improve validation logic in the C implementation of :meth:" -"`datetime.datetime.fromisoformat` to better handle invalid years. Patch by " -"Vlad Efanov." +":gh:`117534`: Improve validation logic in the C implementation " +"of :meth:`datetime.datetime.fromisoformat` to better handle invalid years. " +"Patch by Vlad Efanov." msgstr "" msgid "" @@ -21579,8 +24601,9 @@ msgid "" msgstr "" msgid "" -":gh:`117266`: Fix crashes for certain user-created subclasses of :class:`ast." -"AST`. Such classes are now expected to set the ``_field_types`` attribute." +":gh:`117266`: Fix crashes for certain user-created subclasses " +"of :class:`ast.AST`. Such classes are now expected to set the " +"``_field_types`` attribute." msgstr "" msgid "" @@ -21603,18 +24626,20 @@ msgid "" msgstr "" msgid "" -":gh:`116735`: For ``INSTRUMENTED_CALL_FUNCTION_EX``, set ``arg0`` to ``sys." -"monitoring.MISSING`` instead of ``None`` for :monitoring-event:`CALL` event." +":gh:`116735`: For ``INSTRUMENTED_CALL_FUNCTION_EX``, set ``arg0`` to " +"``sys.monitoring.MISSING`` instead of ``None`` for :monitoring-event:`CALL` " +"event." msgstr "" msgid "" -":gh:`113964`: Starting new threads and process creation through :func:`os." -"fork` are now only prevented once all non-daemon threads exit." +":gh:`113964`: Starting new threads and process creation " +"through :func:`os.fork` are now only prevented once all non-daemon threads " +"exit." msgstr "" msgid "" -":gh:`116626`: Ensure ``INSTRUMENTED_CALL_FUNCTION_EX`` always emits :" -"monitoring-event:`CALL`" +":gh:`116626`: Ensure ``INSTRUMENTED_CALL_FUNCTION_EX`` always " +"emits :monitoring-event:`CALL`" msgstr "" msgid "" @@ -21679,18 +24704,19 @@ msgid "" msgstr "" msgid "" -":gh:`117648`: Improve performance of :func:`os.path.join` and :func:`os.path." -"expanduser`." +":gh:`117648`: Improve performance of :func:`os.path.join` " +"and :func:`os.path.expanduser`." msgstr "" msgid "" -":gh:`117584`: Raise :exc:`TypeError` for non-paths in :func:`posixpath." -"relpath `." +":gh:`117584`: Raise :exc:`TypeError` for non-paths " +"in :func:`posixpath.relpath `." msgstr "" msgid "" -":gh:`117467`: Preserve mailbox ownership when rewriting in :func:`mailbox." -"mbox.flush `. Patch by Tony Mountifield." +":gh:`117467`: Preserve mailbox ownership when rewriting " +"in :func:`mailbox.mbox.flush `. Patch by Tony " +"Mountifield." msgstr "" msgid "" @@ -21700,16 +24726,16 @@ msgstr "" msgid "" ":gh:`117459`: :meth:`asyncio.asyncio.run_coroutine_threadsafe` now keeps the " -"traceback of :class:`CancelledError`, :class:`TimeoutError` and :class:" -"`InvalidStateError` which are raised in the coroutine." +"traceback of :class:`CancelledError`, :class:`TimeoutError` " +"and :class:`InvalidStateError` which are raised in the coroutine." msgstr "" msgid ":gh:`117381`: Fix error message for :func:`ntpath.commonpath`." msgstr "" msgid "" -":gh:`117337`: Deprecate undocumented :func:`!glob.glob0` and :func:`!glob." -"glob1` functions. Use :func:`glob.glob` and pass a directory to its " +":gh:`117337`: Deprecate undocumented :func:`!glob.glob0` and :func:`!" +"glob.glob1` functions. Use :func:`glob.glob` and pass a directory to its " "*root_dir* argument instead." msgstr "" @@ -21722,8 +24748,8 @@ msgid "" msgstr "" msgid "" -":gh:`117335`: Raise TypeError for non-sequences for :func:`ntpath." -"commonpath`." +":gh:`117335`: Raise TypeError for non-sequences " +"for :func:`ntpath.commonpath`." msgstr "" msgid "" @@ -21796,18 +24822,18 @@ msgid "" msgstr "" msgid "" -":gh:`109653`: Deferred select imports in importlib.metadata and importlib." -"resources for a 14% speedup." +":gh:`109653`: Deferred select imports in importlib.metadata and " +"importlib.resources for a 14% speedup." msgstr "" msgid "" -":gh:`70647`: Start the deprecation period for the current behavior of :func:" -"`datetime.datetime.strptime` and :func:`time.strptime` which always fails to " -"parse a date string with a :exc:`ValueError` involving a day of month such " -"as ``strptime(\"02-29\", \"%m-%d\")`` when a year is **not** specified and " -"the date happen to be February 29th. This should help avoid users finding " -"new bugs every four years due to a natural mistaken assumption about the API " -"when parsing partial date values." +":gh:`70647`: Start the deprecation period for the current behavior " +"of :func:`datetime.datetime.strptime` and :func:`time.strptime` which always " +"fails to parse a date string with a :exc:`ValueError` involving a day of " +"month such as ``strptime(\"02-29\", \"%m-%d\")`` when a year is **not** " +"specified and the date happen to be February 29th. This should help avoid " +"users finding new bugs every four years due to a natural mistaken assumption " +"about the API when parsing partial date values." msgstr "" msgid ":gh:`116987`: Fixed :func:`inspect.findsource` for class code objects." @@ -21838,8 +24864,8 @@ msgid ":gh:`90095`: Ignore empty lines and comments in ``.pdbrc``" msgstr "" msgid "" -":gh:`106531`: Refreshed zipfile._path from `zipp 3.18 `_, providing better " +":gh:`106531`: Refreshed zipfile._path from `zipp 3.18 `_, providing better " "compatibility for PyPy, better glob performance for deeply nested zipfiles, " "and providing internal access to ``CompleteDirs.inject`` for use in other " "tests (like importlib.resources)." @@ -21853,10 +24879,10 @@ msgid "" msgstr "" msgid "" -":gh:`116764`: Restore support of ``None`` and other false values in :mod:" -"`urllib.parse` functions :func:`~urllib.parse.parse_qs` and :func:`~urllib." -"parse.parse_qsl`. Also, they now raise a TypeError for non-zero integers and " -"non-empty sequences." +":gh:`116764`: Restore support of ``None`` and other false values " +"in :mod:`urllib.parse` functions :func:`~urllib.parse.parse_qs` " +"and :func:`~urllib.parse.parse_qsl`. Also, they now raise a TypeError for " +"non-zero integers and non-empty sequences." msgstr "" msgid "" @@ -21883,8 +24909,8 @@ msgid ":attr:`ipaddress.IPv6Address.is_global`" msgstr "" msgid "" -"Also in the corresponding :class:`ipaddress.IPv4Network` and :class:" -"`ipaddress.IPv6Network` attributes." +"Also in the corresponding :class:`ipaddress.IPv4Network` " +"and :class:`ipaddress.IPv6Network` attributes." msgstr "" msgid "" @@ -21904,19 +24930,19 @@ msgid "" msgstr "" msgid "" -":gh:`116608`: The :mod:`importlib.resources` functions :func:`~importlib." -"resources.is_resource`, :func:`~importlib.resources.open_binary`, :func:" -"`~importlib.resources.open_text`, :func:`~importlib.resources.path`, :func:" -"`~importlib.resources.read_binary`, and :func:`~importlib.resources." -"read_text` are un-deprecated, and support subdirectories via multiple " -"positional arguments. The :func:`~importlib.resources.contents` function " -"also allows subdirectories, but remains deprecated." +":gh:`116608`: The :mod:`importlib.resources` " +"functions :func:`~importlib.resources.is_resource`, :func:`~importlib.resources.open_binary`, :func:`~importlib.resources.open_text`, :func:`~importlib.resources.path`, :func:`~importlib.resources.read_binary`, " +"and :func:`~importlib.resources.read_text` are un-deprecated, and support " +"subdirectories via multiple positional arguments. " +"The :func:`~importlib.resources.contents` function also allows " +"subdirectories, but remains deprecated." msgstr "" msgid "" ":gh:`116484`: Change automatically generated :class:`tkinter.Checkbutton` " -"widget names to avoid collisions with automatically generated :class:" -"`tkinter.ttk.Checkbutton` widget names within the same parent widget." +"widget names to avoid collisions with automatically " +"generated :class:`tkinter.ttk.Checkbutton` widget names within the same " +"parent widget." msgstr "" msgid "" @@ -21934,8 +24960,9 @@ msgid ":gh:`71052`: Implement :func:`ctypes.util.find_library` on Android." msgstr "" msgid "" -":gh:`90535`: Fix support of *interval* values > 1 in :class:`logging." -"TimedRotatingFileHandler` for ``when='MIDNIGHT'`` and ``when='Wx'``." +":gh:`90535`: Fix support of *interval* values > 1 " +"in :class:`logging.TimedRotatingFileHandler` for ``when='MIDNIGHT'`` and " +"``when='Wx'``." msgstr "" msgid "" @@ -21968,9 +24995,9 @@ msgid "" msgstr "" msgid "" -":gh:`113538`: Add :meth:`asyncio.Server.close_clients` and :meth:`asyncio." -"Server.abort_clients` methods which allow to more forcefully close an " -"asyncio server." +":gh:`113538`: Add :meth:`asyncio.Server.close_clients` " +"and :meth:`asyncio.Server.abort_clients` methods which allow to more " +"forcefully close an asyncio server." msgstr "" msgid "" @@ -21990,8 +25017,8 @@ msgid "" msgstr "" msgid "" -":gh:`96471`: Add :py:class:`asyncio.Queue` termination with :py:meth:" -"`~asyncio.Queue.shutdown` method." +":gh:`96471`: Add :py:class:`asyncio.Queue` termination " +"with :py:meth:`~asyncio.Queue.shutdown` method." msgstr "" msgid ":gh:`89739`: The :mod:`zipimport` module can now read ZIP64 files." @@ -22001,8 +25028,9 @@ msgid "" ":issue:`33533`: :func:`asyncio.as_completed` now returns an object that is " "both an asynchronous iterator and plain iterator. The new asynchronous " "iteration pattern allows for easier correlation between prior tasks and " -"their completed results. This is a closer match to :func:`concurrent.futures." -"as_completed`'s iteration pattern. Patch by Justin Arthur." +"their completed results. This is a closer match " +"to :func:`concurrent.futures.as_completed`'s iteration pattern. Patch by " +"Justin Arthur." msgstr "" msgid "" @@ -22012,8 +25040,9 @@ msgid "" msgstr "" msgid "" -":issue:`37141`: Accept an iterable of separators in :meth:`asyncio." -"StreamReader.readuntil`, stopping when one of them is encountered." +":issue:`37141`: Accept an iterable of separators " +"in :meth:`asyncio.StreamReader.readuntil`, stopping when one of them is " +"encountered." msgstr "" msgid "" @@ -22038,8 +25067,8 @@ msgstr "" msgid "" ":gh:`91565`: Changes to documentation files and config outputs to reflect " -"the new location for reporting bugs - i.e. GitHub rather than bugs.python." -"org." +"the new location for reporting bugs - i.e. GitHub rather than " +"bugs.python.org." msgstr "" msgid "" @@ -22073,9 +25102,9 @@ msgstr "" msgid "" ":gh:`116307`: Added import helper ``isolated_modules`` as ``CleanImport`` " -"does not remove modules imported during the context. Use it in importlib." -"resources tests to avoid leaving ``mod`` around to impede importlib.metadata " -"tests." +"does not remove modules imported during the context. Use it in " +"importlib.resources tests to avoid leaving ``mod`` around to impede " +"importlib.metadata tests." msgstr "" msgid ":gh:`114736`: Have WASI builds use WASI SDK 21." @@ -22090,9 +25119,9 @@ msgid ":gh:`71052`: Add Android build script and instructions." msgstr "" msgid "" -":gh:`117267`: Ensure ``DirEntry.stat().st_ctime`` behaves consistently with :" -"func:`os.stat` during the deprecation period of ``st_ctime`` by containing " -"the same value as ``st_birthtime``. After the deprecation period, " +":gh:`117267`: Ensure ``DirEntry.stat().st_ctime`` behaves consistently " +"with :func:`os.stat` during the deprecation period of ``st_ctime`` by " +"containing the same value as ``st_birthtime``. After the deprecation period, " "``st_ctime`` will be the metadata change time (or unavailable through " "``DirEntry``), and only ``st_birthtime`` will contain the creation time." msgstr "" @@ -22175,17 +25204,17 @@ msgid "" msgstr "" msgid "" -":gh:`115754`: Add :c:func:`Py_GetConstant` and :c:func:" -"`Py_GetConstantBorrowed` functions to get constants. For example, " -"``Py_GetConstant(Py_CONSTANT_ZERO)`` returns a :term:`strong reference` to " -"the constant zero. Patch by Victor Stinner." +":gh:`115754`: Add :c:func:`Py_GetConstant` " +"and :c:func:`Py_GetConstantBorrowed` functions to get constants. For " +"example, ``Py_GetConstant(Py_CONSTANT_ZERO)`` returns a :term:`strong " +"reference` to the constant zero. Patch by Victor Stinner." msgstr "" msgid "" ":gh:`111696`: Add support for ``%T``, ``%T#``, ``%N`` and ``%N#`` formats " "to :c:func:`PyUnicode_FromFormat`: format the fully qualified name of an " -"object type and of a type: call :c:func:`PyType_GetModuleName`. See :pep:" -"`737` for more information. Patch by Victor Stinner." +"object type and of a type: call :c:func:`PyType_GetModuleName`. " +"See :pep:`737` for more information. Patch by Victor Stinner." msgstr "" msgid "" @@ -22196,9 +25225,9 @@ msgstr "" msgid "" ":gh:`111696`: Add :c:func:`PyType_GetFullyQualifiedName` function to get the " -"type's fully qualified name. Equivalent to ``f\"{type.__module__}.{type." -"__qualname__}\"``, or ``type.__qualname__`` if ``type.__module__`` is not a " -"string or is equal to ``\"builtins\"``. Patch by Victor Stinner." +"type's fully qualified name. Equivalent to ``f\"{type.__module__}." +"{type.__qualname__}\"``, or ``type.__qualname__`` if ``type.__module__`` is " +"not a string or is equal to ``\"builtins\"``. Patch by Victor Stinner." msgstr "" msgid "" @@ -22208,9 +25237,9 @@ msgid "" msgstr "" msgid "" -":gh:`111140`: Add additional flags to :c:func:`PyLong_AsNativeBytes` and :c:" -"func:`PyLong_FromNativeBytes` to allow the caller to determine how to handle " -"edge cases around values that fill the entire buffer." +":gh:`111140`: Add additional flags to :c:func:`PyLong_AsNativeBytes` " +"and :c:func:`PyLong_FromNativeBytes` to allow the caller to determine how to " +"handle edge cases around values that fill the entire buffer." msgstr "" msgid ":gh:`113024`: Add :c:func:`PyObject_GenericHash` function." @@ -22223,8 +25252,8 @@ msgid "*Release date: 2024-03-12*" msgstr "" msgid "" -":gh:`115398`: Allow controlling Expat >=2.6.0 reparse deferral (:cve:" -"`2023-52425`) by adding five new methods:" +":gh:`115398`: Allow controlling Expat >=2.6.0 reparse deferral " +"(:cve:`2023-52425`) by adding five new methods:" msgstr "" msgid ":meth:`xml.etree.ElementTree.XMLParser.flush`" @@ -22243,9 +25272,10 @@ msgid ":meth:`xml.sax.expatreader.ExpatParser.flush`" msgstr "" msgid "" -":gh:`114572`: :meth:`ssl.SSLContext.cert_store_stats` and :meth:`ssl." -"SSLContext.get_ca_certs` now correctly lock access to the certificate store, " -"when the :class:`ssl.SSLContext` is shared across multiple threads." +":gh:`114572`: :meth:`ssl.SSLContext.cert_store_stats` " +"and :meth:`ssl.SSLContext.get_ca_certs` now correctly lock access to the " +"certificate store, when the :class:`ssl.SSLContext` is shared across " +"multiple threads." msgstr "" msgid "" @@ -22255,8 +25285,8 @@ msgid "" msgstr "" msgid "" -":gh:`112087`: :class:`list` is now compatible with the implementation of :" -"pep:`703`." +":gh:`112087`: :class:`list` is now compatible with the implementation " +"of :pep:`703`." msgstr "" msgid ":gh:`116381`: Add specialization for ``CONTAINS_OP``." @@ -22268,9 +25298,9 @@ msgid "" msgstr "" msgid "" -":gh:`115823`: Properly calculate error ranges in the parser when raising :" -"exc:`SyntaxError` exceptions caused by invalid byte sequences. Patch by " -"Pablo Galindo" +":gh:`115823`: Properly calculate error ranges in the parser when " +"raising :exc:`SyntaxError` exceptions caused by invalid byte sequences. " +"Patch by Pablo Galindo" msgstr "" msgid "" @@ -22291,8 +25321,8 @@ msgid "" msgstr "" msgid "" -":gh:`115323`: Make error message more meaningful for when :meth:`bytearray." -"extend` is called with a :class:`str` object." +":gh:`115323`: Make error message more meaningful for " +"when :meth:`bytearray.extend` is called with a :class:`str` object." msgstr "" msgid "" @@ -22350,13 +25380,13 @@ msgid "" msgstr "" msgid "" -":gh:`116127`: :mod:`typing`: implement :pep:`705` which adds :data:`typing." -"ReadOnly` support to :class:`typing.TypedDict`." +":gh:`116127`: :mod:`typing`: implement :pep:`705` which " +"adds :data:`typing.ReadOnly` support to :class:`typing.TypedDict`." msgstr "" msgid "" -":gh:`116325`: :mod:`typing`: raise :exc:`SyntaxError` instead of :exc:" -"`AttributeError` on forward references as empty strings." +":gh:`116325`: :mod:`typing`: raise :exc:`SyntaxError` instead " +"of :exc:`AttributeError` on forward references as empty strings." msgstr "" msgid "" @@ -22375,12 +25405,12 @@ msgid "" msgstr "" msgid "" -":gh:`88352`: Fix the computation of the next rollover time in the :class:" -"`logging.TimedRotatingFileHandler` handler. :meth:`!computeRollover` now " -"always returns a timestamp larger than the specified time and works " -"correctly during the DST change. :meth:`!doRollover` no longer overwrite the " -"already rolled over file, saving from data loss when run at midnight or " -"during repeated time at the DST change." +":gh:`88352`: Fix the computation of the next rollover time in " +"the :class:`logging.TimedRotatingFileHandler` handler. :meth:`!" +"computeRollover` now always returns a timestamp larger than the specified " +"time and works correctly during the DST change. :meth:`!doRollover` no " +"longer overwrite the already rolled over file, saving from data loss when " +"run at midnight or during repeated time at the DST change." msgstr "" msgid "" @@ -22414,8 +25444,8 @@ msgid "" msgstr "" msgid "" -":gh:`85644`: Use the ``XDG_CURRENT_DESKTOP`` environment variable in :mod:" -"`webbrowser` to check desktop. Prefer it to the deprecated " +":gh:`85644`: Use the ``XDG_CURRENT_DESKTOP`` environment variable " +"in :mod:`webbrowser` to check desktop. Prefer it to the deprecated " "``GNOME_DESKTOP_SESSION_ID`` for GNOME detection." msgstr "" @@ -22477,8 +25507,8 @@ msgid "" msgstr "" msgid "" -":gh:`112997`: Stop logging potentially sensitive callback arguments in :mod:" -"`asyncio` unless debug mode is active." +":gh:`112997`: Stop logging potentially sensitive callback arguments " +"in :mod:`asyncio` unless debug mode is active." msgstr "" msgid "" @@ -22487,15 +25517,16 @@ msgid "" msgstr "" msgid "" -":gh:`111358`: Fix a bug in :meth:`asyncio.BaseEventLoop." -"shutdown_default_executor` to ensure the timeout passed to the coroutine " -"behaves as expected." +":gh:`111358`: Fix a bug " +"in :meth:`asyncio.BaseEventLoop.shutdown_default_executor` to ensure the " +"timeout passed to the coroutine behaves as expected." msgstr "" msgid "" ":gh:`115618`: Fix improper decreasing the reference count for ``None`` " -"argument in :class:`property` methods :meth:`~property.getter`, :meth:" -"`~property.setter` and :meth:`~property.deleter`." +"argument in :class:`property` " +"methods :meth:`~property.getter`, :meth:`~property.setter` " +"and :meth:`~property.deleter`." msgstr "" msgid "" @@ -22505,8 +25536,8 @@ msgstr "" msgid "" ":gh:`112006`: Fix :func:`inspect.unwrap` for types with the ``__wrapper__`` " -"data descriptor. Fix :meth:`inspect.Signature.from_callable` for builtins :" -"func:`classmethod` and :func:`staticmethod`." +"data descriptor. Fix :meth:`inspect.Signature.from_callable` for " +"builtins :func:`classmethod` and :func:`staticmethod`." msgstr "" msgid "" @@ -22521,8 +25552,8 @@ msgstr "" msgid "" ":gh:`113942`: :mod:`pydoc` no longer skips global functions implemented as " -"builtin methods, such as :class:`~type.MethodDescriptorType` and :class:" -"`~type.WrapperDescriptorType`." +"builtin methods, such as :class:`~type.MethodDescriptorType` " +"and :class:`~type.WrapperDescriptorType`." msgstr "" msgid "" @@ -22570,14 +25601,14 @@ msgid "" msgstr "" msgid "" -":gh:`107361`: Add :data:`ssl.VERIFY_X509_PARTIAL_CHAIN` and :data:" -"`VERIFY_X509_STRICT` to the default SSL context created with :func:`ssl." -"create_default_context`." +":gh:`107361`: Add :data:`ssl.VERIFY_X509_PARTIAL_CHAIN` " +"and :data:`VERIFY_X509_STRICT` to the default SSL context created " +"with :func:`ssl.create_default_context`." msgstr "" msgid "" -":gh:`112281`: Allow creating :ref:`union of types` for :class:" -"`typing.Annotated` with unhashable metadata." +":gh:`112281`: Allow creating :ref:`union of types` " +"for :class:`typing.Annotated` with unhashable metadata." msgstr "" msgid "" @@ -22589,22 +25620,23 @@ msgid ":gh:`90095`: Make .pdbrc and -c work with any valid pdb commands." msgstr "" msgid "" -":gh:`107625`: Raise :exc:`configparser.ParsingError` from :meth:" -"`~configparser.ConfigParser.read` and :meth:`~configparser.ConfigParser." -"read_file` methods of :class:`configparser.ConfigParser` if a key without a " -"corresponding value is continued (that is, followed by an indented line)." +":gh:`107625`: Raise :exc:`configparser.ParsingError` " +"from :meth:`~configparser.ConfigParser.read` " +"and :meth:`~configparser.ConfigParser.read_file` methods " +"of :class:`configparser.ConfigParser` if a key without a corresponding value " +"is continued (that is, followed by an indented line)." msgstr "" msgid "" -":gh:`107155`: Fix incorrect output of ``help(x)`` where ``x`` is a :keyword:" -"`lambda` function, which has an ``__annotations__`` dictionary attribute " -"with a ``\"return\"`` key." +":gh:`107155`: Fix incorrect output of ``help(x)`` where ``x`` is " +"a :keyword:`lambda` function, which has an ``__annotations__`` dictionary " +"attribute with a ``\"return\"`` key." msgstr "" msgid "" -":gh:`57141`: Add option for *non-shallow* comparisons to :class:`filecmp." -"dircmp` like :func:`filecmp.cmp`. Original patch by Steven Ward. Enhanced by " -"Tobias Rautenkranz" +":gh:`57141`: Add option for *non-shallow* comparisons " +"to :class:`filecmp.dircmp` like :func:`filecmp.cmp`. Original patch by " +"Steven Ward. Enhanced by Tobias Rautenkranz" msgstr "" msgid "" @@ -22622,8 +25654,9 @@ msgid ":gh:`102389`: Add ``windows_31j`` to aliases for ``cp932`` codec" msgstr "" msgid "" -":gh:`72249`: Always include the :term:`module` name in the :func:`repr` of :" -"func:`functools.partial` objects. Patch by Furkan Onder and Anilyka Barry." +":gh:`72249`: Always include the :term:`module` name in the :func:`repr` " +"of :func:`functools.partial` objects. Patch by Furkan Onder and Anilyka " +"Barry." msgstr "" msgid "" @@ -22637,10 +25670,10 @@ msgid "" msgstr "" msgid "" -":gh:`95782`: Fix :func:`io.BufferedReader.tell`, :func:`io.BufferedReader." -"seek`, :func:`!_pyio.BufferedReader.tell`, :func:`io.BufferedRandom.tell`, :" -"func:`io.BufferedRandom.seek` and :func:`!_pyio.BufferedRandom.tell` being " -"able to return negative offsets." +":gh:`95782`: " +"Fix :func:`io.BufferedReader.tell`, :func:`io.BufferedReader.seek`, :func:`!" +"_pyio.BufferedReader.tell`, :func:`io.BufferedRandom.tell`, :func:`io.BufferedRandom.seek` " +"and :func:`!_pyio.BufferedRandom.tell` being able to return negative offsets." msgstr "" msgid "" @@ -22649,10 +25682,10 @@ msgid "" msgstr "" msgid "" -":gh:`93205`: Fixed a bug in :class:`logging.handlers." -"TimedRotatingFileHandler` where multiple rotating handler instances pointing " -"to files with the same name but different extensions would conflict and not " -"delete the correct files." +":gh:`93205`: Fixed a bug " +"in :class:`logging.handlers.TimedRotatingFileHandler` where multiple " +"rotating handler instances pointing to files with the same name but " +"different extensions would conflict and not delete the correct files." msgstr "" msgid ":issue:`31116`: Add Z85 encoding to ``base64``." @@ -22675,9 +25708,9 @@ msgid "" msgstr "" msgid "" -":issue:`41122`: Failing to pass arguments properly to :func:`functools." -"singledispatchmethod` now throws a TypeError instead of hitting an index out " -"of bounds internally." +":issue:`41122`: Failing to pass arguments properly " +"to :func:`functools.singledispatchmethod` now throws a TypeError instead of " +"hitting an index out of bounds internally." msgstr "" msgid "" @@ -22797,18 +25830,18 @@ msgid "" msgstr "" msgid "" -":gh:`115554`: The installer now has more strict rules about updating the :" -"ref:`launcher`. In general, most users only have a single launcher installed " -"and will see no difference. When multiple launchers have been installed, the " -"option to install the launcher is disabled until all but one have been " -"removed. Downgrading the launcher (which was never allowed) is now more " -"obviously blocked." +":gh:`115554`: The installer now has more strict rules about updating " +"the :ref:`launcher`. In general, most users only have a single launcher " +"installed and will see no difference. When multiple launchers have been " +"installed, the option to install the launcher is disabled until all but one " +"have been removed. Downgrading the launcher (which was never allowed) is now " +"more obviously blocked." msgstr "" msgid "" ":gh:`115543`: :ref:`launcher` can now detect Python 3.13 when installed from " -"the Microsoft Store, and will install Python 3.12 by default when :envvar:" -"`PYLAUNCHER_ALLOW_INSTALL` is set." +"the Microsoft Store, and will install Python 3.12 by default " +"when :envvar:`PYLAUNCHER_ALLOW_INSTALL` is set." msgstr "" msgid ":gh:`116145`: Update macOS installer to Tcl/Tk 8.6.14." @@ -22836,9 +25869,9 @@ msgid "" msgstr "" msgid "" -":gh:`111418`: Add :c:macro:`PyHASH_MODULUS`, :c:macro:`PyHASH_BITS`, :c:" -"macro:`PyHASH_INF` and :c:macro:`PyHASH_IMAG` C macros. Patch by Sergey B " -"Kirpichev." +":gh:`111418`: " +"Add :c:macro:`PyHASH_MODULUS`, :c:macro:`PyHASH_BITS`, :c:macro:`PyHASH_INF` " +"and :c:macro:`PyHASH_IMAG` C macros. Patch by Sergey B Kirpichev." msgstr "" msgid "Python 3.13.0 alpha 4" @@ -22856,8 +25889,8 @@ msgid "" msgstr "" msgid "" -":gh:`112087`: For an empty reverse iterator for list will be reduced to :" -"func:`reversed`. Patch by Donghee Na" +":gh:`112087`: For an empty reverse iterator for list will be reduced " +"to :func:`reversed`. Patch by Donghee Na" msgstr "" msgid "" @@ -22869,13 +25902,13 @@ msgstr "" msgid "" ":gh:`114695`: Add :func:`sys._clear_internal_caches`, which clears all " -"internal performance-related caches (and deprecate the less-general :func:" -"`sys._clear_type_cache` function)." +"internal performance-related caches (and deprecate the less-" +"general :func:`sys._clear_type_cache` function)." msgstr "" msgid "" -":gh:`114828`: Fix compilation crashes in uncommon code examples using :func:" -"`super` inside a comprehension in a class body." +":gh:`114828`: Fix compilation crashes in uncommon code examples " +"using :func:`super` inside a comprehension in a class body." msgstr "" msgid "" @@ -22885,14 +25918,14 @@ msgstr "" msgid "" ":gh:`115011`: Setters for members with an unsigned integer type now support " -"the same range of valid values for objects that has a :meth:`~object." -"__index__` method as for :class:`int`." +"the same range of valid values for objects that has " +"a :meth:`~object.__index__` method as for :class:`int`." msgstr "" msgid "" -":gh:`114887`: Changed socket type validation in :meth:`~asyncio.loop." -"create_datagram_endpoint` to accept all non-stream sockets. This fixes a " -"regression in compatibility with raw sockets." +":gh:`114887`: Changed socket type validation " +"in :meth:`~asyncio.loop.create_datagram_endpoint` to accept all non-stream " +"sockets. This fixes a regression in compatibility with raw sockets." msgstr "" msgid "" @@ -22906,9 +25939,9 @@ msgid "" msgstr "" msgid "" -":gh:`76763`: The :func:`chr` builtin function now always raises :exc:" -"`ValueError` for values outside the valid range. Previously it raised :exc:" -"`OverflowError` for very large or small values." +":gh:`76763`: The :func:`chr` builtin function now always " +"raises :exc:`ValueError` for values outside the valid range. Previously it " +"raised :exc:`OverflowError` for very large or small values." msgstr "" msgid "" @@ -23032,16 +26065,16 @@ msgstr "" msgid "" ":gh:`102840`: Fix confused traceback when floordiv, mod, or divmod " -"operations happens between instances of :class:`fractions.Fraction` and :" -"class:`complex`." +"operations happens between instances of :class:`fractions.Fraction` " +"and :class:`complex`." msgstr "" msgid "" ":gh:`115165`: Most exceptions are now ignored when attempting to set the " "``__orig_class__`` attribute on objects returned when calling :mod:`typing` " -"generic aliases (including generic aliases created using :data:`typing." -"Annotated`). Previously only :exc:`AttributeError` was ignored. Patch by " -"Dave Shawley." +"generic aliases (including generic aliases created " +"using :data:`typing.Annotated`). Previously only :exc:`AttributeError` was " +"ignored. Patch by Dave Shawley." msgstr "" msgid "" @@ -23089,8 +26122,8 @@ msgid "" msgstr "" msgid "" -":gh:`85984`: Added ``_POSIX_VDISABLE`` from C's ```` to :mod:" -"`termios`." +":gh:`85984`: Added ``_POSIX_VDISABLE`` from C's ```` " +"to :mod:`termios`." msgstr "" msgid ":gh:`114965`: Update bundled pip to 24.0" @@ -23130,20 +26163,21 @@ msgid "" msgstr "" msgid "" -":gh:`114678`: Ensure that deprecation warning for 'N' specifier in :class:" -"`~decimal.Decimal` format is not raised for cases where 'N' appears in other " -"places in the format specifier. Based on patch by Stefan Krah." +":gh:`114678`: Ensure that deprecation warning for 'N' specifier " +"in :class:`~decimal.Decimal` format is not raised for cases where 'N' " +"appears in other places in the format specifier. Based on patch by Stefan " +"Krah." msgstr "" msgid "" -":gh:`70303`: Return both files and directories from :meth:`pathlib.Path." -"glob` if a pattern ends with \"``**``\". Previously only directories were " -"returned." +":gh:`70303`: Return both files and directories " +"from :meth:`pathlib.Path.glob` if a pattern ends with \"``**``\". Previously " +"only directories were returned." msgstr "" msgid "" -":gh:`109653`: Improve import time of :mod:`importlib.metadata` and :mod:" -"`email.utils`." +":gh:`109653`: Improve import time of :mod:`importlib.metadata` " +"and :mod:`email.utils`." msgstr "" msgid "" @@ -23166,9 +26200,9 @@ msgid "" msgstr "" msgid "" -":gh:`91602`: Add *filter* keyword-only parameter to :meth:`sqlite3." -"Connection.iterdump` for filtering database objects to dump. Patch by " -"Mariusz Felisiak." +":gh:`91602`: Add *filter* keyword-only parameter " +"to :meth:`sqlite3.Connection.iterdump` for filtering database objects to " +"dump. Patch by Mariusz Felisiak." msgstr "" msgid "" @@ -23178,8 +26212,8 @@ msgid "" msgstr "" msgid "" -":gh:`69893`: Add the :meth:`!close` method for the iterator returned by :" -"func:`xml.etree.ElementTree.iterparse`." +":gh:`69893`: Add the :meth:`!close` method for the iterator returned " +"by :func:`xml.etree.ElementTree.iterparse`." msgstr "" msgid "" @@ -23209,9 +26243,9 @@ msgid "" msgstr "" msgid "" -":gh:`75128`: Ignore an :exc:`OSError` in :meth:`asyncio.BaseEventLoop." -"create_server` when IPv6 is available but the interface cannot actually " -"support it." +":gh:`75128`: Ignore an :exc:`OSError` " +"in :meth:`asyncio.BaseEventLoop.create_server` when IPv6 is available but " +"the interface cannot actually support it." msgstr "" msgid "" @@ -23220,8 +26254,8 @@ msgid "" msgstr "" msgid "" -":gh:`114257`: Dismiss the :exc:`FileNotFound` error in :func:`ctypes.util." -"find_library` and just return ``None`` on Linux." +":gh:`114257`: Dismiss the :exc:`FileNotFound` error " +"in :func:`ctypes.util.find_library` and just return ``None`` on Linux." msgstr "" msgid "" @@ -23250,8 +26284,9 @@ msgid "" msgstr "" msgid "" -":gh:`114198`: The signature for the ``__replace__`` method on :mod:" -"`dataclasses` now has the first argument named ``self``, rather than ``obj``." +":gh:`114198`: The signature for the ``__replace__`` method " +"on :mod:`dataclasses` now has the first argument named ``self``, rather than " +"``obj``." msgstr "" msgid "" @@ -23273,9 +26308,9 @@ msgid ":gh:`114087`: Speed up ``dataclasses.asdict`` up to 1.35x." msgstr "" msgid "" -":gh:`109534`: Fix a reference leak in :class:`asyncio.selector_events." -"BaseSelectorEventLoop` when SSL handshakes fail. Patch contributed by Jamie " -"Phan." +":gh:`109534`: Fix a reference leak " +"in :class:`asyncio.selector_events.BaseSelectorEventLoop` when SSL " +"handshakes fail. Patch contributed by Jamie Phan." msgstr "" msgid "" @@ -23290,20 +26325,21 @@ msgid "" msgstr "" msgid "" -":gh:`113951`: Fix the behavior of ``tag_unbind()`` methods of :class:" -"`tkinter.Text` and :class:`tkinter.Canvas` classes with three arguments. " -"Previously, ``widget.tag_unbind(tag, sequence, funcid)`` destroyed the " -"current binding for *sequence*, leaving *sequence* unbound, and deleted the " -"*funcid* command. Now it removes only *funcid* from the binding for " -"*sequence*, keeping other commands, and deletes the *funcid* command. It " -"leaves *sequence* unbound only if *funcid* was the last bound command." +":gh:`113951`: Fix the behavior of ``tag_unbind()`` methods " +"of :class:`tkinter.Text` and :class:`tkinter.Canvas` classes with three " +"arguments. Previously, ``widget.tag_unbind(tag, sequence, funcid)`` " +"destroyed the current binding for *sequence*, leaving *sequence* unbound, " +"and deleted the *funcid* command. Now it removes only *funcid* from the " +"binding for *sequence*, keeping other commands, and deletes the *funcid* " +"command. It leaves *sequence* unbound only if *funcid* was the last bound " +"command." msgstr "" msgid "" ":gh:`97959`: Fix rendering class methods, bound methods, method and function " -"aliases in :mod:`pydoc`. Class methods no longer have \"method of builtins." -"type instance\" note. Corresponding notes are now added for class and " -"unbound methods. Method and function aliases now have references to the " +"aliases in :mod:`pydoc`. Class methods no longer have \"method of " +"builtins.type instance\" note. Corresponding notes are now added for class " +"and unbound methods. Method and function aliases now have references to the " "module or the class where the origin was defined if it differs from the " "current. Bound methods are now listed in the static methods section. Methods " "of builtin classes are now supported as well as methods of Python classes." @@ -23316,13 +26352,13 @@ msgid "" msgstr "" msgid "" -":gh:`113732`: Fix support of :data:`~csv.QUOTE_NOTNULL` and :data:`~csv." -"QUOTE_STRINGS` in :func:`csv.reader`." +":gh:`113732`: Fix support of :data:`~csv.QUOTE_NOTNULL` " +"and :data:`~csv.QUOTE_STRINGS` in :func:`csv.reader`." msgstr "" msgid "" -":gh:`113225`: Speed up :meth:`pathlib.Path.walk` by using :attr:`os.DirEntry." -"path` where possible." +":gh:`113225`: Speed up :meth:`pathlib.Path.walk` by " +"using :attr:`os.DirEntry.path` where possible." msgstr "" msgid "" @@ -23337,8 +26373,9 @@ msgid "" msgstr "" msgid "" -":gh:`112919`: Speed-up :func:`datetime.datetime.replace`, :func:`datetime." -"date.replace` and :func:`datetime.time.replace`." +":gh:`112919`: Speed-" +"up :func:`datetime.datetime.replace`, :func:`datetime.date.replace` " +"and :func:`datetime.time.replace`." msgstr "" msgid "" @@ -23358,8 +26395,8 @@ msgid "" msgstr "" msgid "" -":gh:`111741`: Recognise ``image/webp`` as a standard format in the :mod:" -"`mimetypes` module." +":gh:`111741`: Recognise ``image/webp`` as a standard format in " +"the :mod:`mimetypes` module." msgstr "" msgid "" @@ -23378,13 +26415,13 @@ msgid "" msgstr "" msgid "" -":gh:`111051`: Added check for file modification during debugging with :mod:" -"`pdb`" +":gh:`111051`: Added check for file modification during debugging " +"with :mod:`pdb`" msgstr "" msgid "" -":gh:`110345`: Show the Tcl/Tk patchlevel (rather than version) in :meth:" -"`tkinter._test`." +":gh:`110345`: Show the Tcl/Tk patchlevel (rather than version) " +"in :meth:`tkinter._test`." msgstr "" msgid "" @@ -23394,29 +26431,30 @@ msgid "" msgstr "" msgid "" -":gh:`75705`: Set unixfrom envelope in :class:`mailbox.mbox` and :class:" -"`mailbox.MMDF`." +":gh:`75705`: Set unixfrom envelope in :class:`mailbox.mbox` " +"and :class:`mailbox.MMDF`." msgstr "" msgid "" -":gh:`106233`: Fix stacklevel in ``InvalidTZPathWarning`` during :mod:" -"`zoneinfo` module import." +":gh:`106233`: Fix stacklevel in ``InvalidTZPathWarning`` " +"during :mod:`zoneinfo` module import." msgstr "" msgid "" -":gh:`105102`: Allow :class:`ctypes.Union` to be nested in :class:`ctypes." -"Structure` when the system endianness is the opposite of the classes." +":gh:`105102`: Allow :class:`ctypes.Union` to be nested " +"in :class:`ctypes.Structure` when the system endianness is the opposite of " +"the classes." msgstr "" msgid "" -":gh:`104282`: Fix null pointer dereference in :func:`lzma." -"_decode_filter_properties` due to improper handling of BCJ filters with " -"properties of zero length. Patch by Radislav Chugunov." +":gh:`104282`: Fix null pointer dereference " +"in :func:`lzma._decode_filter_properties` due to improper handling of BCJ " +"filters with properties of zero length. Patch by Radislav Chugunov." msgstr "" msgid "" -":gh:`96471`: Add :py:class:`queue.Queue` termination with :py:meth:`~queue." -"Queue.shutdown`." +":gh:`96471`: Add :py:class:`queue.Queue` termination " +"with :py:meth:`~queue.Queue.shutdown`." msgstr "" msgid "" @@ -23424,8 +26462,9 @@ msgid "" msgstr "" msgid "" -":gh:`85984`: Add POSIX pseudo-terminal functions :func:`os.posix_openpt`, :" -"func:`os.grantpt`, :func:`os.unlockpt`, and :func:`os.ptsname`." +":gh:`85984`: Add POSIX pseudo-terminal " +"functions :func:`os.posix_openpt`, :func:`os.grantpt`, :func:`os.unlockpt`, " +"and :func:`os.ptsname`." msgstr "" msgid "" @@ -23446,9 +26485,9 @@ msgstr "" msgid "" ":issue:`38364`: The ``inspect`` functions ``isgeneratorfunction``, " -"``iscoroutinefunction``, ``isasyncgenfunction`` now support ``functools." -"partialmethod`` wrapped functions the same way they support ``functools." -"partial``." +"``iscoroutinefunction``, ``isasyncgenfunction`` now support " +"``functools.partialmethod`` wrapped functions the same way they support " +"``functools.partial``." msgstr "" msgid "" @@ -23473,9 +26512,10 @@ msgid "" msgstr "" msgid "" -":gh:`105089`: Fix ``test.test_zipfile.test_core.TestWithDirectory." -"test_create_directory_with_write`` test in AIX by doing a bitwise AND of " -"0xFFFF on mode , so that it will be in sync with ``zinfo.external_attr``" +":gh:`105089`: Fix " +"``test.test_zipfile.test_core.TestWithDirectory.test_create_directory_with_write`` " +"test in AIX by doing a bitwise AND of 0xFFFF on mode , so that it will be in " +"sync with ``zinfo.external_attr``" msgstr "" msgid "" @@ -23494,8 +26534,8 @@ msgid "" msgstr "" msgid "" -":gh:`114875`: Add :c:func:`!getgrent` as a prerequisite for building the :" -"mod:`grp` module." +":gh:`114875`: Add :c:func:`!getgrent` as a prerequisite for building " +"the :mod:`grp` module." msgstr "" msgid "" @@ -23571,9 +26611,9 @@ msgid "" msgstr "" msgid "" -":gh:`111140`: Adds :c:func:`PyLong_AsNativeBytes`, :c:func:" -"`PyLong_FromNativeBytes` and :c:func:`PyLong_FromUnsignedNativeBytes` " -"functions." +":gh:`111140`: " +"Adds :c:func:`PyLong_AsNativeBytes`, :c:func:`PyLong_FromNativeBytes` " +"and :c:func:`PyLong_FromUnsignedNativeBytes` functions." msgstr "" msgid "" @@ -23596,9 +26636,9 @@ msgid "" msgstr "" msgid "" -":gh:`114329`: Add :c:func:`PyList_GetItemRef`, which is similar to :c:func:" -"`PyList_GetItem` but returns a :term:`strong reference` instead of a :term:" -"`borrowed reference`." +":gh:`114329`: Add :c:func:`PyList_GetItemRef`, which is similar " +"to :c:func:`PyList_GetItem` but returns a :term:`strong reference` instead " +"of a :term:`borrowed reference`." msgstr "" msgid ":gh:`110850`: Add PyTime C API:" @@ -23611,16 +26651,16 @@ msgid ":c:var:`PyTime_MIN` and :c:var:`PyTime_MAX` constants." msgstr "" msgid "" -":c:func:`PyTime_AsSecondsDouble`, :c:func:`PyTime_Monotonic`, :c:func:" -"`PyTime_PerfCounter`, and :c:func:`PyTime_Time` functions." +":c:func:`PyTime_AsSecondsDouble`, :c:func:`PyTime_Monotonic`, :c:func:`PyTime_PerfCounter`, " +"and :c:func:`PyTime_Time` functions." msgstr "" msgid "" ":gh:`112066`: Add :c:func:`PyDict_SetDefaultRef`: insert a key and value " -"into a dictionary if the key is not already present. This is similar to :" -"meth:`dict.setdefault`, but returns an integer value indicating if the key " -"was already present. It is also similar to :c:func:`PyDict_SetDefault`, but " -"returns a strong reference instead of a borrowed reference." +"into a dictionary if the key is not already present. This is similar " +"to :meth:`dict.setdefault`, but returns an integer value indicating if the " +"key was already present. It is also similar to :c:func:`PyDict_SetDefault`, " +"but returns a strong reference instead of a borrowed reference." msgstr "" msgid "Python 3.13.0 alpha 3" @@ -23748,9 +26788,9 @@ msgid "" msgstr "" msgid "" -"The issue primarily showed up in 3.11 by multithreaded users of :func:`ast." -"parse`. In 3.12 a change to when garbage collection can be triggered " -"prevented the race condition from occurring." +"The issue primarily showed up in 3.11 by multithreaded users " +"of :func:`ast.parse`. In 3.12 a change to when garbage collection can be " +"triggered prevented the race condition from occurring." msgstr "" msgid "" @@ -23801,10 +26841,10 @@ msgid "" msgstr "" msgid "" -":gh:`105967`: Workaround a bug in Apple's macOS platform zlib library where :" -"func:`zlib.crc32` and :func:`binascii.crc32` could produce incorrect results " -"on multi-gigabyte inputs. Including when using :mod:`zipfile` on zips " -"containing large data." +":gh:`105967`: Workaround a bug in Apple's macOS platform zlib library " +"where :func:`zlib.crc32` and :func:`binascii.crc32` could produce incorrect " +"results on multi-gigabyte inputs. Including when using :mod:`zipfile` on " +"zips containing large data." msgstr "" msgid "" @@ -23821,9 +26861,10 @@ msgstr "" msgid "" ":gh:`111058`: Change coro.cr_frame/gen.gi_frame to return ``None`` after the " -"coroutine/generator has been closed. This fixes a bug where :func:`~inspect." -"getcoroutinestate` and :func:`~inspect.getgeneratorstate` return the wrong " -"state for a closed coroutine/generator." +"coroutine/generator has been closed. This fixes a bug " +"where :func:`~inspect.getcoroutinestate` " +"and :func:`~inspect.getgeneratorstate` return the wrong state for a closed " +"coroutine/generator." msgstr "" msgid "" @@ -23854,10 +26895,10 @@ msgid "" msgstr "" msgid "" -":gh:`109598`: :c:func:`PyComplex_RealAsDouble`/:c:func:" -"`PyComplex_ImagAsDouble` now tries to convert an object to a :class:" -"`complex` instance using its ``__complex__()`` method before falling back to " -"the ``__float__()`` method. Patch by Sergey B Kirpichev." +":gh:`109598`: :c:func:`PyComplex_RealAsDouble`/:c:func:`PyComplex_ImagAsDouble` " +"now tries to convert an object to a :class:`complex` instance using its " +"``__complex__()`` method before falling back to the ``__float__()`` method. " +"Patch by Sergey B Kirpichev." msgstr "" msgid "" @@ -23867,9 +26908,9 @@ msgid "" msgstr "" msgid "" -":issue:`21861`: Use the object's actual class name in :meth:`!_io.FileIO." -"__repr__`, :meth:`!_io._WindowsConsoleIO` and :meth:`!_io.TextIOWrapper." -"__repr__`, to make these methods subclass friendly." +":issue:`21861`: Use the object's actual class name in :meth:`!" +"_io.FileIO.__repr__`, :meth:`!_io._WindowsConsoleIO` and :meth:`!" +"_io.TextIOWrapper.__repr__`, to make these methods subclass friendly." msgstr "" msgid ":issue:`45369`: Remove LibreSSL workarounds as per :pep:`644`." @@ -23879,8 +26920,9 @@ msgid ":issue:`34392`: Added :func:`sys._is_interned`." msgstr "" msgid "" -":gh:`114077`: Fix possible :exc:`OverflowError` in :meth:`socket.socket." -"sendfile` when pass *count* larger than 2 GiB on 32-bit platform." +":gh:`114077`: Fix possible :exc:`OverflowError` " +"in :meth:`socket.socket.sendfile` when pass *count* larger than 2 GiB on 32-" +"bit platform." msgstr "" msgid "" @@ -23901,10 +26943,10 @@ msgid "" msgstr "" msgid "" -":gh:`113971`: The :class:`zipfile.ZipInfo` previously protected ``." -"_compresslevel`` attribute has been made public as ``.compress_level`` with " -"the old ``_compresslevel`` name remaining available as a property to retain " -"compatibility." +":gh:`113971`: The :class:`zipfile.ZipInfo` previously protected " +"``._compresslevel`` attribute has been made public as ``.compress_level`` " +"with the old ``_compresslevel`` name remaining available as a property to " +"retain compatibility." msgstr "" msgid "" @@ -23913,12 +26955,9 @@ msgid "" msgstr "" msgid "" -":gh:`113868`: Added :data:`mmap.MAP_NORESERVE`, :data:`mmap.MAP_NOEXTEND`, :" -"data:`mmap.MAP_HASSEMAPHORE`, :data:`mmap.MAP_NOCACHE`, :data:`mmap." -"MAP_JIT`, :data:`mmap.MAP_RESILIENT_CODESIGN`, :data:`mmap." -"MAP_RESILIENT_MEDIA`, :data:`mmap.MAP_32BIT`, :data:`mmap." -"MAP_TRANSLATED_ALLOW_EXECUTE`, :data:`mmap.MAP_UNIX03` and :data:`mmap." -"MAP_TPRO`. All of them are ``mmap(2)`` flags on macOS." +":gh:`113868`: " +"Added :data:`mmap.MAP_NORESERVE`, :data:`mmap.MAP_NOEXTEND`, :data:`mmap.MAP_HASSEMAPHORE`, :data:`mmap.MAP_NOCACHE`, :data:`mmap.MAP_JIT`, :data:`mmap.MAP_RESILIENT_CODESIGN`, :data:`mmap.MAP_RESILIENT_MEDIA`, :data:`mmap.MAP_32BIT`, :data:`mmap.MAP_TRANSLATED_ALLOW_EXECUTE`, :data:`mmap.MAP_UNIX03` " +"and :data:`mmap.MAP_TPRO`. All of them are ``mmap(2)`` flags on macOS." msgstr "" msgid "" @@ -23949,10 +26988,10 @@ msgid "" msgstr "" msgid "" -":gh:`111693`: :func:`asyncio.Condition.wait` now re-raises the same :exc:" -"`CancelledError` instance that may have caused it to be interrupted. Fixed " -"race condition in :func:`asyncio.Semaphore.acquire` when interrupted with a :" -"exc:`CancelledError`." +":gh:`111693`: :func:`asyncio.Condition.wait` now re-raises the " +"same :exc:`CancelledError` instance that may have caused it to be " +"interrupted. Fixed race condition in :func:`asyncio.Semaphore.acquire` when " +"interrupted with a :exc:`CancelledError`." msgstr "" msgid "" @@ -23987,39 +27026,41 @@ msgid "" msgstr "" msgid "" -":gh:`113626`: Add support for the *allow_code* argument in the :mod:" -"`marshal` module. Passing ``allow_code=False`` prevents serialization and de-" -"serialization of code objects which is incompatible between Python versions." +":gh:`113626`: Add support for the *allow_code* argument in " +"the :mod:`marshal` module. Passing ``allow_code=False`` prevents " +"serialization and de-serialization of code objects which is incompatible " +"between Python versions." msgstr "" msgid "" -":gh:`85567`: Fix resource warnings for unclosed files in :mod:`pickle` and :" -"mod:`pickletools` command line interfaces." +":gh:`85567`: Fix resource warnings for unclosed files in :mod:`pickle` " +"and :mod:`pickletools` command line interfaces." msgstr "" msgid ":gh:`113537`: Support loads ``str`` in :func:`plistlib.loads`." msgstr "" msgid "" -":gh:`89850`: Add default implementations of :meth:`pickle.Pickler." -"persistent_id` and :meth:`pickle.Unpickler.persistent_load` methods in the C " -"implementation. Calling ``super().persistent_id()`` and ``super()." -"persistent_load()`` in subclasses of the C implementation of :class:`pickle." -"Pickler` and :class:`pickle.Unpickler` classes no longer causes infinite " -"recursion." +":gh:`89850`: Add default implementations " +"of :meth:`pickle.Pickler.persistent_id` " +"and :meth:`pickle.Unpickler.persistent_load` methods in the C " +"implementation. Calling ``super().persistent_id()`` and " +"``super().persistent_load()`` in subclasses of the C implementation " +"of :class:`pickle.Pickler` and :class:`pickle.Unpickler` classes no longer " +"causes infinite recursion." msgstr "" msgid "" -":gh:`113569`: Indicate if there were no actual calls in unittest :meth:" -"`~unittest.mock.Mock.assert_has_calls` failure." +":gh:`113569`: Indicate if there were no actual calls in " +"unittest :meth:`~unittest.mock.Mock.assert_has_calls` failure." msgstr "" msgid "" -":gh:`101225`: Increase the backlog for :class:`multiprocessing.connection." -"Listener` objects created by :mod:`multiprocessing.manager` and :mod:" -"`multiprocessing.resource_sharer` to significantly reduce the risk of " -"getting a connection refused error when creating a :class:`multiprocessing." -"connection.Connection` to them." +":gh:`101225`: Increase the backlog " +"for :class:`multiprocessing.connection.Listener` objects created " +"by :mod:`multiprocessing.manager` and :mod:`multiprocessing.resource_sharer` " +"to significantly reduce the risk of getting a connection refused error when " +"creating a :class:`multiprocessing.connection.Connection` to them." msgstr "" msgid "" @@ -24033,8 +27074,8 @@ msgid "" msgstr "" msgid "" -":gh:`113028`: When a second reference to a string appears in the input to :" -"mod:`pickle`, and the Python implementation is in use, we are guaranteed " +":gh:`113028`: When a second reference to a string appears in the input " +"to :mod:`pickle`, and the Python implementation is in use, we are guaranteed " "that a single copy gets pickled and a single object is shared when reloaded. " "Previously, in protocol 0, when a string contained certain characters (e.g. " "newline) it resulted in duplicate objects." @@ -24059,10 +27100,10 @@ msgstr "" msgid "" ":gh:`113320`: Fix regression in Python 3.12 where :class:`~typing.Protocol` " -"classes that were not marked as :func:`runtime-checkable ` would be unnecessarily introspected, potentially causing " -"exceptions to be raised if the protocol had problematic members. Patch by " -"Alex Waygood." +"classes that were not marked as :func:`runtime-checkable " +"` would be unnecessarily introspected, potentially " +"causing exceptions to be raised if the protocol had problematic members. " +"Patch by Alex Waygood." msgstr "" msgid "" @@ -24087,14 +27128,14 @@ msgid ":gh:`87264`: Fixed tarfile list() method to show file type." msgstr "" msgid "" -":gh:`112182`: :meth:`asyncio.futures.Future.set_exception` now transforms :" -"exc:`StopIteration` into :exc:`RuntimeError` instead of hanging or other " -"misbehavior. Patch contributed by Jamie Phan." +":gh:`112182`: :meth:`asyncio.futures.Future.set_exception` now " +"transforms :exc:`StopIteration` into :exc:`RuntimeError` instead of hanging " +"or other misbehavior. Patch contributed by Jamie Phan." msgstr "" msgid "" -":gh:`113225`: Speed up :meth:`pathlib.Path.glob` by using :attr:`os.DirEntry." -"path` where possible." +":gh:`113225`: Speed up :meth:`pathlib.Path.glob` by " +"using :attr:`os.DirEntry.path` where possible." msgstr "" msgid "" @@ -24103,21 +27144,21 @@ msgid "" msgstr "" msgid "" -":gh:`113117`: The :mod:`subprocess` module can now use the :func:`os." -"posix_spawn` function with ``close_fds=True`` on platforms where " -"``posix_spawn_file_actions_addclosefrom_np`` is available. Patch by Jakub " -"Kulik." +":gh:`113117`: The :mod:`subprocess` module can now use " +"the :func:`os.posix_spawn` function with ``close_fds=True`` on platforms " +"where ``posix_spawn_file_actions_addclosefrom_np`` is available. Patch by " +"Jakub Kulik." msgstr "" msgid "" -":gh:`113199`: Make ``http.client.HTTPResponse.read1`` and ``http.client." -"HTTPResponse.readline`` close IO after reading all data when content length " -"is known. Patch by Illia Volochii." +":gh:`113199`: Make ``http.client.HTTPResponse.read1`` and " +"``http.client.HTTPResponse.readline`` close IO after reading all data when " +"content length is known. Patch by Illia Volochii." msgstr "" msgid "" -":gh:`113191`: Add support of :func:`os.fchmod` and a file descriptor in :" -"func:`os.chmod` on Windows." +":gh:`113191`: Add support of :func:`os.fchmod` and a file descriptor " +"in :func:`os.chmod` on Windows." msgstr "" msgid "" @@ -24159,14 +27200,15 @@ msgstr "" msgid "" ":gh:`112559`: :func:`signal.signal` and :func:`signal.getsignal` no longer " -"call ``repr`` on callable handlers. :func:`asyncio.run` and :meth:`asyncio." -"Runner.run` no longer call ``repr`` on the task results. Patch by Yilei Yang." +"call ``repr`` on callable handlers. :func:`asyncio.run` " +"and :meth:`asyncio.Runner.run` no longer call ``repr`` on the task results. " +"Patch by Yilei Yang." msgstr "" msgid "" -":gh:`112962`: :mod:`dis` module functions add cache information to the :" -"class:`~dis.Instruction` instance rather than creating fake :class:`~dis." -"Instruction` instances to represent the cache entries." +":gh:`112962`: :mod:`dis` module functions add cache information to " +"the :class:`~dis.Instruction` instance rather than creating " +"fake :class:`~dis.Instruction` instances to represent the cache entries." msgstr "" msgid "" @@ -24190,10 +27232,10 @@ msgid "" msgstr "" msgid "" -":gh:`87286`: Added :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:" -"`LOG_REMOTEAUTH`, :const:`LOG_INSTALL`, :const:`LOG_RAS`, and :const:" -"`LOG_LAUNCHD` tot the :mod:`syslog` module, all of them constants on used on " -"macOS." +":gh:`87286`: " +"Added :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:`LOG_REMOTEAUTH`, :const:`LOG_INSTALL`, :const:`LOG_RAS`, " +"and :const:`LOG_LAUNCHD` tot the :mod:`syslog` module, all of them constants " +"on used on macOS." msgstr "" msgid "" @@ -24211,8 +27253,8 @@ msgid "" msgstr "" msgid "" -":gh:`79325`: Fix an infinite recursion error in :func:`tempfile." -"TemporaryDirectory` cleanup on Windows." +":gh:`79325`: Fix an infinite recursion error " +"in :func:`tempfile.TemporaryDirectory` cleanup on Windows." msgstr "" msgid "" @@ -24238,15 +27280,15 @@ msgid "" msgstr "" msgid "" -":gh:`74690`: Speedup :func:`isinstance` checks by roughly 20% for :func:" -"`runtime-checkable protocols ` that only have one " -"callable member. Speedup :func:`issubclass` checks for these protocols by " -"roughly 10%. Patch by Alex Waygood." +":gh:`74690`: Speedup :func:`isinstance` checks by roughly 20% " +"for :func:`runtime-checkable protocols ` that only " +"have one callable member. Speedup :func:`issubclass` checks for these " +"protocols by roughly 10%. Patch by Alex Waygood." msgstr "" msgid "" -":gh:`112645`: Remove deprecation error on passing ``onerror`` to :func:" -"`shutil.rmtree`." +":gh:`112645`: Remove deprecation error on passing ``onerror`` " +"to :func:`shutil.rmtree`." msgstr "" msgid "" @@ -24255,8 +27297,8 @@ msgid "" msgstr "" msgid "" -":gh:`112622`: Ensure ``name`` parameter is passed to event loop in :func:" -"`asyncio.create_task`." +":gh:`112622`: Ensure ``name`` parameter is passed to event loop " +"in :func:`asyncio.create_task`." msgstr "" msgid "" @@ -24295,8 +27337,8 @@ msgid "" msgstr "" msgid "" -":gh:`112578`: Fix a spurious :exc:`RuntimeWarning` when executing the :mod:" -"`zipfile` module." +":gh:`112578`: Fix a spurious :exc:`RuntimeWarning` when executing " +"the :mod:`zipfile` module." msgstr "" msgid ":gh:`112516`: Update the bundled copy of pip to version 23.3.1." @@ -24314,24 +27356,25 @@ msgstr "" msgid "" ":gh:`112509`: Fix edge cases that could cause a key to be present in both " -"the ``__required_keys__`` and ``__optional_keys__`` attributes of a :class:" -"`typing.TypedDict`. Patch by Jelle Zijlstra." +"the ``__required_keys__`` and ``__optional_keys__`` attributes of " +"a :class:`typing.TypedDict`. Patch by Jelle Zijlstra." msgstr "" msgid "" -":gh:`101336`: Add ``keep_alive`` keyword parameter for :meth:" -"`AbstractEventLoop.create_server` and :meth:`BaseEventLoop.create_server`." +":gh:`101336`: Add ``keep_alive`` keyword parameter " +"for :meth:`AbstractEventLoop.create_server` " +"and :meth:`BaseEventLoop.create_server`." msgstr "" msgid "" -":gh:`63284`: Added support for TLS-PSK (pre-shared key) mode to the :mod:" -"`ssl` module." +":gh:`63284`: Added support for TLS-PSK (pre-shared key) mode to " +"the :mod:`ssl` module." msgstr "" msgid "" ":gh:`112414`: Fix regression in Python 3.12 where calling :func:`repr` on a " -"module that had been imported using a custom :term:`loader` could fail with :" -"exc:`AttributeError`. Patch by Alex Waygood." +"module that had been imported using a custom :term:`loader` could fail " +"with :exc:`AttributeError`. Patch by Alex Waygood." msgstr "" msgid "" @@ -24345,8 +27388,8 @@ msgid "" msgstr "" msgid "" -":gh:`94722`: Fix bug where comparison between instances of :class:`~doctest." -"DocTest` fails if one of them has ``None`` as its lineno." +":gh:`94722`: Fix bug where comparison between instances " +"of :class:`~doctest.DocTest` fails if one of them has ``None`` as its lineno." msgstr "" msgid "" @@ -24366,8 +27409,8 @@ msgid "" msgstr "" msgid "" -":gh:`112332`: Deprecate the ``exc_type`` field of :class:`traceback." -"TracebackException`. Add ``exc_type_str`` to replace it." +":gh:`112332`: Deprecate the ``exc_type`` field " +"of :class:`traceback.TracebackException`. Add ``exc_type_str`` to replace it." msgstr "" msgid ":gh:`81620`: Add extra tests for :func:`random.binomialvariate`" @@ -24404,15 +27447,15 @@ msgid "" msgstr "" msgid "" -":gh:`111874`: When creating a :class:`typing.NamedTuple` class, ensure :func:" -"`~object.__set_name__` is called on all objects that define ``__set_name__`` " -"and exist in the values of the ``NamedTuple`` class's class dictionary. " -"Patch by Alex Waygood." +":gh:`111874`: When creating a :class:`typing.NamedTuple` class, " +"ensure :func:`~object.__set_name__` is called on all objects that define " +"``__set_name__`` and exist in the values of the ``NamedTuple`` class's class " +"dictionary. Patch by Alex Waygood." msgstr "" msgid "" -":gh:`68166`: Add support of the \"vsapi\" element type in :meth:`tkinter.ttk." -"Style.element_create`." +":gh:`68166`: Add support of the \"vsapi\" element type " +"in :meth:`tkinter.ttk.Style.element_create`." msgstr "" msgid "" @@ -24455,32 +27498,32 @@ msgid "" msgstr "" msgid "" -":gh:`102988`: :func:`email.utils.getaddresses` and :func:`email.utils." -"parseaddr` now return ``('', '')`` 2-tuples in more situations where invalid " -"email addresses are encountered instead of potentially inaccurate values. " -"Add optional *strict* parameter to these two functions: use ``strict=False`` " -"to get the old behavior, accept malformed inputs. ``getattr(email.utils, " -"'supports_strict_parsing', False)`` can be use to check if the *strict* " -"parameter is available. Patch by Thomas Dwyer and Victor Stinner to improve " -"the :cve:`2023-27043` fix." +":gh:`102988`: :func:`email.utils.getaddresses` " +"and :func:`email.utils.parseaddr` now return ``('', '')`` 2-tuples in more " +"situations where invalid email addresses are encountered instead of " +"potentially inaccurate values. Add optional *strict* parameter to these two " +"functions: use ``strict=False`` to get the old behavior, accept malformed " +"inputs. ``getattr(email.utils, 'supports_strict_parsing', False)`` can be " +"use to check if the *strict* parameter is available. Patch by Thomas Dwyer " +"and Victor Stinner to improve the :cve:`2023-27043` fix." msgstr "" msgid "" -":gh:`52161`: :meth:`cmd.Cmd.do_help` now cleans docstrings with :func:" -"`inspect.cleandoc` before writing them. Patch by Filip Łapkiewicz." +":gh:`52161`: :meth:`cmd.Cmd.do_help` now cleans docstrings " +"with :func:`inspect.cleandoc` before writing them. Patch by Filip Łapkiewicz." msgstr "" msgid "" -":gh:`82300`: Add ``track`` parameter to :class:`multiprocessing." -"shared_memory.SharedMemory` that allows using shared memory blocks without " -"having to register with the POSIX resource tracker that automatically " -"releases them upon process exit." +":gh:`82300`: Add ``track`` parameter " +"to :class:`multiprocessing.shared_memory.SharedMemory` that allows using " +"shared memory blocks without having to register with the POSIX resource " +"tracker that automatically releases them upon process exit." msgstr "" msgid "" -":gh:`110109`: Add private ``pathlib._PurePathBase`` class: a base class for :" -"class:`pathlib.PurePath` that omits certain magic methods. It may be made " -"public (along with ``_PathBase``) in future." +":gh:`110109`: Add private ``pathlib._PurePathBase`` class: a base class " +"for :class:`pathlib.PurePath` that omits certain magic methods. It may be " +"made public (along with ``_PathBase``) in future." msgstr "" msgid "" @@ -24495,14 +27538,15 @@ msgid "" msgstr "" msgid "" -":gh:`91539`: Small (10 - 20%) and trivial performance improvement of :func:" -"`urllib.request.getproxies_environment`, typically useful when there are " -"many environment variables to go over." +":gh:`91539`: Small (10 - 20%) and trivial performance improvement " +"of :func:`urllib.request.getproxies_environment`, typically useful when " +"there are many environment variables to go over." msgstr "" msgid "" -":gh:`103363`: Add *follow_symlinks* keyword-only argument to :meth:`pathlib." -"Path.owner` and :meth:`~pathlib.Path.group`, defaulting to ``True``." +":gh:`103363`: Add *follow_symlinks* keyword-only argument " +"to :meth:`pathlib.Path.owner` and :meth:`~pathlib.Path.group`, defaulting to " +"``True``." msgstr "" msgid ":gh:`102130`: Support tab completion in :mod:`cmd` for ``editline``." @@ -24564,8 +27608,8 @@ msgstr "" msgid "" ":issue:`35332`: The :func:`shutil.rmtree` function now ignores errors when " -"calling :func:`os.close` when *ignore_errors* is ``True``, and :func:`os." -"close` no longer retried after error." +"calling :func:`os.close` when *ignore_errors* is ``True``, " +"and :func:`os.close` no longer retried after error." msgstr "" msgid "" @@ -24581,8 +27625,9 @@ msgid "" msgstr "" msgid "" -":issue:`41422`: Fixed memory leaks of :class:`pickle.Pickler` and :class:" -"`pickle.Unpickler` involving cyclic references via the internal memo mapping." +":issue:`41422`: Fixed memory leaks of :class:`pickle.Pickler` " +"and :class:`pickle.Unpickler` involving cyclic references via the internal " +"memo mapping." msgstr "" msgid "" @@ -24596,16 +27641,16 @@ msgid "" msgstr "" msgid "" -":issue:`39912`: :func:`warnings.filterwarnings` and :func:`warnings." -"simplefilter` now raise appropriate exceptions instead of " -"``AssertionError``. Patch contributed by Rémi Lapeyre." +":issue:`39912`: :func:`warnings.filterwarnings` " +"and :func:`warnings.simplefilter` now raise appropriate exceptions instead " +"of ``AssertionError``. Patch contributed by Rémi Lapeyre." msgstr "" msgid "" ":issue:`37260`: Fixed a race condition in :func:`shutil.rmtree` in which " -"directory entries removed by another process or thread while ``shutil." -"rmtree()`` is running can cause it to raise FileNotFoundError. Patch by " -"Jeffrey Kintscher." +"directory entries removed by another process or thread while " +"``shutil.rmtree()`` is running can cause it to raise FileNotFoundError. " +"Patch by Jeffrey Kintscher." msgstr "" msgid "" @@ -24636,8 +27681,8 @@ msgid "" msgstr "" msgid "" -":gh:`110746`: Improved markup for valid options/values for methods ttk." -"treeview.column and ttk.treeview.heading, and for Layouts." +":gh:`110746`: Improved markup for valid options/values for methods " +"ttk.treeview.column and ttk.treeview.heading, and for Layouts." msgstr "" msgid "" @@ -24678,14 +27723,14 @@ msgstr "" msgid "" ":gh:`109980`: Fix ``test_tarfile_vs_tar`` in ``test_shutil`` for macOS, " -"where system tar can include more information in the archive than :mod:" -"`shutil.make_archive`." +"where system tar can include more information in the archive " +"than :mod:`shutil.make_archive`." msgstr "" msgid "" -":gh:`112769`: The tests now correctly compare zlib version when :const:`zlib." -"ZLIB_RUNTIME_VERSION` contains non-integer suffixes. For example zlib-ng " -"defines the version as ``1.3.0.zlib-ng``." +":gh:`112769`: The tests now correctly compare zlib version " +"when :const:`zlib.ZLIB_RUNTIME_VERSION` contains non-integer suffixes. For " +"example zlib-ng defines the version as ``1.3.0.zlib-ng``." msgstr "" msgid "" @@ -24704,10 +27749,10 @@ msgid ":issue:`40648`: Test modes that file can get with chmod() on Windows." msgstr "" msgid "" -":gh:`114013`: Fix ``Tools/wasm/wasi.py`` to not include the path to ``python." -"wasm`` as part of ``HOSTRUNNER``. The environment variable is meant to " -"specify how to run the WASI host only, having ``python.wasm`` and relevant " -"flags appended to the ``HOSTRUNNER``. This fixes ``make test`` work." +":gh:`114013`: Fix ``Tools/wasm/wasi.py`` to not include the path to " +"``python.wasm`` as part of ``HOSTRUNNER``. The environment variable is meant " +"to specify how to run the WASI host only, having ``python.wasm`` and " +"relevant flags appended to the ``HOSTRUNNER``. This fixes ``make test`` work." msgstr "" msgid "" @@ -24734,8 +27779,8 @@ msgid "" msgstr "" msgid "" -":issue:`11102`: The :func:`os.major`, :func:`os.makedev`, and :func:`os." -"minor` functions are now available on HP-UX v3." +":issue:`11102`: The :func:`os.major`, :func:`os.makedev`, " +"and :func:`os.minor` functions are now available on HP-UX v3." msgstr "" msgid ":issue:`36351`: Do not set ipv6type when cross-compiling." @@ -24785,13 +27830,13 @@ msgid "" msgstr "" msgid "" -":gh:`73427`: Deprecate :func:`sys._enablelegacywindowsfsencoding`. Use :" -"envvar:`PYTHONLEGACYWINDOWSFSENCODING` instead. Patch by Inada Naoki." +":gh:`73427`: Deprecate :func:`sys._enablelegacywindowsfsencoding`. " +"Use :envvar:`PYTHONLEGACYWINDOWSFSENCODING` instead. Patch by Inada Naoki." msgstr "" msgid "" -":gh:`87868`: Correctly sort and remove duplicate environment variables in :" -"py:func:`!_winapi.CreateProcess`." +":gh:`87868`: Correctly sort and remove duplicate environment variables " +"in :py:func:`!_winapi.CreateProcess`." msgstr "" msgid "" @@ -24837,10 +27882,10 @@ msgid ":gh:`111973`: Update macOS installer to use SQLite 3.44.2." msgstr "" msgid "" -":gh:`108269`: Set ``CFBundleAllowMixedLocalizations`` to true in the Info." -"plist for the framework, embedded Python.app and IDLE.app with framework " -"installs on macOS. This allows applications to pick up the user's preferred " -"locale when that's different from english." +":gh:`108269`: Set ``CFBundleAllowMixedLocalizations`` to true in the " +"Info.plist for the framework, embedded Python.app and IDLE.app with " +"framework installs on macOS. This allows applications to pick up the user's " +"preferred locale when that's different from english." msgstr "" msgid "" @@ -24905,9 +27950,10 @@ msgid "" msgstr "" msgid "" -":gh:`65210`: Change the declaration of the *keywords* parameter of :c:func:" -"`PyArg_ParseTupleAndKeywords` and :c:func:`PyArg_VaParseTupleAndKeywords` " -"for better compatibility with C++." +":gh:`65210`: Change the declaration of the *keywords* parameter " +"of :c:func:`PyArg_ParseTupleAndKeywords` " +"and :c:func:`PyArg_VaParseTupleAndKeywords` for better compatibility with C+" +"+." msgstr "" msgid "Python 3.13.0 alpha 2" @@ -24928,8 +27974,8 @@ msgid "" msgstr "" msgid "" -":gh:`112266`: Change docstrings of :attr:`~object.__dict__` and :attr:" -"`~object.__weakref__`." +":gh:`112266`: Change docstrings of :attr:`~object.__dict__` " +"and :attr:`~object.__weakref__`." msgstr "" msgid "" @@ -24985,9 +28031,10 @@ msgid "" msgstr "" msgid "" -":gh:`111666`: Speed up :meth:`BaseExceptionGroup.derive`, :meth:" -"`BaseExceptionGroup.subgroup`, and :meth:`BaseExceptionGroup.split` by " -"changing how they parse passed arguments." +":gh:`111666`: Speed " +"up :meth:`BaseExceptionGroup.derive`, :meth:`BaseExceptionGroup.subgroup`, " +"and :meth:`BaseExceptionGroup.split` by changing how they parse passed " +"arguments." msgstr "" msgid "" @@ -25013,9 +28060,9 @@ msgstr "" msgid "" ":gh:`111520`: Merge the Tier 1 (bytecode) and Tier 2 (micro-ops) " "interpreters together, moving the Tier 2 interpreter loop and switch into " -"``_PyEval_EvalFrameDefault()`` in ``Python/ceval.c``. The ``Python/executor." -"c`` file is gone. Also the ``TIER_ONE`` and ``TIER_TWO`` macros are now " -"handled by the code generator." +"``_PyEval_EvalFrameDefault()`` in ``Python/ceval.c``. The ``Python/" +"executor.c`` file is gone. Also the ``TIER_ONE`` and ``TIER_TWO`` macros are " +"now handled by the code generator." msgstr "" msgid "" @@ -25047,9 +28094,9 @@ msgid "" msgstr "" msgid "" -":gh:`111366`: Fix an issue in the :mod:`codeop` that was causing :exc:" -"`SyntaxError` exceptions raised in the presence of invalid syntax to not " -"contain precise error messages. Patch by Pablo Galindo" +":gh:`111366`: Fix an issue in the :mod:`codeop` that was " +"causing :exc:`SyntaxError` exceptions raised in the presence of invalid " +"syntax to not contain precise error messages. Patch by Pablo Galindo" msgstr "" msgid "" @@ -25059,10 +28106,10 @@ msgid "" msgstr "" msgid "" -":gh:`111374`: Added a new environment variable :envvar:" -"`PYTHON_FROZEN_MODULES`. It determines whether or not frozen modules are " -"ignored by the import machinery, equivalent of the :option:`-X " -"frozen_modules <-X>` command-line option." +":gh:`111374`: Added a new environment " +"variable :envvar:`PYTHON_FROZEN_MODULES`. It determines whether or not " +"frozen modules are ignored by the import machinery, equivalent of " +"the :option:`-X frozen_modules <-X>` command-line option." msgstr "" msgid "" @@ -25082,9 +28129,9 @@ msgid "" msgstr "" msgid "" -":gh:`111123`: Fix a bug where a :keyword:`global` declaration in an :keyword:" -"`except` block is rejected when the global is used in the :keyword:`else` " -"block." +":gh:`111123`: Fix a bug where a :keyword:`global` declaration in " +"an :keyword:`except` block is rejected when the global is used in " +"the :keyword:`else` block." msgstr "" msgid "" @@ -25103,8 +28150,8 @@ msgid "" msgstr "" msgid "" -":gh:`109894`: Fixed crash due to improperly initialized static :exc:" -"`MemoryError` in subinterpreter." +":gh:`109894`: Fixed crash due to improperly initialized " +"static :exc:`MemoryError` in subinterpreter." msgstr "" msgid "" @@ -25141,18 +28188,19 @@ msgid "" msgstr "" msgid "" -":gh:`110543`: Fix regression in Python 3.12 where :meth:`types.CodeType." -"replace` would produce a broken code object if called on a module or class " -"code object that contains a comprehension. Patch by Jelle Zijlstra." +":gh:`110543`: Fix regression in Python 3.12 " +"where :meth:`types.CodeType.replace` would produce a broken code object if " +"called on a module or class code object that contains a comprehension. Patch " +"by Jelle Zijlstra." msgstr "" msgid "" ":gh:`89519`: Removed chained :class:`classmethod` descriptors (introduced " "in :issue:`19072`). This can no longer be used to wrap other descriptors " "such as :class:`property`. The core design of this feature was flawed and " -"caused a number of downstream problems. To \"pass-through\" a :class:" -"`classmethod`, consider using the :attr:`!__wrapped__` attribute that was " -"added in Python 3.10." +"caused a number of downstream problems. To \"pass-through\" " +"a :class:`classmethod`, consider using the :attr:`!__wrapped__` attribute " +"that was added in Python 3.10." msgstr "" msgid ":gh:`103615`: Use local events for opcode tracing" @@ -25192,8 +28240,8 @@ msgstr "" msgid "" ":gh:`109538`: Issue warning message instead of having :class:`RuntimeError` " -"be displayed when event loop has already been closed at :meth:`StreamWriter." -"__del__`." +"be displayed when event loop has already been closed " +"at :meth:`StreamWriter.__del__`." msgstr "" msgid "" @@ -25202,9 +28250,9 @@ msgid "" msgstr "" msgid "" -":gh:`111460`: :mod:`curses`: restore wide character support (including :func:" -"`curses.unget_wch` and :meth:`~curses.window.get_wch`) on macOS, which was " -"unavailable due to a regression in Python 3.12." +":gh:`111460`: :mod:`curses`: restore wide character support " +"(including :func:`curses.unget_wch` and :meth:`~curses.window.get_wch`) on " +"macOS, which was unavailable due to a regression in Python 3.12." msgstr "" msgid "" @@ -25214,10 +28262,10 @@ msgid "" msgstr "" msgid "" -":gh:`111835`: The :class:`mmap.mmap` class now has an :meth:`~mmap.mmap." -"seekable` method that can be used when a seekable file-like object is " -"required. The :meth:`~mmap.mmap.seek` method now returns the new absolute " -"position. Patch by Donghee Na." +":gh:`111835`: The :class:`mmap.mmap` class now has " +"an :meth:`~mmap.mmap.seekable` method that can be used when a seekable file-" +"like object is required. The :meth:`~mmap.mmap.seek` method now returns the " +"new absolute position. Patch by Donghee Na." msgstr "" msgid "" @@ -25226,8 +28274,8 @@ msgid "" msgstr "" msgid "" -":gh:`111841`: Fix truncating arguments on an embedded null character in :" -"meth:`os.putenv` and :meth:`os.unsetenv` on Windows." +":gh:`111841`: Fix truncating arguments on an embedded null character " +"in :meth:`os.putenv` and :meth:`os.unsetenv` on Windows." msgstr "" msgid "" @@ -25246,14 +28294,14 @@ msgid "" msgstr "" msgid "" -":gh:`111719`: Add extra argument validation for ``alias`` command in :mod:" -"`pdb`" +":gh:`111719`: Add extra argument validation for ``alias`` command " +"in :mod:`pdb`" msgstr "" msgid "" -":gh:`111482`: :mod:`time`: Make :func:`time.clock_gettime` and :func:`time." -"clock_gettime_ns` functions up to 2x faster by faster calling convention. " -"Patch by Victor Stinner." +":gh:`111482`: :mod:`time`: Make :func:`time.clock_gettime` " +"and :func:`time.clock_gettime_ns` functions up to 2x faster by faster " +"calling convention. Patch by Victor Stinner." msgstr "" msgid "" @@ -25273,9 +28321,9 @@ msgid "" msgstr "" msgid "" -":gh:`111356`: Added :func:`io.text_encoding`, :data:`io." -"DEFAULT_BUFFER_SIZE`, and :class:`io.IncrementalNewlineDecoder` to ``io." -"__all__``." +":gh:`111356`: " +"Added :func:`io.text_encoding`, :data:`io.DEFAULT_BUFFER_SIZE`, " +"and :class:`io.IncrementalNewlineDecoder` to ``io.__all__``." msgstr "" msgid "" @@ -25285,24 +28333,24 @@ msgid "" msgstr "" msgid "" -":gh:`111429`: Speed up :meth:`pathlib.PurePath.relative_to` and :meth:" -"`~pathlib.PurePath.is_relative_to`." +":gh:`111429`: Speed up :meth:`pathlib.PurePath.relative_to` " +"and :meth:`~pathlib.PurePath.is_relative_to`." msgstr "" msgid ":gh:`111342`: Fixed typo in :func:`math.sumprod`." msgstr "" msgid "" -":gh:`68166`: Remove mention of not supported \"vsapi\" element type in :meth:" -"`tkinter.ttk.Style.element_create`. Add tests for ``element_create()`` and " -"other ``ttk.Style`` methods. Add examples for ``element_create()`` in the " -"documentation." +":gh:`68166`: Remove mention of not supported \"vsapi\" element type " +"in :meth:`tkinter.ttk.Style.element_create`. Add tests for " +"``element_create()`` and other ``ttk.Style`` methods. Add examples for " +"``element_create()`` in the documentation." msgstr "" msgid "" -":gh:`111388`: Add ``show_group`` parameter to :func:`traceback." -"format_exception_only`, which allows to format :exc:`ExceptionGroup` " -"instances." +":gh:`111388`: Add ``show_group`` parameter " +"to :func:`traceback.format_exception_only`, which allows to " +"format :exc:`ExceptionGroup` instances." msgstr "" msgid "" @@ -25350,8 +28398,8 @@ msgid "" msgstr "" msgid "" -":gh:`110910`: Fix invalid state handling in :class:`asyncio.TaskGroup` and :" -"class:`asyncio.Timeout`. They now raise proper RuntimeError if they are " +":gh:`110910`: Fix invalid state handling in :class:`asyncio.TaskGroup` " +"and :class:`asyncio.Timeout`. They now raise proper RuntimeError if they are " "improperly used and are left in consistent state after this." msgstr "" @@ -25368,20 +28416,20 @@ msgid "" msgstr "" msgid "" -":gh:`84583`: Make :mod:`pdb` enter post-mortem mode even for :exc:" -"`SyntaxError`" +":gh:`84583`: Make :mod:`pdb` enter post-mortem mode even " +"for :exc:`SyntaxError`" msgstr "" msgid "" -":gh:`80675`: Set ``f_trace_lines = True`` on all frames upon :func:`pdb." -"set_trace`" +":gh:`80675`: Set ``f_trace_lines = True`` on all frames " +"upon :func:`pdb.set_trace`" msgstr "" msgid "" -":gh:`110771`: Expose the setup and cleanup portions of ``asyncio." -"run_forever()`` as the standalone methods ``asyncio.run_forever_setup()`` " -"and ``asyncio.run_forever_cleanup()``. This allows for tighter integration " -"with GUI event loops." +":gh:`110771`: Expose the setup and cleanup portions of " +"``asyncio.run_forever()`` as the standalone methods " +"``asyncio.run_forever_setup()`` and ``asyncio.run_forever_cleanup()``. This " +"allows for tighter integration with GUI event loops." msgstr "" msgid "" @@ -25391,20 +28439,20 @@ msgstr "" msgid "" ":gh:`110392`: Fix :func:`tty.setraw` and :func:`tty.setcbreak`: previously " -"they returned partially modified list of the original tty attributes. :func:" -"`tty.cfmakeraw` and :func:`tty.cfmakecbreak` now make a copy of the list of " -"special characters before modifying it." +"they returned partially modified list of the original tty " +"attributes. :func:`tty.cfmakeraw` and :func:`tty.cfmakecbreak` now make a " +"copy of the list of special characters before modifying it." msgstr "" msgid "" -":gh:`59013`: Make line number of function breakpoint more precise in :mod:" -"`pdb`" +":gh:`59013`: Make line number of function breakpoint more precise " +"in :mod:`pdb`" msgstr "" msgid "" -":gh:`88434`: Emit deprecation warning for non-integer numbers in :mod:" -"`gettext` functions and methods that consider plural forms even if the " -"translation was not found." +":gh:`88434`: Emit deprecation warning for non-integer numbers " +"in :mod:`gettext` functions and methods that consider plural forms even if " +"the translation was not found." msgstr "" msgid "" @@ -25419,9 +28467,9 @@ msgid "" msgstr "" msgid "" -":gh:`109747`: Improve errors for unsupported look-behind patterns. Now re." -"error is raised instead of OverflowError or RuntimeError for too large width " -"of look-behind pattern." +":gh:`109747`: Improve errors for unsupported look-behind patterns. Now " +"re.error is raised instead of OverflowError or RuntimeError for too large " +"width of look-behind pattern." msgstr "" msgid "" @@ -25453,9 +28501,9 @@ msgid "" msgstr "" msgid "" -":gh:`107431`: Make the ``DictProxy`` and ``ListProxy`` types in :mod:" -"`multiprocessing.managers` :ref:`Generic Alias Types` " -"for ``[]`` use in typing contexts." +":gh:`107431`: Make the ``DictProxy`` and ``ListProxy`` types " +"in :mod:`multiprocessing.managers` :ref:`Generic Alias Types` for ``[]`` use in typing contexts." msgstr "" msgid "" @@ -25469,12 +28517,11 @@ msgid "" msgstr "" msgid "" -":gh:`90890`: New methods :meth:`mailbox.Maildir.get_info`, :meth:`mailbox." -"Maildir.set_info`, :meth:`mailbox.Maildir.get_flags`, :meth:`mailbox.Maildir." -"set_flags`, :meth:`mailbox.Maildir.add_flag`, :meth:`mailbox.Maildir." -"remove_flag`. These methods speed up accessing a message's info and/or flags " -"and are useful when it is not necessary to access the message's contents, as " -"when iterating over a Maildir to find messages with specific flags." +":gh:`90890`: New " +"methods :meth:`mailbox.Maildir.get_info`, :meth:`mailbox.Maildir.set_info`, :meth:`mailbox.Maildir.get_flags`, :meth:`mailbox.Maildir.set_flags`, :meth:`mailbox.Maildir.add_flag`, :meth:`mailbox.Maildir.remove_flag`. " +"These methods speed up accessing a message's info and/or flags and are " +"useful when it is not necessary to access the message's contents, as when " +"iterating over a Maildir to find messages with specific flags." msgstr "" msgid "" @@ -25498,8 +28545,8 @@ msgstr "" msgid "" ":gh:`96954`: Switch the storage of the unicode codepoint names to use a " -"different data-structure, a `directed acyclic word graph `_. This " +"different data-structure, a `directed acyclic word graph `_. This " "makes the unicodedata shared library about 440 KiB smaller. Contributed by " "Carl Friedrich Bolz-Tereick using code from the PyPy project." msgstr "" @@ -25516,10 +28563,10 @@ msgid "" msgstr "" msgid "" -":gh:`111808`: Make the default value of ``test.support." -"infinite_recursion()`` to be conditional based on whether optimizations were " -"used when compiling the interpreter. This helps with platforms like WASI " -"whose stack size is greatly restricted in debug builds." +":gh:`111808`: Make the default value of " +"``test.support.infinite_recursion()`` to be conditional based on whether " +"optimizations were used when compiling the interpreter. This helps with " +"platforms like WASI whose stack size is greatly restricted in debug builds." msgstr "" msgid "" @@ -25588,8 +28635,8 @@ msgstr "" msgid "" ":gh:`85283`: The ``errno``, ``md5``, ``resource``, ``winsound``, " "``_ctypes_test``, ``_multiprocessing.posixshmem``, ``_scproxy``, ``_stat``, " -"``_testimportmultiple`` and ``_uuid`` C extensions are now built with the :" -"ref:`limited C API `. Patch by Victor Stinner." +"``_testimportmultiple`` and ``_uuid`` C extensions are now built with " +"the :ref:`limited C API `. Patch by Victor Stinner." msgstr "" msgid "" @@ -25861,17 +28908,17 @@ msgid "" msgstr "" msgid "" -":gh:`110815`: Support non-ASCII keyword names in :c:func:" -"`PyArg_ParseTupleAndKeywords`." +":gh:`110815`: Support non-ASCII keyword names " +"in :c:func:`PyArg_ParseTupleAndKeywords`." msgstr "" msgid "" -":gh:`109587`: Introduced :c:func:`PyUnstable_PerfTrampoline_CompileCode`, :c:" -"func:`PyUnstable_PerfTrampoline_SetPersistAfterFork` and :c:func:" -"`PyUnstable_CopyPerfMapFile`. These functions allow extension modules to " -"initialize trampolines eagerly, after the application is \"warmed up\". This " -"makes it possible to have perf-trampolines running in an always-enabled " -"fashion." +":gh:`109587`: " +"Introduced :c:func:`PyUnstable_PerfTrampoline_CompileCode`, :c:func:`PyUnstable_PerfTrampoline_SetPersistAfterFork` " +"and :c:func:`PyUnstable_CopyPerfMapFile`. These functions allow extension " +"modules to initialize trampolines eagerly, after the application is \"warmed " +"up\". This makes it possible to have perf-trampolines running in an always-" +"enabled fashion." msgstr "" msgid "" @@ -25880,24 +28927,22 @@ msgid "" msgstr "" msgid "" -":gh:`85283`: Add :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawCalloc`, :c:" -"func:`PyMem_RawRealloc` and :c:func:`PyMem_RawFree` to the limited C API. " -"Patch by Victor Stinner." +":gh:`85283`: " +"Add :c:func:`PyMem_RawMalloc`, :c:func:`PyMem_RawCalloc`, :c:func:`PyMem_RawRealloc` " +"and :c:func:`PyMem_RawFree` to the limited C API. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`106672`: Functions :c:func:`PyDict_GetItem`, :c:func:" -"`PyDict_GetItemString`, :c:func:`PyMapping_HasKey`, :c:func:" -"`PyMapping_HasKeyString`, :c:func:`PyObject_HasAttr`, :c:func:" -"`PyObject_HasAttrString`, and :c:func:`PySys_GetObject`, which clear all " -"errors occurred during calling the function, report now them using :func:" -"`sys.unraisablehook`." +":gh:`106672`: " +"Functions :c:func:`PyDict_GetItem`, :c:func:`PyDict_GetItemString`, :c:func:`PyMapping_HasKey`, :c:func:`PyMapping_HasKeyString`, :c:func:`PyObject_HasAttr`, :c:func:`PyObject_HasAttrString`, " +"and :c:func:`PySys_GetObject`, which clear all errors occurred during " +"calling the function, report now them using :func:`sys.unraisablehook`." msgstr "" msgid "" -":gh:`67565`: Remove redundant C-contiguity check in :file:`getargs.c`, :mod:" -"`binascii`, :mod:`ssl` and Argument Clinic. Patched by Stefan Krah and " -"Furkan Onder" +":gh:`67565`: Remove redundant C-contiguity check " +"in :file:`getargs.c`, :mod:`binascii`, :mod:`ssl` and Argument Clinic. " +"Patched by Stefan Krah and Furkan Onder" msgstr "" msgid "Python 3.13.0 alpha 1" @@ -25910,8 +28955,8 @@ msgid "" ":gh:`108310`: Fixed an issue where instances of :class:`ssl.SSLSocket` were " "vulnerable to a bypass of the TLS handshake and included protections (like " "certificate verification) and treating sent unencrypted data as if it were " -"post-handshake TLS encrypted data. Security issue reported as :cve:" -"`2023-40217` by Aapo Oksman. Patch by Gregory P. Smith." +"post-handshake TLS encrypted data. Security issue reported " +"as :cve:`2023-40217` by Aapo Oksman. Patch by Gregory P. Smith." msgstr "" msgid "" @@ -25922,9 +28967,9 @@ msgstr "" msgid "" ":gh:`102988`: Reverted the :mod:`email.utils` security improvement change " -"released in 3.12beta4 that unintentionally caused :mod:`email.utils." -"getaddresses` to fail to parse email addresses with a comma in the quoted " -"name field. See :gh:`106669`." +"released in 3.12beta4 that unintentionally " +"caused :mod:`email.utils.getaddresses` to fail to parse email addresses with " +"a comma in the quoted name field. See :gh:`106669`." msgstr "" msgid "" @@ -25934,8 +28979,8 @@ msgid "" msgstr "" msgid "" -":gh:`102509`: Start initializing ``ob_digit`` during creation of :c:type:" -"`PyLongObject` objects. Patch by Illia Volochii." +":gh:`102509`: Start initializing ``ob_digit`` during creation " +"of :c:type:`PyLongObject` objects. Patch by Illia Volochii." msgstr "" msgid "" @@ -25947,8 +28992,8 @@ msgid ":gh:`110752`: Reset ``ceval.eval_breaker`` in :func:`interpreter_clear`" msgstr "" msgid "" -":gh:`110721`: Use the :mod:`traceback` implementation for the default :c:" -"func:`PyErr_Display` functionality. Patch by Pablo Galindo" +":gh:`110721`: Use the :mod:`traceback` implementation for the " +"default :c:func:`PyErr_Display` functionality. Patch by Pablo Galindo" msgstr "" msgid "" @@ -26055,10 +29100,10 @@ msgstr "" msgid "" ":gh:`109595`: Add :option:`-X cpu_count <-X>` command line option to " -"override return results of :func:`os.cpu_count` and :func:`os." -"process_cpu_count`. This option is useful for users who need to limit CPU " -"resources of a container system without having to modify the container " -"(application code). Patch by Donghee Na." +"override return results of :func:`os.cpu_count` " +"and :func:`os.process_cpu_count`. This option is useful for users who need " +"to limit CPU resources of a container system without having to modify the " +"container (application code). Patch by Donghee Na." msgstr "" msgid "" @@ -26107,8 +29152,8 @@ msgid "" msgstr "" msgid "" -":gh:`109341`: Fix crash when compiling an invalid AST involving a :class:" -"`ast.TypeAlias`." +":gh:`109341`: Fix crash when compiling an invalid AST involving " +"a :class:`ast.TypeAlias`." msgstr "" msgid "" @@ -26131,8 +29176,8 @@ msgid "" msgstr "" msgid "" -":gh:`109179`: Fix bug where the C traceback display drops notes from :exc:" -"`SyntaxError`." +":gh:`109179`: Fix bug where the C traceback display drops notes " +"from :exc:`SyntaxError`." msgstr "" msgid "" @@ -26192,8 +29237,8 @@ msgid "" msgstr "" msgid "" -":gh:`104584`: Fix a crash when running with :envvar:`PYTHONUOPS` or :option:" -"`-X uops <-X>` enabled and an error occurs during optimization." +":gh:`104584`: Fix a crash when running with :envvar:`PYTHONUOPS` " +"or :option:`-X uops <-X>` enabled and an error occurs during optimization." msgstr "" msgid "" @@ -26203,15 +29248,15 @@ msgstr "" msgid "" ":gh:`108520`: Fix :meth:`multiprocessing.synchronize.SemLock.__setstate__` " -"to properly initialize :attr:`multiprocessing.synchronize.SemLock." -"_is_fork_ctx`. This fixes a regression when passing a SemLock across nested " -"processes." +"to properly " +"initialize :attr:`multiprocessing.synchronize.SemLock._is_fork_ctx`. This " +"fixes a regression when passing a SemLock across nested processes." msgstr "" msgid "" -"Rename :attr:`multiprocessing.synchronize.SemLock.is_fork_ctx` to :attr:" -"`multiprocessing.synchronize.SemLock._is_fork_ctx` to avoid exposing it as " -"public API." +"Rename :attr:`multiprocessing.synchronize.SemLock.is_fork_ctx` " +"to :attr:`multiprocessing.synchronize.SemLock._is_fork_ctx` to avoid " +"exposing it as public API." msgstr "" msgid "" @@ -26260,10 +29305,10 @@ msgid "" msgstr "" msgid "" -":gh:`108113`: The :func:`compile` built-in can now accept a new flag, ``ast." -"PyCF_OPTIMIZED_AST``, which is similar to ``ast.PyCF_ONLY_AST`` except that " -"the returned ``AST`` is optimized according to the value of the ``optimize`` " -"argument." +":gh:`108113`: The :func:`compile` built-in can now accept a new flag, " +"``ast.PyCF_OPTIMIZED_AST``, which is similar to ``ast.PyCF_ONLY_AST`` except " +"that the returned ``AST`` is optimized according to the value of the " +"``optimize`` argument." msgstr "" msgid "" @@ -26314,8 +29359,8 @@ msgid "" msgstr "" msgid "" -":gh:`84805`: Autogenerate signature for :c:macro:`METH_NOARGS` and :c:macro:" -"`METH_O` extension functions." +":gh:`84805`: Autogenerate signature for :c:macro:`METH_NOARGS` " +"and :c:macro:`METH_O` extension functions." msgstr "" msgid "" @@ -26327,14 +29372,14 @@ msgid "" msgstr "" msgid "" -":gh:`107659`: Add docstrings for :func:`ctypes.pointer` and :func:`ctypes." -"POINTER`." +":gh:`107659`: Add docstrings for :func:`ctypes.pointer` " +"and :func:`ctypes.POINTER`." msgstr "" msgid "" -":gh:`105848`: Modify the bytecode so that the actual callable for a :opcode:" -"`CALL` is at a consistent position on the stack (regardless of whether or " -"not bound-method-calling optimizations are active)." +":gh:`105848`: Modify the bytecode so that the actual callable for " +"a :opcode:`CALL` is at a consistent position on the stack (regardless of " +"whether or not bound-method-calling optimizations are active)." msgstr "" msgid ":gh:`107674`: Fixed performance regression in ``sys.settrace``." @@ -26378,15 +29423,15 @@ msgstr "" msgid "" ":gh:`107455`: Improve error messages when converting an incompatible type " -"to :class:`ctypes.c_char_p`, :class:`ctypes.c_wchar_p` and :class:`ctypes." -"c_void_p`." +"to :class:`ctypes.c_char_p`, :class:`ctypes.c_wchar_p` " +"and :class:`ctypes.c_void_p`." msgstr "" msgid "" ":gh:`107263`: Increase C recursion limit for functions other than the main " -"interpreter from 800 to 1500. This should allow functions like ``list." -"__repr__`` and ``json.dumps`` to handle all the inputs that they could prior " -"to 3.12" +"interpreter from 800 to 1500. This should allow functions like " +"``list.__repr__`` and ``json.dumps`` to handle all the inputs that they " +"could prior to 3.12" msgstr "" msgid "" @@ -26396,9 +29441,9 @@ msgstr "" msgid "" ":gh:`104432`: Fix potential unaligned memory access on C APIs involving " -"returned sequences of ``char *`` pointers within the :mod:`grp` and :mod:" -"`socket` modules. These were revealed using a ``-fsaniziter=alignment`` " -"build on ARM macOS. Patch by Christopher Chavez." +"returned sequences of ``char *`` pointers within the :mod:`grp` " +"and :mod:`socket` modules. These were revealed using a ``-" +"fsaniziter=alignment`` build on ARM macOS. Patch by Christopher Chavez." msgstr "" msgid "" @@ -26537,14 +29582,14 @@ msgstr "" msgid "" ":gh:`106396`: When the format specification of an f-string expression is " "empty, the parser now generates an empty :class:`ast.JoinedStr` node for it " -"instead of an one-element :class:`ast.JoinedStr` with an empty string :class:" -"`ast.Constant`." +"instead of an one-element :class:`ast.JoinedStr` with an empty " +"string :class:`ast.Constant`." msgstr "" msgid "" ":gh:`100288`: Specialize :opcode:`LOAD_ATTR` for non-descriptors on the " -"class. Adds :opcode:`LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES` and :opcode:" -"`LOAD_ATTR_NONDESCRIPTOR_NO_DICT`." +"class. Adds :opcode:`LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES` " +"and :opcode:`LOAD_ATTR_NONDESCRIPTOR_NO_DICT`." msgstr "" msgid "" @@ -26563,8 +29608,8 @@ msgid "" msgstr "" msgid "" -":gh:`106182`: :func:`sys.getfilesystemencoding` and :mod:`sys." -"getfilesystemencodeerrors` now return interned Unicode object." +":gh:`106182`: :func:`sys.getfilesystemencoding` " +"and :mod:`sys.getfilesystemencodeerrors` now return interned Unicode object." msgstr "" msgid "" @@ -26586,8 +29631,8 @@ msgstr "" msgid "" ":gh:`105730`: Allow any callable other than type objects as the condition " -"predicate in :meth:`BaseExceptionGroup.split` and :meth:`BaseExceptionGroup." -"subgroup`." +"predicate in :meth:`BaseExceptionGroup.split` " +"and :meth:`BaseExceptionGroup.subgroup`." msgstr "" msgid "" @@ -26597,10 +29642,11 @@ msgstr "" msgid "" ":gh:`106003`: Add a new :opcode:`TO_BOOL` instruction, which performs " -"boolean conversions for :opcode:`POP_JUMP_IF_TRUE`, :opcode:" -"`POP_JUMP_IF_FALSE`, and :opcode:`UNARY_NOT` (which all expect exact :class:" -"`bool` values now). Also, modify the oparg of :opcode:`COMPARE_OP` to " -"include an optional \"boolean conversion\" flag." +"boolean conversions " +"for :opcode:`POP_JUMP_IF_TRUE`, :opcode:`POP_JUMP_IF_FALSE`, " +"and :opcode:`UNARY_NOT` (which all expect exact :class:`bool` values now). " +"Also, modify the oparg of :opcode:`COMPARE_OP` to include an optional " +"\"boolean conversion\" flag." msgstr "" msgid "" @@ -26640,8 +29686,8 @@ msgid "" msgstr "" msgid "" -":gh:`105331`: Raise :exc:`ValueError` if the ``delay`` argument to :func:" -"`asyncio.sleep` is a NaN (matching :func:`time.sleep`)." +":gh:`105331`: Raise :exc:`ValueError` if the ``delay`` argument " +"to :func:`asyncio.sleep` is a NaN (matching :func:`time.sleep`)." msgstr "" msgid "" @@ -26688,8 +29734,8 @@ msgid "" msgstr "" msgid "" -":gh:`105486`: Change the repr of ``ParamSpec`` list of args in ``types." -"GenericAlias``." +":gh:`105486`: Change the repr of ``ParamSpec`` list of args in " +"``types.GenericAlias``." msgstr "" msgid "" @@ -26746,9 +29792,9 @@ msgstr "" msgid "" ":gh:`98963`: Restore the ability for a subclass of :class:`property` to " "define ``__slots__`` or otherwise be dict-less by ignoring failures to set a " -"docstring on such a class. This behavior had regressed in 3.12beta1. An :" -"exc:`AttributeError` where there had not previously been one was disruptive " -"to existing code." +"docstring on such a class. This behavior had regressed in 3.12beta1. " +"An :exc:`AttributeError` where there had not previously been one was " +"disruptive to existing code." msgstr "" msgid "" @@ -26791,9 +29837,9 @@ msgstr "" msgid "" ":gh:`104799`: Attributes of :mod:`ast` nodes that are lists now default to " -"the empty list if omitted. This means that some code that previously raised :" -"exc:`TypeError` when the AST node was used will now proceed with the empty " -"list instead. Patch by Jelle Zijlstra." +"the empty list if omitted. This means that some code that previously " +"raised :exc:`TypeError` when the AST node was used will now proceed with the " +"empty list instead. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -26803,8 +29849,9 @@ msgid "" msgstr "" msgid "" -":gh:`105035`: Fix :func:`super` calls on types with custom :c:member:" -"`~PyTypeObject.tp_getattro` implementation (e.g. meta-types.)" +":gh:`105035`: Fix :func:`super` calls on types with " +"custom :c:member:`~PyTypeObject.tp_getattro` implementation (e.g. meta-" +"types.)" msgstr "" msgid "" @@ -26813,8 +29860,8 @@ msgid "" msgstr "" msgid "" -":gh:`105013`: Fix handling of multiline parenthesized lambdas in :func:" -"`inspect.getsource`. Patch by Pablo Galindo" +":gh:`105013`: Fix handling of multiline parenthesized lambdas " +"in :func:`inspect.getsource`. Patch by Pablo Galindo" msgstr "" msgid "" @@ -26829,9 +29876,9 @@ msgid "" msgstr "" msgid "" -":gh:`104972`: Ensure that the ``line`` attribute in :class:`tokenize." -"TokenInfo` objects in the :mod:`tokenize` module are always correct. Patch " -"by Pablo Galindo" +":gh:`104972`: Ensure that the ``line`` attribute " +"in :class:`tokenize.TokenInfo` objects in the :mod:`tokenize` module are " +"always correct. Patch by Pablo Galindo" msgstr "" msgid "" @@ -26840,13 +29887,13 @@ msgid "" msgstr "" msgid "" -":gh:`104690`: Starting new threads and process creation through :func:`os." -"fork` during interpreter shutdown (such as from :mod:`atexit` handlers) is " -"no longer supported. It can lead to race condition between the main Python " -"runtime thread freeing thread states while internal :mod:`threading` " -"routines are trying to allocate and use the state of just created threads. " -"Or forked children trying to use the mid-shutdown runtime and thread state " -"in the child process." +":gh:`104690`: Starting new threads and process creation " +"through :func:`os.fork` during interpreter shutdown (such as " +"from :mod:`atexit` handlers) is no longer supported. It can lead to race " +"condition between the main Python runtime thread freeing thread states while " +"internal :mod:`threading` routines are trying to allocate and use the state " +"of just created threads. Or forked children trying to use the mid-shutdown " +"runtime and thread state in the child process." msgstr "" msgid "" @@ -26867,8 +29914,8 @@ msgstr "" msgid "" ":gh:`89091`: Raise :exc:`RuntimeWarning` for unawaited async generator " -"methods like :meth:`~agen.asend`, :meth:`~agen.athrow` and :meth:`~agen." -"aclose`. Patch by Kumar Aditya." +"methods like :meth:`~agen.asend`, :meth:`~agen.athrow` " +"and :meth:`~agen.aclose`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -26919,14 +29966,14 @@ msgid "" msgstr "" msgid "" -":gh:`110733`: Micro-optimization: Avoid calling ``min()``, ``max()`` in :" -"meth:`BaseEventLoop._run_once`." +":gh:`110733`: Micro-optimization: Avoid calling ``min()``, ``max()`` " +"in :meth:`BaseEventLoop._run_once`." msgstr "" msgid "" -":gh:`94597`: Added :class:`asyncio.EventLoop` for use with the :func:" -"`asyncio.run` *loop_factory* kwarg to avoid calling the asyncio policy " -"system." +":gh:`94597`: Added :class:`asyncio.EventLoop` for use with " +"the :func:`asyncio.run` *loop_factory* kwarg to avoid calling the asyncio " +"policy system." msgstr "" msgid "" @@ -26938,9 +29985,9 @@ msgstr "" msgid "" ":gh:`110488`: Fix a couple of issues in :meth:`pathlib.PurePath.with_name`: " -"a single dot was incorrectly considered a valid name, and in :class:" -"`PureWindowsPath`, a name with an NTFS alternate data stream, like ``a:b``, " -"was incorrectly considered invalid." +"a single dot was incorrectly considered a valid name, and " +"in :class:`PureWindowsPath`, a name with an NTFS alternate data stream, like " +"``a:b``, was incorrectly considered invalid." msgstr "" msgid "" @@ -26961,15 +30008,15 @@ msgid "" msgstr "" msgid "" -":gh:`89902`: Deprecate non-standard format specifier \"N\" for :class:" -"`decimal.Decimal`. It was not documented and only supported in the C " -"implementation." +":gh:`89902`: Deprecate non-standard format specifier \"N\" " +"for :class:`decimal.Decimal`. It was not documented and only supported in " +"the C implementation." msgstr "" msgid "" -":gh:`110378`: :func:`~contextlib.contextmanager` and :func:`~contextlib." -"asynccontextmanager` context managers now close an invalid underlying " -"generator object that yields more then one value." +":gh:`110378`: :func:`~contextlib.contextmanager` " +"and :func:`~contextlib.asynccontextmanager` context managers now close an " +"invalid underlying generator object that yields more then one value." msgstr "" msgid "" @@ -26998,20 +30045,20 @@ msgid ":gh:`110249`: Add ``--inline-caches`` flag to ``dis`` command line." msgstr "" msgid "" -":gh:`109653`: Fix a Python 3.12 regression in the import time of :mod:" -"`random`. Patch by Alex Waygood." +":gh:`109653`: Fix a Python 3.12 regression in the import time " +"of :mod:`random`. Patch by Alex Waygood." msgstr "" msgid "" -":gh:`110222`: Add support of struct sequence objects in :func:`copy." -"replace`. Patched by Xuehai Pan." +":gh:`110222`: Add support of struct sequence objects " +"in :func:`copy.replace`. Patched by Xuehai Pan." msgstr "" msgid "" -":gh:`109649`: :mod:`multiprocessing`, :mod:`concurrent.futures`, :mod:" -"`compileall`: Replace :func:`os.cpu_count` with :func:`os.process_cpu_count` " -"to select the default number of worker threads and processes. Get the CPU " -"affinity if supported. Patch by Victor Stinner." +":gh:`109649`: :mod:`multiprocessing`, :mod:`concurrent.futures`, :mod:`compileall`: " +"Replace :func:`os.cpu_count` with :func:`os.process_cpu_count` to select the " +"default number of worker threads and processes. Get the CPU affinity if " +"supported. Patch by Victor Stinner." msgstr "" msgid "" @@ -27020,10 +30067,10 @@ msgid "" msgstr "" msgid "" -":gh:`110036`: On Windows, multiprocessing ``Popen.terminate()`` now catches :" -"exc:`PermissionError` and get the process exit code. If the process is still " -"running, raise again the :exc:`PermissionError`. Otherwise, the process " -"terminated as expected: store its exit code. Patch by Victor Stinner." +":gh:`110036`: On Windows, multiprocessing ``Popen.terminate()`` now " +"catches :exc:`PermissionError` and get the process exit code. If the process " +"is still running, raise again the :exc:`PermissionError`. Otherwise, the " +"process terminated as expected: store its exit code. Patch by Victor Stinner." msgstr "" msgid "" @@ -27043,9 +30090,10 @@ msgid "" msgstr "" msgid "" -":gh:`109631`: :mod:`re` functions such as :func:`re.findall`, :func:`re." -"split`, :func:`re.search` and :func:`re.sub` which perform short repeated " -"matches can now be interrupted by user." +":gh:`109631`: :mod:`re` functions such " +"as :func:`re.findall`, :func:`re.split`, :func:`re.search` " +"and :func:`re.sub` which perform short repeated matches can now be " +"interrupted by user." msgstr "" msgid "" @@ -27128,14 +30176,15 @@ msgid ":gh:`109559`: Update :mod:`unicodedata` database to Unicode 15.1.0." msgstr "" msgid "" -":gh:`109543`: Remove unnecessary :func:`hasattr` check during :data:`typing." -"TypedDict` creation." +":gh:`109543`: Remove unnecessary :func:`hasattr` check " +"during :data:`typing.TypedDict` creation." msgstr "" msgid "" -":gh:`109495`: Remove unnecessary extra ``__slots__`` in :class:`~datetime." -"datetime`\\'s pure python implementation to reduce memory size, as they are " -"defined in the superclass. Patch by James Hilton-Balfe" +":gh:`109495`: Remove unnecessary extra ``__slots__`` " +"in :class:`~datetime.datetime`\\'s pure python implementation to reduce " +"memory size, as they are defined in the superclass. Patch by James Hilton-" +"Balfe" msgstr "" msgid "" @@ -27159,8 +30208,8 @@ msgid "" msgstr "" msgid "" -":gh:`109319`: Deprecate the ``dis.HAVE_ARGUMENT`` field in favour of ``dis." -"hasarg``." +":gh:`109319`: Deprecate the ``dis.HAVE_ARGUMENT`` field in favour of " +"``dis.hasarg``." msgstr "" msgid "" @@ -27183,15 +30232,15 @@ msgid "" msgstr "" msgid "" -":gh:`50644`: Attempts to pickle or create a shallow or deep copy of :mod:" -"`codecs` streams now raise a TypeError. Previously, copying failed with a " -"RecursionError, while pickling produced wrong results that eventually caused " -"unpickling to fail with a RecursionError." +":gh:`50644`: Attempts to pickle or create a shallow or deep copy " +"of :mod:`codecs` streams now raise a TypeError. Previously, copying failed " +"with a RecursionError, while pickling produced wrong results that eventually " +"caused unpickling to fail with a RecursionError." msgstr "" msgid "" -":gh:`109174`: Add support of :class:`types.SimpleNamespace` in :func:`copy." -"replace`." +":gh:`109174`: Add support of :class:`types.SimpleNamespace` " +"in :func:`copy.replace`." msgstr "" msgid "" @@ -27267,18 +30316,18 @@ msgid ":gh:`105829`: Fix concurrent.futures.ProcessPoolExecutor deadlock" msgstr "" msgid "" -":gh:`108295`: Fix crashes related to use of weakrefs on :data:`typing." -"TypeVar`." +":gh:`108295`: Fix crashes related to use of weakrefs " +"on :data:`typing.TypeVar`." msgstr "" msgid ":gh:`108463`: Make expressions/statements work as expected in pdb" msgstr "" msgid "" -":gh:`108277`: Add :func:`os.timerfd_create`, :func:`os.timerfd_settime`, :" -"func:`os.timerfd_gettime`, :func:`os.timerfd_settime_ns`, and :func:`os." -"timerfd_gettime_ns` to provide a low level interface for Linux's timer " -"notification file descriptor." +":gh:`108277`: " +"Add :func:`os.timerfd_create`, :func:`os.timerfd_settime`, :func:`os.timerfd_gettime`, :func:`os.timerfd_settime_ns`, " +"and :func:`os.timerfd_gettime_ns` to provide a low level interface for " +"Linux's timer notification file descriptor." msgstr "" msgid "" @@ -27288,8 +30337,8 @@ msgid "" msgstr "" msgid "" -":gh:`64662`: Fix support for virtual tables in :meth:`sqlite3.Connection." -"iterdump`. Patch by Aviv Palivoda." +":gh:`64662`: Fix support for virtual tables " +"in :meth:`sqlite3.Connection.iterdump`. Patch by Aviv Palivoda." msgstr "" msgid "" @@ -27323,16 +30372,16 @@ msgid "" msgstr "" msgid "" -":gh:`105736`: Harmonized the pure Python version of :class:`~collections." -"OrderedDict` with the C version. Now, both versions set up their internal " -"state in ``__new__``. Formerly, the pure Python version did the set up in " -"``__init__``." +":gh:`105736`: Harmonized the pure Python version " +"of :class:`~collections.OrderedDict` with the C version. Now, both versions " +"set up their internal state in ``__new__``. Formerly, the pure Python " +"version did the set up in ``__init__``." msgstr "" msgid "" -":gh:`108083`: Fix bugs in the constructor of :mod:`sqlite3.Connection` and :" -"meth:`sqlite3.Connection.close` where exceptions could be leaked. Patch by " -"Erlend E. Aasland." +":gh:`108083`: Fix bugs in the constructor of :mod:`sqlite3.Connection` " +"and :meth:`sqlite3.Connection.close` where exceptions could be leaked. Patch " +"by Erlend E. Aasland." msgstr "" msgid "" @@ -27341,17 +30390,17 @@ msgid "" msgstr "" msgid "" -":gh:`105539`: :mod:`sqlite3` now emits an :exc:`ResourceWarning` if a :class:" -"`sqlite3.Connection` object is not :meth:`closed ` " -"explicitly. Patch by Erlend E. Aasland." +":gh:`105539`: :mod:`sqlite3` now emits an :exc:`ResourceWarning` if " +"a :class:`sqlite3.Connection` object is not :meth:`closed " +"` explicitly. Patch by Erlend E. Aasland." msgstr "" msgid "" -":gh:`107995`: The ``__module__`` attribute on instances of :class:`functools." -"cached_property` is now set to the name of the module in which the " -"cached_property is defined, rather than \"functools\". This means that " -"doctests in ``cached_property`` docstrings are now properly collected by " -"the :mod:`doctest` module. Patch by Tyler Smart." +":gh:`107995`: The ``__module__`` attribute on instances " +"of :class:`functools.cached_property` is now set to the name of the module " +"in which the cached_property is defined, rather than \"functools\". This " +"means that doctests in ``cached_property`` docstrings are now properly " +"collected by the :mod:`doctest` module. Patch by Tyler Smart." msgstr "" msgid "" @@ -27373,20 +30422,20 @@ msgid "" msgstr "" msgid "" -":gh:`93057`: Passing more than one positional argument to :func:`sqlite3." -"connect` and the :class:`sqlite3.Connection` constructor is deprecated. The " -"remaining parameters will become keyword-only in Python 3.15. Patch by " -"Erlend E. Aasland." +":gh:`93057`: Passing more than one positional argument " +"to :func:`sqlite3.connect` and the :class:`sqlite3.Connection` constructor " +"is deprecated. The remaining parameters will become keyword-only in Python " +"3.15. Patch by Erlend E. Aasland." msgstr "" msgid "" -":gh:`76913`: Add *merge_extra* parameter/feature to :class:`logging." -"LoggerAdapter`" +":gh:`76913`: Add *merge_extra* parameter/feature " +"to :class:`logging.LoggerAdapter`" msgstr "" msgid "" -":gh:`107913`: Fix possible losses of ``errno`` and ``winerror`` values in :" -"exc:`OSError` exceptions if they were cleared or modified by the cleanup " +":gh:`107913`: Fix possible losses of ``errno`` and ``winerror`` values " +"in :exc:`OSError` exceptions if they were cleared or modified by the cleanup " "code before creating the exception object." msgstr "" @@ -27400,8 +30449,8 @@ msgid ":gh:`107812`: Extend socket's netlink support to the FreeBSD platform." msgstr "" msgid "" -":gh:`107805`: Fix signatures of module-level generated functions in :mod:" -"`turtle`." +":gh:`107805`: Fix signatures of module-level generated functions " +"in :mod:`turtle`." msgstr "" msgid "" @@ -27411,8 +30460,8 @@ msgstr "" msgid "" ":gh:`56166`: Deprecate passing optional arguments *maxsplit*, *count* and " -"*flags* in module-level functions :func:`re.split`, :func:`re.sub` and :func:" -"`re.subn` as positional. They should only be passed by keyword." +"*flags* in module-level functions :func:`re.split`, :func:`re.sub` " +"and :func:`re.subn` as positional. They should only be passed by keyword." msgstr "" msgid ":gh:`107710`: Speed up :func:`logging.getHandlerNames`." @@ -27429,14 +30478,15 @@ msgid "" msgstr "" msgid "" -":gh:`72684`: Add :mod:`tkinter` widget methods: :meth:`!tk_busy_hold`, :meth:" -"`!tk_busy_configure`, :meth:`!tk_busy_cget`, :meth:`!tk_busy_forget`, :meth:" -"`!tk_busy_current`, and :meth:`!tk_busy_status`." +":gh:`72684`: Add :mod:`tkinter` widget methods: :meth:`!" +"tk_busy_hold`, :meth:`!tk_busy_configure`, :meth:`!tk_busy_cget`, :meth:`!" +"tk_busy_forget`, :meth:`!tk_busy_current`, and :meth:`!tk_busy_status`." msgstr "" msgid "" -":gh:`106684`: Raise :exc:`ResourceWarning` when :class:`asyncio." -"StreamWriter` is not closed leading to memory leaks. Patch by Kumar Aditya." +":gh:`106684`: Raise :exc:`ResourceWarning` " +"when :class:`asyncio.StreamWriter` is not closed leading to memory leaks. " +"Patch by Kumar Aditya." msgstr "" msgid ":gh:`107465`: Add :meth:`pathlib.Path.from_uri` classmethod." @@ -27447,8 +30497,8 @@ msgid "" "``SSL_ERROR_SYSCALL`` instead of ``SSL_ERROR_SSL`` when a certification " "verification has failed, but the error parameters will still contain " "``ERR_LIB_SSL`` and ``SSL_R_CERTIFICATE_VERIFY_FAILED``. We are now " -"detecting this situation and raising the appropriate ``ssl." -"SSLCertVerificationError``. Patch by Pablo Galindo" +"detecting this situation and raising the appropriate " +"``ssl.SSLCertVerificationError``. Patch by Pablo Galindo" msgstr "" msgid "" @@ -27475,13 +30525,13 @@ msgid "" msgstr "" msgid "" -":gh:`107409`: Set :attr:`!__wrapped__` attribute in :func:`reprlib." -"recursive_repr`." +":gh:`107409`: Set :attr:`!__wrapped__` attribute " +"in :func:`reprlib.recursive_repr`." msgstr "" msgid "" -":gh:`107406`: Implement new :meth:`__repr__` method for :class:`struct." -"Struct`. Now it returns ``Struct()``." +":gh:`107406`: Implement new :meth:`__repr__` method " +"for :class:`struct.Struct`. Now it returns ``Struct()``." msgstr "" msgid "" @@ -27490,8 +30540,8 @@ msgid "" msgstr "" msgid "" -":gh:`78722`: Fix issue where :meth:`pathlib.Path.iterdir` did not raise :exc:" -"`OSError` until iterated." +":gh:`78722`: Fix issue where :meth:`pathlib.Path.iterdir` did not " +"raise :exc:`OSError` until iterated." msgstr "" msgid "" @@ -27505,13 +30555,13 @@ msgid "" msgstr "" msgid "" -":gh:`107089`: Shelves opened with :func:`shelve.open` have a much faster :" -"meth:`clear` method. Patch by James Cave." +":gh:`107089`: Shelves opened with :func:`shelve.open` have a much " +"faster :meth:`clear` method. Patch by James Cave." msgstr "" msgid "" -":gh:`82500`: Fix overflow on 32-bit systems with :mod:`asyncio` :func:`os." -"sendfile` implementation." +":gh:`82500`: Fix overflow on 32-bit systems " +"with :mod:`asyncio` :func:`os.sendfile` implementation." msgstr "" msgid "" @@ -27520,8 +30570,8 @@ msgid "" msgstr "" msgid "" -":gh:`65495`: Use lowercase ``mail from`` and ``rcpt to`` in :class:`smptlib." -"SMTP`." +":gh:`65495`: Use lowercase ``mail from`` and ``rcpt to`` " +"in :class:`smptlib.SMTP`." msgstr "" msgid "" @@ -27579,9 +30629,10 @@ msgid ":gh:`106789`: Remove import of :mod:`pprint` from :mod:`sysconfig`." msgstr "" msgid "" -":gh:`105726`: Added ``__slots__`` to :class:`contextlib." -"AbstractContextManager` and :class:`contextlib.AbstractAsyncContextManager` " -"so that child classes can use ``__slots__``." +":gh:`105726`: Added ``__slots__`` " +"to :class:`contextlib.AbstractContextManager` " +"and :class:`contextlib.AbstractAsyncContextManager` so that child classes " +"can use ``__slots__``." msgstr "" msgid ":gh:`106774`: Update the bundled copy of pip to version 23.2.1." @@ -27593,9 +30644,9 @@ msgid "" msgstr "" msgid "" -":gh:`106752`: Fixed several bugs in zipfile.Path, including: in :meth:" -"`zipfile.Path.match`, Windows separators are no longer honored (and never " -"were meant to be); Fixed ``name``/``suffix``/``suffixes``/``stem`` " +":gh:`106752`: Fixed several bugs in zipfile.Path, including: " +"in :meth:`zipfile.Path.match`, Windows separators are no longer honored (and " +"never were meant to be); Fixed ``name``/``suffix``/``suffixes``/``stem`` " "operations when no filename is present and the Path is not at the root of " "the zipfile; Reworked glob for performance and more correct matching " "behavior." @@ -27632,8 +30683,8 @@ msgid "" msgstr "" msgid "" -":gh:`89427`: Set the environment variable ``VIRTUAL_ENV_PROMPT`` at :mod:" -"`venv` activation, even when ``VIRTUAL_ENV_DISABLE_PROMPT`` is set." +":gh:`89427`: Set the environment variable ``VIRTUAL_ENV_PROMPT`` " +"at :mod:`venv` activation, even when ``VIRTUAL_ENV_DISABLE_PROMPT`` is set." msgstr "" msgid "" @@ -27652,14 +30703,14 @@ msgid "" msgstr "" msgid "" -":gh:`106554`: :mod:`selectors`: Reduce Selector overhead by using a ``dict." -"get()`` to lookup file descriptors." +":gh:`106554`: :mod:`selectors`: Reduce Selector overhead by using a " +"``dict.get()`` to lookup file descriptors." msgstr "" msgid "" -":gh:`106558`: Remove ref cycle in callers of :func:`~multiprocessing." -"managers.convert_to_error` by deleting ``result`` from scope in a " -"``finally`` block." +":gh:`106558`: Remove ref cycle in callers " +"of :func:`~multiprocessing.managers.convert_to_error` by deleting ``result`` " +"from scope in a ``finally`` block." msgstr "" msgid "" @@ -27679,9 +30730,9 @@ msgid "" msgstr "" msgid "" -":gh:`106531`: Removed ``_legacy`` and the names it provided from ``importlib." -"resources``: ``Resource``, ``contents``, ``is_resource``, ``open_binary``, " -"``open_text``, ``path``, ``read_binary``, and ``read_text``." +":gh:`106531`: Removed ``_legacy`` and the names it provided from " +"``importlib.resources``: ``Resource``, ``contents``, ``is_resource``, " +"``open_binary``, ``open_text``, ``path``, ``read_binary``, and ``read_text``." msgstr "" msgid "" @@ -27705,8 +30756,8 @@ msgid "" msgstr "" msgid "" -":gh:`106403`: Instances of :class:`typing.TypeVar`, :class:`typing." -"ParamSpec`, :class:`typing.ParamSpecArgs`, :class:`typing.ParamSpecKwargs`, " +":gh:`106403`: Instances " +"of :class:`typing.TypeVar`, :class:`typing.ParamSpec`, :class:`typing.ParamSpecArgs`, :class:`typing.ParamSpecKwargs`, " "and :class:`typing.TypeVarTuple` once again support weak references, fixing " "a regression introduced in Python 3.12.0 beta 1. Patch by Jelle Zijlstra." msgstr "" @@ -27720,8 +30771,9 @@ msgstr "" msgid "" ":gh:`106292`: Check for an instance-dict cached value in the :meth:`__get__` " "method of :func:`functools.cached_property`. This better matches the " -"pre-3.12 behavior and improves compatibility for users subclassing :func:" -"`functools.cached_property` and adding a :meth:`__set__` method." +"pre-3.12 behavior and improves compatibility for users " +"subclassing :func:`functools.cached_property` and adding a :meth:`__set__` " +"method." msgstr "" msgid "" @@ -27730,8 +30782,9 @@ msgid "" msgstr "" msgid "" -":gh:`106330`: Fix incorrect matching of empty paths in :meth:`pathlib." -"PurePath.match`. This bug was introduced in Python 3.12.0 beta 1." +":gh:`106330`: Fix incorrect matching of empty paths " +"in :meth:`pathlib.PurePath.match`. This bug was introduced in Python 3.12.0 " +"beta 1." msgstr "" msgid "" @@ -27750,8 +30803,9 @@ msgid "" msgstr "" msgid "" -":gh:`106236`: Replace ``assert`` statements with ``raise RuntimeError`` in :" -"mod:`threading`, so that ``_DummyThread`` cannot be joined even with ``-OO``." +":gh:`106236`: Replace ``assert`` statements with ``raise RuntimeError`` " +"in :mod:`threading`, so that ``_DummyThread`` cannot be joined even with ``-" +"OO``." msgstr "" msgid "" @@ -27783,8 +30837,8 @@ msgstr "" msgid "" ":gh:`105974`: Fix bug where a :class:`typing.Protocol` class that had one or " -"more non-callable members would raise :exc:`TypeError` when :func:" -"`issubclass` was called against it, even if it defined a custom " +"more non-callable members would raise :exc:`TypeError` " +"when :func:`issubclass` was called against it, even if it defined a custom " "``__subclasshook__`` method. The behaviour in Python 3.11 and lower -- which " "has now been restored -- was not to raise :exc:`TypeError` in these " "situations if a custom ``__subclasshook__`` method was defined. Patch by " @@ -27800,9 +30854,9 @@ msgid "" msgstr "" msgid "" -":gh:`105808`: Fix a regression introduced in :gh:`101251` for 3.12, causing :" -"meth:`gzip.GzipFile.flush` to not flush the compressor (nor pass along the " -"``zip_mode`` argument)." +":gh:`105808`: Fix a regression introduced in :gh:`101251` for 3.12, " +"causing :meth:`gzip.GzipFile.flush` to not flush the compressor (nor pass " +"along the ``zip_mode`` argument)." msgstr "" msgid "" @@ -27819,8 +30873,9 @@ msgid "" msgstr "" msgid "" -":gh:`105793`: Add *follow_symlinks* keyword-only argument to :meth:`pathlib." -"Path.is_dir` and :meth:`~pathlib.Path.is_file`, defaulting to ``True``." +":gh:`105793`: Add *follow_symlinks* keyword-only argument " +"to :meth:`pathlib.Path.is_dir` and :meth:`~pathlib.Path.is_file`, defaulting " +"to ``True``." msgstr "" msgid "" @@ -27835,8 +30890,9 @@ msgid ":gh:`105745`: Fix ``webbrowser.Konqueror.open`` method." msgstr "" msgid "" -":gh:`105733`: :mod:`ctypes`: Deprecate undocumented :func:`!ctypes." -"SetPointerType` and :func:`!ctypes.ARRAY` functions. Patch by Victor Stinner." +":gh:`105733`: :mod:`ctypes`: Deprecate undocumented :func:`!" +"ctypes.SetPointerType` and :func:`!ctypes.ARRAY` functions. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -27856,8 +30912,9 @@ msgid "" msgstr "" msgid "" -":gh:`105626`: Change the default return value of :meth:`http.client." -"HTTPConnection.get_proxy_response_headers` to be ``None`` and not ``{}``." +":gh:`105626`: Change the default return value " +"of :meth:`http.client.HTTPConnection.get_proxy_response_headers` to be " +"``None`` and not ``{}``." msgstr "" msgid "" @@ -27950,10 +31007,10 @@ msgid "" msgstr "" msgid "" -":gh:`70303`: Emit :exc:`FutureWarning` from :meth:`pathlib.Path.glob` and :" -"meth:`~pathlib.Path.rglob` if the given pattern ends with \"``**``\". In a " -"future Python release, patterns with this ending will match both files and " -"directories. Add a trailing slash to only match directories." +":gh:`70303`: Emit :exc:`FutureWarning` from :meth:`pathlib.Path.glob` " +"and :meth:`~pathlib.Path.rglob` if the given pattern ends with \"``**``\". " +"In a future Python release, patterns with this ending will match both files " +"and directories. Add a trailing slash to only match directories." msgstr "" msgid "" @@ -27963,17 +31020,18 @@ msgid "" msgstr "" msgid "" -":gh:`105382`: Remove *cafile*, *capath* and *cadefault* parameters of the :" -"func:`urllib.request.urlopen` function, deprecated in Python 3.6. Patch by " -"Victor Stinner." +":gh:`105382`: Remove *cafile*, *capath* and *cadefault* parameters of " +"the :func:`urllib.request.urlopen` function, deprecated in Python 3.6. Patch " +"by Victor Stinner." msgstr "" msgid "" -":gh:`105376`: :mod:`logging`: Remove undocumented and untested ``Logger." -"warn()`` and ``LoggerAdapter.warn()`` methods and ``logging.warn()`` " -"function. Deprecated since Python 3.3, they were aliases to the :meth:" -"`logging.Logger.warning` method, :meth:`!logging.LoggerAdapter.warning` " -"method and :func:`logging.warning` function. Patch by Victor Stinner." +":gh:`105376`: :mod:`logging`: Remove undocumented and untested " +"``Logger.warn()`` and ``LoggerAdapter.warn()`` methods and " +"``logging.warn()`` function. Deprecated since Python 3.3, they were aliases " +"to the :meth:`logging.Logger.warning` method, :meth:`!" +"logging.LoggerAdapter.warning` method and :func:`logging.warning` function. " +"Patch by Victor Stinner." msgstr "" msgid ":gh:`105332`: Revert pickling method from by-name back to by-value." @@ -27990,8 +31048,8 @@ msgstr "" msgid "" ":gh:`105280`: Fix bug where ``isinstance([], collections.abc.Mapping)`` " "could evaluate to ``True`` if garbage collection happened at the wrong time. " -"The bug was caused by changes to the implementation of :class:`typing." -"Protocol` in Python 3.12." +"The bug was caused by changes to the implementation " +"of :class:`typing.Protocol` in Python 3.12." msgstr "" msgid "" @@ -27999,9 +31057,9 @@ msgid "" msgstr "" msgid "" -":gh:`105239`: Fix longstanding bug where ``issubclass(object, typing." -"Protocol)`` would evaluate to ``True`` in some edge cases. Patch by Alex " -"Waygood." +":gh:`105239`: Fix longstanding bug where ``issubclass(object, " +"typing.Protocol)`` would evaluate to ``True`` in some edge cases. Patch by " +"Alex Waygood." msgstr "" msgid "" @@ -28015,8 +31073,8 @@ msgid "" msgstr "" msgid "" -":gh:`105080`: Fixed inconsistent signature on derived classes for :func:" -"`inspect.signature`" +":gh:`105080`: Fixed inconsistent signature on derived classes " +"for :func:`inspect.signature`" msgstr "" msgid "" @@ -28037,15 +31095,15 @@ msgstr "" msgid "" ":gh:`105096`: :mod:`wave`: Deprecate the ``getmark()``, ``setmark()`` and " -"``getmarkers()`` methods of the :class:`wave.Wave_read` and :class:`wave." -"Wave_write` classes. They will be removed in Python 3.15. Patch by Victor " -"Stinner." +"``getmarkers()`` methods of the :class:`wave.Wave_read` " +"and :class:`wave.Wave_write` classes. They will be removed in Python 3.15. " +"Patch by Victor Stinner." msgstr "" msgid "" -":gh:`104992`: Remove the untested and undocumented :meth:`!unittest." -"TestProgram.usageExit` method, deprecated in Python 3.11. Patch by Hugo van " -"Kemenade." +":gh:`104992`: Remove the untested and undocumented :meth:`!" +"unittest.TestProgram.usageExit` method, deprecated in Python 3.11. Patch by " +"Hugo van Kemenade." msgstr "" msgid "" @@ -28085,14 +31143,15 @@ msgid "" msgstr "" msgid "" -":gh:`104935`: Fix bugs with the interaction between :func:`typing." -"runtime_checkable` and :class:`typing.Generic` that were introduced by the :" -"pep:`695` implementation. Patch by Jelle Zijlstra." +":gh:`104935`: Fix bugs with the interaction " +"between :func:`typing.runtime_checkable` and :class:`typing.Generic` that " +"were introduced by the :pep:`695` implementation. Patch by Jelle Zijlstra." msgstr "" msgid "" -":gh:`104773`: :pep:`594`: Remove the :mod:`!crypt` module and its private :" -"mod:`!_crypt` extension, deprecated in Python 3.11. Patch by Victor Stinner." +":gh:`104773`: :pep:`594`: Remove the :mod:`!crypt` module and its " +"private :mod:`!_crypt` extension, deprecated in Python 3.11. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -28115,9 +31174,10 @@ msgid "" msgstr "" msgid "" -":gh:`104886`: Remove the undocumented :class:`!configparser." -"LegacyInterpolation` class, deprecated in the docstring since Python 3.2, " -"and with a deprecation warning since Python 3.11. Patch by Hugo van Kemenade." +":gh:`104886`: Remove the undocumented :class:`!" +"configparser.LegacyInterpolation` class, deprecated in the docstring since " +"Python 3.2, and with a deprecation warning since Python 3.11. Patch by Hugo " +"van Kemenade." msgstr "" msgid ":gh:`104786`: Remove kwargs-based :class:`typing.TypedDict` creation" @@ -28177,8 +31237,8 @@ msgid "" msgstr "" msgid "" -":gh:`104874`: Document the ``__name__`` and ``__supertype__`` attributes of :" -"class:`typing.NewType`. Patch by Jelle Zijlstra." +":gh:`104874`: Document the ``__name__`` and ``__supertype__`` attributes " +"of :class:`typing.NewType`. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -28211,8 +31271,9 @@ msgid "Patch by Hugo van Kemenade." msgstr "" msgid "" -":gh:`104804`: Remove the untested and undocumented :mod:`webbrowser` :class:" -"`!MacOSX` class, deprecated in Python 3.11. Patch by Hugo van Kemenade." +":gh:`104804`: Remove the untested and " +"undocumented :mod:`webbrowser` :class:`!MacOSX` class, deprecated in Python " +"3.11. Patch by Hugo van Kemenade." msgstr "" msgid "" @@ -28225,14 +31286,14 @@ msgstr "" msgid "" ":gh:`104799`: Adjust the location of the (see :pep:`695`) ``type_params`` " -"field on :class:`ast.ClassDef`, :class:`ast.AsyncFunctionDef`, and :class:" -"`ast.FunctionDef` to better preserve backward compatibility. Patch by Jelle " -"Zijlstra" +"field on :class:`ast.ClassDef`, :class:`ast.AsyncFunctionDef`, " +"and :class:`ast.FunctionDef` to better preserve backward compatibility. " +"Patch by Jelle Zijlstra" msgstr "" msgid "" -":gh:`104797`: Allow :class:`typing.Protocol` classes to inherit from :class:" -"`collections.abc.Buffer`. Patch by Jelle Zijlstra." +":gh:`104797`: Allow :class:`typing.Protocol` classes to inherit " +"from :class:`collections.abc.Buffer`. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -28282,49 +31343,51 @@ msgstr "" msgid "" ":gh:`102613`: Improve performance of :meth:`pathlib.Path.glob` when " "expanding a pattern with a non-terminal \"``**``\" component by filtering " -"walked paths through a regular expression, rather than calling :func:`os." -"scandir` more than once on each directory." +"walked paths through a regular expression, rather than " +"calling :func:`os.scandir` more than once on each directory." msgstr "" msgid "" ":gh:`104399`: Prepare the ``_tkinter`` module for building with Tcl 9.0 and " -"future libtommath by replacing usage of deprecated functions :c:func:" -"`mp_to_unsigned_bin_n` and :c:func:`mp_unsigned_bin_size` when necessary." +"future libtommath by replacing usage of deprecated " +"functions :c:func:`mp_to_unsigned_bin_n` and :c:func:`mp_unsigned_bin_size` " +"when necessary." msgstr "" msgid "" ":gh:`102676`: Add fields ``start_offset``, ``cache_offset``, ``end_offset``, " -"``baseopname``, ``baseopcode``, ``jump_target`` and ``oparg`` to :class:`dis." -"Instruction`." +"``baseopname``, ``baseopcode``, ``jump_target`` and ``oparg`` " +"to :class:`dis.Instruction`." msgstr "" msgid "" -":gh:`103558`: Fixed ``parent`` argument validation mechanism of :mod:" -"`argparse`. Improved test coverage." +":gh:`103558`: Fixed ``parent`` argument validation mechanism " +"of :mod:`argparse`. Improved test coverage." msgstr "" msgid "" -":gh:`103464`: Provide helpful usage messages when parsing incorrect :mod:" -"`pdb` commands." +":gh:`103464`: Provide helpful usage messages when parsing " +"incorrect :mod:`pdb` commands." msgstr "" msgid "" -":gh:`103384`: Generalize the regex pattern ``BaseConfigurator." -"INDEX_PATTERN`` to allow spaces and non-alphanumeric characters in keys." +":gh:`103384`: Generalize the regex pattern " +"``BaseConfigurator.INDEX_PATTERN`` to allow spaces and non-alphanumeric " +"characters in keys." msgstr "" msgid ":gh:`103124`: Added multiline statement support for :mod:`pdb`" msgstr "" msgid "" -":gh:`101162`: Forbid using :func:`builtins.issubclass` with :class:`types." -"GenericAlias` as the first argument." +":gh:`101162`: Forbid using :func:`builtins.issubclass` " +"with :class:`types.GenericAlias` as the first argument." msgstr "" msgid "" -":gh:`103200`: Fix cache repopulation semantics of zipimport." -"invalidate_caches(). The cache is now repopulated upon retrieving files with " -"an invalid cache, not when the cache is invalidated." +":gh:`103200`: Fix cache repopulation semantics of " +"zipimport.invalidate_caches(). The cache is now repopulated upon retrieving " +"files with an invalid cache, not when the cache is invalidated." msgstr "" msgid "" @@ -28356,13 +31419,13 @@ msgid "" msgstr "" msgid "" -":gh:`102024`: Reduce calls of ``_idle_semaphore.release()`` in :func:" -"`concurrent.futures.thread._worker`." +":gh:`102024`: Reduce calls of ``_idle_semaphore.release()`` " +"in :func:`concurrent.futures.thread._worker`." msgstr "" msgid "" -":gh:`73435`: Add support for recursive wildcards in :meth:`pathlib.PurePath." -"match`." +":gh:`73435`: Add support for recursive wildcards " +"in :meth:`pathlib.PurePath.match`." msgstr "" msgid "" @@ -28372,12 +31435,12 @@ msgid "" msgstr "" msgid "" -":gh:`99203`: Restore following CPython <= 3.10.5 behavior of :func:`shutil." -"make_archive`: do not create an empty archive if ``root_dir`` is not a " -"directory, and, in that case, raise :class:`FileNotFoundError` or :class:" -"`NotADirectoryError` regardless of ``format`` choice. Beyond the brought-" -"back behavior, the function may now also raise these exceptions in " -"``dry_run`` mode." +":gh:`99203`: Restore following CPython <= 3.10.5 behavior " +"of :func:`shutil.make_archive`: do not create an empty archive if " +"``root_dir`` is not a directory, and, in that case, " +"raise :class:`FileNotFoundError` or :class:`NotADirectoryError` regardless " +"of ``format`` choice. Beyond the brought-back behavior, the function may now " +"also raise these exceptions in ``dry_run`` mode." msgstr "" msgid "" @@ -28397,8 +31460,8 @@ msgstr "" msgid "" ":gh:`92871`: Remove the ``typing.io`` and ``typing.re`` namespaces, " -"deprecated since Python 3.8. All items are still available from the main :" -"mod:`typing` module." +"deprecated since Python 3.8. All items are still available from the " +"main :mod:`typing` module." msgstr "" msgid "" @@ -28420,10 +31483,10 @@ msgid "" msgstr "" msgid "" -":issue:`40988`: Improve performance of :class:`functools." -"singledispatchmethod` by caching the generated dispatch wrapper. " -"Optimization suggested by frederico. Patch by @mental32, Alex Waygood and " -"Pieter Eendebak." +":issue:`40988`: Improve performance " +"of :class:`functools.singledispatchmethod` by caching the generated dispatch " +"wrapper. Optimization suggested by frederico. Patch by @mental32, Alex " +"Waygood and Pieter Eendebak." msgstr "" msgid "" @@ -28453,14 +31516,14 @@ msgid "" msgstr "" msgid "" -":gh:`107305`: Add documentation for :c:type:`PyInterpreterConfig` and :c:" -"func:`Py_NewInterpreterFromConfig`. Also clarify some of the nearby docs " -"relative to per-interpreter GIL." +":gh:`107305`: Add documentation for :c:type:`PyInterpreterConfig` " +"and :c:func:`Py_NewInterpreterFromConfig`. Also clarify some of the nearby " +"docs relative to per-interpreter GIL." msgstr "" msgid "" -":gh:`107008`: Document the :mod:`curses` module variables :const:`~curses." -"LINES` and :const:`~curses.COLS`." +":gh:`107008`: Document the :mod:`curses` module " +"variables :const:`~curses.LINES` and :const:`~curses.COLS`." msgstr "" msgid "" @@ -28484,8 +31547,8 @@ msgstr "" msgid "" ":gh:`89455`: Add missing documentation for the ``max_group_depth`` and " -"``max_group_width`` parameters and the ``exceptions`` attribute of the :" -"class:`traceback.TracebackException` class." +"``max_group_width`` parameters and the ``exceptions`` attribute of " +"the :class:`traceback.TracebackException` class." msgstr "" msgid "" @@ -28494,8 +31557,8 @@ msgid "" msgstr "" msgid "" -":gh:`104943`: Remove mentions of old Python versions in :class:`typing." -"NamedTuple`." +":gh:`104943`: Remove mentions of old Python versions " +"in :class:`typing.NamedTuple`." msgstr "" msgid "" @@ -28708,9 +31771,9 @@ msgid "" "FreeBSD if the TCP blackhole is enabled (``sysctl net.inet.tcp.blackhole``). " "Skip the few tests which failed with ``ETIMEDOUT`` which such non standard " "configuration. Currently, the `FreeBSD GCP image enables TCP and UDP " -"blackhole `_ (``sysctl net.inet.tcp." -"blackhole=2`` and ``sysctl net.inet.udp.blackhole=1``). Patch by Victor " -"Stinner." +"blackhole `_ (``sysctl " +"net.inet.tcp.blackhole=2`` and ``sysctl net.inet.udp.blackhole=1``). Patch " +"by Victor Stinner." msgstr "" msgid "" @@ -28766,12 +31829,12 @@ msgid "" msgstr "" msgid "" -":gh:`108834`: When regrtest reruns failed tests in verbose mode (``./python -" -"m test --rerun``), tests are now rerun in fresh worker processes rather than " -"being executed in the main process. If a test does crash or is killed by a " -"timeout, the main process can detect and handle the killed worker process. " -"Tests are rerun in parallel if the ``-jN`` option is used to run tests in " -"parallel. Patch by Victor Stinner." +":gh:`108834`: When regrtest reruns failed tests in verbose mode (``./python " +"-m test --rerun``), tests are now rerun in fresh worker processes rather " +"than being executed in the main process. If a test does crash or is killed " +"by a timeout, the main process can detect and handle the killed worker " +"process. Tests are rerun in parallel if the ``-jN`` option is used to run " +"tests in parallel. Patch by Victor Stinner." msgstr "" msgid "" @@ -28783,8 +31846,8 @@ msgstr "" msgid "" ":gh:`108794`: The :meth:`doctest.DocTestRunner.run` method now counts the " -"number of skipped tests. Add :attr:`doctest.DocTestRunner.skips` and :attr:" -"`doctest.TestResults.skipped` attributes. Patch by Victor Stinner." +"number of skipped tests. Add :attr:`doctest.DocTestRunner.skips` " +"and :attr:`doctest.TestResults.skipped` attributes. Patch by Victor Stinner." msgstr "" msgid "" @@ -28829,8 +31892,8 @@ msgid "" msgstr "" msgid "" -":gh:`104090`: Avoid creating a reference to the test object in :meth:" -"`~unittest.TestResult.collectedDurations`." +":gh:`104090`: Avoid creating a reference to the test object " +"in :meth:`~unittest.TestResult.collectedDurations`." msgstr "" msgid "" @@ -28912,11 +31975,11 @@ msgid "" msgstr "" msgid "" -":gh:`108740`: Fix a race condition in ``make regen-all``. The ``deepfreeze." -"c`` source and files generated by Argument Clinic are now generated or " -"updated before generating \"global objects\". Previously, some identifiers " -"may miss depending on the order in which these files were generated. Patch " -"by Victor Stinner." +":gh:`108740`: Fix a race condition in ``make regen-all``. The " +"``deepfreeze.c`` source and files generated by Argument Clinic are now " +"generated or updated before generating \"global objects\". Previously, some " +"identifiers may miss depending on the order in which these files were " +"generated. Patch by Victor Stinner." msgstr "" msgid "" @@ -28979,8 +32042,8 @@ msgid "" msgstr "" msgid "" -":gh:`89886`: Autoconf 2.71 and aclocal 1.16.4 is now required to regenerate :" -"file:`configure`." +":gh:`89886`: Autoconf 2.71 and aclocal 1.16.4 is now required to " +"regenerate :file:`configure`." msgstr "" msgid "" @@ -29018,8 +32081,9 @@ msgstr "" msgid "" ":gh:`106242`: Fixes :func:`~os.path.realpath` to behave consistently when " "passed a path containing an embedded null character on Windows. In strict " -"mode, it now raises :exc:`OSError` instead of the unexpected :exc:" -"`ValueError`, and in non-strict mode will make the path absolute." +"mode, it now raises :exc:`OSError` instead of the " +"unexpected :exc:`ValueError`, and in non-strict mode will make the path " +"absolute." msgstr "" msgid "" @@ -29029,8 +32093,8 @@ msgid "" msgstr "" msgid "" -":gh:`106844`: Fix integer overflow and truncating by the null character in :" -"func:`!_winapi.LCMapStringEx` which affects :func:`ntpath.normcase`." +":gh:`106844`: Fix integer overflow and truncating by the null character " +"in :func:`!_winapi.LCMapStringEx` which affects :func:`ntpath.normcase`." msgstr "" msgid "" @@ -29099,10 +32163,10 @@ msgstr "" msgid "" ":gh:`107704`: It is now possible to deprecate passing keyword arguments for " "keyword-or-positional parameters with Argument Clinic, using the new ``/ " -"[from X.Y]`` syntax. (To be read as *\"positional-only from Python version X." -"Y\"*.) See `documentation in the Python Developer's Guide `__ for " -"more information." +"[from X.Y]`` syntax. (To be read as *\"positional-only from Python version " +"X.Y\"*.) See `documentation in the Python Developer's Guide `__ for more information." msgstr "" msgid "" @@ -29172,8 +32236,8 @@ msgid "" msgstr "" msgid "" -":gh:`110289`: Add :c:func:`PyUnicode_EqualToUTF8AndSize` and :c:func:" -"`PyUnicode_EqualToUTF8` functions." +":gh:`110289`: Add :c:func:`PyUnicode_EqualToUTF8AndSize` " +"and :c:func:`PyUnicode_EqualToUTF8` functions." msgstr "" msgid "" @@ -29199,9 +32263,9 @@ msgid "" msgstr "" msgid "" -":gh:`85283`: Add :c:func:`PySys_AuditTuple` function: similar to :c:func:" -"`PySys_Audit`, but pass event arguments as a Python :class:`tuple` object. " -"Patch by Victor Stinner." +":gh:`85283`: Add :c:func:`PySys_AuditTuple` function: similar " +"to :c:func:`PySys_Audit`, but pass event arguments as a " +"Python :class:`tuple` object. Patch by Victor Stinner." msgstr "" msgid "" @@ -29244,16 +32308,16 @@ msgid "" msgstr "" msgid "" -":gh:`108511`: Add functions :c:func:`PyObject_HasAttrWithError`, :c:func:" -"`PyObject_HasAttrStringWithError`, :c:func:`PyMapping_HasKeyWithError` and :" -"c:func:`PyMapping_HasKeyStringWithError`." +":gh:`108511`: Add " +"functions :c:func:`PyObject_HasAttrWithError`, :c:func:`PyObject_HasAttrStringWithError`, :c:func:`PyMapping_HasKeyWithError` " +"and :c:func:`PyMapping_HasKeyStringWithError`." msgstr "" msgid "" -":gh:`107073`: Add :c:func:`PyObject_VisitManagedDict` and :c:func:" -"`PyObject_ClearManagedDict` functions which must be called by the traverse " -"and clear functions of a type using :c:macro:`Py_TPFLAGS_MANAGED_DICT` flag. " -"Patch by Victor Stinner." +":gh:`107073`: Add :c:func:`PyObject_VisitManagedDict` " +"and :c:func:`PyObject_ClearManagedDict` functions which must be called by " +"the traverse and clear functions of a type " +"using :c:macro:`Py_TPFLAGS_MANAGED_DICT` flag. Patch by Victor Stinner." msgstr "" msgid "" @@ -29263,17 +32327,18 @@ msgid "" msgstr "" msgid "" -":gh:`108014`: Add :c:func:`PyLong_AsInt` function: similar to :c:func:" -"`PyLong_AsLong`, but store the result in a C :c:expr:`int` instead of a C :c:" -"expr:`long`. Previously, it was known as the private function :c:func:`!" -"_PyLong_AsInt` (with an underscore prefix). Patch by Victor Stinner." +":gh:`108014`: Add :c:func:`PyLong_AsInt` function: similar " +"to :c:func:`PyLong_AsLong`, but store the result in a C :c:expr:`int` " +"instead of a C :c:expr:`long`. Previously, it was known as the private " +"function :c:func:`!_PyLong_AsInt` (with an underscore prefix). Patch by " +"Victor Stinner." msgstr "" msgid "" -":gh:`108314`: Add :c:func:`PyDict_ContainsString` function: same as :c:func:" -"`PyDict_Contains`, but *key* is specified as a :c:expr:`const char*` UTF-8 " -"encoded bytes string, rather than a :c:expr:`PyObject*`. Patch by Victor " -"Stinner." +":gh:`108314`: Add :c:func:`PyDict_ContainsString` function: same " +"as :c:func:`PyDict_Contains`, but *key* is specified as a :c:expr:`const " +"char*` UTF-8 encoded bytes string, rather than a :c:expr:`PyObject*`. Patch " +"by Victor Stinner." msgstr "" msgid "" @@ -29287,10 +32352,10 @@ msgid "" msgstr "" msgid "" -":gh:`107916`: C API functions :c:func:`PyErr_SetFromErrnoWithFilename`, :c:" -"func:`PyErr_SetExcFromWindowsErrWithFilename` and :c:func:" -"`PyErr_SetFromWindowsErrWithFilename` save now the error code before " -"calling :c:func:`PyUnicode_DecodeFSDefault`." +":gh:`107916`: C API " +"functions :c:func:`PyErr_SetFromErrnoWithFilename`, :c:func:`PyErr_SetExcFromWindowsErrWithFilename` " +"and :c:func:`PyErr_SetFromWindowsErrWithFilename` save now the error code " +"before calling :c:func:`PyUnicode_DecodeFSDefault`." msgstr "" msgid "" @@ -29301,8 +32366,8 @@ msgid "" msgstr "" msgid "" -":gh:`107810`: Improve :exc:`DeprecationWarning` for uses of :c:type:" -"`PyType_Spec` with metaclasses that have custom ``tp_new``." +":gh:`107810`: Improve :exc:`DeprecationWarning` for uses " +"of :c:type:`PyType_Spec` with metaclasses that have custom ``tp_new``." msgstr "" msgid "" @@ -29316,30 +32381,31 @@ msgid "" msgstr "" msgid "" -":gh:`106320`: Remove private ``_PyUnicode_AsString()`` alias to :c:func:" -"`PyUnicode_AsUTF8`. It was kept for backward compatibility with Python 3.0 - " -"3.2. The :c:func:`PyUnicode_AsUTF8` is available since Python 3.3. The :c:" -"func:`PyUnicode_AsUTF8String` function can be used to keep compatibility " -"with Python 3.2 and older. Patch by Victor Stinner." +":gh:`106320`: Remove private ``_PyUnicode_AsString()`` alias " +"to :c:func:`PyUnicode_AsUTF8`. It was kept for backward compatibility with " +"Python 3.0 - 3.2. The :c:func:`PyUnicode_AsUTF8` is available since Python " +"3.3. The :c:func:`PyUnicode_AsUTF8String` function can be used to keep " +"compatibility with Python 3.2 and older. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`106572`: Convert :c:func:`PyObject_DelAttr` and :c:func:" -"`PyObject_DelAttrString` macros to functions. Patch by Victor Stinner." +":gh:`106572`: Convert :c:func:`PyObject_DelAttr` " +"and :c:func:`PyObject_DelAttrString` macros to functions. Patch by Victor " +"Stinner." msgstr "" msgid ":gh:`106307`: Add :c:func:`PyMapping_GetOptionalItem` function." msgstr "" msgid "" -":gh:`106521`: Add :c:func:`PyObject_GetOptionalAttr` and :c:func:" -"`PyObject_GetOptionalAttrString` functions." +":gh:`106521`: Add :c:func:`PyObject_GetOptionalAttr` " +"and :c:func:`PyObject_GetOptionalAttrString` functions." msgstr "" msgid "" -":gh:`106320`: Remove ``_PyInterpreterState_Get()`` alias to :c:func:" -"`PyInterpreterState_Get()` which was kept for backward compatibility with " -"Python 3.8. Patch by Victor Stinner." +":gh:`106320`: Remove ``_PyInterpreterState_Get()`` alias " +"to :c:func:`PyInterpreterState_Get()` which was kept for backward " +"compatibility with Python 3.8. Patch by Victor Stinner." msgstr "" msgid "" @@ -29354,8 +32420,8 @@ msgid "" msgstr "" msgid "" -":gh:`106168`: If Python is built in :ref:`debug mode ` or :" -"option:`with assertions <--with-assertions>`, :c:func:`PyTuple_SET_ITEM` " +":gh:`106168`: If Python is built in :ref:`debug mode ` " +"or :option:`with assertions <--with-assertions>`, :c:func:`PyTuple_SET_ITEM` " "and :c:func:`PyList_SET_ITEM` now check the index argument with an " "assertion. If the assertion fails, make sure that the size is set before. " "Patch by Victor Stinner." @@ -29393,10 +32459,10 @@ msgid "" msgstr "" msgid "" -":gh:`106004`: Adds :c:func:`PyDict_GetItemRef` and :c:func:" -"`PyDict_GetItemStringRef` functions: similar to :c:func:" -"`PyDict_GetItemWithError` but returning a :term:`strong reference` instead " -"of a :term:`borrowed reference`. Patch by Victor Stinner." +":gh:`106004`: Adds :c:func:`PyDict_GetItemRef` " +"and :c:func:`PyDict_GetItemStringRef` functions: similar " +"to :c:func:`PyDict_GetItemWithError` but returning a :term:`strong " +"reference` instead of a :term:`borrowed reference`. Patch by Victor Stinner." msgstr "" msgid "" @@ -29412,9 +32478,9 @@ msgid "" msgstr "" msgid "" -":gh:`105922`: Add :c:func:`PyImport_AddModuleRef`: similar to :c:func:" -"`PyImport_AddModule`, but return a :term:`strong reference` instead of a :" -"term:`borrowed reference`. Patch by Victor Stinner." +":gh:`105922`: Add :c:func:`PyImport_AddModuleRef`: similar " +"to :c:func:`PyImport_AddModule`, but return a :term:`strong reference` " +"instead of a :term:`borrowed reference`. Patch by Victor Stinner." msgstr "" msgid "" @@ -29431,17 +32497,17 @@ msgid "" msgstr "" msgid "" -":gh:`105603`: We've renamed the new (in 3.12) ``PyInterpreterConfig." -"own_gil`` to ``PyInterpreterConfig.gil`` and changed the meaning of the " -"value from \"bool\" to an integer with supported values of " -"``PyInterpreterConfig_DEFAULT_GIL``, ``PyInterpreterConfig_SHARED_GIL``, and " -"``PyInterpreterConfig_OWN_GIL``. The default is \"shared\"." +":gh:`105603`: We've renamed the new (in 3.12) " +"``PyInterpreterConfig.own_gil`` to ``PyInterpreterConfig.gil`` and changed " +"the meaning of the value from \"bool\" to an integer with supported values " +"of ``PyInterpreterConfig_DEFAULT_GIL``, ``PyInterpreterConfig_SHARED_GIL``, " +"and ``PyInterpreterConfig_OWN_GIL``. The default is \"shared\"." msgstr "" msgid "" -":gh:`105387`: In the limited C API version 3.12, :c:func:`Py_INCREF` and :c:" -"func:`Py_DECREF` functions are now implemented as opaque function calls to " -"hide implementation details. Patch by Victor Stinner." +":gh:`105387`: In the limited C API version 3.12, :c:func:`Py_INCREF` " +"and :c:func:`Py_DECREF` functions are now implemented as opaque function " +"calls to hide implementation details. Patch by Victor Stinner." msgstr "" msgid "" @@ -29506,8 +32572,8 @@ msgstr "" msgid "" ":gh:`105156`: Deprecate the old ``Py_UNICODE`` and ``PY_UNICODE_TYPE`` " "types: use directly the :c:type:`wchar_t` type instead. Since Python 3.3, " -"``Py_UNICODE`` and ``PY_UNICODE_TYPE`` are just aliases to :c:type:" -"`wchar_t`. Patch by Victor Stinner." +"``Py_UNICODE`` and ``PY_UNICODE_TYPE`` are just aliases " +"to :c:type:`wchar_t`. Patch by Victor Stinner." msgstr "" msgid "" @@ -29555,9 +32621,9 @@ msgid ":gh:`105107`: Remove functions deprecated in Python 3.9." msgstr "" msgid "" -"``PyEval_CallObject()``, ``PyEval_CallObjectWithKeywords()``: use :c:func:" -"`PyObject_CallNoArgs` and :c:func:`PyObject_Call` (positional arguments must " -"not be *NULL*) instead." +"``PyEval_CallObject()``, ``PyEval_CallObjectWithKeywords()``: " +"use :c:func:`PyObject_CallNoArgs` and :c:func:`PyObject_Call` (positional " +"arguments must not be *NULL*) instead." msgstr "" msgid "``PyEval_CallFunction()``: use :c:func:`PyObject_CallFunction` instead." @@ -29594,17 +32660,18 @@ msgid "" msgstr "" msgid "" -":gh:`104668`: Don't call :c:var:`PyOS_InputHook` or :c:var:" -"`PyOS_ReadlineFunctionPointer` in subinterpreters, since it's generally " -"difficult to avoid using global state in their registered callbacks. This " -"also avoids situations where extensions may find themselves running in a " -"subinterpreter they don't support (or haven't yet been loaded in)." +":gh:`104668`: Don't call :c:var:`PyOS_InputHook` " +"or :c:var:`PyOS_ReadlineFunctionPointer` in subinterpreters, since it's " +"generally difficult to avoid using global state in their registered " +"callbacks. This also avoids situations where extensions may find themselves " +"running in a subinterpreter they don't support (or haven't yet been loaded " +"in)." msgstr "" msgid "" -":issue:`42327`: Add :c:func:`PyModule_Add` function: similar to :c:func:" -"`PyModule_AddObjectRef` and :c:func:`PyModule_AddObject`, but always steals " -"a reference to the value." +":issue:`42327`: Add :c:func:`PyModule_Add` function: similar " +"to :c:func:`PyModule_AddObjectRef` and :c:func:`PyModule_AddObject`, but " +"always steals a reference to the value." msgstr "" msgid "" @@ -29651,8 +32718,8 @@ msgid "" msgstr "" msgid "" -":gh:`104572`: Improve syntax error message for invalid constructs in :pep:" -"`695` contexts and in annotations when ``from __future__ import " +":gh:`104572`: Improve syntax error message for invalid constructs " +"in :pep:`695` contexts and in annotations when ``from __future__ import " "annotations`` is active." msgstr "" @@ -29753,14 +32820,16 @@ msgid "" msgstr "" msgid "" -":gh:`103895`: Improve handling of edge cases in showing ``Exception." -"__notes__``. Ensures that the messages always end with a newline and that " -"string/bytes are not exploded over multiple lines. Patch by Carey Metcalfe." +":gh:`103895`: Improve handling of edge cases in showing " +"``Exception.__notes__``. Ensures that the messages always end with a newline " +"and that string/bytes are not exploded over multiple lines. Patch by Carey " +"Metcalfe." msgstr "" msgid "" -":gh:`103907`: Don't modify the refcounts of known immortal objects (:const:" -"`True`, :const:`False`, and :const:`None`) in the main interpreter loop." +":gh:`103907`: Don't modify the refcounts of known immortal objects " +"(:const:`True`, :const:`False`, and :const:`None`) in the main interpreter " +"loop." msgstr "" msgid "" @@ -29791,14 +32860,14 @@ msgid "" "New syntax (``class X[T]: ...``, ``def func[T](): ...``) is added for " "defining generic functions and classes. This is implemented as a new " "``type_params`` attribute on the AST nodes for classes and functions. This " -"node holds instances of the new AST classes ``ast.TypeVar``, ``ast." -"ParamSpec``, and ``ast.TypeVarTuple``." +"node holds instances of the new AST classes ``ast.TypeVar``, " +"``ast.ParamSpec``, and ``ast.TypeVarTuple``." msgstr "" msgid "" -"``typing.TypeVar``, ``typing.ParamSpec``, ``typing.ParamSpecArgs``, ``typing." -"ParamSpecKwargs``, ``typing.TypeVarTuple``, and ``typing.Generic`` are now " -"implemented in C rather than Python." +"``typing.TypeVar``, ``typing.ParamSpec``, ``typing.ParamSpecArgs``, " +"``typing.ParamSpecKwargs``, ``typing.TypeVarTuple``, and ``typing.Generic`` " +"are now implemented in C rather than Python." msgstr "" msgid "" @@ -29846,8 +32915,8 @@ msgid "" msgstr "" msgid "" -":gh:`101517`: Fix bug in line numbers of instructions emitted for :keyword:" -"`except* `." +":gh:`101517`: Fix bug in line numbers of instructions emitted " +"for :keyword:`except* `." msgstr "" msgid "" @@ -29915,8 +32984,8 @@ msgid ":gh:`103082`: Implement :pep:`669` Low Impact Monitoring for CPython." msgstr "" msgid "" -":gh:`88691`: Reduce the number of inline :opcode:`CACHE` entries for :opcode:" -"`CALL`." +":gh:`88691`: Reduce the number of inline :opcode:`CACHE` entries " +"for :opcode:`CALL`." msgstr "" msgid "" @@ -29967,13 +33036,13 @@ msgstr "" msgid "" ":gh:`104555`: Fix issue where an :func:`issubclass` check comparing a class " -"``X`` against a :func:`runtime-checkable protocol ` ``Y`` with non-callable members would not cause :exc:" -"`TypeError` to be raised if an :func:`isinstance` call had previously been " -"made comparing an instance of ``X`` to ``Y``. This issue was present in edge " -"cases on Python 3.11, but became more prominent in 3.12 due to some " -"unrelated changes that were made to runtime-checkable protocols. Patch by " -"Alex Waygood." +"``X`` against a :func:`runtime-checkable protocol " +"` ``Y`` with non-callable members would not " +"cause :exc:`TypeError` to be raised if an :func:`isinstance` call had " +"previously been made comparing an instance of ``X`` to ``Y``. This issue was " +"present in edge cases on Python 3.11, but became more prominent in 3.12 due " +"to some unrelated changes that were made to runtime-checkable protocols. " +"Patch by Alex Waygood." msgstr "" msgid "" @@ -29983,8 +33052,8 @@ msgid "" msgstr "" msgid "" -":gh:`104484`: Added *case_sensitive* argument to :meth:`pathlib.PurePath." -"match`" +":gh:`104484`: Added *case_sensitive* argument " +"to :meth:`pathlib.PurePath.match`" msgstr "" msgid "" @@ -29992,9 +33061,9 @@ msgid "" msgstr "" msgid "" -":gh:`104536`: Fix a race condition in the internal :mod:`multiprocessing." -"process` cleanup logic that could manifest as an unintended " -"``AttributeError`` when calling ``process.close()``." +":gh:`104536`: Fix a race condition in the " +"internal :mod:`multiprocessing.process` cleanup logic that could manifest as " +"an unintended ``AttributeError`` when calling ``process.close()``." msgstr "" msgid "" @@ -30013,8 +33082,8 @@ msgid "" msgstr "" msgid "" -":gh:`102613`: Fix issue where :meth:`pathlib.Path.glob` raised :exc:" -"`RecursionError` when walking deep directory trees." +":gh:`102613`: Fix issue where :meth:`pathlib.Path.glob` " +"raised :exc:`RecursionError` when walking deep directory trees." msgstr "" msgid "" @@ -30023,8 +33092,8 @@ msgid "" msgstr "" msgid "" -":gh:`104301`: Allow leading whitespace in disambiguated statements in :mod:" -"`pdb`." +":gh:`104301`: Allow leading whitespace in disambiguated statements " +"in :mod:`pdb`." msgstr "" msgid "" @@ -30051,9 +33120,9 @@ msgid "" msgstr "" msgid "" -":gh:`104265`: Prevent possible crash by disallowing instantiation of the :" -"class:`!_csv.Reader` and :class:`!_csv.Writer` types. The regression was " -"introduced in 3.10.0a4 with PR 23224 (:issue:`14935`). Patch by Radislav " +":gh:`104265`: Prevent possible crash by disallowing instantiation of " +"the :class:`!_csv.Reader` and :class:`!_csv.Writer` types. The regression " +"was introduced in 3.10.0a4 with PR 23224 (:issue:`14935`). Patch by Radislav " "Chugunov." msgstr "" @@ -30069,20 +33138,21 @@ msgstr "" msgid "" ":gh:`90208`: Fixed issue where :meth:`pathlib.Path.glob` returned incomplete " "results when it encountered a :exc:`PermissionError`. This method now " -"suppresses all :exc:`OSError` exceptions, except those raised from calling :" -"meth:`~pathlib.Path.is_dir` on the top-level path." +"suppresses all :exc:`OSError` exceptions, except those raised from " +"calling :meth:`~pathlib.Path.is_dir` on the top-level path." msgstr "" msgid "" -":gh:`104144`: Optimize :class:`asyncio.TaskGroup` when using :func:`asyncio." -"eager_task_factory`. Skip scheduling a done callback if a TaskGroup task " -"completes eagerly." +":gh:`104144`: Optimize :class:`asyncio.TaskGroup` when " +"using :func:`asyncio.eager_task_factory`. Skip scheduling a done callback if " +"a TaskGroup task completes eagerly." msgstr "" msgid "" -":gh:`104144`: Optimize :func:`asyncio.gather` when using :func:`asyncio." -"eager_task_factory` to complete eagerly if all fututres completed eagerly. " -"Avoid scheduling done callbacks for futures that complete eagerly." +":gh:`104144`: Optimize :func:`asyncio.gather` when " +"using :func:`asyncio.eager_task_factory` to complete eagerly if all fututres " +"completed eagerly. Avoid scheduling done callbacks for futures that complete " +"eagerly." msgstr "" msgid "" @@ -30092,8 +33162,8 @@ msgid "" msgstr "" msgid "" -":gh:`104104`: Improve performance of :meth:`pathlib.Path.glob` by using :" -"const:`re.IGNORECASE` to implement case-insensitive matching." +":gh:`104104`: Improve performance of :meth:`pathlib.Path.glob` by " +"using :const:`re.IGNORECASE` to implement case-insensitive matching." msgstr "" msgid "" @@ -30107,8 +33177,8 @@ msgid "" msgstr "" msgid "" -":gh:`103629`: Update the ``repr`` of :class:`typing.Unpack` according to :" -"pep:`692`." +":gh:`103629`: Update the ``repr`` of :class:`typing.Unpack` according " +"to :pep:`692`." msgstr "" msgid "" @@ -30146,8 +33216,9 @@ msgid "" msgstr "" msgid "" -":gh:`100370`: Fix potential :exc:`OverflowError` in :meth:`sqlite3." -"Connection.blobopen` for 32-bit builds. Patch by Erlend E. Aasland." +":gh:`100370`: Fix potential :exc:`OverflowError` " +"in :meth:`sqlite3.Connection.blobopen` for 32-bit builds. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" @@ -30190,8 +33261,8 @@ msgid "" msgstr "" msgid "" -":gh:`103857`: Deprecated :meth:`datetime.datetime.utcnow` and :meth:" -"`datetime.datetime.utcfromtimestamp`. (Patch by Paul Ganssle)" +":gh:`103857`: Deprecated :meth:`datetime.datetime.utcnow` " +"and :meth:`datetime.datetime.utcfromtimestamp`. (Patch by Paul Ganssle)" msgstr "" msgid "" @@ -30219,9 +33290,10 @@ msgid "" msgstr "" msgid "" -":gh:`81403`: :class:`urllib.request.CacheFTPHandler` no longer raises :class:" -"`URLError` if a cached FTP instance is reused. ftplib's endtransfer method " -"calls voidresp to drain the connection to handle FTP instance reuse properly." +":gh:`81403`: :class:`urllib.request.CacheFTPHandler` no longer " +"raises :class:`URLError` if a cached FTP instance is reused. ftplib's " +"endtransfer method calls voidresp to drain the connection to handle FTP " +"instance reuse properly." msgstr "" msgid "" @@ -30271,8 +33343,8 @@ msgid "" "files.txt`` for ``Distribution.files`` when present. ``PackageMetadata`` now " "stipulates an additional ``get`` method allowing for easy querying of " "metadata keys that may not be present. ``packages_distributions`` now honors " -"packages and modules with Python modules that not ``.py`` sources (e.g. ``." -"pyc``, ``.so``). Expand protocol for ``PackageMetadata.get_all`` to match " +"packages and modules with Python modules that not ``.py`` sources (e.g. " +"``.pyc``, ``.so``). Expand protocol for ``PackageMetadata.get_all`` to match " "the upstream implementation of ``email.message.Message.get_all`` in python/" "typeshed#9620. Deprecated use of ``Distribution`` without defining abstract " "methods. Deprecated expectation that ``PackageMetadata.__getitem__`` will " @@ -30282,9 +33354,9 @@ msgstr "" msgid "" ":gh:`103578`: Fixed a bug where :mod:`pdb` crashes when reading source file " -"with different encoding by replacing :func:`io.open` with :func:`io." -"open_code`. The new method would also call into the hook set by :c:func:" -"`PyFile_SetOpenCodeHook`." +"with different encoding by replacing :func:`io.open` " +"with :func:`io.open_code`. The new method would also call into the hook set " +"by :c:func:`PyFile_SetOpenCodeHook`." msgstr "" msgid "" @@ -30297,10 +33369,10 @@ msgid ":gh:`103559`: Update the bundled copy of pip to version 23.1.1." msgstr "" msgid "" -":gh:`103548`: Improve performance of :meth:`pathlib.Path.absolute` and :meth:" -"`~pathlib.Path.cwd` by joining paths only when necessary. Also improve " -"performance of :meth:`pathlib.PurePath.is_absolute` on Posix by skipping " -"path parsing and normalization." +":gh:`103548`: Improve performance of :meth:`pathlib.Path.absolute` " +"and :meth:`~pathlib.Path.cwd` by joining paths only when necessary. Also " +"improve performance of :meth:`pathlib.PurePath.is_absolute` on Posix by " +"skipping path parsing and normalization." msgstr "" msgid "" @@ -30314,14 +33386,15 @@ msgstr "" msgid "" ":gh:`103525`: Fix misleading exception message when mixed ``str`` and " -"``bytes`` arguments are supplied to :class:`pathlib.PurePath` and :class:" -"`~pathlib.Path`." +"``bytes`` arguments are supplied to :class:`pathlib.PurePath` " +"and :class:`~pathlib.Path`." msgstr "" msgid "" -":gh:`103489`: Add :meth:`~sqlite3.Connection.getconfig` and :meth:`~sqlite3." -"Connection.setconfig` to :class:`~sqlite3.Connection` to make configuration " -"changes to a database connection. Patch by Erlend E. Aasland." +":gh:`103489`: Add :meth:`~sqlite3.Connection.getconfig` " +"and :meth:`~sqlite3.Connection.setconfig` to :class:`~sqlite3.Connection` to " +"make configuration changes to a database connection. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" @@ -30330,22 +33403,22 @@ msgid "" msgstr "" msgid "" -":gh:`103472`: Avoid a potential :exc:`ResourceWarning` in :class:`http." -"client.HTTPConnection` by closing the proxy / tunnel's CONNECT response " -"explicitly." +":gh:`103472`: Avoid a potential :exc:`ResourceWarning` " +"in :class:`http.client.HTTPConnection` by closing the proxy / tunnel's " +"CONNECT response explicitly." msgstr "" msgid "" -":gh:`103462`: Fixed an issue with using :meth:`~asyncio.WriteTransport." -"writelines` in :mod:`asyncio` to send very large payloads that exceed the " -"amount of data that can be written in one call to :meth:`socket.socket.send` " -"or :meth:`socket.socket.sendmsg`, resulting in the remaining buffer being " -"left unwritten." +":gh:`103462`: Fixed an issue with " +"using :meth:`~asyncio.WriteTransport.writelines` in :mod:`asyncio` to send " +"very large payloads that exceed the amount of data that can be written in " +"one call to :meth:`socket.socket.send` or :meth:`socket.socket.sendmsg`, " +"resulting in the remaining buffer being left unwritten." msgstr "" msgid "" -":gh:`103449`: Fix a bug in doc string generation in :func:`dataclasses." -"dataclass`." +":gh:`103449`: Fix a bug in doc string generation " +"in :func:`dataclasses.dataclass`." msgstr "" msgid "" @@ -30355,27 +33428,29 @@ msgstr "" msgid "" ":gh:`103357`: Added support for :class:`logging.Formatter` ``defaults`` " -"parameter to :func:`logging.config.dictConfig` and :func:`logging.config." -"fileConfig`. Patch by Bar Harel." +"parameter to :func:`logging.config.dictConfig` " +"and :func:`logging.config.fileConfig`. Patch by Bar Harel." msgstr "" msgid ":gh:`103092`: Adapt the :mod:`winreg` extension module to :pep:`687`." msgstr "" msgid "" -":gh:`74690`: The performance of :func:`isinstance` checks against :func:" -"`runtime-checkable protocols ` has been " -"considerably improved for protocols that only have a few members. To achieve " -"this improvement, several internal implementation details of the :mod:" -"`typing` module have been refactored, including ``typing._ProtocolMeta." -"__instancecheck__``, ``typing._is_callable_members_only``, and ``typing." -"_get_protocol_attrs``. Patches by Alex Waygood." +":gh:`74690`: The performance of :func:`isinstance` checks " +"against :func:`runtime-checkable protocols ` has " +"been considerably improved for protocols that only have a few members. To " +"achieve this improvement, several internal implementation details of " +"the :mod:`typing` module have been refactored, including " +"``typing._ProtocolMeta.__instancecheck__``, " +"``typing._is_callable_members_only``, and ``typing._get_protocol_attrs``. " +"Patches by Alex Waygood." msgstr "" msgid "" ":gh:`74690`: The members of a runtime-checkable protocol are now considered " -"\"frozen\" at runtime as soon as the class has been created. See :ref:" -"`\"What's new in Python 3.12\" ` for more details." +"\"frozen\" at runtime as soon as the class has been created. " +"See :ref:`\"What's new in Python 3.12\" ` for more " +"details." msgstr "" msgid "" @@ -30454,21 +33529,23 @@ msgid ":gh:`103143`: Polish the help messages and docstrings of :mod:`pdb`." msgstr "" msgid "" -":gh:`103015`: Add *entrypoint* keyword-only parameter to :meth:`sqlite3." -"Connection.load_extension`, for overriding the SQLite extension entry point. " -"Patch by Erlend E. Aasland." +":gh:`103015`: Add *entrypoint* keyword-only parameter " +"to :meth:`sqlite3.Connection.load_extension`, for overriding the SQLite " +"extension entry point. Patch by Erlend E. Aasland." msgstr "" msgid "" -":gh:`103000`: Improve performance of :func:`dataclasses.astuple` and :func:" -"`dataclasses.asdict` in cases where the contents are common Python types." +":gh:`103000`: Improve performance of :func:`dataclasses.astuple` " +"and :func:`dataclasses.asdict` in cases where the contents are common Python " +"types." msgstr "" msgid "" -":gh:`102953`: The extraction methods in :mod:`tarfile`, and :func:`shutil." -"unpack_archive`, have a new a *filter* argument that allows limiting tar " -"features than may be surprising or dangerous, such as creating files outside " -"the destination directory. See :ref:`tarfile-extraction-filter` for details." +":gh:`102953`: The extraction methods in :mod:`tarfile`, " +"and :func:`shutil.unpack_archive`, have a new a *filter* argument that " +"allows limiting tar features than may be surprising or dangerous, such as " +"creating files outside the destination directory. See :ref:`tarfile-" +"extraction-filter` for details." msgstr "" msgid "" @@ -30481,8 +33558,8 @@ msgid "" msgstr "" msgid "" -":gh:`81079`: Add *case_sensitive* keyword-only argument to :meth:`pathlib." -"Path.glob` and :meth:`~pathlib.Path.rglob`." +":gh:`81079`: Add *case_sensitive* keyword-only argument " +"to :meth:`pathlib.Path.glob` and :meth:`~pathlib.Path.rglob`." msgstr "" msgid "" @@ -30517,10 +33594,10 @@ msgid "" msgstr "" msgid "" -":gh:`85984`: Add :func:`tty.cfmakeraw` and :func:`tty.cfmakecbreak` to :mod:" -"`tty` and modernize, the behavior of :func:`tty.setraw` and :func:`tty." -"setcbreak` to use POSIX.1-2017 Chapter 11 \"General Terminal Interface\" " -"flag masks by default." +":gh:`85984`: Add :func:`tty.cfmakeraw` and :func:`tty.cfmakecbreak` " +"to :mod:`tty` and modernize, the behavior of :func:`tty.setraw` " +"and :func:`tty.setcbreak` to use POSIX.1-2017 Chapter 11 \"General Terminal " +"Interface\" flag masks by default." msgstr "" msgid "" @@ -30561,8 +33638,8 @@ msgid ":gh:`98040`: Remove the long-deprecated ``imp`` module." msgstr "" msgid "" -":gh:`97850`: Deprecate :func:`!pkgutil.find_loader` and :func:`!pkgutil." -"get_loader` in favor of :func:`importlib.util.find_spec`." +":gh:`97850`: Deprecate :func:`!pkgutil.find_loader` and :func:`!" +"pkgutil.get_loader` in favor of :func:`importlib.util.find_spec`." msgstr "" msgid "" @@ -30584,8 +33661,8 @@ msgid ":gh:`96534`: Support divert(4) added in FreeBSD 14." msgstr "" msgid "" -":gh:`87474`: Fix potential file descriptor leaks in :class:`subprocess." -"Popen`." +":gh:`87474`: Fix potential file descriptor leaks " +"in :class:`subprocess.Popen`." msgstr "" msgid "" @@ -30610,10 +33687,10 @@ msgid "" msgstr "" msgid "" -":issue:`46797`: Deprecation warnings are now emitted for :class:`!ast.Num`, :" -"class:`!ast.Bytes`, :class:`!ast.Str`, :class:`!ast.NameConstant` and :class:" -"`!ast.Ellipsis`. These have been documented as deprecated since Python 3.8, " -"and will be removed in Python 3.14." +":issue:`46797`: Deprecation warnings are now emitted for :class:`!" +"ast.Num`, :class:`!ast.Bytes`, :class:`!ast.Str`, :class:`!ast.NameConstant` " +"and :class:`!ast.Ellipsis`. These have been documented as deprecated since " +"Python 3.8, and will be removed in Python 3.14." msgstr "" msgid "" @@ -30630,14 +33707,16 @@ msgid "" msgstr "" msgid "" -":issue:`23041`: Add :const:`~csv.QUOTE_STRINGS` and :const:`~csv." -"QUOTE_NOTNULL` to the suite of :mod:`csv` module quoting styles." +":issue:`23041`: Add :const:`~csv.QUOTE_STRINGS` " +"and :const:`~csv.QUOTE_NOTNULL` to the suite of :mod:`csv` module quoting " +"styles." msgstr "" msgid "" -":issue:`24964`: Added :meth:`http.client.HTTPConnection." -"get_proxy_response_headers` that provides access to the HTTP headers on a " -"proxy server response to the ``CONNECT`` request." +":issue:`24964`: " +"Added :meth:`http.client.HTTPConnection.get_proxy_response_headers` that " +"provides access to the HTTP headers on a proxy server response to the " +"``CONNECT`` request." msgstr "" msgid "" @@ -30657,9 +33736,9 @@ msgid "" msgstr "" msgid "" -":gh:`67056`: Document that the effect of registering or unregistering an :" -"mod:`atexit` cleanup function from within a registered cleanup function is " -"undefined." +":gh:`67056`: Document that the effect of registering or unregistering " +"an :mod:`atexit` cleanup function from within a registered cleanup function " +"is undefined." msgstr "" msgid "" @@ -30668,8 +33747,9 @@ msgid "" msgstr "" msgid "" -":gh:`48241`: Clarifying documentation about the url parameter to urllib." -"request.urlopen and urllib.request.Request needing to be encoded properly." +":gh:`48241`: Clarifying documentation about the url parameter to " +"urllib.request.urlopen and urllib.request.Request needing to be encoded " +"properly." msgstr "" msgid "" @@ -30700,8 +33780,8 @@ msgid "" msgstr "" msgid "" -":gh:`103329`: Regression tests for the behaviour of ``unittest.mock." -"PropertyMock`` were added." +":gh:`103329`: Regression tests for the behaviour of " +"``unittest.mock.PropertyMock`` were added." msgstr "" msgid ":gh:`102795`: fix use of poll in test_epoll's test_control_and_wait" @@ -30771,10 +33851,10 @@ msgid ":gh:`104623`: Update Windows installer to use SQLite 3.42.0." msgstr "" msgid "" -":gh:`82814`: Fix a potential ``[Errno 13] Permission denied`` when using :" -"func:`shutil.copystat` within Windows Subsystem for Linux (WSL) on a mounted " -"filesystem by adding ``errno.EACCES`` to the list of ignored errors within " -"the internal implementation." +":gh:`82814`: Fix a potential ``[Errno 13] Permission denied`` when " +"using :func:`shutil.copystat` within Windows Subsystem for Linux (WSL) on a " +"mounted filesystem by adding ``errno.EACCES`` to the list of ignored errors " +"within the internal implementation." msgstr "" msgid "" @@ -30791,8 +33871,8 @@ msgid ":gh:`102997`: Update Windows installer to use SQLite 3.41.2." msgstr "" msgid "" -":gh:`88013`: Fixed a bug where :exc:`TypeError` was raised when calling :" -"func:`ntpath.realpath` with a bytes parameter in some cases." +":gh:`88013`: Fixed a bug where :exc:`TypeError` was raised when " +"calling :func:`ntpath.realpath` with a bytes parameter in some cases." msgstr "" msgid ":gh:`99834`: Update macOS installer to Tcl/Tk 8.6.13." @@ -30840,8 +33920,8 @@ msgstr "" msgid "" ":gh:`101291`: Added unstable C API for extracting the value of \"compact\" " -"integers: :c:func:`PyUnstable_Long_IsCompact` and :c:func:" -"`PyUnstable_Long_CompactValue`." +"integers: :c:func:`PyUnstable_Long_IsCompact` " +"and :c:func:`PyUnstable_Long_CompactValue`." msgstr "" msgid "" @@ -30866,19 +33946,20 @@ msgid "" msgstr "" msgid "" -":gh:`103295`: Introduced :c:func:`PyUnstable_WritePerfMapEntry`, :c:func:" -"`PyUnstable_PerfMapState_Init` and :c:func:`PyUnstable_PerfMapState_Fini`. " -"These allow extension modules (JIT compilers in particular) to write to perf-" -"map files in a thread safe manner. The :doc:`../howto/perf_profiling` also " -"uses these APIs to write entries in the perf-map file." +":gh:`103295`: " +"Introduced :c:func:`PyUnstable_WritePerfMapEntry`, :c:func:`PyUnstable_PerfMapState_Init` " +"and :c:func:`PyUnstable_PerfMapState_Fini`. These allow extension modules " +"(JIT compilers in particular) to write to perf-map files in a thread safe " +"manner. The :doc:`../howto/perf_profiling` also uses these APIs to write " +"entries in the perf-map file." msgstr "" msgid "" ":gh:`103509`: Added C API for extending types whose instance memory layout " -"is opaque: :c:member:`PyType_Spec.basicsize` can now be zero or negative, :c:" -"func:`PyObject_GetTypeData` can be used to get subclass-specific data, and :" -"c:macro:`Py_TPFLAGS_ITEMS_AT_END` can be used to safely extend variable-size " -"objects. See :pep:`697` for details." +"is opaque: :c:member:`PyType_Spec.basicsize` can now be zero or " +"negative, :c:func:`PyObject_GetTypeData` can be used to get subclass-" +"specific data, and :c:macro:`Py_TPFLAGS_ITEMS_AT_END` can be used to safely " +"extend variable-size objects. See :pep:`697` for details." msgstr "" msgid "" @@ -30893,9 +33974,10 @@ msgstr "" msgid "" ":gh:`98836`: Add support of more formatting options (left aligning, octals, " -"uppercase hexadecimals, :c:type:`intmax_t`, :c:type:`ptrdiff_t`, :c:type:" -"`wchar_t` C strings, variable width and precision) in :c:func:" -"`PyUnicode_FromFormat` and :c:func:`PyUnicode_FromFormatV`." +"uppercase " +"hexadecimals, :c:type:`intmax_t`, :c:type:`ptrdiff_t`, :c:type:`wchar_t` C " +"strings, variable width and precision) in :c:func:`PyUnicode_FromFormat` " +"and :c:func:`PyUnicode_FromFormatV`." msgstr "" msgid "" @@ -30931,8 +34013,8 @@ msgid "" msgstr "" msgid "" -":gh:`89987`: Reduce the number of inline :opcode:`CACHE` entries for :opcode:" -"`BINARY_SUBSCR`." +":gh:`89987`: Reduce the number of inline :opcode:`CACHE` entries " +"for :opcode:`BINARY_SUBSCR`." msgstr "" msgid "" @@ -30946,14 +34028,15 @@ msgid "" msgstr "" msgid "" -":gh:`102778`: Add :data:`sys.last_exc` and deprecate :data:`sys.last_type`, :" -"data:`sys.last_value` and :data:`sys.last_traceback`, which hold the same " -"information in its legacy form." +":gh:`102778`: Add :data:`sys.last_exc` and " +"deprecate :data:`sys.last_type`, :data:`sys.last_value` " +"and :data:`sys.last_traceback`, which hold the same information in its " +"legacy form." msgstr "" msgid "" -":gh:`100982`: Replace all occurrences of ``COMPARE_AND_BRANCH`` with :opcode:" -"`COMPARE_OP`." +":gh:`100982`: Replace all occurrences of ``COMPARE_AND_BRANCH`` " +"with :opcode:`COMPARE_OP`." msgstr "" msgid ":gh:`102701`: Fix overflow when creating very large dict." @@ -30971,8 +34054,8 @@ msgid "" msgstr "" msgid "" -":gh:`90997`: Shrink the number of inline :opcode:`CACHE` entries used by :" -"opcode:`LOAD_GLOBAL`." +":gh:`90997`: Shrink the number of inline :opcode:`CACHE` entries used " +"by :opcode:`LOAD_GLOBAL`." msgstr "" msgid "" @@ -31068,8 +34151,8 @@ msgid "" msgstr "" msgid "" -":gh:`103023`: It's no longer possible to register expressions to display in :" -"class:`~pdb.Pdb` that raise :exc:`SyntaxError`. Patch by Tian Gao." +":gh:`103023`: It's no longer possible to register expressions to display " +"in :class:`~pdb.Pdb` that raise :exc:`SyntaxError`. Patch by Tian Gao." msgstr "" msgid "" @@ -31080,8 +34163,8 @@ msgstr "" msgid "" ":gh:`102780`: The :class:`asyncio.Timeout` context manager now works " "reliably even when performing cleanup due to task cancellation. Previously " -"it could raise a :exc:`~asyncio.CancelledError` instead of an :exc:`~asyncio." -"TimeoutError` in such cases." +"it could raise a :exc:`~asyncio.CancelledError` instead of " +"an :exc:`~asyncio.TimeoutError` in such cases." msgstr "" msgid "" @@ -31104,17 +34187,17 @@ msgstr "" msgid "" ":gh:`88965`: typing: Fix a bug relating to substitution in custom classes " "generic over a :class:`~typing.ParamSpec`. Previously, if the ``ParamSpec`` " -"was substituted with a parameters list that itself contained a :class:" -"`~typing.TypeVar`, the ``TypeVar`` in the parameters list could not be " -"subsequently substituted. This is now fixed." +"was substituted with a parameters list that itself contained " +"a :class:`~typing.TypeVar`, the ``TypeVar`` in the parameters list could not " +"be subsequently substituted. This is now fixed." msgstr "" msgid "Patch by Nikita Sobolev." msgstr "" msgid "" -":gh:`76846`: Fix issue where ``__new__()`` and ``__init__()`` methods of :" -"class:`pathlib.PurePath` and :class:`~pathlib.Path` subclasses were not " +":gh:`76846`: Fix issue where ``__new__()`` and ``__init__()`` methods " +"of :class:`pathlib.PurePath` and :class:`~pathlib.Path` subclasses were not " "called in some circumstances." msgstr "" @@ -31154,9 +34237,9 @@ msgid "" msgstr "" msgid "" -":gh:`102519`: Add :func:`os.listdrives`, :func:`os.listvolumes` and :func:" -"`os.listmounts` functions on Windows for enumerating drives, volumes and " -"mount points" +":gh:`102519`: Add :func:`os.listdrives`, :func:`os.listvolumes` " +"and :func:`os.listmounts` functions on Windows for enumerating drives, " +"volumes and mount points" msgstr "" msgid "" @@ -31166,14 +34249,14 @@ msgid "" msgstr "" msgid "" -":gh:`102378`: Private helper method ``inspect." -"_signature_strip_non_python_syntax`` will no longer strip ``/`` from the " -"input string." +":gh:`102378`: Private helper method " +"``inspect._signature_strip_non_python_syntax`` will no longer strip ``/`` " +"from the input string." msgstr "" msgid "" -":gh:`79940`: Add :func:`inspect.getasyncgenstate` and :func:`inspect." -"getasyncgenlocals`. Patch by Thomas Krennwallner." +":gh:`79940`: Add :func:`inspect.getasyncgenstate` " +"and :func:`inspect.getasyncgenlocals`. Patch by Thomas Krennwallner." msgstr "" msgid "" @@ -31215,25 +34298,25 @@ msgid "" msgstr "" msgid "" -":gh:`100131`: Added an optional ``delete`` keyword argument to :class:" -"`tempfile.TemporaryDirectory`." +":gh:`100131`: Added an optional ``delete`` keyword argument " +"to :class:`tempfile.TemporaryDirectory`." msgstr "" msgid "" ":gh:`48330`: Added ``--durations`` command line option, showing the N " -"slowest test cases. :class:`unittest.TextTestRunner` and :class:`unittest." -"TextTestResult` constructors accept a new *durations* keyword argument. " -"Subclasses should take this into account or accept ``**kwargs``. Added :meth:" -"`unittest.TestResult.addDuration` method and :attr:`unittest.TestResult." -"collectedDurations` attribute." +"slowest test cases. :class:`unittest.TextTestRunner` " +"and :class:`unittest.TextTestResult` constructors accept a new *durations* " +"keyword argument. Subclasses should take this into account or accept " +"``**kwargs``. Added :meth:`unittest.TestResult.addDuration` method " +"and :attr:`unittest.TestResult.collectedDurations` attribute." msgstr "" msgid "(Contributed by Giampaolo Rodola)" msgstr "" msgid "" -":gh:`98169`: Fix :func:`dataclasses.astuple` crash when :class:`collections." -"defaultdict` is present in the attributes." +":gh:`98169`: Fix :func:`dataclasses.astuple` crash " +"when :class:`collections.defaultdict` is present in the attributes." msgstr "" msgid "" @@ -31244,10 +34327,10 @@ msgid "" ":gh:`95495`: When built against OpenSSL 3.0, the :mod:`ssl` module had a bug " "where it reported unauthenticated EOFs (i.e. without close_notify) as a " "clean TLS-level EOF. It now raises :exc:`~ssl.SSLEOFError`, matching the " -"behavior in previous versions of OpenSSL. The :attr:`~ssl.SSLContext." -"options` attribute on :class:`~ssl.SSLContext` also no longer includes :" -"const:`~ssl.OP_IGNORE_UNEXPECTED_EOF` by default. This option may be set to " -"specify the previous OpenSSL 3.0 behavior." +"behavior in previous versions of OpenSSL. " +"The :attr:`~ssl.SSLContext.options` attribute on :class:`~ssl.SSLContext` " +"also no longer includes :const:`~ssl.OP_IGNORE_UNEXPECTED_EOF` by default. " +"This option may be set to specify the previous OpenSSL 3.0 behavior." msgstr "" msgid "" @@ -31262,8 +34345,8 @@ msgid "" msgstr "" msgid "" -":gh:`72346`: Added deprecation warning to *isdst* parameter of :func:`email." -"utils.localtime`." +":gh:`72346`: Added deprecation warning to *isdst* parameter " +"of :func:`email.utils.localtime`." msgstr "" msgid "" @@ -31280,8 +34363,8 @@ msgid ":gh:`102980`: Improve test coverage on :mod:`pdb`." msgstr "" msgid "" -":gh:`102537`: Adjust the error handling strategy in ``test_zoneinfo." -"TzPathTest.python_tzpath_context``. Patch by Paul Ganssle." +":gh:`102537`: Adjust the error handling strategy in " +"``test_zoneinfo.TzPathTest.python_tzpath_context``. Patch by Paul Ganssle." msgstr "" msgid ":gh:`101377`: Improved test_locale_calendar_formatweekday of calendar." @@ -31326,8 +34409,8 @@ msgstr "" msgid "" ":gh:`101727`: Updated the OpenSSL version used in Windows and macOS binary " -"release builds to 1.1.1t to address :cve:`2023-0286`, :cve:`2022-4303`, and :" -"cve:`2022-4303` per `the OpenSSL 2023-02-07 security advisory `_." msgstr "" @@ -31402,12 +34485,12 @@ msgid "" msgstr "" msgid "" -":gh:`74895`: :mod:`socket.getaddrinfo` no longer raises :class:" -"`OverflowError` for :class:`int` **port** values outside of the C long " -"range. Out of range values are left up to the underlying string based C " -"library API to report. A :class:`socket.gaierror` ``SAI_SERVICE`` may occur " -"instead, or no error at all as not all platform C libraries generate an " -"error." +":gh:`74895`: :mod:`socket.getaddrinfo` no longer " +"raises :class:`OverflowError` for :class:`int` **port** values outside of " +"the C long range. Out of range values are left up to the underlying string " +"based C library API to report. A :class:`socket.gaierror` ``SAI_SERVICE`` " +"may occur instead, or no error at all as not all platform C libraries " +"generate an error." msgstr "" msgid "" @@ -31470,9 +34553,9 @@ msgid "" msgstr "" msgid "" -":gh:`101979`: Fix a bug where parentheses in the ``metavar`` argument to :" -"meth:`argparse.ArgumentParser.add_argument` were dropped. Patch by Yeojin " -"Kim." +":gh:`101979`: Fix a bug where parentheses in the ``metavar`` argument " +"to :meth:`argparse.ArgumentParser.add_argument` were dropped. Patch by " +"Yeojin Kim." msgstr "" msgid "" @@ -31480,8 +34563,9 @@ msgid "" msgstr "" msgid "" -":gh:`81652`: Add :const:`mmap.MAP_ALIGNED_SUPER` FreeBSD and :const:`mmap." -"MAP_CONCEAL` OpenBSD constants to :mod:`mmap`. Patch by Yeojin Kim." +":gh:`81652`: Add :const:`mmap.MAP_ALIGNED_SUPER` FreeBSD " +"and :const:`mmap.MAP_CONCEAL` OpenBSD constants to :mod:`mmap`. Patch by " +"Yeojin Kim." msgstr "" msgid ":gh:`102179`: Fix :func:`os.dup2` error message for negative fds." @@ -31494,14 +34578,14 @@ msgid "" msgstr "" msgid "" -":gh:`101936`: The default value of ``fp`` becomes :class:`io.BytesIO` if :" -"exc:`~urllib.error.HTTPError` is initialized without a designated ``fp`` " +":gh:`101936`: The default value of ``fp`` becomes :class:`io.BytesIO` " +"if :exc:`~urllib.error.HTTPError` is initialized without a designated ``fp`` " "parameter. Patch by Long Vo." msgstr "" msgid "" -":gh:`101566`: In zipfile, sync Path with `zipp 3.14 `_, including fix for " +":gh:`101566`: In zipfile, sync Path with `zipp 3.14 `_, including fix for " "extractall on the underlying zipfile after being wrapped in ``Path``." msgstr "" @@ -31538,9 +34622,9 @@ msgid "" msgstr "" msgid "" -":gh:`101517`: Fixed bug where :mod:`bdb` looks up the source line with :mod:" -"`linecache` with a ``lineno=None``, which causes it to fail with an " -"unhandled exception." +":gh:`101517`: Fixed bug where :mod:`bdb` looks up the source line " +"with :mod:`linecache` with a ``lineno=None``, which causes it to fail with " +"an unhandled exception." msgstr "" msgid "" @@ -31554,8 +34638,8 @@ msgid "" "is now emitted when :ref:`named placeholders ` are " "used together with parameters supplied as a :term:`sequence` instead of as " "a :class:`dict`. Starting from Python 3.14, using named placeholders with " -"parameters supplied as a sequence will raise a :exc:`~sqlite3." -"ProgrammingError`. Patch by Erlend E. Aasland." +"parameters supplied as a sequence will raise " +"a :exc:`~sqlite3.ProgrammingError`. Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -31566,13 +34650,13 @@ msgstr "" msgid "" ":gh:`101362`: Speed up :class:`pathlib.PurePath` construction by handling " "arguments more uniformly. When a :class:`pathlib.Path` argument is supplied, " -"we use its string representation rather than joining its parts with :func:" -"`os.path.join`." +"we use its string representation rather than joining its parts " +"with :func:`os.path.join`." msgstr "" msgid "" -":gh:`101362`: Speed up :class:`pathlib.PurePath` construction by calling :" -"func:`os.path.join` only when two or more arguments are given." +":gh:`101362`: Speed up :class:`pathlib.PurePath` construction by " +"calling :func:`os.path.join` only when two or more arguments are given." msgstr "" msgid "" @@ -31581,14 +34665,14 @@ msgid "" msgstr "" msgid "" -":gh:`85984`: Refactored the implementation of :func:`pty.fork` to use :func:" -"`os.login_tty`." +":gh:`85984`: Refactored the implementation of :func:`pty.fork` to " +"use :func:`os.login_tty`." msgstr "" msgid "" -"A :exc:`DeprecationWarning` is now raised by ``pty.master_open()`` and ``pty." -"slave_open()``. They were undocumented and deprecated long long ago in the " -"docstring in favor of :func:`pty.openpty`." +"A :exc:`DeprecationWarning` is now raised by ``pty.master_open()`` and " +"``pty.slave_open()``. They were undocumented and deprecated long long ago in " +"the docstring in favor of :func:`pty.openpty`." msgstr "" msgid "" @@ -31635,9 +34719,9 @@ msgid "" ":issue:`23224`: Fix segfaults when creating :class:`lzma.LZMADecompressor` " "and :class:`bz2.BZ2Decompressor` objects without calling ``__init__()``, and " "fix leakage of locks and internal buffers when calling the ``__init__()`` " -"methods of :class:`lzma.LZMADecompressor`, :class:`lzma.LZMACompressor`, :" -"class:`bz2.BZ2Compressor`, and :class:`bz2.BZ2Decompressor` objects multiple " -"times." +"methods " +"of :class:`lzma.LZMADecompressor`, :class:`lzma.LZMACompressor`, :class:`bz2.BZ2Compressor`, " +"and :class:`bz2.BZ2Decompressor` objects multiple times." msgstr "" msgid "" @@ -31662,8 +34746,8 @@ msgstr "" msgid "" ":gh:`89792`: ``test_tools`` now copies up to 10x less source data to a " "temporary directory during the ``freeze`` test by ignoring git metadata and " -"other artifacts. It also limits its python build parallelism based on os." -"cpu_count instead of hard coding it as 8 cores." +"other artifacts. It also limits its python build parallelism based on " +"os.cpu_count instead of hard coding it as 8 cores." msgstr "" msgid "" @@ -31720,9 +34804,9 @@ msgid "" msgstr "" msgid "" -":gh:`101196`: The functions ``os.path.isdir``, ``os.path.isfile``, ``os.path." -"islink`` and ``os.path.exists`` are now 13% to 28% faster on Windows, by " -"making fewer Win32 API calls." +":gh:`101196`: The functions ``os.path.isdir``, ``os.path.isfile``, " +"``os.path.islink`` and ``os.path.exists`` are now 13% to 28% faster on " +"Windows, by making fewer Win32 API calls." msgstr "" msgid ":gh:`101759`: Update macOS installer to SQLite 3.40.1." @@ -31739,23 +34823,24 @@ msgid "" msgstr "" msgid "" -":gh:`101578`: Add :c:func:`PyErr_GetRaisedException` and :c:func:" -"`PyErr_SetRaisedException` for saving and restoring the current exception. " -"These functions return and accept a single exception object, rather than the " -"triple arguments of the now-deprecated :c:func:`PyErr_Fetch` and :c:func:" -"`PyErr_Restore`. This is less error prone and a bit more efficient." +":gh:`101578`: Add :c:func:`PyErr_GetRaisedException` " +"and :c:func:`PyErr_SetRaisedException` for saving and restoring the current " +"exception. These functions return and accept a single exception object, " +"rather than the triple arguments of the now-deprecated :c:func:`PyErr_Fetch` " +"and :c:func:`PyErr_Restore`. This is less error prone and a bit more " +"efficient." msgstr "" msgid "" "Add :c:func:`PyException_GetArgs` and :c:func:`PyException_SetArgs` as " -"convenience functions for retrieving and modifying the :attr:`~BaseException." -"args` passed to the exception's constructor." +"convenience functions for retrieving and modifying " +"the :attr:`~BaseException.args` passed to the exception's constructor." msgstr "" msgid "" ":gh:`91744`: Introduced the *Unstable C API tier*, marking APi that is " -"allowed to change in minor releases without a deprecation period. See :pep:" -"`689` for details." +"allowed to change in minor releases without a deprecation period. " +"See :pep:`689` for details." msgstr "" msgid "Python 3.12.0 alpha 5" @@ -31773,8 +34858,8 @@ msgid "" msgstr "" msgid "" -":gh:`92173`: Fix the ``defs`` and ``kwdefs`` arguments to :c:func:" -"`PyEval_EvalCodeEx` and a reference leak in that function." +":gh:`92173`: Fix the ``defs`` and ``kwdefs`` arguments " +"to :c:func:`PyEval_EvalCodeEx` and a reference leak in that function." msgstr "" msgid "" @@ -31805,18 +34890,18 @@ msgid "" msgstr "" msgid "" -":gh:`101046`: Fix a possible memory leak in the parser when raising :exc:" -"`MemoryError`. Patch by Pablo Galindo" +":gh:`101046`: Fix a possible memory leak in the parser when " +"raising :exc:`MemoryError`. Patch by Pablo Galindo" msgstr "" msgid "" -":gh:`101037`: Fix potential memory underallocation issue for instances of :" -"class:`int` subclasses with value zero." +":gh:`101037`: Fix potential memory underallocation issue for instances " +"of :class:`int` subclasses with value zero." msgstr "" msgid "" -":gh:`100762`: Record the (virtual) exception block depth in the oparg of :" -"opcode:`YIELD_VALUE`. Use this to avoid the expensive ``throw()`` when " +":gh:`100762`: Record the (virtual) exception block depth in the oparg " +"of :opcode:`YIELD_VALUE`. Use this to avoid the expensive ``throw()`` when " "closing generators (and coroutines) that can be closed trivially." msgstr "" @@ -31839,16 +34924,16 @@ msgid "" msgstr "" msgid "" -":gh:`100892`: Fix race while iterating over thread states in clearing :class:" -"`threading.local`. Patch by Kumar Aditya." +":gh:`100892`: Fix race while iterating over thread states in " +"clearing :class:`threading.local`. Patch by Kumar Aditya." msgstr "" msgid "" ":gh:`91351`: Fix a case where re-entrant imports could corrupt the import " -"deadlock detection code and cause a :exc:`KeyError` to be raised out of :mod:" -"`importlib/_bootstrap`. In addition to the straightforward cases, this " -"could also happen when garbage collection leads to a warning being emitted " -"-- as happens when it collects an open socket or file)" +"deadlock detection code and cause a :exc:`KeyError` to be raised out " +"of :mod:`importlib/_bootstrap`. In addition to the straightforward cases, " +"this could also happen when garbage collection leads to a warning being " +"emitted -- as happens when it collects an open socket or file)" msgstr "" msgid "" @@ -31875,13 +34960,13 @@ msgid ":gh:`101570`: Upgrade pip wheel bundled with ensurepip (pip 23.0)" msgstr "" msgid "" -":gh:`101323`: Fix a bug where errors where not thrown by zlib." -"_ZlibDecompressor if encountered during decompressing." +":gh:`101323`: Fix a bug where errors where not thrown by " +"zlib._ZlibDecompressor if encountered during decompressing." msgstr "" msgid "" -":gh:`101317`: Add *ssl_shutdown_timeout* parameter for :meth:`asyncio." -"StreamWriter.start_tls`." +":gh:`101317`: Add *ssl_shutdown_timeout* parameter " +"for :meth:`asyncio.StreamWriter.start_tls`." msgstr "" msgid "" @@ -31907,10 +34992,11 @@ msgid "" msgstr "" msgid "" -":gh:`101144`: Make :func:`zipfile.Path.open` and :func:`zipfile.Path." -"read_text` also accept ``encoding`` as a positional argument. This was the " -"behavior in Python 3.9 and earlier. 3.10 introduced a regression where " -"supplying it as a positional argument would lead to a :exc:`TypeError`." +":gh:`101144`: Make :func:`zipfile.Path.open` " +"and :func:`zipfile.Path.read_text` also accept ``encoding`` as a positional " +"argument. This was the behavior in Python 3.9 and earlier. 3.10 introduced " +"a regression where supplying it as a positional argument would lead to " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -31926,8 +35012,9 @@ msgstr "" msgid "" ":gh:`101000`: Add :func:`os.path.splitroot`, which splits a path into a 3-" -"item tuple ``(drive, root, tail)``. This new function is used by :mod:" -"`pathlib` to improve the performance of path construction by up to a third." +"item tuple ``(drive, root, tail)``. This new function is used " +"by :mod:`pathlib` to improve the performance of path construction by up to a " +"third." msgstr "" msgid "" @@ -31946,29 +35033,30 @@ msgid ":gh:`100750`: pass encoding kwarg to subprocess in platform" msgstr "" msgid "" -":gh:`100160`: Emit a deprecation warning in :meth:`asyncio." -"DefaultEventLoopPolicy.get_event_loop` if there is no current event loop set " -"and it decides to create one." +":gh:`100160`: Emit a deprecation warning " +"in :meth:`asyncio.DefaultEventLoopPolicy.get_event_loop` if there is no " +"current event loop set and it decides to create one." msgstr "" msgid "" -":gh:`96290`: Fix handling of partial and invalid UNC drives in ``ntpath." -"splitdrive()``, and in ``ntpath.normpath()`` on non-Windows systems. Paths " -"such as '\\\\server' and '\\\\' are now considered by ``splitdrive()`` to " -"contain only a drive, and consequently are not modified by ``normpath()`` on " -"non-Windows systems. The behaviour of ``normpath()`` on Windows systems is " -"unaffected, as native OS APIs are used. Patch by Eryk Sun, with " -"contributions by Barney Gale." +":gh:`96290`: Fix handling of partial and invalid UNC drives in " +"``ntpath.splitdrive()``, and in ``ntpath.normpath()`` on non-Windows " +"systems. Paths such as '\\\\server' and '\\\\' are now considered by " +"``splitdrive()`` to contain only a drive, and consequently are not modified " +"by ``normpath()`` on non-Windows systems. The behaviour of ``normpath()`` on " +"Windows systems is unaffected, as native OS APIs are used. Patch by Eryk " +"Sun, with contributions by Barney Gale." msgstr "" msgid "" -":gh:`99952`: Fix a reference undercounting issue in :class:`ctypes." -"Structure` with ``from_param()`` results larger than a C pointer." +":gh:`99952`: Fix a reference undercounting issue " +"in :class:`ctypes.Structure` with ``from_param()`` results larger than a C " +"pointer." msgstr "" msgid "" -":gh:`67790`: Add float-style formatting support for :class:`fractions." -"Fraction` instances." +":gh:`67790`: Add float-style formatting support " +"for :class:`fractions.Fraction` instances." msgstr "" msgid ":gh:`99266`: Preserve more detailed error messages in :mod:`ctypes`." @@ -31985,9 +35073,9 @@ msgid "" msgstr "" msgid "" -":gh:`60580`: :data:`ctypes.wintypes.BYTE` definition changed from :data:" -"`~ctypes.c_byte` to :data:`~ctypes.c_ubyte` to match Windows SDK. Patch by " -"Anatoly Techtonik and Oleg Iarygin." +":gh:`60580`: :data:`ctypes.wintypes.BYTE` definition changed " +"from :data:`~ctypes.c_byte` to :data:`~ctypes.c_ubyte` to match Windows SDK. " +"Patch by Anatoly Techtonik and Oleg Iarygin." msgstr "" msgid "" @@ -31997,10 +35085,10 @@ msgid "" msgstr "" msgid "" -":issue:`38941`: The :mod:`xml.etree.ElementTree` module now emits :exc:" -"`DeprecationWarning` when testing the truth value of an :class:`xml.etree." -"ElementTree.Element`. Before, the Python implementation emitted :exc:" -"`FutureWarning`, and the C implementation emitted nothing." +":issue:`38941`: The :mod:`xml.etree.ElementTree` module now " +"emits :exc:`DeprecationWarning` when testing the truth value of " +"an :class:`xml.etree.ElementTree.Element`. Before, the Python implementation " +"emitted :exc:`FutureWarning`, and the C implementation emitted nothing." msgstr "" msgid "" @@ -32014,9 +35102,9 @@ msgid "" msgstr "" msgid "" -":gh:`77772`: :class:`ctypes.CDLL`, :class:`ctypes.OleDLL`, :class:`ctypes." -"WinDLL`, and :class:`ctypes.PyDLL` now accept :term:`path-like objects ` as their ``name`` argument. Patch by Robert Hoelzl." +":gh:`77772`: :class:`ctypes.CDLL`, :class:`ctypes.OleDLL`, :class:`ctypes.WinDLL`, " +"and :class:`ctypes.PyDLL` now accept :term:`path-like objects ` as their ``name`` argument. Patch by Robert Hoelzl." msgstr "" msgid "" @@ -32094,9 +35182,9 @@ msgid ":gh:`99834`: Updates bundled copy of Tcl/Tk to 8.6.13.0" msgstr "" msgid "" -":gh:`101135`: Restore ability to launch older 32-bit versions from the :file:" -"`py.exe` launcher when both 32-bit and 64-bit installs of the same version " -"are available." +":gh:`101135`: Restore ability to launch older 32-bit versions from " +"the :file:`py.exe` launcher when both 32-bit and 64-bit installs of the same " +"version are available." msgstr "" msgid "" @@ -32132,9 +35220,10 @@ msgid "" msgstr "" msgid "" -":gh:`99005`: Add new :opcode:`CALL_INTRINSIC_1` instruction. Remove :opcode:" -"`IMPORT_STAR`, :opcode:`PRINT_EXPR` and :opcode:`STOPITERATION_ERROR`, " -"replacing them with the :opcode:`CALL_INTRINSIC_1` instruction." +":gh:`99005`: Add new :opcode:`CALL_INTRINSIC_1` instruction. " +"Remove :opcode:`IMPORT_STAR`, :opcode:`PRINT_EXPR` " +"and :opcode:`STOPITERATION_ERROR`, replacing them with " +"the :opcode:`CALL_INTRINSIC_1` instruction." msgstr "" msgid "" @@ -32202,8 +35291,8 @@ msgid "" msgstr "" msgid "" -":gh:`90043`: Handle NaNs when specializing :opcode:`COMPARE_OP` for :class:" -"`float` values." +":gh:`90043`: Handle NaNs when specializing :opcode:`COMPARE_OP` " +"for :class:`float` values." msgstr "" msgid "" @@ -32308,8 +35397,9 @@ msgid "" msgstr "" msgid "" -":gh:`91851`: Microoptimizations for :meth:`fractions.Fraction.__round__`, :" -"meth:`fractions.Fraction.__ceil__` and :meth:`fractions.Fraction.__floor__`." +":gh:`91851`: Microoptimizations " +"for :meth:`fractions.Fraction.__round__`, :meth:`fractions.Fraction.__ceil__` " +"and :meth:`fractions.Fraction.__floor__`." msgstr "" msgid "" @@ -32343,8 +35433,8 @@ msgid "" msgstr "" msgid "" -":gh:`89727`: Simplify and optimize :func:`os.walk` by using :func:" -"`isinstance` checks to check the top of the stack." +":gh:`89727`: Simplify and optimize :func:`os.walk` by " +"using :func:`isinstance` checks to check the top of the stack." msgstr "" msgid ":gh:`100485`: Add math.sumprod() to compute the sum of products." @@ -32371,25 +35461,26 @@ msgstr "" msgid "" ":gh:`100562`: Improve performance of :meth:`pathlib.Path.absolute` by nearly " -"2x. This comes at the cost of a performance regression in :meth:`pathlib." -"Path.cwd`, which is generally used less frequently in user code." +"2x. This comes at the cost of a performance regression " +"in :meth:`pathlib.Path.cwd`, which is generally used less frequently in user " +"code." msgstr "" msgid "" -":gh:`100519`: Small simplification of :func:`http.cookiejar." -"eff_request_host` that improves readability and better matches the RFC " -"wording." +":gh:`100519`: Small simplification " +"of :func:`http.cookiejar.eff_request_host` that improves readability and " +"better matches the RFC wording." msgstr "" msgid "" -":gh:`100287`: Fix the interaction of :func:`unittest.mock.seal` with :class:" -"`unittest.mock.AsyncMock`." +":gh:`100287`: Fix the interaction of :func:`unittest.mock.seal` " +"with :class:`unittest.mock.AsyncMock`." msgstr "" msgid "" -":gh:`100488`: Add :meth:`Fraction.is_integer` to check whether a :class:" -"`fractions.Fraction` is an integer. This improves duck type compatibility " -"with :class:`float` and :class:`int`." +":gh:`100488`: Add :meth:`Fraction.is_integer` to check whether " +"a :class:`fractions.Fraction` is an integer. This improves duck type " +"compatibility with :class:`float` and :class:`int`." msgstr "" msgid "" @@ -32460,9 +35551,9 @@ msgstr "" msgid "" ":gh:`85432`: Rename the *fmt* parameter of the pure-Python implementation " -"of :meth:`datetime.time.strftime` to *format*. Rename the *t* parameter of :" -"meth:`datetime.datetime.fromtimestamp` to *timestamp*. These changes mean " -"the parameter names in the pure-Python implementation now match the " +"of :meth:`datetime.time.strftime` to *format*. Rename the *t* parameter " +"of :meth:`datetime.datetime.fromtimestamp` to *timestamp*. These changes " +"mean the parameter names in the pure-Python implementation now match the " "parameter names in the C implementation. Patch by Alex Waygood." msgstr "" @@ -32472,23 +35563,23 @@ msgid "" msgstr "" msgid "" -":gh:`99925`: Unify error messages in JSON serialization between ``json." -"dumps(float('nan'), allow_nan=False)`` and ``json.dumps(float('nan'), " +":gh:`99925`: Unify error messages in JSON serialization between " +"``json.dumps(float('nan'), allow_nan=False)`` and ``json.dumps(float('nan'), " "allow_nan=False, indent=)``. Now both include the representation " "of the value that could not be serialized." msgstr "" msgid "" ":gh:`89727`: Fix issue with :func:`os.walk` where a :exc:`RecursionError` " -"would occur on deep directory structures by adjusting the implementation of :" -"func:`os.walk` to be iterative instead of recursive." +"would occur on deep directory structures by adjusting the implementation " +"of :func:`os.walk` to be iterative instead of recursive." msgstr "" msgid "" -":gh:`94943`: Add :ref:`enum-dataclass-support` to the :class:`~enum.Enum` :" -"meth:`~enum.Enum.__repr__`. When inheriting from a :class:`~dataclasses." -"dataclass`, only show the field names in the value section of the member :" -"func:`repr`, and not the dataclass' class name." +":gh:`94943`: Add :ref:`enum-dataclass-support` to " +"the :class:`~enum.Enum` :meth:`~enum.Enum.__repr__`. When inheriting from " +"a :class:`~dataclasses.dataclass`, only show the field names in the value " +"section of the member :func:`repr`, and not the dataclass' class name." msgstr "" msgid "" @@ -32503,13 +35594,13 @@ msgstr "" msgid "" ":gh:`94912`: Add :func:`inspect.markcoroutinefunction` decorator which " -"manually marks a function as a coroutine for the benefit of :func:" -"`iscoroutinefunction`." +"manually marks a function as a coroutine for the benefit " +"of :func:`iscoroutinefunction`." msgstr "" msgid "" -":gh:`99509`: Add :pep:`585` support for :class:`multiprocessing.queues." -"Queue`." +":gh:`99509`: Add :pep:`585` support " +"for :class:`multiprocessing.queues.Queue`." msgstr "" msgid "" @@ -32525,12 +35616,12 @@ msgstr "" msgid "" ":gh:`85267`: Several improvements to :func:`inspect.signature`'s handling of " "``__text_signature``. - Fixes a case where :func:`inspect.signature` dropped " -"parameters - Fixes a case where :func:`inspect.signature` raised :exc:" -"`tokenize.TokenError` - Allows :func:`inspect.signature` to understand " -"defaults involving binary operations of constants - :func:`inspect." -"signature` is documented as only raising :exc:`TypeError` or :exc:" -"`ValueError`, but sometimes raised :exc:`RuntimeError`. These cases now " -"raise :exc:`ValueError` - Removed a dead code path" +"parameters - Fixes a case where :func:`inspect.signature` " +"raised :exc:`tokenize.TokenError` - Allows :func:`inspect.signature` to " +"understand defaults involving binary operations of constants " +"- :func:`inspect.signature` is documented as only raising :exc:`TypeError` " +"or :exc:`ValueError`, but sometimes raised :exc:`RuntimeError`. These cases " +"now raise :exc:`ValueError` - Removed a dead code path" msgstr "" msgid "" @@ -32550,8 +35641,8 @@ msgid "" msgstr "" msgid "" -":gh:`88500`: Reduced the memory usage of :func:`urllib.parse.unquote` and :" -"func:`urllib.parse.unquote_to_bytes` on large values." +":gh:`88500`: Reduced the memory usage of :func:`urllib.parse.unquote` " +"and :func:`urllib.parse.unquote_to_bytes` on large values." msgstr "" msgid "" @@ -32561,21 +35652,22 @@ msgid "" msgstr "" msgid "" -":gh:`95882`: Fix a 3.11 regression in :func:`~contextlib." -"asynccontextmanager`, which caused it to propagate exceptions with incorrect " -"tracebacks and fix a 3.11 regression in :func:`~contextlib.contextmanager`, " -"which caused it to propagate exceptions with incorrect tracebacks for :exc:" -"`StopIteration`." +":gh:`95882`: Fix a 3.11 regression " +"in :func:`~contextlib.asynccontextmanager`, which caused it to propagate " +"exceptions with incorrect tracebacks and fix a 3.11 regression " +"in :func:`~contextlib.contextmanager`, which caused it to propagate " +"exceptions with incorrect tracebacks for :exc:`StopIteration`." msgstr "" msgid "" -":gh:`78707`: Deprecate passing more than one positional argument to :meth:" -"`pathlib.PurePath.relative_to` and :meth:`~pathlib.PurePath.is_relative_to`." +":gh:`78707`: Deprecate passing more than one positional argument " +"to :meth:`pathlib.PurePath.relative_to` " +"and :meth:`~pathlib.PurePath.is_relative_to`." msgstr "" msgid "" -":gh:`92122`: Fix reStructuredText syntax errors in docstrings in the :mod:" -"`enum` module." +":gh:`92122`: Fix reStructuredText syntax errors in docstrings in " +"the :mod:`enum` module." msgstr "" msgid "" @@ -32592,8 +35684,8 @@ msgstr "" msgid "" ":issue:`40447`: Accept :class:`os.PathLike` (such as :class:`pathlib.Path`) " -"in the ``stripdir`` arguments of :meth:`compileall.compile_file` and :meth:" -"`compileall.compile_dir`." +"in the ``stripdir`` arguments of :meth:`compileall.compile_file` " +"and :meth:`compileall.compile_dir`." msgstr "" msgid "" @@ -32603,19 +35695,20 @@ msgid "" msgstr "" msgid "" -":gh:`100616`: Document existing ``attr`` parameter to :func:`curses.window." -"vline` function in :mod:`curses`." +":gh:`100616`: Document existing ``attr`` parameter " +"to :func:`curses.window.vline` function in :mod:`curses`." msgstr "" msgid "" ":gh:`100472`: Remove claim in documentation that the ``stripdir``, " -"``prependdir`` and ``limit_sl_dest`` parameters of :func:`compileall." -"compile_dir` and :func:`compileall.compile_file` could be :class:`bytes`." +"``prependdir`` and ``limit_sl_dest`` parameters " +"of :func:`compileall.compile_dir` and :func:`compileall.compile_file` could " +"be :class:`bytes`." msgstr "" msgid "" -":issue:`25377`: Clarify use of octal format of mode argument in help(os." -"chmod) as well as help(os.fchmod)" +":issue:`25377`: Clarify use of octal format of mode argument in " +"help(os.chmod) as well as help(os.fchmod)" msgstr "" msgid ":gh:`100454`: Start running SSL tests with OpenSSL 3.1.0-beta1." @@ -32669,8 +35762,8 @@ msgstr "" msgid "" ":gh:`99941`: Ensure that :func:`asyncio.Protocol.data_received` receives an " -"immutable :class:`bytes` object (as documented), instead of :class:" -"`bytearray`." +"immutable :class:`bytes` object (as documented), instead " +"of :class:`bytearray`." msgstr "" msgid "" @@ -32713,10 +35806,10 @@ msgid "" msgstr "" msgid "" -":gh:`98724`: The :c:macro:`Py_CLEAR`, :c:macro:`Py_SETREF` and :c:macro:" -"`Py_XSETREF` macros now only evaluate their arguments once. If an argument " -"has side effects, these side effects are no longer duplicated. Patch by " -"Victor Stinner." +":gh:`98724`: The :c:macro:`Py_CLEAR`, :c:macro:`Py_SETREF` " +"and :c:macro:`Py_XSETREF` macros now only evaluate their arguments once. If " +"an argument has side effects, these side effects are no longer duplicated. " +"Patch by Victor Stinner." msgstr "" msgid "Python 3.12.0 alpha 3" @@ -32732,9 +35825,10 @@ msgid "" msgstr "" msgid "" -"This is done by changing the :mod:`http.server` :class:" -"`BaseHTTPRequestHandler` ``.log_message`` method to replace control " -"characters with a :samp:`\\\\x{HH}` hex escape before printing." +"This is done by changing " +"the :mod:`http.server` :class:`BaseHTTPRequestHandler` ``.log_message`` " +"method to replace control characters with a :samp:`\\\\x{HH}` hex escape " +"before printing." msgstr "" msgid "" @@ -32749,9 +35843,9 @@ msgid "" msgstr "" msgid "" -":gh:`91054`: Add :c:func:`PyCode_AddWatcher` and :c:func:" -"`PyCode_ClearWatcher` APIs to register callbacks to receive notification on " -"creation and destruction of code objects." +":gh:`91054`: Add :c:func:`PyCode_AddWatcher` " +"and :c:func:`PyCode_ClearWatcher` APIs to register callbacks to receive " +"notification on creation and destruction of code objects." msgstr "" msgid "" @@ -32778,8 +35872,8 @@ msgid "" msgstr "" msgid "" -":gh:`99553`: Fix bug where an :exc:`ExceptionGroup` subclass can wrap a :exc:" -"`BaseException`." +":gh:`99553`: Fix bug where an :exc:`ExceptionGroup` subclass can wrap " +"a :exc:`BaseException`." msgstr "" msgid "" @@ -32802,8 +35896,8 @@ msgstr "" msgid "" ":gh:`99298`: Remove the remaining error paths for attribute specializations, " -"and refuse to specialize attribute accesses on types that haven't had :c:" -"func:`PyType_Ready` called on them yet." +"and refuse to specialize attribute accesses on types that haven't " +"had :c:func:`PyType_Ready` called on them yet." msgstr "" msgid "" @@ -32844,16 +35938,16 @@ msgid "" msgstr "" msgid "" -":gh:`100001`: Also \\ escape \\s in the http.server BaseHTTPRequestHandler." -"log_message so that it is technically possible to parse the line and " -"reconstruct what the original data was. Without this a \\xHH is ambiguous " -"as to if it is a hex replacement we put in or the characters r\"\\x\" came " -"through in the original request line." +":gh:`100001`: Also \\ escape \\s in the http.server " +"BaseHTTPRequestHandler.log_message so that it is technically possible to " +"parse the line and reconstruct what the original data was. Without this a " +"\\xHH is ambiguous as to if it is a hex replacement we put in or the " +"characters r\"\\x\" came through in the original request line." msgstr "" msgid "" -":gh:`99957`: Add ``frozen_default`` parameter to :func:`typing." -"dataclass_transform`." +":gh:`99957`: Add ``frozen_default`` parameter " +"to :func:`typing.dataclass_transform`." msgstr "" msgid "" @@ -32867,10 +35961,10 @@ msgid "" msgstr "" msgid "" -":gh:`99645`: Fix a bug in handling class cleanups in :class:`unittest." -"TestCase`. Now ``addClassCleanup()`` uses separate lists for different " -"``TestCase`` subclasses, and ``doClassCleanups()`` only cleans up the " -"particular class." +":gh:`99645`: Fix a bug in handling class cleanups " +"in :class:`unittest.TestCase`. Now ``addClassCleanup()`` uses separate " +"lists for different ``TestCase`` subclasses, and ``doClassCleanups()`` only " +"cleans up the particular class." msgstr "" msgid "" @@ -32899,24 +35993,24 @@ msgid "" msgstr "" msgid "" -":gh:`99341`: Fix :func:`ast.increment_lineno` to also cover :class:`ast." -"TypeIgnore` when changing line numbers." +":gh:`99341`: Fix :func:`ast.increment_lineno` to also " +"cover :class:`ast.TypeIgnore` when changing line numbers." msgstr "" msgid "" ":gh:`99382`: Check the number of arguments in substitution in user generics " -"containing a :class:`~typing.TypeVarTuple` and one or more :class:`~typing." -"TypeVar`." +"containing a :class:`~typing.TypeVarTuple` and one or " +"more :class:`~typing.TypeVar`." msgstr "" msgid "" -":gh:`99379`: Fix substitution of :class:`~typing.ParamSpec` followed by :" -"class:`~typing.TypeVarTuple` in generic aliases." +":gh:`99379`: Fix substitution of :class:`~typing.ParamSpec` followed " +"by :class:`~typing.TypeVarTuple` in generic aliases." msgstr "" msgid "" -":gh:`99344`: Fix substitution of :class:`~typing.TypeVarTuple` and :class:" -"`~typing.ParamSpec` together in user generics." +":gh:`99344`: Fix substitution of :class:`~typing.TypeVarTuple` " +"and :class:`~typing.ParamSpec` together in user generics." msgstr "" msgid "" @@ -32967,14 +36061,14 @@ msgstr "" msgid "" ":gh:`93453`: :func:`asyncio.get_event_loop` and many other :mod:`asyncio` " -"functions like :func:`asyncio.ensure_future`, :func:`asyncio.shield` or :" -"func:`asyncio.gather`, and also the :meth:`~asyncio." -"BaseDefaultEventLoopPolicy.get_event_loop` method of :class:`asyncio." -"BaseDefaultEventLoopPolicy` now raise a :exc:`RuntimeError` if called when " -"there is no running event loop and the current event loop was not set. " -"Previously they implicitly created and set a new current event loop. :exc:" -"`DeprecationWarning` is no longer emitted if there is no running event loop " -"but the current event loop was set." +"functions like :func:`asyncio.ensure_future`, :func:`asyncio.shield` " +"or :func:`asyncio.gather`, and also " +"the :meth:`~asyncio.BaseDefaultEventLoopPolicy.get_event_loop` method " +"of :class:`asyncio.BaseDefaultEventLoopPolicy` now raise " +"a :exc:`RuntimeError` if called when there is no running event loop and the " +"current event loop was not set. Previously they implicitly created and set a " +"new current event loop. :exc:`DeprecationWarning` is no longer emitted if " +"there is no running event loop but the current event loop was set." msgstr "" msgid "" @@ -33010,10 +36104,10 @@ msgid "" msgstr "" msgid "" -":gh:`88863`: To avoid apparent memory leaks when :func:`asyncio." -"open_connection` raises, break reference cycles generated by local exception " -"and future instances (which has exception instance as its member var). Patch " -"by Dong Uk, Kang." +":gh:`88863`: To avoid apparent memory leaks " +"when :func:`asyncio.open_connection` raises, break reference cycles " +"generated by local exception and future instances (which has exception " +"instance as its member var). Patch by Dong Uk, Kang." msgstr "" msgid "" @@ -33022,14 +36116,14 @@ msgid "" msgstr "" msgid "" -":issue:`47220`: Document the optional *callback* parameter of :class:" -"`WeakMethod`. Patch by Géry Ogam." +":issue:`47220`: Document the optional *callback* parameter " +"of :class:`WeakMethod`. Patch by Géry Ogam." msgstr "" msgid "" ":issue:`44817`: Ignore WinError 53 (ERROR_BAD_NETPATH), 65 " -"(ERROR_NETWORK_ACCESS_DENIED) and 161 (ERROR_BAD_PATHNAME) when using ntpath." -"realpath()." +"(ERROR_NETWORK_ACCESS_DENIED) and 161 (ERROR_BAD_PATHNAME) when using " +"ntpath.realpath()." msgstr "" msgid "" @@ -33043,8 +36137,9 @@ msgid "" msgstr "" msgid "" -":gh:`99931`: Use `sphinxext-opengraph `__ to generate `OpenGraph metadata `__." +":gh:`99931`: Use `sphinxext-opengraph `__ to generate `OpenGraph metadata `__." msgstr "" msgid "" @@ -33053,8 +36148,8 @@ msgid "" msgstr "" msgid "" -":gh:`88330`: Improved the description of what a resource is in importlib." -"resources docs." +":gh:`88330`: Improved the description of what a resource is in " +"importlib.resources docs." msgstr "" msgid "" @@ -33063,9 +36158,9 @@ msgid "" msgstr "" msgid "" -":issue:`41825`: Restructured the documentation for the :func:`os.wait* ` family of functions, and improved the docs for :func:`os.waitid` with " -"more explanation of the possible argument constants." +":issue:`41825`: Restructured the documentation for the :func:`os.wait* " +"` family of functions, and improved the docs for :func:`os.waitid` " +"with more explanation of the possible argument constants." msgstr "" msgid "" @@ -33106,10 +36201,11 @@ msgid ":gh:`99337`: Fix a compilation issue with GCC 12 on macOS." msgstr "" msgid "" -":gh:`99289`: Add a ``COMPILEALL_OPTS`` variable in Makefile to override :mod:" -"`compileall` options (default: ``-j0``) in ``make install``. Also merged the " -"``compileall`` commands into a single command building .pyc files for the " -"all optimization levels (0, 1, 2) at once. Patch by Victor Stinner." +":gh:`99289`: Add a ``COMPILEALL_OPTS`` variable in Makefile to " +"override :mod:`compileall` options (default: ``-j0``) in ``make install``. " +"Also merged the ``compileall`` commands into a single command building .pyc " +"files for the all optimization levels (0, 1, 2) at once. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -33139,8 +36235,8 @@ msgid "" msgstr "" msgid "" -":issue:`40882`: Fix a memory leak in :class:`multiprocessing.shared_memory." -"SharedMemory` on Windows." +":issue:`40882`: Fix a memory leak " +"in :class:`multiprocessing.shared_memory.SharedMemory` on Windows." msgstr "" msgid "" @@ -33182,9 +36278,9 @@ msgstr "" msgid "" ":gh:`47146`: The ``structmember.h`` header is deprecated. Its non-deprecated " "contents are now available just by including ``Python.h``, with a ``Py_`` " -"prefix added if it was missing. (Deprecated contents are :c:macro:" -"`T_OBJECT`, :c:macro:`T_NONE`, and no-op flags.) Patch by Petr Viktorin, " -"based on earlier work by Alexander Belopolsky and Matthias Braun." +"prefix added if it was missing. (Deprecated contents " +"are :c:macro:`T_OBJECT`, :c:macro:`T_NONE`, and no-op flags.) Patch by Petr " +"Viktorin, based on earlier work by Alexander Belopolsky and Matthias Braun." msgstr "" msgid "Python 3.12.0 alpha 2" @@ -33216,11 +36312,12 @@ msgid ":gh:`98739`: Update bundled libexpat to 2.5.0" msgstr "" msgid "" -":gh:`81057`: The docs clearly say that :c:data:`PyImport_Inittab`, :c:func:" -"`PyImport_AppendInittab`, and :c:func:`PyImport_ExtendInittab` should not be " -"used after :c:func:`Py_Initialize` has been called. We now enforce this for " -"the two functions. Additionally, the runtime now uses an internal copy of :" -"c:data:`PyImport_Inittab`, to guard against modification." +":gh:`81057`: The docs clearly say " +"that :c:data:`PyImport_Inittab`, :c:func:`PyImport_AppendInittab`, " +"and :c:func:`PyImport_ExtendInittab` should not be used " +"after :c:func:`Py_Initialize` has been called. We now enforce this for the " +"two functions. Additionally, the runtime now uses an internal copy " +"of :c:data:`PyImport_Inittab`, to guard against modification." msgstr "" msgid "" @@ -33234,8 +36331,8 @@ msgid "" msgstr "" msgid "" -":gh:`99205`: Fix an issue that prevented :c:type:`PyThreadState` and :c:type:" -"`PyInterpreterState` memory from being freed properly." +":gh:`99205`: Fix an issue that prevented :c:type:`PyThreadState` " +"and :c:type:`PyInterpreterState` memory from being freed properly." msgstr "" msgid "" @@ -33269,9 +36366,9 @@ msgstr "" msgid "" ":gh:`98686`: Merge the adaptive opcode logic into each instruction's " -"unquickened variant, and merge the logic in ``EXTENDED_ARG_QUICK`` into :" -"opcode:`EXTENDED_ARG`. With these changes, the quickening that happens at " -"code object creation is now only responsible for initializing warmup " +"unquickened variant, and merge the logic in ``EXTENDED_ARG_QUICK`` " +"into :opcode:`EXTENDED_ARG`. With these changes, the quickening that happens " +"at code object creation is now only responsible for initializing warmup " "counters and inserting superinstructions." msgstr "" @@ -33290,20 +36387,20 @@ msgstr "" msgid "" ":gh:`98401`: Octal escapes with value larger than ``0o377`` (ex: " -"``\"\\477\"``), deprecated in Python 3.11, now produce a :exc:" -"`SyntaxWarning`, instead of :exc:`DeprecationWarning`. In a future Python " -"version they will be eventually a :exc:`SyntaxError`. Patch by Victor " +"``\"\\477\"``), deprecated in Python 3.11, now produce " +"a :exc:`SyntaxWarning`, instead of :exc:`DeprecationWarning`. In a future " +"Python version they will be eventually a :exc:`SyntaxError`. Patch by Victor " "Stinner." msgstr "" msgid "" ":gh:`98401`: A backslash-character pair that is not a valid escape sequence " "now generates a :exc:`SyntaxWarning`, instead of :exc:`DeprecationWarning`. " -"For example, ``re.compile(\"\\d+\\.\\d+\")`` now emits a :exc:" -"`SyntaxWarning` (``\"\\d\"`` is an invalid escape sequence), use raw strings " -"for regular expression: ``re.compile(r\"\\d+\\.\\d+\")``. In a future Python " -"version, :exc:`SyntaxError` will eventually be raised, instead of :exc:" -"`SyntaxWarning`. Patch by Victor Stinner." +"For example, ``re.compile(\"\\d+\\.\\d+\")`` now emits " +"a :exc:`SyntaxWarning` (``\"\\d\"`` is an invalid escape sequence), use raw " +"strings for regular expression: ``re.compile(r\"\\d+\\.\\d+\")``. In a " +"future Python version, :exc:`SyntaxError` will eventually be raised, instead " +"of :exc:`SyntaxWarning`. Patch by Victor Stinner." msgstr "" msgid "" @@ -33351,9 +36448,10 @@ msgid ":gh:`98762`: Fix source locations of :keyword:`match` sub-patterns." msgstr "" msgid "" -":gh:`98586`: Added the methods :c:func:`PyObject_Vectorcall` and :c:func:" -"`PyObject_VectorcallMethod` to the :ref:`Limited API ` along with " -"the auxiliary macro constant :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET`." +":gh:`98586`: Added the methods :c:func:`PyObject_Vectorcall` " +"and :c:func:`PyObject_VectorcallMethod` to the :ref:`Limited API ` " +"along with the auxiliary macro " +"constant :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET`." msgstr "" msgid "" @@ -33363,33 +36461,33 @@ msgid "" msgstr "" msgid "" -":gh:`99257`: Fix an issue where member descriptors (such as those for :attr:" -"`~object.__slots__`) could behave incorrectly or crash instead of raising a :" -"exc:`TypeError` when accessed via an instance of an invalid type." +":gh:`99257`: Fix an issue where member descriptors (such as those " +"for :attr:`~object.__slots__`) could behave incorrectly or crash instead of " +"raising a :exc:`TypeError` when accessed via an instance of an invalid type." msgstr "" msgid "" ":gh:`93143`: Rather than changing :attr:`~types.CodeType.co_code`, the " -"interpreter will now display a :exc:`RuntimeWarning` and assign :const:" -"`None` to any fast locals that are left unbound after jumps or :keyword:" -"`del` statements executed while tracing." +"interpreter will now display a :exc:`RuntimeWarning` and " +"assign :const:`None` to any fast locals that are left unbound after jumps " +"or :keyword:`del` statements executed while tracing." msgstr "" msgid "" -":gh:`96421`: When calling into Python code from C code, through :c:func:" -"`PyEval_EvalFrameEx` or a related C-API function, a shim frame in inserted " -"into the call stack. This occurs in the ``_PyEval_EvalFrameDefault()`` " -"function. The extra frame should be invisible to all Python and most C " -"extensions, but out-of-process profilers and debuggers need to be aware of " -"it. These shim frames can be detected by checking ``frame->owner == " -"FRAME_OWNED_BY_CSTACK``." +":gh:`96421`: When calling into Python code from C code, " +"through :c:func:`PyEval_EvalFrameEx` or a related C-API function, a shim " +"frame in inserted into the call stack. This occurs in the " +"``_PyEval_EvalFrameDefault()`` function. The extra frame should be invisible " +"to all Python and most C extensions, but out-of-process profilers and " +"debuggers need to be aware of it. These shim frames can be detected by " +"checking ``frame->owner == FRAME_OWNED_BY_CSTACK``." msgstr "" msgid "" "Extensions implementing their own interpreters using PEP 523 need to be " -"aware of this shim frame and the changes to the semantics of :opcode:" -"`RETURN_VALUE`, :opcode:`YIELD_VALUE`, and :opcode:`RETURN_GENERATOR`, which " -"now clear the frame." +"aware of this shim frame and the changes to the semantics " +"of :opcode:`RETURN_VALUE`, :opcode:`YIELD_VALUE`, " +"and :opcode:`RETURN_GENERATOR`, which now clear the frame." msgstr "" msgid "" @@ -33426,9 +36524,9 @@ msgid "" msgstr "" msgid "" -":gh:`95389`: Expose :const:`~socket.ETH_P_ALL` and some of the :ref:" -"`ETHERTYPE_* constants ` in :mod:`socket`. Patch by " -"Noam Cohen." +":gh:`95389`: Expose :const:`~socket.ETH_P_ALL` and some of " +"the :ref:`ETHERTYPE_* constants ` in :mod:`socket`. " +"Patch by Noam Cohen." msgstr "" msgid "" @@ -33461,8 +36559,8 @@ msgid "" msgstr "" msgid "" -":gh:`99277`: Remove older version of ``_SSLProtocolTransport." -"get_write_buffer_limits`` in :mod:`!asyncio.sslproto`" +":gh:`99277`: Remove older version of " +"``_SSLProtocolTransport.get_write_buffer_limits`` in :mod:`!asyncio.sslproto`" msgstr "" msgid ":gh:`99248`: fix negative numbers failing in verify()" @@ -33525,13 +36623,14 @@ msgid "" msgstr "" msgid "" -":gh:`90352`: Fix ``_SelectorDatagramTransport`` to inherit from :class:" -"`~asyncio.DatagramTransport` in :mod:`asyncio`. Patch by Kumar Aditya." +":gh:`90352`: Fix ``_SelectorDatagramTransport`` to inherit " +"from :class:`~asyncio.DatagramTransport` in :mod:`asyncio`. Patch by Kumar " +"Aditya." msgstr "" msgid "" -":gh:`98793`: Fix argument typechecks in :func:`!_overlapped.WSAConnect` and :" -"func:`!_overlapped.Overlapped.WSASendTo` functions." +":gh:`98793`: Fix argument typechecks in :func:`!_overlapped.WSAConnect` " +"and :func:`!_overlapped.Overlapped.WSASendTo` functions." msgstr "" msgid "" @@ -33541,14 +36640,14 @@ msgstr "" msgid "" ":gh:`98740`: Fix internal error in the :mod:`re` module which in very rare " -"circumstances prevented compilation of a regular expression containing a :" -"ref:`conditional expression ` without the " +"circumstances prevented compilation of a regular expression containing " +"a :ref:`conditional expression ` without the " "\"else\" branch." msgstr "" msgid "" -":gh:`98703`: Fix :meth:`asyncio.StreamWriter.drain` to call ``protocol." -"connection_lost`` callback only once on Windows." +":gh:`98703`: Fix :meth:`asyncio.StreamWriter.drain` to call " +"``protocol.connection_lost`` callback only once on Windows." msgstr "" msgid "" @@ -33592,30 +36691,32 @@ msgid "" msgstr "" msgid "" -":gh:`94172`: Remove the *keyfile* and *certfile* parameters from the :mod:" -"`ftplib`, :mod:`imaplib`, :mod:`poplib` and :mod:`smtplib` modules, and the " -"*key_file*, *cert_file* and *check_hostname* parameters from the :mod:`http." -"client` module, all deprecated since Python 3.6. Use the *context* parameter " -"(*ssl_context* in :mod:`imaplib`) instead. Patch by Victor Stinner." +":gh:`94172`: Remove the *keyfile* and *certfile* parameters from " +"the :mod:`ftplib`, :mod:`imaplib`, :mod:`poplib` and :mod:`smtplib` modules, " +"and the *key_file*, *cert_file* and *check_hostname* parameters from " +"the :mod:`http.client` module, all deprecated since Python 3.6. Use the " +"*context* parameter (*ssl_context* in :mod:`imaplib`) instead. Patch by " +"Victor Stinner." msgstr "" msgid "" -":gh:`83638`: Add the :attr:`~sqlite3.Connection.autocommit` attribute to :" -"class:`sqlite3.Connection` and the *autocommit* parameter to :func:`sqlite3." -"connect` to control :pep:`249`-compliant :ref:`transaction handling `. Patch by Erlend E. Aasland." +":gh:`83638`: Add the :attr:`~sqlite3.Connection.autocommit` attribute " +"to :class:`sqlite3.Connection` and the *autocommit* parameter " +"to :func:`sqlite3.connect` to control :pep:`249`-compliant :ref:`transaction " +"handling `. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" -":gh:`92452`: Fixed a race condition that could cause :func:`sysconfig." -"get_config_var` to incorrectly return :const:`None` in multi-threaded " -"programs." +":gh:`92452`: Fixed a race condition that could " +"cause :func:`sysconfig.get_config_var` to incorrectly return :const:`None` " +"in multi-threaded programs." msgstr "" msgid "" -":gh:`91803`: Fix an error when using a method of objects mocked with :func:" -"`unittest.mock.create_autospec` after it was sealed with :func:`unittest." -"mock.seal` function." +":gh:`91803`: Fix an error when using a method of objects mocked " +"with :func:`unittest.mock.create_autospec` after it was sealed " +"with :func:`unittest.mock.seal` function." msgstr "" msgid "" @@ -33713,14 +36814,14 @@ msgstr "" msgid "" ":gh:`98707`: Don't use vendored ``libmpdec`` headers if :option:`--with-" "system-libmpdec` is passed to :program:`configure`. Don't use vendored " -"``libexpat`` headers if :option:`--with-system-expat` is passed to :program:" -"`configure`." +"``libexpat`` headers if :option:`--with-system-expat` is passed " +"to :program:`configure`." msgstr "" msgid "" -":gh:`98689`: Update Windows builds to zlib v1.2.13. v1.2.12 has :cve:" -"`2022-37434`, but the vulnerable ``inflateGetHeader`` API is not used by " -"Python." +":gh:`98689`: Update Windows builds to zlib v1.2.13. v1.2.12 " +"has :cve:`2022-37434`, but the vulnerable ``inflateGetHeader`` API is not " +"used by Python." msgstr "" msgid "" @@ -33745,10 +36846,10 @@ msgid ":gh:`94328`: Update macOS installer to SQLite 3.39.4." msgstr "" msgid "" -":gh:`98724`: The :c:macro:`Py_CLEAR`, :c:macro:`Py_SETREF` and :c:macro:" -"`Py_XSETREF` macros now only evaluate their argument once. If the argument " -"has side effects, these side effects are no longer duplicated. Patch by " -"Victor Stinner." +":gh:`98724`: The :c:macro:`Py_CLEAR`, :c:macro:`Py_SETREF` " +"and :c:macro:`Py_XSETREF` macros now only evaluate their argument once. If " +"the argument has side effects, these side effects are no longer duplicated. " +"Patch by Victor Stinner." msgstr "" msgid "" @@ -33873,8 +36974,8 @@ msgstr "" msgid "" ":gh:`98254`: Modules from the standard library are now potentially suggested " -"as part of the error messages displayed by the interpreter when an :exc:" -"`NameError` is raised to the top level. Patch by Pablo Galindo" +"as part of the error messages displayed by the interpreter when " +"an :exc:`NameError` is raised to the top level. Patch by Pablo Galindo" msgstr "" msgid "" @@ -33956,8 +37057,8 @@ msgid "" msgstr "" msgid "" -":gh:`97591`: Fixed a missing incref/decref pair in ``Exception." -"__setstate__()``. Patch by Ofey Chan." +":gh:`97591`: Fixed a missing incref/decref pair in " +"``Exception.__setstate__()``. Patch by Ofey Chan." msgstr "" msgid "" @@ -33970,10 +37071,11 @@ msgid "" msgstr "" msgid "" -":gh:`94526`: Fix the Python path configuration used to initialized :data:" -"`sys.path` at Python startup. Paths are no longer encoded to UTF-8/strict to " -"avoid encoding errors if it contains surrogate characters (bytes paths are " -"decoded with the surrogateescape error handler). Patch by Victor Stinner." +":gh:`94526`: Fix the Python path configuration used to " +"initialized :data:`sys.path` at Python startup. Paths are no longer encoded " +"to UTF-8/strict to avoid encoding errors if it contains surrogate characters " +"(bytes paths are decoded with the surrogateescape error handler). Patch by " +"Victor Stinner." msgstr "" msgid "" @@ -33988,9 +37090,9 @@ msgstr "" msgid "" ":gh:`96848`: Fix command line parsing: reject :option:`-X int_max_str_digits " -"<-X>` option with no value (invalid) when the :envvar:" -"`PYTHONINTMAXSTRDIGITS` environment variable is set to a valid limit. Patch " -"by Victor Stinner." +"<-X>` option with no value (invalid) when " +"the :envvar:`PYTHONINTMAXSTRDIGITS` environment variable is set to a valid " +"limit. Patch by Victor Stinner." msgstr "" msgid "" @@ -34019,9 +37121,9 @@ msgid "" msgstr "" msgid "" -":gh:`96864`: Fix a possible assertion failure, fatal error, or :exc:" -"`SystemError` if a line tracing event raises an exception while opcode " -"tracing is enabled." +":gh:`96864`: Fix a possible assertion failure, fatal error, " +"or :exc:`SystemError` if a line tracing event raises an exception while " +"opcode tracing is enabled." msgstr "" msgid "" @@ -34088,8 +37190,8 @@ msgid "" msgstr "" msgid "" -":gh:`96587`: Correctly raise ``SyntaxError`` on exception groups (:pep:" -"`654`) on python versions prior to 3.11" +":gh:`96587`: Correctly raise ``SyntaxError`` on exception groups " +"(:pep:`654`) on python versions prior to 3.11" msgstr "" msgid "" @@ -34113,9 +37215,9 @@ msgid "" msgstr "" msgid "" -":gh:`96348`: Emit a DeprecationWarning when :meth:`~generator.throw`, :meth:" -"`~coroutine.throw` or :meth:`~agen.athrow` are called with more than one " -"argument." +":gh:`96348`: Emit a DeprecationWarning " +"when :meth:`~generator.throw`, :meth:`~coroutine.throw` " +"or :meth:`~agen.athrow` are called with more than one argument." msgstr "" msgid "" @@ -34124,8 +37226,8 @@ msgid "" msgstr "" msgid "" -":gh:`96364`: Fix text signatures of ``list.__getitem__`` and ``dict." -"__getitem__``." +":gh:`96364`: Fix text signatures of ``list.__getitem__`` and " +"``dict.__getitem__``." msgstr "" msgid "" @@ -34178,14 +37280,15 @@ msgid "" msgstr "" msgid "" -":gh:`96143`: Add a new ``-X perf`` Python command line option as well as :" -"func:`sys.activate_stack_trampoline` and :func:`sys." -"deactivate_stack_trampoline` function in the :mod:`sys` module that allows " -"to set/unset the interpreter in a way that the Linux ``perf`` profiler can " -"detect Python calls. The new :func:`sys.is_stack_trampoline_active` function " -"allows to query the state of the perf trampoline. Design by Pablo Galindo. " -"Patch by Pablo Galindo and Christian Heimes with contributions from Gregory " -"P. Smith [Google] and Mark Shannon." +":gh:`96143`: Add a new ``-X perf`` Python command line option as well " +"as :func:`sys.activate_stack_trampoline` " +"and :func:`sys.deactivate_stack_trampoline` function in the :mod:`sys` " +"module that allows to set/unset the interpreter in a way that the Linux " +"``perf`` profiler can detect Python calls. The " +"new :func:`sys.is_stack_trampoline_active` function allows to query the " +"state of the perf trampoline. Design by Pablo Galindo. Patch by Pablo " +"Galindo and Christian Heimes with contributions from Gregory P. Smith " +"[Google] and Mark Shannon." msgstr "" msgid "" @@ -34201,10 +37304,10 @@ msgid "" msgstr "" msgid "" -":gh:`96005`: On WASI :const:`~errno.ENOTCAPABLE` is now mapped to :exc:" -"`PermissionError`. The :mod:`errno` modules exposes the new error number. " -"``getpath.py`` now ignores :exc:`PermissionError` when it cannot open " -"landmark files ``pybuilddir.txt`` and ``pyenv.cfg``." +":gh:`96005`: On WASI :const:`~errno.ENOTCAPABLE` is now mapped " +"to :exc:`PermissionError`. The :mod:`errno` modules exposes the new error " +"number. ``getpath.py`` now ignores :exc:`PermissionError` when it cannot " +"open landmark files ``pybuilddir.txt`` and ``pyenv.cfg``." msgstr "" msgid "" @@ -34223,8 +37326,8 @@ msgstr "" msgid "" ":gh:`90997`: Compile virtual :keyword:`try`/:keyword:`except` blocks to " -"handle exceptions raised during :meth:`~generator.close` or :meth:" -"`~generator.throw` calls through a suspended frame." +"handle exceptions raised during :meth:`~generator.close` " +"or :meth:`~generator.throw` calls through a suspended frame." msgstr "" msgid "" @@ -34288,8 +37391,9 @@ msgid "" msgstr "" msgid "" -":gh:`95324`: Emit a warning in debug mode if an object does not call :c:func:" -"`PyObject_GC_UnTrack` before deallocation. Patch by Pablo Galindo." +":gh:`95324`: Emit a warning in debug mode if an object does not " +"call :c:func:`PyObject_GC_UnTrack` before deallocation. Patch by Pablo " +"Galindo." msgstr "" msgid "" @@ -34328,10 +37432,10 @@ msgid "" msgstr "" msgid "" -":gh:`95113`: Replace all ``EXTENDED_ARG_QUICK`` instructions with basic :" -"opcode:`EXTENDED_ARG` instructions in unquickened code. Consumers of non-" -"adaptive bytecode should be able to handle extended arguments the same way " -"they were handled in CPython 3.10 and older." +":gh:`95113`: Replace all ``EXTENDED_ARG_QUICK`` instructions with " +"basic :opcode:`EXTENDED_ARG` instructions in unquickened code. Consumers of " +"non-adaptive bytecode should be able to handle extended arguments the same " +"way they were handled in CPython 3.10 and older." msgstr "" msgid "" @@ -34518,9 +37622,9 @@ msgid "" msgstr "" msgid "" -":gh:`93841`: When built with ``-enable-pystats``, ``sys._stats_on()``, ``sys." -"_stats_off()``, ``sys._stats_clear()`` and ``sys._stats_dump()`` functions " -"have been added to enable gathering stats for parts of programs." +":gh:`93841`: When built with ``-enable-pystats``, ``sys._stats_on()``, " +"``sys._stats_off()``, ``sys._stats_clear()`` and ``sys._stats_dump()`` " +"functions have been added to enable gathering stats for parts of programs." msgstr "" msgid "" @@ -34554,9 +37658,9 @@ msgid "" msgstr "" msgid "" -":gh:`93461`: :func:`importlib.invalidate_caches` now drops entries from :" -"data:`sys.path_importer_cache` with a relative path as name. This solves a " -"caching issue when a process changes its current working directory." +":gh:`93461`: :func:`importlib.invalidate_caches` now drops entries " +"from :data:`sys.path_importer_cache` with a relative path as name. This " +"solves a caching issue when a process changes its current working directory." msgstr "" msgid "" @@ -34565,9 +37669,9 @@ msgid "" msgstr "" msgid "" -":gh:`93621`: Change order of bytecode instructions emitted for :keyword:" -"`with` and :keyword:`async with` to reduce the number of entries in the " -"exception table." +":gh:`93621`: Change order of bytecode instructions emitted " +"for :keyword:`with` and :keyword:`async with` to reduce the number of " +"entries in the exception table." msgstr "" msgid "" @@ -34778,9 +37882,9 @@ msgid ":gh:`91578`: Updates the error message for abstract class." msgstr "" msgid "" -":issue:`47091`: Improve performance of repetition of :class:`list` and :" -"class:`tuple` by using ``memcpy`` to copy data and performing the reference " -"increments in one step." +":issue:`47091`: Improve performance of repetition of :class:`list` " +"and :class:`tuple` by using ``memcpy`` to copy data and performing the " +"reference increments in one step." msgstr "" msgid "" @@ -34795,8 +37899,9 @@ msgid "" msgstr "" msgid "" -":gh:`89237`: Fix hang on Windows in ``subprocess.wait_closed()`` in :mod:" -"`asyncio` with :class:`~asyncio.ProactorEventLoop`. Patch by Kumar Aditya." +":gh:`89237`: Fix hang on Windows in ``subprocess.wait_closed()`` " +"in :mod:`asyncio` with :class:`~asyncio.ProactorEventLoop`. Patch by Kumar " +"Aditya." msgstr "" msgid "" @@ -34805,9 +37910,10 @@ msgid "" msgstr "" msgid "" -":gh:`98393`: The :mod:`os` module no longer accepts bytes-like paths, like :" -"class:`bytearray` and :class:`memoryview` types: only the exact :class:" -"`bytes` type is accepted for bytes strings. Patch by Victor Stinner." +":gh:`98393`: The :mod:`os` module no longer accepts bytes-like paths, " +"like :class:`bytearray` and :class:`memoryview` types: only the " +"exact :class:`bytes` type is accepted for bytes strings. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -34844,10 +37950,10 @@ msgid "" msgstr "" msgid "" -":gh:`94597`: Deprecated :meth:`asyncio.AbstractEventLoopPolicy." -"get_child_watcher` and :meth:`asyncio.AbstractEventLoopPolicy." -"set_child_watcher` methods to be removed in Python 3.14. Patch by Kumar " -"Aditya." +":gh:`94597`: " +"Deprecated :meth:`asyncio.AbstractEventLoopPolicy.get_child_watcher` " +"and :meth:`asyncio.AbstractEventLoopPolicy.set_child_watcher` methods to be " +"removed in Python 3.14. Patch by Kumar Aditya." msgstr "" msgid "" @@ -34869,21 +37975,22 @@ msgid "" msgstr "" msgid "" -":gh:`94597`: The child watcher classes :class:`~asyncio." -"MultiLoopChildWatcher`, :class:`~asyncio.FastChildWatcher` and :class:" -"`~asyncio.SafeChildWatcher` are deprecated and will be removed in Python " -"3.14. Patch by Kumar Aditya." +":gh:`94597`: The child watcher " +"classes :class:`~asyncio.MultiLoopChildWatcher`, :class:`~asyncio.FastChildWatcher` " +"and :class:`~asyncio.SafeChildWatcher` are deprecated and will be removed in " +"Python 3.14. Patch by Kumar Aditya." msgstr "" msgid "" -":gh:`98023`: Change default child watcher to :class:`~asyncio." -"PidfdChildWatcher` on Linux systems which supports it. Patch by Kumar Aditya." +":gh:`98023`: Change default child watcher " +"to :class:`~asyncio.PidfdChildWatcher` on Linux systems which supports it. " +"Patch by Kumar Aditya." msgstr "" msgid "" -":gh:`90985`: Earlier in 3.11 we deprecated ``asyncio.Task." -"cancel(\"message\")``. We realized we were too harsh, and have undeprecated " -"it." +":gh:`90985`: Earlier in 3.11 we deprecated " +"``asyncio.Task.cancel(\"message\")``. We realized we were too harsh, and " +"have undeprecated it." msgstr "" msgid "" @@ -34903,8 +38010,8 @@ msgid "" msgstr "" msgid "" -":gh:`97850`: Remove deprecated :func:`!importlib.util.set_loader` and :func:" -"`!importlib.util.module_for_loader` from :mod:`importlib.util`." +":gh:`97850`: Remove deprecated :func:`!importlib.util.set_loader` " +"and :func:`!importlib.util.module_for_loader` from :mod:`importlib.util`." msgstr "" msgid ":gh:`97837`: Change deprecate warning message in :mod:`unittest` from" @@ -34921,17 +38028,17 @@ msgid "" msgstr "" msgid "" -":gh:`97825`: Fixes :exc:`AttributeError` when :meth:`subprocess." -"check_output` is used with argument ``input=None`` and either of the " -"arguments *encoding* or *errors* are used." +":gh:`97825`: Fixes :exc:`AttributeError` " +"when :meth:`subprocess.check_output` is used with argument ``input=None`` " +"and either of the arguments *encoding* or *errors* are used." msgstr "" msgid "" ":gh:`97008`: :exc:`NameError` and :exc:`AttributeError` spelling suggestions " -"provided since :gh:`82711` are now also emitted by the pure Python :mod:" -"`traceback` module. Tests for those suggestions now exercise both " -"implementations to ensure they are equivalent. Patch by Carl Friedrich Bolz-" -"Tereick and Łukasz Langa." +"provided since :gh:`82711` are now also emitted by the pure " +"Python :mod:`traceback` module. Tests for those suggestions now exercise " +"both implementations to ensure they are equivalent. Patch by Carl Friedrich " +"Bolz-Tereick and Łukasz Langa." msgstr "" msgid "" @@ -34957,8 +38064,9 @@ msgid ":gh:`95534`: :meth:`gzip.GzipFile.read` reads 10% faster." msgstr "" msgid "" -":gh:`97592`: Avoid a crash in the C version of :meth:`asyncio.Future." -"remove_done_callback` when an evil argument is passed." +":gh:`97592`: Avoid a crash in the C version " +"of :meth:`asyncio.Future.remove_done_callback` when an evil argument is " +"passed." msgstr "" msgid ":gh:`97639`: Remove ``tokenize.NL`` check from :mod:`tabnanny`." @@ -34968,10 +38076,11 @@ msgid ":gh:`97545`: Make Semaphore run faster." msgstr "" msgid "" -":gh:`73588`: Fix generation of the default name of :class:`tkinter." -"Checkbutton`. Previously, checkbuttons in different parent widgets could " -"have the same short name and share the same state if arguments \"name\" and " -"\"variable\" are not specified. Now they are globally unique." +":gh:`73588`: Fix generation of the default name " +"of :class:`tkinter.Checkbutton`. Previously, checkbuttons in different " +"parent widgets could have the same short name and share the same state if " +"arguments \"name\" and \"variable\" are not specified. Now they are globally " +"unique." msgstr "" msgid ":gh:`96865`: fix Flag to use boundary CONFORM" @@ -34992,10 +38101,10 @@ msgid ":gh:`97005`: Update bundled libexpat to 2.4.9" msgstr "" msgid "" -":gh:`85760`: Fix race condition in :mod:`asyncio` where :meth:`~asyncio." -"SubprocessProtocol.process_exited` called before the :meth:`~asyncio." -"SubprocessProtocol.pipe_data_received` leading to inconsistent output. Patch " -"by Kumar Aditya." +":gh:`85760`: Fix race condition in :mod:`asyncio` " +"where :meth:`~asyncio.SubprocessProtocol.process_exited` called before " +"the :meth:`~asyncio.SubprocessProtocol.pipe_data_received` leading to " +"inconsistent output. Patch by Kumar Aditya." msgstr "" msgid "" @@ -35023,8 +38132,8 @@ msgid "Contributed by Dennis Sweeney." msgstr "" msgid "" -":gh:`96741`: Corrected type annotation for dataclass attribute ``pstats." -"FunctionProfile.ncalls`` to be ``str``." +":gh:`96741`: Corrected type annotation for dataclass attribute " +"``pstats.FunctionProfile.ncalls`` to be ``str``." msgstr "" msgid ":gh:`96734`: Update :mod:`unicodedata` database to Unicode 15.0.0." @@ -35040,15 +38149,15 @@ msgid "" msgstr "" msgid "" -":gh:`96652`: Fix the faulthandler implementation of ``faulthandler." -"register(signal, chain=True)`` if the ``sigaction()`` function is not " -"available: don't call the previous signal handler if it's NULL. Patch by " -"Victor Stinner." +":gh:`96652`: Fix the faulthandler implementation of " +"``faulthandler.register(signal, chain=True)`` if the ``sigaction()`` " +"function is not available: don't call the previous signal handler if it's " +"NULL. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`68163`: Correct conversion of :class:`numbers.Rational`'s to :class:" -"`float`." +":gh:`68163`: Correct conversion of :class:`numbers.Rational`'s " +"to :class:`float`." msgstr "" msgid "" @@ -35071,8 +38180,8 @@ msgid ":gh:`95987`: Fix ``repr`` of ``Any`` subclasses." msgstr "" msgid "" -":gh:`96388`: Work around missing socket functions in :class:`~socket." -"socket`'s ``__repr__``." +":gh:`96388`: Work around missing socket functions " +"in :class:`~socket.socket`'s ``__repr__``." msgstr "" msgid "" @@ -35092,16 +38201,16 @@ msgid "" msgstr "" msgid "" -":gh:`89258`: Added a :meth:`~logging.Logger.getChildren` method to :class:" -"`logging.Logger`, to get the immediate child loggers of a logger." +":gh:`89258`: Added a :meth:`~logging.Logger.getChildren` method " +"to :class:`logging.Logger`, to get the immediate child loggers of a logger." msgstr "" msgid ":gh:`96346`: Use double caching for compiled RE patterns." msgstr "" msgid "" -":gh:`96349`: Fixed a minor performance regression in :func:`threading.Event." -"__init__`" +":gh:`96349`: Fixed a minor performance regression " +"in :func:`threading.Event.__init__`" msgstr "" msgid "" @@ -35122,8 +38231,8 @@ msgid "" msgstr "" msgid "" -":gh:`96175`: Fix unused ``localName`` parameter in the ``Attr`` class in :" -"mod:`xml.dom.minidom`." +":gh:`96175`: Fix unused ``localName`` parameter in the ``Attr`` class " +"in :mod:`xml.dom.minidom`." msgstr "" msgid ":gh:`96145`: Add AttrDict to JSON module for use with object_hook." @@ -35160,10 +38269,10 @@ msgid "" msgstr "" msgid "" -":gh:`95899`: Fix :class:`asyncio.Runner` to call :func:`asyncio." -"set_event_loop` only once to avoid calling :meth:`~asyncio." -"AbstractChildWatcher.attach_loop` multiple times on child watchers. Patch by " -"Kumar Aditya." +":gh:`95899`: Fix :class:`asyncio.Runner` to " +"call :func:`asyncio.set_event_loop` only once to avoid " +"calling :meth:`~asyncio.AbstractChildWatcher.attach_loop` multiple times on " +"child watchers. Patch by Kumar Aditya." msgstr "" msgid "" @@ -35182,8 +38291,8 @@ msgid "" msgstr "" msgid "" -":gh:`95804`: Fix ``logging`` shutdown handler so it respects ``MemoryHandler." -"flushOnClose``." +":gh:`95804`: Fix ``logging`` shutdown handler so it respects " +"``MemoryHandler.flushOnClose``." msgstr "" msgid "" @@ -35194,22 +38303,22 @@ msgstr "" msgid "" ":gh:`95149`: The :class:`HTTPStatus ` enum offers a couple " -"of properties to indicate the HTTP status category e.g. ``HTTPStatus.OK." -"is_success``." +"of properties to indicate the HTTP status category e.g. " +"``HTTPStatus.OK.is_success``." msgstr "" msgid ":gh:`95609`: Update bundled pip to 22.2.2." msgstr "" msgid "" -":gh:`95289`: Fix :class:`asyncio.TaskGroup` to propagate exception when :exc:" -"`asyncio.CancelledError` was replaced with another exception by a context " -"manager. Patch by Kumar Aditya and Guido van Rossum." +":gh:`95289`: Fix :class:`asyncio.TaskGroup` to propagate exception " +"when :exc:`asyncio.CancelledError` was replaced with another exception by a " +"context manager. Patch by Kumar Aditya and Guido van Rossum." msgstr "" msgid "" -":gh:`94909`: Fix incorrect joining of relative Windows paths with drives in :" -"class:`pathlib.PurePath` initializer." +":gh:`94909`: Fix incorrect joining of relative Windows paths with drives " +"in :class:`pathlib.PurePath` initializer." msgstr "" msgid "" @@ -35231,10 +38340,10 @@ msgid "" msgstr "" msgid "" -":gh:`95231`: Fail gracefully if :const:`~errno.EPERM` or :const:`~errno." -"ENOSYS` is raised when loading :mod:`!crypt` methods. This may happen when " -"trying to load ``MD5`` on a Linux kernel with :abbr:`FIPS (Federal " -"Information Processing Standard)` enabled." +":gh:`95231`: Fail gracefully if :const:`~errno.EPERM` " +"or :const:`~errno.ENOSYS` is raised when loading :mod:`!crypt` methods. This " +"may happen when trying to load ``MD5`` on a Linux kernel with :abbr:`FIPS " +"(Federal Information Processing Standard)` enabled." msgstr "" msgid "" @@ -35255,9 +38364,10 @@ msgid ":gh:`95194`: Upgrade bundled pip to 22.2." msgstr "" msgid "" -":gh:`93899`: Fix check for existence of :const:`os.EFD_CLOEXEC`, :const:`os." -"EFD_NONBLOCK` and :const:`os.EFD_SEMAPHORE` flags on older kernel versions " -"where these flags are not present. Patch by Kumar Aditya." +":gh:`93899`: Fix check for existence " +"of :const:`os.EFD_CLOEXEC`, :const:`os.EFD_NONBLOCK` " +"and :const:`os.EFD_SEMAPHORE` flags on older kernel versions where these " +"flags are not present. Patch by Kumar Aditya." msgstr "" msgid "" @@ -35268,9 +38378,9 @@ msgstr "" msgid "" ":gh:`95132`: Fix a :mod:`sqlite3` regression where ``*args`` and ``**kwds`` " -"were incorrectly relayed from :py:func:`~sqlite3.connect` to the :class:" -"`~sqlite3.Connection` factory. The regression was introduced in 3.11a1 with " -"PR 24421 (:gh:`85128`). Patch by Erlend E. Aasland." +"were incorrectly relayed from :py:func:`~sqlite3.connect` to " +"the :class:`~sqlite3.Connection` factory. The regression was introduced in " +"3.11a1 with PR 24421 (:gh:`85128`). Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -35314,8 +38424,8 @@ msgid "" msgstr "" msgid "" -":gh:`90085`: Remove ``-c/--clock`` and ``-t/--time`` CLI options of :mod:" -"`timeit`. The options had been deprecated since Python 3.3 and the " +":gh:`90085`: Remove ``-c/--clock`` and ``-t/--time`` CLI options " +"of :mod:`timeit`. The options had been deprecated since Python 3.3 and the " "functionality was removed in Python 3.7. Patch by Shantanu Jain." msgstr "" @@ -35363,8 +38473,8 @@ msgid "" msgstr "" msgid "" -":gh:`94309`: Deprecate aliases :class:`typing.Hashable` and :class:`typing." -"Sized`" +":gh:`94309`: Deprecate aliases :class:`typing.Hashable` " +"and :class:`typing.Sized`" msgstr "" msgid "" @@ -35373,27 +38483,28 @@ msgid "" msgstr "" msgid "" -":gh:`94607`: Fix subclassing complex generics with type variables in :mod:" -"`typing`. Previously an error message saying ``Some type variables ... are " -"not listed in Generic[...]`` was shown. :mod:`typing` no longer populates " -"``__parameters__`` with the ``__parameters__`` of a Python class." +":gh:`94607`: Fix subclassing complex generics with type variables " +"in :mod:`typing`. Previously an error message saying ``Some type " +"variables ... are not listed in Generic[...]`` was shown. :mod:`typing` no " +"longer populates ``__parameters__`` with the ``__parameters__`` of a Python " +"class." msgstr "" msgid "" -":gh:`94619`: Remove the long-deprecated ``module_repr()`` from :mod:" -"`importlib`." +":gh:`94619`: Remove the long-deprecated ``module_repr()`` " +"from :mod:`importlib`." msgstr "" msgid "" -":gh:`93910`: The ability to access the other values of an enum on an enum (e." -"g. ``Color.RED.BLUE``) has been restored in order to fix a performance " +":gh:`93910`: The ability to access the other values of an enum on an enum " +"(e.g. ``Color.RED.BLUE``) has been restored in order to fix a performance " "regression." msgstr "" msgid "" -":gh:`93896`: Fix :func:`asyncio.run` and :class:`unittest." -"IsolatedAsyncioTestCase` to always the set event loop as it was done in " -"Python 3.10 and earlier. Patch by Kumar Aditya." +":gh:`93896`: Fix :func:`asyncio.run` " +"and :class:`unittest.IsolatedAsyncioTestCase` to always the set event loop " +"as it was done in Python 3.10 and earlier. Patch by Kumar Aditya." msgstr "" msgid "" @@ -35413,8 +38524,9 @@ msgid "" msgstr "" msgid "" -":gh:`94510`: Re-entrant calls to :func:`sys.setprofile` and :func:`sys." -"settrace` now raise :exc:`RuntimeError`. Patch by Pablo Galindo." +":gh:`94510`: Re-entrant calls to :func:`sys.setprofile` " +"and :func:`sys.settrace` now raise :exc:`RuntimeError`. Patch by Pablo " +"Galindo." msgstr "" msgid "" @@ -35424,18 +38536,18 @@ msgid "" msgstr "" msgid "" -":gh:`94398`: Once a :class:`asyncio.TaskGroup` has started shutting down (i." -"e., at least one task has failed and the task group has started cancelling " -"the remaining tasks), it should not be possible to add new tasks to the task " -"group." +":gh:`94398`: Once a :class:`asyncio.TaskGroup` has started shutting down " +"(i.e., at least one task has failed and the task group has started " +"cancelling the remaining tasks), it should not be possible to add new tasks " +"to the task group." msgstr "" msgid "" ":gh:`94383`: :mod:`xml.etree`: Remove the ``ElementTree.Element.copy()`` " "method of the pure Python implementation, deprecated in Python 3.10, use " -"the :func:`copy.copy` function instead. The C implementation of :mod:`xml." -"etree` has no ``copy()`` method, only a ``__copy__()`` method. Patch by " -"Victor Stinner." +"the :func:`copy.copy` function instead. The C implementation " +"of :mod:`xml.etree` has no ``copy()`` method, only a ``__copy__()`` method. " +"Patch by Victor Stinner." msgstr "" msgid "" @@ -35455,8 +38567,8 @@ msgid ":gh:`94318`: Strip trailing spaces in :mod:`pydoc` text output." msgstr "" msgid "" -":gh:`89988`: Fix memory leak in :class:`pickle.Pickler` when looking up :" -"attr:`dispatch_table`. Patch by Kumar Aditya." +":gh:`89988`: Fix memory leak in :class:`pickle.Pickler` when looking " +"up :attr:`dispatch_table`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -35498,8 +38610,8 @@ msgstr "" msgid "" ":gh:`93096`: Removed undocumented ``-t`` argument of ``python -m base64``. " -"Use ``python -m unittest test.test_base64.LegacyBase64TestCase." -"test_encodebytes`` instead." +"Use ``python -m unittest " +"test.test_base64.LegacyBase64TestCase.test_encodebytes`` instead." msgstr "" msgid "" @@ -35508,10 +38620,10 @@ msgid "" msgstr "" msgid "" -":gh:`94199`: Remove the :func:`ssl.match_hostname` function. The :func:`ssl." -"match_hostname` was deprecated in Python 3.7. OpenSSL performs hostname " -"matching since Python 3.7, Python no longer uses the :func:`ssl." -"match_hostname` function. Patch by Victor Stinner." +":gh:`94199`: Remove the :func:`ssl.match_hostname` function. " +"The :func:`ssl.match_hostname` was deprecated in Python 3.7. OpenSSL " +"performs hostname matching since Python 3.7, Python no longer uses " +"the :func:`ssl.match_hostname` function. Patch by Victor Stinner." msgstr "" msgid "" @@ -35521,11 +38633,11 @@ msgstr "" msgid "" ":gh:`94199`: Remove the :func:`ssl.wrap_socket` function, deprecated in " -"Python 3.7: instead, create a :class:`ssl.SSLContext` object and call its :" -"class:`ssl.SSLContext.wrap_socket` method. Any package that still uses :func:" -"`ssl.wrap_socket` is broken and insecure. The function neither sends a SNI " -"TLS extension nor validates server hostname. Code is subject to :cwe:`295` " -"Improper Certificate Validation. Patch by Victor Stinner." +"Python 3.7: instead, create a :class:`ssl.SSLContext` object and call " +"its :class:`ssl.SSLContext.wrap_socket` method. Any package that still " +"uses :func:`ssl.wrap_socket` is broken and insecure. The function neither " +"sends a SNI TLS extension nor validates server hostname. Code is subject " +"to :cwe:`295` Improper Certificate Validation. Patch by Victor Stinner." msgstr "" msgid "" @@ -35535,18 +38647,19 @@ msgid "" msgstr "" msgid "" -":gh:`94199`: :mod:`hashlib`: Remove the pure Python implementation of :func:" -"`hashlib.pbkdf2_hmac`, deprecated in Python 3.10. Python 3.10 and newer " -"requires OpenSSL 1.1.1 (:pep:`644`): this OpenSSL version provides a C " +":gh:`94199`: :mod:`hashlib`: Remove the pure Python implementation " +"of :func:`hashlib.pbkdf2_hmac`, deprecated in Python 3.10. Python 3.10 and " +"newer requires OpenSSL 1.1.1 (:pep:`644`): this OpenSSL version provides a C " "implementation of :func:`~hashlib.pbkdf2_hmac` which is faster. Patch by " "Victor Stinner." msgstr "" msgid "" -":gh:`94196`: :mod:`gzip`: Remove the ``filename`` attribute of :class:`gzip." -"GzipFile`, deprecated since Python 2.6, use the :attr:`~gzip.GzipFile.name` " -"attribute instead. In write mode, the ``filename`` attribute added ``'.gz'`` " -"file extension if it was not present. Patch by Victor Stinner." +":gh:`94196`: :mod:`gzip`: Remove the ``filename`` attribute " +"of :class:`gzip.GzipFile`, deprecated since Python 2.6, use " +"the :attr:`~gzip.GzipFile.name` attribute instead. In write mode, the " +"``filename`` attribute added ``'.gz'`` file extension if it was not present. " +"Patch by Victor Stinner." msgstr "" msgid "" @@ -35557,9 +38670,9 @@ msgstr "" msgid "" ":gh:`94169`: Remove ``io.OpenWrapper`` and ``_pyio.OpenWrapper``, deprecated " -"in Python 3.10: just use :func:`open` instead. The :func:`open` (:func:`io." -"open`) function is a built-in function. Since Python 3.10, :func:`!_pyio." -"open` is also a static method. Patch by Victor Stinner." +"in Python 3.10: just use :func:`open` instead. The :func:`open` " +"(:func:`io.open`) function is a built-in function. Since Python " +"3.10, :func:`!_pyio.open` is also a static method. Patch by Victor Stinner." msgstr "" msgid "" @@ -35574,10 +38687,10 @@ msgid "" msgstr "" msgid "" -":gh:`84753`: :func:`inspect.iscoroutinefunction`, :func:`inspect." -"isgeneratorfunction`, and :func:`inspect.isasyncgenfunction` now properly " -"return ``True`` for duck-typed function-like objects like instances of :" -"class:`unittest.mock.AsyncMock`." +":gh:`84753`: :func:`inspect.iscoroutinefunction`, :func:`inspect.isgeneratorfunction`, " +"and :func:`inspect.isasyncgenfunction` now properly return ``True`` for duck-" +"typed function-like objects like instances " +"of :class:`unittest.mock.AsyncMock`." msgstr "" msgid "" @@ -35593,9 +38706,9 @@ msgid "" msgstr "" msgid "" -":gh:`93973`: Add keyword argument ``all_errors`` to ``asyncio." -"create_connection`` so that multiple connection errors can be raised as an " -"``ExceptionGroup``." +":gh:`93973`: Add keyword argument ``all_errors`` to " +"``asyncio.create_connection`` so that multiple connection errors can be " +"raised as an ``ExceptionGroup``." msgstr "" msgid "" @@ -35623,14 +38736,14 @@ msgid ":gh:`83499`: Fix double closing of file description in :mod:`tempfile`." msgstr "" msgid "" -":gh:`93820`: Fixed a regression when :func:`copy.copy`-ing :class:`enum." -"Flag` with multiple flag members." +":gh:`93820`: Fixed a regression when :func:`copy.copy`-" +"ing :class:`enum.Flag` with multiple flag members." msgstr "" msgid "" -":gh:`79512`: Fixed names and ``__module__`` value of :mod:`weakref` classes :" -"class:`~weakref.ReferenceType`, :class:`~weakref.ProxyType`, :class:" -"`~weakref.CallableProxyType`. It makes them pickleable." +":gh:`79512`: Fixed names and ``__module__`` value of :mod:`weakref` " +"classes :class:`~weakref.ReferenceType`, :class:`~weakref.ProxyType`, :class:`~weakref.CallableProxyType`. " +"It makes them pickleable." msgstr "" msgid "" @@ -35644,8 +38757,8 @@ msgid "" msgstr "" msgid "" -":gh:`90473`: Emscripten and WASI have no home directory and cannot provide :" -"pep:`370` user site directory." +":gh:`90473`: Emscripten and WASI have no home directory and cannot " +"provide :pep:`370` user site directory." msgstr "" msgid "" @@ -35679,8 +38792,8 @@ msgid "" msgstr "" msgid "" -":gh:`93475`: Expose ``FICLONE`` and ``FICLONERANGE`` constants in :mod:" -"`fcntl`. Patch by Illia Volochii." +":gh:`93475`: Expose ``FICLONE`` and ``FICLONERANGE`` constants " +"in :mod:`fcntl`. Patch by Illia Volochii." msgstr "" msgid ":gh:`93370`: Deprecate :data:`!version` and :data:`!version_info`." @@ -35722,8 +38835,8 @@ msgstr "" msgid "" ":gh:`88123`: Implement ``Enum.__contains__`` that returns ``True`` or " -"``False`` to replace the deprecated behaviour that would sometimes raise a :" -"exc:`TypeError`." +"``False`` to replace the deprecated behaviour that would sometimes raise " +"a :exc:`TypeError`." msgstr "" msgid "" @@ -35731,11 +38844,11 @@ msgid "" msgstr "" msgid "" -":gh:`85308`: Changed :class:`argparse.ArgumentParser` to use :term:" -"`filesystem encoding and error handler` instead of default text encoding to " -"read arguments from file (e.g. ``fromfile_prefix_chars`` option). This " -"change affects Windows; argument file should be encoded with UTF-8 instead " -"of ANSI Codepage." +":gh:`85308`: Changed :class:`argparse.ArgumentParser` to " +"use :term:`filesystem encoding and error handler` instead of default text " +"encoding to read arguments from file (e.g. ``fromfile_prefix_chars`` " +"option). This change affects Windows; argument file should be encoded with " +"UTF-8 instead of ANSI Codepage." msgstr "" msgid "" @@ -35745,15 +38858,15 @@ msgstr "" msgid "" ":gh:`93162`: Add the ability for :func:`logging.config.dictConfig` to " -"usefully configure :class:`~logging.handlers.QueueHandler` and :class:" -"`~logging.handlers.QueueListener` as a pair, and add :func:`logging." -"getHandlerByName` and :func:`logging.getHandlerNames` APIs to allow access " -"to handlers by name." +"usefully configure :class:`~logging.handlers.QueueHandler` " +"and :class:`~logging.handlers.QueueListener` as a pair, and " +"add :func:`logging.getHandlerByName` and :func:`logging.getHandlerNames` " +"APIs to allow access to handlers by name." msgstr "" msgid "" -":gh:`93243`: The :mod:`!smtpd` module was removed per the schedule in :pep:" -"`594`." +":gh:`93243`: The :mod:`!smtpd` module was removed per the schedule " +"in :pep:`594`." msgstr "" msgid "" @@ -35784,10 +38897,10 @@ msgid "" msgstr "" msgid "" -":gh:`92728`: The :func:`re.template` function and the corresponding :const:" -"`re.TEMPLATE` and :const:`re.T` flags are restored after they were removed " -"in 3.11.0b1, but they are now deprecated, so they might be removed from " -"Python 3.13." +":gh:`92728`: The :func:`re.template` function and the " +"corresponding :const:`re.TEMPLATE` and :const:`re.T` flags are restored " +"after they were removed in 3.11.0b1, but they are now deprecated, so they " +"might be removed from Python 3.13." msgstr "" msgid "" @@ -35803,8 +38916,8 @@ msgid "" msgstr "" msgid "" -":gh:`93044`: No longer convert the database argument of :func:`sqlite3." -"connect` to bytes before passing it to the factory." +":gh:`93044`: No longer convert the database argument " +"of :func:`sqlite3.connect` to bytes before passing it to the factory." msgstr "" msgid "" @@ -35824,8 +38937,9 @@ msgid "" msgstr "" msgid "" -":gh:`92675`: Fix :func:`venv.ensure_directories` to accept :class:`pathlib." -"Path` arguments in addition to :class:`str` paths. Patch by David Foster." +":gh:`92675`: Fix :func:`venv.ensure_directories` to " +"accept :class:`pathlib.Path` arguments in addition to :class:`str` paths. " +"Patch by David Foster." msgstr "" msgid "" @@ -35834,9 +38948,9 @@ msgid "" msgstr "" msgid "" -":gh:`91922`: Fix function :func:`sqlite.connect` and the :class:`sqlite." -"Connection` constructor on non-UTF-8 locales. Also, they now support bytes " -"paths non-decodable with the current FS encoding." +":gh:`91922`: Fix function :func:`sqlite.connect` and " +"the :class:`sqlite.Connection` constructor on non-UTF-8 locales. Also, they " +"now support bytes paths non-decodable with the current FS encoding." msgstr "" msgid "" @@ -35845,8 +38959,8 @@ msgid "" msgstr "" msgid "" -":gh:`92839`: Fixed crash resulting from calling bisect.insort() or bisect." -"insort_left() with the key argument not equal to ``None``." +":gh:`92839`: Fixed crash resulting from calling bisect.insort() or " +"bisect.insort_left() with the key argument not equal to ``None``." msgstr "" msgid "" @@ -35855,12 +38969,12 @@ msgid "" msgstr "" msgid "" -":gh:`89325`: Removed many old deprecated :mod:`unittest` features: :class:" -"`~unittest.TestCase` method aliases, undocumented and broken :class:" -"`~unittest.TestCase` method ``assertDictContainsSubset``, undocumented :meth:" -"`TestLoader.loadTestsFromModule ` " -"parameter *use_load_tests*, and an underscored alias of the :class:" -"`~unittest.TextTestResult` class." +":gh:`89325`: Removed many old deprecated :mod:`unittest` " +"features: :class:`~unittest.TestCase` method aliases, undocumented and " +"broken :class:`~unittest.TestCase` method ``assertDictContainsSubset``, " +"undocumented :meth:`TestLoader.loadTestsFromModule " +"` parameter *use_load_tests*, and " +"an underscored alias of the :class:`~unittest.TextTestResult` class." msgstr "" msgid "" @@ -35877,8 +38991,8 @@ msgid "" ":gh:`91581`: :meth:`~datetime.datetime.utcfromtimestamp` no longer attempts " "to resolve ``fold`` in the pure Python implementation, since the fold is " "never 1 in UTC. In addition to being slightly faster in the common case, " -"this also prevents some errors when the timestamp is close to :attr:" -"`datetime.min `. Patch by Paul Ganssle." +"this also prevents some errors when the timestamp is close " +"to :attr:`datetime.min `. Patch by Paul Ganssle." msgstr "" msgid "" @@ -35890,17 +39004,18 @@ msgid "" msgstr "" msgid "" -":gh:`90385`: Add :meth:`pathlib.Path.walk` as an alternative to :func:`os." -"walk`." +":gh:`90385`: Add :meth:`pathlib.Path.walk` as an alternative " +"to :func:`os.walk`." msgstr "" msgid ":gh:`92550`: Fix :meth:`pathlib.Path.rglob` for empty pattern." msgstr "" msgid "" -":gh:`92591`: Allow :mod:`logging` filters to return a :class:`logging." -"LogRecord` instance so that filters attached to :class:`logging.Handler`\\ s " -"can enrich records without side effects on other handlers." +":gh:`92591`: Allow :mod:`logging` filters to return " +"a :class:`logging.LogRecord` instance so that filters attached " +"to :class:`logging.Handler`\\ s can enrich records without side effects on " +"other handlers." msgstr "" msgid "" @@ -35921,8 +39036,8 @@ msgid "``sqlite3.OptimizedUnicode``" msgstr "" msgid "" -":gh:`92530`: Fix an issue that occurred after interrupting :func:`threading." -"Condition.notify`." +":gh:`92530`: Fix an issue that occurred after " +"interrupting :func:`threading.Condition.notify`." msgstr "" msgid "" @@ -35945,22 +39060,22 @@ msgid "" msgstr "" msgid "" -":gh:`92391`: Add :meth:`~object.__class_getitem__` to :class:`csv." -"DictReader` and :class:`csv.DictWriter`, allowing them to be parameterized " -"at runtime. Patch by Marc Mueller." +":gh:`92391`: Add :meth:`~object.__class_getitem__` " +"to :class:`csv.DictReader` and :class:`csv.DictWriter`, allowing them to be " +"parameterized at runtime. Patch by Marc Mueller." msgstr "" msgid "" -":gh:`91968`: Add ``SO_RTABLE`` and ``SO_USER_COOKIE`` constants to :mod:" -"`socket`." +":gh:`91968`: Add ``SO_RTABLE`` and ``SO_USER_COOKIE`` constants " +"to :mod:`socket`." msgstr "" msgid "" -":gh:`91810`: :class:`~xml.etree.ElementTree.ElementTree` method :meth:`~xml." -"etree.ElementTree.ElementTree.write` and function :func:`~xml.etree." -"ElementTree.tostring` now use the text file's encoding (\"UTF-8\" if not " -"available) instead of locale encoding in XML declaration when " -"``encoding=\"unicode\"`` is specified." +":gh:`91810`: :class:`~xml.etree.ElementTree.ElementTree` " +"method :meth:`~xml.etree.ElementTree.ElementTree.write` and " +"function :func:`~xml.etree.ElementTree.tostring` now use the text file's " +"encoding (\"UTF-8\" if not available) instead of locale encoding in XML " +"declaration when ``encoding=\"unicode\"`` is specified." msgstr "" msgid "" @@ -35977,11 +39092,11 @@ msgid "" msgstr "" msgid "" -":gh:`90622`: Worker processes for :class:`concurrent.futures." -"ProcessPoolExecutor` are no longer spawned on demand (a feature added in " -"3.9) when the multiprocessing context start method is ``\"fork\"`` as that " -"can lead to deadlocks in the child processes due to a fork happening while " -"threads are running." +":gh:`90622`: Worker processes " +"for :class:`concurrent.futures.ProcessPoolExecutor` are no longer spawned on " +"demand (a feature added in 3.9) when the multiprocessing context start " +"method is ``\"fork\"`` as that can lead to deadlocks in the child processes " +"due to a fork happening while threads are running." msgstr "" msgid "" @@ -35999,14 +39114,16 @@ msgid "" msgstr "" msgid "" -":gh:`91539`: Improve performance of ``urllib.request." -"getproxies_environment`` when there are many environment variables" +":gh:`91539`: Improve performance of " +"``urllib.request.getproxies_environment`` when there are many environment " +"variables" msgstr "" msgid "" -":gh:`91524`: Speed up the regular expression substitution (functions :func:" -"`re.sub` and :func:`re.subn` and corresponding :class:`re.Pattern` methods) " -"for replacement strings containing group references by 2--3 times." +":gh:`91524`: Speed up the regular expression substitution " +"(functions :func:`re.sub` and :func:`re.subn` and " +"corresponding :class:`re.Pattern` methods) for replacement strings " +"containing group references by 2--3 times." msgstr "" msgid "" @@ -36026,14 +39143,14 @@ msgid "" msgstr "" msgid "" -":issue:`39064`: :class:`zipfile.ZipFile` now raises :exc:`zipfile." -"BadZipFile` instead of ``ValueError`` when reading a corrupt zip file in " -"which the central directory offset is negative." +":issue:`39064`: :class:`zipfile.ZipFile` now " +"raises :exc:`zipfile.BadZipFile` instead of ``ValueError`` when reading a " +"corrupt zip file in which the central directory offset is negative." msgstr "" msgid "" -":issue:`41287`: Fix handling of the ``doc`` argument in subclasses of :func:" -"`property`." +":issue:`41287`: Fix handling of the ``doc`` argument in subclasses " +"of :func:`property`." msgstr "" msgid "" @@ -36042,14 +39159,14 @@ msgid "" msgstr "" msgid "" -":issue:`32547`: The constructors for :class:`~csv.DictWriter` and :class:" -"`~csv.DictReader` now coerce the ``fieldnames`` argument to a :class:`list` " -"if it is an iterator." +":issue:`32547`: The constructors for :class:`~csv.DictWriter` " +"and :class:`~csv.DictReader` now coerce the ``fieldnames`` argument to " +"a :class:`list` if it is an iterator." msgstr "" msgid "" -":issue:`35540`: Fix :func:`dataclasses.asdict` crash when :class:" -"`collections.defaultdict` is present in the attributes." +":issue:`35540`: Fix :func:`dataclasses.asdict` crash " +"when :class:`collections.defaultdict` is present in the attributes." msgstr "" msgid "" @@ -36070,8 +39187,8 @@ msgid "" msgstr "" msgid "" -":issue:`46755`: In :class:`QueueHandler`, clear ``stack_info`` from :class:" -"`LogRecord` to prevent stack trace from being written twice." +":issue:`46755`: In :class:`QueueHandler`, clear ``stack_info`` " +"from :class:`LogRecord` to prevent stack trace from being written twice." msgstr "" msgid "" @@ -36081,8 +39198,8 @@ msgstr "" msgid "" ":issue:`46642`: Improve error message when trying to subclass an instance " -"of :data:`typing.TypeVar`, :data:`typing.ParamSpec`, :data:`typing." -"TypeVarTuple`, etc. Based on patch by Gregory Beauregard." +"of :data:`typing.TypeVar`, :data:`typing.ParamSpec`, :data:`typing.TypeVarTuple`, " +"etc. Based on patch by Gregory Beauregard." msgstr "" msgid "" @@ -36106,17 +39223,18 @@ msgid "" msgstr "" msgid "" -":issue:`45046`: Add support of context managers in :mod:`unittest`: methods :" -"meth:`~unittest.TestCase.enterContext` and :meth:`~unittest.TestCase." -"enterClassContext` of class :class:`~unittest.TestCase`, method :meth:" -"`~unittest.IsolatedAsyncioTestCase.enterAsyncContext` of class :class:" -"`~unittest.IsolatedAsyncioTestCase` and function :func:`unittest." -"enterModuleContext`." +":issue:`45046`: Add support of context managers in :mod:`unittest`: " +"methods :meth:`~unittest.TestCase.enterContext` " +"and :meth:`~unittest.TestCase.enterClassContext` of " +"class :class:`~unittest.TestCase`, " +"method :meth:`~unittest.IsolatedAsyncioTestCase.enterAsyncContext` of " +"class :class:`~unittest.IsolatedAsyncioTestCase` and " +"function :func:`unittest.enterModuleContext`." msgstr "" msgid "" -":issue:`44173`: Enable fast seeking of uncompressed unencrypted :class:" -"`zipfile.ZipExtFile`" +":issue:`44173`: Enable fast seeking of uncompressed " +"unencrypted :class:`zipfile.ZipExtFile`" msgstr "" msgid "" @@ -36140,9 +39258,9 @@ msgid "" msgstr "" msgid "" -":issue:`39264`: Fixed :meth:`collections.UserDict.get` to not call :meth:" -"`~object.__missing__` when a value is not found. This matches the behavior " -"of :class:`dict`. Patch by Bar Harel." +":issue:`39264`: Fixed :meth:`collections.UserDict.get` to not " +"call :meth:`~object.__missing__` when a value is not found. This matches the " +"behavior of :class:`dict`. Patch by Bar Harel." msgstr "" msgid "" @@ -36151,10 +39269,11 @@ msgid "" msgstr "" msgid "" -":issue:`38267`: Add *timeout* parameter to :meth:`asyncio.loop." -"shutdown_default_executor`. The default value is ``None``, which means the " -"executor will be given an unlimited amount of time. When called from :class:" -"`asyncio.Runner` or :func:`asyncio.run`, the default timeout is 5 minutes." +":issue:`38267`: Add *timeout* parameter " +"to :meth:`asyncio.loop.shutdown_default_executor`. The default value is " +"``None``, which means the executor will be given an unlimited amount of " +"time. When called from :class:`asyncio.Runner` or :func:`asyncio.run`, the " +"default timeout is 5 minutes." msgstr "" msgid "" @@ -36168,8 +39287,8 @@ msgid "" msgstr "" msgid "" -":issue:`26253`: Allow adjustable compression level for tarfile streams in :" -"func:`tarfile.open`." +":issue:`26253`: Allow adjustable compression level for tarfile streams " +"in :func:`tarfile.open`." msgstr "" msgid ":gh:`85525`: Remove extra row" @@ -36233,8 +39352,8 @@ msgid "" msgstr "" msgid "" -":gh:`94321`: Document the :pep:`246` style protocol type :class:`sqlite3." -"PrepareProtocol`." +":gh:`94321`: Document the :pep:`246` style protocol " +"type :class:`sqlite3.PrepareProtocol`." msgstr "" msgid "" @@ -36285,8 +39404,9 @@ msgid "" msgstr "" msgid "" -":issue:`40838`: Document that :func:`inspect.getdoc`, :func:`inspect." -"getmodule`, and :func:`inspect.getsourcefile` might return ``None``." +":issue:`40838`: Document " +"that :func:`inspect.getdoc`, :func:`inspect.getmodule`, " +"and :func:`inspect.getsourcefile` might return ``None``." msgstr "" msgid "" @@ -36295,8 +39415,8 @@ msgid "" msgstr "" msgid "" -":issue:`38056`: Overhaul the :ref:`error-handlers` documentation in :mod:" -"`codecs`." +":issue:`38056`: Overhaul the :ref:`error-handlers` documentation " +"in :mod:`codecs`." msgstr "" msgid ":issue:`13553`: Document tkinter.Tk args." @@ -36340,13 +39460,13 @@ msgid "" msgstr "" msgid "" -":gh:`95218`: Move tests for importlib.resources into test_importlib." -"resources." +":gh:`95218`: Move tests for importlib.resources into " +"test_importlib.resources." msgstr "" msgid "" -":gh:`93963`: Updated tests to use preferred location for ``importlib." -"resources`` ABCs." +":gh:`93963`: Updated tests to use preferred location for " +"``importlib.resources`` ABCs." msgstr "" msgid "" @@ -36385,8 +39505,8 @@ msgid "" msgstr "" msgid "" -":gh:`93957`: Provide nicer error reporting from subprocesses in test_venv." -"EnsurePipTest.test_with_pip." +":gh:`93957`: Provide nicer error reporting from subprocesses in " +"test_venv.EnsurePipTest.test_with_pip." msgstr "" msgid "" @@ -36397,8 +39517,9 @@ msgstr "" msgid "" ":gh:`93852`: test_asyncio, test_logging, test_socket and test_socketserver " "now create AF_UNIX domains in the current directory to no longer fail with " -"``OSError(\"AF_UNIX path too long\")`` if the temporary directory (the :" -"envvar:`TMPDIR` environment variable) is too long. Patch by Victor Stinner." +"``OSError(\"AF_UNIX path too long\")`` if the temporary directory " +"(the :envvar:`TMPDIR` environment variable) is too long. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -36425,8 +39546,8 @@ msgstr "" msgid "" ":gh:`90473`: WASI does not have a ``chmod(2)`` syscall. :func:`os.chmod` is " -"now a dummy function on WASI. Skip all tests that depend on working :func:" -"`os.chmod`." +"now a dummy function on WASI. Skip all tests that depend on " +"working :func:`os.chmod`." msgstr "" msgid "" @@ -36434,8 +39555,8 @@ msgid "" msgstr "" msgid "" -":gh:`57539`: Increase calendar test coverage for :meth:`calendar." -"LocaleTextCalendar.formatweekday`." +":gh:`57539`: Increase calendar test coverage " +"for :meth:`calendar.LocaleTextCalendar.formatweekday`." msgstr "" msgid "" @@ -36491,14 +39612,15 @@ msgid "" msgstr "" msgid "" -":gh:`96761`: Fix the build process of clang compiler for :program:" -"`_bootstrap_python` if LTO optimization is applied. Patch by Matthias " -"Görgens and Donghee Na." +":gh:`96761`: Fix the build process of clang compiler " +"for :program:`_bootstrap_python` if LTO optimization is applied. Patch by " +"Matthias Görgens and Donghee Na." msgstr "" msgid "" -":gh:`96883`: ``wasm32-emscripten`` builds for browsers now include :mod:" -"`concurrent.futures` for :mod:`asyncio` and :mod:`unittest.mock`." +":gh:`96883`: ``wasm32-emscripten`` builds for browsers now " +"include :mod:`concurrent.futures` for :mod:`asyncio` " +"and :mod:`unittest.mock`." msgstr "" msgid "" @@ -36573,8 +39695,8 @@ msgid "" msgstr "" msgid "" -":gh:`94841`: Fix the possible performance regression of :c:func:" -"`PyObject_Free` compiled with MSVC version 1932." +":gh:`94841`: Fix the possible performance regression " +"of :c:func:`PyObject_Free` compiled with MSVC version 1932." msgstr "" msgid "" @@ -36720,8 +39842,8 @@ msgid "" msgstr "" msgid "" -":gh:`95656`: Enable the :meth:`~sqlite3.Connection.enable_load_extension` :" -"mod:`sqlite3` API." +":gh:`95656`: Enable " +"the :meth:`~sqlite3.Connection.enable_load_extension` :mod:`sqlite3` API." msgstr "" msgid "" @@ -36799,8 +39921,9 @@ msgstr "" msgid "" ":issue:`42658`: Support native Windows case-insensitive path comparisons by " -"using ``LCMapStringEx`` instead of :func:`str.lower` in :func:`ntpath." -"normcase`. Add ``LCMapStringEx`` to the :mod:`!_winapi` module." +"using ``LCMapStringEx`` instead of :func:`str.lower` " +"in :func:`ntpath.normcase`. Add ``LCMapStringEx`` to the :mod:`!_winapi` " +"module." msgstr "" msgid ":issue:`38704`: Prevent installation on unsupported Windows versions." @@ -36808,11 +39931,11 @@ msgstr "" msgid "" ":gh:`97897`: The macOS 13 SDK includes support for the ``mkfifoat`` and " -"``mknodat`` system calls. Using the ``dir_fd`` option with either :func:`os." -"mkfifo` or :func:`os.mknod` could result in a segfault if cpython is built " -"with the macOS 13 SDK but run on an earlier version of macOS. Prevent this " -"by adding runtime support for detection of these system calls " -"(\"weaklinking\") as is done for other newer syscalls on macOS." +"``mknodat`` system calls. Using the ``dir_fd`` option with " +"either :func:`os.mkfifo` or :func:`os.mknod` could result in a segfault if " +"cpython is built with the macOS 13 SDK but run on an earlier version of " +"macOS. Prevent this by adding runtime support for detection of these system " +"calls (\"weaklinking\") as is done for other newer syscalls on macOS." msgstr "" msgid "" @@ -36923,16 +40046,16 @@ msgstr "" msgid "" ":gh:`95589`: Extensions classes that set ``tp_dictoffset`` and " "``tp_weaklistoffset`` lose the support for multiple inheritance, but are now " -"safe. Extension classes should use :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:" -"macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead." +"safe. Extension classes should use :c:macro:`Py_TPFLAGS_MANAGED_DICT` " +"and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF` instead." msgstr "" msgid "" -":gh:`95781`: An unrecognized format character in :c:func:" -"`PyUnicode_FromFormat` and :c:func:`PyUnicode_FromFormatV` now sets a :exc:" -"`SystemError`. In previous versions it caused all the rest of the format " -"string to be copied as-is to the result string, and any extra arguments " -"discarded." +":gh:`95781`: An unrecognized format character " +"in :c:func:`PyUnicode_FromFormat` and :c:func:`PyUnicode_FromFormatV` now " +"sets a :exc:`SystemError`. In previous versions it caused all the rest of " +"the format string to be copied as-is to the result string, and any extra " +"arguments discarded." msgstr "" msgid "" @@ -36946,15 +40069,15 @@ msgid "" msgstr "" msgid "" -":gh:`93274`: API for implementing vectorcall (:c:macro:" -"`Py_TPFLAGS_HAVE_VECTORCALL`, :c:func:`PyVectorcall_NARGS` and :c:func:" -"`PyVectorcall_Call`) was added to the limited API and stable ABI." +":gh:`93274`: API for implementing vectorcall " +"(:c:macro:`Py_TPFLAGS_HAVE_VECTORCALL`, :c:func:`PyVectorcall_NARGS` " +"and :c:func:`PyVectorcall_Call`) was added to the limited API and stable ABI." msgstr "" msgid "" -":gh:`95504`: Fix sign placement when specifying width or precision in :c:" -"func:`PyUnicode_FromFormat` and :c:func:`PyUnicode_FromFormatV`. Patch by " -"Philip Georgi." +":gh:`95504`: Fix sign placement when specifying width or precision " +"in :c:func:`PyUnicode_FromFormat` and :c:func:`PyUnicode_FromFormatV`. Patch " +"by Philip Georgi." msgstr "" msgid "" @@ -36979,16 +40102,16 @@ msgid "" msgstr "" msgid "" -":gh:`94936`: Added :c:func:`PyCode_GetVarnames`, :c:func:" -"`PyCode_GetCellvars` and :c:func:`PyCode_GetFreevars` for accessing " -"``co_varnames``, ``co_cellvars`` and ``co_freevars`` respectively via the C " -"API." +":gh:`94936`: " +"Added :c:func:`PyCode_GetVarnames`, :c:func:`PyCode_GetCellvars` " +"and :c:func:`PyCode_GetFreevars` for accessing ``co_varnames``, " +"``co_cellvars`` and ``co_freevars`` respectively via the C API." msgstr "" msgid "" -":gh:`94930`: Fix ``SystemError`` raised when :c:func:" -"`PyArg_ParseTupleAndKeywords` is used with ``#`` in ``(...)`` but without " -"``PY_SSIZE_T_CLEAN`` defined." +":gh:`94930`: Fix ``SystemError`` raised " +"when :c:func:`PyArg_ParseTupleAndKeywords` is used with ``#`` in ``(...)`` " +"but without ``PY_SSIZE_T_CLEAN`` defined." msgstr "" msgid "" @@ -37041,18 +40164,20 @@ msgstr "" msgid "" ":gh:`89546`: :c:func:`PyType_FromMetaclass` (and other ``PyType_From*`` " -"functions) now check that offsets and the base class's :c:member:" -"`~PyTypeObject.tp_basicsize` fit in the new class's ``tp_basicsize``." +"functions) now check that offsets and the base " +"class's :c:member:`~PyTypeObject.tp_basicsize` fit in the new class's " +"``tp_basicsize``." msgstr "" msgid "" -":gh:`93503`: Add two new public functions to the public C-API, :c:func:" -"`PyEval_SetProfileAllThreads` and :c:func:`PyEval_SetTraceAllThreads`, that " -"allow to set tracing and profiling functions in all running threads in " -"addition to the calling one. Also, two analogous functions to the :mod:" -"`threading` module (:func:`threading.setprofile_all_threads` and :func:" -"`threading.settrace_all_threads`) that allow to do the same from Python. " -"Patch by Pablo Galindo" +":gh:`93503`: Add two new public functions to the public C-" +"API, :c:func:`PyEval_SetProfileAllThreads` " +"and :c:func:`PyEval_SetTraceAllThreads`, that allow to set tracing and " +"profiling functions in all running threads in addition to the calling one. " +"Also, two analogous functions to the :mod:`threading` module " +"(:func:`threading.setprofile_all_threads` " +"and :func:`threading.settrace_all_threads`) that allow to do the same from " +"Python. Patch by Pablo Galindo" msgstr "" msgid "" @@ -37073,15 +40198,17 @@ msgid "" msgstr "" msgid "" -":gh:`93103`: Deprecate global configuration variables, like :c:var:" -"`Py_IgnoreEnvironmentFlag`, in the documentation: the :c:func:" -"`Py_InitializeFromConfig` API should be instead. Patch by Victor Stinner." +":gh:`93103`: Deprecate global configuration variables, " +"like :c:var:`Py_IgnoreEnvironmentFlag`, in the documentation: " +"the :c:func:`Py_InitializeFromConfig` API should be instead. Patch by Victor " +"Stinner." msgstr "" msgid "" -":gh:`77782`: Deprecate global configuration variable like :c:var:" -"`Py_IgnoreEnvironmentFlag`: the :c:func:`Py_InitializeFromConfig` API should " -"be instead. Patch by Victor Stinner." +":gh:`77782`: Deprecate global configuration variable " +"like :c:var:`Py_IgnoreEnvironmentFlag`: " +"the :c:func:`Py_InitializeFromConfig` API should be instead. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -37137,9 +40264,9 @@ msgid "*Release date: 2022-05-06*" msgstr "" msgid "" -":gh:`57684`: Add the :option:`-P` command line option and the :envvar:" -"`PYTHONSAFEPATH` environment variable to not prepend a potentially unsafe " -"path to :data:`sys.path`. Patch by Victor Stinner." +":gh:`57684`: Add the :option:`-P` command line option and " +"the :envvar:`PYTHONSAFEPATH` environment variable to not prepend a " +"potentially unsafe path to :data:`sys.path`. Patch by Victor Stinner." msgstr "" msgid "" @@ -37236,14 +40363,14 @@ msgid "" msgstr "" msgid "" -":gh:`91632`: Fix a minor memory leak at exit: release the memory of the :" -"class:`generic_alias_iterator` type. Patch by Donghee Na." +":gh:`91632`: Fix a minor memory leak at exit: release the memory of " +"the :class:`generic_alias_iterator` type. Patch by Donghee Na." msgstr "" msgid "" -":gh:`81548`: Octal escapes with value larger than ``0o377`` now produce a :" -"exc:`DeprecationWarning`. In a future Python version they will be a :exc:" -"`SyntaxWarning` and eventually a :exc:`SyntaxError`." +":gh:`81548`: Octal escapes with value larger than ``0o377`` now produce " +"a :exc:`DeprecationWarning`. In a future Python version they will be " +"a :exc:`SyntaxWarning` and eventually a :exc:`SyntaxError`." msgstr "" msgid "" @@ -37263,8 +40390,8 @@ msgid "" msgstr "" msgid "" -":gh:`91603`: Speed up :func:`isinstance` and :func:`issubclass` checks for :" -"class:`types.UnionType`. Patch by Yurii Karabas." +":gh:`91603`: Speed up :func:`isinstance` and :func:`issubclass` checks " +"for :class:`types.UnionType`. Patch by Yurii Karabas." msgstr "" msgid "" @@ -37300,9 +40427,9 @@ msgstr "" msgid "" ":gh:`91479`: Replaced the ``__note__`` field of :exc:`BaseException` (added " -"in an earlier version of 3.11) with the final design of :pep:`678`. Namely, :" -"exc:`BaseException` gets an :meth:`add_note` method, and its ``__notes__`` " -"field is created when necessary." +"in an earlier version of 3.11) with the final design of :pep:`678`. " +"Namely, :exc:`BaseException` gets an :meth:`add_note` method, and its " +"``__notes__`` field is created when necessary." msgstr "" msgid "" @@ -37335,9 +40462,10 @@ msgid "" msgstr "" msgid "" -":issue:`47120`: Make :opcode:`POP_JUMP_IF_TRUE`, :opcode:" -"`POP_JUMP_IF_FALSE`, :opcode:`POP_JUMP_IF_NONE` and :opcode:" -"`POP_JUMP_IF_NOT_NONE` virtual, mapping to new relative jump opcodes." +":issue:`47120`: " +"Make :opcode:`POP_JUMP_IF_TRUE`, :opcode:`POP_JUMP_IF_FALSE`, :opcode:`POP_JUMP_IF_NONE` " +"and :opcode:`POP_JUMP_IF_NOT_NONE` virtual, mapping to new relative jump " +"opcodes." msgstr "" msgid "" @@ -37378,9 +40506,9 @@ msgid "" msgstr "" msgid "" -"The classes affected are :class:`ctypes.UnionType`, :class:`pickle." -"PickleBuffer`, :class:`testcapi.RecursingInfinitelyError`, and :class:`types." -"GenericAlias`." +"The classes affected " +"are :class:`ctypes.UnionType`, :class:`pickle.PickleBuffer`, :class:`testcapi.RecursingInfinitelyError`, " +"and :class:`types.GenericAlias`." msgstr "" msgid "The functions affected are 24 methods in :mod:`ctypes`." @@ -37476,9 +40604,9 @@ msgid "" msgstr "" msgid "" -":gh:`80010`: Add support for generalized ISO 8601 parsing to :meth:`datetime." -"datetime.fromisoformat`, :meth:`datetime.date.fromisoformat` and :meth:" -"`datetime.time.fromisoformat`. Patch by Paul Ganssle." +":gh:`80010`: Add support for generalized ISO 8601 parsing " +"to :meth:`datetime.datetime.fromisoformat`, :meth:`datetime.date.fromisoformat` " +"and :meth:`datetime.time.fromisoformat`. Patch by Paul Ganssle." msgstr "" msgid "" @@ -37502,9 +40630,9 @@ msgid ":gh:`85984`: New function os.login_tty() for Unix." msgstr "" msgid "" -":gh:`92128`: Add :meth:`~object.__class_getitem__` to :class:`logging." -"LoggerAdapter` and :class:`logging.StreamHandler`, allowing them to be " -"parameterized at runtime. Patch by Alex Waygood." +":gh:`92128`: Add :meth:`~object.__class_getitem__` " +"to :class:`logging.LoggerAdapter` and :class:`logging.StreamHandler`, " +"allowing them to be parameterized at runtime. Patch by Alex Waygood." msgstr "" msgid "" @@ -37519,8 +40647,8 @@ msgid "" msgstr "" msgid "" -":gh:`87390`: Add an ``__unpacked__`` attribute to :class:`types." -"GenericAlias`. Patch by Jelle Zijlstra." +":gh:`87390`: Add an ``__unpacked__`` attribute " +"to :class:`types.GenericAlias`. Patch by Jelle Zijlstra." msgstr "" msgid ":gh:`88089`: Add support for generic :class:`typing.NamedTuple`." @@ -37537,20 +40665,21 @@ msgid "" msgstr "" msgid "" -":gh:`91952`: Add ``encoding=\"locale\"`` support to :meth:`TextIOWrapper." -"reconfigure`." +":gh:`91952`: Add ``encoding=\"locale\"`` support " +"to :meth:`TextIOWrapper.reconfigure`." msgstr "" msgid "" -":gh:`91954`: Add *encoding* and *errors* arguments to :func:`subprocess." -"getoutput` and :func:`subprocess.getstatusoutput`." +":gh:`91954`: Add *encoding* and *errors* arguments " +"to :func:`subprocess.getoutput` and :func:`subprocess.getstatusoutput`." msgstr "" msgid "" -":issue:`47029`: Always close the read end of the pipe used by :class:" -"`multiprocessing.Queue` *after* the last write of buffered data to the write " -"end of the pipe to avoid :exc:`BrokenPipeError` at garbage collection and " -"at :meth:`multiprocessing.Queue.close` calls. Patch by Géry Ogam." +":issue:`47029`: Always close the read end of the pipe used " +"by :class:`multiprocessing.Queue` *after* the last write of buffered data to " +"the write end of the pipe to avoid :exc:`BrokenPipeError` at garbage " +"collection and at :meth:`multiprocessing.Queue.close` calls. Patch by Géry " +"Ogam." msgstr "" msgid ":gh:`91928`: Add ``datetime.UTC`` alias for ``datetime.timezone.utc``." @@ -37561,8 +40690,8 @@ msgstr "" msgid "" ":gh:`68966`: The :mod:`!mailcap` module is now deprecated and will be " -"removed in Python 3.13. See :pep:`594` for the rationale and the :mod:" -"`mimetypes` module for an alternative. Patch by Victor Stinner." +"removed in Python 3.13. See :pep:`594` for the rationale and " +"the :mod:`mimetypes` module for an alternative. Patch by Victor Stinner." msgstr "" msgid "" @@ -37573,18 +40702,18 @@ msgstr "" msgid "" ":gh:`64783`: Fix :const:`signal.NSIG` value on FreeBSD to accept signal " -"numbers greater than 32, like :const:`signal.SIGRTMIN` and :const:`signal." -"SIGRTMAX`. Patch by Victor Stinner." +"numbers greater than 32, like :const:`signal.SIGRTMIN` " +"and :const:`signal.SIGRTMAX`. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`91910`: Add missing f prefix to f-strings in error messages from the :" -"mod:`multiprocessing` and :mod:`asyncio` modules." +":gh:`91910`: Add missing f prefix to f-strings in error messages from " +"the :mod:`multiprocessing` and :mod:`asyncio` modules." msgstr "" msgid "" -":gh:`91860`: Add :func:`typing.dataclass_transform`, implementing :pep:" -"`681`. Patch by Jelle Zijlstra." +":gh:`91860`: Add :func:`typing.dataclass_transform`, " +"implementing :pep:`681`. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -37635,8 +40764,8 @@ msgid ":gh:`91734`: Fix OSS audio support on Solaris." msgstr "" msgid "" -":gh:`90633`: Include the passed value in the exception thrown by :func:" -"`typing.assert_never`. Patch by Jelle Zijlstra." +":gh:`90633`: Include the passed value in the exception thrown " +"by :func:`typing.assert_never`. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -37647,14 +40776,14 @@ msgid "" msgstr "" msgid "" -":gh:`91231`: Add an optional keyword *shutdown_timeout* parameter to the :" -"class:`multiprocessing.BaseManager` constructor. Kill the process if " +":gh:`91231`: Add an optional keyword *shutdown_timeout* parameter to " +"the :class:`multiprocessing.BaseManager` constructor. Kill the process if " "terminate() takes longer than the timeout. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`91621`: Fix :func:`typing.get_type_hints` for :class:`collections.abc." -"Callable`. Patch by Shantanu Jain." +":gh:`91621`: Fix :func:`typing.get_type_hints` " +"for :class:`collections.abc.Callable`. Patch by Shantanu Jain." msgstr "" msgid "" @@ -37701,15 +40830,15 @@ msgid ":gh:`91217`: Deprecate the nis module." msgstr "" msgid "" -":gh:`91595`: Fix the comparison of character and integer inside :func:`Tools." -"gdb.libpython.write_repr`. Patch by Yu Liu." +":gh:`91595`: Fix the comparison of character and integer " +"inside :func:`Tools.gdb.libpython.write_repr`. Patch by Yu Liu." msgstr "" msgid "" -":gh:`74166`: Add option to raise all errors from :meth:`~socket." -"create_connection` in an :exc:`ExceptionGroup` when it fails to create a " -"connection. The default remains to raise only the last error that had " -"occurred when multiple addresses were tried." +":gh:`74166`: Add option to raise all errors " +"from :meth:`~socket.create_connection` in an :exc:`ExceptionGroup` when it " +"fails to create a connection. The default remains to raise only the last " +"error that had occurred when multiple addresses were tried." msgstr "" msgid "" @@ -37732,25 +40861,24 @@ msgstr "" msgid "" ":gh:`89022`: In :mod:`sqlite3`, ``SQLITE_MISUSE`` result codes are now " -"mapped to :exc:`~sqlite3.InterfaceError` instead of :exc:`~sqlite3." -"ProgrammingError`. Also, more accurate exceptions are raised when binding " -"parameters fail. Patch by Erlend E. Aasland." +"mapped to :exc:`~sqlite3.InterfaceError` instead " +"of :exc:`~sqlite3.ProgrammingError`. Also, more accurate exceptions are " +"raised when binding parameters fail. Patch by Erlend E. Aasland." msgstr "" msgid "" -":gh:`91526`: Stop calling ``os.device_encoding(file.fileno())`` in :class:" -"`TextIOWrapper`. It was complex, never documented, and didn't work for most " -"cases. (Patch by Inada Naoki.)" +":gh:`91526`: Stop calling ``os.device_encoding(file.fileno())`` " +"in :class:`TextIOWrapper`. It was complex, never documented, and didn't work " +"for most cases. (Patch by Inada Naoki.)" msgstr "" msgid "" ":gh:`88116`: Change the frame-related functions in the :mod:`inspect` module " "to return a regular object (that is backwards compatible with the old tuple-" "like interface) that include the extended :pep:`657` position information " -"(end line number, column and end column). The affected functions are: :func:" -"`inspect.getframeinfo`, :func:`inspect.getouterframes`, :func:`inspect." -"getinnerframes`, :func:`inspect.stack` and :func:`inspect.trace`. Patch by " -"Pablo Galindo." +"(end line number, column and end column). The affected functions " +"are: :func:`inspect.getframeinfo`, :func:`inspect.getouterframes`, :func:`inspect.getinnerframes`, :func:`inspect.stack` " +"and :func:`inspect.trace`. Patch by Pablo Galindo." msgstr "" msgid "" @@ -37790,17 +40918,17 @@ msgid "" msgstr "" msgid "" -":gh:`91230`: :func:`warnings.catch_warnings` now accepts arguments for :func:" -"`warnings.simplefilter`, providing a more concise way to locally ignore " -"warnings or convert them to errors." +":gh:`91230`: :func:`warnings.catch_warnings` now accepts arguments " +"for :func:`warnings.simplefilter`, providing a more concise way to locally " +"ignore warnings or convert them to errors." msgstr "" msgid ":gh:`91217`: Deprecate the chunk module." msgstr "" msgid "" -":gh:`91498`: Add the ``TCP_CONNECTION_INFO`` option (available on macOS) to :" -"mod:`socket`." +":gh:`91498`: Add the ``TCP_CONNECTION_INFO`` option (available on macOS) " +"to :mod:`socket`." msgstr "" msgid "" @@ -37809,8 +40937,8 @@ msgid "" msgstr "" msgid "" -":issue:`47087`: Implement ``typing.Required`` and ``typing.NotRequired`` (:" -"pep:`655`). Patch by David Foster and Jelle Zijlstra." +":issue:`47087`: Implement ``typing.Required`` and ``typing.NotRequired`` " +"(:pep:`655`). Patch by David Foster and Jelle Zijlstra." msgstr "" msgid ":issue:`47061`: Deprecate cgi and cgitb." @@ -37836,9 +40964,9 @@ msgid "" msgstr "" msgid "" -":issue:`47211`: Remove undocumented and never working function ``re." -"template()`` and flag ``re.TEMPLATE``. This was later reverted in 3.11.0b2 " -"and deprecated instead." +":issue:`47211`: Remove undocumented and never working function " +"``re.template()`` and flag ``re.TEMPLATE``. This was later reverted in " +"3.11.0b2 and deprecated instead." msgstr "" msgid "" @@ -37858,13 +40986,14 @@ msgid ":issue:`46681`: Forward gzip.compress() compresslevel to zlib." msgstr "" msgid "" -":issue:`45100`: Add :func:`typing.get_overloads` and :func:`typing." -"clear_overloads`. Patch by Jelle Zijlstra." +":issue:`45100`: Add :func:`typing.get_overloads` " +"and :func:`typing.clear_overloads`. Patch by Jelle Zijlstra." msgstr "" msgid "" -":issue:`44807`: :class:`typing.Protocol` no longer silently replaces :meth:" -"`__init__` methods defined on subclasses. Patch by Adrian Garcia Badaracco." +":issue:`44807`: :class:`typing.Protocol` no longer silently " +"replaces :meth:`__init__` methods defined on subclasses. Patch by Adrian " +"Garcia Badaracco." msgstr "" msgid "" @@ -37873,9 +41002,9 @@ msgid "" msgstr "" msgid "" -":issue:`46720`: Add support for path-like objects to :func:`multiprocessing." -"set_executable` for Windows to be on a par with Unix-like systems. Patch by " -"Géry Ogam." +":issue:`46720`: Add support for path-like objects " +"to :func:`multiprocessing.set_executable` for Windows to be on a par with " +"Unix-like systems. Patch by Géry Ogam." msgstr "" msgid ":issue:`46696`: Add ``SO_INCOMING_CPU`` constant to :mod:`socket`." @@ -37885,20 +41014,20 @@ msgid ":issue:`46053`: Fix OSS audio support on NetBSD." msgstr "" msgid "" -":issue:`45639`: ``image/avif`` and ``image/webp`` were added to :mod:" -"`mimetypes`." +":issue:`45639`: ``image/avif`` and ``image/webp`` were added " +"to :mod:`mimetypes`." msgstr "" msgid "" -":issue:`46285`: Add command-line option ``-p``/``--protocol`` to module :mod:" -"`http.server` which specifies the HTTP version to which the server is " -"conformant (HTTP/1.1 conformant servers can now be run from the command-line " -"interface of module :mod:`http.server`). Patch by Géry Ogam." +":issue:`46285`: Add command-line option ``-p``/``--protocol`` to " +"module :mod:`http.server` which specifies the HTTP version to which the " +"server is conformant (HTTP/1.1 conformant servers can now be run from the " +"command-line interface of module :mod:`http.server`). Patch by Géry Ogam." msgstr "" msgid "" -":issue:`44791`: Accept ellipsis as the last argument of :data:`typing." -"Concatenate`." +":issue:`44791`: Accept ellipsis as the last argument " +"of :data:`typing.Concatenate`." msgstr "" msgid "" @@ -37924,10 +41053,11 @@ msgid "" msgstr "" msgid "" -":issue:`26175`: Fully implement the :class:`io.BufferedIOBase` or :class:`io." -"TextIOBase` interface for :class:`tempfile.SpooledTemporaryFile` objects. " -"This lets them work correctly with higher-level layers (like compression " -"modules). Patch by Carey Metcalfe." +":issue:`26175`: Fully implement the :class:`io.BufferedIOBase` " +"or :class:`io.TextIOBase` interface " +"for :class:`tempfile.SpooledTemporaryFile` objects. This lets them work " +"correctly with higher-level layers (like compression modules). Patch by " +"Carey Metcalfe." msgstr "" msgid "" @@ -37938,10 +41068,10 @@ msgid "" msgstr "" msgid "" -":issue:`44863`: Allow :class:`~typing.TypedDict` subclasses to also include :" -"class:`~typing.Generic` as a base class in class based syntax. Thereby " -"allowing the user to define a generic ``TypedDict``, just like a user-" -"defined generic but with ``TypedDict`` semantics." +":issue:`44863`: Allow :class:`~typing.TypedDict` subclasses to also " +"include :class:`~typing.Generic` as a base class in class based syntax. " +"Thereby allowing the user to define a generic ``TypedDict``, just like a " +"user-defined generic but with ``TypedDict`` semantics." msgstr "" msgid "" @@ -37962,8 +41092,9 @@ msgid "" msgstr "" msgid "" -":issue:`38435`: Add a ``process_group`` parameter to :class:`subprocess." -"Popen` to help move more things off of the unsafe ``preexec_fn`` parameter." +":issue:`38435`: Add a ``process_group`` parameter " +"to :class:`subprocess.Popen` to help move more things off of the unsafe " +"``preexec_fn`` parameter." msgstr "" msgid "" @@ -37974,14 +41105,14 @@ msgid "" msgstr "" msgid "" -":issue:`40617`: Add :meth:`~sqlite3.Connection.create_window_function` to :" -"class:`sqlite3.Connection` for creating aggregate window functions. Patch by " -"Erlend E. Aasland." +":issue:`40617`: Add :meth:`~sqlite3.Connection.create_window_function` " +"to :class:`sqlite3.Connection` for creating aggregate window functions. " +"Patch by Erlend E. Aasland." msgstr "" msgid "" -":issue:`40676`: Convert :mod:`csv` to use Argument Clinic for :func:`csv." -"field_size_limit`, :func:`csv.get_dialect`, :func:`csv.unregister_dialect` " +":issue:`40676`: Convert :mod:`csv` to use Argument Clinic " +"for :func:`csv.field_size_limit`, :func:`csv.get_dialect`, :func:`csv.unregister_dialect` " "and :func:`csv.list_dialects`." msgstr "" @@ -37999,9 +41130,9 @@ msgid "" msgstr "" msgid "" -":issue:`34975`: Adds a ``start_tls()`` method to :class:`~asyncio.streams." -"StreamWriter`, which upgrades the connection with TLS using the given :class:" -"`~ssl.SSLContext`." +":issue:`34975`: Adds a ``start_tls()`` method " +"to :class:`~asyncio.streams.StreamWriter`, which upgrades the connection " +"with TLS using the given :class:`~ssl.SSLContext`." msgstr "" msgid "" @@ -38012,9 +41143,9 @@ msgid "" msgstr "" msgid "" -":issue:`24905`: Add :meth:`~sqlite3.Connection.blobopen` to :class:`sqlite3." -"Connection`. :class:`sqlite3.Blob` allows incremental I/O operations on " -"blobs. Patch by Aviv Palivoda and Erlend E. Aasland." +":issue:`24905`: Add :meth:`~sqlite3.Connection.blobopen` " +"to :class:`sqlite3.Connection`. :class:`sqlite3.Blob` allows incremental I/O " +"operations on blobs. Patch by Aviv Palivoda and Erlend E. Aasland." msgstr "" msgid "" @@ -38023,8 +41154,8 @@ msgid "" msgstr "" msgid "" -":gh:`91783`: Document security issues concerning the use of the function :" -"meth:`shutil.unpack_archive`" +":gh:`91783`: Document security issues concerning the use of the " +"function :meth:`shutil.unpack_archive`" msgstr "" msgid ":gh:`91547`: Remove \"Undocumented modules\" page." @@ -38036,8 +41167,8 @@ msgid "" msgstr "" msgid "" -":issue:`44347`: Clarify the meaning of *dirs_exist_ok*, a kwarg of :func:" -"`shutil.copytree`." +":issue:`44347`: Clarify the meaning of *dirs_exist_ok*, a kwarg " +"of :func:`shutil.copytree`." msgstr "" msgid "" @@ -38052,8 +41183,8 @@ msgstr "" msgid "" ":issue:`38668`: Update the introduction to documentation for :mod:`os.path` " -"to remove warnings that became irrelevant after the implementations of :pep:" -"`383` and :pep:`529`." +"to remove warnings that became irrelevant after the implementations " +"of :pep:`383` and :pep:`529`." msgstr "" msgid "" @@ -38062,14 +41193,15 @@ msgid "" msgstr "" msgid "" -":issue:`46962`: All docstrings in code snippets are now wrapped into :c:" -"macro:`PyDoc_STR` to follow the guideline of :pep:`PEP 7's Documentation " -"Strings paragraph <0007#documentation-strings>`. Patch by Oleg Iarygin." +":issue:`46962`: All docstrings in code snippets are now wrapped " +"into :c:macro:`PyDoc_STR` to follow the guideline of :pep:`PEP 7's " +"Documentation Strings paragraph <0007#documentation-strings>`. Patch by Oleg " +"Iarygin." msgstr "" msgid "" -":issue:`26792`: Improve the docstrings of :func:`runpy.run_module` and :func:" -"`runpy.run_path`. Original patch by Andrew Brezovsky." +":issue:`26792`: Improve the docstrings of :func:`runpy.run_module` " +"and :func:`runpy.run_path`. Original patch by Andrew Brezovsky." msgstr "" msgid "" @@ -38104,16 +41236,17 @@ msgid "" msgstr "" msgid "" -":issue:`47109`: Test for :mod:`ctypes.macholib.dyld`, :mod:`ctypes.macholib." -"dylib`, and :mod:`ctypes.macholib.framework` are brought from manual pre-:" -"mod:`unittest` times to :mod:`ctypes.test` location and structure. Patch by " -"Oleg Iarygin." +":issue:`47109`: Test " +"for :mod:`ctypes.macholib.dyld`, :mod:`ctypes.macholib.dylib`, " +"and :mod:`ctypes.macholib.framework` are brought from manual " +"pre-:mod:`unittest` times to :mod:`ctypes.test` location and structure. " +"Patch by Oleg Iarygin." msgstr "" msgid "" -":issue:`29890`: Add tests for :class:`ipaddress.IPv4Interface` and :class:" -"`ipaddress.IPv6Interface` construction with tuple arguments. Original patch " -"and tests by louisom." +":issue:`29890`: Add tests for :class:`ipaddress.IPv4Interface` " +"and :class:`ipaddress.IPv6Interface` construction with tuple arguments. " +"Original patch and tests by louisom." msgstr "" msgid "" @@ -38127,8 +41260,8 @@ msgid "" msgstr "" msgid "" -":issue:`47152`: Add script and make target for generating ``sre_constants." -"h``." +":issue:`47152`: Add script and make target for generating " +"``sre_constants.h``." msgstr "" msgid "" @@ -38205,14 +41338,14 @@ msgid "" msgstr "" msgid "" -":gh:`91768`: :c:func:`Py_REFCNT`, :c:func:`Py_TYPE`, :c:func:`Py_SIZE` and :" -"c:func:`Py_IS_TYPE` functions argument type is now ``PyObject*``, rather " -"than ``const PyObject*``. Patch by Victor Stinner." +":gh:`91768`: :c:func:`Py_REFCNT`, :c:func:`Py_TYPE`, :c:func:`Py_SIZE` " +"and :c:func:`Py_IS_TYPE` functions argument type is now ``PyObject*``, " +"rather than ``const PyObject*``. Patch by Victor Stinner." msgstr "" msgid "" -":gh:`91020`: Add ``PyBytes_Type.tp_alloc`` to initialize ``PyBytesObject." -"ob_shash`` for bytes subclasses." +":gh:`91020`: Add ``PyBytes_Type.tp_alloc`` to initialize " +"``PyBytesObject.ob_shash`` for bytes subclasses." msgstr "" msgid "" @@ -38237,9 +41370,9 @@ msgid "" msgstr "" msgid "" -":issue:`46343`: Added :c:func:`PyErr_GetHandledException` and :c:func:" -"`PyErr_SetHandledException` as simpler alternatives to :c:func:" -"`PyErr_GetExcInfo` and :c:func:`PyErr_SetExcInfo`." +":issue:`46343`: Added :c:func:`PyErr_GetHandledException` " +"and :c:func:`PyErr_SetHandledException` as simpler alternatives " +"to :c:func:`PyErr_GetExcInfo` and :c:func:`PyErr_SetExcInfo`." msgstr "" msgid "They are included in the stable ABI." @@ -38259,22 +41392,22 @@ msgid "" msgstr "" msgid "" -":issue:`47186`: Replace :opcode:`JUMP_IF_NOT_EG_MATCH` by :opcode:" -"`CHECK_EG_MATCH` + jump." +":issue:`47186`: Replace :opcode:`JUMP_IF_NOT_EG_MATCH` " +"by :opcode:`CHECK_EG_MATCH` + jump." msgstr "" msgid "" ":issue:`47176`: Emscripten builds cannot handle signals in the usual way due " -"to platform limitations. Python can now handle signals. To use, set Module." -"Py_EmscriptenSignalBuffer to be a single byte SharedArrayBuffer and set " -"Py_EMSCRIPTEN_SIGNAL_HANDLING to 1. Writing a number into the " +"to platform limitations. Python can now handle signals. To use, set " +"Module.Py_EmscriptenSignalBuffer to be a single byte SharedArrayBuffer and " +"set Py_EMSCRIPTEN_SIGNAL_HANDLING to 1. Writing a number into the " "SharedArrayBuffer will cause the corresponding signal to be raised into the " "Python thread." msgstr "" msgid "" -":issue:`47186`: Replace :opcode:`JUMP_IF_NOT_EXC_MATCH` by :opcode:" -"`CHECK_EXC_MATCH` + jump." +":issue:`47186`: Replace :opcode:`JUMP_IF_NOT_EXC_MATCH` " +"by :opcode:`CHECK_EXC_MATCH` + jump." msgstr "" msgid "" @@ -38321,8 +41454,8 @@ msgid "" msgstr "" msgid "" -":issue:`47120`: Replaced :opcode:`JUMP_ABSOLUTE` by the relative jump :" -"opcode:`JUMP_BACKWARD`." +":issue:`47120`: Replaced :opcode:`JUMP_ABSOLUTE` by the relative " +"jump :opcode:`JUMP_BACKWARD`." msgstr "" msgid "" @@ -38351,9 +41484,9 @@ msgid "" msgstr "" msgid "" -":issue:`46968`: Check for the existence of the \"sys/auxv.h\" header in :mod:" -"`faulthandler` to avoid compilation problems in systems where this header " -"doesn't exist. Patch by Pablo Galindo" +":issue:`46968`: Check for the existence of the \"sys/auxv.h\" header " +"in :mod:`faulthandler` to avoid compilation problems in systems where this " +"header doesn't exist. Patch by Pablo Galindo" msgstr "" msgid "" @@ -38383,13 +41516,13 @@ msgid "" msgstr "" msgid "" -":issue:`46829`: Deprecate passing a message into :meth:`asyncio.Future." -"cancel` and :meth:`asyncio.Task.cancel`" +":issue:`46829`: Deprecate passing a message " +"into :meth:`asyncio.Future.cancel` and :meth:`asyncio.Task.cancel`" msgstr "" msgid "" -":issue:`46993`: Speed up :class:`bytearray` creation from :class:`list` and :" -"class:`tuple` by 40%. Patch by Kumar Aditya." +":issue:`46993`: Speed up :class:`bytearray` creation from :class:`list` " +"and :class:`tuple` by 40%. Patch by Kumar Aditya." msgstr "" msgid "" @@ -38398,8 +41531,8 @@ msgid "" msgstr "" msgid "" -":issue:`46944`: Speed up throwing exception in generator with :c:macro:" -"`METH_FASTCALL` calling convention. Patch by Kumar Aditya." +":issue:`46944`: Speed up throwing exception in generator " +"with :c:macro:`METH_FASTCALL` calling convention. Patch by Kumar Aditya." msgstr "" msgid "" @@ -38408,9 +41541,9 @@ msgid "" msgstr "" msgid "" -":issue:`46841`: Use inline caching for :opcode:`!PRECALL` and :opcode:" -"`CALL`, and remove the internal machinery for managing the (now unused) non-" -"inline caches." +":issue:`46841`: Use inline caching for :opcode:`!PRECALL` " +"and :opcode:`CALL`, and remove the internal machinery for managing the (now " +"unused) non-inline caches." msgstr "" msgid "" @@ -38423,9 +41556,10 @@ msgid "" msgstr "" msgid "" -":issue:`43721`: Fix docstrings of :attr:`~property.getter`, :attr:`~property." -"setter`, and :attr:`~property.deleter` to clarify that they create a new " -"copy of the property." +":issue:`43721`: Fix docstrings " +"of :attr:`~property.getter`, :attr:`~property.setter`, " +"and :attr:`~property.deleter` to clarify that they create a new copy of the " +"property." msgstr "" msgid ":issue:`43224`: Make grammar changes required for PEP 646." @@ -38440,8 +41574,8 @@ msgid "" msgstr "" msgid "" -":issue:`47167`: Allow overriding a future compliance check in :class:" -"`asyncio.Task`." +":issue:`47167`: Allow overriding a future compliance check " +"in :class:`asyncio.Task`." msgstr "" msgid "" @@ -38483,15 +41617,17 @@ msgid "" msgstr "" msgid "" -":issue:`47099`: All :exc:`URLError` exception messages raised in :class:" -"`urllib.request.URLopener` now contain a colon between ``ftp error`` and the " -"rest of the message. Previously, :func:`~urllib.request.URLopener.open_ftp` " -"missed the colon. Patch by Oleg Iarygin." +":issue:`47099`: All :exc:`URLError` exception messages raised " +"in :class:`urllib.request.URLopener` now contain a colon between ``ftp " +"error`` and the rest of the message. " +"Previously, :func:`~urllib.request.URLopener.open_ftp` missed the colon. " +"Patch by Oleg Iarygin." msgstr "" msgid "" -":issue:`47099`: Exception chaining is changed from :func:`Exception." -"with_traceback`/:func:`sys.exc_info` to :pep:`3134`. Patch by Oleg Iarygin." +":issue:`47099`: Exception chaining is changed " +"from :func:`Exception.with_traceback`/:func:`sys.exc_info` to :pep:`3134`. " +"Patch by Oleg Iarygin." msgstr "" msgid "" @@ -38511,9 +41647,9 @@ msgid "" msgstr "" msgid "" -":issue:`42885`: Optimize :func:`re.search`, :func:`re.split`, :func:`re." -"findall`, :func:`re.finditer` and :func:`re.sub` for regular expressions " -"starting with ``\\A`` or ``^``." +":issue:`42885`: " +"Optimize :func:`re.search`, :func:`re.split`, :func:`re.findall`, :func:`re.finditer` " +"and :func:`re.sub` for regular expressions starting with ``\\A`` or ``^``." msgstr "" msgid "" @@ -38521,16 +41657,16 @@ msgid "" msgstr "" msgid "" -":issue:`47067`: Optimize calling ``GenericAlias`` objects by using :pep:" -"`590` ``vectorcall`` and by replacing ``PyObject_SetAttrString`` with " -"``PyObject_SetAttr``." +":issue:`47067`: Optimize calling ``GenericAlias`` objects by " +"using :pep:`590` ``vectorcall`` and by replacing ``PyObject_SetAttrString`` " +"with ``PyObject_SetAttr``." msgstr "" msgid "" -":issue:`28080`: Add the *metadata_encoding* parameter in the :class:`zipfile." -"ZipFile` constructor and the ``--metadata-encoding`` option in the :mod:" -"`zipfile` CLI to allow reading zipfiles using non-standard codecs to encode " -"the filenames within the archive." +":issue:`28080`: Add the *metadata_encoding* parameter in " +"the :class:`zipfile.ZipFile` constructor and the ``--metadata-encoding`` " +"option in the :mod:`zipfile` CLI to allow reading zipfiles using non-" +"standard codecs to encode the filenames within the archive." msgstr "" msgid "" @@ -38662,8 +41798,8 @@ msgid "" msgstr "" msgid "" -":issue:`46994`: Accept explicit contextvars.Context in :func:`asyncio." -"create_task` and :meth:`asyncio.loop.create_task`." +":issue:`46994`: Accept explicit contextvars.Context " +"in :func:`asyncio.create_task` and :meth:`asyncio.loop.create_task`." msgstr "" msgid "" @@ -38691,21 +41827,23 @@ msgid "" msgstr "" msgid "" -":issue:`46955`: Expose :class:`asyncio.base_events.Server` as :class:" -"`asyncio.Server`. Patch by Stefan Zabka." +":issue:`46955`: Expose :class:`asyncio.base_events.Server` " +"as :class:`asyncio.Server`. Patch by Stefan Zabka." msgstr "" msgid "" -":issue:`23325`: The :mod:`signal` module no longer assumes that :const:" -"`~signal.SIG_IGN` and :const:`~signal.SIG_DFL` are small int singletons." +":issue:`23325`: The :mod:`signal` module no longer assumes " +"that :const:`~signal.SIG_IGN` and :const:`~signal.SIG_DFL` are small int " +"singletons." msgstr "" msgid ":issue:`46932`: Update bundled libexpat to 2.4.7" msgstr "" msgid "" -":issue:`46933`: The :mod:`pwd` module is now optional. :func:`os.path." -"expanduser` returns the path when the :mod:`pwd` module is not available." +":issue:`46933`: The :mod:`pwd` module is now " +"optional. :func:`os.path.expanduser` returns the path when the :mod:`pwd` " +"module is not available." msgstr "" msgid "" @@ -38719,20 +41857,20 @@ msgid "" msgstr "" msgid "" -":issue:`46805`: Added raw datagram socket functions for asyncio: :meth:" -"`~asyncio.AbstractEventLoop.sock_sendto`, :meth:`~asyncio.AbstractEventLoop." -"sock_recvfrom` and :meth:`~asyncio.AbstractEventLoop.sock_recvfrom_into`." +":issue:`46805`: Added raw datagram socket functions for " +"asyncio: :meth:`~asyncio.AbstractEventLoop.sock_sendto`, :meth:`~asyncio.AbstractEventLoop.sock_recvfrom` " +"and :meth:`~asyncio.AbstractEventLoop.sock_recvfrom_into`." msgstr "" msgid "" ":issue:`46644`: No longer require valid typeforms to be callable. This " -"allows :data:`typing.Annotated` to wrap :data:`typing.ParamSpecArgs` and :" -"data:`dataclasses.InitVar`. Patch by Gregory Beauregard." +"allows :data:`typing.Annotated` to wrap :data:`typing.ParamSpecArgs` " +"and :data:`dataclasses.InitVar`. Patch by Gregory Beauregard." msgstr "" msgid "" -":issue:`46581`: Brings :class:`ParamSpec` propagation for :class:" -"`GenericAlias` in line with :class:`Concatenate` (and others)." +":issue:`46581`: Brings :class:`ParamSpec` propagation " +"for :class:`GenericAlias` in line with :class:`Concatenate` (and others)." msgstr "" msgid "" @@ -38746,8 +41884,9 @@ msgid "" "customizing the *posix_prefix* or *nt* install scheme in a way that is not " "compatible with the install scheme used in virtual environments are " "encouraged not to customize the *venv* schemes. When Python itself runs in a " -"virtual environment, :func:`sysconfig.get_default_scheme` and :func:" -"`sysconfig.get_preferred_scheme` with ``key=\"prefix\"`` returns *venv*." +"virtual environment, :func:`sysconfig.get_default_scheme` " +"and :func:`sysconfig.get_preferred_scheme` with ``key=\"prefix\"`` returns " +"*venv*." msgstr "" msgid ":issue:`43224`: Implement support for PEP 646 in typing.py." @@ -38773,8 +41912,8 @@ msgstr "" msgid "" ":issue:`46607`: Add :exc:`DeprecationWarning` to :class:`!" "LegacyInterpolation`, deprecated in the docstring since Python 3.2. Will be " -"removed in Python 3.13. Use :class:`BasicInterpolation` or :class:" -"`ExtendedInterpolation` instead." +"removed in Python 3.13. Use :class:`BasicInterpolation` " +"or :class:`ExtendedInterpolation` instead." msgstr "" msgid "" @@ -38810,8 +41949,8 @@ msgid ":issue:`40296`: Fix supporting generic aliases in :mod:`pydoc`." msgstr "" msgid "" -":issue:`20392`: Fix inconsistency with uppercase file extensions in :meth:" -"`MimeTypes.guess_type`. Patch by Kumar Aditya." +":issue:`20392`: Fix inconsistency with uppercase file extensions " +"in :meth:`MimeTypes.guess_type`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -38838,13 +41977,13 @@ msgid "" msgstr "" msgid "" -":issue:`44859`: Raise more accurate and :pep:`249` compatible exceptions in :" -"mod:`sqlite3`." +":issue:`44859`: Raise more accurate and :pep:`249` compatible exceptions " +"in :mod:`sqlite3`." msgstr "" msgid "" -"Raise :exc:`~sqlite3.InterfaceError` instead of :exc:`~sqlite3." -"ProgrammingError` for ``SQLITE_MISUSE`` errors." +"Raise :exc:`~sqlite3.InterfaceError` instead " +"of :exc:`~sqlite3.ProgrammingError` for ``SQLITE_MISUSE`` errors." msgstr "" msgid "" @@ -38871,15 +42010,15 @@ msgid "" msgstr "" msgid "" -":issue:`41930`: Add :meth:`~sqlite3.Connection.serialize` and :meth:" -"`~sqlite3.Connection.deserialize` support to :mod:`sqlite3`. Patch by Erlend " -"E. Aasland." +":issue:`41930`: Add :meth:`~sqlite3.Connection.serialize` " +"and :meth:`~sqlite3.Connection.deserialize` support to :mod:`sqlite3`. Patch " +"by Erlend E. Aasland." msgstr "" msgid "" -":issue:`33178`: Added :class:`ctypes.BigEndianUnion` and :class:`ctypes." -"LittleEndianUnion` classes, as originally documented in the library docs but " -"not yet implemented." +":issue:`33178`: Added :class:`ctypes.BigEndianUnion` " +"and :class:`ctypes.LittleEndianUnion` classes, as originally documented in " +"the library docs but not yet implemented." msgstr "" msgid "" @@ -38900,8 +42039,9 @@ msgid ":issue:`47126`: Update PEP URLs to :pep:`676`'s new canonical form." msgstr "" msgid "" -":issue:`47040`: Clarified the old Python versions compatibility note of :" -"func:`binascii.crc32` / :func:`zlib.adler32` / :func:`zlib.crc32` functions." +":issue:`47040`: Clarified the old Python versions compatibility note " +"of :func:`binascii.crc32` / :func:`zlib.adler32` / :func:`zlib.crc32` " +"functions." msgstr "" msgid ":issue:`46033`: Clarify ``for`` statement execution in its doc." @@ -38927,16 +42067,16 @@ msgid "" msgstr "" msgid "" -":issue:`47205`: Skip test for :func:`~os.sched_getaffinity` and :func:`~os." -"sched_setaffinity` error case on FreeBSD." +":issue:`47205`: Skip test for :func:`~os.sched_getaffinity` " +"and :func:`~os.sched_setaffinity` error case on FreeBSD." msgstr "" msgid ":issue:`46126`: Restore 'descriptions' when running tests internally." msgstr "" msgid "" -":issue:`47104`: Rewrite :func:`asyncio.to_thread` tests to use :class:" -"`unittest.IsolatedAsyncioTestCase`." +":issue:`47104`: Rewrite :func:`asyncio.to_thread` tests to " +"use :class:`unittest.IsolatedAsyncioTestCase`." msgstr "" msgid "" @@ -39033,8 +42173,8 @@ msgid ":issue:`46907`: Update Windows installer to use SQLite 3.38.1." msgstr "" msgid "" -":issue:`44549`: Update bzip2 to 1.0.8 in Windows builds to mitigate :cve:" -"`2016-3189` and :cve:`2019-12900`." +":issue:`44549`: Update bzip2 to 1.0.8 in Windows builds to " +"mitigate :cve:`2016-3189` and :cve:`2019-12900`." msgstr "" msgid "" @@ -39080,8 +42220,8 @@ msgstr "" msgid "" ":issue:`46850`: Remove the private undocumented function " -"``_PyEval_CallTracing()`` from the C API. Call the public :func:`sys." -"call_tracing` function instead. Patch by Victor Stinner." +"``_PyEval_CallTracing()`` from the C API. Call the " +"public :func:`sys.call_tracing` function instead. Patch by Victor Stinner." msgstr "" msgid "" @@ -39109,8 +42249,9 @@ msgid "``_PyEval_SetAsyncGenFinalizer()``" msgstr "" msgid "" -"Call the public :func:`sys.get_asyncgen_hooks` and :func:`sys." -"set_asyncgen_hooks` functions instead. Patch by Victor Stinner." +"Call the public :func:`sys.get_asyncgen_hooks` " +"and :func:`sys.set_asyncgen_hooks` functions instead. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -39120,9 +42261,8 @@ msgstr "" msgid "" ":issue:`46906`: Add new functions to pack and unpack C double (serialize and " -"deserialize): :c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:" -"`PyFloat_Pack8`, :c:func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` and :c:" -"func:`PyFloat_Unpack8`. Patch by Victor Stinner." +"deserialize): :c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`, :c:func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` " +"and :c:func:`PyFloat_Unpack8`. Patch by Victor Stinner." msgstr "" msgid "Python 3.11.0 alpha 6" @@ -39160,8 +42300,8 @@ msgid "" msgstr "" msgid "" -":issue:`46841`: Add more detailed specialization failure stats for :opcode:" -"`COMPARE_OP` followed by :opcode:`EXTENDED_ARG`." +":issue:`46841`: Add more detailed specialization failure stats " +"for :opcode:`COMPARE_OP` followed by :opcode:`EXTENDED_ARG`." msgstr "" msgid "" @@ -39171,8 +42311,8 @@ msgid "" msgstr "" msgid "" -":issue:`46841`: Use inline caching for :opcode:`LOAD_ATTR`, :opcode:" -"`LOAD_METHOD`, and :opcode:`STORE_ATTR`." +":issue:`46841`: Use inline caching " +"for :opcode:`LOAD_ATTR`, :opcode:`LOAD_METHOD`, and :opcode:`STORE_ATTR`." msgstr "" msgid ":issue:`46841`: Use inline cache for :opcode:`BINARY_SUBSCR`." @@ -39191,8 +42331,9 @@ msgstr "" msgid "" ":issue:`46845`: Reduces dict size by removing hash value from hash table " -"when all inserted keys are Unicode. For example, ``sys.getsizeof(dict." -"fromkeys(\"abcdefg\"))`` becomes 272 bytes from 352 bytes on 64bit platform." +"when all inserted keys are Unicode. For example, " +"``sys.getsizeof(dict.fromkeys(\"abcdefg\"))`` becomes 272 bytes from 352 " +"bytes on 64bit platform." msgstr "" msgid ":issue:`46841`: Use inline cache for :opcode:`LOAD_GLOBAL`." @@ -39224,8 +42365,8 @@ msgid "" msgstr "" msgid "" -":issue:`46841`: Store :opcode:`BINARY_OP` caches inline using a new :opcode:" -"`CACHE` instruction." +":issue:`46841`: Store :opcode:`BINARY_OP` caches inline using a " +"new :opcode:`CACHE` instruction." msgstr "" msgid ":issue:`45107`: Specialize ``LOAD_METHOD`` for instances with a dict." @@ -39237,8 +42378,8 @@ msgid "" msgstr "" msgid "" -":issue:`46729`: Add number of sub-exceptions to :meth:`BaseException." -"__str__`." +":issue:`46729`: Add number of sub-exceptions " +"to :meth:`BaseException.__str__`." msgstr "" msgid "" @@ -39311,8 +42452,8 @@ msgid "" msgstr "" msgid "" -":issue:`46072`: Add more detailed specialization failure statistics for :" -"opcode:`BINARY_OP`." +":issue:`46072`: Add more detailed specialization failure statistics " +"for :opcode:`BINARY_OP`." msgstr "" msgid "" @@ -39332,8 +42473,8 @@ msgid "" msgstr "" msgid "" -":issue:`46702`: Specialize :opcode:`UNPACK_SEQUENCE` for :class:`tuple` and :" -"class:`list` unpackings." +":issue:`46702`: Specialize :opcode:`UNPACK_SEQUENCE` for :class:`tuple` " +"and :class:`list` unpackings." msgstr "" msgid "" @@ -39348,8 +42489,8 @@ msgid "" msgstr "" msgid "" -":issue:`40479`: Add a missing call to ``va_end()`` in ``Modules/_hashopenssl." -"c``." +":issue:`40479`: Add a missing call to ``va_end()`` in ``Modules/" +"_hashopenssl.c``." msgstr "" msgid "" @@ -39370,9 +42511,9 @@ msgid "" msgstr "" msgid "" -":issue:`30496`: Fixed a minor portability issue in the implementation of :c:" -"func:`PyLong_FromLong`, and added a fast path for single-digit integers to :" -"c:func:`PyLong_FromLongLong`." +":issue:`30496`: Fixed a minor portability issue in the implementation " +"of :c:func:`PyLong_FromLong`, and added a fast path for single-digit " +"integers to :c:func:`PyLong_FromLongLong`." msgstr "" msgid "" @@ -39387,8 +42528,8 @@ msgstr "" msgid "" ":issue:`46848`: For performance, use the optimized string-searching " -"implementations from :meth:`~bytes.find` and :meth:`~bytes.rfind` for :meth:" -"`~mmap.find` and :meth:`~mmap.rfind`." +"implementations from :meth:`~bytes.find` and :meth:`~bytes.rfind` " +"for :meth:`~mmap.find` and :meth:`~mmap.rfind`." msgstr "" msgid "" @@ -39397,8 +42538,8 @@ msgid "" msgstr "" msgid "" -":issue:`44886`: Inherit asyncio proactor datagram transport from :class:" -"`asyncio.DatagramTransport`." +":issue:`44886`: Inherit asyncio proactor datagram transport " +"from :class:`asyncio.DatagramTransport`." msgstr "" msgid "" @@ -39436,10 +42577,11 @@ msgid "" msgstr "" msgid "" -":issue:`46756`: Fix a bug in :meth:`urllib.request.HTTPPasswordMgr." -"find_user_password` and :meth:`urllib.request.HTTPPasswordMgrWithPriorAuth." -"is_authenticated` which allowed to bypass authorization. For example, access " -"to URI ``example.org/foobar`` was allowed if the user was authorized for URI " +":issue:`46756`: Fix a bug " +"in :meth:`urllib.request.HTTPPasswordMgr.find_user_password` " +"and :meth:`urllib.request.HTTPPasswordMgrWithPriorAuth.is_authenticated` " +"which allowed to bypass authorization. For example, access to URI " +"``example.org/foobar`` was allowed if the user was authorized for URI " "``example.org/foo``." msgstr "" @@ -39500,17 +42642,19 @@ msgid "" msgstr "" msgid "" -":issue:`46659`: The :class:`calendar.LocaleTextCalendar` and :class:" -"`calendar.LocaleHTMLCalendar` classes now use :func:`locale.getlocale`, " -"instead of using :func:`locale.getdefaultlocale`, if no locale is specified. " -"Patch by Victor Stinner." +":issue:`46659`: The :class:`calendar.LocaleTextCalendar` " +"and :class:`calendar.LocaleHTMLCalendar` classes now " +"use :func:`locale.getlocale`, instead of " +"using :func:`locale.getdefaultlocale`, if no locale is specified. Patch by " +"Victor Stinner." msgstr "" msgid "" ":issue:`46659`: The :func:`locale.getdefaultlocale` function is deprecated " -"and will be removed in Python 3.13. Use :func:`locale.setlocale`, :func:" -"`locale.getpreferredencoding(False) ` and :func:" -"`locale.getlocale` functions instead. Patch by Victor Stinner." +"and will be removed in Python 3.13. " +"Use :func:`locale.setlocale`, :func:`locale.getpreferredencoding(False) " +"` and :func:`locale.getlocale` functions " +"instead. Patch by Victor Stinner." msgstr "" msgid "" @@ -39519,16 +42663,16 @@ msgid "" msgstr "" msgid "" -":issue:`45948`: Fixed a discrepancy in the C implementation of the :mod:`xml." -"etree.ElementTree` module. Now, instantiating an :class:`xml.etree." -"ElementTree.XMLParser` with a ``target=None`` keyword provides a default :" -"class:`xml.etree.ElementTree.TreeBuilder` target as the Python " -"implementation does." +":issue:`45948`: Fixed a discrepancy in the C implementation of " +"the :mod:`xml.etree.ElementTree` module. Now, instantiating " +"an :class:`xml.etree.ElementTree.XMLParser` with a ``target=None`` keyword " +"provides a default :class:`xml.etree.ElementTree.TreeBuilder` target as the " +"Python implementation does." msgstr "" msgid "" -":issue:`46626`: Expose Linux's ``IP_BIND_ADDRESS_NO_PORT`` option in :mod:" -"`socket`." +":issue:`46626`: Expose Linux's ``IP_BIND_ADDRESS_NO_PORT`` option " +"in :mod:`socket`." msgstr "" msgid "" @@ -39548,8 +42692,8 @@ msgid ":issue:`46400`: expat: Update libexpat from 2.4.1 to 2.4.4" msgstr "" msgid "" -":issue:`46556`: Deprecate undocumented support for using a :class:`pathlib." -"Path` object as a context manager." +":issue:`46556`: Deprecate undocumented support for using " +"a :class:`pathlib.Path` object as a context manager." msgstr "" msgid "" @@ -39568,15 +42712,15 @@ msgid "" msgstr "" msgid "" -":issue:`46333`: The :meth:`__eq__` and :meth:`__hash__` methods of :class:" -"`typing.ForwardRef` now honor the ``module`` parameter of :class:`typing." -"ForwardRef`. Forward references from different modules are now " -"differentiated." +":issue:`46333`: The :meth:`__eq__` and :meth:`__hash__` methods " +"of :class:`typing.ForwardRef` now honor the ``module`` parameter " +"of :class:`typing.ForwardRef`. Forward references from different modules are " +"now differentiated." msgstr "" msgid "" -":issue:`46246`: Add missing ``__slots__`` to ``importlib.metadata." -"DeprecatedList``. Patch by Arie Bovenberg." +":issue:`46246`: Add missing ``__slots__`` to " +"``importlib.metadata.DeprecatedList``. Patch by Arie Bovenberg." msgstr "" msgid "" @@ -39601,9 +42745,9 @@ msgid "" msgstr "" msgid "" -":issue:`44953`: Calling ``operator.itemgetter`` objects and ``operator." -"attrgetter`` objects is now faster due to use of the vectorcall calling " -"convention." +":issue:`44953`: Calling ``operator.itemgetter`` objects and " +"``operator.attrgetter`` objects is now faster due to use of the vectorcall " +"calling convention." msgstr "" msgid "" @@ -39619,14 +42763,14 @@ msgstr "" msgid "" ":issue:`41086`: Make the :class:`configparser.ConfigParser` constructor " -"raise :exc:`TypeError` if the ``interpolation`` parameter is not of type :" -"class:`!configparser.Interpolation`" +"raise :exc:`TypeError` if the ``interpolation`` parameter is not of " +"type :class:`!configparser.Interpolation`" msgstr "" msgid "" -":issue:`29418`: Implement :func:`inspect.ismethodwrapper` and fix :func:" -"`inspect.isroutine` for cases where methodwrapper is given. Patch by Hakan " -"Çelik." +":issue:`29418`: Implement :func:`inspect.ismethodwrapper` and " +"fix :func:`inspect.isroutine` for cases where methodwrapper is given. Patch " +"by Hakan Çelik." msgstr "" msgid "" @@ -39648,8 +42792,8 @@ msgid "" msgstr "" msgid "" -":issue:`46760`: Remove bytecode offsets from expected values in test." -"test_dis module. Reduces the obstacles to modifying the VM or compiler." +":issue:`46760`: Remove bytecode offsets from expected values in " +"test.test_dis module. Reduces the obstacles to modifying the VM or compiler." msgstr "" msgid "" @@ -39692,8 +42836,8 @@ msgstr "" msgid "" ":issue:`46608`: Exclude marshalled-frozen data if deep-freezing to save 300 " -"KB disk space. This includes adding a new ``is_package`` field to :c:struct:" -"`_frozen`. Patch by Kumar Aditya." +"KB disk space. This includes adding a new ``is_package`` field " +"to :c:struct:`_frozen`. Patch by Kumar Aditya." msgstr "" msgid "" @@ -39751,8 +42895,8 @@ msgstr "" msgid "" ":issue:`45459`: Rename ``Include/buffer.h`` header file to ``Include/" -"pybuffer.h`` to avoid conflicts with projects having an existing ``buffer." -"h`` header file. Patch by Victor Stinner." +"pybuffer.h`` to avoid conflicts with projects having an existing " +"``buffer.h`` header file. Patch by Victor Stinner." msgstr "" msgid "" @@ -39789,20 +42933,20 @@ msgstr "" msgid "" ":issue:`44977`: The delegation of :func:`int` to :meth:`__trunc__` is now " "deprecated. Calling ``int(a)`` when ``type(a)`` implements :meth:`__trunc__` " -"but not :meth:`__int__` or :meth:`__index__` now raises a :exc:" -"`DeprecationWarning`." +"but not :meth:`__int__` or :meth:`__index__` now raises " +"a :exc:`DeprecationWarning`." msgstr "" msgid "" -":issue:`46458`: Reorder code emitted by the compiler for a :keyword:`try`-:" -"keyword:`except` block so that the :keyword:`else` block's code immediately " -"follows the :keyword:`try` body (without a jump). This is more optimal for " -"the happy path." +":issue:`46458`: Reorder code emitted by the compiler for " +"a :keyword:`try`-:keyword:`except` block so that the :keyword:`else` block's " +"code immediately follows the :keyword:`try` body (without a jump). This is " +"more optimal for the happy path." msgstr "" msgid "" -":issue:`46527`: Allow passing ``iterable`` as a keyword argument to :func:" -"`enumerate` again. Patch by Jelle Zijlstra." +":issue:`46527`: Allow passing ``iterable`` as a keyword argument " +"to :func:`enumerate` again. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -39833,8 +42977,8 @@ msgid "" msgstr "" msgid "" -":issue:`46431`: Improve error message on invalid calls to :meth:" -"`BaseExceptionGroup.__new__`." +":issue:`46431`: Improve error message on invalid calls " +"to :meth:`BaseExceptionGroup.__new__`." msgstr "" msgid "" @@ -39843,16 +42987,17 @@ msgid "" msgstr "" msgid "" -":issue:`46481`: Speed up calls to :meth:`weakref.ref.__call__` by using the :" -"pep:`590` ``vectorcall`` calling convention. Patch by Donghee Na." +":issue:`46481`: Speed up calls to :meth:`weakref.ref.__call__` by using " +"the :pep:`590` ``vectorcall`` calling convention. Patch by Donghee Na." msgstr "" msgid "" ":issue:`46417`: Fix a race condition on setting a type ``__bases__`` " "attribute: the internal function ``add_subclass()`` now gets the " -"``PyTypeObject.tp_subclasses`` member after calling :c:func:" -"`PyWeakref_NewRef` which can trigger a garbage collection which can " -"indirectly modify ``PyTypeObject.tp_subclasses``. Patch by Victor Stinner." +"``PyTypeObject.tp_subclasses`` member after " +"calling :c:func:`PyWeakref_NewRef` which can trigger a garbage collection " +"which can indirectly modify ``PyTypeObject.tp_subclasses``. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -39896,8 +43041,8 @@ msgid "" msgstr "" msgid "" -":issue:`46361`: Ensure that \"small\" integers created by :meth:`int." -"from_bytes` and :class:`decimal.Decimal` are properly cached." +":issue:`46361`: Ensure that \"small\" integers created " +"by :meth:`int.from_bytes` and :class:`decimal.Decimal` are properly cached." msgstr "" msgid "" @@ -39922,13 +43067,13 @@ msgstr "" msgid "" ":issue:`44024`: Improve the :exc:`TypeError` message for non-string second " -"arguments passed to the built-in functions :func:`getattr` and :func:" -"`hasattr`. Patch by Géry Ogam." +"arguments passed to the built-in functions :func:`getattr` " +"and :func:`hasattr`. Patch by Géry Ogam." msgstr "" msgid "" -":issue:`46624`: Restore support for non-integer arguments of :func:`random." -"randrange` and :func:`random.randint`." +":issue:`46624`: Restore support for non-integer arguments " +"of :func:`random.randrange` and :func:`random.randint`." msgstr "" msgid "" @@ -39946,13 +43091,13 @@ msgid "" msgstr "" msgid "" -":issue:`46544`: Don't leak ``x`` & ``uspace`` intermediate vars in :class:" -"`textwrap.TextWrapper`." +":issue:`46544`: Don't leak ``x`` & ``uspace`` intermediate vars " +"in :class:`textwrap.TextWrapper`." msgstr "" msgid "" -":issue:`46487`: Add the ``get_write_buffer_limits`` method to :class:" -"`asyncio.transports.WriteTransport` and to the SSL transport." +":issue:`46487`: Add the ``get_write_buffer_limits`` method " +"to :class:`asyncio.transports.WriteTransport` and to the SSL transport." msgstr "" msgid "" @@ -39973,9 +43118,9 @@ msgid "" msgstr "" msgid "" -":issue:`46510`: Add missing test for :class:`types.TracebackType` and :class:" -"`types.FrameType`. Calculate them directly from the caught exception without " -"calling :func:`sys.exc_info`." +":issue:`46510`: Add missing test for :class:`types.TracebackType` " +"and :class:`types.FrameType`. Calculate them directly from the caught " +"exception without calling :func:`sys.exc_info`." msgstr "" msgid "" @@ -39984,20 +43129,20 @@ msgid "" msgstr "" msgid "" -":issue:`46483`: Remove :meth:`~object.__class_getitem__` from :class:" -"`pathlib.PurePath` as this class was not supposed to be generic." +":issue:`46483`: Remove :meth:`~object.__class_getitem__` " +"from :class:`pathlib.PurePath` as this class was not supposed to be generic." msgstr "" msgid "" -":issue:`46436`: Fix command-line option ``-d``/``--directory`` in module :" -"mod:`http.server` which is ignored when combined with command-line option " -"``--cgi``. Patch by Géry Ogam." +":issue:`46436`: Fix command-line option ``-d``/``--directory`` in " +"module :mod:`http.server` which is ignored when combined with command-line " +"option ``--cgi``. Patch by Géry Ogam." msgstr "" msgid "" ":issue:`41403`: Make :meth:`mock.patch` raise a :exc:`TypeError` with a " -"relevant error message on invalid arg. Previously it allowed a cryptic :exc:" -"`AttributeError` to escape." +"relevant error message on invalid arg. Previously it allowed a " +"cryptic :exc:`AttributeError` to escape." msgstr "" msgid "" @@ -40015,14 +43160,15 @@ msgid "" msgstr "" msgid "" -":issue:`46469`: :mod:`asyncio` generic classes now return :class:`types." -"GenericAlias` in ``__class_getitem__`` instead of the same class." +":issue:`46469`: :mod:`asyncio` generic classes now " +"return :class:`types.GenericAlias` in ``__class_getitem__`` instead of the " +"same class." msgstr "" msgid "" ":issue:`41906`: Support passing filter instances in the ``filters`` values " -"of ``handlers`` and ``loggers`` in the dictionary passed to :func:`logging." -"config.dictConfig`." +"of ``handlers`` and ``loggers`` in the dictionary passed " +"to :func:`logging.config.dictConfig`." msgstr "" msgid "" @@ -40031,9 +43177,9 @@ msgid "" msgstr "" msgid "" -":issue:`46434`: :mod:`pdb` now gracefully handles ``help`` when :attr:" -"`~module.__doc__` is missing, for example when run with pregenerated " -"optimized ``.pyc`` files." +":issue:`46434`: :mod:`pdb` now gracefully handles ``help`` " +"when :attr:`~module.__doc__` is missing, for example when run with " +"pregenerated optimized ``.pyc`` files." msgstr "" msgid "" @@ -40080,8 +43226,8 @@ msgstr "" msgid "" ":issue:`46242`: Improve error message when creating a new :class:`enum.Enum` " -"type subclassing an existing ``Enum`` with ``_member_names_`` using :meth:" -"`enum.Enum.__call__`." +"type subclassing an existing ``Enum`` with ``_member_names_`` " +"using :meth:`enum.Enum.__call__`." msgstr "" msgid "" @@ -40111,17 +43257,17 @@ msgid "" msgstr "" msgid "" -":issue:`46080`: Fix exception in argparse help text generation if a :class:" -"`argparse.BooleanOptionalAction` argument's default is ``argparse.SUPPRESS`` " -"and it has ``help`` specified. Patch by Felix Fontein." +":issue:`46080`: Fix exception in argparse help text generation if " +"a :class:`argparse.BooleanOptionalAction` argument's default is " +"``argparse.SUPPRESS`` and it has ``help`` specified. Patch by Felix Fontein." msgstr "" msgid "" -":issue:`44791`: Fix substitution of :class:`~typing.ParamSpec` in :data:" -"`~typing.Concatenate` with different parameter expressions. Substitution " -"with a list of types returns now a tuple of types. Substitution with " -"``Concatenate`` returns now a ``Concatenate`` with concatenated lists of " -"arguments." +":issue:`44791`: Fix substitution of :class:`~typing.ParamSpec` " +"in :data:`~typing.Concatenate` with different parameter expressions. " +"Substitution with a list of types returns now a tuple of types. Substitution " +"with ``Concatenate`` returns now a ``Concatenate`` with concatenated lists " +"of arguments." msgstr "" msgid "" @@ -40131,10 +43277,10 @@ msgstr "" msgid "" ":issue:`43478`: Mocks can no longer be provided as the specs for other " -"Mocks. As a result, an already-mocked object cannot be passed to ``mock." -"Mock()``. This can uncover bugs in tests since these Mock-derived Mocks will " -"always pass certain tests (e.g. isinstance) and builtin assert functions (e." -"g. assert_called_once_with) will unconditionally pass." +"Mocks. As a result, an already-mocked object cannot be passed to " +"``mock.Mock()``. This can uncover bugs in tests since these Mock-derived " +"Mocks will always pass certain tests (e.g. isinstance) and builtin assert " +"functions (e.g. assert_called_once_with) will unconditionally pass." msgstr "" msgid "" @@ -40404,8 +43550,8 @@ msgid ":issue:`46085`: Fix iterator cache mechanism of :class:`OrderedDict`." msgstr "" msgid "" -":issue:`46055`: Speed up shifting operation involving integers less than :c:" -"macro:`PyLong_BASE`. Patch by Xinhang Xu." +":issue:`46055`: Speed up shifting operation involving integers less " +"than :c:macro:`PyLong_BASE`. Patch by Xinhang Xu." msgstr "" msgid "" @@ -40414,9 +43560,9 @@ msgid "" msgstr "" msgid "" -":issue:`46107`: Fix bug where :meth:`ExceptionGroup.split` and :meth:" -"`ExceptionGroup.subgroup` did not copy the exception group's ``__note__`` " -"field to the parts." +":issue:`46107`: Fix bug where :meth:`ExceptionGroup.split` " +"and :meth:`ExceptionGroup.subgroup` did not copy the exception group's " +"``__note__`` field to the parts." msgstr "" msgid "" @@ -40479,8 +43625,8 @@ msgid "" msgstr "" msgid "" -":issue:`46031`: Add :opcode:`POP_JUMP_IF_NOT_NONE` and :opcode:" -"`POP_JUMP_IF_NONE` opcodes to speed up conditional jumps." +":issue:`46031`: Add :opcode:`POP_JUMP_IF_NOT_NONE` " +"and :opcode:`POP_JUMP_IF_NONE` opcodes to speed up conditional jumps." msgstr "" msgid ":issue:`45654`: Deepfreeze :mod:`runpy`, patch by Kumar Aditya." @@ -40542,13 +43688,13 @@ msgid "" msgstr "" msgid "" -":issue:`46307`: Add :meth:`string.Template.is_valid` and :meth:`string." -"Template.get_identifiers` methods." +":issue:`46307`: Add :meth:`string.Template.is_valid` " +"and :meth:`string.Template.get_identifiers` methods." msgstr "" msgid "" -":issue:`46306`: Assume that :class:`types.CodeType` always has :attr:`types." -"CodeType.co_firstlineno` in :mod:`doctest`." +":issue:`46306`: Assume that :class:`types.CodeType` always " +"has :attr:`types.CodeType.co_firstlineno` in :mod:`doctest`." msgstr "" msgid "" @@ -40563,18 +43709,19 @@ msgid "" msgstr "" msgid "" -":issue:`46244`: Removed ``__slots__`` from :class:`typing.ParamSpec` and :" -"class:`typing.TypeVar`. They served no purpose. Patch by Arie Bovenberg." +":issue:`46244`: Removed ``__slots__`` from :class:`typing.ParamSpec` " +"and :class:`typing.TypeVar`. They served no purpose. Patch by Arie Bovenberg." msgstr "" msgid "" -":issue:`46278`: Reflect ``context`` argument in ``AbstractEventLoop." -"call_*()`` methods. Loop implementations already support it." +":issue:`46278`: Reflect ``context`` argument in " +"``AbstractEventLoop.call_*()`` methods. Loop implementations already support " +"it." msgstr "" msgid "" -":issue:`46269`: Remove special-casing of ``__new__`` in :meth:`enum.Enum." -"__dir__`." +":issue:`46269`: Remove special-casing of ``__new__`` " +"in :meth:`enum.Enum.__dir__`." msgstr "" msgid ":issue:`46266`: Improve day constants in :mod:`calendar`." @@ -40599,8 +43746,8 @@ msgid "" msgstr "" msgid "" -":issue:`46239`: Improve error message when importing :mod:`asyncio." -"windows_events` on non-Windows." +":issue:`46239`: Improve error message when " +"importing :mod:`asyncio.windows_events` on non-Windows." msgstr "" msgid "" @@ -40613,8 +43760,8 @@ msgid "" msgstr "" msgid "" -":issue:`37295`: Add fast path for ``0 <= k <= n <= 67`` for :func:`math." -"comb`." +":issue:`37295`: Add fast path for ``0 <= k <= n <= 67`` " +"for :func:`math.comb`." msgstr "" msgid ":issue:`46176`: Adding the ``MAP_STACK`` constant for the mmap module." @@ -40626,8 +43773,8 @@ msgid "" msgstr "" msgid "" -":issue:`45321`: Added missing error codes to module ``xml.parsers.expat." -"errors``." +":issue:`45321`: Added missing error codes to module " +"``xml.parsers.expat.errors``." msgstr "" msgid "" @@ -40641,9 +43788,9 @@ msgid "" msgstr "" msgid "" -":issue:`37578`: Add *include_hidden* parameter to :func:`~glob.glob` and :" -"func:`~glob.iglob` to match hidden files and directories when using special " -"characters like ``*``, ``**``, ``?`` and ``[]``." +":issue:`37578`: Add *include_hidden* parameter to :func:`~glob.glob` " +"and :func:`~glob.iglob` to match hidden files and directories when using " +"special characters like ``*``, ``**``, ``?`` and ``[]``." msgstr "" msgid "" @@ -40669,8 +43816,9 @@ msgstr "" msgid "" ":issue:`22047`: Calling :meth:`add_argument_group` on an argument group is " -"deprecated. Calling :meth:`add_argument_group` or :meth:" -"`add_mutually_exclusive_group` on a mutually exclusive group is deprecated." +"deprecated. Calling :meth:`add_argument_group` " +"or :meth:`add_mutually_exclusive_group` on a mutually exclusive group is " +"deprecated." msgstr "" msgid "" @@ -40686,9 +43834,9 @@ msgid "" msgstr "" msgid "" -":issue:`45615`: Functions in the :mod:`traceback` module raise :exc:" -"`TypeError` rather than :exc:`AttributeError` when an exception argument is " -"not of type :exc:`BaseException`." +":issue:`45615`: Functions in the :mod:`traceback` module " +"raise :exc:`TypeError` rather than :exc:`AttributeError` when an exception " +"argument is not of type :exc:`BaseException`." msgstr "" msgid ":issue:`16594`: Add allow allow_reuse_port flag in socketserver." @@ -40700,11 +43848,12 @@ msgid "" msgstr "" msgid "" -":issue:`46032`: The ``registry()`` method of :func:`functools." -"singledispatch` functions checks now the first argument or the first " -"parameter annotation and raises a TypeError if it is not supported. " -"Previously unsupported \"types\" were ignored (e.g. ``typing.List[int]``) or " -"caused an error at calling time (e.g. ``list[int]``)." +":issue:`46032`: The ``registry()`` method " +"of :func:`functools.singledispatch` functions checks now the first argument " +"or the first parameter annotation and raises a TypeError if it is not " +"supported. Previously unsupported \"types\" were ignored (e.g. " +"``typing.List[int]``) or caused an error at calling time (e.g. " +"``list[int]``)." msgstr "" msgid "" @@ -40752,8 +43901,8 @@ msgid "" msgstr "" msgid "" -":issue:`25066`: Added a :meth:`__repr__` method to :class:`multiprocessing." -"Event` objects, patch by Kumar Aditya." +":issue:`25066`: Added a :meth:`__repr__` method " +"to :class:`multiprocessing.Event` objects, patch by Kumar Aditya." msgstr "" msgid "" @@ -40762,15 +43911,15 @@ msgid "" msgstr "" msgid "" -":issue:`44092`: Fetch across rollback no longer raises :exc:`~sqlite3." -"InterfaceError`. Instead we leave it to the SQLite library to handle these " -"cases. Patch by Erlend E. Aasland." +":issue:`44092`: Fetch across rollback no longer " +"raises :exc:`~sqlite3.InterfaceError`. Instead we leave it to the SQLite " +"library to handle these cases. Patch by Erlend E. Aasland." msgstr "" msgid "" -":issue:`42413`: Replace ``concurrent.futures.TimeoutError`` and ``asyncio." -"TimeoutError`` with builtin :exc:`TimeoutError`, keep these names as " -"deprecated aliases." +":issue:`42413`: Replace ``concurrent.futures.TimeoutError`` and " +"``asyncio.TimeoutError`` with builtin :exc:`TimeoutError`, keep these names " +"as deprecated aliases." msgstr "" msgid ":issue:`46196`: Document method :meth:`cmd.Cmd.columnize`." @@ -40782,8 +43931,8 @@ msgid "" msgstr "" msgid "" -":issue:`46109`: Extracted ``importlib.resources`` and ``importlib.resources." -"abc`` documentation into separate files." +":issue:`46109`: Extracted ``importlib.resources`` and " +"``importlib.resources.abc`` documentation into separate files." msgstr "" msgid "" @@ -40804,18 +43953,18 @@ msgid "" msgstr "" msgid "" -":issue:`46262`: Cover ``ValueError`` path in tests for :meth:`enum.Flag." -"_missing_`." +":issue:`46262`: Cover ``ValueError`` path in tests " +"for :meth:`enum.Flag._missing_`." msgstr "" msgid "" -":issue:`46150`: Now ``fakename`` in ``test_pathlib.PosixPathTest." -"test_expanduser`` is checked to be non-existent." +":issue:`46150`: Now ``fakename`` in " +"``test_pathlib.PosixPathTest.test_expanduser`` is checked to be non-existent." msgstr "" msgid "" -":issue:`46129`: Rewrite ``asyncio.locks`` tests with :class:`unittest." -"IsolatedAsyncioTestCase` usage." +":issue:`46129`: Rewrite ``asyncio.locks`` tests " +"with :class:`unittest.IsolatedAsyncioTestCase` usage." msgstr "" msgid "" @@ -40838,8 +43987,8 @@ msgid "" ":issue:`44133`: When Python is built without :option:`--enable-shared`, the " "``python`` program is now linked to object files, rather than being linked " "to the Python static library (libpython.a), to make sure that all symbols " -"are exported. Previously, the linker omitted some symbols like the :c:func:" -"`Py_FrozenMain` function. Patch by Victor Stinner." +"are exported. Previously, the linker omitted some symbols like " +"the :c:func:`Py_FrozenMain` function. Patch by Victor Stinner." msgstr "" msgid "" @@ -40853,8 +44002,8 @@ msgid "" msgstr "" msgid "" -":issue:`45723`: Fixed a regression in ``configure`` check for :func:`select." -"epoll`." +":issue:`45723`: Fixed a regression in ``configure`` check " +"for :func:`select.epoll`." msgstr "" msgid "" @@ -40912,18 +44061,17 @@ msgid "" msgstr "" msgid "" -":issue:`46140`: :c:func:`PyBuffer_GetPointer`, :c:func:" -"`PyBuffer_FromContiguous`, :c:func:`PyBuffer_ToContiguous` and :c:func:" -"`PyMemoryView_FromBuffer` now take buffer info by ``const Py_buffer *`` " -"instead of ``Py_buffer *``, as they do not need mutability. :c:func:" -"`PyBuffer_FromContiguous` also now takes the source buffer as ``const void " -"*``, and similarly :c:func:`PyBuffer_GetPointer` takes the strides as " -"``const Py_ssize_t *``." +":issue:`46140`: :c:func:`PyBuffer_GetPointer`, :c:func:`PyBuffer_FromContiguous`, :c:func:`PyBuffer_ToContiguous` " +"and :c:func:`PyMemoryView_FromBuffer` now take buffer info by ``const " +"Py_buffer *`` instead of ``Py_buffer *``, as they do not need " +"mutability. :c:func:`PyBuffer_FromContiguous` also now takes the source " +"buffer as ``const void *``, and similarly :c:func:`PyBuffer_GetPointer` " +"takes the strides as ``const Py_ssize_t *``." msgstr "" msgid "" -":issue:`45855`: Document that the *no_block* argument to :c:func:" -"`PyCapsule_Import` is a no-op now." +":issue:`45855`: Document that the *no_block* argument " +"to :c:func:`PyCapsule_Import` is a no-op now." msgstr "" msgid "" @@ -40994,11 +44142,11 @@ msgstr "" msgid "" ":issue:`45711`: The three values of ``exc_info`` are now always consistent " "with each other. In particular, the ``type`` and ``traceback`` fields are " -"now derived from the exception instance. This impacts the return values of :" -"func:`sys.exc_info` and :c:func:`PyErr_GetExcInfo()` if the exception " -"instance is modified while the exception is handled, as well as :c:func:" -"`PyErr_SetExcInfo()`, which now ignores the ``type`` and ``traceback`` " -"arguments provided to it." +"now derived from the exception instance. This impacts the return values " +"of :func:`sys.exc_info` and :c:func:`PyErr_GetExcInfo()` if the exception " +"instance is modified while the exception is handled, as well " +"as :c:func:`PyErr_SetExcInfo()`, which now ignores the ``type`` and " +"``traceback`` arguments provided to it." msgstr "" msgid "" @@ -41056,8 +44204,8 @@ msgstr "" msgid "" ":issue:`45826`: Fixed a crash when calling ``.with_traceback(None)`` on " -"``NameError``. This occurs internally in ``unittest.TestCase." -"assertRaises()``." +"``NameError``. This occurs internally in " +"``unittest.TestCase.assertRaises()``." msgstr "" msgid "" @@ -41128,8 +44276,8 @@ msgstr "" msgid "" ":issue:`45582`: Path calculation (known as ``getpath``) has been " "reimplemented as a frozen Python module. This should have no visible impact, " -"but may affect calculation of all paths referenced in :mod:`sys` and :mod:" -"`sysconfig`." +"but may affect calculation of all paths referenced in :mod:`sys` " +"and :mod:`sysconfig`." msgstr "" msgid "" @@ -41138,8 +44286,9 @@ msgid "" msgstr "" msgid "" -":issue:`27946`: Fix possible crash when getting an attribute of :class:`xml." -"etree.ElementTree.Element` simultaneously with replacing the ``attrib`` dict." +":issue:`27946`: Fix possible crash when getting an attribute " +"of :class:`xml.etree.ElementTree.Element` simultaneously with replacing the " +"``attrib`` dict." msgstr "" msgid "" @@ -41155,8 +44304,8 @@ msgid "" msgstr "" msgid "" -":issue:`13236`: :class:`unittest.TextTestResult` and :class:`unittest." -"TextTestRunner` flush now the output stream more often." +":issue:`13236`: :class:`unittest.TextTestResult` " +"and :class:`unittest.TextTestRunner` flush now the output stream more often." msgstr "" msgid "" @@ -41182,8 +44331,8 @@ msgid "" msgstr "" msgid "" -":issue:`45803`: Added missing kw_only parameter to dataclasses." -"make_dataclass()." +":issue:`45803`: Added missing kw_only parameter to " +"dataclasses.make_dataclass()." msgstr "" msgid "" @@ -41225,15 +44374,15 @@ msgid "" msgstr "" msgid "" -":issue:`45754`: Fix a regression in Python 3.11a1 and 3.11a2 where :mod:" -"`sqlite3` incorrectly would use ``SQLITE_LIMIT_LENGTH`` when checking SQL " -"statement lengths. Now, ``SQLITE_LIMIT_SQL_LENGTH`` is used. Patch by Erlend " -"E. Aasland." +":issue:`45754`: Fix a regression in Python 3.11a1 and 3.11a2 " +"where :mod:`sqlite3` incorrectly would use ``SQLITE_LIMIT_LENGTH`` when " +"checking SQL statement lengths. Now, ``SQLITE_LIMIT_SQL_LENGTH`` is used. " +"Patch by Erlend E. Aasland." msgstr "" msgid "" -":issue:`45766`: Added *proportional* option to :meth:`statistics." -"linear_regression`." +":issue:`45766`: Added *proportional* option " +"to :meth:`statistics.linear_regression`." msgstr "" msgid "" @@ -41242,8 +44391,8 @@ msgid "" msgstr "" msgid "" -":issue:`45757`: Fix bug where :mod:`dis` produced an incorrect oparg when :" -"opcode:`EXTENDED_ARG` is followed by an opcode that does not use its " +":issue:`45757`: Fix bug where :mod:`dis` produced an incorrect oparg " +"when :opcode:`EXTENDED_ARG` is followed by an opcode that does not use its " "argument." msgstr "" @@ -41256,9 +44405,9 @@ msgstr "" msgid "" ":issue:`45703`: When a namespace package is imported before another module " "from the same namespace is created/installed in a different :data:`sys.path` " -"location while the program is running, calling the :func:`importlib." -"invalidate_caches` function will now also guarantee the new module is " -"noticed." +"location while the program is running, calling " +"the :func:`importlib.invalidate_caches` function will now also guarantee the " +"new module is noticed." msgstr "" msgid ":issue:`45535`: Improve output of ``dir()`` with Enums." @@ -41306,10 +44455,10 @@ msgid "" msgstr "" msgid "" -":issue:`44733`: Add ``max_tasks_per_child`` to :class:`concurrent.futures." -"ProcessPoolExecutor`. This allows users to specify the maximum number of " -"tasks a single process should execute before the process needs to be " -"restarted." +":issue:`44733`: Add ``max_tasks_per_child`` " +"to :class:`concurrent.futures.ProcessPoolExecutor`. This allows users to " +"specify the maximum number of tasks a single process should execute before " +"the process needs to be restarted." msgstr "" msgid "" @@ -41320,8 +44469,8 @@ msgstr "" msgid "" ":issue:`43498`: Avoid a possible *\"RuntimeError: dictionary changed size " -"during iteration\"* when adjusting the process count of :class:" -"`ProcessPoolExecutor`." +"during iteration\"* when adjusting the process count " +"of :class:`ProcessPoolExecutor`." msgstr "" msgid "" @@ -41377,9 +44526,9 @@ msgid "" msgstr "" msgid "" -":issue:`43905`: Expanded :func:`~dataclasses.astuple` and :func:" -"`~dataclasses.asdict` docs, warning about deepcopy being applied and " -"providing a workaround." +":issue:`43905`: Expanded :func:`~dataclasses.astuple` " +"and :func:`~dataclasses.asdict` docs, warning about deepcopy being applied " +"and providing a workaround." msgstr "" msgid "" @@ -41388,8 +44537,8 @@ msgid "" msgstr "" msgid "" -":issue:`19460`: Add new Test for ``Lib/email/mime/nonmultipart.py::" -"MIMENonMultipart``." +":issue:`19460`: Add new Test for ``Lib/email/mime/" +"nonmultipart.py::MIMENonMultipart``." msgstr "" msgid "" @@ -41409,8 +44558,8 @@ msgid "" msgstr "" msgid "" -":issue:`45701`: Add tests with ``tuple`` type with :func:`functools." -"lru_cache` to ``test_functools``." +":issue:`45701`: Add tests with ``tuple`` type " +"with :func:`functools.lru_cache` to ``test_functools``." msgstr "" msgid "" @@ -41564,8 +44713,8 @@ msgid "" msgstr "" msgid "" -":issue:`45763`: The build dependencies for :mod:`zlib`, :mod:`bz2`, and :mod:" -"`lzma` are now detected by ``configure``." +":issue:`45763`: The build dependencies for :mod:`zlib`, :mod:`bz2`, " +"and :mod:`lzma` are now detected by ``configure``." msgstr "" msgid "" @@ -41712,8 +44861,8 @@ msgid "" msgstr "" msgid "" -":issue:`45445`: Python now fails to initialize if it finds an invalid :" -"option:`-X` option in the command line. Patch by Pablo Galindo." +":issue:`45445`: Python now fails to initialize if it finds an " +"invalid :option:`-X` option in the command line. Patch by Pablo Galindo." msgstr "" msgid "" @@ -41771,8 +44920,8 @@ msgid "" msgstr "" msgid "" -":issue:`45292`: Implement :pep:`654`. Add :class:`ExceptionGroup` and :class:" -"`BaseExceptionGroup`. Update traceback display code." +":issue:`45292`: Implement :pep:`654`. Add :class:`ExceptionGroup` " +"and :class:`BaseExceptionGroup`. Update traceback display code." msgstr "" msgid "" @@ -41843,9 +44992,9 @@ msgid ":issue:`45574`: Fix warning about ``print_escape`` being unused." msgstr "" msgid "" -":issue:`45581`: :meth:`sqlite3.connect` now correctly raises :exc:" -"`MemoryError` if the underlying SQLite API signals memory error. Patch by " -"Erlend E. Aasland." +":issue:`45581`: :meth:`sqlite3.connect` now correctly " +"raises :exc:`MemoryError` if the underlying SQLite API signals memory error. " +"Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -41865,10 +45014,10 @@ msgstr "" msgid "" ":issue:`35673`: Improve the introspectability of the ``__loader__`` " -"attribute for namespace packages. :class:`importlib.machinery." -"NamespaceLoader` is now public, and implements the :class:`importlib.abc." -"InspectLoader` interface. ``_NamespaceLoader`` is kept for backward " -"compatibility." +"attribute for namespace " +"packages. :class:`importlib.machinery.NamespaceLoader` is now public, and " +"implements the :class:`importlib.abc.InspectLoader` interface. " +"``_NamespaceLoader`` is kept for backward compatibility." msgstr "" msgid "" @@ -41878,10 +45027,11 @@ msgid "" msgstr "" msgid "" -":issue:`45475`: Reverted optimization of iterating :class:`gzip.GzipFile`, :" -"class:`bz2.BZ2File`, and :class:`lzma.LZMAFile` (see :issue:`43787`) because " -"it caused regression when user iterate them without having reference of " -"them. Patch by Inada Naoki." +":issue:`45475`: Reverted optimization of " +"iterating :class:`gzip.GzipFile`, :class:`bz2.BZ2File`, " +"and :class:`lzma.LZMAFile` (see :issue:`43787`) because it caused regression " +"when user iterate them without having reference of them. Patch by Inada " +"Naoki." msgstr "" msgid "" @@ -41911,9 +45061,9 @@ msgid "" msgstr "" msgid "" -":issue:`45239`: Fixed :func:`email.utils.parsedate_tz` crashing with :exc:" -"`UnboundLocalError` on certain invalid input instead of returning ``None``. " -"Patch by Ben Hoyt." +":issue:`45239`: Fixed :func:`email.utils.parsedate_tz` crashing " +"with :exc:`UnboundLocalError` on certain invalid input instead of returning " +"``None``. Patch by Ben Hoyt." msgstr "" msgid "" @@ -41928,14 +45078,14 @@ msgid "" msgstr "" msgid "" -":issue:`45416`: Fix use of :class:`asyncio.Condition` with explicit :class:" -"`asyncio.Lock` objects, which was a regression due to removal of explicit " -"loop arguments. Patch by Joongi Kim." +":issue:`45416`: Fix use of :class:`asyncio.Condition` with " +"explicit :class:`asyncio.Lock` objects, which was a regression due to " +"removal of explicit loop arguments. Patch by Joongi Kim." msgstr "" msgid "" -":issue:`20028`: Empty escapechar/quotechar is not allowed when initializing :" -"class:`csv.Dialect`. Patch by Vajrasky Kok and Donghee Na." +":issue:`20028`: Empty escapechar/quotechar is not allowed when " +"initializing :class:`csv.Dialect`. Patch by Vajrasky Kok and Donghee Na." msgstr "" msgid "" @@ -41990,9 +45140,10 @@ msgid "" msgstr "" msgid "" -":issue:`45243`: Add :meth:`~sqlite3.Connection.setlimit` and :meth:`~sqlite3." -"Connection.getlimit` to :class:`sqlite3.Connection` for setting and getting " -"SQLite limits by connection basis. Patch by Erlend E. Aasland." +":issue:`45243`: Add :meth:`~sqlite3.Connection.setlimit` " +"and :meth:`~sqlite3.Connection.getlimit` to :class:`sqlite3.Connection` for " +"setting and getting SQLite limits by connection basis. Patch by Erlend E. " +"Aasland." msgstr "" msgid ":issue:`45320`: Removed from the :mod:`inspect` module:" @@ -42006,14 +45157,16 @@ msgid "" msgstr "" msgid "" -"the ``formatargspec`` function, deprecated since Python 3.5; use the :func:" -"`inspect.signature` function and :class:`Signature` object directly." +"the ``formatargspec`` function, deprecated since Python 3.5; use " +"the :func:`inspect.signature` function and :class:`Signature` object " +"directly." msgstr "" msgid "" "the undocumented ``Signature.from_builtin`` and ``Signature.from_function`` " -"functions, deprecated since Python 3.5; use the :meth:`Signature." -"from_callable() ` method instead." +"functions, deprecated since Python 3.5; use " +"the :meth:`Signature.from_callable() ` " +"method instead." msgstr "" msgid "" @@ -42037,8 +45190,8 @@ msgid "" msgstr "" msgid "" -":issue:`24139`: Add support for SQLite extended result codes in :exc:" -"`sqlite3.Error`. Patch by Erlend E. Aasland." +":issue:`24139`: Add support for SQLite extended result codes " +"in :exc:`sqlite3.Error`. Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -42048,14 +45201,14 @@ msgid "" msgstr "" msgid "" -":issue:`44547`: Implement ``Fraction.__int__``, so that a :class:`fractions." -"Fraction` instance ``f`` passes an ``isinstance(f, typing.SupportsInt)`` " -"check." +":issue:`44547`: Implement ``Fraction.__int__``, so that " +"a :class:`fractions.Fraction` instance ``f`` passes an ``isinstance(f, " +"typing.SupportsInt)`` check." msgstr "" msgid "" -":issue:`40321`: Adds support for HTTP 308 redirects to :mod:`urllib`. See :" -"rfc:`7538` for details. Patch by Jochem Schulenklopper." +":issue:`40321`: Adds support for HTTP 308 redirects to :mod:`urllib`. " +"See :rfc:`7538` for details. Patch by Jochem Schulenklopper." msgstr "" msgid "" @@ -42095,8 +45248,8 @@ msgid "" msgstr "" msgid "" -":issue:`45516`: Add protocol description to the :class:`importlib.abc." -"TraversableResources` documentation." +":issue:`45516`: Add protocol description to " +"the :class:`importlib.abc.TraversableResources` documentation." msgstr "" msgid "" @@ -42110,8 +45263,8 @@ msgid ":issue:`45449`: Add note about :pep:`585` in :mod:`collections.abc`." msgstr "" msgid "" -":issue:`45516`: Add protocol description to the :class:`importlib.abc." -"Traversable` documentation." +":issue:`45516`: Add protocol description to " +"the :class:`importlib.abc.Traversable` documentation." msgstr "" msgid "" @@ -42121,9 +45274,9 @@ msgid "" msgstr "" msgid "" -":issue:`45678`: Add tests for scenarios in which :class:`functools." -"singledispatchmethod` is stacked on top of a method that has already been " -"wrapped by two other decorators. Patch by Alex Waygood." +":issue:`45678`: Add tests for scenarios in " +"which :class:`functools.singledispatchmethod` is stacked on top of a method " +"that has already been wrapped by two other decorators. Patch by Alex Waygood." msgstr "" msgid ":issue:`45578`: Add tests for :func:`dis.distb`" @@ -42199,8 +45352,8 @@ msgid "" msgstr "" msgid "" -":issue:`45666`: Fix warning of ``swprintf`` and ``%s`` usage in ``_testembed." -"c``" +":issue:`45666`: Fix warning of ``swprintf`` and ``%s`` usage in " +"``_testembed.c``" msgstr "" msgid "" @@ -42324,13 +45477,14 @@ msgid "" msgstr "" msgid "" -":issue:`35134`: The non-limited API files ``cellobject.h``, ``classobject." -"h``, ``context.h``, ``funcobject.h``, ``genobject.h`` and ``longintrepr.h`` " -"have been moved to the ``Include/cpython`` directory. Moreover, the ``eval." -"h`` header file was removed. These files must not be included directly, as " -"they are already included in ``Python.h``: :ref:`Include Files `. If they have been included directly, consider including ``Python." -"h`` instead. Patch by Victor Stinner." +":issue:`35134`: The non-limited API files ``cellobject.h``, " +"``classobject.h``, ``context.h``, ``funcobject.h``, ``genobject.h`` and " +"``longintrepr.h`` have been moved to the ``Include/cpython`` directory. " +"Moreover, the ``eval.h`` header file was removed. These files must not be " +"included directly, as they are already included in " +"``Python.h``: :ref:`Include Files `. If they have been " +"included directly, consider including ``Python.h`` instead. Patch by Victor " +"Stinner." msgstr "" msgid "" @@ -42368,8 +45522,8 @@ msgid "" msgstr "" msgid "" -":issue:`45434`: ```` no longer includes the header files ````, ````, ```` and ```` when the " +":issue:`45434`: ```` no longer includes the header files " +"````, ````, ```` and ```` when the " "``Py_LIMITED_API`` macro is set to ``0x030b0000`` (Python 3.11) or higher. C " "extensions should explicitly include the header files after ``#include " "``. Patch by Victor Stinner." @@ -42410,9 +45564,9 @@ msgid "" msgstr "" msgid "" -":issue:`43760`: Add new :c:func:`PyThreadState_EnterTracing`, and :c:func:" -"`PyThreadState_LeaveTracing` functions to the limited C API to suspend and " -"resume tracing and profiling. Patch by Victor Stinner." +":issue:`43760`: Add new :c:func:`PyThreadState_EnterTracing`, " +"and :c:func:`PyThreadState_LeaveTracing` functions to the limited C API to " +"suspend and resume tracing and profiling. Patch by Victor Stinner." msgstr "" msgid "" @@ -42427,8 +45581,9 @@ msgid "*Release date: 2021-10-05*" msgstr "" msgid "" -":issue:`42278`: Replaced usage of :func:`tempfile.mktemp` with :class:" -"`~tempfile.TemporaryDirectory` to avoid a potential race condition." +":issue:`42278`: Replaced usage of :func:`tempfile.mktemp` " +"with :class:`~tempfile.TemporaryDirectory` to avoid a potential race " +"condition." msgstr "" msgid "" @@ -42488,16 +45643,18 @@ msgstr "" msgid "" ":issue:`45155`: :meth:`int.to_bytes` and :meth:`int.from_bytes` now take a " -"default value of ``\"big\"`` for the ``byteorder`` argument. :meth:`int." -"to_bytes` also takes a default value of ``1`` for the ``length`` argument." +"default value of ``\"big\"`` for the ``byteorder`` " +"argument. :meth:`int.to_bytes` also takes a default value of ``1`` for the " +"``length`` argument." msgstr "" msgid "" ":issue:`44219`: Release the GIL while performing ``isatty`` system calls on " -"arbitrary file descriptors. In particular, this affects :func:`os.isatty`, :" -"func:`os.device_encoding` and :class:`io.TextIOWrapper`. By extension, :func:" -"`io.open` in text mode is also affected. This change solves a deadlock in :" -"func:`os.isatty`. Patch by Vincent Michel in :issue:`44219`." +"arbitrary file descriptors. In particular, this " +"affects :func:`os.isatty`, :func:`os.device_encoding` " +"and :class:`io.TextIOWrapper`. By extension, :func:`io.open` in text mode is " +"also affected. This change solves a deadlock in :func:`os.isatty`. Patch by " +"Vincent Michel in :issue:`44219`." msgstr "" msgid "" @@ -42540,10 +45697,10 @@ msgid "" msgstr "" msgid "" -":issue:`37330`: :func:`open`, :func:`io.open`, :func:`codecs.open` and :" -"class:`fileinput.FileInput` no longer accept ``'U'`` (\"universal newline\") " -"in the file mode. This flag was deprecated since Python 3.3. Patch by Victor " -"Stinner." +":issue:`37330`: :func:`open`, :func:`io.open`, :func:`codecs.open` " +"and :class:`fileinput.FileInput` no longer accept ``'U'`` (\"universal " +"newline\") in the file mode. This flag was deprecated since Python 3.3. " +"Patch by Victor Stinner." msgstr "" msgid "" @@ -42554,8 +45711,8 @@ msgid "" msgstr "" msgid "" -"(This issue impacted only the C code exception rendering, the :mod:" -"`traceback` module was using qualname already)." +"(This issue impacted only the C code exception rendering, " +"the :mod:`traceback` module was using qualname already)." msgstr "" msgid "" @@ -42576,9 +45733,9 @@ msgid "" msgstr "" msgid "" -":issue:`45020`: Add a new command line option, \"-X frozen_modules=[on|" -"off]\" to opt out of (or into) using optional frozen modules. This defaults " -"to \"on\" (or \"off\" if it's running out of the source tree)." +":issue:`45020`: Add a new command line option, \"-X frozen_modules=[on|off]" +"\" to opt out of (or into) using optional frozen modules. This defaults to " +"\"on\" (or \"off\" if it's running out of the source tree)." msgstr "" msgid "" @@ -42593,8 +45750,8 @@ msgid "" msgstr "" msgid "" -":issue:`45000`: A :exc:`SyntaxError` is now raised when trying to delete :" -"const:`__debug__`. Patch by Donghee Na." +":issue:`45000`: A :exc:`SyntaxError` is now raised when trying to " +"delete :const:`__debug__`. Patch by Donghee Na." msgstr "" msgid "" @@ -42610,20 +45767,20 @@ msgid "" msgstr "" msgid "" -":issue:`24234`: Implement the :meth:`__bytes__` special method on the :class:" -"`bytes` type, so a bytes object ``b`` passes an ``isinstance(b, typing." -"SupportsBytes)`` check." +":issue:`24234`: Implement the :meth:`__bytes__` special method on " +"the :class:`bytes` type, so a bytes object ``b`` passes an ``isinstance(b, " +"typing.SupportsBytes)`` check." msgstr "" msgid "" -":issue:`24234`: Implement the :meth:`__complex__` special method on the :" -"class:`complex` type, so a complex number ``z`` passes an ``isinstance(z, " -"typing.SupportsComplex)`` check." +":issue:`24234`: Implement the :meth:`__complex__` special method on " +"the :class:`complex` type, so a complex number ``z`` passes an " +"``isinstance(z, typing.SupportsComplex)`` check." msgstr "" msgid "" -":issue:`44954`: Fixed a corner case bug where the result of ``float." -"fromhex('0x.8p-1074')`` was rounded the wrong way." +":issue:`44954`: Fixed a corner case bug where the result of " +"``float.fromhex('0x.8p-1074')`` was rounded the wrong way." msgstr "" msgid "" @@ -42797,8 +45954,8 @@ msgid ":issue:`44732`: Rename ``types.Union`` to ``types.UnionType``." msgstr "" msgid "" -":issue:`44725`: Expose specialization stats in python via :func:`!_opcode." -"get_specialization_stats`." +":issue:`44725`: Expose specialization stats in python via :func:`!" +"_opcode.get_specialization_stats`." msgstr "" msgid "" @@ -42926,9 +46083,10 @@ msgid "" msgstr "" msgid "" -":issue:`44490`: :mod:`typing` now searches for type parameters in ``types." -"Union`` objects. ``get_type_hints`` will also properly resolve annotations " -"with nested ``types.Union`` objects. Patch provided by Yurii Karabas." +":issue:`44490`: :mod:`typing` now searches for type parameters in " +"``types.Union`` objects. ``get_type_hints`` will also properly resolve " +"annotations with nested ``types.Union`` objects. Patch provided by Yurii " +"Karabas." msgstr "" msgid "" @@ -42938,8 +46096,8 @@ msgid "" msgstr "" msgid "" -"Contributed by Pablo Galindo, Batuhan Taskaya and Ammar Askar as part of :" -"pep:`657`." +"Contributed by Pablo Galindo, Batuhan Taskaya and Ammar Askar as part " +"of :pep:`657`." msgstr "" msgid "" @@ -42971,10 +46129,10 @@ msgid "" msgstr "" msgid "" -":issue:`44523`: Remove the pass-through for :func:`hash` of :class:`weakref." -"proxy` objects to prevent unintended consequences when the original referred " -"object dies while the proxy is part of a hashable object. Patch by Pablo " -"Galindo." +":issue:`44523`: Remove the pass-through for :func:`hash` " +"of :class:`weakref.proxy` objects to prevent unintended consequences when " +"the original referred object dies while the proxy is part of a hashable " +"object. Patch by Pablo Galindo." msgstr "" msgid "" @@ -42993,10 +46151,10 @@ msgid "" msgstr "" msgid "" -":issue:`12022`: A :exc:`TypeError` is now raised instead of an :exc:" -"`AttributeError` in :keyword:`with` and :keyword:`async with` statements for " -"objects which do not support the :term:`context manager` or :term:" -"`asynchronous context manager` protocols correspondingly." +":issue:`12022`: A :exc:`TypeError` is now raised instead of " +"an :exc:`AttributeError` in :keyword:`with` and :keyword:`async with` " +"statements for objects which do not support the :term:`context manager` " +"or :term:`asynchronous context manager` protocols correspondingly." msgstr "" msgid "" @@ -43104,11 +46262,11 @@ msgid "" msgstr "" msgid "" -":issue:`43413`: Constructors of subclasses of some builtin classes (e.g. :" -"class:`tuple`, :class:`list`, :class:`frozenset`) no longer accept arbitrary " -"keyword arguments. [reverted in 3.11a4] Subclass of :class:`set` can now " -"define a ``__new__()`` method with additional keyword parameters without " -"overriding also ``__init__()``." +":issue:`43413`: Constructors of subclasses of some builtin classes " +"(e.g. :class:`tuple`, :class:`list`, :class:`frozenset`) no longer accept " +"arbitrary keyword arguments. [reverted in 3.11a4] Subclass of :class:`set` " +"can now define a ``__new__()`` method with additional keyword parameters " +"without overriding also ``__init__()``." msgstr "" msgid "" @@ -43297,17 +46455,17 @@ msgid "" msgstr "" msgid "" -":issue:`1596321`: Fix the :func:`threading._shutdown` function when the :mod:" -"`threading` module was imported first from a thread different than the main " -"thread: no longer log an error at Python exit." +":issue:`1596321`: Fix the :func:`threading._shutdown` function when " +"the :mod:`threading` module was imported first from a thread different than " +"the main thread: no longer log an error at Python exit." msgstr "" msgid "" -":issue:`45274`: Fix a race condition in the :meth:`Thread.join() ` method of the :mod:`threading` module. If the function is " -"interrupted by a signal and the signal handler raises an exception, make " -"sure that the thread remains in a consistent state to prevent a deadlock. " -"Patch by Victor Stinner." +":issue:`45274`: Fix a race condition in the :meth:`Thread.join() " +"` method of the :mod:`threading` module. If the " +"function is interrupted by a signal and the signal handler raises an " +"exception, make sure that the thread remains in a consistent state to " +"prevent a deadlock. Patch by Victor Stinner." msgstr "" msgid "" @@ -43330,9 +46488,9 @@ msgid "" msgstr "" msgid "" -":issue:`36674`: :meth:`unittest.TestCase.debug` raises now a :class:" -"`unittest.SkipTest` if the class or the test method are decorated with the " -"skipping decorator." +":issue:`36674`: :meth:`unittest.TestCase.debug` raises now " +"a :class:`unittest.SkipTest` if the class or the test method are decorated " +"with the skipping decorator." msgstr "" msgid "" @@ -43347,9 +46505,10 @@ msgid "" msgstr "" msgid "" -":issue:`45234`: Fixed a regression in :func:`~shutil.copyfile`, :func:" -"`~shutil.copy`, :func:`~shutil.copy2` raising :exc:`FileNotFoundError` when " -"source is a directory, which should raise :exc:`IsADirectoryError`" +":issue:`45234`: Fixed a regression " +"in :func:`~shutil.copyfile`, :func:`~shutil.copy`, :func:`~shutil.copy2` " +"raising :exc:`FileNotFoundError` when source is a directory, which should " +"raise :exc:`IsADirectoryError`" msgstr "" msgid "" @@ -43385,14 +46544,14 @@ msgstr "" msgid "" ":issue:`45173`: Remove from the :mod:`configparser` module: the :class:`!" -"SafeConfigParser` class, the :attr:`!filename` property of the :class:" -"`~configparser.ParsingError` class, the :meth:`!readfp` method of the :class:" -"`~configparser.ConfigParser` class, deprecated since Python 3.2." +"SafeConfigParser` class, the :attr:`!filename` property of " +"the :class:`~configparser.ParsingError` class, the :meth:`!readfp` method of " +"the :class:`~configparser.ConfigParser` class, deprecated since Python 3.2." msgstr "" msgid "" -":issue:`44987`: Pure ASCII strings are now normalized in constant time by :" -"func:`unicodedata.normalize`. Patch by Donghee Na." +":issue:`44987`: Pure ASCII strings are now normalized in constant time " +"by :func:`unicodedata.normalize`. Patch by Donghee Na." msgstr "" msgid "" @@ -43403,8 +46562,8 @@ msgid "" msgstr "" msgid "" -":issue:`45166`: :func:`typing.get_type_hints` now works with :data:`~typing." -"Final` wrapped in :class:`~typing.ForwardRef`." +":issue:`45166`: :func:`typing.get_type_hints` now works " +"with :data:`~typing.Final` wrapped in :class:`~typing.ForwardRef`." msgstr "" msgid ":issue:`45162`: Remove many old deprecated :mod:`unittest` features:" @@ -43421,8 +46580,8 @@ msgid "" msgstr "" msgid "" -"Ignored :meth:` TestLoader." -"loadTestsFromModule` parameter *use_load_tests*." +"Ignored :meth:` " +"TestLoader.loadTestsFromModule` parameter *use_load_tests*." msgstr "" msgid "Old alias ``_TextTestResult`` of :class:`~unittest.TextTestResult`." @@ -43438,9 +46597,9 @@ msgid "" msgstr "" msgid "" -":issue:`45132`: Remove :meth:`~object.__getitem__` methods of :class:`xml." -"dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` and :class:" -"`fileinput.FileInput`, deprecated since Python 3.9." +":issue:`45132`: Remove :meth:`~object.__getitem__` methods " +"of :class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` " +"and :class:`fileinput.FileInput`, deprecated since Python 3.9." msgstr "" msgid "" @@ -43459,11 +46618,11 @@ msgid "Use ``bdist_wheel`` (wheel packages) instead." msgstr "" msgid "" -":issue:`30856`: :class:`unittest.TestResult` methods :meth:`~unittest." -"TestResult.addFailure`, :meth:`~unittest.TestResult.addError`, :meth:" -"`~unittest.TestResult.addSkip` and :meth:`~unittest.TestResult.addSubTest` " -"are now called immediately after raising an exception in test or finishing a " -"subtest. Previously they were called only after finishing the test clean up." +":issue:`30856`: :class:`unittest.TestResult` " +"methods :meth:`~unittest.TestResult.addFailure`, :meth:`~unittest.TestResult.addError`, :meth:`~unittest.TestResult.addSkip` " +"and :meth:`~unittest.TestResult.addSubTest` are now called immediately after " +"raising an exception in test or finishing a subtest. Previously they were " +"called only after finishing the test clean up." msgstr "" msgid "" @@ -43481,9 +46640,9 @@ msgid "" msgstr "" msgid "" -":issue:`45081`: Fix issue when dataclasses that inherit from ``typing." -"Protocol`` subclasses have wrong ``__init__``. Patch provided by Yurii " -"Karabas." +":issue:`45081`: Fix issue when dataclasses that inherit from " +"``typing.Protocol`` subclasses have wrong ``__init__``. Patch provided by " +"Yurii Karabas." msgstr "" msgid "" @@ -43508,9 +46667,9 @@ msgid "" msgstr "" msgid "" -":issue:`45075`: Rename :meth:`traceback.StackSummary.format_frame` to :meth:" -"`traceback.StackSummary.format_frame_summary`. This method was added for " -"3.11 so it was not released yet." +":issue:`45075`: Rename :meth:`traceback.StackSummary.format_frame` " +"to :meth:`traceback.StackSummary.format_frame_summary`. This method was " +"added for 3.11 so it was not released yet." msgstr "" msgid "Updated code and docs to better distinguish frame and FrameSummary." @@ -43523,9 +46682,9 @@ msgid "" msgstr "" msgid "" -":issue:`41620`: :meth:`~unittest.TestCase.run` now always return a :class:" -"`~unittest.TestResult` instance. Previously it returned ``None`` if the test " -"class or method was decorated with a skipping decorator." +":issue:`41620`: :meth:`~unittest.TestCase.run` now always return " +"a :class:`~unittest.TestResult` instance. Previously it returned ``None`` if " +"the test class or method was decorated with a skipping decorator." msgstr "" msgid "" @@ -43534,8 +46693,8 @@ msgid "" msgstr "" msgid "" -":issue:`43913`: Fix bugs in cleaning up classes and modules in :mod:" -"`unittest`:" +":issue:`43913`: Fix bugs in cleaning up classes and modules " +"in :mod:`unittest`:" msgstr "" msgid "" @@ -43578,8 +46737,8 @@ msgid "" msgstr "" msgid "" -":issue:`45010`: Remove support of special method ``__div__`` in :mod:" -"`unittest.mock`. It is not used in Python 3." +":issue:`45010`: Remove support of special method ``__div__`` " +"in :mod:`unittest.mock`. It is not used in Python 3." msgstr "" msgid "" @@ -43588,9 +46747,9 @@ msgid "" msgstr "" msgid "" -":issue:`43613`: Improve the speed of :func:`gzip.compress` and :func:`gzip." -"decompress` by compressing and decompressing at once in memory instead of in " -"a streamed fashion." +":issue:`43613`: Improve the speed of :func:`gzip.compress` " +"and :func:`gzip.decompress` by compressing and decompressing at once in " +"memory instead of in a streamed fashion." msgstr "" msgid "" @@ -43612,9 +46771,9 @@ msgstr "" msgid "" ":issue:`44955`: Method :meth:`~unittest.TestResult.stopTestRun` is now " "always called in pair with method :meth:`~unittest.TestResult.startTestRun` " -"for :class:`~unittest.TestResult` objects implicitly created in :meth:" -"`~unittest.TestCase.run`. Previously it was not called for test methods and " -"classes decorated with a skipping decorator." +"for :class:`~unittest.TestResult` objects implicitly created " +"in :meth:`~unittest.TestCase.run`. Previously it was not called for test " +"methods and classes decorated with a skipping decorator." msgstr "" msgid "" @@ -43623,8 +46782,8 @@ msgid "" msgstr "" msgid "" -":issue:`44935`: :mod:`subprocess` on Solaris now also uses :func:`os." -"posix_spawn` for better performance." +":issue:`44935`: :mod:`subprocess` on Solaris now also " +"uses :func:`os.posix_spawn` for better performance." msgstr "" msgid "" @@ -43645,8 +46804,8 @@ msgstr "" msgid "" ":issue:`38956`: :class:`argparse.BooleanOptionalAction`'s default value is " -"no longer printed twice when used with :class:`argparse." -"ArgumentDefaultsHelpFormatter`." +"no longer printed twice when used " +"with :class:`argparse.ArgumentDefaultsHelpFormatter`." msgstr "" msgid "" @@ -43661,14 +46820,14 @@ msgstr "" msgid "" ":exc:`MemoryError` is now raised instead of :exc:`sqlite3.Warning` when " -"memory is not enough for encoding a statement to UTF-8 in ``Connection." -"__call__()`` and ``Cursor.execute()``." +"memory is not enough for encoding a statement to UTF-8 in " +"``Connection.__call__()`` and ``Cursor.execute()``." msgstr "" msgid "" ":exc:`UnicodEncodeError` is now raised instead of :exc:`sqlite3.Warning` " -"when the statement contains surrogate characters in ``Connection." -"__call__()`` and ``Cursor.execute()``." +"when the statement contains surrogate characters in " +"``Connection.__call__()`` and ``Cursor.execute()``." msgstr "" msgid "" @@ -43694,8 +46853,8 @@ msgstr "" msgid "" ":issue:`44849`: Fix the :func:`os.set_inheritable` function on FreeBSD 14 " -"for file descriptor opened with the :const:`~os.O_PATH` flag: ignore the :" -"const:`~errno.EBADF` error on ``ioctl()``, fallback on the ``fcntl()`` " +"for file descriptor opened with the :const:`~os.O_PATH` flag: ignore " +"the :const:`~errno.EBADF` error on ``ioctl()``, fallback on the ``fcntl()`` " "implementation. Patch by Victor Stinner." msgstr "" @@ -43712,8 +46871,8 @@ msgstr "" msgid "" ":issue:`44839`: :class:`MemoryError` raised in user-defined functions will " "now produce a ``MemoryError`` in :mod:`sqlite3`. :class:`OverflowError` will " -"now be converted to :class:`~sqlite3.DataError`. Previously :class:`~sqlite3." -"OperationalError` was produced in these cases." +"now be converted to :class:`~sqlite3.DataError`. " +"Previously :class:`~sqlite3.OperationalError` was produced in these cases." msgstr "" msgid "" @@ -43734,8 +46893,8 @@ msgid "" msgstr "" msgid "" -":issue:`27275`: :meth:`collections.OrderedDict.popitem` and :meth:" -"`collections.OrderedDict.pop` no longer call ``__getitem__`` and " +":issue:`27275`: :meth:`collections.OrderedDict.popitem` " +"and :meth:`collections.OrderedDict.pop` no longer call ``__getitem__`` and " "``__delitem__`` methods of the OrderedDict subclasses." msgstr "" @@ -43766,9 +46925,9 @@ msgid "" msgstr "" msgid "" -":issue:`44752`: :mod:`rcompleter` does not call :func:`getattr` on :class:" -"`property` objects to avoid the side-effect of evaluating the corresponding " -"method." +":issue:`44752`: :mod:`rcompleter` does not call :func:`getattr` " +"on :class:`property` objects to avoid the side-effect of evaluating the " +"corresponding method." msgstr "" msgid "" @@ -43777,10 +46936,10 @@ msgid "" msgstr "" msgid "" -":issue:`42378`: Fixes the issue with log file being overwritten when :class:" -"`logging.FileHandler` is used in :mod:`atexit` with *filemode* set to " -"``'w'``. Note this will cause the message in *atexit* not being logged if " -"the log stream is already closed due to shutdown of logging." +":issue:`42378`: Fixes the issue with log file being overwritten " +"when :class:`logging.FileHandler` is used in :mod:`atexit` with *filemode* " +"set to ``'w'``. Note this will cause the message in *atexit* not being " +"logged if the log stream is already closed due to shutdown of logging." msgstr "" msgid "" @@ -43795,8 +46954,8 @@ msgid "" msgstr "" msgid "" -":issue:`44666`: Fixed issue in :func:`compileall.compile_file` when ``sys." -"stdout`` is redirected. Patch by Stefan Hölzl." +":issue:`44666`: Fixed issue in :func:`compileall.compile_file` when " +"``sys.stdout`` is redirected. Patch by Stefan Hölzl." msgstr "" msgid "" @@ -43805,20 +46964,20 @@ msgid "" msgstr "" msgid "" -":issue:`44690`: Adopt *binacii.a2b_base64*'s strict mode in *base64." -"b64decode*." +":issue:`44690`: Adopt *binacii.a2b_base64*'s strict mode in " +"*base64.b64decode*." msgstr "" msgid "" -":issue:`42854`: Fixed a bug in the :mod:`!_ssl` module that was throwing :" -"exc:`OverflowError` when using :meth:`!_ssl._SSLSocket.write` and :meth:`!" -"_ssl._SSLSocket.read` for a big value of the ``len`` parameter. Patch by " -"Pablo Galindo." +":issue:`42854`: Fixed a bug in the :mod:`!_ssl` module that was " +"throwing :exc:`OverflowError` when using :meth:`!_ssl._SSLSocket.write` " +"and :meth:`!_ssl._SSLSocket.read` for a big value of the ``len`` parameter. " +"Patch by Pablo Galindo." msgstr "" msgid "" -":issue:`44686`: Replace ``unittest.mock._importer`` with ``pkgutil." -"resolve_name``." +":issue:`44686`: Replace ``unittest.mock._importer`` with " +"``pkgutil.resolve_name``." msgstr "" msgid "" @@ -43848,8 +47007,8 @@ msgid "" msgstr "" msgid "" -":issue:`40897`: Give priority to using the current class constructor in :" -"func:`inspect.signature`. Patch by Weipeng Hong." +":issue:`40897`: Give priority to using the current class constructor " +"in :func:`inspect.signature`. Patch by Weipeng Hong." msgstr "" msgid "" @@ -43859,8 +47018,9 @@ msgstr "" msgid "" ":issue:`44648`: Fixed wrong error being thrown by :func:`inspect.getsource` " -"when examining a class in the interactive session. Instead of :exc:" -"`TypeError`, it should be :exc:`OSError` with appropriate error message." +"when examining a class in the interactive session. Instead " +"of :exc:`TypeError`, it should be :exc:`OSError` with appropriate error " +"message." msgstr "" msgid "" @@ -43869,41 +47029,42 @@ msgid "" msgstr "" msgid "" -":issue:`44594`: Fix an edge case of :class:`ExitStack` and :class:" -"`AsyncExitStack` exception chaining. They will now match ``with`` block " -"behavior when ``__context__`` is explicitly set to ``None`` when the " -"exception is in flight." +":issue:`44594`: Fix an edge case of :class:`ExitStack` " +"and :class:`AsyncExitStack` exception chaining. They will now match " +"``with`` block behavior when ``__context__`` is explicitly set to ``None`` " +"when the exception is in flight." msgstr "" msgid "" ":issue:`42799`: In :mod:`fnmatch`, the cache size for compiled regex " "patterns (:func:`functools.lru_cache`) was bumped up from 256 to 32768, " -"affecting functions: :func:`fnmatch.fnmatch`, :func:`fnmatch.fnmatchcase`, :" -"func:`fnmatch.filter`." +"affecting " +"functions: :func:`fnmatch.fnmatch`, :func:`fnmatch.fnmatchcase`, :func:`fnmatch.filter`." msgstr "" msgid "" -":issue:`41928`: Update :func:`shutil.copyfile` to raise :exc:" -"`FileNotFoundError` instead of confusing :exc:`IsADirectoryError` when a " -"path ending with a :const:`os.path.sep` does not exist; :func:`shutil.copy` " -"and :func:`shutil.copy2` are also affected." +":issue:`41928`: Update :func:`shutil.copyfile` to " +"raise :exc:`FileNotFoundError` instead of confusing :exc:`IsADirectoryError` " +"when a path ending with a :const:`os.path.sep` does not " +"exist; :func:`shutil.copy` and :func:`shutil.copy2` are also affected." msgstr "" msgid "" -":issue:`44569`: Added the :func:`StackSummary.format_frame` function in :mod:" -"`traceback`. This allows users to customize the way individual lines are " -"formatted in tracebacks without re-implementing logic to handle recursive " -"tracebacks." +":issue:`44569`: Added the :func:`StackSummary.format_frame` function " +"in :mod:`traceback`. This allows users to customize the way individual lines " +"are formatted in tracebacks without re-implementing logic to handle " +"recursive tracebacks." msgstr "" msgid "" -":issue:`44566`: handle StopIteration subclass raised from @contextlib." -"contextmanager generator" +":issue:`44566`: handle StopIteration subclass raised from " +"@contextlib.contextmanager generator" msgstr "" msgid "" -":issue:`44558`: Make the implementation consistency of :func:`~operator." -"indexOf` between C and Python versions. Patch by Donghee Na." +":issue:`44558`: Make the implementation consistency " +"of :func:`~operator.indexOf` between C and Python versions. Patch by Donghee " +"Na." msgstr "" msgid "" @@ -43933,8 +47094,8 @@ msgid "" msgstr "" msgid "" -":issue:`43625`: Fix a bug in the detection of CSV file headers by :meth:`csv." -"Sniffer.has_header` and improve documentation of same." +":issue:`43625`: Fix a bug in the detection of CSV file headers " +"by :meth:`csv.Sniffer.has_header` and improve documentation of same." msgstr "" msgid ":issue:`44516`: Update vendored pip to 21.1.3" @@ -43958,10 +47119,10 @@ msgid "" msgstr "" msgid "" -":issue:`43977`: Set the proper :c:macro:`Py_TPFLAGS_MAPPING` and :c:macro:" -"`Py_TPFLAGS_SEQUENCE` flags for subclasses created before a parent has been " -"registered as a :class:`collections.abc.Mapping` or :class:`collections.abc." -"Sequence`." +":issue:`43977`: Set the proper :c:macro:`Py_TPFLAGS_MAPPING` " +"and :c:macro:`Py_TPFLAGS_SEQUENCE` flags for subclasses created before a " +"parent has been registered as a :class:`collections.abc.Mapping` " +"or :class:`collections.abc.Sequence`." msgstr "" msgid "" @@ -43975,11 +47136,11 @@ msgid "" msgstr "" msgid "" -":issue:`44471`: A :exc:`TypeError` is now raised instead of an :exc:" -"`AttributeError` in :meth:`contextlib.ExitStack.enter_context` and :meth:" -"`contextlib.AsyncExitStack.enter_async_context` for objects which do not " -"support the :term:`context manager` or :term:`asynchronous context manager` " -"protocols correspondingly." +":issue:`44471`: A :exc:`TypeError` is now raised instead of " +"an :exc:`AttributeError` in :meth:`contextlib.ExitStack.enter_context` " +"and :meth:`contextlib.AsyncExitStack.enter_async_context` for objects which " +"do not support the :term:`context manager` or :term:`asynchronous context " +"manager` protocols correspondingly." msgstr "" msgid "" @@ -44003,14 +47164,15 @@ msgid "" msgstr "" msgid "" -":issue:`44446`: Take into account that ``lineno`` might be ``None`` in :" -"class:`traceback.FrameSummary`." +":issue:`44446`: Take into account that ``lineno`` might be ``None`` " +"in :class:`traceback.FrameSummary`." msgstr "" msgid "" -":issue:`44439`: Fix in :meth:`bz2.BZ2File.write` / :meth:`lzma.LZMAFile." -"write` methods, when the input data is an object that supports the buffer " -"protocol, the file length may be wrong." +":issue:`44439`: Fix " +"in :meth:`bz2.BZ2File.write` / :meth:`lzma.LZMAFile.write` methods, when the " +"input data is an object that supports the buffer protocol, the file length " +"may be wrong." msgstr "" msgid "" @@ -44076,9 +47238,9 @@ msgid "" msgstr "" msgid "" -":issue:`44351`: Restore back :func:`parse_makefile` in ``distutils." -"sysconfig`` because it behaves differently than the similar implementation " -"in :mod:`sysconfig`." +":issue:`44351`: Restore back :func:`parse_makefile` in " +"``distutils.sysconfig`` because it behaves differently than the similar " +"implementation in :mod:`sysconfig`." msgstr "" msgid "" @@ -44087,8 +47249,8 @@ msgid "" msgstr "" msgid "" -":issue:`44357`: Added a function that returns cube root of the given number :" -"func:`math.cbrt`" +":issue:`44357`: Added a function that returns cube root of the given " +"number :func:`math.cbrt`" msgstr "" msgid "" @@ -44108,10 +47270,10 @@ msgid "" "expectations in older implementations and issuing deprecation warnings for " "these cases: A. ``EntryPoints`` objects are once again mutable, allowing " "for ``sort()`` and other list-based mutation operations. Avoid deprecation " -"warnings by casting to a mutable sequence (e.g. ``list(dist.entry_points)." -"sort()``). B. ``EntryPoints`` results once again allow for access by " -"index. To avoid deprecation warnings, cast the result to a Sequence " -"first (e.g. ``tuple(dist.entry_points)[0]``)." +"warnings by casting to a mutable sequence (e.g. " +"``list(dist.entry_points).sort()``). B. ``EntryPoints`` results once again " +"allow for access by index. To avoid deprecation warnings, cast the " +"result to a Sequence first (e.g. ``tuple(dist.entry_points)[0]``)." msgstr "" msgid "" @@ -44211,16 +47373,16 @@ msgid "" msgstr "" msgid "" -":issue:`44095`: :class:`zipfile.Path` now supports :attr:`zipfile.Path." -"stem`, :attr:`zipfile.Path.suffixes`, and :attr:`zipfile.Path.suffix` " -"attributes." +":issue:`44095`: :class:`zipfile.Path` now " +"supports :attr:`zipfile.Path.stem`, :attr:`zipfile.Path.suffixes`, " +"and :attr:`zipfile.Path.suffix` attributes." msgstr "" msgid "" -":issue:`44077`: It's now possible to receive the type of service (ToS), a.k." -"a. differentiated services (DS), a.k.a. differentiated services code point " -"(DSCP) and explicit congestion notification (ECN) IP header fields with " -"``socket.IP_RECVTOS``." +":issue:`44077`: It's now possible to receive the type of service (ToS), " +"a.k.a. differentiated services (DS), a.k.a. differentiated services code " +"point (DSCP) and explicit congestion notification (ECN) IP header fields " +"with ``socket.IP_RECVTOS``." msgstr "" msgid "" @@ -44253,8 +47415,9 @@ msgid "" msgstr "" msgid "" -":issue:`44061`: Fix regression in previous release when calling :func:" -"`pkgutil.iter_modules` with a list of :class:`pathlib.Path` objects" +":issue:`44061`: Fix regression in previous release when " +"calling :func:`pkgutil.iter_modules` with a list of :class:`pathlib.Path` " +"objects" msgstr "" msgid "" @@ -44330,16 +47493,16 @@ msgstr "" msgid "" ":issue:`43612`: :func:`zlib.compress` now accepts a wbits parameter which " "allows users to compress data as a raw deflate block without zlib headers " -"and trailers in one go. Previously this required instantiating a ``zlib." -"compressobj``. It also provides a faster alternative to ``gzip.compress`` " -"when wbits=31 is used." +"and trailers in one go. Previously this required instantiating a " +"``zlib.compressobj``. It also provides a faster alternative to " +"``gzip.compress`` when wbits=31 is used." msgstr "" msgid "" ":issue:`43392`: :func:`importlib._bootstrap._find_and_load` now implements a " "two-step check to avoid locking when modules have been already imported and " -"are ready. This improves performance of repeated calls to :func:`importlib." -"import_module` and :func:`importlib.__import__`." +"are ready. This improves performance of repeated calls " +"to :func:`importlib.import_module` and :func:`importlib.__import__`." msgstr "" msgid "" @@ -44348,9 +47511,10 @@ msgid "" msgstr "" msgid "" -":issue:`43234`: Prohibit passing non-:class:`concurrent.futures." -"ThreadPoolExecutor` executors to :meth:`loop.set_default_executor` following " -"a deprecation in Python 3.8. Patch by Illia Volochii." +":issue:`43234`: Prohibit passing " +"non-:class:`concurrent.futures.ThreadPoolExecutor` executors " +"to :meth:`loop.set_default_executor` following a deprecation in Python 3.8. " +"Patch by Illia Volochii." msgstr "" msgid "" @@ -44376,9 +47540,9 @@ msgid "" msgstr "" msgid "" -":issue:`43024`: Improve the help signature of :func:`traceback." -"print_exception`, :func:`traceback.format_exception` and :func:`traceback." -"format_exception_only`." +":issue:`43024`: Improve the help signature " +"of :func:`traceback.print_exception`, :func:`traceback.format_exception` " +"and :func:`traceback.format_exception_only`." msgstr "" msgid "" @@ -44394,8 +47558,8 @@ msgid "" msgstr "" msgid "" -":issue:`41818`: Soumendra Ganguly: add termios.tcgetwinsize(), termios." -"tcsetwinsize()." +":issue:`41818`: Soumendra Ganguly: add termios.tcgetwinsize(), " +"termios.tcsetwinsize()." msgstr "" msgid "" @@ -44415,13 +47579,14 @@ msgid "" msgstr "" msgid "" -":issue:`41730`: ``DeprecationWarning`` is now raised when importing :mod:" -"`tkinter.tix`, which has been deprecated in documentation since Python 3.6." +":issue:`41730`: ``DeprecationWarning`` is now raised when " +"importing :mod:`tkinter.tix`, which has been deprecated in documentation " +"since Python 3.6." msgstr "" msgid "" -":issue:`20684`: Remove unused ``_signature_get_bound_param`` function from :" -"mod:`inspect` - by Anthony Sottile." +":issue:`20684`: Remove unused ``_signature_get_bound_param`` function " +"from :mod:`inspect` - by Anthony Sottile." msgstr "" msgid "" @@ -44430,8 +47595,8 @@ msgid "" msgstr "" msgid "" -":issue:`32695`: The *compresslevel* and *preset* keyword arguments of :func:" -"`tarfile.open` are now both documented and tested." +":issue:`32695`: The *compresslevel* and *preset* keyword arguments " +"of :func:`tarfile.open` are now both documented and tested." msgstr "" msgid "" @@ -44440,9 +47605,9 @@ msgid "" msgstr "" msgid "" -":issue:`24391`: Improved reprs of :mod:`threading` synchronization objects: :" -"class:`~threading.Semaphore`, :class:`~threading.BoundedSemaphore`, :class:" -"`~threading.Event` and :class:`~threading.Barrier`." +":issue:`24391`: Improved reprs of :mod:`threading` synchronization " +"objects: :class:`~threading.Semaphore`, :class:`~threading.BoundedSemaphore`, :class:`~threading.Event` " +"and :class:`~threading.Barrier`." msgstr "" msgid "" @@ -44497,9 +47662,10 @@ msgid "" msgstr "" msgid "" -":issue:`38415`: Added missing behavior to :func:`contextlib." -"asynccontextmanager` to match :func:`contextlib.contextmanager` so decorated " -"functions can themselves be decorators." +":issue:`38415`: Added missing behavior " +"to :func:`contextlib.asynccontextmanager` to " +"match :func:`contextlib.contextmanager` so decorated functions can " +"themselves be decorators." msgstr "" msgid "" @@ -44508,8 +47674,9 @@ msgid "" msgstr "" msgid "" -":issue:`27513`: :func:`email.utils.getaddresses` now accepts :class:`email." -"header.Header` objects along with string values. Patch by Zackery Spytz." +":issue:`27513`: :func:`email.utils.getaddresses` now " +"accepts :class:`email.header.Header` objects along with string values. Patch " +"by Zackery Spytz." msgstr "" msgid "" @@ -44549,9 +47716,9 @@ msgid "" msgstr "" msgid "" -":issue:`16580`: Added code equivalents for the :meth:`int.to_bytes` and :" -"meth:`int.from_bytes` methods, as well as tests ensuring that these code " -"equivalents are valid." +":issue:`16580`: Added code equivalents for the :meth:`int.to_bytes` " +"and :meth:`int.from_bytes` methods, as well as tests ensuring that these " +"code equivalents are valid." msgstr "" msgid "" @@ -44567,8 +47734,8 @@ msgid "" msgstr "" msgid "" -":issue:`36700`: :mod:`base64` RFC references were updated to point to :rfc:" -"`4648`; a section was added to point users to the new \"security " +":issue:`36700`: :mod:`base64` RFC references were updated to point " +"to :rfc:`4648`; a section was added to point users to the new \"security " "considerations\" section of the RFC." msgstr "" @@ -44592,9 +47759,9 @@ msgid "" msgstr "" msgid "" -":issue:`44561`: Update of three expired hyperlinks in Doc/distributing/index." -"rst: \"Project structure\", \"Building and packaging the project\", and " -"\"Uploading the project to the Python Packaging Index\"." +":issue:`44561`: Update of three expired hyperlinks in Doc/distributing/" +"index.rst: \"Project structure\", \"Building and packaging the project\", " +"and \"Uploading the project to the Python Packaging Index\"." msgstr "" msgid "" @@ -44616,13 +47783,14 @@ msgid ":issue:`44613`: importlib.metadata is no longer provisional." msgstr "" msgid "" -":issue:`44558`: Match the docstring and python implementation of :func:" -"`~operator.countOf` to the behavior of its c implementation." +":issue:`44558`: Match the docstring and python implementation " +"of :func:`~operator.countOf` to the behavior of its c implementation." msgstr "" msgid "" -":issue:`44544`: List all kwargs for :func:`textwrap.wrap`, :func:`textwrap." -"fill`, and :func:`textwrap.shorten`. Now, there are nav links to attributes " +":issue:`44544`: List all kwargs " +"for :func:`textwrap.wrap`, :func:`textwrap.fill`, " +"and :func:`textwrap.shorten`. Now, there are nav links to attributes " "of :class:`TextWrap`, which makes navigation much easier while minimizing " "duplication in the documentation." msgstr "" @@ -44657,8 +47825,8 @@ msgid ":issue:`27752`: Documentation of csv.Dialect is more descriptive." msgstr "" msgid "" -":issue:`44453`: Fix documentation for the return type of :func:`sysconfig." -"get_path`." +":issue:`44453`: Fix documentation for the return type " +"of :func:`sysconfig.get_path`." msgstr "" msgid "" @@ -44699,9 +47867,9 @@ msgid "" msgstr "" msgid "" -":issue:`43558`: Add the remark to :mod:`dataclasses` documentation that the :" -"meth:`__init__` of any base class has to be called in :meth:`__post_init__`, " -"along with a code example." +":issue:`43558`: Add the remark to :mod:`dataclasses` documentation that " +"the :meth:`__init__` of any base class has to be called " +"in :meth:`__post_init__`, along with a code example." msgstr "" msgid "" @@ -44758,8 +47926,7 @@ msgstr "" msgid "" ":issue:`45209`: Fix ``UserWarning: resource_tracker`` warning in " -"``_test_multiprocessing._TestSharedMemory." -"test_shared_memory_cleaned_after_process_termination``" +"``_test_multiprocessing._TestSharedMemory.test_shared_memory_cleaned_after_process_termination``" msgstr "" msgid "" @@ -44810,8 +47977,8 @@ msgid "" msgstr "" msgid "" -":issue:`45042`: Fixes that test classes decorated with ``@hashlib_helper." -"requires_hashdigest`` were skipped all the time." +":issue:`45042`: Fixes that test classes decorated with " +"``@hashlib_helper.requires_hashdigest`` were skipped all the time." msgstr "" msgid "" @@ -44874,16 +48041,16 @@ msgstr "" msgid "" ":issue:`44287`: Fix asyncio test_popen() of test_windows_utils by using a " -"longer timeout. Use military grade battle-tested :data:`test.support." -"SHORT_TIMEOUT` timeout rather than a hardcoded timeout of 10 seconds: it's " -"30 seconds by default, but it is made longer on slow buildbots. Patch by " -"Victor Stinner." +"longer timeout. Use military grade battle-" +"tested :data:`test.support.SHORT_TIMEOUT` timeout rather than a hardcoded " +"timeout of 10 seconds: it's 30 seconds by default, but it is made longer on " +"slow buildbots. Patch by Victor Stinner." msgstr "" msgid "" -":issue:`44451`: Reset ``DeprecationWarning`` filters in ``test." -"test_importlib.test_metadata_api.APITests.test_entry_points_by_index`` to " -"avoid ``StopIteration`` error if ``DeprecationWarnings`` are ignored." +":issue:`44451`: Reset ``DeprecationWarning`` filters in " +"``test.test_importlib.test_metadata_api.APITests.test_entry_points_by_index`` " +"to avoid ``StopIteration`` error if ``DeprecationWarnings`` are ignored." msgstr "" msgid "" @@ -44896,8 +48063,8 @@ msgstr "" msgid "" ":issue:`43921`: Fix test_ssl.test_wrong_cert_tls13(): use " -"``suppress_ragged_eofs=False``, since ``read()`` can raise :exc:`ssl." -"SSLEOFError` on Windows. Patch by Victor Stinner." +"``suppress_ragged_eofs=False``, since ``read()`` can " +"raise :exc:`ssl.SSLEOFError` on Windows. Patch by Victor Stinner." msgstr "" msgid "" @@ -44907,8 +48074,8 @@ msgid "" msgstr "" msgid "" -":issue:`44131`: Add test_frozenmain to test_embed to test the :c:func:" -"`Py_FrozenMain` C function. Patch by Victor Stinner." +":issue:`44131`: Add test_frozenmain to test_embed to test " +"the :c:func:`Py_FrozenMain` C function. Patch by Victor Stinner." msgstr "" msgid ":issue:`31904`: Ignore error string case in test_file_not_exists()." @@ -44987,8 +48154,8 @@ msgid "" msgstr "" msgid "" -":issue:`44381`: The Windows build now accepts :envvar:" -"`EnableControlFlowGuard` set to ``guard`` to enable CFG." +":issue:`44381`: The Windows build now " +"accepts :envvar:`EnableControlFlowGuard` set to ``guard`` to enable CFG." msgstr "" msgid "" @@ -45021,9 +48188,9 @@ msgid "" msgstr "" msgid "" -":issue:`41299`: Fix 16 milliseconds jitter when using timeouts in :mod:" -"`threading`, such as with :meth:`threading.Lock.acquire` or :meth:`threading." -"Condition.wait`." +":issue:`41299`: Fix 16 milliseconds jitter when using timeouts " +"in :mod:`threading`, such as with :meth:`threading.Lock.acquire` " +"or :meth:`threading.Condition.wait`." msgstr "" msgid "" @@ -45099,8 +48266,8 @@ msgid "" msgstr "" msgid "" -":issue:`41611`: Avoid uncaught exceptions in ``AutoCompleteWindow." -"winconfig_event()``." +":issue:`41611`: Avoid uncaught exceptions in " +"``AutoCompleteWindow.winconfig_event()``." msgstr "" msgid "" @@ -45108,11 +48275,11 @@ msgid "" msgstr "" msgid "" -":issue:`44010`: Highlight the new :ref:`match ` statement's :ref:" -"`soft keywords `: :keyword:`match`, :keyword:`case `, " -"and :keyword:`_ `. However, this highlighting is not " -"perfect and will be incorrect in some rare cases, including some ``_``-s in " -"``case`` patterns." +":issue:`44010`: Highlight the new :ref:`match ` " +"statement's :ref:`soft keywords `: :keyword:`match`, :keyword:`case `, and :keyword:`_ " +"`. However, this highlighting is not perfect and will be " +"incorrect in some rare cases, including some ``_``-s in ``case`` patterns." msgstr "" msgid "" @@ -45157,8 +48324,8 @@ msgid "" msgstr "" msgid "" -":issue:`44687`: :meth:`BufferedReader.peek` no longer raises :exc:" -"`ValueError` when the entire file has already been buffered." +":issue:`44687`: :meth:`BufferedReader.peek` no longer " +"raises :exc:`ValueError` when the entire file has already been buffered." msgstr "" msgid "" @@ -45210,9 +48377,9 @@ msgstr "" msgid "" ":issue:`44441`: :c:func:`Py_RunMain` now resets :c:data:`PyImport_Inittab` " -"to its initial value at exit. It must be possible to call :c:func:" -"`PyImport_AppendInittab` or :c:func:`PyImport_ExtendInittab` at each Python " -"initialization. Patch by Victor Stinner." +"to its initial value at exit. It must be possible to " +"call :c:func:`PyImport_AppendInittab` or :c:func:`PyImport_ExtendInittab` at " +"each Python initialization. Patch by Victor Stinner." msgstr "" msgid "" @@ -45266,9 +48433,9 @@ msgstr "" msgid "" ":issue:`39573`: Convert the :c:func:`Py_TYPE` and :c:func:`Py_SIZE` macros " -"to static inline functions. The :c:func:`Py_SET_TYPE` and :c:func:" -"`Py_SET_SIZE` functions must now be used to set an object type and size. " -"Patch by Victor Stinner." +"to static inline functions. The :c:func:`Py_SET_TYPE` " +"and :c:func:`Py_SET_SIZE` functions must now be used to set an object type " +"and size. Patch by Victor Stinner." msgstr "" msgid "" @@ -45340,8 +48507,8 @@ msgid "" "``PyUnicode_EncodeDecimal``, ``PyUnicode_EncodeRawUnicodeEscape``, " "``PyUnicode_EncodeCharmap``, ``PyUnicode_EncodeUnicodeEscape``, " "``PyUnicode_TransformDecimalToASCII``, ``PyUnicode_TranslateCharmap``, " -"``PyUnicodeEncodeError_Create``, ``PyUnicodeTranslateError_Create``. See :" -"pep:`393` and :pep:`624` for reference." +"``PyUnicodeEncodeError_Create``, ``PyUnicodeTranslateError_Create``. " +"See :pep:`393` and :pep:`624` for reference." msgstr "" msgid "" @@ -45358,8 +48525,8 @@ msgstr "" msgid "" ":issue:`43434`: Creating :class:`sqlite3.Connection` objects now also " "produces ``sqlite3.connect`` and ``sqlite3.connect/handle`` :ref:`auditing " -"events `. Previously these events were only produced by :func:" -"`sqlite3.connect` calls. Patch by Erlend E. Aasland." +"events `. Previously these events were only produced " +"by :func:`sqlite3.connect` calls. Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -45376,14 +48543,14 @@ msgid "" msgstr "" msgid "" -"Following the controlling specification for URLs defined by WHATWG :func:" -"`urllib.parse` now removes ASCII newlines and tabs from URLs, preventing " -"such attacks." +"Following the controlling specification for URLs defined by " +"WHATWG :func:`urllib.parse` now removes ASCII newlines and tabs from URLs, " +"preventing such attacks." msgstr "" msgid "" -":issue:`43472`: Ensures interpreter-level audit hooks receive the ``cpython." -"PyInterpreterState_New`` event when called through the " +":issue:`43472`: Ensures interpreter-level audit hooks receive the " +"``cpython.PyInterpreterState_New`` event when called through the " "``_xxsubinterpreters`` module." msgstr "" @@ -45393,23 +48560,23 @@ msgid "" msgstr "" msgid "" -":issue:`43762`: Add audit events for :func:`sqlite3.connect/handle`, :meth:" -"`sqlite3.Connection.enable_load_extension`, and :meth:`sqlite3.Connection." -"load_extension`. Patch by Erlend E. Aasland." +":issue:`43762`: Add audit events for :func:`sqlite3.connect/" +"handle`, :meth:`sqlite3.Connection.enable_load_extension`, " +"and :meth:`sqlite3.Connection.load_extension`. Patch by Erlend E. Aasland." msgstr "" msgid "" ":issue:`43756`: Add new audit event ``glob.glob/2`` to incorporate the new " -"*root_dir* and *dir_fd* arguments added to :func:`glob.glob` and :func:`glob." -"iglob`." +"*root_dir* and *dir_fd* arguments added to :func:`glob.glob` " +"and :func:`glob.iglob`." msgstr "" msgid "" ":issue:`36384`: :mod:`ipaddress` module no longer accepts any leading zeros " "in IPv4 address strings. Leading zeros are ambiguous and interpreted as " -"octal notation by some libraries. For example the legacy function :func:" -"`socket.inet_aton` treats leading zeros as octal notation. glibc " -"implementation of modern :func:`~socket.inet_pton` does not accept any " +"octal notation by some libraries. For example the legacy " +"function :func:`socket.inet_aton` treats leading zeros as octal notation. " +"glibc implementation of modern :func:`~socket.inet_pton` does not accept any " "leading zeros. For a while the :mod:`ipaddress` module used to accept " "ambiguous leading zeros." msgstr "" @@ -45424,8 +48591,8 @@ msgid "" msgstr "" msgid "" -":issue:`42800`: Audit hooks are now fired for frame.f_code, traceback." -"tb_frame, and generator code/frame attribute access." +":issue:`42800`: Audit hooks are now fired for frame.f_code, " +"traceback.tb_frame, and generator code/frame attribute access." msgstr "" msgid ":issue:`37363`: Add audit events to the :mod:`http.client` module." @@ -45550,9 +48717,10 @@ msgid "" msgstr "" msgid "" -":issue:`38530`: When printing :exc:`NameError` raised by the interpreter, :c:" -"func:`PyErr_Display` will offer suggestions of similar variable names in the " -"function that the exception was raised from. Patch by Pablo Galindo" +":issue:`38530`: When printing :exc:`NameError` raised by the " +"interpreter, :c:func:`PyErr_Display` will offer suggestions of similar " +"variable names in the function that the exception was raised from. Patch by " +"Pablo Galindo" msgstr "" msgid "" @@ -45581,8 +48749,8 @@ msgid "" msgstr "" msgid "" -":issue:`43682`: Static methods (:deco:`staticmethod`) and class methods (:" -"deco:`classmethod`) now inherit the method attributes (``__module__``, " +":issue:`43682`: Static methods (:deco:`staticmethod`) and class methods " +"(:deco:`classmethod`) now inherit the method attributes (``__module__``, " "``__name__``, ``__qualname__``, ``__doc__``, ``__annotations__``) and have a " "new ``__wrapped__`` attribute. Patch by Victor Stinner." msgstr "" @@ -45615,8 +48783,8 @@ msgstr "" msgid "" ":issue:`42609`: Prevented crashes in the AST validator and optimizer when " -"compiling some absurdly long expressions like ``\"+0\"*1000000``. :exc:" -"`RecursionError` is now raised instead." +"compiling some absurdly long expressions like " +"``\"+0\"*1000000``. :exc:`RecursionError` is now raised instead." msgstr "" msgid "" @@ -45716,16 +48884,17 @@ msgid "" msgstr "" msgid "" -":func:`inspect.signature`, :func:`inspect.from_callable`, and :func:`inspect." -"from_function` now call :func:`inspect.get_annotations` to retrieve " -"annotations. This means :func:`inspect.signature` and :func:`inspect." -"from_callable` can now un-stringize stringized annotations, too." +":func:`inspect.signature`, :func:`inspect.from_callable`, " +"and :func:`inspect.from_function` now call :func:`inspect.get_annotations` " +"to retrieve annotations. This means :func:`inspect.signature` " +"and :func:`inspect.from_callable` can now un-stringize stringized " +"annotations, too." msgstr "" msgid "" -":issue:`43284`: platform.win32_ver derives the windows version from sys." -"getwindowsversion().platform_version which in turn derives the version from " -"kernel32.dll (which can be of a different version than Windows itself). " +":issue:`43284`: platform.win32_ver derives the windows version from " +"sys.getwindowsversion().platform_version which in turn derives the version " +"from kernel32.dll (which can be of a different version than Windows itself). " "Therefore change the platform.win32_ver to determine the version using the " "platform module's _syscmd_ver private function to return an accurate version." msgstr "" @@ -45774,9 +48943,9 @@ msgid "" msgstr "" msgid "" -":issue:`43787`: Add ``__iter__()`` method to :class:`bz2.BZ2File`, :class:" -"`gzip.GzipFile`, and :class:`lzma.LZMAFile`. It makes iterating them about " -"2x faster. Patch by Inada Naoki." +":issue:`43787`: Add ``__iter__()`` method " +"to :class:`bz2.BZ2File`, :class:`gzip.GzipFile`, and :class:`lzma.LZMAFile`. " +"It makes iterating them about 2x faster. Patch by Inada Naoki." msgstr "" msgid "" @@ -45792,9 +48961,9 @@ msgid "" ":issue:`43680`: The Python :func:`!_pyio.open` function becomes a static " "method to behave as :func:`io.open` built-in function: don't become a bound " "method when stored as a class variable. It becomes possible since static " -"methods are now callable in Python 3.10. Moreover, :func:`!_pyio." -"OpenWrapper` becomes a simple alias to :func:`!_pyio.open`. Patch by Victor " -"Stinner." +"methods are now callable in Python 3.10. Moreover, :func:`!" +"_pyio.OpenWrapper` becomes a simple alias to :func:`!_pyio.open`. Patch by " +"Victor Stinner." msgstr "" msgid "" @@ -45850,8 +49019,8 @@ msgstr "" msgid "" ":issue:`43785`: Improve ``bz2.BZ2File`` performance by removing the RLock " "from BZ2File. This makes BZ2File thread unsafe in the face of multiple " -"simultaneous readers or writers, just like its equivalent classes in :mod:" -"`gzip` and :mod:`lzma` have always been. Patch by Inada Naoki." +"simultaneous readers or writers, just like its equivalent classes " +"in :mod:`gzip` and :mod:`lzma` have always been. Patch by Inada Naoki." msgstr "" msgid "" @@ -45867,8 +49036,8 @@ msgid "" msgstr "" msgid "" -":issue:`43766`: Implement :pep:`647` in the :mod:`typing` module by adding :" -"data:`TypeGuard`." +":issue:`43766`: Implement :pep:`647` in the :mod:`typing` module by " +"adding :data:`TypeGuard`." msgstr "" msgid "" @@ -45884,10 +49053,10 @@ msgid "" msgstr "" msgid "" -":gh:`47383`: The ``P.args`` and ``P.kwargs`` attributes of :class:`typing." -"ParamSpec` are now instances of the new classes :class:`typing." -"ParamSpecArgs` and :class:`typing.ParamSpecKwargs`, which enables a more " -"useful ``repr()``. Patch by Jelle Zijlstra." +":gh:`47383`: The ``P.args`` and ``P.kwargs`` attributes " +"of :class:`typing.ParamSpec` are now instances of the new " +"classes :class:`typing.ParamSpecArgs` and :class:`typing.ParamSpecKwargs`, " +"which enables a more useful ``repr()``. Patch by Jelle Zijlstra." msgstr "" msgid "" @@ -45895,8 +49064,8 @@ msgid "" msgstr "" msgid "" -":issue:`43712`: Add ``encoding`` and ``errors`` parameters to :func:" -"`fileinput.input` and :class:`fileinput.FileInput`." +":issue:`43712`: Add ``encoding`` and ``errors`` parameters " +"to :func:`fileinput.input` and :class:`fileinput.FileInput`." msgstr "" msgid "" @@ -45968,32 +49137,32 @@ msgid "" msgstr "" msgid "" -":issue:`43522`: Fix problem with :attr:`~ssl.SSLContext." -"hostname_checks_common_name`. OpenSSL does not copy hostflags from *struct " -"SSL_CTX* to *struct SSL*." +":issue:`43522`: Fix problem " +"with :attr:`~ssl.SSLContext.hostname_checks_common_name`. OpenSSL does not " +"copy hostflags from *struct SSL_CTX* to *struct SSL*." msgstr "" msgid "" -":issue:`8978`: Improve error message for :func:`tarfile.open` when :mod:" -"`lzma` / :mod:`bz2` are unavailable. Patch by Anthony Sottile." +":issue:`8978`: Improve error message for :func:`tarfile.open` " +"when :mod:`lzma` / :mod:`bz2` are unavailable. Patch by Anthony Sottile." msgstr "" msgid "" -":issue:`42967`: Allow :class:`bytes` ``separator`` argument in ``urllib." -"parse.parse_qs`` and ``urllib.parse.parse_qsl`` when parsing :class:`str` " -"query strings. Previously, this raised a ``TypeError``." +":issue:`42967`: Allow :class:`bytes` ``separator`` argument in " +"``urllib.parse.parse_qs`` and ``urllib.parse.parse_qsl`` when " +"parsing :class:`str` query strings. Previously, this raised a ``TypeError``." msgstr "" msgid "" ":issue:`43296`: Improve :mod:`sqlite3` error handling: " -"``sqlite3_value_blob()`` errors that set ``SQLITE_NOMEM`` now raise :exc:" -"`MemoryError`. Patch by Erlend E. Aasland." +"``sqlite3_value_blob()`` errors that set ``SQLITE_NOMEM`` now " +"raise :exc:`MemoryError`. Patch by Erlend E. Aasland." msgstr "" msgid "" -":issue:`43312`: New functions :func:`sysconfig.get_preferred_scheme` and :" -"func:`sysconfig.get_default_scheme` are added to query a platform for its " -"preferred \"user\", \"home\", and \"prefix\" (default) scheme names." +":issue:`43312`: New functions :func:`sysconfig.get_preferred_scheme` " +"and :func:`sysconfig.get_default_scheme` are added to query a platform for " +"its preferred \"user\", \"home\", and \"prefix\" (default) scheme names." msgstr "" msgid "" @@ -46018,8 +49187,8 @@ msgid "" msgstr "" msgid "" -":issue:`43080`: :mod:`pprint` now has support for :class:`dataclasses." -"dataclass`. Patch by Lewis Gaul." +":issue:`43080`: :mod:`pprint` now has support " +"for :class:`dataclasses.dataclass`. Patch by Lewis Gaul." msgstr "" msgid "" @@ -46044,10 +49213,9 @@ msgid "" "running event loop. Emit deprecation warning for :mod:`asyncio` functions " "which implicitly create a :class:`~asyncio.Future` or :class:`~asyncio.Task` " "objects if there is no running event loop and no explicit *loop* argument is " -"passed: :func:`~asyncio.ensure_future`, :func:`~asyncio.wrap_future`, :func:" -"`~asyncio.gather`, :func:`~asyncio.shield`, :func:`~asyncio.as_completed` " -"and constructors of :class:`~asyncio.Future`, :class:`~asyncio.Task`, :class:" -"`~asyncio.StreamReader`, :class:`~asyncio.StreamReaderProtocol`." +"passed: :func:`~asyncio.ensure_future`, :func:`~asyncio.wrap_future`, :func:`~asyncio.gather`, :func:`~asyncio.shield`, :func:`~asyncio.as_completed` " +"and constructors " +"of :class:`~asyncio.Future`, :class:`~asyncio.Task`, :class:`~asyncio.StreamReader`, :class:`~asyncio.StreamReaderProtocol`." msgstr "" msgid "" @@ -46056,10 +49224,10 @@ msgid "" msgstr "" msgid "" -":issue:`41486`: Use a new output buffer management code for :mod:`bz2` / :" -"mod:`lzma` / :mod:`zlib` modules, and add ``.readall()`` function to " -"``_compression.DecompressReader`` class. These bring some performance " -"improvements. Patch by Ma Lin." +":issue:`41486`: Use a new output buffer management code " +"for :mod:`bz2` / :mod:`lzma` / :mod:`zlib` modules, and add ``.readall()`` " +"function to ``_compression.DecompressReader`` class. These bring some " +"performance improvements. Patch by Ma Lin." msgstr "" msgid "" @@ -46073,8 +49241,8 @@ msgid "" msgstr "" msgid "" -":issue:`36470`: Fix dataclasses with ``InitVar``\\s and :func:`~dataclasses." -"replace`. Patch by Claudiu Popa." +":issue:`36470`: Fix dataclasses with ``InitVar``\\s " +"and :func:`~dataclasses.replace`. Patch by Claudiu Popa." msgstr "" msgid ":issue:`40849`: Expose X509_V_FLAG_PARTIAL_CHAIN ssl flag" @@ -46120,9 +49288,9 @@ msgid "" msgstr "" msgid "" -":issue:`32745`: Fix a regression in the handling of ctypes' :data:`ctypes." -"c_wchar_p` type: embedded null characters would cause a :exc:`ValueError` to " -"be raised. Patch by Zackery Spytz." +":issue:`32745`: Fix a regression in the handling of " +"ctypes' :data:`ctypes.c_wchar_p` type: embedded null characters would cause " +"a :exc:`ValueError` to be raised. Patch by Zackery Spytz." msgstr "" msgid "" @@ -46130,8 +49298,8 @@ msgid "" msgstr "" msgid "" -":issue:`43977`: Document the new :c:macro:`Py_TPFLAGS_MAPPING` and :c:macro:" -"`Py_TPFLAGS_SEQUENCE` type flags." +":issue:`43977`: Document the new :c:macro:`Py_TPFLAGS_MAPPING` " +"and :c:macro:`Py_TPFLAGS_SEQUENCE` type flags." msgstr "" msgid "" @@ -46167,8 +49335,8 @@ msgstr "" msgid "" ":issue:`43842`: Fix a race condition in the SMTP test of test_logging. Don't " -"close a file descriptor (socket) from a different thread while asyncore." -"loop() is polling the file descriptor. Patch by Victor Stinner." +"close a file descriptor (socket) from a different thread while " +"asyncore.loop() is polling the file descriptor. Patch by Victor Stinner." msgstr "" msgid "" @@ -46210,8 +49378,8 @@ msgstr "" msgid "" ":issue:`38822`: Fixed :func:`os.stat` failing on inaccessible directories " "with a trailing slash, rather than falling back to the parent directory's " -"metadata. This implicitly affected :func:`os.path.exists` and :func:`os.path." -"isdir`." +"metadata. This implicitly affected :func:`os.path.exists` " +"and :func:`os.path.isdir`." msgstr "" msgid "" @@ -46322,8 +49490,8 @@ msgstr "" msgid "" ":issue:`28254`: Add new C-API functions to control the state of the garbage " -"collector: :c:func:`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:" -"`PyGC_IsEnabled()`, corresponding to the functions in the :mod:`gc` module." +"collector: :c:func:`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()`, " +"corresponding to the functions in the :mod:`gc` module." msgstr "" msgid "" @@ -46363,11 +49531,11 @@ msgid "*Release date: 2021-04-05*" msgstr "" msgid "" -":issue:`42988`: :cve:`2021-3426`: Remove the ``getfile`` feature of the :mod:" -"`pydoc` module which could be abused to read arbitrary files on the disk " -"(directory traversal vulnerability). Moreover, even source code of Python " -"modules can contain sensitive data like passwords. Vulnerability reported by " -"David Schwörer." +":issue:`42988`: :cve:`2021-3426`: Remove the ``getfile`` feature of " +"the :mod:`pydoc` module which could be abused to read arbitrary files on the " +"disk (directory traversal vulnerability). Moreover, even source code of " +"Python modules can contain sensitive data like passwords. Vulnerability " +"reported by David Schwörer." msgstr "" msgid "" @@ -46384,8 +49552,9 @@ msgid "" msgstr "" msgid "" -":issue:`43439`: Add audit hooks for :func:`gc.get_objects`, :func:`gc." -"get_referrers` and :func:`gc.get_referents`. Patch by Pablo Galindo." +":issue:`43439`: Add audit hooks " +"for :func:`gc.get_objects`, :func:`gc.get_referrers` " +"and :func:`gc.get_referents`. Patch by Pablo Galindo." msgstr "" msgid ":issue:`27129`: Update CPython bytecode magic number." @@ -46442,8 +49611,8 @@ msgid "" msgstr "" msgid "" -":issue:`43517`: Fix misdetection of circular imports when using ``from pkg." -"mod import attr``, which caused false positives in non-trivial multi-" +":issue:`43517`: Fix misdetection of circular imports when using ``from " +"pkg.mod import attr``, which caused false positives in non-trivial multi-" "threaded code." msgstr "" @@ -46460,9 +49629,9 @@ msgstr "" msgid "" ":issue:`35883`: Python no longer fails at startup with a fatal error if a " -"command line argument contains an invalid Unicode character. The :c:func:" -"`Py_DecodeLocale` function now escapes byte sequences which would be decoded " -"as Unicode characters outside the [U+0000; U+10ffff] range." +"command line argument contains an invalid Unicode character. " +"The :c:func:`Py_DecodeLocale` function now escapes byte sequences which " +"would be decoded as Unicode characters outside the [U+0000; U+10ffff] range." msgstr "" msgid "" @@ -46535,8 +49704,8 @@ msgid "" msgstr "" msgid "" -":issue:`31956`: The :meth:`~array.array.index` method of :class:`array." -"array` now has optional *start* and *stop* parameters." +":issue:`31956`: The :meth:`~array.array.index` method " +"of :class:`array.array` now has optional *start* and *stop* parameters." msgstr "" msgid "" @@ -46574,8 +49743,8 @@ msgid "" msgstr "" msgid "" -":issue:`43542`: ``image/heic`` and ``image/heif`` were added to :mod:" -"`mimetypes`." +":issue:`43542`: ``image/heic`` and ``image/heif`` were added " +"to :mod:`mimetypes`." msgstr "" msgid "" @@ -46635,9 +49804,9 @@ msgid "" msgstr "" msgid "" -":issue:`29982`: Add optional parameter *ignore_cleanup_errors* to :func:" -"`tempfile.TemporaryDirectory` and allow multiple :func:`cleanup` attempts. " -"Contributed by C.A.M. Gerlach." +":issue:`29982`: Add optional parameter *ignore_cleanup_errors* " +"to :func:`tempfile.TemporaryDirectory` and allow multiple :func:`cleanup` " +"attempts. Contributed by C.A.M. Gerlach." msgstr "" msgid "" @@ -46677,8 +49846,8 @@ msgid "" msgstr "" msgid "" -":issue:`43356`: Allow passing a signal number to ``_thread." -"interrupt_main()``." +":issue:`43356`: Allow passing a signal number to " +"``_thread.interrupt_main()``." msgstr "" msgid "" @@ -46730,9 +49899,9 @@ msgid ":issue:`42994`: Add MIME types for opus, AAC, 3gpp and 3gpp2" msgstr "" msgid "" -":issue:`14678`: Add an invalidate_caches() method to the zipimport." -"zipimporter class to support importlib.invalidate_caches(). Patch by Desmond " -"Cheong." +":issue:`14678`: Add an invalidate_caches() method to the " +"zipimport.zipimporter class to support importlib.invalidate_caches(). Patch " +"by Desmond Cheong." msgstr "" msgid "" @@ -46744,8 +49913,8 @@ msgid "" ":issue:`40066`: Enum's ``repr()`` and ``str()`` have changed: ``repr()`` is " "now *EnumClass.MemberName* and ``str()`` is *MemberName*. Additionally, " "stdlib Enum's whose contents are available as module attributes, such as " -"``RegexFlag.IGNORECASE``, have their ``repr()`` as *module.name*, e.g. ``re." -"IGNORECASE``." +"``RegexFlag.IGNORECASE``, have their ``repr()`` as *module.name*, e.g. " +"``re.IGNORECASE``." msgstr "" msgid "" @@ -46763,15 +49932,16 @@ msgid "" ":issue:`40701`: When the :data:`tempfile.tempdir` global variable is set to " "a value of type bytes, it is now handled consistently. Previously " "exceptions could be raised from some tempfile APIs when the directory did " -"not already exist in this situation. Also ensures that the :func:`tempfile." -"gettempdir` and :func:`tempfile.gettempdirb` functions *always* return " -"``str`` and ``bytes`` respectively." +"not already exist in this situation. Also ensures that " +"the :func:`tempfile.gettempdir` and :func:`tempfile.gettempdirb` functions " +"*always* return ``str`` and ``bytes`` respectively." msgstr "" msgid "" -":issue:`39342`: Expose ``X509_V_FLAG_ALLOW_PROXY_CERTS`` as :const:`~ssl." -"VERIFY_ALLOW_PROXY_CERTS` to allow proxy certificate validation as explained " -"in https://docs.openssl.org/1.1.1/man7/proxy-certificates/." +":issue:`39342`: Expose ``X509_V_FLAG_ALLOW_PROXY_CERTS`` " +"as :const:`~ssl.VERIFY_ALLOW_PROXY_CERTS` to allow proxy certificate " +"validation as explained in https://docs.openssl.org/1.1.1/man7/proxy-" +"certificates/." msgstr "" msgid "" @@ -46785,10 +49955,10 @@ msgid "" msgstr "" msgid "" -":issue:`43407`: Clarified that a result from :func:`time.monotonic`, :func:" -"`time.perf_counter`, :func:`time.process_time`, or :func:`time.thread_time` " -"can be compared with the result from any following call to the same function " -"- not just the next immediate call." +":issue:`43407`: Clarified that a result " +"from :func:`time.monotonic`, :func:`time.perf_counter`, :func:`time.process_time`, " +"or :func:`time.thread_time` can be compared with the result from any " +"following call to the same function - not just the next immediate call." msgstr "" msgid "" @@ -46833,9 +50003,9 @@ msgid "" ":issue:`43372`: Use ``_freeze_importlib`` to generate code for the " "``__hello__`` module. This approach ensures the code matches the interpreter " "version. Previously, PYTHON_FOR_REGEN was used to generate the code, which " -"might be wrong. The marshal format for code objects has changed with :issue:" -"`42246`, commit 877df851. Update the code and the expected code sizes in " -"ctypes test_frozentable." +"might be wrong. The marshal format for code objects has changed " +"with :issue:`42246`, commit 877df851. Update the code and the expected code " +"sizes in ctypes test_frozentable." msgstr "" msgid "" @@ -46853,12 +50023,12 @@ msgid "" ":issue:`43688`: The limited C API is now supported if Python is built in " "debug mode (if the ``Py_DEBUG`` macro is defined). In the limited C API, " "the :c:func:`Py_INCREF` and :c:func:`Py_DECREF` functions are now " -"implemented as opaque function calls, rather than accessing directly the :c:" -"member:`PyObject.ob_refcnt` member, if Python is built in debug mode and the " -"``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became possible to " -"support the limited C API in debug mode because the :c:type:`PyObject` " -"structure is the same in release and debug mode since Python 3.8 (see :issue:" -"`36465`)." +"implemented as opaque function calls, rather than accessing directly " +"the :c:member:`PyObject.ob_refcnt` member, if Python is built in debug mode " +"and the ``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became " +"possible to support the limited C API in debug mode because " +"the :c:type:`PyObject` structure is the same in release and debug mode since " +"Python 3.8 (see :issue:`36465`)." msgstr "" msgid "" @@ -47012,8 +50182,8 @@ msgstr "" msgid "" ":issue:`42990`: The :data:`types.FunctionType` constructor now inherits the " "current builtins if the *globals* dictionary has no ``\"__builtins__\"`` " -"key, rather than using ``{\"None\": None}`` as builtins: same behavior as :" -"func:`eval` and :func:`exec` functions. Defining a function with ``def " +"key, rather than using ``{\"None\": None}`` as builtins: same behavior " +"as :func:`eval` and :func:`exec` functions. Defining a function with ``def " "function(...): ...`` in Python is not affected, globals cannot be overridden " "with this syntax: it also inherits the current builtins. Patch by Victor " "Stinner." @@ -47039,13 +50209,13 @@ msgstr "" msgid "" ":issue:`42819`: :mod:`readline`: Explicitly disable bracketed paste in the " "interactive interpreter, even if it's set in the inputrc, is enabled by " -"default (eg GNU Readline 8.1), or a user calls ``readline." -"read_init_file()``. The Python REPL has not implemented bracketed paste " -"support. Also, bracketed mode writes the ``\"\\x1b[?2004h\"`` escape " +"default (eg GNU Readline 8.1), or a user calls " +"``readline.read_init_file()``. The Python REPL has not implemented bracketed " +"paste support. Also, bracketed mode writes the ``\"\\x1b[?2004h\"`` escape " "sequence into stdout which causes test failures in applications that don't " -"support it. It can still be explicitly enabled by calling ``readline." -"parse_and_bind(\"set enable-bracketed-paste on\")``. Patch by Dustin " -"Rodrigues." +"support it. It can still be explicitly enabled by calling " +"``readline.parse_and_bind(\"set enable-bracketed-paste on\")``. Patch by " +"Dustin Rodrigues." msgstr "" msgid "" @@ -47079,8 +50249,8 @@ msgstr "" msgid "" ":issue:`38302`: If :func:`object.__ipow__` returns :data:`NotImplemented`, " -"the operator will correctly fall back to :func:`object.__pow__` and :func:" -"`object.__rpow__` as expected." +"the operator will correctly fall back to :func:`object.__pow__` " +"and :func:`object.__rpow__` as expected." msgstr "" msgid "" @@ -47096,8 +50266,9 @@ msgid "" msgstr "" msgid "" -":issue:`43146`: Handle None in single-arg versions of :func:`~traceback." -"print_exception` and :func:`~traceback.format_exception`." +":issue:`43146`: Handle None in single-arg versions " +"of :func:`~traceback.print_exception` " +"and :func:`~traceback.format_exception`." msgstr "" msgid "" @@ -47125,9 +50296,9 @@ msgstr "" msgid "" ":issue:`43172`: The readline module now passes its tests when built directly " -"against libedit. Existing irreconcilable API differences remain in :func:" -"`readline.get_begidx` and :func:`readline.get_endidx` behavior based on " -"libreadline vs libedit use." +"against libedit. Existing irreconcilable API differences remain " +"in :func:`readline.get_begidx` and :func:`readline.get_endidx` behavior " +"based on libreadline vs libedit use." msgstr "" msgid "" @@ -47142,8 +50313,8 @@ msgid "" msgstr "" msgid "" -":issue:`43146`: Fix recent regression in None argument handling in :mod:" -"`~traceback` module functions." +":issue:`43146`: Fix recent regression in None argument handling " +"in :mod:`~traceback` module functions." msgstr "" msgid "" @@ -47153,9 +50324,9 @@ msgid "" msgstr "" msgid "" -":issue:`43106`: Added :const:`~os.O_EVTONLY`, :const:`~os.O_FSYNC`, :const:" -"`~os.O_SYMLINK` and :const:`~os.O_NOFOLLOW_ANY` for macOS. Patch by Donghee " -"Na." +":issue:`43106`: " +"Added :const:`~os.O_EVTONLY`, :const:`~os.O_FSYNC`, :const:`~os.O_SYMLINK` " +"and :const:`~os.O_NOFOLLOW_ANY` for macOS. Patch by Donghee Na." msgstr "" msgid "" @@ -47164,9 +50335,9 @@ msgid "" msgstr "" msgid "" -":issue:`42151`: Make the pure Python implementation of :mod:`xml.etree." -"ElementTree` behave the same as the C implementation (:mod:`!_elementree`) " -"regarding default attribute values (by not setting " +":issue:`42151`: Make the pure Python implementation " +"of :mod:`xml.etree.ElementTree` behave the same as the C implementation " +"(:mod:`!_elementree`) regarding default attribute values (by not setting " "``specified_attributes=1``)." msgstr "" @@ -47259,8 +50430,9 @@ msgstr "" msgid "" ":issue:`40170`: :c:func:`PyExceptionClass_Name` is now always declared as a " -"function, in order to hide implementation details. The macro accessed :c:" -"member:`PyTypeObject.tp_name` directly. Patch by Erlend E. Aasland." +"function, in order to hide implementation details. The macro " +"accessed :c:member:`PyTypeObject.tp_name` directly. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" @@ -47270,14 +50442,16 @@ msgstr "" msgid "" ":issue:`40170`: :c:func:`PyIter_Check` is now always declared as a function, " -"in order to hide implementation details. The macro accessed :c:member:" -"`PyTypeObject.tp_iternext` directly. Patch by Erlend E. Aasland." +"in order to hide implementation details. The macro " +"accessed :c:member:`PyTypeObject.tp_iternext` directly. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" ":issue:`40170`: Convert :c:func:`PyDescr_IsData` macro to a function to hide " -"implementation details: The macro accessed :c:member:`PyTypeObject." -"tp_descr_set` directly. Patch by Erlend E. Aasland." +"implementation details: The macro " +"accessed :c:member:`PyTypeObject.tp_descr_set` directly. Patch by Erlend E. " +"Aasland." msgstr "" msgid "" @@ -47292,8 +50466,8 @@ msgid "*Release date: 2021-02-02*" msgstr "" msgid "" -":issue:`42938`: Avoid static buffers when computing the repr of :class:" -"`ctypes.c_double` and :class:`ctypes.c_longdouble` values." +":issue:`42938`: Avoid static buffers when computing the repr " +"of :class:`ctypes.c_double` and :class:`ctypes.c_longdouble` values." msgstr "" msgid ":issue:`42990`: Refactor the ``PyEval_`` family of functions." @@ -47357,14 +50531,14 @@ msgstr "" msgid "" ":issue:`42882`: Fix the :c:func:`!_PyUnicode_FromId` function " -"(_Py_IDENTIFIER(var) API) when :c:func:`Py_Initialize` / :c:func:" -"`Py_Finalize` is called multiple times: preserve ``_PyRuntime.unicode_ids." -"next_index`` value." +"(_Py_IDENTIFIER(var) API) " +"when :c:func:`Py_Initialize` / :c:func:`Py_Finalize` is called multiple " +"times: preserve ``_PyRuntime.unicode_ids.next_index`` value." msgstr "" msgid "" -":issue:`42827`: Fix a crash when working out the error line of a :exc:" -"`SyntaxError` in some multi-line expressions." +":issue:`42827`: Fix a crash when working out the error line of " +"a :exc:`SyntaxError` in some multi-line expressions." msgstr "" msgid "" @@ -47437,21 +50611,22 @@ msgid "" msgstr "" msgid "" -":issue:`42877`: Added the ``compact`` parameter to the constructor of :class:" -"`traceback.TracebackException` to reduce time and memory for use cases that " -"only need to call :func:`TracebackException.format` and :func:" -"`TracebackException.format_exception_only`." +":issue:`42877`: Added the ``compact`` parameter to the constructor " +"of :class:`traceback.TracebackException` to reduce time and memory for use " +"cases that only need to call :func:`TracebackException.format` " +"and :func:`TracebackException.format_exception_only`." msgstr "" msgid "" -":issue:`42923`: The :c:func:`Py_FatalError` function and the :mod:" -"`faulthandler` module now dump the list of extension modules on a fatal " -"error." +":issue:`42923`: The :c:func:`Py_FatalError` function and " +"the :mod:`faulthandler` module now dump the list of extension modules on a " +"fatal error." msgstr "" msgid "" -":issue:`42848`: Removed recursion from :class:`~traceback." -"TracebackException` to allow it to handle long exception chains." +":issue:`42848`: Removed recursion " +"from :class:`~traceback.TracebackException` to allow it to handle long " +"exception chains." msgstr "" msgid "" @@ -47505,10 +50680,10 @@ msgid "" msgstr "" msgid "" -":issue:`24464`: The undocumented built-in function ``sqlite3." -"enable_shared_cache`` is now deprecated, scheduled for removal in Python " -"3.12. Its use is strongly discouraged by the SQLite3 documentation. Patch " -"by Erlend E. Aasland." +":issue:`24464`: The undocumented built-in function " +"``sqlite3.enable_shared_cache`` is now deprecated, scheduled for removal in " +"Python 3.12. Its use is strongly discouraged by the SQLite3 documentation. " +"Patch by Erlend E. Aasland." msgstr "" msgid "" @@ -47523,8 +50698,8 @@ msgid "" msgstr "" msgid "" -":issue:`42005`: Fix CLI of :mod:`!cProfile` and :mod:`!profile` to catch :" -"exc:`BrokenPipeError`." +":issue:`42005`: Fix CLI of :mod:`!cProfile` and :mod:`!profile` to " +"catch :exc:`BrokenPipeError`." msgstr "" msgid "" @@ -47546,8 +50721,8 @@ msgid "" msgstr "" msgid "" -":issue:`39273`: The ``BUTTON5_*`` constants are now exposed in the :mod:" -"`curses` module if available." +":issue:`39273`: The ``BUTTON5_*`` constants are now exposed in " +"the :mod:`curses` module if available." msgstr "" msgid "" @@ -47561,8 +50736,8 @@ msgid "" msgstr "" msgid "" -":issue:`42811`: Updated importlib.util.resolve_name() doc to use __spec__." -"parent instead of __package__. (Thanks Yair Frid.)" +":issue:`42811`: Updated importlib.util.resolve_name() doc to use " +"__spec__.parent instead of __package__. (Thanks Yair Frid.)" msgstr "" msgid "" @@ -47608,8 +50783,8 @@ msgstr "" msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" -"share/python-wheels/`` directory and don't install the ``ensurepip." -"_bundled`` package." +"share/python-wheels/`` directory and don't install the " +"``ensurepip._bundled`` package." msgstr "" msgid ":issue:`41837`: Updated Windows installer to include OpenSSL 1.1.1i" @@ -47619,9 +50794,9 @@ msgid ":issue:`42584`: Upgrade Windows installer to use SQLite 3.34.0." msgstr "" msgid "" -":issue:`42504`: Ensure that the value of sysconfig." -"get_config_var('MACOSX_DEPLOYMENT_TARGET') is always a string, even in when " -"the value is parsable as an integer." +":issue:`42504`: Ensure that the value of " +"sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') is always a string, " +"even in when the value is parsable as an integer." msgstr "" msgid "" @@ -47722,28 +50897,28 @@ msgid "" msgstr "" msgid "" -":issue:`32381`: Fix encoding name when running a ``.pyc`` file on Windows: :" -"c:func:`PyRun_SimpleFileExFlags()` now uses the correct encoding to decode " -"the filename." +":issue:`32381`: Fix encoding name when running a ``.pyc`` file on " +"Windows: :c:func:`PyRun_SimpleFileExFlags()` now uses the correct encoding " +"to decode the filename." msgstr "" msgid "" -":issue:`42195`: The ``__args__`` of the parameterized generics for :data:" -"`typing.Callable` and :class:`collections.abc.Callable` are now consistent. " -"The ``__args__`` for :class:`collections.abc.Callable` are now flattened " -"while :data:`typing.Callable`'s have not changed. To allow this change, :" -"class:`types.GenericAlias` can now be subclassed and ``collections.abc." -"Callable``'s ``__class_getitem__`` will now return a subclass of ``types." -"GenericAlias``. Tests for typing were also updated to not subclass things " -"like ``Callable[..., T]`` as that is not a valid base class. Finally, both " -"``Callable``\\ s no longer validate their ``argtypes``, in " -"``Callable[[argtypes], resulttype]`` to prepare for :pep:`612`. Patch by " -"Ken Jin." +":issue:`42195`: The ``__args__`` of the parameterized generics " +"for :data:`typing.Callable` and :class:`collections.abc.Callable` are now " +"consistent. The ``__args__`` for :class:`collections.abc.Callable` are now " +"flattened while :data:`typing.Callable`'s have not changed. To allow this " +"change, :class:`types.GenericAlias` can now be subclassed and " +"``collections.abc.Callable``'s ``__class_getitem__`` will now return a " +"subclass of ``types.GenericAlias``. Tests for typing were also updated to " +"not subclass things like ``Callable[..., T]`` as that is not a valid base " +"class. Finally, both ``Callable``\\ s no longer validate their " +"``argtypes``, in ``Callable[[argtypes], resulttype]`` to prepare " +"for :pep:`612`. Patch by Ken Jin." msgstr "" msgid "" -":issue:`40137`: Convert functools module to use :c:func:" -"`PyType_FromModuleAndSpec`." +":issue:`40137`: Convert functools module to " +"use :c:func:`PyType_FromModuleAndSpec`." msgstr "" msgid "" @@ -47771,8 +50946,8 @@ msgid "" msgstr "" msgid "" -":issue:`42257`: Handle empty string in variable executable in platform." -"libc_ver()" +":issue:`42257`: Handle empty string in variable executable in " +"platform.libc_ver()" msgstr "" msgid "" @@ -47781,8 +50956,8 @@ msgid "" msgstr "" msgid "" -":issue:`42759`: Fixed equality comparison of :class:`tkinter.Variable` and :" -"class:`tkinter.font.Font`. Objects which belong to different Tcl " +":issue:`42759`: Fixed equality comparison of :class:`tkinter.Variable` " +"and :class:`tkinter.font.Font`. Objects which belong to different Tcl " "interpreters are now always different, even if they have the same name." msgstr "" @@ -47816,13 +50991,14 @@ msgstr "" msgid "" ":issue:`42721`: When simple query dialogs (:mod:`tkinter.simpledialog`), " -"message boxes (:mod:`tkinter.messagebox`) or color choose dialog (:mod:" -"`tkinter.colorchooser`) are created without arguments *master* and *parent*, " -"and the default root window is not yet created, and :func:`~tkinter." -"NoDefaultRoot` was not called, a new temporal hidden root window will be " -"created automatically. It will not be set as the default root window and " -"will be destroyed right after closing the dialog window. It will help to use " -"these simple dialog windows in programs which do not need other GUI." +"message boxes (:mod:`tkinter.messagebox`) or color choose dialog " +"(:mod:`tkinter.colorchooser`) are created without arguments *master* and " +"*parent*, and the default root window is not yet created, " +"and :func:`~tkinter.NoDefaultRoot` was not called, a new temporal hidden " +"root window will be created automatically. It will not be set as the default " +"root window and will be destroyed right after closing the dialog window. It " +"will help to use these simple dialog windows in programs which do not need " +"other GUI." msgstr "" msgid ":issue:`25246`: Optimized :meth:`collections.deque.remove`." @@ -47837,8 +51013,8 @@ msgid "" msgstr "" msgid "" -":issue:`42681`: Fixed range checks for color and pair numbers in :mod:" -"`curses`." +":issue:`42681`: Fixed range checks for color and pair numbers " +"in :mod:`curses`." msgstr "" msgid "" @@ -47873,8 +51049,8 @@ msgstr "" msgid "" ":issue:`42639`: :func:`atexit._run_exitfuncs` now logs callback exceptions " -"using :data:`sys.unraisablehook`, rather than logging them directly into :" -"data:`sys.stderr` and raise the last exception." +"using :data:`sys.unraisablehook`, rather than logging them directly " +"into :data:`sys.stderr` and raise the last exception." msgstr "" msgid "" @@ -47884,9 +51060,10 @@ msgid "" msgstr "" msgid "" -":issue:`42639`: At Python exit, if a callback registered with :func:`atexit." -"register` fails, its exception is now logged. Previously, only some " -"exceptions were logged, and the last exception was always silently ignored." +":issue:`42639`: At Python exit, if a callback registered " +"with :func:`atexit.register` fails, its exception is now logged. Previously, " +"only some exceptions were logged, and the last exception was always silently " +"ignored." msgstr "" msgid "" @@ -47969,13 +51146,13 @@ msgstr "" msgid "" ":issue:`34463`: Fixed discrepancy between :mod:`traceback` and the " -"interpreter in formatting of SyntaxError with lineno not set (:mod:" -"`traceback` was changed to match interpreter)." +"interpreter in formatting of SyntaxError with lineno not set " +"(:mod:`traceback` was changed to match interpreter)." msgstr "" msgid "" -":issue:`42393`: Raise :exc:`OverflowError` instead of silent truncation in :" -"meth:`socket.ntohs` and :meth:`socket.htons`. Silent truncation was " +":issue:`42393`: Raise :exc:`OverflowError` instead of silent truncation " +"in :meth:`socket.ntohs` and :meth:`socket.htons`. Silent truncation was " "deprecated in Python 3.7. Patch by Erlend E. Aasland" msgstr "" @@ -47985,8 +51162,8 @@ msgid "" msgstr "" msgid "" -"The integer test and conversion in ``randrange()`` now uses :func:`operator." -"index`." +"The integer test and conversion in ``randrange()`` now " +"uses :func:`operator.index`." msgstr "" msgid "Non-integer arguments to ``randrange()`` are deprecated." @@ -48024,8 +51201,8 @@ msgid "" msgstr "" msgid "" -":issue:`41960`: Add ``globalns`` and ``localns`` parameters to the :func:" -"`inspect.signature` and :meth:`inspect.Signature.from_callable`." +":issue:`41960`: Add ``globalns`` and ``localns`` parameters to " +"the :func:`inspect.signature` and :meth:`inspect.Signature.from_callable`." msgstr "" msgid ":issue:`41907`: fix ``format()`` behavior for ``IntFlag``" @@ -48058,13 +51235,13 @@ msgid "" msgstr "" msgid "" -":issue:`39068`: Fix initialization race condition in :func:`a85encode` and :" -"func:`b85encode` in :mod:`base64`. Patch by Brandon Stansbury." +":issue:`39068`: Fix initialization race condition in :func:`a85encode` " +"and :func:`b85encode` in :mod:`base64`. Patch by Brandon Stansbury." msgstr "" msgid "" -":issue:`17140`: Add documentation for the :class:`multiprocessing.pool." -"ThreadPool` class." +":issue:`17140`: Add documentation for " +"the :class:`multiprocessing.pool.ThreadPool` class." msgstr "" msgid "" @@ -48073,8 +51250,8 @@ msgid "" msgstr "" msgid "" -":issue:`42794`: Update test_nntplib to use official group name of news.aioe." -"org for testing. Patch by Donghee Na." +":issue:`42794`: Update test_nntplib to use official group name of " +"news.aioe.org for testing. Patch by Donghee Na." msgstr "" msgid ":issue:`31904`: Skip some asyncio tests on VxWorks." @@ -48185,8 +51362,9 @@ msgid "*Release date: 2020-12-07*" msgstr "" msgid "" -":issue:`40791`: Add ``volatile`` to the accumulator variable in ``hmac." -"compare_digest``, making constant-time-defeating optimizations less likely." +":issue:`40791`: Add ``volatile`` to the accumulator variable in " +"``hmac.compare_digest``, making constant-time-defeating optimizations less " +"likely." msgstr "" msgid "" @@ -48360,8 +51538,8 @@ msgid "" msgstr "" msgid "" -":issue:`42116`: Fix handling of trailing comments by :func:`inspect." -"getsource`." +":issue:`42116`: Fix handling of trailing comments " +"by :func:`inspect.getsource`." msgstr "" msgid "" @@ -48432,18 +51610,20 @@ msgid "" msgstr "" msgid "" -":issue:`42392`: Remove loop parameter from ``__init__`` in all ``asyncio." -"locks`` and ``asyncio.Queue`` classes. Patch provided by Yurii Karabas." +":issue:`42392`: Remove loop parameter from ``__init__`` in all " +"``asyncio.locks`` and ``asyncio.Queue`` classes. Patch provided by Yurii " +"Karabas." msgstr "" msgid "" -":issue:`15450`: Make :class:`filecmp.dircmp` respect subclassing. Now the :" -"attr:`filecmp.dircmp.subdirs` behaves as expected when subclassing dircmp." +":issue:`15450`: Make :class:`filecmp.dircmp` respect subclassing. Now " +"the :attr:`filecmp.dircmp.subdirs` behaves as expected when subclassing " +"dircmp." msgstr "" msgid "" -":issue:`42413`: The exception :exc:`socket.timeout` is now an alias of :exc:" -"`TimeoutError`." +":issue:`42413`: The exception :exc:`socket.timeout` is now an alias " +"of :exc:`TimeoutError`." msgstr "" msgid ":issue:`31904`: Support signal module on VxWorks." @@ -48460,8 +51640,8 @@ msgid "" ":issue:`42403`: Simplify the :mod:`importlib` external bootstrap code: " "``importlib._bootstrap_external`` now uses regular imports to import builtin " "modules. When it is imported, the builtin :func:`__import__` function is " -"already fully working and so can be used to import builtin modules like :mod:" -"`sys`. Patch by Victor Stinner." +"already fully working and so can be used to import builtin modules " +"like :mod:`sys`. Patch by Victor Stinner." msgstr "" msgid "" @@ -48478,9 +51658,9 @@ msgid "" msgstr "" msgid "" -":issue:`37205`: :func:`time.time`, :func:`time.perf_counter` and :func:`time." -"monotonic` functions can no longer fail with a Python fatal error, instead " -"raise a regular Python exception on failure." +":issue:`37205`: :func:`time.time`, :func:`time.perf_counter` " +"and :func:`time.monotonic` functions can no longer fail with a Python fatal " +"error, instead raise a regular Python exception on failure." msgstr "" msgid "" @@ -48497,11 +51677,12 @@ msgid "" msgstr "" msgid "" -":issue:`37205`: :func:`time.perf_counter` on Windows and :func:`time." -"monotonic` on macOS are now system-wide. Previously, they used an offset " -"computed at startup to reduce the precision loss caused by the float type. " -"Use :func:`time.perf_counter_ns` and :func:`time.monotonic_ns` added in " -"Python 3.7 to avoid this precision loss." +":issue:`37205`: :func:`time.perf_counter` on Windows " +"and :func:`time.monotonic` on macOS are now system-wide. Previously, they " +"used an offset computed at startup to reduce the precision loss caused by " +"the float type. Use :func:`time.perf_counter_ns` " +"and :func:`time.monotonic_ns` added in Python 3.7 to avoid this precision " +"loss." msgstr "" msgid "" @@ -48556,9 +51737,10 @@ msgid "" msgstr "" msgid "" -":issue:`42251`: Added :func:`threading.gettrace` and :func:`threading." -"getprofile` to retrieve the functions set by :func:`threading.settrace` and :" -"func:`threading.setprofile` respectively. Patch by Mario Corchero." +":issue:`42251`: Added :func:`threading.gettrace` " +"and :func:`threading.getprofile` to retrieve the functions set " +"by :func:`threading.settrace` and :func:`threading.setprofile` respectively. " +"Patch by Mario Corchero." msgstr "" msgid ":issue:`42249`: Fixed writing binary Plist files larger than 4 GiB." @@ -48608,9 +51790,10 @@ msgid "" msgstr "" msgid "" -":issue:`26389`: The :func:`traceback.format_exception`, :func:`traceback." -"format_exception_only`, and :func:`traceback.print_exception` functions can " -"now take an exception object as a positional-only argument." +":issue:`26389`: " +"The :func:`traceback.format_exception`, :func:`traceback.format_exception_only`, " +"and :func:`traceback.print_exception` functions can now take an exception " +"object as a positional-only argument." msgstr "" msgid "" @@ -48634,13 +51817,13 @@ msgid "" msgstr "" msgid "" -":issue:`41625`: Expose the :c:func:`splice` as :func:`os.splice` in the :mod:" -"`os` module. Patch by Pablo Galindo" +":issue:`41625`: Expose the :c:func:`splice` as :func:`os.splice` in " +"the :mod:`os` module. Patch by Pablo Galindo" msgstr "" msgid "" -":issue:`34215`: Clarify the error message for :exc:`asyncio." -"IncompleteReadError` when ``expected`` is ``None``." +":issue:`34215`: Clarify the error message " +"for :exc:`asyncio.IncompleteReadError` when ``expected`` is ``None``." msgstr "" msgid "" @@ -48653,8 +51836,8 @@ msgid "" msgstr "" msgid "" -":issue:`41332`: Added missing connect_accepted_socket() method to ``asyncio." -"AbstractEventLoop``." +":issue:`41332`: Added missing connect_accepted_socket() method to " +"``asyncio.AbstractEventLoop``." msgstr "" msgid "" @@ -48665,9 +51848,8 @@ msgid "" msgstr "" msgid "" -":issue:`40968`: :mod:`urllib.request` and :mod:`http.client` now send " -"``http/1.1`` ALPN extension during TLS handshake when no custom context is " -"supplied." +":issue:`40968`: :mod:`urllib.request` and :mod:`http.client` now send ``http/" +"1.1`` ALPN extension during TLS handshake when no custom context is supplied." msgstr "" msgid "" @@ -48681,8 +51863,8 @@ msgid "" msgstr "" msgid "" -":issue:`40550`: Fix time-of-check/time-of-action issue in subprocess.Popen." -"send_signal." +":issue:`40550`: Fix time-of-check/time-of-action issue in " +"subprocess.Popen.send_signal." msgstr "" msgid "" @@ -48708,8 +51890,8 @@ msgid "" msgstr "" msgid "" -":issue:`41473`: Re-enable test_gdb on gdb 9.2 and newer: https://bugzilla." -"redhat.com/show_bug.cgi?id=1866884 bug is fixed in gdb 10.1." +":issue:`41473`: Re-enable test_gdb on gdb 9.2 and newer: https://" +"bugzilla.redhat.com/show_bug.cgi?id=1866884 bug is fixed in gdb 10.1." msgstr "" msgid "" @@ -48782,8 +51964,8 @@ msgid "" msgstr "" msgid "" -":issue:`42087`: Support was removed for AIX 5.3 and below. See :issue:" -"`40680`." +":issue:`42087`: Support was removed for AIX 5.3 and below. " +"See :issue:`40680`." msgstr "" msgid "" @@ -48843,8 +52025,8 @@ msgid ":issue:`42426`: Fix reporting offset of the RE error in searchengine." msgstr "" msgid "" -":issue:`42415`: Get docstrings for IDLE calltips more often by using inspect." -"getdoc." +":issue:`42415`: Get docstrings for IDLE calltips more often by using " +"inspect.getdoc." msgstr "" msgid "" @@ -48859,9 +52041,9 @@ msgid "" msgstr "" msgid "" -":issue:`42423`: The :c:func:`PyType_FromSpecWithBases` and :c:func:" -"`PyType_FromModuleAndSpec` functions now accept a single class as the " -"*bases* argument." +":issue:`42423`: The :c:func:`PyType_FromSpecWithBases` " +"and :c:func:`PyType_FromModuleAndSpec` functions now accept a single class " +"as the *bases* argument." msgstr "" msgid "" @@ -48928,8 +52110,8 @@ msgstr "" msgid "" ":issue:`41713`: Removed the undocumented ``PyOS_InitInterrupts()`` function. " -"Initializing Python already implicitly installs signal handlers: see :c:" -"member:`PyConfig.install_signal_handlers`. Patch by Victor Stinner." +"Initializing Python already implicitly installs signal handlers: " +"see :c:member:`PyConfig.install_signal_handlers`. Patch by Victor Stinner." msgstr "" msgid "" @@ -48950,11 +52132,12 @@ msgid "" msgstr "" msgid "" -":issue:`42260`: The :c:func:`PyConfig_Read` function now only parses :c:" -"member:`PyConfig.argv` arguments once: :c:member:`PyConfig.parse_argv` is " -"set to ``2`` after arguments are parsed. Since Python arguments are " -"strippped from :c:member:`PyConfig.argv`, parsing arguments twice would " -"parse the application options as Python options." +":issue:`42260`: The :c:func:`PyConfig_Read` function now only " +"parses :c:member:`PyConfig.argv` arguments " +"once: :c:member:`PyConfig.parse_argv` is set to ``2`` after arguments are " +"parsed. Since Python arguments are strippped from :c:member:`PyConfig.argv`, " +"parsing arguments twice would parse the application options as Python " +"options." msgstr "" msgid "" @@ -48982,9 +52165,9 @@ msgstr "" msgid "" ":issue:`42171`: The :c:macro:`METH_FASTCALL` calling convention is added to " -"the limited API. The functions :c:func:`PyModule_AddType`, :c:func:" -"`PyType_FromModuleAndSpec`, :c:func:`PyType_GetModule` and :c:func:" -"`PyType_GetModuleState` are added to the limited API on Windows." +"the limited API. The " +"functions :c:func:`PyModule_AddType`, :c:func:`PyType_FromModuleAndSpec`, :c:func:`PyType_GetModule` " +"and :c:func:`PyType_GetModuleState` are added to the limited API on Windows." msgstr "" msgid "" @@ -48995,10 +52178,10 @@ msgid ":issue:`41073`: :c:func:`PyType_GetSlot()` can now accept static types." msgstr "" msgid "" -":issue:`30459`: :c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and :c:" -"func:`PyCell_SET` macros can no longer be used as l-value or r-value. For " -"example, ``x = PyList_SET_ITEM(a, b, c)`` and ``PyList_SET_ITEM(a, b, c) = " -"x`` now fail with a compiler error. It prevents bugs like ``if " +":issue:`30459`: :c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` " +"and :c:func:`PyCell_SET` macros can no longer be used as l-value or r-value. " +"For example, ``x = PyList_SET_ITEM(a, b, c)`` and ``PyList_SET_ITEM(a, b, c) " +"= x`` now fail with a compiler error. It prevents bugs like ``if " "(PyList_SET_ITEM (a, b, c) < 0) ...`` test. Patch by Zackery Spytz and " "Victor Stinner." msgstr "" @@ -49039,8 +52222,8 @@ msgid "" msgstr "" msgid "" -":issue:`42206`: Propagate and raise the errors caused by :c:func:" -"`PyAST_Validate` in the parser." +":issue:`42206`: Propagate and raise the errors caused " +"by :c:func:`PyAST_Validate` in the parser." msgstr "" msgid "" @@ -49108,9 +52291,10 @@ msgid "" msgstr "" msgid "" -":issue:`41902`: Micro optimization when compute :c:member:" -"`~PySequenceMethods.sq_item` and :c:member:`~PyMappingMethods.mp_subscript` " -"of :class:`range`. Patch by Donghee Na." +":issue:`41902`: Micro optimization when " +"compute :c:member:`~PySequenceMethods.sq_item` " +"and :c:member:`~PyMappingMethods.mp_subscript` of :class:`range`. Patch by " +"Donghee Na." msgstr "" msgid "" @@ -49143,10 +52327,10 @@ msgid "" msgstr "" msgid "" -":issue:`42233`: The :func:`repr` of :mod:`typing` types containing :ref:" -"`Generic Alias Types ` previously did not show the " -"parameterized types in the ``GenericAlias``. They have now been changed to " -"do so." +":issue:`42233`: The :func:`repr` of :mod:`typing` types " +"containing :ref:`Generic Alias Types ` previously did " +"not show the parameterized types in the ``GenericAlias``. They have now " +"been changed to do so." msgstr "" msgid "" @@ -49168,8 +52352,9 @@ msgstr "" msgid "" ":issue:`42157`: Convert the :mod:`unicodedata` extension module to the " -"multiphase initialization API (:pep:`489`) and convert the ``unicodedata." -"UCD`` static type to a heap type. Patch by Mohamed Koubaa and Victor Stinner." +"multiphase initialization API (:pep:`489`) and convert the " +"``unicodedata.UCD`` static type to a heap type. Patch by Mohamed Koubaa and " +"Victor Stinner." msgstr "" msgid "" @@ -49179,10 +52364,10 @@ msgid "" msgstr "" msgid "" -":issue:`42103`: :exc:`~plistlib.InvalidFileException` and :exc:" -"`RecursionError` are now the only errors caused by loading malformed binary " -"Plist file (previously ValueError and TypeError could be raised in some " -"specific cases)." +":issue:`42103`: :exc:`~plistlib.InvalidFileException` " +"and :exc:`RecursionError` are now the only errors caused by loading " +"malformed binary Plist file (previously ValueError and TypeError could be " +"raised in some specific cases)." msgstr "" msgid "" @@ -49209,9 +52394,9 @@ msgid "" msgstr "" msgid "" -":issue:`42065`: Fix an incorrectly formatted error from :meth:`!_codecs." -"charmap_decode` when called with a mapped value outside the range of valid " -"Unicode code points. PR by Max Bernstein." +":issue:`42065`: Fix an incorrectly formatted error from :meth:`!" +"_codecs.charmap_decode` when called with a mapped value outside the range of " +"valid Unicode code points. PR by Max Bernstein." msgstr "" msgid "" @@ -49231,16 +52416,17 @@ msgid "" msgstr "" msgid "" -":issue:`35823`: Use ``vfork()`` instead of ``fork()`` for :func:`subprocess." -"Popen` on Linux to improve performance in cases where it is deemed safe." +":issue:`35823`: Use ``vfork()`` instead of ``fork()`` " +"for :func:`subprocess.Popen` on Linux to improve performance in cases where " +"it is deemed safe." msgstr "" msgid "" -":issue:`42043`: Add support for ``zipfile.Path`` inheritance. ``zipfile.Path." -"is_file()`` now returns False for non-existent names. ``zipfile.Path`` " -"objects now expose a ``.filename`` attribute and rely on that to resolve ``." -"name`` and ``.parent`` when the ``Path`` object is at the root of the " -"zipfile." +":issue:`42043`: Add support for ``zipfile.Path`` inheritance. " +"``zipfile.Path.is_file()`` now returns False for non-existent names. " +"``zipfile.Path`` objects now expose a ``.filename`` attribute and rely on " +"that to resolve ``.name`` and ``.parent`` when the ``Path`` object is at the " +"root of the zipfile." msgstr "" msgid ":issue:`42021`: Fix possible ref leaks in :mod:`sqlite3` module init." @@ -49252,10 +52438,10 @@ msgid "" msgstr "" msgid "" -":issue:`41976`: Fixed a bug that was causing :func:`ctypes.util." -"find_library` to return ``None`` when triying to locate a library in an " -"environment when gcc>=9 is available and ``ldconfig`` is not. Patch by Pablo " -"Galindo" +":issue:`41976`: Fixed a bug that was " +"causing :func:`ctypes.util.find_library` to return ``None`` when triying to " +"locate a library in an environment when gcc>=9 is available and ``ldconfig`` " +"is not. Patch by Pablo Galindo" msgstr "" msgid "" @@ -49282,9 +52468,9 @@ msgid ":issue:`41876`: Tkinter font class repr uses font name" msgstr "" msgid "" -":issue:`41831`: ``str()`` for the ``type`` attribute of the ``tkinter." -"Event`` object always returns now the numeric code returned by Tk instead of " -"the name of the event type." +":issue:`41831`: ``str()`` for the ``type`` attribute of the " +"``tkinter.Event`` object always returns now the numeric code returned by Tk " +"instead of the name of the event type." msgstr "" msgid "" @@ -49293,9 +52479,10 @@ msgid "" msgstr "" msgid "" -":issue:`41747`: Ensure all methods that generated from :func:`dataclasses." -"dataclass` objects now have the proper ``__qualname__`` attribute referring " -"to the class they belong to. Patch by Batuhan Taskaya." +":issue:`41747`: Ensure all methods that generated " +"from :func:`dataclasses.dataclass` objects now have the proper " +"``__qualname__`` attribute referring to the class they belong to. Patch by " +"Batuhan Taskaya." msgstr "" msgid "" @@ -49323,8 +52510,8 @@ msgid ":issue:`4356`: Add a key function to the bisect module." msgstr "" msgid "" -":issue:`40592`: :func:`shutil.which` now ignores empty entries in :envvar:" -"`PATHEXT` instead of treating them as a match." +":issue:`40592`: :func:`shutil.which` now ignores empty entries " +"in :envvar:`PATHEXT` instead of treating them as a match." msgstr "" msgid "" @@ -49334,8 +52521,9 @@ msgid "" msgstr "" msgid "" -":issue:`34204`: The :mod:`shelve` module now uses :const:`pickle." -"DEFAULT_PROTOCOL` by default instead of :mod:`pickle` protocol ``3``." +":issue:`34204`: The :mod:`shelve` module now " +"uses :const:`pickle.DEFAULT_PROTOCOL` by default instead of :mod:`pickle` " +"protocol ``3``." msgstr "" msgid "" @@ -49366,14 +52554,14 @@ msgstr "" msgid "" ":issue:`42010`: Clarify that subscription expressions are also valid for " "certain :term:`classes ` and :term:`types ` in the standard " -"library, and for user-defined classes and types if the classmethod :meth:" -"`__class_getitem__` is provided." +"library, and for user-defined classes and types if the " +"classmethod :meth:`__class_getitem__` is provided." msgstr "" msgid "" ":issue:`41805`: Documented :ref:`generic alias type ` " -"and :data:`types.GenericAlias`. Also added an entry in glossary for :term:" -"`generic types `." +"and :data:`types.GenericAlias`. Also added an entry in glossary " +"for :term:`generic types `." msgstr "" msgid ":issue:`39693`: Fix tarfile's extractfile documentation" @@ -49528,9 +52716,9 @@ msgid "" msgstr "" msgid "" -":issue:`41909`: Fixed stack overflow in :func:`issubclass` and :func:" -"`isinstance` when getting the ``__bases__`` attribute leads to infinite " -"recursion." +":issue:`41909`: Fixed stack overflow in :func:`issubclass` " +"and :func:`isinstance` when getting the ``__bases__`` attribute leads to " +"infinite recursion." msgstr "" msgid "" @@ -49616,8 +52804,8 @@ msgid "" msgstr "" msgid "" -":issue:`41675`: The implementation of :func:`signal.siginterrupt` now uses :" -"c:func:`!sigaction` (if it is available in the system) instead of the " +":issue:`41675`: The implementation of :func:`signal.siginterrupt` now " +"uses :c:func:`!sigaction` (if it is available in the system) instead of the " "deprecated :c:func:`!siginterrupt`. Patch by Pablo Galindo." msgstr "" @@ -49628,8 +52816,8 @@ msgid "" msgstr "" msgid "" -":issue:`41654`: Fix a crash that occurred when destroying subclasses of :" -"class:`MemoryError`. Patch by Pablo Galindo." +":issue:`41654`: Fix a crash that occurred when destroying subclasses " +"of :class:`MemoryError`. Patch by Pablo Galindo." msgstr "" msgid "" @@ -49702,8 +52890,8 @@ msgid "" msgstr "" msgid "" -":issue:`41334`: Constructors :func:`str`, :func:`bytes` and :func:" -"`bytearray` are now faster (around 30--40% for small objects)." +":issue:`41334`: Constructors :func:`str`, :func:`bytes` " +"and :func:`bytearray` are now faster (around 30--40% for small objects)." msgstr "" msgid "" @@ -49719,8 +52907,8 @@ msgid "" msgstr "" msgid "" -":issue:`41247`: Always cache the running loop holder when running ``asyncio." -"set_running_loop``." +":issue:`41247`: Always cache the running loop holder when running " +"``asyncio.set_running_loop``." msgstr "" msgid "" @@ -49742,10 +52930,10 @@ msgid "" msgstr "" msgid "" -":issue:`41218`: Python 3.8.3 had a regression where compiling with ast." -"PyCF_ALLOW_TOP_LEVEL_AWAIT would aggressively mark list comprehension with " -"CO_COROUTINE. Now only list comprehension making use of async/await will " -"tagged as so." +":issue:`41218`: Python 3.8.3 had a regression where compiling with " +"ast.PyCF_ALLOW_TOP_LEVEL_AWAIT would aggressively mark list comprehension " +"with CO_COROUTINE. Now only list comprehension making use of async/await " +"will tagged as so." msgstr "" msgid "" @@ -49816,8 +53004,8 @@ msgid "" msgstr "" msgid "" -":issue:`40939`: Remove the remaining files from the old parser and the :mod:" -"`symbol` module." +":issue:`40939`: Remove the remaining files from the old parser and " +"the :mod:`symbol` module." msgstr "" msgid ":issue:`40077`: Convert :mod:`!_bz2` to use :c:func:`PyType_FromSpec`." @@ -49915,13 +53103,13 @@ msgstr "" msgid "" ":issue:`40870`: Raise :exc:`ValueError` when validating custom AST's where " -"the constants ``True``, ``False`` and ``None`` are used within a :class:`ast." -"Name` node." +"the constants ``True``, ``False`` and ``None`` are used within " +"a :class:`ast.Name` node." msgstr "" msgid "" -":issue:`40854`: Allow overriding :data:`sys.platlibdir` via a new :envvar:" -"`PYTHONPLATLIBDIR` environment variable." +":issue:`40854`: Allow overriding :data:`sys.platlibdir` via a " +"new :envvar:`PYTHONPLATLIBDIR` environment variable." msgstr "" msgid "" @@ -49940,15 +53128,15 @@ msgstr "" msgid "" ":issue:`40824`: Unexpected errors in calling the ``__iter__`` method are no " -"longer masked by ``TypeError`` in the :keyword:`in` operator and functions :" -"func:`~operator.contains`, :func:`~operator.indexOf` and :func:`~operator." -"countOf` of the :mod:`operator` module." +"longer masked by ``TypeError`` in the :keyword:`in` operator and " +"functions :func:`~operator.contains`, :func:`~operator.indexOf` " +"and :func:`~operator.countOf` of the :mod:`operator` module." msgstr "" msgid "" -":issue:`40792`: Attributes ``start``, ``stop`` and ``step`` of the :class:" -"`range` object now always has exact type :class:`int`. Previously, they " -"could have been an instance of a subclass of ``int``." +":issue:`40792`: Attributes ``start``, ``stop`` and ``step`` of " +"the :class:`range` object now always has exact type :class:`int`. " +"Previously, they could have been an instance of a subclass of ``int``." msgstr "" msgid "" @@ -49968,10 +53156,11 @@ msgid "" msgstr "" msgid "" -":issue:`40217`: Instances of types created with :c:func:" -"`PyType_FromSpecWithBases` will no longer automatically visit their class " -"object when traversing references in the garbage collector. The user is " -"expected to manually visit the object's class. Patch by Pablo Galindo." +":issue:`40217`: Instances of types created " +"with :c:func:`PyType_FromSpecWithBases` will no longer automatically visit " +"their class object when traversing references in the garbage collector. The " +"user is expected to manually visit the object's class. Patch by Pablo " +"Galindo." msgstr "" msgid "" @@ -50012,8 +53201,9 @@ msgid "" msgstr "" msgid "" -":issue:`29590`: Make the stack trace correct after calling :meth:`generator." -"throw` on a generator that has yielded from a ``yield from``." +":issue:`29590`: Make the stack trace correct after " +"calling :meth:`generator.throw` on a generator that has yielded from a " +"``yield from``." msgstr "" msgid "" @@ -50029,10 +53219,10 @@ msgstr "" msgid "" ":issue:`37999`: Builtin and extension functions that take integer arguments " -"no longer accept :class:`~decimal.Decimal`\\ s, :class:`~fractions." -"Fraction`\\ s and other objects that can be converted to integers only with " -"a loss (e.g. that have the :meth:`~object.__int__` method but do not have " -"the :meth:`~object.__index__` method)." +"no longer accept :class:`~decimal.Decimal`\\ " +"s, :class:`~fractions.Fraction`\\ s and other objects that can be converted " +"to integers only with a loss (e.g. that have the :meth:`~object.__int__` " +"method but do not have the :meth:`~object.__index__` method)." msgstr "" msgid "" @@ -50042,9 +53232,9 @@ msgstr "" msgid "" ":issue:`36982`: Use ncurses extended color functions when available to " -"support terminals with 256 colors, and add the new function :func:`curses." -"has_extended_color_support` to indicate whether extended color support is " -"provided by the underlying ncurses library." +"support terminals with 256 colors, and add the new " +"function :func:`curses.has_extended_color_support` to indicate whether " +"extended color support is provided by the underlying ncurses library." msgstr "" msgid "" @@ -50091,9 +53281,9 @@ msgid "" msgstr "" msgid "" -":issue:`40670`: More reliable validation of statements in :class:`timeit." -"Timer`. It now accepts \"empty\" statements (only whitespaces and comments) " -"and rejects misindentent statements." +":issue:`40670`: More reliable validation of statements " +"in :class:`timeit.Timer`. It now accepts \"empty\" statements (only " +"whitespaces and comments) and rejects misindentent statements." msgstr "" msgid "" @@ -50139,8 +53329,8 @@ msgstr "" msgid "" "Previously there was no way to check that without using private API. See the " -"`relevant issue in python/typing `_." +"`relevant issue in python/typing `_." msgstr "" msgid "" @@ -50189,8 +53379,8 @@ msgstr "" msgid "" ":issue:`41662`: No longer override exceptions raised in ``__len__()`` of a " -"sequence of parameters in :mod:`sqlite3` with :exc:`~sqlite3." -"ProgrammingError`." +"sequence of parameters in :mod:`sqlite3` " +"with :exc:`~sqlite3.ProgrammingError`." msgstr "" msgid "" @@ -50226,9 +53416,10 @@ msgid "" msgstr "" msgid "" -":issue:`32751`: When cancelling the task due to a timeout, :meth:`asyncio." -"wait_for` will now wait until the cancellation is complete also in the case " -"when *timeout* is <= 0, like it does with positive timeouts." +":issue:`32751`: When cancelling the task due to a " +"timeout, :meth:`asyncio.wait_for` will now wait until the cancellation is " +"complete also in the case when *timeout* is <= 0, like it does with positive " +"timeouts." msgstr "" msgid "" @@ -50252,13 +53443,13 @@ msgid "" msgstr "" msgid "" -":issue:`41513`: Minor algorithmic improvement to math.hypot() and math." -"dist() giving small gains in speed and accuracy." +":issue:`41513`: Minor algorithmic improvement to math.hypot() and " +"math.dist() giving small gains in speed and accuracy." msgstr "" msgid "" -":issue:`41503`: Fixed a race between setTarget and flush in logging.handlers." -"MemoryHandler." +":issue:`41503`: Fixed a race between setTarget and flush in " +"logging.handlers.MemoryHandler." msgstr "" msgid ":issue:`41497`: Fix potential UnicodeDecodeError in dis module." @@ -50302,8 +53493,8 @@ msgid ":issue:`41364`: Reduce import overhead of :mod:`uuid`." msgstr "" msgid "" -":issue:`35328`: Set the environment variable ``VIRTUAL_ENV_PROMPT`` at :mod:" -"`venv` activation." +":issue:`35328`: Set the environment variable ``VIRTUAL_ENV_PROMPT`` " +"at :mod:`venv` activation." msgstr "" msgid "" @@ -50337,8 +53528,8 @@ msgid "" msgstr "" msgid "" -":issue:`41235`: Fix the error handling in :meth:`ssl.SSLContext." -"load_dh_params`." +":issue:`41235`: Fix the error handling " +"in :meth:`ssl.SSLContext.load_dh_params`." msgstr "" msgid "" @@ -50347,8 +53538,8 @@ msgid "" msgstr "" msgid "" -":issue:`29727`: Register :class:`array.array` as a :class:`~collections.abc." -"MutableSequence`. Patch by Pablo Galindo." +":issue:`29727`: Register :class:`array.array` as " +"a :class:`~collections.abc.MutableSequence`. Patch by Pablo Galindo." msgstr "" msgid "" @@ -50368,8 +53559,8 @@ msgstr "" msgid "" ":issue:`41193`: The ``write_history()`` atexit function of the readline " "completer now ignores any :exc:`OSError` to ignore error if the filesystem " -"is read-only, instead of only ignoring :exc:`FileNotFoundError` and :exc:" -"`PermissionError`." +"is read-only, instead of only ignoring :exc:`FileNotFoundError` " +"and :exc:`PermissionError`." msgstr "" msgid ":issue:`41182`: selector: use DefaultSelector based upon implementation" @@ -50389,16 +53580,16 @@ msgid "" msgstr "" msgid "" -":issue:`31082`: Use the term \"iterable\" in the docstring for :func:" -"`functools.reduce`." +":issue:`31082`: Use the term \"iterable\" in the docstring " +"for :func:`functools.reduce`." msgstr "" msgid ":issue:`40521`: Remove freelist from collections.deque()." msgstr "" msgid "" -":issue:`31938`: Fix default-value signatures of several functions in the :" -"mod:`select` module - by Anthony Sottile." +":issue:`31938`: Fix default-value signatures of several functions in " +"the :mod:`select` module - by Anthony Sottile." msgstr "" msgid "" @@ -50439,8 +53630,8 @@ msgid "" msgstr "" msgid "" -":issue:`41025`: Fixed an issue preventing the C implementation of :class:" -"`zoneinfo.ZoneInfo` from being subclassed." +":issue:`41025`: Fixed an issue preventing the C implementation " +"of :class:`zoneinfo.ZoneInfo` from being subclassed." msgstr "" msgid "" @@ -50481,8 +53672,8 @@ msgid "" msgstr "" msgid "" -":issue:`40939`: Use the new PEG parser when generating the stdlib :mod:" -"`keyword` module." +":issue:`40939`: Use the new PEG parser when generating the " +"stdlib :mod:`keyword` module." msgstr "" msgid "" @@ -50498,9 +53689,9 @@ msgid "" msgstr "" msgid "" -":issue:`40884`: Added a ``defaults`` parameter to :class:`logging." -"Formatter`, to allow specifying default values for custom fields. Patch by " -"Asaf Alon and Bar Harel." +":issue:`40884`: Added a ``defaults`` parameter " +"to :class:`logging.Formatter`, to allow specifying default values for custom " +"fields. Patch by Asaf Alon and Bar Harel." msgstr "" msgid ":issue:`40876`: Clarify error message in the :mod:`csv` module." @@ -50511,8 +53702,9 @@ msgid "" msgstr "" msgid "" -":issue:`40807`: Stop codeop._maybe_compile, used by code." -"InteractiveInterpreter (and IDLE). from emitting each warning three times." +":issue:`40807`: Stop codeop._maybe_compile, used by " +"code.InteractiveInterpreter (and IDLE). from emitting each warning three " +"times." msgstr "" msgid "" @@ -50534,14 +53726,14 @@ msgstr "" msgid "" ":issue:`17005`: The topological sort functionality that was introduced " -"initially in the :mod:`functools` module has been moved to a new :mod:" -"`graphlib` module to better accommodate the new tools and keep the original " -"scope of the :mod:`functools` module. Patch by Pablo Galindo" +"initially in the :mod:`functools` module has been moved to a " +"new :mod:`graphlib` module to better accommodate the new tools and keep the " +"original scope of the :mod:`functools` module. Patch by Pablo Galindo" msgstr "" msgid "" -":issue:`40834`: Fix truncate when sending str object with_xxsubinterpreters." -"channel_send." +":issue:`40834`: Fix truncate when sending str object " +"with_xxsubinterpreters.channel_send." msgstr "" msgid ":issue:`40755`: Add rich comparisons to collections.Counter()." @@ -50549,8 +53741,9 @@ msgstr "" msgid "" ":issue:`26407`: Unexpected errors in calling the ``__iter__`` method are no " -"longer masked by ``TypeError`` in :func:`csv.reader`, :func:`csv.writer." -"writerow` and :meth:`csv.writer.writerows`." +"longer masked by ``TypeError`` " +"in :func:`csv.reader`, :func:`csv.writer.writerow` " +"and :meth:`csv.writer.writerows`." msgstr "" msgid "" @@ -50593,14 +53786,15 @@ msgstr "" msgid "" ":issue:`40795`: :mod:`ctypes` module: If ctypes fails to convert the result " -"of a callback or if a ctypes callback function raises an exception, sys." -"unraisablehook is now called with an exception set. Previously, the error " -"was logged into stderr by :c:func:`PyErr_Print`." +"of a callback or if a ctypes callback function raises an exception, " +"sys.unraisablehook is now called with an exception set. Previously, the " +"error was logged into stderr by :c:func:`PyErr_Print`." msgstr "" msgid "" -":issue:`16995`: Add :func:`base64.b32hexencode` and :func:`base64." -"b32hexdecode` to support the Base32 Encoding with Extended Hex Alphabet." +":issue:`16995`: Add :func:`base64.b32hexencode` " +"and :func:`base64.b32hexdecode` to support the Base32 Encoding with Extended " +"Hex Alphabet." msgstr "" msgid "" @@ -50629,8 +53823,8 @@ msgid "" msgstr "" msgid "" -":issue:`40726`: Handle cases where the ``end_lineno`` is ``None`` on :func:" -"`ast.increment_lineno`." +":issue:`40726`: Handle cases where the ``end_lineno`` is ``None`` " +"on :func:`ast.increment_lineno`." msgstr "" msgid "" @@ -50664,25 +53858,25 @@ msgstr "" msgid "" ":issue:`25920`: On macOS, when building Python for macOS 10.4 and older, " -"which wasn't the case for python.org macOS installer, :func:`socket." -"getaddrinfo` no longer uses an internal lock to prevent race conditions when " -"calling ``getaddrinfo()`` which is thread-safe since macOS 10.5. Python 3.9 " -"requires macOS 10.6 or newer. The internal lock caused random hang on fork " -"when another thread was calling :func:`socket.getaddrinfo`. The lock was " -"also used on FreeBSD older than 5.3, OpenBSD older than 201311 and NetBSD " -"older than 4." +"which wasn't the case for python.org macOS " +"installer, :func:`socket.getaddrinfo` no longer uses an internal lock to " +"prevent race conditions when calling ``getaddrinfo()`` which is thread-safe " +"since macOS 10.5. Python 3.9 requires macOS 10.6 or newer. The internal lock " +"caused random hang on fork when another thread was " +"calling :func:`socket.getaddrinfo`. The lock was also used on FreeBSD older " +"than 5.3, OpenBSD older than 201311 and NetBSD older than 4." msgstr "" msgid "" -":issue:`40671`: Prepare ``_hashlib`` for :pep:`489` and use :c:func:" -"`PyModule_AddType`." +":issue:`40671`: Prepare ``_hashlib`` for :pep:`489` and " +"use :c:func:`PyModule_AddType`." msgstr "" msgid "" ":issue:`32309`: Added a new :term:`coroutine` :func:`asyncio.to_thread`. It " "is mainly used for running IO-bound functions in a separate thread to avoid " -"blocking the event loop, and essentially works as a high-level version of :" -"meth:`~asyncio.loop.run_in_executor` that can directly take keyword " +"blocking the event loop, and essentially works as a high-level version " +"of :meth:`~asyncio.loop.run_in_executor` that can directly take keyword " "arguments." msgstr "" @@ -50706,9 +53900,9 @@ msgid "" msgstr "" msgid "" -":issue:`39385`: A new test assertion context-manager, :func:`unittest." -"assertNoLogs` will ensure a given block of code emits no log messages using " -"the logging module. Contributed by Kit Yan Choi." +":issue:`39385`: A new test assertion context-" +"manager, :func:`unittest.assertNoLogs` will ensure a given block of code " +"emits no log messages using the logging module. Contributed by Kit Yan Choi." msgstr "" msgid "" @@ -50750,8 +53944,8 @@ msgid "" msgstr "" msgid "" -":issue:`38731`: Add ``--quiet`` option to command-line interface of :mod:" -"`py_compile`. Patch by Gregory Schevchenko." +":issue:`38731`: Add ``--quiet`` option to command-line interface " +"of :mod:`py_compile`. Patch by Gregory Schevchenko." msgstr "" msgid "" @@ -50760,8 +53954,8 @@ msgid "" msgstr "" msgid "" -":issue:`38144`: Added the *root_dir* and *dir_fd* parameters in :func:`glob." -"glob`." +":issue:`38144`: Added the *root_dir* and *dir_fd* parameters " +"in :func:`glob.glob`." msgstr "" msgid "" @@ -50815,8 +54009,8 @@ msgid "" msgstr "" msgid "" -":issue:`28557`: Improve the error message for a misbehaving ``rawio." -"readinto``" +":issue:`28557`: Improve the error message for a misbehaving " +"``rawio.readinto``" msgstr "" msgid "" @@ -50894,9 +54088,9 @@ msgid "" msgstr "" msgid "" -":issue:`41939`: Fix test_site.test_license_exists_at_url(): call ``urllib." -"request.urlcleanup()`` to reset the global ``urllib.request._opener``. Patch " -"by Victor Stinner." +":issue:`41939`: Fix test_site.test_license_exists_at_url(): call " +"``urllib.request.urlcleanup()`` to reset the global " +"``urllib.request._opener``. Patch by Victor Stinner." msgstr "" msgid ":issue:`41731`: Make test_cmd_line_script pass with option '-vv'." @@ -50906,8 +54100,8 @@ msgid ":issue:`41602`: Add tests for SIGINT handling in the runpy module." msgstr "" msgid "" -":issue:`41521`: :mod:`test.support`: Rename ``blacklist`` parameter of :func:" -"`~test.support.check__all__` to ``not_exported``." +":issue:`41521`: :mod:`test.support`: Rename ``blacklist`` parameter " +"of :func:`~test.support.check__all__` to ``not_exported``." msgstr "" msgid ":issue:`41477`: Make ctypes optional in test_genericalias." @@ -50926,9 +54120,9 @@ msgstr "" msgid "" ":issue:`38377`: On Linux, skip tests using multiprocessing if the current " -"user cannot create a file in ``/dev/shm/`` directory. Add the :func:`~test." -"support.skip_if_broken_multiprocessing_synchronize` function to the :mod:" -"`test.support` module." +"user cannot create a file in ``/dev/shm/`` directory. Add " +"the :func:`~test.support.skip_if_broken_multiprocessing_synchronize` " +"function to the :mod:`test.support` module." msgstr "" msgid "" @@ -50937,14 +54131,14 @@ msgid "" msgstr "" msgid "" -":issue:`41003`: Fix ``test_copyreg`` when ``numpy`` is installed: ``test." -"pickletester`` now saves/restores warnings filters when importing ``numpy``, " -"to ignore filters installed by ``numpy``." +":issue:`41003`: Fix ``test_copyreg`` when ``numpy`` is installed: " +"``test.pickletester`` now saves/restores warnings filters when importing " +"``numpy``, to ignore filters installed by ``numpy``." msgstr "" msgid "" -":issue:`40964`: Disable remote :mod:`imaplib` tests, host cyrus.andrew.cmu." -"edu is blocking incoming connections." +":issue:`40964`: Disable remote :mod:`imaplib` tests, host " +"cyrus.andrew.cmu.edu is blocking incoming connections." msgstr "" msgid "" @@ -51035,9 +54229,9 @@ msgid "" msgstr "" msgid "" -":issue:`41074`: Fixed support of non-ASCII names in functions :func:`!msilib." -"OpenDatabase` and :func:`!msilib.init_database` and non-ASCII SQL in method :" -"meth:`!msilib.Database.OpenView`." +":issue:`41074`: Fixed support of non-ASCII names in functions :func:`!" +"msilib.OpenDatabase` and :func:`!msilib.init_database` and non-ASCII SQL in " +"method :meth:`!msilib.Database.OpenView`." msgstr "" msgid "" @@ -51140,14 +54334,14 @@ msgstr "" msgid "" ":issue:`41936`: Removed undocumented macros ``Py_ALLOW_RECURSION`` and " -"``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of the :c:" -"type:`PyInterpreterState` structure." +"``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of " +"the :c:type:`PyInterpreterState` structure." msgstr "" msgid "" ":issue:`41692`: The ``PyUnicode_InternImmortal()`` function is now " -"deprecated and will be removed in Python 3.12: use :c:func:" -"`PyUnicode_InternInPlace` instead. Patch by Victor Stinner." +"deprecated and will be removed in Python 3.12: " +"use :c:func:`PyUnicode_InternInPlace` instead. Patch by Victor Stinner." msgstr "" msgid "" @@ -51167,8 +54361,9 @@ msgid "" msgstr "" msgid "" -":issue:`41524`: Fix bug in :c:func:`PyOS_mystrnicmp` and :c:func:" -"`PyOS_mystricmp` that incremented pointers beyond the end of a string." +":issue:`41524`: Fix bug in :c:func:`PyOS_mystrnicmp` " +"and :c:func:`PyOS_mystricmp` that incremented pointers beyond the end of a " +"string." msgstr "" msgid "" @@ -51178,9 +54373,9 @@ msgid "" msgstr "" msgid "" -":issue:`30155`: Add :c:func:`PyDateTime_DATE_GET_TZINFO` and :c:func:" -"`PyDateTime_TIME_GET_TZINFO` macros for accessing the ``tzinfo`` attributes " -"of :class:`datetime.datetime` and :class:`datetime.time` objects." +":issue:`30155`: Add :c:func:`PyDateTime_DATE_GET_TZINFO` " +"and :c:func:`PyDateTime_TIME_GET_TZINFO` macros for accessing the ``tzinfo`` " +"attributes of :class:`datetime.datetime` and :class:`datetime.time` objects." msgstr "" msgid "" @@ -51226,8 +54421,8 @@ msgstr "" msgid "" ":issue:`40989`: The :c:func:`PyObject_INIT` and :c:func:`PyObject_INIT_VAR` " -"macros become aliases to, respectively, :c:func:`PyObject_Init` and :c:func:" -"`PyObject_InitVar` functions." +"macros become aliases to, respectively, :c:func:`PyObject_Init` " +"and :c:func:`PyObject_InitVar` functions." msgstr "" msgid "" @@ -51236,10 +54431,11 @@ msgid "" msgstr "" msgid "" -":issue:`40943`: The ``PY_SSIZE_T_CLEAN`` macro must now be defined to use :c:" -"func:`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use ``#``: " -"``es#``, ``et#``, ``s#``, ``u#``, ``y#``, ``z#``, ``U#`` and ``Z#``. See :" -"ref:`Parsing arguments and building values ` and the :pep:`353`." +":issue:`40943`: The ``PY_SSIZE_T_CLEAN`` macro must now be defined to " +"use :c:func:`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use " +"``#``: ``es#``, ``et#``, ``s#``, ``u#``, ``y#``, ``z#``, ``U#`` and ``Z#``. " +"See :ref:`Parsing arguments and building values ` and " +"the :pep:`353`." msgstr "" msgid "" @@ -51274,10 +54470,10 @@ msgstr "" msgid "" ":issue:`39573`: Convert :c:func:`Py_REFCNT` and :c:func:`Py_SIZE` macros to " -"static inline functions. They cannot be used as l-value anymore: use :c:func:" -"`Py_SET_REFCNT` and :c:func:`Py_SET_SIZE` to set an object reference count " -"and size. This change is backward incompatible on purpose, to prepare the C " -"API for an opaque :c:type:`PyObject` structure." +"static inline functions. They cannot be used as l-value anymore: " +"use :c:func:`Py_SET_REFCNT` and :c:func:`Py_SET_SIZE` to set an object " +"reference count and size. This change is backward incompatible on purpose, " +"to prepare the C API for an opaque :c:type:`PyObject` structure." msgstr "" msgid "" @@ -51298,8 +54494,8 @@ msgid "*Release date: 2020-05-19*" msgstr "" msgid "" -":issue:`40501`: :mod:`uuid` no longer uses :mod:`ctypes` to load :file:" -"`libuuid` or :file:`rpcrt4.dll` at runtime." +":issue:`40501`: :mod:`uuid` no longer uses :mod:`ctypes` to " +"load :file:`libuuid` or :file:`rpcrt4.dll` at runtime." msgstr "" msgid "" @@ -51335,18 +54531,18 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port :mod:`errno` to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port :mod:`errno` to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" -":issue:`40523`: Add pass-throughs for :func:`hash` and :func:`reversed` to :" -"class:`weakref.proxy` objects. Patch by Pablo Galindo." +":issue:`40523`: Add pass-throughs for :func:`hash` and :func:`reversed` " +"to :class:`weakref.proxy` objects. Patch by Pablo Galindo." msgstr "" msgid "" -":issue:`1635741`: Port :mod:`syslog` to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port :mod:`syslog` to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -51369,13 +54565,13 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _stat module to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port _stat module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" -":issue:`29587`: Enable implicit exception chaining when calling :meth:" -"`generator.throw`." +":issue:`29587`: Enable implicit exception chaining when " +"calling :meth:`generator.throw`." msgstr "" msgid "" @@ -51442,9 +54638,9 @@ msgid ":issue:`40257`: Revert changes to :func:`inspect.getdoc`." msgstr "" msgid "" -":issue:`40607`: When cancelling a task due to timeout, :meth:`asyncio." -"wait_for` will now propagate the exception if an error happens during " -"cancellation. Patch by Roman Skurikhin." +":issue:`40607`: When cancelling a task due to " +"timeout, :meth:`asyncio.wait_for` will now propagate the exception if an " +"error happens during cancellation. Patch by Roman Skurikhin." msgstr "" msgid "" @@ -51454,8 +54650,9 @@ msgid "" msgstr "" msgid "" -":issue:`40597`: If text content lines are longer than policy." -"max_line_length, always use a content-encoding to make sure they are wrapped." +":issue:`40597`: If text content lines are longer than " +"policy.max_line_length, always use a content-encoding to make sure they are " +"wrapped." msgstr "" msgid "" @@ -51479,8 +54676,8 @@ msgid "" msgstr "" msgid "" -":issue:`31033`: Add a ``msg`` argument to :meth:`Future.cancel` and :meth:" -"`Task.cancel`." +":issue:`31033`: Add a ``msg`` argument to :meth:`Future.cancel` " +"and :meth:`Task.cancel`." msgstr "" msgid "" @@ -51505,8 +54702,8 @@ msgid "" msgstr "" msgid "" -":issue:`40559`: Fix possible memory leak in the C implementation of :class:" -"`asyncio.Task`." +":issue:`40559`: Fix possible memory leak in the C implementation " +"of :class:`asyncio.Task`." msgstr "" msgid "" @@ -51533,8 +54730,8 @@ msgid "" msgstr "" msgid "" -":issue:`40465`: Deprecated the optional *random* argument to *random." -"shuffle()*." +":issue:`40465`: Deprecated the optional *random* argument to " +"*random.shuffle()*." msgstr "" msgid "" @@ -51548,8 +54745,8 @@ msgid "" msgstr "" msgid "" -":issue:`39305`: Update :mod:`!nntplib` to merge :class:`!nntplib.NNTP` and :" -"class:`!nntplib._NNTPBase`. Patch by Donghee Na." +":issue:`39305`: Update :mod:`!nntplib` to merge :class:`!nntplib.NNTP` " +"and :class:`!nntplib._NNTPBase`. Patch by Donghee Na." msgstr "" msgid "" @@ -51570,8 +54767,8 @@ msgid "" msgstr "" msgid "" -":issue:`40394`: Added default arguments to :meth:`difflib.SequenceMatcher." -"find_longest_match`." +":issue:`40394`: Added default arguments " +"to :meth:`difflib.SequenceMatcher.find_longest_match`." msgstr "" msgid "" @@ -51642,9 +54839,9 @@ msgid "" msgstr "" msgid "" -":issue:`24416`: The ``isocalendar()`` methods of :class:`datetime.date` and :" -"class:`datetime.datetime` now return a :term:`named tuple` instead of a :" -"class:`tuple`." +":issue:`24416`: The ``isocalendar()`` methods of :class:`datetime.date` " +"and :class:`datetime.datetime` now return a :term:`named tuple` instead of " +"a :class:`tuple`." msgstr "" msgid "" @@ -51763,8 +54960,8 @@ msgid "" msgstr "" msgid "" -":issue:`40428`: Remove the following functions from the C API. Call :c:func:" -"`PyGC_Collect` explicitly to free all free lists." +":issue:`40428`: Remove the following functions from the C API. " +"Call :c:func:`PyGC_Collect` explicitly to free all free lists." msgstr "" msgid "``PyAsyncGen_ClearFreeLists()``" @@ -51802,10 +54999,11 @@ msgid "" msgstr "" msgid "" -":issue:`40217`: Ensure that instances of types created with :c:func:" -"`PyType_FromSpecWithBases` will visit its class object when traversing " -"references in the garbage collector (implemented as an extension of the " -"provided :c:member:`~PyTypeObject.tp_traverse`). Patch by Pablo Galindo." +":issue:`40217`: Ensure that instances of types created " +"with :c:func:`PyType_FromSpecWithBases` will visit its class object when " +"traversing references in the garbage collector (implemented as an extension " +"of the provided :c:member:`~PyTypeObject.tp_traverse`). Patch by Pablo " +"Galindo." msgstr "" msgid "" @@ -51828,11 +55026,12 @@ msgid "" msgstr "" msgid "" -":issue:`39503`: :cve:`2020-8492`: The :class:`~urllib.request." -"AbstractBasicAuthHandler` class of the :mod:`urllib.request` module uses an " -"inefficient regular expression which can be exploited by an attacker to " -"cause a denial of service. Fix the regex to prevent the catastrophic " -"backtracking. Vulnerability reported by Ben Caller and Matt Schwager." +":issue:`39503`: :cve:`2020-8492`: " +"The :class:`~urllib.request.AbstractBasicAuthHandler` class of " +"the :mod:`urllib.request` module uses an inefficient regular expression " +"which can be exploited by an attacker to cause a denial of service. Fix the " +"regex to prevent the catastrophic backtracking. Vulnerability reported by " +"Ben Caller and Matt Schwager." msgstr "" msgid ":issue:`40313`: Improve the performance of bytes.hex()." @@ -51891,8 +55090,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port :mod:`resource` to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port :mod:`resource` to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -51900,8 +55099,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _uuid module to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port _uuid module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid ":issue:`40077`: Convert json module to use :c:func:`PyType_FromSpec`." @@ -51929,8 +55128,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port time module to multiphase initialization (:pep:" -"`489`). Patch by Paulo Henrique Silva." +":issue:`1635741`: Port time module to multiphase initialization " +"(:pep:`489`). Patch by Paulo Henrique Silva." msgstr "" msgid "" @@ -52001,8 +55200,8 @@ msgid "" msgstr "" msgid "" -":issue:`40360`: The :mod:`!lib2to3` module is pending deprecation due to :" -"pep:`617`." +":issue:`40360`: The :mod:`!lib2to3` module is pending deprecation due " +"to :pep:`617`." msgstr "" msgid "" @@ -52017,15 +55216,15 @@ msgid "" msgstr "" msgid "" -":issue:`40275`: The :mod:`logging` package is now imported lazily in :mod:" -"`unittest` only when the :meth:`~unittest.TestCase.assertLogs` assertion is " -"used." +":issue:`40275`: The :mod:`logging` package is now imported lazily " +"in :mod:`unittest` only when the :meth:`~unittest.TestCase.assertLogs` " +"assertion is used." msgstr "" msgid "" -":issue:`40275`: The :mod:`asyncio` package is now imported lazily in :mod:" -"`unittest` only when the :class:`~unittest.IsolatedAsyncioTestCase` class is " -"used." +":issue:`40275`: The :mod:`asyncio` package is now imported lazily " +"in :mod:`unittest` only when the :class:`~unittest.IsolatedAsyncioTestCase` " +"class is used." msgstr "" msgid "" @@ -52068,8 +55267,8 @@ msgid "" msgstr "" msgid "" -":issue:`40286`: Add :func:`random.randbytes` function and :meth:`random." -"Random.randbytes` method to generate random bytes." +":issue:`40286`: Add :func:`random.randbytes` function " +"and :meth:`random.Random.randbytes` method to generate random bytes." msgstr "" msgid "" @@ -52127,8 +55326,8 @@ msgid "" msgstr "" msgid "" -":issue:`40182`: Removed the ``_field_types`` attribute of the :class:`typing." -"NamedTuple` class." +":issue:`40182`: Removed the ``_field_types`` attribute of " +"the :class:`typing.NamedTuple` class." msgstr "" msgid "" @@ -52168,22 +55367,23 @@ msgstr "" msgid "" ":issue:`40089`: Add a private ``_at_fork_reinit()`` method to :class:`!" -"_thread.Lock`, :class:`!_thread.RLock`, :class:`threading.RLock` and :class:" -"`threading.Condition` classes: reinitialize the lock at fork in the child " -"process, reset the lock to the unlocked state. Rename also the private " -"``_reset_internal_locks()`` method of :class:`threading.Event` to " +"_thread.Lock`, :class:`!_thread.RLock`, :class:`threading.RLock` " +"and :class:`threading.Condition` classes: reinitialize the lock at fork in " +"the child process, reset the lock to the unlocked state. Rename also the " +"private ``_reset_internal_locks()`` method of :class:`threading.Event` to " "``_at_fork_reinit()``." msgstr "" msgid "" -":issue:`25780`: Expose :const:`~socket.CAN_RAW_JOIN_FILTERS` in the :mod:" -"`socket` module." +":issue:`25780`: Expose :const:`~socket.CAN_RAW_JOIN_FILTERS` in " +"the :mod:`socket` module." msgstr "" msgid "" -":issue:`39503`: :class:`~urllib.request.AbstractBasicAuthHandler` of :mod:" -"`urllib.request` now parses all WWW-Authenticate HTTP headers and accepts " -"multiple challenges per header: use the realm of the first Basic challenge." +":issue:`39503`: :class:`~urllib.request.AbstractBasicAuthHandler` " +"of :mod:`urllib.request` now parses all WWW-Authenticate HTTP headers and " +"accepts multiple challenges per header: use the realm of the first Basic " +"challenge." msgstr "" msgid "" @@ -52223,20 +55423,21 @@ msgid "" msgstr "" msgid "" -":issue:`36144`: Added :pep:`584` operators to :class:`weakref." -"WeakValueDictionary`." +":issue:`36144`: Added :pep:`584` operators " +"to :class:`weakref.WeakValueDictionary`." msgstr "" msgid "" -":issue:`36144`: Added :pep:`584` operators to :class:`weakref." -"WeakKeyDictionary`." +":issue:`36144`: Added :pep:`584` operators " +"to :class:`weakref.WeakKeyDictionary`." msgstr "" msgid "" ":issue:`38891`: Fix linear runtime behaviour of the ``__getitem__`` and " -"``__setitem__`` methods in :class:`multiprocessing.shared_memory." -"ShareableList`. This avoids quadratic performance when iterating a " -"``ShareableList``. Patch by Thomas Krennwallner." +"``__setitem__`` methods " +"in :class:`multiprocessing.shared_memory.ShareableList`. This avoids " +"quadratic performance when iterating a ``ShareableList``. Patch by Thomas " +"Krennwallner." msgstr "" msgid "" @@ -52246,8 +55447,8 @@ msgid "" msgstr "" msgid "" -":issue:`36144`: Added :pep:`584` operators (``|`` and ``|=``) to :class:" -"`collections.ChainMap`." +":issue:`36144`: Added :pep:`584` operators (``|`` and ``|=``) " +"to :class:`collections.ChainMap`." msgstr "" msgid "" @@ -52257,8 +55458,8 @@ msgid "" msgstr "" msgid "" -":issue:`38410`: Properly handle :func:`sys.audit` failures in :func:`sys." -"set_asyncgen_hooks`." +":issue:`38410`: Properly handle :func:`sys.audit` failures " +"in :func:`sys.set_asyncgen_hooks`." msgstr "" msgid "" @@ -52278,13 +55479,13 @@ msgid "" msgstr "" msgid "" -":issue:`33262`: Deprecate passing None as an argument for :func:`shlex." -"split`'s ``s`` parameter. Patch by Zackery Spytz." +":issue:`33262`: Deprecate passing None as an argument " +"for :func:`shlex.split`'s ``s`` parameter. Patch by Zackery Spytz." msgstr "" msgid "" -":issue:`31758`: Prevent crashes when using an uninitialized ``_elementtree." -"XMLParser`` object. Patch by Oren Milman." +":issue:`31758`: Prevent crashes when using an uninitialized " +"``_elementtree.XMLParser`` object. Patch by Oren Milman." msgstr "" msgid "" @@ -52328,9 +55529,9 @@ msgid "" msgstr "" msgid "" -":issue:`39380`: Add the encoding in :class:`ftplib.FTP` and :class:`ftplib." -"FTP_TLS` to the constructor as keyword-only and change the default from " -"``latin-1`` to ``utf-8`` to follow :rfc:`2640`." +":issue:`39380`: Add the encoding in :class:`ftplib.FTP` " +"and :class:`ftplib.FTP_TLS` to the constructor as keyword-only and change " +"the default from ``latin-1`` to ``utf-8`` to follow :rfc:`2640`." msgstr "" msgid "" @@ -52394,9 +55595,9 @@ msgid ":issue:`40179`: Fixed translation of ``#elif`` in Argument Clinic." msgstr "" msgid "" -":issue:`40094`: Fix ``which.py`` script exit code: it now uses :func:`os." -"waitstatus_to_exitcode` to convert :func:`os.system` exit status into an " -"exit code." +":issue:`40094`: Fix ``which.py`` script exit code: it now " +"uses :func:`os.waitstatus_to_exitcode` to convert :func:`os.system` exit " +"status into an exit code." msgstr "" msgid "" @@ -52410,25 +55611,25 @@ msgid "" msgstr "" msgid "" -":issue:`40241`: Add the functions :c:func:`PyObject_GC_IsTracked` and :c:" -"func:`PyObject_GC_IsFinalized` to the public API to allow to query if Python " -"objects are being currently tracked or have been already finalized by the " -"garbage collector respectively. Patch by Pablo Galindo." +":issue:`40241`: Add the functions :c:func:`PyObject_GC_IsTracked` " +"and :c:func:`PyObject_GC_IsFinalized` to the public API to allow to query if " +"Python objects are being currently tracked or have been already finalized by " +"the garbage collector respectively. Patch by Pablo Galindo." msgstr "" msgid "" -":issue:`40170`: The :c:func:`!PyObject_NEW` macro becomes an alias to the :c:" -"func:`PyObject_New` macro, and the :c:func:`!PyObject_NEW_VAR` macro becomes " -"an alias to the :c:func:`PyObject_NewVar` macro, to hide implementation " -"details. They no longer access directly the :c:member:`PyTypeObject." -"tp_basicsize` member." +":issue:`40170`: The :c:func:`!PyObject_NEW` macro becomes an alias to " +"the :c:func:`PyObject_New` macro, and the :c:func:`!PyObject_NEW_VAR` macro " +"becomes an alias to the :c:func:`PyObject_NewVar` macro, to hide " +"implementation details. They no longer access directly " +"the :c:member:`PyTypeObject.tp_basicsize` member." msgstr "" msgid "" -":issue:`40170`: :c:func:`PyType_HasFeature` now always calls :c:func:" -"`PyType_GetFlags` to hide implementation details. Previously, it accessed " -"directly the :c:member:`PyTypeObject.tp_flags` member when the limited C API " -"was not used." +":issue:`40170`: :c:func:`PyType_HasFeature` now always " +"calls :c:func:`PyType_GetFlags` to hide implementation details. Previously, " +"it accessed directly the :c:member:`PyTypeObject.tp_flags` member when the " +"limited C API was not used." msgstr "" msgid "" @@ -52439,8 +55640,8 @@ msgstr "" msgid "" ":issue:`40170`: Convert :c:func:`PyObject_CheckBuffer` macro to a function " -"to hide implementation details: the macro accessed directly the :c:member:" -"`PyTypeObject.tp_as_buffer` member." +"to hide implementation details: the macro accessed directly " +"the :c:member:`PyTypeObject.tp_as_buffer` member." msgstr "" msgid "" @@ -52468,10 +55669,10 @@ msgstr "" msgid "" ":issue:`40010`: Optimize pending calls in multithreaded applications. If a " -"thread different than the main thread schedules a pending call (:c:func:" -"`Py_AddPendingCall`), the bytecode evaluation loop is no longer interrupted " -"at each bytecode instruction to check for pending calls which cannot be " -"executed. Only the main thread can execute pending calls." +"thread different than the main thread schedules a pending call " +"(:c:func:`Py_AddPendingCall`), the bytecode evaluation loop is no longer " +"interrupted at each bytecode instruction to check for pending calls which " +"cannot be executed. Only the main thread can execute pending calls." msgstr "" msgid "" @@ -52480,8 +55681,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _collections module to multiphase initialization (:" -"pep:`489`)." +":issue:`1635741`: Port _collections module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -52508,8 +55709,8 @@ msgid ":issue:`1635741`: Port _heapq module to multiphase initialization." msgstr "" msgid "" -":issue:`1635741`: Port itertools module to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port itertools module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -52518,9 +55719,10 @@ msgid "" msgstr "" msgid "" -":issue:`39984`: subinterpreters: Move ``_PyRuntimeState.ceval." -"tracing_possible`` to ``PyInterpreterState.ceval.tracing_possible``: each " -"interpreter now has its own variable." +":issue:`39984`: subinterpreters: Move " +"``_PyRuntimeState.ceval.tracing_possible`` to " +"``PyInterpreterState.ceval.tracing_possible``: each interpreter now has its " +"own variable." msgstr "" msgid "" @@ -52529,8 +55731,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _statistics module to multiphase initialization (:pep:" -"`489`)." +":issue:`1635741`: Port _statistics module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -52585,9 +55787,9 @@ msgid "" msgstr "" msgid "" -":issue:`39871`: Fix a possible :exc:`SystemError` in ``math.{atan2,copysign," -"remainder}()`` when the first argument cannot be converted to a :class:" -"`float`. Patch by Zackery Spytz." +":issue:`39871`: Fix a possible :exc:`SystemError` in ``math." +"{atan2,copysign,remainder}()`` when the first argument cannot be converted " +"to a :class:`float`. Patch by Zackery Spytz." msgstr "" msgid "" @@ -52626,9 +55828,9 @@ msgid "" msgstr "" msgid "" -":issue:`39087`: Optimize :c:func:`PyUnicode_AsUTF8` and :c:func:" -"`PyUnicode_AsUTF8AndSize` slightly when they need to create internal UTF-8 " -"cache." +":issue:`39087`: Optimize :c:func:`PyUnicode_AsUTF8` " +"and :c:func:`PyUnicode_AsUTF8AndSize` slightly when they need to create " +"internal UTF-8 cache." msgstr "" msgid "" @@ -52652,8 +55854,8 @@ msgid "" msgstr "" msgid "" -":issue:`39830`: Add :class:`zipfile.Path` to ``__all__`` in the :mod:" -"`zipfile` module." +":issue:`39830`: Add :class:`zipfile.Path` to ``__all__`` in " +"the :mod:`zipfile` module." msgstr "" msgid "" @@ -52688,18 +55890,18 @@ msgid "" msgstr "" msgid "" -":issue:`39360`: Ensure all workers exit when finalizing a :class:" -"`multiprocessing.Pool` implicitly via the module finalization handlers of " -"multiprocessing. This fixes a deadlock situation that can be experienced " -"when the Pool is not properly finalized via the context manager or a call to " -"``multiprocessing.Pool.terminate``. Patch by Batuhan Taskaya and Pablo " -"Galindo." +":issue:`39360`: Ensure all workers exit when finalizing " +"a :class:`multiprocessing.Pool` implicitly via the module finalization " +"handlers of multiprocessing. This fixes a deadlock situation that can be " +"experienced when the Pool is not properly finalized via the context manager " +"or a call to ``multiprocessing.Pool.terminate``. Patch by Batuhan Taskaya " +"and Pablo Galindo." msgstr "" msgid "" -":issue:`35370`: sys.settrace(), sys.setprofile() and _lsprof.Profiler." -"enable() now properly report :c:func:`PySys_Audit` error if \"sys." -"setprofile\" or \"sys.settrace\" audit event is denied." +":issue:`35370`: sys.settrace(), sys.setprofile() and " +"_lsprof.Profiler.enable() now properly report :c:func:`PySys_Audit` error if " +"\"sys.setprofile\" or \"sys.settrace\" audit event is denied." msgstr "" msgid "" @@ -52722,9 +55924,9 @@ msgstr "" msgid "" ":issue:`39915`: Ensure :attr:`unittest.mock.AsyncMock.await_args_list` has " -"call objects in the order of awaited arguments instead of using :attr:" -"`unittest.mock.Mock.call_args` which has the last value of the call. Patch " -"by Karthikeyan Singaravelan." +"call objects in the order of awaited arguments instead of " +"using :attr:`unittest.mock.Mock.call_args` which has the last value of the " +"call. Patch by Karthikeyan Singaravelan." msgstr "" msgid "" @@ -52740,8 +55942,8 @@ msgid "" msgstr "" msgid "" -":issue:`38075`: Fix the :meth:`random.Random.seed` method when a :class:" -"`bool` is passed as the seed." +":issue:`38075`: Fix the :meth:`random.Random.seed` method when " +"a :class:`bool` is passed as the seed." msgstr "" msgid "" @@ -52752,17 +55954,17 @@ msgstr "" msgid "" ":issue:`39850`: :mod:`multiprocessing` now supports abstract socket " "addresses (if abstract sockets are supported in the running platform). When " -"creating arbitrary addresses (like when default-constructing :class:" -"`multiprocessing.connection.Listener` objects) abstract sockets are " -"preferred to avoid the case when the temporary-file-generated address is too " -"large for an AF_UNIX socket address. Patch by Pablo Galindo." +"creating arbitrary addresses (like when default-" +"constructing :class:`multiprocessing.connection.Listener` objects) abstract " +"sockets are preferred to avoid the case when the temporary-file-generated " +"address is too large for an AF_UNIX socket address. Patch by Pablo Galindo." msgstr "" msgid "" ":issue:`36287`: :func:`ast.dump` no longer outputs optional fields and " "attributes with default values. The default values for optional fields and " -"attributes of AST nodes are now set as class attributes (e.g. ``Constant." -"kind`` is set to ``None``)." +"attributes of AST nodes are now set as class attributes (e.g. " +"``Constant.kind`` is set to ``None``)." msgstr "" msgid "" @@ -52800,8 +56002,8 @@ msgid "" msgstr "" msgid "" -":issue:`39763`: Reimplement ``distutils.spawn.spawn`` function with the :mod:" -"`subprocess` module." +":issue:`39763`: Reimplement ``distutils.spawn.spawn`` function with " +"the :mod:`subprocess` module." msgstr "" msgid "" @@ -52810,8 +56012,8 @@ msgid "" msgstr "" msgid "" -":issue:`36144`: :class:`collections.defaultdict` now implements ``|`` (:pep:" -"`584`)." +":issue:`36144`: :class:`collections.defaultdict` now implements ``|`` " +"(:pep:`584`)." msgstr "" msgid ":issue:`39517`: Fix runpy.run_path() when using pathlike objects" @@ -52823,8 +56025,9 @@ msgid "" msgstr "" msgid "" -":issue:`39678`: Refactor queue_manager in :class:`concurrent.futures." -"ProcessPoolExecutor` to make it easier to maintain." +":issue:`39678`: Refactor queue_manager " +"in :class:`concurrent.futures.ProcessPoolExecutor` to make it easier to " +"maintain." msgstr "" msgid "" @@ -52846,9 +56049,9 @@ msgid "" msgstr "" msgid "" -":issue:`38691`: The :mod:`importlib` module now ignores the :envvar:" -"`PYTHONCASEOK` environment variable when the :option:`-E` or :option:`-I` " -"command line options are being used." +":issue:`38691`: The :mod:`importlib` module now ignores " +"the :envvar:`PYTHONCASEOK` environment variable when the :option:`-E` " +"or :option:`-I` command line options are being used." msgstr "" msgid "" @@ -52876,9 +56079,9 @@ msgid ":issue:`39609`: Add thread_name_prefix to default asyncio executor" msgstr "" msgid "" -":issue:`39548`: Fix handling of header in :class:`urllib.request." -"AbstractDigestAuthHandler` when the optional ``qop`` parameter is not " -"present." +":issue:`39548`: Fix handling of header " +"in :class:`urllib.request.AbstractDigestAuthHandler` when the optional " +"``qop`` parameter is not present." msgstr "" msgid "" @@ -52892,9 +56095,9 @@ msgid "" msgstr "" msgid "" -":issue:`39495`: Remove default value from *attrs* parameter of :meth:`xml." -"etree.ElementTree.TreeBuilder.start` for consistency between Python and C " -"implementations." +":issue:`39495`: Remove default value from *attrs* parameter " +"of :meth:`xml.etree.ElementTree.TreeBuilder.start` for consistency between " +"Python and C implementations." msgstr "" msgid "" @@ -52912,8 +56115,8 @@ msgid "" ":issue:`37534`: When using minidom module to generate XML documents the " "ability to add Standalone Document Declaration is added. All the changes are " "made to generate a document in compliance with Extensible Markup Language " -"(XML) 1.0 (Fifth Edition) W3C Recommendation (available here: https://www.w3." -"org/TR/xml/#sec-prolog-dtd)." +"(XML) 1.0 (Fifth Edition) W3C Recommendation (available here: https://" +"www.w3.org/TR/xml/#sec-prolog-dtd)." msgstr "" msgid "" @@ -52923,11 +56126,11 @@ msgstr "" msgid "" ":issue:`34822`: Simplified AST for subscription. Simple indices are now " -"represented by their value, extended slices are represented as tuples. :mod:" -"`ast` classes ``Index`` and ``ExtSlice`` are considered deprecated and will " -"be removed in future Python versions. In the meantime, ``Index(value)`` now " -"returns a ``value`` itself, ``ExtSlice(slices)`` returns ``Tuple(slices, " -"Load())``." +"represented by their value, extended slices are represented as " +"tuples. :mod:`ast` classes ``Index`` and ``ExtSlice`` are considered " +"deprecated and will be removed in future Python versions. In the meantime, " +"``Index(value)`` now returns a ``value`` itself, ``ExtSlice(slices)`` " +"returns ``Tuple(slices, Load())``." msgstr "" msgid ":issue:`39868`: Updated the Language Reference for :pep:`572`." @@ -52981,18 +56184,18 @@ msgid ":issue:`39761`: Fix build with DTrace but without additional DFLAGS." msgstr "" msgid "" -":issue:`39763`: setup.py now uses a basic implementation of the :mod:" -"`subprocess` module if the :mod:`subprocess` module is not available: before " -"required C extension modules are built." +":issue:`39763`: setup.py now uses a basic implementation of " +"the :mod:`subprocess` module if the :mod:`subprocess` module is not " +"available: before required C extension modules are built." msgstr "" msgid "" ":issue:`1294959`: Add ``--with-platlibdir`` option to the configure script: " -"name of the platform-specific library directory, stored in the new :data:" -"`sys.platlibdir` attribute. It is used to build the path of platform-" -"specific extension modules and the path of the standard library. It is equal " -"to ``\"lib\"`` on most platforms. On Fedora and SuSE, it is equal to " -"``\"lib64\"`` on 64-bit platforms. Patch by Jan Matějek, Matěj Cepl, " +"name of the platform-specific library directory, stored in the " +"new :data:`sys.platlibdir` attribute. It is used to build the path of " +"platform-specific extension modules and the path of the standard library. It " +"is equal to ``\"lib\"`` on most platforms. On Fedora and SuSE, it is equal " +"to ``\"lib64\"`` on 64-bit platforms. Patch by Jan Matějek, Matěj Cepl, " "Charalampos Stratakis and Victor Stinner." msgstr "" @@ -53007,10 +56210,10 @@ msgid "" msgstr "" msgid "" -":issue:`38597`: ``distutils`` will no longer statically link :file:" -"`vcruntime140.dll` when a redistributable version is unavailable. All future " -"releases of CPython will include a copy of this DLL to ensure distributed " -"extensions can continue to load." +":issue:`38597`: ``distutils`` will no longer statically " +"link :file:`vcruntime140.dll` when a redistributable version is unavailable. " +"All future releases of CPython will include a copy of this DLL to ensure " +"distributed extensions can continue to load." msgstr "" msgid ":issue:`38380`: Update Windows builds to use SQLite 3.31.1" @@ -53055,8 +56258,8 @@ msgid "" msgstr "" msgid "" -":issue:`38080`: Added support to fix ``getproxies`` in the :mod:`!lib2to3." -"fixes.fix_urllib` module. Patch by José Roberto Meza Cabrera." +":issue:`38080`: Added support to fix ``getproxies`` in the :mod:`!" +"lib2to3.fixes.fix_urllib` module. Patch by José Roberto Meza Cabrera." msgstr "" msgid "" @@ -53066,9 +56269,9 @@ msgstr "" msgid "" ":issue:`39946`: Remove ``_PyRuntime.getframe`` hook and remove " -"``_PyThreadState_GetFrame`` macro which was an alias to ``_PyRuntime." -"getframe``. They were only exposed by the internal C API. Remove also " -"``PyThreadFrameGetter`` type." +"``_PyThreadState_GetFrame`` macro which was an alias to " +"``_PyRuntime.getframe``. They were only exposed by the internal C API. " +"Remove also ``PyThreadFrameGetter`` type." msgstr "" msgid "" @@ -53091,9 +56294,9 @@ msgid "" msgstr "" msgid "" -":issue:`35370`: If :c:func:`PySys_Audit` fails in :c:func:" -"`PyEval_SetProfile` or :c:func:`PyEval_SetTrace`, log the error as an " -"unraisable exception." +":issue:`35370`: If :c:func:`PySys_Audit` fails " +"in :c:func:`PyEval_SetProfile` or :c:func:`PyEval_SetTrace`, log the error " +"as an unraisable exception." msgstr "" msgid "" @@ -53139,14 +56342,15 @@ msgid "" msgstr "" msgid "" -":issue:`39824`: Extension modules: :c:member:`~PyModuleDef.m_traverse`, :c:" -"member:`~PyModuleDef.m_clear` and :c:member:`~PyModuleDef.m_free` functions " -"of :c:type:`PyModuleDef` are no longer called if the module state was " -"requested but is not allocated yet. This is the case immediately after the " -"module is created and before the module is executed (:c:data:`Py_mod_exec` " -"function). More precisely, these functions are not called if :c:member:" -"`~PyModuleDef.m_size` is greater than 0 and the module state (as returned " -"by :c:func:`PyModule_GetState`) is ``NULL``." +":issue:`39824`: Extension " +"modules: :c:member:`~PyModuleDef.m_traverse`, :c:member:`~PyModuleDef.m_clear` " +"and :c:member:`~PyModuleDef.m_free` functions of :c:type:`PyModuleDef` are " +"no longer called if the module state was requested but is not allocated yet. " +"This is the case immediately after the module is created and before the " +"module is executed (:c:data:`Py_mod_exec` function). More precisely, these " +"functions are not called if :c:member:`~PyModuleDef.m_size` is greater than " +"0 and the module state (as returned by :c:func:`PyModule_GetState`) is " +"``NULL``." msgstr "" msgid "" @@ -53160,9 +56364,10 @@ msgstr "" msgid "" ":issue:`38500`: Add a private API to get and set the frame evaluation " -"function: add :c:func:`_PyInterpreterState_GetEvalFrameFunc` and :c:func:" -"`_PyInterpreterState_SetEvalFrameFunc` C functions. The :c:type:" -"`_PyFrameEvalFunction` function type now takes a *tstate* parameter." +"function: add :c:func:`_PyInterpreterState_GetEvalFrameFunc` " +"and :c:func:`_PyInterpreterState_SetEvalFrameFunc` C functions. " +"The :c:type:`_PyFrameEvalFunction` function type now takes a *tstate* " +"parameter." msgstr "" msgid "Python 3.9.0 alpha 4" @@ -53258,13 +56463,13 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _bz2 extension module to multiphase initialization (:" -"pep:`489`)." +":issue:`1635741`: Port _bz2 extension module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" -":issue:`1635741`: Port _abc extension module to multiphase initialization (:" -"pep:`489`)." +":issue:`1635741`: Port _abc extension module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -53311,8 +56516,8 @@ msgid "" msgstr "" msgid "" -":issue:`39649`: Remove obsolete check for ``__args__`` in ``bdb.Bdb." -"format_stack_entry``." +":issue:`39649`: Remove obsolete check for ``__args__`` in " +"``bdb.Bdb.format_stack_entry``." msgstr "" msgid "" @@ -53326,9 +56531,9 @@ msgid "" msgstr "" msgid "" -":issue:`35950`: Raise :exc:`io.UnsupportedOperation` in :meth:`io." -"BufferedReader.truncate` when it is called on a read-only :class:`io." -"BufferedReader` instance." +":issue:`35950`: Raise :exc:`io.UnsupportedOperation` " +"in :meth:`io.BufferedReader.truncate` when it is called on a read-" +"only :class:`io.BufferedReader` instance." msgstr "" msgid ":issue:`39479`: Add :func:`math.lcm` function: least common multiple." @@ -53355,15 +56560,15 @@ msgid "" msgstr "" msgid "" -":issue:`21016`: The :mod:`pydoc` and :mod:`trace` modules now use the :mod:" -"`sysconfig` module to get the path to the Python standard library, to " -"support uncommon installation path like ``/usr/lib64/python3.9/`` on Fedora. " -"Patch by Jan Matějek." +":issue:`21016`: The :mod:`pydoc` and :mod:`trace` modules now use " +"the :mod:`sysconfig` module to get the path to the Python standard library, " +"to support uncommon installation path like ``/usr/lib64/python3.9/`` on " +"Fedora. Patch by Jan Matějek." msgstr "" msgid "" -":issue:`39590`: Collections.deque now holds strong references during deque." -"__contains__ and deque.count, fixing crashes." +":issue:`39590`: Collections.deque now holds strong references during " +"deque.__contains__ and deque.count, fixing crashes." msgstr "" msgid "" @@ -53374,31 +56579,32 @@ msgstr "" msgid "" ":issue:`39595`: Improved performance of zipfile.Path for files with a large " "number of entries. Also improved performance and fixed minor issue as " -"published with `importlib_metadata 1.5 `_." +"published with `importlib_metadata 1.5 `_." msgstr "" msgid "" ":issue:`39350`: Fix regression in :class:`fractions.Fraction` if the " -"numerator and/or the denominator is an :class:`int` subclass. The :func:" -"`math.gcd` function is now used to normalize the *numerator* and " +"numerator and/or the denominator is an :class:`int` subclass. " +"The :func:`math.gcd` function is now used to normalize the *numerator* and " "*denominator*. :func:`math.gcd` always return a :class:`int` type. " "Previously, the GCD type depended on *numerator* and *denominator*." msgstr "" msgid "" -":issue:`39567`: Added audit for :func:`os.walk`, :func:`os.fwalk`, :meth:" -"`pathlib.Path.glob` and :meth:`pathlib.Path.rglob`." +":issue:`39567`: Added audit " +"for :func:`os.walk`, :func:`os.fwalk`, :meth:`pathlib.Path.glob` " +"and :meth:`pathlib.Path.rglob`." msgstr "" msgid "" -":issue:`39559`: Remove unused, undocumented argument ``getters`` from :func:" -"`uuid.getnode`" +":issue:`39559`: Remove unused, undocumented argument ``getters`` " +"from :func:`uuid.getnode`" msgstr "" msgid "" -":issue:`38149`: :func:`sys.audit` is now called only once per call of :func:" -"`glob.glob` and :func:`glob.iglob`." +":issue:`38149`: :func:`sys.audit` is now called only once per call " +"of :func:`glob.glob` and :func:`glob.iglob`." msgstr "" msgid "" @@ -53408,16 +56614,16 @@ msgid "" msgstr "" msgid "" -":issue:`39450`: Striped whitespace from docstring before returning it from :" -"func:`unittest.case.shortDescription`." +":issue:`39450`: Striped whitespace from docstring before returning it " +"from :func:`unittest.case.shortDescription`." msgstr "" msgid "" ":issue:`12915`: A new function ``resolve_name`` has been added to the " -"``pkgutil`` module. This resolves a string of the form ``'a.b.c.d'`` or ``'a." -"b:c.d'`` to an object. In the example, ``a.b`` is a package/module and ``c." -"d`` is an object within that package/module reached via recursive attribute " -"access." +"``pkgutil`` module. This resolves a string of the form ``'a.b.c.d'`` or " +"``'a.b:c.d'`` to an object. In the example, ``a.b`` is a package/module and " +"``c.d`` is an object within that package/module reached via recursive " +"attribute access." msgstr "" msgid "" @@ -53461,10 +56667,10 @@ msgid "" msgstr "" msgid "" -":issue:`39349`: Added a new *cancel_futures* parameter to :meth:`concurrent." -"futures.Executor.shutdown` that cancels all pending futures which have not " -"started running, instead of waiting for them to complete before shutting " -"down the executor." +":issue:`39349`: Added a new *cancel_futures* parameter " +"to :meth:`concurrent.futures.Executor.shutdown` that cancels all pending " +"futures which have not started running, instead of waiting for them to " +"complete before shutting down the executor." msgstr "" msgid "" @@ -53479,16 +56685,16 @@ msgid "" msgstr "" msgid "" -":issue:`25597`: Ensure, if ``wraps`` is supplied to :class:`unittest.mock." -"MagicMock`, it is used to calculate return values for the magic methods " -"instead of using the default return values. Patch by Karthikeyan " -"Singaravelan." +":issue:`25597`: Ensure, if ``wraps`` is supplied " +"to :class:`unittest.mock.MagicMock`, it is used to calculate return values " +"for the magic methods instead of using the default return values. Patch by " +"Karthikeyan Singaravelan." msgstr "" msgid "" -":issue:`36350`: ``inspect.Signature.parameters`` and ``inspect." -"BoundArguments.arguments`` are now dicts instead of OrderedDicts. Patch " -"contributed by Rémi Lapeyre." +":issue:`36350`: ``inspect.Signature.parameters`` and " +"``inspect.BoundArguments.arguments`` are now dicts instead of OrderedDicts. " +"Patch contributed by Rémi Lapeyre." msgstr "" msgid "" @@ -53497,8 +56703,8 @@ msgid "" msgstr "" msgid "" -":issue:`32173`: * Add ``lazycache`` function to ``__all__``. * Use ``dict." -"clear`` to clear the cache. * Refactoring ``getline`` function and " +":issue:`32173`: * Add ``lazycache`` function to ``__all__``. * Use " +"``dict.clear`` to clear the cache. * Refactoring ``getline`` function and " "``checkcache`` function." msgstr "" @@ -53540,9 +56746,9 @@ msgid ":issue:`38325`: Skip tests on non-BMP characters of test_winconsoleio." msgstr "" msgid "" -":issue:`39502`: Skip test_zipfile.test_add_file_after_2107() if :func:`time." -"localtime` fails with :exc:`OverflowError`. It is the case on AIX 6.1 for " -"example." +":issue:`39502`: Skip test_zipfile.test_add_file_after_2107() " +"if :func:`time.localtime` fails with :exc:`OverflowError`. It is the case on " +"AIX 6.1 for example." msgstr "" msgid ":issue:`39489`: Remove ``COUNT_ALLOCS`` special build." @@ -53561,11 +56767,12 @@ msgid "" msgstr "" msgid "" -":issue:`38883`: :meth:`~pathlib.Path.home` and :meth:`~pathlib.Path." -"expanduser` on Windows now prefer :envvar:`USERPROFILE` and no longer use :" -"envvar:`HOME`, which is not normally set for regular user accounts. This " -"makes them again behave like :func:`os.path.expanduser`, which was changed " -"to ignore :envvar:`HOME` in 3.8, see :issue:`36264`." +":issue:`38883`: :meth:`~pathlib.Path.home` " +"and :meth:`~pathlib.Path.expanduser` on Windows now " +"prefer :envvar:`USERPROFILE` and no longer use :envvar:`HOME`, which is not " +"normally set for regular user accounts. This makes them again behave " +"like :func:`os.path.expanduser`, which was changed to ignore :envvar:`HOME` " +"in 3.8, see :issue:`36264`." msgstr "" msgid "" @@ -53613,8 +56820,8 @@ msgid "" msgstr "" msgid "" -":issue:`39500`: :c:func:`PyUnicode_IsIdentifier` does not call :c:func:" -"`Py_FatalError` anymore if the string is not ready." +":issue:`39500`: :c:func:`PyUnicode_IsIdentifier` does not " +"call :c:func:`Py_FatalError` anymore if the string is not ready." msgstr "" msgid "" @@ -53634,10 +56841,10 @@ msgstr "" msgid "" ":issue:`39542`: In the limited C API, ``PyObject_INIT()`` and " -"``PyObject_INIT_VAR()`` are now defined as aliases to :c:func:" -"`PyObject_Init` and :c:func:`PyObject_InitVar` to make their implementation " -"opaque. It avoids to leak implementation details in the limited C API. " -"Exclude the following functions from the limited C API: " +"``PyObject_INIT_VAR()`` are now defined as aliases " +"to :c:func:`PyObject_Init` and :c:func:`PyObject_InitVar` to make their " +"implementation opaque. It avoids to leak implementation details in the " +"limited C API. Exclude the following functions from the limited C API: " "``_Py_NewReference()``, ``_Py_ForgetReference()``, " "``_PyTraceMalloc_NewReference()`` and ``_Py_GetRefTotal()``." msgstr "" @@ -53649,9 +56856,9 @@ msgid "" msgstr "" msgid "" -":issue:`39511`: The :c:func:`PyThreadState_Clear` function now calls the :c:" -"member:`PyThreadState.on_delete` callback. Previously, that happened in :c:" -"func:`PyThreadState_Delete`." +":issue:`39511`: The :c:func:`PyThreadState_Clear` function now calls " +"the :c:member:`PyThreadState.on_delete` callback. Previously, that happened " +"in :c:func:`PyThreadState_Delete`." msgstr "" msgid "" @@ -53688,9 +56895,9 @@ msgid ":issue:`39386`: Prevent double awaiting of async iterator." msgstr "" msgid "" -":issue:`17005`: Add :class:`functools.TopologicalSorter` to the :mod:" -"`functools` module to offers functionality to perform topological sorting of " -"graphs. Patch by Pablo Galindo, Tim Peters and Larry Hastings." +":issue:`17005`: Add :class:`functools.TopologicalSorter` to " +"the :mod:`functools` module to offers functionality to perform topological " +"sorting of graphs. Patch by Pablo Galindo, Tim Peters and Larry Hastings." msgstr "" msgid "" @@ -53753,8 +56960,8 @@ msgid "" msgstr "" msgid "" -":issue:`1635741`: Port _json extension module to multiphase initialization (:" -"pep:`489`)." +":issue:`1635741`: Port _json extension module to multiphase initialization " +"(:pep:`489`)." msgstr "" msgid "" @@ -53768,13 +56975,13 @@ msgid "" msgstr "" msgid "" -":issue:`39200`: Correct the error message when calling the :func:`min` or :" -"func:`max` with no arguments. Patch by Donghee Na." +":issue:`39200`: Correct the error message when calling the :func:`min` " +"or :func:`max` with no arguments. Patch by Donghee Na." msgstr "" msgid "" -":issue:`39200`: Correct the error message when trying to construct :class:" -"`range` objects with no arguments. Patch by Pablo Galindo." +":issue:`39200`: Correct the error message when trying to " +"construct :class:`range` objects with no arguments. Patch by Pablo Galindo." msgstr "" msgid "" @@ -53812,15 +57019,15 @@ msgid "" msgstr "" msgid "" -":issue:`38588`: Fix possible crashes in dict and list when calling :c:func:" -"`PyObject_RichCompareBool`." +":issue:`38588`: Fix possible crashes in dict and list when " +"calling :c:func:`PyObject_RichCompareBool`." msgstr "" msgid "" ":issue:`13601`: By default, ``sys.stderr`` is line-buffered now, even if " "``stderr`` is redirected to a file. You can still make ``sys.stderr`` " -"unbuffered by passing the :option:`-u` command-line option or setting the :" -"envvar:`PYTHONUNBUFFERED` environment variable." +"unbuffered by passing the :option:`-u` command-line option or setting " +"the :envvar:`PYTHONUNBUFFERED` environment variable." msgstr "" msgid "(Contributed by Jendrik Seipp in :issue:`13601`.)" @@ -53828,8 +57035,8 @@ msgstr "" msgid "" ":issue:`38610`: Fix possible crashes in several list methods by holding " -"strong references to list elements when calling :c:func:" -"`PyObject_RichCompareBool`." +"strong references to list elements when " +"calling :c:func:`PyObject_RichCompareBool`." msgstr "" msgid ":issue:`32021`: Include brotli .br encoding in mimetypes encodings_map" @@ -53844,9 +57051,9 @@ msgid "" msgstr "" msgid "" -":issue:`39390`: Fixed a regression with the ``ignore`` callback of :func:" -"`shutil.copytree`. The argument types are now ``str`` and ``List[str]`` " -"again." +":issue:`39390`: Fixed a regression with the ``ignore`` callback " +"of :func:`shutil.copytree`. The argument types are now ``str`` and " +"``List[str]`` again." msgstr "" msgid "" @@ -53886,22 +57093,21 @@ msgstr "" msgid "" ":issue:`39357`: Remove the *buffering* parameter of :class:`bz2.BZ2File`. " -"Since Python 3.0, it was ignored and using it was emitting :exc:" -"`DeprecationWarning`. Pass an open file object, to control how the file is " -"opened. The *compresslevel* parameter becomes keyword-only." +"Since Python 3.0, it was ignored and using it was " +"emitting :exc:`DeprecationWarning`. Pass an open file object, to control how " +"the file is opened. The *compresslevel* parameter becomes keyword-only." msgstr "" msgid "" -":issue:`39353`: Deprecate binhex4 and hexbin4 standards. Deprecate the :mod:" -"`binhex` module and the following :mod:`binascii` functions: :func:" -"`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`, :func:`~binascii." -"rlecode_hqx`, :func:`~binascii.rledecode_hqx`, :func:`~binascii.crc_hqx`." +":issue:`39353`: Deprecate binhex4 and hexbin4 standards. Deprecate " +"the :mod:`binhex` module and the following :mod:`binascii` " +"functions: :func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`, :func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`, :func:`~binascii.crc_hqx`." msgstr "" msgid "" -":issue:`39351`: Remove ``base64.encodestring()`` and ``base64." -"decodestring()``, aliases deprecated since Python 3.1: use :func:`base64." -"encodebytes` and :func:`base64.decodebytes` instead." +":issue:`39351`: Remove ``base64.encodestring()`` and " +"``base64.decodestring()``, aliases deprecated since Python 3.1: " +"use :func:`base64.encodebytes` and :func:`base64.decodebytes` instead." msgstr "" msgid "" @@ -53944,9 +57150,9 @@ msgid "" msgstr "" msgid "" -":issue:`39259`: :class:`!NNTP` and :class:`!NNTP_SSL` now raise a :class:" -"`ValueError` if the given timeout for their constructor is zero to prevent " -"the creation of a non-blocking socket. Patch by Donghee Na." +":issue:`39259`: :class:`!NNTP` and :class:`!NNTP_SSL` now raise " +"a :class:`ValueError` if the given timeout for their constructor is zero to " +"prevent the creation of a non-blocking socket. Patch by Donghee Na." msgstr "" msgid "" @@ -53967,9 +57173,9 @@ msgid "" msgstr "" msgid "" -":issue:`39242`: Updated the Gmane domain from news.gmane.org to news.gmane." -"io which is used for examples of :class:`!NNTP` news reader server and " -"nntplib tests." +":issue:`39242`: Updated the Gmane domain from news.gmane.org to " +"news.gmane.io which is used for examples of :class:`!NNTP` news reader " +"server and nntplib tests." msgstr "" msgid "" @@ -54046,13 +57252,13 @@ msgid "" msgstr "" msgid "" -":issue:`39019`: Implement dummy ``__class_getitem__`` for :class:`tempfile." -"SpooledTemporaryFile`." +":issue:`39019`: Implement dummy ``__class_getitem__`` " +"for :class:`tempfile.SpooledTemporaryFile`." msgstr "" msgid "" -":issue:`39019`: Implement dummy ``__class_getitem__`` for ``subprocess." -"Popen``, ``subprocess.CompletedProcess``" +":issue:`39019`: Implement dummy ``__class_getitem__`` for " +"``subprocess.Popen``, ``subprocess.CompletedProcess``" msgstr "" msgid "" @@ -54070,11 +57276,11 @@ msgstr "" msgid "" ":issue:`38615`: :class:`~imaplib.IMAP4` and :class:`~imaplib.IMAP4_SSL` now " -"have an optional *timeout* parameter for their constructors. Also, the :meth:" -"`~imaplib.IMAP4.open` method now has an optional *timeout* parameter with " -"this change. The overridden methods of :class:`~imaplib.IMAP4_SSL` and :" -"class:`~imaplib.IMAP4_stream` were applied to this change. Patch by Donghee " -"Na." +"have an optional *timeout* parameter for their constructors. Also, " +"the :meth:`~imaplib.IMAP4.open` method now has an optional *timeout* " +"parameter with this change. The overridden methods " +"of :class:`~imaplib.IMAP4_SSL` and :class:`~imaplib.IMAP4_stream` were " +"applied to this change. Patch by Donghee Na." msgstr "" msgid "" @@ -54110,8 +57316,8 @@ msgid "" msgstr "" msgid "" -":issue:`38293`: Add :func:`copy.copy` and :func:`copy.deepcopy` support to :" -"func:`property` objects." +":issue:`38293`: Add :func:`copy.copy` and :func:`copy.deepcopy` support " +"to :func:`property` objects." msgstr "" msgid "" @@ -54143,8 +57349,8 @@ msgid "" msgstr "" msgid "" -":issue:`39395`: On non-Windows platforms, the :c:func:`setenv` and :c:func:" -"`unsetenv` functions are now required to build Python." +":issue:`39395`: On non-Windows platforms, the :c:func:`setenv` " +"and :c:func:`unsetenv` functions are now required to build Python." msgstr "" msgid "" @@ -54205,8 +57411,8 @@ msgid "" "parameter of :meth:`asyncio.loop.create_datagram_endpoint` is no longer " "supported. This is because of the behavior of ``SO_REUSEADDR`` in UDP. For " "more details, see the documentation for ``loop.create_datagram_endpoint()``. " -"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in :issue:" -"`37228`.)" +"(Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov " +"in :issue:`37228`.)" msgstr "" msgid "" @@ -54249,13 +57455,13 @@ msgid "" msgstr "" msgid "" -":issue:`38922`: Calling ``replace`` on a code object now raises the ``code." -"__new__`` audit event." +":issue:`38922`: Calling ``replace`` on a code object now raises the " +"``code.__new__`` audit event." msgstr "" msgid "" -":issue:`38920`: Add audit hooks for when :func:`sys.excepthook` and :func:" -"`sys.unraisablehook` are invoked." +":issue:`38920`: Add audit hooks for when :func:`sys.excepthook` " +"and :func:`sys.unraisablehook` are invoked." msgstr "" msgid "" @@ -54277,8 +57483,8 @@ msgstr "" msgid "" ":issue:`36854`: The garbage collector state becomes per interpreter " -"(``PyInterpreterState.gc``), rather than being global (``_PyRuntimeState." -"gc``)." +"(``PyInterpreterState.gc``), rather than being global " +"(``_PyRuntimeState.gc``)." msgstr "" msgid "" @@ -54288,8 +57494,8 @@ msgid "" msgstr "" msgid "" -":issue:`38328`: Sped up the creation time of constant :class:`list` and :" -"class:`set` displays. Patch by Brandt Bucher." +":issue:`38328`: Sped up the creation time of constant :class:`list` " +"and :class:`set` displays. Patch by Brandt Bucher." msgstr "" msgid "" @@ -54382,8 +57588,8 @@ msgstr "" msgid "" ":issue:`38982`: Fix asyncio ``PidfdChildWatcher``: handle ``waitpid()`` " -"error. If ``waitpid()`` is called elsewhere, ``waitpid()`` call fails with :" -"exc:`ChildProcessError`: use return code 255 in this case, and log a " +"error. If ``waitpid()`` is called elsewhere, ``waitpid()`` call fails " +"with :exc:`ChildProcessError`: use return code 255 in this case, and log a " "warning. It ensures that the pidfd file descriptor is closed if this error " "occurs." msgstr "" @@ -54501,19 +57707,19 @@ msgid "" msgstr "" msgid "" -":issue:`38820`: Make Python compatible with OpenSSL 3.0.0. :func:`ssl." -"SSLSocket.getpeercert` no longer returns IPv6 addresses with a trailing new " -"line." +":issue:`38820`: Make Python compatible with OpenSSL " +"3.0.0. :func:`ssl.SSLSocket.getpeercert` no longer returns IPv6 addresses " +"with a trailing new line." msgstr "" msgid "" -":issue:`38811`: Fix an unhandled exception in :mod:`pathlib` when :meth:`os." -"link` is missing. Patch by Toke Høiland-Jørgensen." +":issue:`38811`: Fix an unhandled exception in :mod:`pathlib` " +"when :meth:`os.link` is missing. Patch by Toke Høiland-Jørgensen." msgstr "" msgid "" -":issue:`38686`: Added support for multiple ``qop`` values in :class:`urllib." -"request.AbstractDigestAuthHandler`." +":issue:`38686`: Added support for multiple ``qop`` values " +"in :class:`urllib.request.AbstractDigestAuthHandler`." msgstr "" msgid "" @@ -54535,8 +57741,8 @@ msgid "" msgstr "" msgid "" -":issue:`38045`: Improve the performance of :func:`enum._decompose` in :mod:" -"`enum`. Patch by hongweipeng." +":issue:`38045`: Improve the performance of :func:`enum._decompose` " +"in :mod:`enum`. Patch by hongweipeng." msgstr "" msgid "" @@ -54561,12 +57767,12 @@ msgid "" msgstr "" msgid "" -":issue:`29636`: Add whitespace options for formatting JSON with the ``json." -"tool`` CLI. The following mutually exclusive options are now supported: ``--" -"indent`` for setting the indent level in spaces; ``--tab`` for indenting " -"with tabs; ``--no-indent`` for suppressing newlines; and ``--compact`` for " -"suppressing all whitespace. The default behavior remains the same as ``--" -"indent=4``." +":issue:`29636`: Add whitespace options for formatting JSON with the " +"``json.tool`` CLI. The following mutually exclusive options are now " +"supported: ``--indent`` for setting the indent level in spaces; ``--tab`` " +"for indenting with tabs; ``--no-indent`` for suppressing newlines; and ``--" +"compact`` for suppressing all whitespace. The default behavior remains the " +"same as ``--indent=4``." msgstr "" msgid "" @@ -54581,8 +57787,9 @@ msgid "" msgstr "" msgid "" -":issue:`22377`: Improves documentation of the values that :meth:`datetime." -"datetime.strptime` accepts for ``%Z``. Patch by Karl Dubost." +":issue:`22377`: Improves documentation of the values " +"that :meth:`datetime.datetime.strptime` accepts for ``%Z``. Patch by Karl " +"Dubost." msgstr "" msgid "" @@ -54597,12 +57804,12 @@ msgid "" msgstr "" msgid "" -":issue:`38614`: Replace hardcoded timeout constants in tests with new :mod:" -"`test.support` constants: :data:`~test.support.LOOPBACK_TIMEOUT`, :data:" -"`~test.support.INTERNET_TIMEOUT`, :data:`~test.support.SHORT_TIMEOUT` and :" -"data:`~test.support.LONG_TIMEOUT`. It becomes easier to adjust these four " -"timeout constants for all tests at once, rather than having to adjust every " -"single test file." +":issue:`38614`: Replace hardcoded timeout constants in tests with " +"new :mod:`test.support` " +"constants: :data:`~test.support.LOOPBACK_TIMEOUT`, :data:`~test.support.INTERNET_TIMEOUT`, :data:`~test.support.SHORT_TIMEOUT` " +"and :data:`~test.support.LONG_TIMEOUT`. It becomes easier to adjust these " +"four timeout constants for all tests at once, rather than having to adjust " +"every single test file." msgstr "" msgid "" @@ -54617,10 +57824,10 @@ msgid "" msgstr "" msgid "" -":issue:`38991`: :mod:`test.support`: :func:`~test.support." -"run_python_until_end`, :func:`~test.support.assert_python_ok` and :func:" -"`~test.support.assert_python_failure` functions no longer strip whitespaces " -"from stderr. Remove ``test.support.strip_python_stderr()`` function." +":issue:`38991`: :mod:`test.support`: :func:`~test.support.run_python_until_end`, :func:`~test.support.assert_python_ok` " +"and :func:`~test.support.assert_python_failure` functions no longer strip " +"whitespaces from stderr. Remove ``test.support.strip_python_stderr()`` " +"function." msgstr "" msgid "" @@ -54642,8 +57849,8 @@ msgid "" msgstr "" msgid "" -":issue:`38692`: Skip the test_posix.test_pidfd_open() test if ``os." -"pidfd_open()`` fails with a :exc:`PermissionError`. This situation can " +":issue:`38692`: Skip the test_posix.test_pidfd_open() test if " +"``os.pidfd_open()`` fails with a :exc:`PermissionError`. This situation can " "happen in a Linux sandbox using a syscall whitelist which doesn't allow the " "``pidfd_open()`` syscall yet." msgstr "" @@ -54653,8 +57860,8 @@ msgid "" msgstr "" msgid "" -":issue:`38669`: Raise :exc:`TypeError` when passing target as a string with :" -"meth:`unittest.mock.patch.object`." +":issue:`38669`: Raise :exc:`TypeError` when passing target as a string " +"with :meth:`unittest.mock.patch.object`." msgstr "" msgid "" @@ -54742,14 +57949,14 @@ msgid "" msgstr "" msgid "" -":issue:`38418`: Fixes audit event for :func:`os.system` to be named ``os." -"system``." +":issue:`38418`: Fixes audit event for :func:`os.system` to be named " +"``os.system``." msgstr "" msgid "" -":issue:`38243`: Escape the server title of :class:`xmlrpc.server." -"DocXMLRPCServer` when rendering the document page as HTML. (Contributed by " -"Donghee Na in :issue:`38243`.)" +":issue:`38243`: Escape the server title " +"of :class:`xmlrpc.server.DocXMLRPCServer` when rendering the document page " +"as HTML. (Contributed by Donghee Na in :issue:`38243`.)" msgstr "" msgid "" @@ -54782,11 +57989,11 @@ msgid "" msgstr "" msgid "" -":issue:`37363`: Adds audit events for :mod:`ensurepip`, :mod:`ftplib`, :mod:" -"`glob`, :mod:`imaplib`, :mod:`!nntplib`, :mod:`pdb`, :mod:`poplib`, :mod:" -"`shutil`, :mod:`smtplib`, :mod:`sqlite3`, :mod:`subprocess`, :mod:`!" -"telnetlib`, :mod:`tempfile` and :mod:`webbrowser`, as well as :func:`os." -"listdir`, :func:`os.scandir` and :func:`breakpoint`." +":issue:`37363`: Adds audit events " +"for :mod:`ensurepip`, :mod:`ftplib`, :mod:`glob`, :mod:`imaplib`, :mod:`!" +"nntplib`, :mod:`pdb`, :mod:`poplib`, :mod:`shutil`, :mod:`smtplib`, :mod:`sqlite3`, :mod:`subprocess`, :mod:`!" +"telnetlib`, :mod:`tempfile` and :mod:`webbrowser`, as well " +"as :func:`os.listdir`, :func:`os.scandir` and :func:`breakpoint`." msgstr "" msgid "" @@ -54804,13 +58011,13 @@ msgid "" msgstr "" msgid "" -":issue:`38631`: Replace ``Py_FatalError()`` call with a regular :exc:" -"`RuntimeError` exception in :meth:`float.__getformat__`." +":issue:`38631`: Replace ``Py_FatalError()`` call with a " +"regular :exc:`RuntimeError` exception in :meth:`float.__getformat__`." msgstr "" msgid "" -":issue:`38639`: Optimized :func:`math.floor`, :func:`math.ceil` and :func:" -"`math.trunc` for floats." +":issue:`38639`: Optimized :func:`math.floor`, :func:`math.ceil` " +"and :func:`math.trunc` for floats." msgstr "" msgid "" @@ -54827,8 +58034,8 @@ msgstr "" msgid "" ":issue:`28029`: ``\"\".replace(\"\", s, n)`` now returns ``s`` instead of an " -"empty string for all non-zero ``n``. There are similar changes for :class:" -"`bytes` and :class:`bytearray` objects." +"empty string for all non-zero ``n``. There are similar changes " +"for :class:`bytes` and :class:`bytearray` objects." msgstr "" msgid "" @@ -54842,8 +58049,9 @@ msgid "" msgstr "" msgid "" -":issue:`38465`: :class:`bytearray`, :class:`~array.array` and :class:`~mmap." -"mmap` objects allow now to export more than ``2**31`` buffers at a time." +":issue:`38465`: :class:`bytearray`, :class:`~array.array` " +"and :class:`~mmap.mmap` objects allow now to export more than ``2**31`` " +"buffers at a time." msgstr "" msgid "" @@ -54927,8 +58135,8 @@ msgid "" msgstr "" msgid "" -":issue:`38219`: Optimized the :class:`dict` constructor and the :meth:`~dict." -"update` method for the case when the argument is a dict." +":issue:`38219`: Optimized the :class:`dict` constructor and " +"the :meth:`~dict.update` method for the case when the argument is a dict." msgstr "" msgid "" @@ -55015,14 +58223,15 @@ msgstr "" msgid "" ":issue:`37751`: Fix :func:`codecs.lookup` to normalize the encoding name the " -"same way than :func:`encodings.normalize_encoding`, except that :func:" -"`codecs.lookup` also converts the name to lower case." +"same way than :func:`encodings.normalize_encoding`, except " +"that :func:`codecs.lookup` also converts the name to lower case." msgstr "" msgid "" -":issue:`37830`: Fixed compilation of :keyword:`break` and :keyword:" -"`continue` in the :keyword:`finally` block when the corresponding :keyword:" -"`try` block contains :keyword:`return` with a non-constant value." +":issue:`37830`: Fixed compilation of :keyword:`break` " +"and :keyword:`continue` in the :keyword:`finally` block when the " +"corresponding :keyword:`try` block contains :keyword:`return` with a non-" +"constant value." msgstr "" msgid "" @@ -55031,14 +58240,15 @@ msgid "" msgstr "" msgid "" -":issue:`37840`: Fix handling of negative indices in :c:member:" -"`~PySequenceMethods.sq_item` of :class:`bytearray`. Patch by Sergey Fedoseev." +":issue:`37840`: Fix handling of negative indices " +"in :c:member:`~PySequenceMethods.sq_item` of :class:`bytearray`. Patch by " +"Sergey Fedoseev." msgstr "" msgid "" -":issue:`37802`: Slightly improve performance of :c:func:" -"`PyLong_FromUnsignedLong`, :c:func:`PyLong_FromUnsignedLongLong` and :c:func:" -"`PyLong_FromSize_t`. Patch by Sergey Fedoseev." +":issue:`37802`: Slightly improve performance " +"of :c:func:`PyLong_FromUnsignedLong`, :c:func:`PyLong_FromUnsignedLongLong` " +"and :c:func:`PyLong_FromSize_t`. Patch by Sergey Fedoseev." msgstr "" msgid "" @@ -55066,8 +58276,8 @@ msgid "" msgstr "" msgid "" -":issue:`36279`: Fix potential use of uninitialized memory in :func:`os." -"wait3`." +":issue:`36279`: Fix potential use of uninitialized memory " +"in :func:`os.wait3`." msgstr "" msgid "" @@ -55076,8 +58286,9 @@ msgid "" msgstr "" msgid "" -":issue:`34880`: The :keyword:`assert` statement now works properly if the :" -"exc:`AssertionError` exception is being shadowed. Patch by Zackery Spytz." +":issue:`34880`: The :keyword:`assert` statement now works properly if " +"the :exc:`AssertionError` exception is being shadowed. Patch by Zackery " +"Spytz." msgstr "" msgid "" @@ -55087,14 +58298,15 @@ msgid "" msgstr "" msgid "" -":issue:`37648`: Fixed minor inconsistency in :meth:`list.__contains__`, :" -"meth:`tuple.__contains__` and a few other places. The collection's item is " -"now always at the left and the needle is on the right of ``==``." +":issue:`37648`: Fixed minor inconsistency " +"in :meth:`list.__contains__`, :meth:`tuple.__contains__` and a few other " +"places. The collection's item is now always at the left and the needle is on " +"the right of ``==``." msgstr "" msgid "" -":issue:`37444`: Update differing exception between :meth:`builtins." -"__import__` and :meth:`importlib.__import__`." +":issue:`37444`: Update differing exception " +"between :meth:`builtins.__import__` and :meth:`importlib.__import__`." msgstr "" msgid "" @@ -55142,17 +58354,17 @@ msgid "" msgstr "" msgid "" -":issue:`37392`: Remove ``sys.getcheckinterval()`` and ``sys." -"setcheckinterval()`` functions. They were deprecated since Python 3.2. Use :" -"func:`sys.getswitchinterval` and :func:`sys.setswitchinterval` instead. " +":issue:`37392`: Remove ``sys.getcheckinterval()`` and " +"``sys.setcheckinterval()`` functions. They were deprecated since Python 3.2. " +"Use :func:`sys.getswitchinterval` and :func:`sys.setswitchinterval` instead. " "Remove also ``check_interval`` field of the ``PyInterpreterState`` structure." msgstr "" msgid "" ":issue:`37388`: In development mode and in debug build, *encoding* and " "*errors* arguments are now checked on string encoding and decoding " -"operations. Examples: :func:`open`, :meth:`str.encode` and :meth:`bytes." -"decode`." +"operations. Examples: :func:`open`, :meth:`str.encode` " +"and :meth:`bytes.decode`." msgstr "" msgid "" @@ -55172,9 +58384,9 @@ msgid "" msgstr "" msgid "" -":issue:`37330`: :func:`open`, :func:`io.open`, :func:`codecs.open` and :" -"class:`fileinput.FileInput` no longer accept ``'U'`` (\"universal newline\") " -"in the file mode. This flag was deprecated since Python 3.3." +":issue:`37330`: :func:`open`, :func:`io.open`, :func:`codecs.open` " +"and :class:`fileinput.FileInput` no longer accept ``'U'`` (\"universal " +"newline\") in the file mode. This flag was deprecated since Python 3.3." msgstr "" msgid "" @@ -55341,8 +58553,8 @@ msgid "" msgstr "" msgid "" -":issue:`38713`: Add :const:`os.P_PIDFD` constant, which may be passed to :" -"func:`os.waitid` to wait on a Linux process file descriptor." +":issue:`38713`: Add :const:`os.P_PIDFD` constant, which may be passed " +"to :func:`os.waitid` to wait on a Linux process file descriptor." msgstr "" msgid "" @@ -55351,30 +58563,31 @@ msgid "" msgstr "" msgid "" -":issue:`38692`: Expose the Linux ``pidfd_open`` syscall as :func:`os." -"pidfd_open`." +":issue:`38692`: Expose the Linux ``pidfd_open`` syscall " +"as :func:`os.pidfd_open`." msgstr "" msgid "" -":issue:`38602`: Added constants :const:`~fcntl.F_OFD_GETLK`, :const:`~fcntl." -"F_OFD_SETLK` and :const:`~fcntl.F_OFD_SETLKW` to the :mod:`fcntl` module. " -"Patch by Donghee Na." +":issue:`38602`: Added " +"constants :const:`~fcntl.F_OFD_GETLK`, :const:`~fcntl.F_OFD_SETLK` " +"and :const:`~fcntl.F_OFD_SETLKW` to the :mod:`fcntl` module. Patch by " +"Donghee Na." msgstr "" msgid "" -":issue:`38334`: Fixed seeking backward on an encrypted :class:`zipfile." -"ZipExtFile`." +":issue:`38334`: Fixed seeking backward on an " +"encrypted :class:`zipfile.ZipExtFile`." msgstr "" msgid "" -":issue:`38312`: Add :func:`curses.get_escdelay`, :func:`curses." -"set_escdelay`, :func:`curses.get_tabsize`, and :func:`curses.set_tabsize` " -"functions - by Anthony Sottile." +":issue:`38312`: " +"Add :func:`curses.get_escdelay`, :func:`curses.set_escdelay`, :func:`curses.get_tabsize`, " +"and :func:`curses.set_tabsize` functions - by Anthony Sottile." msgstr "" msgid "" -":issue:`38586`: Now :func:`~logging.config.fileConfig` correctly sets the ." -"name of handlers loaded." +":issue:`38586`: Now :func:`~logging.config.fileConfig` correctly sets " +"the .name of handlers loaded." msgstr "" msgid "" @@ -55383,8 +58596,8 @@ msgid "" msgstr "" msgid "" -":issue:`34679`: asynci.ProactorEventLoop.close() now only calls signal." -"set_wakeup_fd() in the main thread." +":issue:`34679`: asynci.ProactorEventLoop.close() now only calls " +"signal.set_wakeup_fd() in the main thread." msgstr "" msgid "" @@ -55398,8 +58611,8 @@ msgid "" msgstr "" msgid "" -":issue:`38521`: Fixed erroneous equality comparison in statistics." -"NormalDist()." +":issue:`38521`: Fixed erroneous equality comparison in " +"statistics.NormalDist()." msgstr "" msgid "" @@ -55430,8 +58643,9 @@ msgid "" msgstr "" msgid "" -":issue:`38449`: Revert PR 15522, which introduces a regression in :meth:" -"`mimetypes.guess_type` due to improper handling of filenames as urls." +":issue:`38449`: Revert PR 15522, which introduces a regression " +"in :meth:`mimetypes.guess_type` due to improper handling of filenames as " +"urls." msgstr "" msgid "" @@ -55440,9 +58654,9 @@ msgid "" msgstr "" msgid "" -":issue:`38109`: Add missing :const:`stat.S_IFDOOR`, :const:`stat.S_IFPORT`, :" -"const:`stat.S_IFWHT`, :func:`stat.S_ISDOOR`, :func:`stat.S_ISPORT`, and :" -"func:`stat.S_ISWHT` values to the Python implementation of :mod:`stat`." +":issue:`38109`: Add " +"missing :const:`stat.S_IFDOOR`, :const:`stat.S_IFPORT`, :const:`stat.S_IFWHT`, :func:`stat.S_ISDOOR`, :func:`stat.S_ISPORT`, " +"and :func:`stat.S_ISWHT` values to the Python implementation of :mod:`stat`." msgstr "" msgid ":issue:`38422`: Clarify docstrings of pathlib suffix(es)" @@ -55454,20 +58668,20 @@ msgid "" msgstr "" msgid "" -":issue:`38332`: Prevent :exc:`KeyError` thrown by :func:`!_encoded_words." -"decode` when given an encoded-word with invalid content-type encoding from " -"propagating all the way to :func:`email.message.get`." +":issue:`38332`: Prevent :exc:`KeyError` thrown by :func:`!" +"_encoded_words.decode` when given an encoded-word with invalid content-type " +"encoding from propagating all the way to :func:`email.message.get`." msgstr "" msgid "" -":issue:`38371`: Deprecated the ``split()`` method in :class:`!_tkinter." -"TkappType` in favour of the ``splitlist()`` method which has more consistent " -"and predictable behavior." +":issue:`38371`: Deprecated the ``split()`` method in :class:`!" +"_tkinter.TkappType` in favour of the ``splitlist()`` method which has more " +"consistent and predictable behavior." msgstr "" msgid "" -":issue:`38341`: Add :exc:`smtplib.SMTPNotSupportedError` to the :mod:" -"`smtplib` exported names." +":issue:`38341`: Add :exc:`smtplib.SMTPNotSupportedError` to " +"the :mod:`smtplib` exported names." msgstr "" msgid "" @@ -55503,9 +58717,9 @@ msgstr "" msgid "" ":issue:`38216`: Allow the rare code that wants to send invalid http requests " -"from the ``http.client`` library a way to do so. The fixes for :issue:" -"`30458` led to breakage for some projects that were relying on this ability " -"to test their own behavior in the face of bad requests." +"from the ``http.client`` library a way to do so. The fixes " +"for :issue:`30458` led to breakage for some projects that were relying on " +"this ability to test their own behavior in the face of bad requests." msgstr "" msgid "" @@ -55520,8 +58734,8 @@ msgid "" msgstr "" msgid "" -":issue:`38265`: Update the *length* parameter of :func:`os.pread` to accept :" -"c:type:`Py_ssize_t` instead of :c:expr:`int`." +":issue:`38265`: Update the *length* parameter of :func:`os.pread` to " +"accept :c:type:`Py_ssize_t` instead of :c:expr:`int`." msgstr "" msgid "" @@ -55544,10 +58758,10 @@ msgid "" msgstr "" msgid "" -":issue:`38191`: Constructors of :class:`~typing.NamedTuple` and :class:" -"`~typing.TypedDict` types now accept arbitrary keyword argument names, " -"including \"cls\", \"self\", \"typename\", \"_typename\", \"fields\" and " -"\"_fields\"." +":issue:`38191`: Constructors of :class:`~typing.NamedTuple` " +"and :class:`~typing.TypedDict` types now accept arbitrary keyword argument " +"names, including \"cls\", \"self\", \"typename\", \"_typename\", \"fields\" " +"and \"_fields\"." msgstr "" msgid "" @@ -55555,8 +58769,8 @@ msgid "" msgstr "" msgid "" -":issue:`38185`: Fixed case-insensitive string comparison in :class:`sqlite3." -"Row` indexing." +":issue:`38185`: Fixed case-insensitive string comparison " +"in :class:`sqlite3.Row` indexing." msgstr "" msgid "" @@ -55567,8 +58781,9 @@ msgid "" msgstr "" msgid "" -":issue:`37828`: Fix default mock name in :meth:`unittest.mock.Mock." -"assert_called` exceptions. Patch by Abraham Toriz Cruz." +":issue:`37828`: Fix default mock name " +"in :meth:`unittest.mock.Mock.assert_called` exceptions. Patch by Abraham " +"Toriz Cruz." msgstr "" msgid "" @@ -55636,11 +58851,11 @@ msgid "" msgstr "" msgid "" -":issue:`34037`: For :mod:`asyncio`, add a new coroutine :meth:`loop." -"shutdown_default_executor`. The new coroutine provides an API to schedule an " -"executor shutdown that waits on the threadpool to finish closing. Also, :" -"func:`asyncio.run` has been updated to utilize the new coroutine. Patch by " -"Kyle Stanley." +":issue:`34037`: For :mod:`asyncio`, add a new " +"coroutine :meth:`loop.shutdown_default_executor`. The new coroutine provides " +"an API to schedule an executor shutdown that waits on the threadpool to " +"finish closing. Also, :func:`asyncio.run` has been updated to utilize the " +"new coroutine. Patch by Kyle Stanley." msgstr "" msgid "" @@ -55665,8 +58880,9 @@ msgid "" msgstr "" msgid "" -":issue:`37488`: Add warning to :meth:`datetime.utctimetuple`, :meth:" -"`datetime.utcnow` and :meth:`datetime.utcfromtimestamp` ." +":issue:`37488`: Add warning " +"to :meth:`datetime.utctimetuple`, :meth:`datetime.utcnow` " +"and :meth:`datetime.utcfromtimestamp` ." msgstr "" msgid "" @@ -55739,8 +58955,8 @@ msgid "" msgstr "" msgid "" -":issue:`37140`: Fix a ctypes regression of Python 3.8. When a ctypes." -"Structure is passed by copy to a function, ctypes internals created a " +":issue:`37140`: Fix a ctypes regression of Python 3.8. When a " +"ctypes.Structure is passed by copy to a function, ctypes internals created a " "temporary object which had the side effect of calling the structure " "finalizer (__del__) twice. The Python semantics requires a finalizer to be " "called exactly once. Fix ctypes internals to no longer call the finalizer " @@ -55775,8 +58991,8 @@ msgid "Patch by blhsing" msgstr "" msgid "" -":issue:`37965`: Fix C compiler warning caused by distutils.ccompiler." -"CCompiler.has_function." +":issue:`37965`: Fix C compiler warning caused by " +"distutils.ccompiler.CCompiler.has_function." msgstr "" msgid ":issue:`37964`: Add ``F_GETPATH`` command to :mod:`fcntl`." @@ -55814,9 +59030,10 @@ msgid "" msgstr "" msgid "" -":issue:`36917`: Add default implementation of the :meth:`ast.NodeVisitor." -"visit_Constant` method which emits a deprecation warning and calls " -"corresponding methods ``visit_Num()``, ``visit_Str()``, etc." +":issue:`36917`: Add default implementation of " +"the :meth:`ast.NodeVisitor.visit_Constant` method which emits a deprecation " +"warning and calls corresponding methods ``visit_Num()``, ``visit_Str()``, " +"etc." msgstr "" msgid "" @@ -55840,8 +59057,8 @@ msgid "" msgstr "" msgid "" -":issue:`9938`: Add optional keyword argument ``exit_on_error`` for :class:" -"`ArgumentParser`." +":issue:`9938`: Add optional keyword argument ``exit_on_error`` " +"for :class:`ArgumentParser`." msgstr "" msgid "" @@ -55851,8 +59068,8 @@ msgid "" msgstr "" msgid "" -":issue:`32793`: Fix a duplicated debug message when :meth:`smtplib.SMTP." -"connect` is called." +":issue:`32793`: Fix a duplicated debug message " +"when :meth:`smtplib.SMTP.connect` is called." msgstr "" msgid "" @@ -55915,8 +59132,8 @@ msgid "" msgstr "" msgid "" -":issue:`18578`: Renamed and documented ``test.bytecode_helper`` as ``test." -"support.bytecode_helper``. Patch by Joannah Nanjekye." +":issue:`18578`: Renamed and documented ``test.bytecode_helper`` as " +"``test.support.bytecode_helper``. Patch by Joannah Nanjekye." msgstr "" msgid ":issue:`37785`: Fix xgettext warnings in :mod:`argparse`." @@ -55948,8 +59165,8 @@ msgid "" ":issue:`37742`: The logging.getLogger() API now returns the root logger when " "passed the name 'root', whereas previously it returned a non-root logger " "named 'root'. This could affect cases where user code explicitly wants a non-" -"root logger named 'root', or instantiates a logger using logging." -"getLogger(__name__) in some top-level module called 'root.py'." +"root logger named 'root', or instantiates a logger using " +"logging.getLogger(__name__) in some top-level module called 'root.py'." msgstr "" msgid "" @@ -55982,8 +59199,8 @@ msgid ":issue:`11953`: Completing WSA* error codes in :mod:`socket`." msgstr "" msgid "" -":issue:`37685`: Fixed comparisons of :class:`datetime.timedelta` and :class:" -"`datetime.timezone`." +":issue:`37685`: Fixed comparisons of :class:`datetime.timedelta` " +"and :class:`datetime.timezone`." msgstr "" msgid "" @@ -56036,10 +59253,10 @@ msgid "" msgstr "" msgid "" -":issue:`37642`: Allowed the pure Python implementation of :class:`datetime." -"timezone` to represent sub-minute offsets close to minimum and maximum " -"boundaries, specifically in the ranges (23:59, 24:00) and (-23:59, 24:00). " -"Patch by Ngalim Siregar" +":issue:`37642`: Allowed the pure Python implementation " +"of :class:`datetime.timezone` to represent sub-minute offsets close to " +"minimum and maximum boundaries, specifically in the ranges (23:59, 24:00) " +"and (-23:59, 24:00). Patch by Ngalim Siregar" msgstr "" msgid "" @@ -56083,8 +59300,8 @@ msgid "" msgstr "" msgid "" -":issue:`18378`: Recognize \"UTF-8\" as a valid value for LC_CTYPE in locale." -"_parse_localename." +":issue:`18378`: Recognize \"UTF-8\" as a valid value for LC_CTYPE in " +"locale._parse_localename." msgstr "" msgid "" @@ -56126,16 +59343,17 @@ msgid "" msgstr "" msgid "" -":issue:`18374`: Fix the ``.col_offset`` attribute of nested :class:`ast." -"BinOp` instances which had a too large value in some situations." +":issue:`18374`: Fix the ``.col_offset`` attribute of " +"nested :class:`ast.BinOp` instances which had a too large value in some " +"situations." msgstr "" msgid "" -":issue:`37424`: Fixes a possible hang when using a timeout on ``subprocess." -"run()`` while capturing output. If the child process spawned its own " -"children or otherwise connected its stdout or stderr handles with another " -"process, we could hang after the timeout was reached and our child was " -"killed when attempting to read final output from the pipes." +":issue:`37424`: Fixes a possible hang when using a timeout on " +"``subprocess.run()`` while capturing output. If the child process spawned " +"its own children or otherwise connected its stdout or stderr handles with " +"another process, we could hang after the timeout was reached and our child " +"was killed when attempting to read final output from the pipes." msgstr "" msgid "" @@ -56208,8 +59426,8 @@ msgid "" msgstr "" msgid "" -":issue:`37376`: :mod:`pprint` now has support for :class:`types." -"SimpleNamespace`. Patch by Carl Bordum Hansen." +":issue:`37376`: :mod:`pprint` now has support " +"for :class:`types.SimpleNamespace`. Patch by Carl Bordum Hansen." msgstr "" msgid "" @@ -56241,12 +59459,10 @@ msgid ":issue:`37358`: Optimized ``functools.partial`` by using vectorcall." msgstr "" msgid "" -":issue:`37347`: :meth:`sqlite3.Connection.create_aggregate`, :meth:`sqlite3." -"Connection.create_function`, :meth:`sqlite3.Connection.set_authorizer`, :" -"meth:`sqlite3.Connection.set_progress_handler` :meth:`sqlite3.Connection." -"set_trace_callback` methods lead to segfaults if some of these methods are " -"called twice with an equal object but not the same. Now callbacks are stored " -"more carefully. Patch by Aleksandr Balezin." +":issue:`37347`: :meth:`sqlite3.Connection.create_aggregate`, :meth:`sqlite3.Connection.create_function`, :meth:`sqlite3.Connection.set_authorizer`, :meth:`sqlite3.Connection.set_progress_handler` :meth:`sqlite3.Connection.set_trace_callback` " +"methods lead to segfaults if some of these methods are called twice with an " +"equal object but not the same. Now callbacks are stored more carefully. " +"Patch by Aleksandr Balezin." msgstr "" msgid "" @@ -56271,9 +59487,9 @@ msgid "" msgstr "" msgid "" -":issue:`37320`: ``aifc.openfp()`` alias to ``aifc.open()``, ``sunau." -"openfp()`` alias to ``sunau.open()``, and ``wave.openfp()`` alias to ``wave." -"open()`` have been removed. They were deprecated since Python 3.7." +":issue:`37320`: ``aifc.openfp()`` alias to ``aifc.open()``, " +"``sunau.openfp()`` alias to ``sunau.open()``, and ``wave.openfp()`` alias to " +"``wave.open()`` have been removed. They were deprecated since Python 3.7." msgstr "" msgid "" @@ -56328,10 +59544,10 @@ msgid "" msgstr "" msgid "" -":issue:`35922`: Fix :meth:`RobotFileParser.crawl_delay` and :meth:" -"`RobotFileParser.request_rate` to return ``None`` rather than raise :exc:" -"`AttributeError` when no relevant rule is defined in the robots.txt file. " -"Patch by Rémi Lapeyre." +":issue:`35922`: Fix :meth:`RobotFileParser.crawl_delay` " +"and :meth:`RobotFileParser.request_rate` to return ``None`` rather than " +"raise :exc:`AttributeError` when no relevant rule is defined in the " +"robots.txt file. Patch by Rémi Lapeyre." msgstr "" msgid "" @@ -56340,9 +59556,9 @@ msgid "" msgstr "" msgid "" -":issue:`36607`: Eliminate :exc:`RuntimeError` raised by :func:`asyncio." -"all_tasks` if internal tasks weak set is changed by another thread during " -"iteration." +":issue:`36607`: Eliminate :exc:`RuntimeError` raised " +"by :func:`asyncio.all_tasks` if internal tasks weak set is changed by " +"another thread during iteration." msgstr "" msgid "" @@ -56369,8 +59585,8 @@ msgid "" msgstr "" msgid "" -":issue:`12144`: Ensure cookies with ``expires`` attribute are handled in :" -"meth:`CookieJar.make_cookies`." +":issue:`12144`: Ensure cookies with ``expires`` attribute are handled " +"in :meth:`CookieJar.make_cookies`." msgstr "" msgid "" @@ -56402,8 +59618,8 @@ msgid "" msgstr "" msgid "" -":issue:`34767`: Do not always create a :class:`collections.deque` in :class:" -"`asyncio.Lock`." +":issue:`34767`: Do not always create a :class:`collections.deque` " +"in :class:`asyncio.Lock`." msgstr "" msgid "" @@ -56421,8 +59637,8 @@ msgid "" msgstr "" msgid "" -":issue:`28724`: The socket module now has the :func:`socket.send_fds` and :" -"func:`socket.recv.fds` methods. Contributed by Joannah Nanjekye, Shinya " +":issue:`28724`: The socket module now has the :func:`socket.send_fds` " +"and :func:`socket.recv.fds` methods. Contributed by Joannah Nanjekye, Shinya " "Okano and Victor Stinner." msgstr "" @@ -56631,9 +59847,10 @@ msgid "" msgstr "" msgid "" -":issue:`38816`: Provides more details about the interaction between :c:func:" -"`fork` and CPython's runtime, focusing just on the C-API. This includes " -"cautions about where :c:func:`fork` should and shouldn't be called." +":issue:`38816`: Provides more details about the interaction " +"between :c:func:`fork` and CPython's runtime, focusing just on the C-API. " +"This includes cautions about where :c:func:`fork` should and shouldn't be " +"called." msgstr "" msgid "" @@ -56642,8 +59859,8 @@ msgid "" msgstr "" msgid "" -":issue:`38778`: Document the fact that :exc:`RuntimeError` is raised if :" -"meth:`os.fork` is called in a subinterpreter." +":issue:`38778`: Document the fact that :exc:`RuntimeError` is raised " +"if :meth:`os.fork` is called in a subinterpreter." msgstr "" msgid "" @@ -56671,8 +59888,8 @@ msgid ":issue:`37977`: Warn more strongly and clearly about pickle insecurity" msgstr "" msgid "" -":issue:`37979`: Added a link to dateutil.parser.isoparse in the datetime." -"fromisoformat documentation. Patch by Paul Ganssle" +":issue:`37979`: Added a link to dateutil.parser.isoparse in the " +"datetime.fromisoformat documentation. Patch by Paul Ganssle" msgstr "" msgid "" @@ -56702,13 +59919,13 @@ msgid "" msgstr "" msgid "" -":issue:`37256`: Fix wording of arguments for :class:`Request` in :mod:" -"`urllib.request`" +":issue:`37256`: Fix wording of arguments for :class:`Request` " +"in :mod:`urllib.request`" msgstr "" msgid "" -":issue:`37284`: Add a brief note to indicate that any new ``sys." -"implementation`` required attributes must go through the PEP process." +":issue:`37284`: Add a brief note to indicate that any new " +"``sys.implementation`` required attributes must go through the PEP process." msgstr "" msgid "" @@ -56767,14 +59984,15 @@ msgid "" msgstr "" msgid "" -":issue:`23460`: The documentation for decimal string formatting using the ``:" -"g`` specifier has been updated to reflect the correct exponential notation " -"cutoff point. Original patch contributed by Tuomas Suutari." +":issue:`23460`: The documentation for decimal string formatting using the " +"``:g`` specifier has been updated to reflect the correct exponential " +"notation cutoff point. Original patch contributed by Tuomas Suutari." msgstr "" msgid "" -":issue:`35803`: Document and test that ``tempfile`` functions may accept a :" -"term:`path-like object` for the ``dir`` argument. Patch by Anthony Sottile." +":issue:`35803`: Document and test that ``tempfile`` functions may accept " +"a :term:`path-like object` for the ``dir`` argument. Patch by Anthony " +"Sottile." msgstr "" msgid "" @@ -56795,24 +60013,24 @@ msgid "" msgstr "" msgid "" -":issue:`38614`: Add timeout constants to :mod:`test.support`: :data:`~test." -"support.LOOPBACK_TIMEOUT`, :data:`~test.support.INTERNET_TIMEOUT`, :data:" -"`~test.support.SHORT_TIMEOUT` and :data:`~test.support.LONG_TIMEOUT`." +":issue:`38614`: Add timeout constants " +"to :mod:`test.support`: :data:`~test.support.LOOPBACK_TIMEOUT`, :data:`~test.support.INTERNET_TIMEOUT`, :data:`~test.support.SHORT_TIMEOUT` " +"and :data:`~test.support.LONG_TIMEOUT`." msgstr "" msgid "" ":issue:`38502`: test.regrtest now uses process groups in the multiprocessing " -"mode (-jN command line option) if process groups are available: if :func:`os." -"setsid` and :func:`os.killpg` functions are available." +"mode (-jN command line option) if process groups are available: " +"if :func:`os.setsid` and :func:`os.killpg` functions are available." msgstr "" msgid "" -":issue:`35998`: Fix a race condition in test_asyncio." -"test_start_tls_server_1(). Previously, there was a race condition between " -"the test main() function which replaces the protocol and the test " -"ServerProto protocol which sends ANSWER once it gets HELLO. Now, only the " -"test main() function is responsible to send data, ServerProto no longer " -"sends data." +":issue:`35998`: Fix a race condition in " +"test_asyncio.test_start_tls_server_1(). Previously, there was a race " +"condition between the test main() function which replaces the protocol and " +"the test ServerProto protocol which sends ANSWER once it gets HELLO. Now, " +"only the test main() function is responsible to send data, ServerProto no " +"longer sends data." msgstr "" msgid "" @@ -56822,11 +60040,11 @@ msgid "" msgstr "" msgid "" -":issue:`37531`: On timeout, regrtest no longer attempts to call ``popen." -"communicate()`` again: it can hang until all child processes using stdout " -"and stderr pipes completes. Kill the worker process and ignores its output. " -"Change also the faulthandler timeout of the main process from 1 minute to 5 " -"minutes, for Python slowest buildbots." +":issue:`37531`: On timeout, regrtest no longer attempts to call " +"``popen.communicate()`` again: it can hang until all child processes using " +"stdout and stderr pipes completes. Kill the worker process and ignores its " +"output. Change also the faulthandler timeout of the main process from 1 " +"minute to 5 minutes, for Python slowest buildbots." msgstr "" msgid ":issue:`38239`: Fix test_gdb for Link Time Optimization (LTO) builds." @@ -56854,8 +60072,8 @@ msgid "" msgstr "" msgid "" -":issue:`37123`: Multiprocessing test test_mymanager() now also expects -" -"SIGTERM, not only exitcode 0. BaseManager._finalize_manager() sends SIGTERM " +":issue:`37123`: Multiprocessing test test_mymanager() now also expects " +"-SIGTERM, not only exitcode 0. BaseManager._finalize_manager() sends SIGTERM " "to the manager process if it takes longer than 1 second to stop, which " "happens on slow buildbots." msgstr "" @@ -56898,8 +60116,8 @@ msgstr "" msgid "" ":issue:`37526`: Add :func:`test.support.catch_threading_exception`: context " -"manager catching :class:`threading.Thread` exception using :func:`threading." -"excepthook`." +"manager catching :class:`threading.Thread` exception " +"using :func:`threading.excepthook`." msgstr "" msgid "" @@ -56921,8 +60139,8 @@ msgstr "" msgid "" ":issue:`37421`: test_concurrent_futures now cleans up multiprocessing to " -"remove immediately temporary directories created by multiprocessing.util." -"get_temp_dir()." +"remove immediately temporary directories created by " +"multiprocessing.util.get_temp_dir()." msgstr "" msgid "" @@ -56937,10 +60155,10 @@ msgid "" msgstr "" msgid "" -":issue:`37421`: urllib.request tests now call :func:`~urllib.request." -"urlcleanup` to remove temporary files created by ``urlretrieve()`` tests and " -"to clear the ``_opener`` global variable set by ``urlopen()`` and functions " -"calling indirectly ``urlopen()``." +":issue:`37421`: urllib.request tests now " +"call :func:`~urllib.request.urlcleanup` to remove temporary files created by " +"``urlretrieve()`` tests and to clear the ``_opener`` global variable set by " +"``urlopen()`` and functions calling indirectly ``urlopen()``." msgstr "" msgid ":issue:`37472`: Remove ``Lib/test/outstanding_bugs.py``." @@ -56950,8 +60168,8 @@ msgid ":issue:`37199`: Fix test failures when IPv6 is unavailable or disabled." msgstr "" msgid "" -":issue:`19696`: Replace deprecated method \"random.choose\" with \"random." -"choice\" in \"test_pkg_import.py\"." +":issue:`19696`: Replace deprecated method \"random.choose\" with " +"\"random.choice\" in \"test_pkg_import.py\"." msgstr "" msgid "" @@ -56967,8 +60185,8 @@ msgid "" msgstr "" msgid "" -":issue:`37400`: Fix test_os.test_chown(): use os.getgroups() rather than grp." -"getgrall() to get groups. Rename also the test to test_chown_gid()." +":issue:`37400`: Fix test_os.test_chown(): use os.getgroups() rather than " +"grp.getgrall() to get groups. Rename also the test to test_chown_gid()." msgstr "" msgid "" @@ -57049,8 +60267,8 @@ msgid "" msgstr "" msgid "" -":issue:`38809`: On Windows, build scripts will now recognize and use python." -"exe from an active virtual env." +":issue:`38809`: On Windows, build scripts will now recognize and use " +"python.exe from an active virtual env." msgstr "" msgid "" @@ -57089,9 +60307,10 @@ msgstr "" msgid "" ":issue:`37760`: The :file:`Tools/unicode/makeunicodedata.py` script, which " "is used for converting information from the Unicode Character Database into " -"generated code and data used by the methods of :class:`str` and by the :mod:" -"`unicodedata` module, now handles each character's data as a ``dataclass`` " -"with named attributes, rather than a length-18 list of different fields." +"generated code and data used by the methods of :class:`str` and by " +"the :mod:`unicodedata` module, now handles each character's data as a " +"``dataclass`` with named attributes, rather than a length-18 list of " +"different fields." msgstr "" msgid "" @@ -57129,9 +60348,9 @@ msgid "" msgstr "" msgid "" -":issue:`37189`: Many :samp:`PyRun_{XXX}()` functions like :c:func:" -"`PyRun_String` were no longer exported in ``libpython38.dll`` by mistake. " -"Export them again to fix the ABI compatibility." +":issue:`37189`: Many :samp:`PyRun_{XXX}()` functions " +"like :c:func:`PyRun_String` were no longer exported in ``libpython38.dll`` " +"by mistake. Export them again to fix the ABI compatibility." msgstr "" msgid "" @@ -57246,8 +60465,9 @@ msgid "" msgstr "" msgid "" -":issue:`1311`: The ``nul`` file on Windows now returns True from :func:`~os." -"path.exists` and a valid result from :func:`os.stat` with ``S_IFCHR`` set." +":issue:`1311`: The ``nul`` file on Windows now returns True " +"from :func:`~os.path.exists` and a valid result from :func:`os.stat` with " +"``S_IFCHR`` set." msgstr "" msgid "" @@ -57255,8 +60475,9 @@ msgid "" msgstr "" msgid "" -":issue:`37834`: Treat all name surrogate reparse points on Windows in :func:" -"`os.lstat` and other reparse points as regular files in :func:`os.stat`." +":issue:`37834`: Treat all name surrogate reparse points on Windows " +"in :func:`os.lstat` and other reparse points as regular files " +"in :func:`os.stat`." msgstr "" msgid "" @@ -57289,8 +60510,8 @@ msgid "" msgstr "" msgid "" -":issue:`37672`: Switch Windows Store package's pip to use bundled :file:`pip." -"ini` instead of :envvar:`PIP_USER` variable." +":issue:`37672`: Switch Windows Store package's pip to use " +"bundled :file:`pip.ini` instead of :envvar:`PIP_USER` variable." msgstr "" msgid "" @@ -57309,8 +60530,9 @@ msgid "" msgstr "" msgid "" -":issue:`37380`: Don't collect unfinished processes with ``subprocess." -"_active`` on Windows to cleanup later. Patch by Ruslan Kuprieiev." +":issue:`37380`: Don't collect unfinished processes with " +"``subprocess._active`` on Windows to cleanup later. Patch by Ruslan " +"Kuprieiev." msgstr "" msgid "" @@ -57336,8 +60558,8 @@ msgid "" msgstr "" msgid "" -":issue:`28269`: Replace use of :c:func:`strcasecmp` for the system function :" -"c:func:`!_stricmp`. Patch by Minmin Gong." +":issue:`28269`: Replace use of :c:func:`strcasecmp` for the system " +"function :c:func:`!_stricmp`. Patch by Minmin Gong." msgstr "" msgid ":issue:`36590`: Add native Bluetooth RFCOMM support to socket module." @@ -57517,8 +60739,8 @@ msgstr "" msgid "" ":issue:`5680`: Add 'Run... Customized' to the Run menu to run a module with " -"customized settings. Any 'command line arguments' entered are added to sys." -"argv. One can suppress the normal Shell main module restart." +"customized settings. Any 'command line arguments' entered are added to " +"sys.argv. One can suppress the normal Shell main module restart." msgstr "" msgid "" @@ -57527,8 +60749,8 @@ msgid "" msgstr "" msgid "" -":issue:`38118`: Update Valgrind suppression file to ignore a false alarm in :" -"c:func:`PyUnicode_Decode` when using GCC builtin strcmp()." +":issue:`38118`: Update Valgrind suppression file to ignore a false alarm " +"in :c:func:`PyUnicode_Decode` when using GCC builtin strcmp()." msgstr "" msgid "" @@ -57568,11 +60790,11 @@ msgid "" msgstr "" msgid "" -":issue:`38644`: Provide :c:func:`Py_EnterRecursiveCall` and :c:func:" -"`Py_LeaveRecursiveCall` as regular functions for the limited API. " -"Previously, there were defined as macros, but these macros didn't work with " -"the limited API which cannot access ``PyThreadState.recursion_depth`` field. " -"Remove ``_Py_CheckRecursionLimit`` from the stable ABI." +":issue:`38644`: Provide :c:func:`Py_EnterRecursiveCall` " +"and :c:func:`Py_LeaveRecursiveCall` as regular functions for the limited " +"API. Previously, there were defined as macros, but these macros didn't work " +"with the limited API which cannot access ``PyThreadState.recursion_depth`` " +"field. Remove ``_Py_CheckRecursionLimit`` from the stable ABI." msgstr "" msgid "" @@ -57582,8 +60804,8 @@ msgstr "" msgid "" ":issue:`38540`: Fixed possible leak in :c:func:`PyArg_Parse` and similar " -"functions for format units ``\"es#\"`` and ``\"et#\"`` when the macro :c:" -"macro:`PY_SSIZE_T_CLEAN` is not defined." +"functions for format units ``\"es#\"`` and ``\"et#\"`` when the " +"macro :c:macro:`PY_SSIZE_T_CLEAN` is not defined." msgstr "" msgid "" @@ -57616,14 +60838,14 @@ msgid "" msgstr "" msgid "" -":issue:`38234`: Python ignored arguments passed to :c:func:`!Py_SetPath`, :c:" -"func:`!Py_SetPythonHome` and :c:func:`!Py_SetProgramName`: fix Python " -"initialization to use specified arguments." +":issue:`38234`: Python ignored arguments passed to :c:func:`!" +"Py_SetPath`, :c:func:`!Py_SetPythonHome` and :c:func:`!Py_SetProgramName`: " +"fix Python initialization to use specified arguments." msgstr "" msgid "" -":issue:`38205`: The :c:func:`Py_UNREACHABLE` macro now calls :c:func:" -"`Py_FatalError`." +":issue:`38205`: The :c:func:`Py_UNREACHABLE` macro now " +"calls :c:func:`Py_FatalError`." msgstr "" msgid "" @@ -57659,13 +60881,13 @@ msgstr "" msgid "" ":issue:`29548`: The functions ``PyEval_CallObject``, " "``PyEval_CallFunction``, ``PyEval_CallMethod`` and " -"``PyEval_CallObjectWithKeywords`` are deprecated. Use :c:func:" -"`PyObject_Call` and its variants instead." +"``PyEval_CallObjectWithKeywords`` are deprecated. " +"Use :c:func:`PyObject_Call` and its variants instead." msgstr "" msgid "" -":issue:`37151`: ``PyCFunction_Call`` is now a deprecated alias of :c:func:" -"`PyObject_Call`." +":issue:`37151`: ``PyCFunction_Call`` is now a deprecated alias " +"of :c:func:`PyObject_Call`." msgstr "" msgid "" @@ -57693,8 +60915,8 @@ msgstr "" msgid "" ":issue:`37337`: Add fast functions for calling methods: :c:func:`!" -"_PyObject_VectorcallMethod`, :c:func:`!_PyObject_CallMethodNoArgs` and :c:" -"func:`!_PyObject_CallMethodOneArg`." +"_PyObject_VectorcallMethod`, :c:func:`!_PyObject_CallMethodNoArgs` " +"and :c:func:`!_PyObject_CallMethodOneArg`." msgstr "" msgid "" @@ -57722,8 +60944,8 @@ msgid "" msgstr "" msgid "" -":issue:`37170`: Fix the cast on error in :c:func:" -"`PyLong_AsUnsignedLongLongMask()`." +":issue:`37170`: Fix the cast on error " +"in :c:func:`PyLong_AsUnsignedLongLongMask()`." msgstr "" msgid "" @@ -57779,10 +61001,11 @@ msgid "" msgstr "" msgid "" -":issue:`20092`: Constructors of :class:`int`, :class:`float` and :class:" -"`complex` will now use the :meth:`~object.__index__` special method, if " -"available and the corresponding method :meth:`~object.__int__`, :meth:" -"`~object.__float__` or :meth:`~object.__complex__` is not available." +":issue:`20092`: Constructors of :class:`int`, :class:`float` " +"and :class:`complex` will now use the :meth:`~object.__index__` special " +"method, if available and the corresponding " +"method :meth:`~object.__int__`, :meth:`~object.__float__` " +"or :meth:`~object.__complex__` is not available." msgstr "" msgid ":issue:`37087`: Add native thread ID (TID) support to OpenBSD." @@ -57830,20 +61053,22 @@ msgid ":issue:`26836`: Add :func:`os.memfd_create`." msgstr "" msgid "" -":issue:`37032`: Added new ``replace()`` method to the code type (:class:" -"`types.CodeType`)." +":issue:`37032`: Added new ``replace()`` method to the code type " +"(:class:`types.CodeType`)." msgstr "" msgid "" -":issue:`37007`: Implement :func:`socket.if_nameindex`, :func:`socket." -"if_nametoindex`, and :func:`socket.if_indextoname` on Windows." +":issue:`37007`: " +"Implement :func:`socket.if_nameindex`, :func:`socket.if_nametoindex`, " +"and :func:`socket.if_indextoname` on Windows." msgstr "" msgid "" ":issue:`36829`: :c:func:`PyErr_WriteUnraisable` now creates a traceback " -"object if there is no current traceback. Moreover, call :c:func:" -"`PyErr_NormalizeException` and :c:func:`PyException_SetTraceback` to " -"normalize the exception value. Ignore any error." +"object if there is no current traceback. Moreover, " +"call :c:func:`PyErr_NormalizeException` " +"and :c:func:`PyException_SetTraceback` to normalize the exception value. " +"Ignore any error." msgstr "" msgid "" @@ -57901,9 +61126,9 @@ msgid "" msgstr "" msgid "" -":issue:`34616`: The ``compile()`` builtin functions now support the ``ast." -"PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag, which allow to compile sources that " -"contains top-level ``await``, ``async with`` or ``async for``. This is " +":issue:`34616`: The ``compile()`` builtin functions now support the " +"``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag, which allow to compile sources " +"that contains top-level ``await``, ``async with`` or ``async for``. This is " "useful to evaluate async-code from with an already async functions; for " "example in a custom REPL." msgstr "" @@ -57924,10 +61149,10 @@ msgid "" msgstr "" msgid "" -":issue:`36793`: Removed ``__str__`` implementations from builtin types :" -"class:`bool`, :class:`int`, :class:`float`, :class:`complex` and few classes " -"from the standard library. They now inherit ``__str__()`` from :class:" -"`object`." +":issue:`36793`: Removed ``__str__`` implementations from builtin " +"types :class:`bool`, :class:`int`, :class:`float`, :class:`complex` and few " +"classes from the standard library. They now inherit ``__str__()`` " +"from :class:`object`." msgstr "" msgid "" @@ -57988,8 +61213,8 @@ msgid "" msgstr "" msgid "" -":issue:`26826`: Expose :func:`copy_file_range` as a low level API in the :" -"mod:`os` module." +":issue:`26826`: Expose :func:`copy_file_range` as a low level API in " +"the :mod:`os` module." msgstr "" msgid "" @@ -58011,8 +61236,8 @@ msgid "" msgstr "" msgid "" -":issue:`12202`: Fix the error handling in :meth:`!msilib.SummaryInformation." -"GetProperty`. Patch by Zackery Spytz." +":issue:`12202`: Fix the error handling in :meth:`!" +"msilib.SummaryInformation.GetProperty`. Patch by Zackery Spytz." msgstr "" msgid "" @@ -58048,9 +61273,9 @@ msgstr "" msgid "" ":issue:`37076`: :func:`_thread.start_new_thread` now logs uncaught exception " -"raised by the function using :func:`sys.unraisablehook`, rather than :func:" -"`sys.excepthook`, so the hook gets access to the function which raised the " -"exception." +"raised by the function using :func:`sys.unraisablehook`, rather " +"than :func:`sys.excepthook`, so the hook gets access to the function which " +"raised the exception." msgstr "" msgid "" @@ -58059,9 +61284,9 @@ msgid "" msgstr "" msgid "" -":issue:`37054`: Fix destructor :class:`!_pyio.BytesIO` and :class:`!_pyio." -"TextIOWrapper`: initialize their ``_buffer`` attribute as soon as possible " -"(in the class body), because it's used by ``__del__()`` which calls " +":issue:`37054`: Fix destructor :class:`!_pyio.BytesIO` and :class:`!" +"_pyio.TextIOWrapper`: initialize their ``_buffer`` attribute as soon as " +"possible (in the class body), because it's used by ``__del__()`` which calls " "``close()``." msgstr "" @@ -58071,15 +61296,15 @@ msgid "" msgstr "" msgid "" -":issue:`36933`: The functions ``sys.set_coroutine_wrapper`` and ``sys." -"get_coroutine_wrapper`` that were deprecated and marked for removal in 3.8 " -"have been removed." +":issue:`36933`: The functions ``sys.set_coroutine_wrapper`` and " +"``sys.get_coroutine_wrapper`` that were deprecated and marked for removal in " +"3.8 have been removed." msgstr "" msgid "" -":issue:`37047`: Handle late binding and attribute access in :class:`unittest." -"mock.AsyncMock` setup for autospeccing. Document newly implemented async " -"methods in :class:`unittest.mock.MagicMock`." +":issue:`37047`: Handle late binding and attribute access " +"in :class:`unittest.mock.AsyncMock` setup for autospeccing. Document newly " +"implemented async methods in :class:`unittest.mock.MagicMock`." msgstr "" msgid ":issue:`37049`: PEP 589: Add ``TypedDict`` to the ``typing`` module." @@ -58111,8 +61336,8 @@ msgid ":issue:`37028`: Implement asyncio REPL" msgstr "" msgid "" -":issue:`37027`: Return safe to use proxy socket object from transport." -"get_extra_info('socket')" +":issue:`37027`: Return safe to use proxy socket object from " +"transport.get_extra_info('socket')" msgstr "" msgid ":issue:`32528`: Make asyncio.CancelledError a BaseException." @@ -58185,19 +61410,20 @@ msgid "" msgstr "" msgid "" -":issue:`36952`: Starting with Python 3.3, importing ABCs from :mod:" -"`collections` is deprecated, and import should be done from :mod:" -"`collections.abc`. Still being able to import from :mod:`collections` was " -"marked for removal in 3.8, but has been delayed to 3.9; documentation and " -"``DeprecationWarning`` clarified." +":issue:`36952`: Starting with Python 3.3, importing ABCs " +"from :mod:`collections` is deprecated, and import should be done " +"from :mod:`collections.abc`. Still being able to import " +"from :mod:`collections` was marked for removal in 3.8, but has been delayed " +"to 3.9; documentation and ``DeprecationWarning`` clarified." msgstr "" msgid ":issue:`36949`: Implement __repr__ for WeakSet objects." msgstr "" msgid "" -":issue:`36948`: Fix :exc:`NameError` in :meth:`urllib.request.URLopener." -"retrieve`. Patch by Karthikeyan Singaravelan." +":issue:`36948`: Fix :exc:`NameError` " +"in :meth:`urllib.request.URLopener.retrieve`. Patch by Karthikeyan " +"Singaravelan." msgstr "" msgid "" @@ -58235,19 +61461,21 @@ msgid "" msgstr "" msgid "" -":issue:`36889`: Introduce :class:`asyncio.Stream` class that merges :class:" -"`asyncio.StreamReader` and :class:`asyncio.StreamWriter` functionality. :" -"class:`asyncio.Stream` can work in readonly, writeonly and readwrite modes. " -"Provide :func:`asyncio.connect`, :func:`asyncio.connect_unix`, :func:" -"`asyncio.connect_read_pipe` and :func:`asyncio.connect_write_pipe` factories " -"to open :class:`asyncio.Stream` connections. Provide :class:`asyncio." -"StreamServer` and :class:`UnixStreamServer` to serve servers with asyncio." -"Stream API. Modify :func:`asyncio.create_subprocess_shell` and :func:" -"`asyncio.create_subprocess_exec` to use :class:`asyncio.Stream` instead of " -"deprecated :class:`StreamReader` and :class:`StreamWriter`. Deprecate :class:" -"`asyncio.StreamReader` and :class:`asyncio.StreamWriter`. Deprecate usage of " -"private classes, e.g. :class:`asyncio.FlowControlMixing` and :class:`asyncio." -"StreamReaderProtocol` outside of asyncio package." +":issue:`36889`: Introduce :class:`asyncio.Stream` class that " +"merges :class:`asyncio.StreamReader` and :class:`asyncio.StreamWriter` " +"functionality. :class:`asyncio.Stream` can work in readonly, writeonly and " +"readwrite modes. " +"Provide :func:`asyncio.connect`, :func:`asyncio.connect_unix`, :func:`asyncio.connect_read_pipe` " +"and :func:`asyncio.connect_write_pipe` factories to " +"open :class:`asyncio.Stream` connections. " +"Provide :class:`asyncio.StreamServer` and :class:`UnixStreamServer` to serve " +"servers with asyncio.Stream API. " +"Modify :func:`asyncio.create_subprocess_shell` " +"and :func:`asyncio.create_subprocess_exec` to use :class:`asyncio.Stream` " +"instead of deprecated :class:`StreamReader` and :class:`StreamWriter`. " +"Deprecate :class:`asyncio.StreamReader` and :class:`asyncio.StreamWriter`. " +"Deprecate usage of private classes, e.g. :class:`asyncio.FlowControlMixing` " +"and :class:`asyncio.StreamReaderProtocol` outside of asyncio package." msgstr "" msgid "" @@ -58308,8 +61536,9 @@ msgid "" msgstr "" msgid "" -":issue:`30262`: The ``Cache`` and ``Statement`` objects of the :mod:" -"`sqlite3` module are not exposed to the user. Patch by Aviv Palivoda." +":issue:`30262`: The ``Cache`` and ``Statement`` objects of " +"the :mod:`sqlite3` module are not exposed to the user. Patch by Aviv " +"Palivoda." msgstr "" msgid "" @@ -58337,8 +61566,9 @@ msgid "" msgstr "" msgid "" -":issue:`33110`: Handle exceptions raised by functions added by concurrent." -"futures add_done_callback correctly when the Future has already completed." +":issue:`33110`: Handle exceptions raised by functions added by " +"concurrent.futures add_done_callback correctly when the Future has already " +"completed." msgstr "" msgid "" @@ -58347,8 +61577,8 @@ msgid "" msgstr "" msgid "" -":issue:`36813`: Fix :class:`~logging.handlers.QueueListener` to call ``queue." -"task_done()`` upon stopping. Patch by Bar Harel." +":issue:`36813`: Fix :class:`~logging.handlers.QueueListener` to call " +"``queue.task_done()`` upon stopping. Patch by Bar Harel." msgstr "" msgid "" @@ -58399,9 +61629,10 @@ msgid "" msgstr "" msgid "" -":issue:`29183`: Fix double exceptions in :class:`wsgiref.handlers." -"BaseHandler` by calling its :meth:`~wsgiref.handlers.BaseHandler.close` " -"method only when no exception is raised." +":issue:`29183`: Fix double exceptions " +"in :class:`wsgiref.handlers.BaseHandler` by calling " +"its :meth:`~wsgiref.handlers.BaseHandler.close` method only when no " +"exception is raised." msgstr "" msgid ":issue:`36548`: Improved the repr of regular expression flags." @@ -58473,8 +61704,8 @@ msgstr "" msgid "" ":issue:`35721`: Fix :meth:`asyncio.SelectorEventLoop.subprocess_exec` leaks " -"file descriptors if ``Popen`` fails and called with ``stdin=subprocess." -"PIPE``. Patch by Niklas Fiekas." +"file descriptors if ``Popen`` fails and called with " +"``stdin=subprocess.PIPE``. Patch by Niklas Fiekas." msgstr "" msgid "" @@ -58490,10 +61721,10 @@ msgid "" msgstr "" msgid "" -":issue:`26660`: Fixed permission errors in :class:`~tempfile." -"TemporaryDirectory` clean up. Previously ``TemporaryDirectory.cleanup()`` " -"failed when non-writeable or non-searchable files or directories were " -"created inside a temporary directory." +":issue:`26660`: Fixed permission errors " +"in :class:`~tempfile.TemporaryDirectory` clean up. Previously " +"``TemporaryDirectory.cleanup()`` failed when non-writeable or non-searchable " +"files or directories were created inside a temporary directory." msgstr "" msgid "" @@ -58546,12 +61777,12 @@ msgid "" msgstr "" msgid "" -":issue:`31961`: Added support for bytes and path-like objects in :func:" -"`subprocess.Popen` on Windows. The *args* parameter now accepts a :term:" -"`path-like object` if *shell* is ``False`` and a sequence containing bytes " -"and path-like objects. The *executable* parameter now accepts a bytes and :" -"term:`path-like object`. The *cwd* parameter now accepts a bytes object. " -"Based on patch by Anders Lorentsen." +":issue:`31961`: Added support for bytes and path-like objects " +"in :func:`subprocess.Popen` on Windows. The *args* parameter now accepts " +"a :term:`path-like object` if *shell* is ``False`` and a sequence containing " +"bytes and path-like objects. The *executable* parameter now accepts a bytes " +"and :term:`path-like object`. The *cwd* parameter now accepts a bytes " +"object. Based on patch by Anders Lorentsen." msgstr "" msgid "" @@ -58620,8 +61851,8 @@ msgid "" msgstr "" msgid "" -":issue:`36868`: What's new now mentions SSLContext." -"hostname_checks_common_name instead of SSLContext.host_flags." +":issue:`36868`: What's new now mentions " +"SSLContext.hostname_checks_common_name instead of SSLContext.host_flags." msgstr "" msgid "" @@ -58676,8 +61907,9 @@ msgstr "" msgid "" ":issue:`37069`: Modify test_coroutines, test_cprofile, test_generators, " -"test_raise, test_ssl and test_yield_from to use :func:`test.support." -"catch_unraisable_exception` rather than :func:`test.support.captured_stderr`." +"test_raise, test_ssl and test_yield_from to " +"use :func:`test.support.catch_unraisable_exception` rather " +"than :func:`test.support.captured_stderr`." msgstr "" msgid ":issue:`37098`: Fix test_memfd_create on older Linux Kernels." @@ -58776,8 +62008,8 @@ msgid "" msgstr "" msgid "" -":issue:`35610`: Replace now redundant .context_use_ps1 with ." -"prompt_last_line. This finishes change started in :issue:`31858`." +":issue:`35610`: Replace now redundant .context_use_ps1 " +"with .prompt_last_line. This finishes change started in :issue:`31858`." msgstr "" msgid ":issue:`37038`: Make idlelib.run runnable; add test clause." @@ -58789,8 +62021,8 @@ msgid "" msgstr "" msgid "" -":issue:`36807`: When saving a file, call os.fsync() so bits are flushed to e." -"g. USB drive." +":issue:`36807`: When saving a file, call os.fsync() so bits are flushed to " +"e.g. USB drive." msgstr "" msgid "" @@ -58840,8 +62072,8 @@ msgstr "" msgid "" ":issue:`36728`: The :c:func:`!PyEval_ReInitThreads` function has been " -"removed from the C API. It should not be called explicitly: use :c:func:" -"`PyOS_AfterFork_Child` instead." +"removed from the C API. It should not be called explicitly: " +"use :c:func:`PyOS_AfterFork_Child` instead." msgstr "" msgid "Python 3.8.0 alpha 4" @@ -58865,9 +62097,9 @@ msgstr "" msgid "" ":issue:`35755`: :func:`shutil.which` now uses ``os.confstr(\"CS_PATH\")`` if " "available and if the :envvar:`PATH` environment variable is not set. Remove " -"also the current directory from :data:`posixpath.defpath`. On Unix, :func:" -"`shutil.which` and the :mod:`subprocess` module no longer search the " -"executable in the current directory if the :envvar:`PATH` environment " +"also the current directory from :data:`posixpath.defpath`. On " +"Unix, :func:`shutil.which` and the :mod:`subprocess` module no longer search " +"the executable in the current directory if the :envvar:`PATH` environment " "variable is not set." msgstr "" @@ -58921,9 +62153,9 @@ msgstr "" msgid "" ":issue:`36475`: :c:func:`!PyEval_AcquireLock` and :c:func:`!" "PyEval_AcquireThread` now terminate the current thread if called while the " -"interpreter is finalizing, making them consistent with :c:func:" -"`PyEval_RestoreThread`, :c:func:`Py_END_ALLOW_THREADS`, and :c:func:" -"`PyGILState_Ensure`." +"interpreter is finalizing, making them consistent " +"with :c:func:`PyEval_RestoreThread`, :c:func:`Py_END_ALLOW_THREADS`, " +"and :c:func:`PyGILState_Ensure`." msgstr "" msgid "" @@ -58972,8 +62204,8 @@ msgid "" msgstr "" msgid "" -":issue:`18372`: Add missing :c:func:`PyObject_GC_Track` calls in the :mod:" -"`pickle` module. Patch by Zackery Spytz." +":issue:`18372`: Add missing :c:func:`PyObject_GC_Track` calls in " +"the :mod:`pickle` module. Patch by Zackery Spytz." msgstr "" msgid ":issue:`35952`: Fix pythoninfo when the compiler is missing." @@ -59033,16 +62265,16 @@ msgstr "" msgid "" ":issue:`28552`: Fix ``distutils.sysconfig`` if :data:`sys.executable` is " "``None`` or an empty string: use :func:`os.getcwd` to initialize " -"``project_base``. Fix also the distutils build command: don't use :data:" -"`sys.executable` if it is ``None`` or an empty string." +"``project_base``. Fix also the distutils build command: don't " +"use :data:`sys.executable` if it is ``None`` or an empty string." msgstr "" msgid "" ":issue:`35755`: :func:`shutil.which` and ``distutils.spawn.find_executable`` " -"now use ``os.confstr(\"CS_PATH\")`` if available instead of :data:`os." -"defpath`, if the ``PATH`` environment variable is not set. Moreover, don't " -"use ``os.confstr(\"CS_PATH\")`` nor :data:`os.defpath` if the ``PATH`` " -"environment variable is set to an empty string." +"now use ``os.confstr(\"CS_PATH\")`` if available instead " +"of :data:`os.defpath`, if the ``PATH`` environment variable is not set. " +"Moreover, don't use ``os.confstr(\"CS_PATH\")`` nor :data:`os.defpath` if " +"the ``PATH`` environment variable is set to an empty string." msgstr "" msgid ":issue:`25430`: improve performance of ``IPNetwork.__contains__()``" @@ -59146,8 +62378,8 @@ msgid "" msgstr "" msgid "" -":issue:`36407`: Fixed wrong indentation writing for CDATA section in xml.dom." -"minidom. Patch by Vladimir Surjaninov." +":issue:`36407`: Fixed wrong indentation writing for CDATA section in " +"xml.dom.minidom. Patch by Vladimir Surjaninov." msgstr "" msgid "" @@ -59156,10 +62388,10 @@ msgid "" msgstr "" msgid "" -":issue:`36366`: Calling ``stop()`` on an unstarted or stopped :func:" -"`unittest.mock.patch` object will now return ``None`` instead of raising :" -"exc:`RuntimeError`, making the method idempotent. Patch by Karthikeyan " -"Singaravelan." +":issue:`36366`: Calling ``stop()`` on an unstarted or " +"stopped :func:`unittest.mock.patch` object will now return ``None`` instead " +"of raising :exc:`RuntimeError`, making the method idempotent. Patch by " +"Karthikeyan Singaravelan." msgstr "" msgid "" @@ -59179,16 +62411,18 @@ msgid "" msgstr "" msgid "" -":issue:`36004`: Added new alternate constructors :meth:`datetime.date." -"fromisocalendar` and :meth:`datetime.datetime.fromisocalendar`, which " -"construct date objects from ISO year, week number and weekday; these are the " -"inverse of each class's ``isocalendar`` method. Patch by Paul Ganssle." +":issue:`36004`: Added new alternate " +"constructors :meth:`datetime.date.fromisocalendar` " +"and :meth:`datetime.datetime.fromisocalendar`, which construct date objects " +"from ISO year, week number and weekday; these are the inverse of each " +"class's ``isocalendar`` method. Patch by Paul Ganssle." msgstr "" msgid "" -":issue:`35936`: :mod:`modulefinder` no longer depends on the deprecated :mod:" -"`imp` module, and the initializer for :class:`modulefinder.ModuleFinder` now " -"has immutable default arguments. Patch by Brandt Bucher." +":issue:`35936`: :mod:`modulefinder` no longer depends on the " +"deprecated :mod:`imp` module, and the initializer " +"for :class:`modulefinder.ModuleFinder` now has immutable default arguments. " +"Patch by Brandt Bucher." msgstr "" msgid "" @@ -59202,11 +62436,11 @@ msgid "" msgstr "" msgid "" -":issue:`35934`: Added :meth:`~socket.create_server` and :meth:`~socket." -"has_dualstack_ipv6` convenience functions to automate the necessary tasks " -"usually involved when creating a server socket, including accepting both " -"IPv4 and IPv6 connections on the same socket. (Contributed by Giampaolo " -"Rodola in :issue:`17561`.)" +":issue:`35934`: Added :meth:`~socket.create_server` " +"and :meth:`~socket.has_dualstack_ipv6` convenience functions to automate the " +"necessary tasks usually involved when creating a server socket, including " +"accepting both IPv4 and IPv6 connections on the same socket. (Contributed " +"by Giampaolo Rodola in :issue:`17561`.)" msgstr "" msgid "" @@ -59225,8 +62459,8 @@ msgid "" msgstr "" msgid "" -":issue:`35082`: Don't return deleted attributes when calling dir on a :class:" -"`unittest.mock.Mock`." +":issue:`35082`: Don't return deleted attributes when calling dir on " +"a :class:`unittest.mock.Mock`." msgstr "" msgid "" @@ -59243,9 +62477,9 @@ msgid ":issue:`34139`: Remove stale unix datagram socket before binding" msgstr "" msgid "" -":issue:`33530`: Implemented Happy Eyeballs in ``asyncio." -"create_connection()``. Added two new arguments, *happy_eyeballs_delay* and " -"*interleave*, to specify Happy Eyeballs behavior." +":issue:`33530`: Implemented Happy Eyeballs in " +"``asyncio.create_connection()``. Added two new arguments, " +"*happy_eyeballs_delay* and *interleave*, to specify Happy Eyeballs behavior." msgstr "" msgid "" @@ -59265,8 +62499,8 @@ msgid "" msgstr "" msgid "" -":issue:`36625`: Remove obsolete comments from docstrings in fractions." -"Fraction" +":issue:`36625`: Remove obsolete comments from docstrings in " +"fractions.Fraction" msgstr "" msgid ":issue:`30840`: Document relative imports" @@ -59281,10 +62515,10 @@ msgid "" msgstr "" msgid "" -":issue:`36345`: Avoid the duplication of code from ``Tools/scripts/serve." -"py`` in using the :rst:dir:`literalinclude` directive for the basic wsgiref-" -"based web server in the documentation of :mod:`wsgiref`. Contributed by " -"Stéphane Wirtel." +":issue:`36345`: Avoid the duplication of code from ``Tools/scripts/" +"serve.py`` in using the :rst:dir:`literalinclude` directive for the basic " +"wsgiref-based web server in the documentation of :mod:`wsgiref`. Contributed " +"by Stéphane Wirtel." msgstr "" msgid "" @@ -59355,8 +62589,8 @@ msgid "" msgstr "" msgid "" -":issue:`36611`: Fix ``test_sys.test_getallocatedblocks()`` when :mod:" -"`tracemalloc` is enabled." +":issue:`36611`: Fix ``test_sys.test_getallocatedblocks()`` " +"when :mod:`tracemalloc` is enabled." msgstr "" msgid "" @@ -59429,8 +62663,8 @@ msgid "" ":issue:`36635`: Change ``PyAPI_FUNC(type)``, ``PyAPI_DATA(type)`` and " "``PyMODINIT_FUNC`` macros of ``pyport.h`` when ``Py_BUILD_CORE_MODULE`` is " "defined. The ``Py_BUILD_CORE_MODULE`` define must be now be used to build a " -"C extension as a dynamic library accessing Python internals: export the :" -"samp:`PyInit_{xxx}()` function in DLL exports on Windows." +"C extension as a dynamic library accessing Python internals: export " +"the :samp:`PyInit_{xxx}()` function in DLL exports on Windows." msgstr "" msgid ":issue:`31904`: Don't build the ``_crypt`` extension on VxWorks." @@ -59456,9 +62690,9 @@ msgid "" ":issue:`36465`: Release builds and debug builds are now ABI compatible: " "defining the ``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` " "macro, which introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` " -"macro, which adds the :func:`sys.getobjects` function and the :envvar:" -"`PYTHONDUMPREFS` environment variable, can be set using the new ``./" -"configure --with-trace-refs`` build option." +"macro, which adds the :func:`sys.getobjects` function and " +"the :envvar:`PYTHONDUMPREFS` environment variable, can be set using the new " +"``./configure --with-trace-refs`` build option." msgstr "" msgid "" @@ -59493,8 +62727,8 @@ msgid "" msgstr "" msgid "" -":issue:`34144`: Fixed activate.bat to correctly update codepage when chcp." -"com returns dots in output. Patch by Lorenz Mende." +":issue:`34144`: Fixed activate.bat to correctly update codepage when " +"chcp.com returns dots in output. Patch by Lorenz Mende." msgstr "" msgid "" @@ -59575,9 +62809,9 @@ msgid "" msgstr "" msgid "" -":issue:`36641`: :c:expr:`PyDoc_VAR(name)` and :c:expr:`PyDoc_STRVAR(name," -"str)` now create ``static const char name[]`` instead of ``static char " -"name[]``. Patch by Inada Naoki." +":issue:`36641`: :c:expr:`PyDoc_VAR(name)` " +"and :c:expr:`PyDoc_STRVAR(name,str)` now create ``static const char name[]`` " +"instead of ``static char name[]``. Patch by Inada Naoki." msgstr "" msgid "" @@ -59594,8 +62828,8 @@ msgid "" "before :c:func:`Py_Initialize` produces mojibake if the ``LC_CTYPE`` locale " "is coerced and/or if the UTF-8 Mode is enabled by the user configuration. " "The LC_CTYPE coercion and UTF-8 Mode are now disabled by default to fix the " -"mojibake issue. They must now be enabled explicitly (opt-in) using the new :" -"c:func:`!_Py_PreInitialize` API with ``_PyPreConfig``." +"mojibake issue. They must now be enabled explicitly (opt-in) using the " +"new :c:func:`!_Py_PreInitialize` API with ``_PyPreConfig``." msgstr "" msgid "" @@ -59668,8 +62902,8 @@ msgid "" msgstr "" msgid "" -":issue:`36301`: Python initialization now fails if decoding ``pybuilddir." -"txt`` configuration file fails at startup." +":issue:`36301`: Python initialization now fails if decoding " +"``pybuilddir.txt`` configuration file fails at startup." msgstr "" msgid "" @@ -59786,9 +63020,9 @@ msgid "" msgstr "" msgid "" -":issue:`36268`: Switch the default format used for writing tars with :mod:" -"`tarfile` to the modern POSIX.1-2001 pax standard, from the vendor-specific " -"GNU. Contributed by C.A.M. Gerlach." +":issue:`36268`: Switch the default format used for writing tars " +"with :mod:`tarfile` to the modern POSIX.1-2001 pax standard, from the vendor-" +"specific GNU. Contributed by C.A.M. Gerlach." msgstr "" msgid "" @@ -59820,10 +63054,10 @@ msgid "" msgstr "" msgid "" -":issue:`36235`: Fix ``CFLAGS`` in ``customize_compiler()`` of ``distutils." -"sysconfig``: when the ``CFLAGS`` environment variable is defined, don't " -"override ``CFLAGS`` variable with the ``OPT`` variable anymore. Initial " -"patch written by David Malcolm." +":issue:`36235`: Fix ``CFLAGS`` in ``customize_compiler()`` of " +"``distutils.sysconfig``: when the ``CFLAGS`` environment variable is " +"defined, don't override ``CFLAGS`` variable with the ``OPT`` variable " +"anymore. Initial patch written by David Malcolm." msgstr "" msgid "" @@ -59893,8 +63127,8 @@ msgstr "" msgid "" ":issue:`30670`: ``pprint.pp`` has been added to pretty-print objects with " "dictionary keys being sorted with their insertion order by default. " -"Parameter *sort_dicts* has been added to ``pprint.pprint``, ``pprint." -"pformat`` and ``pprint.PrettyPrinter``. Contributed by Rémi Lapeyre." +"Parameter *sort_dicts* has been added to ``pprint.pprint``, " +"``pprint.pformat`` and ``pprint.PrettyPrinter``. Contributed by Rémi Lapeyre." msgstr "" msgid "" @@ -59903,8 +63137,9 @@ msgid "" msgstr "" msgid "" -":issue:`35802`: Clean up code which checked presence of ``os.stat`` / ``os." -"lstat`` / ``os.chmod`` which are always present. Patch by Anthony Sottile." +":issue:`35802`: Clean up code which checked presence of ``os.stat`` / " +"``os.lstat`` / ``os.chmod`` which are always present. Patch by Anthony " +"Sottile." msgstr "" msgid "" @@ -59914,8 +63149,8 @@ msgstr "" msgid "" ":issue:`35493`: Use :func:`multiprocessing.connection.wait` instead of " -"polling each 0.2 seconds for worker updates in :class:`multiprocessing." -"Pool`. Patch by Pablo Galindo." +"polling each 0.2 seconds for worker updates " +"in :class:`multiprocessing.Pool`. Patch by Pablo Galindo." msgstr "" msgid ":issue:`35661`: Store the venv prompt in pyvenv.cfg." @@ -59928,9 +63163,9 @@ msgid "" msgstr "" msgid "" -":issue:`21478`: Calls to a child function created with :func:`unittest.mock." -"create_autospec` should propagate to the parent. Patch by Karthikeyan " -"Singaravelan." +":issue:`21478`: Calls to a child function created " +"with :func:`unittest.mock.create_autospec` should propagate to the parent. " +"Patch by Karthikeyan Singaravelan." msgstr "" msgid ":issue:`35198`: Fix C++ extension compilation on AIX" @@ -59959,10 +63194,10 @@ msgid "" msgstr "" msgid "" -":issue:`29571`: Fix ``test_re.test_locale_flag()``: use ``locale." -"getpreferredencoding()`` rather than ``locale.getlocale()`` to get the " -"locale encoding. With some locales, ``locale.getlocale()`` returns the wrong " -"encoding." +":issue:`29571`: Fix ``test_re.test_locale_flag()``: use " +"``locale.getpreferredencoding()`` rather than ``locale.getlocale()`` to get " +"the locale encoding. With some locales, ``locale.getlocale()`` returns the " +"wrong encoding." msgstr "" msgid ":issue:`36123`: Fix race condition in test_socket." @@ -60016,8 +63251,8 @@ msgstr "" msgid "" ":issue:`23205`: For the grep module, add tests for findfiles, refactor " -"findfiles to be a module-level function, and refactor findfiles to use os." -"walk." +"findfiles to be a module-level function, and refactor findfiles to use " +"os.walk." msgstr "" msgid ":issue:`23216`: Add docstrings to IDLE search modules." @@ -60116,9 +63351,9 @@ msgid "" msgstr "" msgid "" -":issue:`35911`: Enable the creation of cell objects by adding a ``cell." -"__new__`` method, and expose the type ``cell`` in ``Lib/types.py`` under the " -"name CellType. Patch by Pierre Glaser." +":issue:`35911`: Enable the creation of cell objects by adding a " +"``cell.__new__`` method, and expose the type ``cell`` in ``Lib/types.py`` " +"under the name CellType. Patch by Pierre Glaser." msgstr "" msgid "" @@ -60180,8 +63415,8 @@ msgid "" msgstr "" msgid "" -":issue:`35918`: Removed broken ``has_key`` method from multiprocessing." -"managers.SyncManager.dict. Contributed by Rémi Lapeyre." +":issue:`35918`: Removed broken ``has_key`` method from " +"multiprocessing.managers.SyncManager.dict. Contributed by Rémi Lapeyre." msgstr "" msgid ":issue:`18283`: Add support for bytes to :func:`shutil.which`." @@ -60224,10 +63459,10 @@ msgid "" msgstr "" msgid "" -":issue:`34294`: re module, fix wrong capturing groups in rare cases. :func:" -"`re.search`, :func:`re.findall`, :func:`re.sub` and other functions that " -"scan through string looking for a match, should reset capturing groups " -"between two match attempts. Patch by Ma Lin." +":issue:`34294`: re module, fix wrong capturing groups in rare " +"cases. :func:`re.search`, :func:`re.findall`, :func:`re.sub` and other " +"functions that scan through string looking for a match, should reset " +"capturing groups between two match attempts. Patch by Ma Lin." msgstr "" msgid "" @@ -60237,24 +63472,24 @@ msgid "" msgstr "" msgid "" -":issue:`35606`: Implement :func:`math.prod` as analogous function to :func:" -"`sum` that returns the product of a 'start' value (default: 1) times an " -"iterable of numbers. Patch by Pablo Galindo." +":issue:`35606`: Implement :func:`math.prod` as analogous function " +"to :func:`sum` that returns the product of a 'start' value (default: 1) " +"times an iterable of numbers. Patch by Pablo Galindo." msgstr "" msgid "" ":issue:`32417`: Performing arithmetic between :class:`datetime.datetime` " "subclasses and :class:`datetime.timedelta` now returns an object of the same " -"type as the :class:`datetime.datetime` subclass. As a result, :meth:" -"`datetime.datetime.astimezone` and alternate constructors like :meth:" -"`datetime.datetime.now` and :meth:`datetime.fromtimestamp` called with a " -"``tz`` argument now *also* retain their subclass." +"type as the :class:`datetime.datetime` subclass. As a " +"result, :meth:`datetime.datetime.astimezone` and alternate constructors " +"like :meth:`datetime.datetime.now` and :meth:`datetime.fromtimestamp` called " +"with a ``tz`` argument now *also* retain their subclass." msgstr "" msgid "" -":issue:`35153`: Add *headers* optional keyword-only parameter to :class:" -"`xmlrpc.client.ServerProxy`, :class:`xmlrpc.client.Transport` and :class:" -"`xmlrpc.client.SafeTransport`. Patch by Cédric Krier." +":issue:`35153`: Add *headers* optional keyword-only parameter " +"to :class:`xmlrpc.client.ServerProxy`, :class:`xmlrpc.client.Transport` " +"and :class:`xmlrpc.client.SafeTransport`. Patch by Cédric Krier." msgstr "" msgid "" @@ -60373,14 +63608,14 @@ msgstr "" msgid "" ":issue:`34812`: The :option:`-I` command line option (run Python in isolated " "mode) is now also copied by the :mod:`multiprocessing` and ``distutils`` " -"modules when spawning child processes. Previously, only :option:`-E` and :" -"option:`-s` options (enabled by :option:`-I`) were copied." +"modules when spawning child processes. Previously, only :option:`-E` " +"and :option:`-s` options (enabled by :option:`-I`) were copied." msgstr "" msgid "" ":issue:`34791`: The xml.sax and xml.dom.domreg no longer use environment " -"variables to override parser implementations when sys.flags." -"ignore_environment is set by -E or -I arguments." +"variables to override parser implementations when " +"sys.flags.ignore_environment is set by -E or -I arguments." msgstr "" msgid "" @@ -60421,8 +63656,8 @@ msgstr "" msgid "" ":issue:`32981`: Regexes in difflib and poplib were vulnerable to " "catastrophic backtracking. These regexes formed potential DOS vectors " -"(REDOS). They have been refactored. This resolves :cve:`2018-1060` and :cve:" -"`2018-1061`. Patch by Jamie Davis." +"(REDOS). They have been refactored. This resolves :cve:`2018-1060` " +"and :cve:`2018-1061`. Patch by Jamie Davis." msgstr "" msgid "" @@ -60487,9 +63722,9 @@ msgid "" msgstr "" msgid "" -":issue:`35552`: Format characters ``%s`` and ``%V`` in :c:func:" -"`PyUnicode_FromFormat` and ``%s`` in :c:func:`PyBytes_FromFormat` no longer " -"read memory past the limit if *precision* is specified." +":issue:`35552`: Format characters ``%s`` and ``%V`` " +"in :c:func:`PyUnicode_FromFormat` and ``%s`` in :c:func:`PyBytes_FromFormat` " +"no longer read memory past the limit if *precision* is specified." msgstr "" msgid "" @@ -60548,9 +63783,9 @@ msgid "" msgstr "" msgid "" -":issue:`33954`: For :meth:`str.format`, :meth:`float.__format__` and :meth:" -"`complex.__format__` methods for non-ASCII decimal point when using the " -"\"n\" formatter." +":issue:`33954`: For :meth:`str.format`, :meth:`float.__format__` " +"and :meth:`complex.__format__` methods for non-ASCII decimal point when " +"using the \"n\" formatter." msgstr "" msgid "" @@ -60592,8 +63827,8 @@ msgid ":issue:`35169`: Improved error messages for forbidden assignments." msgstr "" msgid "" -":issue:`34022`: Fix handling of hash-based bytecode files in :mod:" -"`zipimport`. Patch by Elvis Pranskevichus." +":issue:`34022`: Fix handling of hash-based bytecode files " +"in :mod:`zipimport`. Patch by Elvis Pranskevichus." msgstr "" msgid "" @@ -60637,8 +63872,8 @@ msgstr "" msgid "" ":issue:`34974`: :class:`bytes` and :class:`bytearray` constructors no longer " -"convert unexpected exceptions (e.g. :exc:`MemoryError` and :exc:" -"`KeyboardInterrupt`) to :exc:`TypeError`." +"convert unexpected exceptions (e.g. :exc:`MemoryError` " +"and :exc:`KeyboardInterrupt`) to :exc:`TypeError`." msgstr "" msgid "" @@ -60671,8 +63906,8 @@ msgid "" msgstr "" msgid "" -":issue:`32912`: A :exc:`SyntaxWarning` is now emitted instead of a :exc:" -"`DeprecationWarning` for invalid escape sequences in string and bytes " +":issue:`32912`: A :exc:`SyntaxWarning` is now emitted instead of " +"a :exc:`DeprecationWarning` for invalid escape sequences in string and bytes " "literals." msgstr "" @@ -60892,9 +64127,9 @@ msgid "" msgstr "" msgid "" -":issue:`34068`: In :meth:`io.IOBase.close`, ensure that the :attr:`~io." -"IOBase.closed` attribute is not set with a live exception. Patch by Zackery " -"Spytz and Serhiy Storchaka." +":issue:`34068`: In :meth:`io.IOBase.close`, ensure that " +"the :attr:`~io.IOBase.closed` attribute is not set with a live exception. " +"Patch by Zackery Spytz and Serhiy Storchaka." msgstr "" msgid "" @@ -60929,9 +64164,9 @@ msgid ":issue:`33956`: Update vendored Expat library copy to version 2.2.5." msgstr "" msgid "" -":issue:`24596`: Decref the module object in :c:func:" -"`PyRun_SimpleFileExFlags` before calling :c:func:`PyErr_Print()`. Patch by " -"Zackery Spytz." +":issue:`24596`: Decref the module object " +"in :c:func:`PyRun_SimpleFileExFlags` before " +"calling :c:func:`PyErr_Print()`. Patch by Zackery Spytz." msgstr "" msgid "" @@ -60942,11 +64177,11 @@ msgstr "" msgid "" ":issue:`1617161`: The hash of :class:`BuiltinMethodType` instances (methods " "of built-in classes) now depends on the hash of the identity of *__self__* " -"instead of its value. The hash and equality of :class:`ModuleType` and :" -"class:`MethodWrapperType` instances (methods of user-defined classes and " -"some methods of built-in classes like ``str.__add__``) now depend on the " -"hash and equality of the identity of *__self__* instead of its value. :class:" -"`MethodWrapperType` instances no longer support ordering." +"instead of its value. The hash and equality of :class:`ModuleType` " +"and :class:`MethodWrapperType` instances (methods of user-defined classes " +"and some methods of built-in classes like ``str.__add__``) now depend on the " +"hash and equality of the identity of *__self__* instead of its " +"value. :class:`MethodWrapperType` instances no longer support ordering." msgstr "" msgid "" @@ -60961,9 +64196,9 @@ msgstr "" msgid "" ":issue:`33738`: Seven macro incompatibilities with the Limited API were " -"fixed, and the macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and :c:" -"func:`PyExceptionClass_Name` were added as functions. A script for automatic " -"macro checks was added." +"fixed, and the macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` " +"and :c:func:`PyExceptionClass_Name` were added as functions. A script for " +"automatic macro checks was added." msgstr "" msgid "" @@ -60992,9 +64227,9 @@ msgstr "" msgid "" ":issue:`33622`: Fixed a leak when the garbage collector fails to add an " -"object with the ``__del__`` method or referenced by it into the :data:`gc." -"garbage` list. :c:func:`PyGC_Collect` can now be called when an exception is " -"set and preserves it." +"object with the ``__del__`` method or referenced by it into " +"the :data:`gc.garbage` list. :c:func:`PyGC_Collect` can now be called when " +"an exception is set and preserves it." msgstr "" msgid "" @@ -61009,9 +64244,9 @@ msgid "" msgstr "" msgid "" -":issue:`33499`: Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :" -"option:`-X` ``pycache_prefix`` command-line option to set an alternate root " -"directory for writing module bytecode cache files." +":issue:`33499`: Add :envvar:`PYTHONPYCACHEPREFIX` environment variable " +"and :option:`-X` ``pycache_prefix`` command-line option to set an alternate " +"root directory for writing module bytecode cache files." msgstr "" msgid "" @@ -61052,8 +64287,8 @@ msgid "" msgstr "" msgid "" -":issue:`33128`: Fix a bug that causes PathFinder to appear twice on sys." -"meta_path. Patch by Pablo Galindo Salgado." +":issue:`33128`: Fix a bug that causes PathFinder to appear twice on " +"sys.meta_path. Patch by Pablo Galindo Salgado." msgstr "" msgid "" @@ -61216,8 +64451,8 @@ msgid "" msgstr "" msgid "" -":issue:`31356`: Remove the new API added in :issue:`31356` (gc." -"ensure_disabled() context manager)." +":issue:`31356`: Remove the new API added in :issue:`31356` " +"(gc.ensure_disabled() context manager)." msgstr "" msgid "" @@ -61241,24 +64476,25 @@ msgid "" msgstr "" msgid "" -":issue:`32489`: A :keyword:`continue` statement is now allowed in the :" -"keyword:`finally` clause." +":issue:`32489`: A :keyword:`continue` statement is now allowed in " +"the :keyword:`finally` clause." msgstr "" msgid "" ":issue:`17611`: Simplified the interpreter loop by moving the logic of " "unrolling the stack of blocks into the compiler. The compiler emits now " "explicit instructions for adjusting the stack of values and calling the " -"cleaning up code for :keyword:`break`, :keyword:`continue` and :keyword:" -"`return`." +"cleaning up code for :keyword:`break`, :keyword:`continue` " +"and :keyword:`return`." msgstr "" msgid "" -"Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:" -"`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes :opcode:" -"`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and :opcode:" -"`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and :opcode:" -"`WITH_CLEANUP_START`." +"Removed " +"opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:`SETUP_LOOP` " +"and :opcode:`SETUP_EXCEPT`. Added new " +"opcodes :opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` " +"and :opcode:`CALL_FINALLY` and :opcode:`POP_FINALLY`. Changed the behavior " +"of :opcode:`END_FINALLY` and :opcode:`WITH_CLEANUP_START`." msgstr "" msgid "" @@ -61278,14 +64514,14 @@ msgid "" msgstr "" msgid "" -":issue:`31902`: Fix the ``col_offset`` attribute for ast nodes ``ast." -"AsyncFor``, ``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, " -"``col_offset`` pointed to the keyword after ``async``." +":issue:`31902`: Fix the ``col_offset`` attribute for ast nodes " +"``ast.AsyncFor``, ``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. " +"Previously, ``col_offset`` pointed to the keyword after ``async``." msgstr "" msgid "" -":issue:`25862`: Fix assertion failures in the ``tell()`` method of ``io." -"TextIOWrapper``. Patch by Zackery Spytz." +":issue:`25862`: Fix assertion failures in the ``tell()`` method of " +"``io.TextIOWrapper``. Patch by Zackery Spytz." msgstr "" msgid "" @@ -61364,8 +64600,8 @@ msgid "" msgstr "" msgid "" -":issue:`35733`: ``ast.Constant(boolean)`` no longer an instance of :class:" -"`ast.Num`. Patch by Anthony Sottile." +":issue:`35733`: ``ast.Constant(boolean)`` no longer an instance " +"of :class:`ast.Num`. Patch by Anthony Sottile." msgstr "" msgid "" @@ -61410,8 +64646,8 @@ msgid "" msgstr "" msgid "" -":issue:`35283`: Add a deprecated warning for the :meth:`threading.Thread." -"isAlive` method. Patch by Donghee Na." +":issue:`35283`: Add a deprecated warning for " +"the :meth:`threading.Thread.isAlive` method. Patch by Donghee Na." msgstr "" msgid "" @@ -61443,9 +64679,9 @@ msgid ":issue:`35568`: Expose ``raise(signum)`` as ``raise_signal``" msgstr "" msgid "" -":issue:`35588`: The floor division and modulo operations and the :func:" -"`divmod` function on :class:`fractions.Fraction` types are 2--4x faster. " -"Patch by Stefan Behnel." +":issue:`35588`: The floor division and modulo operations and " +"the :func:`divmod` function on :class:`fractions.Fraction` types are 2--4x " +"faster. Patch by Stefan Behnel." msgstr "" msgid "" @@ -61460,8 +64696,8 @@ msgid "" msgstr "" msgid "" -":issue:`35537`: The :mod:`subprocess` module can now use the :func:`os." -"posix_spawn` function in some cases for better performance." +":issue:`35537`: The :mod:`subprocess` module can now use " +"the :func:`os.posix_spawn` function in some cases for better performance." msgstr "" msgid "" @@ -61481,16 +64717,17 @@ msgid "" msgstr "" msgid "" -":issue:`35513`: :class:`~unittest.runner.TextTestRunner` of :mod:`unittest." -"runner` now uses :func:`time.perf_counter` rather than :func:`time.time` to " -"measure the execution time of a test: :func:`time.time` can go backwards, " -"whereas :func:`time.perf_counter` is monotonic." +":issue:`35513`: :class:`~unittest.runner.TextTestRunner` " +"of :mod:`unittest.runner` now uses :func:`time.perf_counter` rather " +"than :func:`time.time` to measure the execution time of a " +"test: :func:`time.time` can go backwards, whereas :func:`time.perf_counter` " +"is monotonic." msgstr "" msgid "" -":issue:`35502`: Fixed reference leaks in :class:`xml.etree.ElementTree." -"TreeBuilder` in case of unfinished building of the tree (in particular when " -"an error was raised during parsing XML)." +":issue:`35502`: Fixed reference leaks " +"in :class:`xml.etree.ElementTree.TreeBuilder` in case of unfinished building " +"of the tree (in particular when an error was raised during parsing XML)." msgstr "" msgid "" @@ -61533,8 +64770,8 @@ msgid "" msgstr "" msgid "" -":issue:`20239`: Allow repeated assignment deletion of :class:`unittest.mock." -"Mock` attributes. Patch by Pablo Galindo." +":issue:`20239`: Allow repeated assignment deletion " +"of :class:`unittest.mock.Mock` attributes. Patch by Pablo Galindo." msgstr "" msgid "" @@ -61551,8 +64788,8 @@ msgid ":issue:`35415`: Validate fileno= argument to socket.socket()." msgstr "" msgid "" -":issue:`35424`: :class:`multiprocessing.Pool` destructor now emits :exc:" -"`ResourceWarning` if the pool is still running." +":issue:`35424`: :class:`multiprocessing.Pool` destructor now " +"emits :exc:`ResourceWarning` if the pool is still running." msgstr "" msgid "" @@ -61568,9 +64805,10 @@ msgid "" msgstr "" msgid "" -":issue:`10496`: :func:`~distutils.utils.check_environ` of ``distutils." -"utils`` now catches :exc:`KeyError` on calling :func:`pwd.getpwuid`: don't " -"create the ``HOME`` environment variable in this case." +":issue:`10496`: :func:`~distutils.utils.check_environ` of " +"``distutils.utils`` now catches :exc:`KeyError` on " +"calling :func:`pwd.getpwuid`: don't create the ``HOME`` environment variable " +"in this case." msgstr "" msgid "" @@ -61583,9 +64821,9 @@ msgid "" msgstr "" msgid "" -":issue:`35389`: :func:`platform.libc_ver` now uses ``os." -"confstr('CS_GNU_LIBC_VERSION')`` if available and the *executable* parameter " -"is not set." +":issue:`35389`: :func:`platform.libc_ver` now uses " +"``os.confstr('CS_GNU_LIBC_VERSION')`` if available and the *executable* " +"parameter is not set." msgstr "" msgid ":issue:`35394`: Add empty slots to asyncio abstract protocols." @@ -61594,9 +64832,9 @@ msgstr "" msgid "" ":issue:`35310`: Fix a bug in :func:`select.select` where, in some cases, the " "file descriptor sequences were returned unmodified after a signal " -"interruption, even though the file descriptors might not be ready yet. :func:" -"`select.select` will now always return empty lists if a timeout has " -"occurred. Patch by Oran Avraham." +"interruption, even though the file descriptors might not be ready " +"yet. :func:`select.select` will now always return empty lists if a timeout " +"has occurred. Patch by Oran Avraham." msgstr "" msgid "" @@ -61615,8 +64853,8 @@ msgid "" msgstr "" msgid "" -":issue:`35346`: :func:`platform.uname` now redirects ``stderr`` to :data:`os." -"devnull` when running external programs like ``cmd /c ver``." +":issue:`35346`: :func:`platform.uname` now redirects ``stderr`` " +"to :data:`os.devnull` when running external programs like ``cmd /c ver``." msgstr "" msgid "" @@ -61633,9 +64871,9 @@ msgid "" msgstr "" msgid "" -":issue:`35344`: On macOS, :func:`platform.platform` now uses :func:`platform." -"mac_ver`, if it returns a non-empty release string, to get the macOS version " -"rather than the darwin version." +":issue:`35344`: On macOS, :func:`platform.platform` now " +"uses :func:`platform.mac_ver`, if it returns a non-empty release string, to " +"get the macOS version rather than the darwin version." msgstr "" msgid "" @@ -61668,9 +64906,10 @@ msgid ":issue:`24209`: Adds IPv6 support when invoking http.server directly." msgstr "" msgid "" -":issue:`35226`: Recursively check arguments when testing for equality of :" -"class:`unittest.mock.call` objects and add note that tracking of parameters " -"used to create ancestors of mocks in ``mock_calls`` is not possible." +":issue:`35226`: Recursively check arguments when testing for equality " +"of :class:`unittest.mock.call` objects and add note that tracking of " +"parameters used to create ancestors of mocks in ``mock_calls`` is not " +"possible." msgstr "" msgid "" @@ -61700,8 +64939,8 @@ msgid "" msgstr "" msgid "" -":issue:`35062`: Fix incorrect parsing of :class:`io." -"IncrementalNewlineDecoder`'s *translate* argument." +":issue:`35062`: Fix incorrect parsing " +"of :class:`io.IncrementalNewlineDecoder`'s *translate* argument." msgstr "" msgid "" @@ -61722,10 +64961,11 @@ msgid "" msgstr "" msgid "" -":issue:`33710`: Deprecated ``l*gettext()`` functions and methods in the :mod:" -"`gettext` module. They return encoded bytes instead of Unicode strings and " -"are artifacts from Python 2 times. Also deprecated functions and methods " -"related to setting the charset for ``l*gettext()`` functions and methods." +":issue:`33710`: Deprecated ``l*gettext()`` functions and methods in " +"the :mod:`gettext` module. They return encoded bytes instead of Unicode " +"strings and are artifacts from Python 2 times. Also deprecated functions and " +"methods related to setting the charset for ``l*gettext()`` functions and " +"methods." msgstr "" msgid "" @@ -61794,16 +65034,17 @@ msgid "" msgstr "" msgid "" -":issue:`34890`: Make :func:`inspect.iscoroutinefunction`, :func:`inspect." -"isgeneratorfunction` and :func:`inspect.isasyncgenfunction` work with :func:" -"`functools.partial`. Patch by Pablo Galindo." +":issue:`34890`: " +"Make :func:`inspect.iscoroutinefunction`, :func:`inspect.isgeneratorfunction` " +"and :func:`inspect.isasyncgenfunction` work with :func:`functools.partial`. " +"Patch by Pablo Galindo." msgstr "" msgid "" ":issue:`34521`: Use :func:`socket.CMSG_SPACE` to calculate ancillary data " -"size instead of :func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction." -"recvfds` as :rfc:`3542` requires the use of the former for portable " -"applications." +"size instead of :func:`socket.CMSG_LEN` " +"in :func:`multiprocessing.reduction.recvfds` as :rfc:`3542` requires the use " +"of the former for portable applications." msgstr "" msgid "" @@ -61812,8 +65053,8 @@ msgid "" msgstr "" msgid "" -":issue:`34970`: Protect tasks weak set manipulation in ``asyncio." -"all_tasks()``" +":issue:`34970`: Protect tasks weak set manipulation in " +"``asyncio.all_tasks()``" msgstr "" msgid "" @@ -61835,8 +65076,9 @@ msgid "" msgstr "" msgid "" -":issue:`34926`: :meth:`mimetypes.MimeTypes.guess_type` now accepts :term:" -"`path-like object` in addition to url strings. Patch by Mayank Asthana." +":issue:`34926`: :meth:`mimetypes.MimeTypes.guess_type` now " +"accepts :term:`path-like object` in addition to url strings. Patch by Mayank " +"Asthana." msgstr "" msgid "" @@ -61872,15 +65114,15 @@ msgid "" msgstr "" msgid "" -":issue:`34911`: Added *secure_protocols* argument to *http.cookiejar." -"DefaultCookiePolicy* to allow for tweaking of protocols and also to add " -"support by default for *wss*, the secure websocket protocol." +":issue:`34911`: Added *secure_protocols* argument to " +"*http.cookiejar.DefaultCookiePolicy* to allow for tweaking of protocols and " +"also to add support by default for *wss*, the secure websocket protocol." msgstr "" msgid "" ":issue:`34922`: Fixed integer overflow in the :meth:`~hashlib.shake.digest` " -"and :meth:`~hashlib.shake.hexdigest` methods for the SHAKE algorithm in the :" -"mod:`hashlib` module." +"and :meth:`~hashlib.shake.hexdigest` methods for the SHAKE algorithm in " +"the :mod:`hashlib` module." msgstr "" msgid "" @@ -61948,14 +65190,14 @@ msgstr "" msgid "" ":issue:`34022`: The :envvar:`SOURCE_DATE_EPOCH` environment variable no " -"longer overrides the value of the *invalidation_mode* argument to :func:" -"`py_compile.compile`, and determines its default value instead." +"longer overrides the value of the *invalidation_mode* argument " +"to :func:`py_compile.compile`, and determines its default value instead." msgstr "" msgid "" -":issue:`34819`: Use a monotonic clock to compute timeouts in :meth:`Executor." -"map` and :func:`as_completed`, in order to prevent timeouts from deviating " -"when the system clock is adjusted." +":issue:`34819`: Use a monotonic clock to compute timeouts " +"in :meth:`Executor.map` and :func:`as_completed`, in order to prevent " +"timeouts from deviating when the system clock is adjusted." msgstr "" msgid "" @@ -61969,8 +65211,8 @@ msgid "" msgstr "" msgid "" -":issue:`34334`: In :class:`QueueHandler`, clear ``exc_text`` from :class:" -"`LogRecord` to prevent traceback from being written twice." +":issue:`34334`: In :class:`QueueHandler`, clear ``exc_text`` " +"from :class:`LogRecord` to prevent traceback from being written twice." msgstr "" msgid "" @@ -61979,15 +65221,16 @@ msgid "" msgstr "" msgid "" -":issue:`5950`: Support reading zip files with archive comments in :mod:" -"`zipimport`." +":issue:`5950`: Support reading zip files with archive comments " +"in :mod:`zipimport`." msgstr "" msgid "" -":issue:`32892`: The parser now represents all constants as :class:`ast." -"Constant` instead of using specific constant AST types (``Num``, ``Str``, " -"``Bytes``, ``NameConstant`` and ``Ellipsis``). These classes are considered " -"deprecated and will be removed in future Python versions." +":issue:`32892`: The parser now represents all constants " +"as :class:`ast.Constant` instead of using specific constant AST types " +"(``Num``, ``Str``, ``Bytes``, ``NameConstant`` and ``Ellipsis``). These " +"classes are considered deprecated and will be removed in future Python " +"versions." msgstr "" msgid "" @@ -62008,9 +65251,9 @@ msgid ":issue:`29577`: Support multiple mixin classes when creating Enums." msgstr "" msgid "" -":issue:`34670`: Add SSLContext.post_handshake_auth and SSLSocket." -"verify_client_post_handshake for TLS 1.3's post handshake authentication " -"feature." +":issue:`34670`: Add SSLContext.post_handshake_auth and " +"SSLSocket.verify_client_post_handshake for TLS 1.3's post handshake " +"authentication feature." msgstr "" msgid "" @@ -62019,8 +65262,8 @@ msgid "" msgstr "" msgid "" -":issue:`31177`: Fix bug that prevented using :meth:`reset_mock ` on mock instances with deleted attributes" +":issue:`31177`: Fix bug that prevented using :meth:`reset_mock " +"` on mock instances with deleted attributes" msgstr "" msgid "" @@ -62029,9 +65272,9 @@ msgid "" msgstr "" msgid "" -":issue:`34666`: Implement ``asyncio.StreamWriter.awrite`` and ``asyncio." -"StreamWriter.aclose()`` coroutines. Methods are needed for providing a " -"consistent stream API with control flow switched on by default." +":issue:`34666`: Implement ``asyncio.StreamWriter.awrite`` and " +"``asyncio.StreamWriter.aclose()`` coroutines. Methods are needed for " +"providing a consistent stream API with control flow switched on by default." msgstr "" msgid "" @@ -62067,10 +65310,10 @@ msgid "" msgstr "" msgid "" -":issue:`24412`: Add :func:`~unittest.addModuleCleanup` and :meth:`~unittest." -"TestCase.addClassCleanup` to unittest to support cleanups for :func:" -"`~unittest.setUpModule` and :meth:`~unittest.TestCase.setUpClass`. Patch by " -"Lisa Roach." +":issue:`24412`: Add :func:`~unittest.addModuleCleanup` " +"and :meth:`~unittest.TestCase.addClassCleanup` to unittest to support " +"cleanups for :func:`~unittest.setUpModule` " +"and :meth:`~unittest.TestCase.setUpClass`. Patch by Lisa Roach." msgstr "" msgid "" @@ -62098,15 +65341,16 @@ msgid "" msgstr "" msgid "" -":issue:`34622`: Create a dedicated ``asyncio.CancelledError``, ``asyncio." -"InvalidStateError`` and ``asyncio.TimeoutError`` exception classes. Inherit " -"them from corresponding exceptions from ``concurrent.futures`` package. " -"Extract ``asyncio`` exceptions into a separate file." +":issue:`34622`: Create a dedicated ``asyncio.CancelledError``, " +"``asyncio.InvalidStateError`` and ``asyncio.TimeoutError`` exception " +"classes. Inherit them from corresponding exceptions from " +"``concurrent.futures`` package. Extract ``asyncio`` exceptions into a " +"separate file." msgstr "" msgid "" -":issue:`34610`: Fixed iterator of :class:`multiprocessing.managers." -"DictProxy`." +":issue:`34610`: Fixed iterator " +"of :class:`multiprocessing.managers.DictProxy`." msgstr "" msgid "" @@ -62115,8 +65359,8 @@ msgid "" msgstr "" msgid "" -":issue:`34604`: Fix possible mojibake in the error message of ``pwd." -"getpwnam`` and ``grp.getgrnam`` using string representation because of " +":issue:`34604`: Fix possible mojibake in the error message of " +"``pwd.getpwnam`` and ``grp.getgrnam`` using string representation because of " "invisible characters or trailing whitespaces. Patch by William Grzybowski." msgstr "" @@ -62136,8 +65380,8 @@ msgid "" msgstr "" msgid "" -":issue:`34530`: ``distutils.spawn.find_executable()`` now falls back on :" -"data:`os.defpath` if the ``PATH`` environment variable is not set." +":issue:`34530`: ``distutils.spawn.find_executable()`` now falls back " +"on :data:`os.defpath` if the ``PATH`` environment variable is not set." msgstr "" msgid "" @@ -62162,8 +65406,8 @@ msgid "" msgstr "" msgid "" -":issue:`34515`: Fix parsing non-ASCII identifiers in :mod:`!lib2to3.pgen2." -"tokenize` (:pep:`3131`)." +":issue:`34515`: Fix parsing non-ASCII identifiers in :mod:`!" +"lib2to3.pgen2.tokenize` (:pep:`3131`)." msgstr "" msgid "" @@ -62259,24 +65503,23 @@ msgid "" msgstr "" msgid "" -":issue:`34318`: :func:`~unittest.TestCase.assertRaises`, :func:`~unittest." -"TestCase.assertRaisesRegex`, :func:`~unittest.TestCase.assertWarns` and :" -"func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed " -"callable is None. They no longer ignore unknown keyword arguments in the " -"context manager mode. A DeprecationWarning was raised in these cases since " -"Python 3.5." +":issue:`34318`: :func:`~unittest.TestCase.assertRaises`, :func:`~unittest.TestCase.assertRaisesRegex`, :func:`~unittest.TestCase.assertWarns` " +"and :func:`~unittest.TestCase.assertWarnsRegex` no longer success if the " +"passed callable is None. They no longer ignore unknown keyword arguments in " +"the context manager mode. A DeprecationWarning was raised in these cases " +"since Python 3.5." msgstr "" msgid "" -":issue:`9372`: Deprecate :meth:`~object.__getitem__` methods of :class:`xml." -"dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` and :class:" -"`fileinput.FileInput`." +":issue:`9372`: Deprecate :meth:`~object.__getitem__` methods " +"of :class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` " +"and :class:`fileinput.FileInput`." msgstr "" msgid "" -":issue:`33613`: Fix a race condition in ``multiprocessing." -"semaphore_tracker`` when the tracker receives SIGINT before it can register " -"signal handlers for ignoring it." +":issue:`33613`: Fix a race condition in " +"``multiprocessing.semaphore_tracker`` when the tracker receives SIGINT " +"before it can register signal handlers for ignoring it." msgstr "" msgid "" @@ -62307,13 +65550,13 @@ msgstr "" msgid "" ":issue:`34270`: The default asyncio task class now always has a name which " -"can be get or set using two new methods (:meth:`~asyncio.Task.get_name` and :" -"meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output. An " -"initial name can also be set using the new ``name`` keyword argument to :" -"func:`asyncio.create_task` or the :meth:`~asyncio.AbstractEventLoop." -"create_task` method of the event loop. If no initial name is set, the " -"default Task implementation generates a name like ``Task-1`` using a " -"monotonic counter." +"can be get or set using two new methods (:meth:`~asyncio.Task.get_name` " +"and :meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` " +"output. An initial name can also be set using the new ``name`` keyword " +"argument to :func:`asyncio.create_task` or " +"the :meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. " +"If no initial name is set, the default Task implementation generates a name " +"like ``Task-1`` using a monotonic counter." msgstr "" msgid "" @@ -62332,8 +65575,8 @@ msgid "" msgstr "" msgid "" -":issue:`34075`: Deprecate passing non-ThreadPoolExecutor instances to :meth:" -"`AbstractEventLoop.set_default_executor`." +":issue:`34075`: Deprecate passing non-ThreadPoolExecutor instances " +"to :meth:`AbstractEventLoop.set_default_executor`." msgstr "" msgid "" @@ -62369,12 +65612,10 @@ msgid "" msgstr "" msgid "" -":issue:`34052`: :meth:`sqlite3.Connection.create_aggregate`, :meth:`sqlite3." -"Connection.create_function`, :meth:`sqlite3.Connection.set_authorizer`, :" -"meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError when " -"unhashable objects are passed as callable. These methods now don't pass such " -"objects to SQLite API. Previous behavior could lead to segfaults. Patch by " -"Sergey Fedoseev." +":issue:`34052`: :meth:`sqlite3.Connection.create_aggregate`, :meth:`sqlite3.Connection.create_function`, :meth:`sqlite3.Connection.set_authorizer`, :meth:`sqlite3.Connection.set_progress_handler` " +"methods raises TypeError when unhashable objects are passed as callable. " +"These methods now don't pass such objects to SQLite API. Previous behavior " +"could lead to segfaults. Patch by Sergey Fedoseev." msgstr "" msgid "" @@ -62401,8 +65642,8 @@ msgstr "" msgid "" ":issue:`34164`: :func:`base64.b32decode` could raise UnboundLocalError or " -"OverflowError for incorrect padding. Now it always raises :exc:`base64." -"Error` in these cases." +"OverflowError for incorrect padding. Now it always " +"raises :exc:`base64.Error` in these cases." msgstr "" msgid ":issue:`33729`: Fixed issues with arguments parsing in :mod:`hashlib`." @@ -62433,20 +65674,21 @@ msgid "" msgstr "" msgid "" -":issue:`34041`: Add the parameter *deterministic* to the :meth:`sqlite3." -"Connection.create_function` method. Patch by Sergey Fedoseev." +":issue:`34041`: Add the parameter *deterministic* to " +"the :meth:`sqlite3.Connection.create_function` method. Patch by Sergey " +"Fedoseev." msgstr "" msgid "" ":issue:`34056`: Ensure the loader shim created by ``imp.load_module`` always " -"returns bytes from its ``get_data()`` function. This fixes using ``imp." -"load_module`` with :pep:`552` hash-based pycs." +"returns bytes from its ``get_data()`` function. This fixes using " +"``imp.load_module`` with :pep:`552` hash-based pycs." msgstr "" msgid "" -":issue:`34054`: The multiprocessing module now uses the monotonic clock :" -"func:`time.monotonic` instead of the system clock :func:`time.time` to " -"implement timeout." +":issue:`34054`: The multiprocessing module now uses the monotonic " +"clock :func:`time.monotonic` instead of the system clock :func:`time.time` " +"to implement timeout." msgstr "" msgid "" @@ -62489,8 +65731,8 @@ msgstr "" msgid "" ":issue:`33974`: Fixed passing lists and tuples of strings containing special " -"characters ``\"``, ``\\``, ``{``, ``}`` and ``\\n`` as options to :mod:" -"`~tkinter.ttk` widgets." +"characters ``\"``, ``\\``, ``{``, ``}`` and ``\\n`` as options " +"to :mod:`~tkinter.ttk` widgets." msgstr "" msgid ":issue:`27500`: Fix getaddrinfo to resolve IPv6 addresses correctly." @@ -62502,9 +65744,10 @@ msgid "" msgstr "" msgid "" -":issue:`33871`: Fixed integer overflow in :func:`os.readv`, :func:`os." -"writev`, :func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` " -"with *headers* or *trailers* arguments (on BSD-based OSes and macOS)." +":issue:`33871`: Fixed integer overflow " +"in :func:`os.readv`, :func:`os.writev`, :func:`os.preadv` " +"and :func:`os.pwritev` and in :func:`os.sendfile` with *headers* or " +"*trailers* arguments (on BSD-based OSes and macOS)." msgstr "" msgid "" @@ -62534,10 +65777,10 @@ msgid "" ":issue:`33695`: :func:`shutil.copytree` uses :func:`os.scandir` function and " "all copy functions depending from it use cached :func:`os.stat` values. The " "speedup for copying a directory with 8000 files is around +9% on Linux, +20% " -"on Windows and + 30% on a Windows SMB share. Also the number of :func:`os." -"stat` syscalls is reduced by 38% making :func:`shutil.copytree` especially " -"faster on network filesystems. (Contributed by Giampaolo Rodola' in :issue:" -"`33695`.)" +"on Windows and + 30% on a Windows SMB share. Also the number " +"of :func:`os.stat` syscalls is reduced by 38% making :func:`shutil.copytree` " +"especially faster on network filesystems. (Contributed by Giampaolo Rodola' " +"in :issue:`33695`.)" msgstr "" msgid "" @@ -62560,15 +65803,12 @@ msgid "" msgstr "" msgid "" -":issue:`33721`: :mod:`os.path` functions that return a boolean result like :" -"func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :" -"func:`~os.path.isfile`, :func:`~os.path.islink`, and :func:`~os.path." -"ismount`, and :mod:`pathlib.Path` methods that return a boolean result like :" -"meth:`~pathlib.Path.exists`, :meth:`~pathlib.Path.is_dir`, :meth:`~pathlib." -"Path.is_file`, :meth:`~pathlib.Path.is_mount`, :meth:`~pathlib.Path." -"is_symlink`, :meth:`~pathlib.Path.is_block_device`, :meth:`~pathlib.Path." -"is_char_device`, :meth:`~pathlib.Path.is_fifo`, :meth:`~pathlib.Path." -"is_socket` now return ``False`` instead of raising :exc:`ValueError` or its " +":issue:`33721`: :mod:`os.path` functions that return a boolean result " +"like :func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :func:`~os.path.isfile`, :func:`~os.path.islink`, " +"and :func:`~os.path.ismount`, and :mod:`pathlib.Path` methods that return a " +"boolean result " +"like :meth:`~pathlib.Path.exists`, :meth:`~pathlib.Path.is_dir`, :meth:`~pathlib.Path.is_file`, :meth:`~pathlib.Path.is_mount`, :meth:`~pathlib.Path.is_symlink`, :meth:`~pathlib.Path.is_block_device`, :meth:`~pathlib.Path.is_char_device`, :meth:`~pathlib.Path.is_fifo`, :meth:`~pathlib.Path.is_socket` " +"now return ``False`` instead of raising :exc:`ValueError` or its " "subclasses :exc:`UnicodeEncodeError` and :exc:`UnicodeDecodeError` for paths " "that contain characters or bytes unrepresentable at the OS level." msgstr "" @@ -62579,8 +65819,8 @@ msgid "" msgstr "" msgid "" -":issue:`33843`: Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi." -"parse_qsl``." +":issue:`33843`: Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and " +"``cgi.parse_qsl``." msgstr "" msgid "" @@ -62604,9 +65844,9 @@ msgid "" msgstr "" msgid "" -":issue:`33812`: Datetime instance d with non-None tzinfo, but with d.tzinfo." -"utcoffset(d) returning None is now treated as naive by the astimezone() " -"method." +":issue:`33812`: Datetime instance d with non-None tzinfo, but with " +"d.tzinfo.utcoffset(d) returning None is now treated as naive by the " +"astimezone() method." msgstr "" msgid "" @@ -62636,19 +65876,19 @@ msgid "" msgstr "" msgid "" -":issue:`32493`: Correct test for ``uuid_enc_be`` availability in ``configure." -"ac``. Patch by Michael Felt." +":issue:`32493`: Correct test for ``uuid_enc_be`` availability in " +"``configure.ac``. Patch by Michael Felt." msgstr "" msgid "" -":issue:`33792`: Add asyncio.WindowsSelectorEventLoopPolicy and asyncio." -"WindowsProactorEventLoopPolicy." +":issue:`33792`: Add asyncio.WindowsSelectorEventLoopPolicy and " +"asyncio.WindowsProactorEventLoopPolicy." msgstr "" msgid "" -":issue:`33274`: W3C DOM Level 1 specifies return value of Element." -"removeAttributeNode() as \"The Attr node that was removed.\" xml.dom.minidom " -"now complies with this requirement." +":issue:`33274`: W3C DOM Level 1 specifies return value of " +"Element.removeAttributeNode() as \"The Attr node that was removed.\" " +"xml.dom.minidom now complies with this requirement." msgstr "" msgid "" @@ -62694,8 +65934,9 @@ msgid ":issue:`33197`: Add description property for _ParameterKind" msgstr "" msgid "" -":issue:`32751`: When cancelling the task due to a timeout, :meth:`asyncio." -"wait_for` will now wait until the cancellation is complete." +":issue:`32751`: When cancelling the task due to a " +"timeout, :meth:`asyncio.wait_for` will now wait until the cancellation is " +"complete." msgstr "" msgid "" @@ -62704,8 +65945,8 @@ msgid "" msgstr "" msgid "" -":issue:`33654`: Support protocol type switching in SSLTransport." -"set_protocol()." +":issue:`33654`: Support protocol type switching in " +"SSLTransport.set_protocol()." msgstr "" msgid "" @@ -62714,15 +65955,15 @@ msgid "" msgstr "" msgid "" -":issue:`33671`: :func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil." -"copy2`, :func:`shutil.copytree` and :func:`shutil.move` use platform-" -"specific fast-copy syscalls on Linux and macOS in order to copy the file " -"more efficiently. On Windows :func:`shutil.copyfile` uses a bigger default " -"buffer size (1 MiB instead of 16 KiB) and a :func:`memoryview`-based variant " +":issue:`33671`: :func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:`shutil.copytree` " +"and :func:`shutil.move` use platform-specific fast-copy syscalls on Linux " +"and macOS in order to copy the file more efficiently. On " +"Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB " +"instead of 16 KiB) and a :func:`memoryview`-based variant " "of :func:`shutil.copyfileobj` is used. The speedup for copying a 512MiB file " "is about +26% on Linux, +50% on macOS and +40% on Windows. Also, much less " -"CPU cycles are consumed. (Contributed by Giampaolo Rodola' in :issue:" -"`25427`.)" +"CPU cycles are consumed. (Contributed by Giampaolo Rodola' " +"in :issue:`25427`.)" msgstr "" msgid "" @@ -62777,9 +66018,9 @@ msgid "" msgstr "" msgid "" -":issue:`33625`: Release GIL on ``grp.getgrnam``, ``grp.getgrgid``, ``pwd." -"getpwnam`` and ``pwd.getpwuid`` if reentrant variants of these functions are " -"available. Patch by William Grzybowski." +":issue:`33625`: Release GIL on ``grp.getgrnam``, ``grp.getgrgid``, " +"``pwd.getpwnam`` and ``pwd.getpwuid`` if reentrant variants of these " +"functions are available. Patch by William Grzybowski." msgstr "" msgid "" @@ -62877,8 +66118,9 @@ msgstr "" msgid "" ":issue:`28612`: Added support for Site Maps to urllib's ``RobotFileParser`` " -"as :meth:`RobotFileParser.site_maps() `. Patch by Lady Red, based on patch by Peter Wirtz." +"as :meth:`RobotFileParser.site_maps() " +"`. Patch by Lady Red, based on " +"patch by Peter Wirtz." msgstr "" msgid "" @@ -62887,9 +66129,9 @@ msgid "" msgstr "" msgid "" -":issue:`33504`: Switch the default dictionary implementation for :mod:" -"`configparser` from :class:`collections.OrderedDict` to the standard :class:" -"`dict` type." +":issue:`33504`: Switch the default dictionary implementation " +"for :mod:`configparser` from :class:`collections.OrderedDict` to the " +"standard :class:`dict` type." msgstr "" msgid "" @@ -62923,23 +66165,23 @@ msgid "" ":issue:`29209`: Removed the ``doctype()`` method and the *html* parameter of " "the constructor of :class:`~xml.etree.ElementTree.XMLParser`. The " "``doctype()`` method defined in a subclass will no longer be called. " -"Deprecated methods ``getchildren()`` and ``getiterator()`` in the :mod:`~xml." -"etree.ElementTree` module emit now a :exc:`DeprecationWarning` instead of :" -"exc:`PendingDeprecationWarning`." +"Deprecated methods ``getchildren()`` and ``getiterator()`` in " +"the :mod:`~xml.etree.ElementTree` module emit now " +"a :exc:`DeprecationWarning` instead of :exc:`PendingDeprecationWarning`." msgstr "" msgid "" ":issue:`33453`: Fix dataclasses to work if using literal string type " "annotations or if using PEP 563 \"Postponed Evaluation of Annotations\". " "Only specific string prefixes are detected for both ClassVar (\"ClassVar\" " -"and \"typing.ClassVar\") and InitVar (\"InitVar\" and \"dataclasses." -"InitVar\")." +"and \"typing.ClassVar\") and InitVar (\"InitVar\" and " +"\"dataclasses.InitVar\")." msgstr "" msgid "" ":issue:`28556`: Minor fixes in typing module: add annotations to " -"``NamedTuple.__new__``, pass ``*args`` and ``**kwds`` in ``Generic." -"__new__``. Original PRs by Paulius Šarka and Chad Dombrova." +"``NamedTuple.__new__``, pass ``*args`` and ``**kwds`` in " +"``Generic.__new__``. Original PRs by Paulius Šarka and Chad Dombrova." msgstr "" msgid "" @@ -62958,9 +66200,9 @@ msgid "" msgstr "" msgid "" -":issue:`28167`: The function ``platform.linux_distribution`` and ``platform." -"dist`` now trigger a ``DeprecationWarning`` and have been marked for removal " -"in Python 3.8" +":issue:`28167`: The function ``platform.linux_distribution`` and " +"``platform.dist`` now trigger a ``DeprecationWarning`` and have been marked " +"for removal in Python 3.8" msgstr "" msgid ":issue:`33281`: Fix ctypes.util.find_library regression on macOS." @@ -62989,8 +66231,8 @@ msgid "" msgstr "" msgid "" -":issue:`33197`: Update error message when constructing invalid inspect." -"Parameters Patch by Donghee Na." +":issue:`33197`: Update error message when constructing invalid " +"inspect.Parameters Patch by Donghee Na." msgstr "" msgid "" @@ -63015,8 +66257,8 @@ msgid ":issue:`32455`: Added *jump* parameter to :func:`dis.stack_effect`." msgstr "" msgid "" -":issue:`27485`: Rename and deprecate undocumented functions in :func:`urllib." -"parse`." +":issue:`27485`: Rename and deprecate undocumented functions " +"in :func:`urllib.parse`." msgstr "" msgid "" @@ -63038,8 +66280,8 @@ msgid "" msgstr "" msgid "" -":issue:`991266`: Fix quoting of the ``Comment`` attribute of :class:`http." -"cookies.SimpleCookie`." +":issue:`991266`: Fix quoting of the ``Comment`` attribute " +"of :class:`http.cookies.SimpleCookie`." msgstr "" msgid ":issue:`33131`: Upgrade bundled version of pip to 10.0.1." @@ -63092,8 +66334,8 @@ msgstr "" msgid "" ":issue:`33185`: Fixed regression when running pydoc with the :option:`-m` " -"switch. (The regression was introduced in 3.7.0b3 by the resolution of :" -"issue:`33053`)" +"switch. (The regression was introduced in 3.7.0b3 by the resolution " +"of :issue:`33053`)" msgstr "" msgid "" @@ -63102,14 +66344,14 @@ msgid "" msgstr "" msgid "" -":issue:`29613`: Added support for the ``SameSite`` cookie flag to the ``http." -"cookies`` module." +":issue:`29613`: Added support for the ``SameSite`` cookie flag to the " +"``http.cookies`` module." msgstr "" msgid "" -":issue:`33169`: Delete entries of ``None`` in :data:`sys." -"path_importer_cache` when :meth:`importlib.machinery.invalidate_caches` is " -"called." +":issue:`33169`: Delete entries of ``None`` " +"in :data:`sys.path_importer_cache` " +"when :meth:`importlib.machinery.invalidate_caches` is called." msgstr "" msgid "" @@ -63124,8 +66366,8 @@ msgid "" msgstr "" msgid "" -":issue:`33209`: End framing at the end of C implementation of :func:`pickle." -"Pickler.dump`." +":issue:`33209`: End framing at the end of C implementation " +"of :func:`pickle.Pickler.dump`." msgstr "" msgid "" @@ -63143,8 +66385,8 @@ msgid "" msgstr "" msgid "" -":issue:`20104`: Improved error handling and fixed a reference leak in :func:" -"`os.posix_spawn`." +":issue:`20104`: Improved error handling and fixed a reference leak " +"in :func:`os.posix_spawn`." msgstr "" msgid "" @@ -63245,8 +66487,8 @@ msgid "" msgstr "" msgid "" -":issue:`33056`: FIX properly close leaking fds in concurrent.futures." -"ProcessPoolExecutor." +":issue:`33056`: FIX properly close leaking fds in " +"concurrent.futures.ProcessPoolExecutor." msgstr "" msgid "" @@ -63276,9 +66518,9 @@ msgid "" msgstr "" msgid "" -":issue:`27683`: Fix a regression in :mod:`ipaddress` that result of :meth:" -"`hosts` is empty when the network is constructed by a tuple containing an " -"integer mask and only 1 bit left for addresses." +":issue:`27683`: Fix a regression in :mod:`ipaddress` that result " +"of :meth:`hosts` is empty when the network is constructed by a tuple " +"containing an integer mask and only 1 bit left for addresses." msgstr "" msgid "" @@ -63303,8 +66545,8 @@ msgstr "" msgid "" ":issue:`32056`: Improved exceptions raised for invalid number of channels " -"and sample width when read an audio file in modules :mod:`!aifc`, :mod:" -"`wave` and :mod:`!sunau`." +"and sample width when read an audio file in modules :mod:`!" +"aifc`, :mod:`wave` and :mod:`!sunau`." msgstr "" msgid ":issue:`32970`: Improved disassembly of the MAKE_FUNCTION instruction." @@ -63375,8 +66617,8 @@ msgid "" msgstr "" msgid "" -":issue:`32556`: nt._getfinalpathname, nt._getvolumepathname and nt." -"_getdiskusage now correctly convert from bytes." +":issue:`32556`: nt._getfinalpathname, nt._getvolumepathname and " +"nt._getdiskusage now correctly convert from bytes." msgstr "" msgid "" @@ -63386,9 +66628,9 @@ msgid "" msgstr "" msgid "" -":issue:`32857`: In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:" -"`ValueError` instead of canceling the first scheduled function. Patch by " -"Cheryl Sabella." +":issue:`32857`: In :mod:`tkinter`, ``after_cancel(None)`` now raises " +"a :exc:`ValueError` instead of canceling the first scheduled function. Patch " +"by Cheryl Sabella." msgstr "" msgid "" @@ -63429,8 +66671,9 @@ msgid "" msgstr "" msgid "" -":issue:`32394`: socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE," -"TCP_KEEPINTVL flags on older version Windows during run-time." +":issue:`32394`: socket: Remove " +"TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on older version " +"Windows during run-time." msgstr "" msgid "" @@ -63503,8 +66746,8 @@ msgstr "" msgid "" ":issue:`31453`: Add TLSVersion constants and SSLContext.maximum_version / " -"minimum_version attributes. The new API wraps OpenSSL 1.1 https://web." -"archive.org/web/20180309043602/https://www.openssl.org/docs/man1.1.0/ssl/" +"minimum_version attributes. The new API wraps OpenSSL 1.1 https://" +"web.archive.org/web/20180309043602/https://www.openssl.org/docs/man1.1.0/ssl/" "SSL_CTX_set_min_proto_version.html feature." msgstr "" @@ -63583,8 +66826,9 @@ msgid "" msgstr "" msgid "" -":issue:`31608`: Raise a ``TypeError`` instead of crashing if a ``collections." -"deque`` subclass returns a non-deque from ``__new__``. Patch by Oren Milman." +":issue:`31608`: Raise a ``TypeError`` instead of crashing if a " +"``collections.deque`` subclass returns a non-deque from ``__new__``. Patch " +"by Oren Milman." msgstr "" msgid "" @@ -63594,15 +66838,16 @@ msgid "" msgstr "" msgid "" -":issue:`22005`: Implemented unpickling instances of :class:`~datetime." -"datetime`, :class:`~datetime.date` and :class:`~datetime.time` pickled by " -"Python 2. ``encoding='latin1'`` should be used for successful decoding." +":issue:`22005`: Implemented unpickling instances " +"of :class:`~datetime.datetime`, :class:`~datetime.date` " +"and :class:`~datetime.time` pickled by Python 2. ``encoding='latin1'`` " +"should be used for successful decoding." msgstr "" msgid "" -":issue:`27645`: :class:`sqlite3.Connection` now exposes a :class:`~sqlite3." -"Connection.backup` method, if the underlying SQLite library is at version " -"3.6.11 or higher. Patch by Lele Gaifax." +":issue:`27645`: :class:`sqlite3.Connection` now exposes " +"a :class:`~sqlite3.Connection.backup` method, if the underlying SQLite " +"library is at version 3.6.11 or higher. Patch by Lele Gaifax." msgstr "" msgid "" @@ -63611,9 +66856,9 @@ msgid "" msgstr "" msgid "" -":issue:`31508`: Removed support of arguments in ``tkinter.ttk.Treeview." -"selection``. It was deprecated in 3.6. Use specialized methods like " -"``selection_set`` for changing the selection." +":issue:`31508`: Removed support of arguments in " +"``tkinter.ttk.Treeview.selection``. It was deprecated in 3.6. Use " +"specialized methods like ``selection_set`` for changing the selection." msgstr "" msgid "" @@ -63661,8 +66906,8 @@ msgid "" msgstr "" msgid "" -":issue:`35035`: Rename documentation for :mod:`email.utils` to ``email.utils." -"rst``." +":issue:`35035`: Rename documentation for :mod:`email.utils` to " +"``email.utils.rst``." msgstr "" msgid "" @@ -63724,8 +66969,8 @@ msgid "" msgstr "" msgid "" -":issue:`33197`: Add versionadded tag to the documentation of ParameterKind." -"description" +":issue:`33197`: Add versionadded tag to the documentation of " +"ParameterKind.description" msgstr "" msgid "" @@ -63736,9 +66981,9 @@ msgid "" msgstr "" msgid "" -":issue:`33736`: Improve the documentation of :func:`asyncio." -"open_connection`, :func:`asyncio.start_server` and their UNIX socket " -"counterparts." +":issue:`33736`: Improve the documentation " +"of :func:`asyncio.open_connection`, :func:`asyncio.start_server` and their " +"UNIX socket counterparts." msgstr "" msgid "" @@ -63839,8 +67084,8 @@ msgid "" msgstr "" msgid "" -":issue:`8722`: Document :meth:`__getattr__` behavior when property :meth:" -"`get` method raises :exc:`AttributeError`." +":issue:`8722`: Document :meth:`__getattr__` behavior when " +"property :meth:`get` method raises :exc:`AttributeError`." msgstr "" msgid "" @@ -63922,9 +67167,9 @@ msgid "" msgstr "" msgid "" -":issue:`35424`: Fix test_multiprocessing_main_handling: use :class:" -"`multiprocessing.Pool` with a context manager and then explicitly join the " -"pool." +":issue:`35424`: Fix test_multiprocessing_main_handling: " +"use :class:`multiprocessing.Pool` with a context manager and then explicitly " +"join the pool." msgstr "" msgid "" @@ -63939,9 +67184,10 @@ msgid "" msgstr "" msgid "" -":issue:`34279`: :func:`test.support.run_unittest` no longer raise :exc:" -"`TestDidNotRun` if the test result contains skipped tests. The exception is " -"now only raised if no test have been run and no test have been skipped." +":issue:`34279`: :func:`test.support.run_unittest` no longer " +"raise :exc:`TestDidNotRun` if the test result contains skipped tests. The " +"exception is now only raised if no test have been run and no test have been " +"skipped." msgstr "" msgid "" @@ -64009,8 +67255,8 @@ msgstr "" msgid "" ":issue:`34200`: Fixed non-deterministic flakiness of test_pkg by not using " -"the scary test.support.module_cleanup() logic to save and restore sys." -"modules contents between test cases." +"the scary test.support.module_cleanup() logic to save and restore " +"sys.modules contents between test cases." msgstr "" msgid "" @@ -64031,8 +67277,8 @@ msgid "" msgstr "" msgid "" -":issue:`11193`: Remove special condition for AIX in ``test_subprocess." -"test_undecodable_env``" +":issue:`11193`: Remove special condition for AIX in " +"``test_subprocess.test_undecodable_env``" msgstr "" msgid ":issue:`34347`: Fix ``test_utf8_mode.test_cmd_line`` for AIX" @@ -64221,9 +67467,9 @@ msgid "" msgstr "" msgid "" -":issue:`33015`: Fix an undefined behaviour in the pthread implementation of :" -"c:func:`PyThread_start_new_thread`: add a function wrapper to always return " -"``NULL``." +":issue:`33015`: Fix an undefined behaviour in the pthread implementation " +"of :c:func:`PyThread_start_new_thread`: add a function wrapper to always " +"return ``NULL``." msgstr "" msgid "" @@ -64389,8 +67635,8 @@ msgid ":issue:`34532`: Fixes exit code of list version arguments for py.exe." msgstr "" msgid "" -":issue:`34062`: Fixed the '--list' and '--list-paths' arguments for the py." -"exe launcher" +":issue:`34062`: Fixed the '--list' and '--list-paths' arguments for the " +"py.exe launcher" msgstr "" msgid "" @@ -64450,8 +67696,8 @@ msgid "" msgstr "" msgid "" -":issue:`33016`: Fix potential use of uninitialized memory in nt." -"_getfinalpathname" +":issue:`33016`: Fix potential use of uninitialized memory in " +"nt._getfinalpathname" msgstr "" msgid "" @@ -64485,8 +67731,9 @@ msgid "" msgstr "" msgid "" -":issue:`1104`: Correctly handle string length in ``msilib.SummaryInfo." -"GetProperty()`` to prevent it from truncating the last character." +":issue:`1104`: Correctly handle string length in " +"``msilib.SummaryInfo.GetProperty()`` to prevent it from truncating the last " +"character." msgstr "" msgid ":issue:`35401`: Update macOS installer to use OpenSSL 1.1.0j." @@ -64889,14 +68136,13 @@ msgid "" msgstr "" msgid "" -":issue:`35322`: Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and :c:" -"func:`PyUnicode_EncodeFSDefault` on error handling." +":issue:`35322`: Fix memory leak in :c:func:`PyUnicode_EncodeLocale` " +"and :c:func:`PyUnicode_EncodeFSDefault` on error handling." msgstr "" msgid "" ":issue:`35059`: The following C macros have been converted to static inline " -"functions: :c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, :" -"c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`." +"functions: :c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, :c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`." msgstr "" msgid "" @@ -64924,8 +68170,8 @@ msgid ":issue:`35134`: Creation of a new ``Include/cpython/`` subdirectory." msgstr "" msgid "" -":issue:`34725`: Adds _Py_SetProgramFullPath so embedders may override sys." -"executable" +":issue:`34725`: Adds _Py_SetProgramFullPath so embedders may override " +"sys.executable" msgstr "" msgid "" @@ -64950,9 +68196,9 @@ msgid "" msgstr "" msgid "" -":issue:`23927`: Fixed :exc:`SystemError` in :c:func:" -"`PyArg_ParseTupleAndKeywords` when the ``w*`` format unit is used for " -"optional parameter." +":issue:`23927`: Fixed :exc:`SystemError` " +"in :c:func:`PyArg_ParseTupleAndKeywords` when the ``w*`` format unit is used " +"for optional parameter." msgstr "" msgid ":issue:`32455`: Added :c:func:`PyCompile_OpcodeStackEffectWithJump`." @@ -64964,10 +68210,10 @@ msgid "" msgstr "" msgid "" -":issue:`32500`: Fixed error messages for :c:func:`PySequence_Size`, :c:func:" -"`PySequence_GetItem`, :c:func:`PySequence_SetItem` and :c:func:" -"`PySequence_DelItem` called with a mapping and :c:func:`PyMapping_Size` " -"called with a sequence." +":issue:`32500`: Fixed error messages " +"for :c:func:`PySequence_Size`, :c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` " +"and :c:func:`PySequence_DelItem` called with a mapping " +"and :c:func:`PyMapping_Size` called with a sequence." msgstr "" msgid "" @@ -64987,9 +68233,9 @@ msgid "" msgstr "" msgid "" -":issue:`30863`: :c:func:`PyUnicode_AsWideChar` and :c:func:" -"`PyUnicode_AsWideCharString` no longer cache the ``wchar_t*`` representation " -"of string objects." +":issue:`30863`: :c:func:`PyUnicode_AsWideChar` " +"and :c:func:`PyUnicode_AsWideCharString` no longer cache the ``wchar_t*`` " +"representation of string objects." msgstr "" msgid "Python 3.7.0 final" @@ -65051,9 +68297,9 @@ msgstr "" msgid "" ":issue:`33185`: Fixed regression when running pydoc with the :option:`-m` " -"switch. (The regression was introduced in 3.7.0b3 by the resolution of :" -"issue:`33053`) This fix also changed pydoc to add ``os.getcwd()`` to :data:" -"`sys.path` when necessary, rather than adding ``\".\"``." +"switch. (The regression was introduced in 3.7.0b3 by the resolution " +"of :issue:`33053`) This fix also changed pydoc to add ``os.getcwd()`` " +"to :data:`sys.path` when necessary, rather than adding ``\".\"``." msgstr "" msgid "" @@ -65156,9 +68402,9 @@ msgstr "" msgid "" ":issue:`32591`: Added built-in support for tracking the origin of coroutine " -"objects; see sys.set_coroutine_origin_tracking_depth and CoroutineType." -"cr_origin. This replaces the asyncio debug mode's use of coroutine wrapping " -"for native coroutine objects." +"objects; see sys.set_coroutine_origin_tracking_depth and " +"CoroutineType.cr_origin. This replaces the asyncio debug mode's use of " +"coroutine wrapping for native coroutine objects." msgstr "" msgid "" @@ -65237,8 +68483,8 @@ msgid "" msgstr "" msgid "" -":issue:`21417`: Added support for setting the compression level for zipfile." -"ZipFile." +":issue:`21417`: Added support for setting the compression level for " +"zipfile.ZipFile." msgstr "" msgid ":issue:`32251`: Implement asyncio.BufferedProtocol (provisional API)." @@ -65271,8 +68517,8 @@ msgid "" msgstr "" msgid "" -":issue:`32391`: Implement :meth:`asyncio.StreamWriter.wait_closed` and :meth:" -"`asyncio.StreamWriter.is_closing` methods" +":issue:`32391`: Implement :meth:`asyncio.StreamWriter.wait_closed` " +"and :meth:`asyncio.StreamWriter.is_closing` methods" msgstr "" msgid "" @@ -65328,8 +68574,8 @@ msgid "" msgstr "" msgid "" -":issue:`32467`: collections.abc.ValuesView now inherits from collections.abc." -"Collection." +":issue:`32467`: collections.abc.ValuesView now inherits from " +"collections.abc.Collection." msgstr "" msgid ":issue:`32473`: Improve ABCMeta._dump_registry() output readability" @@ -65381,8 +68627,8 @@ msgid "" msgstr "" msgid "" -":issue:`32403`: Improved speed of :class:`datetime.date` and :class:" -"`datetime.datetime` alternate constructors." +":issue:`32403`: Improved speed of :class:`datetime.date` " +"and :class:`datetime.datetime` alternate constructors." msgstr "" msgid "" @@ -65403,12 +68649,13 @@ msgid ":issue:`32373`: Add socket.getblocking() method." msgstr "" msgid "" -":issue:`32248`: Add :mod:`importlib.resources` and :class:`!importlib.abc." -"ResourceReader` as the unified API for reading resources contained within " -"packages. Loaders wishing to support resource reading must implement the :" -"meth:`get_resource_reader` method. File-based and zipimport-based loaders " -"both implement these APIs. :class:`importlib.abc.ResourceLoader` is " -"deprecated in favor of these new APIs." +":issue:`32248`: Add :mod:`importlib.resources` and :class:`!" +"importlib.abc.ResourceReader` as the unified API for reading resources " +"contained within packages. Loaders wishing to support resource reading must " +"implement the :meth:`get_resource_reader` method. File-based and zipimport-" +"based loaders both implement these " +"APIs. :class:`importlib.abc.ResourceLoader` is deprecated in favor of these " +"new APIs." msgstr "" msgid ":issue:`32320`: collections.namedtuple() now supports default values." @@ -65432,9 +68679,9 @@ msgid "" "``decimal_point`` and ``thousands_sep`` byte strings if they are non-ASCII " "or longer than 1 byte, and the ``LC_NUMERIC`` locale is different than the " "``LC_CTYPE`` locale. This temporary change affects other threads. Same " -"change for the :meth:`str.format` method when formatting a number (:class:" -"`int`, :class:`float`, :class:`float` and subclasses) with the ``n`` type " -"(ex: ``'{:n}'.format(1234)``)." +"change for the :meth:`str.format` method when formatting a number " +"(:class:`int`, :class:`float`, :class:`float` and subclasses) with the ``n`` " +"type (ex: ``'{:n}'.format(1234)``)." msgstr "" msgid "" @@ -65559,9 +68806,10 @@ msgid "*Release date: 2018-01-08*" msgstr "" msgid "" -":issue:`31975`: The default warning filter list now starts with a \"default::" -"DeprecationWarning:__main__\" entry, so deprecation warnings are once again " -"shown by default in single-file scripts and at the interactive prompt." +":issue:`31975`: The default warning filter list now starts with a " +"\"default::DeprecationWarning:__main__\" entry, so deprecation warnings are " +"once again shown by default in single-file scripts and at the interactive " +"prompt." msgstr "" msgid ":issue:`32226`: ``__class_getitem__`` is now an automatic class method." @@ -65596,9 +68844,9 @@ msgstr "" msgid "" ":issue:`32329`: The :option:`-R` option now turns on hash randomization when " "the :envvar:`PYTHONHASHSEED` environment variable is set to ``0``. " -"Previously, the option was ignored. Moreover, ``sys.flags." -"hash_randomization`` is now properly set to 0 when hash randomization is " -"turned off by ``PYTHONHASHSEED=0``." +"Previously, the option was ignored. Moreover, " +"``sys.flags.hash_randomization`` is now properly set to 0 when hash " +"randomization is turned off by ``PYTHONHASHSEED=0``." msgstr "" msgid "" @@ -65637,8 +68885,8 @@ msgid "" msgstr "" msgid "" -":issue:`32230`: ``-X dev`` now injects a ``'default'`` entry into sys." -"warnoptions, ensuring that it behaves identically to actually passing ``-" +":issue:`32230`: ``-X dev`` now injects a ``'default'`` entry into " +"sys.warnoptions, ensuring that it behaves identically to actually passing ``-" "Wdefault`` at the command line." msgstr "" @@ -65682,8 +68930,8 @@ msgid "" msgstr "" msgid "" -":issue:`32278`: Make type information optional on dataclasses." -"make_dataclass(). If omitted, the string 'typing.Any' is used." +":issue:`32278`: Make type information optional on " +"dataclasses.make_dataclass(). If omitted, the string 'typing.Any' is used." msgstr "" msgid "" @@ -65710,9 +68958,9 @@ msgid "" msgstr "" msgid "" -":issue:`31721`: Prevent Python crash from happening when Future." -"_log_traceback is set to True manually. Now it can only be set to False, or " -"a ValueError is raised." +":issue:`31721`: Prevent Python crash from happening when " +"Future._log_traceback is set to True manually. Now it can only be set to " +"False, or a ValueError is raised." msgstr "" msgid ":issue:`32415`: asyncio: Add Task.get_loop() and Future.get_loop()" @@ -65732,9 +68980,9 @@ msgstr "" msgid "" ":issue:`32357`: Optimize asyncio.iscoroutine() and loop.create_task() for " -"non-native coroutines (e.g. async/await compiled with Cython). 'loop." -"create_task(python_coroutine)' used to be 20% faster than 'loop." -"create_task(cython_coroutine)'. Now, the latter is as fast." +"non-native coroutines (e.g. async/await compiled with Cython). " +"'loop.create_task(python_coroutine)' used to be 20% faster than " +"'loop.create_task(cython_coroutine)'. Now, the latter is as fast." msgstr "" msgid "" @@ -65772,8 +69020,8 @@ msgstr "" msgid "" ":issue:`32327`: Convert asyncio functions that were documented as coroutines " -"to coroutines. Affected functions: loop.sock_sendall, loop.sock_recv, loop." -"sock_accept, loop.getaddrinfo, loop.getnameinfo." +"to coroutines. Affected functions: loop.sock_sendall, loop.sock_recv, " +"loop.sock_accept, loop.getaddrinfo, loop.getnameinfo." msgstr "" msgid "" @@ -65815,8 +69063,8 @@ msgid "" msgstr "" msgid "" -":issue:`32250`: Implement ``asyncio.current_task()`` and ``asyncio." -"all_tasks()``. Add helpers intended to be used by alternative task " +":issue:`32250`: Implement ``asyncio.current_task()`` and " +"``asyncio.all_tasks()``. Add helpers intended to be used by alternative task " "implementations: ``asyncio._register_task``, ``asyncio._enter_task``, " "``asyncio._leave_task`` and ``asyncio._unregister_task``. Deprecate " "``asyncio.Task.current_task()`` and ``asyncio.Task.all_tasks()``." @@ -65886,10 +69134,10 @@ msgid "" msgstr "" msgid "" -":issue:`15873`: Added new alternate constructors :meth:`datetime.datetime." -"fromisoformat`, :meth:`datetime.time.fromisoformat` and :meth:`datetime.date." -"fromisoformat` as the inverse operation of each classes's respective " -"``isoformat`` methods." +":issue:`15873`: Added new alternate " +"constructors :meth:`datetime.datetime.fromisoformat`, :meth:`datetime.time.fromisoformat` " +"and :meth:`datetime.date.fromisoformat` as the inverse operation of each " +"classes's respective ``isoformat`` methods." msgstr "" msgid "" @@ -65931,10 +69179,10 @@ msgid "" msgstr "" msgid "" -":issue:`31699`: Fix deadlocks in :class:`concurrent.futures." -"ProcessPoolExecutor` when task arguments or results cause pickling or " -"unpickling errors. This should make sure that calls to the :class:" -"`ProcessPoolExecutor` API always eventually return." +":issue:`31699`: Fix deadlocks " +"in :class:`concurrent.futures.ProcessPoolExecutor` when task arguments or " +"results cause pickling or unpickling errors. This should make sure that " +"calls to the :class:`ProcessPoolExecutor` API always eventually return." msgstr "" msgid "" @@ -66146,8 +69394,8 @@ msgstr "" msgid "" ":issue:`27240`: The header folding algorithm for the new email policies has " -"been rewritten, which also fixes :issue:`30788`, :issue:`31831`, and :issue:" -"`32182`. In particular, RFC2231 folding is now done correctly." +"been rewritten, which also fixes :issue:`30788`, :issue:`31831`, " +"and :issue:`32182`. In particular, RFC2231 folding is now done correctly." msgstr "" msgid "" @@ -66163,8 +69411,8 @@ msgid "" ":issue:`32154`: The ``asyncio.windows_utils.socketpair()`` function has been " "removed: use directly :func:`socket.socketpair` which is available on all " "platforms since Python 3.5 (before, it wasn't available on Windows). " -"``asyncio.windows_utils.socketpair()`` was just an alias to ``socket." -"socketpair`` on Python 3.5 and newer." +"``asyncio.windows_utils.socketpair()`` was just an alias to " +"``socket.socketpair`` on Python 3.5 and newer." msgstr "" msgid "" @@ -66183,8 +69431,8 @@ msgstr "" msgid "" ":issue:`23033`: Wildcard is now supported in hostname when it is one and " -"only character in the left most segment of hostname in second argument of :" -"meth:`ssl.match_hostname`. Patch by Mandeep Singh." +"only character in the left most segment of hostname in second argument " +"of :meth:`ssl.match_hostname`. Patch by Mandeep Singh." msgstr "" msgid "" @@ -66201,17 +69449,18 @@ msgstr "" msgid "" ":issue:`32121`: Made ``tracemalloc.Traceback`` behave more like the " -"traceback module, sorting the frames from oldest to most recent. ``Traceback." -"format()`` now accepts negative *limit*, truncating the result to the " -"``abs(limit)`` oldest frames. To get the old behaviour, one can use the new " -"*most_recent_first* argument to ``Traceback.format()``. (Patch by Jesse " -"Bakker.)" +"traceback module, sorting the frames from oldest to most recent. " +"``Traceback.format()`` now accepts negative *limit*, truncating the result " +"to the ``abs(limit)`` oldest frames. To get the old behaviour, one can use " +"the new *most_recent_first* argument to ``Traceback.format()``. (Patch by " +"Jesse Bakker.)" msgstr "" msgid "" -":issue:`31325`: Fix wrong usage of :func:`collections.namedtuple` in the :" -"meth:`RobotFileParser.parse() ` " -"method. Initial patch by Robin Wellner." +":issue:`31325`: Fix wrong usage of :func:`collections.namedtuple` in " +"the :meth:`RobotFileParser.parse() " +"` method. Initial patch by Robin " +"Wellner." msgstr "" msgid "" @@ -66341,8 +69590,8 @@ msgid "" msgstr "" msgid "" -":issue:`31985`: Formally deprecated aifc.openfp, sunau.openfp, and wave." -"openfp. Since change 7bc817d5ba917528e8bd07ec461c635291e7b06a in 1993, " +":issue:`31985`: Formally deprecated aifc.openfp, sunau.openfp, and " +"wave.openfp. Since change 7bc817d5ba917528e8bd07ec461c635291e7b06a in 1993, " "openfp in each of the three modules had been pointing to that module's open " "function as a matter of backwards compatibility, though it had been both " "untested and undocumented." @@ -66357,8 +69606,8 @@ msgid ":issue:`31970`: Reduce performance overhead of asyncio debug mode." msgstr "" msgid "" -":issue:`31843`: *database* argument of sqlite3.connect() now accepts a :term:" -"`path-like object`, instead of just a string." +":issue:`31843`: *database* argument of sqlite3.connect() now accepts " +"a :term:`path-like object`, instead of just a string." msgstr "" msgid "" @@ -66396,15 +69645,16 @@ msgid "" msgstr "" msgid "" -":issue:`27666`: Fixed stack corruption in curses.box() and curses." -"ungetmouse() when the size of types chtype or mmask_t is less than the size " -"of C long. curses.box() now accepts characters as arguments. Based on patch " -"by Steve Fink." +":issue:`27666`: Fixed stack corruption in curses.box() and " +"curses.ungetmouse() when the size of types chtype or mmask_t is less than " +"the size of C long. curses.box() now accepts characters as arguments. Based " +"on patch by Steve Fink." msgstr "" msgid "" -":issue:`31917`: Add 3 new clock identifiers: :const:`time.CLOCK_BOOTTIME`, :" -"const:`time.CLOCK_PROF` and :const:`time.CLOCK_UPTIME`." +":issue:`31917`: Add 3 new clock " +"identifiers: :const:`time.CLOCK_BOOTTIME`, :const:`time.CLOCK_PROF` " +"and :const:`time.CLOCK_UPTIME`." msgstr "" msgid "" @@ -66492,9 +69742,9 @@ msgid "" msgstr "" msgid "" -":issue:`20825`: Add ``subnet_of`` and ``superset_of`` containment tests to :" -"class:`ipaddress.IPv6Network` and :class:`ipaddress.IPv4Network`. Patch by " -"Michel Albert and Cheryl Sabella." +":issue:`20825`: Add ``subnet_of`` and ``superset_of`` containment tests " +"to :class:`ipaddress.IPv6Network` and :class:`ipaddress.IPv4Network`. Patch " +"by Michel Albert and Cheryl Sabella." msgstr "" msgid "" @@ -66523,11 +69773,11 @@ msgid "" msgstr "" msgid "" -":issue:`31806`: Fix timeout rounding in time.sleep(), threading.Lock." -"acquire() and socket.socket.settimeout() to round correctly negative " -"timeouts between -1.0 and 0.0. The functions now block waiting for events as " -"expected. Previously, the call was incorrectly non-blocking. Patch by Pablo " -"Galindo." +":issue:`31806`: Fix timeout rounding in time.sleep(), " +"threading.Lock.acquire() and socket.socket.settimeout() to round correctly " +"negative timeouts between -1.0 and 0.0. The functions now block waiting for " +"events as expected. Previously, the call was incorrectly non-blocking. Patch " +"by Pablo Galindo." msgstr "" msgid "" @@ -66554,10 +69804,8 @@ msgstr "" msgid "" ":issue:`31784`: Implement the :pep:`564`, add new 6 new functions with " -"nanosecond resolution to the :mod:`time` module: :func:`~time." -"clock_gettime_ns`, :func:`~time.clock_settime_ns`, :func:`~time." -"monotonic_ns`, :func:`~time.perf_counter_ns`, :func:`~time." -"process_time_ns`, :func:`~time.time_ns`." +"nanosecond resolution to the :mod:`time` " +"module: :func:`~time.clock_gettime_ns`, :func:`~time.clock_settime_ns`, :func:`~time.monotonic_ns`, :func:`~time.perf_counter_ns`, :func:`~time.process_time_ns`, :func:`~time.time_ns`." msgstr "" msgid "" @@ -66581,8 +69829,8 @@ msgid "" msgstr "" msgid "" -":issue:`31620`: an empty asyncio.Queue now doesn't leak memory when queue." -"get pollers timeout" +":issue:`31620`: an empty asyncio.Queue now doesn't leak memory when " +"queue.get pollers timeout" msgstr "" msgid "" @@ -66612,8 +69860,8 @@ msgid "" msgstr "" msgid "" -":issue:`31307`: Allow use of bytes objects for arguments to :meth:" -"`configparser.ConfigParser.read`. Patch by Vincent Michel." +":issue:`31307`: Allow use of bytes objects for arguments " +"to :meth:`configparser.ConfigParser.read`. Patch by Vincent Michel." msgstr "" msgid "" @@ -66638,8 +69886,8 @@ msgid "" msgstr "" msgid "" -":issue:`30553`: Add HTTP/2 status code 421 (Misdirected Request) to :class:" -"`http.HTTPStatus`. Patch by Vitor Pereira." +":issue:`30553`: Add HTTP/2 status code 421 (Misdirected Request) " +"to :class:`http.HTTPStatus`. Patch by Vitor Pereira." msgstr "" msgid "" @@ -66675,8 +69923,8 @@ msgid "" msgstr "" msgid "" -":issue:`32126`: Skip test_get_event_loop_new_process in test.test_asyncio." -"test_events when sem_open() is not functional." +":issue:`32126`: Skip test_get_event_loop_new_process in " +"test.test_asyncio.test_events when sem_open() is not functional." msgstr "" msgid "" @@ -66759,8 +70007,8 @@ msgstr "" msgid "" ":issue:`32207`: Improve tk event exception tracebacks in IDLE. When tk event " -"handling is driven by IDLE's run loop, a confusing and distracting queue." -"EMPTY traceback context is no longer added to tk event exception " +"handling is driven by IDLE's run loop, a confusing and distracting " +"queue.EMPTY traceback context is no longer added to tk event exception " "tracebacks. The traceback is now the same as when event handling is driven " "by user code. Patch based on a suggestion by Serhiy Storchaka." msgstr "" @@ -66920,8 +70168,9 @@ msgid "" msgstr "" msgid "" -":issue:`31505`: Fix an assertion failure in ``json``, in case ``_json." -"make_encoder()`` received a bad ``encoder()`` argument. Patch by Oren Milman." +":issue:`31505`: Fix an assertion failure in ``json``, in case " +"``_json.make_encoder()`` received a bad ``encoder()`` argument. Patch by " +"Oren Milman." msgstr "" msgid "" @@ -66942,8 +70191,8 @@ msgstr "" msgid "" ":issue:`31415`: Add ``-X importtime`` option to show how long each import " -"takes. It can be used to optimize application's startup time. Support the :" -"envvar:`PYTHONPROFILEIMPORTTIME` as an equivalent way to enable this." +"takes. It can be used to optimize application's startup time. Support " +"the :envvar:`PYTHONPROFILEIMPORTTIME` as an equivalent way to enable this." msgstr "" msgid ":issue:`31410`: Optimized calling wrapper and classmethod descriptors." @@ -66963,13 +70212,13 @@ msgid "" msgstr "" msgid "" -":issue:`31315`: Fix an assertion failure in imp.create_dynamic(), when spec." -"name is not a string. Patch by Oren Milman." +":issue:`31315`: Fix an assertion failure in imp.create_dynamic(), when " +"spec.name is not a string. Patch by Oren Milman." msgstr "" msgid "" -":issue:`31311`: Fix a crash in the ``__setstate__()`` method of ``ctypes." -"_CData``, in case of a bad ``__dict__``. Patch by Oren Milman." +":issue:`31311`: Fix a crash in the ``__setstate__()`` method of " +"``ctypes._CData``, in case of a bad ``__dict__``. Patch by Oren Milman." msgstr "" msgid "" @@ -67040,8 +70289,8 @@ msgid ":issue:`30806`: Fix the string representation of a netrc object." msgstr "" msgid "" -":issue:`31638`: Add optional argument ``compressed`` to ``zipapp." -"create_archive``, and add option ``--compress`` to the command line " +":issue:`31638`: Add optional argument ``compressed`` to " +"``zipapp.create_archive``, and add option ``--compress`` to the command line " "interface of ``zipapp``." msgstr "" @@ -67067,8 +70316,8 @@ msgid "" msgstr "" msgid "" -":issue:`30347`: Stop crashes when concurrently iterate over itertools." -"groupby() iterators." +":issue:`30347`: Stop crashes when concurrently iterate over " +"itertools.groupby() iterators." msgstr "" msgid "" @@ -67080,10 +70329,10 @@ msgid ":issue:`31556`: Cancel asyncio.wait_for future faster if timeout <= 0" msgstr "" msgid "" -":issue:`31540`: Allow passing a context object in :class:`concurrent.futures." -"ProcessPoolExecutor` constructor. Also, free job resources in :class:" -"`concurrent.futures.ProcessPoolExecutor` earlier to improve memory usage " -"when a worker waits for new jobs." +":issue:`31540`: Allow passing a context object " +"in :class:`concurrent.futures.ProcessPoolExecutor` constructor. Also, free " +"job resources in :class:`concurrent.futures.ProcessPoolExecutor` earlier to " +"improve memory usage when a worker waits for new jobs." msgstr "" msgid "" @@ -67106,9 +70355,9 @@ msgstr "" msgid "" ":issue:`27541`: Reprs of subclasses of some collection and iterator classes " -"(``bytearray``, ``array.array``, ``collections.deque``, ``collections." -"defaultdict``, ``itertools.count``, ``itertools.repeat``) now contain actual " -"type name instead of hardcoded names of the base class." +"(``bytearray``, ``array.array``, ``collections.deque``, " +"``collections.defaultdict``, ``itertools.count``, ``itertools.repeat``) now " +"contain actual type name instead of hardcoded names of the base class." msgstr "" msgid "" @@ -67240,12 +70489,12 @@ msgstr "" msgid "" ":issue:`30694`: Upgrade expat copy from 2.2.0 to 2.2.1 to get fixes of " "multiple security vulnerabilities including: :cve:`2017-9233` (External " -"entity infinite loop DoS), :cve:`2016-9063` (Integer overflow, re-fix), :cve:" -"`2016-0718` (Fix regression bugs from 2.2.0's fix to :cve:`2016-0718`) and :" -"cve:`2012-0876` (Counter hash flooding with SipHash). Note: the :cve:" -"`2016-5300` (Use os-specific entropy sources like getrandom) doesn't impact " -"Python, since Python already gets entropy from the OS to set the expat " -"secret using ``XML_SetHashSalt()``." +"entity infinite loop DoS), :cve:`2016-9063` (Integer overflow, re-" +"fix), :cve:`2016-0718` (Fix regression bugs from 2.2.0's fix " +"to :cve:`2016-0718`) and :cve:`2012-0876` (Counter hash flooding with " +"SipHash). Note: the :cve:`2016-5300` (Use os-specific entropy sources like " +"getrandom) doesn't impact Python, since Python already gets entropy from the " +"OS to set the expat secret using ``XML_SetHashSalt()``." msgstr "" msgid "" @@ -67256,9 +70505,9 @@ msgid "" msgstr "" msgid "" -":issue:`29591`: Update expat copy from 2.1.1 to 2.2.0 to get fixes of :cve:" -"`2016-0718` and :cve:`2016-4472`. See https://sourceforge.net/p/expat/" -"bugs/537/ for more information." +":issue:`29591`: Update expat copy from 2.1.1 to 2.2.0 to get fixes " +"of :cve:`2016-0718` and :cve:`2016-4472`. See https://sourceforge.net/p/" +"expat/bugs/537/ for more information." msgstr "" msgid "" @@ -67287,8 +70536,8 @@ msgstr "" msgid "" ":issue:`28411`: Change direct usage of PyInterpreterState.modules to " "PyImport_GetModuleDict(). Also introduce more uniformity in other code that " -"deals with sys.modules. This helps reduce complications when working on sys." -"modules." +"deals with sys.modules. This helps reduce complications when working on " +"sys.modules." msgstr "" msgid "" @@ -67299,8 +70548,8 @@ msgid "" msgstr "" msgid "" -":issue:`31411`: Raise a TypeError instead of SystemError in case warnings." -"onceregistry is not a dictionary. Patch by Oren Milman." +":issue:`31411`: Raise a TypeError instead of SystemError in case " +"warnings.onceregistry is not a dictionary. Patch by Oren Milman." msgstr "" msgid "" @@ -67338,15 +70587,15 @@ msgid "" msgstr "" msgid "" -":issue:`31291`: Fix an assertion failure in ``zipimport.zipimporter." -"get_data`` on Windows, when the return value of ``pathname.replace('/','\\" -"\\')`` isn't a string. Patch by Oren Milman." +":issue:`31291`: Fix an assertion failure in " +"``zipimport.zipimporter.get_data`` on Windows, when the return value of " +"``pathname.replace('/','\\\\')`` isn't a string. Patch by Oren Milman." msgstr "" msgid "" -":issue:`31271`: Fix an assertion failure in the ``write()`` method of ``io." -"TextIOWrapper``, when the encoder doesn't return a bytes object. Patch by " -"Oren Milman." +":issue:`31271`: Fix an assertion failure in the ``write()`` method of " +"``io.TextIOWrapper``, when the encoder doesn't return a bytes object. Patch " +"by Oren Milman." msgstr "" msgid "" @@ -67511,8 +70760,8 @@ msgstr "" msgid "" ":issue:`29914`: Fixed default implementations of __reduce__ and " -"__reduce_ex__(). object.__reduce__() no longer takes arguments, object." -"__reduce_ex__() now requires one argument." +"__reduce_ex__(). object.__reduce__() no longer takes arguments, " +"object.__reduce_ex__() now requires one argument." msgstr "" msgid "" @@ -67593,8 +70842,8 @@ msgid "" msgstr "" msgid "" -":issue:`28876`: ``bool(range)`` works even if ``len(range)`` raises :exc:" -"`OverflowError`." +":issue:`28876`: ``bool(range)`` works even if ``len(range)`` " +"raises :exc:`OverflowError`." msgstr "" msgid "" @@ -67760,8 +71009,8 @@ msgstr "" msgid "" ":issue:`28799`: Remove the ``PyEval_GetCallStats()`` function and deprecate " "the untested and undocumented ``sys.callstats()`` function. Remove the " -"``CALL_PROFILE`` special build: use the :func:`sys.setprofile` function, :" -"mod:`!cProfile` or :mod:`!profile` to profile function calls." +"``CALL_PROFILE`` special build: use the :func:`sys.setprofile` " +"function, :mod:`!cProfile` or :mod:`!profile` to profile function calls." msgstr "" msgid "" @@ -67770,8 +71019,8 @@ msgstr "" msgid "" ":issue:`28782`: Fix a bug in the implementation ``yield from`` when checking " -"if the next instruction is YIELD_FROM. Regression introduced by WORDCODE (:" -"issue:`26647`)." +"if the next instruction is YIELD_FROM. Regression introduced by WORDCODE " +"(:issue:`26647`)." msgstr "" msgid "" @@ -67951,8 +71200,8 @@ msgid ":issue:`28192`: Don't import readline in isolated mode." msgstr "" msgid "" -":issue:`27441`: Remove some redundant assignments to ob_size in longobject." -"c. Thanks Oren Milman." +":issue:`27441`: Remove some redundant assignments to ob_size in " +"longobject.c. Thanks Oren Milman." msgstr "" msgid "" @@ -68029,8 +71278,9 @@ msgid ":issue:`31457`: LoggerAdapter objects can now be nested." msgstr "" msgid "" -":issue:`31431`: SSLContext.check_hostname now automatically sets SSLContext." -"verify_mode to ssl.CERT_REQUIRED instead of failing with a ValueError." +":issue:`31431`: SSLContext.check_hostname now automatically sets " +"SSLContext.verify_mode to ssl.CERT_REQUIRED instead of failing with a " +"ValueError." msgstr "" msgid "" @@ -68039,9 +71289,9 @@ msgid "" msgstr "" msgid "" -":issue:`28638`: Changed the implementation strategy for collections." -"namedtuple() to substantially reduce the use of exec() in favor of " -"precomputed methods. As a result, the *verbose* parameter and *_source* " +":issue:`28638`: Changed the implementation strategy for " +"collections.namedtuple() to substantially reduce the use of exec() in favor " +"of precomputed methods. As a result, the *verbose* parameter and *_source* " "attribute are no longer supported. The benefits include 1) having a smaller " "memory footprint for applications using multiple named tuples, 2) faster " "creation of the named tuple class (approx 4x to 6x depending on how it is " @@ -68056,8 +71306,8 @@ msgid "" msgstr "" msgid "" -":issue:`27629`: Make return types of SSLContext.wrap_bio() and SSLContext." -"wrap_socket() customizable." +":issue:`27629`: Make return types of SSLContext.wrap_bio() and " +"SSLContext.wrap_socket() customizable." msgstr "" msgid "" @@ -68078,9 +71328,10 @@ msgid "" msgstr "" msgid "" -":issue:`14191`: A new function ``argparse.ArgumentParser." -"parse_intermixed_args`` provides the ability to parse command lines where " -"there user intermixes options and positional arguments." +":issue:`14191`: A new function " +"``argparse.ArgumentParser.parse_intermixed_args`` provides the ability to " +"parse command lines where there user intermixes options and positional " +"arguments." msgstr "" msgid "" @@ -68217,8 +71468,8 @@ msgid "" msgstr "" msgid "" -":issue:`31072`: Add an ``include_file`` parameter to ``zipapp." -"create_archive()``" +":issue:`31072`: Add an ``include_file`` parameter to " +"``zipapp.create_archive()``" msgstr "" msgid "" @@ -68245,8 +71496,8 @@ msgstr "" msgid "" ":issue:`30897`: ``pathlib.Path`` objects now include an ``is_mount()`` " -"method (only implemented on POSIX). This is similar to ``os.path." -"ismount(p)``. Patch by Cooper Ry Lees." +"method (only implemented on POSIX). This is similar to " +"``os.path.ismount(p)``. Patch by Cooper Ry Lees." msgstr "" msgid ":issue:`31061`: Fixed a crash when using asyncio and threads." @@ -68324,8 +71575,8 @@ msgid ":issue:`30319`: socket.close() now ignores ECONNRESET error." msgstr "" msgid "" -":issue:`30828`: Fix out of bounds write in ``asyncio.CFuture." -"remove_done_callback()``." +":issue:`30828`: Fix out of bounds write in " +"``asyncio.CFuture.remove_done_callback()``." msgstr "" msgid ":issue:`30302`: Use keywords in the ``repr`` of ``datetime.timedelta``." @@ -68350,11 +71601,11 @@ msgid "" msgstr "" msgid "" -":issue:`29293`: Add missing parameter \"n\" on multiprocessing.Condition." -"notify(). The doc claims multiprocessing.Condition behaves like threading." -"Condition, but its notify() method lacked the optional \"n\" argument (to " -"specify the number of sleepers to wake up) that threading.Condition.notify() " -"accepts." +":issue:`29293`: Add missing parameter \"n\" on " +"multiprocessing.Condition.notify(). The doc claims multiprocessing.Condition " +"behaves like threading.Condition, but its notify() method lacked the " +"optional \"n\" argument (to specify the number of sleepers to wake up) that " +"threading.Condition.notify() accepts." msgstr "" msgid "" @@ -68396,8 +71647,8 @@ msgid "" msgstr "" msgid "" -":issue:`21071`: struct.Struct.format type is now :class:`str` instead of :" -"class:`bytes`." +":issue:`21071`: struct.Struct.format type is now :class:`str` instead " +"of :class:`bytes`." msgstr "" msgid "" @@ -68524,8 +71775,8 @@ msgid "" msgstr "" msgid "" -":issue:`30526`: Add TextIOWrapper.reconfigure() and a TextIOWrapper." -"write_through attribute." +":issue:`30526`: Add TextIOWrapper.reconfigure() and a " +"TextIOWrapper.write_through attribute." msgstr "" msgid "" @@ -68851,8 +72102,8 @@ msgid "" msgstr "" msgid "" -":issue:`29800`: Fix crashes in partial.__repr__ if the keys of partial." -"keywords are not strings. Patch by Michael Seifert." +":issue:`29800`: Fix crashes in partial.__repr__ if the keys of " +"partial.keywords are not strings. Patch by Michael Seifert." msgstr "" msgid "" @@ -68882,8 +72133,8 @@ msgid "" msgstr "" msgid "" -":issue:`29645`: Speed up importing the webbrowser module. webbrowser." -"register() is now thread-safe." +":issue:`29645`: Speed up importing the webbrowser module. " +"webbrowser.register() is now thread-safe." msgstr "" msgid "" @@ -68914,8 +72165,8 @@ msgid "" msgstr "" msgid "" -":issue:`28963`: Fix out of bound iteration in asyncio.Future." -"remove_done_callback implemented in C." +":issue:`28963`: Fix out of bound iteration in " +"asyncio.Future.remove_done_callback implemented in C." msgstr "" msgid "" @@ -68940,8 +72191,9 @@ msgid "" msgstr "" msgid "" -":issue:`7769`: Method register_function() of xmlrpc.server." -"SimpleXMLRPCDispatcher and its subclasses can now be used as a decorator." +":issue:`7769`: Method register_function() of " +"xmlrpc.server.SimpleXMLRPCDispatcher and its subclasses can now be used as a " +"decorator." msgstr "" msgid "" @@ -69006,9 +72258,9 @@ msgid "" msgstr "" msgid "" -":issue:`28556`: Various updates to typing module: typing.Counter, typing." -"ChainMap, improved ABC caching, etc. Original PRs by Jelle Zijlstra, Ivan " -"Levkivskyi, Manuel Krebber, and Łukasz Langa." +":issue:`28556`: Various updates to typing module: typing.Counter, " +"typing.ChainMap, improved ABC caching, etc. Original PRs by Jelle Zijlstra, " +"Ivan Levkivskyi, Manuel Krebber, and Łukasz Langa." msgstr "" msgid "" @@ -69068,8 +72320,8 @@ msgid "" msgstr "" msgid "" -":issue:`29219`: Fixed infinite recursion in the repr of uninitialized ctypes." -"CDLL instances." +":issue:`29219`: Fixed infinite recursion in the repr of uninitialized " +"ctypes.CDLL instances." msgstr "" msgid ":issue:`29192`: Removed deprecated features in the http.cookies module." @@ -69086,10 +72338,10 @@ msgid "" msgstr "" msgid "" -":issue:`28969`: Fixed race condition in C implementation of functools." -"lru_cache. KeyError could be raised when cached function with full cache was " -"simultaneously called from different threads with the same uncached " -"arguments." +":issue:`28969`: Fixed race condition in C implementation of " +"functools.lru_cache. KeyError could be raised when cached function with full " +"cache was simultaneously called from different threads with the same " +"uncached arguments." msgstr "" msgid "" @@ -69099,8 +72351,8 @@ msgstr "" msgid "" ":issue:`29142`: In urllib.request, suffixes in no_proxy environment variable " -"with leading dots could match related hostnames again (e.g. .b.c matches a.b." -"c). Patch by Milan Oberkirch." +"with leading dots could match related hostnames again (e.g. .b.c matches " +"a.b.c). Patch by Milan Oberkirch." msgstr "" msgid "" @@ -69122,8 +72374,8 @@ msgid ":issue:`29079`: Prevent infinite loop in pathlib.resolve() on Windows" msgstr "" msgid "" -":issue:`13051`: Fixed recursion errors in large or resized curses.textpad." -"Textbox. Based on patch by Tycho Andersen." +":issue:`13051`: Fixed recursion errors in large or resized " +"curses.textpad.Textbox. Based on patch by Tycho Andersen." msgstr "" msgid "" @@ -69199,9 +72451,9 @@ msgid "" msgstr "" msgid "" -":issue:`26273`: Add new :const:`socket.TCP_CONGESTION` (Linux 2.6.13) and :" -"const:`socket.TCP_USER_TIMEOUT` (Linux 2.6.37) constants. Patch written by " -"Omar Sandoval." +":issue:`26273`: Add new :const:`socket.TCP_CONGESTION` (Linux 2.6.13) " +"and :const:`socket.TCP_USER_TIMEOUT` (Linux 2.6.37) constants. Patch written " +"by Omar Sandoval." msgstr "" msgid ":issue:`28752`: Restored the __reduce__() methods of datetime objects." @@ -69274,8 +72526,8 @@ msgstr "" msgid "" ":issue:`27939`: Fixed bugs in tkinter.ttk.LabeledScale and tkinter.Scale " -"caused by representing the scale as float value internally in Tk. tkinter." -"IntVar now works if float value is set to underlying Tk variable." +"caused by representing the scale as float value internally in Tk. " +"tkinter.IntVar now works if float value is set to underlying Tk variable." msgstr "" msgid "" @@ -69419,8 +72671,8 @@ msgid ":issue:`28227`: gzip now supports pathlib. Patch by Ethan Furman." msgstr "" msgid "" -":issue:`28332`: Deprecated silent truncations in socket.htons and socket." -"ntohs. Original patch by Oren Milman." +":issue:`28332`: Deprecated silent truncations in socket.htons and " +"socket.ntohs. Original patch by Oren Milman." msgstr "" msgid "" @@ -69469,9 +72721,9 @@ msgid "" msgstr "" msgid "" -":issue:`27897`: Fixed possible crash in sqlite3.Connection." -"create_collation() if pass invalid string-like object as a name. Patch by " -"Xiang Zhang." +":issue:`27897`: Fixed possible crash in " +"sqlite3.Connection.create_collation() if pass invalid string-like object as " +"a name. Patch by Xiang Zhang." msgstr "" msgid "" @@ -69481,8 +72733,8 @@ msgid "" msgstr "" msgid "" -":issue:`18893`: Fix invalid exception handling in Lib/ctypes/macholib/dyld." -"py. Patch by Madison May." +":issue:`18893`: Fix invalid exception handling in Lib/ctypes/macholib/" +"dyld.py. Patch by Madison May." msgstr "" msgid "" @@ -69551,8 +72803,8 @@ msgid "" msgstr "" msgid "" -":issue:`27599`: Fixed buffer overrun in binascii.b2a_qp() and binascii." -"a2b_qp()." +":issue:`27599`: Fixed buffer overrun in binascii.b2a_qp() and " +"binascii.a2b_qp()." msgstr "" msgid "" @@ -69628,8 +72880,8 @@ msgid "" msgstr "" msgid "" -":issue:`25532`: inspect.unwrap() will now only try to unwrap an object sys." -"getrecursionlimit() times, to protect against objects which create a new " +":issue:`25532`: inspect.unwrap() will now only try to unwrap an object " +"sys.getrecursionlimit() times, to protect against objects which create a new " "object on every attribute access." msgstr "" @@ -69749,11 +73001,11 @@ msgid "" msgstr "" msgid "" -":issue:`30197`: Enhanced functions swap_attr() and swap_item() in the test." -"support module. They now work when delete replaced attribute or item inside " -"the with statement. The old value of the attribute or item (or None if it " -"doesn't exist) now will be assigned to the target of the \"as\" clause, if " -"there is one." +":issue:`30197`: Enhanced functions swap_attr() and swap_item() in the " +"test.support module. They now work when delete replaced attribute or item " +"inside the with statement. The old value of the attribute or item (or None " +"if it doesn't exist) now will be assigned to the target of the \"as\" " +"clause, if there is one." msgstr "" msgid ":issue:`24932`: Use proper command line parsing in _testembed" @@ -70281,11 +73533,12 @@ msgid "" ":issue:`30779`: IDLE: Factor ConfigChanges class from configdialog, put in " "config; test. * In config, put dump test code in a function; run it and " "unittest in 'if __name__ == '__main__'. * Add class config.ConfigChanges " -"based on changes_class_v4.py on bpo issue. * Add class test_config." -"ChangesTest, partly using configdialog_tests_v1.py. * Revise configdialog to " -"use ConfigChanges; see tracker msg297804. * Revise test_configdialog to " -"match configdialog changes. * Remove configdialog functions unused or moved " -"to ConfigChanges. Cheryl Sabella contributed parts of the patch." +"based on changes_class_v4.py on bpo issue. * Add class " +"test_config.ChangesTest, partly using configdialog_tests_v1.py. * Revise " +"configdialog to use ConfigChanges; see tracker msg297804. * Revise " +"test_configdialog to match configdialog changes. * Remove configdialog " +"functions unused or moved to ConfigChanges. Cheryl Sabella contributed parts " +"of the patch." msgstr "" msgid "" @@ -70621,8 +73874,8 @@ msgid "*Release date: 2017-10-03*" msgstr "" msgid "" -":issue:`31641`: Re-allow arbitrary iterables in ``concurrent.futures." -"as_completed()``. Fixes regression in 3.6.3rc1." +":issue:`31641`: Re-allow arbitrary iterables in " +"``concurrent.futures.as_completed()``. Fixes regression in 3.6.3rc1." msgstr "" msgid "" @@ -70679,8 +73932,8 @@ msgid ":issue:`24484`: Avoid race condition in multiprocessing cleanup (#2159)" msgstr "" msgid "" -":issue:`26293`: Change resulted because of zipfile breakage. (See also: :" -"issue:`29094`)" +":issue:`26293`: Change resulted because of zipfile breakage. (See " +"also: :issue:`29094`)" msgstr "" msgid "" @@ -70749,8 +74002,8 @@ msgid "" msgstr "" msgid "" -":issue:`29119`: Fix weakrefs in the pure python version of collections." -"OrderedDict move_to_end() method. Contributed by Andra Bogildea." +":issue:`29119`: Fix weakrefs in the pure python version of " +"collections.OrderedDict move_to_end() method. Contributed by Andra Bogildea." msgstr "" msgid "" @@ -70800,8 +74053,8 @@ msgid "" msgstr "" msgid "" -":issue:`29571`: to match the behaviour of the ``re.LOCALE`` flag, test_re." -"test_locale_flag now uses ``locale.getpreferredencoding(False)`` to " +":issue:`29571`: to match the behaviour of the ``re.LOCALE`` flag, " +"test_re.test_locale_flag now uses ``locale.getpreferredencoding(False)`` to " "determine the candidate encoding for the test regex (allowing it to " "correctly skip the test when the default locale encoding is a multi-byte " "encoding)" @@ -71174,9 +74427,9 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -71200,8 +74453,9 @@ msgid ":issue:`28732`: Fix crash in os.spawnv() with no elements in args" msgstr "" msgid "" -":issue:`28485`: Always raise ValueError for negative compileall." -"compile_dir(workers=...) parameter, even when multithreading is unavailable." +":issue:`28485`: Always raise ValueError for negative " +"compileall.compile_dir(workers=...) parameter, even when multithreading is " +"unavailable." msgstr "" msgid "" @@ -71269,10 +74523,10 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -71408,8 +74662,8 @@ msgid "" msgstr "" msgid "" -":issue:`27778`: Expose the Linux ``getrandom()`` syscall as a new :func:`os." -"getrandom` function. This change is part of the :pep:`524`." +":issue:`27778`: Expose the Linux ``getrandom()`` syscall as a " +"new :func:`os.getrandom` function. This change is part of the :pep:`524`." msgstr "" msgid "" @@ -71485,8 +74739,8 @@ msgstr "" 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." +"to match ``math.inf`` and ``math.nan``, and also ``cmath.infj`` and " +"``cmath.nanj`` to match the format used by complex repr." msgstr "" msgid "" @@ -71503,8 +74757,8 @@ msgid ":issue:`12885`: Fix error when distutils encounters symlink." msgstr "" msgid "" -":issue:`27881`: Fixed possible bugs when setting sqlite3.Connection." -"isolation_level. Based on patch by Xiang Zhang." +":issue:`27881`: Fixed possible bugs when setting " +"sqlite3.Connection.isolation_level. Based on patch by Xiang Zhang." msgstr "" msgid "" @@ -71527,11 +74781,11 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -71858,13 +75112,13 @@ msgid "" msgstr "" msgid "" -":issue:`25628`: The *verbose* and *rename* parameters for collections." -"namedtuple are now keyword-only." +":issue:`25628`: The *verbose* and *rename* parameters for " +"collections.namedtuple are now keyword-only." msgstr "" msgid "" -":issue:`12345`: Add mathematical constant tau to math and cmath. See also :" -"pep:`628`." +":issue:`12345`: Add mathematical constant tau to math and cmath. See " +"also :pep:`628`." msgstr "" msgid "" @@ -71924,8 +75178,8 @@ msgid "" msgstr "" msgid "" -":issue:`27783`: Fix possible usage of uninitialized memory in operator." -"methodcaller." +":issue:`27783`: Fix possible usage of uninitialized memory in " +"operator.methodcaller." msgstr "" msgid ":issue:`27774`: Fix possible Py_DECREF on unowned object in _sre." @@ -72114,8 +75368,8 @@ msgid "" msgstr "" msgid "" -":issue:`22636`: Avoid shell injection problems with ctypes.util." -"find_library()." +":issue:`22636`: Avoid shell injection problems with " +"ctypes.util.find_library()." msgstr "" msgid "" @@ -72345,11 +75599,11 @@ msgid ":issue:`26930`: Update Windows builds to use OpenSSL 1.0.2h." msgstr "" 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 specific _sysconfigdata module into the platform directory and " -"rename it to include the ABIFLAGS." +":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 " +"specific _sysconfigdata module into the platform directory and rename it to " +"include the ABIFLAGS." msgstr "" msgid "Don't use largefile support for GNU/Hurd." @@ -72419,8 +75673,8 @@ msgid ":issue:`27140`: Added BUILD_CONST_KEY_MAP opcode." msgstr "" msgid "" -":issue:`27186`: Add support for os.PathLike objects to open() (part of :pep:" -"`519`)." +":issue:`27186`: Add support for os.PathLike objects to open() (part " +"of :pep:`519`)." msgstr "" msgid "" @@ -72512,8 +75766,8 @@ msgid "" msgstr "" msgid "" -":issue:`27186`: Add support for os.PathLike objects to os.fsencode() and os." -"fsdecode() (part of :pep:`519`)." +":issue:`27186`: Add support for os.PathLike objects to os.fsencode() and " +"os.fsdecode() (part of :pep:`519`)." msgstr "" msgid "" @@ -72744,8 +75998,8 @@ msgstr "" 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." +"option is used: each test file runs in a fresh child process. Before, the " +"-j1 option was ignored." msgstr "" msgid "" @@ -72760,8 +76014,8 @@ msgid "" msgstr "" msgid "" -":issue:`17500`: Remove unused and outdated icons. (See also: https://github." -"com/python/pythondotorg/issues/945)" +":issue:`17500`: Remove unused and outdated icons. (See also: https://" +"github.com/python/pythondotorg/issues/945)" msgstr "" msgid "" @@ -72805,8 +76059,8 @@ msgid "" msgstr "" msgid "" -":issue:`25939`: On Windows open the cert store readonly in ssl." -"enum_certificates." +":issue:`25939`: On Windows open the cert store readonly in " +"ssl.enum_certificates." msgstr "" msgid "" @@ -72857,10 +76111,10 @@ msgid "" msgstr "" msgid "" -":issue:`26249`: Memory functions of the :c:func:`PyMem_Malloc` domain (:c:" -"macro:`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 " +":issue:`26249`: Memory functions of the :c:func:`PyMem_Malloc` domain " +"(:c:macro:`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 "" @@ -72893,13 +76147,13 @@ msgstr "" 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." +"list, tuple, set, frozenset, dict, OrderedDict, corresponding views and " +"os.scandir() iterator." msgstr "" msgid "" -":issue:`26574`: Optimize ``bytes.replace(b'', b'.')`` and ``bytearray." -"replace(b'', b'.')``. Patch written by Josh Snider." +":issue:`26574`: Optimize ``bytes.replace(b'', b'.')`` and " +"``bytearray.replace(b'', b'.')``. Patch written by Josh Snider." msgstr "" msgid "" @@ -72927,9 +76181,9 @@ msgid "" msgstr "" msgid "" -":issue:`26558`: The debug hooks on Python memory allocator :c:func:" -"`PyObject_Malloc` now detect when functions are called without holding the " -"GIL." +":issue:`26558`: The debug hooks on Python memory " +"allocator :c:func:`PyObject_Malloc` now detect when functions are called " +"without holding the GIL." msgstr "" msgid "" @@ -73161,8 +76415,8 @@ msgid "" msgstr "" msgid "" -":issue:`24402`: Fix input() to prompt to the redirected stdout when sys." -"stdout.fileno() fails." +":issue:`24402`: Fix input() to prompt to the redirected stdout when " +"sys.stdout.fileno() fails." msgstr "" msgid "" @@ -73278,8 +76532,8 @@ msgid "" msgstr "" msgid "" -":issue:`27033`: The default value of the decode_data parameter for smtpd." -"SMTPChannel and smtpd.SMTPServer constructors is changed to False." +":issue:`27033`: The default value of the decode_data parameter for " +"smtpd.SMTPChannel and smtpd.SMTPServer constructors is changed to False." msgstr "" msgid ":issue:`27034`: Removed deprecated class asynchat.fifo." @@ -73448,8 +76702,8 @@ msgid "" msgstr "" msgid "" -":issue:`26585`: Eliminate http.server._quote_html() and use html." -"escape(quote=False). Patch by Xiang Zhang." +":issue:`26585`: Eliminate http.server._quote_html() and use " +"html.escape(quote=False). Patch by Xiang Zhang." msgstr "" msgid ":issue:`26685`: Raise OSError if closing a socket fails." @@ -73470,8 +76724,8 @@ msgid "" msgstr "" msgid "" -":issue:`25609`: Introduce contextlib.AbstractContextManager and typing." -"ContextManager." +":issue:`25609`: Introduce contextlib.AbstractContextManager and " +"typing.ContextManager." msgstr "" msgid ":issue:`26709`: Fixed Y2038 problem in loading binary PLists." @@ -73497,8 +76751,8 @@ msgid ":issue:`26676`: Added missing XMLPullParser to ElementTree.__all__." msgstr "" msgid "" -":issue:`22854`: Change BufferedReader.writable() and BufferedWriter." -"readable() to always return False." +":issue:`22854`: Change BufferedReader.writable() and " +"BufferedWriter.readable() to always return False." msgstr "" msgid "" @@ -73540,9 +76794,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -73552,10 +76806,10 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -73585,20 +76839,20 @@ msgstr "" 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." +"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 "" msgid "" -":issue:`26569`: Fix :func:`pyclbr.readmodule` and :func:`pyclbr." -"readmodule_ex` to support importing packages." +":issue:`26569`: Fix :func:`pyclbr.readmodule` " +"and :func:`pyclbr.readmodule_ex` to support importing packages." msgstr "" 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." +":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 "" msgid "" @@ -73644,8 +76898,9 @@ msgid "" msgstr "" msgid "" -":issue:`2202`: Fix UnboundLocalError in AbstractDigestAuthHandler." -"get_algorithm_impls. Initial patch by Mathieu Dupuy." +":issue:`2202`: Fix UnboundLocalError in " +"AbstractDigestAuthHandler.get_algorithm_impls. Initial patch by Mathieu " +"Dupuy." msgstr "" msgid "" @@ -73685,8 +76940,8 @@ msgstr "" 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." +"persistent connection. This was a regression related to the new " +"http.client.RemoteDisconnected exception in 3.5.0a4." msgstr "" msgid "" @@ -73699,9 +76954,9 @@ msgid "" msgstr "" msgid "" -":issue:`26367`: importlib.__import__() raises ImportError like builtins." -"__import__() when ``level`` is specified but without an accompanying package " -"specified." +":issue:`26367`: importlib.__import__() raises ImportError like " +"builtins.__import__() when ``level`` is specified but without an " +"accompanying package specified." msgstr "" msgid "" @@ -73755,8 +77010,8 @@ msgid "" msgstr "" msgid "" -":issue:`26039`: Added zipfile.ZipInfo.from_file() and zipinfo.ZipInfo." -"is_dir(). Patch by Thomas Kluyver." +":issue:`26039`: Added zipfile.ZipInfo.from_file() and " +"zipinfo.ZipInfo.is_dir(). Patch by Thomas Kluyver." msgstr "" msgid "" @@ -73849,13 +77104,13 @@ msgid "" msgstr "" msgid "" -":issue:`26012`: Don't traverse into symlinks for ``**`` pattern in pathlib." -"Path.[r]glob()." +":issue:`26012`: Don't traverse into symlinks for ``**`` pattern in " +"pathlib.Path.[r]glob()." msgstr "" msgid "" -":issue:`24120`: Ignore PermissionError when traversing a tree with pathlib." -"Path.[r]glob(). Patch by Ulrich Petri." +":issue:`24120`: Ignore PermissionError when traversing a tree with " +"pathlib.Path.[r]glob(). Patch by Ulrich Petri." msgstr "" msgid "" @@ -73910,9 +77165,9 @@ msgid "" msgstr "" 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." +":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 "" msgid ":issue:`25902`: Fixed various refcount issues in ElementTree iteration." @@ -73949,8 +77204,8 @@ msgid "" msgstr "" msgid "" -":issue:`25771`: Tweak the exception message for importlib.util." -"resolve_name() when 'package' isn't specified but necessary." +":issue:`25771`: Tweak the exception message for " +"importlib.util.resolve_name() when 'package' isn't specified but necessary." msgstr "" msgid "" @@ -74022,8 +77277,8 @@ msgid "" "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." +"parameter, the zlib.decompress() bufsize parameter, and the " +"zlib.Decompress.flush() length parameter." msgstr "" msgid "" @@ -74043,9 +77298,9 @@ msgstr "" 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." +"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 "" msgid "" @@ -74097,8 +77352,8 @@ msgid "" msgstr "" msgid "" -":issue:`25515`: Always use os.urandom as a source of randomness in uuid." -"uuid4." +":issue:`25515`: Always use os.urandom as a source of randomness in " +"uuid.uuid4." msgstr "" msgid "" @@ -74179,8 +77434,8 @@ msgid "" msgstr "" msgid "" -":issue:`25380`: Fixed protocol for the STACK_GLOBAL opcode in pickletools." -"opcodes." +":issue:`25380`: Fixed protocol for the STACK_GLOBAL opcode in " +"pickletools.opcodes." msgstr "" msgid "" @@ -74193,8 +77448,8 @@ msgstr "" 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." +"submit a coroutine to a loop from another thread, returning a " +"concurrent.futures.Future. By Vincent Michel." msgstr "" msgid "" @@ -74237,10 +77492,10 @@ msgid ":issue:`22241`: timezone.utc name is now plain 'UTC', not 'UTC-00:00'." msgstr "" 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)." +":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 "" msgid "" @@ -74507,8 +77762,8 @@ msgid "" msgstr "" msgid "" -":issue:`24861`: Most of idlelib is private and subject to change. Use idleib." -"idle.* to start Idle. See idlelib.__init__.__doc__." +":issue:`24861`: Most of idlelib is private and subject to change. Use " +"idleib.idle.* to start Idle. See idlelib.__init__.__doc__." msgstr "" msgid "" @@ -74817,9 +78072,9 @@ msgid "" msgstr "" msgid "" -":issue:`30657`: Fixed possible integer overflow in PyBytes_DecodeEscape, :" -"cve:`2017-1000158`. Original patch by Jay Bosamiya; rebased to Python 3 by " -"Miro Hrončok." +":issue:`30657`: Fixed possible integer overflow in " +"PyBytes_DecodeEscape, :cve:`2017-1000158`. Original patch by Jay Bosamiya; " +"rebased to Python 3 by Miro Hrončok." msgstr "" msgid "Python 3.5.4 final" @@ -74959,8 +78214,8 @@ msgstr "" msgid "" "Fix a scoping issue in importlib.util.LazyLoader which triggered an " -"UnboundLocalError when lazy-loading a module that was already put into sys." -"modules." +"UnboundLocalError when lazy-loading a module that was already put into " +"sys.modules." msgstr "" msgid ":issue:`28600`: Optimize loop.call_soon()." @@ -75060,9 +78315,9 @@ msgid "" msgstr "" msgid "" -":issue:`26367`: importlib.__import__() raises SystemError like builtins." -"__import__() when ``level`` is specified but without an accompanying package " -"specified." +":issue:`26367`: importlib.__import__() raises SystemError like " +"builtins.__import__() when ``level`` is specified but without an " +"accompanying package specified." msgstr "" msgid ":issue:`17633`: Improve zipimport's support for namespace packages." @@ -75213,9 +78468,9 @@ msgid "" "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." +"property: (datetime(1970,1,1) + timedelta(seconds=t)) == " +"datetime.utcfromtimestamp(t). It also the rounding mode used by round(float) " +"for example." msgstr "" msgid "" @@ -75309,8 +78564,8 @@ msgid "" msgstr "" msgid "" -":issue:`21159`: Improve message in configparser." -"InterpolationMissingOptionError. Patch from Łukasz Langa." +":issue:`21159`: Improve message in " +"configparser.InterpolationMissingOptionError. Patch from Łukasz Langa." msgstr "" msgid "" @@ -75451,8 +78706,8 @@ msgid ":issue:`25029`: Fixes MemoryError in test_strptime." msgstr "" msgid "" -":issue:`25027`: Reverts partial-static build options and adds vcruntime140." -"dll to Windows installation." +":issue:`25027`: Reverts partial-static build options and adds " +"vcruntime140.dll to Windows installation." msgstr "" msgid "Python 3.5.0 release candidate 3" @@ -75484,8 +78739,8 @@ msgid "" msgstr "" msgid "" -":issue:`24635`: Fixed a bug in typing.py where isinstance([], typing." -"Iterable) would return True once, then False on subsequent calls." +":issue:`24635`: Fixed a bug in typing.py where isinstance([], " +"typing.Iterable) would return True once, then False on subsequent calls." msgstr "" msgid "" @@ -75842,8 +79097,8 @@ msgid "" msgstr "" msgid "" -":issue:`24489`: ensure a previously set C errno doesn't disturb cmath." -"polar()." +":issue:`24489`: ensure a previously set C errno doesn't disturb " +"cmath.polar()." msgstr "" msgid "" @@ -75932,8 +79187,8 @@ msgid ":issue:`23247`: Fix a crash in the StreamWriter.reset() of CJK codecs." msgstr "" msgid "" -":issue:`24270`: Add math.isclose() and cmath.isclose() functions as per :pep:" -"`485`. Contributed by Chris Barker and Tal Einat." +":issue:`24270`: Add math.isclose() and cmath.isclose() functions as " +"per :pep:`485`. Contributed by Chris Barker and Tal Einat." msgstr "" msgid "" @@ -75974,8 +79229,8 @@ msgid "" msgstr "" msgid "" -":issue:`24257`: Fixed system error in the comparison of faked types." -"SimpleNamespace." +":issue:`24257`: Fixed system error in the comparison of faked " +"types.SimpleNamespace." msgstr "" msgid "" @@ -76111,8 +79366,8 @@ msgid "" msgstr "" msgid "" -":issue:`6598`: Increased time precision and random number range in email." -"utils.make_msgid() to strengthen the uniqueness of the message ID." +":issue:`6598`: Increased time precision and random number range in " +"email.utils.make_msgid() to strengthen the uniqueness of the message ID." msgstr "" msgid "" @@ -76308,13 +79563,14 @@ msgid "" msgstr "" msgid "" -":issue:`20691`: Add 'follow_wrapped' argument to inspect.Signature." -"from_callable() and inspect.signature(). Contributed by Yury Selivanov." +":issue:`20691`: Add 'follow_wrapped' argument to " +"inspect.Signature.from_callable() and inspect.signature(). Contributed by " +"Yury Selivanov." msgstr "" msgid "" -":issue:`24248`: Deprecate inspect.Signature.from_function() and inspect." -"Signature.from_builtin()." +":issue:`24248`: Deprecate inspect.Signature.from_function() and " +"inspect.Signature.from_builtin()." msgstr "" msgid "" @@ -76523,8 +79779,8 @@ msgstr "" msgid "" ":issue:`23411`: Added DefragResult, ParseResult, SplitResult, " -"DefragResultBytes, ParseResultBytes, and SplitResultBytes to urllib.parse." -"__all__. Patch by Martin Panter." +"DefragResultBytes, ParseResultBytes, and SplitResultBytes to " +"urllib.parse.__all__. Patch by Martin Panter." msgstr "" msgid "" @@ -76769,8 +80025,8 @@ msgid "" msgstr "" msgid "" -":issue:`21717`: The zipfile.ZipFile.open function now supports " -"'x' (exclusive creation) mode." +":issue:`21717`: The zipfile.ZipFile.open function now supports 'x' " +"(exclusive creation) mode." msgstr "" msgid "" @@ -76989,8 +80245,8 @@ msgid "" msgstr "" msgid "" -":issue:`22524`: New os.scandir() function, part of the :pep:`471`: \"os." -"scandir() function -- a better and faster directory iterator\". Patch " +":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 "" @@ -77291,8 +80547,8 @@ msgid "" msgstr "" msgid "" -":issue:`21052`: Do not raise ImportWarning when sys.path_hooks or sys." -"meta_path are set to None." +":issue:`21052`: Do not raise ImportWarning when sys.path_hooks or " +"sys.meta_path are set to None." msgstr "" msgid "" @@ -77328,8 +80584,8 @@ msgid ":issue:`22518`: Fix integer overflow issues in latin-1 encoding." msgstr "" msgid "" -":issue:`16324`: _charset parameter of MIMEText now also accepts email." -"charset.Charset instances. Initial patch by Claude Paroz." +":issue:`16324`: _charset parameter of MIMEText now also accepts " +"email.charset.Charset instances. Initial patch by Claude Paroz." msgstr "" msgid "" @@ -77406,8 +80662,8 @@ 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." +"is now get from the function instead of the code. Use " +"``gen.gi_code.co_name`` to get the name of the code." msgstr "" msgid "" @@ -77584,8 +80840,8 @@ msgid "" msgstr "" msgid "" -":issue:`23369`: Fixed possible integer overflow in _json." -"encode_basestring_ascii." +":issue:`23369`: Fixed possible integer overflow in " +"_json.encode_basestring_ascii." msgstr "" msgid "" @@ -77709,8 +80965,9 @@ msgid ":issue:`23185`: Add math.inf and math.nan constants." msgstr "" msgid "" -":issue:`23186`: Add ssl.SSLObject.shared_ciphers() and ssl.SSLSocket." -"shared_ciphers() to fetch the client's list ciphers sent at handshake." +":issue:`23186`: Add ssl.SSLObject.shared_ciphers() and " +"ssl.SSLSocket.shared_ciphers() to fetch the client's list ciphers sent at " +"handshake." msgstr "" msgid ":issue:`23143`: Remove compatibility with OpenSSLs older than 0.9.8." @@ -77730,8 +80987,8 @@ msgid "" msgstr "" msgid "" -":issue:`21793`: Added http.HTTPStatus enums (i.e. HTTPStatus.OK, HTTPStatus." -"NOT_FOUND). Patch by Demian Brecht." +":issue:`21793`: Added http.HTTPStatus enums (i.e. HTTPStatus.OK, " +"HTTPStatus.NOT_FOUND). Patch by Demian Brecht." msgstr "" msgid "" @@ -77815,8 +81072,8 @@ msgid "" msgstr "" msgid "" -":issue:`16043`: Add a default limit for the amount of data xmlrpclib." -"gzip_decode will return. This resolves :cve:`2013-1753`." +":issue:`16043`: Add a default limit for the amount of data " +"xmlrpclib.gzip_decode will return. This resolves :cve:`2013-1753`." msgstr "" msgid "" @@ -77841,8 +81098,8 @@ msgid "" msgstr "" msgid "" -":issue:`22407`: Deprecated the use of re.LOCALE flag with str patterns or re." -"ASCII. It was newer worked." +":issue:`22407`: Deprecated the use of re.LOCALE flag with str patterns or " +"re.ASCII. It was newer worked." msgstr "" msgid "" @@ -77969,8 +81226,8 @@ msgid "" msgstr "" msgid "" -":issue:`22665`: Add missing get_terminal_size and SameFileError to shutil." -"__all__." +":issue:`22665`: Add missing get_terminal_size and SameFileError to " +"shutil.__all__." msgstr "" msgid "" @@ -78089,8 +81346,8 @@ msgid ":issue:`19380`: Optimized parsing of regular expressions." msgstr "" msgid "" -":issue:`1519638`: Now unmatched groups are replaced with empty strings in re." -"sub() and re.subn()." +":issue:`1519638`: Now unmatched groups are replaced with empty strings in " +"re.sub() and re.subn()." msgstr "" msgid ":issue:`18615`: sndhdr.what/whathdr now return a namedtuple." @@ -78333,10 +81590,10 @@ msgstr "" 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." +"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 "" msgid "" @@ -78386,9 +81643,10 @@ msgid "" msgstr "" 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." +":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 "" msgid "" @@ -78422,8 +81680,8 @@ msgid "" msgstr "" msgid "" -":issue:`22182`: Use e.args to unpack exceptions correctly in distutils." -"file_util.move_file. Patch by Claudiu Popa." +":issue:`22182`: Use e.args to unpack exceptions correctly in " +"distutils.file_util.move_file. Patch by Claudiu Popa." msgstr "" msgid "" @@ -78521,8 +81779,8 @@ msgid "" msgstr "" msgid "" -":issue:`21121`: Don't force 3rd party C extensions to be built with -" -"Werror=declaration-after-statement." +":issue:`21121`: Don't force 3rd party C extensions to be built with " +"-Werror=declaration-after-statement." msgstr "" msgid "" @@ -78554,8 +81812,8 @@ msgid "Add an __all__ to html.entities." msgstr "" msgid "" -":issue:`15114`: the strict mode and argument of HTMLParser, HTMLParser." -"error, and the HTMLParserError exception have been removed." +":issue:`15114`: the strict mode and argument of HTMLParser, " +"HTMLParser.error, and the HTMLParserError exception have been removed." msgstr "" msgid ":issue:`22085`: Dropped support of Tk 8.3 in Tkinter." @@ -78682,8 +81940,8 @@ msgid "" msgstr "" msgid "" -":issue:`21932`: os.read() now uses a :c:func:`Py_ssize_t` type instead of :c:" -"expr:`int` for the size to support reading more than 2 GB at once. On " +":issue:`21932`: os.read() now uses a :c:func:`Py_ssize_t` type instead " +"of :c:expr:`int` for the size to support reading more than 2 GB at once. On " "Windows, the size is truncated to INT_MAX. As any call to os.read(), the OS " "may read less bytes than the number of requested bytes." msgstr "" @@ -78703,8 +81961,8 @@ msgid "" msgstr "" msgid "" -":issue:`21707`: Add missing kwonlyargcount argument to ModuleFinder." -"replace_paths_in_code()." +":issue:`21707`: Add missing kwonlyargcount argument to " +"ModuleFinder.replace_paths_in_code()." msgstr "" msgid "" @@ -78713,8 +81971,8 @@ msgid "" msgstr "" msgid "" -":issue:`21714`: Disallow the construction of invalid paths using Path." -"with_name(). Original patch by Antony Lee." +":issue:`21714`: Disallow the construction of invalid paths using " +"Path.with_name(). Original patch by Antony Lee." msgstr "" msgid "" @@ -79177,8 +82435,8 @@ msgid "" msgstr "" msgid "" -":issue:`7776`: Fix ``Host:`` header and reconnection when using http.client." -"HTTPConnection.set_tunnel(). Patch by Nikolaus Rath." +":issue:`7776`: Fix ``Host:`` header and reconnection when using " +"http.client.HTTPConnection.set_tunnel(). Patch by Nikolaus Rath." msgstr "" msgid "" @@ -79188,8 +82446,8 @@ msgstr "" msgid "" ":issue:`21529`: Fix arbitrary memory access in JSONDecoder.raw_decode with a " -"negative second parameter. Bug reported by Guido Vranken. (See also: :cve:" -"`2014-4616`)" +"negative second parameter. Bug reported by Guido Vranken. (See " +"also: :cve:`2014-4616`)" msgstr "" msgid "" @@ -79244,8 +82502,9 @@ msgid "" msgstr "" msgid "" -":issue:`21058`: Fix a leak of file descriptor in :func:`tempfile." -"NamedTemporaryFile`, close the file descriptor if :func:`io.open` fails" +":issue:`21058`: Fix a leak of file descriptor " +"in :func:`tempfile.NamedTemporaryFile`, close the file descriptor " +"if :func:`io.open` fails" msgstr "" msgid "" @@ -79436,8 +82695,8 @@ msgid "" msgstr "" msgid "" -"asyncio: Add gi_{frame,running,code} properties to CoroWrapper (upstream :" -"issue:`163`)." +"asyncio: Add gi_{frame,running,code} properties to CoroWrapper " +"(upstream :issue:`163`)." msgstr "" msgid "" @@ -79456,8 +82715,9 @@ msgid "" msgstr "" msgid "" -":issue:`21923`: Prevent AttributeError in distutils.sysconfig." -"customize_compiler due to possible uninitialized _config_vars." +":issue:`21923`: Prevent AttributeError in " +"distutils.sysconfig.customize_compiler due to possible uninitialized " +"_config_vars." msgstr "" msgid "" @@ -79654,8 +82914,8 @@ msgid "" "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." +"for both 32 and 64 bit platforms. OpenSSL sources obtained from " +"svn.python.org will always be pre-configured and ready to build." msgstr "" msgid ":issue:`21037`: Add a build option to enable AddressSanitizer support." @@ -79923,8 +83183,8 @@ msgid "" msgstr "" msgid "" -":issue:`21522`: Added Tkinter tests for Listbox.itemconfigure(), PanedWindow." -"paneconfigure(), and Menu.entryconfigure()." +":issue:`21522`: Added Tkinter tests for Listbox.itemconfigure(), " +"PanedWindow.paneconfigure(), and Menu.entryconfigure()." msgstr "" msgid "" @@ -80088,8 +83348,8 @@ msgid "" msgstr "" 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." +":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 "" msgid "**(For information about older versions, consult the HISTORY file.)**" diff --git a/whatsnew/index.po b/whatsnew/index.po index 21db871..edfdc69 100644 --- a/whatsnew/index.po +++ b/whatsnew/index.po @@ -11,11 +11,11 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-07-29 15:50+0000\n" +"POT-Creation-Date: 2026-10-19 19:33+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: Bhuvansh Kataria, 2026\n" -"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/" -"teams/5390/pa/)\n" +"Language-Team: Panjabi (Punjabi) (https://app.transifex.com/python-doc/teams/" +"5390/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n"